2020-05-13 22:59:23 +02:00
|
|
|
// @ts-check
|
2017-07-24 17:12:38 +02:00
|
|
|
'use strict';
|
|
|
|
|
2024-12-02 12:58:51 +01:00
|
|
|
// NeDB on life support
|
|
|
|
// some util methods are removed in node 23.x, monkeypatch them
|
|
|
|
const util = require('util');
|
|
|
|
const patch_methods = [ 'isDate', 'isRegExp' ];
|
|
|
|
for (let i = 0; i < patch_methods.length; i++) {
|
|
|
|
util[patch_methods[i]] = util.types[patch_methods[i]];
|
2024-12-02 12:50:11 +01:00
|
|
|
}
|
2024-12-02 12:58:51 +01:00
|
|
|
util.isArray = Array.isArray;
|
2024-12-02 12:50:11 +01:00
|
|
|
|
2019-03-18 19:05:16 +01:00
|
|
|
process.chdir(__dirname);
|
2020-04-29 18:01:53 +02:00
|
|
|
require('ts-node').register({ transpileOnly: true });
|
2019-03-18 19:05:16 +01:00
|
|
|
|
2022-03-26 13:57:00 +01:00
|
|
|
// Make sure data folder exists
|
2022-03-26 14:26:10 +01:00
|
|
|
const fs = require('fs');
|
|
|
|
fs.mkdirSync('./data', { recursive: true });
|
2022-03-26 13:57:00 +01:00
|
|
|
|
2017-07-24 17:12:38 +02:00
|
|
|
// Utils
|
2017-09-27 23:12:12 +03:30
|
|
|
const { logError } = require('./utils/log');
|
2017-09-21 13:57:49 +04:30
|
|
|
|
|
|
|
const bot = require('./bot');
|
|
|
|
|
2017-10-27 13:50:54 +02:00
|
|
|
bot.use(
|
|
|
|
require('./handlers/middlewares'),
|
2017-10-27 18:43:33 +02:00
|
|
|
require('./plugins'),
|
2017-10-27 13:50:54 +02:00
|
|
|
require('./handlers/commands'),
|
2018-01-30 14:38:50 +01:00
|
|
|
require('./handlers/regex'),
|
|
|
|
require('./handlers/unmatched'),
|
2017-10-05 01:15:58 +05:30
|
|
|
);
|
2017-10-27 13:50:54 +02:00
|
|
|
|
2017-09-27 23:12:12 +03:30
|
|
|
bot.catch(logError);
|
2020-02-19 14:32:25 +01:00
|
|
|
|
2020-05-13 22:59:23 +02:00
|
|
|
// eslint-disable-next-line @typescript-eslint/no-floating-promises
|
2020-02-19 14:32:25 +01:00
|
|
|
bot.launch();
|