mirror of
https://github.com/ReVanced/revanced-bots.git
synced 2026-01-11 21:56:17 +00:00
Compare commits
3 Commits
@revanced/
...
@revanced/
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
14d301eeb4 | ||
|
|
8efb549453 | ||
|
|
79fea8b286 |
@@ -1,3 +1,10 @@
|
||||
# @revanced/discord-bot [1.0.0-dev.35](https://github.com/revanced/revanced-helper/compare/@revanced/discord-bot@1.0.0-dev.34...@revanced/discord-bot@1.0.0-dev.35) (2024-10-17)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **bots/discord:** fix freeze on prod builds ([8efb549](https://github.com/revanced/revanced-helper/commit/8efb549453a04fab1ac6414a7f7f8bf702df3c93))
|
||||
|
||||
# @revanced/discord-bot [1.0.0-dev.34](https://github.com/revanced/revanced-helper/compare/@revanced/discord-bot@1.0.0-dev.33...@revanced/discord-bot@1.0.0-dev.34) (2024-10-17)
|
||||
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"name": "@revanced/discord-bot",
|
||||
"type": "module",
|
||||
"private": true,
|
||||
"version": "1.0.0-dev.34",
|
||||
"version": "1.0.0-dev.35",
|
||||
"description": "🤖 Discord bot assisting ReVanced",
|
||||
"main": "src/index.ts",
|
||||
"scripts": {
|
||||
|
||||
28
bots/discord/src/config.ts
Normal file
28
bots/discord/src/config.ts
Normal file
@@ -0,0 +1,28 @@
|
||||
import { dirname, join } from 'path'
|
||||
import _firstConfig from '../config.js'
|
||||
|
||||
let currentConfig = _firstConfig
|
||||
|
||||
// Other parts of the code will access properties of this proxy, they don't care what the target looks like
|
||||
export const config = new Proxy(
|
||||
{
|
||||
INSPECTION_WARNING: 'Run `context.__getConfig()` to inspect the latest config.',
|
||||
} as unknown as typeof currentConfig,
|
||||
{
|
||||
get(_, p, receiver) {
|
||||
if (p === 'invalidate')
|
||||
return async () => {
|
||||
const path = join(dirname(Bun.main), '..', 'config.js')
|
||||
Loader.registry.delete(path)
|
||||
currentConfig = (await import(path)).default
|
||||
}
|
||||
|
||||
return Reflect.get(currentConfig, p, receiver)
|
||||
},
|
||||
set(_, p, newValue, receiver) {
|
||||
return Reflect.set(currentConfig, p, newValue, receiver)
|
||||
},
|
||||
},
|
||||
) as typeof _firstConfig & { invalidate(): void }
|
||||
|
||||
export const __getConfig = () => currentConfig
|
||||
@@ -1,49 +1,24 @@
|
||||
import { Database } from 'bun:sqlite'
|
||||
import { existsSync, readFileSync, readdirSync } from 'fs'
|
||||
import { dirname, join } from 'path'
|
||||
import { join } from 'path'
|
||||
import { Client as APIClient } from '@revanced/bot-api'
|
||||
import { createLogger } from '@revanced/bot-shared'
|
||||
import { Client as DiscordClient, type Message, Partials } from 'discord.js'
|
||||
import { drizzle } from 'drizzle-orm/bun-sqlite'
|
||||
import type { default as Command, CommandOptionsOptions, CommandType } from './classes/Command'
|
||||
|
||||
import * as schemas from './database/schemas'
|
||||
|
||||
// Export some things first, as commands require them
|
||||
import _firstConfig from '../config.js'
|
||||
import type { default as Command, CommandOptionsOptions, CommandType } from './classes/Command'
|
||||
|
||||
let currentConfig = _firstConfig
|
||||
|
||||
// Other parts of the code will access properties of this proxy, they don't care what the target looks like
|
||||
export const config = new Proxy(
|
||||
{
|
||||
INSPECTION_WARNING: 'Run `context.__getConfig()` to inspect the latest config.',
|
||||
} as unknown as typeof currentConfig,
|
||||
{
|
||||
get(_, p, receiver) {
|
||||
if (p === 'invalidate')
|
||||
return async () => {
|
||||
const path = join(dirname(Bun.main), '..', 'config.js')
|
||||
Loader.registry.delete(path)
|
||||
currentConfig = (await import(path)).default
|
||||
logger.debug('New config set')
|
||||
}
|
||||
|
||||
return Reflect.get(currentConfig, p, receiver)
|
||||
},
|
||||
set(_, p, newValue, receiver) {
|
||||
return Reflect.set(currentConfig, p, newValue, receiver)
|
||||
},
|
||||
},
|
||||
) as typeof _firstConfig & { invalidate(): void }
|
||||
|
||||
export const __getConfig = () => currentConfig
|
||||
import { __getConfig, config } from './config'
|
||||
export { config, __getConfig }
|
||||
|
||||
export const logger = createLogger({
|
||||
level: config.logLevel === 'none' ? Number.MAX_SAFE_INTEGER : config.logLevel,
|
||||
})
|
||||
|
||||
// Importing later because config needs to be exported before
|
||||
const commands = await import('./commands')
|
||||
// Export a few things before we initialize commands
|
||||
import * as commands from './commands'
|
||||
|
||||
export const api = {
|
||||
client: new APIClient({
|
||||
|
||||
14
package.json
14
package.json
@@ -30,7 +30,7 @@
|
||||
"packageManager": "bun@1.1.20",
|
||||
"devDependencies": {
|
||||
"@anolilab/multi-semantic-release": "^1.1.3",
|
||||
"@biomejs/biome": "^1.9.2",
|
||||
"@biomejs/biome": "^1.9.3",
|
||||
"@codedependant/semantic-release-docker": "^5.0.3",
|
||||
"@commitlint/cli": "^19.5.0",
|
||||
"@commitlint/config-conventional": "^19.5.0",
|
||||
@@ -39,13 +39,13 @@
|
||||
"@semantic-release/exec": "^6.0.3",
|
||||
"@semantic-release/git": "^10.0.1",
|
||||
"@tsconfig/strictest": "^2.0.5",
|
||||
"@types/bun": "^1.1.10",
|
||||
"@types/bun": "^1.1.11",
|
||||
"conventional-changelog-conventionalcommits": "^7.0.2",
|
||||
"lefthook": "^1.7.15",
|
||||
"lefthook": "^1.7.21",
|
||||
"portainer-service-webhook": "https://github.com/newarifrh/portainer-service-webhook#v1",
|
||||
"semantic-release": "^24.1.1",
|
||||
"turbo": "^2.1.2",
|
||||
"typescript": "^5.6.2"
|
||||
"semantic-release": "^24.1.2",
|
||||
"turbo": "^2.1.3",
|
||||
"typescript": "^5.6.3"
|
||||
},
|
||||
"trustedDependencies": [
|
||||
"@biomejs/biome",
|
||||
@@ -56,6 +56,6 @@
|
||||
"patchedDependencies": {
|
||||
"@semantic-release/npm@12.0.1": "patches/@semantic-release%2Fnpm@12.0.1.patch",
|
||||
"drizzle-kit@0.22.8": "patches/drizzle-kit@0.22.8.patch",
|
||||
"decancer@3.2.3": "patches/decancer@3.2.3.patch"
|
||||
"decancer@3.2.4": "patches/decancer@3.2.4.patch"
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user