From 947100282e60ced5df8a8121cb713aabd878f9a8 Mon Sep 17 00:00:00 2001 From: Charlie Laabs Date: Tue, 4 Jan 2022 22:15:33 -0600 Subject: [PATCH] Update docs for 2.0.0 prep --- .dockerignore | 4 +- .github/workflows/typedoc.yml | 33 +++++ .gitignore | 1 + CHANGELOG.md | 94 +++++++++++++++ README.md | 218 ++++++---------------------------- img/listen.png | Bin 0 -> 47557 bytes img/respond.png | Bin 0 -> 32982 bytes img/train.png | Bin 0 -> 47897 bytes package-lock.json | 124 +++++++++++++++++++ package.json | 6 +- src/config/classes.ts | 15 ++- 11 files changed, 306 insertions(+), 189 deletions(-) create mode 100644 .github/workflows/typedoc.yml create mode 100644 CHANGELOG.md create mode 100644 img/listen.png create mode 100644 img/respond.png create mode 100644 img/train.png diff --git a/.dockerignore b/.dockerignore index b924a5a..1c7628b 100644 --- a/.dockerignore +++ b/.dockerignore @@ -1,3 +1,5 @@ config dist -node_modules \ No newline at end of file +node_modules +img +docs \ No newline at end of file diff --git a/.github/workflows/typedoc.yml b/.github/workflows/typedoc.yml new file mode 100644 index 0000000..b49c983 --- /dev/null +++ b/.github/workflows/typedoc.yml @@ -0,0 +1,33 @@ +name: Publish Typedoc to Github Pages +on: + push: + branches: + - master + paths: + - Readme.md + - src/config/classes.ts + - .github/workflows/typedoc.yml + - package.json +jobs: + publish: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: Setup Node.js for use with actions + uses: actions/setup-node@v2 + with: + node-version: 'lts/*' + cache: 'npm' + + - name: NPM install + run: npm ci + + # Runs a single command using the runners shell + - name: Build and lint + run: npm run docs + + - name: Deploy + uses: peaceiris/actions-gh-pages@v3 + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + publish_dir: ./docs \ No newline at end of file diff --git a/.gitignore b/.gitignore index ab4680a..8d1d733 100644 --- a/.gitignore +++ b/.gitignore @@ -4,6 +4,7 @@ logs npm-debug.log* yarn-debug.log* yarn-error.log* +docs # Runtime data pids diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..500a268 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,94 @@ +# Changelog + +All notable changes to this project will be documented in this file. + +## Versions + +### 2.0.0 + +#### Breaking Changes + +* Config option `prefix` renamed to `messageCommandPrefix` +* Config option `game` renamed to `activity` +* Docker internal volume path moved from `/usr/src/markbot/config` to `/usr/app/config` +* Database changed from JSON files to a SQLite database. You'll need to retrain the bot to use it again. +* The bot must be explicitly granted permission to listen to a list of channels before using it. Configure it with `/listen`. +* Docker user changed from `root` to `node` + +#### New Features + +* Data is stored in a relational database to reduce memory and disk read/write usage, as well as to decrease latency +* The bot can be restricted to only learn/listen from a strict list of channels +* Bot responses can be seeded by a short phrase +* Discord slash command support +* Many more config options available at +* Config file supports [JSON5](https://json5.org/) (comments, trailing commas, etc) + +### 0.7.3 + +* Fix crash when fetched messages is empty +* Update docs +* Update dependencies + +### 0.7.2 + +* Fix @everyone replacement + +### 0.7.1 + +* Readme updates +* Config loading fix +* Fix min score +* Add generator options to config +* Document Node 12 update + +### 0.7.0 + +* Convert project to Typescript +* Optimize Docker build (smaller image) +* Load corpus from filesystem to reduce memory load + +### 0.6.2 + +* Fix MarkovDB not loading on boot + +### 0.6.1 + +* Fix bot crashing on scheduled regen + +### 0.6.0 + +* Added Docker deploy functionality. +* Moved config and database to `./config` directory. Existing configs will be migrated. +* Config-less support via bot token located in an environment variable. +* Update dependencies. +* Change corpus regen time to 4 AM. + +### 0.5.0 + +* Fixed bug where `!mark help` didn't work. +* Only admins can train. +* The bot responds when mentioned. +* The bot cannot mention @everyone. +* Added version number to help. +* Added `!mark tts` for a quieter TTS response. +* Readme overhaul. +* Simpler config loading. + +### 0.4.0 + +* Huge refactor. +* Added `!mark debug` which sends debug info alongside the message. +* Converted the fetchMessages function to async/await (updating the requirement to Node.js 8). +* Updated module versions. +* Added faster unique-array-by-property function +* Added linting and linted the project. + +### 0.3.0 + +* Added TTS support and random message attachments. +* Deleted messages no longer persist in the database longer than 24 hours. + +### 0.2.0 + +* Updated training algorithm and data structure. diff --git a/README.md b/README.md index d797166..21eed8f 100644 --- a/README.md +++ b/README.md @@ -4,213 +4,65 @@ A Markov chain bot using markov-strings. ## Usage +1. Configure what channels you want the bot to listen/learn from: + * User: `/listen modify` + * Bot: ![Select which channels your would like the bot to actively listen to](img/listen.png) 1. Train the bot in a lengthy text channel: - * User: `!mark train` - * Markbot: `@User, Finished training from past 76394 messages.` + * User: `/train` + * Bot: ![Parsing past messages from 5 channel(s).](img/train.png) 1. Ask the bot to say something: - * User: `!mark` - * Markbot: `This Shopko has a Linux release` + * User: `/mark` + * Bot: ![worms are not baby snakes, by the way](img/respond.png) ## Setup -First, create a [Discord bot application](https://discordapp.com/developers/applications/). +This bot stores your Discord server's entire message history, so a public instance to invite to your server is not available due to obvious data privacy concerns. Instead, you can host it yourself. + +1. Create a [Discord bot application](https://discordapp.com/developers/applications/) +1. Under the "Bot" section, enable the "Message Content Intent", and copy the token for later. +1. Setup and configure the bot using one of the below methods: + +### Docker + +Running this bot in Docker is the easiest way to ensure it runs as expected and can easily recieve updates. + +1. [Install Docker for your OS](https://docs.docker.com/get-docker/) +1. Open a command prompt and run: + + ```sh + docker run --rm -ti -v /my/host/dir:/usr/app/config ghcr.io/claabs/markov-discord:latest + ``` + + Where `/my/host/dir` is a accessible path on your system. +1. The Docker container will create a default config file in your mounted volume (`/my/host/dir`). Open it and add your bot token. You may change any other values to your liking as well. Details for each configuration item can be found here: +1. Run the container again and use the invite link printed to the logs. ### Windows -#### Windows Requirements - -* [Node.js 12.0+ (Current)](https://nodejs.org/en/download/) - * Installing with build tools is recommended - -#### Windows Setup - -1. Install Node.js 12.0 or newer. +1. Install [Node.js 16 or newer](https://nodejs.org/en/download/). 1. Download this repository using git in a command prompt ```cmd - git clone https://github.com/charlocharlie/markov-discord.git + git clone https://github.com/claabs/markov-discord.git ``` - or by just downloading and extracting the [project zip](https://github.com/charlocharlie/markov-discord/archive/master.zip) from GitHub. + or by just downloading and extracting the [project zip](https://github.com/claabs/markov-discord/archive/master.zip) from GitHub. 1. Open a command prompt in the `markov-discord` folder. ```sh - # Install Windows build tools (if you didn't install build tools with Node) - npm install --global windows-build-tools # NPM install non-development packages - npm install + npm ci --only=production # Build the Typescript npm run build + # Initialize the config + npm start ``` -1. Create a file called `config.json` in the project directory with the contents: - - ```json - { - "prefix":"!mark", - "game":"\"!mark help\" for help", - "token":"k5NzE2NDg1MTIwMjc0ODQ0Nj.DSnXwg.ttNotARealToken5p3WfDoUxhiH" - } - ``` - - Feel free to change the command prefix, game display. Add your bot token. +1. The program will create a `config/config.json` in the project folder. Open it and add your bot token. You may change any other values to your liking as well. Details for each configuration item can be found here: 1. Run the bot: ```sh npm start ``` -### Debian Linux - -#### Debian Requirements - -* Node.js 12.0+ -* Python 2.7 (for erlpack) -* C++ build tools (for erlpack) - -#### Download - -```sh -# Clone this repository -git clone https://github.com/charlocharlie/markov-discord.git -cd markov-discord -``` - -#### Configure - -Create a file called `config.json` in the project directory with the contents: - -```json -{ - "prefix":"!mark", - "game":"\"!mark help\" for help", - "token":"k5NzE2NDg1MTIwMjc0ODQ0Nj.DSnXwg.ttNotARealToken5p3WfDoUxhiH" -} -``` - -Feel free to change the command prefix, game display. Add your bot token. - -#### Install and Run - -```sh -# Install Node.js if you haven't already -wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash -nvm install node - -# NPM install non-development packages -npm install - -# If you run into build errors, install the following packages: -sudo apt-get install python -y -sudo apt-get install build-essential -y - -# Build the Typescript -npm run build - -# Start the program -npm start -``` - -### Docker - -#### Setup with Docker Hub image - -1. Install Docker for your OS. -1. Open a command prompts and run: - - ```sh - docker pull charlocharlie/markov-discord - docker run --rm -d charlocharlie/markov-discord:latest - ``` - -#### Setup with source - -1. Install Docker for your OS. -1. Download this repository using git in a command prompt - - ```sh - git clone https://github.com/charlocharlie/markov-discord.git - ``` - - or by just downloading and extracting the [project zip](https://github.com/charlocharlie/markov-discord/archive/master.zip) from GitHub. -1. Open a command prompt in the markov-discord folder and run this one-liner: - - ```sh - docker run --rm -e TOKEN=YOUR.BOT.TOKEN -v config:/usr/src/markbot/config -it $(docker build -q .) - # Be patient as the build output is suppressed - ``` - -## Changelog - -### 0.7.3 - -* Fix crash when fetched messages is empty -* Update docs -* Update dependencies - -### 0.7.2 - -* Fix @everyone replacement - -### 0.7.1 - -* Readme updates -* Config loading fix -* Fix min score -* Add generator options to config -* Document Node 12 update - -### 0.7.0 - -* Convert project to Typescript -* Optimize Docker build (smaller image) -* Load corpus from filesystem to reduce memory load - -### 0.6.2 - -* Fix MarkovDB not loading on boot - -### 0.6.1 - -* Fix bot crashing on scheduled regen - -### 0.6.0 - -* Added Docker deploy functionality. -* Moved config and database to `./config` directory. Existing configs will be migrated. -* Config-less support via bot token located in an environment variable. -* Update dependencies. -* Change corpus regen time to 4 AM. - -### 0.5.0 - -* Fixed bug where `!mark help` didn't work. -* Only admins can train. -* The bot responds when mentioned. -* The bot cannot mention @everyone. -* Added version number to help. -* Added `!mark tts` for a quieter TTS response. -* Readme overhaul. -* Simpler config loading. - -### 0.4.0 - -* Huge refactor. -* Added `!mark debug` which sends debug info alongside the message. -* Converted the fetchMessages function to async/await (updating the requirement to Node.js 8). -* Updated module versions. -* Added faster unique-array-by-property function -* Added linting and linted the project. - -### 0.3.0 - -* Added TTS support and random message attachments. -* Deleted messages no longer persist in the database longer than 24 hours. - -### 0.2.0 - -* Updated training algorithm and data structure. - -## Thanks - -Thanks to [BotMaker-for-Discord](https://github.com/CorySanin/BotMaker-for-Discord) which I used as a reference when during development. + And use the invite link printed to the logs. diff --git a/img/listen.png b/img/listen.png new file mode 100644 index 0000000000000000000000000000000000000000..8069924597fcd5e9791477b9679b5e77e67307ba GIT binary patch literal 47557 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�};_ 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 ZG%HrrDkI~Utq6cWZFK`^g{pn{{{eQU_zeI6 literal 0 HcmV?d00001 diff --git a/img/respond.png b/img/respond.png new file mode 100644 index 0000000000000000000000000000000000000000..fb8fd667653c7c38c1a26b846b8ae676ca6a2782 GIT binary patch literal 32982 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 o0nG$ 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 z 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 z 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" } }, + "node_modules/jsonc-parser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.0.0.tgz", + "integrity": "sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==", + "dev": true + }, "node_modules/jsonfile": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", @@ -2628,12 +2635,30 @@ "node": ">=10" } }, + "node_modules/lunr": { + "version": "2.3.9", + "resolved": "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz", + "integrity": "sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==", + "dev": true + }, "node_modules/make-error": { "version": "1.3.6", "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", "dev": true }, + "node_modules/marked": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/marked/-/marked-3.0.8.tgz", + "integrity": "sha512-0gVrAjo5m0VZSJb4rpL59K1unJAMb/hm8HRXqasD8VeC8m91ytDPMritgFSlKonfdt+rRYYpP/JfLxgIX8yoSw==", + "dev": true, + "bin": { + "marked": "bin/marked" + }, + "engines": { + "node": ">= 12" + } + }, "node_modules/markov-strings-db": { "version": "4.1.4", "resolved": "https://registry.npmjs.org/markov-strings-db/-/markov-strings-db-4.1.4.tgz", @@ -3485,6 +3510,17 @@ "node": ">=8" } }, + "node_modules/shiki": { + "version": "0.9.15", + "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.9.15.tgz", + "integrity": "sha512-/Y0z9IzhJ8nD9nbceORCqu6NgT9X6I8Fk8c3SICHI5NbZRLdZYFaB233gwct9sU0vvSypyaL/qaKvzyQGJBZSw==", + "dev": true, + "dependencies": { + "jsonc-parser": "^3.0.0", + "vscode-oniguruma": "^1.6.1", + "vscode-textmate": "5.2.0" + } + }, "node_modules/side-channel": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", @@ -3948,6 +3984,28 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/typedoc": { + "version": "0.22.10", + "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.22.10.tgz", + "integrity": "sha512-hQYZ4WtoMZ61wDC6w10kxA42+jclWngdmztNZsDvIz7BMJg7F2xnT+uYsUa7OluyKossdFj9E9Ye4QOZKTy8SA==", + "dev": true, + "dependencies": { + "glob": "^7.2.0", + "lunr": "^2.3.9", + "marked": "^3.0.8", + "minimatch": "^3.0.4", + "shiki": "^0.9.12" + }, + "bin": { + "typedoc": "bin/typedoc" + }, + "engines": { + "node": ">= 12.10.0" + }, + "peerDependencies": { + "typescript": "4.0.x || 4.1.x || 4.2.x || 4.3.x || 4.4.x || 4.5.x" + } + }, "node_modules/typeorm": { "version": "0.2.41", "resolved": "https://registry.npmjs.org/typeorm/-/typeorm-0.2.41.tgz", @@ -4154,6 +4212,18 @@ "node": ">= 0.10" } }, + "node_modules/vscode-oniguruma": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/vscode-oniguruma/-/vscode-oniguruma-1.6.1.tgz", + "integrity": "sha512-vc4WhSIaVpgJ0jJIejjYxPvURJavX6QG41vu0mGhqywMkQqulezEqEQ3cO3gc8GvcOpX6ycmKGqRoROEMBNXTQ==", + "dev": true + }, + "node_modules/vscode-textmate": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-5.2.0.tgz", + "integrity": "sha512-Uw5ooOQxRASHgu6C7GVvUxisKXfSgW4oFlO+aa+PAkgmH89O3CXxEEzNRNtHSqtXFTl0nAC1uYj0GMSH27uwtQ==", + "dev": true + }, "node_modules/webidl-conversions": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", @@ -6255,6 +6325,12 @@ "minimist": "^1.2.5" } }, + "jsonc-parser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.0.0.tgz", + "integrity": "sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==", + "dev": true + }, "jsonfile": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", @@ -6308,12 +6384,24 @@ "yallist": "^4.0.0" } }, + "lunr": { + "version": "2.3.9", + "resolved": "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz", + "integrity": "sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==", + "dev": true + }, "make-error": { "version": "1.3.6", "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", "dev": true }, + "marked": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/marked/-/marked-3.0.8.tgz", + "integrity": "sha512-0gVrAjo5m0VZSJb4rpL59K1unJAMb/hm8HRXqasD8VeC8m91ytDPMritgFSlKonfdt+rRYYpP/JfLxgIX8yoSw==", + "dev": true + }, "markov-strings-db": { "version": "4.1.4", "resolved": "https://registry.npmjs.org/markov-strings-db/-/markov-strings-db-4.1.4.tgz", @@ -6945,6 +7033,17 @@ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true }, + "shiki": { + "version": "0.9.15", + "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.9.15.tgz", + "integrity": "sha512-/Y0z9IzhJ8nD9nbceORCqu6NgT9X6I8Fk8c3SICHI5NbZRLdZYFaB233gwct9sU0vvSypyaL/qaKvzyQGJBZSw==", + "dev": true, + "requires": { + "jsonc-parser": "^3.0.0", + "vscode-oniguruma": "^1.6.1", + "vscode-textmate": "5.2.0" + } + }, "side-channel": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", @@ -7291,6 +7390,19 @@ "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true }, + "typedoc": { + "version": "0.22.10", + "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.22.10.tgz", + "integrity": "sha512-hQYZ4WtoMZ61wDC6w10kxA42+jclWngdmztNZsDvIz7BMJg7F2xnT+uYsUa7OluyKossdFj9E9Ye4QOZKTy8SA==", + "dev": true, + "requires": { + "glob": "^7.2.0", + "lunr": "^2.3.9", + "marked": "^3.0.8", + "minimatch": "^3.0.4", + "shiki": "^0.9.12" + } + }, "typeorm": { "version": "0.2.41", "resolved": "https://registry.npmjs.org/typeorm/-/typeorm-0.2.41.tgz", @@ -7392,6 +7504,18 @@ "resolved": "https://registry.npmjs.org/validator/-/validator-13.7.0.tgz", "integrity": "sha512-nYXQLCBkpJ8X6ltALua9dRrZDHVYxjJ1wgskNt1lH9fzGjs3tgojGSCBjmEPwkWS1y29+DrizMTW19Pr9uB2nw==" }, + "vscode-oniguruma": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/vscode-oniguruma/-/vscode-oniguruma-1.6.1.tgz", + "integrity": "sha512-vc4WhSIaVpgJ0jJIejjYxPvURJavX6QG41vu0mGhqywMkQqulezEqEQ3cO3gc8GvcOpX6ycmKGqRoROEMBNXTQ==", + "dev": true + }, + "vscode-textmate": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-5.2.0.tgz", + "integrity": "sha512-Uw5ooOQxRASHgu6C7GVvUxisKXfSgW4oFlO+aa+PAkgmH89O3CXxEEzNRNtHSqtXFTl0nAC1uYj0GMSH27uwtQ==", + "dev": true + }, "webidl-conversions": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", diff --git a/package.json b/package.json index dfb85ee..1aafe06 100644 --- a/package.json +++ b/package.json @@ -4,13 +4,14 @@ "description": "A conversational Markov chain bot for Discord", "main": "dist/index.js", "scripts": { - "start": "node dist/index.js", + "start": "NODE_ENV=production node dist/index.js", "start:ts": "ts-node src/index.ts", "build": "rimraf dist && tsc", "lint": "tsc --noEmit && eslint **/*.ts *.js", "docker:build": "docker build . -t charlocharlie/markov-discord:latest --target deploy", "docker:run": "docker run --rm -ti -v $(pwd)/config:/usr/app/config charlocharlie/markov-discord:latest", - "typeorm": "node --require ts-node/register ./node_modules/typeorm/cli.js" + "typeorm": "node --require ts-node/register ./node_modules/typeorm/cli.js", + "docs": "typedoc --out docs src/config/classes.ts" }, "repository": "https://github.com/claabs/markov-discord.git", "keywords": [ @@ -67,6 +68,7 @@ "prettier": "^2.5.1", "rimraf": "^3.0.2", "ts-node": "^10.4.0", + "typedoc": "^0.22.10", "types-package-json": "^2.0.39", "typescript": "^4.5.4" }, diff --git a/src/config/classes.ts b/src/config/classes.ts index 039ae43..60a6008 100644 --- a/src/config/classes.ts +++ b/src/config/classes.ts @@ -1,7 +1,15 @@ /* eslint-disable @typescript-eslint/no-empty-function, no-useless-constructor, max-classes-per-file */ import 'reflect-metadata'; import { Type } from 'class-transformer'; -import { IsString, IsOptional, IsEnum, IsArray, IsInt, IsDefined } from 'class-validator'; +import { + IsString, + IsOptional, + IsEnum, + IsArray, + IsInt, + IsDefined, + IsNotEmpty, +} from 'class-validator'; export enum LogLevel { SILENT = 'silent', @@ -31,7 +39,8 @@ export class AppConfig { */ @IsDefined() @IsString() - token = process.env.TOKEN as string; + @IsNotEmpty() + token = process.env.TOKEN || ''; /** * The command prefix used to trigger the bot commands (when not using slash commands) @@ -65,7 +74,7 @@ export class AppConfig { /** * A list of Discord user IDs that have owner permissions for the bot - * @example ['82684276755136512'] + * @example ["82684276755136512"] * @default [] * @env OWNER_IDS (comma separated) */