mirror of
https://github.com/arthur-pbty/xiao.git
synced 2026-06-19 21:40:51 +02:00
Add zip timezones
This commit is contained in:
+2
-1
@@ -88,7 +88,8 @@
|
|||||||
"valid-url": "^1.0.9",
|
"valid-url": "^1.0.9",
|
||||||
"wavefile": "^11.0.0",
|
"wavefile": "^11.0.0",
|
||||||
"winston": "^3.3.3",
|
"winston": "^3.3.3",
|
||||||
"ytdl-core": "^4.5.0"
|
"ytdl-core": "^4.5.0",
|
||||||
|
"zip-to-timezone": "^1.1.5"
|
||||||
},
|
},
|
||||||
"optionalDependencies": {
|
"optionalDependencies": {
|
||||||
"bufferutil": "^4.0.3",
|
"bufferutil": "^4.0.3",
|
||||||
|
|||||||
+10
-4
@@ -1,5 +1,6 @@
|
|||||||
const { ArgumentType } = require('discord.js-commando');
|
const { ArgumentType } = require('discord.js-commando');
|
||||||
const cityTimezones = require('city-timezones');
|
const cityTimezones = require('city-timezones');
|
||||||
|
const { ZipToTz } = require('zip-to-timezone');
|
||||||
const moment = require('moment-timezone');
|
const moment = require('moment-timezone');
|
||||||
|
|
||||||
module.exports = class TimezoneType extends ArgumentType {
|
module.exports = class TimezoneType extends ArgumentType {
|
||||||
@@ -11,10 +12,15 @@ module.exports = class TimezoneType extends ArgumentType {
|
|||||||
value = value.replaceAll(' ', '_').toLowerCase();
|
value = value.replaceAll(' ', '_').toLowerCase();
|
||||||
const directZone = moment.tz.zone(value);
|
const directZone = moment.tz.zone(value);
|
||||||
if (directZone) return true;
|
if (directZone) return true;
|
||||||
const cityZone = cityTimezones.lookupViaCity(value);
|
try {
|
||||||
if (cityZone.length) return true;
|
const zipZone = new ZipToTz().full(value);
|
||||||
const provZone = cityTimezones.findFromCityStateProvince(value);
|
return zipZone;
|
||||||
if (provZone.length) return true;
|
} catch {
|
||||||
|
const cityZone = cityTimezones.lookupViaCity(value);
|
||||||
|
if (cityZone.length) return true;
|
||||||
|
const provZone = cityTimezones.findFromCityStateProvince(value);
|
||||||
|
if (provZone.length) return true;
|
||||||
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user