out-of-your-element/start.js

38 lines
905 B
JavaScript
Raw Normal View History

2023-04-25 20:06:08 +00:00
// @ts-check
2023-05-04 20:25:00 +00:00
const sqlite = require("better-sqlite3")
2023-09-30 12:24:05 +00:00
const migrate = require("./db/migrate")
2023-03-05 16:05:35 +00:00
const HeatSync = require("heatsync")
2022-12-07 00:10:31 +00:00
const config = require("./config")
2023-03-05 16:05:35 +00:00
const passthrough = require("./passthrough")
2023-05-04 20:25:00 +00:00
const db = new sqlite("db/ooye.db")
2023-03-05 16:05:35 +00:00
/** @type {import("heatsync").default} */ // @ts-ignore
2023-03-05 16:05:35 +00:00
const sync = new HeatSync()
2023-06-28 20:08:17 +00:00
Object.assign(passthrough, {config, sync, db})
2023-03-05 16:05:35 +00:00
2023-04-25 20:06:08 +00:00
const DiscordClient = require("./d2m/discord-client")
2022-12-07 00:10:31 +00:00
2023-09-03 13:38:30 +00:00
const discord = new DiscordClient(config.discordToken, "full")
2023-03-05 16:05:35 +00:00
passthrough.discord = discord
const {as} = require("./matrix/appservice")
2023-06-28 20:08:17 +00:00
passthrough.as = as
2023-09-14 00:32:27 +00:00
const orm = sync.require("./db/orm")
passthrough.from = orm.from
passthrough.select = orm.select
2023-06-28 20:08:17 +00:00
sync.require("./m2d/event-dispatcher")
2023-03-05 16:05:35 +00:00
;(async () => {
2023-09-30 12:24:05 +00:00
await migrate.migrate(db)
2023-03-05 16:05:35 +00:00
await discord.cloud.connect()
console.log("Discord gateway started")
require("./matrix/power.js")
2023-03-05 16:05:35 +00:00
require("./stdin")
})()