🚨 Latest Research:Tanstack npm Packages Compromised in Ongoing Mini Shai-Hulud Supply-Chain Attack.Learn More →
Socket
Book a DemoSign in
Socket

@rangerrick/moment-javaformat

Package Overview
Dependencies
Maintainers
1
Versions
17
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@rangerrick/moment-javaformat - npm Package Compare versions

Comparing version
2.0.9
to
2.0.10
+1
-1
dist/lib/Formatter.d.ts.map

@@ -1,1 +0,1 @@

{"version":3,"file":"Formatter.d.ts","sourceRoot":"","sources":["../../src/Formatter.ts"],"names":[],"mappings":"AAGA,OAAO,MAAM,MAAM,GAAG,GAAG,CAAC;AAM1B,eAAO,MAAM,yBAAyB,WAAY,MAAM,KAAG,MAAM,GAAG,IAuBnE,CAAC;AAEF,eAAO,MAAM,6BAA6B,SAAU,MAAM,KAAG,MAAM,GAAG,IAMrE,CAAC;AAEF,eAAO,MAAM,kBAAkB,aACnB,MAAM,GAAG,MAAM,KACxB,MAAM,GAAG,IAYX,CAAC;AAEF,eAAO,MAAM,WAAW,UAAW,MAAM,GAAG,MAAM,KAAG,MAKpD,CAAC;AAEF,eAAO,MAAM,OAAO,UAAW,MAAM,GAAG,MAAM,UAAU,MAAM,KAAG,MAShE,CAAC;AAEF,qBAAa,KAAK;IACT,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,SAAK;gBAEL,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM;IAUzC,SAAS,IAAI,MAAM;IAKnB,MAAM,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO;IAI7B,QAAQ,IAAI,MAAM;CAGnB;AAED,8BAAsB,SAAS;IAC7B;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC;IAE9D;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM;CAC9D"}
{"version":3,"file":"Formatter.d.ts","sourceRoot":"","sources":["../../src/Formatter.ts"],"names":[],"mappings":"AAGA,OAAO,MAAM,MAAM,GAAG,GAAG,CAAC;AAM1B,eAAO,MAAM,yBAAyB,GAAI,QAAQ,MAAM,KAAG,MAAM,GAAG,IAuBnE,CAAC;AAEF,eAAO,MAAM,6BAA6B,GAAI,MAAM,MAAM,KAAG,MAAM,GAAG,IAMrE,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAC7B,UAAU,MAAM,GAAG,MAAM,KACxB,MAAM,GAAG,IAYX,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,OAAO,MAAM,GAAG,MAAM,KAAG,MAKpD,CAAC;AAEF,eAAO,MAAM,OAAO,GAAI,OAAO,MAAM,GAAG,MAAM,EAAE,QAAQ,MAAM,KAAG,MAShE,CAAC;AAEF,qBAAa,KAAK;IACT,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,SAAK;gBAEL,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM;IAUzC,SAAS,IAAI,MAAM;IAKnB,MAAM,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO;IAI7B,QAAQ,IAAI,MAAM;CAGnB;AAED,8BAAsB,SAAS;IAC7B;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC;IAE9D;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM;CAC9D"}

@@ -29,3 +29,3 @@ /*

eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Formatter: () => (/* binding */ Formatter),\n/* harmony export */ Token: () => (/* binding */ Token),\n/* harmony export */ findAbbreviationForOffset: () => (/* binding */ findAbbreviationForOffset),\n/* harmony export */ getDescriptionForAbbreviation: () => (/* binding */ getDescriptionForAbbreviation),\n/* harmony export */ getZoneForDateTime: () => (/* binding */ getZoneForDateTime),\n/* harmony export */ toAbsString: () => (/* binding */ toAbsString),\n/* harmony export */ zeroPad: () => (/* binding */ zeroPad)\n/* harmony export */ });\n/* harmony import */ var _abbreviations__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./abbreviations */ \"./src/abbreviations.ts\");\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\n//import { Moment } from 'moment-timezone';\n\nconst offsetMappings = {};\nconst findAbbreviationForOffset = offset => {\n if (!moment.tz) {\n return null;\n }\n const tz = moment.tz.guess();\n const short = tz ? moment.tz(tz).format(\"z\") : null;\n // console.log('guessed=', short);\n\n const matches = _abbreviations__WEBPACK_IMPORTED_MODULE_0__.offsets[String(offset)];\n if (matches) {\n // check if the current browser zone matches our offset mapping\n // and if so, shortcut to that abbreviation\n if (matches.indexOf(short) >= 0) {\n return short;\n } else {\n // otherwise, return the first/primary abbreviation in the offset mapping\n return matches[0];\n }\n }\n return null;\n};\nconst getDescriptionForAbbreviation = abbr => {\n if (_abbreviations__WEBPACK_IMPORTED_MODULE_0__.abbreviations[abbr]) {\n return _abbreviations__WEBPACK_IMPORTED_MODULE_0__.abbreviations[abbr];\n }\n return null;\n};\nconst getZoneForDateTime = dateTime => {\n const dt = moment(dateTime);\n const offset = dt.utcOffset();\n if (!offsetMappings[offset]) {\n const shortcut = findAbbreviationForOffset(offset);\n if (shortcut) {\n offsetMappings[offset] = shortcut;\n } else {\n console.warn(\"- unhandled offset: \" + offset);\n }\n }\n return offsetMappings[offset] || null;\n};\nconst toAbsString = value => {\n if (Number.isInteger(value)) {\n return String(Math.abs(value));\n }\n return value.replace(/^-/, \"\");\n};\nconst zeroPad = (input, length) => {\n const abs = toAbsString(input);\n // never truncate, just return if it's bigger\n if (abs.length >= length) {\n return String(input);\n }\n return (abs !== input ? \"-\" : \"\") + (\"0\".repeat(length) + abs).substr(0 - length);\n};\nclass Token {\n count = 0;\n constructor(value, count) {\n if (value.length != 1) {\n throw new Error(\"You must provide a single character when creating a token!\");\n }\n this.token = value;\n this.count = count === undefined ? 1 : count;\n }\n increment() {\n this.count++;\n return this.count;\n }\n equals(token) {\n return this.token === token.token && this.count === token.count;\n }\n toString() {\n return this.token.repeat(this.count);\n }\n}\nclass Formatter {}\n\n//# sourceURL=webpack://@rangerrick/moment-javaformat/./src/Formatter.ts?");
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Formatter: () => (/* binding */ Formatter),\n/* harmony export */ Token: () => (/* binding */ Token),\n/* harmony export */ findAbbreviationForOffset: () => (/* binding */ findAbbreviationForOffset),\n/* harmony export */ getDescriptionForAbbreviation: () => (/* binding */ getDescriptionForAbbreviation),\n/* harmony export */ getZoneForDateTime: () => (/* binding */ getZoneForDateTime),\n/* harmony export */ toAbsString: () => (/* binding */ toAbsString),\n/* harmony export */ zeroPad: () => (/* binding */ zeroPad)\n/* harmony export */ });\n/* harmony import */ var _abbreviations__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./abbreviations */ \"./src/abbreviations.ts\");\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\n//import { Moment } from 'moment-timezone';\n\nconst offsetMappings = {};\nconst findAbbreviationForOffset = offset => {\n if (!moment.tz) {\n return null;\n }\n const tz = moment.tz.guess();\n const short = tz ? moment.tz(tz).format(\"z\") : null;\n // console.log('guessed=', short);\n\n const matches = _abbreviations__WEBPACK_IMPORTED_MODULE_0__.offsets[String(offset)];\n if (matches) {\n // check if the current browser zone matches our offset mapping\n // and if so, shortcut to that abbreviation\n if (matches.indexOf(short) >= 0) {\n return short;\n } else {\n // otherwise, return the first/primary abbreviation in the offset mapping\n return matches[0];\n }\n }\n return null;\n};\nconst getDescriptionForAbbreviation = abbr => {\n if (_abbreviations__WEBPACK_IMPORTED_MODULE_0__.abbreviations[abbr]) {\n return _abbreviations__WEBPACK_IMPORTED_MODULE_0__.abbreviations[abbr];\n }\n return null;\n};\nconst getZoneForDateTime = dateTime => {\n const dt = moment(dateTime);\n const offset = dt.utcOffset();\n if (!offsetMappings[offset]) {\n const shortcut = findAbbreviationForOffset(offset);\n if (shortcut) {\n offsetMappings[offset] = shortcut;\n } else {\n console.warn(\"- unhandled offset: \" + offset);\n }\n }\n return offsetMappings[offset] || null;\n};\nconst toAbsString = value => {\n if (Number.isInteger(value)) {\n return String(Math.abs(value));\n }\n return value.replace(/^-/, \"\");\n};\nconst zeroPad = (input, length) => {\n const abs = toAbsString(input);\n // never truncate, just return if it's bigger\n if (abs.length >= length) {\n return String(input);\n }\n return (abs !== input ? \"-\" : \"\") + (\"0\".repeat(length) + abs).substr(0 - length);\n};\nclass Token {\n count = 0;\n constructor(value, count) {\n if (value.length != 1) {\n throw new Error(\"You must provide a single character when creating a token!\");\n }\n this.token = value;\n this.count = count === undefined ? 1 : count;\n }\n increment() {\n this.count++;\n return this.count;\n }\n equals(token) {\n return this.token === token.token && this.count === token.count;\n }\n toString() {\n return this.token.repeat(this.count);\n }\n}\nclass Formatter {}\n\n//# sourceURL=webpack://@rangerrick/moment-javaformat/./src/Formatter.ts?\n}");

@@ -40,3 +40,3 @@ /***/ }),

eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ abbreviations: () => (/* binding */ abbreviations),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__),\n/* harmony export */ offsets: () => (/* binding */ offsets)\n/* harmony export */ });\n/*\n// Java 8 mappings:\nEST - -05:00\nHST - -10:00\nMST - -07:00\nACT - Australia/Darwin\nAET - Australia/Sydney\nAGT - America/Argentina/Buenos_Aires\nART - Africa/Cairo\nAST - America/Anchorage\nBET - America/Sao_Paulo\nBST - Asia/Dhaka\nCAT - Africa/Harare\nCNT - America/St_Johns\nCST - America/Chicago\nCTT - Asia/Shanghai\nEAT - Africa/Addis_Ababa\nECT - Europe/Paris\nIET - America/Indiana/Indianapolis\nIST - Asia/Kolkata\nJST - Asia/Tokyo\nMIT - Pacific/Apia\nNET - Asia/Yerevan\nNST - Pacific/Auckland\nPLT - Asia/Karachi\nPNT - America/Phoenix\nPRT - America/Puerto_Rico\nPST - America/Los_Angeles\nSST - Pacific/Guadalcanal\nVST - Asia/Ho_Chi_Minh\n*/\n\nconst offsets = {\n \"-720\": [\"AoE\", \"Y\"],\n // -12\n \"-660\": [\"NUT\", \"SST\", \"X\"],\n // -11\n \"-600\": [\"HST\", \"CKT\", \"TAHT\", \"W\"],\n // -10\n \"-570\": [\"MART\"],\n // -9:30\n \"-540\": [\"AKST\", \"HDT\", \"GAMT\", \"V\"],\n // -9\n \"-480\": [\"PST\", \"AKDT\", \"U\", \"PT\"],\n // -8\n \"-420\": [\"MST\", \"PDT\", \"T\", \"MT\", \"PT\"],\n // -7\n \"-360\": [\"CST\", \"MDT\", \"EAST\", \"GALT\", \"S\", \"CT\", \"MT\"],\n // -6\n \"-300\": [\"EST\", \"CDT\", \"ACT\", \"CIST\", \"COT\", \"CST\", \"EASST\", \"ECT\", \"PET\", \"R\", \"ET\", \"CT\"],\n // -5\n \"-240\": [\"EDT\", \"AST\", \"AMT\", \"BOT\", \"CIDST\", \"CLT\", \"FKT\", \"GYT\", \"VET\", \"Q\", \"AT\", \"ET\"],\n // -4\n \"-210\": [\"NST\"],\n // -3:30\n \"-180\": [\"UYT\", \"ADT\", \"AMST\", \"ART\", \"BRT\", \"CLST\", \"FKST\", \"GFT\", \"PMST\", \"ROTT\", \"SRT\", \"UYT\", \"WARST\", \"WGT\", \"P\", \"AT\"],\n // -3\n \"-150\": [\"NDT\"],\n // -2:30\n \"-120\": [\"GST\", \"BRST\", \"FNT\", \"GST\", \"PMDT\", \"UYST\", \"WGST\", \"O\"],\n // -2\n \"-60\": [\"CVT\", \"AZOT\", \"CVT\", \"EGT\", \"N\"],\n // -1\n \"0\": [\"UTC\", \"GMT\", \"AZOST\", \"EGST\", \"WET\", \"Z\", \"WT\"],\n // +/-0\n \"60\": [\"CET\", \"BST\", \"WAT\", \"WEST\", \"WST\", \"A\"],\n // +1\n \"120\": [\"CAT\", \"CEST\", \"EET\", \"SAST\", \"WAST\", \"B\"],\n // +2\n \"180\": [\"EAT\", \"EEST\", \"FET\", \"MSK\", \"SYOT\", \"TRT\", \"C\"],\n // +3\n \"210\": [\"IRST\"],\n // +3:30\n \"240\": [\"GET\", \"AZT\", \"KUYT\", \"MSD\", \"MUT\", \"RET\", \"SAMT\", \"SCT\", \"D\"],\n // +4\n \"270\": [\"AFT\", \"IRDT\"],\n // +4:30\n \"300\": [\"UZT\", \"AQTT\", \"AZST\", \"MAWT\", \"MVT\", \"ORAT\", \"PKT\", \"TFT\", \"TJT\", \"TMT\", \"YEKT\", \"E\"],\n // +5\n \"330\": [\"IST\"],\n // +5:30\n \"345\": [\"NPT\"],\n // +5:45\n \"360\": [\"BTT\", \"ALMT\", \"BTT\", \"IOT\", \"KGT\", \"OMST\", \"QYZT\", \"VOST\", \"YEKST\", \"F\"],\n // +6\n \"390\": [\"MMT\", \"CCT\"],\n // +6:30\n \"420\": [\"ICT\", \"CXT\", \"DAVT\", \"HOVT\", \"KRAT\", \"NOVST\", \"NOVT\", \"OMSST\", \"WIB\", \"G\"],\n // +7\n \"480\": [\"HKT\", \"AWST\", \"BNT\", \"CAST\", \"CHOT\", \"HOVST\", \"IRKT\", \"KRAST\", \"MYT\", \"PHT\", \"SGT\", \"ULAT\", \"WITA\", \"H\"],\n // +8\n \"510\": [\"PYT\"],\n // +8:30\n \"525\": [\"ACWST\"],\n // +8:45\n \"540\": [\"JST\", \"AWDT\", \"CHOST\", \"IRKST\", \"KST\", \"PWT\", \"TLT\", \"ULAST\", \"WIT\", \"YAKT\", \"I\"],\n // +9\n \"570\": [\"ACST\", \"ACT\"],\n // +9:30\n \"600\": [\"PGT\", \"AEST\", \"CHUT\", \"ChST\", \"DDUT\", \"VLAT\", \"YAKST\", \"YAPT\", \"K\", \"AET\"],\n // +10\n \"630\": [\"ACDT\", \"LHST\", \"ACT\"],\n // +10:30\n \"660\": [\"VUT\", \"AEDT\", \"KOST\", \"LHDT\", \"MAGT\", \"NCT\", \"NFT\", \"PONT\", \"SAKT\", \"SBT\", \"SRET\", \"VLAST\", \"L\", \"AET\"],\n // +11\n \"720\": [\"FJT\", \"ANAST\", \"ANAT\", \"GILT\", \"MAGST\", \"MHT\", \"NFDT\", \"NRT\", \"NZST\", \"PETST\", \"PETT\", \"TVT\", \"WAKT\", \"WFT\", \"M\"],\n // +12\n \"765\": [\"CHAST\"],\n // +12:45\n \"780\": [\"TOT\", \"FJST\", \"NZDT\", \"PHOT\", \"TKT\", \"TOT\"],\n // +13\n \"825\": [\"CHADT\"],\n // +13:45\n \"840\": [\"LINT\", \"TOST\", \"WST\"] // +14\n};\nconst abbreviations = {\n A: \"Alpha Time Zone\",\n ACDT: \"Australian Central Daylight Time\",\n ACST: \"Australian Central Standard Time\",\n // ACT: 'Acre Time',\n ACT: \"Australian Central Time\",\n ACWST: \"Australian Central Western Standard Time\",\n // ADT: 'Arabia Daylight Time',\n ADT: \"Atlantic Daylight Time\",\n ADST: \"Atlantic Daylight Saving Time\",\n AEDT: \"Australian Eastern Daylight Time\",\n AEST: \"Australian Eastern Standard Time\",\n AET: \"Australian Eastern Time\",\n AFT: \"Afghanistan Time\",\n AKDT: \"Alaska Daylight Time\",\n AKST: \"Alaska Standard Time\",\n ALMT: \"Alma-Ata Time\",\n AMDT: \"Armenia Daylight Time\",\n AMST: \"Amazon Summer Time\",\n // AMST: 'Armenia Summer Time',\n AMT: \"Amazon Time\",\n // AMT: 'Armenia Time',\n ANAST: \"Anadyr Summer Time\",\n ANAT: \"Anadyr Time\",\n AQTT: \"Aqtobe Time\",\n ART: \"Argentina Time\",\n // AST: 'Arabia Standard Time',\n AST: \"Atlantic Standard Time\",\n AT: \"Atlantic Time\",\n AWDT: \"Australian Western Daylight Time\",\n AWST: \"Australian Western Standard Time\",\n AZODT: \"Azores Daylight Time\",\n AZOST: \"Azores Summer Time\",\n AZOT: \"Azores Time\",\n AZST: \"Azerbaijan Summer Time\",\n AZT: \"Azerbaijan Time\",\n AoE: \"Anywhere on Earth\",\n B: \"Bravo Time Zone\",\n BDST: \"British Daylight Saving Time\",\n // BDT: 'British Daylight Time',\n BDT: \"Brunei Time\",\n BNT: \"Brunei Darussalam Time\",\n BOT: \"Bolivia Time\",\n BRST: \"Brasília Summer Time\",\n BRT: \"Brasília Time\",\n // BST: 'Bangladesh Standard Time',\n // BST: 'Bougainville Standard Time',\n BST: \"British Summer Time\",\n BT: \"Brazil Time\",\n BTT: \"Bhutan Time\",\n C: \"Charlie Time Zone\",\n CAST: \"Casey Time\",\n CAT: \"Central Africa Time\",\n CCT: \"Cocos Islands Time\",\n CDT: \"Central Daylight Time\",\n // CDT: 'Cuba Daylight Time',\n CDST: \"Central Daylight Savings Time\",\n CEDT: \"Central European Daylight Time\",\n CEST: \"Central European Summer Time\",\n CET: \"Central European Time\",\n CHADT: \"Chatham Island Daylight Time\",\n CHAST: \"Chatham Island Standard Time\",\n CHODT: \"Choibalsan Daylight Time\",\n CHODST: \"Choibalsan Daylight Saving Time\",\n CHOST: \"Choibalsan Summer Time\",\n CHOT: \"Choibalsan Time\",\n CHUT: \"Chuuk Time\",\n CIDST: \"Cayman Islands Daylight Saving Time\",\n CIST: \"Cayman Islands Standard Time\",\n CIT: \"Cayman Islands Time\",\n CKT: \"Cook Island Time\",\n CLDT: \"Chile Daylight Time\",\n CLST: \"Chile Summer Time\",\n CLT: \"Chile Standard Time\",\n COT: \"Colombia Time\",\n CST: \"Central Standard Time\",\n // CST: 'China Standard Time',\n // CST: 'Cuba Standard Time',\n CT: \"Central Time\",\n CVT: \"Cape Verde Time\",\n CXT: \"Christmas Island Time\",\n ChST: \"Chamorro Standard Time\",\n D: \"Delta Time Zone\",\n DAVT: \"Davis Time\",\n DDUT: \"Dumont-d'Urville Time\",\n E: \"Echo Time Zone\",\n EADT: \"Easter Island Daylight Time\",\n EASST: \"Easter Island Summer Time\",\n EAST: \"Easter Island Standard Time\",\n EAT: \"Eastern Africa Time\",\n ECST: \"European Central Summer Time\",\n ECT: \"Ecuador Time\",\n EDT: \"Eastern Daylight Time\",\n EDST: \"Eastern Daylight Saving Time\",\n EEDT: \"Eastern European Daylight Time\",\n EEST: \"Eastern European Summer Time\",\n EET: \"Eastern European Time\",\n EFATE: \"Efate Time\",\n EGST: \"Eastern Greenland Summer Time\",\n EGT: \"East Greenland Time\",\n EST: \"Eastern Standard Time\",\n ET: \"Eastern Time\",\n F: \"Foxtrot Time Zone\",\n FET: \"Further-Eastern European Time\",\n FJDT: \"Fiji Daylight Time\",\n FJST: \"Fiji Summer Time\",\n FJT: \"Fiji Time\",\n FKDT: \"Falkland Island Daylight Time\",\n FKST: \"Falkland Islands Summer Time\",\n FKT: \"Falkland Island Time\",\n FNT: \"Fernando de Noronha Time\",\n G: \"Golf Time Zone\",\n GALT: \"Galapagos Time\",\n GAMT: \"Gambier Time\",\n GET: \"Georgia Standard Time\",\n GFT: \"French Guiana Time\",\n GILT: \"Gilbert Island Time\",\n GMT: \"Greenwich Mean Time\",\n // GST: 'Gulf Standard Time',\n GST: \"South Georgia Time\",\n GT: \"Greenwich Time\",\n GYT: \"Guyana Time\",\n H: \"Hotel Time Zone\",\n HAA: \"Heure Avancée de l'Atlantique\",\n HAC: \"Heure Avancée du Centre\",\n HADT: \"Hawaii Daylight Time\",\n HAE: \"Heure Avancée de l'Est\",\n HAP: \"Heure Avancée du Pacifique\",\n HAST: \"Hawaii-Aleutian Standard Time\",\n HAR: \"Heure Avancée des Rocheuses\",\n HAT: \"Heure Avancée de Terre-Neuve\",\n HDT: \"Hawaii-Aleutian Daylight Time\",\n HLV: \"Hora Legal de Venezuela\",\n HNA: \"Heure Normale de l'Atlantique\",\n HNC: \"Heure Normale du Centre\",\n HNE: \"Heure Normale de l'Est\",\n HNP: \"Heure Normale du Pacifique\",\n HNR: \"Heure Normale des Rocheuses\",\n HNT: \"Heure Normale de Terre-Neuve\",\n HKT: \"Hong Kong Time\",\n HOVDT: \"Hovd Daylight Time\",\n HOVDST: \"Hovd Daylight Saving Time\",\n HOVST: \"Hovd Summer Time\",\n HOVT: \"Hovd Time\",\n HST: \"Hawaii Standard Time\",\n I: \"India Time Zone\",\n ICT: \"Indochina Time\",\n IDT: \"Israel Daylight Time\",\n IOT: \"Indian Chagos Time\",\n IRDT: \"Iran Daylight Time\",\n IRKST: \"Irkutsk Summer Time\",\n IRKT: \"Irkutsk Time\",\n IRST: \"Iran Standard Time\",\n IST: \"India Standard Time\",\n // IST: 'Irish Standard Time',\n // IST: 'Israel Standard Time',\n JST: \"Japan Standard Time\",\n K: \"Kilo Time Zone\",\n KGT: \"Kyrgyzstan Time\",\n KIT: \"Kerguelen (Islands) Time\",\n KOST: \"Kosrae Time\",\n KRAST: \"Krasnoyarsk Summer Time\",\n KRAT: \"Krasnoyarsk Time\",\n KST: \"Korea Standard Time\",\n KT: \"Korea Time\",\n KUYT: \"Kuybyshev Time\",\n L: \"Lima Time Zone\",\n LHDT: \"Lord Howe Daylight Time\",\n LHST: \"Lord Howe Standard Time\",\n LINT: \"Line Islands Time\",\n M: \"Mike Time Zone\",\n MAGST: \"Magadan Summer Time\",\n MAGT: \"Magadan Time\",\n MART: \"Marquesas Time\",\n MAWT: \"Mawson Time\",\n MCK: \"Moscow Time\",\n MDST: \"Mountain Daylight Saving Time\",\n MDT: \"Mountain Daylight Time\",\n MESZ: \"Mitteleuropäische Sommerzeit\",\n MEZ: \"Mitteleuropäische Zeit\",\n MHT: \"Marshall Islands Time\",\n MMT: \"Myanmar Time\",\n MST: \"Mountain Standard Time\",\n MSK: \"Moscow Standard Time\",\n MT: \"Mountain Time\",\n MUT: \"Mauritius Time\",\n MVT: \"Maldives Time\",\n MYT: \"Malaysia Time\",\n N: \"November Time Zone\",\n NACDT: \"North American Central Daylight Time\",\n NACST: \"North American Central Standard Time\",\n NAEDT: \"North American Eastern Daylight Time\",\n NAEST: \"North American Eastern Standard Time\",\n NAMDT: \"North American Mountain Daylight Time\",\n NAMST: \"North American Mountain Standard Time\",\n NAPDT: \"North American Pacific Daylight Time\",\n NAPST: \"North American Pacific Standard Time\",\n NCT: \"New Caledonia Time\",\n NDT: \"Newfoundland Daylight Time\",\n NFDT: \"Norfolk Daylight Time\",\n NFT: \"Norfolk Time\",\n NOVST: \"Novosibirsk Summer Time\",\n NOVT: \"Novosibirsk Time\",\n NPT: \"Nepal Time\",\n NRT: \"Nauru Time\",\n NST: \"Newfoundland Standard Time\",\n NUT: \"Niue Time\",\n NZDT: \"New Zealand Daylight Time\",\n NZST: \"New Zealand Standard Time\",\n O: \"Oscar Time Zone\",\n OESZ: \"Osteuropäische Sommerzeit\",\n OEZ: \"Osteuropäische Zeit\",\n OMSST: \"Omsk Summer Time\",\n OMST: \"Omsk Standard Time\",\n ORAT: \"Oral Time\",\n P: \"Papa Time Zone\",\n PDT: \"Pacific Daylight Time\",\n PDST: \"Pacific Daylight Saving Time\",\n PET: \"Peru Time\",\n PETST: \"Kamchatka Summer Time\",\n PETT: \"Kamchatka Time\",\n PGT: \"Papua New Guinea Time\",\n PHOT: \"Phoenix Island Time\",\n PHT: \"Philippine Time\",\n PKT: \"Pakistan Standard Time\",\n PMDT: \"Pierre & Miquelon Daylight Time\",\n PMST: \"Pierre & Miquelon Standard Time\",\n PONT: \"Pohnpei Standard Time\",\n PST: \"Pacific Standard Time\",\n // PST: 'Pitcairn Standard Time',\n PT: \"Pacific Time\",\n PWT: \"Palau Time\",\n // PYST: 'Paraguay Summer Time',\n PYST: \"Pyongyang Standard Time\",\n // PYT: 'Paraguay Time',\n PYT: \"Pyongyang Time\",\n Q: \"Quebec Time Zone\",\n QYZT: \"Qyzylorda Time\",\n R: \"Romeo Time Zone\",\n RET: \"Reunion Time\",\n ROTT: \"Rothera Time\",\n S: \"Sierra Time Zone\",\n SAKT: \"Sakhalin Time\",\n SAMT: \"Samara Time\",\n SAMST: \"Samara Summer Time\",\n SAST: \"South Africa Standard Time\",\n SBT: \"Solomon Islands Time\",\n SCT: \"Seychelles Time\",\n SGT: \"Singapore Time\",\n SRET: \"Srednekolymsk Time\",\n SRT: \"Suriname Time\",\n SST: \"Samoa Standard Time\",\n SYOT: \"Syowa Time\",\n T: \"Tango Time Zone\",\n TAHT: \"Tahiti Time\",\n TFT: \"French Southern and Antarctic Time\",\n TJT: \"Tajikistan Time\",\n TKT: \"Tokelau Time\",\n TLT: \"East Timor Time\",\n TMT: \"Turkmenistan Time\",\n TOST: \"Tonga Summer Time\",\n TOT: \"Tonga Time\",\n TRT: \"Turkey Time\",\n tVT: \"Tuvalu Time\",\n U: \"Uniform Time Zone\",\n ULAST: \"Ulaanbaatar Summer Time\",\n ULAT: \"Ulaanbaatar Time\",\n UTC: \"Coordinated Universal Time\",\n UYST: \"Uruguay Summer Time\",\n UYT: \"Uruguay Time\",\n UZT: \"Uzbekistan Time\",\n V: \"Victor Time Zone\",\n VET: \"Venezuelan Standard Time\",\n VLAST: \"Vladivostok Summer Time\",\n VLAT: \"Vladivostok Time\",\n VOST: \"Vostok Time\",\n VUT: \"Vanuatu Time\",\n W: \"Whiskey Time Zone\",\n WAKT: \"Wake Time\",\n WARST: \"Western Argentine Summer Time\",\n WAST: \"West Africa Summer Time\",\n // WAT: 'Western Australia Time',\n WAT: \"West Africa Time\",\n // WAT: 'Western Australia Time',\n WDT: \"Western Daylight Time\",\n WEDT: \"Western European Daylight Time\",\n WEST: \"Western European Summer Time\",\n WESZ: \"Westeuropäische Sommerzeit\",\n WET: \"Western European Time\",\n WEZ: \"Westeuropäische Zeit\",\n WFT: \"Wallis and Futuna Time\",\n WGST: \"Western Greenland Summer Time\",\n WGT: \"West Greenland Time\",\n WIB: \"Western Indonesian Time\",\n WIT: \"Eastern Indonesian Time\",\n WITA: \"Central Indonesian Time\",\n WST: \"Western Standard Time\",\n // WST: 'West Samoa Time',\n // WST: 'Western Summer Time',\n WT: \"Western Sahara Standard Time\",\n X: \"X-ray Time Zone\",\n Y: \"Yankee Time Zone\",\n YAKST: \"Yakutsk Summer Time\",\n YAKT: \"Yakutsk Time\",\n YAPT: \"Yap Time\",\n YEKST: \"Yekaterinburg Summer Time\",\n YEKT: \"Yekaterinburg Time\",\n Z: \"Zulu Time Zone\"\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (abbreviations);\n\n//# sourceURL=webpack://@rangerrick/moment-javaformat/./src/abbreviations.ts?");
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ abbreviations: () => (/* binding */ abbreviations),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__),\n/* harmony export */ offsets: () => (/* binding */ offsets)\n/* harmony export */ });\n/*\n// Java 8 mappings:\nEST - -05:00\nHST - -10:00\nMST - -07:00\nACT - Australia/Darwin\nAET - Australia/Sydney\nAGT - America/Argentina/Buenos_Aires\nART - Africa/Cairo\nAST - America/Anchorage\nBET - America/Sao_Paulo\nBST - Asia/Dhaka\nCAT - Africa/Harare\nCNT - America/St_Johns\nCST - America/Chicago\nCTT - Asia/Shanghai\nEAT - Africa/Addis_Ababa\nECT - Europe/Paris\nIET - America/Indiana/Indianapolis\nIST - Asia/Kolkata\nJST - Asia/Tokyo\nMIT - Pacific/Apia\nNET - Asia/Yerevan\nNST - Pacific/Auckland\nPLT - Asia/Karachi\nPNT - America/Phoenix\nPRT - America/Puerto_Rico\nPST - America/Los_Angeles\nSST - Pacific/Guadalcanal\nVST - Asia/Ho_Chi_Minh\n*/\n\nconst offsets = {\n \"-720\": [\"AoE\", \"Y\"],\n // -12\n \"-660\": [\"NUT\", \"SST\", \"X\"],\n // -11\n \"-600\": [\"HST\", \"CKT\", \"TAHT\", \"W\"],\n // -10\n \"-570\": [\"MART\"],\n // -9:30\n \"-540\": [\"AKST\", \"HDT\", \"GAMT\", \"V\"],\n // -9\n \"-480\": [\"PST\", \"AKDT\", \"U\", \"PT\"],\n // -8\n \"-420\": [\"MST\", \"PDT\", \"T\", \"MT\", \"PT\"],\n // -7\n \"-360\": [\"CST\", \"MDT\", \"EAST\", \"GALT\", \"S\", \"CT\", \"MT\"],\n // -6\n \"-300\": [\"EST\", \"CDT\", \"ACT\", \"CIST\", \"COT\", \"CST\", \"EASST\", \"ECT\", \"PET\", \"R\", \"ET\", \"CT\"],\n // -5\n \"-240\": [\"EDT\", \"AST\", \"AMT\", \"BOT\", \"CIDST\", \"CLT\", \"FKT\", \"GYT\", \"VET\", \"Q\", \"AT\", \"ET\"],\n // -4\n \"-210\": [\"NST\"],\n // -3:30\n \"-180\": [\"UYT\", \"ADT\", \"AMST\", \"ART\", \"BRT\", \"CLST\", \"FKST\", \"GFT\", \"PMST\", \"ROTT\", \"SRT\", \"UYT\", \"WARST\", \"WGT\", \"P\", \"AT\"],\n // -3\n \"-150\": [\"NDT\"],\n // -2:30\n \"-120\": [\"GST\", \"BRST\", \"FNT\", \"GST\", \"PMDT\", \"UYST\", \"WGST\", \"O\"],\n // -2\n \"-60\": [\"CVT\", \"AZOT\", \"CVT\", \"EGT\", \"N\"],\n // -1\n \"0\": [\"UTC\", \"GMT\", \"AZOST\", \"EGST\", \"WET\", \"Z\", \"WT\"],\n // +/-0\n \"60\": [\"CET\", \"BST\", \"WAT\", \"WEST\", \"WST\", \"A\"],\n // +1\n \"120\": [\"CAT\", \"CEST\", \"EET\", \"SAST\", \"WAST\", \"B\"],\n // +2\n \"180\": [\"EAT\", \"EEST\", \"FET\", \"MSK\", \"SYOT\", \"TRT\", \"C\"],\n // +3\n \"210\": [\"IRST\"],\n // +3:30\n \"240\": [\"GET\", \"AZT\", \"KUYT\", \"MSD\", \"MUT\", \"RET\", \"SAMT\", \"SCT\", \"D\"],\n // +4\n \"270\": [\"AFT\", \"IRDT\"],\n // +4:30\n \"300\": [\"UZT\", \"AQTT\", \"AZST\", \"MAWT\", \"MVT\", \"ORAT\", \"PKT\", \"TFT\", \"TJT\", \"TMT\", \"YEKT\", \"E\"],\n // +5\n \"330\": [\"IST\"],\n // +5:30\n \"345\": [\"NPT\"],\n // +5:45\n \"360\": [\"BTT\", \"ALMT\", \"BTT\", \"IOT\", \"KGT\", \"OMST\", \"QYZT\", \"VOST\", \"YEKST\", \"F\"],\n // +6\n \"390\": [\"MMT\", \"CCT\"],\n // +6:30\n \"420\": [\"ICT\", \"CXT\", \"DAVT\", \"HOVT\", \"KRAT\", \"NOVST\", \"NOVT\", \"OMSST\", \"WIB\", \"G\"],\n // +7\n \"480\": [\"HKT\", \"AWST\", \"BNT\", \"CAST\", \"CHOT\", \"HOVST\", \"IRKT\", \"KRAST\", \"MYT\", \"PHT\", \"SGT\", \"ULAT\", \"WITA\", \"H\"],\n // +8\n \"510\": [\"PYT\"],\n // +8:30\n \"525\": [\"ACWST\"],\n // +8:45\n \"540\": [\"JST\", \"AWDT\", \"CHOST\", \"IRKST\", \"KST\", \"PWT\", \"TLT\", \"ULAST\", \"WIT\", \"YAKT\", \"I\"],\n // +9\n \"570\": [\"ACST\", \"ACT\"],\n // +9:30\n \"600\": [\"PGT\", \"AEST\", \"CHUT\", \"ChST\", \"DDUT\", \"VLAT\", \"YAKST\", \"YAPT\", \"K\", \"AET\"],\n // +10\n \"630\": [\"ACDT\", \"LHST\", \"ACT\"],\n // +10:30\n \"660\": [\"VUT\", \"AEDT\", \"KOST\", \"LHDT\", \"MAGT\", \"NCT\", \"NFT\", \"PONT\", \"SAKT\", \"SBT\", \"SRET\", \"VLAST\", \"L\", \"AET\"],\n // +11\n \"720\": [\"FJT\", \"ANAST\", \"ANAT\", \"GILT\", \"MAGST\", \"MHT\", \"NFDT\", \"NRT\", \"NZST\", \"PETST\", \"PETT\", \"TVT\", \"WAKT\", \"WFT\", \"M\"],\n // +12\n \"765\": [\"CHAST\"],\n // +12:45\n \"780\": [\"TOT\", \"FJST\", \"NZDT\", \"PHOT\", \"TKT\", \"TOT\"],\n // +13\n \"825\": [\"CHADT\"],\n // +13:45\n \"840\": [\"LINT\", \"TOST\", \"WST\"] // +14\n};\nconst abbreviations = {\n A: \"Alpha Time Zone\",\n ACDT: \"Australian Central Daylight Time\",\n ACST: \"Australian Central Standard Time\",\n // ACT: 'Acre Time',\n ACT: \"Australian Central Time\",\n ACWST: \"Australian Central Western Standard Time\",\n // ADT: 'Arabia Daylight Time',\n ADT: \"Atlantic Daylight Time\",\n ADST: \"Atlantic Daylight Saving Time\",\n AEDT: \"Australian Eastern Daylight Time\",\n AEST: \"Australian Eastern Standard Time\",\n AET: \"Australian Eastern Time\",\n AFT: \"Afghanistan Time\",\n AKDT: \"Alaska Daylight Time\",\n AKST: \"Alaska Standard Time\",\n ALMT: \"Alma-Ata Time\",\n AMDT: \"Armenia Daylight Time\",\n AMST: \"Amazon Summer Time\",\n // AMST: 'Armenia Summer Time',\n AMT: \"Amazon Time\",\n // AMT: 'Armenia Time',\n ANAST: \"Anadyr Summer Time\",\n ANAT: \"Anadyr Time\",\n AQTT: \"Aqtobe Time\",\n ART: \"Argentina Time\",\n // AST: 'Arabia Standard Time',\n AST: \"Atlantic Standard Time\",\n AT: \"Atlantic Time\",\n AWDT: \"Australian Western Daylight Time\",\n AWST: \"Australian Western Standard Time\",\n AZODT: \"Azores Daylight Time\",\n AZOST: \"Azores Summer Time\",\n AZOT: \"Azores Time\",\n AZST: \"Azerbaijan Summer Time\",\n AZT: \"Azerbaijan Time\",\n AoE: \"Anywhere on Earth\",\n B: \"Bravo Time Zone\",\n BDST: \"British Daylight Saving Time\",\n // BDT: 'British Daylight Time',\n BDT: \"Brunei Time\",\n BNT: \"Brunei Darussalam Time\",\n BOT: \"Bolivia Time\",\n BRST: \"Brasília Summer Time\",\n BRT: \"Brasília Time\",\n // BST: 'Bangladesh Standard Time',\n // BST: 'Bougainville Standard Time',\n BST: \"British Summer Time\",\n BT: \"Brazil Time\",\n BTT: \"Bhutan Time\",\n C: \"Charlie Time Zone\",\n CAST: \"Casey Time\",\n CAT: \"Central Africa Time\",\n CCT: \"Cocos Islands Time\",\n CDT: \"Central Daylight Time\",\n // CDT: 'Cuba Daylight Time',\n CDST: \"Central Daylight Savings Time\",\n CEDT: \"Central European Daylight Time\",\n CEST: \"Central European Summer Time\",\n CET: \"Central European Time\",\n CHADT: \"Chatham Island Daylight Time\",\n CHAST: \"Chatham Island Standard Time\",\n CHODT: \"Choibalsan Daylight Time\",\n CHODST: \"Choibalsan Daylight Saving Time\",\n CHOST: \"Choibalsan Summer Time\",\n CHOT: \"Choibalsan Time\",\n CHUT: \"Chuuk Time\",\n CIDST: \"Cayman Islands Daylight Saving Time\",\n CIST: \"Cayman Islands Standard Time\",\n CIT: \"Cayman Islands Time\",\n CKT: \"Cook Island Time\",\n CLDT: \"Chile Daylight Time\",\n CLST: \"Chile Summer Time\",\n CLT: \"Chile Standard Time\",\n COT: \"Colombia Time\",\n CST: \"Central Standard Time\",\n // CST: 'China Standard Time',\n // CST: 'Cuba Standard Time',\n CT: \"Central Time\",\n CVT: \"Cape Verde Time\",\n CXT: \"Christmas Island Time\",\n ChST: \"Chamorro Standard Time\",\n D: \"Delta Time Zone\",\n DAVT: \"Davis Time\",\n DDUT: \"Dumont-d'Urville Time\",\n E: \"Echo Time Zone\",\n EADT: \"Easter Island Daylight Time\",\n EASST: \"Easter Island Summer Time\",\n EAST: \"Easter Island Standard Time\",\n EAT: \"Eastern Africa Time\",\n ECST: \"European Central Summer Time\",\n ECT: \"Ecuador Time\",\n EDT: \"Eastern Daylight Time\",\n EDST: \"Eastern Daylight Saving Time\",\n EEDT: \"Eastern European Daylight Time\",\n EEST: \"Eastern European Summer Time\",\n EET: \"Eastern European Time\",\n EFATE: \"Efate Time\",\n EGST: \"Eastern Greenland Summer Time\",\n EGT: \"East Greenland Time\",\n EST: \"Eastern Standard Time\",\n ET: \"Eastern Time\",\n F: \"Foxtrot Time Zone\",\n FET: \"Further-Eastern European Time\",\n FJDT: \"Fiji Daylight Time\",\n FJST: \"Fiji Summer Time\",\n FJT: \"Fiji Time\",\n FKDT: \"Falkland Island Daylight Time\",\n FKST: \"Falkland Islands Summer Time\",\n FKT: \"Falkland Island Time\",\n FNT: \"Fernando de Noronha Time\",\n G: \"Golf Time Zone\",\n GALT: \"Galapagos Time\",\n GAMT: \"Gambier Time\",\n GET: \"Georgia Standard Time\",\n GFT: \"French Guiana Time\",\n GILT: \"Gilbert Island Time\",\n GMT: \"Greenwich Mean Time\",\n // GST: 'Gulf Standard Time',\n GST: \"South Georgia Time\",\n GT: \"Greenwich Time\",\n GYT: \"Guyana Time\",\n H: \"Hotel Time Zone\",\n HAA: \"Heure Avancée de l'Atlantique\",\n HAC: \"Heure Avancée du Centre\",\n HADT: \"Hawaii Daylight Time\",\n HAE: \"Heure Avancée de l'Est\",\n HAP: \"Heure Avancée du Pacifique\",\n HAST: \"Hawaii-Aleutian Standard Time\",\n HAR: \"Heure Avancée des Rocheuses\",\n HAT: \"Heure Avancée de Terre-Neuve\",\n HDT: \"Hawaii-Aleutian Daylight Time\",\n HLV: \"Hora Legal de Venezuela\",\n HNA: \"Heure Normale de l'Atlantique\",\n HNC: \"Heure Normale du Centre\",\n HNE: \"Heure Normale de l'Est\",\n HNP: \"Heure Normale du Pacifique\",\n HNR: \"Heure Normale des Rocheuses\",\n HNT: \"Heure Normale de Terre-Neuve\",\n HKT: \"Hong Kong Time\",\n HOVDT: \"Hovd Daylight Time\",\n HOVDST: \"Hovd Daylight Saving Time\",\n HOVST: \"Hovd Summer Time\",\n HOVT: \"Hovd Time\",\n HST: \"Hawaii Standard Time\",\n I: \"India Time Zone\",\n ICT: \"Indochina Time\",\n IDT: \"Israel Daylight Time\",\n IOT: \"Indian Chagos Time\",\n IRDT: \"Iran Daylight Time\",\n IRKST: \"Irkutsk Summer Time\",\n IRKT: \"Irkutsk Time\",\n IRST: \"Iran Standard Time\",\n IST: \"India Standard Time\",\n // IST: 'Irish Standard Time',\n // IST: 'Israel Standard Time',\n JST: \"Japan Standard Time\",\n K: \"Kilo Time Zone\",\n KGT: \"Kyrgyzstan Time\",\n KIT: \"Kerguelen (Islands) Time\",\n KOST: \"Kosrae Time\",\n KRAST: \"Krasnoyarsk Summer Time\",\n KRAT: \"Krasnoyarsk Time\",\n KST: \"Korea Standard Time\",\n KT: \"Korea Time\",\n KUYT: \"Kuybyshev Time\",\n L: \"Lima Time Zone\",\n LHDT: \"Lord Howe Daylight Time\",\n LHST: \"Lord Howe Standard Time\",\n LINT: \"Line Islands Time\",\n M: \"Mike Time Zone\",\n MAGST: \"Magadan Summer Time\",\n MAGT: \"Magadan Time\",\n MART: \"Marquesas Time\",\n MAWT: \"Mawson Time\",\n MCK: \"Moscow Time\",\n MDST: \"Mountain Daylight Saving Time\",\n MDT: \"Mountain Daylight Time\",\n MESZ: \"Mitteleuropäische Sommerzeit\",\n MEZ: \"Mitteleuropäische Zeit\",\n MHT: \"Marshall Islands Time\",\n MMT: \"Myanmar Time\",\n MST: \"Mountain Standard Time\",\n MSK: \"Moscow Standard Time\",\n MT: \"Mountain Time\",\n MUT: \"Mauritius Time\",\n MVT: \"Maldives Time\",\n MYT: \"Malaysia Time\",\n N: \"November Time Zone\",\n NACDT: \"North American Central Daylight Time\",\n NACST: \"North American Central Standard Time\",\n NAEDT: \"North American Eastern Daylight Time\",\n NAEST: \"North American Eastern Standard Time\",\n NAMDT: \"North American Mountain Daylight Time\",\n NAMST: \"North American Mountain Standard Time\",\n NAPDT: \"North American Pacific Daylight Time\",\n NAPST: \"North American Pacific Standard Time\",\n NCT: \"New Caledonia Time\",\n NDT: \"Newfoundland Daylight Time\",\n NFDT: \"Norfolk Daylight Time\",\n NFT: \"Norfolk Time\",\n NOVST: \"Novosibirsk Summer Time\",\n NOVT: \"Novosibirsk Time\",\n NPT: \"Nepal Time\",\n NRT: \"Nauru Time\",\n NST: \"Newfoundland Standard Time\",\n NUT: \"Niue Time\",\n NZDT: \"New Zealand Daylight Time\",\n NZST: \"New Zealand Standard Time\",\n O: \"Oscar Time Zone\",\n OESZ: \"Osteuropäische Sommerzeit\",\n OEZ: \"Osteuropäische Zeit\",\n OMSST: \"Omsk Summer Time\",\n OMST: \"Omsk Standard Time\",\n ORAT: \"Oral Time\",\n P: \"Papa Time Zone\",\n PDT: \"Pacific Daylight Time\",\n PDST: \"Pacific Daylight Saving Time\",\n PET: \"Peru Time\",\n PETST: \"Kamchatka Summer Time\",\n PETT: \"Kamchatka Time\",\n PGT: \"Papua New Guinea Time\",\n PHOT: \"Phoenix Island Time\",\n PHT: \"Philippine Time\",\n PKT: \"Pakistan Standard Time\",\n PMDT: \"Pierre & Miquelon Daylight Time\",\n PMST: \"Pierre & Miquelon Standard Time\",\n PONT: \"Pohnpei Standard Time\",\n PST: \"Pacific Standard Time\",\n // PST: 'Pitcairn Standard Time',\n PT: \"Pacific Time\",\n PWT: \"Palau Time\",\n // PYST: 'Paraguay Summer Time',\n PYST: \"Pyongyang Standard Time\",\n // PYT: 'Paraguay Time',\n PYT: \"Pyongyang Time\",\n Q: \"Quebec Time Zone\",\n QYZT: \"Qyzylorda Time\",\n R: \"Romeo Time Zone\",\n RET: \"Reunion Time\",\n ROTT: \"Rothera Time\",\n S: \"Sierra Time Zone\",\n SAKT: \"Sakhalin Time\",\n SAMT: \"Samara Time\",\n SAMST: \"Samara Summer Time\",\n SAST: \"South Africa Standard Time\",\n SBT: \"Solomon Islands Time\",\n SCT: \"Seychelles Time\",\n SGT: \"Singapore Time\",\n SRET: \"Srednekolymsk Time\",\n SRT: \"Suriname Time\",\n SST: \"Samoa Standard Time\",\n SYOT: \"Syowa Time\",\n T: \"Tango Time Zone\",\n TAHT: \"Tahiti Time\",\n TFT: \"French Southern and Antarctic Time\",\n TJT: \"Tajikistan Time\",\n TKT: \"Tokelau Time\",\n TLT: \"East Timor Time\",\n TMT: \"Turkmenistan Time\",\n TOST: \"Tonga Summer Time\",\n TOT: \"Tonga Time\",\n TRT: \"Turkey Time\",\n tVT: \"Tuvalu Time\",\n U: \"Uniform Time Zone\",\n ULAST: \"Ulaanbaatar Summer Time\",\n ULAT: \"Ulaanbaatar Time\",\n UTC: \"Coordinated Universal Time\",\n UYST: \"Uruguay Summer Time\",\n UYT: \"Uruguay Time\",\n UZT: \"Uzbekistan Time\",\n V: \"Victor Time Zone\",\n VET: \"Venezuelan Standard Time\",\n VLAST: \"Vladivostok Summer Time\",\n VLAT: \"Vladivostok Time\",\n VOST: \"Vostok Time\",\n VUT: \"Vanuatu Time\",\n W: \"Whiskey Time Zone\",\n WAKT: \"Wake Time\",\n WARST: \"Western Argentine Summer Time\",\n WAST: \"West Africa Summer Time\",\n // WAT: 'Western Australia Time',\n WAT: \"West Africa Time\",\n // WAT: 'Western Australia Time',\n WDT: \"Western Daylight Time\",\n WEDT: \"Western European Daylight Time\",\n WEST: \"Western European Summer Time\",\n WESZ: \"Westeuropäische Sommerzeit\",\n WET: \"Western European Time\",\n WEZ: \"Westeuropäische Zeit\",\n WFT: \"Wallis and Futuna Time\",\n WGST: \"Western Greenland Summer Time\",\n WGT: \"West Greenland Time\",\n WIB: \"Western Indonesian Time\",\n WIT: \"Eastern Indonesian Time\",\n WITA: \"Central Indonesian Time\",\n WST: \"Western Standard Time\",\n // WST: 'West Samoa Time',\n // WST: 'Western Summer Time',\n WT: \"Western Sahara Standard Time\",\n X: \"X-ray Time Zone\",\n Y: \"Yankee Time Zone\",\n YAKST: \"Yakutsk Summer Time\",\n YAKT: \"Yakutsk Time\",\n YAPT: \"Yap Time\",\n YEKST: \"Yekaterinburg Summer Time\",\n YEKT: \"Yekaterinburg Time\",\n Z: \"Zulu Time Zone\"\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (abbreviations);\n\n//# sourceURL=webpack://@rangerrick/moment-javaformat/./src/abbreviations.ts?\n}");

@@ -51,3 +51,3 @@ /***/ }),

eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ PaddedToken: () => (/* binding */ PaddedToken),\n/* harmony export */ \"default\": () => (/* binding */ DateTimeFormatter)\n/* harmony export */ });\n/* harmony import */ var _Formatter__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../Formatter */ \"./src/Formatter.ts\");\n// eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unused-vars\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\n//import { Moment } from 'moment-timezone';\n\n\nconst endZeroes = /:?00$/;\nconst matchReserved = /[A-Za-z]/;\nconst adConverter = moment => {\n return moment.year() > 0 ? \"AD\" : \"BC\";\n};\nconst findAbbreviation = moment => {\n const defaultAbbr = moment.zoneAbbr();\n if (defaultAbbr === \"UTC\" && moment.utcOffset() != 0) {\n return null;\n }\n return defaultAbbr;\n};\nconst javaToMoment = {\n // era\n G: adConverter,\n GG: adConverter,\n GGG: adConverter,\n GGGG: moment => {\n return moment.year() > 0 ? \"Anno Domini\" : \"Before Christ\";\n },\n GGGGG: moment => {\n return adConverter(moment).substring(0, 1);\n },\n // year\n u: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"YYYY\"), 1);\n },\n uu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YY\")), 2);\n },\n uuu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"YYYY\"), 3);\n },\n uuuu: \"YYYY\",\n uuuuu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"YYYY\"), 5);\n },\n uuuuuu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"YYYY\"), 6);\n },\n // year-of-era\n y: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"Y\"));\n },\n yy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YY\"));\n },\n yyy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YYYY\")), 3);\n },\n yyyy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YYYY\"));\n },\n yyyyy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YYYY\")), 5);\n },\n yyyyyy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YYYY\")), 6);\n },\n // day-of-year\n D: \"DDD\",\n DD: moment => {\n const ret = moment.format(\"DDD\");\n if (ret.length > 2) {\n throw new Error(\"Field DayOfYear cannot be printed as the value \" + ret + \" exceeds the maximum print width of 2\");\n }\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(ret, 2);\n },\n DDD: \"DDDD\",\n // DDDD throws an error in Java DateTimeFormatter\n\n // month-of-year\n M: \"M\",\n MM: \"MM\",\n MMM: \"MMM\",\n MMMM: \"MMMM\",\n MMMMM: moment => {\n return moment.format(\"MMMM\").substring(0, 1);\n },\n // month-of-year (numeric)\n L: \"M\",\n LL: \"MM\",\n LLL: \"M\",\n LLLL: \"M\",\n LLLLL: \"M\",\n // day-of-month\n d: \"D\",\n dd: \"DD\",\n // quarter-of-year\n Q: \"Q\",\n QQ: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"Q\"), 2);\n },\n QQQ: moment => {\n return \"Q\" + moment.format(\"Q\");\n },\n QQQQ: moment => {\n return moment.format(\"Qo\") + \" quarter\";\n },\n QQQQQ: \"Q\",\n // quarter-of-year\n q: \"Q\",\n qq: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"Q\"), 2);\n },\n qqq: \"Q\",\n qqqq: \"Q\",\n qqqqq: \"Q\",\n // week-based-year\n Y: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"gggg\"), 1);\n },\n YY: \"gg\",\n YYY: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"gggg\"), 3);\n },\n YYYY: \"gggg\",\n YYYYY: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"gggg\"), 5);\n },\n YYYYYY: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"gggg\"), 6);\n },\n // week-of-week-based-year\n w: \"w\",\n ww: \"ww\",\n // week-of-month (W) not supported\n W: null,\n WW: null,\n WWW: null,\n WWWW: null,\n // day-of-week\n E: \"ddd\",\n EE: \"ddd\",\n EEE: \"ddd\",\n EEEE: \"dddd\",\n EEEEE: moment => {\n return moment.format(\"dddd\").substring(0, 1);\n },\n // localized day-of-week (e)\n e: \"d\",\n ee: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"d\"), 2);\n },\n eee: \"ddd\",\n eeee: \"dddd\",\n eeeee: moment => {\n return moment.format(\"dddd\").substring(0, 1);\n },\n // localized day-of-week (c)\n c: \"d\",\n ccc: \"ddd\",\n cccc: \"dddd\",\n ccccc: moment => {\n // 5 c's = 0-indexed I guess?!?\n return String(parseInt(moment.format(\"d\"), 10) - 1);\n },\n // week of month (F) not supported\n\n // am-pm-of-day\n a: \"A\",\n // clock-hour-of-am-pm\n h: \"h\",\n hh: \"hh\",\n // hour-of-am-pm\n K: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.hour() % 12);\n },\n KK: moment => {\n const hour = (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.hour() % 12);\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(hour, 2);\n },\n // clock-hour-of-am-pm\n k: \"k\",\n kk: \"kk\",\n // hour-of-day\n H: \"H\",\n HH: \"HH\",\n // minute-of-hour\n m: \"m\",\n mm: \"mm\",\n // second-of-minute\n s: \"s\",\n ss: \"ss\",\n // fraction-of-second\n S: \"S\",\n SS: \"SS\",\n SSS: \"SSS\",\n SSSS: \"SSSS\",\n SSSSS: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"SSSS\"), 5);\n },\n SSSSSS: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"SSSS\"), 6);\n },\n // milli-of-day\n A: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.valueOf() - moment.clone().startOf(\"day\").valueOf(), 1);\n },\n AA: moment => {\n if (moment.isSame(moment.clone().startOf(\"day\"))) {\n // console.warn(moment.format() + ' is the same as ' + moment.clone().startOf('day').format());\n return \"00\";\n }\n return null;\n },\n AAA: moment => {\n if (moment.isSame(moment.clone().startOf(\"day\"))) {\n return \"000\";\n }\n return null;\n },\n AAAA: moment => {\n if (moment.isSame(moment.clone().startOf(\"day\"))) {\n return \"0000\";\n }\n return null;\n },\n AAAAA: moment => {\n if (moment.isSame(moment.clone().startOf(\"day\"))) {\n return \"00000\";\n }\n return null;\n },\n AAAAAA: moment => {\n if (moment.isSame(moment.clone().startOf(\"day\"))) {\n return \"000000\";\n }\n return null;\n },\n // nano-of-second (n) not supported\n\n // nano-of-day (N) not supported\n\n // time-zone ID\n VV: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n const tz = moment.tz();\n if (tz && tz.length > 0) {\n return tz;\n }\n return moment.format(\"Z\");\n },\n // time-zone name\n z: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n const abbr = findAbbreviation(moment);\n if (abbr) {\n return abbr;\n }\n return moment.format(\"Z\");\n },\n zz: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n const abbr = findAbbreviation(moment);\n if (abbr) {\n return abbr;\n }\n return moment.format(\"Z\");\n },\n zzz: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n const abbr = findAbbreviation(moment);\n if (abbr) {\n return abbr;\n }\n return moment.format(\"Z\");\n },\n zzzz: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n const abbr = findAbbreviation(moment);\n if (abbr) {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.getDescriptionForAbbreviation)(abbr);\n }\n return moment.format(\"Z\");\n },\n // localized zone-offset\n O: moment => {\n const offset = moment.utcOffset() / 60.0;\n if (offset === 0) {\n return \"GMT\";\n }\n const ret = moment.format(\"Z\").replace(endZeroes, \"\").replace(/^([+-])0/, \"$1\");\n return \"GMT\" + ret;\n },\n OOOO: moment => {\n const offset = moment.utcOffset() / 60.0;\n if (offset === 0) {\n return \"GMT\";\n }\n const ret = moment.format(\"Z\");\n return \"GMT\" + ret;\n },\n // zone-offset 'Z' for zero\n X: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n const ret = moment.format(\"ZZ\");\n if (ret.match(endZeroes)) {\n return ret.substr(0, 3);\n }\n return ret;\n },\n XX: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n return moment.format(\"ZZ\");\n },\n XXX: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n return moment.format(\"Z\");\n },\n XXXX: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n return moment.format(\"ZZ\");\n },\n XXXXX: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n return moment.format(\"Z\");\n },\n // zone-offset\n x: moment => {\n const ret = moment.format(\"ZZ\");\n if (ret.match(endZeroes)) {\n return ret.substr(0, 3);\n }\n return ret;\n },\n xx: \"ZZ\",\n xxx: \"Z\",\n xxxx: \"ZZ\",\n xxxxx: \"Z\",\n // zone-offset\n Z: moment => {\n if (moment.utcOffset() === 0) {\n return \"+0000\";\n }\n return moment.format(\"ZZ\");\n },\n ZZ: moment => {\n if (moment.utcOffset() === 0) {\n return \"+0000\";\n }\n return moment.format(\"ZZ\");\n },\n ZZZ: moment => {\n if (moment.utcOffset() === 0) {\n return \"+0000\";\n }\n return moment.format(\"ZZ\");\n },\n ZZZZ: moment => {\n if (moment.utcOffset() === 0) {\n return \"GMT\";\n }\n return \"GMT\" + moment.format(\"Z\");\n },\n ZZZZZ: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n return moment.format(\"Z\");\n }\n};\nclass PaddedToken extends _Formatter__WEBPACK_IMPORTED_MODULE_0__.Token {\n constructor(padding, padChar, value, count) {\n super(value, count);\n this.padding = padding;\n this.padChar = padChar;\n }\n format(input) {\n if (input.length > this.padding) {\n throw new Error(`Cannot format padding as formatted string \"${input}\" exceeds pad width of ${this.padding}.`);\n }\n const padded = this.padChar.repeat(this.padding) + input;\n return padded.substr(0 - this.padding);\n }\n}\nclass DateTimeFormatter extends _Formatter__WEBPACK_IMPORTED_MODULE_0__.Formatter {\n tokenize(formatString) {\n let padNextWidth = 0;\n let padNextChar = \" \";\n const ret = [];\n for (let pos = 0; pos < formatString.length; pos++) {\n let cur = formatString.charAt(pos);\n if (cur.match(matchReserved)) {\n let start = pos++;\n for (; pos < formatString.length && formatString.charAt(pos) === cur; pos++);\n let count = pos - start;\n\n // padding parsed\n if (cur === \"p\") {\n let pad = 0;\n if (pos < formatString.length) {\n cur = formatString.charAt(pos);\n if (cur.match(matchReserved)) {\n pad = count;\n start = pos++;\n for (; pos < formatString.length && formatString.charAt(pos) === cur; pos++); // short loop\n count = pos - start;\n }\n }\n if (pad === 0) {\n throw new Error(\"Pad letter 'p' must be followed by valid pad pattern: \" + formatString);\n }\n // pad and continue parsing\n padNextWidth = pad;\n padNextChar = \" \";\n }\n\n // main rules\n const translate = javaToMoment[cur.repeat(count)];\n if (translate === null) {\n throw new Error(`'${cur.repeat(count)}' cannot be converted to a moment format token; token is not implemented`);\n } else if (translate === undefined) {\n throw new Error(`'${cur.repeat(count)}' cannot be converted to a moment format token; unknown token`);\n } else {\n if (padNextWidth > 0) {\n ret.push(new PaddedToken(padNextWidth, padNextChar, cur, count));\n padNextWidth = 0;\n padNextChar = \" \";\n } else {\n ret.push(new _Formatter__WEBPACK_IMPORTED_MODULE_0__.Token(cur, count));\n }\n }\n pos--;\n } else if (cur === \"'\") {\n // parse literals\n const start = pos++;\n for (; pos < formatString.length; pos++) {\n if (formatString.charAt(pos) === \"'\") {\n if (pos + 1 < formatString.length && formatString.charAt(pos + 1) === \"'\") {\n pos++;\n } else {\n break; // end of literal\n }\n }\n }\n if (pos >= formatString.length) {\n throw new Error(`Pattern ends with an incomplete string literal: ${formatString}`);\n }\n const str = formatString.substring(start + 1, pos);\n if (str.length == 0) {\n ret.push(\"'\");\n } else {\n ret.push(str.replace(\"''\", \"'\"));\n }\n } else if (cur === \"[\") {\n throw new Error(`Optional patterns are not supported: ${cur}`);\n } else if (cur === \"]\") {\n throw new Error(`Optional patterns are not supported: ${cur}`);\n } else if (cur === \"{\" || cur === \"}\" || cur === \"#\") {\n throw new Error(`Pattern includes reserved character: '${cur}'`);\n } else {\n if (ret[ret.length - 1] instanceof _Formatter__WEBPACK_IMPORTED_MODULE_0__.Token) {\n ret.push(cur);\n } else {\n ret[ret.length - 1] += cur;\n }\n }\n }\n return ret;\n }\n\n /**\n * Convert a moment into a formatted date string, using the format tokens defined at: https://docs.oracle.com/javase/8/docs/api/java/time/format/DateTimeFormatter.html\n *\n * @param {Moment} moment - the moment to convert\n * @param {string} formatString - the format string\n */\n format(moment, formatString) {\n const parts = this.tokenize(formatString);\n const ret = [];\n for (const part of parts) {\n if (part instanceof _Formatter__WEBPACK_IMPORTED_MODULE_0__.Token) {\n const partString = part.toString();\n const translation = javaToMoment[partString];\n if (translation === undefined) {\n const err = new Error(`'${partString}' cannot be converted to a moment format token; bailing`);\n // console.error(err.message);\n throw err;\n } else {\n if (typeof translation === \"function\") {\n const result = translation(moment, partString);\n if (result === null) {\n const err = new Error(`'${partString}' cannot be converted to a moment format token; bailing`);\n // console.error(err.message);\n throw err;\n }\n ret.push(result);\n } else {\n ret.push(moment.format(translation));\n }\n }\n } else {\n ret.push(part);\n }\n }\n return ret.join(\"\");\n }\n}\n\n//# sourceURL=webpack://@rangerrick/moment-javaformat/./src/formats/DateTimeFormatter.ts?");
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ PaddedToken: () => (/* binding */ PaddedToken),\n/* harmony export */ \"default\": () => (/* binding */ DateTimeFormatter)\n/* harmony export */ });\n/* harmony import */ var _Formatter__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../Formatter */ \"./src/Formatter.ts\");\n// eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unused-vars\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\n//import { Moment } from 'moment-timezone';\n\n\nconst endZeroes = /:?00$/;\nconst matchReserved = /[A-Za-z]/;\nconst adConverter = moment => {\n return moment.year() > 0 ? \"AD\" : \"BC\";\n};\nconst findAbbreviation = moment => {\n const defaultAbbr = moment.zoneAbbr();\n if (defaultAbbr === \"UTC\" && moment.utcOffset() != 0) {\n return null;\n }\n return defaultAbbr;\n};\nconst javaToMoment = {\n // era\n G: adConverter,\n GG: adConverter,\n GGG: adConverter,\n GGGG: moment => {\n return moment.year() > 0 ? \"Anno Domini\" : \"Before Christ\";\n },\n GGGGG: moment => {\n return adConverter(moment).substring(0, 1);\n },\n // year\n u: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"YYYY\"), 1);\n },\n uu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YY\")), 2);\n },\n uuu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"YYYY\"), 3);\n },\n uuuu: \"YYYY\",\n uuuuu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"YYYY\"), 5);\n },\n uuuuuu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"YYYY\"), 6);\n },\n // year-of-era\n y: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"Y\"));\n },\n yy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YY\"));\n },\n yyy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YYYY\")), 3);\n },\n yyyy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YYYY\"));\n },\n yyyyy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YYYY\")), 5);\n },\n yyyyyy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YYYY\")), 6);\n },\n // day-of-year\n D: \"DDD\",\n DD: moment => {\n const ret = moment.format(\"DDD\");\n if (ret.length > 2) {\n throw new Error(\"Field DayOfYear cannot be printed as the value \" + ret + \" exceeds the maximum print width of 2\");\n }\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(ret, 2);\n },\n DDD: \"DDDD\",\n // DDDD throws an error in Java DateTimeFormatter\n\n // month-of-year\n M: \"M\",\n MM: \"MM\",\n MMM: \"MMM\",\n MMMM: \"MMMM\",\n MMMMM: moment => {\n return moment.format(\"MMMM\").substring(0, 1);\n },\n // month-of-year (numeric)\n L: \"M\",\n LL: \"MM\",\n LLL: \"M\",\n LLLL: \"M\",\n LLLLL: \"M\",\n // day-of-month\n d: \"D\",\n dd: \"DD\",\n // quarter-of-year\n Q: \"Q\",\n QQ: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"Q\"), 2);\n },\n QQQ: moment => {\n return \"Q\" + moment.format(\"Q\");\n },\n QQQQ: moment => {\n return moment.format(\"Qo\") + \" quarter\";\n },\n QQQQQ: \"Q\",\n // quarter-of-year\n q: \"Q\",\n qq: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"Q\"), 2);\n },\n qqq: \"Q\",\n qqqq: \"Q\",\n qqqqq: \"Q\",\n // week-based-year\n Y: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"gggg\"), 1);\n },\n YY: \"gg\",\n YYY: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"gggg\"), 3);\n },\n YYYY: \"gggg\",\n YYYYY: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"gggg\"), 5);\n },\n YYYYYY: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"gggg\"), 6);\n },\n // week-of-week-based-year\n w: \"w\",\n ww: \"ww\",\n // week-of-month (W) not supported\n W: null,\n WW: null,\n WWW: null,\n WWWW: null,\n // day-of-week\n E: \"ddd\",\n EE: \"ddd\",\n EEE: \"ddd\",\n EEEE: \"dddd\",\n EEEEE: moment => {\n return moment.format(\"dddd\").substring(0, 1);\n },\n // localized day-of-week (e)\n e: \"d\",\n ee: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"d\"), 2);\n },\n eee: \"ddd\",\n eeee: \"dddd\",\n eeeee: moment => {\n return moment.format(\"dddd\").substring(0, 1);\n },\n // localized day-of-week (c)\n c: \"d\",\n ccc: \"ddd\",\n cccc: \"dddd\",\n ccccc: moment => {\n // 5 c's = 0-indexed I guess?!?\n return String(parseInt(moment.format(\"d\"), 10) - 1);\n },\n // week of month (F) not supported\n\n // am-pm-of-day\n a: \"A\",\n // clock-hour-of-am-pm\n h: \"h\",\n hh: \"hh\",\n // hour-of-am-pm\n K: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.hour() % 12);\n },\n KK: moment => {\n const hour = (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.hour() % 12);\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(hour, 2);\n },\n // clock-hour-of-am-pm\n k: \"k\",\n kk: \"kk\",\n // hour-of-day\n H: \"H\",\n HH: \"HH\",\n // minute-of-hour\n m: \"m\",\n mm: \"mm\",\n // second-of-minute\n s: \"s\",\n ss: \"ss\",\n // fraction-of-second\n S: \"S\",\n SS: \"SS\",\n SSS: \"SSS\",\n SSSS: \"SSSS\",\n SSSSS: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"SSSS\"), 5);\n },\n SSSSSS: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"SSSS\"), 6);\n },\n // milli-of-day\n A: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.valueOf() - moment.clone().startOf(\"day\").valueOf(), 1);\n },\n AA: moment => {\n if (moment.isSame(moment.clone().startOf(\"day\"))) {\n // console.warn(moment.format() + ' is the same as ' + moment.clone().startOf('day').format());\n return \"00\";\n }\n return null;\n },\n AAA: moment => {\n if (moment.isSame(moment.clone().startOf(\"day\"))) {\n return \"000\";\n }\n return null;\n },\n AAAA: moment => {\n if (moment.isSame(moment.clone().startOf(\"day\"))) {\n return \"0000\";\n }\n return null;\n },\n AAAAA: moment => {\n if (moment.isSame(moment.clone().startOf(\"day\"))) {\n return \"00000\";\n }\n return null;\n },\n AAAAAA: moment => {\n if (moment.isSame(moment.clone().startOf(\"day\"))) {\n return \"000000\";\n }\n return null;\n },\n // nano-of-second (n) not supported\n\n // nano-of-day (N) not supported\n\n // time-zone ID\n VV: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n const tz = moment.tz();\n if (tz && tz.length > 0) {\n return tz;\n }\n return moment.format(\"Z\");\n },\n // time-zone name\n z: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n const abbr = findAbbreviation(moment);\n if (abbr) {\n return abbr;\n }\n return moment.format(\"Z\");\n },\n zz: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n const abbr = findAbbreviation(moment);\n if (abbr) {\n return abbr;\n }\n return moment.format(\"Z\");\n },\n zzz: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n const abbr = findAbbreviation(moment);\n if (abbr) {\n return abbr;\n }\n return moment.format(\"Z\");\n },\n zzzz: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n const abbr = findAbbreviation(moment);\n if (abbr) {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.getDescriptionForAbbreviation)(abbr);\n }\n return moment.format(\"Z\");\n },\n // localized zone-offset\n O: moment => {\n const offset = moment.utcOffset() / 60.0;\n if (offset === 0) {\n return \"GMT\";\n }\n const ret = moment.format(\"Z\").replace(endZeroes, \"\").replace(/^([+-])0/, \"$1\");\n return \"GMT\" + ret;\n },\n OOOO: moment => {\n const offset = moment.utcOffset() / 60.0;\n if (offset === 0) {\n return \"GMT\";\n }\n const ret = moment.format(\"Z\");\n return \"GMT\" + ret;\n },\n // zone-offset 'Z' for zero\n X: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n const ret = moment.format(\"ZZ\");\n if (ret.match(endZeroes)) {\n return ret.substr(0, 3);\n }\n return ret;\n },\n XX: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n return moment.format(\"ZZ\");\n },\n XXX: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n return moment.format(\"Z\");\n },\n XXXX: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n return moment.format(\"ZZ\");\n },\n XXXXX: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n return moment.format(\"Z\");\n },\n // zone-offset\n x: moment => {\n const ret = moment.format(\"ZZ\");\n if (ret.match(endZeroes)) {\n return ret.substr(0, 3);\n }\n return ret;\n },\n xx: \"ZZ\",\n xxx: \"Z\",\n xxxx: \"ZZ\",\n xxxxx: \"Z\",\n // zone-offset\n Z: moment => {\n if (moment.utcOffset() === 0) {\n return \"+0000\";\n }\n return moment.format(\"ZZ\");\n },\n ZZ: moment => {\n if (moment.utcOffset() === 0) {\n return \"+0000\";\n }\n return moment.format(\"ZZ\");\n },\n ZZZ: moment => {\n if (moment.utcOffset() === 0) {\n return \"+0000\";\n }\n return moment.format(\"ZZ\");\n },\n ZZZZ: moment => {\n if (moment.utcOffset() === 0) {\n return \"GMT\";\n }\n return \"GMT\" + moment.format(\"Z\");\n },\n ZZZZZ: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n return moment.format(\"Z\");\n }\n};\nclass PaddedToken extends _Formatter__WEBPACK_IMPORTED_MODULE_0__.Token {\n constructor(padding, padChar, value, count) {\n super(value, count);\n this.padding = padding;\n this.padChar = padChar;\n }\n format(input) {\n if (input.length > this.padding) {\n throw new Error(`Cannot format padding as formatted string \"${input}\" exceeds pad width of ${this.padding}.`);\n }\n const padded = this.padChar.repeat(this.padding) + input;\n return padded.substr(0 - this.padding);\n }\n}\nclass DateTimeFormatter extends _Formatter__WEBPACK_IMPORTED_MODULE_0__.Formatter {\n tokenize(formatString) {\n let padNextWidth = 0;\n let padNextChar = \" \";\n const ret = [];\n for (let pos = 0; pos < formatString.length; pos++) {\n let cur = formatString.charAt(pos);\n if (cur.match(matchReserved)) {\n let start = pos++;\n for (; pos < formatString.length && formatString.charAt(pos) === cur; pos++);\n let count = pos - start;\n\n // padding parsed\n if (cur === \"p\") {\n let pad = 0;\n if (pos < formatString.length) {\n cur = formatString.charAt(pos);\n if (cur.match(matchReserved)) {\n pad = count;\n start = pos++;\n for (; pos < formatString.length && formatString.charAt(pos) === cur; pos++); // short loop\n count = pos - start;\n }\n }\n if (pad === 0) {\n throw new Error(\"Pad letter 'p' must be followed by valid pad pattern: \" + formatString);\n }\n // pad and continue parsing\n padNextWidth = pad;\n padNextChar = \" \";\n }\n\n // main rules\n const translate = javaToMoment[cur.repeat(count)];\n if (translate === null) {\n throw new Error(`'${cur.repeat(count)}' cannot be converted to a moment format token; token is not implemented`);\n } else if (translate === undefined) {\n throw new Error(`'${cur.repeat(count)}' cannot be converted to a moment format token; unknown token`);\n } else {\n if (padNextWidth > 0) {\n ret.push(new PaddedToken(padNextWidth, padNextChar, cur, count));\n padNextWidth = 0;\n padNextChar = \" \";\n } else {\n ret.push(new _Formatter__WEBPACK_IMPORTED_MODULE_0__.Token(cur, count));\n }\n }\n pos--;\n } else if (cur === \"'\") {\n // parse literals\n const start = pos++;\n for (; pos < formatString.length; pos++) {\n if (formatString.charAt(pos) === \"'\") {\n if (pos + 1 < formatString.length && formatString.charAt(pos + 1) === \"'\") {\n pos++;\n } else {\n break; // end of literal\n }\n }\n }\n if (pos >= formatString.length) {\n throw new Error(`Pattern ends with an incomplete string literal: ${formatString}`);\n }\n const str = formatString.substring(start + 1, pos);\n if (str.length == 0) {\n ret.push(\"'\");\n } else {\n ret.push(str.replace(\"''\", \"'\"));\n }\n } else if (cur === \"[\") {\n throw new Error(`Optional patterns are not supported: ${cur}`);\n } else if (cur === \"]\") {\n throw new Error(`Optional patterns are not supported: ${cur}`);\n } else if (cur === \"{\" || cur === \"}\" || cur === \"#\") {\n throw new Error(`Pattern includes reserved character: '${cur}'`);\n } else {\n if (ret[ret.length - 1] instanceof _Formatter__WEBPACK_IMPORTED_MODULE_0__.Token) {\n ret.push(cur);\n } else {\n ret[ret.length - 1] += cur;\n }\n }\n }\n return ret;\n }\n\n /**\n * Convert a moment into a formatted date string, using the format tokens defined at: https://docs.oracle.com/javase/8/docs/api/java/time/format/DateTimeFormatter.html\n *\n * @param {Moment} moment - the moment to convert\n * @param {string} formatString - the format string\n */\n format(moment, formatString) {\n const parts = this.tokenize(formatString);\n const ret = [];\n for (const part of parts) {\n if (part instanceof _Formatter__WEBPACK_IMPORTED_MODULE_0__.Token) {\n const partString = part.toString();\n const translation = javaToMoment[partString];\n if (translation === undefined) {\n const err = new Error(`'${partString}' cannot be converted to a moment format token; bailing`);\n // console.error(err.message);\n throw err;\n } else {\n if (typeof translation === \"function\") {\n const result = translation(moment, partString);\n if (result === null) {\n const err = new Error(`'${partString}' cannot be converted to a moment format token; bailing`);\n // console.error(err.message);\n throw err;\n }\n ret.push(result);\n } else {\n ret.push(moment.format(translation));\n }\n }\n } else {\n ret.push(part);\n }\n }\n return ret.join(\"\");\n }\n}\n\n//# sourceURL=webpack://@rangerrick/moment-javaformat/./src/formats/DateTimeFormatter.ts?\n}");

@@ -62,3 +62,3 @@ /***/ }),

eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (/* binding */ SimpleDateFormat)\n/* harmony export */ });\n/* harmony import */ var _Formatter__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../Formatter */ \"./src/Formatter.ts\");\n// eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unused-vars\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\n//import { Moment } from 'moment-timezone';\n\n\nconst matchReserved = /[A-Za-z]/;\nconst eraFormatter = moment => {\n return moment.year() > 0 ? \"AD\" : \"BC\";\n};\nconst guessZoneInfo = moment => {\n let abbr = moment.zoneAbbr();\n const name = moment.zoneName();\n if (moment.tz) {\n if (!name || name === \"\") {\n // missing the zone name, probably can't find things right\n return null;\n }\n if (abbr === \"UTC\" && moment.utcOffset() !== 0) {\n // we only know the offset\n return null;\n }\n\n // return name;\n return {\n abbr: abbr,\n name: name,\n description: (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.getDescriptionForAbbreviation)(abbr)\n };\n }\n abbr = (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.getZoneForDateTime)(moment);\n if (abbr) {\n const match = (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.getDescriptionForAbbreviation)(abbr);\n if (match) {\n return {\n abbr: abbr,\n name: name,\n description: match\n };\n }\n }\n return null;\n};\nconst javaToMoment = {\n // Era designator\n G: eraFormatter,\n GG: eraFormatter,\n GGG: eraFormatter,\n GGGG: eraFormatter,\n GGGGG: eraFormatter,\n GGGGGG: eraFormatter,\n // Year\n y: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"Y\"));\n },\n yy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YY\"));\n },\n yyy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YYYY\")), 3);\n },\n yyyy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YYYY\"));\n },\n yyyyy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YYYY\")), 5);\n },\n yyyyyy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YYYY\")), 6);\n },\n // Week year\n Y: \"gggg\",\n YY: \"gg\",\n YYY: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"gggg\"), 3);\n },\n YYYY: \"gggg\",\n YYYYY: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"gggg\"), 5);\n },\n YYYYYY: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"gggg\"), 6);\n },\n // Month in year\n M: \"M\",\n MM: \"MM\",\n MMM: \"MMM\",\n MMMM: \"MMMM\",\n MMMMM: \"MMMM\",\n MMMMMM: \"MMMM\",\n // Week in year\n w: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"w\"), 1);\n },\n ww: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"w\"), 2);\n },\n www: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"w\"), 3);\n },\n wwww: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"w\"), 4);\n },\n wwwww: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"w\"), 5);\n },\n wwwwww: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"w\"), 6);\n },\n // Week in month (W) not supported\n W: null,\n WW: null,\n WWW: null,\n WWWW: null,\n // Day in year\n D: \"DDD\",\n DD: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"DDD\"), 2);\n },\n DDD: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"DDD\"), 3);\n },\n DDDD: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"DDD\"), 4);\n },\n DDDDD: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"DDD\"), 5);\n },\n DDDDDD: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"DDD\"), 6);\n },\n // Day in month\n d: \"D\",\n dd: \"DD\",\n ddd: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"D\"), 3);\n },\n dddd: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"D\"), 4);\n },\n ddddd: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"D\"), 5);\n },\n dddddd: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"D\"), 6);\n },\n // Day of week in month (F) not supported\n F: null,\n FF: null,\n FFF: null,\n FFFF: null,\n // Day name in week\n E: \"ddd\",\n EE: \"ddd\",\n EEE: \"ddd\",\n EEEE: \"dddd\",\n EEEEE: \"dddd\",\n EEEEEE: \"dddd\",\n // Day number of week\n u: \"E\",\n uu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"E\"), 2);\n },\n uuu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"E\"), 3);\n },\n uuuu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"E\"), 4);\n },\n uuuuu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"E\"), 5);\n },\n uuuuuu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"E\"), 6);\n },\n // Am/pm marker\n a: \"A\",\n aa: \"A\",\n aaa: \"A\",\n aaaa: \"A\",\n aaaaa: \"A\",\n aaaaaa: \"A\",\n // Hour in day (0-23)\n H: \"H\",\n HH: \"HH\",\n HHH: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"H\"), 3);\n },\n HHHH: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"H\"), 4);\n },\n HHHHH: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"H\"), 5);\n },\n HHHHHH: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"H\"), 6);\n },\n // Hour in day (1-24)\n k: \"k\",\n kk: \"kk\",\n kkk: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"k\"), 3);\n },\n kkkk: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"k\"), 4);\n },\n kkkkk: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"k\"), 5);\n },\n kkkkkk: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"k\"), 6);\n },\n // Hour in am/pm (0-11)\n // except java doesn't actually do this, it outputs the same as 'h'! (sigh)\n K: moment => {\n const asNumber = parseInt(moment.format(\"h\"), 10);\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(asNumber % 12);\n },\n KK: moment => {\n const asNumber = parseInt(moment.format(\"h\"), 10);\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(asNumber % 12), 2);\n },\n KKK: moment => {\n const asNumber = parseInt(moment.format(\"h\"), 10);\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(asNumber % 12), 3);\n },\n KKKK: moment => {\n const asNumber = parseInt(moment.format(\"h\"), 10);\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(asNumber % 12), 4);\n },\n KKKKK: moment => {\n const asNumber = parseInt(moment.format(\"h\"), 10);\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(asNumber % 12), 5);\n },\n KKKKKK: moment => {\n const asNumber = parseInt(moment.format(\"h\"), 10);\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(asNumber % 12), 6);\n },\n // Hour in am/pm (1-12)\n h: \"h\",\n hh: \"hh\",\n hhh: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"h\"), 3);\n },\n hhhh: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"h\"), 4);\n },\n hhhhh: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"h\"), 5);\n },\n hhhhhh: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"h\"), 6);\n },\n // Minute in hour\n m: \"m\",\n mm: \"mm\",\n mmm: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"m\"), 3);\n },\n mmmm: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"m\"), 4);\n },\n mmmmm: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"m\"), 5);\n },\n mmmmmm: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"m\"), 6);\n },\n // Second in minute\n s: \"s\",\n ss: \"ss\",\n sss: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"s\"), 3);\n },\n ssss: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"s\"), 4);\n },\n sssss: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"s\"), 5);\n },\n ssssss: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"s\"), 6);\n },\n // Millisecond\n S: \"S\",\n SS: \"SS\",\n SSS: \"SSS\",\n SSSS: \"SSSS\",\n SSSSS: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"SSSS\"), 5);\n },\n SSSSSS: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"SSSS\"), 6);\n },\n // Time zone (Pacific Standard Time; PST)\n z: moment => {\n const info = guessZoneInfo(moment);\n if (info) {\n return info.abbr;\n }\n return \"GMT\" + moment.format(\"Z\");\n },\n zz: moment => {\n const info = guessZoneInfo(moment);\n if (info) {\n return info.abbr;\n }\n return \"GMT\" + moment.format(\"Z\");\n },\n zzz: moment => {\n const info = guessZoneInfo(moment);\n if (info) {\n return info.abbr;\n }\n return \"GMT\" + moment.format(\"Z\");\n },\n zzzz: moment => {\n const info = guessZoneInfo(moment);\n if (info) {\n return info.description;\n }\n return \"GMT\" + moment.format(\"Z\");\n },\n zzzzz: moment => {\n const info = guessZoneInfo(moment);\n if (info) {\n return info.description;\n }\n return \"GMT\" + moment.format(\"Z\");\n },\n zzzzzz: moment => {\n const info = guessZoneInfo(moment);\n if (info) {\n return info.description;\n }\n return \"GMT\" + moment.format(\"Z\");\n },\n // Time zone (-0800)\n Z: \"ZZ\",\n ZZ: \"ZZ\",\n ZZZ: \"ZZ\",\n ZZZZ: \"ZZ\",\n ZZZZZ: \"ZZ\",\n ZZZZZZ: \"ZZ\",\n // Time zone (-08; -0800; -08:00)\n X: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n return moment.format(\"Z\").substr(0, 3);\n },\n XX: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n return moment.format(\"ZZ\");\n },\n XXX: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n return moment.format(\"Z\");\n }\n};\nclass SimpleDateFormat extends _Formatter__WEBPACK_IMPORTED_MODULE_0__.Formatter {\n tokenize(pattern) {\n const ret = [];\n const length = pattern.length;\n let inQuote = false;\n let count = 0;\n let lastTag = null;\n let tmpBuffer = null;\n const encode = (tag, length) => {\n const translate = javaToMoment[tag];\n if (translate === null) {\n throw new Error(`'${tag.repeat(length)}' cannot be converted to a moment format token; token is not implemented`);\n } else if (translate === undefined) {\n throw new Error(`'${tag.repeat(length)}' cannot be converted to a moment format token; unknown token`);\n }\n ret.push(new _Formatter__WEBPACK_IMPORTED_MODULE_0__.Token(tag, length));\n };\n const append = value => {\n if (ret[ret.length - 1] instanceof _Formatter__WEBPACK_IMPORTED_MODULE_0__.Token) {\n ret.push(value);\n } else {\n ret[ret.length - 1] += value;\n }\n };\n for (let i = 0; i < length; i++) {\n let c = pattern.charAt(i);\n if (c === \"'\") {\n // '' is treated as a single quote regardless of being\n // in a quoted section.\n if (i + 1 < length) {\n c = pattern.charAt(i + 1);\n if (c === \"'\") {\n i++;\n if (count != 0) {\n encode(lastTag, count);\n lastTag = null;\n count = 0;\n }\n if (inQuote) {\n tmpBuffer += c;\n } else {\n append(c);\n }\n continue;\n }\n }\n if (!inQuote) {\n if (count !== 0) {\n encode(lastTag, count);\n lastTag = null;\n count = 0;\n }\n tmpBuffer = \"\";\n inQuote = true;\n } else {\n append(tmpBuffer);\n inQuote = false;\n }\n continue;\n }\n if (inQuote) {\n tmpBuffer += c;\n continue;\n }\n if (!c.match(matchReserved)) {\n if (count !== 0) {\n encode(lastTag, count);\n lastTag = null;\n count = 0;\n }\n if (c.charCodeAt(0) < 128) {\n // In most cases, c would be a delimiter, such as ':'.\n append(c);\n } else {\n // Take any contiguous non-ASCII alphabet characters and\n // put them in a single TAG_QUOTE_CHARS.\n let j;\n for (j = i + 1; j < length; j++) {\n const d = pattern.charAt(j);\n if (d === \"'\" || d.match(matchReserved)) {\n break;\n }\n }\n for (; i < j; i++) {\n append(pattern.charAt(i));\n }\n i--;\n }\n continue;\n }\n const tag = javaToMoment[c];\n if (tag === undefined) {\n throw new Error(`Illegal pattern character '${c}'`);\n }\n if (lastTag === null || lastTag === c) {\n lastTag = c;\n count++;\n continue;\n }\n encode(lastTag, count);\n lastTag = c;\n count = 1;\n }\n if (inQuote) {\n throw new Error(\"Unterminated quote\");\n }\n if (count != 0) {\n encode(lastTag, count);\n }\n return ret;\n }\n\n /**\n * Convert a moment into a formatted date string, using the format tokens defined at: https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html\n *\n * @param {Moment} moment - the moment to convert\n * @param {string} formatString - the format string\n */\n format(moment, formatString) {\n const parts = this.tokenize(formatString);\n const ret = [];\n for (const part of parts) {\n if (part instanceof _Formatter__WEBPACK_IMPORTED_MODULE_0__.Token) {\n const partString = part.toString();\n const translation = javaToMoment[partString];\n if (translation === undefined) {\n throw new Error(`'${partString}' cannot be converted to a moment format token; unknown token`);\n } else {\n if (typeof translation === \"function\") {\n ret.push(translation(moment, partString));\n } else {\n ret.push(moment.format(translation));\n }\n }\n } else {\n ret.push(part);\n }\n }\n return ret.join(\"\");\n }\n}\n\n//# sourceURL=webpack://@rangerrick/moment-javaformat/./src/formats/SimpleDateFormat.ts?");
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (/* binding */ SimpleDateFormat)\n/* harmony export */ });\n/* harmony import */ var _Formatter__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../Formatter */ \"./src/Formatter.ts\");\n// eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unused-vars\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\n//import { Moment } from 'moment-timezone';\n\n\nconst matchReserved = /[A-Za-z]/;\nconst eraFormatter = moment => {\n return moment.year() > 0 ? \"AD\" : \"BC\";\n};\nconst guessZoneInfo = moment => {\n let abbr = moment.zoneAbbr();\n const name = moment.zoneName();\n if (moment.tz) {\n if (!name || name === \"\") {\n // missing the zone name, probably can't find things right\n return null;\n }\n if (abbr === \"UTC\" && moment.utcOffset() !== 0) {\n // we only know the offset\n return null;\n }\n\n // return name;\n return {\n abbr: abbr,\n name: name,\n description: (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.getDescriptionForAbbreviation)(abbr)\n };\n }\n abbr = (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.getZoneForDateTime)(moment);\n if (abbr) {\n const match = (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.getDescriptionForAbbreviation)(abbr);\n if (match) {\n return {\n abbr: abbr,\n name: name,\n description: match\n };\n }\n }\n return null;\n};\nconst javaToMoment = {\n // Era designator\n G: eraFormatter,\n GG: eraFormatter,\n GGG: eraFormatter,\n GGGG: eraFormatter,\n GGGGG: eraFormatter,\n GGGGGG: eraFormatter,\n // Year\n y: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"Y\"));\n },\n yy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YY\"));\n },\n yyy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YYYY\")), 3);\n },\n yyyy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YYYY\"));\n },\n yyyyy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YYYY\")), 5);\n },\n yyyyyy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YYYY\")), 6);\n },\n // Week year\n Y: \"gggg\",\n YY: \"gg\",\n YYY: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"gggg\"), 3);\n },\n YYYY: \"gggg\",\n YYYYY: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"gggg\"), 5);\n },\n YYYYYY: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"gggg\"), 6);\n },\n // Month in year\n M: \"M\",\n MM: \"MM\",\n MMM: \"MMM\",\n MMMM: \"MMMM\",\n MMMMM: \"MMMM\",\n MMMMMM: \"MMMM\",\n // Week in year\n w: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"w\"), 1);\n },\n ww: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"w\"), 2);\n },\n www: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"w\"), 3);\n },\n wwww: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"w\"), 4);\n },\n wwwww: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"w\"), 5);\n },\n wwwwww: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"w\"), 6);\n },\n // Week in month (W) not supported\n W: null,\n WW: null,\n WWW: null,\n WWWW: null,\n // Day in year\n D: \"DDD\",\n DD: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"DDD\"), 2);\n },\n DDD: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"DDD\"), 3);\n },\n DDDD: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"DDD\"), 4);\n },\n DDDDD: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"DDD\"), 5);\n },\n DDDDDD: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"DDD\"), 6);\n },\n // Day in month\n d: \"D\",\n dd: \"DD\",\n ddd: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"D\"), 3);\n },\n dddd: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"D\"), 4);\n },\n ddddd: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"D\"), 5);\n },\n dddddd: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"D\"), 6);\n },\n // Day of week in month (F) not supported\n F: null,\n FF: null,\n FFF: null,\n FFFF: null,\n // Day name in week\n E: \"ddd\",\n EE: \"ddd\",\n EEE: \"ddd\",\n EEEE: \"dddd\",\n EEEEE: \"dddd\",\n EEEEEE: \"dddd\",\n // Day number of week\n u: \"E\",\n uu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"E\"), 2);\n },\n uuu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"E\"), 3);\n },\n uuuu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"E\"), 4);\n },\n uuuuu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"E\"), 5);\n },\n uuuuuu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"E\"), 6);\n },\n // Am/pm marker\n a: \"A\",\n aa: \"A\",\n aaa: \"A\",\n aaaa: \"A\",\n aaaaa: \"A\",\n aaaaaa: \"A\",\n // Hour in day (0-23)\n H: \"H\",\n HH: \"HH\",\n HHH: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"H\"), 3);\n },\n HHHH: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"H\"), 4);\n },\n HHHHH: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"H\"), 5);\n },\n HHHHHH: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"H\"), 6);\n },\n // Hour in day (1-24)\n k: \"k\",\n kk: \"kk\",\n kkk: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"k\"), 3);\n },\n kkkk: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"k\"), 4);\n },\n kkkkk: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"k\"), 5);\n },\n kkkkkk: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"k\"), 6);\n },\n // Hour in am/pm (0-11)\n // except java doesn't actually do this, it outputs the same as 'h'! (sigh)\n K: moment => {\n const asNumber = parseInt(moment.format(\"h\"), 10);\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(asNumber % 12);\n },\n KK: moment => {\n const asNumber = parseInt(moment.format(\"h\"), 10);\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(asNumber % 12), 2);\n },\n KKK: moment => {\n const asNumber = parseInt(moment.format(\"h\"), 10);\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(asNumber % 12), 3);\n },\n KKKK: moment => {\n const asNumber = parseInt(moment.format(\"h\"), 10);\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(asNumber % 12), 4);\n },\n KKKKK: moment => {\n const asNumber = parseInt(moment.format(\"h\"), 10);\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(asNumber % 12), 5);\n },\n KKKKKK: moment => {\n const asNumber = parseInt(moment.format(\"h\"), 10);\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(asNumber % 12), 6);\n },\n // Hour in am/pm (1-12)\n h: \"h\",\n hh: \"hh\",\n hhh: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"h\"), 3);\n },\n hhhh: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"h\"), 4);\n },\n hhhhh: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"h\"), 5);\n },\n hhhhhh: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"h\"), 6);\n },\n // Minute in hour\n m: \"m\",\n mm: \"mm\",\n mmm: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"m\"), 3);\n },\n mmmm: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"m\"), 4);\n },\n mmmmm: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"m\"), 5);\n },\n mmmmmm: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"m\"), 6);\n },\n // Second in minute\n s: \"s\",\n ss: \"ss\",\n sss: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"s\"), 3);\n },\n ssss: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"s\"), 4);\n },\n sssss: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"s\"), 5);\n },\n ssssss: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"s\"), 6);\n },\n // Millisecond\n S: \"S\",\n SS: \"SS\",\n SSS: \"SSS\",\n SSSS: \"SSSS\",\n SSSSS: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"SSSS\"), 5);\n },\n SSSSSS: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"SSSS\"), 6);\n },\n // Time zone (Pacific Standard Time; PST)\n z: moment => {\n const info = guessZoneInfo(moment);\n if (info) {\n return info.abbr;\n }\n return \"GMT\" + moment.format(\"Z\");\n },\n zz: moment => {\n const info = guessZoneInfo(moment);\n if (info) {\n return info.abbr;\n }\n return \"GMT\" + moment.format(\"Z\");\n },\n zzz: moment => {\n const info = guessZoneInfo(moment);\n if (info) {\n return info.abbr;\n }\n return \"GMT\" + moment.format(\"Z\");\n },\n zzzz: moment => {\n const info = guessZoneInfo(moment);\n if (info) {\n return info.description;\n }\n return \"GMT\" + moment.format(\"Z\");\n },\n zzzzz: moment => {\n const info = guessZoneInfo(moment);\n if (info) {\n return info.description;\n }\n return \"GMT\" + moment.format(\"Z\");\n },\n zzzzzz: moment => {\n const info = guessZoneInfo(moment);\n if (info) {\n return info.description;\n }\n return \"GMT\" + moment.format(\"Z\");\n },\n // Time zone (-0800)\n Z: \"ZZ\",\n ZZ: \"ZZ\",\n ZZZ: \"ZZ\",\n ZZZZ: \"ZZ\",\n ZZZZZ: \"ZZ\",\n ZZZZZZ: \"ZZ\",\n // Time zone (-08; -0800; -08:00)\n X: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n return moment.format(\"Z\").substr(0, 3);\n },\n XX: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n return moment.format(\"ZZ\");\n },\n XXX: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n return moment.format(\"Z\");\n }\n};\nclass SimpleDateFormat extends _Formatter__WEBPACK_IMPORTED_MODULE_0__.Formatter {\n tokenize(pattern) {\n const ret = [];\n const length = pattern.length;\n let inQuote = false;\n let count = 0;\n let lastTag = null;\n let tmpBuffer = null;\n const encode = (tag, length) => {\n const translate = javaToMoment[tag];\n if (translate === null) {\n throw new Error(`'${tag.repeat(length)}' cannot be converted to a moment format token; token is not implemented`);\n } else if (translate === undefined) {\n throw new Error(`'${tag.repeat(length)}' cannot be converted to a moment format token; unknown token`);\n }\n ret.push(new _Formatter__WEBPACK_IMPORTED_MODULE_0__.Token(tag, length));\n };\n const append = value => {\n if (ret[ret.length - 1] instanceof _Formatter__WEBPACK_IMPORTED_MODULE_0__.Token) {\n ret.push(value);\n } else {\n ret[ret.length - 1] += value;\n }\n };\n for (let i = 0; i < length; i++) {\n let c = pattern.charAt(i);\n if (c === \"'\") {\n // '' is treated as a single quote regardless of being\n // in a quoted section.\n if (i + 1 < length) {\n c = pattern.charAt(i + 1);\n if (c === \"'\") {\n i++;\n if (count != 0) {\n encode(lastTag, count);\n lastTag = null;\n count = 0;\n }\n if (inQuote) {\n tmpBuffer += c;\n } else {\n append(c);\n }\n continue;\n }\n }\n if (!inQuote) {\n if (count !== 0) {\n encode(lastTag, count);\n lastTag = null;\n count = 0;\n }\n tmpBuffer = \"\";\n inQuote = true;\n } else {\n append(tmpBuffer);\n inQuote = false;\n }\n continue;\n }\n if (inQuote) {\n tmpBuffer += c;\n continue;\n }\n if (!c.match(matchReserved)) {\n if (count !== 0) {\n encode(lastTag, count);\n lastTag = null;\n count = 0;\n }\n if (c.charCodeAt(0) < 128) {\n // In most cases, c would be a delimiter, such as ':'.\n append(c);\n } else {\n // Take any contiguous non-ASCII alphabet characters and\n // put them in a single TAG_QUOTE_CHARS.\n let j;\n for (j = i + 1; j < length; j++) {\n const d = pattern.charAt(j);\n if (d === \"'\" || d.match(matchReserved)) {\n break;\n }\n }\n for (; i < j; i++) {\n append(pattern.charAt(i));\n }\n i--;\n }\n continue;\n }\n const tag = javaToMoment[c];\n if (tag === undefined) {\n throw new Error(`Illegal pattern character '${c}'`);\n }\n if (lastTag === null || lastTag === c) {\n lastTag = c;\n count++;\n continue;\n }\n encode(lastTag, count);\n lastTag = c;\n count = 1;\n }\n if (inQuote) {\n throw new Error(\"Unterminated quote\");\n }\n if (count != 0) {\n encode(lastTag, count);\n }\n return ret;\n }\n\n /**\n * Convert a moment into a formatted date string, using the format tokens defined at: https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html\n *\n * @param {Moment} moment - the moment to convert\n * @param {string} formatString - the format string\n */\n format(moment, formatString) {\n const parts = this.tokenize(formatString);\n const ret = [];\n for (const part of parts) {\n if (part instanceof _Formatter__WEBPACK_IMPORTED_MODULE_0__.Token) {\n const partString = part.toString();\n const translation = javaToMoment[partString];\n if (translation === undefined) {\n throw new Error(`'${partString}' cannot be converted to a moment format token; unknown token`);\n } else {\n if (typeof translation === \"function\") {\n ret.push(translation(moment, partString));\n } else {\n ret.push(moment.format(translation));\n }\n }\n } else {\n ret.push(part);\n }\n }\n return ret.join(\"\");\n }\n}\n\n//# sourceURL=webpack://@rangerrick/moment-javaformat/./src/formats/SimpleDateFormat.ts?\n}");

@@ -73,3 +73,3 @@ /***/ }),

eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DateTimeFormatter: () => (/* reexport safe */ _formats_DateTimeFormatter__WEBPACK_IMPORTED_MODULE_1__[\"default\"]),\n/* harmony export */ SimpleDateFormat: () => (/* reexport safe */ _formats_SimpleDateFormat__WEBPACK_IMPORTED_MODULE_0__[\"default\"]),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__),\n/* harmony export */ register: () => (/* binding */ register)\n/* harmony export */ });\n/* harmony import */ var _formats_SimpleDateFormat__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./formats/SimpleDateFormat */ \"./src/formats/SimpleDateFormat.ts\");\n/* harmony import */ var _formats_DateTimeFormatter__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./formats/DateTimeFormatter */ \"./src/formats/DateTimeFormatter.ts\");\n\n\nconst register = function (moment) {\n let fatal = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n if (moment && moment.fn.zoneAbbr) {\n console.log(\"register: moment=%s, fatal=%s\", typeof moment, fatal);\n if (moment.tz) {\n console.log(\"Moment.js with timezone support detected; attaching Java format methods.\");\n } else {\n console.warn(\"Moment.js detected, but timezone support is missing. Some Java formatting features may not work as expected.\");\n }\n const sdf = new _formats_SimpleDateFormat__WEBPACK_IMPORTED_MODULE_0__[\"default\"]();\n const dtf = new _formats_DateTimeFormatter__WEBPACK_IMPORTED_MODULE_1__[\"default\"]();\n moment.fn.formatJavaSDF = function (formatString) {\n return sdf.format(this, formatString);\n };\n moment.fn.formatJavaDTF = function (formatString) {\n return dtf.format(this, formatString);\n };\n return moment;\n } else {\n console.error(\"Unable to attach Java format methods. Moment.js object was invalid.\");\n if (fatal) {\n throw new Error(\"Moment.js object was invalid.\");\n }\n }\n return undefined;\n};\n\n/*\n Attempt to register with global Moment.js object if it's found,\n preferring `moment-timezone` over `moment`.\n*/\n\nif (typeof window !== \"undefined\" && window?.moment) {\n register(window.moment, false);\n} else if (typeof __webpack_require__.g !== \"undefined\" && __webpack_require__.g?.moment) {\n register(__webpack_require__.g.moment, false);\n} else if (typeof window !== \"undefined\" && window) {\n try {\n const moment = __webpack_require__(/*! moment-timezone */ \"moment-timezone\");\n window.moment = register(moment, false);\n } catch {\n console.warn(\"Failed to load moment-timezone. Attempting fallback to moment.\");\n try {\n const moment = __webpack_require__(/*! moment */ \"moment\");\n window.moment = register(moment, false);\n } catch {\n console.warn(\"Failed to load moment. User will have to manually register.\");\n }\n }\n}\nlet m = undefined;\nif (typeof window !== \"undefined\") {\n m = window?.moment;\n}\nif (typeof m === \"undefined\" && typeof __webpack_require__.g !== \"undefined\") {\n m = __webpack_require__.g?.moment;\n}\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (m);\n\n\n//# sourceURL=webpack://@rangerrick/moment-javaformat/./src/index.js?");
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DateTimeFormatter: () => (/* reexport safe */ _formats_DateTimeFormatter__WEBPACK_IMPORTED_MODULE_1__[\"default\"]),\n/* harmony export */ SimpleDateFormat: () => (/* reexport safe */ _formats_SimpleDateFormat__WEBPACK_IMPORTED_MODULE_0__[\"default\"]),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__),\n/* harmony export */ register: () => (/* binding */ register)\n/* harmony export */ });\n/* harmony import */ var _formats_SimpleDateFormat__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./formats/SimpleDateFormat */ \"./src/formats/SimpleDateFormat.ts\");\n/* harmony import */ var _formats_DateTimeFormatter__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./formats/DateTimeFormatter */ \"./src/formats/DateTimeFormatter.ts\");\n\n\nconst register = (moment, fatal = true) => {\n if (moment && moment.fn.zoneAbbr) {\n console.log(\"register: moment=%s, fatal=%s\", typeof moment, fatal);\n if (moment.tz) {\n console.log(\"Moment.js with timezone support detected; attaching Java format methods.\");\n } else {\n console.warn(\"Moment.js detected, but timezone support is missing. Some Java formatting features may not work as expected.\");\n }\n const sdf = new _formats_SimpleDateFormat__WEBPACK_IMPORTED_MODULE_0__[\"default\"]();\n const dtf = new _formats_DateTimeFormatter__WEBPACK_IMPORTED_MODULE_1__[\"default\"]();\n moment.fn.formatJavaSDF = function (formatString) {\n return sdf.format(this, formatString);\n };\n moment.fn.formatJavaDTF = function (formatString) {\n return dtf.format(this, formatString);\n };\n return moment;\n } else {\n console.error(\"Unable to attach Java format methods. Moment.js object was invalid.\");\n if (fatal) {\n throw new Error(\"Moment.js object was invalid.\");\n }\n }\n return undefined;\n};\n\n/*\n Attempt to register with global Moment.js object if it's found,\n preferring `moment-timezone` over `moment`.\n*/\n\nif (typeof window !== \"undefined\" && window?.moment) {\n register(window.moment, false);\n} else if (typeof __webpack_require__.g !== \"undefined\" && __webpack_require__.g?.moment) {\n register(__webpack_require__.g.moment, false);\n} else if (typeof window !== \"undefined\" && window) {\n try {\n const moment = __webpack_require__(/*! moment-timezone */ \"moment-timezone\");\n window.moment = register(moment, false);\n } catch {\n console.warn(\"Failed to load moment-timezone. Attempting fallback to moment.\");\n try {\n const moment = __webpack_require__(/*! moment */ \"moment\");\n window.moment = register(moment, false);\n } catch {\n console.warn(\"Failed to load moment. User will have to manually register.\");\n }\n }\n}\nlet m = undefined;\nif (typeof window !== \"undefined\") {\n m = window.moment;\n}\nif (typeof m === \"undefined\" && typeof __webpack_require__.g !== \"undefined\") {\n m = __webpack_require__.g.moment;\n}\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (m);\n\n// eslint-disable-next-line no-barrel-files/no-barrel-files\n\n\n//# sourceURL=webpack://@rangerrick/moment-javaformat/./src/index.js?\n}");

@@ -76,0 +76,0 @@ /***/ }),

@@ -1,2 +0,2 @@

!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t(function(){try{return require("moment-timezone")}catch(e){}}(),function(){try{return require("moment")}catch(e){}}());else if("function"==typeof define&&define.amd)define(["moment-timezone","moment"],t);else{var a="object"==typeof exports?t(function(){try{return require("moment-timezone")}catch(e){}}(),function(){try{return require("moment")}catch(e){}}()):t(e["moment-timezone"],e.moment);for(var r in a)("object"==typeof exports?exports:e)[r]=a[r]}}(this,((e,t)=>(()=>{"use strict";var a={416:e=>{if(void 0===t){var a=new Error("Cannot find module 'moment'");throw a.code="MODULE_NOT_FOUND",a}e.exports=t},528:t=>{if(void 0===e){var a=new Error("Cannot find module 'moment-timezone'");throw a.code="MODULE_NOT_FOUND",a}t.exports=e}},r={};function n(e){var t=r[e];if(void 0!==t)return t.exports;var T=r[e]={exports:{}};return a[e](T,T.exports,n),T.exports}n.d=(e,t)=>{for(var a in t)n.o(t,a)&&!n.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var T={};n.d(T,{default:()=>O});const i={"-720":["AoE","Y"],"-660":["NUT","SST","X"],"-600":["HST","CKT","TAHT","W"],"-570":["MART"],"-540":["AKST","HDT","GAMT","V"],"-480":["PST","AKDT","U","PT"],"-420":["MST","PDT","T","MT","PT"],"-360":["CST","MDT","EAST","GALT","S","CT","MT"],"-300":["EST","CDT","ACT","CIST","COT","CST","EASST","ECT","PET","R","ET","CT"],"-240":["EDT","AST","AMT","BOT","CIDST","CLT","FKT","GYT","VET","Q","AT","ET"],"-210":["NST"],"-180":["UYT","ADT","AMST","ART","BRT","CLST","FKST","GFT","PMST","ROTT","SRT","UYT","WARST","WGT","P","AT"],"-150":["NDT"],"-120":["GST","BRST","FNT","GST","PMDT","UYST","WGST","O"],"-60":["CVT","AZOT","CVT","EGT","N"],0:["UTC","GMT","AZOST","EGST","WET","Z","WT"],60:["CET","BST","WAT","WEST","WST","A"],120:["CAT","CEST","EET","SAST","WAST","B"],180:["EAT","EEST","FET","MSK","SYOT","TRT","C"],210:["IRST"],240:["GET","AZT","KUYT","MSD","MUT","RET","SAMT","SCT","D"],270:["AFT","IRDT"],300:["UZT","AQTT","AZST","MAWT","MVT","ORAT","PKT","TFT","TJT","TMT","YEKT","E"],330:["IST"],345:["NPT"],360:["BTT","ALMT","BTT","IOT","KGT","OMST","QYZT","VOST","YEKST","F"],390:["MMT","CCT"],420:["ICT","CXT","DAVT","HOVT","KRAT","NOVST","NOVT","OMSST","WIB","G"],480:["HKT","AWST","BNT","CAST","CHOT","HOVST","IRKT","KRAST","MYT","PHT","SGT","ULAT","WITA","H"],510:["PYT"],525:["ACWST"],540:["JST","AWDT","CHOST","IRKST","KST","PWT","TLT","ULAST","WIT","YAKT","I"],570:["ACST","ACT"],600:["PGT","AEST","CHUT","ChST","DDUT","VLAT","YAKST","YAPT","K","AET"],630:["ACDT","LHST","ACT"],660:["VUT","AEDT","KOST","LHDT","MAGT","NCT","NFT","PONT","SAKT","SBT","SRET","VLAST","L","AET"],720:["FJT","ANAST","ANAT","GILT","MAGST","MHT","NFDT","NRT","NZST","PETST","PETT","TVT","WAKT","WFT","M"],765:["CHAST"],780:["TOT","FJST","NZDT","PHOT","TKT","TOT"],825:["CHADT"],840:["LINT","TOST","WST"]},o={A:"Alpha Time Zone",ACDT:"Australian Central Daylight Time",ACST:"Australian Central Standard Time",ACT:"Australian Central Time",ACWST:"Australian Central Western Standard Time",ADT:"Atlantic Daylight Time",ADST:"Atlantic Daylight Saving Time",AEDT:"Australian Eastern Daylight Time",AEST:"Australian Eastern Standard Time",AET:"Australian Eastern Time",AFT:"Afghanistan Time",AKDT:"Alaska Daylight Time",AKST:"Alaska Standard Time",ALMT:"Alma-Ata Time",AMDT:"Armenia Daylight Time",AMST:"Amazon Summer Time",AMT:"Amazon Time",ANAST:"Anadyr Summer Time",ANAT:"Anadyr Time",AQTT:"Aqtobe Time",ART:"Argentina Time",AST:"Atlantic Standard Time",AT:"Atlantic Time",AWDT:"Australian Western Daylight Time",AWST:"Australian Western Standard Time",AZODT:"Azores Daylight Time",AZOST:"Azores Summer Time",AZOT:"Azores Time",AZST:"Azerbaijan Summer Time",AZT:"Azerbaijan Time",AoE:"Anywhere on Earth",B:"Bravo Time Zone",BDST:"British Daylight Saving Time",BDT:"Brunei Time",BNT:"Brunei Darussalam Time",BOT:"Bolivia Time",BRST:"Brasília Summer Time",BRT:"Brasília Time",BST:"British Summer Time",BT:"Brazil Time",BTT:"Bhutan Time",C:"Charlie Time Zone",CAST:"Casey Time",CAT:"Central Africa Time",CCT:"Cocos Islands Time",CDT:"Central Daylight Time",CDST:"Central Daylight Savings Time",CEDT:"Central European Daylight Time",CEST:"Central European Summer Time",CET:"Central European Time",CHADT:"Chatham Island Daylight Time",CHAST:"Chatham Island Standard Time",CHODT:"Choibalsan Daylight Time",CHODST:"Choibalsan Daylight Saving Time",CHOST:"Choibalsan Summer Time",CHOT:"Choibalsan Time",CHUT:"Chuuk Time",CIDST:"Cayman Islands Daylight Saving Time",CIST:"Cayman Islands Standard Time",CIT:"Cayman Islands Time",CKT:"Cook Island Time",CLDT:"Chile Daylight Time",CLST:"Chile Summer Time",CLT:"Chile Standard Time",COT:"Colombia Time",CST:"Central Standard Time",CT:"Central Time",CVT:"Cape Verde Time",CXT:"Christmas Island Time",ChST:"Chamorro Standard Time",D:"Delta Time Zone",DAVT:"Davis Time",DDUT:"Dumont-d'Urville Time",E:"Echo Time Zone",EADT:"Easter Island Daylight Time",EASST:"Easter Island Summer Time",EAST:"Easter Island Standard Time",EAT:"Eastern Africa Time",ECST:"European Central Summer Time",ECT:"Ecuador Time",EDT:"Eastern Daylight Time",EDST:"Eastern Daylight Saving Time",EEDT:"Eastern European Daylight Time",EEST:"Eastern European Summer Time",EET:"Eastern European Time",EFATE:"Efate Time",EGST:"Eastern Greenland Summer Time",EGT:"East Greenland Time",EST:"Eastern Standard Time",ET:"Eastern Time",F:"Foxtrot Time Zone",FET:"Further-Eastern European Time",FJDT:"Fiji Daylight Time",FJST:"Fiji Summer Time",FJT:"Fiji Time",FKDT:"Falkland Island Daylight Time",FKST:"Falkland Islands Summer Time",FKT:"Falkland Island Time",FNT:"Fernando de Noronha Time",G:"Golf Time Zone",GALT:"Galapagos Time",GAMT:"Gambier Time",GET:"Georgia Standard Time",GFT:"French Guiana Time",GILT:"Gilbert Island Time",GMT:"Greenwich Mean Time",GST:"South Georgia Time",GT:"Greenwich Time",GYT:"Guyana Time",H:"Hotel Time Zone",HAA:"Heure Avancée de l'Atlantique",HAC:"Heure Avancée du Centre",HADT:"Hawaii Daylight Time",HAE:"Heure Avancée de l'Est",HAP:"Heure Avancée du Pacifique",HAST:"Hawaii-Aleutian Standard Time",HAR:"Heure Avancée des Rocheuses",HAT:"Heure Avancée de Terre-Neuve",HDT:"Hawaii-Aleutian Daylight Time",HLV:"Hora Legal de Venezuela",HNA:"Heure Normale de l'Atlantique",HNC:"Heure Normale du Centre",HNE:"Heure Normale de l'Est",HNP:"Heure Normale du Pacifique",HNR:"Heure Normale des Rocheuses",HNT:"Heure Normale de Terre-Neuve",HKT:"Hong Kong Time",HOVDT:"Hovd Daylight Time",HOVDST:"Hovd Daylight Saving Time",HOVST:"Hovd Summer Time",HOVT:"Hovd Time",HST:"Hawaii Standard Time",I:"India Time Zone",ICT:"Indochina Time",IDT:"Israel Daylight Time",IOT:"Indian Chagos Time",IRDT:"Iran Daylight Time",IRKST:"Irkutsk Summer Time",IRKT:"Irkutsk Time",IRST:"Iran Standard Time",IST:"India Standard Time",JST:"Japan Standard Time",K:"Kilo Time Zone",KGT:"Kyrgyzstan Time",KIT:"Kerguelen (Islands) Time",KOST:"Kosrae Time",KRAST:"Krasnoyarsk Summer Time",KRAT:"Krasnoyarsk Time",KST:"Korea Standard Time",KT:"Korea Time",KUYT:"Kuybyshev Time",L:"Lima Time Zone",LHDT:"Lord Howe Daylight Time",LHST:"Lord Howe Standard Time",LINT:"Line Islands Time",M:"Mike Time Zone",MAGST:"Magadan Summer Time",MAGT:"Magadan Time",MART:"Marquesas Time",MAWT:"Mawson Time",MCK:"Moscow Time",MDST:"Mountain Daylight Saving Time",MDT:"Mountain Daylight Time",MESZ:"Mitteleuropäische Sommerzeit",MEZ:"Mitteleuropäische Zeit",MHT:"Marshall Islands Time",MMT:"Myanmar Time",MST:"Mountain Standard Time",MSK:"Moscow Standard Time",MT:"Mountain Time",MUT:"Mauritius Time",MVT:"Maldives Time",MYT:"Malaysia Time",N:"November Time Zone",NACDT:"North American Central Daylight Time",NACST:"North American Central Standard Time",NAEDT:"North American Eastern Daylight Time",NAEST:"North American Eastern Standard Time",NAMDT:"North American Mountain Daylight Time",NAMST:"North American Mountain Standard Time",NAPDT:"North American Pacific Daylight Time",NAPST:"North American Pacific Standard Time",NCT:"New Caledonia Time",NDT:"Newfoundland Daylight Time",NFDT:"Norfolk Daylight Time",NFT:"Norfolk Time",NOVST:"Novosibirsk Summer Time",NOVT:"Novosibirsk Time",NPT:"Nepal Time",NRT:"Nauru Time",NST:"Newfoundland Standard Time",NUT:"Niue Time",NZDT:"New Zealand Daylight Time",NZST:"New Zealand Standard Time",O:"Oscar Time Zone",OESZ:"Osteuropäische Sommerzeit",OEZ:"Osteuropäische Zeit",OMSST:"Omsk Summer Time",OMST:"Omsk Standard Time",ORAT:"Oral Time",P:"Papa Time Zone",PDT:"Pacific Daylight Time",PDST:"Pacific Daylight Saving Time",PET:"Peru Time",PETST:"Kamchatka Summer Time",PETT:"Kamchatka Time",PGT:"Papua New Guinea Time",PHOT:"Phoenix Island Time",PHT:"Philippine Time",PKT:"Pakistan Standard Time",PMDT:"Pierre & Miquelon Daylight Time",PMST:"Pierre & Miquelon Standard Time",PONT:"Pohnpei Standard Time",PST:"Pacific Standard Time",PT:"Pacific Time",PWT:"Palau Time",PYST:"Pyongyang Standard Time",PYT:"Pyongyang Time",Q:"Quebec Time Zone",QYZT:"Qyzylorda Time",R:"Romeo Time Zone",RET:"Reunion Time",ROTT:"Rothera Time",S:"Sierra Time Zone",SAKT:"Sakhalin Time",SAMT:"Samara Time",SAMST:"Samara Summer Time",SAST:"South Africa Standard Time",SBT:"Solomon Islands Time",SCT:"Seychelles Time",SGT:"Singapore Time",SRET:"Srednekolymsk Time",SRT:"Suriname Time",SST:"Samoa Standard Time",SYOT:"Syowa Time",T:"Tango Time Zone",TAHT:"Tahiti Time",TFT:"French Southern and Antarctic Time",TJT:"Tajikistan Time",TKT:"Tokelau Time",TLT:"East Timor Time",TMT:"Turkmenistan Time",TOST:"Tonga Summer Time",TOT:"Tonga Time",TRT:"Turkey Time",tVT:"Tuvalu Time",U:"Uniform Time Zone",ULAST:"Ulaanbaatar Summer Time",ULAT:"Ulaanbaatar Time",UTC:"Coordinated Universal Time",UYST:"Uruguay Summer Time",UYT:"Uruguay Time",UZT:"Uzbekistan Time",V:"Victor Time Zone",VET:"Venezuelan Standard Time",VLAST:"Vladivostok Summer Time",VLAT:"Vladivostok Time",VOST:"Vostok Time",VUT:"Vanuatu Time",W:"Whiskey Time Zone",WAKT:"Wake Time",WARST:"Western Argentine Summer Time",WAST:"West Africa Summer Time",WAT:"West Africa Time",WDT:"Western Daylight Time",WEDT:"Western European Daylight Time",WEST:"Western European Summer Time",WESZ:"Westeuropäische Sommerzeit",WET:"Western European Time",WEZ:"Westeuropäische Zeit",WFT:"Wallis and Futuna Time",WGST:"Western Greenland Summer Time",WGT:"West Greenland Time",WIB:"Western Indonesian Time",WIT:"Eastern Indonesian Time",WITA:"Central Indonesian Time",WST:"Western Standard Time",WT:"Western Sahara Standard Time",X:"X-ray Time Zone",Y:"Yankee Time Zone",YAKST:"Yakutsk Summer Time",YAKT:"Yakutsk Time",YAPT:"Yap Time",YEKST:"Yekaterinburg Summer Time",YEKT:"Yekaterinburg Time",Z:"Zulu Time Zone"},m={},s=e=>o[e]?o[e]:null,u=e=>{const t=moment(e).utcOffset();if(!m[t]){const e=(e=>{if(!moment.tz)return null;const t=moment.tz.guess(),a=t?moment.tz(t).format("z"):null,r=i[String(e)];return r?r.indexOf(a)>=0?a:r[0]:null})(t);e?m[t]=e:console.warn("- unhandled offset: "+t)}return m[t]||null},l=e=>Number.isInteger(e)?String(Math.abs(e)):e.replace(/^-/,""),S=(e,t)=>{const a=l(e);return a.length>=t?String(e):(a!==e?"-":"")+("0".repeat(t)+a).substr(0-t)};class d{count=0;constructor(e,t){if(1!=e.length)throw new Error("You must provide a single character when creating a token!");this.token=e,this.count=void 0===t?1:t}increment(){return this.count++,this.count}equals(e){return this.token===e.token&&this.count===e.count}toString(){return this.token.repeat(this.count)}}class f{}const c=/[A-Za-z]/,h=e=>e.year()>0?"AD":"BC",A=e=>{let t=e.zoneAbbr();const a=e.zoneName();if(e.tz)return a&&""!==a?"UTC"===t&&0!==e.utcOffset()?null:{abbr:t,name:a,description:s(t)}:null;if(t=u(e),t){const e=s(t);if(e)return{abbr:t,name:a,description:e}}return null},D={G:h,GG:h,GGG:h,GGGG:h,GGGGG:h,GGGGGG:h,y:e=>l(e.format("Y")),yy:e=>l(e.format("YY")),yyy:e=>S(l(e.format("YYYY")),3),yyyy:e=>l(e.format("YYYY")),yyyyy:e=>S(l(e.format("YYYY")),5),yyyyyy:e=>S(l(e.format("YYYY")),6),Y:"gggg",YY:"gg",YYY:e=>S(e.format("gggg"),3),YYYY:"gggg",YYYYY:e=>S(e.format("gggg"),5),YYYYYY:e=>S(e.format("gggg"),6),M:"M",MM:"MM",MMM:"MMM",MMMM:"MMMM",MMMMM:"MMMM",MMMMMM:"MMMM",w:e=>S(e.format("w"),1),ww:e=>S(e.format("w"),2),www:e=>S(e.format("w"),3),wwww:e=>S(e.format("w"),4),wwwww:e=>S(e.format("w"),5),wwwwww:e=>S(e.format("w"),6),W:null,WW:null,WWW:null,WWWW:null,D:"DDD",DD:e=>S(e.format("DDD"),2),DDD:e=>S(e.format("DDD"),3),DDDD:e=>S(e.format("DDD"),4),DDDDD:e=>S(e.format("DDD"),5),DDDDDD:e=>S(e.format("DDD"),6),d:"D",dd:"DD",ddd:e=>S(e.format("D"),3),dddd:e=>S(e.format("D"),4),ddddd:e=>S(e.format("D"),5),dddddd:e=>S(e.format("D"),6),F:null,FF:null,FFF:null,FFFF:null,E:"ddd",EE:"ddd",EEE:"ddd",EEEE:"dddd",EEEEE:"dddd",EEEEEE:"dddd",u:"E",uu:e=>S(e.format("E"),2),uuu:e=>S(e.format("E"),3),uuuu:e=>S(e.format("E"),4),uuuuu:e=>S(e.format("E"),5),uuuuuu:e=>S(e.format("E"),6),a:"A",aa:"A",aaa:"A",aaaa:"A",aaaaa:"A",aaaaaa:"A",H:"H",HH:"HH",HHH:e=>S(e.format("H"),3),HHHH:e=>S(e.format("H"),4),HHHHH:e=>S(e.format("H"),5),HHHHHH:e=>S(e.format("H"),6),k:"k",kk:"kk",kkk:e=>S(e.format("k"),3),kkkk:e=>S(e.format("k"),4),kkkkk:e=>S(e.format("k"),5),kkkkkk:e=>S(e.format("k"),6),K:e=>{const t=parseInt(e.format("h"),10);return l(t%12)},KK:e=>{const t=parseInt(e.format("h"),10);return S(l(t%12),2)},KKK:e=>{const t=parseInt(e.format("h"),10);return S(l(t%12),3)},KKKK:e=>{const t=parseInt(e.format("h"),10);return S(l(t%12),4)},KKKKK:e=>{const t=parseInt(e.format("h"),10);return S(l(t%12),5)},KKKKKK:e=>{const t=parseInt(e.format("h"),10);return S(l(t%12),6)},h:"h",hh:"hh",hhh:e=>S(e.format("h"),3),hhhh:e=>S(e.format("h"),4),hhhhh:e=>S(e.format("h"),5),hhhhhh:e=>S(e.format("h"),6),m:"m",mm:"mm",mmm:e=>S(e.format("m"),3),mmmm:e=>S(e.format("m"),4),mmmmm:e=>S(e.format("m"),5),mmmmmm:e=>S(e.format("m"),6),s:"s",ss:"ss",sss:e=>S(e.format("s"),3),ssss:e=>S(e.format("s"),4),sssss:e=>S(e.format("s"),5),ssssss:e=>S(e.format("s"),6),S:"S",SS:"SS",SSS:"SSS",SSSS:"SSSS",SSSSS:e=>S(e.format("SSSS"),5),SSSSSS:e=>S(e.format("SSSS"),6),z:e=>{const t=A(e);return t?t.abbr:"GMT"+e.format("Z")},zz:e=>{const t=A(e);return t?t.abbr:"GMT"+e.format("Z")},zzz:e=>{const t=A(e);return t?t.abbr:"GMT"+e.format("Z")},zzzz:e=>{const t=A(e);return t?t.description:"GMT"+e.format("Z")},zzzzz:e=>{const t=A(e);return t?t.description:"GMT"+e.format("Z")},zzzzzz:e=>{const t=A(e);return t?t.description:"GMT"+e.format("Z")},Z:"ZZ",ZZ:"ZZ",ZZZ:"ZZ",ZZZZ:"ZZ",ZZZZZ:"ZZ",ZZZZZZ:"ZZ",X:e=>0===e.utcOffset()?"Z":e.format("Z").substr(0,3),XX:e=>0===e.utcOffset()?"Z":e.format("ZZ"),XXX:e=>0===e.utcOffset()?"Z":e.format("Z")};class E extends f{tokenize(e){const t=[],a=e.length;let r=!1,n=0,T=null,i=null;const o=(e,a)=>{const r=D[e];if(null===r)throw new Error(`'${e.repeat(a)}' cannot be converted to a moment format token; token is not implemented`);if(void 0===r)throw new Error(`'${e.repeat(a)}' cannot be converted to a moment format token; unknown token`);t.push(new d(e,a))},m=e=>{t[t.length-1]instanceof d?t.push(e):t[t.length-1]+=e};for(let t=0;t<a;t++){let s=e.charAt(t);if("'"!==s)if(r)i+=s;else if(s.match(c)){if(void 0===D[s])throw new Error(`Illegal pattern character '${s}'`);null!==T&&T!==s?(o(T,n),T=s,n=1):(T=s,n++)}else if(0!==n&&(o(T,n),T=null,n=0),s.charCodeAt(0)<128)m(s);else{let r;for(r=t+1;r<a;r++){const t=e.charAt(r);if("'"===t||t.match(c))break}for(;t<r;t++)m(e.charAt(t));t--}else{if(t+1<a&&(s=e.charAt(t+1),"'"===s)){t++,0!=n&&(o(T,n),T=null,n=0),r?i+=s:m(s);continue}r?(m(i),r=!1):(0!==n&&(o(T,n),T=null,n=0),i="",r=!0)}}if(r)throw new Error("Unterminated quote");return 0!=n&&o(T,n),t}format(e,t){const a=this.tokenize(t),r=[];for(const t of a)if(t instanceof d){const a=t.toString(),n=D[a];if(void 0===n)throw new Error(`'${a}' cannot be converted to a moment format token; unknown token`);"function"==typeof n?r.push(n(e,a)):r.push(e.format(n))}else r.push(t);return r.join("")}}const g=/:?00$/,M=/[A-Za-z]/,Z=e=>e.year()>0?"AD":"BC",y=e=>{const t=e.zoneAbbr();return"UTC"===t&&0!=e.utcOffset()?null:t},Y={G:Z,GG:Z,GGG:Z,GGGG:e=>e.year()>0?"Anno Domini":"Before Christ",GGGGG:e=>Z(e).substring(0,1),u:e=>S(e.format("YYYY"),1),uu:e=>S(l(e.format("YY")),2),uuu:e=>S(e.format("YYYY"),3),uuuu:"YYYY",uuuuu:e=>S(e.format("YYYY"),5),uuuuuu:e=>S(e.format("YYYY"),6),y:e=>l(e.format("Y")),yy:e=>l(e.format("YY")),yyy:e=>S(l(e.format("YYYY")),3),yyyy:e=>l(e.format("YYYY")),yyyyy:e=>S(l(e.format("YYYY")),5),yyyyyy:e=>S(l(e.format("YYYY")),6),D:"DDD",DD:e=>{const t=e.format("DDD");if(t.length>2)throw new Error("Field DayOfYear cannot be printed as the value "+t+" exceeds the maximum print width of 2");return S(t,2)},DDD:"DDDD",M:"M",MM:"MM",MMM:"MMM",MMMM:"MMMM",MMMMM:e=>e.format("MMMM").substring(0,1),L:"M",LL:"MM",LLL:"M",LLLL:"M",LLLLL:"M",d:"D",dd:"DD",Q:"Q",QQ:e=>S(e.format("Q"),2),QQQ:e=>"Q"+e.format("Q"),QQQQ:e=>e.format("Qo")+" quarter",QQQQQ:"Q",q:"Q",qq:e=>S(e.format("Q"),2),qqq:"Q",qqqq:"Q",qqqqq:"Q",Y:e=>S(e.format("gggg"),1),YY:"gg",YYY:e=>S(e.format("gggg"),3),YYYY:"gggg",YYYYY:e=>S(e.format("gggg"),5),YYYYYY:e=>S(e.format("gggg"),6),w:"w",ww:"ww",W:null,WW:null,WWW:null,WWWW:null,E:"ddd",EE:"ddd",EEE:"ddd",EEEE:"dddd",EEEEE:e=>e.format("dddd").substring(0,1),e:"d",ee:e=>S(e.format("d"),2),eee:"ddd",eeee:"dddd",eeeee:e=>e.format("dddd").substring(0,1),c:"d",ccc:"ddd",cccc:"dddd",ccccc:e=>String(parseInt(e.format("d"),10)-1),a:"A",h:"h",hh:"hh",K:e=>l(e.hour()%12),KK:e=>{const t=l(e.hour()%12);return S(t,2)},k:"k",kk:"kk",H:"H",HH:"HH",m:"m",mm:"mm",s:"s",ss:"ss",S:"S",SS:"SS",SSS:"SSS",SSSS:"SSSS",SSSSS:e=>S(e.format("SSSS"),5),SSSSSS:e=>S(e.format("SSSS"),6),A:e=>S(e.valueOf()-e.clone().startOf("day").valueOf(),1),AA:e=>e.isSame(e.clone().startOf("day"))?"00":null,AAA:e=>e.isSame(e.clone().startOf("day"))?"000":null,AAAA:e=>e.isSame(e.clone().startOf("day"))?"0000":null,AAAAA:e=>e.isSame(e.clone().startOf("day"))?"00000":null,AAAAAA:e=>e.isSame(e.clone().startOf("day"))?"000000":null,VV:e=>{if(0===e.utcOffset())return"Z";const t=e.tz();return t&&t.length>0?t:e.format("Z")},z:e=>{if(0===e.utcOffset())return"Z";return y(e)||e.format("Z")},zz:e=>{if(0===e.utcOffset())return"Z";return y(e)||e.format("Z")},zzz:e=>{if(0===e.utcOffset())return"Z";return y(e)||e.format("Z")},zzzz:e=>{if(0===e.utcOffset())return"Z";const t=y(e);return t?s(t):e.format("Z")},O:e=>0==e.utcOffset()/60?"GMT":"GMT"+e.format("Z").replace(g,"").replace(/^([+-])0/,"$1"),OOOO:e=>0==e.utcOffset()/60?"GMT":"GMT"+e.format("Z"),X:e=>{if(0===e.utcOffset())return"Z";const t=e.format("ZZ");return t.match(g)?t.substr(0,3):t},XX:e=>0===e.utcOffset()?"Z":e.format("ZZ"),XXX:e=>0===e.utcOffset()?"Z":e.format("Z"),XXXX:e=>0===e.utcOffset()?"Z":e.format("ZZ"),XXXXX:e=>0===e.utcOffset()?"Z":e.format("Z"),x:e=>{const t=e.format("ZZ");return t.match(g)?t.substr(0,3):t},xx:"ZZ",xxx:"Z",xxxx:"ZZ",xxxxx:"Z",Z:e=>0===e.utcOffset()?"+0000":e.format("ZZ"),ZZ:e=>0===e.utcOffset()?"+0000":e.format("ZZ"),ZZZ:e=>0===e.utcOffset()?"+0000":e.format("ZZ"),ZZZZ:e=>0===e.utcOffset()?"GMT":"GMT"+e.format("Z"),ZZZZZ:e=>0===e.utcOffset()?"Z":e.format("Z")};class w extends d{constructor(e,t,a,r){super(a,r),this.padding=e,this.padChar=t}format(e){if(e.length>this.padding)throw new Error(`Cannot format padding as formatted string "${e}" exceeds pad width of ${this.padding}.`);return(this.padChar.repeat(this.padding)+e).substr(0-this.padding)}}class C extends f{tokenize(e){let t=0,a=" ";const r=[];for(let n=0;n<e.length;n++){let T=e.charAt(n);if(T.match(M)){let i=n++;for(;n<e.length&&e.charAt(n)===T;n++);let o=n-i;if("p"===T){let r=0;if(n<e.length&&(T=e.charAt(n),T.match(M))){for(r=o,i=n++;n<e.length&&e.charAt(n)===T;n++);o=n-i}if(0===r)throw new Error("Pad letter 'p' must be followed by valid pad pattern: "+e);t=r,a=" "}const m=Y[T.repeat(o)];if(null===m)throw new Error(`'${T.repeat(o)}' cannot be converted to a moment format token; token is not implemented`);if(void 0===m)throw new Error(`'${T.repeat(o)}' cannot be converted to a moment format token; unknown token`);t>0?(r.push(new w(t,a,T,o)),t=0,a=" "):r.push(new d(T,o)),n--}else if("'"===T){const t=n++;for(;n<e.length;n++)if("'"===e.charAt(n)){if(!(n+1<e.length&&"'"===e.charAt(n+1)))break;n++}if(n>=e.length)throw new Error(`Pattern ends with an incomplete string literal: ${e}`);const a=e.substring(t+1,n);0==a.length?r.push("'"):r.push(a.replace("''","'"))}else{if("["===T)throw new Error(`Optional patterns are not supported: ${T}`);if("]"===T)throw new Error(`Optional patterns are not supported: ${T}`);if("{"===T||"}"===T||"#"===T)throw new Error(`Pattern includes reserved character: '${T}'`);r[r.length-1]instanceof d?r.push(T):r[r.length-1]+=T}}return r}format(e,t){const a=this.tokenize(t),r=[];for(const t of a)if(t instanceof d){const a=t.toString(),n=Y[a];if(void 0===n)throw new Error(`'${a}' cannot be converted to a moment format token; bailing`);if("function"==typeof n){const t=n(e,a);if(null===t)throw new Error(`'${a}' cannot be converted to a moment format token; bailing`);r.push(t)}else r.push(e.format(n))}else r.push(t);return r.join("")}}const p=function(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(e&&e.fn.zoneAbbr){console.log("register: moment=%s, fatal=%s",typeof e,t),e.tz?console.log("Moment.js with timezone support detected; attaching Java format methods."):console.warn("Moment.js detected, but timezone support is missing. Some Java formatting features may not work as expected.");const a=new E,r=new C;return e.fn.formatJavaSDF=function(e){return a.format(this,e)},e.fn.formatJavaDTF=function(e){return r.format(this,e)},e}if(console.error("Unable to attach Java format methods. Moment.js object was invalid."),t)throw new Error("Moment.js object was invalid.")};if("undefined"!=typeof window&&window?.moment)p(window.moment,!1);else if(void 0!==n.g&&n.g?.moment)p(n.g.moment,!1);else if("undefined"!=typeof window&&window)try{const e=n(528);window.moment=p(e,!1)}catch{console.warn("Failed to load moment-timezone. Attempting fallback to moment.");try{const e=n(416);window.moment=p(e,!1)}catch{console.warn("Failed to load moment. User will have to manually register.")}}let H;"undefined"!=typeof window&&(H=window?.moment),void 0===H&&void 0!==n.g&&(H=n.g?.moment);const O=H;return T.default})()));
!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t(function(){try{return require("moment-timezone")}catch(e){}}(),function(){try{return require("moment")}catch(e){}}());else if("function"==typeof define&&define.amd)define(["moment-timezone","moment"],t);else{var a="object"==typeof exports?t(function(){try{return require("moment-timezone")}catch(e){}}(),function(){try{return require("moment")}catch(e){}}()):t(e["moment-timezone"],e.moment);for(var r in a)("object"==typeof exports?exports:e)[r]=a[r]}}(this,((e,t)=>(()=>{"use strict";var a={416:e=>{if(void 0===t){var a=new Error("Cannot find module 'moment'");throw a.code="MODULE_NOT_FOUND",a}e.exports=t},528:t=>{if(void 0===e){var a=new Error("Cannot find module 'moment-timezone'");throw a.code="MODULE_NOT_FOUND",a}t.exports=e}},r={};function n(e){var t=r[e];if(void 0!==t)return t.exports;var T=r[e]={exports:{}};return a[e](T,T.exports,n),T.exports}n.d=(e,t)=>{for(var a in t)n.o(t,a)&&!n.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var T={};n.d(T,{default:()=>O});const i={"-720":["AoE","Y"],"-660":["NUT","SST","X"],"-600":["HST","CKT","TAHT","W"],"-570":["MART"],"-540":["AKST","HDT","GAMT","V"],"-480":["PST","AKDT","U","PT"],"-420":["MST","PDT","T","MT","PT"],"-360":["CST","MDT","EAST","GALT","S","CT","MT"],"-300":["EST","CDT","ACT","CIST","COT","CST","EASST","ECT","PET","R","ET","CT"],"-240":["EDT","AST","AMT","BOT","CIDST","CLT","FKT","GYT","VET","Q","AT","ET"],"-210":["NST"],"-180":["UYT","ADT","AMST","ART","BRT","CLST","FKST","GFT","PMST","ROTT","SRT","UYT","WARST","WGT","P","AT"],"-150":["NDT"],"-120":["GST","BRST","FNT","GST","PMDT","UYST","WGST","O"],"-60":["CVT","AZOT","CVT","EGT","N"],0:["UTC","GMT","AZOST","EGST","WET","Z","WT"],60:["CET","BST","WAT","WEST","WST","A"],120:["CAT","CEST","EET","SAST","WAST","B"],180:["EAT","EEST","FET","MSK","SYOT","TRT","C"],210:["IRST"],240:["GET","AZT","KUYT","MSD","MUT","RET","SAMT","SCT","D"],270:["AFT","IRDT"],300:["UZT","AQTT","AZST","MAWT","MVT","ORAT","PKT","TFT","TJT","TMT","YEKT","E"],330:["IST"],345:["NPT"],360:["BTT","ALMT","BTT","IOT","KGT","OMST","QYZT","VOST","YEKST","F"],390:["MMT","CCT"],420:["ICT","CXT","DAVT","HOVT","KRAT","NOVST","NOVT","OMSST","WIB","G"],480:["HKT","AWST","BNT","CAST","CHOT","HOVST","IRKT","KRAST","MYT","PHT","SGT","ULAT","WITA","H"],510:["PYT"],525:["ACWST"],540:["JST","AWDT","CHOST","IRKST","KST","PWT","TLT","ULAST","WIT","YAKT","I"],570:["ACST","ACT"],600:["PGT","AEST","CHUT","ChST","DDUT","VLAT","YAKST","YAPT","K","AET"],630:["ACDT","LHST","ACT"],660:["VUT","AEDT","KOST","LHDT","MAGT","NCT","NFT","PONT","SAKT","SBT","SRET","VLAST","L","AET"],720:["FJT","ANAST","ANAT","GILT","MAGST","MHT","NFDT","NRT","NZST","PETST","PETT","TVT","WAKT","WFT","M"],765:["CHAST"],780:["TOT","FJST","NZDT","PHOT","TKT","TOT"],825:["CHADT"],840:["LINT","TOST","WST"]},o={A:"Alpha Time Zone",ACDT:"Australian Central Daylight Time",ACST:"Australian Central Standard Time",ACT:"Australian Central Time",ACWST:"Australian Central Western Standard Time",ADT:"Atlantic Daylight Time",ADST:"Atlantic Daylight Saving Time",AEDT:"Australian Eastern Daylight Time",AEST:"Australian Eastern Standard Time",AET:"Australian Eastern Time",AFT:"Afghanistan Time",AKDT:"Alaska Daylight Time",AKST:"Alaska Standard Time",ALMT:"Alma-Ata Time",AMDT:"Armenia Daylight Time",AMST:"Amazon Summer Time",AMT:"Amazon Time",ANAST:"Anadyr Summer Time",ANAT:"Anadyr Time",AQTT:"Aqtobe Time",ART:"Argentina Time",AST:"Atlantic Standard Time",AT:"Atlantic Time",AWDT:"Australian Western Daylight Time",AWST:"Australian Western Standard Time",AZODT:"Azores Daylight Time",AZOST:"Azores Summer Time",AZOT:"Azores Time",AZST:"Azerbaijan Summer Time",AZT:"Azerbaijan Time",AoE:"Anywhere on Earth",B:"Bravo Time Zone",BDST:"British Daylight Saving Time",BDT:"Brunei Time",BNT:"Brunei Darussalam Time",BOT:"Bolivia Time",BRST:"Brasília Summer Time",BRT:"Brasília Time",BST:"British Summer Time",BT:"Brazil Time",BTT:"Bhutan Time",C:"Charlie Time Zone",CAST:"Casey Time",CAT:"Central Africa Time",CCT:"Cocos Islands Time",CDT:"Central Daylight Time",CDST:"Central Daylight Savings Time",CEDT:"Central European Daylight Time",CEST:"Central European Summer Time",CET:"Central European Time",CHADT:"Chatham Island Daylight Time",CHAST:"Chatham Island Standard Time",CHODT:"Choibalsan Daylight Time",CHODST:"Choibalsan Daylight Saving Time",CHOST:"Choibalsan Summer Time",CHOT:"Choibalsan Time",CHUT:"Chuuk Time",CIDST:"Cayman Islands Daylight Saving Time",CIST:"Cayman Islands Standard Time",CIT:"Cayman Islands Time",CKT:"Cook Island Time",CLDT:"Chile Daylight Time",CLST:"Chile Summer Time",CLT:"Chile Standard Time",COT:"Colombia Time",CST:"Central Standard Time",CT:"Central Time",CVT:"Cape Verde Time",CXT:"Christmas Island Time",ChST:"Chamorro Standard Time",D:"Delta Time Zone",DAVT:"Davis Time",DDUT:"Dumont-d'Urville Time",E:"Echo Time Zone",EADT:"Easter Island Daylight Time",EASST:"Easter Island Summer Time",EAST:"Easter Island Standard Time",EAT:"Eastern Africa Time",ECST:"European Central Summer Time",ECT:"Ecuador Time",EDT:"Eastern Daylight Time",EDST:"Eastern Daylight Saving Time",EEDT:"Eastern European Daylight Time",EEST:"Eastern European Summer Time",EET:"Eastern European Time",EFATE:"Efate Time",EGST:"Eastern Greenland Summer Time",EGT:"East Greenland Time",EST:"Eastern Standard Time",ET:"Eastern Time",F:"Foxtrot Time Zone",FET:"Further-Eastern European Time",FJDT:"Fiji Daylight Time",FJST:"Fiji Summer Time",FJT:"Fiji Time",FKDT:"Falkland Island Daylight Time",FKST:"Falkland Islands Summer Time",FKT:"Falkland Island Time",FNT:"Fernando de Noronha Time",G:"Golf Time Zone",GALT:"Galapagos Time",GAMT:"Gambier Time",GET:"Georgia Standard Time",GFT:"French Guiana Time",GILT:"Gilbert Island Time",GMT:"Greenwich Mean Time",GST:"South Georgia Time",GT:"Greenwich Time",GYT:"Guyana Time",H:"Hotel Time Zone",HAA:"Heure Avancée de l'Atlantique",HAC:"Heure Avancée du Centre",HADT:"Hawaii Daylight Time",HAE:"Heure Avancée de l'Est",HAP:"Heure Avancée du Pacifique",HAST:"Hawaii-Aleutian Standard Time",HAR:"Heure Avancée des Rocheuses",HAT:"Heure Avancée de Terre-Neuve",HDT:"Hawaii-Aleutian Daylight Time",HLV:"Hora Legal de Venezuela",HNA:"Heure Normale de l'Atlantique",HNC:"Heure Normale du Centre",HNE:"Heure Normale de l'Est",HNP:"Heure Normale du Pacifique",HNR:"Heure Normale des Rocheuses",HNT:"Heure Normale de Terre-Neuve",HKT:"Hong Kong Time",HOVDT:"Hovd Daylight Time",HOVDST:"Hovd Daylight Saving Time",HOVST:"Hovd Summer Time",HOVT:"Hovd Time",HST:"Hawaii Standard Time",I:"India Time Zone",ICT:"Indochina Time",IDT:"Israel Daylight Time",IOT:"Indian Chagos Time",IRDT:"Iran Daylight Time",IRKST:"Irkutsk Summer Time",IRKT:"Irkutsk Time",IRST:"Iran Standard Time",IST:"India Standard Time",JST:"Japan Standard Time",K:"Kilo Time Zone",KGT:"Kyrgyzstan Time",KIT:"Kerguelen (Islands) Time",KOST:"Kosrae Time",KRAST:"Krasnoyarsk Summer Time",KRAT:"Krasnoyarsk Time",KST:"Korea Standard Time",KT:"Korea Time",KUYT:"Kuybyshev Time",L:"Lima Time Zone",LHDT:"Lord Howe Daylight Time",LHST:"Lord Howe Standard Time",LINT:"Line Islands Time",M:"Mike Time Zone",MAGST:"Magadan Summer Time",MAGT:"Magadan Time",MART:"Marquesas Time",MAWT:"Mawson Time",MCK:"Moscow Time",MDST:"Mountain Daylight Saving Time",MDT:"Mountain Daylight Time",MESZ:"Mitteleuropäische Sommerzeit",MEZ:"Mitteleuropäische Zeit",MHT:"Marshall Islands Time",MMT:"Myanmar Time",MST:"Mountain Standard Time",MSK:"Moscow Standard Time",MT:"Mountain Time",MUT:"Mauritius Time",MVT:"Maldives Time",MYT:"Malaysia Time",N:"November Time Zone",NACDT:"North American Central Daylight Time",NACST:"North American Central Standard Time",NAEDT:"North American Eastern Daylight Time",NAEST:"North American Eastern Standard Time",NAMDT:"North American Mountain Daylight Time",NAMST:"North American Mountain Standard Time",NAPDT:"North American Pacific Daylight Time",NAPST:"North American Pacific Standard Time",NCT:"New Caledonia Time",NDT:"Newfoundland Daylight Time",NFDT:"Norfolk Daylight Time",NFT:"Norfolk Time",NOVST:"Novosibirsk Summer Time",NOVT:"Novosibirsk Time",NPT:"Nepal Time",NRT:"Nauru Time",NST:"Newfoundland Standard Time",NUT:"Niue Time",NZDT:"New Zealand Daylight Time",NZST:"New Zealand Standard Time",O:"Oscar Time Zone",OESZ:"Osteuropäische Sommerzeit",OEZ:"Osteuropäische Zeit",OMSST:"Omsk Summer Time",OMST:"Omsk Standard Time",ORAT:"Oral Time",P:"Papa Time Zone",PDT:"Pacific Daylight Time",PDST:"Pacific Daylight Saving Time",PET:"Peru Time",PETST:"Kamchatka Summer Time",PETT:"Kamchatka Time",PGT:"Papua New Guinea Time",PHOT:"Phoenix Island Time",PHT:"Philippine Time",PKT:"Pakistan Standard Time",PMDT:"Pierre & Miquelon Daylight Time",PMST:"Pierre & Miquelon Standard Time",PONT:"Pohnpei Standard Time",PST:"Pacific Standard Time",PT:"Pacific Time",PWT:"Palau Time",PYST:"Pyongyang Standard Time",PYT:"Pyongyang Time",Q:"Quebec Time Zone",QYZT:"Qyzylorda Time",R:"Romeo Time Zone",RET:"Reunion Time",ROTT:"Rothera Time",S:"Sierra Time Zone",SAKT:"Sakhalin Time",SAMT:"Samara Time",SAMST:"Samara Summer Time",SAST:"South Africa Standard Time",SBT:"Solomon Islands Time",SCT:"Seychelles Time",SGT:"Singapore Time",SRET:"Srednekolymsk Time",SRT:"Suriname Time",SST:"Samoa Standard Time",SYOT:"Syowa Time",T:"Tango Time Zone",TAHT:"Tahiti Time",TFT:"French Southern and Antarctic Time",TJT:"Tajikistan Time",TKT:"Tokelau Time",TLT:"East Timor Time",TMT:"Turkmenistan Time",TOST:"Tonga Summer Time",TOT:"Tonga Time",TRT:"Turkey Time",tVT:"Tuvalu Time",U:"Uniform Time Zone",ULAST:"Ulaanbaatar Summer Time",ULAT:"Ulaanbaatar Time",UTC:"Coordinated Universal Time",UYST:"Uruguay Summer Time",UYT:"Uruguay Time",UZT:"Uzbekistan Time",V:"Victor Time Zone",VET:"Venezuelan Standard Time",VLAST:"Vladivostok Summer Time",VLAT:"Vladivostok Time",VOST:"Vostok Time",VUT:"Vanuatu Time",W:"Whiskey Time Zone",WAKT:"Wake Time",WARST:"Western Argentine Summer Time",WAST:"West Africa Summer Time",WAT:"West Africa Time",WDT:"Western Daylight Time",WEDT:"Western European Daylight Time",WEST:"Western European Summer Time",WESZ:"Westeuropäische Sommerzeit",WET:"Western European Time",WEZ:"Westeuropäische Zeit",WFT:"Wallis and Futuna Time",WGST:"Western Greenland Summer Time",WGT:"West Greenland Time",WIB:"Western Indonesian Time",WIT:"Eastern Indonesian Time",WITA:"Central Indonesian Time",WST:"Western Standard Time",WT:"Western Sahara Standard Time",X:"X-ray Time Zone",Y:"Yankee Time Zone",YAKST:"Yakutsk Summer Time",YAKT:"Yakutsk Time",YAPT:"Yap Time",YEKST:"Yekaterinburg Summer Time",YEKT:"Yekaterinburg Time",Z:"Zulu Time Zone"},m={},s=e=>o[e]?o[e]:null,u=e=>{const t=moment(e).utcOffset();if(!m[t]){const e=(e=>{if(!moment.tz)return null;const t=moment.tz.guess(),a=t?moment.tz(t).format("z"):null,r=i[String(e)];return r?r.indexOf(a)>=0?a:r[0]:null})(t);e?m[t]=e:console.warn("- unhandled offset: "+t)}return m[t]||null},l=e=>Number.isInteger(e)?String(Math.abs(e)):e.replace(/^-/,""),S=(e,t)=>{const a=l(e);return a.length>=t?String(e):(a!==e?"-":"")+("0".repeat(t)+a).substr(0-t)};class d{count=0;constructor(e,t){if(1!=e.length)throw new Error("You must provide a single character when creating a token!");this.token=e,this.count=void 0===t?1:t}increment(){return this.count++,this.count}equals(e){return this.token===e.token&&this.count===e.count}toString(){return this.token.repeat(this.count)}}class f{}const c=/[A-Za-z]/,h=e=>e.year()>0?"AD":"BC",A=e=>{let t=e.zoneAbbr();const a=e.zoneName();if(e.tz)return a&&""!==a?"UTC"===t&&0!==e.utcOffset()?null:{abbr:t,name:a,description:s(t)}:null;if(t=u(e),t){const e=s(t);if(e)return{abbr:t,name:a,description:e}}return null},D={G:h,GG:h,GGG:h,GGGG:h,GGGGG:h,GGGGGG:h,y:e=>l(e.format("Y")),yy:e=>l(e.format("YY")),yyy:e=>S(l(e.format("YYYY")),3),yyyy:e=>l(e.format("YYYY")),yyyyy:e=>S(l(e.format("YYYY")),5),yyyyyy:e=>S(l(e.format("YYYY")),6),Y:"gggg",YY:"gg",YYY:e=>S(e.format("gggg"),3),YYYY:"gggg",YYYYY:e=>S(e.format("gggg"),5),YYYYYY:e=>S(e.format("gggg"),6),M:"M",MM:"MM",MMM:"MMM",MMMM:"MMMM",MMMMM:"MMMM",MMMMMM:"MMMM",w:e=>S(e.format("w"),1),ww:e=>S(e.format("w"),2),www:e=>S(e.format("w"),3),wwww:e=>S(e.format("w"),4),wwwww:e=>S(e.format("w"),5),wwwwww:e=>S(e.format("w"),6),W:null,WW:null,WWW:null,WWWW:null,D:"DDD",DD:e=>S(e.format("DDD"),2),DDD:e=>S(e.format("DDD"),3),DDDD:e=>S(e.format("DDD"),4),DDDDD:e=>S(e.format("DDD"),5),DDDDDD:e=>S(e.format("DDD"),6),d:"D",dd:"DD",ddd:e=>S(e.format("D"),3),dddd:e=>S(e.format("D"),4),ddddd:e=>S(e.format("D"),5),dddddd:e=>S(e.format("D"),6),F:null,FF:null,FFF:null,FFFF:null,E:"ddd",EE:"ddd",EEE:"ddd",EEEE:"dddd",EEEEE:"dddd",EEEEEE:"dddd",u:"E",uu:e=>S(e.format("E"),2),uuu:e=>S(e.format("E"),3),uuuu:e=>S(e.format("E"),4),uuuuu:e=>S(e.format("E"),5),uuuuuu:e=>S(e.format("E"),6),a:"A",aa:"A",aaa:"A",aaaa:"A",aaaaa:"A",aaaaaa:"A",H:"H",HH:"HH",HHH:e=>S(e.format("H"),3),HHHH:e=>S(e.format("H"),4),HHHHH:e=>S(e.format("H"),5),HHHHHH:e=>S(e.format("H"),6),k:"k",kk:"kk",kkk:e=>S(e.format("k"),3),kkkk:e=>S(e.format("k"),4),kkkkk:e=>S(e.format("k"),5),kkkkkk:e=>S(e.format("k"),6),K:e=>{const t=parseInt(e.format("h"),10);return l(t%12)},KK:e=>{const t=parseInt(e.format("h"),10);return S(l(t%12),2)},KKK:e=>{const t=parseInt(e.format("h"),10);return S(l(t%12),3)},KKKK:e=>{const t=parseInt(e.format("h"),10);return S(l(t%12),4)},KKKKK:e=>{const t=parseInt(e.format("h"),10);return S(l(t%12),5)},KKKKKK:e=>{const t=parseInt(e.format("h"),10);return S(l(t%12),6)},h:"h",hh:"hh",hhh:e=>S(e.format("h"),3),hhhh:e=>S(e.format("h"),4),hhhhh:e=>S(e.format("h"),5),hhhhhh:e=>S(e.format("h"),6),m:"m",mm:"mm",mmm:e=>S(e.format("m"),3),mmmm:e=>S(e.format("m"),4),mmmmm:e=>S(e.format("m"),5),mmmmmm:e=>S(e.format("m"),6),s:"s",ss:"ss",sss:e=>S(e.format("s"),3),ssss:e=>S(e.format("s"),4),sssss:e=>S(e.format("s"),5),ssssss:e=>S(e.format("s"),6),S:"S",SS:"SS",SSS:"SSS",SSSS:"SSSS",SSSSS:e=>S(e.format("SSSS"),5),SSSSSS:e=>S(e.format("SSSS"),6),z:e=>{const t=A(e);return t?t.abbr:"GMT"+e.format("Z")},zz:e=>{const t=A(e);return t?t.abbr:"GMT"+e.format("Z")},zzz:e=>{const t=A(e);return t?t.abbr:"GMT"+e.format("Z")},zzzz:e=>{const t=A(e);return t?t.description:"GMT"+e.format("Z")},zzzzz:e=>{const t=A(e);return t?t.description:"GMT"+e.format("Z")},zzzzzz:e=>{const t=A(e);return t?t.description:"GMT"+e.format("Z")},Z:"ZZ",ZZ:"ZZ",ZZZ:"ZZ",ZZZZ:"ZZ",ZZZZZ:"ZZ",ZZZZZZ:"ZZ",X:e=>0===e.utcOffset()?"Z":e.format("Z").substr(0,3),XX:e=>0===e.utcOffset()?"Z":e.format("ZZ"),XXX:e=>0===e.utcOffset()?"Z":e.format("Z")};class E extends f{tokenize(e){const t=[],a=e.length;let r=!1,n=0,T=null,i=null;const o=(e,a)=>{const r=D[e];if(null===r)throw new Error(`'${e.repeat(a)}' cannot be converted to a moment format token; token is not implemented`);if(void 0===r)throw new Error(`'${e.repeat(a)}' cannot be converted to a moment format token; unknown token`);t.push(new d(e,a))},m=e=>{t[t.length-1]instanceof d?t.push(e):t[t.length-1]+=e};for(let t=0;t<a;t++){let s=e.charAt(t);if("'"!==s)if(r)i+=s;else if(s.match(c)){if(void 0===D[s])throw new Error(`Illegal pattern character '${s}'`);null!==T&&T!==s?(o(T,n),T=s,n=1):(T=s,n++)}else if(0!==n&&(o(T,n),T=null,n=0),s.charCodeAt(0)<128)m(s);else{let r;for(r=t+1;r<a;r++){const t=e.charAt(r);if("'"===t||t.match(c))break}for(;t<r;t++)m(e.charAt(t));t--}else{if(t+1<a&&(s=e.charAt(t+1),"'"===s)){t++,0!=n&&(o(T,n),T=null,n=0),r?i+=s:m(s);continue}r?(m(i),r=!1):(0!==n&&(o(T,n),T=null,n=0),i="",r=!0)}}if(r)throw new Error("Unterminated quote");return 0!=n&&o(T,n),t}format(e,t){const a=this.tokenize(t),r=[];for(const t of a)if(t instanceof d){const a=t.toString(),n=D[a];if(void 0===n)throw new Error(`'${a}' cannot be converted to a moment format token; unknown token`);"function"==typeof n?r.push(n(e,a)):r.push(e.format(n))}else r.push(t);return r.join("")}}const g=/:?00$/,M=/[A-Za-z]/,Z=e=>e.year()>0?"AD":"BC",y=e=>{const t=e.zoneAbbr();return"UTC"===t&&0!=e.utcOffset()?null:t},Y={G:Z,GG:Z,GGG:Z,GGGG:e=>e.year()>0?"Anno Domini":"Before Christ",GGGGG:e=>Z(e).substring(0,1),u:e=>S(e.format("YYYY"),1),uu:e=>S(l(e.format("YY")),2),uuu:e=>S(e.format("YYYY"),3),uuuu:"YYYY",uuuuu:e=>S(e.format("YYYY"),5),uuuuuu:e=>S(e.format("YYYY"),6),y:e=>l(e.format("Y")),yy:e=>l(e.format("YY")),yyy:e=>S(l(e.format("YYYY")),3),yyyy:e=>l(e.format("YYYY")),yyyyy:e=>S(l(e.format("YYYY")),5),yyyyyy:e=>S(l(e.format("YYYY")),6),D:"DDD",DD:e=>{const t=e.format("DDD");if(t.length>2)throw new Error("Field DayOfYear cannot be printed as the value "+t+" exceeds the maximum print width of 2");return S(t,2)},DDD:"DDDD",M:"M",MM:"MM",MMM:"MMM",MMMM:"MMMM",MMMMM:e=>e.format("MMMM").substring(0,1),L:"M",LL:"MM",LLL:"M",LLLL:"M",LLLLL:"M",d:"D",dd:"DD",Q:"Q",QQ:e=>S(e.format("Q"),2),QQQ:e=>"Q"+e.format("Q"),QQQQ:e=>e.format("Qo")+" quarter",QQQQQ:"Q",q:"Q",qq:e=>S(e.format("Q"),2),qqq:"Q",qqqq:"Q",qqqqq:"Q",Y:e=>S(e.format("gggg"),1),YY:"gg",YYY:e=>S(e.format("gggg"),3),YYYY:"gggg",YYYYY:e=>S(e.format("gggg"),5),YYYYYY:e=>S(e.format("gggg"),6),w:"w",ww:"ww",W:null,WW:null,WWW:null,WWWW:null,E:"ddd",EE:"ddd",EEE:"ddd",EEEE:"dddd",EEEEE:e=>e.format("dddd").substring(0,1),e:"d",ee:e=>S(e.format("d"),2),eee:"ddd",eeee:"dddd",eeeee:e=>e.format("dddd").substring(0,1),c:"d",ccc:"ddd",cccc:"dddd",ccccc:e=>String(parseInt(e.format("d"),10)-1),a:"A",h:"h",hh:"hh",K:e=>l(e.hour()%12),KK:e=>{const t=l(e.hour()%12);return S(t,2)},k:"k",kk:"kk",H:"H",HH:"HH",m:"m",mm:"mm",s:"s",ss:"ss",S:"S",SS:"SS",SSS:"SSS",SSSS:"SSSS",SSSSS:e=>S(e.format("SSSS"),5),SSSSSS:e=>S(e.format("SSSS"),6),A:e=>S(e.valueOf()-e.clone().startOf("day").valueOf(),1),AA:e=>e.isSame(e.clone().startOf("day"))?"00":null,AAA:e=>e.isSame(e.clone().startOf("day"))?"000":null,AAAA:e=>e.isSame(e.clone().startOf("day"))?"0000":null,AAAAA:e=>e.isSame(e.clone().startOf("day"))?"00000":null,AAAAAA:e=>e.isSame(e.clone().startOf("day"))?"000000":null,VV:e=>{if(0===e.utcOffset())return"Z";const t=e.tz();return t&&t.length>0?t:e.format("Z")},z:e=>{if(0===e.utcOffset())return"Z";return y(e)||e.format("Z")},zz:e=>{if(0===e.utcOffset())return"Z";return y(e)||e.format("Z")},zzz:e=>{if(0===e.utcOffset())return"Z";return y(e)||e.format("Z")},zzzz:e=>{if(0===e.utcOffset())return"Z";const t=y(e);return t?s(t):e.format("Z")},O:e=>0==e.utcOffset()/60?"GMT":"GMT"+e.format("Z").replace(g,"").replace(/^([+-])0/,"$1"),OOOO:e=>0==e.utcOffset()/60?"GMT":"GMT"+e.format("Z"),X:e=>{if(0===e.utcOffset())return"Z";const t=e.format("ZZ");return t.match(g)?t.substr(0,3):t},XX:e=>0===e.utcOffset()?"Z":e.format("ZZ"),XXX:e=>0===e.utcOffset()?"Z":e.format("Z"),XXXX:e=>0===e.utcOffset()?"Z":e.format("ZZ"),XXXXX:e=>0===e.utcOffset()?"Z":e.format("Z"),x:e=>{const t=e.format("ZZ");return t.match(g)?t.substr(0,3):t},xx:"ZZ",xxx:"Z",xxxx:"ZZ",xxxxx:"Z",Z:e=>0===e.utcOffset()?"+0000":e.format("ZZ"),ZZ:e=>0===e.utcOffset()?"+0000":e.format("ZZ"),ZZZ:e=>0===e.utcOffset()?"+0000":e.format("ZZ"),ZZZZ:e=>0===e.utcOffset()?"GMT":"GMT"+e.format("Z"),ZZZZZ:e=>0===e.utcOffset()?"Z":e.format("Z")};class w extends d{constructor(e,t,a,r){super(a,r),this.padding=e,this.padChar=t}format(e){if(e.length>this.padding)throw new Error(`Cannot format padding as formatted string "${e}" exceeds pad width of ${this.padding}.`);return(this.padChar.repeat(this.padding)+e).substr(0-this.padding)}}class C extends f{tokenize(e){let t=0,a=" ";const r=[];for(let n=0;n<e.length;n++){let T=e.charAt(n);if(T.match(M)){let i=n++;for(;n<e.length&&e.charAt(n)===T;n++);let o=n-i;if("p"===T){let r=0;if(n<e.length&&(T=e.charAt(n),T.match(M))){for(r=o,i=n++;n<e.length&&e.charAt(n)===T;n++);o=n-i}if(0===r)throw new Error("Pad letter 'p' must be followed by valid pad pattern: "+e);t=r,a=" "}const m=Y[T.repeat(o)];if(null===m)throw new Error(`'${T.repeat(o)}' cannot be converted to a moment format token; token is not implemented`);if(void 0===m)throw new Error(`'${T.repeat(o)}' cannot be converted to a moment format token; unknown token`);t>0?(r.push(new w(t,a,T,o)),t=0,a=" "):r.push(new d(T,o)),n--}else if("'"===T){const t=n++;for(;n<e.length;n++)if("'"===e.charAt(n)){if(!(n+1<e.length&&"'"===e.charAt(n+1)))break;n++}if(n>=e.length)throw new Error(`Pattern ends with an incomplete string literal: ${e}`);const a=e.substring(t+1,n);0==a.length?r.push("'"):r.push(a.replace("''","'"))}else{if("["===T)throw new Error(`Optional patterns are not supported: ${T}`);if("]"===T)throw new Error(`Optional patterns are not supported: ${T}`);if("{"===T||"}"===T||"#"===T)throw new Error(`Pattern includes reserved character: '${T}'`);r[r.length-1]instanceof d?r.push(T):r[r.length-1]+=T}}return r}format(e,t){const a=this.tokenize(t),r=[];for(const t of a)if(t instanceof d){const a=t.toString(),n=Y[a];if(void 0===n)throw new Error(`'${a}' cannot be converted to a moment format token; bailing`);if("function"==typeof n){const t=n(e,a);if(null===t)throw new Error(`'${a}' cannot be converted to a moment format token; bailing`);r.push(t)}else r.push(e.format(n))}else r.push(t);return r.join("")}}const p=(e,t=!0)=>{if(e&&e.fn.zoneAbbr){console.log("register: moment=%s, fatal=%s",typeof e,t),e.tz?console.log("Moment.js with timezone support detected; attaching Java format methods."):console.warn("Moment.js detected, but timezone support is missing. Some Java formatting features may not work as expected.");const a=new E,r=new C;return e.fn.formatJavaSDF=function(e){return a.format(this,e)},e.fn.formatJavaDTF=function(e){return r.format(this,e)},e}if(console.error("Unable to attach Java format methods. Moment.js object was invalid."),t)throw new Error("Moment.js object was invalid.")};if("undefined"!=typeof window&&window?.moment)p(window.moment,!1);else if(void 0!==n.g&&n.g?.moment)p(n.g.moment,!1);else if("undefined"!=typeof window&&window)try{const e=n(528);window.moment=p(e,!1)}catch{console.warn("Failed to load moment-timezone. Attempting fallback to moment.");try{const e=n(416);window.moment=p(e,!1)}catch{console.warn("Failed to load moment. User will have to manually register.")}}let H;"undefined"!=typeof window&&(H=window.moment),void 0===H&&void 0!==n.g&&(H=n.g.moment);const O=H;return T.default})()));
//# sourceMappingURL=moment-javaformat.min.js.map

@@ -29,3 +29,3 @@ /*

eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Formatter: () => (/* binding */ Formatter),\n/* harmony export */ Token: () => (/* binding */ Token),\n/* harmony export */ findAbbreviationForOffset: () => (/* binding */ findAbbreviationForOffset),\n/* harmony export */ getDescriptionForAbbreviation: () => (/* binding */ getDescriptionForAbbreviation),\n/* harmony export */ getZoneForDateTime: () => (/* binding */ getZoneForDateTime),\n/* harmony export */ toAbsString: () => (/* binding */ toAbsString),\n/* harmony export */ zeroPad: () => (/* binding */ zeroPad)\n/* harmony export */ });\n/* harmony import */ var _abbreviations__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./abbreviations */ \"./src/abbreviations.ts\");\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\n//import { Moment } from 'moment-timezone';\n\nconst offsetMappings = {};\nconst findAbbreviationForOffset = offset => {\n if (!moment.tz) {\n return null;\n }\n const tz = moment.tz.guess();\n const short = tz ? moment.tz(tz).format(\"z\") : null;\n // console.log('guessed=', short);\n\n const matches = _abbreviations__WEBPACK_IMPORTED_MODULE_0__.offsets[String(offset)];\n if (matches) {\n // check if the current browser zone matches our offset mapping\n // and if so, shortcut to that abbreviation\n if (matches.indexOf(short) >= 0) {\n return short;\n } else {\n // otherwise, return the first/primary abbreviation in the offset mapping\n return matches[0];\n }\n }\n return null;\n};\nconst getDescriptionForAbbreviation = abbr => {\n if (_abbreviations__WEBPACK_IMPORTED_MODULE_0__.abbreviations[abbr]) {\n return _abbreviations__WEBPACK_IMPORTED_MODULE_0__.abbreviations[abbr];\n }\n return null;\n};\nconst getZoneForDateTime = dateTime => {\n const dt = moment(dateTime);\n const offset = dt.utcOffset();\n if (!offsetMappings[offset]) {\n const shortcut = findAbbreviationForOffset(offset);\n if (shortcut) {\n offsetMappings[offset] = shortcut;\n } else {\n console.warn(\"- unhandled offset: \" + offset);\n }\n }\n return offsetMappings[offset] || null;\n};\nconst toAbsString = value => {\n if (Number.isInteger(value)) {\n return String(Math.abs(value));\n }\n return value.replace(/^-/, \"\");\n};\nconst zeroPad = (input, length) => {\n const abs = toAbsString(input);\n // never truncate, just return if it's bigger\n if (abs.length >= length) {\n return String(input);\n }\n return (abs !== input ? \"-\" : \"\") + (\"0\".repeat(length) + abs).substr(0 - length);\n};\nclass Token {\n count = 0;\n constructor(value, count) {\n if (value.length != 1) {\n throw new Error(\"You must provide a single character when creating a token!\");\n }\n this.token = value;\n this.count = count === undefined ? 1 : count;\n }\n increment() {\n this.count++;\n return this.count;\n }\n equals(token) {\n return this.token === token.token && this.count === token.count;\n }\n toString() {\n return this.token.repeat(this.count);\n }\n}\nclass Formatter {}\n\n//# sourceURL=webpack://@rangerrick/moment-javaformat/./src/Formatter.ts?");
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Formatter: () => (/* binding */ Formatter),\n/* harmony export */ Token: () => (/* binding */ Token),\n/* harmony export */ findAbbreviationForOffset: () => (/* binding */ findAbbreviationForOffset),\n/* harmony export */ getDescriptionForAbbreviation: () => (/* binding */ getDescriptionForAbbreviation),\n/* harmony export */ getZoneForDateTime: () => (/* binding */ getZoneForDateTime),\n/* harmony export */ toAbsString: () => (/* binding */ toAbsString),\n/* harmony export */ zeroPad: () => (/* binding */ zeroPad)\n/* harmony export */ });\n/* harmony import */ var _abbreviations__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./abbreviations */ \"./src/abbreviations.ts\");\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\n//import { Moment } from 'moment-timezone';\n\nconst offsetMappings = {};\nconst findAbbreviationForOffset = offset => {\n if (!moment.tz) {\n return null;\n }\n const tz = moment.tz.guess();\n const short = tz ? moment.tz(tz).format(\"z\") : null;\n // console.log('guessed=', short);\n\n const matches = _abbreviations__WEBPACK_IMPORTED_MODULE_0__.offsets[String(offset)];\n if (matches) {\n // check if the current browser zone matches our offset mapping\n // and if so, shortcut to that abbreviation\n if (matches.indexOf(short) >= 0) {\n return short;\n } else {\n // otherwise, return the first/primary abbreviation in the offset mapping\n return matches[0];\n }\n }\n return null;\n};\nconst getDescriptionForAbbreviation = abbr => {\n if (_abbreviations__WEBPACK_IMPORTED_MODULE_0__.abbreviations[abbr]) {\n return _abbreviations__WEBPACK_IMPORTED_MODULE_0__.abbreviations[abbr];\n }\n return null;\n};\nconst getZoneForDateTime = dateTime => {\n const dt = moment(dateTime);\n const offset = dt.utcOffset();\n if (!offsetMappings[offset]) {\n const shortcut = findAbbreviationForOffset(offset);\n if (shortcut) {\n offsetMappings[offset] = shortcut;\n } else {\n console.warn(\"- unhandled offset: \" + offset);\n }\n }\n return offsetMappings[offset] || null;\n};\nconst toAbsString = value => {\n if (Number.isInteger(value)) {\n return String(Math.abs(value));\n }\n return value.replace(/^-/, \"\");\n};\nconst zeroPad = (input, length) => {\n const abs = toAbsString(input);\n // never truncate, just return if it's bigger\n if (abs.length >= length) {\n return String(input);\n }\n return (abs !== input ? \"-\" : \"\") + (\"0\".repeat(length) + abs).substr(0 - length);\n};\nclass Token {\n count = 0;\n constructor(value, count) {\n if (value.length != 1) {\n throw new Error(\"You must provide a single character when creating a token!\");\n }\n this.token = value;\n this.count = count === undefined ? 1 : count;\n }\n increment() {\n this.count++;\n return this.count;\n }\n equals(token) {\n return this.token === token.token && this.count === token.count;\n }\n toString() {\n return this.token.repeat(this.count);\n }\n}\nclass Formatter {}\n\n//# sourceURL=webpack://@rangerrick/moment-javaformat/./src/Formatter.ts?\n}");

@@ -40,3 +40,3 @@ /***/ }),

eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ abbreviations: () => (/* binding */ abbreviations),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__),\n/* harmony export */ offsets: () => (/* binding */ offsets)\n/* harmony export */ });\n/*\n// Java 8 mappings:\nEST - -05:00\nHST - -10:00\nMST - -07:00\nACT - Australia/Darwin\nAET - Australia/Sydney\nAGT - America/Argentina/Buenos_Aires\nART - Africa/Cairo\nAST - America/Anchorage\nBET - America/Sao_Paulo\nBST - Asia/Dhaka\nCAT - Africa/Harare\nCNT - America/St_Johns\nCST - America/Chicago\nCTT - Asia/Shanghai\nEAT - Africa/Addis_Ababa\nECT - Europe/Paris\nIET - America/Indiana/Indianapolis\nIST - Asia/Kolkata\nJST - Asia/Tokyo\nMIT - Pacific/Apia\nNET - Asia/Yerevan\nNST - Pacific/Auckland\nPLT - Asia/Karachi\nPNT - America/Phoenix\nPRT - America/Puerto_Rico\nPST - America/Los_Angeles\nSST - Pacific/Guadalcanal\nVST - Asia/Ho_Chi_Minh\n*/\n\nconst offsets = {\n \"-720\": [\"AoE\", \"Y\"],\n // -12\n \"-660\": [\"NUT\", \"SST\", \"X\"],\n // -11\n \"-600\": [\"HST\", \"CKT\", \"TAHT\", \"W\"],\n // -10\n \"-570\": [\"MART\"],\n // -9:30\n \"-540\": [\"AKST\", \"HDT\", \"GAMT\", \"V\"],\n // -9\n \"-480\": [\"PST\", \"AKDT\", \"U\", \"PT\"],\n // -8\n \"-420\": [\"MST\", \"PDT\", \"T\", \"MT\", \"PT\"],\n // -7\n \"-360\": [\"CST\", \"MDT\", \"EAST\", \"GALT\", \"S\", \"CT\", \"MT\"],\n // -6\n \"-300\": [\"EST\", \"CDT\", \"ACT\", \"CIST\", \"COT\", \"CST\", \"EASST\", \"ECT\", \"PET\", \"R\", \"ET\", \"CT\"],\n // -5\n \"-240\": [\"EDT\", \"AST\", \"AMT\", \"BOT\", \"CIDST\", \"CLT\", \"FKT\", \"GYT\", \"VET\", \"Q\", \"AT\", \"ET\"],\n // -4\n \"-210\": [\"NST\"],\n // -3:30\n \"-180\": [\"UYT\", \"ADT\", \"AMST\", \"ART\", \"BRT\", \"CLST\", \"FKST\", \"GFT\", \"PMST\", \"ROTT\", \"SRT\", \"UYT\", \"WARST\", \"WGT\", \"P\", \"AT\"],\n // -3\n \"-150\": [\"NDT\"],\n // -2:30\n \"-120\": [\"GST\", \"BRST\", \"FNT\", \"GST\", \"PMDT\", \"UYST\", \"WGST\", \"O\"],\n // -2\n \"-60\": [\"CVT\", \"AZOT\", \"CVT\", \"EGT\", \"N\"],\n // -1\n \"0\": [\"UTC\", \"GMT\", \"AZOST\", \"EGST\", \"WET\", \"Z\", \"WT\"],\n // +/-0\n \"60\": [\"CET\", \"BST\", \"WAT\", \"WEST\", \"WST\", \"A\"],\n // +1\n \"120\": [\"CAT\", \"CEST\", \"EET\", \"SAST\", \"WAST\", \"B\"],\n // +2\n \"180\": [\"EAT\", \"EEST\", \"FET\", \"MSK\", \"SYOT\", \"TRT\", \"C\"],\n // +3\n \"210\": [\"IRST\"],\n // +3:30\n \"240\": [\"GET\", \"AZT\", \"KUYT\", \"MSD\", \"MUT\", \"RET\", \"SAMT\", \"SCT\", \"D\"],\n // +4\n \"270\": [\"AFT\", \"IRDT\"],\n // +4:30\n \"300\": [\"UZT\", \"AQTT\", \"AZST\", \"MAWT\", \"MVT\", \"ORAT\", \"PKT\", \"TFT\", \"TJT\", \"TMT\", \"YEKT\", \"E\"],\n // +5\n \"330\": [\"IST\"],\n // +5:30\n \"345\": [\"NPT\"],\n // +5:45\n \"360\": [\"BTT\", \"ALMT\", \"BTT\", \"IOT\", \"KGT\", \"OMST\", \"QYZT\", \"VOST\", \"YEKST\", \"F\"],\n // +6\n \"390\": [\"MMT\", \"CCT\"],\n // +6:30\n \"420\": [\"ICT\", \"CXT\", \"DAVT\", \"HOVT\", \"KRAT\", \"NOVST\", \"NOVT\", \"OMSST\", \"WIB\", \"G\"],\n // +7\n \"480\": [\"HKT\", \"AWST\", \"BNT\", \"CAST\", \"CHOT\", \"HOVST\", \"IRKT\", \"KRAST\", \"MYT\", \"PHT\", \"SGT\", \"ULAT\", \"WITA\", \"H\"],\n // +8\n \"510\": [\"PYT\"],\n // +8:30\n \"525\": [\"ACWST\"],\n // +8:45\n \"540\": [\"JST\", \"AWDT\", \"CHOST\", \"IRKST\", \"KST\", \"PWT\", \"TLT\", \"ULAST\", \"WIT\", \"YAKT\", \"I\"],\n // +9\n \"570\": [\"ACST\", \"ACT\"],\n // +9:30\n \"600\": [\"PGT\", \"AEST\", \"CHUT\", \"ChST\", \"DDUT\", \"VLAT\", \"YAKST\", \"YAPT\", \"K\", \"AET\"],\n // +10\n \"630\": [\"ACDT\", \"LHST\", \"ACT\"],\n // +10:30\n \"660\": [\"VUT\", \"AEDT\", \"KOST\", \"LHDT\", \"MAGT\", \"NCT\", \"NFT\", \"PONT\", \"SAKT\", \"SBT\", \"SRET\", \"VLAST\", \"L\", \"AET\"],\n // +11\n \"720\": [\"FJT\", \"ANAST\", \"ANAT\", \"GILT\", \"MAGST\", \"MHT\", \"NFDT\", \"NRT\", \"NZST\", \"PETST\", \"PETT\", \"TVT\", \"WAKT\", \"WFT\", \"M\"],\n // +12\n \"765\": [\"CHAST\"],\n // +12:45\n \"780\": [\"TOT\", \"FJST\", \"NZDT\", \"PHOT\", \"TKT\", \"TOT\"],\n // +13\n \"825\": [\"CHADT\"],\n // +13:45\n \"840\": [\"LINT\", \"TOST\", \"WST\"] // +14\n};\nconst abbreviations = {\n A: \"Alpha Time Zone\",\n ACDT: \"Australian Central Daylight Time\",\n ACST: \"Australian Central Standard Time\",\n // ACT: 'Acre Time',\n ACT: \"Australian Central Time\",\n ACWST: \"Australian Central Western Standard Time\",\n // ADT: 'Arabia Daylight Time',\n ADT: \"Atlantic Daylight Time\",\n ADST: \"Atlantic Daylight Saving Time\",\n AEDT: \"Australian Eastern Daylight Time\",\n AEST: \"Australian Eastern Standard Time\",\n AET: \"Australian Eastern Time\",\n AFT: \"Afghanistan Time\",\n AKDT: \"Alaska Daylight Time\",\n AKST: \"Alaska Standard Time\",\n ALMT: \"Alma-Ata Time\",\n AMDT: \"Armenia Daylight Time\",\n AMST: \"Amazon Summer Time\",\n // AMST: 'Armenia Summer Time',\n AMT: \"Amazon Time\",\n // AMT: 'Armenia Time',\n ANAST: \"Anadyr Summer Time\",\n ANAT: \"Anadyr Time\",\n AQTT: \"Aqtobe Time\",\n ART: \"Argentina Time\",\n // AST: 'Arabia Standard Time',\n AST: \"Atlantic Standard Time\",\n AT: \"Atlantic Time\",\n AWDT: \"Australian Western Daylight Time\",\n AWST: \"Australian Western Standard Time\",\n AZODT: \"Azores Daylight Time\",\n AZOST: \"Azores Summer Time\",\n AZOT: \"Azores Time\",\n AZST: \"Azerbaijan Summer Time\",\n AZT: \"Azerbaijan Time\",\n AoE: \"Anywhere on Earth\",\n B: \"Bravo Time Zone\",\n BDST: \"British Daylight Saving Time\",\n // BDT: 'British Daylight Time',\n BDT: \"Brunei Time\",\n BNT: \"Brunei Darussalam Time\",\n BOT: \"Bolivia Time\",\n BRST: \"Brasília Summer Time\",\n BRT: \"Brasília Time\",\n // BST: 'Bangladesh Standard Time',\n // BST: 'Bougainville Standard Time',\n BST: \"British Summer Time\",\n BT: \"Brazil Time\",\n BTT: \"Bhutan Time\",\n C: \"Charlie Time Zone\",\n CAST: \"Casey Time\",\n CAT: \"Central Africa Time\",\n CCT: \"Cocos Islands Time\",\n CDT: \"Central Daylight Time\",\n // CDT: 'Cuba Daylight Time',\n CDST: \"Central Daylight Savings Time\",\n CEDT: \"Central European Daylight Time\",\n CEST: \"Central European Summer Time\",\n CET: \"Central European Time\",\n CHADT: \"Chatham Island Daylight Time\",\n CHAST: \"Chatham Island Standard Time\",\n CHODT: \"Choibalsan Daylight Time\",\n CHODST: \"Choibalsan Daylight Saving Time\",\n CHOST: \"Choibalsan Summer Time\",\n CHOT: \"Choibalsan Time\",\n CHUT: \"Chuuk Time\",\n CIDST: \"Cayman Islands Daylight Saving Time\",\n CIST: \"Cayman Islands Standard Time\",\n CIT: \"Cayman Islands Time\",\n CKT: \"Cook Island Time\",\n CLDT: \"Chile Daylight Time\",\n CLST: \"Chile Summer Time\",\n CLT: \"Chile Standard Time\",\n COT: \"Colombia Time\",\n CST: \"Central Standard Time\",\n // CST: 'China Standard Time',\n // CST: 'Cuba Standard Time',\n CT: \"Central Time\",\n CVT: \"Cape Verde Time\",\n CXT: \"Christmas Island Time\",\n ChST: \"Chamorro Standard Time\",\n D: \"Delta Time Zone\",\n DAVT: \"Davis Time\",\n DDUT: \"Dumont-d'Urville Time\",\n E: \"Echo Time Zone\",\n EADT: \"Easter Island Daylight Time\",\n EASST: \"Easter Island Summer Time\",\n EAST: \"Easter Island Standard Time\",\n EAT: \"Eastern Africa Time\",\n ECST: \"European Central Summer Time\",\n ECT: \"Ecuador Time\",\n EDT: \"Eastern Daylight Time\",\n EDST: \"Eastern Daylight Saving Time\",\n EEDT: \"Eastern European Daylight Time\",\n EEST: \"Eastern European Summer Time\",\n EET: \"Eastern European Time\",\n EFATE: \"Efate Time\",\n EGST: \"Eastern Greenland Summer Time\",\n EGT: \"East Greenland Time\",\n EST: \"Eastern Standard Time\",\n ET: \"Eastern Time\",\n F: \"Foxtrot Time Zone\",\n FET: \"Further-Eastern European Time\",\n FJDT: \"Fiji Daylight Time\",\n FJST: \"Fiji Summer Time\",\n FJT: \"Fiji Time\",\n FKDT: \"Falkland Island Daylight Time\",\n FKST: \"Falkland Islands Summer Time\",\n FKT: \"Falkland Island Time\",\n FNT: \"Fernando de Noronha Time\",\n G: \"Golf Time Zone\",\n GALT: \"Galapagos Time\",\n GAMT: \"Gambier Time\",\n GET: \"Georgia Standard Time\",\n GFT: \"French Guiana Time\",\n GILT: \"Gilbert Island Time\",\n GMT: \"Greenwich Mean Time\",\n // GST: 'Gulf Standard Time',\n GST: \"South Georgia Time\",\n GT: \"Greenwich Time\",\n GYT: \"Guyana Time\",\n H: \"Hotel Time Zone\",\n HAA: \"Heure Avancée de l'Atlantique\",\n HAC: \"Heure Avancée du Centre\",\n HADT: \"Hawaii Daylight Time\",\n HAE: \"Heure Avancée de l'Est\",\n HAP: \"Heure Avancée du Pacifique\",\n HAST: \"Hawaii-Aleutian Standard Time\",\n HAR: \"Heure Avancée des Rocheuses\",\n HAT: \"Heure Avancée de Terre-Neuve\",\n HDT: \"Hawaii-Aleutian Daylight Time\",\n HLV: \"Hora Legal de Venezuela\",\n HNA: \"Heure Normale de l'Atlantique\",\n HNC: \"Heure Normale du Centre\",\n HNE: \"Heure Normale de l'Est\",\n HNP: \"Heure Normale du Pacifique\",\n HNR: \"Heure Normale des Rocheuses\",\n HNT: \"Heure Normale de Terre-Neuve\",\n HKT: \"Hong Kong Time\",\n HOVDT: \"Hovd Daylight Time\",\n HOVDST: \"Hovd Daylight Saving Time\",\n HOVST: \"Hovd Summer Time\",\n HOVT: \"Hovd Time\",\n HST: \"Hawaii Standard Time\",\n I: \"India Time Zone\",\n ICT: \"Indochina Time\",\n IDT: \"Israel Daylight Time\",\n IOT: \"Indian Chagos Time\",\n IRDT: \"Iran Daylight Time\",\n IRKST: \"Irkutsk Summer Time\",\n IRKT: \"Irkutsk Time\",\n IRST: \"Iran Standard Time\",\n IST: \"India Standard Time\",\n // IST: 'Irish Standard Time',\n // IST: 'Israel Standard Time',\n JST: \"Japan Standard Time\",\n K: \"Kilo Time Zone\",\n KGT: \"Kyrgyzstan Time\",\n KIT: \"Kerguelen (Islands) Time\",\n KOST: \"Kosrae Time\",\n KRAST: \"Krasnoyarsk Summer Time\",\n KRAT: \"Krasnoyarsk Time\",\n KST: \"Korea Standard Time\",\n KT: \"Korea Time\",\n KUYT: \"Kuybyshev Time\",\n L: \"Lima Time Zone\",\n LHDT: \"Lord Howe Daylight Time\",\n LHST: \"Lord Howe Standard Time\",\n LINT: \"Line Islands Time\",\n M: \"Mike Time Zone\",\n MAGST: \"Magadan Summer Time\",\n MAGT: \"Magadan Time\",\n MART: \"Marquesas Time\",\n MAWT: \"Mawson Time\",\n MCK: \"Moscow Time\",\n MDST: \"Mountain Daylight Saving Time\",\n MDT: \"Mountain Daylight Time\",\n MESZ: \"Mitteleuropäische Sommerzeit\",\n MEZ: \"Mitteleuropäische Zeit\",\n MHT: \"Marshall Islands Time\",\n MMT: \"Myanmar Time\",\n MST: \"Mountain Standard Time\",\n MSK: \"Moscow Standard Time\",\n MT: \"Mountain Time\",\n MUT: \"Mauritius Time\",\n MVT: \"Maldives Time\",\n MYT: \"Malaysia Time\",\n N: \"November Time Zone\",\n NACDT: \"North American Central Daylight Time\",\n NACST: \"North American Central Standard Time\",\n NAEDT: \"North American Eastern Daylight Time\",\n NAEST: \"North American Eastern Standard Time\",\n NAMDT: \"North American Mountain Daylight Time\",\n NAMST: \"North American Mountain Standard Time\",\n NAPDT: \"North American Pacific Daylight Time\",\n NAPST: \"North American Pacific Standard Time\",\n NCT: \"New Caledonia Time\",\n NDT: \"Newfoundland Daylight Time\",\n NFDT: \"Norfolk Daylight Time\",\n NFT: \"Norfolk Time\",\n NOVST: \"Novosibirsk Summer Time\",\n NOVT: \"Novosibirsk Time\",\n NPT: \"Nepal Time\",\n NRT: \"Nauru Time\",\n NST: \"Newfoundland Standard Time\",\n NUT: \"Niue Time\",\n NZDT: \"New Zealand Daylight Time\",\n NZST: \"New Zealand Standard Time\",\n O: \"Oscar Time Zone\",\n OESZ: \"Osteuropäische Sommerzeit\",\n OEZ: \"Osteuropäische Zeit\",\n OMSST: \"Omsk Summer Time\",\n OMST: \"Omsk Standard Time\",\n ORAT: \"Oral Time\",\n P: \"Papa Time Zone\",\n PDT: \"Pacific Daylight Time\",\n PDST: \"Pacific Daylight Saving Time\",\n PET: \"Peru Time\",\n PETST: \"Kamchatka Summer Time\",\n PETT: \"Kamchatka Time\",\n PGT: \"Papua New Guinea Time\",\n PHOT: \"Phoenix Island Time\",\n PHT: \"Philippine Time\",\n PKT: \"Pakistan Standard Time\",\n PMDT: \"Pierre & Miquelon Daylight Time\",\n PMST: \"Pierre & Miquelon Standard Time\",\n PONT: \"Pohnpei Standard Time\",\n PST: \"Pacific Standard Time\",\n // PST: 'Pitcairn Standard Time',\n PT: \"Pacific Time\",\n PWT: \"Palau Time\",\n // PYST: 'Paraguay Summer Time',\n PYST: \"Pyongyang Standard Time\",\n // PYT: 'Paraguay Time',\n PYT: \"Pyongyang Time\",\n Q: \"Quebec Time Zone\",\n QYZT: \"Qyzylorda Time\",\n R: \"Romeo Time Zone\",\n RET: \"Reunion Time\",\n ROTT: \"Rothera Time\",\n S: \"Sierra Time Zone\",\n SAKT: \"Sakhalin Time\",\n SAMT: \"Samara Time\",\n SAMST: \"Samara Summer Time\",\n SAST: \"South Africa Standard Time\",\n SBT: \"Solomon Islands Time\",\n SCT: \"Seychelles Time\",\n SGT: \"Singapore Time\",\n SRET: \"Srednekolymsk Time\",\n SRT: \"Suriname Time\",\n SST: \"Samoa Standard Time\",\n SYOT: \"Syowa Time\",\n T: \"Tango Time Zone\",\n TAHT: \"Tahiti Time\",\n TFT: \"French Southern and Antarctic Time\",\n TJT: \"Tajikistan Time\",\n TKT: \"Tokelau Time\",\n TLT: \"East Timor Time\",\n TMT: \"Turkmenistan Time\",\n TOST: \"Tonga Summer Time\",\n TOT: \"Tonga Time\",\n TRT: \"Turkey Time\",\n tVT: \"Tuvalu Time\",\n U: \"Uniform Time Zone\",\n ULAST: \"Ulaanbaatar Summer Time\",\n ULAT: \"Ulaanbaatar Time\",\n UTC: \"Coordinated Universal Time\",\n UYST: \"Uruguay Summer Time\",\n UYT: \"Uruguay Time\",\n UZT: \"Uzbekistan Time\",\n V: \"Victor Time Zone\",\n VET: \"Venezuelan Standard Time\",\n VLAST: \"Vladivostok Summer Time\",\n VLAT: \"Vladivostok Time\",\n VOST: \"Vostok Time\",\n VUT: \"Vanuatu Time\",\n W: \"Whiskey Time Zone\",\n WAKT: \"Wake Time\",\n WARST: \"Western Argentine Summer Time\",\n WAST: \"West Africa Summer Time\",\n // WAT: 'Western Australia Time',\n WAT: \"West Africa Time\",\n // WAT: 'Western Australia Time',\n WDT: \"Western Daylight Time\",\n WEDT: \"Western European Daylight Time\",\n WEST: \"Western European Summer Time\",\n WESZ: \"Westeuropäische Sommerzeit\",\n WET: \"Western European Time\",\n WEZ: \"Westeuropäische Zeit\",\n WFT: \"Wallis and Futuna Time\",\n WGST: \"Western Greenland Summer Time\",\n WGT: \"West Greenland Time\",\n WIB: \"Western Indonesian Time\",\n WIT: \"Eastern Indonesian Time\",\n WITA: \"Central Indonesian Time\",\n WST: \"Western Standard Time\",\n // WST: 'West Samoa Time',\n // WST: 'Western Summer Time',\n WT: \"Western Sahara Standard Time\",\n X: \"X-ray Time Zone\",\n Y: \"Yankee Time Zone\",\n YAKST: \"Yakutsk Summer Time\",\n YAKT: \"Yakutsk Time\",\n YAPT: \"Yap Time\",\n YEKST: \"Yekaterinburg Summer Time\",\n YEKT: \"Yekaterinburg Time\",\n Z: \"Zulu Time Zone\"\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (abbreviations);\n\n//# sourceURL=webpack://@rangerrick/moment-javaformat/./src/abbreviations.ts?");
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ abbreviations: () => (/* binding */ abbreviations),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__),\n/* harmony export */ offsets: () => (/* binding */ offsets)\n/* harmony export */ });\n/*\n// Java 8 mappings:\nEST - -05:00\nHST - -10:00\nMST - -07:00\nACT - Australia/Darwin\nAET - Australia/Sydney\nAGT - America/Argentina/Buenos_Aires\nART - Africa/Cairo\nAST - America/Anchorage\nBET - America/Sao_Paulo\nBST - Asia/Dhaka\nCAT - Africa/Harare\nCNT - America/St_Johns\nCST - America/Chicago\nCTT - Asia/Shanghai\nEAT - Africa/Addis_Ababa\nECT - Europe/Paris\nIET - America/Indiana/Indianapolis\nIST - Asia/Kolkata\nJST - Asia/Tokyo\nMIT - Pacific/Apia\nNET - Asia/Yerevan\nNST - Pacific/Auckland\nPLT - Asia/Karachi\nPNT - America/Phoenix\nPRT - America/Puerto_Rico\nPST - America/Los_Angeles\nSST - Pacific/Guadalcanal\nVST - Asia/Ho_Chi_Minh\n*/\n\nconst offsets = {\n \"-720\": [\"AoE\", \"Y\"],\n // -12\n \"-660\": [\"NUT\", \"SST\", \"X\"],\n // -11\n \"-600\": [\"HST\", \"CKT\", \"TAHT\", \"W\"],\n // -10\n \"-570\": [\"MART\"],\n // -9:30\n \"-540\": [\"AKST\", \"HDT\", \"GAMT\", \"V\"],\n // -9\n \"-480\": [\"PST\", \"AKDT\", \"U\", \"PT\"],\n // -8\n \"-420\": [\"MST\", \"PDT\", \"T\", \"MT\", \"PT\"],\n // -7\n \"-360\": [\"CST\", \"MDT\", \"EAST\", \"GALT\", \"S\", \"CT\", \"MT\"],\n // -6\n \"-300\": [\"EST\", \"CDT\", \"ACT\", \"CIST\", \"COT\", \"CST\", \"EASST\", \"ECT\", \"PET\", \"R\", \"ET\", \"CT\"],\n // -5\n \"-240\": [\"EDT\", \"AST\", \"AMT\", \"BOT\", \"CIDST\", \"CLT\", \"FKT\", \"GYT\", \"VET\", \"Q\", \"AT\", \"ET\"],\n // -4\n \"-210\": [\"NST\"],\n // -3:30\n \"-180\": [\"UYT\", \"ADT\", \"AMST\", \"ART\", \"BRT\", \"CLST\", \"FKST\", \"GFT\", \"PMST\", \"ROTT\", \"SRT\", \"UYT\", \"WARST\", \"WGT\", \"P\", \"AT\"],\n // -3\n \"-150\": [\"NDT\"],\n // -2:30\n \"-120\": [\"GST\", \"BRST\", \"FNT\", \"GST\", \"PMDT\", \"UYST\", \"WGST\", \"O\"],\n // -2\n \"-60\": [\"CVT\", \"AZOT\", \"CVT\", \"EGT\", \"N\"],\n // -1\n \"0\": [\"UTC\", \"GMT\", \"AZOST\", \"EGST\", \"WET\", \"Z\", \"WT\"],\n // +/-0\n \"60\": [\"CET\", \"BST\", \"WAT\", \"WEST\", \"WST\", \"A\"],\n // +1\n \"120\": [\"CAT\", \"CEST\", \"EET\", \"SAST\", \"WAST\", \"B\"],\n // +2\n \"180\": [\"EAT\", \"EEST\", \"FET\", \"MSK\", \"SYOT\", \"TRT\", \"C\"],\n // +3\n \"210\": [\"IRST\"],\n // +3:30\n \"240\": [\"GET\", \"AZT\", \"KUYT\", \"MSD\", \"MUT\", \"RET\", \"SAMT\", \"SCT\", \"D\"],\n // +4\n \"270\": [\"AFT\", \"IRDT\"],\n // +4:30\n \"300\": [\"UZT\", \"AQTT\", \"AZST\", \"MAWT\", \"MVT\", \"ORAT\", \"PKT\", \"TFT\", \"TJT\", \"TMT\", \"YEKT\", \"E\"],\n // +5\n \"330\": [\"IST\"],\n // +5:30\n \"345\": [\"NPT\"],\n // +5:45\n \"360\": [\"BTT\", \"ALMT\", \"BTT\", \"IOT\", \"KGT\", \"OMST\", \"QYZT\", \"VOST\", \"YEKST\", \"F\"],\n // +6\n \"390\": [\"MMT\", \"CCT\"],\n // +6:30\n \"420\": [\"ICT\", \"CXT\", \"DAVT\", \"HOVT\", \"KRAT\", \"NOVST\", \"NOVT\", \"OMSST\", \"WIB\", \"G\"],\n // +7\n \"480\": [\"HKT\", \"AWST\", \"BNT\", \"CAST\", \"CHOT\", \"HOVST\", \"IRKT\", \"KRAST\", \"MYT\", \"PHT\", \"SGT\", \"ULAT\", \"WITA\", \"H\"],\n // +8\n \"510\": [\"PYT\"],\n // +8:30\n \"525\": [\"ACWST\"],\n // +8:45\n \"540\": [\"JST\", \"AWDT\", \"CHOST\", \"IRKST\", \"KST\", \"PWT\", \"TLT\", \"ULAST\", \"WIT\", \"YAKT\", \"I\"],\n // +9\n \"570\": [\"ACST\", \"ACT\"],\n // +9:30\n \"600\": [\"PGT\", \"AEST\", \"CHUT\", \"ChST\", \"DDUT\", \"VLAT\", \"YAKST\", \"YAPT\", \"K\", \"AET\"],\n // +10\n \"630\": [\"ACDT\", \"LHST\", \"ACT\"],\n // +10:30\n \"660\": [\"VUT\", \"AEDT\", \"KOST\", \"LHDT\", \"MAGT\", \"NCT\", \"NFT\", \"PONT\", \"SAKT\", \"SBT\", \"SRET\", \"VLAST\", \"L\", \"AET\"],\n // +11\n \"720\": [\"FJT\", \"ANAST\", \"ANAT\", \"GILT\", \"MAGST\", \"MHT\", \"NFDT\", \"NRT\", \"NZST\", \"PETST\", \"PETT\", \"TVT\", \"WAKT\", \"WFT\", \"M\"],\n // +12\n \"765\": [\"CHAST\"],\n // +12:45\n \"780\": [\"TOT\", \"FJST\", \"NZDT\", \"PHOT\", \"TKT\", \"TOT\"],\n // +13\n \"825\": [\"CHADT\"],\n // +13:45\n \"840\": [\"LINT\", \"TOST\", \"WST\"] // +14\n};\nconst abbreviations = {\n A: \"Alpha Time Zone\",\n ACDT: \"Australian Central Daylight Time\",\n ACST: \"Australian Central Standard Time\",\n // ACT: 'Acre Time',\n ACT: \"Australian Central Time\",\n ACWST: \"Australian Central Western Standard Time\",\n // ADT: 'Arabia Daylight Time',\n ADT: \"Atlantic Daylight Time\",\n ADST: \"Atlantic Daylight Saving Time\",\n AEDT: \"Australian Eastern Daylight Time\",\n AEST: \"Australian Eastern Standard Time\",\n AET: \"Australian Eastern Time\",\n AFT: \"Afghanistan Time\",\n AKDT: \"Alaska Daylight Time\",\n AKST: \"Alaska Standard Time\",\n ALMT: \"Alma-Ata Time\",\n AMDT: \"Armenia Daylight Time\",\n AMST: \"Amazon Summer Time\",\n // AMST: 'Armenia Summer Time',\n AMT: \"Amazon Time\",\n // AMT: 'Armenia Time',\n ANAST: \"Anadyr Summer Time\",\n ANAT: \"Anadyr Time\",\n AQTT: \"Aqtobe Time\",\n ART: \"Argentina Time\",\n // AST: 'Arabia Standard Time',\n AST: \"Atlantic Standard Time\",\n AT: \"Atlantic Time\",\n AWDT: \"Australian Western Daylight Time\",\n AWST: \"Australian Western Standard Time\",\n AZODT: \"Azores Daylight Time\",\n AZOST: \"Azores Summer Time\",\n AZOT: \"Azores Time\",\n AZST: \"Azerbaijan Summer Time\",\n AZT: \"Azerbaijan Time\",\n AoE: \"Anywhere on Earth\",\n B: \"Bravo Time Zone\",\n BDST: \"British Daylight Saving Time\",\n // BDT: 'British Daylight Time',\n BDT: \"Brunei Time\",\n BNT: \"Brunei Darussalam Time\",\n BOT: \"Bolivia Time\",\n BRST: \"Brasília Summer Time\",\n BRT: \"Brasília Time\",\n // BST: 'Bangladesh Standard Time',\n // BST: 'Bougainville Standard Time',\n BST: \"British Summer Time\",\n BT: \"Brazil Time\",\n BTT: \"Bhutan Time\",\n C: \"Charlie Time Zone\",\n CAST: \"Casey Time\",\n CAT: \"Central Africa Time\",\n CCT: \"Cocos Islands Time\",\n CDT: \"Central Daylight Time\",\n // CDT: 'Cuba Daylight Time',\n CDST: \"Central Daylight Savings Time\",\n CEDT: \"Central European Daylight Time\",\n CEST: \"Central European Summer Time\",\n CET: \"Central European Time\",\n CHADT: \"Chatham Island Daylight Time\",\n CHAST: \"Chatham Island Standard Time\",\n CHODT: \"Choibalsan Daylight Time\",\n CHODST: \"Choibalsan Daylight Saving Time\",\n CHOST: \"Choibalsan Summer Time\",\n CHOT: \"Choibalsan Time\",\n CHUT: \"Chuuk Time\",\n CIDST: \"Cayman Islands Daylight Saving Time\",\n CIST: \"Cayman Islands Standard Time\",\n CIT: \"Cayman Islands Time\",\n CKT: \"Cook Island Time\",\n CLDT: \"Chile Daylight Time\",\n CLST: \"Chile Summer Time\",\n CLT: \"Chile Standard Time\",\n COT: \"Colombia Time\",\n CST: \"Central Standard Time\",\n // CST: 'China Standard Time',\n // CST: 'Cuba Standard Time',\n CT: \"Central Time\",\n CVT: \"Cape Verde Time\",\n CXT: \"Christmas Island Time\",\n ChST: \"Chamorro Standard Time\",\n D: \"Delta Time Zone\",\n DAVT: \"Davis Time\",\n DDUT: \"Dumont-d'Urville Time\",\n E: \"Echo Time Zone\",\n EADT: \"Easter Island Daylight Time\",\n EASST: \"Easter Island Summer Time\",\n EAST: \"Easter Island Standard Time\",\n EAT: \"Eastern Africa Time\",\n ECST: \"European Central Summer Time\",\n ECT: \"Ecuador Time\",\n EDT: \"Eastern Daylight Time\",\n EDST: \"Eastern Daylight Saving Time\",\n EEDT: \"Eastern European Daylight Time\",\n EEST: \"Eastern European Summer Time\",\n EET: \"Eastern European Time\",\n EFATE: \"Efate Time\",\n EGST: \"Eastern Greenland Summer Time\",\n EGT: \"East Greenland Time\",\n EST: \"Eastern Standard Time\",\n ET: \"Eastern Time\",\n F: \"Foxtrot Time Zone\",\n FET: \"Further-Eastern European Time\",\n FJDT: \"Fiji Daylight Time\",\n FJST: \"Fiji Summer Time\",\n FJT: \"Fiji Time\",\n FKDT: \"Falkland Island Daylight Time\",\n FKST: \"Falkland Islands Summer Time\",\n FKT: \"Falkland Island Time\",\n FNT: \"Fernando de Noronha Time\",\n G: \"Golf Time Zone\",\n GALT: \"Galapagos Time\",\n GAMT: \"Gambier Time\",\n GET: \"Georgia Standard Time\",\n GFT: \"French Guiana Time\",\n GILT: \"Gilbert Island Time\",\n GMT: \"Greenwich Mean Time\",\n // GST: 'Gulf Standard Time',\n GST: \"South Georgia Time\",\n GT: \"Greenwich Time\",\n GYT: \"Guyana Time\",\n H: \"Hotel Time Zone\",\n HAA: \"Heure Avancée de l'Atlantique\",\n HAC: \"Heure Avancée du Centre\",\n HADT: \"Hawaii Daylight Time\",\n HAE: \"Heure Avancée de l'Est\",\n HAP: \"Heure Avancée du Pacifique\",\n HAST: \"Hawaii-Aleutian Standard Time\",\n HAR: \"Heure Avancée des Rocheuses\",\n HAT: \"Heure Avancée de Terre-Neuve\",\n HDT: \"Hawaii-Aleutian Daylight Time\",\n HLV: \"Hora Legal de Venezuela\",\n HNA: \"Heure Normale de l'Atlantique\",\n HNC: \"Heure Normale du Centre\",\n HNE: \"Heure Normale de l'Est\",\n HNP: \"Heure Normale du Pacifique\",\n HNR: \"Heure Normale des Rocheuses\",\n HNT: \"Heure Normale de Terre-Neuve\",\n HKT: \"Hong Kong Time\",\n HOVDT: \"Hovd Daylight Time\",\n HOVDST: \"Hovd Daylight Saving Time\",\n HOVST: \"Hovd Summer Time\",\n HOVT: \"Hovd Time\",\n HST: \"Hawaii Standard Time\",\n I: \"India Time Zone\",\n ICT: \"Indochina Time\",\n IDT: \"Israel Daylight Time\",\n IOT: \"Indian Chagos Time\",\n IRDT: \"Iran Daylight Time\",\n IRKST: \"Irkutsk Summer Time\",\n IRKT: \"Irkutsk Time\",\n IRST: \"Iran Standard Time\",\n IST: \"India Standard Time\",\n // IST: 'Irish Standard Time',\n // IST: 'Israel Standard Time',\n JST: \"Japan Standard Time\",\n K: \"Kilo Time Zone\",\n KGT: \"Kyrgyzstan Time\",\n KIT: \"Kerguelen (Islands) Time\",\n KOST: \"Kosrae Time\",\n KRAST: \"Krasnoyarsk Summer Time\",\n KRAT: \"Krasnoyarsk Time\",\n KST: \"Korea Standard Time\",\n KT: \"Korea Time\",\n KUYT: \"Kuybyshev Time\",\n L: \"Lima Time Zone\",\n LHDT: \"Lord Howe Daylight Time\",\n LHST: \"Lord Howe Standard Time\",\n LINT: \"Line Islands Time\",\n M: \"Mike Time Zone\",\n MAGST: \"Magadan Summer Time\",\n MAGT: \"Magadan Time\",\n MART: \"Marquesas Time\",\n MAWT: \"Mawson Time\",\n MCK: \"Moscow Time\",\n MDST: \"Mountain Daylight Saving Time\",\n MDT: \"Mountain Daylight Time\",\n MESZ: \"Mitteleuropäische Sommerzeit\",\n MEZ: \"Mitteleuropäische Zeit\",\n MHT: \"Marshall Islands Time\",\n MMT: \"Myanmar Time\",\n MST: \"Mountain Standard Time\",\n MSK: \"Moscow Standard Time\",\n MT: \"Mountain Time\",\n MUT: \"Mauritius Time\",\n MVT: \"Maldives Time\",\n MYT: \"Malaysia Time\",\n N: \"November Time Zone\",\n NACDT: \"North American Central Daylight Time\",\n NACST: \"North American Central Standard Time\",\n NAEDT: \"North American Eastern Daylight Time\",\n NAEST: \"North American Eastern Standard Time\",\n NAMDT: \"North American Mountain Daylight Time\",\n NAMST: \"North American Mountain Standard Time\",\n NAPDT: \"North American Pacific Daylight Time\",\n NAPST: \"North American Pacific Standard Time\",\n NCT: \"New Caledonia Time\",\n NDT: \"Newfoundland Daylight Time\",\n NFDT: \"Norfolk Daylight Time\",\n NFT: \"Norfolk Time\",\n NOVST: \"Novosibirsk Summer Time\",\n NOVT: \"Novosibirsk Time\",\n NPT: \"Nepal Time\",\n NRT: \"Nauru Time\",\n NST: \"Newfoundland Standard Time\",\n NUT: \"Niue Time\",\n NZDT: \"New Zealand Daylight Time\",\n NZST: \"New Zealand Standard Time\",\n O: \"Oscar Time Zone\",\n OESZ: \"Osteuropäische Sommerzeit\",\n OEZ: \"Osteuropäische Zeit\",\n OMSST: \"Omsk Summer Time\",\n OMST: \"Omsk Standard Time\",\n ORAT: \"Oral Time\",\n P: \"Papa Time Zone\",\n PDT: \"Pacific Daylight Time\",\n PDST: \"Pacific Daylight Saving Time\",\n PET: \"Peru Time\",\n PETST: \"Kamchatka Summer Time\",\n PETT: \"Kamchatka Time\",\n PGT: \"Papua New Guinea Time\",\n PHOT: \"Phoenix Island Time\",\n PHT: \"Philippine Time\",\n PKT: \"Pakistan Standard Time\",\n PMDT: \"Pierre & Miquelon Daylight Time\",\n PMST: \"Pierre & Miquelon Standard Time\",\n PONT: \"Pohnpei Standard Time\",\n PST: \"Pacific Standard Time\",\n // PST: 'Pitcairn Standard Time',\n PT: \"Pacific Time\",\n PWT: \"Palau Time\",\n // PYST: 'Paraguay Summer Time',\n PYST: \"Pyongyang Standard Time\",\n // PYT: 'Paraguay Time',\n PYT: \"Pyongyang Time\",\n Q: \"Quebec Time Zone\",\n QYZT: \"Qyzylorda Time\",\n R: \"Romeo Time Zone\",\n RET: \"Reunion Time\",\n ROTT: \"Rothera Time\",\n S: \"Sierra Time Zone\",\n SAKT: \"Sakhalin Time\",\n SAMT: \"Samara Time\",\n SAMST: \"Samara Summer Time\",\n SAST: \"South Africa Standard Time\",\n SBT: \"Solomon Islands Time\",\n SCT: \"Seychelles Time\",\n SGT: \"Singapore Time\",\n SRET: \"Srednekolymsk Time\",\n SRT: \"Suriname Time\",\n SST: \"Samoa Standard Time\",\n SYOT: \"Syowa Time\",\n T: \"Tango Time Zone\",\n TAHT: \"Tahiti Time\",\n TFT: \"French Southern and Antarctic Time\",\n TJT: \"Tajikistan Time\",\n TKT: \"Tokelau Time\",\n TLT: \"East Timor Time\",\n TMT: \"Turkmenistan Time\",\n TOST: \"Tonga Summer Time\",\n TOT: \"Tonga Time\",\n TRT: \"Turkey Time\",\n tVT: \"Tuvalu Time\",\n U: \"Uniform Time Zone\",\n ULAST: \"Ulaanbaatar Summer Time\",\n ULAT: \"Ulaanbaatar Time\",\n UTC: \"Coordinated Universal Time\",\n UYST: \"Uruguay Summer Time\",\n UYT: \"Uruguay Time\",\n UZT: \"Uzbekistan Time\",\n V: \"Victor Time Zone\",\n VET: \"Venezuelan Standard Time\",\n VLAST: \"Vladivostok Summer Time\",\n VLAT: \"Vladivostok Time\",\n VOST: \"Vostok Time\",\n VUT: \"Vanuatu Time\",\n W: \"Whiskey Time Zone\",\n WAKT: \"Wake Time\",\n WARST: \"Western Argentine Summer Time\",\n WAST: \"West Africa Summer Time\",\n // WAT: 'Western Australia Time',\n WAT: \"West Africa Time\",\n // WAT: 'Western Australia Time',\n WDT: \"Western Daylight Time\",\n WEDT: \"Western European Daylight Time\",\n WEST: \"Western European Summer Time\",\n WESZ: \"Westeuropäische Sommerzeit\",\n WET: \"Western European Time\",\n WEZ: \"Westeuropäische Zeit\",\n WFT: \"Wallis and Futuna Time\",\n WGST: \"Western Greenland Summer Time\",\n WGT: \"West Greenland Time\",\n WIB: \"Western Indonesian Time\",\n WIT: \"Eastern Indonesian Time\",\n WITA: \"Central Indonesian Time\",\n WST: \"Western Standard Time\",\n // WST: 'West Samoa Time',\n // WST: 'Western Summer Time',\n WT: \"Western Sahara Standard Time\",\n X: \"X-ray Time Zone\",\n Y: \"Yankee Time Zone\",\n YAKST: \"Yakutsk Summer Time\",\n YAKT: \"Yakutsk Time\",\n YAPT: \"Yap Time\",\n YEKST: \"Yekaterinburg Summer Time\",\n YEKT: \"Yekaterinburg Time\",\n Z: \"Zulu Time Zone\"\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (abbreviations);\n\n//# sourceURL=webpack://@rangerrick/moment-javaformat/./src/abbreviations.ts?\n}");

@@ -51,3 +51,3 @@ /***/ }),

eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ PaddedToken: () => (/* binding */ PaddedToken),\n/* harmony export */ \"default\": () => (/* binding */ DateTimeFormatter)\n/* harmony export */ });\n/* harmony import */ var _Formatter__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../Formatter */ \"./src/Formatter.ts\");\n// eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unused-vars\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\n//import { Moment } from 'moment-timezone';\n\n\nconst endZeroes = /:?00$/;\nconst matchReserved = /[A-Za-z]/;\nconst adConverter = moment => {\n return moment.year() > 0 ? \"AD\" : \"BC\";\n};\nconst findAbbreviation = moment => {\n const defaultAbbr = moment.zoneAbbr();\n if (defaultAbbr === \"UTC\" && moment.utcOffset() != 0) {\n return null;\n }\n return defaultAbbr;\n};\nconst javaToMoment = {\n // era\n G: adConverter,\n GG: adConverter,\n GGG: adConverter,\n GGGG: moment => {\n return moment.year() > 0 ? \"Anno Domini\" : \"Before Christ\";\n },\n GGGGG: moment => {\n return adConverter(moment).substring(0, 1);\n },\n // year\n u: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"YYYY\"), 1);\n },\n uu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YY\")), 2);\n },\n uuu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"YYYY\"), 3);\n },\n uuuu: \"YYYY\",\n uuuuu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"YYYY\"), 5);\n },\n uuuuuu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"YYYY\"), 6);\n },\n // year-of-era\n y: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"Y\"));\n },\n yy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YY\"));\n },\n yyy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YYYY\")), 3);\n },\n yyyy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YYYY\"));\n },\n yyyyy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YYYY\")), 5);\n },\n yyyyyy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YYYY\")), 6);\n },\n // day-of-year\n D: \"DDD\",\n DD: moment => {\n const ret = moment.format(\"DDD\");\n if (ret.length > 2) {\n throw new Error(\"Field DayOfYear cannot be printed as the value \" + ret + \" exceeds the maximum print width of 2\");\n }\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(ret, 2);\n },\n DDD: \"DDDD\",\n // DDDD throws an error in Java DateTimeFormatter\n\n // month-of-year\n M: \"M\",\n MM: \"MM\",\n MMM: \"MMM\",\n MMMM: \"MMMM\",\n MMMMM: moment => {\n return moment.format(\"MMMM\").substring(0, 1);\n },\n // month-of-year (numeric)\n L: \"M\",\n LL: \"MM\",\n LLL: \"M\",\n LLLL: \"M\",\n LLLLL: \"M\",\n // day-of-month\n d: \"D\",\n dd: \"DD\",\n // quarter-of-year\n Q: \"Q\",\n QQ: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"Q\"), 2);\n },\n QQQ: moment => {\n return \"Q\" + moment.format(\"Q\");\n },\n QQQQ: moment => {\n return moment.format(\"Qo\") + \" quarter\";\n },\n QQQQQ: \"Q\",\n // quarter-of-year\n q: \"Q\",\n qq: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"Q\"), 2);\n },\n qqq: \"Q\",\n qqqq: \"Q\",\n qqqqq: \"Q\",\n // week-based-year\n Y: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"gggg\"), 1);\n },\n YY: \"gg\",\n YYY: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"gggg\"), 3);\n },\n YYYY: \"gggg\",\n YYYYY: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"gggg\"), 5);\n },\n YYYYYY: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"gggg\"), 6);\n },\n // week-of-week-based-year\n w: \"w\",\n ww: \"ww\",\n // week-of-month (W) not supported\n W: null,\n WW: null,\n WWW: null,\n WWWW: null,\n // day-of-week\n E: \"ddd\",\n EE: \"ddd\",\n EEE: \"ddd\",\n EEEE: \"dddd\",\n EEEEE: moment => {\n return moment.format(\"dddd\").substring(0, 1);\n },\n // localized day-of-week (e)\n e: \"d\",\n ee: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"d\"), 2);\n },\n eee: \"ddd\",\n eeee: \"dddd\",\n eeeee: moment => {\n return moment.format(\"dddd\").substring(0, 1);\n },\n // localized day-of-week (c)\n c: \"d\",\n ccc: \"ddd\",\n cccc: \"dddd\",\n ccccc: moment => {\n // 5 c's = 0-indexed I guess?!?\n return String(parseInt(moment.format(\"d\"), 10) - 1);\n },\n // week of month (F) not supported\n\n // am-pm-of-day\n a: \"A\",\n // clock-hour-of-am-pm\n h: \"h\",\n hh: \"hh\",\n // hour-of-am-pm\n K: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.hour() % 12);\n },\n KK: moment => {\n const hour = (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.hour() % 12);\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(hour, 2);\n },\n // clock-hour-of-am-pm\n k: \"k\",\n kk: \"kk\",\n // hour-of-day\n H: \"H\",\n HH: \"HH\",\n // minute-of-hour\n m: \"m\",\n mm: \"mm\",\n // second-of-minute\n s: \"s\",\n ss: \"ss\",\n // fraction-of-second\n S: \"S\",\n SS: \"SS\",\n SSS: \"SSS\",\n SSSS: \"SSSS\",\n SSSSS: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"SSSS\"), 5);\n },\n SSSSSS: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"SSSS\"), 6);\n },\n // milli-of-day\n A: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.valueOf() - moment.clone().startOf(\"day\").valueOf(), 1);\n },\n AA: moment => {\n if (moment.isSame(moment.clone().startOf(\"day\"))) {\n // console.warn(moment.format() + ' is the same as ' + moment.clone().startOf('day').format());\n return \"00\";\n }\n return null;\n },\n AAA: moment => {\n if (moment.isSame(moment.clone().startOf(\"day\"))) {\n return \"000\";\n }\n return null;\n },\n AAAA: moment => {\n if (moment.isSame(moment.clone().startOf(\"day\"))) {\n return \"0000\";\n }\n return null;\n },\n AAAAA: moment => {\n if (moment.isSame(moment.clone().startOf(\"day\"))) {\n return \"00000\";\n }\n return null;\n },\n AAAAAA: moment => {\n if (moment.isSame(moment.clone().startOf(\"day\"))) {\n return \"000000\";\n }\n return null;\n },\n // nano-of-second (n) not supported\n\n // nano-of-day (N) not supported\n\n // time-zone ID\n VV: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n const tz = moment.tz();\n if (tz && tz.length > 0) {\n return tz;\n }\n return moment.format(\"Z\");\n },\n // time-zone name\n z: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n const abbr = findAbbreviation(moment);\n if (abbr) {\n return abbr;\n }\n return moment.format(\"Z\");\n },\n zz: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n const abbr = findAbbreviation(moment);\n if (abbr) {\n return abbr;\n }\n return moment.format(\"Z\");\n },\n zzz: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n const abbr = findAbbreviation(moment);\n if (abbr) {\n return abbr;\n }\n return moment.format(\"Z\");\n },\n zzzz: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n const abbr = findAbbreviation(moment);\n if (abbr) {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.getDescriptionForAbbreviation)(abbr);\n }\n return moment.format(\"Z\");\n },\n // localized zone-offset\n O: moment => {\n const offset = moment.utcOffset() / 60.0;\n if (offset === 0) {\n return \"GMT\";\n }\n const ret = moment.format(\"Z\").replace(endZeroes, \"\").replace(/^([+-])0/, \"$1\");\n return \"GMT\" + ret;\n },\n OOOO: moment => {\n const offset = moment.utcOffset() / 60.0;\n if (offset === 0) {\n return \"GMT\";\n }\n const ret = moment.format(\"Z\");\n return \"GMT\" + ret;\n },\n // zone-offset 'Z' for zero\n X: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n const ret = moment.format(\"ZZ\");\n if (ret.match(endZeroes)) {\n return ret.substr(0, 3);\n }\n return ret;\n },\n XX: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n return moment.format(\"ZZ\");\n },\n XXX: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n return moment.format(\"Z\");\n },\n XXXX: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n return moment.format(\"ZZ\");\n },\n XXXXX: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n return moment.format(\"Z\");\n },\n // zone-offset\n x: moment => {\n const ret = moment.format(\"ZZ\");\n if (ret.match(endZeroes)) {\n return ret.substr(0, 3);\n }\n return ret;\n },\n xx: \"ZZ\",\n xxx: \"Z\",\n xxxx: \"ZZ\",\n xxxxx: \"Z\",\n // zone-offset\n Z: moment => {\n if (moment.utcOffset() === 0) {\n return \"+0000\";\n }\n return moment.format(\"ZZ\");\n },\n ZZ: moment => {\n if (moment.utcOffset() === 0) {\n return \"+0000\";\n }\n return moment.format(\"ZZ\");\n },\n ZZZ: moment => {\n if (moment.utcOffset() === 0) {\n return \"+0000\";\n }\n return moment.format(\"ZZ\");\n },\n ZZZZ: moment => {\n if (moment.utcOffset() === 0) {\n return \"GMT\";\n }\n return \"GMT\" + moment.format(\"Z\");\n },\n ZZZZZ: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n return moment.format(\"Z\");\n }\n};\nclass PaddedToken extends _Formatter__WEBPACK_IMPORTED_MODULE_0__.Token {\n constructor(padding, padChar, value, count) {\n super(value, count);\n this.padding = padding;\n this.padChar = padChar;\n }\n format(input) {\n if (input.length > this.padding) {\n throw new Error(`Cannot format padding as formatted string \"${input}\" exceeds pad width of ${this.padding}.`);\n }\n const padded = this.padChar.repeat(this.padding) + input;\n return padded.substr(0 - this.padding);\n }\n}\nclass DateTimeFormatter extends _Formatter__WEBPACK_IMPORTED_MODULE_0__.Formatter {\n tokenize(formatString) {\n let padNextWidth = 0;\n let padNextChar = \" \";\n const ret = [];\n for (let pos = 0; pos < formatString.length; pos++) {\n let cur = formatString.charAt(pos);\n if (cur.match(matchReserved)) {\n let start = pos++;\n for (; pos < formatString.length && formatString.charAt(pos) === cur; pos++);\n let count = pos - start;\n\n // padding parsed\n if (cur === \"p\") {\n let pad = 0;\n if (pos < formatString.length) {\n cur = formatString.charAt(pos);\n if (cur.match(matchReserved)) {\n pad = count;\n start = pos++;\n for (; pos < formatString.length && formatString.charAt(pos) === cur; pos++); // short loop\n count = pos - start;\n }\n }\n if (pad === 0) {\n throw new Error(\"Pad letter 'p' must be followed by valid pad pattern: \" + formatString);\n }\n // pad and continue parsing\n padNextWidth = pad;\n padNextChar = \" \";\n }\n\n // main rules\n const translate = javaToMoment[cur.repeat(count)];\n if (translate === null) {\n throw new Error(`'${cur.repeat(count)}' cannot be converted to a moment format token; token is not implemented`);\n } else if (translate === undefined) {\n throw new Error(`'${cur.repeat(count)}' cannot be converted to a moment format token; unknown token`);\n } else {\n if (padNextWidth > 0) {\n ret.push(new PaddedToken(padNextWidth, padNextChar, cur, count));\n padNextWidth = 0;\n padNextChar = \" \";\n } else {\n ret.push(new _Formatter__WEBPACK_IMPORTED_MODULE_0__.Token(cur, count));\n }\n }\n pos--;\n } else if (cur === \"'\") {\n // parse literals\n const start = pos++;\n for (; pos < formatString.length; pos++) {\n if (formatString.charAt(pos) === \"'\") {\n if (pos + 1 < formatString.length && formatString.charAt(pos + 1) === \"'\") {\n pos++;\n } else {\n break; // end of literal\n }\n }\n }\n if (pos >= formatString.length) {\n throw new Error(`Pattern ends with an incomplete string literal: ${formatString}`);\n }\n const str = formatString.substring(start + 1, pos);\n if (str.length == 0) {\n ret.push(\"'\");\n } else {\n ret.push(str.replace(\"''\", \"'\"));\n }\n } else if (cur === \"[\") {\n throw new Error(`Optional patterns are not supported: ${cur}`);\n } else if (cur === \"]\") {\n throw new Error(`Optional patterns are not supported: ${cur}`);\n } else if (cur === \"{\" || cur === \"}\" || cur === \"#\") {\n throw new Error(`Pattern includes reserved character: '${cur}'`);\n } else {\n if (ret[ret.length - 1] instanceof _Formatter__WEBPACK_IMPORTED_MODULE_0__.Token) {\n ret.push(cur);\n } else {\n ret[ret.length - 1] += cur;\n }\n }\n }\n return ret;\n }\n\n /**\n * Convert a moment into a formatted date string, using the format tokens defined at: https://docs.oracle.com/javase/8/docs/api/java/time/format/DateTimeFormatter.html\n *\n * @param {Moment} moment - the moment to convert\n * @param {string} formatString - the format string\n */\n format(moment, formatString) {\n const parts = this.tokenize(formatString);\n const ret = [];\n for (const part of parts) {\n if (part instanceof _Formatter__WEBPACK_IMPORTED_MODULE_0__.Token) {\n const partString = part.toString();\n const translation = javaToMoment[partString];\n if (translation === undefined) {\n const err = new Error(`'${partString}' cannot be converted to a moment format token; bailing`);\n // console.error(err.message);\n throw err;\n } else {\n if (typeof translation === \"function\") {\n const result = translation(moment, partString);\n if (result === null) {\n const err = new Error(`'${partString}' cannot be converted to a moment format token; bailing`);\n // console.error(err.message);\n throw err;\n }\n ret.push(result);\n } else {\n ret.push(moment.format(translation));\n }\n }\n } else {\n ret.push(part);\n }\n }\n return ret.join(\"\");\n }\n}\n\n//# sourceURL=webpack://@rangerrick/moment-javaformat/./src/formats/DateTimeFormatter.ts?");
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ PaddedToken: () => (/* binding */ PaddedToken),\n/* harmony export */ \"default\": () => (/* binding */ DateTimeFormatter)\n/* harmony export */ });\n/* harmony import */ var _Formatter__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../Formatter */ \"./src/Formatter.ts\");\n// eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unused-vars\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\n//import { Moment } from 'moment-timezone';\n\n\nconst endZeroes = /:?00$/;\nconst matchReserved = /[A-Za-z]/;\nconst adConverter = moment => {\n return moment.year() > 0 ? \"AD\" : \"BC\";\n};\nconst findAbbreviation = moment => {\n const defaultAbbr = moment.zoneAbbr();\n if (defaultAbbr === \"UTC\" && moment.utcOffset() != 0) {\n return null;\n }\n return defaultAbbr;\n};\nconst javaToMoment = {\n // era\n G: adConverter,\n GG: adConverter,\n GGG: adConverter,\n GGGG: moment => {\n return moment.year() > 0 ? \"Anno Domini\" : \"Before Christ\";\n },\n GGGGG: moment => {\n return adConverter(moment).substring(0, 1);\n },\n // year\n u: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"YYYY\"), 1);\n },\n uu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YY\")), 2);\n },\n uuu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"YYYY\"), 3);\n },\n uuuu: \"YYYY\",\n uuuuu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"YYYY\"), 5);\n },\n uuuuuu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"YYYY\"), 6);\n },\n // year-of-era\n y: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"Y\"));\n },\n yy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YY\"));\n },\n yyy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YYYY\")), 3);\n },\n yyyy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YYYY\"));\n },\n yyyyy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YYYY\")), 5);\n },\n yyyyyy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YYYY\")), 6);\n },\n // day-of-year\n D: \"DDD\",\n DD: moment => {\n const ret = moment.format(\"DDD\");\n if (ret.length > 2) {\n throw new Error(\"Field DayOfYear cannot be printed as the value \" + ret + \" exceeds the maximum print width of 2\");\n }\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(ret, 2);\n },\n DDD: \"DDDD\",\n // DDDD throws an error in Java DateTimeFormatter\n\n // month-of-year\n M: \"M\",\n MM: \"MM\",\n MMM: \"MMM\",\n MMMM: \"MMMM\",\n MMMMM: moment => {\n return moment.format(\"MMMM\").substring(0, 1);\n },\n // month-of-year (numeric)\n L: \"M\",\n LL: \"MM\",\n LLL: \"M\",\n LLLL: \"M\",\n LLLLL: \"M\",\n // day-of-month\n d: \"D\",\n dd: \"DD\",\n // quarter-of-year\n Q: \"Q\",\n QQ: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"Q\"), 2);\n },\n QQQ: moment => {\n return \"Q\" + moment.format(\"Q\");\n },\n QQQQ: moment => {\n return moment.format(\"Qo\") + \" quarter\";\n },\n QQQQQ: \"Q\",\n // quarter-of-year\n q: \"Q\",\n qq: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"Q\"), 2);\n },\n qqq: \"Q\",\n qqqq: \"Q\",\n qqqqq: \"Q\",\n // week-based-year\n Y: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"gggg\"), 1);\n },\n YY: \"gg\",\n YYY: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"gggg\"), 3);\n },\n YYYY: \"gggg\",\n YYYYY: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"gggg\"), 5);\n },\n YYYYYY: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"gggg\"), 6);\n },\n // week-of-week-based-year\n w: \"w\",\n ww: \"ww\",\n // week-of-month (W) not supported\n W: null,\n WW: null,\n WWW: null,\n WWWW: null,\n // day-of-week\n E: \"ddd\",\n EE: \"ddd\",\n EEE: \"ddd\",\n EEEE: \"dddd\",\n EEEEE: moment => {\n return moment.format(\"dddd\").substring(0, 1);\n },\n // localized day-of-week (e)\n e: \"d\",\n ee: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"d\"), 2);\n },\n eee: \"ddd\",\n eeee: \"dddd\",\n eeeee: moment => {\n return moment.format(\"dddd\").substring(0, 1);\n },\n // localized day-of-week (c)\n c: \"d\",\n ccc: \"ddd\",\n cccc: \"dddd\",\n ccccc: moment => {\n // 5 c's = 0-indexed I guess?!?\n return String(parseInt(moment.format(\"d\"), 10) - 1);\n },\n // week of month (F) not supported\n\n // am-pm-of-day\n a: \"A\",\n // clock-hour-of-am-pm\n h: \"h\",\n hh: \"hh\",\n // hour-of-am-pm\n K: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.hour() % 12);\n },\n KK: moment => {\n const hour = (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.hour() % 12);\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(hour, 2);\n },\n // clock-hour-of-am-pm\n k: \"k\",\n kk: \"kk\",\n // hour-of-day\n H: \"H\",\n HH: \"HH\",\n // minute-of-hour\n m: \"m\",\n mm: \"mm\",\n // second-of-minute\n s: \"s\",\n ss: \"ss\",\n // fraction-of-second\n S: \"S\",\n SS: \"SS\",\n SSS: \"SSS\",\n SSSS: \"SSSS\",\n SSSSS: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"SSSS\"), 5);\n },\n SSSSSS: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"SSSS\"), 6);\n },\n // milli-of-day\n A: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.valueOf() - moment.clone().startOf(\"day\").valueOf(), 1);\n },\n AA: moment => {\n if (moment.isSame(moment.clone().startOf(\"day\"))) {\n // console.warn(moment.format() + ' is the same as ' + moment.clone().startOf('day').format());\n return \"00\";\n }\n return null;\n },\n AAA: moment => {\n if (moment.isSame(moment.clone().startOf(\"day\"))) {\n return \"000\";\n }\n return null;\n },\n AAAA: moment => {\n if (moment.isSame(moment.clone().startOf(\"day\"))) {\n return \"0000\";\n }\n return null;\n },\n AAAAA: moment => {\n if (moment.isSame(moment.clone().startOf(\"day\"))) {\n return \"00000\";\n }\n return null;\n },\n AAAAAA: moment => {\n if (moment.isSame(moment.clone().startOf(\"day\"))) {\n return \"000000\";\n }\n return null;\n },\n // nano-of-second (n) not supported\n\n // nano-of-day (N) not supported\n\n // time-zone ID\n VV: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n const tz = moment.tz();\n if (tz && tz.length > 0) {\n return tz;\n }\n return moment.format(\"Z\");\n },\n // time-zone name\n z: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n const abbr = findAbbreviation(moment);\n if (abbr) {\n return abbr;\n }\n return moment.format(\"Z\");\n },\n zz: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n const abbr = findAbbreviation(moment);\n if (abbr) {\n return abbr;\n }\n return moment.format(\"Z\");\n },\n zzz: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n const abbr = findAbbreviation(moment);\n if (abbr) {\n return abbr;\n }\n return moment.format(\"Z\");\n },\n zzzz: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n const abbr = findAbbreviation(moment);\n if (abbr) {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.getDescriptionForAbbreviation)(abbr);\n }\n return moment.format(\"Z\");\n },\n // localized zone-offset\n O: moment => {\n const offset = moment.utcOffset() / 60.0;\n if (offset === 0) {\n return \"GMT\";\n }\n const ret = moment.format(\"Z\").replace(endZeroes, \"\").replace(/^([+-])0/, \"$1\");\n return \"GMT\" + ret;\n },\n OOOO: moment => {\n const offset = moment.utcOffset() / 60.0;\n if (offset === 0) {\n return \"GMT\";\n }\n const ret = moment.format(\"Z\");\n return \"GMT\" + ret;\n },\n // zone-offset 'Z' for zero\n X: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n const ret = moment.format(\"ZZ\");\n if (ret.match(endZeroes)) {\n return ret.substr(0, 3);\n }\n return ret;\n },\n XX: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n return moment.format(\"ZZ\");\n },\n XXX: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n return moment.format(\"Z\");\n },\n XXXX: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n return moment.format(\"ZZ\");\n },\n XXXXX: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n return moment.format(\"Z\");\n },\n // zone-offset\n x: moment => {\n const ret = moment.format(\"ZZ\");\n if (ret.match(endZeroes)) {\n return ret.substr(0, 3);\n }\n return ret;\n },\n xx: \"ZZ\",\n xxx: \"Z\",\n xxxx: \"ZZ\",\n xxxxx: \"Z\",\n // zone-offset\n Z: moment => {\n if (moment.utcOffset() === 0) {\n return \"+0000\";\n }\n return moment.format(\"ZZ\");\n },\n ZZ: moment => {\n if (moment.utcOffset() === 0) {\n return \"+0000\";\n }\n return moment.format(\"ZZ\");\n },\n ZZZ: moment => {\n if (moment.utcOffset() === 0) {\n return \"+0000\";\n }\n return moment.format(\"ZZ\");\n },\n ZZZZ: moment => {\n if (moment.utcOffset() === 0) {\n return \"GMT\";\n }\n return \"GMT\" + moment.format(\"Z\");\n },\n ZZZZZ: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n return moment.format(\"Z\");\n }\n};\nclass PaddedToken extends _Formatter__WEBPACK_IMPORTED_MODULE_0__.Token {\n constructor(padding, padChar, value, count) {\n super(value, count);\n this.padding = padding;\n this.padChar = padChar;\n }\n format(input) {\n if (input.length > this.padding) {\n throw new Error(`Cannot format padding as formatted string \"${input}\" exceeds pad width of ${this.padding}.`);\n }\n const padded = this.padChar.repeat(this.padding) + input;\n return padded.substr(0 - this.padding);\n }\n}\nclass DateTimeFormatter extends _Formatter__WEBPACK_IMPORTED_MODULE_0__.Formatter {\n tokenize(formatString) {\n let padNextWidth = 0;\n let padNextChar = \" \";\n const ret = [];\n for (let pos = 0; pos < formatString.length; pos++) {\n let cur = formatString.charAt(pos);\n if (cur.match(matchReserved)) {\n let start = pos++;\n for (; pos < formatString.length && formatString.charAt(pos) === cur; pos++);\n let count = pos - start;\n\n // padding parsed\n if (cur === \"p\") {\n let pad = 0;\n if (pos < formatString.length) {\n cur = formatString.charAt(pos);\n if (cur.match(matchReserved)) {\n pad = count;\n start = pos++;\n for (; pos < formatString.length && formatString.charAt(pos) === cur; pos++); // short loop\n count = pos - start;\n }\n }\n if (pad === 0) {\n throw new Error(\"Pad letter 'p' must be followed by valid pad pattern: \" + formatString);\n }\n // pad and continue parsing\n padNextWidth = pad;\n padNextChar = \" \";\n }\n\n // main rules\n const translate = javaToMoment[cur.repeat(count)];\n if (translate === null) {\n throw new Error(`'${cur.repeat(count)}' cannot be converted to a moment format token; token is not implemented`);\n } else if (translate === undefined) {\n throw new Error(`'${cur.repeat(count)}' cannot be converted to a moment format token; unknown token`);\n } else {\n if (padNextWidth > 0) {\n ret.push(new PaddedToken(padNextWidth, padNextChar, cur, count));\n padNextWidth = 0;\n padNextChar = \" \";\n } else {\n ret.push(new _Formatter__WEBPACK_IMPORTED_MODULE_0__.Token(cur, count));\n }\n }\n pos--;\n } else if (cur === \"'\") {\n // parse literals\n const start = pos++;\n for (; pos < formatString.length; pos++) {\n if (formatString.charAt(pos) === \"'\") {\n if (pos + 1 < formatString.length && formatString.charAt(pos + 1) === \"'\") {\n pos++;\n } else {\n break; // end of literal\n }\n }\n }\n if (pos >= formatString.length) {\n throw new Error(`Pattern ends with an incomplete string literal: ${formatString}`);\n }\n const str = formatString.substring(start + 1, pos);\n if (str.length == 0) {\n ret.push(\"'\");\n } else {\n ret.push(str.replace(\"''\", \"'\"));\n }\n } else if (cur === \"[\") {\n throw new Error(`Optional patterns are not supported: ${cur}`);\n } else if (cur === \"]\") {\n throw new Error(`Optional patterns are not supported: ${cur}`);\n } else if (cur === \"{\" || cur === \"}\" || cur === \"#\") {\n throw new Error(`Pattern includes reserved character: '${cur}'`);\n } else {\n if (ret[ret.length - 1] instanceof _Formatter__WEBPACK_IMPORTED_MODULE_0__.Token) {\n ret.push(cur);\n } else {\n ret[ret.length - 1] += cur;\n }\n }\n }\n return ret;\n }\n\n /**\n * Convert a moment into a formatted date string, using the format tokens defined at: https://docs.oracle.com/javase/8/docs/api/java/time/format/DateTimeFormatter.html\n *\n * @param {Moment} moment - the moment to convert\n * @param {string} formatString - the format string\n */\n format(moment, formatString) {\n const parts = this.tokenize(formatString);\n const ret = [];\n for (const part of parts) {\n if (part instanceof _Formatter__WEBPACK_IMPORTED_MODULE_0__.Token) {\n const partString = part.toString();\n const translation = javaToMoment[partString];\n if (translation === undefined) {\n const err = new Error(`'${partString}' cannot be converted to a moment format token; bailing`);\n // console.error(err.message);\n throw err;\n } else {\n if (typeof translation === \"function\") {\n const result = translation(moment, partString);\n if (result === null) {\n const err = new Error(`'${partString}' cannot be converted to a moment format token; bailing`);\n // console.error(err.message);\n throw err;\n }\n ret.push(result);\n } else {\n ret.push(moment.format(translation));\n }\n }\n } else {\n ret.push(part);\n }\n }\n return ret.join(\"\");\n }\n}\n\n//# sourceURL=webpack://@rangerrick/moment-javaformat/./src/formats/DateTimeFormatter.ts?\n}");

@@ -62,3 +62,3 @@ /***/ }),

eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (/* binding */ SimpleDateFormat)\n/* harmony export */ });\n/* harmony import */ var _Formatter__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../Formatter */ \"./src/Formatter.ts\");\n// eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unused-vars\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\n//import { Moment } from 'moment-timezone';\n\n\nconst matchReserved = /[A-Za-z]/;\nconst eraFormatter = moment => {\n return moment.year() > 0 ? \"AD\" : \"BC\";\n};\nconst guessZoneInfo = moment => {\n let abbr = moment.zoneAbbr();\n const name = moment.zoneName();\n if (moment.tz) {\n if (!name || name === \"\") {\n // missing the zone name, probably can't find things right\n return null;\n }\n if (abbr === \"UTC\" && moment.utcOffset() !== 0) {\n // we only know the offset\n return null;\n }\n\n // return name;\n return {\n abbr: abbr,\n name: name,\n description: (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.getDescriptionForAbbreviation)(abbr)\n };\n }\n abbr = (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.getZoneForDateTime)(moment);\n if (abbr) {\n const match = (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.getDescriptionForAbbreviation)(abbr);\n if (match) {\n return {\n abbr: abbr,\n name: name,\n description: match\n };\n }\n }\n return null;\n};\nconst javaToMoment = {\n // Era designator\n G: eraFormatter,\n GG: eraFormatter,\n GGG: eraFormatter,\n GGGG: eraFormatter,\n GGGGG: eraFormatter,\n GGGGGG: eraFormatter,\n // Year\n y: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"Y\"));\n },\n yy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YY\"));\n },\n yyy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YYYY\")), 3);\n },\n yyyy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YYYY\"));\n },\n yyyyy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YYYY\")), 5);\n },\n yyyyyy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YYYY\")), 6);\n },\n // Week year\n Y: \"gggg\",\n YY: \"gg\",\n YYY: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"gggg\"), 3);\n },\n YYYY: \"gggg\",\n YYYYY: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"gggg\"), 5);\n },\n YYYYYY: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"gggg\"), 6);\n },\n // Month in year\n M: \"M\",\n MM: \"MM\",\n MMM: \"MMM\",\n MMMM: \"MMMM\",\n MMMMM: \"MMMM\",\n MMMMMM: \"MMMM\",\n // Week in year\n w: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"w\"), 1);\n },\n ww: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"w\"), 2);\n },\n www: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"w\"), 3);\n },\n wwww: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"w\"), 4);\n },\n wwwww: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"w\"), 5);\n },\n wwwwww: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"w\"), 6);\n },\n // Week in month (W) not supported\n W: null,\n WW: null,\n WWW: null,\n WWWW: null,\n // Day in year\n D: \"DDD\",\n DD: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"DDD\"), 2);\n },\n DDD: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"DDD\"), 3);\n },\n DDDD: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"DDD\"), 4);\n },\n DDDDD: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"DDD\"), 5);\n },\n DDDDDD: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"DDD\"), 6);\n },\n // Day in month\n d: \"D\",\n dd: \"DD\",\n ddd: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"D\"), 3);\n },\n dddd: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"D\"), 4);\n },\n ddddd: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"D\"), 5);\n },\n dddddd: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"D\"), 6);\n },\n // Day of week in month (F) not supported\n F: null,\n FF: null,\n FFF: null,\n FFFF: null,\n // Day name in week\n E: \"ddd\",\n EE: \"ddd\",\n EEE: \"ddd\",\n EEEE: \"dddd\",\n EEEEE: \"dddd\",\n EEEEEE: \"dddd\",\n // Day number of week\n u: \"E\",\n uu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"E\"), 2);\n },\n uuu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"E\"), 3);\n },\n uuuu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"E\"), 4);\n },\n uuuuu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"E\"), 5);\n },\n uuuuuu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"E\"), 6);\n },\n // Am/pm marker\n a: \"A\",\n aa: \"A\",\n aaa: \"A\",\n aaaa: \"A\",\n aaaaa: \"A\",\n aaaaaa: \"A\",\n // Hour in day (0-23)\n H: \"H\",\n HH: \"HH\",\n HHH: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"H\"), 3);\n },\n HHHH: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"H\"), 4);\n },\n HHHHH: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"H\"), 5);\n },\n HHHHHH: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"H\"), 6);\n },\n // Hour in day (1-24)\n k: \"k\",\n kk: \"kk\",\n kkk: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"k\"), 3);\n },\n kkkk: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"k\"), 4);\n },\n kkkkk: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"k\"), 5);\n },\n kkkkkk: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"k\"), 6);\n },\n // Hour in am/pm (0-11)\n // except java doesn't actually do this, it outputs the same as 'h'! (sigh)\n K: moment => {\n const asNumber = parseInt(moment.format(\"h\"), 10);\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(asNumber % 12);\n },\n KK: moment => {\n const asNumber = parseInt(moment.format(\"h\"), 10);\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(asNumber % 12), 2);\n },\n KKK: moment => {\n const asNumber = parseInt(moment.format(\"h\"), 10);\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(asNumber % 12), 3);\n },\n KKKK: moment => {\n const asNumber = parseInt(moment.format(\"h\"), 10);\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(asNumber % 12), 4);\n },\n KKKKK: moment => {\n const asNumber = parseInt(moment.format(\"h\"), 10);\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(asNumber % 12), 5);\n },\n KKKKKK: moment => {\n const asNumber = parseInt(moment.format(\"h\"), 10);\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(asNumber % 12), 6);\n },\n // Hour in am/pm (1-12)\n h: \"h\",\n hh: \"hh\",\n hhh: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"h\"), 3);\n },\n hhhh: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"h\"), 4);\n },\n hhhhh: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"h\"), 5);\n },\n hhhhhh: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"h\"), 6);\n },\n // Minute in hour\n m: \"m\",\n mm: \"mm\",\n mmm: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"m\"), 3);\n },\n mmmm: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"m\"), 4);\n },\n mmmmm: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"m\"), 5);\n },\n mmmmmm: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"m\"), 6);\n },\n // Second in minute\n s: \"s\",\n ss: \"ss\",\n sss: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"s\"), 3);\n },\n ssss: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"s\"), 4);\n },\n sssss: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"s\"), 5);\n },\n ssssss: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"s\"), 6);\n },\n // Millisecond\n S: \"S\",\n SS: \"SS\",\n SSS: \"SSS\",\n SSSS: \"SSSS\",\n SSSSS: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"SSSS\"), 5);\n },\n SSSSSS: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"SSSS\"), 6);\n },\n // Time zone (Pacific Standard Time; PST)\n z: moment => {\n const info = guessZoneInfo(moment);\n if (info) {\n return info.abbr;\n }\n return \"GMT\" + moment.format(\"Z\");\n },\n zz: moment => {\n const info = guessZoneInfo(moment);\n if (info) {\n return info.abbr;\n }\n return \"GMT\" + moment.format(\"Z\");\n },\n zzz: moment => {\n const info = guessZoneInfo(moment);\n if (info) {\n return info.abbr;\n }\n return \"GMT\" + moment.format(\"Z\");\n },\n zzzz: moment => {\n const info = guessZoneInfo(moment);\n if (info) {\n return info.description;\n }\n return \"GMT\" + moment.format(\"Z\");\n },\n zzzzz: moment => {\n const info = guessZoneInfo(moment);\n if (info) {\n return info.description;\n }\n return \"GMT\" + moment.format(\"Z\");\n },\n zzzzzz: moment => {\n const info = guessZoneInfo(moment);\n if (info) {\n return info.description;\n }\n return \"GMT\" + moment.format(\"Z\");\n },\n // Time zone (-0800)\n Z: \"ZZ\",\n ZZ: \"ZZ\",\n ZZZ: \"ZZ\",\n ZZZZ: \"ZZ\",\n ZZZZZ: \"ZZ\",\n ZZZZZZ: \"ZZ\",\n // Time zone (-08; -0800; -08:00)\n X: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n return moment.format(\"Z\").substr(0, 3);\n },\n XX: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n return moment.format(\"ZZ\");\n },\n XXX: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n return moment.format(\"Z\");\n }\n};\nclass SimpleDateFormat extends _Formatter__WEBPACK_IMPORTED_MODULE_0__.Formatter {\n tokenize(pattern) {\n const ret = [];\n const length = pattern.length;\n let inQuote = false;\n let count = 0;\n let lastTag = null;\n let tmpBuffer = null;\n const encode = (tag, length) => {\n const translate = javaToMoment[tag];\n if (translate === null) {\n throw new Error(`'${tag.repeat(length)}' cannot be converted to a moment format token; token is not implemented`);\n } else if (translate === undefined) {\n throw new Error(`'${tag.repeat(length)}' cannot be converted to a moment format token; unknown token`);\n }\n ret.push(new _Formatter__WEBPACK_IMPORTED_MODULE_0__.Token(tag, length));\n };\n const append = value => {\n if (ret[ret.length - 1] instanceof _Formatter__WEBPACK_IMPORTED_MODULE_0__.Token) {\n ret.push(value);\n } else {\n ret[ret.length - 1] += value;\n }\n };\n for (let i = 0; i < length; i++) {\n let c = pattern.charAt(i);\n if (c === \"'\") {\n // '' is treated as a single quote regardless of being\n // in a quoted section.\n if (i + 1 < length) {\n c = pattern.charAt(i + 1);\n if (c === \"'\") {\n i++;\n if (count != 0) {\n encode(lastTag, count);\n lastTag = null;\n count = 0;\n }\n if (inQuote) {\n tmpBuffer += c;\n } else {\n append(c);\n }\n continue;\n }\n }\n if (!inQuote) {\n if (count !== 0) {\n encode(lastTag, count);\n lastTag = null;\n count = 0;\n }\n tmpBuffer = \"\";\n inQuote = true;\n } else {\n append(tmpBuffer);\n inQuote = false;\n }\n continue;\n }\n if (inQuote) {\n tmpBuffer += c;\n continue;\n }\n if (!c.match(matchReserved)) {\n if (count !== 0) {\n encode(lastTag, count);\n lastTag = null;\n count = 0;\n }\n if (c.charCodeAt(0) < 128) {\n // In most cases, c would be a delimiter, such as ':'.\n append(c);\n } else {\n // Take any contiguous non-ASCII alphabet characters and\n // put them in a single TAG_QUOTE_CHARS.\n let j;\n for (j = i + 1; j < length; j++) {\n const d = pattern.charAt(j);\n if (d === \"'\" || d.match(matchReserved)) {\n break;\n }\n }\n for (; i < j; i++) {\n append(pattern.charAt(i));\n }\n i--;\n }\n continue;\n }\n const tag = javaToMoment[c];\n if (tag === undefined) {\n throw new Error(`Illegal pattern character '${c}'`);\n }\n if (lastTag === null || lastTag === c) {\n lastTag = c;\n count++;\n continue;\n }\n encode(lastTag, count);\n lastTag = c;\n count = 1;\n }\n if (inQuote) {\n throw new Error(\"Unterminated quote\");\n }\n if (count != 0) {\n encode(lastTag, count);\n }\n return ret;\n }\n\n /**\n * Convert a moment into a formatted date string, using the format tokens defined at: https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html\n *\n * @param {Moment} moment - the moment to convert\n * @param {string} formatString - the format string\n */\n format(moment, formatString) {\n const parts = this.tokenize(formatString);\n const ret = [];\n for (const part of parts) {\n if (part instanceof _Formatter__WEBPACK_IMPORTED_MODULE_0__.Token) {\n const partString = part.toString();\n const translation = javaToMoment[partString];\n if (translation === undefined) {\n throw new Error(`'${partString}' cannot be converted to a moment format token; unknown token`);\n } else {\n if (typeof translation === \"function\") {\n ret.push(translation(moment, partString));\n } else {\n ret.push(moment.format(translation));\n }\n }\n } else {\n ret.push(part);\n }\n }\n return ret.join(\"\");\n }\n}\n\n//# sourceURL=webpack://@rangerrick/moment-javaformat/./src/formats/SimpleDateFormat.ts?");
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (/* binding */ SimpleDateFormat)\n/* harmony export */ });\n/* harmony import */ var _Formatter__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../Formatter */ \"./src/Formatter.ts\");\n// eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unused-vars\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\n//import { Moment } from 'moment-timezone';\n\n\nconst matchReserved = /[A-Za-z]/;\nconst eraFormatter = moment => {\n return moment.year() > 0 ? \"AD\" : \"BC\";\n};\nconst guessZoneInfo = moment => {\n let abbr = moment.zoneAbbr();\n const name = moment.zoneName();\n if (moment.tz) {\n if (!name || name === \"\") {\n // missing the zone name, probably can't find things right\n return null;\n }\n if (abbr === \"UTC\" && moment.utcOffset() !== 0) {\n // we only know the offset\n return null;\n }\n\n // return name;\n return {\n abbr: abbr,\n name: name,\n description: (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.getDescriptionForAbbreviation)(abbr)\n };\n }\n abbr = (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.getZoneForDateTime)(moment);\n if (abbr) {\n const match = (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.getDescriptionForAbbreviation)(abbr);\n if (match) {\n return {\n abbr: abbr,\n name: name,\n description: match\n };\n }\n }\n return null;\n};\nconst javaToMoment = {\n // Era designator\n G: eraFormatter,\n GG: eraFormatter,\n GGG: eraFormatter,\n GGGG: eraFormatter,\n GGGGG: eraFormatter,\n GGGGGG: eraFormatter,\n // Year\n y: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"Y\"));\n },\n yy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YY\"));\n },\n yyy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YYYY\")), 3);\n },\n yyyy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YYYY\"));\n },\n yyyyy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YYYY\")), 5);\n },\n yyyyyy: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(moment.format(\"YYYY\")), 6);\n },\n // Week year\n Y: \"gggg\",\n YY: \"gg\",\n YYY: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"gggg\"), 3);\n },\n YYYY: \"gggg\",\n YYYYY: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"gggg\"), 5);\n },\n YYYYYY: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"gggg\"), 6);\n },\n // Month in year\n M: \"M\",\n MM: \"MM\",\n MMM: \"MMM\",\n MMMM: \"MMMM\",\n MMMMM: \"MMMM\",\n MMMMMM: \"MMMM\",\n // Week in year\n w: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"w\"), 1);\n },\n ww: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"w\"), 2);\n },\n www: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"w\"), 3);\n },\n wwww: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"w\"), 4);\n },\n wwwww: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"w\"), 5);\n },\n wwwwww: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"w\"), 6);\n },\n // Week in month (W) not supported\n W: null,\n WW: null,\n WWW: null,\n WWWW: null,\n // Day in year\n D: \"DDD\",\n DD: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"DDD\"), 2);\n },\n DDD: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"DDD\"), 3);\n },\n DDDD: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"DDD\"), 4);\n },\n DDDDD: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"DDD\"), 5);\n },\n DDDDDD: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"DDD\"), 6);\n },\n // Day in month\n d: \"D\",\n dd: \"DD\",\n ddd: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"D\"), 3);\n },\n dddd: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"D\"), 4);\n },\n ddddd: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"D\"), 5);\n },\n dddddd: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"D\"), 6);\n },\n // Day of week in month (F) not supported\n F: null,\n FF: null,\n FFF: null,\n FFFF: null,\n // Day name in week\n E: \"ddd\",\n EE: \"ddd\",\n EEE: \"ddd\",\n EEEE: \"dddd\",\n EEEEE: \"dddd\",\n EEEEEE: \"dddd\",\n // Day number of week\n u: \"E\",\n uu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"E\"), 2);\n },\n uuu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"E\"), 3);\n },\n uuuu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"E\"), 4);\n },\n uuuuu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"E\"), 5);\n },\n uuuuuu: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"E\"), 6);\n },\n // Am/pm marker\n a: \"A\",\n aa: \"A\",\n aaa: \"A\",\n aaaa: \"A\",\n aaaaa: \"A\",\n aaaaaa: \"A\",\n // Hour in day (0-23)\n H: \"H\",\n HH: \"HH\",\n HHH: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"H\"), 3);\n },\n HHHH: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"H\"), 4);\n },\n HHHHH: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"H\"), 5);\n },\n HHHHHH: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"H\"), 6);\n },\n // Hour in day (1-24)\n k: \"k\",\n kk: \"kk\",\n kkk: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"k\"), 3);\n },\n kkkk: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"k\"), 4);\n },\n kkkkk: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"k\"), 5);\n },\n kkkkkk: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"k\"), 6);\n },\n // Hour in am/pm (0-11)\n // except java doesn't actually do this, it outputs the same as 'h'! (sigh)\n K: moment => {\n const asNumber = parseInt(moment.format(\"h\"), 10);\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(asNumber % 12);\n },\n KK: moment => {\n const asNumber = parseInt(moment.format(\"h\"), 10);\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(asNumber % 12), 2);\n },\n KKK: moment => {\n const asNumber = parseInt(moment.format(\"h\"), 10);\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(asNumber % 12), 3);\n },\n KKKK: moment => {\n const asNumber = parseInt(moment.format(\"h\"), 10);\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(asNumber % 12), 4);\n },\n KKKKK: moment => {\n const asNumber = parseInt(moment.format(\"h\"), 10);\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(asNumber % 12), 5);\n },\n KKKKKK: moment => {\n const asNumber = parseInt(moment.format(\"h\"), 10);\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)((0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.toAbsString)(asNumber % 12), 6);\n },\n // Hour in am/pm (1-12)\n h: \"h\",\n hh: \"hh\",\n hhh: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"h\"), 3);\n },\n hhhh: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"h\"), 4);\n },\n hhhhh: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"h\"), 5);\n },\n hhhhhh: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"h\"), 6);\n },\n // Minute in hour\n m: \"m\",\n mm: \"mm\",\n mmm: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"m\"), 3);\n },\n mmmm: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"m\"), 4);\n },\n mmmmm: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"m\"), 5);\n },\n mmmmmm: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"m\"), 6);\n },\n // Second in minute\n s: \"s\",\n ss: \"ss\",\n sss: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"s\"), 3);\n },\n ssss: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"s\"), 4);\n },\n sssss: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"s\"), 5);\n },\n ssssss: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"s\"), 6);\n },\n // Millisecond\n S: \"S\",\n SS: \"SS\",\n SSS: \"SSS\",\n SSSS: \"SSSS\",\n SSSSS: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"SSSS\"), 5);\n },\n SSSSSS: moment => {\n return (0,_Formatter__WEBPACK_IMPORTED_MODULE_0__.zeroPad)(moment.format(\"SSSS\"), 6);\n },\n // Time zone (Pacific Standard Time; PST)\n z: moment => {\n const info = guessZoneInfo(moment);\n if (info) {\n return info.abbr;\n }\n return \"GMT\" + moment.format(\"Z\");\n },\n zz: moment => {\n const info = guessZoneInfo(moment);\n if (info) {\n return info.abbr;\n }\n return \"GMT\" + moment.format(\"Z\");\n },\n zzz: moment => {\n const info = guessZoneInfo(moment);\n if (info) {\n return info.abbr;\n }\n return \"GMT\" + moment.format(\"Z\");\n },\n zzzz: moment => {\n const info = guessZoneInfo(moment);\n if (info) {\n return info.description;\n }\n return \"GMT\" + moment.format(\"Z\");\n },\n zzzzz: moment => {\n const info = guessZoneInfo(moment);\n if (info) {\n return info.description;\n }\n return \"GMT\" + moment.format(\"Z\");\n },\n zzzzzz: moment => {\n const info = guessZoneInfo(moment);\n if (info) {\n return info.description;\n }\n return \"GMT\" + moment.format(\"Z\");\n },\n // Time zone (-0800)\n Z: \"ZZ\",\n ZZ: \"ZZ\",\n ZZZ: \"ZZ\",\n ZZZZ: \"ZZ\",\n ZZZZZ: \"ZZ\",\n ZZZZZZ: \"ZZ\",\n // Time zone (-08; -0800; -08:00)\n X: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n return moment.format(\"Z\").substr(0, 3);\n },\n XX: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n return moment.format(\"ZZ\");\n },\n XXX: moment => {\n if (moment.utcOffset() === 0) {\n return \"Z\";\n }\n return moment.format(\"Z\");\n }\n};\nclass SimpleDateFormat extends _Formatter__WEBPACK_IMPORTED_MODULE_0__.Formatter {\n tokenize(pattern) {\n const ret = [];\n const length = pattern.length;\n let inQuote = false;\n let count = 0;\n let lastTag = null;\n let tmpBuffer = null;\n const encode = (tag, length) => {\n const translate = javaToMoment[tag];\n if (translate === null) {\n throw new Error(`'${tag.repeat(length)}' cannot be converted to a moment format token; token is not implemented`);\n } else if (translate === undefined) {\n throw new Error(`'${tag.repeat(length)}' cannot be converted to a moment format token; unknown token`);\n }\n ret.push(new _Formatter__WEBPACK_IMPORTED_MODULE_0__.Token(tag, length));\n };\n const append = value => {\n if (ret[ret.length - 1] instanceof _Formatter__WEBPACK_IMPORTED_MODULE_0__.Token) {\n ret.push(value);\n } else {\n ret[ret.length - 1] += value;\n }\n };\n for (let i = 0; i < length; i++) {\n let c = pattern.charAt(i);\n if (c === \"'\") {\n // '' is treated as a single quote regardless of being\n // in a quoted section.\n if (i + 1 < length) {\n c = pattern.charAt(i + 1);\n if (c === \"'\") {\n i++;\n if (count != 0) {\n encode(lastTag, count);\n lastTag = null;\n count = 0;\n }\n if (inQuote) {\n tmpBuffer += c;\n } else {\n append(c);\n }\n continue;\n }\n }\n if (!inQuote) {\n if (count !== 0) {\n encode(lastTag, count);\n lastTag = null;\n count = 0;\n }\n tmpBuffer = \"\";\n inQuote = true;\n } else {\n append(tmpBuffer);\n inQuote = false;\n }\n continue;\n }\n if (inQuote) {\n tmpBuffer += c;\n continue;\n }\n if (!c.match(matchReserved)) {\n if (count !== 0) {\n encode(lastTag, count);\n lastTag = null;\n count = 0;\n }\n if (c.charCodeAt(0) < 128) {\n // In most cases, c would be a delimiter, such as ':'.\n append(c);\n } else {\n // Take any contiguous non-ASCII alphabet characters and\n // put them in a single TAG_QUOTE_CHARS.\n let j;\n for (j = i + 1; j < length; j++) {\n const d = pattern.charAt(j);\n if (d === \"'\" || d.match(matchReserved)) {\n break;\n }\n }\n for (; i < j; i++) {\n append(pattern.charAt(i));\n }\n i--;\n }\n continue;\n }\n const tag = javaToMoment[c];\n if (tag === undefined) {\n throw new Error(`Illegal pattern character '${c}'`);\n }\n if (lastTag === null || lastTag === c) {\n lastTag = c;\n count++;\n continue;\n }\n encode(lastTag, count);\n lastTag = c;\n count = 1;\n }\n if (inQuote) {\n throw new Error(\"Unterminated quote\");\n }\n if (count != 0) {\n encode(lastTag, count);\n }\n return ret;\n }\n\n /**\n * Convert a moment into a formatted date string, using the format tokens defined at: https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html\n *\n * @param {Moment} moment - the moment to convert\n * @param {string} formatString - the format string\n */\n format(moment, formatString) {\n const parts = this.tokenize(formatString);\n const ret = [];\n for (const part of parts) {\n if (part instanceof _Formatter__WEBPACK_IMPORTED_MODULE_0__.Token) {\n const partString = part.toString();\n const translation = javaToMoment[partString];\n if (translation === undefined) {\n throw new Error(`'${partString}' cannot be converted to a moment format token; unknown token`);\n } else {\n if (typeof translation === \"function\") {\n ret.push(translation(moment, partString));\n } else {\n ret.push(moment.format(translation));\n }\n }\n } else {\n ret.push(part);\n }\n }\n return ret.join(\"\");\n }\n}\n\n//# sourceURL=webpack://@rangerrick/moment-javaformat/./src/formats/SimpleDateFormat.ts?\n}");

@@ -73,3 +73,3 @@ /***/ }),

eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DateTimeFormatter: () => (/* reexport safe */ _formats_DateTimeFormatter__WEBPACK_IMPORTED_MODULE_1__[\"default\"]),\n/* harmony export */ SimpleDateFormat: () => (/* reexport safe */ _formats_SimpleDateFormat__WEBPACK_IMPORTED_MODULE_0__[\"default\"]),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__),\n/* harmony export */ register: () => (/* binding */ register)\n/* harmony export */ });\n/* harmony import */ var _formats_SimpleDateFormat__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./formats/SimpleDateFormat */ \"./src/formats/SimpleDateFormat.ts\");\n/* harmony import */ var _formats_DateTimeFormatter__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./formats/DateTimeFormatter */ \"./src/formats/DateTimeFormatter.ts\");\n\n\nconst register = function (moment) {\n let fatal = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n if (moment && moment.fn.zoneAbbr) {\n console.log(\"register: moment=%s, fatal=%s\", typeof moment, fatal);\n if (moment.tz) {\n console.log(\"Moment.js with timezone support detected; attaching Java format methods.\");\n } else {\n console.warn(\"Moment.js detected, but timezone support is missing. Some Java formatting features may not work as expected.\");\n }\n const sdf = new _formats_SimpleDateFormat__WEBPACK_IMPORTED_MODULE_0__[\"default\"]();\n const dtf = new _formats_DateTimeFormatter__WEBPACK_IMPORTED_MODULE_1__[\"default\"]();\n moment.fn.formatJavaSDF = function (formatString) {\n return sdf.format(this, formatString);\n };\n moment.fn.formatJavaDTF = function (formatString) {\n return dtf.format(this, formatString);\n };\n return moment;\n } else {\n console.error(\"Unable to attach Java format methods. Moment.js object was invalid.\");\n if (fatal) {\n throw new Error(\"Moment.js object was invalid.\");\n }\n }\n return undefined;\n};\n\n/*\n Attempt to register with global Moment.js object if it's found,\n preferring `moment-timezone` over `moment`.\n*/\n\nif (typeof window !== \"undefined\" && window?.moment) {\n register(window.moment, false);\n} else if (typeof global !== \"undefined\" && global?.moment) {\n register(global.moment, false);\n} else if (typeof window !== \"undefined\" && window) {\n try {\n const moment = __webpack_require__(/*! moment-timezone */ \"moment-timezone\");\n window.moment = register(moment, false);\n } catch {\n console.warn(\"Failed to load moment-timezone. Attempting fallback to moment.\");\n try {\n const moment = __webpack_require__(/*! moment */ \"moment\");\n window.moment = register(moment, false);\n } catch {\n console.warn(\"Failed to load moment. User will have to manually register.\");\n }\n }\n}\nlet m = undefined;\nif (typeof window !== \"undefined\") {\n m = window?.moment;\n}\nif (typeof m === \"undefined\" && typeof global !== \"undefined\") {\n m = global?.moment;\n}\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (m);\n\n\n//# sourceURL=webpack://@rangerrick/moment-javaformat/./src/index.js?");
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DateTimeFormatter: () => (/* reexport safe */ _formats_DateTimeFormatter__WEBPACK_IMPORTED_MODULE_1__[\"default\"]),\n/* harmony export */ SimpleDateFormat: () => (/* reexport safe */ _formats_SimpleDateFormat__WEBPACK_IMPORTED_MODULE_0__[\"default\"]),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__),\n/* harmony export */ register: () => (/* binding */ register)\n/* harmony export */ });\n/* harmony import */ var _formats_SimpleDateFormat__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./formats/SimpleDateFormat */ \"./src/formats/SimpleDateFormat.ts\");\n/* harmony import */ var _formats_DateTimeFormatter__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./formats/DateTimeFormatter */ \"./src/formats/DateTimeFormatter.ts\");\n\n\nconst register = (moment, fatal = true) => {\n if (moment && moment.fn.zoneAbbr) {\n console.log(\"register: moment=%s, fatal=%s\", typeof moment, fatal);\n if (moment.tz) {\n console.log(\"Moment.js with timezone support detected; attaching Java format methods.\");\n } else {\n console.warn(\"Moment.js detected, but timezone support is missing. Some Java formatting features may not work as expected.\");\n }\n const sdf = new _formats_SimpleDateFormat__WEBPACK_IMPORTED_MODULE_0__[\"default\"]();\n const dtf = new _formats_DateTimeFormatter__WEBPACK_IMPORTED_MODULE_1__[\"default\"]();\n moment.fn.formatJavaSDF = function (formatString) {\n return sdf.format(this, formatString);\n };\n moment.fn.formatJavaDTF = function (formatString) {\n return dtf.format(this, formatString);\n };\n return moment;\n } else {\n console.error(\"Unable to attach Java format methods. Moment.js object was invalid.\");\n if (fatal) {\n throw new Error(\"Moment.js object was invalid.\");\n }\n }\n return undefined;\n};\n\n/*\n Attempt to register with global Moment.js object if it's found,\n preferring `moment-timezone` over `moment`.\n*/\n\nif (typeof window !== \"undefined\" && window?.moment) {\n register(window.moment, false);\n} else if (typeof global !== \"undefined\" && global?.moment) {\n register(global.moment, false);\n} else if (typeof window !== \"undefined\" && window) {\n try {\n const moment = __webpack_require__(/*! moment-timezone */ \"moment-timezone\");\n window.moment = register(moment, false);\n } catch {\n console.warn(\"Failed to load moment-timezone. Attempting fallback to moment.\");\n try {\n const moment = __webpack_require__(/*! moment */ \"moment\");\n window.moment = register(moment, false);\n } catch {\n console.warn(\"Failed to load moment. User will have to manually register.\");\n }\n }\n}\nlet m = undefined;\nif (typeof window !== \"undefined\") {\n m = window.moment;\n}\nif (typeof m === \"undefined\" && typeof global !== \"undefined\") {\n m = global.moment;\n}\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (m);\n\n// eslint-disable-next-line no-barrel-files/no-barrel-files\n\n\n//# sourceURL=webpack://@rangerrick/moment-javaformat/./src/index.js?\n}");

@@ -76,0 +76,0 @@ /***/ }),

@@ -1,2 +0,2 @@

!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var a=t();for(var r in a)("object"==typeof exports?exports:e)[r]=a[r]}}(global,(()=>(()=>{"use strict";var e={716:e=>{e.exports=require("moment")},812:e=>{e.exports=require("moment-timezone")}},t={};function a(r){var T=t[r];if(void 0!==T)return T.exports;var n=t[r]={exports:{}};return e[r](n,n.exports,a),n.exports}a.d=(e,t)=>{for(var r in t)a.o(t,r)&&!a.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},a.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var r={};a.d(r,{default:()=>p});const T={"-720":["AoE","Y"],"-660":["NUT","SST","X"],"-600":["HST","CKT","TAHT","W"],"-570":["MART"],"-540":["AKST","HDT","GAMT","V"],"-480":["PST","AKDT","U","PT"],"-420":["MST","PDT","T","MT","PT"],"-360":["CST","MDT","EAST","GALT","S","CT","MT"],"-300":["EST","CDT","ACT","CIST","COT","CST","EASST","ECT","PET","R","ET","CT"],"-240":["EDT","AST","AMT","BOT","CIDST","CLT","FKT","GYT","VET","Q","AT","ET"],"-210":["NST"],"-180":["UYT","ADT","AMST","ART","BRT","CLST","FKST","GFT","PMST","ROTT","SRT","UYT","WARST","WGT","P","AT"],"-150":["NDT"],"-120":["GST","BRST","FNT","GST","PMDT","UYST","WGST","O"],"-60":["CVT","AZOT","CVT","EGT","N"],0:["UTC","GMT","AZOST","EGST","WET","Z","WT"],60:["CET","BST","WAT","WEST","WST","A"],120:["CAT","CEST","EET","SAST","WAST","B"],180:["EAT","EEST","FET","MSK","SYOT","TRT","C"],210:["IRST"],240:["GET","AZT","KUYT","MSD","MUT","RET","SAMT","SCT","D"],270:["AFT","IRDT"],300:["UZT","AQTT","AZST","MAWT","MVT","ORAT","PKT","TFT","TJT","TMT","YEKT","E"],330:["IST"],345:["NPT"],360:["BTT","ALMT","BTT","IOT","KGT","OMST","QYZT","VOST","YEKST","F"],390:["MMT","CCT"],420:["ICT","CXT","DAVT","HOVT","KRAT","NOVST","NOVT","OMSST","WIB","G"],480:["HKT","AWST","BNT","CAST","CHOT","HOVST","IRKT","KRAST","MYT","PHT","SGT","ULAT","WITA","H"],510:["PYT"],525:["ACWST"],540:["JST","AWDT","CHOST","IRKST","KST","PWT","TLT","ULAST","WIT","YAKT","I"],570:["ACST","ACT"],600:["PGT","AEST","CHUT","ChST","DDUT","VLAT","YAKST","YAPT","K","AET"],630:["ACDT","LHST","ACT"],660:["VUT","AEDT","KOST","LHDT","MAGT","NCT","NFT","PONT","SAKT","SBT","SRET","VLAST","L","AET"],720:["FJT","ANAST","ANAT","GILT","MAGST","MHT","NFDT","NRT","NZST","PETST","PETT","TVT","WAKT","WFT","M"],765:["CHAST"],780:["TOT","FJST","NZDT","PHOT","TKT","TOT"],825:["CHADT"],840:["LINT","TOST","WST"]},n={A:"Alpha Time Zone",ACDT:"Australian Central Daylight Time",ACST:"Australian Central Standard Time",ACT:"Australian Central Time",ACWST:"Australian Central Western Standard Time",ADT:"Atlantic Daylight Time",ADST:"Atlantic Daylight Saving Time",AEDT:"Australian Eastern Daylight Time",AEST:"Australian Eastern Standard Time",AET:"Australian Eastern Time",AFT:"Afghanistan Time",AKDT:"Alaska Daylight Time",AKST:"Alaska Standard Time",ALMT:"Alma-Ata Time",AMDT:"Armenia Daylight Time",AMST:"Amazon Summer Time",AMT:"Amazon Time",ANAST:"Anadyr Summer Time",ANAT:"Anadyr Time",AQTT:"Aqtobe Time",ART:"Argentina Time",AST:"Atlantic Standard Time",AT:"Atlantic Time",AWDT:"Australian Western Daylight Time",AWST:"Australian Western Standard Time",AZODT:"Azores Daylight Time",AZOST:"Azores Summer Time",AZOT:"Azores Time",AZST:"Azerbaijan Summer Time",AZT:"Azerbaijan Time",AoE:"Anywhere on Earth",B:"Bravo Time Zone",BDST:"British Daylight Saving Time",BDT:"Brunei Time",BNT:"Brunei Darussalam Time",BOT:"Bolivia Time",BRST:"Brasília Summer Time",BRT:"Brasília Time",BST:"British Summer Time",BT:"Brazil Time",BTT:"Bhutan Time",C:"Charlie Time Zone",CAST:"Casey Time",CAT:"Central Africa Time",CCT:"Cocos Islands Time",CDT:"Central Daylight Time",CDST:"Central Daylight Savings Time",CEDT:"Central European Daylight Time",CEST:"Central European Summer Time",CET:"Central European Time",CHADT:"Chatham Island Daylight Time",CHAST:"Chatham Island Standard Time",CHODT:"Choibalsan Daylight Time",CHODST:"Choibalsan Daylight Saving Time",CHOST:"Choibalsan Summer Time",CHOT:"Choibalsan Time",CHUT:"Chuuk Time",CIDST:"Cayman Islands Daylight Saving Time",CIST:"Cayman Islands Standard Time",CIT:"Cayman Islands Time",CKT:"Cook Island Time",CLDT:"Chile Daylight Time",CLST:"Chile Summer Time",CLT:"Chile Standard Time",COT:"Colombia Time",CST:"Central Standard Time",CT:"Central Time",CVT:"Cape Verde Time",CXT:"Christmas Island Time",ChST:"Chamorro Standard Time",D:"Delta Time Zone",DAVT:"Davis Time",DDUT:"Dumont-d'Urville Time",E:"Echo Time Zone",EADT:"Easter Island Daylight Time",EASST:"Easter Island Summer Time",EAST:"Easter Island Standard Time",EAT:"Eastern Africa Time",ECST:"European Central Summer Time",ECT:"Ecuador Time",EDT:"Eastern Daylight Time",EDST:"Eastern Daylight Saving Time",EEDT:"Eastern European Daylight Time",EEST:"Eastern European Summer Time",EET:"Eastern European Time",EFATE:"Efate Time",EGST:"Eastern Greenland Summer Time",EGT:"East Greenland Time",EST:"Eastern Standard Time",ET:"Eastern Time",F:"Foxtrot Time Zone",FET:"Further-Eastern European Time",FJDT:"Fiji Daylight Time",FJST:"Fiji Summer Time",FJT:"Fiji Time",FKDT:"Falkland Island Daylight Time",FKST:"Falkland Islands Summer Time",FKT:"Falkland Island Time",FNT:"Fernando de Noronha Time",G:"Golf Time Zone",GALT:"Galapagos Time",GAMT:"Gambier Time",GET:"Georgia Standard Time",GFT:"French Guiana Time",GILT:"Gilbert Island Time",GMT:"Greenwich Mean Time",GST:"South Georgia Time",GT:"Greenwich Time",GYT:"Guyana Time",H:"Hotel Time Zone",HAA:"Heure Avancée de l'Atlantique",HAC:"Heure Avancée du Centre",HADT:"Hawaii Daylight Time",HAE:"Heure Avancée de l'Est",HAP:"Heure Avancée du Pacifique",HAST:"Hawaii-Aleutian Standard Time",HAR:"Heure Avancée des Rocheuses",HAT:"Heure Avancée de Terre-Neuve",HDT:"Hawaii-Aleutian Daylight Time",HLV:"Hora Legal de Venezuela",HNA:"Heure Normale de l'Atlantique",HNC:"Heure Normale du Centre",HNE:"Heure Normale de l'Est",HNP:"Heure Normale du Pacifique",HNR:"Heure Normale des Rocheuses",HNT:"Heure Normale de Terre-Neuve",HKT:"Hong Kong Time",HOVDT:"Hovd Daylight Time",HOVDST:"Hovd Daylight Saving Time",HOVST:"Hovd Summer Time",HOVT:"Hovd Time",HST:"Hawaii Standard Time",I:"India Time Zone",ICT:"Indochina Time",IDT:"Israel Daylight Time",IOT:"Indian Chagos Time",IRDT:"Iran Daylight Time",IRKST:"Irkutsk Summer Time",IRKT:"Irkutsk Time",IRST:"Iran Standard Time",IST:"India Standard Time",JST:"Japan Standard Time",K:"Kilo Time Zone",KGT:"Kyrgyzstan Time",KIT:"Kerguelen (Islands) Time",KOST:"Kosrae Time",KRAST:"Krasnoyarsk Summer Time",KRAT:"Krasnoyarsk Time",KST:"Korea Standard Time",KT:"Korea Time",KUYT:"Kuybyshev Time",L:"Lima Time Zone",LHDT:"Lord Howe Daylight Time",LHST:"Lord Howe Standard Time",LINT:"Line Islands Time",M:"Mike Time Zone",MAGST:"Magadan Summer Time",MAGT:"Magadan Time",MART:"Marquesas Time",MAWT:"Mawson Time",MCK:"Moscow Time",MDST:"Mountain Daylight Saving Time",MDT:"Mountain Daylight Time",MESZ:"Mitteleuropäische Sommerzeit",MEZ:"Mitteleuropäische Zeit",MHT:"Marshall Islands Time",MMT:"Myanmar Time",MST:"Mountain Standard Time",MSK:"Moscow Standard Time",MT:"Mountain Time",MUT:"Mauritius Time",MVT:"Maldives Time",MYT:"Malaysia Time",N:"November Time Zone",NACDT:"North American Central Daylight Time",NACST:"North American Central Standard Time",NAEDT:"North American Eastern Daylight Time",NAEST:"North American Eastern Standard Time",NAMDT:"North American Mountain Daylight Time",NAMST:"North American Mountain Standard Time",NAPDT:"North American Pacific Daylight Time",NAPST:"North American Pacific Standard Time",NCT:"New Caledonia Time",NDT:"Newfoundland Daylight Time",NFDT:"Norfolk Daylight Time",NFT:"Norfolk Time",NOVST:"Novosibirsk Summer Time",NOVT:"Novosibirsk Time",NPT:"Nepal Time",NRT:"Nauru Time",NST:"Newfoundland Standard Time",NUT:"Niue Time",NZDT:"New Zealand Daylight Time",NZST:"New Zealand Standard Time",O:"Oscar Time Zone",OESZ:"Osteuropäische Sommerzeit",OEZ:"Osteuropäische Zeit",OMSST:"Omsk Summer Time",OMST:"Omsk Standard Time",ORAT:"Oral Time",P:"Papa Time Zone",PDT:"Pacific Daylight Time",PDST:"Pacific Daylight Saving Time",PET:"Peru Time",PETST:"Kamchatka Summer Time",PETT:"Kamchatka Time",PGT:"Papua New Guinea Time",PHOT:"Phoenix Island Time",PHT:"Philippine Time",PKT:"Pakistan Standard Time",PMDT:"Pierre & Miquelon Daylight Time",PMST:"Pierre & Miquelon Standard Time",PONT:"Pohnpei Standard Time",PST:"Pacific Standard Time",PT:"Pacific Time",PWT:"Palau Time",PYST:"Pyongyang Standard Time",PYT:"Pyongyang Time",Q:"Quebec Time Zone",QYZT:"Qyzylorda Time",R:"Romeo Time Zone",RET:"Reunion Time",ROTT:"Rothera Time",S:"Sierra Time Zone",SAKT:"Sakhalin Time",SAMT:"Samara Time",SAMST:"Samara Summer Time",SAST:"South Africa Standard Time",SBT:"Solomon Islands Time",SCT:"Seychelles Time",SGT:"Singapore Time",SRET:"Srednekolymsk Time",SRT:"Suriname Time",SST:"Samoa Standard Time",SYOT:"Syowa Time",T:"Tango Time Zone",TAHT:"Tahiti Time",TFT:"French Southern and Antarctic Time",TJT:"Tajikistan Time",TKT:"Tokelau Time",TLT:"East Timor Time",TMT:"Turkmenistan Time",TOST:"Tonga Summer Time",TOT:"Tonga Time",TRT:"Turkey Time",tVT:"Tuvalu Time",U:"Uniform Time Zone",ULAST:"Ulaanbaatar Summer Time",ULAT:"Ulaanbaatar Time",UTC:"Coordinated Universal Time",UYST:"Uruguay Summer Time",UYT:"Uruguay Time",UZT:"Uzbekistan Time",V:"Victor Time Zone",VET:"Venezuelan Standard Time",VLAST:"Vladivostok Summer Time",VLAT:"Vladivostok Time",VOST:"Vostok Time",VUT:"Vanuatu Time",W:"Whiskey Time Zone",WAKT:"Wake Time",WARST:"Western Argentine Summer Time",WAST:"West Africa Summer Time",WAT:"West Africa Time",WDT:"Western Daylight Time",WEDT:"Western European Daylight Time",WEST:"Western European Summer Time",WESZ:"Westeuropäische Sommerzeit",WET:"Western European Time",WEZ:"Westeuropäische Zeit",WFT:"Wallis and Futuna Time",WGST:"Western Greenland Summer Time",WGT:"West Greenland Time",WIB:"Western Indonesian Time",WIT:"Eastern Indonesian Time",WITA:"Central Indonesian Time",WST:"Western Standard Time",WT:"Western Sahara Standard Time",X:"X-ray Time Zone",Y:"Yankee Time Zone",YAKST:"Yakutsk Summer Time",YAKT:"Yakutsk Time",YAPT:"Yap Time",YEKST:"Yekaterinburg Summer Time",YEKT:"Yekaterinburg Time",Z:"Zulu Time Zone"},i={},m=e=>n[e]?n[e]:null,o=e=>{const t=moment(e).utcOffset();if(!i[t]){const e=(e=>{if(!moment.tz)return null;const t=moment.tz.guess(),a=t?moment.tz(t).format("z"):null,r=T[String(e)];return r?r.indexOf(a)>=0?a:r[0]:null})(t);e?i[t]=e:console.warn("- unhandled offset: "+t)}return i[t]||null},s=e=>Number.isInteger(e)?String(Math.abs(e)):e.replace(/^-/,""),l=(e,t)=>{const a=s(e);return a.length>=t?String(e):(a!==e?"-":"")+("0".repeat(t)+a).substr(0-t)};class u{count=0;constructor(e,t){if(1!=e.length)throw new Error("You must provide a single character when creating a token!");this.token=e,this.count=void 0===t?1:t}increment(){return this.count++,this.count}equals(e){return this.token===e.token&&this.count===e.count}toString(){return this.token.repeat(this.count)}}class S{}const d=/[A-Za-z]/,f=e=>e.year()>0?"AD":"BC",c=e=>{let t=e.zoneAbbr();const a=e.zoneName();if(e.tz)return a&&""!==a?"UTC"===t&&0!==e.utcOffset()?null:{abbr:t,name:a,description:m(t)}:null;if(t=o(e),t){const e=m(t);if(e)return{abbr:t,name:a,description:e}}return null},h={G:f,GG:f,GGG:f,GGGG:f,GGGGG:f,GGGGGG:f,y:e=>s(e.format("Y")),yy:e=>s(e.format("YY")),yyy:e=>l(s(e.format("YYYY")),3),yyyy:e=>s(e.format("YYYY")),yyyyy:e=>l(s(e.format("YYYY")),5),yyyyyy:e=>l(s(e.format("YYYY")),6),Y:"gggg",YY:"gg",YYY:e=>l(e.format("gggg"),3),YYYY:"gggg",YYYYY:e=>l(e.format("gggg"),5),YYYYYY:e=>l(e.format("gggg"),6),M:"M",MM:"MM",MMM:"MMM",MMMM:"MMMM",MMMMM:"MMMM",MMMMMM:"MMMM",w:e=>l(e.format("w"),1),ww:e=>l(e.format("w"),2),www:e=>l(e.format("w"),3),wwww:e=>l(e.format("w"),4),wwwww:e=>l(e.format("w"),5),wwwwww:e=>l(e.format("w"),6),W:null,WW:null,WWW:null,WWWW:null,D:"DDD",DD:e=>l(e.format("DDD"),2),DDD:e=>l(e.format("DDD"),3),DDDD:e=>l(e.format("DDD"),4),DDDDD:e=>l(e.format("DDD"),5),DDDDDD:e=>l(e.format("DDD"),6),d:"D",dd:"DD",ddd:e=>l(e.format("D"),3),dddd:e=>l(e.format("D"),4),ddddd:e=>l(e.format("D"),5),dddddd:e=>l(e.format("D"),6),F:null,FF:null,FFF:null,FFFF:null,E:"ddd",EE:"ddd",EEE:"ddd",EEEE:"dddd",EEEEE:"dddd",EEEEEE:"dddd",u:"E",uu:e=>l(e.format("E"),2),uuu:e=>l(e.format("E"),3),uuuu:e=>l(e.format("E"),4),uuuuu:e=>l(e.format("E"),5),uuuuuu:e=>l(e.format("E"),6),a:"A",aa:"A",aaa:"A",aaaa:"A",aaaaa:"A",aaaaaa:"A",H:"H",HH:"HH",HHH:e=>l(e.format("H"),3),HHHH:e=>l(e.format("H"),4),HHHHH:e=>l(e.format("H"),5),HHHHHH:e=>l(e.format("H"),6),k:"k",kk:"kk",kkk:e=>l(e.format("k"),3),kkkk:e=>l(e.format("k"),4),kkkkk:e=>l(e.format("k"),5),kkkkkk:e=>l(e.format("k"),6),K:e=>{const t=parseInt(e.format("h"),10);return s(t%12)},KK:e=>{const t=parseInt(e.format("h"),10);return l(s(t%12),2)},KKK:e=>{const t=parseInt(e.format("h"),10);return l(s(t%12),3)},KKKK:e=>{const t=parseInt(e.format("h"),10);return l(s(t%12),4)},KKKKK:e=>{const t=parseInt(e.format("h"),10);return l(s(t%12),5)},KKKKKK:e=>{const t=parseInt(e.format("h"),10);return l(s(t%12),6)},h:"h",hh:"hh",hhh:e=>l(e.format("h"),3),hhhh:e=>l(e.format("h"),4),hhhhh:e=>l(e.format("h"),5),hhhhhh:e=>l(e.format("h"),6),m:"m",mm:"mm",mmm:e=>l(e.format("m"),3),mmmm:e=>l(e.format("m"),4),mmmmm:e=>l(e.format("m"),5),mmmmmm:e=>l(e.format("m"),6),s:"s",ss:"ss",sss:e=>l(e.format("s"),3),ssss:e=>l(e.format("s"),4),sssss:e=>l(e.format("s"),5),ssssss:e=>l(e.format("s"),6),S:"S",SS:"SS",SSS:"SSS",SSSS:"SSSS",SSSSS:e=>l(e.format("SSSS"),5),SSSSSS:e=>l(e.format("SSSS"),6),z:e=>{const t=c(e);return t?t.abbr:"GMT"+e.format("Z")},zz:e=>{const t=c(e);return t?t.abbr:"GMT"+e.format("Z")},zzz:e=>{const t=c(e);return t?t.abbr:"GMT"+e.format("Z")},zzzz:e=>{const t=c(e);return t?t.description:"GMT"+e.format("Z")},zzzzz:e=>{const t=c(e);return t?t.description:"GMT"+e.format("Z")},zzzzzz:e=>{const t=c(e);return t?t.description:"GMT"+e.format("Z")},Z:"ZZ",ZZ:"ZZ",ZZZ:"ZZ",ZZZZ:"ZZ",ZZZZZ:"ZZ",ZZZZZZ:"ZZ",X:e=>0===e.utcOffset()?"Z":e.format("Z").substr(0,3),XX:e=>0===e.utcOffset()?"Z":e.format("ZZ"),XXX:e=>0===e.utcOffset()?"Z":e.format("Z")};class A extends S{tokenize(e){const t=[],a=e.length;let r=!1,T=0,n=null,i=null;const m=(e,a)=>{const r=h[e];if(null===r)throw new Error(`'${e.repeat(a)}' cannot be converted to a moment format token; token is not implemented`);if(void 0===r)throw new Error(`'${e.repeat(a)}' cannot be converted to a moment format token; unknown token`);t.push(new u(e,a))},o=e=>{t[t.length-1]instanceof u?t.push(e):t[t.length-1]+=e};for(let t=0;t<a;t++){let s=e.charAt(t);if("'"!==s)if(r)i+=s;else if(s.match(d)){if(void 0===h[s])throw new Error(`Illegal pattern character '${s}'`);null!==n&&n!==s?(m(n,T),n=s,T=1):(n=s,T++)}else if(0!==T&&(m(n,T),n=null,T=0),s.charCodeAt(0)<128)o(s);else{let r;for(r=t+1;r<a;r++){const t=e.charAt(r);if("'"===t||t.match(d))break}for(;t<r;t++)o(e.charAt(t));t--}else{if(t+1<a&&(s=e.charAt(t+1),"'"===s)){t++,0!=T&&(m(n,T),n=null,T=0),r?i+=s:o(s);continue}r?(o(i),r=!1):(0!==T&&(m(n,T),n=null,T=0),i="",r=!0)}}if(r)throw new Error("Unterminated quote");return 0!=T&&m(n,T),t}format(e,t){const a=this.tokenize(t),r=[];for(const t of a)if(t instanceof u){const a=t.toString(),T=h[a];if(void 0===T)throw new Error(`'${a}' cannot be converted to a moment format token; unknown token`);"function"==typeof T?r.push(T(e,a)):r.push(e.format(T))}else r.push(t);return r.join("")}}const D=/:?00$/,g=/[A-Za-z]/,E=e=>e.year()>0?"AD":"BC",M=e=>{const t=e.zoneAbbr();return"UTC"===t&&0!=e.utcOffset()?null:t},Z={G:E,GG:E,GGG:E,GGGG:e=>e.year()>0?"Anno Domini":"Before Christ",GGGGG:e=>E(e).substring(0,1),u:e=>l(e.format("YYYY"),1),uu:e=>l(s(e.format("YY")),2),uuu:e=>l(e.format("YYYY"),3),uuuu:"YYYY",uuuuu:e=>l(e.format("YYYY"),5),uuuuuu:e=>l(e.format("YYYY"),6),y:e=>s(e.format("Y")),yy:e=>s(e.format("YY")),yyy:e=>l(s(e.format("YYYY")),3),yyyy:e=>s(e.format("YYYY")),yyyyy:e=>l(s(e.format("YYYY")),5),yyyyyy:e=>l(s(e.format("YYYY")),6),D:"DDD",DD:e=>{const t=e.format("DDD");if(t.length>2)throw new Error("Field DayOfYear cannot be printed as the value "+t+" exceeds the maximum print width of 2");return l(t,2)},DDD:"DDDD",M:"M",MM:"MM",MMM:"MMM",MMMM:"MMMM",MMMMM:e=>e.format("MMMM").substring(0,1),L:"M",LL:"MM",LLL:"M",LLLL:"M",LLLLL:"M",d:"D",dd:"DD",Q:"Q",QQ:e=>l(e.format("Q"),2),QQQ:e=>"Q"+e.format("Q"),QQQQ:e=>e.format("Qo")+" quarter",QQQQQ:"Q",q:"Q",qq:e=>l(e.format("Q"),2),qqq:"Q",qqqq:"Q",qqqqq:"Q",Y:e=>l(e.format("gggg"),1),YY:"gg",YYY:e=>l(e.format("gggg"),3),YYYY:"gggg",YYYYY:e=>l(e.format("gggg"),5),YYYYYY:e=>l(e.format("gggg"),6),w:"w",ww:"ww",W:null,WW:null,WWW:null,WWWW:null,E:"ddd",EE:"ddd",EEE:"ddd",EEEE:"dddd",EEEEE:e=>e.format("dddd").substring(0,1),e:"d",ee:e=>l(e.format("d"),2),eee:"ddd",eeee:"dddd",eeeee:e=>e.format("dddd").substring(0,1),c:"d",ccc:"ddd",cccc:"dddd",ccccc:e=>String(parseInt(e.format("d"),10)-1),a:"A",h:"h",hh:"hh",K:e=>s(e.hour()%12),KK:e=>{const t=s(e.hour()%12);return l(t,2)},k:"k",kk:"kk",H:"H",HH:"HH",m:"m",mm:"mm",s:"s",ss:"ss",S:"S",SS:"SS",SSS:"SSS",SSSS:"SSSS",SSSSS:e=>l(e.format("SSSS"),5),SSSSSS:e=>l(e.format("SSSS"),6),A:e=>l(e.valueOf()-e.clone().startOf("day").valueOf(),1),AA:e=>e.isSame(e.clone().startOf("day"))?"00":null,AAA:e=>e.isSame(e.clone().startOf("day"))?"000":null,AAAA:e=>e.isSame(e.clone().startOf("day"))?"0000":null,AAAAA:e=>e.isSame(e.clone().startOf("day"))?"00000":null,AAAAAA:e=>e.isSame(e.clone().startOf("day"))?"000000":null,VV:e=>{if(0===e.utcOffset())return"Z";const t=e.tz();return t&&t.length>0?t:e.format("Z")},z:e=>{if(0===e.utcOffset())return"Z";return M(e)||e.format("Z")},zz:e=>{if(0===e.utcOffset())return"Z";return M(e)||e.format("Z")},zzz:e=>{if(0===e.utcOffset())return"Z";return M(e)||e.format("Z")},zzzz:e=>{if(0===e.utcOffset())return"Z";const t=M(e);return t?m(t):e.format("Z")},O:e=>0==e.utcOffset()/60?"GMT":"GMT"+e.format("Z").replace(D,"").replace(/^([+-])0/,"$1"),OOOO:e=>0==e.utcOffset()/60?"GMT":"GMT"+e.format("Z"),X:e=>{if(0===e.utcOffset())return"Z";const t=e.format("ZZ");return t.match(D)?t.substr(0,3):t},XX:e=>0===e.utcOffset()?"Z":e.format("ZZ"),XXX:e=>0===e.utcOffset()?"Z":e.format("Z"),XXXX:e=>0===e.utcOffset()?"Z":e.format("ZZ"),XXXXX:e=>0===e.utcOffset()?"Z":e.format("Z"),x:e=>{const t=e.format("ZZ");return t.match(D)?t.substr(0,3):t},xx:"ZZ",xxx:"Z",xxxx:"ZZ",xxxxx:"Z",Z:e=>0===e.utcOffset()?"+0000":e.format("ZZ"),ZZ:e=>0===e.utcOffset()?"+0000":e.format("ZZ"),ZZZ:e=>0===e.utcOffset()?"+0000":e.format("ZZ"),ZZZZ:e=>0===e.utcOffset()?"GMT":"GMT"+e.format("Z"),ZZZZZ:e=>0===e.utcOffset()?"Z":e.format("Z")};class y extends u{constructor(e,t,a,r){super(a,r),this.padding=e,this.padChar=t}format(e){if(e.length>this.padding)throw new Error(`Cannot format padding as formatted string "${e}" exceeds pad width of ${this.padding}.`);return(this.padChar.repeat(this.padding)+e).substr(0-this.padding)}}class Y extends S{tokenize(e){let t=0,a=" ";const r=[];for(let T=0;T<e.length;T++){let n=e.charAt(T);if(n.match(g)){let i=T++;for(;T<e.length&&e.charAt(T)===n;T++);let m=T-i;if("p"===n){let r=0;if(T<e.length&&(n=e.charAt(T),n.match(g))){for(r=m,i=T++;T<e.length&&e.charAt(T)===n;T++);m=T-i}if(0===r)throw new Error("Pad letter 'p' must be followed by valid pad pattern: "+e);t=r,a=" "}const o=Z[n.repeat(m)];if(null===o)throw new Error(`'${n.repeat(m)}' cannot be converted to a moment format token; token is not implemented`);if(void 0===o)throw new Error(`'${n.repeat(m)}' cannot be converted to a moment format token; unknown token`);t>0?(r.push(new y(t,a,n,m)),t=0,a=" "):r.push(new u(n,m)),T--}else if("'"===n){const t=T++;for(;T<e.length;T++)if("'"===e.charAt(T)){if(!(T+1<e.length&&"'"===e.charAt(T+1)))break;T++}if(T>=e.length)throw new Error(`Pattern ends with an incomplete string literal: ${e}`);const a=e.substring(t+1,T);0==a.length?r.push("'"):r.push(a.replace("''","'"))}else{if("["===n)throw new Error(`Optional patterns are not supported: ${n}`);if("]"===n)throw new Error(`Optional patterns are not supported: ${n}`);if("{"===n||"}"===n||"#"===n)throw new Error(`Pattern includes reserved character: '${n}'`);r[r.length-1]instanceof u?r.push(n):r[r.length-1]+=n}}return r}format(e,t){const a=this.tokenize(t),r=[];for(const t of a)if(t instanceof u){const a=t.toString(),T=Z[a];if(void 0===T)throw new Error(`'${a}' cannot be converted to a moment format token; bailing`);if("function"==typeof T){const t=T(e,a);if(null===t)throw new Error(`'${a}' cannot be converted to a moment format token; bailing`);r.push(t)}else r.push(e.format(T))}else r.push(t);return r.join("")}}const C=function(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(e&&e.fn.zoneAbbr){console.log("register: moment=%s, fatal=%s",typeof e,t),e.tz?console.log("Moment.js with timezone support detected; attaching Java format methods."):console.warn("Moment.js detected, but timezone support is missing. Some Java formatting features may not work as expected.");const a=new A,r=new Y;return e.fn.formatJavaSDF=function(e){return a.format(this,e)},e.fn.formatJavaDTF=function(e){return r.format(this,e)},e}if(console.error("Unable to attach Java format methods. Moment.js object was invalid."),t)throw new Error("Moment.js object was invalid.")};if("undefined"!=typeof window&&window?.moment)C(window.moment,!1);else if("undefined"!=typeof global&&global?.moment)C(global.moment,!1);else if("undefined"!=typeof window&&window)try{const e=a(812);window.moment=C(e,!1)}catch{console.warn("Failed to load moment-timezone. Attempting fallback to moment.");try{const e=a(716);window.moment=C(e,!1)}catch{console.warn("Failed to load moment. User will have to manually register.")}}let w;"undefined"!=typeof window&&(w=window?.moment),void 0===w&&"undefined"!=typeof global&&(w=global?.moment);const p=w;return r.default})()));
!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var a=t();for(var r in a)("object"==typeof exports?exports:e)[r]=a[r]}}(global,(()=>(()=>{"use strict";var e={716:e=>{e.exports=require("moment")},812:e=>{e.exports=require("moment-timezone")}},t={};function a(r){var T=t[r];if(void 0!==T)return T.exports;var n=t[r]={exports:{}};return e[r](n,n.exports,a),n.exports}a.d=(e,t)=>{for(var r in t)a.o(t,r)&&!a.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},a.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var r={};a.d(r,{default:()=>p});const T={"-720":["AoE","Y"],"-660":["NUT","SST","X"],"-600":["HST","CKT","TAHT","W"],"-570":["MART"],"-540":["AKST","HDT","GAMT","V"],"-480":["PST","AKDT","U","PT"],"-420":["MST","PDT","T","MT","PT"],"-360":["CST","MDT","EAST","GALT","S","CT","MT"],"-300":["EST","CDT","ACT","CIST","COT","CST","EASST","ECT","PET","R","ET","CT"],"-240":["EDT","AST","AMT","BOT","CIDST","CLT","FKT","GYT","VET","Q","AT","ET"],"-210":["NST"],"-180":["UYT","ADT","AMST","ART","BRT","CLST","FKST","GFT","PMST","ROTT","SRT","UYT","WARST","WGT","P","AT"],"-150":["NDT"],"-120":["GST","BRST","FNT","GST","PMDT","UYST","WGST","O"],"-60":["CVT","AZOT","CVT","EGT","N"],0:["UTC","GMT","AZOST","EGST","WET","Z","WT"],60:["CET","BST","WAT","WEST","WST","A"],120:["CAT","CEST","EET","SAST","WAST","B"],180:["EAT","EEST","FET","MSK","SYOT","TRT","C"],210:["IRST"],240:["GET","AZT","KUYT","MSD","MUT","RET","SAMT","SCT","D"],270:["AFT","IRDT"],300:["UZT","AQTT","AZST","MAWT","MVT","ORAT","PKT","TFT","TJT","TMT","YEKT","E"],330:["IST"],345:["NPT"],360:["BTT","ALMT","BTT","IOT","KGT","OMST","QYZT","VOST","YEKST","F"],390:["MMT","CCT"],420:["ICT","CXT","DAVT","HOVT","KRAT","NOVST","NOVT","OMSST","WIB","G"],480:["HKT","AWST","BNT","CAST","CHOT","HOVST","IRKT","KRAST","MYT","PHT","SGT","ULAT","WITA","H"],510:["PYT"],525:["ACWST"],540:["JST","AWDT","CHOST","IRKST","KST","PWT","TLT","ULAST","WIT","YAKT","I"],570:["ACST","ACT"],600:["PGT","AEST","CHUT","ChST","DDUT","VLAT","YAKST","YAPT","K","AET"],630:["ACDT","LHST","ACT"],660:["VUT","AEDT","KOST","LHDT","MAGT","NCT","NFT","PONT","SAKT","SBT","SRET","VLAST","L","AET"],720:["FJT","ANAST","ANAT","GILT","MAGST","MHT","NFDT","NRT","NZST","PETST","PETT","TVT","WAKT","WFT","M"],765:["CHAST"],780:["TOT","FJST","NZDT","PHOT","TKT","TOT"],825:["CHADT"],840:["LINT","TOST","WST"]},n={A:"Alpha Time Zone",ACDT:"Australian Central Daylight Time",ACST:"Australian Central Standard Time",ACT:"Australian Central Time",ACWST:"Australian Central Western Standard Time",ADT:"Atlantic Daylight Time",ADST:"Atlantic Daylight Saving Time",AEDT:"Australian Eastern Daylight Time",AEST:"Australian Eastern Standard Time",AET:"Australian Eastern Time",AFT:"Afghanistan Time",AKDT:"Alaska Daylight Time",AKST:"Alaska Standard Time",ALMT:"Alma-Ata Time",AMDT:"Armenia Daylight Time",AMST:"Amazon Summer Time",AMT:"Amazon Time",ANAST:"Anadyr Summer Time",ANAT:"Anadyr Time",AQTT:"Aqtobe Time",ART:"Argentina Time",AST:"Atlantic Standard Time",AT:"Atlantic Time",AWDT:"Australian Western Daylight Time",AWST:"Australian Western Standard Time",AZODT:"Azores Daylight Time",AZOST:"Azores Summer Time",AZOT:"Azores Time",AZST:"Azerbaijan Summer Time",AZT:"Azerbaijan Time",AoE:"Anywhere on Earth",B:"Bravo Time Zone",BDST:"British Daylight Saving Time",BDT:"Brunei Time",BNT:"Brunei Darussalam Time",BOT:"Bolivia Time",BRST:"Brasília Summer Time",BRT:"Brasília Time",BST:"British Summer Time",BT:"Brazil Time",BTT:"Bhutan Time",C:"Charlie Time Zone",CAST:"Casey Time",CAT:"Central Africa Time",CCT:"Cocos Islands Time",CDT:"Central Daylight Time",CDST:"Central Daylight Savings Time",CEDT:"Central European Daylight Time",CEST:"Central European Summer Time",CET:"Central European Time",CHADT:"Chatham Island Daylight Time",CHAST:"Chatham Island Standard Time",CHODT:"Choibalsan Daylight Time",CHODST:"Choibalsan Daylight Saving Time",CHOST:"Choibalsan Summer Time",CHOT:"Choibalsan Time",CHUT:"Chuuk Time",CIDST:"Cayman Islands Daylight Saving Time",CIST:"Cayman Islands Standard Time",CIT:"Cayman Islands Time",CKT:"Cook Island Time",CLDT:"Chile Daylight Time",CLST:"Chile Summer Time",CLT:"Chile Standard Time",COT:"Colombia Time",CST:"Central Standard Time",CT:"Central Time",CVT:"Cape Verde Time",CXT:"Christmas Island Time",ChST:"Chamorro Standard Time",D:"Delta Time Zone",DAVT:"Davis Time",DDUT:"Dumont-d'Urville Time",E:"Echo Time Zone",EADT:"Easter Island Daylight Time",EASST:"Easter Island Summer Time",EAST:"Easter Island Standard Time",EAT:"Eastern Africa Time",ECST:"European Central Summer Time",ECT:"Ecuador Time",EDT:"Eastern Daylight Time",EDST:"Eastern Daylight Saving Time",EEDT:"Eastern European Daylight Time",EEST:"Eastern European Summer Time",EET:"Eastern European Time",EFATE:"Efate Time",EGST:"Eastern Greenland Summer Time",EGT:"East Greenland Time",EST:"Eastern Standard Time",ET:"Eastern Time",F:"Foxtrot Time Zone",FET:"Further-Eastern European Time",FJDT:"Fiji Daylight Time",FJST:"Fiji Summer Time",FJT:"Fiji Time",FKDT:"Falkland Island Daylight Time",FKST:"Falkland Islands Summer Time",FKT:"Falkland Island Time",FNT:"Fernando de Noronha Time",G:"Golf Time Zone",GALT:"Galapagos Time",GAMT:"Gambier Time",GET:"Georgia Standard Time",GFT:"French Guiana Time",GILT:"Gilbert Island Time",GMT:"Greenwich Mean Time",GST:"South Georgia Time",GT:"Greenwich Time",GYT:"Guyana Time",H:"Hotel Time Zone",HAA:"Heure Avancée de l'Atlantique",HAC:"Heure Avancée du Centre",HADT:"Hawaii Daylight Time",HAE:"Heure Avancée de l'Est",HAP:"Heure Avancée du Pacifique",HAST:"Hawaii-Aleutian Standard Time",HAR:"Heure Avancée des Rocheuses",HAT:"Heure Avancée de Terre-Neuve",HDT:"Hawaii-Aleutian Daylight Time",HLV:"Hora Legal de Venezuela",HNA:"Heure Normale de l'Atlantique",HNC:"Heure Normale du Centre",HNE:"Heure Normale de l'Est",HNP:"Heure Normale du Pacifique",HNR:"Heure Normale des Rocheuses",HNT:"Heure Normale de Terre-Neuve",HKT:"Hong Kong Time",HOVDT:"Hovd Daylight Time",HOVDST:"Hovd Daylight Saving Time",HOVST:"Hovd Summer Time",HOVT:"Hovd Time",HST:"Hawaii Standard Time",I:"India Time Zone",ICT:"Indochina Time",IDT:"Israel Daylight Time",IOT:"Indian Chagos Time",IRDT:"Iran Daylight Time",IRKST:"Irkutsk Summer Time",IRKT:"Irkutsk Time",IRST:"Iran Standard Time",IST:"India Standard Time",JST:"Japan Standard Time",K:"Kilo Time Zone",KGT:"Kyrgyzstan Time",KIT:"Kerguelen (Islands) Time",KOST:"Kosrae Time",KRAST:"Krasnoyarsk Summer Time",KRAT:"Krasnoyarsk Time",KST:"Korea Standard Time",KT:"Korea Time",KUYT:"Kuybyshev Time",L:"Lima Time Zone",LHDT:"Lord Howe Daylight Time",LHST:"Lord Howe Standard Time",LINT:"Line Islands Time",M:"Mike Time Zone",MAGST:"Magadan Summer Time",MAGT:"Magadan Time",MART:"Marquesas Time",MAWT:"Mawson Time",MCK:"Moscow Time",MDST:"Mountain Daylight Saving Time",MDT:"Mountain Daylight Time",MESZ:"Mitteleuropäische Sommerzeit",MEZ:"Mitteleuropäische Zeit",MHT:"Marshall Islands Time",MMT:"Myanmar Time",MST:"Mountain Standard Time",MSK:"Moscow Standard Time",MT:"Mountain Time",MUT:"Mauritius Time",MVT:"Maldives Time",MYT:"Malaysia Time",N:"November Time Zone",NACDT:"North American Central Daylight Time",NACST:"North American Central Standard Time",NAEDT:"North American Eastern Daylight Time",NAEST:"North American Eastern Standard Time",NAMDT:"North American Mountain Daylight Time",NAMST:"North American Mountain Standard Time",NAPDT:"North American Pacific Daylight Time",NAPST:"North American Pacific Standard Time",NCT:"New Caledonia Time",NDT:"Newfoundland Daylight Time",NFDT:"Norfolk Daylight Time",NFT:"Norfolk Time",NOVST:"Novosibirsk Summer Time",NOVT:"Novosibirsk Time",NPT:"Nepal Time",NRT:"Nauru Time",NST:"Newfoundland Standard Time",NUT:"Niue Time",NZDT:"New Zealand Daylight Time",NZST:"New Zealand Standard Time",O:"Oscar Time Zone",OESZ:"Osteuropäische Sommerzeit",OEZ:"Osteuropäische Zeit",OMSST:"Omsk Summer Time",OMST:"Omsk Standard Time",ORAT:"Oral Time",P:"Papa Time Zone",PDT:"Pacific Daylight Time",PDST:"Pacific Daylight Saving Time",PET:"Peru Time",PETST:"Kamchatka Summer Time",PETT:"Kamchatka Time",PGT:"Papua New Guinea Time",PHOT:"Phoenix Island Time",PHT:"Philippine Time",PKT:"Pakistan Standard Time",PMDT:"Pierre & Miquelon Daylight Time",PMST:"Pierre & Miquelon Standard Time",PONT:"Pohnpei Standard Time",PST:"Pacific Standard Time",PT:"Pacific Time",PWT:"Palau Time",PYST:"Pyongyang Standard Time",PYT:"Pyongyang Time",Q:"Quebec Time Zone",QYZT:"Qyzylorda Time",R:"Romeo Time Zone",RET:"Reunion Time",ROTT:"Rothera Time",S:"Sierra Time Zone",SAKT:"Sakhalin Time",SAMT:"Samara Time",SAMST:"Samara Summer Time",SAST:"South Africa Standard Time",SBT:"Solomon Islands Time",SCT:"Seychelles Time",SGT:"Singapore Time",SRET:"Srednekolymsk Time",SRT:"Suriname Time",SST:"Samoa Standard Time",SYOT:"Syowa Time",T:"Tango Time Zone",TAHT:"Tahiti Time",TFT:"French Southern and Antarctic Time",TJT:"Tajikistan Time",TKT:"Tokelau Time",TLT:"East Timor Time",TMT:"Turkmenistan Time",TOST:"Tonga Summer Time",TOT:"Tonga Time",TRT:"Turkey Time",tVT:"Tuvalu Time",U:"Uniform Time Zone",ULAST:"Ulaanbaatar Summer Time",ULAT:"Ulaanbaatar Time",UTC:"Coordinated Universal Time",UYST:"Uruguay Summer Time",UYT:"Uruguay Time",UZT:"Uzbekistan Time",V:"Victor Time Zone",VET:"Venezuelan Standard Time",VLAST:"Vladivostok Summer Time",VLAT:"Vladivostok Time",VOST:"Vostok Time",VUT:"Vanuatu Time",W:"Whiskey Time Zone",WAKT:"Wake Time",WARST:"Western Argentine Summer Time",WAST:"West Africa Summer Time",WAT:"West Africa Time",WDT:"Western Daylight Time",WEDT:"Western European Daylight Time",WEST:"Western European Summer Time",WESZ:"Westeuropäische Sommerzeit",WET:"Western European Time",WEZ:"Westeuropäische Zeit",WFT:"Wallis and Futuna Time",WGST:"Western Greenland Summer Time",WGT:"West Greenland Time",WIB:"Western Indonesian Time",WIT:"Eastern Indonesian Time",WITA:"Central Indonesian Time",WST:"Western Standard Time",WT:"Western Sahara Standard Time",X:"X-ray Time Zone",Y:"Yankee Time Zone",YAKST:"Yakutsk Summer Time",YAKT:"Yakutsk Time",YAPT:"Yap Time",YEKST:"Yekaterinburg Summer Time",YEKT:"Yekaterinburg Time",Z:"Zulu Time Zone"},i={},m=e=>n[e]?n[e]:null,o=e=>{const t=moment(e).utcOffset();if(!i[t]){const e=(e=>{if(!moment.tz)return null;const t=moment.tz.guess(),a=t?moment.tz(t).format("z"):null,r=T[String(e)];return r?r.indexOf(a)>=0?a:r[0]:null})(t);e?i[t]=e:console.warn("- unhandled offset: "+t)}return i[t]||null},s=e=>Number.isInteger(e)?String(Math.abs(e)):e.replace(/^-/,""),l=(e,t)=>{const a=s(e);return a.length>=t?String(e):(a!==e?"-":"")+("0".repeat(t)+a).substr(0-t)};class u{count=0;constructor(e,t){if(1!=e.length)throw new Error("You must provide a single character when creating a token!");this.token=e,this.count=void 0===t?1:t}increment(){return this.count++,this.count}equals(e){return this.token===e.token&&this.count===e.count}toString(){return this.token.repeat(this.count)}}class S{}const d=/[A-Za-z]/,f=e=>e.year()>0?"AD":"BC",c=e=>{let t=e.zoneAbbr();const a=e.zoneName();if(e.tz)return a&&""!==a?"UTC"===t&&0!==e.utcOffset()?null:{abbr:t,name:a,description:m(t)}:null;if(t=o(e),t){const e=m(t);if(e)return{abbr:t,name:a,description:e}}return null},h={G:f,GG:f,GGG:f,GGGG:f,GGGGG:f,GGGGGG:f,y:e=>s(e.format("Y")),yy:e=>s(e.format("YY")),yyy:e=>l(s(e.format("YYYY")),3),yyyy:e=>s(e.format("YYYY")),yyyyy:e=>l(s(e.format("YYYY")),5),yyyyyy:e=>l(s(e.format("YYYY")),6),Y:"gggg",YY:"gg",YYY:e=>l(e.format("gggg"),3),YYYY:"gggg",YYYYY:e=>l(e.format("gggg"),5),YYYYYY:e=>l(e.format("gggg"),6),M:"M",MM:"MM",MMM:"MMM",MMMM:"MMMM",MMMMM:"MMMM",MMMMMM:"MMMM",w:e=>l(e.format("w"),1),ww:e=>l(e.format("w"),2),www:e=>l(e.format("w"),3),wwww:e=>l(e.format("w"),4),wwwww:e=>l(e.format("w"),5),wwwwww:e=>l(e.format("w"),6),W:null,WW:null,WWW:null,WWWW:null,D:"DDD",DD:e=>l(e.format("DDD"),2),DDD:e=>l(e.format("DDD"),3),DDDD:e=>l(e.format("DDD"),4),DDDDD:e=>l(e.format("DDD"),5),DDDDDD:e=>l(e.format("DDD"),6),d:"D",dd:"DD",ddd:e=>l(e.format("D"),3),dddd:e=>l(e.format("D"),4),ddddd:e=>l(e.format("D"),5),dddddd:e=>l(e.format("D"),6),F:null,FF:null,FFF:null,FFFF:null,E:"ddd",EE:"ddd",EEE:"ddd",EEEE:"dddd",EEEEE:"dddd",EEEEEE:"dddd",u:"E",uu:e=>l(e.format("E"),2),uuu:e=>l(e.format("E"),3),uuuu:e=>l(e.format("E"),4),uuuuu:e=>l(e.format("E"),5),uuuuuu:e=>l(e.format("E"),6),a:"A",aa:"A",aaa:"A",aaaa:"A",aaaaa:"A",aaaaaa:"A",H:"H",HH:"HH",HHH:e=>l(e.format("H"),3),HHHH:e=>l(e.format("H"),4),HHHHH:e=>l(e.format("H"),5),HHHHHH:e=>l(e.format("H"),6),k:"k",kk:"kk",kkk:e=>l(e.format("k"),3),kkkk:e=>l(e.format("k"),4),kkkkk:e=>l(e.format("k"),5),kkkkkk:e=>l(e.format("k"),6),K:e=>{const t=parseInt(e.format("h"),10);return s(t%12)},KK:e=>{const t=parseInt(e.format("h"),10);return l(s(t%12),2)},KKK:e=>{const t=parseInt(e.format("h"),10);return l(s(t%12),3)},KKKK:e=>{const t=parseInt(e.format("h"),10);return l(s(t%12),4)},KKKKK:e=>{const t=parseInt(e.format("h"),10);return l(s(t%12),5)},KKKKKK:e=>{const t=parseInt(e.format("h"),10);return l(s(t%12),6)},h:"h",hh:"hh",hhh:e=>l(e.format("h"),3),hhhh:e=>l(e.format("h"),4),hhhhh:e=>l(e.format("h"),5),hhhhhh:e=>l(e.format("h"),6),m:"m",mm:"mm",mmm:e=>l(e.format("m"),3),mmmm:e=>l(e.format("m"),4),mmmmm:e=>l(e.format("m"),5),mmmmmm:e=>l(e.format("m"),6),s:"s",ss:"ss",sss:e=>l(e.format("s"),3),ssss:e=>l(e.format("s"),4),sssss:e=>l(e.format("s"),5),ssssss:e=>l(e.format("s"),6),S:"S",SS:"SS",SSS:"SSS",SSSS:"SSSS",SSSSS:e=>l(e.format("SSSS"),5),SSSSSS:e=>l(e.format("SSSS"),6),z:e=>{const t=c(e);return t?t.abbr:"GMT"+e.format("Z")},zz:e=>{const t=c(e);return t?t.abbr:"GMT"+e.format("Z")},zzz:e=>{const t=c(e);return t?t.abbr:"GMT"+e.format("Z")},zzzz:e=>{const t=c(e);return t?t.description:"GMT"+e.format("Z")},zzzzz:e=>{const t=c(e);return t?t.description:"GMT"+e.format("Z")},zzzzzz:e=>{const t=c(e);return t?t.description:"GMT"+e.format("Z")},Z:"ZZ",ZZ:"ZZ",ZZZ:"ZZ",ZZZZ:"ZZ",ZZZZZ:"ZZ",ZZZZZZ:"ZZ",X:e=>0===e.utcOffset()?"Z":e.format("Z").substr(0,3),XX:e=>0===e.utcOffset()?"Z":e.format("ZZ"),XXX:e=>0===e.utcOffset()?"Z":e.format("Z")};class A extends S{tokenize(e){const t=[],a=e.length;let r=!1,T=0,n=null,i=null;const m=(e,a)=>{const r=h[e];if(null===r)throw new Error(`'${e.repeat(a)}' cannot be converted to a moment format token; token is not implemented`);if(void 0===r)throw new Error(`'${e.repeat(a)}' cannot be converted to a moment format token; unknown token`);t.push(new u(e,a))},o=e=>{t[t.length-1]instanceof u?t.push(e):t[t.length-1]+=e};for(let t=0;t<a;t++){let s=e.charAt(t);if("'"!==s)if(r)i+=s;else if(s.match(d)){if(void 0===h[s])throw new Error(`Illegal pattern character '${s}'`);null!==n&&n!==s?(m(n,T),n=s,T=1):(n=s,T++)}else if(0!==T&&(m(n,T),n=null,T=0),s.charCodeAt(0)<128)o(s);else{let r;for(r=t+1;r<a;r++){const t=e.charAt(r);if("'"===t||t.match(d))break}for(;t<r;t++)o(e.charAt(t));t--}else{if(t+1<a&&(s=e.charAt(t+1),"'"===s)){t++,0!=T&&(m(n,T),n=null,T=0),r?i+=s:o(s);continue}r?(o(i),r=!1):(0!==T&&(m(n,T),n=null,T=0),i="",r=!0)}}if(r)throw new Error("Unterminated quote");return 0!=T&&m(n,T),t}format(e,t){const a=this.tokenize(t),r=[];for(const t of a)if(t instanceof u){const a=t.toString(),T=h[a];if(void 0===T)throw new Error(`'${a}' cannot be converted to a moment format token; unknown token`);"function"==typeof T?r.push(T(e,a)):r.push(e.format(T))}else r.push(t);return r.join("")}}const D=/:?00$/,g=/[A-Za-z]/,E=e=>e.year()>0?"AD":"BC",M=e=>{const t=e.zoneAbbr();return"UTC"===t&&0!=e.utcOffset()?null:t},Z={G:E,GG:E,GGG:E,GGGG:e=>e.year()>0?"Anno Domini":"Before Christ",GGGGG:e=>E(e).substring(0,1),u:e=>l(e.format("YYYY"),1),uu:e=>l(s(e.format("YY")),2),uuu:e=>l(e.format("YYYY"),3),uuuu:"YYYY",uuuuu:e=>l(e.format("YYYY"),5),uuuuuu:e=>l(e.format("YYYY"),6),y:e=>s(e.format("Y")),yy:e=>s(e.format("YY")),yyy:e=>l(s(e.format("YYYY")),3),yyyy:e=>s(e.format("YYYY")),yyyyy:e=>l(s(e.format("YYYY")),5),yyyyyy:e=>l(s(e.format("YYYY")),6),D:"DDD",DD:e=>{const t=e.format("DDD");if(t.length>2)throw new Error("Field DayOfYear cannot be printed as the value "+t+" exceeds the maximum print width of 2");return l(t,2)},DDD:"DDDD",M:"M",MM:"MM",MMM:"MMM",MMMM:"MMMM",MMMMM:e=>e.format("MMMM").substring(0,1),L:"M",LL:"MM",LLL:"M",LLLL:"M",LLLLL:"M",d:"D",dd:"DD",Q:"Q",QQ:e=>l(e.format("Q"),2),QQQ:e=>"Q"+e.format("Q"),QQQQ:e=>e.format("Qo")+" quarter",QQQQQ:"Q",q:"Q",qq:e=>l(e.format("Q"),2),qqq:"Q",qqqq:"Q",qqqqq:"Q",Y:e=>l(e.format("gggg"),1),YY:"gg",YYY:e=>l(e.format("gggg"),3),YYYY:"gggg",YYYYY:e=>l(e.format("gggg"),5),YYYYYY:e=>l(e.format("gggg"),6),w:"w",ww:"ww",W:null,WW:null,WWW:null,WWWW:null,E:"ddd",EE:"ddd",EEE:"ddd",EEEE:"dddd",EEEEE:e=>e.format("dddd").substring(0,1),e:"d",ee:e=>l(e.format("d"),2),eee:"ddd",eeee:"dddd",eeeee:e=>e.format("dddd").substring(0,1),c:"d",ccc:"ddd",cccc:"dddd",ccccc:e=>String(parseInt(e.format("d"),10)-1),a:"A",h:"h",hh:"hh",K:e=>s(e.hour()%12),KK:e=>{const t=s(e.hour()%12);return l(t,2)},k:"k",kk:"kk",H:"H",HH:"HH",m:"m",mm:"mm",s:"s",ss:"ss",S:"S",SS:"SS",SSS:"SSS",SSSS:"SSSS",SSSSS:e=>l(e.format("SSSS"),5),SSSSSS:e=>l(e.format("SSSS"),6),A:e=>l(e.valueOf()-e.clone().startOf("day").valueOf(),1),AA:e=>e.isSame(e.clone().startOf("day"))?"00":null,AAA:e=>e.isSame(e.clone().startOf("day"))?"000":null,AAAA:e=>e.isSame(e.clone().startOf("day"))?"0000":null,AAAAA:e=>e.isSame(e.clone().startOf("day"))?"00000":null,AAAAAA:e=>e.isSame(e.clone().startOf("day"))?"000000":null,VV:e=>{if(0===e.utcOffset())return"Z";const t=e.tz();return t&&t.length>0?t:e.format("Z")},z:e=>{if(0===e.utcOffset())return"Z";return M(e)||e.format("Z")},zz:e=>{if(0===e.utcOffset())return"Z";return M(e)||e.format("Z")},zzz:e=>{if(0===e.utcOffset())return"Z";return M(e)||e.format("Z")},zzzz:e=>{if(0===e.utcOffset())return"Z";const t=M(e);return t?m(t):e.format("Z")},O:e=>0==e.utcOffset()/60?"GMT":"GMT"+e.format("Z").replace(D,"").replace(/^([+-])0/,"$1"),OOOO:e=>0==e.utcOffset()/60?"GMT":"GMT"+e.format("Z"),X:e=>{if(0===e.utcOffset())return"Z";const t=e.format("ZZ");return t.match(D)?t.substr(0,3):t},XX:e=>0===e.utcOffset()?"Z":e.format("ZZ"),XXX:e=>0===e.utcOffset()?"Z":e.format("Z"),XXXX:e=>0===e.utcOffset()?"Z":e.format("ZZ"),XXXXX:e=>0===e.utcOffset()?"Z":e.format("Z"),x:e=>{const t=e.format("ZZ");return t.match(D)?t.substr(0,3):t},xx:"ZZ",xxx:"Z",xxxx:"ZZ",xxxxx:"Z",Z:e=>0===e.utcOffset()?"+0000":e.format("ZZ"),ZZ:e=>0===e.utcOffset()?"+0000":e.format("ZZ"),ZZZ:e=>0===e.utcOffset()?"+0000":e.format("ZZ"),ZZZZ:e=>0===e.utcOffset()?"GMT":"GMT"+e.format("Z"),ZZZZZ:e=>0===e.utcOffset()?"Z":e.format("Z")};class y extends u{constructor(e,t,a,r){super(a,r),this.padding=e,this.padChar=t}format(e){if(e.length>this.padding)throw new Error(`Cannot format padding as formatted string "${e}" exceeds pad width of ${this.padding}.`);return(this.padChar.repeat(this.padding)+e).substr(0-this.padding)}}class Y extends S{tokenize(e){let t=0,a=" ";const r=[];for(let T=0;T<e.length;T++){let n=e.charAt(T);if(n.match(g)){let i=T++;for(;T<e.length&&e.charAt(T)===n;T++);let m=T-i;if("p"===n){let r=0;if(T<e.length&&(n=e.charAt(T),n.match(g))){for(r=m,i=T++;T<e.length&&e.charAt(T)===n;T++);m=T-i}if(0===r)throw new Error("Pad letter 'p' must be followed by valid pad pattern: "+e);t=r,a=" "}const o=Z[n.repeat(m)];if(null===o)throw new Error(`'${n.repeat(m)}' cannot be converted to a moment format token; token is not implemented`);if(void 0===o)throw new Error(`'${n.repeat(m)}' cannot be converted to a moment format token; unknown token`);t>0?(r.push(new y(t,a,n,m)),t=0,a=" "):r.push(new u(n,m)),T--}else if("'"===n){const t=T++;for(;T<e.length;T++)if("'"===e.charAt(T)){if(!(T+1<e.length&&"'"===e.charAt(T+1)))break;T++}if(T>=e.length)throw new Error(`Pattern ends with an incomplete string literal: ${e}`);const a=e.substring(t+1,T);0==a.length?r.push("'"):r.push(a.replace("''","'"))}else{if("["===n)throw new Error(`Optional patterns are not supported: ${n}`);if("]"===n)throw new Error(`Optional patterns are not supported: ${n}`);if("{"===n||"}"===n||"#"===n)throw new Error(`Pattern includes reserved character: '${n}'`);r[r.length-1]instanceof u?r.push(n):r[r.length-1]+=n}}return r}format(e,t){const a=this.tokenize(t),r=[];for(const t of a)if(t instanceof u){const a=t.toString(),T=Z[a];if(void 0===T)throw new Error(`'${a}' cannot be converted to a moment format token; bailing`);if("function"==typeof T){const t=T(e,a);if(null===t)throw new Error(`'${a}' cannot be converted to a moment format token; bailing`);r.push(t)}else r.push(e.format(T))}else r.push(t);return r.join("")}}const C=(e,t=!0)=>{if(e&&e.fn.zoneAbbr){console.log("register: moment=%s, fatal=%s",typeof e,t),e.tz?console.log("Moment.js with timezone support detected; attaching Java format methods."):console.warn("Moment.js detected, but timezone support is missing. Some Java formatting features may not work as expected.");const a=new A,r=new Y;return e.fn.formatJavaSDF=function(e){return a.format(this,e)},e.fn.formatJavaDTF=function(e){return r.format(this,e)},e}if(console.error("Unable to attach Java format methods. Moment.js object was invalid."),t)throw new Error("Moment.js object was invalid.")};if("undefined"!=typeof window&&window?.moment)C(window.moment,!1);else if("undefined"!=typeof global&&global?.moment)C(global.moment,!1);else if("undefined"!=typeof window&&window)try{const e=a(812);window.moment=C(e,!1)}catch{console.warn("Failed to load moment-timezone. Attempting fallback to moment.");try{const e=a(716);window.moment=C(e,!1)}catch{console.warn("Failed to load moment. User will have to manually register.")}}let w;"undefined"!=typeof window&&(w=window.moment),void 0===w&&"undefined"!=typeof global&&(w=global.moment);const p=w;return r.default})()));
//# sourceMappingURL=node.min.js.map
{
"name": "@rangerrick/moment-javaformat",
"version": "2.0.9",
"version": "2.0.10",
"description": "Format Moment.js using Java format strings",

@@ -28,5 +28,4 @@ "browser": "dist/moment-javaformat.min.js",

"@eslint/eslintrc": "^3.1.0",
"@eslint/js": "^9.9.0",
"@types/eslint__js": "^8.42.3",
"@types/jest": "^29.0.0",
"@eslint/js": "^9.33.0",
"@types/jest": "^30.0.0",
"@types/node": "^22.10.1",

@@ -36,24 +35,23 @@ "@types/webpack": "^5.0.0",

"@typescript-eslint/parser": "^8.1.0",
"babel-jest": "^29.0.2",
"babel-loader": "^9.0.0",
"babel-jest": "^30.0.0",
"babel-loader": "^10.0.0",
"conventional-changelog-cli": "^5.0.0",
"eslint": "^9.9.0",
"eslint-config-prettier": "^9.1.0",
"eslint-plugin-barrel-files": "^2.1.0",
"eslint-plugin-depend": "^0.12.0",
"eslint-plugin-prettier": "^5.2.1",
"globals": "^15.9.0",
"eslint": "^9.33.0",
"eslint-config-prettier": "^10.1.8",
"eslint-plugin-depend": "^1.0.0",
"eslint-plugin-no-barrel-files": "^1.2.2",
"eslint-plugin-prettier": "^5.5.4",
"globals": "^16.0.0",
"husky": "^9.0.7",
"jest": "^29.0.2",
"jest-environment-jsdom": "^29.0.2",
"jest": "^30.0.0",
"jest-environment-jsdom": "^30.0.0",
"knip": "^5.38.4",
"lint-staged": "^15.0.1",
"lint-staged": "^16.0.0",
"mkdirp": "^3.0.0",
"moment-timezone": "^0.5.27",
"moment-timezone": "^0.6.0",
"node-polyfill-webpack-plugin": "^4.0.0",
"pinst": "^3.0.0",
"prettier": "^3.0.0",
"prettier": "3.6.2",
"prettier-plugin-java": "^2.0.0",
"typescript": "^5.5.4",
"typescript-eslint": "^8.1.0",
"typescript": "^5.9.2",
"typescript-eslint": "^8.40.0",
"webpack": "^5.40.0",

@@ -76,9 +74,4 @@ "webpack-bundle-analyzer": "^4.1.0",

],
"husky": {
"hooks": {
"commit-msg": "commitlint -E HUSKY_GIT_PARAMS"
}
},
"lint-staged": {
"**/*": "prettier --write --ignore-unknown"
"**/*": "prettier --write ."
},

@@ -94,6 +87,5 @@ "jest": {

"scripts": {
"prepare": "husky install",
"prepublishOnly": "pinst --disable && npm run test",
"prettier": "prettier --write --ignore-unknown **/*",
"postpublish": "pinst --enable",
"prepare": "husky",
"prepublishOnly": "npm run test",
"prettier": "prettier --write .",
"build": "webpack --mode=development",

@@ -103,3 +95,3 @@ "build-release": "webpack --mode=development && webpack --mode=production && tsc -d --declarationMap --emitDeclarationOnly --declarationDir dist/lib",

"release": "npm run test && npm run build-release",
"lint": "eslint src test && knip --production",
"lint": "eslint src test && prettier --check . && knip --production --strict",
"generate-testdata": "mkdirp node_modules/.cache/java-test-data && javac -source 1.8 -target 1.8 -d node_modules/.cache/java-test-data src/date.java && java -classpath node_modules/.cache/java-test-data date > test/test-data.js",

@@ -106,0 +98,0 @@ "test": "npm run lint && jest",