Merge branch 'dev' into 'main'
Added cron event handler See merge request illegitimate/illegitimate-bot!141
This commit is contained in:
@@ -19,6 +19,7 @@
|
|||||||
"license": "GPL-3.0-only",
|
"license": "GPL-3.0-only",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"axios": "^1.3.4",
|
"axios": "^1.3.4",
|
||||||
|
"cron": "^3.1.6",
|
||||||
"discord.js": "^14.8.0",
|
"discord.js": "^14.8.0",
|
||||||
"dotenv": "^16.0.3",
|
"dotenv": "^16.0.3",
|
||||||
"ioredis": "^5.3.2",
|
"ioredis": "^5.3.2",
|
||||||
|
|||||||
19
src/interfaces/Cron.ts
Normal file
19
src/interfaces/Cron.ts
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
import { CronCommand } from "cron"
|
||||||
|
import { TimeZones } from "."
|
||||||
|
|
||||||
|
interface TimeFormat {
|
||||||
|
seconds: "*" | number
|
||||||
|
minutes: "*" | number
|
||||||
|
hours: "*" | number
|
||||||
|
dayOfMonth: "*" | number
|
||||||
|
month: "*" | number
|
||||||
|
dayOfWeek: "*" | number
|
||||||
|
}
|
||||||
|
|
||||||
|
export default interface Cron {
|
||||||
|
time: TimeFormat
|
||||||
|
execute: () => void
|
||||||
|
onComplete?: null | undefined
|
||||||
|
start?: boolean | null | undefined
|
||||||
|
timeZone: keyof TimeZones
|
||||||
|
}
|
||||||
430
src/interfaces/TimeZones.ts
Normal file
430
src/interfaces/TimeZones.ts
Normal file
@@ -0,0 +1,430 @@
|
|||||||
|
export default interface TimeZones {
|
||||||
|
"Africa/Abidjan": string
|
||||||
|
"Africa/Accra": string
|
||||||
|
"Africa/Addis_Ababa": string
|
||||||
|
"Africa/Algiers": string
|
||||||
|
"Africa/Asmera": string
|
||||||
|
"Africa/Bamako": string
|
||||||
|
"Africa/Bangui": string
|
||||||
|
"Africa/Banjul": string
|
||||||
|
"Africa/Bissau": string
|
||||||
|
"Africa/Blantyre": string
|
||||||
|
"Africa/Brazzaville": string
|
||||||
|
"Africa/Bujumbura": string
|
||||||
|
"Africa/Cairo": string
|
||||||
|
"Africa/Casablanca": string
|
||||||
|
"Africa/Ceuta": string
|
||||||
|
"Africa/Conakry": string
|
||||||
|
"Africa/Dakar": string
|
||||||
|
"Africa/Dar_es_Salaam": string
|
||||||
|
"Africa/Djibouti": string
|
||||||
|
"Africa/Douala": string
|
||||||
|
"Africa/El_Aaiun": string
|
||||||
|
"Africa/Freetown": string
|
||||||
|
"Africa/Gaborone": string
|
||||||
|
"Africa/Harare": string
|
||||||
|
"Africa/Johannesburg": string
|
||||||
|
"Africa/Juba": string
|
||||||
|
"Africa/Kampala": string
|
||||||
|
"Africa/Khartoum": string
|
||||||
|
"Africa/Kigali": string
|
||||||
|
"Africa/Kinshasa": string
|
||||||
|
"Africa/Lagos": string
|
||||||
|
"Africa/Libreville": string
|
||||||
|
"Africa/Lome": string
|
||||||
|
"Africa/Luanda": string
|
||||||
|
"Africa/Lubumbashi": string
|
||||||
|
"Africa/Lusaka": string
|
||||||
|
"Africa/Malabo": string
|
||||||
|
"Africa/Maputo": string
|
||||||
|
"Africa/Maseru": string
|
||||||
|
"Africa/Mbabane": string
|
||||||
|
"Africa/Mogadishu": string
|
||||||
|
"Africa/Monrovia": string
|
||||||
|
"Africa/Nairobi": string
|
||||||
|
"Africa/Ndjamena": string
|
||||||
|
"Africa/Niamey": string
|
||||||
|
"Africa/Nouakchott": string
|
||||||
|
"Africa/Ouagadougou": string
|
||||||
|
"Africa/Porto-Novo": string
|
||||||
|
"Africa/Sao_Tome": string
|
||||||
|
"Africa/Tripoli": string
|
||||||
|
"Africa/Tunis": string
|
||||||
|
"Africa/Windhoek": string
|
||||||
|
"America/Adak": string
|
||||||
|
"America/Anchorage": string
|
||||||
|
"America/Anguilla": string
|
||||||
|
"America/Antigua": string
|
||||||
|
"America/Araguaina": string
|
||||||
|
"America/Argentina/La_Rioja": string
|
||||||
|
"America/Argentina/Rio_Gallegos": string
|
||||||
|
"America/Argentina/Salta": string
|
||||||
|
"America/Argentina/San_Juan": string
|
||||||
|
"America/Argentina/San_Luis": string
|
||||||
|
"America/Argentina/Tucuman": string
|
||||||
|
"America/Argentina/Ushuaia": string
|
||||||
|
"America/Aruba": string
|
||||||
|
"America/Asuncion": string
|
||||||
|
"America/Bahia": string
|
||||||
|
"America/Bahia_Banderas": string
|
||||||
|
"America/Barbados": string
|
||||||
|
"America/Belem": string
|
||||||
|
"America/Belize": string
|
||||||
|
"America/Blanc-Sablon": string
|
||||||
|
"America/Boa_Vista": string
|
||||||
|
"America/Bogota": string
|
||||||
|
"America/Boise": string
|
||||||
|
"America/Buenos_Aires": string
|
||||||
|
"America/Cambridge_Bay": string
|
||||||
|
"America/Campo_Grande": string
|
||||||
|
"America/Cancun": string
|
||||||
|
"America/Caracas": string
|
||||||
|
"America/Catamarca": string
|
||||||
|
"America/Cayenne": string
|
||||||
|
"America/Cayman": string
|
||||||
|
"America/Chicago": string
|
||||||
|
"America/Chihuahua": string
|
||||||
|
"America/Ciudad_Juarez": string
|
||||||
|
"America/Coral_Harbour": string
|
||||||
|
"America/Cordoba": string
|
||||||
|
"America/Costa_Rica": string
|
||||||
|
"America/Creston": string
|
||||||
|
"America/Cuiaba": string
|
||||||
|
"America/Curacao": string
|
||||||
|
"America/Danmarkshavn": string
|
||||||
|
"America/Dawson": string
|
||||||
|
"America/Dawson_Creek": string
|
||||||
|
"America/Denver": string
|
||||||
|
"America/Detroit": string
|
||||||
|
"America/Dominica": string
|
||||||
|
"America/Edmonton": string
|
||||||
|
"America/Eirunepe": string
|
||||||
|
"America/El_Salvador": string
|
||||||
|
"America/Fort_Nelson": string
|
||||||
|
"America/Fortaleza": string
|
||||||
|
"America/Glace_Bay": string
|
||||||
|
"America/Godthab": string
|
||||||
|
"America/Goose_Bay": string
|
||||||
|
"America/Grand_Turk": string
|
||||||
|
"America/Grenada": string
|
||||||
|
"America/Guadeloupe": string
|
||||||
|
"America/Guatemala": string
|
||||||
|
"America/Guayaquil": string
|
||||||
|
"America/Guyana": string
|
||||||
|
"America/Halifax": string
|
||||||
|
"America/Havana": string
|
||||||
|
"America/Hermosillo": string
|
||||||
|
"America/Indiana/Knox": string
|
||||||
|
"America/Indiana/Marengo": string
|
||||||
|
"America/Indiana/Petersburg": string
|
||||||
|
"America/Indiana/Tell_City": string
|
||||||
|
"America/Indiana/Vevay": string
|
||||||
|
"America/Indiana/Vincennes": string
|
||||||
|
"America/Indiana/Winamac": string
|
||||||
|
"America/Indianapolis": string
|
||||||
|
"America/Inuvik": string
|
||||||
|
"America/Iqaluit": string
|
||||||
|
"America/Jamaica": string
|
||||||
|
"America/Jujuy": string
|
||||||
|
"America/Juneau": string
|
||||||
|
"America/Kentucky/Monticello": string
|
||||||
|
"America/Kralendijk": string
|
||||||
|
"America/La_Paz": string
|
||||||
|
"America/Lima": string
|
||||||
|
"America/Los_Angeles": string
|
||||||
|
"America/Louisville": string
|
||||||
|
"America/Lower_Princes": string
|
||||||
|
"America/Maceio": string
|
||||||
|
"America/Managua": string
|
||||||
|
"America/Manaus": string
|
||||||
|
"America/Marigot": string
|
||||||
|
"America/Martinique": string
|
||||||
|
"America/Matamoros": string
|
||||||
|
"America/Mazatlan": string
|
||||||
|
"America/Mendoza": string
|
||||||
|
"America/Menominee": string
|
||||||
|
"America/Merida": string
|
||||||
|
"America/Metlakatla": string
|
||||||
|
"America/Mexico_City": string
|
||||||
|
"America/Miquelon": string
|
||||||
|
"America/Moncton": string
|
||||||
|
"America/Monterrey": string
|
||||||
|
"America/Montevideo": string
|
||||||
|
"America/Montserrat": string
|
||||||
|
"America/Nassau": string
|
||||||
|
"America/New_York": string
|
||||||
|
"America/Nipigon": string
|
||||||
|
"America/Nome": string
|
||||||
|
"America/Noronha": string
|
||||||
|
"America/North_Dakota/Beulah": string
|
||||||
|
"America/North_Dakota/Center": string
|
||||||
|
"America/North_Dakota/New_Salem": string
|
||||||
|
"America/Ojinaga": string
|
||||||
|
"America/Panama": string
|
||||||
|
"America/Pangnirtung": string
|
||||||
|
"America/Paramaribo": string
|
||||||
|
"America/Phoenix": string
|
||||||
|
"America/Port-au-Prince": string
|
||||||
|
"America/Port_of_Spain": string
|
||||||
|
"America/Porto_Velho": string
|
||||||
|
"America/Puerto_Rico": string
|
||||||
|
"America/Punta_Arenas": string
|
||||||
|
"America/Rainy_River": string
|
||||||
|
"America/Rankin_Inlet": string
|
||||||
|
"America/Recife": string
|
||||||
|
"America/Regina": string
|
||||||
|
"America/Resolute": string
|
||||||
|
"America/Rio_Branco": string
|
||||||
|
"America/Santa_Isabel": string
|
||||||
|
"America/Santarem": string
|
||||||
|
"America/Santiago": string
|
||||||
|
"America/Santo_Domingo": string
|
||||||
|
"America/Sao_Paulo": string
|
||||||
|
"America/Scoresbysund": string
|
||||||
|
"America/Sitka": string
|
||||||
|
"America/St_Barthelemy": string
|
||||||
|
"America/St_Johns": string
|
||||||
|
"America/St_Kitts": string
|
||||||
|
"America/St_Lucia": string
|
||||||
|
"America/St_Thomas": string
|
||||||
|
"America/St_Vincent": string
|
||||||
|
"America/Swift_Current": string
|
||||||
|
"America/Tegucigalpa": string
|
||||||
|
"America/Thule": string
|
||||||
|
"America/Thunder_Bay": string
|
||||||
|
"America/Tijuana": string
|
||||||
|
"America/Toronto": string
|
||||||
|
"America/Tortola": string
|
||||||
|
"America/Vancouver": string
|
||||||
|
"America/Whitehorse": string
|
||||||
|
"America/Winnipeg": string
|
||||||
|
"America/Yakutat": string
|
||||||
|
"America/Yellowknife": string
|
||||||
|
"Antarctica/Casey": string
|
||||||
|
"Antarctica/Davis": string
|
||||||
|
"Antarctica/DumontDUrville": string
|
||||||
|
"Antarctica/Macquarie": string
|
||||||
|
"Antarctica/Mawson": string
|
||||||
|
"Antarctica/McMurdo": string
|
||||||
|
"Antarctica/Palmer": string
|
||||||
|
"Antarctica/Rothera": string
|
||||||
|
"Antarctica/Syowa": string
|
||||||
|
"Antarctica/Troll": string
|
||||||
|
"Antarctica/Vostok": string
|
||||||
|
"Arctic/Longyearbyen": string
|
||||||
|
"Asia/Aden": string
|
||||||
|
"Asia/Almaty": string
|
||||||
|
"Asia/Amman": string
|
||||||
|
"Asia/Anadyr": string
|
||||||
|
"Asia/Aqtau": string
|
||||||
|
"Asia/Aqtobe": string
|
||||||
|
"Asia/Ashgabat": string
|
||||||
|
"Asia/Atyrau": string
|
||||||
|
"Asia/Baghdad": string
|
||||||
|
"Asia/Bahrain": string
|
||||||
|
"Asia/Baku": string
|
||||||
|
"Asia/Bangkok": string
|
||||||
|
"Asia/Barnaul": string
|
||||||
|
"Asia/Beirut": string
|
||||||
|
"Asia/Bishkek": string
|
||||||
|
"Asia/Brunei": string
|
||||||
|
"Asia/Calcutta": string
|
||||||
|
"Asia/Chita": string
|
||||||
|
"Asia/Choibalsan": string
|
||||||
|
"Asia/Colombo": string
|
||||||
|
"Asia/Damascus": string
|
||||||
|
"Asia/Dhaka": string
|
||||||
|
"Asia/Dili": string
|
||||||
|
"Asia/Dubai": string
|
||||||
|
"Asia/Dushanbe": string
|
||||||
|
"Asia/Famagusta": string
|
||||||
|
"Asia/Gaza": string
|
||||||
|
"Asia/Hebron": string
|
||||||
|
"Asia/Hong_Kong": string
|
||||||
|
"Asia/Hovd": string
|
||||||
|
"Asia/Irkutsk": string
|
||||||
|
"Asia/Jakarta": string
|
||||||
|
"Asia/Jayapura": string
|
||||||
|
"Asia/Jerusalem": string
|
||||||
|
"Asia/Kabul": string
|
||||||
|
"Asia/Kamchatka": string
|
||||||
|
"Asia/Karachi": string
|
||||||
|
"Asia/Katmandu": string
|
||||||
|
"Asia/Khandyga": string
|
||||||
|
"Asia/Krasnoyarsk": string
|
||||||
|
"Asia/Kuala_Lumpur": string
|
||||||
|
"Asia/Kuching": string
|
||||||
|
"Asia/Kuwait": string
|
||||||
|
"Asia/Macau": string
|
||||||
|
"Asia/Magadan": string
|
||||||
|
"Asia/Makassar": string
|
||||||
|
"Asia/Manila": string
|
||||||
|
"Asia/Muscat": string
|
||||||
|
"Asia/Nicosia": string
|
||||||
|
"Asia/Novokuznetsk": string
|
||||||
|
"Asia/Novosibirsk": string
|
||||||
|
"Asia/Omsk": string
|
||||||
|
"Asia/Oral": string
|
||||||
|
"Asia/Phnom_Penh": string
|
||||||
|
"Asia/Pontianak": string
|
||||||
|
"Asia/Pyongyang": string
|
||||||
|
"Asia/Qatar": string
|
||||||
|
"Asia/Qostanay": string
|
||||||
|
"Asia/Qyzylorda": string
|
||||||
|
"Asia/Rangoon": string
|
||||||
|
"Asia/Riyadh": string
|
||||||
|
"Asia/Saigon": string
|
||||||
|
"Asia/Sakhalin": string
|
||||||
|
"Asia/Samarkand": string
|
||||||
|
"Asia/Seoul": string
|
||||||
|
"Asia/Shanghai": string
|
||||||
|
"Asia/Singapore": string
|
||||||
|
"Asia/Srednekolymsk": string
|
||||||
|
"Asia/Taipei": string
|
||||||
|
"Asia/Tashkent": string
|
||||||
|
"Asia/Tbilisi": string
|
||||||
|
"Asia/Tehran": string
|
||||||
|
"Asia/Thimphu": string
|
||||||
|
"Asia/Tokyo": string
|
||||||
|
"Asia/Tomsk": string
|
||||||
|
"Asia/Ulaanbaatar": string
|
||||||
|
"Asia/Urumqi": string
|
||||||
|
"Asia/Ust-Nera": string
|
||||||
|
"Asia/Vientiane": string
|
||||||
|
"Asia/Vladivostok": string
|
||||||
|
"Asia/Yakutsk": string
|
||||||
|
"Asia/Yekaterinburg": string
|
||||||
|
"Asia/Yerevan": string
|
||||||
|
"Atlantic/Azores": string
|
||||||
|
"Atlantic/Bermuda": string
|
||||||
|
"Atlantic/Canary": string
|
||||||
|
"Atlantic/Cape_Verde": string
|
||||||
|
"Atlantic/Faeroe": string
|
||||||
|
"Atlantic/Madeira": string
|
||||||
|
"Atlantic/Reykjavik": string
|
||||||
|
"Atlantic/South_Georgia": string
|
||||||
|
"Atlantic/St_Helena": string
|
||||||
|
"Atlantic/Stanley": string
|
||||||
|
"Australia/Adelaide": string
|
||||||
|
"Australia/Brisbane": string
|
||||||
|
"Australia/Broken_Hill": string
|
||||||
|
"Australia/Currie": string
|
||||||
|
"Australia/Darwin": string
|
||||||
|
"Australia/Eucla": string
|
||||||
|
"Australia/Hobart": string
|
||||||
|
"Australia/Lindeman": string
|
||||||
|
"Australia/Lord_Howe": string
|
||||||
|
"Australia/Melbourne": string
|
||||||
|
"Australia/Perth": string
|
||||||
|
"Australia/Sydney": string
|
||||||
|
"Europe/Amsterdam": string
|
||||||
|
"Europe/Andorra": string
|
||||||
|
"Europe/Astrakhan": string
|
||||||
|
"Europe/Athens": string
|
||||||
|
"Europe/Belgrade": string
|
||||||
|
"Europe/Berlin": string
|
||||||
|
"Europe/Bratislava": string
|
||||||
|
"Europe/Brussels": string
|
||||||
|
"Europe/Bucharest": string
|
||||||
|
"Europe/Budapest": string
|
||||||
|
"Europe/Busingen": string
|
||||||
|
"Europe/Chisinau": string
|
||||||
|
"Europe/Copenhagen": string
|
||||||
|
"Europe/Dublin": string
|
||||||
|
"Europe/Gibraltar": string
|
||||||
|
"Europe/Guernsey": string
|
||||||
|
"Europe/Helsinki": string
|
||||||
|
"Europe/Isle_of_Man": string
|
||||||
|
"Europe/Istanbul": string
|
||||||
|
"Europe/Jersey": string
|
||||||
|
"Europe/Kaliningrad": string
|
||||||
|
"Europe/Kiev": string
|
||||||
|
"Europe/Kirov": string
|
||||||
|
"Europe/Lisbon": string
|
||||||
|
"Europe/Ljubljana": string
|
||||||
|
"Europe/London": string
|
||||||
|
"Europe/Luxembourg": string
|
||||||
|
"Europe/Madrid": string
|
||||||
|
"Europe/Malta": string
|
||||||
|
"Europe/Mariehamn": string
|
||||||
|
"Europe/Minsk": string
|
||||||
|
"Europe/Monaco": string
|
||||||
|
"Europe/Moscow": string
|
||||||
|
"Europe/Oslo": string
|
||||||
|
"Europe/Paris": string
|
||||||
|
"Europe/Podgorica": string
|
||||||
|
"Europe/Prague": string
|
||||||
|
"Europe/Riga": string
|
||||||
|
"Europe/Rome": string
|
||||||
|
"Europe/Samara": string
|
||||||
|
"Europe/San_Marino": string
|
||||||
|
"Europe/Sarajevo": string
|
||||||
|
"Europe/Saratov": string
|
||||||
|
"Europe/Simferopol": string
|
||||||
|
"Europe/Skopje": string
|
||||||
|
"Europe/Sofia": string
|
||||||
|
"Europe/Stockholm": string
|
||||||
|
"Europe/Tallinn": string
|
||||||
|
"Europe/Tirane": string
|
||||||
|
"Europe/Ulyanovsk": string
|
||||||
|
"Europe/Uzhgorod": string
|
||||||
|
"Europe/Vaduz": string
|
||||||
|
"Europe/Vatican": string
|
||||||
|
"Europe/Vienna": string
|
||||||
|
"Europe/Vilnius": string
|
||||||
|
"Europe/Volgograd": string
|
||||||
|
"Europe/Warsaw": string
|
||||||
|
"Europe/Zagreb": string
|
||||||
|
"Europe/Zaporozhye": string
|
||||||
|
"Europe/Zurich": string
|
||||||
|
"Indian/Antananarivo": string
|
||||||
|
"Indian/Chagos": string
|
||||||
|
"Indian/Christmas": string
|
||||||
|
"Indian/Cocos": string
|
||||||
|
"Indian/Comoro": string
|
||||||
|
"Indian/Kerguelen": string
|
||||||
|
"Indian/Mahe": string
|
||||||
|
"Indian/Maldives": string
|
||||||
|
"Indian/Mauritius": string
|
||||||
|
"Indian/Mayotte": string
|
||||||
|
"Indian/Reunion": string
|
||||||
|
"Pacific/Apia": string
|
||||||
|
"Pacific/Auckland": string
|
||||||
|
"Pacific/Bougainville": string
|
||||||
|
"Pacific/Chatham": string
|
||||||
|
"Pacific/Easter": string
|
||||||
|
"Pacific/Efate": string
|
||||||
|
"Pacific/Enderbury": string
|
||||||
|
"Pacific/Fakaofo": string
|
||||||
|
"Pacific/Fiji": string
|
||||||
|
"Pacific/Funafuti": string
|
||||||
|
"Pacific/Galapagos": string
|
||||||
|
"Pacific/Gambier": string
|
||||||
|
"Pacific/Guadalcanal": string
|
||||||
|
"Pacific/Guam": string
|
||||||
|
"Pacific/Honolulu": string
|
||||||
|
"Pacific/Johnston": string
|
||||||
|
"Pacific/Kiritimati": string
|
||||||
|
"Pacific/Kosrae": string
|
||||||
|
"Pacific/Kwajalein": string
|
||||||
|
"Pacific/Majuro": string
|
||||||
|
"Pacific/Marquesas": string
|
||||||
|
"Pacific/Midway": string
|
||||||
|
"Pacific/Nauru": string
|
||||||
|
"Pacific/Niue": string
|
||||||
|
"Pacific/Norfolk": string
|
||||||
|
"Pacific/Noumea": string
|
||||||
|
"Pacific/Pago_Pago": string
|
||||||
|
"Pacific/Palau": string
|
||||||
|
"Pacific/Pitcairn": string
|
||||||
|
"Pacific/Ponape": string
|
||||||
|
"Pacific/Port_Moresby": string
|
||||||
|
"Pacific/Rarotonga": string
|
||||||
|
"Pacific/Saipan": string
|
||||||
|
"Pacific/Tahiti": string
|
||||||
|
"Pacific/Tarawa": string
|
||||||
|
"Pacific/Tongatapu": string
|
||||||
|
"Pacific/Truk": string
|
||||||
|
"Pacific/Wake": string
|
||||||
|
"Pacific/Wallis": string
|
||||||
|
}
|
||||||
@@ -4,13 +4,18 @@ import Command from "./Command"
|
|||||||
import ContextMenu from "./ContextMenu"
|
import ContextMenu from "./ContextMenu"
|
||||||
import Event from "./Event"
|
import Event from "./Event"
|
||||||
import Modal from "./Modal"
|
import Modal from "./Modal"
|
||||||
|
|
||||||
import Config from "./Config"
|
import Config from "./Config"
|
||||||
|
import Cron from "./Cron"
|
||||||
|
import TimeZones from "./TimeZones"
|
||||||
|
|
||||||
import { Guild, GuildData } from "./Guild"
|
import { Guild, GuildData } from "./Guild"
|
||||||
import { Player, PlayerData } from "./Player"
|
import { Player, PlayerData } from "./Player"
|
||||||
|
|
||||||
export {
|
export {
|
||||||
Config,
|
Config,
|
||||||
|
Cron,
|
||||||
|
TimeZones,
|
||||||
Autocomplete,
|
Autocomplete,
|
||||||
Button,
|
Button,
|
||||||
Command,
|
Command,
|
||||||
|
|||||||
20
src/utils/Cron.ts
Normal file
20
src/utils/Cron.ts
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
import { CronJob } from "cron"
|
||||||
|
import path from "path"
|
||||||
|
import fs from "fs"
|
||||||
|
import { Cron } from "../interfaces"
|
||||||
|
|
||||||
|
function loadCronEvents() {
|
||||||
|
const cronPath = path.join(__dirname, "..", "events", "cron")
|
||||||
|
const cronFiles = fs.readdirSync(cronPath).filter(file => file.endsWith(".js"))
|
||||||
|
|
||||||
|
for (const file of cronFiles) {
|
||||||
|
const filePath = path.join(cronPath, file)
|
||||||
|
const cron: Cron = require(filePath)
|
||||||
|
|
||||||
|
const time = cron.time.seconds + " " + cron.time.minutes + " " + cron.time.hours + " " + cron.time.dayOfMonth + " " + cron.time.month + " " + cron.time.dayOfWeek
|
||||||
|
|
||||||
|
new CronJob(time, cron.execute, cron.onComplete, cron.start, cron.timeZone).start()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export { loadCronEvents }
|
||||||
@@ -3,6 +3,7 @@ import config from "./Config"
|
|||||||
import { redis } from "./Redis"
|
import { redis } from "./Redis"
|
||||||
import { connect } from "mongoose"
|
import { connect } from "mongoose"
|
||||||
import init from "./Init"
|
import init from "./Init"
|
||||||
|
import { loadCronEvents } from "./Cron"
|
||||||
const client = new Client()
|
const client = new Client()
|
||||||
|
|
||||||
export default class Illegitimate {
|
export default class Illegitimate {
|
||||||
@@ -10,13 +11,11 @@ export default class Illegitimate {
|
|||||||
|
|
||||||
async start() {
|
async start() {
|
||||||
init()
|
init()
|
||||||
|
|
||||||
client.start()
|
client.start()
|
||||||
|
loadCronEvents()
|
||||||
redis.on("ready", () => {
|
redis.on("ready", () => {
|
||||||
console.log("Connected to Redis")
|
console.log("Connected to Redis")
|
||||||
})
|
})
|
||||||
|
|
||||||
connect(config.prod.mongoURI!, {}).then(() => {
|
connect(config.prod.mongoURI!, {}).then(() => {
|
||||||
console.log("Connected to MongoDB")
|
console.log("Connected to MongoDB")
|
||||||
})
|
})
|
||||||
|
|||||||
18
yarn.lock
18
yarn.lock
@@ -147,6 +147,11 @@
|
|||||||
resolved "https://registry.yarnpkg.com/@tsconfig/node16/-/node16-1.0.4.tgz#0b92dcc0cc1c81f6f306a381f28e31b1a56536e9"
|
resolved "https://registry.yarnpkg.com/@tsconfig/node16/-/node16-1.0.4.tgz#0b92dcc0cc1c81f6f306a381f28e31b1a56536e9"
|
||||||
integrity sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==
|
integrity sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==
|
||||||
|
|
||||||
|
"@types/luxon@~3.3.0":
|
||||||
|
version "3.3.7"
|
||||||
|
resolved "https://registry.yarnpkg.com/@types/luxon/-/luxon-3.3.7.tgz#043d413b6492a012de47503907bdf3ec4f827933"
|
||||||
|
integrity sha512-gKc9P2d4g5uYwmy4s/MO/yOVPmvHyvzka1YH6i5dM03UrFofHSmgc0D0ymbDRStFWHusk6cwwF6nhLm/ckBbbQ==
|
||||||
|
|
||||||
"@types/ms@^0.7.34":
|
"@types/ms@^0.7.34":
|
||||||
version "0.7.34"
|
version "0.7.34"
|
||||||
resolved "https://registry.npmjs.org/@types/ms/-/ms-0.7.34.tgz"
|
resolved "https://registry.npmjs.org/@types/ms/-/ms-0.7.34.tgz"
|
||||||
@@ -242,6 +247,14 @@ create-require@^1.1.0:
|
|||||||
resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333"
|
resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333"
|
||||||
integrity sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==
|
integrity sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==
|
||||||
|
|
||||||
|
cron@^3.1.6:
|
||||||
|
version "3.1.6"
|
||||||
|
resolved "https://registry.yarnpkg.com/cron/-/cron-3.1.6.tgz#e7e1798a468e017c8d31459ecd7c2d088f97346c"
|
||||||
|
integrity sha512-cvFiQCeVzsA+QPM6fhjBtlKGij7tLLISnTSvFxVdnFGLdz+ZdXN37kNe0i2gefmdD17XuZA6n2uPVwzl4FxW/w==
|
||||||
|
dependencies:
|
||||||
|
"@types/luxon" "~3.3.0"
|
||||||
|
luxon "~3.4.0"
|
||||||
|
|
||||||
debug@4.x, debug@^4.3.4:
|
debug@4.x, debug@^4.3.4:
|
||||||
version "4.3.4"
|
version "4.3.4"
|
||||||
resolved "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz"
|
resolved "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz"
|
||||||
@@ -358,6 +371,11 @@ lodash@^4.17.21:
|
|||||||
resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz"
|
resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz"
|
||||||
integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
|
integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
|
||||||
|
|
||||||
|
luxon@~3.4.0:
|
||||||
|
version "3.4.4"
|
||||||
|
resolved "https://registry.yarnpkg.com/luxon/-/luxon-3.4.4.tgz#cf20dc27dc532ba41a169c43fdcc0063601577af"
|
||||||
|
integrity sha512-zobTr7akeGHnv7eBOXcRgMeCP6+uyYsczwmeRCauvpvaAltgNyTbLH/+VaEAPUeWBT+1GuNmz4wC/6jtQzbbVA==
|
||||||
|
|
||||||
magic-bytes.js@^1.5.0:
|
magic-bytes.js@^1.5.0:
|
||||||
version "1.5.0"
|
version "1.5.0"
|
||||||
resolved "https://registry.npmjs.org/magic-bytes.js/-/magic-bytes.js-1.5.0.tgz"
|
resolved "https://registry.npmjs.org/magic-bytes.js/-/magic-bytes.js-1.5.0.tgz"
|
||||||
|
|||||||
Reference in New Issue
Block a user