diff --git a/scripts/license.js b/scripts/license.js
index b12080dd9..380a3ed6f 100644
--- a/scripts/license.js
+++ b/scripts/license.js
@@ -34,12 +34,7 @@ const addToDir = (dir) => {
const commentStrings = languageCommentStrings[fileType];
if (!commentStrings) continue;
- const preamble =
- commentStrings[0] +
- "\n" +
- SPACEBAR_LICENSE_PREAMBLE +
- "\n" +
- commentStrings[1];
+ const preamble = commentStrings[0] + "\n" + SPACEBAR_LICENSE_PREAMBLE + "\n" + commentStrings[1];
if (file.startsWith(preamble)) {
continue;
diff --git a/scripts/openapi.js b/scripts/openapi.js
index 8258a76c2..c0d3f1b1c 100644
--- a/scripts/openapi.js
+++ b/scripts/openapi.js
@@ -20,9 +20,7 @@ require("module-alias/register");
const getRouteDescriptions = require("./util/getRouteDescriptions");
const path = require("path");
const fs = require("fs");
-const {
- NO_AUTHORIZATION_ROUTES,
-} = require("../dist/api/middlewares/Authentication");
+const { NO_AUTHORIZATION_ROUTES } = require("../dist/api/middlewares/Authentication");
require("missing-native-js-functions");
const openapiPath = path.join(__dirname, "..", "assets", "openapi.json");
@@ -35,8 +33,7 @@ let specification = {
openapi: "3.1.0",
info: {
title: "Spacebar Server",
- description:
- "Spacebar is a free open source selfhostable discord compatible chat, voice and video platform",
+ description: "Spacebar is a free open source selfhostable discord compatible chat, voice and video platform",
license: {
name: "AGPLV3",
url: "https://www.gnu.org/licenses/agpl-3.0.en.html",
@@ -90,8 +87,7 @@ function combineSchemas(schemas) {
continue;
}
specification.components = specification.components || {};
- specification.components.schemas =
- specification.components.schemas || {};
+ specification.components.schemas = specification.components.schemas || {};
specification.components.schemas[key] = definitions[key];
delete definitions[key].additionalProperties;
delete definitions[key].$schema;
@@ -170,8 +166,7 @@ function apiRoutes() {
[k]: {
...(v.body
? {
- description:
- obj?.responses?.[k]?.description || "",
+ description: obj?.responses?.[k]?.description || "",
content: {
"application/json": {
schema: schema,
@@ -218,12 +213,9 @@ function apiRoutes() {
obj.tags = [...(obj.tags || []), getTag(p)].unique();
- specification.paths[path] = Object.assign(
- specification.paths[path] || {},
- {
- [method]: obj,
- },
- );
+ specification.paths[path] = Object.assign(specification.paths[path] || {}, {
+ [method]: obj,
+ });
});
}
@@ -236,7 +228,7 @@ function main() {
openapiPath,
JSON.stringify(specification, null, 4)
.replaceAll("#/definitions", "#/components/schemas")
- .replaceAll("bigint", "number"),
+ .replaceAll("bigint", "number")
);
}
diff --git a/scripts/schema.js b/scripts/schema.js
index ff3280aca..f8374079a 100644
--- a/scripts/schema.js
+++ b/scripts/schema.js
@@ -62,18 +62,13 @@ const Excluded = [
function main() {
const program = TJS.programFromConfig(
path.join(__dirname, "..", "tsconfig.json"),
- walk(path.join(__dirname, "..", "src", "util", "schemas")),
+ walk(path.join(__dirname, "..", "src", "util", "schemas"))
);
const generator = TJS.buildGenerator(program, settings);
if (!generator || !program) return;
let schemas = generator.getUserSymbols().filter((x) => {
- return (
- (x.endsWith("Schema") ||
- x.endsWith("Response") ||
- x.startsWith("API")) &&
- !Excluded.includes(x)
- );
+ return (x.endsWith("Schema") || x.endsWith("Response") || x.startsWith("API")) && !Excluded.includes(x);
});
var definitions = {};
diff --git a/scripts/stagingMigration/index.js b/scripts/stagingMigration/index.js
index 8ba3daa0d..209a11641 100644
--- a/scripts/stagingMigration/index.js
+++ b/scripts/stagingMigration/index.js
@@ -22,15 +22,7 @@ const path = require("path");
(async () => {
DataSourceOptions.setOptions({
logging: true,
- migrations: [
- path.join(
- process.cwd(),
- "scripts",
- "stagingMigration",
- DatabaseType,
- "*.js",
- ),
- ],
+ migrations: [path.join(process.cwd(), "scripts", "stagingMigration", DatabaseType, "*.js")],
});
const dbConnection = await DataSourceOptions.initialize();
diff --git a/scripts/stagingMigration/maria/1672833135670-staging.js b/scripts/stagingMigration/maria/1672833135670-staging.js
index 0da731dcc..e1239ab57 100644
--- a/scripts/stagingMigration/maria/1672833135670-staging.js
+++ b/scripts/stagingMigration/maria/1672833135670-staging.js
@@ -22,1098 +22,658 @@ module.exports = class staging1672833135670 {
name = "staging1672833135670";
async up(queryRunner) {
+ await queryRunner.query(`ALTER TABLE \`users\` DROP FOREIGN KEY \`FK_76ba283779c8441fd5ff819c8cf\``);
+ await queryRunner.query(`DROP INDEX \`REL_76ba283779c8441fd5ff819c8c\` ON \`users\``);
+ await queryRunner.query(`ALTER TABLE \`user_settings\` CHANGE \`id\` \`index\` varchar(255) NOT NULL`);
+ await queryRunner.query(
+ `CREATE TABLE \`embed_cache\` (\`id\` varchar(255) NOT NULL, \`url\` varchar(255) NOT NULL, \`embed\` text NOT NULL, PRIMARY KEY (\`id\`)) ENGINE=InnoDB`
+ );
+ await queryRunner.query(
+ `CREATE TABLE \`security_settings\` (\`id\` varchar(255) NOT NULL, \`guild_id\` varchar(255) NULL, \`channel_id\` varchar(255) NULL, \`encryption_permission_mask\` int NOT NULL, \`allowed_algorithms\` text NOT NULL, \`current_algorithm\` varchar(255) NOT NULL, \`used_since_message\` varchar(255) NULL, PRIMARY KEY (\`id\`)) ENGINE=InnoDB`
+ );
+ await queryRunner.query(`ALTER TABLE \`client_release\` DROP COLUMN \`deb_url\``);
+ await queryRunner.query(`ALTER TABLE \`client_release\` DROP COLUMN \`osx_url\``);
+ await queryRunner.query(`ALTER TABLE \`client_release\` DROP COLUMN \`win_url\``);
+ await queryRunner.query(`ALTER TABLE \`users\` DROP COLUMN \`settingsId\``);
+ await queryRunner.query(`ALTER TABLE \`client_release\` ADD \`platform\` varchar(255) NOT NULL`);
+ await queryRunner.query(`ALTER TABLE \`client_release\` ADD \`enabled\` tinyint NOT NULL`);
+ await queryRunner.query(`ALTER TABLE \`users\` ADD \`purchased_flags\` int NOT NULL`);
+ await queryRunner.query(`ALTER TABLE \`users\` ADD \`premium_usage_flags\` int NOT NULL`);
+ await queryRunner.query(`ALTER TABLE \`users\` ADD \`settingsIndex\` int NULL`);
+ await queryRunner.query(
+ `ALTER TABLE \`users\` ADD UNIQUE INDEX \`IDX_0c14beb78d8c5ccba66072adbc\` (\`settingsIndex\`)`
+ );
+ await queryRunner.query(`ALTER TABLE \`config\` CHANGE \`value\` \`value\` text NULL`);
+ await queryRunner.query(`ALTER TABLE \`relationships\` CHANGE \`nickname\` \`nickname\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`users\` DROP FOREIGN KEY \`FK_76ba283779c8441fd5ff819c8cf\``,
+ `ALTER TABLE \`connected_accounts\` DROP FOREIGN KEY \`FK_f47244225a6a1eac04a3463dd90\``
);
+ await queryRunner.query(`ALTER TABLE \`connected_accounts\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`attachments\` DROP FOREIGN KEY \`FK_623e10eec51ada466c5038979e3\``);
+ await queryRunner.query(`ALTER TABLE \`attachments\` CHANGE \`height\` \`height\` int NULL`);
+ await queryRunner.query(`ALTER TABLE \`attachments\` CHANGE \`width\` \`width\` int NULL`);
await queryRunner.query(
- `DROP INDEX \`REL_76ba283779c8441fd5ff819c8c\` ON \`users\``,
+ `ALTER TABLE \`attachments\` CHANGE \`content_type\` \`content_type\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`attachments\` CHANGE \`message_id\` \`message_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`audit_logs\` DROP FOREIGN KEY \`FK_bd2726fd31b35443f2245b93ba0\``);
+ await queryRunner.query(`ALTER TABLE \`audit_logs\` DROP FOREIGN KEY \`FK_3cd01cd3ae7aab010310d96ac8e\``);
+ await queryRunner.query(`ALTER TABLE \`audit_logs\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`audit_logs\` CHANGE \`options\` \`options\` text NULL`);
+ await queryRunner.query(`ALTER TABLE \`audit_logs\` CHANGE \`reason\` \`reason\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`audit_logs\` CHANGE \`target_id\` \`target_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`backup_codes\` DROP FOREIGN KEY \`FK_70066ea80d2f4b871beda32633b\``);
+ await queryRunner.query(`ALTER TABLE \`backup_codes\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`bans\` DROP FOREIGN KEY \`FK_5999e8e449f80a236ff72023559\``);
+ await queryRunner.query(`ALTER TABLE \`bans\` DROP FOREIGN KEY \`FK_9d3ab7dd180ebdd245cdb66ecad\``);
+ await queryRunner.query(`ALTER TABLE \`bans\` DROP FOREIGN KEY \`FK_07ad88c86d1f290d46748410d58\``);
+ await queryRunner.query(`ALTER TABLE \`bans\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`bans\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`bans\` CHANGE \`executor_id\` \`executor_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`bans\` CHANGE \`reason\` \`reason\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`categories\` CHANGE \`name\` \`name\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`categories\` CHANGE \`is_primary\` \`is_primary\` tinyint NULL`);
+ await queryRunner.query(`ALTER TABLE \`client_release\` DROP COLUMN \`pub_date\``);
+ await queryRunner.query(`ALTER TABLE \`client_release\` ADD \`pub_date\` datetime NOT NULL`);
+ await queryRunner.query(`ALTER TABLE \`client_release\` CHANGE \`notes\` \`notes\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`id\` \`index\` varchar(255) NOT NULL`,
+ `ALTER TABLE \`read_states\` CHANGE \`last_message_id\` \`last_message_id\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`read_states\` CHANGE \`public_ack\` \`public_ack\` varchar(255) NULL`);
await queryRunner.query(
- `CREATE TABLE \`embed_cache\` (\`id\` varchar(255) NOT NULL, \`url\` varchar(255) NOT NULL, \`embed\` text NOT NULL, PRIMARY KEY (\`id\`)) ENGINE=InnoDB`,
+ `ALTER TABLE \`read_states\` CHANGE \`notifications_cursor\` \`notifications_cursor\` varchar(255) NULL`
);
await queryRunner.query(
- `CREATE TABLE \`security_settings\` (\`id\` varchar(255) NOT NULL, \`guild_id\` varchar(255) NULL, \`channel_id\` varchar(255) NULL, \`encryption_permission_mask\` int NOT NULL, \`allowed_algorithms\` text NOT NULL, \`current_algorithm\` varchar(255) NOT NULL, \`used_since_message\` varchar(255) NULL, PRIMARY KEY (\`id\`)) ENGINE=InnoDB`,
- );
- await queryRunner.query(
- `ALTER TABLE \`client_release\` DROP COLUMN \`deb_url\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`client_release\` DROP COLUMN \`osx_url\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`client_release\` DROP COLUMN \`win_url\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`users\` DROP COLUMN \`settingsId\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`client_release\` ADD \`platform\` varchar(255) NOT NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`client_release\` ADD \`enabled\` tinyint NOT NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`users\` ADD \`purchased_flags\` int NOT NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`users\` ADD \`premium_usage_flags\` int NOT NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`users\` ADD \`settingsIndex\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`users\` ADD UNIQUE INDEX \`IDX_0c14beb78d8c5ccba66072adbc\` (\`settingsIndex\`)`,
- );
- await queryRunner.query(
- `ALTER TABLE \`config\` CHANGE \`value\` \`value\` text NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`relationships\` CHANGE \`nickname\` \`nickname\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`connected_accounts\` DROP FOREIGN KEY \`FK_f47244225a6a1eac04a3463dd90\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`connected_accounts\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`attachments\` DROP FOREIGN KEY \`FK_623e10eec51ada466c5038979e3\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`attachments\` CHANGE \`height\` \`height\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`attachments\` CHANGE \`width\` \`width\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`attachments\` CHANGE \`content_type\` \`content_type\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`attachments\` CHANGE \`message_id\` \`message_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`audit_logs\` DROP FOREIGN KEY \`FK_bd2726fd31b35443f2245b93ba0\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`audit_logs\` DROP FOREIGN KEY \`FK_3cd01cd3ae7aab010310d96ac8e\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`audit_logs\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`audit_logs\` CHANGE \`options\` \`options\` text NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`audit_logs\` CHANGE \`reason\` \`reason\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`audit_logs\` CHANGE \`target_id\` \`target_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`backup_codes\` DROP FOREIGN KEY \`FK_70066ea80d2f4b871beda32633b\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`backup_codes\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`bans\` DROP FOREIGN KEY \`FK_5999e8e449f80a236ff72023559\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`bans\` DROP FOREIGN KEY \`FK_9d3ab7dd180ebdd245cdb66ecad\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`bans\` DROP FOREIGN KEY \`FK_07ad88c86d1f290d46748410d58\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`bans\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`bans\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`bans\` CHANGE \`executor_id\` \`executor_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`bans\` CHANGE \`reason\` \`reason\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`categories\` CHANGE \`name\` \`name\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`categories\` CHANGE \`is_primary\` \`is_primary\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`client_release\` DROP COLUMN \`pub_date\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`client_release\` ADD \`pub_date\` datetime NOT NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`client_release\` CHANGE \`notes\` \`notes\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`read_states\` CHANGE \`last_message_id\` \`last_message_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`read_states\` CHANGE \`public_ack\` \`public_ack\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`read_states\` CHANGE \`notifications_cursor\` \`notifications_cursor\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`read_states\` CHANGE \`last_pin_timestamp\` \`last_pin_timestamp\` datetime NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`read_states\` CHANGE \`mention_count\` \`mention_count\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`invites\` DROP FOREIGN KEY \`FK_3f4939aa1461e8af57fea3fb05d\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`invites\` DROP FOREIGN KEY \`FK_6a15b051fe5050aa00a4b9ff0f6\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`invites\` DROP FOREIGN KEY \`FK_15c35422032e0b22b4ada95f48f\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`invites\` DROP FOREIGN KEY \`FK_11a0d394f8fc649c19ce5f16b59\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`invites\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`invites\` CHANGE \`channel_id\` \`channel_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`invites\` CHANGE \`inviter_id\` \`inviter_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`invites\` CHANGE \`target_user_id\` \`target_user_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`invites\` CHANGE \`target_user_type\` \`target_user_type\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`invites\` CHANGE \`vanity_url\` \`vanity_url\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`voice_states\` DROP FOREIGN KEY \`FK_03779ef216d4b0358470d9cb748\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`voice_states\` DROP FOREIGN KEY \`FK_9f8d389866b40b6657edd026dd4\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`voice_states\` DROP FOREIGN KEY \`FK_5fe1d5f931a67e85039c640001b\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`voice_states\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`voice_states\` CHANGE \`channel_id\` \`channel_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`voice_states\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`voice_states\` CHANGE \`token\` \`token\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`voice_states\` CHANGE \`self_stream\` \`self_stream\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`voice_states\` CHANGE \`request_to_speak_timestamp\` \`request_to_speak_timestamp\` datetime NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`webhooks\` DROP FOREIGN KEY \`FK_487a7af59d189f744fe394368fc\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`webhooks\` DROP FOREIGN KEY \`FK_df528cf77e82f8032230e7e37d8\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`webhooks\` DROP FOREIGN KEY \`FK_c3e5305461931763b56aa905f1c\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`webhooks\` DROP FOREIGN KEY \`FK_0d523f6f997c86e052c49b1455f\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`webhooks\` DROP FOREIGN KEY \`FK_3a285f4f49c40e0706d3018bc9f\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`webhooks\` CHANGE \`name\` \`name\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`webhooks\` CHANGE \`avatar\` \`avatar\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`webhooks\` CHANGE \`token\` \`token\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`webhooks\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`webhooks\` CHANGE \`channel_id\` \`channel_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`webhooks\` CHANGE \`application_id\` \`application_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`webhooks\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`webhooks\` CHANGE \`source_guild_id\` \`source_guild_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` DROP FOREIGN KEY \`FK_c253dafe5f3a03ec00cd8fb4581\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` DROP FOREIGN KEY \`FK_3274522d14af40540b1a883fc80\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` DROP FOREIGN KEY \`FK_3873ed438575cce703ecff4fc7b\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`name\` \`name\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`icon\` \`icon\` text NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`last_message_id\` \`last_message_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`parent_id\` \`parent_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`owner_id\` \`owner_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`last_pin_timestamp\` \`last_pin_timestamp\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`default_auto_archive_duration\` \`default_auto_archive_duration\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`position\` \`position\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`permission_overwrites\` \`permission_overwrites\` text NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`video_quality_mode\` \`video_quality_mode\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`bitrate\` \`bitrate\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`user_limit\` \`user_limit\` int NULL`,
- );
- await queryRunner.query(
- `UPDATE channels SET nsfw = 0 WHERE nsfw IS NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`nsfw\` \`nsfw\` tinyint NOT NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`rate_limit_per_user\` \`rate_limit_per_user\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`topic\` \`topic\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`retention_policy_id\` \`retention_policy_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`flags\` \`flags\` int NOT NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`default_thread_rate_limit_per_user\` \`default_thread_rate_limit_per_user\` int NOT NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`emojis\` DROP FOREIGN KEY \`FK_fa7ddd5f9a214e28ce596548421\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`emojis\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`emojis\` CHANGE \`groups\` \`groups\` text NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`notes\` DROP FOREIGN KEY \`FK_f9e103f8ae67cb1787063597925\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`notes\` DROP FOREIGN KEY \`FK_23e08e5b4481711d573e1abecdc\``,
- );
- await queryRunner.query(
- `DROP INDEX \`IDX_74e6689b9568cc965b8bfc9150\` ON \`notes\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`notes\` CHANGE \`owner_id\` \`owner_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`notes\` CHANGE \`target_id\` \`target_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`sessions\` DROP FOREIGN KEY \`FK_085d540d9f418cfbdc7bd55bb19\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`sessions\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`sessions\` CHANGE \`activities\` \`activities\` text NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`stickers\` DROP FOREIGN KEY \`FK_e7cfa5cefa6661b3fb8fda8ce69\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`stickers\` DROP FOREIGN KEY \`FK_193d551d852aca5347ef5c9f205\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`stickers\` DROP FOREIGN KEY \`FK_8f4ee73f2bb2325ff980502e158\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`stickers\` CHANGE \`description\` \`description\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`stickers\` CHANGE \`available\` \`available\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`stickers\` CHANGE \`tags\` \`tags\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`stickers\` CHANGE \`pack_id\` \`pack_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`stickers\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`stickers\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`sticker_packs\` DROP FOREIGN KEY \`FK_448fafba4355ee1c837bbc865f1\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`sticker_packs\` CHANGE \`description\` \`description\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`sticker_packs\` CHANGE \`banner_asset_id\` \`banner_asset_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`sticker_packs\` CHANGE \`cover_sticker_id\` \`cover_sticker_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`sticker_packs\` CHANGE \`coverStickerId\` \`coverStickerId\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`templates\` DROP FOREIGN KEY \`FK_d7374b7f8f5fbfdececa4fb62e1\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`templates\` DROP FOREIGN KEY \`FK_445d00eaaea0e60a017a5ed0c11\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`templates\` CHANGE \`description\` \`description\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`templates\` CHANGE \`usage_count\` \`usage_count\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`templates\` CHANGE \`creator_id\` \`creator_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`templates\` CHANGE \`source_guild_id\` \`source_guild_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` DROP PRIMARY KEY`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` DROP COLUMN \`index\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` ADD \`index\` int NOT NULL PRIMARY KEY AUTO_INCREMENT`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`afk_timeout\` \`afk_timeout\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`allow_accessibility_detection\` \`allow_accessibility_detection\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`animate_emoji\` \`animate_emoji\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`animate_stickers\` \`animate_stickers\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`contact_sync_enabled\` \`contact_sync_enabled\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`convert_emoticons\` \`convert_emoticons\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`custom_status\` \`custom_status\` text NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`default_guilds_restricted\` \`default_guilds_restricted\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`detect_platform_accounts\` \`detect_platform_accounts\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`developer_mode\` \`developer_mode\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`disable_games_tab\` \`disable_games_tab\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`enable_tts_command\` \`enable_tts_command\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`explicit_content_filter\` \`explicit_content_filter\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`friend_source_flags\` \`friend_source_flags\` text NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`gateway_connected\` \`gateway_connected\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`gif_auto_play\` \`gif_auto_play\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`guild_folders\` \`guild_folders\` text NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`guild_positions\` \`guild_positions\` text NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`inline_attachment_media\` \`inline_attachment_media\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`inline_embed_media\` \`inline_embed_media\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`locale\` \`locale\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`message_display_compact\` \`message_display_compact\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`native_phone_integration_enabled\` \`native_phone_integration_enabled\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`render_embeds\` \`render_embeds\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`render_reactions\` \`render_reactions\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`restricted_guilds\` \`restricted_guilds\` text NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`show_current_game\` \`show_current_game\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`status\` \`status\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`stream_notifications_enabled\` \`stream_notifications_enabled\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`theme\` \`theme\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`timezone_offset\` \`timezone_offset\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` DROP FOREIGN KEY \`FK_f591a66b8019d87b0fe6c12dad6\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` DROP FOREIGN KEY \`FK_e2a2f873a64a5cf62526de42325\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` DROP FOREIGN KEY \`FK_fc1a451727e3643ca572a3bb394\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` DROP FOREIGN KEY \`FK_8d450b016dc8bec35f36729e4b0\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` DROP FOREIGN KEY \`FK_95828668aa333460582e0ca6396\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` DROP FOREIGN KEY \`FK_cfc3d3ad260f8121c95b31a1fce\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` DROP FOREIGN KEY \`FK_9d1d665379eefde7876a17afa99\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`afk_channel_id\` \`afk_channel_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`afk_timeout\` \`afk_timeout\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`banner\` \`banner\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`default_message_notifications\` \`default_message_notifications\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`description\` \`description\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`discovery_splash\` \`discovery_splash\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`explicit_content_filter\` \`explicit_content_filter\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` DROP COLUMN \`primary_category_id\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` ADD \`primary_category_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`icon\` \`icon\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `UPDATE guilds SET large = 0 WHERE large IS NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`large\` \`large\` tinyint NOT NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`max_members\` \`max_members\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`max_presences\` \`max_presences\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`max_video_channel_users\` \`max_video_channel_users\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`member_count\` \`member_count\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`presence_count\` \`presence_count\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`template_id\` \`template_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`mfa_level\` \`mfa_level\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`owner_id\` \`owner_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`preferred_locale\` \`preferred_locale\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`premium_subscription_count\` \`premium_subscription_count\` int NULL`,
- );
+ `ALTER TABLE \`read_states\` CHANGE \`last_pin_timestamp\` \`last_pin_timestamp\` datetime NULL`
+ );
+ await queryRunner.query(`ALTER TABLE \`read_states\` CHANGE \`mention_count\` \`mention_count\` int NULL`);
+ await queryRunner.query(`ALTER TABLE \`invites\` DROP FOREIGN KEY \`FK_3f4939aa1461e8af57fea3fb05d\``);
+ await queryRunner.query(`ALTER TABLE \`invites\` DROP FOREIGN KEY \`FK_6a15b051fe5050aa00a4b9ff0f6\``);
+ await queryRunner.query(`ALTER TABLE \`invites\` DROP FOREIGN KEY \`FK_15c35422032e0b22b4ada95f48f\``);
+ await queryRunner.query(`ALTER TABLE \`invites\` DROP FOREIGN KEY \`FK_11a0d394f8fc649c19ce5f16b59\``);
+ await queryRunner.query(`ALTER TABLE \`invites\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`invites\` CHANGE \`channel_id\` \`channel_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`invites\` CHANGE \`inviter_id\` \`inviter_id\` varchar(255) NULL`);
await queryRunner.query(
- `UPDATE guilds SET premium_tier = 0 WHERE premium_tier IS NULL`,
+ `ALTER TABLE \`invites\` CHANGE \`target_user_id\` \`target_user_id\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`invites\` CHANGE \`target_user_type\` \`target_user_type\` int NULL`);
+ await queryRunner.query(`ALTER TABLE \`invites\` CHANGE \`vanity_url\` \`vanity_url\` tinyint NULL`);
+ await queryRunner.query(`ALTER TABLE \`voice_states\` DROP FOREIGN KEY \`FK_03779ef216d4b0358470d9cb748\``);
+ await queryRunner.query(`ALTER TABLE \`voice_states\` DROP FOREIGN KEY \`FK_9f8d389866b40b6657edd026dd4\``);
+ await queryRunner.query(`ALTER TABLE \`voice_states\` DROP FOREIGN KEY \`FK_5fe1d5f931a67e85039c640001b\``);
+ await queryRunner.query(`ALTER TABLE \`voice_states\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`voice_states\` CHANGE \`channel_id\` \`channel_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`voice_states\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`voice_states\` CHANGE \`token\` \`token\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`voice_states\` CHANGE \`self_stream\` \`self_stream\` tinyint NULL`);
await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`premium_tier\` \`premium_tier\` int NOT NULL`,
+ `ALTER TABLE \`voice_states\` CHANGE \`request_to_speak_timestamp\` \`request_to_speak_timestamp\` datetime NULL`
);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` DROP FOREIGN KEY \`FK_487a7af59d189f744fe394368fc\``);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` DROP FOREIGN KEY \`FK_df528cf77e82f8032230e7e37d8\``);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` DROP FOREIGN KEY \`FK_c3e5305461931763b56aa905f1c\``);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` DROP FOREIGN KEY \`FK_0d523f6f997c86e052c49b1455f\``);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` DROP FOREIGN KEY \`FK_3a285f4f49c40e0706d3018bc9f\``);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` CHANGE \`name\` \`name\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` CHANGE \`avatar\` \`avatar\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` CHANGE \`token\` \`token\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` CHANGE \`channel_id\` \`channel_id\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`public_updates_channel_id\` \`public_updates_channel_id\` varchar(255) NULL`,
+ `ALTER TABLE \`webhooks\` CHANGE \`application_id\` \`application_id\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`rules_channel_id\` \`rules_channel_id\` varchar(255) NULL`,
+ `ALTER TABLE \`webhooks\` CHANGE \`source_guild_id\` \`source_guild_id\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`channels\` DROP FOREIGN KEY \`FK_c253dafe5f3a03ec00cd8fb4581\``);
+ await queryRunner.query(`ALTER TABLE \`channels\` DROP FOREIGN KEY \`FK_3274522d14af40540b1a883fc80\``);
+ await queryRunner.query(`ALTER TABLE \`channels\` DROP FOREIGN KEY \`FK_3873ed438575cce703ecff4fc7b\``);
+ await queryRunner.query(`ALTER TABLE \`channels\` CHANGE \`name\` \`name\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`channels\` CHANGE \`icon\` \`icon\` text NULL`);
await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`region\` \`region\` varchar(255) NULL`,
+ `ALTER TABLE \`channels\` CHANGE \`last_message_id\` \`last_message_id\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`channels\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`channels\` CHANGE \`parent_id\` \`parent_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`channels\` CHANGE \`owner_id\` \`owner_id\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`splash\` \`splash\` varchar(255) NULL`,
+ `ALTER TABLE \`channels\` CHANGE \`last_pin_timestamp\` \`last_pin_timestamp\` int NULL`
);
await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`system_channel_id\` \`system_channel_id\` varchar(255) NULL`,
+ `ALTER TABLE \`channels\` CHANGE \`default_auto_archive_duration\` \`default_auto_archive_duration\` int NULL`
);
+ await queryRunner.query(`ALTER TABLE \`channels\` CHANGE \`position\` \`position\` int NULL`);
await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`system_channel_flags\` \`system_channel_flags\` int NULL`,
+ `ALTER TABLE \`channels\` CHANGE \`permission_overwrites\` \`permission_overwrites\` text NULL`
);
await queryRunner.query(
- `UPDATE guilds SET unavailable = 0 WHERE unavailable IS NULL`,
+ `ALTER TABLE \`channels\` CHANGE \`video_quality_mode\` \`video_quality_mode\` int NULL`
);
+ await queryRunner.query(`ALTER TABLE \`channels\` CHANGE \`bitrate\` \`bitrate\` int NULL`);
+ await queryRunner.query(`ALTER TABLE \`channels\` CHANGE \`user_limit\` \`user_limit\` int NULL`);
+ await queryRunner.query(`UPDATE channels SET nsfw = 0 WHERE nsfw IS NULL`);
+ await queryRunner.query(`ALTER TABLE \`channels\` CHANGE \`nsfw\` \`nsfw\` tinyint NOT NULL`);
await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`unavailable\` \`unavailable\` tinyint NOT NULL`,
+ `ALTER TABLE \`channels\` CHANGE \`rate_limit_per_user\` \`rate_limit_per_user\` int NULL`
);
+ await queryRunner.query(`ALTER TABLE \`channels\` CHANGE \`topic\` \`topic\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`verification_level\` \`verification_level\` int NULL`,
+ `ALTER TABLE \`channels\` CHANGE \`retention_policy_id\` \`retention_policy_id\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`channels\` CHANGE \`flags\` \`flags\` int NOT NULL`);
await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`widget_channel_id\` \`widget_channel_id\` varchar(255) NULL`,
+ `ALTER TABLE \`channels\` CHANGE \`default_thread_rate_limit_per_user\` \`default_thread_rate_limit_per_user\` int NOT NULL`
);
+ await queryRunner.query(`ALTER TABLE \`emojis\` DROP FOREIGN KEY \`FK_fa7ddd5f9a214e28ce596548421\``);
+ await queryRunner.query(`ALTER TABLE \`emojis\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`emojis\` CHANGE \`groups\` \`groups\` text NULL`);
+ await queryRunner.query(`ALTER TABLE \`notes\` DROP FOREIGN KEY \`FK_f9e103f8ae67cb1787063597925\``);
+ await queryRunner.query(`ALTER TABLE \`notes\` DROP FOREIGN KEY \`FK_23e08e5b4481711d573e1abecdc\``);
+ await queryRunner.query(`DROP INDEX \`IDX_74e6689b9568cc965b8bfc9150\` ON \`notes\``);
+ await queryRunner.query(`ALTER TABLE \`notes\` CHANGE \`owner_id\` \`owner_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`notes\` CHANGE \`target_id\` \`target_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`sessions\` DROP FOREIGN KEY \`FK_085d540d9f418cfbdc7bd55bb19\``);
+ await queryRunner.query(`ALTER TABLE \`sessions\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`sessions\` CHANGE \`activities\` \`activities\` text NULL`);
+ await queryRunner.query(`ALTER TABLE \`stickers\` DROP FOREIGN KEY \`FK_e7cfa5cefa6661b3fb8fda8ce69\``);
+ await queryRunner.query(`ALTER TABLE \`stickers\` DROP FOREIGN KEY \`FK_193d551d852aca5347ef5c9f205\``);
+ await queryRunner.query(`ALTER TABLE \`stickers\` DROP FOREIGN KEY \`FK_8f4ee73f2bb2325ff980502e158\``);
+ await queryRunner.query(`ALTER TABLE \`stickers\` CHANGE \`description\` \`description\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`stickers\` CHANGE \`available\` \`available\` tinyint NULL`);
+ await queryRunner.query(`ALTER TABLE \`stickers\` CHANGE \`tags\` \`tags\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`stickers\` CHANGE \`pack_id\` \`pack_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`stickers\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`stickers\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`sticker_packs\` DROP FOREIGN KEY \`FK_448fafba4355ee1c837bbc865f1\``);
await queryRunner.query(
- `UPDATE guilds SET widget_enabled = 0 WHERE widget_enabled IS NULL`,
+ `ALTER TABLE \`sticker_packs\` CHANGE \`description\` \`description\` varchar(255) NULL`
);
await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`widget_enabled\` \`widget_enabled\` tinyint NOT NULL`,
+ `ALTER TABLE \`sticker_packs\` CHANGE \`banner_asset_id\` \`banner_asset_id\` varchar(255) NULL`
);
await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`nsfw_level\` \`nsfw_level\` int NULL`,
+ `ALTER TABLE \`sticker_packs\` CHANGE \`cover_sticker_id\` \`cover_sticker_id\` varchar(255) NULL`
);
await queryRunner.query(
- `UPDATE guilds SET nsfw = 0 WHERE nsfw IS NULL`,
+ `ALTER TABLE \`sticker_packs\` CHANGE \`coverStickerId\` \`coverStickerId\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`templates\` DROP FOREIGN KEY \`FK_d7374b7f8f5fbfdececa4fb62e1\``);
+ await queryRunner.query(`ALTER TABLE \`templates\` DROP FOREIGN KEY \`FK_445d00eaaea0e60a017a5ed0c11\``);
+ await queryRunner.query(`ALTER TABLE \`templates\` CHANGE \`description\` \`description\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`templates\` CHANGE \`usage_count\` \`usage_count\` int NULL`);
+ await queryRunner.query(`ALTER TABLE \`templates\` CHANGE \`creator_id\` \`creator_id\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`nsfw\` \`nsfw\` tinyint NOT NULL`,
+ `ALTER TABLE \`templates\` CHANGE \`source_guild_id\` \`source_guild_id\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`user_settings\` DROP PRIMARY KEY`);
+ await queryRunner.query(`ALTER TABLE \`user_settings\` DROP COLUMN \`index\``);
+ await queryRunner.query(`ALTER TABLE \`user_settings\` ADD \`index\` int NOT NULL PRIMARY KEY AUTO_INCREMENT`);
+ await queryRunner.query(`ALTER TABLE \`user_settings\` CHANGE \`afk_timeout\` \`afk_timeout\` int NULL`);
await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`parent\` \`parent\` varchar(255) NULL`,
+ `ALTER TABLE \`user_settings\` CHANGE \`allow_accessibility_detection\` \`allow_accessibility_detection\` tinyint NULL`
);
await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`premium_progress_bar_enabled\` \`premium_progress_bar_enabled\` tinyint NULL`,
+ `ALTER TABLE \`user_settings\` CHANGE \`animate_emoji\` \`animate_emoji\` tinyint NULL`
);
await queryRunner.query(
- `ALTER TABLE \`roles\` DROP FOREIGN KEY \`FK_c32c1ab1c4dc7dcb0278c4b1b8b\``,
+ `ALTER TABLE \`user_settings\` CHANGE \`animate_stickers\` \`animate_stickers\` int NULL`
);
await queryRunner.query(
- `ALTER TABLE \`roles\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`,
+ `ALTER TABLE \`user_settings\` CHANGE \`contact_sync_enabled\` \`contact_sync_enabled\` tinyint NULL`
);
await queryRunner.query(
- `ALTER TABLE \`roles\` CHANGE \`icon\` \`icon\` varchar(255) NULL`,
+ `ALTER TABLE \`user_settings\` CHANGE \`convert_emoticons\` \`convert_emoticons\` tinyint NULL`
);
+ await queryRunner.query(`ALTER TABLE \`user_settings\` CHANGE \`custom_status\` \`custom_status\` text NULL`);
await queryRunner.query(
- `ALTER TABLE \`roles\` CHANGE \`unicode_emoji\` \`unicode_emoji\` varchar(255) NULL`,
+ `ALTER TABLE \`user_settings\` CHANGE \`default_guilds_restricted\` \`default_guilds_restricted\` tinyint NULL`
);
await queryRunner.query(
- `ALTER TABLE \`roles\` CHANGE \`tags\` \`tags\` text NULL`,
+ `ALTER TABLE \`user_settings\` CHANGE \`detect_platform_accounts\` \`detect_platform_accounts\` tinyint NULL`
);
await queryRunner.query(
- `ALTER TABLE \`messages\` DROP FOREIGN KEY \`FK_86b9109b155eb70c0a2ca3b4b6d\``,
+ `ALTER TABLE \`user_settings\` CHANGE \`developer_mode\` \`developer_mode\` tinyint NULL`
);
await queryRunner.query(
- `ALTER TABLE \`messages\` DROP FOREIGN KEY \`FK_b193588441b085352a4c0109423\``,
+ `ALTER TABLE \`user_settings\` CHANGE \`disable_games_tab\` \`disable_games_tab\` tinyint NULL`
);
await queryRunner.query(
- `ALTER TABLE \`messages\` DROP FOREIGN KEY \`FK_05535bc695e9f7ee104616459d3\``,
+ `ALTER TABLE \`user_settings\` CHANGE \`enable_tts_command\` \`enable_tts_command\` tinyint NULL`
);
await queryRunner.query(
- `ALTER TABLE \`messages\` DROP FOREIGN KEY \`FK_b0525304f2262b7014245351c76\``,
+ `ALTER TABLE \`user_settings\` CHANGE \`explicit_content_filter\` \`explicit_content_filter\` int NULL`
);
await queryRunner.query(
- `ALTER TABLE \`messages\` DROP FOREIGN KEY \`FK_f83c04bcf1df4e5c0e7a52ed348\``,
+ `ALTER TABLE \`user_settings\` CHANGE \`friend_source_flags\` \`friend_source_flags\` text NULL`
);
await queryRunner.query(
- `ALTER TABLE \`messages\` DROP FOREIGN KEY \`FK_5d3ec1cb962de6488637fd779d6\``,
+ `ALTER TABLE \`user_settings\` CHANGE \`gateway_connected\` \`gateway_connected\` tinyint NULL`
);
await queryRunner.query(
- `ALTER TABLE \`messages\` DROP FOREIGN KEY \`FK_61a92bb65b302a76d9c1fcd3174\``,
+ `ALTER TABLE \`user_settings\` CHANGE \`gif_auto_play\` \`gif_auto_play\` tinyint NULL`
);
+ await queryRunner.query(`ALTER TABLE \`user_settings\` CHANGE \`guild_folders\` \`guild_folders\` text NULL`);
await queryRunner.query(
- `DROP INDEX \`IDX_3ed7a60fb7dbe04e1ba9332a8b\` ON \`messages\``,
+ `ALTER TABLE \`user_settings\` CHANGE \`guild_positions\` \`guild_positions\` text NULL`
);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`channel_id\` \`channel_id\` varchar(255) NULL`,
+ `ALTER TABLE \`user_settings\` CHANGE \`inline_attachment_media\` \`inline_attachment_media\` tinyint NULL`
);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`,
+ `ALTER TABLE \`user_settings\` CHANGE \`inline_embed_media\` \`inline_embed_media\` tinyint NULL`
);
+ await queryRunner.query(`ALTER TABLE \`user_settings\` CHANGE \`locale\` \`locale\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`author_id\` \`author_id\` varchar(255) NULL`,
+ `ALTER TABLE \`user_settings\` CHANGE \`message_display_compact\` \`message_display_compact\` tinyint NULL`
);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`member_id\` \`member_id\` varchar(255) NULL`,
+ `ALTER TABLE \`user_settings\` CHANGE \`native_phone_integration_enabled\` \`native_phone_integration_enabled\` tinyint NULL`
);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`webhook_id\` \`webhook_id\` varchar(255) NULL`,
+ `ALTER TABLE \`user_settings\` CHANGE \`render_embeds\` \`render_embeds\` tinyint NULL`
);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`application_id\` \`application_id\` varchar(255) NULL`,
+ `ALTER TABLE \`user_settings\` CHANGE \`render_reactions\` \`render_reactions\` tinyint NULL`
);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`content\` \`content\` varchar(255) NULL`,
+ `ALTER TABLE \`user_settings\` CHANGE \`restricted_guilds\` \`restricted_guilds\` text NULL`
);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`edited_timestamp\` \`edited_timestamp\` datetime NULL`,
+ `ALTER TABLE \`user_settings\` CHANGE \`show_current_game\` \`show_current_game\` tinyint NULL`
);
+ await queryRunner.query(`ALTER TABLE \`user_settings\` CHANGE \`status\` \`status\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`tts\` \`tts\` tinyint NULL`,
+ `ALTER TABLE \`user_settings\` CHANGE \`stream_notifications_enabled\` \`stream_notifications_enabled\` tinyint NULL`
);
+ await queryRunner.query(`ALTER TABLE \`user_settings\` CHANGE \`theme\` \`theme\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`mention_everyone\` \`mention_everyone\` tinyint NULL`,
+ `ALTER TABLE \`user_settings\` CHANGE \`timezone_offset\` \`timezone_offset\` int NULL`
);
+ await queryRunner.query(`ALTER TABLE \`guilds\` DROP FOREIGN KEY \`FK_f591a66b8019d87b0fe6c12dad6\``);
+ await queryRunner.query(`ALTER TABLE \`guilds\` DROP FOREIGN KEY \`FK_e2a2f873a64a5cf62526de42325\``);
+ await queryRunner.query(`ALTER TABLE \`guilds\` DROP FOREIGN KEY \`FK_fc1a451727e3643ca572a3bb394\``);
+ await queryRunner.query(`ALTER TABLE \`guilds\` DROP FOREIGN KEY \`FK_8d450b016dc8bec35f36729e4b0\``);
+ await queryRunner.query(`ALTER TABLE \`guilds\` DROP FOREIGN KEY \`FK_95828668aa333460582e0ca6396\``);
+ await queryRunner.query(`ALTER TABLE \`guilds\` DROP FOREIGN KEY \`FK_cfc3d3ad260f8121c95b31a1fce\``);
+ await queryRunner.query(`ALTER TABLE \`guilds\` DROP FOREIGN KEY \`FK_9d1d665379eefde7876a17afa99\``);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`nonce\` \`nonce\` text NULL`,
+ `ALTER TABLE \`guilds\` CHANGE \`afk_channel_id\` \`afk_channel_id\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`afk_timeout\` \`afk_timeout\` int NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`banner\` \`banner\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`pinned\` \`pinned\` tinyint NULL`,
+ `ALTER TABLE \`guilds\` CHANGE \`default_message_notifications\` \`default_message_notifications\` int NULL`
);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`description\` \`description\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`activity\` \`activity\` text NULL`,
+ `ALTER TABLE \`guilds\` CHANGE \`discovery_splash\` \`discovery_splash\` varchar(255) NULL`
);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`flags\` \`flags\` varchar(255) NULL`,
+ `ALTER TABLE \`guilds\` CHANGE \`explicit_content_filter\` \`explicit_content_filter\` int NULL`
);
+ await queryRunner.query(`ALTER TABLE \`guilds\` DROP COLUMN \`primary_category_id\``);
+ await queryRunner.query(`ALTER TABLE \`guilds\` ADD \`primary_category_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`icon\` \`icon\` varchar(255) NULL`);
+ await queryRunner.query(`UPDATE guilds SET large = 0 WHERE large IS NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`large\` \`large\` tinyint NOT NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`max_members\` \`max_members\` int NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`max_presences\` \`max_presences\` int NULL`);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`message_reference\` \`message_reference\` text NULL`,
+ `ALTER TABLE \`guilds\` CHANGE \`max_video_channel_users\` \`max_video_channel_users\` int NULL`
);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`member_count\` \`member_count\` int NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`presence_count\` \`presence_count\` int NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`template_id\` \`template_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`mfa_level\` \`mfa_level\` int NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`owner_id\` \`owner_id\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`interaction\` \`interaction\` text NULL`,
+ `ALTER TABLE \`guilds\` CHANGE \`preferred_locale\` \`preferred_locale\` varchar(255) NULL`
);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`components\` \`components\` text NULL`,
+ `ALTER TABLE \`guilds\` CHANGE \`premium_subscription_count\` \`premium_subscription_count\` int NULL`
);
+ await queryRunner.query(`UPDATE guilds SET premium_tier = 0 WHERE premium_tier IS NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`premium_tier\` \`premium_tier\` int NOT NULL`);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`message_reference_id\` \`message_reference_id\` varchar(255) NULL`,
+ `ALTER TABLE \`guilds\` CHANGE \`public_updates_channel_id\` \`public_updates_channel_id\` varchar(255) NULL`
);
await queryRunner.query(
- `ALTER TABLE \`members\` CHANGE \`nick\` \`nick\` varchar(255) NULL`,
+ `ALTER TABLE \`guilds\` CHANGE \`rules_channel_id\` \`rules_channel_id\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`region\` \`region\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`splash\` \`splash\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`members\` DROP COLUMN \`premium_since\``,
+ `ALTER TABLE \`guilds\` CHANGE \`system_channel_id\` \`system_channel_id\` varchar(255) NULL`
);
await queryRunner.query(
- `ALTER TABLE \`members\` ADD \`premium_since\` bigint NULL`,
+ `ALTER TABLE \`guilds\` CHANGE \`system_channel_flags\` \`system_channel_flags\` int NULL`
);
+ await queryRunner.query(`UPDATE guilds SET unavailable = 0 WHERE unavailable IS NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`unavailable\` \`unavailable\` tinyint NOT NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`verification_level\` \`verification_level\` int NULL`);
await queryRunner.query(
- `ALTER TABLE \`members\` CHANGE \`last_message_id\` \`last_message_id\` varchar(255) NULL`,
+ `ALTER TABLE \`guilds\` CHANGE \`widget_channel_id\` \`widget_channel_id\` varchar(255) NULL`
);
+ await queryRunner.query(`UPDATE guilds SET widget_enabled = 0 WHERE widget_enabled IS NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`widget_enabled\` \`widget_enabled\` tinyint NOT NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`nsfw_level\` \`nsfw_level\` int NULL`);
+ await queryRunner.query(`UPDATE guilds SET nsfw = 0 WHERE nsfw IS NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`nsfw\` \`nsfw\` tinyint NOT NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`parent\` \`parent\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`members\` CHANGE \`joined_by\` \`joined_by\` varchar(255) NULL`,
+ `ALTER TABLE \`guilds\` CHANGE \`premium_progress_bar_enabled\` \`premium_progress_bar_enabled\` tinyint NULL`
);
+ await queryRunner.query(`ALTER TABLE \`roles\` DROP FOREIGN KEY \`FK_c32c1ab1c4dc7dcb0278c4b1b8b\``);
+ await queryRunner.query(`ALTER TABLE \`roles\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`roles\` CHANGE \`icon\` \`icon\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`roles\` CHANGE \`unicode_emoji\` \`unicode_emoji\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`roles\` CHANGE \`tags\` \`tags\` text NULL`);
+ await queryRunner.query(`ALTER TABLE \`messages\` DROP FOREIGN KEY \`FK_86b9109b155eb70c0a2ca3b4b6d\``);
+ await queryRunner.query(`ALTER TABLE \`messages\` DROP FOREIGN KEY \`FK_b193588441b085352a4c0109423\``);
+ await queryRunner.query(`ALTER TABLE \`messages\` DROP FOREIGN KEY \`FK_05535bc695e9f7ee104616459d3\``);
+ await queryRunner.query(`ALTER TABLE \`messages\` DROP FOREIGN KEY \`FK_b0525304f2262b7014245351c76\``);
+ await queryRunner.query(`ALTER TABLE \`messages\` DROP FOREIGN KEY \`FK_f83c04bcf1df4e5c0e7a52ed348\``);
+ await queryRunner.query(`ALTER TABLE \`messages\` DROP FOREIGN KEY \`FK_5d3ec1cb962de6488637fd779d6\``);
+ await queryRunner.query(`ALTER TABLE \`messages\` DROP FOREIGN KEY \`FK_61a92bb65b302a76d9c1fcd3174\``);
+ await queryRunner.query(`DROP INDEX \`IDX_3ed7a60fb7dbe04e1ba9332a8b\` ON \`messages\``);
+ await queryRunner.query(`ALTER TABLE \`messages\` CHANGE \`channel_id\` \`channel_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`messages\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`messages\` CHANGE \`author_id\` \`author_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`messages\` CHANGE \`member_id\` \`member_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`messages\` CHANGE \`webhook_id\` \`webhook_id\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`members\` CHANGE \`avatar\` \`avatar\` varchar(255) NULL`,
+ `ALTER TABLE \`messages\` CHANGE \`application_id\` \`application_id\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`messages\` CHANGE \`content\` \`content\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`members\` CHANGE \`banner\` \`banner\` varchar(255) NULL`,
+ `ALTER TABLE \`messages\` CHANGE \`edited_timestamp\` \`edited_timestamp\` datetime NULL`
);
+ await queryRunner.query(`ALTER TABLE \`messages\` CHANGE \`tts\` \`tts\` tinyint NULL`);
await queryRunner.query(
- `ALTER TABLE \`members\` CHANGE \`communication_disabled_until\` \`communication_disabled_until\` datetime NULL`,
+ `ALTER TABLE \`messages\` CHANGE \`mention_everyone\` \`mention_everyone\` tinyint NULL`
);
+ await queryRunner.query(`ALTER TABLE \`messages\` CHANGE \`nonce\` \`nonce\` text NULL`);
+ await queryRunner.query(`ALTER TABLE \`messages\` CHANGE \`pinned\` \`pinned\` tinyint NULL`);
+ await queryRunner.query(`ALTER TABLE \`messages\` CHANGE \`activity\` \`activity\` text NULL`);
+ await queryRunner.query(`ALTER TABLE \`messages\` CHANGE \`flags\` \`flags\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`users\` CHANGE \`avatar\` \`avatar\` varchar(255) NULL`,
+ `ALTER TABLE \`messages\` CHANGE \`message_reference\` \`message_reference\` text NULL`
);
+ await queryRunner.query(`ALTER TABLE \`messages\` CHANGE \`interaction\` \`interaction\` text NULL`);
+ await queryRunner.query(`ALTER TABLE \`messages\` CHANGE \`components\` \`components\` text NULL`);
await queryRunner.query(
- `ALTER TABLE \`users\` CHANGE \`accent_color\` \`accent_color\` int NULL`,
+ `ALTER TABLE \`messages\` CHANGE \`message_reference_id\` \`message_reference_id\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`members\` CHANGE \`nick\` \`nick\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`members\` DROP COLUMN \`premium_since\``);
+ await queryRunner.query(`ALTER TABLE \`members\` ADD \`premium_since\` bigint NULL`);
await queryRunner.query(
- `ALTER TABLE \`users\` CHANGE \`banner\` \`banner\` varchar(255) NULL`,
+ `ALTER TABLE \`members\` CHANGE \`last_message_id\` \`last_message_id\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`members\` CHANGE \`joined_by\` \`joined_by\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`members\` CHANGE \`avatar\` \`avatar\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`members\` CHANGE \`banner\` \`banner\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`users\` CHANGE \`phone\` \`phone\` varchar(255) NULL`,
+ `ALTER TABLE \`members\` CHANGE \`communication_disabled_until\` \`communication_disabled_until\` datetime NULL`
);
+ await queryRunner.query(`ALTER TABLE \`users\` CHANGE \`avatar\` \`avatar\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`users\` CHANGE \`accent_color\` \`accent_color\` int NULL`);
+ await queryRunner.query(`ALTER TABLE \`users\` CHANGE \`banner\` \`banner\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`users\` CHANGE \`phone\` \`phone\` varchar(255) NULL`);
await queryRunner.query(`UPDATE users SET bio = "" WHERE bio IS NULL`);
+ await queryRunner.query(`ALTER TABLE \`users\` CHANGE \`bio\` \`bio\` varchar(255) NOT NULL`);
+ await queryRunner.query(`UPDATE users SET mfa_enabled = 0 WHERE mfa_enabled IS NULL`);
+ await queryRunner.query(`ALTER TABLE \`users\` CHANGE \`mfa_enabled\` \`mfa_enabled\` tinyint NOT NULL`);
+ await queryRunner.query(`ALTER TABLE \`users\` CHANGE \`totp_secret\` \`totp_secret\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`users\` CHANGE \`bio\` \`bio\` varchar(255) NOT NULL`,
+ `ALTER TABLE \`users\` CHANGE \`totp_last_ticket\` \`totp_last_ticket\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`users\` CHANGE \`premium_since\` \`premium_since\` datetime NULL`);
+ await queryRunner.query(`ALTER TABLE \`users\` CHANGE \`email\` \`email\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`team_members\` DROP FOREIGN KEY \`FK_fdad7d5768277e60c40e01cdcea\``);
+ await queryRunner.query(`ALTER TABLE \`team_members\` DROP FOREIGN KEY \`FK_c2bf4967c8c2a6b845dadfbf3d4\``);
+ await queryRunner.query(`ALTER TABLE \`team_members\` CHANGE \`team_id\` \`team_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`team_members\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`teams\` DROP FOREIGN KEY \`FK_13f00abf7cb6096c43ecaf8c108\``);
+ await queryRunner.query(`ALTER TABLE \`teams\` CHANGE \`icon\` \`icon\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`teams\` CHANGE \`owner_user_id\` \`owner_user_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`applications\` DROP FOREIGN KEY \`FK_e57508958bf92b9d9d25231b5e8\``);
+ await queryRunner.query(`ALTER TABLE \`applications\` DROP FOREIGN KEY \`FK_2ce5a55796fe4c2f77ece57a647\``);
+ await queryRunner.query(`ALTER TABLE \`applications\` DROP FOREIGN KEY \`FK_a36ed02953077f408d0f3ebc424\``);
+ await queryRunner.query(`ALTER TABLE \`applications\` CHANGE \`icon\` \`icon\` varchar(255) NULL`);
await queryRunner.query(
- `UPDATE users SET mfa_enabled = 0 WHERE mfa_enabled IS NULL`,
+ `ALTER TABLE \`applications\` CHANGE \`description\` \`description\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`applications\` CHANGE \`summary\` \`summary\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`applications\` CHANGE \`type\` \`type\` text NULL`);
+ await queryRunner.query(`ALTER TABLE \`applications\` CHANGE \`redirect_uris\` \`redirect_uris\` text NULL`);
await queryRunner.query(
- `ALTER TABLE \`users\` CHANGE \`mfa_enabled\` \`mfa_enabled\` tinyint NOT NULL`,
+ `ALTER TABLE \`applications\` CHANGE \`rpc_application_state\` \`rpc_application_state\` int NULL`
);
await queryRunner.query(
- `ALTER TABLE \`users\` CHANGE \`totp_secret\` \`totp_secret\` varchar(255) NULL`,
+ `ALTER TABLE \`applications\` CHANGE \`store_application_state\` \`store_application_state\` int NULL`
);
await queryRunner.query(
- `ALTER TABLE \`users\` CHANGE \`totp_last_ticket\` \`totp_last_ticket\` varchar(255) NULL`,
+ `ALTER TABLE \`applications\` CHANGE \`verification_state\` \`verification_state\` int NULL`
);
await queryRunner.query(
- `ALTER TABLE \`users\` CHANGE \`premium_since\` \`premium_since\` datetime NULL`,
+ `ALTER TABLE \`applications\` CHANGE \`interactions_endpoint_url\` \`interactions_endpoint_url\` varchar(255) NULL`
);
await queryRunner.query(
- `ALTER TABLE \`users\` CHANGE \`email\` \`email\` varchar(255) NULL`,
+ `ALTER TABLE \`applications\` CHANGE \`integration_public\` \`integration_public\` tinyint NULL`
);
await queryRunner.query(
- `ALTER TABLE \`team_members\` DROP FOREIGN KEY \`FK_fdad7d5768277e60c40e01cdcea\``,
+ `ALTER TABLE \`applications\` CHANGE \`integration_require_code_grant\` \`integration_require_code_grant\` tinyint NULL`
);
await queryRunner.query(
- `ALTER TABLE \`team_members\` DROP FOREIGN KEY \`FK_c2bf4967c8c2a6b845dadfbf3d4\``,
+ `ALTER TABLE \`applications\` CHANGE \`discoverability_state\` \`discoverability_state\` int NULL`
);
await queryRunner.query(
- `ALTER TABLE \`team_members\` CHANGE \`team_id\` \`team_id\` varchar(255) NULL`,
+ `ALTER TABLE \`applications\` CHANGE \`discovery_eligibility_flags\` \`discovery_eligibility_flags\` int NULL`
);
+ await queryRunner.query(`ALTER TABLE \`applications\` CHANGE \`tags\` \`tags\` text NULL`);
await queryRunner.query(
- `ALTER TABLE \`team_members\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`,
+ `ALTER TABLE \`applications\` CHANGE \`cover_image\` \`cover_image\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`applications\` CHANGE \`install_params\` \`install_params\` text NULL`);
await queryRunner.query(
- `ALTER TABLE \`teams\` DROP FOREIGN KEY \`FK_13f00abf7cb6096c43ecaf8c108\``,
+ `ALTER TABLE \`applications\` CHANGE \`terms_of_service_url\` \`terms_of_service_url\` varchar(255) NULL`
);
await queryRunner.query(
- `ALTER TABLE \`teams\` CHANGE \`icon\` \`icon\` varchar(255) NULL`,
+ `ALTER TABLE \`applications\` CHANGE \`privacy_policy_url\` \`privacy_policy_url\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`applications\` CHANGE \`owner_id\` \`owner_id\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`teams\` CHANGE \`owner_user_id\` \`owner_user_id\` varchar(255) NULL`,
+ `ALTER TABLE \`applications\` CHANGE \`bot_user_id\` \`bot_user_id\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`applications\` CHANGE \`team_id\` \`team_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` CHANGE \`name\` \`name\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` CHANGE \`avatar\` \`avatar\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` CHANGE \`token\` \`token\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` CHANGE \`channel_id\` \`channel_id\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`applications\` DROP FOREIGN KEY \`FK_e57508958bf92b9d9d25231b5e8\``,
+ `ALTER TABLE \`webhooks\` CHANGE \`application_id\` \`application_id\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`applications\` DROP FOREIGN KEY \`FK_2ce5a55796fe4c2f77ece57a647\``,
+ `ALTER TABLE \`webhooks\` CHANGE \`source_guild_id\` \`source_guild_id\` varchar(255) NULL`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` DROP FOREIGN KEY \`FK_a36ed02953077f408d0f3ebc424\``,
+ `CREATE UNIQUE INDEX \`IDX_74e6689b9568cc965b8bfc9150\` ON \`notes\` (\`owner_id\`, \`target_id\`)`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`icon\` \`icon\` varchar(255) NULL`,
+ `CREATE UNIQUE INDEX \`IDX_3ed7a60fb7dbe04e1ba9332a8b\` ON \`messages\` (\`channel_id\`, \`id\`)`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`description\` \`description\` varchar(255) NULL`,
+ `CREATE UNIQUE INDEX \`REL_0c14beb78d8c5ccba66072adbc\` ON \`users\` (\`settingsIndex\`)`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`summary\` \`summary\` varchar(255) NULL`,
+ `ALTER TABLE \`connected_accounts\` ADD CONSTRAINT \`FK_f47244225a6a1eac04a3463dd90\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`type\` \`type\` text NULL`,
+ `ALTER TABLE \`attachments\` ADD CONSTRAINT \`FK_623e10eec51ada466c5038979e3\` FOREIGN KEY (\`message_id\`) REFERENCES \`messages\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`redirect_uris\` \`redirect_uris\` text NULL`,
+ `ALTER TABLE \`audit_logs\` ADD CONSTRAINT \`FK_3cd01cd3ae7aab010310d96ac8e\` FOREIGN KEY (\`target_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`rpc_application_state\` \`rpc_application_state\` int NULL`,
+ `ALTER TABLE \`audit_logs\` ADD CONSTRAINT \`FK_bd2726fd31b35443f2245b93ba0\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`store_application_state\` \`store_application_state\` int NULL`,
+ `ALTER TABLE \`backup_codes\` ADD CONSTRAINT \`FK_70066ea80d2f4b871beda32633b\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`verification_state\` \`verification_state\` int NULL`,
+ `ALTER TABLE \`bans\` ADD CONSTRAINT \`FK_5999e8e449f80a236ff72023559\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`interactions_endpoint_url\` \`interactions_endpoint_url\` varchar(255) NULL`,
+ `ALTER TABLE \`bans\` ADD CONSTRAINT \`FK_9d3ab7dd180ebdd245cdb66ecad\` FOREIGN KEY (\`guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`integration_public\` \`integration_public\` tinyint NULL`,
+ `ALTER TABLE \`bans\` ADD CONSTRAINT \`FK_07ad88c86d1f290d46748410d58\` FOREIGN KEY (\`executor_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`integration_require_code_grant\` \`integration_require_code_grant\` tinyint NULL`,
+ `ALTER TABLE \`invites\` ADD CONSTRAINT \`FK_3f4939aa1461e8af57fea3fb05d\` FOREIGN KEY (\`guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`discoverability_state\` \`discoverability_state\` int NULL`,
+ `ALTER TABLE \`invites\` ADD CONSTRAINT \`FK_6a15b051fe5050aa00a4b9ff0f6\` FOREIGN KEY (\`channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`discovery_eligibility_flags\` \`discovery_eligibility_flags\` int NULL`,
+ `ALTER TABLE \`invites\` ADD CONSTRAINT \`FK_15c35422032e0b22b4ada95f48f\` FOREIGN KEY (\`inviter_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`tags\` \`tags\` text NULL`,
+ `ALTER TABLE \`invites\` ADD CONSTRAINT \`FK_11a0d394f8fc649c19ce5f16b59\` FOREIGN KEY (\`target_user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`cover_image\` \`cover_image\` varchar(255) NULL`,
+ `ALTER TABLE \`voice_states\` ADD CONSTRAINT \`FK_03779ef216d4b0358470d9cb748\` FOREIGN KEY (\`guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`install_params\` \`install_params\` text NULL`,
+ `ALTER TABLE \`voice_states\` ADD CONSTRAINT \`FK_9f8d389866b40b6657edd026dd4\` FOREIGN KEY (\`channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`terms_of_service_url\` \`terms_of_service_url\` varchar(255) NULL`,
+ `ALTER TABLE \`voice_states\` ADD CONSTRAINT \`FK_5fe1d5f931a67e85039c640001b\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`privacy_policy_url\` \`privacy_policy_url\` varchar(255) NULL`,
+ `ALTER TABLE \`webhooks\` ADD CONSTRAINT \`FK_487a7af59d189f744fe394368fc\` FOREIGN KEY (\`guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`owner_id\` \`owner_id\` varchar(255) NULL`,
+ `ALTER TABLE \`webhooks\` ADD CONSTRAINT \`FK_df528cf77e82f8032230e7e37d8\` FOREIGN KEY (\`channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`bot_user_id\` \`bot_user_id\` varchar(255) NULL`,
+ `ALTER TABLE \`webhooks\` ADD CONSTRAINT \`FK_c3e5305461931763b56aa905f1c\` FOREIGN KEY (\`application_id\`) REFERENCES \`applications\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`team_id\` \`team_id\` varchar(255) NULL`,
+ `ALTER TABLE \`webhooks\` ADD CONSTRAINT \`FK_0d523f6f997c86e052c49b1455f\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`webhooks\` CHANGE \`name\` \`name\` varchar(255) NULL`,
+ `ALTER TABLE \`webhooks\` ADD CONSTRAINT \`FK_3a285f4f49c40e0706d3018bc9f\` FOREIGN KEY (\`source_guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`webhooks\` CHANGE \`avatar\` \`avatar\` varchar(255) NULL`,
+ `ALTER TABLE \`channels\` ADD CONSTRAINT \`FK_c253dafe5f3a03ec00cd8fb4581\` FOREIGN KEY (\`guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`webhooks\` CHANGE \`token\` \`token\` varchar(255) NULL`,
+ `ALTER TABLE \`channels\` ADD CONSTRAINT \`FK_3274522d14af40540b1a883fc80\` FOREIGN KEY (\`parent_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`webhooks\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`,
+ `ALTER TABLE \`channels\` ADD CONSTRAINT \`FK_3873ed438575cce703ecff4fc7b\` FOREIGN KEY (\`owner_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`webhooks\` CHANGE \`channel_id\` \`channel_id\` varchar(255) NULL`,
+ `ALTER TABLE \`emojis\` ADD CONSTRAINT \`FK_fa7ddd5f9a214e28ce596548421\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`webhooks\` CHANGE \`application_id\` \`application_id\` varchar(255) NULL`,
+ `ALTER TABLE \`notes\` ADD CONSTRAINT \`FK_f9e103f8ae67cb1787063597925\` FOREIGN KEY (\`owner_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`webhooks\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`,
+ `ALTER TABLE \`notes\` ADD CONSTRAINT \`FK_23e08e5b4481711d573e1abecdc\` FOREIGN KEY (\`target_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`webhooks\` CHANGE \`source_guild_id\` \`source_guild_id\` varchar(255) NULL`,
+ `ALTER TABLE \`sessions\` ADD CONSTRAINT \`FK_085d540d9f418cfbdc7bd55bb19\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `CREATE UNIQUE INDEX \`IDX_74e6689b9568cc965b8bfc9150\` ON \`notes\` (\`owner_id\`, \`target_id\`)`,
+ `ALTER TABLE \`stickers\` ADD CONSTRAINT \`FK_e7cfa5cefa6661b3fb8fda8ce69\` FOREIGN KEY (\`pack_id\`) REFERENCES \`sticker_packs\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `CREATE UNIQUE INDEX \`IDX_3ed7a60fb7dbe04e1ba9332a8b\` ON \`messages\` (\`channel_id\`, \`id\`)`,
+ `ALTER TABLE \`stickers\` ADD CONSTRAINT \`FK_193d551d852aca5347ef5c9f205\` FOREIGN KEY (\`guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `CREATE UNIQUE INDEX \`REL_0c14beb78d8c5ccba66072adbc\` ON \`users\` (\`settingsIndex\`)`,
+ `ALTER TABLE \`stickers\` ADD CONSTRAINT \`FK_8f4ee73f2bb2325ff980502e158\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`connected_accounts\` ADD CONSTRAINT \`FK_f47244225a6a1eac04a3463dd90\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`sticker_packs\` ADD CONSTRAINT \`FK_448fafba4355ee1c837bbc865f1\` FOREIGN KEY (\`coverStickerId\`) REFERENCES \`stickers\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`attachments\` ADD CONSTRAINT \`FK_623e10eec51ada466c5038979e3\` FOREIGN KEY (\`message_id\`) REFERENCES \`messages\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`templates\` ADD CONSTRAINT \`FK_d7374b7f8f5fbfdececa4fb62e1\` FOREIGN KEY (\`creator_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`audit_logs\` ADD CONSTRAINT \`FK_3cd01cd3ae7aab010310d96ac8e\` FOREIGN KEY (\`target_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
+ `ALTER TABLE \`templates\` ADD CONSTRAINT \`FK_445d00eaaea0e60a017a5ed0c11\` FOREIGN KEY (\`source_guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`audit_logs\` ADD CONSTRAINT \`FK_bd2726fd31b35443f2245b93ba0\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
+ `ALTER TABLE \`guilds\` ADD CONSTRAINT \`FK_f591a66b8019d87b0fe6c12dad6\` FOREIGN KEY (\`afk_channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`backup_codes\` ADD CONSTRAINT \`FK_70066ea80d2f4b871beda32633b\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`guilds\` ADD CONSTRAINT \`FK_e2a2f873a64a5cf62526de42325\` FOREIGN KEY (\`template_id\`) REFERENCES \`templates\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`bans\` ADD CONSTRAINT \`FK_5999e8e449f80a236ff72023559\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`guilds\` ADD CONSTRAINT \`FK_fc1a451727e3643ca572a3bb394\` FOREIGN KEY (\`owner_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`bans\` ADD CONSTRAINT \`FK_9d3ab7dd180ebdd245cdb66ecad\` FOREIGN KEY (\`guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`guilds\` ADD CONSTRAINT \`FK_8d450b016dc8bec35f36729e4b0\` FOREIGN KEY (\`public_updates_channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`bans\` ADD CONSTRAINT \`FK_07ad88c86d1f290d46748410d58\` FOREIGN KEY (\`executor_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
+ `ALTER TABLE \`guilds\` ADD CONSTRAINT \`FK_95828668aa333460582e0ca6396\` FOREIGN KEY (\`rules_channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`invites\` ADD CONSTRAINT \`FK_3f4939aa1461e8af57fea3fb05d\` FOREIGN KEY (\`guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`guilds\` ADD CONSTRAINT \`FK_cfc3d3ad260f8121c95b31a1fce\` FOREIGN KEY (\`system_channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`invites\` ADD CONSTRAINT \`FK_6a15b051fe5050aa00a4b9ff0f6\` FOREIGN KEY (\`channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`guilds\` ADD CONSTRAINT \`FK_9d1d665379eefde7876a17afa99\` FOREIGN KEY (\`widget_channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`invites\` ADD CONSTRAINT \`FK_15c35422032e0b22b4ada95f48f\` FOREIGN KEY (\`inviter_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`roles\` ADD CONSTRAINT \`FK_c32c1ab1c4dc7dcb0278c4b1b8b\` FOREIGN KEY (\`guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`invites\` ADD CONSTRAINT \`FK_11a0d394f8fc649c19ce5f16b59\` FOREIGN KEY (\`target_user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`messages\` ADD CONSTRAINT \`FK_86b9109b155eb70c0a2ca3b4b6d\` FOREIGN KEY (\`channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`voice_states\` ADD CONSTRAINT \`FK_03779ef216d4b0358470d9cb748\` FOREIGN KEY (\`guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`messages\` ADD CONSTRAINT \`FK_b193588441b085352a4c0109423\` FOREIGN KEY (\`guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`voice_states\` ADD CONSTRAINT \`FK_9f8d389866b40b6657edd026dd4\` FOREIGN KEY (\`channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`messages\` ADD CONSTRAINT \`FK_05535bc695e9f7ee104616459d3\` FOREIGN KEY (\`author_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`voice_states\` ADD CONSTRAINT \`FK_5fe1d5f931a67e85039c640001b\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`messages\` ADD CONSTRAINT \`FK_b0525304f2262b7014245351c76\` FOREIGN KEY (\`member_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`webhooks\` ADD CONSTRAINT \`FK_487a7af59d189f744fe394368fc\` FOREIGN KEY (\`guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`messages\` ADD CONSTRAINT \`FK_f83c04bcf1df4e5c0e7a52ed348\` FOREIGN KEY (\`webhook_id\`) REFERENCES \`webhooks\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`webhooks\` ADD CONSTRAINT \`FK_df528cf77e82f8032230e7e37d8\` FOREIGN KEY (\`channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`messages\` ADD CONSTRAINT \`FK_5d3ec1cb962de6488637fd779d6\` FOREIGN KEY (\`application_id\`) REFERENCES \`applications\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`webhooks\` ADD CONSTRAINT \`FK_c3e5305461931763b56aa905f1c\` FOREIGN KEY (\`application_id\`) REFERENCES \`applications\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`messages\` ADD CONSTRAINT \`FK_61a92bb65b302a76d9c1fcd3174\` FOREIGN KEY (\`message_reference_id\`) REFERENCES \`messages\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`webhooks\` ADD CONSTRAINT \`FK_0d523f6f997c86e052c49b1455f\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`users\` ADD CONSTRAINT \`FK_0c14beb78d8c5ccba66072adbc7\` FOREIGN KEY (\`settingsIndex\`) REFERENCES \`user_settings\`(\`index\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`webhooks\` ADD CONSTRAINT \`FK_3a285f4f49c40e0706d3018bc9f\` FOREIGN KEY (\`source_guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`team_members\` ADD CONSTRAINT \`FK_fdad7d5768277e60c40e01cdcea\` FOREIGN KEY (\`team_id\`) REFERENCES \`teams\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`channels\` ADD CONSTRAINT \`FK_c253dafe5f3a03ec00cd8fb4581\` FOREIGN KEY (\`guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`team_members\` ADD CONSTRAINT \`FK_c2bf4967c8c2a6b845dadfbf3d4\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`channels\` ADD CONSTRAINT \`FK_3274522d14af40540b1a883fc80\` FOREIGN KEY (\`parent_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
+ `ALTER TABLE \`teams\` ADD CONSTRAINT \`FK_13f00abf7cb6096c43ecaf8c108\` FOREIGN KEY (\`owner_user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`channels\` ADD CONSTRAINT \`FK_3873ed438575cce703ecff4fc7b\` FOREIGN KEY (\`owner_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
+ `ALTER TABLE \`applications\` ADD CONSTRAINT \`FK_e57508958bf92b9d9d25231b5e8\` FOREIGN KEY (\`owner_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`emojis\` ADD CONSTRAINT \`FK_fa7ddd5f9a214e28ce596548421\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
+ `ALTER TABLE \`applications\` ADD CONSTRAINT \`FK_2ce5a55796fe4c2f77ece57a647\` FOREIGN KEY (\`bot_user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`notes\` ADD CONSTRAINT \`FK_f9e103f8ae67cb1787063597925\` FOREIGN KEY (\`owner_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`notes\` ADD CONSTRAINT \`FK_23e08e5b4481711d573e1abecdc\` FOREIGN KEY (\`target_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`sessions\` ADD CONSTRAINT \`FK_085d540d9f418cfbdc7bd55bb19\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`stickers\` ADD CONSTRAINT \`FK_e7cfa5cefa6661b3fb8fda8ce69\` FOREIGN KEY (\`pack_id\`) REFERENCES \`sticker_packs\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`stickers\` ADD CONSTRAINT \`FK_193d551d852aca5347ef5c9f205\` FOREIGN KEY (\`guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`stickers\` ADD CONSTRAINT \`FK_8f4ee73f2bb2325ff980502e158\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`sticker_packs\` ADD CONSTRAINT \`FK_448fafba4355ee1c837bbc865f1\` FOREIGN KEY (\`coverStickerId\`) REFERENCES \`stickers\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`templates\` ADD CONSTRAINT \`FK_d7374b7f8f5fbfdececa4fb62e1\` FOREIGN KEY (\`creator_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`templates\` ADD CONSTRAINT \`FK_445d00eaaea0e60a017a5ed0c11\` FOREIGN KEY (\`source_guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` ADD CONSTRAINT \`FK_f591a66b8019d87b0fe6c12dad6\` FOREIGN KEY (\`afk_channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` ADD CONSTRAINT \`FK_e2a2f873a64a5cf62526de42325\` FOREIGN KEY (\`template_id\`) REFERENCES \`templates\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` ADD CONSTRAINT \`FK_fc1a451727e3643ca572a3bb394\` FOREIGN KEY (\`owner_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` ADD CONSTRAINT \`FK_8d450b016dc8bec35f36729e4b0\` FOREIGN KEY (\`public_updates_channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` ADD CONSTRAINT \`FK_95828668aa333460582e0ca6396\` FOREIGN KEY (\`rules_channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` ADD CONSTRAINT \`FK_cfc3d3ad260f8121c95b31a1fce\` FOREIGN KEY (\`system_channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` ADD CONSTRAINT \`FK_9d1d665379eefde7876a17afa99\` FOREIGN KEY (\`widget_channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`roles\` ADD CONSTRAINT \`FK_c32c1ab1c4dc7dcb0278c4b1b8b\` FOREIGN KEY (\`guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`messages\` ADD CONSTRAINT \`FK_86b9109b155eb70c0a2ca3b4b6d\` FOREIGN KEY (\`channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`messages\` ADD CONSTRAINT \`FK_b193588441b085352a4c0109423\` FOREIGN KEY (\`guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`messages\` ADD CONSTRAINT \`FK_05535bc695e9f7ee104616459d3\` FOREIGN KEY (\`author_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`messages\` ADD CONSTRAINT \`FK_b0525304f2262b7014245351c76\` FOREIGN KEY (\`member_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`messages\` ADD CONSTRAINT \`FK_f83c04bcf1df4e5c0e7a52ed348\` FOREIGN KEY (\`webhook_id\`) REFERENCES \`webhooks\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`messages\` ADD CONSTRAINT \`FK_5d3ec1cb962de6488637fd779d6\` FOREIGN KEY (\`application_id\`) REFERENCES \`applications\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`messages\` ADD CONSTRAINT \`FK_61a92bb65b302a76d9c1fcd3174\` FOREIGN KEY (\`message_reference_id\`) REFERENCES \`messages\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`users\` ADD CONSTRAINT \`FK_0c14beb78d8c5ccba66072adbc7\` FOREIGN KEY (\`settingsIndex\`) REFERENCES \`user_settings\`(\`index\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`team_members\` ADD CONSTRAINT \`FK_fdad7d5768277e60c40e01cdcea\` FOREIGN KEY (\`team_id\`) REFERENCES \`teams\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`team_members\` ADD CONSTRAINT \`FK_c2bf4967c8c2a6b845dadfbf3d4\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`teams\` ADD CONSTRAINT \`FK_13f00abf7cb6096c43ecaf8c108\` FOREIGN KEY (\`owner_user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`applications\` ADD CONSTRAINT \`FK_e57508958bf92b9d9d25231b5e8\` FOREIGN KEY (\`owner_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`applications\` ADD CONSTRAINT \`FK_2ce5a55796fe4c2f77ece57a647\` FOREIGN KEY (\`bot_user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`applications\` ADD CONSTRAINT \`FK_a36ed02953077f408d0f3ebc424\` FOREIGN KEY (\`team_id\`) REFERENCES \`teams\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`applications\` ADD CONSTRAINT \`FK_a36ed02953077f408d0f3ebc424\` FOREIGN KEY (\`team_id\`) REFERENCES \`teams\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
}
diff --git a/scripts/stagingMigration/mysql/1672833135670-staging.js b/scripts/stagingMigration/mysql/1672833135670-staging.js
index 0da731dcc..e1239ab57 100644
--- a/scripts/stagingMigration/mysql/1672833135670-staging.js
+++ b/scripts/stagingMigration/mysql/1672833135670-staging.js
@@ -22,1098 +22,658 @@ module.exports = class staging1672833135670 {
name = "staging1672833135670";
async up(queryRunner) {
+ await queryRunner.query(`ALTER TABLE \`users\` DROP FOREIGN KEY \`FK_76ba283779c8441fd5ff819c8cf\``);
+ await queryRunner.query(`DROP INDEX \`REL_76ba283779c8441fd5ff819c8c\` ON \`users\``);
+ await queryRunner.query(`ALTER TABLE \`user_settings\` CHANGE \`id\` \`index\` varchar(255) NOT NULL`);
+ await queryRunner.query(
+ `CREATE TABLE \`embed_cache\` (\`id\` varchar(255) NOT NULL, \`url\` varchar(255) NOT NULL, \`embed\` text NOT NULL, PRIMARY KEY (\`id\`)) ENGINE=InnoDB`
+ );
+ await queryRunner.query(
+ `CREATE TABLE \`security_settings\` (\`id\` varchar(255) NOT NULL, \`guild_id\` varchar(255) NULL, \`channel_id\` varchar(255) NULL, \`encryption_permission_mask\` int NOT NULL, \`allowed_algorithms\` text NOT NULL, \`current_algorithm\` varchar(255) NOT NULL, \`used_since_message\` varchar(255) NULL, PRIMARY KEY (\`id\`)) ENGINE=InnoDB`
+ );
+ await queryRunner.query(`ALTER TABLE \`client_release\` DROP COLUMN \`deb_url\``);
+ await queryRunner.query(`ALTER TABLE \`client_release\` DROP COLUMN \`osx_url\``);
+ await queryRunner.query(`ALTER TABLE \`client_release\` DROP COLUMN \`win_url\``);
+ await queryRunner.query(`ALTER TABLE \`users\` DROP COLUMN \`settingsId\``);
+ await queryRunner.query(`ALTER TABLE \`client_release\` ADD \`platform\` varchar(255) NOT NULL`);
+ await queryRunner.query(`ALTER TABLE \`client_release\` ADD \`enabled\` tinyint NOT NULL`);
+ await queryRunner.query(`ALTER TABLE \`users\` ADD \`purchased_flags\` int NOT NULL`);
+ await queryRunner.query(`ALTER TABLE \`users\` ADD \`premium_usage_flags\` int NOT NULL`);
+ await queryRunner.query(`ALTER TABLE \`users\` ADD \`settingsIndex\` int NULL`);
+ await queryRunner.query(
+ `ALTER TABLE \`users\` ADD UNIQUE INDEX \`IDX_0c14beb78d8c5ccba66072adbc\` (\`settingsIndex\`)`
+ );
+ await queryRunner.query(`ALTER TABLE \`config\` CHANGE \`value\` \`value\` text NULL`);
+ await queryRunner.query(`ALTER TABLE \`relationships\` CHANGE \`nickname\` \`nickname\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`users\` DROP FOREIGN KEY \`FK_76ba283779c8441fd5ff819c8cf\``,
+ `ALTER TABLE \`connected_accounts\` DROP FOREIGN KEY \`FK_f47244225a6a1eac04a3463dd90\``
);
+ await queryRunner.query(`ALTER TABLE \`connected_accounts\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`attachments\` DROP FOREIGN KEY \`FK_623e10eec51ada466c5038979e3\``);
+ await queryRunner.query(`ALTER TABLE \`attachments\` CHANGE \`height\` \`height\` int NULL`);
+ await queryRunner.query(`ALTER TABLE \`attachments\` CHANGE \`width\` \`width\` int NULL`);
await queryRunner.query(
- `DROP INDEX \`REL_76ba283779c8441fd5ff819c8c\` ON \`users\``,
+ `ALTER TABLE \`attachments\` CHANGE \`content_type\` \`content_type\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`attachments\` CHANGE \`message_id\` \`message_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`audit_logs\` DROP FOREIGN KEY \`FK_bd2726fd31b35443f2245b93ba0\``);
+ await queryRunner.query(`ALTER TABLE \`audit_logs\` DROP FOREIGN KEY \`FK_3cd01cd3ae7aab010310d96ac8e\``);
+ await queryRunner.query(`ALTER TABLE \`audit_logs\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`audit_logs\` CHANGE \`options\` \`options\` text NULL`);
+ await queryRunner.query(`ALTER TABLE \`audit_logs\` CHANGE \`reason\` \`reason\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`audit_logs\` CHANGE \`target_id\` \`target_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`backup_codes\` DROP FOREIGN KEY \`FK_70066ea80d2f4b871beda32633b\``);
+ await queryRunner.query(`ALTER TABLE \`backup_codes\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`bans\` DROP FOREIGN KEY \`FK_5999e8e449f80a236ff72023559\``);
+ await queryRunner.query(`ALTER TABLE \`bans\` DROP FOREIGN KEY \`FK_9d3ab7dd180ebdd245cdb66ecad\``);
+ await queryRunner.query(`ALTER TABLE \`bans\` DROP FOREIGN KEY \`FK_07ad88c86d1f290d46748410d58\``);
+ await queryRunner.query(`ALTER TABLE \`bans\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`bans\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`bans\` CHANGE \`executor_id\` \`executor_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`bans\` CHANGE \`reason\` \`reason\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`categories\` CHANGE \`name\` \`name\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`categories\` CHANGE \`is_primary\` \`is_primary\` tinyint NULL`);
+ await queryRunner.query(`ALTER TABLE \`client_release\` DROP COLUMN \`pub_date\``);
+ await queryRunner.query(`ALTER TABLE \`client_release\` ADD \`pub_date\` datetime NOT NULL`);
+ await queryRunner.query(`ALTER TABLE \`client_release\` CHANGE \`notes\` \`notes\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`id\` \`index\` varchar(255) NOT NULL`,
+ `ALTER TABLE \`read_states\` CHANGE \`last_message_id\` \`last_message_id\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`read_states\` CHANGE \`public_ack\` \`public_ack\` varchar(255) NULL`);
await queryRunner.query(
- `CREATE TABLE \`embed_cache\` (\`id\` varchar(255) NOT NULL, \`url\` varchar(255) NOT NULL, \`embed\` text NOT NULL, PRIMARY KEY (\`id\`)) ENGINE=InnoDB`,
+ `ALTER TABLE \`read_states\` CHANGE \`notifications_cursor\` \`notifications_cursor\` varchar(255) NULL`
);
await queryRunner.query(
- `CREATE TABLE \`security_settings\` (\`id\` varchar(255) NOT NULL, \`guild_id\` varchar(255) NULL, \`channel_id\` varchar(255) NULL, \`encryption_permission_mask\` int NOT NULL, \`allowed_algorithms\` text NOT NULL, \`current_algorithm\` varchar(255) NOT NULL, \`used_since_message\` varchar(255) NULL, PRIMARY KEY (\`id\`)) ENGINE=InnoDB`,
- );
- await queryRunner.query(
- `ALTER TABLE \`client_release\` DROP COLUMN \`deb_url\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`client_release\` DROP COLUMN \`osx_url\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`client_release\` DROP COLUMN \`win_url\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`users\` DROP COLUMN \`settingsId\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`client_release\` ADD \`platform\` varchar(255) NOT NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`client_release\` ADD \`enabled\` tinyint NOT NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`users\` ADD \`purchased_flags\` int NOT NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`users\` ADD \`premium_usage_flags\` int NOT NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`users\` ADD \`settingsIndex\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`users\` ADD UNIQUE INDEX \`IDX_0c14beb78d8c5ccba66072adbc\` (\`settingsIndex\`)`,
- );
- await queryRunner.query(
- `ALTER TABLE \`config\` CHANGE \`value\` \`value\` text NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`relationships\` CHANGE \`nickname\` \`nickname\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`connected_accounts\` DROP FOREIGN KEY \`FK_f47244225a6a1eac04a3463dd90\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`connected_accounts\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`attachments\` DROP FOREIGN KEY \`FK_623e10eec51ada466c5038979e3\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`attachments\` CHANGE \`height\` \`height\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`attachments\` CHANGE \`width\` \`width\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`attachments\` CHANGE \`content_type\` \`content_type\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`attachments\` CHANGE \`message_id\` \`message_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`audit_logs\` DROP FOREIGN KEY \`FK_bd2726fd31b35443f2245b93ba0\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`audit_logs\` DROP FOREIGN KEY \`FK_3cd01cd3ae7aab010310d96ac8e\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`audit_logs\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`audit_logs\` CHANGE \`options\` \`options\` text NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`audit_logs\` CHANGE \`reason\` \`reason\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`audit_logs\` CHANGE \`target_id\` \`target_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`backup_codes\` DROP FOREIGN KEY \`FK_70066ea80d2f4b871beda32633b\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`backup_codes\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`bans\` DROP FOREIGN KEY \`FK_5999e8e449f80a236ff72023559\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`bans\` DROP FOREIGN KEY \`FK_9d3ab7dd180ebdd245cdb66ecad\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`bans\` DROP FOREIGN KEY \`FK_07ad88c86d1f290d46748410d58\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`bans\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`bans\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`bans\` CHANGE \`executor_id\` \`executor_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`bans\` CHANGE \`reason\` \`reason\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`categories\` CHANGE \`name\` \`name\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`categories\` CHANGE \`is_primary\` \`is_primary\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`client_release\` DROP COLUMN \`pub_date\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`client_release\` ADD \`pub_date\` datetime NOT NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`client_release\` CHANGE \`notes\` \`notes\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`read_states\` CHANGE \`last_message_id\` \`last_message_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`read_states\` CHANGE \`public_ack\` \`public_ack\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`read_states\` CHANGE \`notifications_cursor\` \`notifications_cursor\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`read_states\` CHANGE \`last_pin_timestamp\` \`last_pin_timestamp\` datetime NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`read_states\` CHANGE \`mention_count\` \`mention_count\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`invites\` DROP FOREIGN KEY \`FK_3f4939aa1461e8af57fea3fb05d\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`invites\` DROP FOREIGN KEY \`FK_6a15b051fe5050aa00a4b9ff0f6\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`invites\` DROP FOREIGN KEY \`FK_15c35422032e0b22b4ada95f48f\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`invites\` DROP FOREIGN KEY \`FK_11a0d394f8fc649c19ce5f16b59\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`invites\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`invites\` CHANGE \`channel_id\` \`channel_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`invites\` CHANGE \`inviter_id\` \`inviter_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`invites\` CHANGE \`target_user_id\` \`target_user_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`invites\` CHANGE \`target_user_type\` \`target_user_type\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`invites\` CHANGE \`vanity_url\` \`vanity_url\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`voice_states\` DROP FOREIGN KEY \`FK_03779ef216d4b0358470d9cb748\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`voice_states\` DROP FOREIGN KEY \`FK_9f8d389866b40b6657edd026dd4\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`voice_states\` DROP FOREIGN KEY \`FK_5fe1d5f931a67e85039c640001b\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`voice_states\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`voice_states\` CHANGE \`channel_id\` \`channel_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`voice_states\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`voice_states\` CHANGE \`token\` \`token\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`voice_states\` CHANGE \`self_stream\` \`self_stream\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`voice_states\` CHANGE \`request_to_speak_timestamp\` \`request_to_speak_timestamp\` datetime NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`webhooks\` DROP FOREIGN KEY \`FK_487a7af59d189f744fe394368fc\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`webhooks\` DROP FOREIGN KEY \`FK_df528cf77e82f8032230e7e37d8\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`webhooks\` DROP FOREIGN KEY \`FK_c3e5305461931763b56aa905f1c\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`webhooks\` DROP FOREIGN KEY \`FK_0d523f6f997c86e052c49b1455f\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`webhooks\` DROP FOREIGN KEY \`FK_3a285f4f49c40e0706d3018bc9f\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`webhooks\` CHANGE \`name\` \`name\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`webhooks\` CHANGE \`avatar\` \`avatar\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`webhooks\` CHANGE \`token\` \`token\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`webhooks\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`webhooks\` CHANGE \`channel_id\` \`channel_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`webhooks\` CHANGE \`application_id\` \`application_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`webhooks\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`webhooks\` CHANGE \`source_guild_id\` \`source_guild_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` DROP FOREIGN KEY \`FK_c253dafe5f3a03ec00cd8fb4581\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` DROP FOREIGN KEY \`FK_3274522d14af40540b1a883fc80\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` DROP FOREIGN KEY \`FK_3873ed438575cce703ecff4fc7b\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`name\` \`name\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`icon\` \`icon\` text NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`last_message_id\` \`last_message_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`parent_id\` \`parent_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`owner_id\` \`owner_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`last_pin_timestamp\` \`last_pin_timestamp\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`default_auto_archive_duration\` \`default_auto_archive_duration\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`position\` \`position\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`permission_overwrites\` \`permission_overwrites\` text NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`video_quality_mode\` \`video_quality_mode\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`bitrate\` \`bitrate\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`user_limit\` \`user_limit\` int NULL`,
- );
- await queryRunner.query(
- `UPDATE channels SET nsfw = 0 WHERE nsfw IS NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`nsfw\` \`nsfw\` tinyint NOT NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`rate_limit_per_user\` \`rate_limit_per_user\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`topic\` \`topic\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`retention_policy_id\` \`retention_policy_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`flags\` \`flags\` int NOT NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`channels\` CHANGE \`default_thread_rate_limit_per_user\` \`default_thread_rate_limit_per_user\` int NOT NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`emojis\` DROP FOREIGN KEY \`FK_fa7ddd5f9a214e28ce596548421\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`emojis\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`emojis\` CHANGE \`groups\` \`groups\` text NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`notes\` DROP FOREIGN KEY \`FK_f9e103f8ae67cb1787063597925\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`notes\` DROP FOREIGN KEY \`FK_23e08e5b4481711d573e1abecdc\``,
- );
- await queryRunner.query(
- `DROP INDEX \`IDX_74e6689b9568cc965b8bfc9150\` ON \`notes\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`notes\` CHANGE \`owner_id\` \`owner_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`notes\` CHANGE \`target_id\` \`target_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`sessions\` DROP FOREIGN KEY \`FK_085d540d9f418cfbdc7bd55bb19\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`sessions\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`sessions\` CHANGE \`activities\` \`activities\` text NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`stickers\` DROP FOREIGN KEY \`FK_e7cfa5cefa6661b3fb8fda8ce69\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`stickers\` DROP FOREIGN KEY \`FK_193d551d852aca5347ef5c9f205\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`stickers\` DROP FOREIGN KEY \`FK_8f4ee73f2bb2325ff980502e158\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`stickers\` CHANGE \`description\` \`description\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`stickers\` CHANGE \`available\` \`available\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`stickers\` CHANGE \`tags\` \`tags\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`stickers\` CHANGE \`pack_id\` \`pack_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`stickers\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`stickers\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`sticker_packs\` DROP FOREIGN KEY \`FK_448fafba4355ee1c837bbc865f1\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`sticker_packs\` CHANGE \`description\` \`description\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`sticker_packs\` CHANGE \`banner_asset_id\` \`banner_asset_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`sticker_packs\` CHANGE \`cover_sticker_id\` \`cover_sticker_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`sticker_packs\` CHANGE \`coverStickerId\` \`coverStickerId\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`templates\` DROP FOREIGN KEY \`FK_d7374b7f8f5fbfdececa4fb62e1\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`templates\` DROP FOREIGN KEY \`FK_445d00eaaea0e60a017a5ed0c11\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`templates\` CHANGE \`description\` \`description\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`templates\` CHANGE \`usage_count\` \`usage_count\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`templates\` CHANGE \`creator_id\` \`creator_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`templates\` CHANGE \`source_guild_id\` \`source_guild_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` DROP PRIMARY KEY`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` DROP COLUMN \`index\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` ADD \`index\` int NOT NULL PRIMARY KEY AUTO_INCREMENT`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`afk_timeout\` \`afk_timeout\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`allow_accessibility_detection\` \`allow_accessibility_detection\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`animate_emoji\` \`animate_emoji\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`animate_stickers\` \`animate_stickers\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`contact_sync_enabled\` \`contact_sync_enabled\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`convert_emoticons\` \`convert_emoticons\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`custom_status\` \`custom_status\` text NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`default_guilds_restricted\` \`default_guilds_restricted\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`detect_platform_accounts\` \`detect_platform_accounts\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`developer_mode\` \`developer_mode\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`disable_games_tab\` \`disable_games_tab\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`enable_tts_command\` \`enable_tts_command\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`explicit_content_filter\` \`explicit_content_filter\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`friend_source_flags\` \`friend_source_flags\` text NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`gateway_connected\` \`gateway_connected\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`gif_auto_play\` \`gif_auto_play\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`guild_folders\` \`guild_folders\` text NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`guild_positions\` \`guild_positions\` text NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`inline_attachment_media\` \`inline_attachment_media\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`inline_embed_media\` \`inline_embed_media\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`locale\` \`locale\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`message_display_compact\` \`message_display_compact\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`native_phone_integration_enabled\` \`native_phone_integration_enabled\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`render_embeds\` \`render_embeds\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`render_reactions\` \`render_reactions\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`restricted_guilds\` \`restricted_guilds\` text NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`show_current_game\` \`show_current_game\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`status\` \`status\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`stream_notifications_enabled\` \`stream_notifications_enabled\` tinyint NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`theme\` \`theme\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`user_settings\` CHANGE \`timezone_offset\` \`timezone_offset\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` DROP FOREIGN KEY \`FK_f591a66b8019d87b0fe6c12dad6\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` DROP FOREIGN KEY \`FK_e2a2f873a64a5cf62526de42325\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` DROP FOREIGN KEY \`FK_fc1a451727e3643ca572a3bb394\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` DROP FOREIGN KEY \`FK_8d450b016dc8bec35f36729e4b0\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` DROP FOREIGN KEY \`FK_95828668aa333460582e0ca6396\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` DROP FOREIGN KEY \`FK_cfc3d3ad260f8121c95b31a1fce\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` DROP FOREIGN KEY \`FK_9d1d665379eefde7876a17afa99\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`afk_channel_id\` \`afk_channel_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`afk_timeout\` \`afk_timeout\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`banner\` \`banner\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`default_message_notifications\` \`default_message_notifications\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`description\` \`description\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`discovery_splash\` \`discovery_splash\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`explicit_content_filter\` \`explicit_content_filter\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` DROP COLUMN \`primary_category_id\``,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` ADD \`primary_category_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`icon\` \`icon\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `UPDATE guilds SET large = 0 WHERE large IS NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`large\` \`large\` tinyint NOT NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`max_members\` \`max_members\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`max_presences\` \`max_presences\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`max_video_channel_users\` \`max_video_channel_users\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`member_count\` \`member_count\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`presence_count\` \`presence_count\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`template_id\` \`template_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`mfa_level\` \`mfa_level\` int NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`owner_id\` \`owner_id\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`preferred_locale\` \`preferred_locale\` varchar(255) NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`premium_subscription_count\` \`premium_subscription_count\` int NULL`,
- );
+ `ALTER TABLE \`read_states\` CHANGE \`last_pin_timestamp\` \`last_pin_timestamp\` datetime NULL`
+ );
+ await queryRunner.query(`ALTER TABLE \`read_states\` CHANGE \`mention_count\` \`mention_count\` int NULL`);
+ await queryRunner.query(`ALTER TABLE \`invites\` DROP FOREIGN KEY \`FK_3f4939aa1461e8af57fea3fb05d\``);
+ await queryRunner.query(`ALTER TABLE \`invites\` DROP FOREIGN KEY \`FK_6a15b051fe5050aa00a4b9ff0f6\``);
+ await queryRunner.query(`ALTER TABLE \`invites\` DROP FOREIGN KEY \`FK_15c35422032e0b22b4ada95f48f\``);
+ await queryRunner.query(`ALTER TABLE \`invites\` DROP FOREIGN KEY \`FK_11a0d394f8fc649c19ce5f16b59\``);
+ await queryRunner.query(`ALTER TABLE \`invites\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`invites\` CHANGE \`channel_id\` \`channel_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`invites\` CHANGE \`inviter_id\` \`inviter_id\` varchar(255) NULL`);
await queryRunner.query(
- `UPDATE guilds SET premium_tier = 0 WHERE premium_tier IS NULL`,
+ `ALTER TABLE \`invites\` CHANGE \`target_user_id\` \`target_user_id\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`invites\` CHANGE \`target_user_type\` \`target_user_type\` int NULL`);
+ await queryRunner.query(`ALTER TABLE \`invites\` CHANGE \`vanity_url\` \`vanity_url\` tinyint NULL`);
+ await queryRunner.query(`ALTER TABLE \`voice_states\` DROP FOREIGN KEY \`FK_03779ef216d4b0358470d9cb748\``);
+ await queryRunner.query(`ALTER TABLE \`voice_states\` DROP FOREIGN KEY \`FK_9f8d389866b40b6657edd026dd4\``);
+ await queryRunner.query(`ALTER TABLE \`voice_states\` DROP FOREIGN KEY \`FK_5fe1d5f931a67e85039c640001b\``);
+ await queryRunner.query(`ALTER TABLE \`voice_states\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`voice_states\` CHANGE \`channel_id\` \`channel_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`voice_states\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`voice_states\` CHANGE \`token\` \`token\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`voice_states\` CHANGE \`self_stream\` \`self_stream\` tinyint NULL`);
await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`premium_tier\` \`premium_tier\` int NOT NULL`,
+ `ALTER TABLE \`voice_states\` CHANGE \`request_to_speak_timestamp\` \`request_to_speak_timestamp\` datetime NULL`
);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` DROP FOREIGN KEY \`FK_487a7af59d189f744fe394368fc\``);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` DROP FOREIGN KEY \`FK_df528cf77e82f8032230e7e37d8\``);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` DROP FOREIGN KEY \`FK_c3e5305461931763b56aa905f1c\``);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` DROP FOREIGN KEY \`FK_0d523f6f997c86e052c49b1455f\``);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` DROP FOREIGN KEY \`FK_3a285f4f49c40e0706d3018bc9f\``);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` CHANGE \`name\` \`name\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` CHANGE \`avatar\` \`avatar\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` CHANGE \`token\` \`token\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` CHANGE \`channel_id\` \`channel_id\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`public_updates_channel_id\` \`public_updates_channel_id\` varchar(255) NULL`,
+ `ALTER TABLE \`webhooks\` CHANGE \`application_id\` \`application_id\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`rules_channel_id\` \`rules_channel_id\` varchar(255) NULL`,
+ `ALTER TABLE \`webhooks\` CHANGE \`source_guild_id\` \`source_guild_id\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`channels\` DROP FOREIGN KEY \`FK_c253dafe5f3a03ec00cd8fb4581\``);
+ await queryRunner.query(`ALTER TABLE \`channels\` DROP FOREIGN KEY \`FK_3274522d14af40540b1a883fc80\``);
+ await queryRunner.query(`ALTER TABLE \`channels\` DROP FOREIGN KEY \`FK_3873ed438575cce703ecff4fc7b\``);
+ await queryRunner.query(`ALTER TABLE \`channels\` CHANGE \`name\` \`name\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`channels\` CHANGE \`icon\` \`icon\` text NULL`);
await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`region\` \`region\` varchar(255) NULL`,
+ `ALTER TABLE \`channels\` CHANGE \`last_message_id\` \`last_message_id\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`channels\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`channels\` CHANGE \`parent_id\` \`parent_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`channels\` CHANGE \`owner_id\` \`owner_id\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`splash\` \`splash\` varchar(255) NULL`,
+ `ALTER TABLE \`channels\` CHANGE \`last_pin_timestamp\` \`last_pin_timestamp\` int NULL`
);
await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`system_channel_id\` \`system_channel_id\` varchar(255) NULL`,
+ `ALTER TABLE \`channels\` CHANGE \`default_auto_archive_duration\` \`default_auto_archive_duration\` int NULL`
);
+ await queryRunner.query(`ALTER TABLE \`channels\` CHANGE \`position\` \`position\` int NULL`);
await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`system_channel_flags\` \`system_channel_flags\` int NULL`,
+ `ALTER TABLE \`channels\` CHANGE \`permission_overwrites\` \`permission_overwrites\` text NULL`
);
await queryRunner.query(
- `UPDATE guilds SET unavailable = 0 WHERE unavailable IS NULL`,
+ `ALTER TABLE \`channels\` CHANGE \`video_quality_mode\` \`video_quality_mode\` int NULL`
);
+ await queryRunner.query(`ALTER TABLE \`channels\` CHANGE \`bitrate\` \`bitrate\` int NULL`);
+ await queryRunner.query(`ALTER TABLE \`channels\` CHANGE \`user_limit\` \`user_limit\` int NULL`);
+ await queryRunner.query(`UPDATE channels SET nsfw = 0 WHERE nsfw IS NULL`);
+ await queryRunner.query(`ALTER TABLE \`channels\` CHANGE \`nsfw\` \`nsfw\` tinyint NOT NULL`);
await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`unavailable\` \`unavailable\` tinyint NOT NULL`,
+ `ALTER TABLE \`channels\` CHANGE \`rate_limit_per_user\` \`rate_limit_per_user\` int NULL`
);
+ await queryRunner.query(`ALTER TABLE \`channels\` CHANGE \`topic\` \`topic\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`verification_level\` \`verification_level\` int NULL`,
+ `ALTER TABLE \`channels\` CHANGE \`retention_policy_id\` \`retention_policy_id\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`channels\` CHANGE \`flags\` \`flags\` int NOT NULL`);
await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`widget_channel_id\` \`widget_channel_id\` varchar(255) NULL`,
+ `ALTER TABLE \`channels\` CHANGE \`default_thread_rate_limit_per_user\` \`default_thread_rate_limit_per_user\` int NOT NULL`
);
+ await queryRunner.query(`ALTER TABLE \`emojis\` DROP FOREIGN KEY \`FK_fa7ddd5f9a214e28ce596548421\``);
+ await queryRunner.query(`ALTER TABLE \`emojis\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`emojis\` CHANGE \`groups\` \`groups\` text NULL`);
+ await queryRunner.query(`ALTER TABLE \`notes\` DROP FOREIGN KEY \`FK_f9e103f8ae67cb1787063597925\``);
+ await queryRunner.query(`ALTER TABLE \`notes\` DROP FOREIGN KEY \`FK_23e08e5b4481711d573e1abecdc\``);
+ await queryRunner.query(`DROP INDEX \`IDX_74e6689b9568cc965b8bfc9150\` ON \`notes\``);
+ await queryRunner.query(`ALTER TABLE \`notes\` CHANGE \`owner_id\` \`owner_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`notes\` CHANGE \`target_id\` \`target_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`sessions\` DROP FOREIGN KEY \`FK_085d540d9f418cfbdc7bd55bb19\``);
+ await queryRunner.query(`ALTER TABLE \`sessions\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`sessions\` CHANGE \`activities\` \`activities\` text NULL`);
+ await queryRunner.query(`ALTER TABLE \`stickers\` DROP FOREIGN KEY \`FK_e7cfa5cefa6661b3fb8fda8ce69\``);
+ await queryRunner.query(`ALTER TABLE \`stickers\` DROP FOREIGN KEY \`FK_193d551d852aca5347ef5c9f205\``);
+ await queryRunner.query(`ALTER TABLE \`stickers\` DROP FOREIGN KEY \`FK_8f4ee73f2bb2325ff980502e158\``);
+ await queryRunner.query(`ALTER TABLE \`stickers\` CHANGE \`description\` \`description\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`stickers\` CHANGE \`available\` \`available\` tinyint NULL`);
+ await queryRunner.query(`ALTER TABLE \`stickers\` CHANGE \`tags\` \`tags\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`stickers\` CHANGE \`pack_id\` \`pack_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`stickers\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`stickers\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`sticker_packs\` DROP FOREIGN KEY \`FK_448fafba4355ee1c837bbc865f1\``);
await queryRunner.query(
- `UPDATE guilds SET widget_enabled = 0 WHERE widget_enabled IS NULL`,
+ `ALTER TABLE \`sticker_packs\` CHANGE \`description\` \`description\` varchar(255) NULL`
);
await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`widget_enabled\` \`widget_enabled\` tinyint NOT NULL`,
+ `ALTER TABLE \`sticker_packs\` CHANGE \`banner_asset_id\` \`banner_asset_id\` varchar(255) NULL`
);
await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`nsfw_level\` \`nsfw_level\` int NULL`,
+ `ALTER TABLE \`sticker_packs\` CHANGE \`cover_sticker_id\` \`cover_sticker_id\` varchar(255) NULL`
);
await queryRunner.query(
- `UPDATE guilds SET nsfw = 0 WHERE nsfw IS NULL`,
+ `ALTER TABLE \`sticker_packs\` CHANGE \`coverStickerId\` \`coverStickerId\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`templates\` DROP FOREIGN KEY \`FK_d7374b7f8f5fbfdececa4fb62e1\``);
+ await queryRunner.query(`ALTER TABLE \`templates\` DROP FOREIGN KEY \`FK_445d00eaaea0e60a017a5ed0c11\``);
+ await queryRunner.query(`ALTER TABLE \`templates\` CHANGE \`description\` \`description\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`templates\` CHANGE \`usage_count\` \`usage_count\` int NULL`);
+ await queryRunner.query(`ALTER TABLE \`templates\` CHANGE \`creator_id\` \`creator_id\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`nsfw\` \`nsfw\` tinyint NOT NULL`,
+ `ALTER TABLE \`templates\` CHANGE \`source_guild_id\` \`source_guild_id\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`user_settings\` DROP PRIMARY KEY`);
+ await queryRunner.query(`ALTER TABLE \`user_settings\` DROP COLUMN \`index\``);
+ await queryRunner.query(`ALTER TABLE \`user_settings\` ADD \`index\` int NOT NULL PRIMARY KEY AUTO_INCREMENT`);
+ await queryRunner.query(`ALTER TABLE \`user_settings\` CHANGE \`afk_timeout\` \`afk_timeout\` int NULL`);
await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`parent\` \`parent\` varchar(255) NULL`,
+ `ALTER TABLE \`user_settings\` CHANGE \`allow_accessibility_detection\` \`allow_accessibility_detection\` tinyint NULL`
);
await queryRunner.query(
- `ALTER TABLE \`guilds\` CHANGE \`premium_progress_bar_enabled\` \`premium_progress_bar_enabled\` tinyint NULL`,
+ `ALTER TABLE \`user_settings\` CHANGE \`animate_emoji\` \`animate_emoji\` tinyint NULL`
);
await queryRunner.query(
- `ALTER TABLE \`roles\` DROP FOREIGN KEY \`FK_c32c1ab1c4dc7dcb0278c4b1b8b\``,
+ `ALTER TABLE \`user_settings\` CHANGE \`animate_stickers\` \`animate_stickers\` int NULL`
);
await queryRunner.query(
- `ALTER TABLE \`roles\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`,
+ `ALTER TABLE \`user_settings\` CHANGE \`contact_sync_enabled\` \`contact_sync_enabled\` tinyint NULL`
);
await queryRunner.query(
- `ALTER TABLE \`roles\` CHANGE \`icon\` \`icon\` varchar(255) NULL`,
+ `ALTER TABLE \`user_settings\` CHANGE \`convert_emoticons\` \`convert_emoticons\` tinyint NULL`
);
+ await queryRunner.query(`ALTER TABLE \`user_settings\` CHANGE \`custom_status\` \`custom_status\` text NULL`);
await queryRunner.query(
- `ALTER TABLE \`roles\` CHANGE \`unicode_emoji\` \`unicode_emoji\` varchar(255) NULL`,
+ `ALTER TABLE \`user_settings\` CHANGE \`default_guilds_restricted\` \`default_guilds_restricted\` tinyint NULL`
);
await queryRunner.query(
- `ALTER TABLE \`roles\` CHANGE \`tags\` \`tags\` text NULL`,
+ `ALTER TABLE \`user_settings\` CHANGE \`detect_platform_accounts\` \`detect_platform_accounts\` tinyint NULL`
);
await queryRunner.query(
- `ALTER TABLE \`messages\` DROP FOREIGN KEY \`FK_86b9109b155eb70c0a2ca3b4b6d\``,
+ `ALTER TABLE \`user_settings\` CHANGE \`developer_mode\` \`developer_mode\` tinyint NULL`
);
await queryRunner.query(
- `ALTER TABLE \`messages\` DROP FOREIGN KEY \`FK_b193588441b085352a4c0109423\``,
+ `ALTER TABLE \`user_settings\` CHANGE \`disable_games_tab\` \`disable_games_tab\` tinyint NULL`
);
await queryRunner.query(
- `ALTER TABLE \`messages\` DROP FOREIGN KEY \`FK_05535bc695e9f7ee104616459d3\``,
+ `ALTER TABLE \`user_settings\` CHANGE \`enable_tts_command\` \`enable_tts_command\` tinyint NULL`
);
await queryRunner.query(
- `ALTER TABLE \`messages\` DROP FOREIGN KEY \`FK_b0525304f2262b7014245351c76\``,
+ `ALTER TABLE \`user_settings\` CHANGE \`explicit_content_filter\` \`explicit_content_filter\` int NULL`
);
await queryRunner.query(
- `ALTER TABLE \`messages\` DROP FOREIGN KEY \`FK_f83c04bcf1df4e5c0e7a52ed348\``,
+ `ALTER TABLE \`user_settings\` CHANGE \`friend_source_flags\` \`friend_source_flags\` text NULL`
);
await queryRunner.query(
- `ALTER TABLE \`messages\` DROP FOREIGN KEY \`FK_5d3ec1cb962de6488637fd779d6\``,
+ `ALTER TABLE \`user_settings\` CHANGE \`gateway_connected\` \`gateway_connected\` tinyint NULL`
);
await queryRunner.query(
- `ALTER TABLE \`messages\` DROP FOREIGN KEY \`FK_61a92bb65b302a76d9c1fcd3174\``,
+ `ALTER TABLE \`user_settings\` CHANGE \`gif_auto_play\` \`gif_auto_play\` tinyint NULL`
);
+ await queryRunner.query(`ALTER TABLE \`user_settings\` CHANGE \`guild_folders\` \`guild_folders\` text NULL`);
await queryRunner.query(
- `DROP INDEX \`IDX_3ed7a60fb7dbe04e1ba9332a8b\` ON \`messages\``,
+ `ALTER TABLE \`user_settings\` CHANGE \`guild_positions\` \`guild_positions\` text NULL`
);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`channel_id\` \`channel_id\` varchar(255) NULL`,
+ `ALTER TABLE \`user_settings\` CHANGE \`inline_attachment_media\` \`inline_attachment_media\` tinyint NULL`
);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`,
+ `ALTER TABLE \`user_settings\` CHANGE \`inline_embed_media\` \`inline_embed_media\` tinyint NULL`
);
+ await queryRunner.query(`ALTER TABLE \`user_settings\` CHANGE \`locale\` \`locale\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`author_id\` \`author_id\` varchar(255) NULL`,
+ `ALTER TABLE \`user_settings\` CHANGE \`message_display_compact\` \`message_display_compact\` tinyint NULL`
);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`member_id\` \`member_id\` varchar(255) NULL`,
+ `ALTER TABLE \`user_settings\` CHANGE \`native_phone_integration_enabled\` \`native_phone_integration_enabled\` tinyint NULL`
);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`webhook_id\` \`webhook_id\` varchar(255) NULL`,
+ `ALTER TABLE \`user_settings\` CHANGE \`render_embeds\` \`render_embeds\` tinyint NULL`
);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`application_id\` \`application_id\` varchar(255) NULL`,
+ `ALTER TABLE \`user_settings\` CHANGE \`render_reactions\` \`render_reactions\` tinyint NULL`
);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`content\` \`content\` varchar(255) NULL`,
+ `ALTER TABLE \`user_settings\` CHANGE \`restricted_guilds\` \`restricted_guilds\` text NULL`
);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`edited_timestamp\` \`edited_timestamp\` datetime NULL`,
+ `ALTER TABLE \`user_settings\` CHANGE \`show_current_game\` \`show_current_game\` tinyint NULL`
);
+ await queryRunner.query(`ALTER TABLE \`user_settings\` CHANGE \`status\` \`status\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`tts\` \`tts\` tinyint NULL`,
+ `ALTER TABLE \`user_settings\` CHANGE \`stream_notifications_enabled\` \`stream_notifications_enabled\` tinyint NULL`
);
+ await queryRunner.query(`ALTER TABLE \`user_settings\` CHANGE \`theme\` \`theme\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`mention_everyone\` \`mention_everyone\` tinyint NULL`,
+ `ALTER TABLE \`user_settings\` CHANGE \`timezone_offset\` \`timezone_offset\` int NULL`
);
+ await queryRunner.query(`ALTER TABLE \`guilds\` DROP FOREIGN KEY \`FK_f591a66b8019d87b0fe6c12dad6\``);
+ await queryRunner.query(`ALTER TABLE \`guilds\` DROP FOREIGN KEY \`FK_e2a2f873a64a5cf62526de42325\``);
+ await queryRunner.query(`ALTER TABLE \`guilds\` DROP FOREIGN KEY \`FK_fc1a451727e3643ca572a3bb394\``);
+ await queryRunner.query(`ALTER TABLE \`guilds\` DROP FOREIGN KEY \`FK_8d450b016dc8bec35f36729e4b0\``);
+ await queryRunner.query(`ALTER TABLE \`guilds\` DROP FOREIGN KEY \`FK_95828668aa333460582e0ca6396\``);
+ await queryRunner.query(`ALTER TABLE \`guilds\` DROP FOREIGN KEY \`FK_cfc3d3ad260f8121c95b31a1fce\``);
+ await queryRunner.query(`ALTER TABLE \`guilds\` DROP FOREIGN KEY \`FK_9d1d665379eefde7876a17afa99\``);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`nonce\` \`nonce\` text NULL`,
+ `ALTER TABLE \`guilds\` CHANGE \`afk_channel_id\` \`afk_channel_id\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`afk_timeout\` \`afk_timeout\` int NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`banner\` \`banner\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`pinned\` \`pinned\` tinyint NULL`,
+ `ALTER TABLE \`guilds\` CHANGE \`default_message_notifications\` \`default_message_notifications\` int NULL`
);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`description\` \`description\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`activity\` \`activity\` text NULL`,
+ `ALTER TABLE \`guilds\` CHANGE \`discovery_splash\` \`discovery_splash\` varchar(255) NULL`
);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`flags\` \`flags\` varchar(255) NULL`,
+ `ALTER TABLE \`guilds\` CHANGE \`explicit_content_filter\` \`explicit_content_filter\` int NULL`
);
+ await queryRunner.query(`ALTER TABLE \`guilds\` DROP COLUMN \`primary_category_id\``);
+ await queryRunner.query(`ALTER TABLE \`guilds\` ADD \`primary_category_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`icon\` \`icon\` varchar(255) NULL`);
+ await queryRunner.query(`UPDATE guilds SET large = 0 WHERE large IS NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`large\` \`large\` tinyint NOT NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`max_members\` \`max_members\` int NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`max_presences\` \`max_presences\` int NULL`);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`message_reference\` \`message_reference\` text NULL`,
+ `ALTER TABLE \`guilds\` CHANGE \`max_video_channel_users\` \`max_video_channel_users\` int NULL`
);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`member_count\` \`member_count\` int NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`presence_count\` \`presence_count\` int NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`template_id\` \`template_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`mfa_level\` \`mfa_level\` int NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`owner_id\` \`owner_id\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`interaction\` \`interaction\` text NULL`,
+ `ALTER TABLE \`guilds\` CHANGE \`preferred_locale\` \`preferred_locale\` varchar(255) NULL`
);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`components\` \`components\` text NULL`,
+ `ALTER TABLE \`guilds\` CHANGE \`premium_subscription_count\` \`premium_subscription_count\` int NULL`
);
+ await queryRunner.query(`UPDATE guilds SET premium_tier = 0 WHERE premium_tier IS NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`premium_tier\` \`premium_tier\` int NOT NULL`);
await queryRunner.query(
- `ALTER TABLE \`messages\` CHANGE \`message_reference_id\` \`message_reference_id\` varchar(255) NULL`,
+ `ALTER TABLE \`guilds\` CHANGE \`public_updates_channel_id\` \`public_updates_channel_id\` varchar(255) NULL`
);
await queryRunner.query(
- `ALTER TABLE \`members\` CHANGE \`nick\` \`nick\` varchar(255) NULL`,
+ `ALTER TABLE \`guilds\` CHANGE \`rules_channel_id\` \`rules_channel_id\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`region\` \`region\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`splash\` \`splash\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`members\` DROP COLUMN \`premium_since\``,
+ `ALTER TABLE \`guilds\` CHANGE \`system_channel_id\` \`system_channel_id\` varchar(255) NULL`
);
await queryRunner.query(
- `ALTER TABLE \`members\` ADD \`premium_since\` bigint NULL`,
+ `ALTER TABLE \`guilds\` CHANGE \`system_channel_flags\` \`system_channel_flags\` int NULL`
);
+ await queryRunner.query(`UPDATE guilds SET unavailable = 0 WHERE unavailable IS NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`unavailable\` \`unavailable\` tinyint NOT NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`verification_level\` \`verification_level\` int NULL`);
await queryRunner.query(
- `ALTER TABLE \`members\` CHANGE \`last_message_id\` \`last_message_id\` varchar(255) NULL`,
+ `ALTER TABLE \`guilds\` CHANGE \`widget_channel_id\` \`widget_channel_id\` varchar(255) NULL`
);
+ await queryRunner.query(`UPDATE guilds SET widget_enabled = 0 WHERE widget_enabled IS NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`widget_enabled\` \`widget_enabled\` tinyint NOT NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`nsfw_level\` \`nsfw_level\` int NULL`);
+ await queryRunner.query(`UPDATE guilds SET nsfw = 0 WHERE nsfw IS NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`nsfw\` \`nsfw\` tinyint NOT NULL`);
+ await queryRunner.query(`ALTER TABLE \`guilds\` CHANGE \`parent\` \`parent\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`members\` CHANGE \`joined_by\` \`joined_by\` varchar(255) NULL`,
+ `ALTER TABLE \`guilds\` CHANGE \`premium_progress_bar_enabled\` \`premium_progress_bar_enabled\` tinyint NULL`
);
+ await queryRunner.query(`ALTER TABLE \`roles\` DROP FOREIGN KEY \`FK_c32c1ab1c4dc7dcb0278c4b1b8b\``);
+ await queryRunner.query(`ALTER TABLE \`roles\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`roles\` CHANGE \`icon\` \`icon\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`roles\` CHANGE \`unicode_emoji\` \`unicode_emoji\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`roles\` CHANGE \`tags\` \`tags\` text NULL`);
+ await queryRunner.query(`ALTER TABLE \`messages\` DROP FOREIGN KEY \`FK_86b9109b155eb70c0a2ca3b4b6d\``);
+ await queryRunner.query(`ALTER TABLE \`messages\` DROP FOREIGN KEY \`FK_b193588441b085352a4c0109423\``);
+ await queryRunner.query(`ALTER TABLE \`messages\` DROP FOREIGN KEY \`FK_05535bc695e9f7ee104616459d3\``);
+ await queryRunner.query(`ALTER TABLE \`messages\` DROP FOREIGN KEY \`FK_b0525304f2262b7014245351c76\``);
+ await queryRunner.query(`ALTER TABLE \`messages\` DROP FOREIGN KEY \`FK_f83c04bcf1df4e5c0e7a52ed348\``);
+ await queryRunner.query(`ALTER TABLE \`messages\` DROP FOREIGN KEY \`FK_5d3ec1cb962de6488637fd779d6\``);
+ await queryRunner.query(`ALTER TABLE \`messages\` DROP FOREIGN KEY \`FK_61a92bb65b302a76d9c1fcd3174\``);
+ await queryRunner.query(`DROP INDEX \`IDX_3ed7a60fb7dbe04e1ba9332a8b\` ON \`messages\``);
+ await queryRunner.query(`ALTER TABLE \`messages\` CHANGE \`channel_id\` \`channel_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`messages\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`messages\` CHANGE \`author_id\` \`author_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`messages\` CHANGE \`member_id\` \`member_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`messages\` CHANGE \`webhook_id\` \`webhook_id\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`members\` CHANGE \`avatar\` \`avatar\` varchar(255) NULL`,
+ `ALTER TABLE \`messages\` CHANGE \`application_id\` \`application_id\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`messages\` CHANGE \`content\` \`content\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`members\` CHANGE \`banner\` \`banner\` varchar(255) NULL`,
+ `ALTER TABLE \`messages\` CHANGE \`edited_timestamp\` \`edited_timestamp\` datetime NULL`
);
+ await queryRunner.query(`ALTER TABLE \`messages\` CHANGE \`tts\` \`tts\` tinyint NULL`);
await queryRunner.query(
- `ALTER TABLE \`members\` CHANGE \`communication_disabled_until\` \`communication_disabled_until\` datetime NULL`,
+ `ALTER TABLE \`messages\` CHANGE \`mention_everyone\` \`mention_everyone\` tinyint NULL`
);
+ await queryRunner.query(`ALTER TABLE \`messages\` CHANGE \`nonce\` \`nonce\` text NULL`);
+ await queryRunner.query(`ALTER TABLE \`messages\` CHANGE \`pinned\` \`pinned\` tinyint NULL`);
+ await queryRunner.query(`ALTER TABLE \`messages\` CHANGE \`activity\` \`activity\` text NULL`);
+ await queryRunner.query(`ALTER TABLE \`messages\` CHANGE \`flags\` \`flags\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`users\` CHANGE \`avatar\` \`avatar\` varchar(255) NULL`,
+ `ALTER TABLE \`messages\` CHANGE \`message_reference\` \`message_reference\` text NULL`
);
+ await queryRunner.query(`ALTER TABLE \`messages\` CHANGE \`interaction\` \`interaction\` text NULL`);
+ await queryRunner.query(`ALTER TABLE \`messages\` CHANGE \`components\` \`components\` text NULL`);
await queryRunner.query(
- `ALTER TABLE \`users\` CHANGE \`accent_color\` \`accent_color\` int NULL`,
+ `ALTER TABLE \`messages\` CHANGE \`message_reference_id\` \`message_reference_id\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`members\` CHANGE \`nick\` \`nick\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`members\` DROP COLUMN \`premium_since\``);
+ await queryRunner.query(`ALTER TABLE \`members\` ADD \`premium_since\` bigint NULL`);
await queryRunner.query(
- `ALTER TABLE \`users\` CHANGE \`banner\` \`banner\` varchar(255) NULL`,
+ `ALTER TABLE \`members\` CHANGE \`last_message_id\` \`last_message_id\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`members\` CHANGE \`joined_by\` \`joined_by\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`members\` CHANGE \`avatar\` \`avatar\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`members\` CHANGE \`banner\` \`banner\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`users\` CHANGE \`phone\` \`phone\` varchar(255) NULL`,
+ `ALTER TABLE \`members\` CHANGE \`communication_disabled_until\` \`communication_disabled_until\` datetime NULL`
);
+ await queryRunner.query(`ALTER TABLE \`users\` CHANGE \`avatar\` \`avatar\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`users\` CHANGE \`accent_color\` \`accent_color\` int NULL`);
+ await queryRunner.query(`ALTER TABLE \`users\` CHANGE \`banner\` \`banner\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`users\` CHANGE \`phone\` \`phone\` varchar(255) NULL`);
await queryRunner.query(`UPDATE users SET bio = "" WHERE bio IS NULL`);
+ await queryRunner.query(`ALTER TABLE \`users\` CHANGE \`bio\` \`bio\` varchar(255) NOT NULL`);
+ await queryRunner.query(`UPDATE users SET mfa_enabled = 0 WHERE mfa_enabled IS NULL`);
+ await queryRunner.query(`ALTER TABLE \`users\` CHANGE \`mfa_enabled\` \`mfa_enabled\` tinyint NOT NULL`);
+ await queryRunner.query(`ALTER TABLE \`users\` CHANGE \`totp_secret\` \`totp_secret\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`users\` CHANGE \`bio\` \`bio\` varchar(255) NOT NULL`,
+ `ALTER TABLE \`users\` CHANGE \`totp_last_ticket\` \`totp_last_ticket\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`users\` CHANGE \`premium_since\` \`premium_since\` datetime NULL`);
+ await queryRunner.query(`ALTER TABLE \`users\` CHANGE \`email\` \`email\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`team_members\` DROP FOREIGN KEY \`FK_fdad7d5768277e60c40e01cdcea\``);
+ await queryRunner.query(`ALTER TABLE \`team_members\` DROP FOREIGN KEY \`FK_c2bf4967c8c2a6b845dadfbf3d4\``);
+ await queryRunner.query(`ALTER TABLE \`team_members\` CHANGE \`team_id\` \`team_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`team_members\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`teams\` DROP FOREIGN KEY \`FK_13f00abf7cb6096c43ecaf8c108\``);
+ await queryRunner.query(`ALTER TABLE \`teams\` CHANGE \`icon\` \`icon\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`teams\` CHANGE \`owner_user_id\` \`owner_user_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`applications\` DROP FOREIGN KEY \`FK_e57508958bf92b9d9d25231b5e8\``);
+ await queryRunner.query(`ALTER TABLE \`applications\` DROP FOREIGN KEY \`FK_2ce5a55796fe4c2f77ece57a647\``);
+ await queryRunner.query(`ALTER TABLE \`applications\` DROP FOREIGN KEY \`FK_a36ed02953077f408d0f3ebc424\``);
+ await queryRunner.query(`ALTER TABLE \`applications\` CHANGE \`icon\` \`icon\` varchar(255) NULL`);
await queryRunner.query(
- `UPDATE users SET mfa_enabled = 0 WHERE mfa_enabled IS NULL`,
+ `ALTER TABLE \`applications\` CHANGE \`description\` \`description\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`applications\` CHANGE \`summary\` \`summary\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`applications\` CHANGE \`type\` \`type\` text NULL`);
+ await queryRunner.query(`ALTER TABLE \`applications\` CHANGE \`redirect_uris\` \`redirect_uris\` text NULL`);
await queryRunner.query(
- `ALTER TABLE \`users\` CHANGE \`mfa_enabled\` \`mfa_enabled\` tinyint NOT NULL`,
+ `ALTER TABLE \`applications\` CHANGE \`rpc_application_state\` \`rpc_application_state\` int NULL`
);
await queryRunner.query(
- `ALTER TABLE \`users\` CHANGE \`totp_secret\` \`totp_secret\` varchar(255) NULL`,
+ `ALTER TABLE \`applications\` CHANGE \`store_application_state\` \`store_application_state\` int NULL`
);
await queryRunner.query(
- `ALTER TABLE \`users\` CHANGE \`totp_last_ticket\` \`totp_last_ticket\` varchar(255) NULL`,
+ `ALTER TABLE \`applications\` CHANGE \`verification_state\` \`verification_state\` int NULL`
);
await queryRunner.query(
- `ALTER TABLE \`users\` CHANGE \`premium_since\` \`premium_since\` datetime NULL`,
+ `ALTER TABLE \`applications\` CHANGE \`interactions_endpoint_url\` \`interactions_endpoint_url\` varchar(255) NULL`
);
await queryRunner.query(
- `ALTER TABLE \`users\` CHANGE \`email\` \`email\` varchar(255) NULL`,
+ `ALTER TABLE \`applications\` CHANGE \`integration_public\` \`integration_public\` tinyint NULL`
);
await queryRunner.query(
- `ALTER TABLE \`team_members\` DROP FOREIGN KEY \`FK_fdad7d5768277e60c40e01cdcea\``,
+ `ALTER TABLE \`applications\` CHANGE \`integration_require_code_grant\` \`integration_require_code_grant\` tinyint NULL`
);
await queryRunner.query(
- `ALTER TABLE \`team_members\` DROP FOREIGN KEY \`FK_c2bf4967c8c2a6b845dadfbf3d4\``,
+ `ALTER TABLE \`applications\` CHANGE \`discoverability_state\` \`discoverability_state\` int NULL`
);
await queryRunner.query(
- `ALTER TABLE \`team_members\` CHANGE \`team_id\` \`team_id\` varchar(255) NULL`,
+ `ALTER TABLE \`applications\` CHANGE \`discovery_eligibility_flags\` \`discovery_eligibility_flags\` int NULL`
);
+ await queryRunner.query(`ALTER TABLE \`applications\` CHANGE \`tags\` \`tags\` text NULL`);
await queryRunner.query(
- `ALTER TABLE \`team_members\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`,
+ `ALTER TABLE \`applications\` CHANGE \`cover_image\` \`cover_image\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`applications\` CHANGE \`install_params\` \`install_params\` text NULL`);
await queryRunner.query(
- `ALTER TABLE \`teams\` DROP FOREIGN KEY \`FK_13f00abf7cb6096c43ecaf8c108\``,
+ `ALTER TABLE \`applications\` CHANGE \`terms_of_service_url\` \`terms_of_service_url\` varchar(255) NULL`
);
await queryRunner.query(
- `ALTER TABLE \`teams\` CHANGE \`icon\` \`icon\` varchar(255) NULL`,
+ `ALTER TABLE \`applications\` CHANGE \`privacy_policy_url\` \`privacy_policy_url\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`applications\` CHANGE \`owner_id\` \`owner_id\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`teams\` CHANGE \`owner_user_id\` \`owner_user_id\` varchar(255) NULL`,
+ `ALTER TABLE \`applications\` CHANGE \`bot_user_id\` \`bot_user_id\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`applications\` CHANGE \`team_id\` \`team_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` CHANGE \`name\` \`name\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` CHANGE \`avatar\` \`avatar\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` CHANGE \`token\` \`token\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` CHANGE \`channel_id\` \`channel_id\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`applications\` DROP FOREIGN KEY \`FK_e57508958bf92b9d9d25231b5e8\``,
+ `ALTER TABLE \`webhooks\` CHANGE \`application_id\` \`application_id\` varchar(255) NULL`
);
+ await queryRunner.query(`ALTER TABLE \`webhooks\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`);
await queryRunner.query(
- `ALTER TABLE \`applications\` DROP FOREIGN KEY \`FK_2ce5a55796fe4c2f77ece57a647\``,
+ `ALTER TABLE \`webhooks\` CHANGE \`source_guild_id\` \`source_guild_id\` varchar(255) NULL`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` DROP FOREIGN KEY \`FK_a36ed02953077f408d0f3ebc424\``,
+ `CREATE UNIQUE INDEX \`IDX_74e6689b9568cc965b8bfc9150\` ON \`notes\` (\`owner_id\`, \`target_id\`)`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`icon\` \`icon\` varchar(255) NULL`,
+ `CREATE UNIQUE INDEX \`IDX_3ed7a60fb7dbe04e1ba9332a8b\` ON \`messages\` (\`channel_id\`, \`id\`)`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`description\` \`description\` varchar(255) NULL`,
+ `CREATE UNIQUE INDEX \`REL_0c14beb78d8c5ccba66072adbc\` ON \`users\` (\`settingsIndex\`)`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`summary\` \`summary\` varchar(255) NULL`,
+ `ALTER TABLE \`connected_accounts\` ADD CONSTRAINT \`FK_f47244225a6a1eac04a3463dd90\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`type\` \`type\` text NULL`,
+ `ALTER TABLE \`attachments\` ADD CONSTRAINT \`FK_623e10eec51ada466c5038979e3\` FOREIGN KEY (\`message_id\`) REFERENCES \`messages\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`redirect_uris\` \`redirect_uris\` text NULL`,
+ `ALTER TABLE \`audit_logs\` ADD CONSTRAINT \`FK_3cd01cd3ae7aab010310d96ac8e\` FOREIGN KEY (\`target_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`rpc_application_state\` \`rpc_application_state\` int NULL`,
+ `ALTER TABLE \`audit_logs\` ADD CONSTRAINT \`FK_bd2726fd31b35443f2245b93ba0\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`store_application_state\` \`store_application_state\` int NULL`,
+ `ALTER TABLE \`backup_codes\` ADD CONSTRAINT \`FK_70066ea80d2f4b871beda32633b\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`verification_state\` \`verification_state\` int NULL`,
+ `ALTER TABLE \`bans\` ADD CONSTRAINT \`FK_5999e8e449f80a236ff72023559\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`interactions_endpoint_url\` \`interactions_endpoint_url\` varchar(255) NULL`,
+ `ALTER TABLE \`bans\` ADD CONSTRAINT \`FK_9d3ab7dd180ebdd245cdb66ecad\` FOREIGN KEY (\`guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`integration_public\` \`integration_public\` tinyint NULL`,
+ `ALTER TABLE \`bans\` ADD CONSTRAINT \`FK_07ad88c86d1f290d46748410d58\` FOREIGN KEY (\`executor_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`integration_require_code_grant\` \`integration_require_code_grant\` tinyint NULL`,
+ `ALTER TABLE \`invites\` ADD CONSTRAINT \`FK_3f4939aa1461e8af57fea3fb05d\` FOREIGN KEY (\`guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`discoverability_state\` \`discoverability_state\` int NULL`,
+ `ALTER TABLE \`invites\` ADD CONSTRAINT \`FK_6a15b051fe5050aa00a4b9ff0f6\` FOREIGN KEY (\`channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`discovery_eligibility_flags\` \`discovery_eligibility_flags\` int NULL`,
+ `ALTER TABLE \`invites\` ADD CONSTRAINT \`FK_15c35422032e0b22b4ada95f48f\` FOREIGN KEY (\`inviter_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`tags\` \`tags\` text NULL`,
+ `ALTER TABLE \`invites\` ADD CONSTRAINT \`FK_11a0d394f8fc649c19ce5f16b59\` FOREIGN KEY (\`target_user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`cover_image\` \`cover_image\` varchar(255) NULL`,
+ `ALTER TABLE \`voice_states\` ADD CONSTRAINT \`FK_03779ef216d4b0358470d9cb748\` FOREIGN KEY (\`guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`install_params\` \`install_params\` text NULL`,
+ `ALTER TABLE \`voice_states\` ADD CONSTRAINT \`FK_9f8d389866b40b6657edd026dd4\` FOREIGN KEY (\`channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`terms_of_service_url\` \`terms_of_service_url\` varchar(255) NULL`,
+ `ALTER TABLE \`voice_states\` ADD CONSTRAINT \`FK_5fe1d5f931a67e85039c640001b\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`privacy_policy_url\` \`privacy_policy_url\` varchar(255) NULL`,
+ `ALTER TABLE \`webhooks\` ADD CONSTRAINT \`FK_487a7af59d189f744fe394368fc\` FOREIGN KEY (\`guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`owner_id\` \`owner_id\` varchar(255) NULL`,
+ `ALTER TABLE \`webhooks\` ADD CONSTRAINT \`FK_df528cf77e82f8032230e7e37d8\` FOREIGN KEY (\`channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`bot_user_id\` \`bot_user_id\` varchar(255) NULL`,
+ `ALTER TABLE \`webhooks\` ADD CONSTRAINT \`FK_c3e5305461931763b56aa905f1c\` FOREIGN KEY (\`application_id\`) REFERENCES \`applications\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`applications\` CHANGE \`team_id\` \`team_id\` varchar(255) NULL`,
+ `ALTER TABLE \`webhooks\` ADD CONSTRAINT \`FK_0d523f6f997c86e052c49b1455f\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`webhooks\` CHANGE \`name\` \`name\` varchar(255) NULL`,
+ `ALTER TABLE \`webhooks\` ADD CONSTRAINT \`FK_3a285f4f49c40e0706d3018bc9f\` FOREIGN KEY (\`source_guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`webhooks\` CHANGE \`avatar\` \`avatar\` varchar(255) NULL`,
+ `ALTER TABLE \`channels\` ADD CONSTRAINT \`FK_c253dafe5f3a03ec00cd8fb4581\` FOREIGN KEY (\`guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`webhooks\` CHANGE \`token\` \`token\` varchar(255) NULL`,
+ `ALTER TABLE \`channels\` ADD CONSTRAINT \`FK_3274522d14af40540b1a883fc80\` FOREIGN KEY (\`parent_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`webhooks\` CHANGE \`guild_id\` \`guild_id\` varchar(255) NULL`,
+ `ALTER TABLE \`channels\` ADD CONSTRAINT \`FK_3873ed438575cce703ecff4fc7b\` FOREIGN KEY (\`owner_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`webhooks\` CHANGE \`channel_id\` \`channel_id\` varchar(255) NULL`,
+ `ALTER TABLE \`emojis\` ADD CONSTRAINT \`FK_fa7ddd5f9a214e28ce596548421\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`webhooks\` CHANGE \`application_id\` \`application_id\` varchar(255) NULL`,
+ `ALTER TABLE \`notes\` ADD CONSTRAINT \`FK_f9e103f8ae67cb1787063597925\` FOREIGN KEY (\`owner_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`webhooks\` CHANGE \`user_id\` \`user_id\` varchar(255) NULL`,
+ `ALTER TABLE \`notes\` ADD CONSTRAINT \`FK_23e08e5b4481711d573e1abecdc\` FOREIGN KEY (\`target_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`webhooks\` CHANGE \`source_guild_id\` \`source_guild_id\` varchar(255) NULL`,
+ `ALTER TABLE \`sessions\` ADD CONSTRAINT \`FK_085d540d9f418cfbdc7bd55bb19\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `CREATE UNIQUE INDEX \`IDX_74e6689b9568cc965b8bfc9150\` ON \`notes\` (\`owner_id\`, \`target_id\`)`,
+ `ALTER TABLE \`stickers\` ADD CONSTRAINT \`FK_e7cfa5cefa6661b3fb8fda8ce69\` FOREIGN KEY (\`pack_id\`) REFERENCES \`sticker_packs\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `CREATE UNIQUE INDEX \`IDX_3ed7a60fb7dbe04e1ba9332a8b\` ON \`messages\` (\`channel_id\`, \`id\`)`,
+ `ALTER TABLE \`stickers\` ADD CONSTRAINT \`FK_193d551d852aca5347ef5c9f205\` FOREIGN KEY (\`guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `CREATE UNIQUE INDEX \`REL_0c14beb78d8c5ccba66072adbc\` ON \`users\` (\`settingsIndex\`)`,
+ `ALTER TABLE \`stickers\` ADD CONSTRAINT \`FK_8f4ee73f2bb2325ff980502e158\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`connected_accounts\` ADD CONSTRAINT \`FK_f47244225a6a1eac04a3463dd90\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`sticker_packs\` ADD CONSTRAINT \`FK_448fafba4355ee1c837bbc865f1\` FOREIGN KEY (\`coverStickerId\`) REFERENCES \`stickers\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`attachments\` ADD CONSTRAINT \`FK_623e10eec51ada466c5038979e3\` FOREIGN KEY (\`message_id\`) REFERENCES \`messages\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`templates\` ADD CONSTRAINT \`FK_d7374b7f8f5fbfdececa4fb62e1\` FOREIGN KEY (\`creator_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`audit_logs\` ADD CONSTRAINT \`FK_3cd01cd3ae7aab010310d96ac8e\` FOREIGN KEY (\`target_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
+ `ALTER TABLE \`templates\` ADD CONSTRAINT \`FK_445d00eaaea0e60a017a5ed0c11\` FOREIGN KEY (\`source_guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`audit_logs\` ADD CONSTRAINT \`FK_bd2726fd31b35443f2245b93ba0\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
+ `ALTER TABLE \`guilds\` ADD CONSTRAINT \`FK_f591a66b8019d87b0fe6c12dad6\` FOREIGN KEY (\`afk_channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`backup_codes\` ADD CONSTRAINT \`FK_70066ea80d2f4b871beda32633b\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`guilds\` ADD CONSTRAINT \`FK_e2a2f873a64a5cf62526de42325\` FOREIGN KEY (\`template_id\`) REFERENCES \`templates\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`bans\` ADD CONSTRAINT \`FK_5999e8e449f80a236ff72023559\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`guilds\` ADD CONSTRAINT \`FK_fc1a451727e3643ca572a3bb394\` FOREIGN KEY (\`owner_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`bans\` ADD CONSTRAINT \`FK_9d3ab7dd180ebdd245cdb66ecad\` FOREIGN KEY (\`guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`guilds\` ADD CONSTRAINT \`FK_8d450b016dc8bec35f36729e4b0\` FOREIGN KEY (\`public_updates_channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`bans\` ADD CONSTRAINT \`FK_07ad88c86d1f290d46748410d58\` FOREIGN KEY (\`executor_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
+ `ALTER TABLE \`guilds\` ADD CONSTRAINT \`FK_95828668aa333460582e0ca6396\` FOREIGN KEY (\`rules_channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`invites\` ADD CONSTRAINT \`FK_3f4939aa1461e8af57fea3fb05d\` FOREIGN KEY (\`guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`guilds\` ADD CONSTRAINT \`FK_cfc3d3ad260f8121c95b31a1fce\` FOREIGN KEY (\`system_channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`invites\` ADD CONSTRAINT \`FK_6a15b051fe5050aa00a4b9ff0f6\` FOREIGN KEY (\`channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`guilds\` ADD CONSTRAINT \`FK_9d1d665379eefde7876a17afa99\` FOREIGN KEY (\`widget_channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`invites\` ADD CONSTRAINT \`FK_15c35422032e0b22b4ada95f48f\` FOREIGN KEY (\`inviter_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`roles\` ADD CONSTRAINT \`FK_c32c1ab1c4dc7dcb0278c4b1b8b\` FOREIGN KEY (\`guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`invites\` ADD CONSTRAINT \`FK_11a0d394f8fc649c19ce5f16b59\` FOREIGN KEY (\`target_user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`messages\` ADD CONSTRAINT \`FK_86b9109b155eb70c0a2ca3b4b6d\` FOREIGN KEY (\`channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`voice_states\` ADD CONSTRAINT \`FK_03779ef216d4b0358470d9cb748\` FOREIGN KEY (\`guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`messages\` ADD CONSTRAINT \`FK_b193588441b085352a4c0109423\` FOREIGN KEY (\`guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`voice_states\` ADD CONSTRAINT \`FK_9f8d389866b40b6657edd026dd4\` FOREIGN KEY (\`channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`messages\` ADD CONSTRAINT \`FK_05535bc695e9f7ee104616459d3\` FOREIGN KEY (\`author_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`voice_states\` ADD CONSTRAINT \`FK_5fe1d5f931a67e85039c640001b\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`messages\` ADD CONSTRAINT \`FK_b0525304f2262b7014245351c76\` FOREIGN KEY (\`member_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`webhooks\` ADD CONSTRAINT \`FK_487a7af59d189f744fe394368fc\` FOREIGN KEY (\`guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`messages\` ADD CONSTRAINT \`FK_f83c04bcf1df4e5c0e7a52ed348\` FOREIGN KEY (\`webhook_id\`) REFERENCES \`webhooks\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`webhooks\` ADD CONSTRAINT \`FK_df528cf77e82f8032230e7e37d8\` FOREIGN KEY (\`channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`messages\` ADD CONSTRAINT \`FK_5d3ec1cb962de6488637fd779d6\` FOREIGN KEY (\`application_id\`) REFERENCES \`applications\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`webhooks\` ADD CONSTRAINT \`FK_c3e5305461931763b56aa905f1c\` FOREIGN KEY (\`application_id\`) REFERENCES \`applications\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`messages\` ADD CONSTRAINT \`FK_61a92bb65b302a76d9c1fcd3174\` FOREIGN KEY (\`message_reference_id\`) REFERENCES \`messages\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`webhooks\` ADD CONSTRAINT \`FK_0d523f6f997c86e052c49b1455f\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`users\` ADD CONSTRAINT \`FK_0c14beb78d8c5ccba66072adbc7\` FOREIGN KEY (\`settingsIndex\`) REFERENCES \`user_settings\`(\`index\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`webhooks\` ADD CONSTRAINT \`FK_3a285f4f49c40e0706d3018bc9f\` FOREIGN KEY (\`source_guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`team_members\` ADD CONSTRAINT \`FK_fdad7d5768277e60c40e01cdcea\` FOREIGN KEY (\`team_id\`) REFERENCES \`teams\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`channels\` ADD CONSTRAINT \`FK_c253dafe5f3a03ec00cd8fb4581\` FOREIGN KEY (\`guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`team_members\` ADD CONSTRAINT \`FK_c2bf4967c8c2a6b845dadfbf3d4\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`channels\` ADD CONSTRAINT \`FK_3274522d14af40540b1a883fc80\` FOREIGN KEY (\`parent_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
+ `ALTER TABLE \`teams\` ADD CONSTRAINT \`FK_13f00abf7cb6096c43ecaf8c108\` FOREIGN KEY (\`owner_user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`channels\` ADD CONSTRAINT \`FK_3873ed438575cce703ecff4fc7b\` FOREIGN KEY (\`owner_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
+ `ALTER TABLE \`applications\` ADD CONSTRAINT \`FK_e57508958bf92b9d9d25231b5e8\` FOREIGN KEY (\`owner_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`emojis\` ADD CONSTRAINT \`FK_fa7ddd5f9a214e28ce596548421\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
+ `ALTER TABLE \`applications\` ADD CONSTRAINT \`FK_2ce5a55796fe4c2f77ece57a647\` FOREIGN KEY (\`bot_user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`
);
await queryRunner.query(
- `ALTER TABLE \`notes\` ADD CONSTRAINT \`FK_f9e103f8ae67cb1787063597925\` FOREIGN KEY (\`owner_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`notes\` ADD CONSTRAINT \`FK_23e08e5b4481711d573e1abecdc\` FOREIGN KEY (\`target_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`sessions\` ADD CONSTRAINT \`FK_085d540d9f418cfbdc7bd55bb19\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`stickers\` ADD CONSTRAINT \`FK_e7cfa5cefa6661b3fb8fda8ce69\` FOREIGN KEY (\`pack_id\`) REFERENCES \`sticker_packs\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`stickers\` ADD CONSTRAINT \`FK_193d551d852aca5347ef5c9f205\` FOREIGN KEY (\`guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`stickers\` ADD CONSTRAINT \`FK_8f4ee73f2bb2325ff980502e158\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`sticker_packs\` ADD CONSTRAINT \`FK_448fafba4355ee1c837bbc865f1\` FOREIGN KEY (\`coverStickerId\`) REFERENCES \`stickers\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`templates\` ADD CONSTRAINT \`FK_d7374b7f8f5fbfdececa4fb62e1\` FOREIGN KEY (\`creator_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`templates\` ADD CONSTRAINT \`FK_445d00eaaea0e60a017a5ed0c11\` FOREIGN KEY (\`source_guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` ADD CONSTRAINT \`FK_f591a66b8019d87b0fe6c12dad6\` FOREIGN KEY (\`afk_channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` ADD CONSTRAINT \`FK_e2a2f873a64a5cf62526de42325\` FOREIGN KEY (\`template_id\`) REFERENCES \`templates\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` ADD CONSTRAINT \`FK_fc1a451727e3643ca572a3bb394\` FOREIGN KEY (\`owner_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` ADD CONSTRAINT \`FK_8d450b016dc8bec35f36729e4b0\` FOREIGN KEY (\`public_updates_channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` ADD CONSTRAINT \`FK_95828668aa333460582e0ca6396\` FOREIGN KEY (\`rules_channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` ADD CONSTRAINT \`FK_cfc3d3ad260f8121c95b31a1fce\` FOREIGN KEY (\`system_channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`guilds\` ADD CONSTRAINT \`FK_9d1d665379eefde7876a17afa99\` FOREIGN KEY (\`widget_channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`roles\` ADD CONSTRAINT \`FK_c32c1ab1c4dc7dcb0278c4b1b8b\` FOREIGN KEY (\`guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`messages\` ADD CONSTRAINT \`FK_86b9109b155eb70c0a2ca3b4b6d\` FOREIGN KEY (\`channel_id\`) REFERENCES \`channels\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`messages\` ADD CONSTRAINT \`FK_b193588441b085352a4c0109423\` FOREIGN KEY (\`guild_id\`) REFERENCES \`guilds\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`messages\` ADD CONSTRAINT \`FK_05535bc695e9f7ee104616459d3\` FOREIGN KEY (\`author_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`messages\` ADD CONSTRAINT \`FK_b0525304f2262b7014245351c76\` FOREIGN KEY (\`member_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`messages\` ADD CONSTRAINT \`FK_f83c04bcf1df4e5c0e7a52ed348\` FOREIGN KEY (\`webhook_id\`) REFERENCES \`webhooks\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`messages\` ADD CONSTRAINT \`FK_5d3ec1cb962de6488637fd779d6\` FOREIGN KEY (\`application_id\`) REFERENCES \`applications\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`messages\` ADD CONSTRAINT \`FK_61a92bb65b302a76d9c1fcd3174\` FOREIGN KEY (\`message_reference_id\`) REFERENCES \`messages\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`users\` ADD CONSTRAINT \`FK_0c14beb78d8c5ccba66072adbc7\` FOREIGN KEY (\`settingsIndex\`) REFERENCES \`user_settings\`(\`index\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`team_members\` ADD CONSTRAINT \`FK_fdad7d5768277e60c40e01cdcea\` FOREIGN KEY (\`team_id\`) REFERENCES \`teams\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`team_members\` ADD CONSTRAINT \`FK_c2bf4967c8c2a6b845dadfbf3d4\` FOREIGN KEY (\`user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`teams\` ADD CONSTRAINT \`FK_13f00abf7cb6096c43ecaf8c108\` FOREIGN KEY (\`owner_user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`applications\` ADD CONSTRAINT \`FK_e57508958bf92b9d9d25231b5e8\` FOREIGN KEY (\`owner_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`applications\` ADD CONSTRAINT \`FK_2ce5a55796fe4c2f77ece57a647\` FOREIGN KEY (\`bot_user_id\`) REFERENCES \`users\`(\`id\`) ON DELETE NO ACTION ON UPDATE NO ACTION`,
- );
- await queryRunner.query(
- `ALTER TABLE \`applications\` ADD CONSTRAINT \`FK_a36ed02953077f408d0f3ebc424\` FOREIGN KEY (\`team_id\`) REFERENCES \`teams\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`,
+ `ALTER TABLE \`applications\` ADD CONSTRAINT \`FK_a36ed02953077f408d0f3ebc424\` FOREIGN KEY (\`team_id\`) REFERENCES \`teams\`(\`id\`) ON DELETE CASCADE ON UPDATE NO ACTION`
);
}
diff --git a/scripts/stagingMigration/postgres/1672815835837-staging.js b/scripts/stagingMigration/postgres/1672815835837-staging.js
index 8c10eedfc..bda7b338a 100644
--- a/scripts/stagingMigration/postgres/1672815835837-staging.js
+++ b/scripts/stagingMigration/postgres/1672815835837-staging.js
@@ -22,148 +22,74 @@ module.exports = class staging1672815835837 {
name = "staging1672815835837";
async up(queryRunner) {
+ await queryRunner.query(`ALTER TABLE "users" DROP CONSTRAINT IF EXISTS "FK_76ba283779c8441fd5ff819c8cf"`);
+ await queryRunner.query(`ALTER TABLE "user_settings" RENAME COLUMN "id" TO "index"`);
await queryRunner.query(
- `ALTER TABLE "users" DROP CONSTRAINT IF EXISTS "FK_76ba283779c8441fd5ff819c8cf"`,
+ `ALTER TABLE "user_settings" RENAME CONSTRAINT "PK_00f004f5922a0744d174530d639" TO "PK_e81f8bb92802737337d35c00981"`
);
await queryRunner.query(
- `ALTER TABLE "user_settings" RENAME COLUMN "id" TO "index"`,
+ `CREATE TABLE "embed_cache" ("id" character varying NOT NULL, "url" character varying NOT NULL, "embed" text NOT NULL, CONSTRAINT "PK_0abb7581d4efc5a8b1361389c5e" PRIMARY KEY ("id"))`
);
await queryRunner.query(
- `ALTER TABLE "user_settings" RENAME CONSTRAINT "PK_00f004f5922a0744d174530d639" TO "PK_e81f8bb92802737337d35c00981"`,
+ `CREATE TABLE "security_settings" ("id" character varying NOT NULL, "guild_id" character varying, "channel_id" character varying, "encryption_permission_mask" integer NOT NULL, "allowed_algorithms" text NOT NULL, "current_algorithm" character varying NOT NULL, "used_since_message" character varying, CONSTRAINT "PK_4aec436cf81177ae97a1bcec3c7" PRIMARY KEY ("id"))`
+ );
+ await queryRunner.query(`ALTER TABLE "client_release" DROP COLUMN IF EXISTS "deb_url"`);
+ await queryRunner.query(`ALTER TABLE "client_release" DROP COLUMN IF EXISTS "osx_url"`);
+ await queryRunner.query(`ALTER TABLE "client_release" DROP COLUMN IF EXISTS "win_url"`);
+ await queryRunner.query(`ALTER TABLE "users" DROP CONSTRAINT IF EXISTS "REL_76ba283779c8441fd5ff819c8c"`);
+ await queryRunner.query(`ALTER TABLE "users" DROP COLUMN IF EXISTS "settingsId"`);
+ await queryRunner.query(`ALTER TABLE "client_release" ADD "platform" character varying NOT NULL`);
+ await queryRunner.query(`ALTER TABLE "client_release" ADD "enabled" boolean NOT NULL`);
+ await queryRunner.query(`ALTER TABLE "users" ADD "purchased_flags" integer NOT NULL DEFAULT 0`);
+ await queryRunner.query(`ALTER TABLE "users" ADD "premium_usage_flags" integer NOT NULl DEFAULT 0`);
+ await queryRunner.query(`ALTER TABLE "users" ADD "settingsIndex" integer`);
+ await queryRunner.query(
+ `ALTER TABLE "users" ADD CONSTRAINT "UQ_0c14beb78d8c5ccba66072adbc7" UNIQUE ("settingsIndex")`
+ );
+ await queryRunner.query(`ALTER TABLE "client_release" DROP COLUMN IF EXISTS "pub_date"`);
+ await queryRunner.query(`ALTER TABLE "client_release" ADD "pub_date" TIMESTAMP NOT NULL`);
+ await queryRunner.query(`UPDATE channels SET nsfw = false WHERE nsfw IS NULL`);
+ await queryRunner.query(`ALTER TABLE "channels" ALTER COLUMN "nsfw" SET NOT NULL`);
+ await queryRunner.query(`UPDATE channels SET flags = 0 WHERE flags IS NULL`);
+ await queryRunner.query(`ALTER TABLE "channels" ALTER COLUMN "flags" SET NOT NULL`);
+ await queryRunner.query(
+ `UPDATE channels SET default_thread_rate_limit_per_user = 0 WHERE default_thread_rate_limit_per_user IS NULL`
);
await queryRunner.query(
- `CREATE TABLE "embed_cache" ("id" character varying NOT NULL, "url" character varying NOT NULL, "embed" text NOT NULL, CONSTRAINT "PK_0abb7581d4efc5a8b1361389c5e" PRIMARY KEY ("id"))`,
+ `ALTER TABLE "channels" ALTER COLUMN "default_thread_rate_limit_per_user" SET NOT NULL`
);
await queryRunner.query(
- `CREATE TABLE "security_settings" ("id" character varying NOT NULL, "guild_id" character varying, "channel_id" character varying, "encryption_permission_mask" integer NOT NULL, "allowed_algorithms" text NOT NULL, "current_algorithm" character varying NOT NULL, "used_since_message" character varying, CONSTRAINT "PK_4aec436cf81177ae97a1bcec3c7" PRIMARY KEY ("id"))`,
+ `ALTER TABLE "user_settings" DROP CONSTRAINT IF EXISTS "PK_e81f8bb92802737337d35c00981"`
);
+ await queryRunner.query(`ALTER TABLE "user_settings" DROP COLUMN IF EXISTS "index"`);
+ await queryRunner.query(`ALTER TABLE "user_settings" ADD "index" SERIAL NOT NULL`);
await queryRunner.query(
- `ALTER TABLE "client_release" DROP COLUMN IF EXISTS "deb_url"`,
- );
- await queryRunner.query(
- `ALTER TABLE "client_release" DROP COLUMN IF EXISTS "osx_url"`,
- );
- await queryRunner.query(
- `ALTER TABLE "client_release" DROP COLUMN IF EXISTS "win_url"`,
- );
- await queryRunner.query(
- `ALTER TABLE "users" DROP CONSTRAINT IF EXISTS "REL_76ba283779c8441fd5ff819c8c"`,
- );
- await queryRunner.query(
- `ALTER TABLE "users" DROP COLUMN IF EXISTS "settingsId"`,
- );
- await queryRunner.query(
- `ALTER TABLE "client_release" ADD "platform" character varying NOT NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE "client_release" ADD "enabled" boolean NOT NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE "users" ADD "purchased_flags" integer NOT NULL DEFAULT 0`,
- );
- await queryRunner.query(
- `ALTER TABLE "users" ADD "premium_usage_flags" integer NOT NULl DEFAULT 0`,
- );
- await queryRunner.query(
- `ALTER TABLE "users" ADD "settingsIndex" integer`,
- );
- await queryRunner.query(
- `ALTER TABLE "users" ADD CONSTRAINT "UQ_0c14beb78d8c5ccba66072adbc7" UNIQUE ("settingsIndex")`,
- );
- await queryRunner.query(
- `ALTER TABLE "client_release" DROP COLUMN IF EXISTS "pub_date"`,
- );
- await queryRunner.query(
- `ALTER TABLE "client_release" ADD "pub_date" TIMESTAMP NOT NULL`,
- );
- await queryRunner.query(
- `UPDATE channels SET nsfw = false WHERE nsfw IS NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE "channels" ALTER COLUMN "nsfw" SET NOT NULL`,
- );
- await queryRunner.query(
- `UPDATE channels SET flags = 0 WHERE flags IS NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE "channels" ALTER COLUMN "flags" SET NOT NULL`,
- );
- await queryRunner.query(
- `UPDATE channels SET default_thread_rate_limit_per_user = 0 WHERE default_thread_rate_limit_per_user IS NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE "channels" ALTER COLUMN "default_thread_rate_limit_per_user" SET NOT NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE "user_settings" DROP CONSTRAINT IF EXISTS "PK_e81f8bb92802737337d35c00981"`,
- );
- await queryRunner.query(
- `ALTER TABLE "user_settings" DROP COLUMN IF EXISTS "index"`,
- );
- await queryRunner.query(
- `ALTER TABLE "user_settings" ADD "index" SERIAL NOT NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE "user_settings" ADD CONSTRAINT "PK_e81f8bb92802737337d35c00981" PRIMARY KEY ("index")`,
- );
- await queryRunner.query(
- `ALTER TABLE "guilds" DROP COLUMN IF EXISTS "primary_category_id"`,
- );
- await queryRunner.query(
- `ALTER TABLE "guilds" ADD "primary_category_id" character varying`,
- );
- await queryRunner.query(
- `UPDATE guilds SET large = false WHERE large IS NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE "guilds" ALTER COLUMN "large" SET NOT NULL`,
- );
- await queryRunner.query(
- `UPDATE guilds SET premium_tier = 0 WHERE premium_tier IS NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE "guilds" ALTER COLUMN "premium_tier" SET NOT NULL`,
- );
- await queryRunner.query(
- `UPDATE guilds SET unavailable = false WHERE unavailable IS NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE "guilds" ALTER COLUMN "unavailable" SET NOT NULL`,
- );
- await queryRunner.query(
- `UPDATE guilds SET widget_enabled = false WHERE widget_enabled IS NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE "guilds" ALTER COLUMN "widget_enabled" SET NOT NULL`,
- );
- await queryRunner.query(
- `UPDATE guilds SET nsfw = false WHERE nsfw IS NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE "guilds" ALTER COLUMN "nsfw" SET NOT NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE "members" DROP COLUMN IF EXISTS "premium_since"`,
- );
- await queryRunner.query(
- `ALTER TABLE "members" ADD "premium_since" bigint`,
+ `ALTER TABLE "user_settings" ADD CONSTRAINT "PK_e81f8bb92802737337d35c00981" PRIMARY KEY ("index")`
);
+ await queryRunner.query(`ALTER TABLE "guilds" DROP COLUMN IF EXISTS "primary_category_id"`);
+ await queryRunner.query(`ALTER TABLE "guilds" ADD "primary_category_id" character varying`);
+ await queryRunner.query(`UPDATE guilds SET large = false WHERE large IS NULL`);
+ await queryRunner.query(`ALTER TABLE "guilds" ALTER COLUMN "large" SET NOT NULL`);
+ await queryRunner.query(`UPDATE guilds SET premium_tier = 0 WHERE premium_tier IS NULL`);
+ await queryRunner.query(`ALTER TABLE "guilds" ALTER COLUMN "premium_tier" SET NOT NULL`);
+ await queryRunner.query(`UPDATE guilds SET unavailable = false WHERE unavailable IS NULL`);
+ await queryRunner.query(`ALTER TABLE "guilds" ALTER COLUMN "unavailable" SET NOT NULL`);
+ await queryRunner.query(`UPDATE guilds SET widget_enabled = false WHERE widget_enabled IS NULL`);
+ await queryRunner.query(`ALTER TABLE "guilds" ALTER COLUMN "widget_enabled" SET NOT NULL`);
+ await queryRunner.query(`UPDATE guilds SET nsfw = false WHERE nsfw IS NULL`);
+ await queryRunner.query(`ALTER TABLE "guilds" ALTER COLUMN "nsfw" SET NOT NULL`);
+ await queryRunner.query(`ALTER TABLE "members" DROP COLUMN IF EXISTS "premium_since"`);
+ await queryRunner.query(`ALTER TABLE "members" ADD "premium_since" bigint`);
await queryRunner.query(`ALTER TABLE members ADD theme_colors text`);
await queryRunner.query(`ALTER TABLE members ADD pronouns varchar`);
await queryRunner.query(`UPDATE users SET bio = '' WHERE bio IS NULL`);
- await queryRunner.query(
- `ALTER TABLE users ALTER COLUMN bio SET NOT NULL`,
- );
+ await queryRunner.query(`ALTER TABLE users ALTER COLUMN bio SET NOT NULL`);
await queryRunner.query(`ALTER TABLE users ADD theme_colors text`);
await queryRunner.query(`ALTER TABLE users ADD pronouns varchar`);
+ await queryRunner.query(`UPDATE users SET mfa_enabled = false WHERE mfa_enabled IS NULL`);
+ await queryRunner.query(`ALTER TABLE users ALTER COLUMN mfa_enabled SET NOT NULL`);
await queryRunner.query(
- `UPDATE users SET mfa_enabled = false WHERE mfa_enabled IS NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE users ALTER COLUMN mfa_enabled SET NOT NULL`,
- );
- await queryRunner.query(
- `ALTER TABLE "users" ADD CONSTRAINT "FK_0c14beb78d8c5ccba66072adbc7" FOREIGN KEY ("settingsIndex") REFERENCES "user_settings"("index") ON DELETE NO ACTION ON UPDATE NO ACTION`,
+ `ALTER TABLE "users" ADD CONSTRAINT "FK_0c14beb78d8c5ccba66072adbc7" FOREIGN KEY ("settingsIndex") REFERENCES "user_settings"("index") ON DELETE NO ACTION ON UPDATE NO ACTION`
);
}
diff --git a/scripts/stress/identify.js b/scripts/stress/identify.js
index 2a271bbc9..da53ed555 100644
--- a/scripts/stress/identify.js
+++ b/scripts/stress/identify.js
@@ -25,7 +25,7 @@ const doTimedIdentify = () =>
token: TOKEN,
properties: {},
},
- }),
+ })
);
break;
case OPCODES.Dispatch:
diff --git a/scripts/test.js b/scripts/test.js
index 69e9fdd64..77f8a938b 100644
--- a/scripts/test.js
+++ b/scripts/test.js
@@ -24,9 +24,7 @@
const { spawn } = require("child_process");
const path = require("path");
-const server = spawn("node", [
- path.join(__dirname, "..", "dist", "bundle", "start.js"),
-]);
+const server = spawn("node", [path.join(__dirname, "..", "dist", "bundle", "start.js")]);
server.stdout.on("data", (data) => {
process.stdout.write(data);
diff --git a/scripts/util/getRouteDescriptions.js b/scripts/util/getRouteDescriptions.js
index a79dac962..12fc61e5f 100644
--- a/scripts/util/getRouteDescriptions.js
+++ b/scripts/util/getRouteDescriptions.js
@@ -15,10 +15,7 @@ let currentPath = "";
const proxy = (file, method, prefix, path, ...args) => {
const opts = args.find((x) => x?.prototype?.OPTS_MARKER == true);
- if (!opts)
- return console.error(
- `${file} has route without route() description middleware`,
- );
+ if (!opts) return console.error(`${file} has route without route() description middleware`);
console.log(prefix + path + " - " + method);
opts.file = file.replace("/dist/", "/src/").replace(".js", ".ts");
@@ -26,12 +23,7 @@ const proxy = (file, method, prefix, path, ...args) => {
};
express.Router = () => {
- return Object.fromEntries(
- methods.map((method) => [
- method,
- proxy.bind(null, currentFile, method, currentPath),
- ]),
- );
+ return Object.fromEntries(methods.map((method) => [method, proxy.bind(null, currentFile, method, currentPath)]));
};
RouteUtility.route = (opts) => {
@@ -50,8 +42,7 @@ module.exports = function getRouteDescriptions() {
currentPath = file.replace(root.slice(0, -1), "");
currentPath = currentPath.split(".").slice(0, -1).join("."); // trancate .js/.ts file extension of path
currentPath = currentPath.replaceAll("#", ":").replaceAll("\\", "/"); // replace # with : for path parameters and windows paths with slashes
- if (currentPath.endsWith("/index"))
- currentPath = currentPath.slice(0, "/index".length * -1); // delete index from path
+ if (currentPath.endsWith("/index")) currentPath = currentPath.slice(0, "/index".length * -1); // delete index from path
try {
require(file);
diff --git a/src/api/Server.ts b/src/api/Server.ts
index 472ab1d6f..b99c9721d 100644
--- a/src/api/Server.ts
+++ b/src/api/Server.ts
@@ -41,13 +41,7 @@ import { initRateLimits } from "./middlewares/RateLimit";
import { initTranslation } from "./middlewares/Translation";
import { initInstance } from "./util/handlers/Instance";
-const PUBLIC_ASSETS_FOLDER = path.join(
- __dirname,
- "..",
- "..",
- "assets",
- "public",
-);
+const PUBLIC_ASSETS_FOLDER = path.join(__dirname, "..", "..", "assets", "public");
export type SpacebarServerOptions = ServerOptions;
@@ -84,16 +78,11 @@ export class SpacebarServer extends Server {
this.app.use(
morgan("combined", {
skip: (req, res) => {
- let skip = !(
- process.env["LOG_REQUESTS"]?.includes(
- res.statusCode.toString(),
- ) ?? false
- );
- if (process.env["LOG_REQUESTS"]?.charAt(0) == "-")
- skip = !skip;
+ let skip = !(process.env["LOG_REQUESTS"]?.includes(res.statusCode.toString()) ?? false);
+ if (process.env["LOG_REQUESTS"]?.charAt(0) == "-") skip = !skip;
return skip;
},
- }),
+ })
);
}
@@ -112,10 +101,7 @@ export class SpacebarServer extends Server {
await initRateLimits(api);
await initTranslation(api);
- this.routes = await registerRoutes(
- this,
- path.join(__dirname, "routes", "/"),
- );
+ this.routes = await registerRoutes(this, path.join(__dirname, "routes", "/"));
// 404 is not an error in express, so this should not be an error middleware
// this is a fine place to put the 404 handler because its after we register the routes
@@ -137,9 +123,7 @@ export class SpacebarServer extends Server {
app.use("/api/v9", api);
app.use("/api", api); // allow unversioned requests
- app.get("/", (req, res) =>
- res.sendFile(path.join(PUBLIC_ASSETS_FOLDER, "index.html")),
- );
+ app.get("/", (req, res) => res.sendFile(path.join(PUBLIC_ASSETS_FOLDER, "index.html")));
this.app.use(ErrorHandler);
@@ -150,8 +134,8 @@ export class SpacebarServer extends Server {
if (logRequests)
console.log(
red(
- `Warning: Request logging is enabled! This will spam your console!\nTo disable this, unset the 'LOG_REQUESTS' environment variable!`,
- ),
+ `Warning: Request logging is enabled! This will spam your console!\nTo disable this, unset the 'LOG_REQUESTS' environment variable!`
+ )
);
return super.start();
diff --git a/src/api/middlewares/Authentication.ts b/src/api/middlewares/Authentication.ts
index 9e41b453f..8451d69e4 100644
--- a/src/api/middlewares/Authentication.ts
+++ b/src/api/middlewares/Authentication.ts
@@ -71,11 +71,7 @@ declare global {
}
}
-export async function Authentication(
- req: Request,
- res: Response,
- next: NextFunction,
-) {
+export async function Authentication(req: Request, res: Response, next: NextFunction) {
if (req.method === "OPTIONS") return res.sendStatus(204);
const url = req.url.replace(API_PREFIX, "");
if (url.startsWith("/invites") && req.method === "GET") return next();
@@ -86,8 +82,7 @@ export async function Authentication(
})
)
return next();
- if (!req.headers.authorization)
- return next(new HTTPError("Missing Authorization Header", 401));
+ if (!req.headers.authorization) return next(new HTTPError("Missing Authorization Header", 401));
Sentry.setUser({ id: req.user_id });
diff --git a/src/api/middlewares/BodyParser.ts b/src/api/middlewares/BodyParser.ts
index ac8e04325..31d79a517 100644
--- a/src/api/middlewares/BodyParser.ts
+++ b/src/api/middlewares/BodyParser.ts
@@ -24,8 +24,7 @@ export function BodyParser(opts?: OptionsJson) {
const jsonParser = bodyParser.json(opts);
return (req: Request, res: Response, next: NextFunction) => {
- if (!req.headers["content-type"])
- req.headers["content-type"] = "application/json";
+ if (!req.headers["content-type"]) req.headers["content-type"] = "application/json";
jsonParser(req, res, (err) => {
if (err) {
diff --git a/src/api/middlewares/CORS.ts b/src/api/middlewares/CORS.ts
index 3e7452fc0..8c9b1627a 100644
--- a/src/api/middlewares/CORS.ts
+++ b/src/api/middlewares/CORS.ts
@@ -25,16 +25,10 @@ export function CORS(req: Request, res: Response, next: NextFunction) {
// TODO: use better CSP
res.set(
"Content-security-policy",
- "default-src * data: blob: filesystem: about: ws: wss: 'unsafe-inline' 'unsafe-eval'; script-src * data: blob: 'unsafe-inline' 'unsafe-eval'; connect-src * data: blob: 'unsafe-inline'; img-src * data: blob: 'unsafe-inline'; frame-src * data: blob: ; style-src * data: blob: 'unsafe-inline'; font-src * data: blob: 'unsafe-inline';",
- );
- res.set(
- "Access-Control-Allow-Headers",
- req.header("Access-Control-Request-Headers") || "*",
- );
- res.set(
- "Access-Control-Allow-Methods",
- req.header("Access-Control-Request-Methods") || "*",
+ "default-src * data: blob: filesystem: about: ws: wss: 'unsafe-inline' 'unsafe-eval'; script-src * data: blob: 'unsafe-inline' 'unsafe-eval'; connect-src * data: blob: 'unsafe-inline'; img-src * data: blob: 'unsafe-inline'; frame-src * data: blob: ; style-src * data: blob: 'unsafe-inline'; font-src * data: blob: 'unsafe-inline';"
);
+ res.set("Access-Control-Allow-Headers", req.header("Access-Control-Request-Headers") || "*");
+ res.set("Access-Control-Allow-Methods", req.header("Access-Control-Request-Methods") || "*");
next();
}
diff --git a/src/api/middlewares/ErrorHandler.ts b/src/api/middlewares/ErrorHandler.ts
index c417e64ff..4d61b745c 100644
--- a/src/api/middlewares/ErrorHandler.ts
+++ b/src/api/middlewares/ErrorHandler.ts
@@ -21,12 +21,7 @@ import { HTTPError } from "lambert-server";
import { ApiError, FieldError } from "@spacebar/util";
const EntityNotFoundErrorRegex = /"(\w+)"/;
-export function ErrorHandler(
- error: Error & { type?: string },
- req: Request,
- res: Response,
- next: NextFunction,
-) {
+export function ErrorHandler(error: Error & { type?: string }, req: Request, res: Response, next: NextFunction) {
if (!error) return next();
try {
@@ -35,16 +30,13 @@ export function ErrorHandler(
let message = error?.toString();
let errors = undefined;
- if (error instanceof HTTPError && error.code)
- code = httpcode = error.code;
+ if (error instanceof HTTPError && error.code) code = httpcode = error.code;
else if (error instanceof ApiError) {
code = error.code;
message = error.message;
httpcode = error.httpStatus;
} else if (error.name === "EntityNotFoundError") {
- message = `${
- error.message.match(EntityNotFoundErrorRegex)?.[1] || "Item"
- } could not be found`;
+ message = `${error.message.match(EntityNotFoundErrorRegex)?.[1] || "Item"} could not be found`;
code = httpcode = 404;
} else if (error instanceof FieldError) {
code = Number(error.code);
@@ -56,12 +48,7 @@ export function ErrorHandler(
code = 50109;
message = "The request body contains invalid JSON.";
} else {
- console.error(
- `[Error] ${code} ${req.url}\n`,
- errors || error,
- "\nbody:",
- req.body,
- );
+ console.error(`[Error] ${code} ${req.url}\n`, errors || error, "\nbody:", req.body);
if (req.server?.options?.production) {
// don't expose internal errors to the user, instead human errors should be thrown as HTTPError
@@ -75,8 +62,6 @@ export function ErrorHandler(
res.status(httpcode).json({ code: code, message, errors });
} catch (error) {
console.error(`[Internal Server Error] 500`, error);
- return res
- .status(500)
- .json({ code: 500, message: "Internal Server Error" });
+ return res.status(500).json({ code: 500, message: "Internal Server Error" });
}
}
diff --git a/src/api/middlewares/RateLimit.ts b/src/api/middlewares/RateLimit.ts
index f5bfbb4f0..14811a425 100644
--- a/src/api/middlewares/RateLimit.ts
+++ b/src/api/middlewares/RateLimit.ts
@@ -65,21 +65,14 @@ export default function rateLimit(opts: {
if (rights.has("BYPASS_RATE_LIMITS")) return next();
}
- const bucket_id =
- opts.bucket ||
- req.originalUrl.replace(API_PREFIX_TRAILING_SLASH, "");
+ const bucket_id = opts.bucket || req.originalUrl.replace(API_PREFIX_TRAILING_SLASH, "");
let executor_id = getIpAdress(req);
if (!opts.onlyIp && req.user_id) executor_id = req.user_id;
let max_hits = opts.count;
if (opts.bot && req.user_bot) max_hits = opts.bot;
- if (opts.GET && ["GET", "OPTIONS", "HEAD"].includes(req.method))
- max_hits = opts.GET;
- else if (
- opts.MODIFY &&
- ["POST", "DELETE", "PATCH", "PUT"].includes(req.method)
- )
- max_hits = opts.MODIFY;
+ if (opts.GET && ["GET", "OPTIONS", "HEAD"].includes(req.method)) max_hits = opts.GET;
+ else if (opts.MODIFY && ["POST", "DELETE", "PATCH", "PUT"].includes(req.method)) max_hits = opts.MODIFY;
const offender = Cache.get(executor_id + bucket_id);
@@ -104,18 +97,13 @@ export default function rateLimit(opts: {
}
res.set("X-RateLimit-Reset", `${reset}`);
- res.set(
- "X-RateLimit-Reset-After",
- `${Math.max(0, Math.ceil(resetAfterSec))}`,
- );
+ res.set("X-RateLimit-Reset-After", `${Math.max(0, Math.ceil(resetAfterSec))}`);
if (offender.blocked) {
const global = bucket_id === "global";
// each block violation pushes the expiry one full window further
reset += opts.window * 1000;
- offender.expires_at = new Date(
- offender.expires_at.getTime() + opts.window * 1000,
- );
+ offender.expires_at = new Date(offender.expires_at.getTime() + opts.window * 1000);
resetAfterMs = reset - Date.now();
resetAfterSec = Math.ceil(resetAfterMs / 1000);
@@ -129,10 +117,7 @@ export default function rateLimit(opts: {
res
.status(429)
.set("X-RateLimit-Remaining", "0")
- .set(
- "Retry-After",
- `${Math.max(0, Math.ceil(resetAfterSec))}`,
- )
+ .set("Retry-After", `${Math.max(0, Math.ceil(resetAfterSec))}`)
// TODO: error rate limit message translation
.send({
message: "You are being rate limited.",
@@ -156,11 +141,7 @@ export default function rateLimit(opts: {
// check if error and increment error rate limit
if (res.statusCode >= 400 && opts.error) {
return hitRoute(hitRouteOpts);
- } else if (
- res.statusCode >= 200 &&
- res.statusCode < 300 &&
- opts.success
- ) {
+ } else if (res.statusCode >= 200 && res.statusCode < 300 && opts.success) {
return hitRoute(hitRouteOpts);
}
});
@@ -198,7 +179,7 @@ export async function initRateLimits(app: Router) {
bucket: "global",
onlyIp: true,
...ip,
- }),
+ })
);
app.use(rateLimit({ bucket: "global", ...global }));
app.use(
@@ -207,24 +188,16 @@ export async function initRateLimits(app: Router) {
error: true,
onlyIp: true,
...error,
- }),
+ })
);
app.use("/guilds/:id", rateLimit(routes.guild));
app.use("/webhooks/:id", rateLimit(routes.webhook));
app.use("/channels/:id", rateLimit(routes.channel));
app.use("/auth/login", rateLimit(routes.auth.login));
- app.use(
- "/auth/register",
- rateLimit({ onlyIp: true, success: true, ...routes.auth.register }),
- );
+ app.use("/auth/register", rateLimit({ onlyIp: true, success: true, ...routes.auth.register }));
}
-async function hitRoute(opts: {
- executor_id: string;
- bucket_id: string;
- max_hits: number;
- window: number;
-}) {
+async function hitRoute(opts: { executor_id: string; bucket_id: string; max_hits: number; window: number }) {
const id = opts.executor_id + opts.bucket_id;
let limit = Cache.get(id);
if (!limit) {
diff --git a/src/api/middlewares/Translation.ts b/src/api/middlewares/Translation.ts
index f3a4c8dfe..e089407e2 100644
--- a/src/api/middlewares/Translation.ts
+++ b/src/api/middlewares/Translation.ts
@@ -27,12 +27,8 @@ const ASSET_FOLDER_PATH = path.join(__dirname, "..", "..", "..", "assets");
export async function initTranslation(router: Router) {
const languages = fs.readdirSync(path.join(ASSET_FOLDER_PATH, "locales"));
- const namespaces = fs.readdirSync(
- path.join(ASSET_FOLDER_PATH, "locales", "en"),
- );
- const ns = namespaces
- .filter((x) => x.endsWith(".json"))
- .map((x) => x.slice(0, x.length - 5));
+ const namespaces = fs.readdirSync(path.join(ASSET_FOLDER_PATH, "locales", "en"));
+ const ns = namespaces.filter((x) => x.endsWith(".json")).map((x) => x.slice(0, x.length - 5));
await i18next
.use(i18nextBackend)
@@ -43,9 +39,7 @@ export async function initTranslation(router: Router) {
fallbackLng: "en",
ns,
backend: {
- loadPath:
- path.join(ASSET_FOLDER_PATH, "locales") +
- "/{{lng}}/{{ns}}.json",
+ loadPath: path.join(ASSET_FOLDER_PATH, "locales") + "/{{lng}}/{{ns}}.json",
},
load: "all",
});
diff --git a/src/api/routes/applications/#id/bot/index.ts b/src/api/routes/applications/#id/bot/index.ts
index 3c431e3d9..5d58e6ed5 100644
--- a/src/api/routes/applications/#id/bot/index.ts
+++ b/src/api/routes/applications/#id/bot/index.ts
@@ -50,15 +50,14 @@ router.post(
relations: ["owner"],
});
- if (app.owner.id != req.user_id)
- throw DiscordApiErrors.ACTION_NOT_AUTHORIZED_ON_APPLICATION;
+ if (app.owner.id != req.user_id) throw DiscordApiErrors.ACTION_NOT_AUTHORIZED_ON_APPLICATION;
const user = await createAppBotUser(app, req);
res.send({
token: await generateToken(user.id),
}).status(204);
- },
+ }
);
router.post(
@@ -77,13 +76,9 @@ router.post(
const bot = await User.findOneOrFail({ where: { id: req.params.id } });
const owner = await User.findOneOrFail({ where: { id: req.user_id } });
- if (owner.id != req.user_id)
- throw DiscordApiErrors.ACTION_NOT_AUTHORIZED_ON_APPLICATION;
+ if (owner.id != req.user_id) throw DiscordApiErrors.ACTION_NOT_AUTHORIZED_ON_APPLICATION;
- if (
- owner.totp_secret &&
- (!req.body.code || verifyToken(owner.totp_secret, req.body.code))
- )
+ if (owner.totp_secret && (!req.body.code || verifyToken(owner.totp_secret, req.body.code)))
throw new HTTPError(req.t("auth:login.INVALID_TOTP_CODE"), 60008);
bot.data = { hash: undefined, valid_tokens_since: new Date() };
@@ -93,7 +88,7 @@ router.post(
const token = await generateToken(bot.id);
res.json({ token }).status(200);
- },
+ }
);
router.patch(
@@ -120,14 +115,9 @@ router.patch(
if (!app.bot) throw DiscordApiErrors.BOT_ONLY_ENDPOINT;
- if (app.owner.id != req.user_id)
- throw DiscordApiErrors.ACTION_NOT_AUTHORIZED_ON_APPLICATION;
+ if (app.owner.id != req.user_id) throw DiscordApiErrors.ACTION_NOT_AUTHORIZED_ON_APPLICATION;
- if (body.avatar)
- body.avatar = await handleFile(
- `/avatars/${app.id}`,
- body.avatar as string,
- );
+ if (body.avatar) body.avatar = await handleFile(`/avatars/${app.id}`, body.avatar as string);
app.bot.assign(body);
@@ -135,7 +125,7 @@ router.patch(
await app.save();
res.json(app).status(200);
- },
+ }
);
export default router;
diff --git a/src/api/routes/applications/#id/entitlements.ts b/src/api/routes/applications/#id/entitlements.ts
index 6388e6b3e..4ad0b60f1 100644
--- a/src/api/routes/applications/#id/entitlements.ts
+++ b/src/api/routes/applications/#id/entitlements.ts
@@ -34,7 +34,7 @@ router.get(
// TODO:
//const { exclude_consumed } = req.query;
res.status(200).send([]);
- },
+ }
);
export default router;
diff --git a/src/api/routes/applications/#id/index.ts b/src/api/routes/applications/#id/index.ts
index c372869ae..9b8c2d464 100644
--- a/src/api/routes/applications/#id/index.ts
+++ b/src/api/routes/applications/#id/index.ts
@@ -17,11 +17,7 @@
*/
import { route } from "@spacebar/api";
-import {
- Application,
- ApplicationModifySchema,
- DiscordApiErrors,
-} from "@spacebar/util";
+import { Application, ApplicationModifySchema, DiscordApiErrors } from "@spacebar/util";
import { Request, Response, Router } from "express";
import { HTTPError } from "lambert-server";
import { verifyToken } from "node-2fa";
@@ -45,11 +41,10 @@ router.get(
where: { id: req.params.id },
relations: ["owner", "bot"],
});
- if (app.owner.id != req.user_id)
- throw DiscordApiErrors.ACTION_NOT_AUTHORIZED_ON_APPLICATION;
+ if (app.owner.id != req.user_id) throw DiscordApiErrors.ACTION_NOT_AUTHORIZED_ON_APPLICATION;
return res.json(app);
- },
+ }
);
router.patch(
@@ -73,14 +68,9 @@ router.patch(
relations: ["owner", "bot"],
});
- if (app.owner.id != req.user_id)
- throw DiscordApiErrors.ACTION_NOT_AUTHORIZED_ON_APPLICATION;
+ if (app.owner.id != req.user_id) throw DiscordApiErrors.ACTION_NOT_AUTHORIZED_ON_APPLICATION;
- if (
- app.owner.totp_secret &&
- (!req.body.code ||
- verifyToken(app.owner.totp_secret, req.body.code))
- )
+ if (app.owner.totp_secret && (!req.body.code || verifyToken(app.owner.totp_secret, req.body.code)))
throw new HTTPError(req.t("auth:login.INVALID_TOTP_CODE"), 60008);
if (app.bot) {
@@ -93,7 +83,7 @@ router.patch(
await app.save();
return res.json(app);
- },
+ }
);
router.post(
@@ -111,20 +101,15 @@ router.post(
where: { id: req.params.id },
relations: ["bot", "owner"],
});
- if (app.owner.id != req.user_id)
- throw DiscordApiErrors.ACTION_NOT_AUTHORIZED_ON_APPLICATION;
+ if (app.owner.id != req.user_id) throw DiscordApiErrors.ACTION_NOT_AUTHORIZED_ON_APPLICATION;
- if (
- app.owner.totp_secret &&
- (!req.body.code ||
- verifyToken(app.owner.totp_secret, req.body.code))
- )
+ if (app.owner.totp_secret && (!req.body.code || verifyToken(app.owner.totp_secret, req.body.code)))
throw new HTTPError(req.t("auth:login.INVALID_TOTP_CODE"), 60008);
await Application.delete({ id: app.id });
res.send().status(200);
- },
+ }
);
export default router;
diff --git a/src/api/routes/applications/#id/skus.ts b/src/api/routes/applications/#id/skus.ts
index dc4fad23b..b98bb6c41 100644
--- a/src/api/routes/applications/#id/skus.ts
+++ b/src/api/routes/applications/#id/skus.ts
@@ -32,7 +32,7 @@ router.get(
}),
async (req: Request, res: Response) => {
res.json([]).status(200);
- },
+ }
);
export default router;
diff --git a/src/api/routes/applications/detectable.ts b/src/api/routes/applications/detectable.ts
index 5cf9d1714..e80d03135 100644
--- a/src/api/routes/applications/detectable.ts
+++ b/src/api/routes/applications/detectable.ts
@@ -33,7 +33,7 @@ router.get(
async (req: Request, res: Response) => {
//TODO
res.send([]).status(200);
- },
+ }
);
export default router;
diff --git a/src/api/routes/applications/index.ts b/src/api/routes/applications/index.ts
index 5bba3338c..6eeadbc3d 100644
--- a/src/api/routes/applications/index.ts
+++ b/src/api/routes/applications/index.ts
@@ -17,14 +17,7 @@
*/
import { route } from "@spacebar/api";
-import {
- Application,
- ApplicationCreateSchema,
- Config,
- User,
- createAppBotUser,
- trimSpecial,
-} from "@spacebar/util";
+import { Application, ApplicationCreateSchema, Config, User, createAppBotUser, trimSpecial } from "@spacebar/util";
import { Request, Response, Router } from "express";
const router: Router = Router();
@@ -44,7 +37,7 @@ router.get(
relations: ["owner", "bot"],
});
res.json(results).status(200);
- },
+ }
);
router.post(
@@ -77,7 +70,7 @@ router.post(
} else await app.save();
res.json(app);
- },
+ }
);
export default router;
diff --git a/src/api/routes/auth/forgot.ts b/src/api/routes/auth/forgot.ts
index 6fa86021c..a17a29366 100644
--- a/src/api/routes/auth/forgot.ts
+++ b/src/api/routes/auth/forgot.ts
@@ -17,13 +17,7 @@
*/
import { getIpAdress, route, verifyCaptcha } from "@spacebar/api";
-import {
- Config,
- Email,
- FieldErrors,
- ForgotPasswordSchema,
- User,
-} from "@spacebar/util";
+import { Config, Email, FieldErrors, ForgotPasswordSchema, User } from "@spacebar/util";
import { Request, Response, Router } from "express";
import { HTTPError } from "lambert-server";
const router = Router();
@@ -47,10 +41,7 @@ router.post(
const config = Config.get();
- if (
- config.passwordReset.requireCaptcha &&
- config.security.captcha.enabled
- ) {
+ if (config.passwordReset.requireCaptcha && config.security.captcha.enabled) {
const { sitekey, service } = config.security.captcha;
if (!captcha_key) {
return res.status(400).json({
@@ -87,8 +78,7 @@ router.post(
if (!user.email)
throw FieldErrors({
login: {
- message:
- "This account does not have an email address associated with it.",
+ message: "This account does not have an email address associated with it.",
code: "NO_EMAIL",
},
});
@@ -110,12 +100,10 @@ router.post(
return res.sendStatus(204);
})
.catch((e) => {
- console.error(
- `Failed to send password reset email to ${user.username}#${user.discriminator}: ${e}`,
- );
+ console.error(`Failed to send password reset email to ${user.username}#${user.discriminator}: ${e}`);
throw new HTTPError("Failed to send password reset email", 500);
});
- },
+ }
);
export default router;
diff --git a/src/api/routes/auth/generate-registration-tokens.ts b/src/api/routes/auth/generate-registration-tokens.ts
index 80fdaed1d..e13e26f11 100644
--- a/src/api/routes/auth/generate-registration-tokens.ts
+++ b/src/api/routes/auth/generate-registration-tokens.ts
@@ -29,13 +29,11 @@ router.get(
query: {
count: {
type: "number",
- description:
- "The number of registration tokens to generate. Defaults to 1.",
+ description: "The number of registration tokens to generate. Defaults to 1.",
},
length: {
type: "number",
- description:
- "The length of each registration token. Defaults to 255.",
+ description: "The length of each registration token. Defaults to 255.",
},
},
right: "OPERATOR",
@@ -43,18 +41,14 @@ router.get(
}),
async (req: Request, res: Response) => {
const count = req.query.count ? parseInt(req.query.count as string) : 1;
- const length = req.query.length
- ? parseInt(req.query.length as string)
- : 255;
+ const length = req.query.length ? parseInt(req.query.length as string) : 255;
const tokens: ValidRegistrationToken[] = [];
for (let i = 0; i < count; i++) {
const token = ValidRegistrationToken.create({
token: random(length),
- expires_at:
- Date.now() +
- Config.get().security.defaultRegistrationTokenExpiration,
+ expires_at: Date.now() + Config.get().security.defaultRegistrationTokenExpiration,
});
tokens.push(token);
}
@@ -67,16 +61,11 @@ router.get(
});
const ret = req.query.include_url
- ? tokens.map(
- (x) =>
- `${Config.get().general.frontPage}/register?token=${
- x.token
- }`,
- )
+ ? tokens.map((x) => `${Config.get().general.frontPage}/register?token=${x.token}`)
: tokens.map((x) => x.token);
if (req.query.plain) return res.send(ret.join("\n"));
return res.json({ tokens: ret });
- },
+ }
);
diff --git a/src/api/routes/auth/location-metadata.ts b/src/api/routes/auth/location-metadata.ts
index 28293e59c..f1625702f 100644
--- a/src/api/routes/auth/location-metadata.ts
+++ b/src/api/routes/auth/location-metadata.ts
@@ -38,7 +38,7 @@ router.get(
country_code: country_code,
promotional_email_opt_in: { required: true, pre_checked: false },
});
- },
+ }
);
export default router;
diff --git a/src/api/routes/auth/login.ts b/src/api/routes/auth/login.ts
index a2100333e..5563597f3 100644
--- a/src/api/routes/auth/login.ts
+++ b/src/api/routes/auth/login.ts
@@ -47,8 +47,7 @@ router.post(
},
}),
async (req: Request, res: Response) => {
- const { login, password, captcha_key, undelete } =
- req.body as LoginSchema;
+ const { login, password, captcha_key, undelete } = req.body as LoginSchema;
const config = Config.get();
@@ -101,10 +100,7 @@ router.post(
});
// the salt is saved in the password refer to bcrypt docs
- const same_password = await bcrypt.compare(
- password,
- user.data.hash || "",
- );
+ const same_password = await bcrypt.compare(password, user.data.hash || "");
if (!same_password) {
throw FieldErrors({
login: {
@@ -123,8 +119,7 @@ router.post(
throw FieldErrors({
login: {
code: "ACCOUNT_LOGIN_VERIFICATION_EMAIL",
- message:
- "Email verification is required, please check your email.",
+ message: "Email verification is required, please check your email.",
},
});
}
@@ -153,9 +148,7 @@ router.post(
const challenge = JSON.stringify({
publicKey: {
...options,
- challenge: Buffer.from(options.challenge).toString(
- "base64",
- ),
+ challenge: Buffer.from(options.challenge).toString("base64"),
allowCredentials: user.security_keys.map((x) => ({
id: x.key_id,
type: "public-key",
@@ -179,10 +172,8 @@ router.post(
if (undelete) {
// undelete refers to un'disable' here
- if (user.disabled)
- await User.update({ id: user.id }, { disabled: false });
- if (user.deleted)
- await User.update({ id: user.id }, { deleted: false });
+ if (user.disabled) await User.update({ id: user.id }, { disabled: false });
+ if (user.deleted) await User.update({ id: user.id }, { deleted: false });
} else {
if (user.deleted)
return res.status(400).json({
@@ -203,7 +194,7 @@ router.post(
// https://user-images.githubusercontent.com/6506416/81051916-dd8c9900-8ec2-11ea-8794-daf12d6f31f0.png
res.json({ token, settings: { ...user.settings, index: undefined } });
- },
+ }
);
/**
diff --git a/src/api/routes/auth/logout.ts b/src/api/routes/auth/logout.ts
index 94a3e4746..9686f5cbd 100644
--- a/src/api/routes/auth/logout.ts
+++ b/src/api/routes/auth/logout.ts
@@ -31,16 +31,12 @@ router.post(
}),
async (req: Request, res: Response) => {
if (req.body.provider != null || req.body.voip_provider != null) {
- console.log(
- `[LOGOUT]: provider or voip provider not null!`,
- req.body,
- );
+ console.log(`[LOGOUT]: provider or voip provider not null!`, req.body);
} else {
delete req.body.provider;
delete req.body.voip_provider;
- if (Object.keys(req.body).length != 0)
- console.log(`[LOGOUT]: Extra fields sent in logout!`, req.body);
+ if (Object.keys(req.body).length != 0) console.log(`[LOGOUT]: Extra fields sent in logout!`, req.body);
}
res.status(204).send();
- },
+ }
);
diff --git a/src/api/routes/auth/mfa/totp.ts b/src/api/routes/auth/mfa/totp.ts
index 4df408f9c..956993b37 100644
--- a/src/api/routes/auth/mfa/totp.ts
+++ b/src/api/routes/auth/mfa/totp.ts
@@ -59,11 +59,7 @@ router.post(
if (!backup) {
const ret = verifyToken(user.totp_secret || "", code);
- if (!ret || ret.delta != 0)
- throw new HTTPError(
- req.t("auth:login.INVALID_TOTP_CODE"),
- 60008,
- );
+ if (!ret || ret.delta != 0) throw new HTTPError(req.t("auth:login.INVALID_TOTP_CODE"), 60008);
} else {
backup.consumed = true;
await backup.save();
@@ -75,7 +71,7 @@ router.post(
token: await generateToken(user.id),
settings: { ...user.settings, index: undefined },
});
- },
+ }
);
export default router;
diff --git a/src/api/routes/auth/mfa/webauthn.ts b/src/api/routes/auth/mfa/webauthn.ts
index b58d29443..c1a7ddb99 100644
--- a/src/api/routes/auth/mfa/webauthn.ts
+++ b/src/api/routes/auth/mfa/webauthn.ts
@@ -17,14 +17,7 @@
*/
import { route } from "@spacebar/api";
-import {
- generateToken,
- SecurityKey,
- User,
- verifyWebAuthnToken,
- WebAuthn,
- WebAuthnTotpSchema,
-} from "@spacebar/util";
+import { generateToken, SecurityKey, User, verifyWebAuthnToken, WebAuthn, WebAuthnTotpSchema } from "@spacebar/util";
import { Request, Response, Router } from "express";
import { ExpectedAssertionResult } from "fido2-lib";
import { HTTPError } from "lambert-server";
@@ -65,46 +58,33 @@ router.post(
});
const ret = await verifyWebAuthnToken(ticket);
- if (!ret)
- throw new HTTPError(req.t("auth:login.INVALID_TOTP_CODE"), 60008);
+ if (!ret) throw new HTTPError(req.t("auth:login.INVALID_TOTP_CODE"), 60008);
await User.update({ id: user.id }, { totp_last_ticket: "" });
const clientAttestationResponse = JSON.parse(code);
- if (!clientAttestationResponse.rawId)
- throw new HTTPError("Missing rawId", 400);
+ if (!clientAttestationResponse.rawId) throw new HTTPError("Missing rawId", 400);
- clientAttestationResponse.rawId = toArrayBuffer(
- Buffer.from(clientAttestationResponse.rawId, "base64url"),
- );
+ clientAttestationResponse.rawId = toArrayBuffer(Buffer.from(clientAttestationResponse.rawId, "base64url"));
const securityKey = await SecurityKey.findOneOrFail({
where: {
- key_id: Buffer.from(
- clientAttestationResponse.rawId,
- "base64url",
- ).toString("base64"),
+ key_id: Buffer.from(clientAttestationResponse.rawId, "base64url").toString("base64"),
},
});
const assertionExpectations: ExpectedAssertionResult = JSON.parse(
- Buffer.from(
- clientAttestationResponse.response.clientDataJSON,
- "base64",
- ).toString(),
+ Buffer.from(clientAttestationResponse.response.clientDataJSON, "base64").toString()
);
- const authnResult = await WebAuthn.fido2.assertionResult(
- clientAttestationResponse,
- {
- ...assertionExpectations,
- factor: "second",
- publicKey: securityKey.public_key,
- prevCounter: securityKey.counter,
- userHandle: securityKey.key_id,
- },
- );
+ const authnResult = await WebAuthn.fido2.assertionResult(clientAttestationResponse, {
+ ...assertionExpectations,
+ factor: "second",
+ publicKey: securityKey.public_key,
+ prevCounter: securityKey.counter,
+ userHandle: securityKey.key_id,
+ });
const counter = authnResult.authnrData.get("counter");
@@ -116,7 +96,7 @@ router.post(
token: await generateToken(user.id),
user_settings: user.settings,
});
- },
+ }
);
export default router;
diff --git a/src/api/routes/auth/register.ts b/src/api/routes/auth/register.ts
index de1cbd3d8..dc72a3ca1 100644
--- a/src/api/routes/auth/register.ts
+++ b/src/api/routes/auth/register.ts
@@ -16,13 +16,7 @@
along with this program. If not, see .
*/
-import {
- IPAnalysis,
- getIpAdress,
- isProxy,
- route,
- verifyCaptcha,
-} from "@spacebar/api";
+import { IPAnalysis, getIpAdress, isProxy, route, verifyCaptcha } from "@spacebar/api";
import {
Config,
FieldErrors,
@@ -65,13 +59,9 @@ router.post(
});
await regToken.remove();
regTokenUsed = true;
- console.log(
- `[REGISTER] Registration token ${token} used for registration!`,
- );
+ console.log(`[REGISTER] Registration token ${token} used for registration!`);
} else {
- console.log(
- `[REGISTER] Invalid registration token ${token} used for registration by ${ip}!`,
- );
+ console.log(`[REGISTER] Invalid registration token ${token} used for registration by ${ip}!`);
}
}
@@ -104,11 +94,7 @@ router.post(
});
}
- if (
- !regTokenUsed &&
- register.requireCaptcha &&
- security.captcha.enabled
- ) {
+ if (!regTokenUsed && register.requireCaptcha && security.captcha.enabled) {
const { sitekey, service } = security.captcha;
if (!body.captcha_key) {
return res?.status(400).json({
@@ -139,9 +125,7 @@ router.post(
throw FieldErrors({
email: {
code: "EMAIL_ALREADY_REGISTERED",
- message: req.t(
- "auth:register.EMAIL_ALREADY_REGISTERED",
- ),
+ message: req.t("auth:register.EMAIL_ALREADY_REGISTERED"),
},
});
}
@@ -176,9 +160,7 @@ router.post(
throw FieldErrors({
email: {
code: "EMAIL_ALREADY_REGISTERED",
- message: req.t(
- "auth:register.EMAIL_ALREADY_REGISTERED",
- ),
+ message: req.t("auth:register.EMAIL_ALREADY_REGISTERED"),
},
});
}
@@ -198,14 +180,9 @@ router.post(
message: req.t("common:field.BASE_TYPE_REQUIRED"),
},
});
- } else if (
- register.dateOfBirth.required &&
- register.dateOfBirth.minimum
- ) {
+ } else if (register.dateOfBirth.required && register.dateOfBirth.minimum) {
const minimum = new Date();
- minimum.setFullYear(
- minimum.getFullYear() - register.dateOfBirth.minimum,
- );
+ minimum.setFullYear(minimum.getFullYear() - register.dateOfBirth.minimum);
body.date_of_birth = new Date(body.date_of_birth as Date);
// higher is younger
@@ -228,10 +205,7 @@ router.post(
throw FieldErrors({
password: {
code: "PASSWORD_REQUIREMENTS_MIN_LENGTH",
- message: req.t(
- "auth:register.PASSWORD_REQUIREMENTS_MIN_LENGTH",
- { min: min },
- ),
+ message: req.t("auth:register.PASSWORD_REQUIREMENTS_MIN_LENGTH", { min: min }),
},
});
}
@@ -249,8 +223,7 @@ router.post(
if (
!regTokenUsed &&
!body.invite &&
- (register.requireInvite ||
- (register.guestsRequireInvite && !register.email))
+ (register.requireInvite || (register.guestsRequireInvite && !register.email))
) {
// require invite to register -> e.g. for organizations to send invites to their employees
throw FieldErrors({
@@ -266,18 +239,14 @@ router.post(
limits.absoluteRate.register.enabled &&
(await User.count({
where: {
- created_at: MoreThan(
- new Date(
- Date.now() - limits.absoluteRate.register.window,
- ),
- ),
+ created_at: MoreThan(new Date(Date.now() - limits.absoluteRate.register.window)),
},
})) >= limits.absoluteRate.register.limit
) {
console.log(
- `Global register ratelimit exceeded for ${getIpAdress(req)}, ${
- req.body.username
- }, ${req.body.invite || "No invite given"}`,
+ `Global register ratelimit exceeded for ${getIpAdress(req)}, ${req.body.username}, ${
+ req.body.invite || "No invite given"
+ }`
);
throw FieldErrors({
email: {
@@ -295,7 +264,7 @@ router.post(
}
return res.json({ token: await generateToken(user.id) });
- },
+ }
);
export default router;
diff --git a/src/api/routes/auth/reset.ts b/src/api/routes/auth/reset.ts
index b3ca1e9e2..746363cc3 100644
--- a/src/api/routes/auth/reset.ts
+++ b/src/api/routes/auth/reset.ts
@@ -17,14 +17,7 @@
*/
import { route } from "@spacebar/api";
-import {
- checkToken,
- Email,
- FieldErrors,
- generateToken,
- PasswordResetSchema,
- User,
-} from "@spacebar/util";
+import { checkToken, Email, FieldErrors, generateToken, PasswordResetSchema, User } from "@spacebar/util";
import bcrypt from "bcrypt";
import { Request, Response, Router } from "express";
@@ -76,7 +69,7 @@ router.post(
await Email.sendPasswordChanged(user, user.email!);
res.json({ token: await generateToken(user.id) });
- },
+ }
);
export default router;
diff --git a/src/api/routes/auth/verify/index.ts b/src/api/routes/auth/verify/index.ts
index 49f742778..49f3398e1 100644
--- a/src/api/routes/auth/verify/index.ts
+++ b/src/api/routes/auth/verify/index.ts
@@ -17,13 +17,7 @@
*/
import { getIpAdress, route, verifyCaptcha } from "@spacebar/api";
-import {
- checkToken,
- Config,
- FieldErrors,
- generateToken,
- User,
-} from "@spacebar/util";
+import { checkToken, Config, FieldErrors, generateToken, User } from "@spacebar/util";
import { Request, Response, Router } from "express";
const router = Router();
@@ -97,7 +91,7 @@ router.post(
await User.update({ id: user.id }, { verified: true });
return res.json(await getToken(user));
- },
+ }
);
export default router;
diff --git a/src/api/routes/auth/verify/resend.ts b/src/api/routes/auth/verify/resend.ts
index 701f0ea82..ced7c578f 100644
--- a/src/api/routes/auth/verify/resend.ts
+++ b/src/api/routes/auth/verify/resend.ts
@@ -52,12 +52,10 @@ router.post(
return res.sendStatus(204);
})
.catch((e) => {
- console.error(
- `Failed to send verification email to ${user.username}#${user.discriminator}: ${e}`,
- );
+ console.error(`Failed to send verification email to ${user.username}#${user.discriminator}: ${e}`);
throw new HTTPError("Failed to send verification email", 500);
});
- },
+ }
);
export default router;
diff --git a/src/api/routes/auth/verify/view-backup-codes-challenge.ts b/src/api/routes/auth/verify/view-backup-codes-challenge.ts
index 5407de821..59c98f00c 100644
--- a/src/api/routes/auth/verify/view-backup-codes-challenge.ts
+++ b/src/api/routes/auth/verify/view-backup-codes-challenge.ts
@@ -52,7 +52,7 @@ router.post(
nonce: "NoncePlaceholder",
regenerate_nonce: "RegenNoncePlaceholder",
});
- },
+ }
);
export default router;
diff --git a/src/api/routes/channels/#channel_id/index.ts b/src/api/routes/channels/#channel_id/index.ts
index 567c7c92c..a5fe1ef99 100644
--- a/src/api/routes/channels/#channel_id/index.ts
+++ b/src/api/routes/channels/#channel_id/index.ts
@@ -52,7 +52,7 @@ router.get(
});
return res.send(channel);
- },
+ }
);
router.delete(
@@ -101,7 +101,7 @@ router.delete(
}
res.send(channel);
- },
+ }
);
router.patch(
@@ -122,11 +122,7 @@ router.patch(
async (req: Request, res: Response) => {
const payload = req.body as ChannelModifySchema;
const { channel_id } = req.params;
- if (payload.icon)
- payload.icon = await handleFile(
- `/channel-icons/${channel_id}`,
- payload.icon,
- );
+ if (payload.icon) payload.icon = await handleFile(`/channel-icons/${channel_id}`, payload.icon);
const channel = await Channel.findOneOrFail({
where: { id: channel_id },
@@ -143,7 +139,7 @@ router.patch(
]);
res.send(channel);
- },
+ }
);
export default router;
diff --git a/src/api/routes/channels/#channel_id/invites.ts b/src/api/routes/channels/#channel_id/invites.ts
index ae32e80de..af0e5cc99 100644
--- a/src/api/routes/channels/#channel_id/invites.ts
+++ b/src/api/routes/channels/#channel_id/invites.ts
@@ -65,9 +65,7 @@ router.post(
const { guild_id } = channel;
const expires_at =
- body.max_age == 0 || body.max_age == undefined
- ? undefined
- : new Date(body.max_age * 1000 + Date.now());
+ body.max_age == 0 || body.max_age == undefined ? undefined : new Date(body.max_age * 1000 + Date.now());
const invite = await Invite.create({
code: random(),
@@ -95,7 +93,7 @@ router.post(
} as InviteCreateEvent);
res.status(201).send(data);
- },
+ }
);
router.get(
@@ -126,7 +124,7 @@ router.get(
});
res.status(200).send(invites);
- },
+ }
);
export default router;
diff --git a/src/api/routes/channels/#channel_id/messages/#message_id/ack.ts b/src/api/routes/channels/#channel_id/messages/#message_id/ack.ts
index a6dcae6be..58ca9d26e 100644
--- a/src/api/routes/channels/#channel_id/messages/#message_id/ack.ts
+++ b/src/api/routes/channels/#channel_id/messages/#message_id/ack.ts
@@ -17,12 +17,7 @@
*/
import { route } from "@spacebar/api";
-import {
- emitEvent,
- getPermission,
- MessageAckEvent,
- ReadState,
-} from "@spacebar/util";
+import { emitEvent, getPermission, MessageAckEvent, ReadState } from "@spacebar/util";
import { Request, Response, Router } from "express";
const router = Router();
@@ -43,18 +38,13 @@ router.post(
async (req: Request, res: Response) => {
const { channel_id, message_id } = req.params;
- const permission = await getPermission(
- req.user_id,
- undefined,
- channel_id,
- );
+ const permission = await getPermission(req.user_id, undefined, channel_id);
permission.hasThrow("VIEW_CHANNEL");
let read_state = await ReadState.findOne({
where: { user_id: req.user_id, channel_id },
});
- if (!read_state)
- read_state = ReadState.create({ user_id: req.user_id, channel_id });
+ if (!read_state) read_state = ReadState.create({ user_id: req.user_id, channel_id });
read_state.last_message_id = message_id;
await read_state.save();
@@ -70,7 +60,7 @@ router.post(
} as MessageAckEvent);
res.json({ token: null });
- },
+ }
);
export default router;
diff --git a/src/api/routes/channels/#channel_id/messages/#message_id/crosspost.ts b/src/api/routes/channels/#channel_id/messages/#message_id/crosspost.ts
index 5ca645c00..7529f5089 100644
--- a/src/api/routes/channels/#channel_id/messages/#message_id/crosspost.ts
+++ b/src/api/routes/channels/#channel_id/messages/#message_id/crosspost.ts
@@ -57,7 +57,7 @@ router.post(
flags: 1,
components: [],
}).status(200);
- },
+ }
);
export default router;
diff --git a/src/api/routes/channels/#channel_id/messages/#message_id/index.ts b/src/api/routes/channels/#channel_id/messages/#message_id/index.ts
index c4d2e1e82..82dc5b87d 100644
--- a/src/api/routes/channels/#channel_id/messages/#message_id/index.ts
+++ b/src/api/routes/channels/#channel_id/messages/#message_id/index.ts
@@ -75,11 +75,7 @@ router.patch(
relations: ["attachments"],
});
- const permissions = await getPermission(
- req.user_id,
- undefined,
- channel_id,
- );
+ const permissions = await getPermission(req.user_id, undefined, channel_id);
const rights = await getRights(req.user_id);
@@ -139,7 +135,7 @@ router.patch(
// these are not in the Discord.com response
mention_channels: new_message.mention_channels,
});
- },
+ }
);
// Backfill message with specific timestamp
@@ -196,13 +192,8 @@ router.put(
if (req.file) {
try {
- const file = await uploadFile(
- `/attachments/${req.params.channel_id}`,
- req.file,
- );
- attachments.push(
- Attachment.create({ ...file, proxy_url: file.url }),
- );
+ const file = await uploadFile(`/attachments/${req.params.channel_id}`, req.file);
+ attachments.push(Attachment.create({ ...file, proxy_url: file.url }));
} catch (error) {
return res.status(400).json(error);
}
@@ -241,12 +232,10 @@ router.put(
]);
// no await as it shouldnt block the message send function and silently catch error
- postHandleMessage(message).catch((e) =>
- console.error("[Message] post-message handler failed", e),
- );
+ postHandleMessage(message).catch((e) => console.error("[Message] post-message handler failed", e));
return res.json(message);
- },
+ }
);
router.get(
@@ -272,17 +261,12 @@ router.get(
relations: ["attachments"],
});
- const permissions = await getPermission(
- req.user_id,
- undefined,
- channel_id,
- );
+ const permissions = await getPermission(req.user_id, undefined, channel_id);
- if (message.author_id !== req.user_id)
- permissions.hasThrow("READ_MESSAGE_HISTORY");
+ if (message.author_id !== req.user_id) permissions.hasThrow("READ_MESSAGE_HISTORY");
return res.json(message);
- },
+ }
);
router.delete(
@@ -310,11 +294,7 @@ router.delete(
if (message.author_id !== req.user_id) {
if (!rights.has("MANAGE_MESSAGES")) {
- const permission = await getPermission(
- req.user_id,
- channel.guild_id,
- channel_id,
- );
+ const permission = await getPermission(req.user_id, channel.guild_id, channel_id);
permission.hasThrow("MANAGE_MESSAGES");
}
} else rights.hasThrow("SELF_DELETE_MESSAGES");
@@ -332,7 +312,7 @@ router.delete(
} as MessageDeleteEvent);
res.sendStatus(204);
- },
+ }
);
export default router;
diff --git a/src/api/routes/channels/#channel_id/messages/#message_id/reactions.ts b/src/api/routes/channels/#channel_id/messages/#message_id/reactions.ts
index c2222b0a3..cea8197b2 100644
--- a/src/api/routes/channels/#channel_id/messages/#message_id/reactions.ts
+++ b/src/api/routes/channels/#channel_id/messages/#message_id/reactions.ts
@@ -88,7 +88,7 @@ router.delete(
} as MessageReactionRemoveAllEvent);
res.sendStatus(204);
- },
+ }
);
router.delete(
@@ -113,9 +113,7 @@ router.delete(
});
const already_added = message.reactions.find(
- (x) =>
- (x.emoji.id === emoji.id && emoji.id) ||
- x.emoji.name === emoji.name,
+ (x) => (x.emoji.id === emoji.id && emoji.id) || x.emoji.name === emoji.name
);
if (!already_added) throw new HTTPError("Reaction not found", 404);
message.reactions.remove(already_added);
@@ -135,7 +133,7 @@ router.delete(
]);
res.sendStatus(204);
- },
+ }
);
router.get(
@@ -161,9 +159,7 @@ router.get(
where: { id: message_id, channel_id },
});
const reaction = message.reactions.find(
- (x) =>
- (x.emoji.id === emoji.id && emoji.id) ||
- x.emoji.name === emoji.name,
+ (x) => (x.emoji.id === emoji.id && emoji.id) || x.emoji.name === emoji.name
);
if (!reaction) throw new HTTPError("Reaction not found", 404);
@@ -175,7 +171,7 @@ router.get(
});
res.json(users);
- },
+ }
);
router.put(
@@ -204,9 +200,7 @@ router.put(
where: { id: message_id, channel_id },
});
const already_added = message.reactions.find(
- (x) =>
- (x.emoji.id === emoji.id && emoji.id) ||
- x.emoji.name === emoji.name,
+ (x) => (x.emoji.id === emoji.id && emoji.id) || x.emoji.name === emoji.name
);
if (!already_added) req.permission?.hasThrow("ADD_REACTIONS");
@@ -222,8 +216,7 @@ router.put(
}
if (already_added) {
- if (already_added.user_ids.includes(req.user_id))
- return res.sendStatus(204); // Do not throw an error ¯\_(ツ)_/¯ as discord also doesn't throw any error
+ if (already_added.user_ids.includes(req.user_id)) return res.sendStatus(204); // Do not throw an error ¯\_(ツ)_/¯ as discord also doesn't throw any error
already_added.count++;
already_added.user_ids.push(req.user_id);
} else
@@ -258,7 +251,7 @@ router.put(
} as MessageReactionAddEvent);
res.sendStatus(204);
- },
+ }
);
router.delete(
@@ -288,30 +281,19 @@ router.delete(
if (user_id === "@me") user_id = req.user_id;
else {
- const permissions = await getPermission(
- req.user_id,
- undefined,
- channel_id,
- );
+ const permissions = await getPermission(req.user_id, undefined, channel_id);
permissions.hasThrow("MANAGE_MESSAGES");
}
const already_added = message.reactions.find(
- (x) =>
- (x.emoji.id === emoji.id && emoji.id) ||
- x.emoji.name === emoji.name,
+ (x) => (x.emoji.id === emoji.id && emoji.id) || x.emoji.name === emoji.name
);
- if (!already_added || !already_added.user_ids.includes(user_id))
- throw new HTTPError("Reaction not found", 404);
+ if (!already_added || !already_added.user_ids.includes(user_id)) throw new HTTPError("Reaction not found", 404);
already_added.count--;
if (already_added.count <= 0) message.reactions.remove(already_added);
- else
- already_added.user_ids.splice(
- already_added.user_ids.indexOf(user_id),
- 1,
- );
+ else already_added.user_ids.splice(already_added.user_ids.indexOf(user_id), 1);
await message.save();
@@ -328,7 +310,7 @@ router.delete(
} as MessageReactionRemoveEvent);
res.sendStatus(204);
- },
+ }
);
export default router;
diff --git a/src/api/routes/channels/#channel_id/messages/bulk-delete.ts b/src/api/routes/channels/#channel_id/messages/bulk-delete.ts
index 9b607d597..3cd90faf2 100644
--- a/src/api/routes/channels/#channel_id/messages/bulk-delete.ts
+++ b/src/api/routes/channels/#channel_id/messages/bulk-delete.ts
@@ -17,15 +17,7 @@
*/
import { route } from "@spacebar/api";
-import {
- Channel,
- Config,
- emitEvent,
- getPermission,
- getRights,
- Message,
- MessageDeleteBulkEvent,
-} from "@spacebar/util";
+import { Channel, Config, emitEvent, getPermission, getRights, Message, MessageDeleteBulkEvent } from "@spacebar/util";
import { Request, Response, Router } from "express";
import { HTTPError } from "lambert-server";
@@ -54,30 +46,22 @@ router.post(
const channel = await Channel.findOneOrFail({
where: { id: channel_id },
});
- if (!channel.guild_id)
- throw new HTTPError("Can't bulk delete dm channel messages", 400);
+ if (!channel.guild_id) throw new HTTPError("Can't bulk delete dm channel messages", 400);
const rights = await getRights(req.user_id);
rights.hasThrow("SELF_DELETE_MESSAGES");
const superuser = rights.has("MANAGE_MESSAGES");
- const permission = await getPermission(
- req.user_id,
- channel?.guild_id,
- channel_id,
- );
+ const permission = await getPermission(req.user_id, channel?.guild_id, channel_id);
const { maxBulkDelete } = Config.get().limits.message;
const { messages } = req.body as { messages: string[] };
- if (messages.length === 0)
- throw new HTTPError("You must specify messages to bulk delete");
+ if (messages.length === 0) throw new HTTPError("You must specify messages to bulk delete");
if (!superuser) {
permission.hasThrow("MANAGE_MESSAGES");
if (messages.length > maxBulkDelete)
- throw new HTTPError(
- `You cannot delete more than ${maxBulkDelete} messages`,
- );
+ throw new HTTPError(`You cannot delete more than ${maxBulkDelete} messages`);
}
await Message.delete(messages);
@@ -89,5 +73,5 @@ router.post(
} as MessageDeleteBulkEvent);
res.sendStatus(204);
- },
+ }
);
diff --git a/src/api/routes/channels/#channel_id/messages/index.ts b/src/api/routes/channels/#channel_id/messages/index.ts
index a5bfcfd73..c80b5f48a 100644
--- a/src/api/routes/channels/#channel_id/messages/index.ts
+++ b/src/api/routes/channels/#channel_id/messages/index.ts
@@ -40,13 +40,7 @@ import {
import { Request, Response, Router } from "express";
import { HTTPError } from "lambert-server";
import multer from "multer";
-import {
- FindManyOptions,
- FindOperator,
- LessThan,
- MoreThan,
- MoreThanOrEqual,
-} from "typeorm";
+import { FindManyOptions, FindOperator, LessThan, MoreThan, MoreThanOrEqual } from "typeorm";
import { URL } from "url";
const router: Router = Router();
@@ -68,8 +62,7 @@ router.get(
},
limit: {
type: "number",
- description:
- "max number of messages to return (1-100). defaults to 50",
+ description: "max number of messages to return (1-100). defaults to 50",
},
},
responses: {
@@ -95,14 +88,9 @@ router.get(
const before = req.query.before ? `${req.query.before}` : undefined;
const after = req.query.after ? `${req.query.after}` : undefined;
const limit = Number(req.query.limit) || 50;
- if (limit < 1 || limit > 100)
- throw new HTTPError("limit must be between 1 and 100", 422);
+ if (limit < 1 || limit > 100) throw new HTTPError("limit must be between 1 and 100", 422);
- const permissions = await getPermission(
- req.user_id,
- channel.guild_id,
- channel_id,
- );
+ const permissions = await getPermission(req.user_id, channel.guild_id, channel_id);
permissions.hasThrow("VIEW_CHANNEL");
if (!permissions.has("READ_MESSAGE_HISTORY")) return res.json([]);
@@ -148,12 +136,10 @@ router.get(
}
} else {
if (after) {
- if (BigInt(after) > BigInt(Snowflake.generate()))
- return res.status(422);
+ if (BigInt(after) > BigInt(Snowflake.generate())) return res.status(422);
query.where.id = MoreThan(after);
} else if (before) {
- if (BigInt(before) > BigInt(Snowflake.generate()))
- return res.status(422);
+ if (BigInt(before) > BigInt(Snowflake.generate())) return res.status(422);
query.where.id = LessThan(before);
}
@@ -180,12 +166,8 @@ router.get(
});
x.attachments?.forEach((y: Attachment) => {
// dynamically set attachment proxy_url in case the endpoint changed
- const uri = y.proxy_url.startsWith("http")
- ? y.proxy_url
- : `https://example.org${y.proxy_url}`;
- y.proxy_url = `${endpoint == null ? "" : endpoint}${
- new URL(uri).pathname
- }`;
+ const uri = y.proxy_url.startsWith("http") ? y.proxy_url : `https://example.org${y.proxy_url}`;
+ y.proxy_url = `${endpoint == null ? "" : endpoint}${new URL(uri).pathname}`;
});
/**
@@ -202,7 +184,7 @@ router.get(
});
return res.json(ret);
- },
+ }
);
// TODO: config max upload size
@@ -258,10 +240,7 @@ router.post(
relations: ["recipients", "recipients.user"],
});
if (!channel.isWritable()) {
- throw new HTTPError(
- `Cannot send messages to channel of type ${channel.type}`,
- 400,
- );
+ throw new HTTPError(`Cannot send messages to channel of type ${channel.type}`, 400);
}
if (body.nonce) {
@@ -283,12 +262,7 @@ router.post(
const count = await Message.count({
where: {
channel_id,
- timestamp: MoreThan(
- new Date(
- Date.now() -
- limits.absoluteRate.sendMessage.window,
- ),
- ),
+ timestamp: MoreThan(new Date(Date.now() - limits.absoluteRate.sendMessage.window)),
},
});
@@ -305,13 +279,8 @@ router.post(
const files = (req.files as Express.Multer.File[]) ?? [];
for (const currFile of files) {
try {
- const file = await uploadFile(
- `/attachments/${channel.id}`,
- currFile,
- );
- attachments.push(
- Attachment.create({ ...file, proxy_url: file.url }),
- );
+ const file = await uploadFile(`/attachments/${channel.id}`, currFile);
+ attachments.push(Attachment.create({ ...file, proxy_url: file.url }));
} catch (error) {
return res.status(400).json({ message: error?.toString() });
}
@@ -347,14 +316,12 @@ router.post(
recipient.save(),
emitEvent({
event: "CHANNEL_CREATE",
- data: channel_dto.excludedRecipients([
- recipient.user_id,
- ]),
+ data: channel_dto.excludedRecipients([recipient.user_id]),
user_id: recipient.user_id,
}),
]);
}
- }) || [],
+ }) || []
);
}
@@ -370,16 +337,13 @@ router.post(
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
//@ts-ignore
- message.member.roles = message.member.roles
- .filter((x) => x.id != x.guild_id)
- .map((x) => x.id);
+ message.member.roles = message.member.roles.filter((x) => x.id != x.guild_id).map((x) => x.id);
}
let read_state = await ReadState.findOne({
where: { user_id: req.user_id, channel_id },
});
- if (!read_state)
- read_state = ReadState.create({ user_id: req.user_id, channel_id });
+ if (!read_state) read_state = ReadState.create({ user_id: req.user_id, channel_id });
read_state.last_message_id = message.id;
await Promise.all([
@@ -391,21 +355,16 @@ router.post(
data: message,
} as MessageCreateEvent),
message.guild_id
- ? Member.update(
- { id: req.user_id, guild_id: message.guild_id },
- { last_message_id: message.id },
- )
+ ? Member.update({ id: req.user_id, guild_id: message.guild_id }, { last_message_id: message.id })
: null,
channel.save(),
]);
// no await as it shouldnt block the message send function and silently catch error
- postHandleMessage(message).catch((e) =>
- console.error("[Message] post-message handler failed", e),
- );
+ postHandleMessage(message).catch((e) => console.error("[Message] post-message handler failed", e));
return res.json(message);
- },
+ }
);
export default router;
diff --git a/src/api/routes/channels/#channel_id/permissions.ts b/src/api/routes/channels/#channel_id/permissions.ts
index d3edb0fa1..a9c28c0cf 100644
--- a/src/api/routes/channels/#channel_id/permissions.ts
+++ b/src/api/routes/channels/#channel_id/permissions.ts
@@ -55,15 +55,14 @@ router.put(
if (!channel.guild_id) throw new HTTPError("Channel not found", 404);
if (body.type === 0) {
- if (!(await Role.count({ where: { id: overwrite_id } })))
- throw new HTTPError("role not found", 404);
+ if (!(await Role.count({ where: { id: overwrite_id } }))) throw new HTTPError("role not found", 404);
} else if (body.type === 1) {
- if (!(await Member.count({ where: { id: overwrite_id } })))
- throw new HTTPError("user not found", 404);
+ if (!(await Member.count({ where: { id: overwrite_id } }))) throw new HTTPError("user not found", 404);
} else throw new HTTPError("type not supported", 501);
- let overwrite: ChannelPermissionOverwrite | undefined =
- channel.permission_overwrites?.find((x) => x.id === overwrite_id);
+ let overwrite: ChannelPermissionOverwrite | undefined = channel.permission_overwrites?.find(
+ (x) => x.id === overwrite_id
+ );
if (!overwrite) {
overwrite = {
id: overwrite_id,
@@ -73,14 +72,8 @@ router.put(
};
channel.permission_overwrites?.push(overwrite);
}
- overwrite.allow = String(
- (req.permission?.bitfield || 0n) &
- (BigInt(body.allow) || BigInt("0")),
- );
- overwrite.deny = String(
- (req.permission?.bitfield || 0n) &
- (BigInt(body.deny) || BigInt("0")),
- );
+ overwrite.allow = String((req.permission?.bitfield || 0n) & (BigInt(body.allow) || BigInt("0")));
+ overwrite.deny = String((req.permission?.bitfield || 0n) & (BigInt(body.deny) || BigInt("0")));
await Promise.all([
channel.save(),
@@ -92,7 +85,7 @@ router.put(
]);
return res.sendStatus(204);
- },
+ }
);
// TODO: check permission hierarchy
@@ -107,9 +100,7 @@ router.delete(
});
if (!channel.guild_id) throw new HTTPError("Channel not found", 404);
- channel.permission_overwrites = channel.permission_overwrites?.filter(
- (x) => x.id === overwrite_id,
- );
+ channel.permission_overwrites = channel.permission_overwrites?.filter((x) => x.id === overwrite_id);
await Promise.all([
channel.save(),
@@ -121,7 +112,7 @@ router.delete(
]);
return res.sendStatus(204);
- },
+ }
);
export default router;
diff --git a/src/api/routes/channels/#channel_id/pins.ts b/src/api/routes/channels/#channel_id/pins.ts
index 724ebffd4..597d735c3 100644
--- a/src/api/routes/channels/#channel_id/pins.ts
+++ b/src/api/routes/channels/#channel_id/pins.ts
@@ -57,8 +57,7 @@ router.put(
where: { channel: { id: channel_id }, pinned: true },
});
const { maxPins } = Config.get().limits.channel;
- if (pinned_count >= maxPins)
- throw DiscordApiErrors.MAXIMUM_PINS.withParams(maxPins);
+ if (pinned_count >= maxPins) throw DiscordApiErrors.MAXIMUM_PINS.withParams(maxPins);
await Promise.all([
Message.update({ id: message_id }, { pinned: true }),
@@ -79,7 +78,7 @@ router.put(
]);
res.sendStatus(204);
- },
+ }
);
router.delete(
@@ -129,7 +128,7 @@ router.delete(
]);
res.sendStatus(204);
- },
+ }
);
router.get(
@@ -153,7 +152,7 @@ router.get(
});
res.send(pins);
- },
+ }
);
export default router;
diff --git a/src/api/routes/channels/#channel_id/purge.ts b/src/api/routes/channels/#channel_id/purge.ts
index 012fec1c5..c473f9aad 100644
--- a/src/api/routes/channels/#channel_id/purge.ts
+++ b/src/api/routes/channels/#channel_id/purge.ts
@@ -57,17 +57,12 @@ router.post(
where: { id: channel_id },
});
- if (!channel.guild_id)
- throw new HTTPError("Can't purge dm channels", 400);
+ if (!channel.guild_id) throw new HTTPError("Can't purge dm channels", 400);
isTextChannel(channel.type);
const rights = await getRights(req.user_id);
if (!rights.has("MANAGE_MESSAGES")) {
- const permissions = await getPermission(
- req.user_id,
- channel.guild_id,
- channel_id,
- );
+ const permissions = await getPermission(req.user_id, channel.guild_id, channel_id);
permissions.hasThrow("MANAGE_MESSAGES");
permissions.hasThrow("MANAGE_CHANNELS");
}
@@ -84,9 +79,7 @@ router.post(
where: {
channel_id,
id: Between(after, before), // the right way around
- author_id: rights.has("SELF_DELETE_MESSAGES")
- ? undefined
- : Not(req.user_id),
+ author_id: rights.has("SELF_DELETE_MESSAGES") ? undefined : Not(req.user_id),
// if you lack the right of self-deletion, you can't delete your own messages, even in purges
},
relations: [
@@ -121,5 +114,5 @@ router.post(
} as MessageDeleteBulkEvent);
res.sendStatus(204);
- },
+ }
);
diff --git a/src/api/routes/channels/#channel_id/recipients.ts b/src/api/routes/channels/#channel_id/recipients.ts
index 569bb5cd5..c13772693 100644
--- a/src/api/routes/channels/#channel_id/recipients.ts
+++ b/src/api/routes/channels/#channel_id/recipients.ts
@@ -48,24 +48,16 @@ router.put(
});
if (channel.type !== ChannelType.GROUP_DM) {
- const recipients = [
- ...(channel.recipients?.map((r) => r.user_id) || []),
- user_id,
- ].unique();
+ const recipients = [...(channel.recipients?.map((r) => r.user_id) || []), user_id].unique();
- const new_channel = await Channel.createDMChannel(
- recipients,
- req.user_id,
- );
+ const new_channel = await Channel.createDMChannel(recipients, req.user_id);
return res.status(201).json(new_channel);
} else {
if (channel.recipients?.map((r) => r.user_id).includes(user_id)) {
throw DiscordApiErrors.INVALID_RECIPIENT; //TODO is this the right error?
}
- channel.recipients?.push(
- Recipient.create({ channel_id: channel_id, user_id: user_id }),
- );
+ channel.recipients?.push(Recipient.create({ channel_id: channel_id, user_id: user_id }));
await channel.save();
await emitEvent({
@@ -87,7 +79,7 @@ router.put(
} as ChannelRecipientAddEvent);
return res.sendStatus(204);
}
- },
+ }
);
router.delete(
@@ -104,12 +96,7 @@ router.delete(
where: { id: channel_id },
relations: ["recipients"],
});
- if (
- !(
- channel.type === ChannelType.GROUP_DM &&
- (channel.owner_id === req.user_id || user_id === req.user_id)
- )
- )
+ if (!(channel.type === ChannelType.GROUP_DM && (channel.owner_id === req.user_id || user_id === req.user_id)))
throw DiscordApiErrors.MISSING_PERMISSIONS;
if (!channel.recipients?.map((r) => r.user_id).includes(user_id)) {
@@ -119,7 +106,7 @@ router.delete(
await Channel.removeRecipientFromChannel(channel, user_id);
return res.sendStatus(204);
- },
+ }
);
export default router;
diff --git a/src/api/routes/channels/#channel_id/typing.ts b/src/api/routes/channels/#channel_id/typing.ts
index 90e781753..4563b689c 100644
--- a/src/api/routes/channels/#channel_id/typing.ts
+++ b/src/api/routes/channels/#channel_id/typing.ts
@@ -64,7 +64,7 @@ router.post(
} as TypingStartEvent);
res.sendStatus(204);
- },
+ }
);
export default router;
diff --git a/src/api/routes/channels/#channel_id/webhooks.ts b/src/api/routes/channels/#channel_id/webhooks.ts
index d54756a16..864fe8346 100644
--- a/src/api/routes/channels/#channel_id/webhooks.ts
+++ b/src/api/routes/channels/#channel_id/webhooks.ts
@@ -47,7 +47,7 @@ router.get(
}),
async (req: Request, res: Response) => {
res.json([]);
- },
+ }
);
// TODO: use Image Data Type for avatar instead of String
@@ -77,8 +77,7 @@ router.post(
const webhook_count = await Webhook.count({ where: { channel_id } });
const { maxWebhooks } = Config.get().limits.channel;
- if (maxWebhooks && webhook_count > maxWebhooks)
- throw DiscordApiErrors.MAXIMUM_WEBHOOKS.withParams(maxWebhooks);
+ if (maxWebhooks && webhook_count > maxWebhooks) throw DiscordApiErrors.MAXIMUM_WEBHOOKS.withParams(maxWebhooks);
let { avatar, name } = req.body as WebhookCreateSchema;
name = trimSpecial(name);
@@ -105,7 +104,7 @@ router.post(
...hook,
user: user,
});
- },
+ }
);
export default router;
diff --git a/src/api/routes/connections/#connection_name/authorize.ts b/src/api/routes/connections/#connection_name/authorize.ts
index b43f46d79..c3a435cda 100644
--- a/src/api/routes/connections/#connection_name/authorize.ts
+++ b/src/api/routes/connections/#connection_name/authorize.ts
@@ -30,9 +30,7 @@ router.get("/", route({}), async (req: Request, res: Response) => {
provider_id: {
code: "BASE_TYPE_CHOICES",
message: req.t("common:field.BASE_TYPE_CHOICES", {
- types: Array.from(ConnectionStore.connections.keys()).join(
- ", ",
- ),
+ types: Array.from(ConnectionStore.connections.keys()).join(", "),
}),
},
});
diff --git a/src/api/routes/connections/#connection_name/callback.ts b/src/api/routes/connections/#connection_name/callback.ts
index ee0db94ab..f47c48f33 100644
--- a/src/api/routes/connections/#connection_name/callback.ts
+++ b/src/api/routes/connections/#connection_name/callback.ts
@@ -17,55 +17,44 @@
*/
import { route } from "@spacebar/api";
-import {
- ConnectionCallbackSchema,
- ConnectionStore,
- emitEvent,
- FieldErrors,
-} from "@spacebar/util";
+import { ConnectionCallbackSchema, ConnectionStore, emitEvent, FieldErrors } from "@spacebar/util";
import { Request, Response, Router } from "express";
const router = Router();
-router.post(
- "/",
- route({ requestBody: "ConnectionCallbackSchema" }),
- async (req: Request, res: Response) => {
- const { connection_name } = req.params;
- const connection = ConnectionStore.connections.get(connection_name);
- if (!connection)
- throw FieldErrors({
- provider_id: {
- code: "BASE_TYPE_CHOICES",
- message: req.t("common:field.BASE_TYPE_CHOICES", {
- types: Array.from(
- ConnectionStore.connections.keys(),
- ).join(", "),
- }),
- },
- });
+router.post("/", route({ requestBody: "ConnectionCallbackSchema" }), async (req: Request, res: Response) => {
+ const { connection_name } = req.params;
+ const connection = ConnectionStore.connections.get(connection_name);
+ if (!connection)
+ throw FieldErrors({
+ provider_id: {
+ code: "BASE_TYPE_CHOICES",
+ message: req.t("common:field.BASE_TYPE_CHOICES", {
+ types: Array.from(ConnectionStore.connections.keys()).join(", "),
+ }),
+ },
+ });
- if (!connection.settings.enabled)
- throw FieldErrors({
- provider_id: {
- message: "This connection has been disabled server-side.",
- },
- });
+ if (!connection.settings.enabled)
+ throw FieldErrors({
+ provider_id: {
+ message: "This connection has been disabled server-side.",
+ },
+ });
- const body = req.body as ConnectionCallbackSchema;
- const userId = connection.getUserId(body.state);
- const connectedAccnt = await connection.handleCallback(body);
+ const body = req.body as ConnectionCallbackSchema;
+ const userId = connection.getUserId(body.state);
+ const connectedAccnt = await connection.handleCallback(body);
- // whether we should emit a connections update event, only used when a connection doesnt already exist
- if (connectedAccnt)
- emitEvent({
- event: "USER_CONNECTIONS_UPDATE",
- data: { ...connectedAccnt, token_data: undefined },
- user_id: userId,
- });
+ // whether we should emit a connections update event, only used when a connection doesnt already exist
+ if (connectedAccnt)
+ emitEvent({
+ event: "USER_CONNECTIONS_UPDATE",
+ data: { ...connectedAccnt, token_data: undefined },
+ user_id: userId,
+ });
- res.sendStatus(204);
- },
-);
+ res.sendStatus(204);
+});
export default router;
diff --git a/src/api/routes/discoverable-guilds.ts b/src/api/routes/discoverable-guilds.ts
index b8c6a3867..e2a47cd7b 100644
--- a/src/api/routes/discoverable-guilds.ts
+++ b/src/api/routes/discoverable-guilds.ts
@@ -70,7 +70,7 @@ router.get(
offset: Number(offset || Config.get().guild.discovery.offset),
limit: Number(limit || configLimit),
});
- },
+ }
);
export default router;
diff --git a/src/api/routes/discovery.ts b/src/api/routes/discovery.ts
index a045c1919..e4e7dbf75 100644
--- a/src/api/routes/discovery.ts
+++ b/src/api/routes/discovery.ts
@@ -38,12 +38,10 @@ router.get(
// const { locale, primary_only } = req.query;
const { primary_only } = req.query;
- const out = primary_only
- ? await Categories.find()
- : await Categories.find({ where: { is_primary: true } });
+ const out = primary_only ? await Categories.find() : await Categories.find({ where: { is_primary: true } });
res.send(out);
- },
+ }
);
export default router;
diff --git a/src/api/routes/download.ts b/src/api/routes/download.ts
index 85fb41bed..6bb6d61cd 100644
--- a/src/api/routes/download.ts
+++ b/src/api/routes/download.ts
@@ -52,7 +52,7 @@ router.get(
});
res.redirect(release.url);
- },
+ }
);
export default router;
diff --git a/src/api/routes/gateway/bot.ts b/src/api/routes/gateway/bot.ts
index d91011598..af12d4248 100644
--- a/src/api/routes/gateway/bot.ts
+++ b/src/api/routes/gateway/bot.ts
@@ -43,7 +43,7 @@ router.get(
max_concurrency: 1,
},
});
- },
+ }
);
export default router;
diff --git a/src/api/routes/gateway/index.ts b/src/api/routes/gateway/index.ts
index 9100d5ee0..4ef168181 100644
--- a/src/api/routes/gateway/index.ts
+++ b/src/api/routes/gateway/index.ts
@@ -36,7 +36,7 @@ router.get(
res.json({
url: endpointPublic || process.env.GATEWAY || "ws://localhost:3001",
});
- },
+ }
);
export default router;
diff --git a/src/api/routes/gifs/search.ts b/src/api/routes/gifs/search.ts
index 305a2a481..b46287530 100644
--- a/src/api/routes/gifs/search.ts
+++ b/src/api/routes/gifs/search.ts
@@ -36,9 +36,7 @@ router.get(
media_format: {
type: "string",
description: "Media format",
- values: Object.keys(TenorMediaTypes).filter((key) =>
- isNaN(Number(key)),
- ),
+ values: Object.keys(TenorMediaTypes).filter((key) => isNaN(Number(key))),
},
locale: {
type: "string",
@@ -65,13 +63,13 @@ router.get(
agent,
method: "get",
headers: { "Content-Type": "application/json" },
- },
+ }
);
const { results } = await response.json();
res.json(results.map(parseGifResult)).status(200);
- },
+ }
);
export default router;
diff --git a/src/api/routes/gifs/trending-gifs.ts b/src/api/routes/gifs/trending-gifs.ts
index 77a61efc9..c2aec7c33 100644
--- a/src/api/routes/gifs/trending-gifs.ts
+++ b/src/api/routes/gifs/trending-gifs.ts
@@ -31,9 +31,7 @@ router.get(
media_format: {
type: "string",
description: "Media format",
- values: Object.keys(TenorMediaTypes).filter((key) =>
- isNaN(Number(key)),
- ),
+ values: Object.keys(TenorMediaTypes).filter((key) => isNaN(Number(key))),
},
locale: {
type: "string",
@@ -60,13 +58,13 @@ router.get(
agent,
method: "get",
headers: { "Content-Type": "application/json" },
- },
+ }
);
const { results } = await response.json();
res.json(results.map(parseGifResult)).status(200);
- },
+ }
);
export default router;
diff --git a/src/api/routes/gifs/trending.ts b/src/api/routes/gifs/trending.ts
index fe7268429..ebf426299 100644
--- a/src/api/routes/gifs/trending.ts
+++ b/src/api/routes/gifs/trending.ts
@@ -17,12 +17,7 @@
*/
import { route } from "@spacebar/api";
-import {
- TenorCategoriesResults,
- TenorTrendingResults,
- getGifApiKey,
- parseGifResult,
-} from "@spacebar/util";
+import { TenorCategoriesResults, TenorTrendingResults, getGifApiKey, parseGifResult } from "@spacebar/util";
import { Request, Response, Router } from "express";
import fetch from "node-fetch";
import { ProxyAgent } from "proxy-agent";
@@ -55,28 +50,20 @@ router.get(
const agent = new ProxyAgent();
const [responseSource, trendGifSource] = await Promise.all([
- fetch(
- `https://g.tenor.com/v1/categories?locale=${locale}&key=${apiKey}`,
- {
- agent,
- method: "get",
- headers: { "Content-Type": "application/json" },
- },
- ),
- fetch(
- `https://g.tenor.com/v1/trending?locale=${locale}&key=${apiKey}`,
- {
- agent,
- method: "get",
- headers: { "Content-Type": "application/json" },
- },
- ),
+ fetch(`https://g.tenor.com/v1/categories?locale=${locale}&key=${apiKey}`, {
+ agent,
+ method: "get",
+ headers: { "Content-Type": "application/json" },
+ }),
+ fetch(`https://g.tenor.com/v1/trending?locale=${locale}&key=${apiKey}`, {
+ agent,
+ method: "get",
+ headers: { "Content-Type": "application/json" },
+ }),
]);
- const { tags } =
- (await responseSource.json()) as TenorCategoriesResults;
- const { results } =
- (await trendGifSource.json()) as TenorTrendingResults;
+ const { tags } = (await responseSource.json()) as TenorCategoriesResults;
+ const { results } = (await trendGifSource.json()) as TenorTrendingResults;
res.json({
categories: tags.map((x) => ({
@@ -85,7 +72,7 @@ router.get(
})),
gifs: [parseGifResult(results[0])],
}).status(200);
- },
+ }
);
export default router;
diff --git a/src/api/routes/guild-recommendations.ts b/src/api/routes/guild-recommendations.ts
index 876780df3..14f0dfbc4 100644
--- a/src/api/routes/guild-recommendations.ts
+++ b/src/api/routes/guild-recommendations.ts
@@ -39,9 +39,7 @@ router.get(
const showAllGuilds = Config.get().guild.discovery.showAllGuilds;
const genLoadId = (size: number) =>
- [...Array(size)]
- .map(() => Math.floor(Math.random() * 16).toString(16))
- .join("");
+ [...Array(size)].map(() => Math.floor(Math.random() * 16).toString(16)).join("");
const guilds = showAllGuilds
? await Guild.find({ take: Math.abs(Number(limit || 24)) })
@@ -53,7 +51,7 @@ router.get(
recommended_guilds: guilds,
load_id: `server_recs/${genLoadId(32)}`,
}).status(200);
- },
+ }
);
export default router;
diff --git a/src/api/routes/guilds/#guild_id/bans.ts b/src/api/routes/guilds/#guild_id/bans.ts
index 0776ab621..1fcc6806a 100644
--- a/src/api/routes/guilds/#guild_id/bans.ts
+++ b/src/api/routes/guilds/#guild_id/bans.ts
@@ -78,7 +78,7 @@ router.get(
});
return res.json(bansObj);
- },
+ }
);
router.get(
@@ -115,7 +115,7 @@ router.get(
delete ban.ip;
return res.json(ban);
- },
+ }
);
router.put(
@@ -139,14 +139,8 @@ router.put(
const { guild_id } = req.params;
const banned_user_id = req.params.user_id;
- if (
- req.user_id === banned_user_id &&
- banned_user_id === req.permission?.cache.guild?.owner_id
- )
- throw new HTTPError(
- "You are the guild owner, hence can't ban yourself",
- 403,
- );
+ if (req.user_id === banned_user_id && banned_user_id === req.permission?.cache.guild?.owner_id)
+ throw new HTTPError("You are the guild owner, hence can't ban yourself", 403);
if (req.permission?.cache.guild?.owner_id === banned_user_id)
throw new HTTPError("You can't ban the owner", 400);
@@ -175,7 +169,7 @@ router.put(
]);
return res.json(ban);
- },
+ }
);
router.put(
@@ -200,10 +194,7 @@ router.put(
const banned_user = await User.getPublicUser(req.params.user_id);
if (req.permission?.cache.guild?.owner_id === req.params.user_id)
- throw new HTTPError(
- "You are the guild owner, hence can't ban yourself",
- 403,
- );
+ throw new HTTPError("You are the guild owner, hence can't ban yourself", 403);
const ban = Ban.create({
user_id: req.params.user_id,
@@ -227,7 +218,7 @@ router.put(
]);
return res.json(ban);
- },
+ }
);
router.delete(
@@ -273,7 +264,7 @@ router.delete(
]);
return res.status(204).send();
- },
+ }
);
export default router;
diff --git a/src/api/routes/guilds/#guild_id/channels.ts b/src/api/routes/guilds/#guild_id/channels.ts
index 68208fee2..0ad3e252f 100644
--- a/src/api/routes/guilds/#guild_id/channels.ts
+++ b/src/api/routes/guilds/#guild_id/channels.ts
@@ -42,7 +42,7 @@ router.get(
const channels = await Channel.find({ where: { guild_id } });
res.json(channels);
- },
+ }
);
router.post(
@@ -67,13 +67,10 @@ router.post(
const { guild_id } = req.params;
const body = req.body as ChannelModifySchema;
- const channel = await Channel.createChannel(
- { ...body, guild_id },
- req.user_id,
- );
+ const channel = await Channel.createChannel({ ...body, guild_id }, req.user_id);
res.status(201).json(channel);
- },
+ }
);
router.patch(
@@ -102,9 +99,7 @@ router.patch(
});
// The channels not listed for this query
- const notMentioned = guild.channel_ordering.filter(
- (x) => !body.find((c) => c.id == x),
- );
+ const notMentioned = guild.channel_ordering.filter((x) => !body.find((c) => c.id == x));
const withParents = body.filter((x) => x.parent_id != undefined);
const withPositions = body.filter((x) => x.position != undefined);
@@ -124,7 +119,7 @@ router.patch(
channel_id: channel.id,
guild_id,
} as ChannelUpdateEvent);
- }),
+ })
);
// have to do the parents after the positions
@@ -141,10 +136,7 @@ router.patch(
]);
if (opt.lock_permissions)
- await Channel.update(
- { id: channel.id },
- { permission_overwrites: parent.permission_overwrites },
- );
+ await Channel.update({ id: channel.id }, { permission_overwrites: parent.permission_overwrites });
const parentPos = notMentioned.indexOf(parent.id);
notMentioned.splice(parentPos + 1, 0, channel.id);
@@ -156,16 +148,13 @@ router.patch(
channel_id: channel.id,
guild_id,
} as ChannelUpdateEvent);
- }),
+ })
);
- await Guild.update(
- { id: guild_id },
- { channel_ordering: notMentioned },
- );
+ await Guild.update({ id: guild_id }, { channel_ordering: notMentioned });
return res.sendStatus(204);
- },
+ }
);
export default router;
diff --git a/src/api/routes/guilds/#guild_id/delete.ts b/src/api/routes/guilds/#guild_id/delete.ts
index dee52c812..9f874a5cd 100644
--- a/src/api/routes/guilds/#guild_id/delete.ts
+++ b/src/api/routes/guilds/#guild_id/delete.ts
@@ -45,8 +45,7 @@ router.post(
where: { id: guild_id },
select: ["owner_id"],
});
- if (guild.owner_id !== req.user_id)
- throw new HTTPError("You are not the owner of this guild", 401);
+ if (guild.owner_id !== req.user_id) throw new HTTPError("You are not the owner of this guild", 401);
await Promise.all([
Guild.delete({ id: guild_id }), // this will also delete all guild related data
@@ -60,7 +59,7 @@ router.post(
]);
return res.sendStatus(204);
- },
+ }
);
export default router;
diff --git a/src/api/routes/guilds/#guild_id/discovery-requirements.ts b/src/api/routes/guilds/#guild_id/discovery-requirements.ts
index 741fa9b3d..6de571c5f 100644
--- a/src/api/routes/guilds/#guild_id/discovery-requirements.ts
+++ b/src/api/routes/guilds/#guild_id/discovery-requirements.ts
@@ -59,7 +59,7 @@ router.get(
},
minimum_size: 0,
});
- },
+ }
);
export default router;
diff --git a/src/api/routes/guilds/#guild_id/emojis.ts b/src/api/routes/guilds/#guild_id/emojis.ts
index ef28f989a..fa821cf0f 100644
--- a/src/api/routes/guilds/#guild_id/emojis.ts
+++ b/src/api/routes/guilds/#guild_id/emojis.ts
@@ -57,7 +57,7 @@ router.get(
});
return res.json(emojis);
- },
+ }
);
router.get(
@@ -86,7 +86,7 @@ router.get(
});
return res.json(emoji);
- },
+ }
);
router.post(
@@ -116,10 +116,7 @@ router.post(
});
const { maxEmojis } = Config.get().limits.guild;
- if (emoji_count >= maxEmojis)
- throw DiscordApiErrors.MAXIMUM_NUMBER_OF_EMOJIS_REACHED.withParams(
- maxEmojis,
- );
+ if (emoji_count >= maxEmojis) throw DiscordApiErrors.MAXIMUM_NUMBER_OF_EMOJIS_REACHED.withParams(maxEmojis);
if (body.require_colons == null) body.require_colons = true;
const user = await User.findOneOrFail({ where: { id: req.user_id } });
@@ -147,7 +144,7 @@ router.post(
} as GuildEmojisUpdateEvent);
return res.status(201).json(emoji);
- },
+ }
);
router.patch(
@@ -184,7 +181,7 @@ router.patch(
} as GuildEmojisUpdateEvent);
return res.json(emoji);
- },
+ }
);
router.delete(
@@ -216,7 +213,7 @@ router.delete(
} as GuildEmojisUpdateEvent);
res.sendStatus(204);
- },
+ }
);
export default router;
diff --git a/src/api/routes/guilds/#guild_id/index.ts b/src/api/routes/guilds/#guild_id/index.ts
index 839ec363f..87388abc9 100644
--- a/src/api/routes/guilds/#guild_id/index.ts
+++ b/src/api/routes/guilds/#guild_id/index.ts
@@ -58,17 +58,13 @@ router.get(
Guild.findOneOrFail({ where: { id: guild_id } }),
Member.findOne({ where: { guild_id: guild_id, id: req.user_id } }),
]);
- if (!member)
- throw new HTTPError(
- "You are not a member of the guild you are trying to access",
- 401,
- );
+ if (!member) throw new HTTPError("You are not a member of the guild you are trying to access", 401);
return res.send({
...guild,
joined_at: member?.joined_at,
});
- },
+ }
);
router.patch(
@@ -99,9 +95,7 @@ router.patch(
const permission = await getPermission(req.user_id, guild_id);
if (!rights.has("MANAGE_GUILDS") && !permission.has("MANAGE_GUILD"))
- throw DiscordApiErrors.MISSING_PERMISSIONS.withParams(
- "MANAGE_GUILDS",
- );
+ throw DiscordApiErrors.MISSING_PERMISSIONS.withParams("MANAGE_GUILDS");
const guild = await Guild.findOneOrFail({
where: { id: guild_id },
@@ -110,47 +104,29 @@ router.patch(
// TODO: guild update check image
- if (body.icon && body.icon != guild.icon)
- body.icon = await handleFile(`/icons/${guild_id}`, body.icon);
+ if (body.icon && body.icon != guild.icon) body.icon = await handleFile(`/icons/${guild_id}`, body.icon);
if (body.banner && body.banner !== guild.banner)
body.banner = await handleFile(`/banners/${guild_id}`, body.banner);
if (body.splash && body.splash !== guild.splash)
- body.splash = await handleFile(
- `/splashes/${guild_id}`,
- body.splash,
- );
+ body.splash = await handleFile(`/splashes/${guild_id}`, body.splash);
- if (
- body.discovery_splash &&
- body.discovery_splash !== guild.discovery_splash
- )
- body.discovery_splash = await handleFile(
- `/discovery-splashes/${guild_id}`,
- body.discovery_splash,
- );
+ if (body.discovery_splash && body.discovery_splash !== guild.discovery_splash)
+ body.discovery_splash = await handleFile(`/discovery-splashes/${guild_id}`, body.discovery_splash);
if (body.features) {
const diff = guild.features
.filter((x) => !body.features?.includes(x))
- .concat(
- body.features.filter((x) => !guild.features.includes(x)),
- );
+ .concat(body.features.filter((x) => !guild.features.includes(x)));
// TODO move these
- const MUTABLE_FEATURES = [
- "COMMUNITY",
- "INVITES_DISABLED",
- "DISCOVERABLE",
- ];
+ const MUTABLE_FEATURES = ["COMMUNITY", "INVITES_DISABLED", "DISCOVERABLE"];
for (const feature of diff) {
if (MUTABLE_FEATURES.includes(feature)) continue;
- throw SpacebarApiErrors.FEATURE_IS_IMMUTABLE.withParams(
- feature,
- );
+ throw SpacebarApiErrors.FEATURE_IS_IMMUTABLE.withParams(feature);
}
// for some reason, they don't update in the assign.
@@ -179,7 +155,7 @@ router.patch(
],
},
undefined,
- { skipPermissionCheck: true },
+ { skipPermissionCheck: true }
);
await Guild.insertChannelInOrder(guild.id, channel.id, 0, guild);
@@ -212,7 +188,7 @@ router.patch(
],
},
undefined,
- { skipPermissionCheck: true },
+ { skipPermissionCheck: true }
);
await Guild.insertChannelInOrder(guild.id, channel.id, 0, guild);
@@ -242,7 +218,7 @@ router.patch(
]);
return res.json(data);
- },
+ }
);
export default router;
diff --git a/src/api/routes/guilds/#guild_id/invites.ts b/src/api/routes/guilds/#guild_id/invites.ts
index a0ffa3f4f..5311a77f8 100644
--- a/src/api/routes/guilds/#guild_id/invites.ts
+++ b/src/api/routes/guilds/#guild_id/invites.ts
@@ -41,7 +41,7 @@ router.get(
});
return res.json(invites);
- },
+ }
);
export default router;
diff --git a/src/api/routes/guilds/#guild_id/member-verification.ts b/src/api/routes/guilds/#guild_id/member-verification.ts
index 2c39093e6..b30c379da 100644
--- a/src/api/routes/guilds/#guild_id/member-verification.ts
+++ b/src/api/routes/guilds/#guild_id/member-verification.ts
@@ -36,7 +36,7 @@ router.get(
message: "Unknown Guild Member Verification Form",
code: 10068,
});
- },
+ }
);
export default router;
diff --git a/src/api/routes/guilds/#guild_id/members/#member_id/index.ts b/src/api/routes/guilds/#guild_id/members/#member_id/index.ts
index c168f2dc5..5dd6f2b8b 100644
--- a/src/api/routes/guilds/#guild_id/members/#member_id/index.ts
+++ b/src/api/routes/guilds/#guild_id/members/#member_id/index.ts
@@ -62,13 +62,9 @@ router.get(
select: {
index: true,
// only grab public member props
- ...Object.fromEntries(
- PublicMemberProjection.map((x) => [x, true]),
- ),
+ ...Object.fromEntries(PublicMemberProjection.map((x) => [x, true])),
// and public user props
- user: Object.fromEntries(
- PublicUserProjection.map((x) => [x, true]),
- ),
+ user: Object.fromEntries(PublicUserProjection.map((x) => [x, true])),
roles: {
id: true,
},
@@ -80,7 +76,7 @@ router.get(
user: member.user.toPublicUser(),
roles: member.roles.map((x) => x.id),
});
- },
+ }
);
router.patch(
@@ -104,8 +100,7 @@ router.patch(
}),
async (req: Request, res: Response) => {
const { guild_id } = req.params;
- const member_id =
- req.params.member_id === "@me" ? req.user_id : req.params.member_id;
+ const member_id = req.params.member_id === "@me" ? req.user_id : req.params.member_id;
const body = req.body as MemberChangeSchema;
const member = await Member.findOneOrFail({
@@ -128,19 +123,13 @@ router.patch(
}
}
- if (
- ("bio" in body || "avatar" in body) &&
- req.params.member_id != "@me"
- ) {
+ if (("bio" in body || "avatar" in body) && req.params.member_id != "@me") {
const rights = await getRights(req.user_id);
rights.hasThrow("MANAGE_USERS");
}
if (body.avatar)
- body.avatar = await handleFile(
- `/guilds/${guild_id}/users/${member_id}/avatars`,
- body.avatar as string,
- );
+ body.avatar = await handleFile(`/guilds/${guild_id}/users/${member_id}/avatars`, body.avatar as string);
member.assign(body);
@@ -152,8 +141,7 @@ router.patch(
body.roles = body.roles || [];
body.roles.filter((x) => !!x);
- if (body.roles.indexOf(everyone.id) === -1)
- body.roles.push(everyone.id);
+ if (body.roles.indexOf(everyone.id) === -1) body.roles.push(everyone.id);
// foreign key constraint will fail if role doesn't exist
member.roles = body.roles.map((x) => Role.create({ id: x }));
}
@@ -170,7 +158,7 @@ router.patch(
} as GuildMemberUpdateEvent);
res.json(member);
- },
+ }
);
router.put(
@@ -222,7 +210,7 @@ router.put(
await Member.addToGuild(member_id, guild_id);
res.send({ ...guild, emojis: emoji, roles: roles, stickers: stickers });
- },
+ }
);
router.delete(
@@ -249,7 +237,7 @@ router.delete(
await Member.removeFromGuild(member_id, guild_id);
res.sendStatus(204);
- },
+ }
);
export default router;
diff --git a/src/api/routes/guilds/#guild_id/members/#member_id/nick.ts b/src/api/routes/guilds/#guild_id/members/#member_id/nick.ts
index 7b8e44d3d..8162f36bf 100644
--- a/src/api/routes/guilds/#guild_id/members/#member_id/nick.ts
+++ b/src/api/routes/guilds/#guild_id/members/#member_id/nick.ts
@@ -49,7 +49,7 @@ router.patch(
await Member.changeNickname(member_id, guild_id, req.body.nick);
res.status(200).send();
- },
+ }
);
export default router;
diff --git a/src/api/routes/guilds/#guild_id/members/#member_id/roles/#role_id/index.ts b/src/api/routes/guilds/#guild_id/members/#member_id/roles/#role_id/index.ts
index 46dd70bb7..da28e312a 100644
--- a/src/api/routes/guilds/#guild_id/members/#member_id/roles/#role_id/index.ts
+++ b/src/api/routes/guilds/#guild_id/members/#member_id/roles/#role_id/index.ts
@@ -38,7 +38,7 @@ router.delete(
await Member.removeRole(member_id, guild_id, role_id);
res.sendStatus(204);
- },
+ }
);
router.put(
@@ -55,7 +55,7 @@ router.put(
await Member.addRole(member_id, guild_id, role_id);
res.sendStatus(204);
- },
+ }
);
export default router;
diff --git a/src/api/routes/guilds/#guild_id/members/index.ts b/src/api/routes/guilds/#guild_id/members/index.ts
index 9260308d1..8ea590d0d 100644
--- a/src/api/routes/guilds/#guild_id/members/index.ts
+++ b/src/api/routes/guilds/#guild_id/members/index.ts
@@ -33,8 +33,7 @@ router.get(
query: {
limit: {
type: "number",
- description:
- "max number of members to return (1-1000). default 1",
+ description: "max number of members to return (1-1000). default 1",
},
after: {
type: "string",
@@ -52,8 +51,7 @@ router.get(
async (req: Request, res: Response) => {
const { guild_id } = req.params;
const limit = Number(req.query.limit) || 1;
- if (limit > 1000 || limit < 1)
- throw new HTTPError("Limit must be between 1 and 1000");
+ if (limit > 1000 || limit < 1) throw new HTTPError("Limit must be between 1 and 1000");
const after = `${req.query.after}`;
const query = after ? { id: MoreThan(after) } : {};
@@ -67,7 +65,7 @@ router.get(
});
return res.json(members);
- },
+ }
);
export default router;
diff --git a/src/api/routes/guilds/#guild_id/messages/search.ts b/src/api/routes/guilds/#guild_id/messages/search.ts
index 637d1e438..aec36f857 100644
--- a/src/api/routes/guilds/#guild_id/messages/search.ts
+++ b/src/api/routes/guilds/#guild_id/messages/search.ts
@@ -54,14 +54,10 @@ router.get(
} = req.query;
const parsedLimit = Number(limit) || 50;
- if (parsedLimit < 1 || parsedLimit > 100)
- throw new HTTPError("limit must be between 1 and 100", 422);
+ if (parsedLimit < 1 || parsedLimit > 100) throw new HTTPError("limit must be between 1 and 100", 422);
if (sort_order) {
- if (
- typeof sort_order != "string" ||
- ["desc", "asc"].indexOf(sort_order) == -1
- )
+ if (typeof sort_order != "string" || ["desc", "asc"].indexOf(sort_order) == -1)
throw FieldErrors({
sort_order: {
message: "Value must be one of ('desc', 'asc').",
@@ -70,20 +66,13 @@ router.get(
}); // todo this is wrong
}
- const permissions = await getPermission(
- req.user_id,
- req.params.guild_id,
- channel_id as string | undefined,
- );
+ const permissions = await getPermission(req.user_id, req.params.guild_id, channel_id as string | undefined);
permissions.hasThrow("VIEW_CHANNEL");
- if (!permissions.has("READ_MESSAGE_HISTORY"))
- return res.json({ messages: [], total_results: 0 });
+ if (!permissions.has("READ_MESSAGE_HISTORY")) return res.json({ messages: [], total_results: 0 });
const query: FindManyOptions = {
order: {
- timestamp: sort_order
- ? (sort_order.toUpperCase() as "ASC" | "DESC")
- : "DESC",
+ timestamp: sort_order ? (sort_order.toUpperCase() as "ASC" | "DESC") : "DESC",
},
take: parsedLimit || 0,
where: {
@@ -114,16 +103,8 @@ router.get(
const ids = [];
for (const channel of channels) {
- const perm = await getPermission(
- req.user_id,
- req.params.guild_id,
- channel.id,
- );
- if (
- !perm.has("VIEW_CHANNEL") ||
- !perm.has("READ_MESSAGE_HISTORY")
- )
- continue;
+ const perm = await getPermission(req.user_id, req.params.guild_id, channel.id);
+ if (!perm.has("VIEW_CHANNEL") || !perm.has("READ_MESSAGE_HISTORY")) continue;
ids.push(channel.id);
}
@@ -170,7 +151,7 @@ router.get(
messages: messagesDto,
total_results: messages.length,
});
- },
+ }
);
export default router;
diff --git a/src/api/routes/guilds/#guild_id/profile/index.ts b/src/api/routes/guilds/#guild_id/profile/index.ts
index 605262597..e34136a42 100644
--- a/src/api/routes/guilds/#guild_id/profile/index.ts
+++ b/src/api/routes/guilds/#guild_id/profile/index.ts
@@ -57,10 +57,7 @@ router.patch(
});
if (body.banner)
- body.banner = await handleFile(
- `/guilds/${guild_id}/users/${req.user_id}/avatars`,
- body.banner as string,
- );
+ body.banner = await handleFile(`/guilds/${guild_id}/users/${req.user_id}/avatars`, body.banner as string);
member = await OrmUtils.mergeDeep(member, body);
@@ -74,7 +71,7 @@ router.patch(
} as GuildMemberUpdateEvent);
res.json(member);
- },
+ }
);
export default router;
diff --git a/src/api/routes/guilds/#guild_id/prune.ts b/src/api/routes/guilds/#guild_id/prune.ts
index 2c77340d6..7fa31ed20 100644
--- a/src/api/routes/guilds/#guild_id/prune.ts
+++ b/src/api/routes/guilds/#guild_id/prune.ts
@@ -23,12 +23,7 @@ import { IsNull, LessThan } from "typeorm";
const router = Router();
//Returns all inactive members, respecting role hierarchy
-const inactiveMembers = async (
- guild_id: string,
- user_id: string,
- days: number,
- roles: string[] = [],
-) => {
+const inactiveMembers = async (guild_id: string, user_id: string, days: number, roles: string[] = []) => {
const date = new Date();
date.setDate(date.getDate() - days);
//Snowflake should have `generateFromTime` method? Or similar?
@@ -55,9 +50,7 @@ const inactiveMembers = async (
//I'm sure I can do this in the above db query ( and it would probably be better to do so ), but oh well.
if (roles.length && members.length)
- members = members.filter((user) =>
- user.roles?.some((role) => roles.includes(role.id)),
- );
+ members = members.filter((user) => user.roles?.some((role) => roles.includes(role.id)));
const me = await Member.findOneOrFail({
where: { id: user_id, guild_id },
@@ -73,8 +66,8 @@ const inactiveMembers = async (
member.roles?.some(
(role) =>
role.position < myHighestRole || //roles higher than me can't be kicked
- me.id === guild.owner_id, //owner can kick anyone
- ),
+ me.id === guild.owner_id //owner can kick anyone
+ )
);
return members;
@@ -95,15 +88,10 @@ router.get(
let roles = req.query.include_roles;
if (typeof roles === "string") roles = [roles]; //express will return array otherwise
- const members = await inactiveMembers(
- req.params.guild_id,
- req.user_id,
- days,
- roles as string[],
- );
+ const members = await inactiveMembers(req.params.guild_id, req.user_id, days, roles as string[]);
res.send({ pruned: members.length });
- },
+ }
);
router.post(
@@ -127,19 +115,12 @@ router.post(
if (typeof roles === "string") roles = [roles];
const { guild_id } = req.params;
- const members = await inactiveMembers(
- guild_id,
- req.user_id,
- days,
- roles as string[],
- );
+ const members = await inactiveMembers(guild_id, req.user_id, days, roles as string[]);
- await Promise.all(
- members.map((x) => Member.removeFromGuild(x.id, guild_id)),
- );
+ await Promise.all(members.map((x) => Member.removeFromGuild(x.id, guild_id)));
res.send({ purged: members.length });
- },
+ }
);
export default router;
diff --git a/src/api/routes/guilds/#guild_id/regions.ts b/src/api/routes/guilds/#guild_id/regions.ts
index b0ae0602d..e40a73e29 100644
--- a/src/api/routes/guilds/#guild_id/regions.ts
+++ b/src/api/routes/guilds/#guild_id/regions.ts
@@ -38,13 +38,8 @@ router.get(
const { guild_id } = req.params;
const guild = await Guild.findOneOrFail({ where: { id: guild_id } });
//TODO we should use an enum for guild's features and not hardcoded strings
- return res.json(
- await getVoiceRegions(
- getIpAdress(req),
- guild.features.includes("VIP_REGIONS"),
- ),
- );
- },
+ return res.json(await getVoiceRegions(getIpAdress(req), guild.features.includes("VIP_REGIONS")));
+ }
);
export default router;
diff --git a/src/api/routes/guilds/#guild_id/roles/#role_id/index.ts b/src/api/routes/guilds/#guild_id/roles/#role_id/index.ts
index ea1a782a6..ae10addfa 100644
--- a/src/api/routes/guilds/#guild_id/roles/#role_id/index.ts
+++ b/src/api/routes/guilds/#guild_id/roles/#role_id/index.ts
@@ -53,7 +53,7 @@ router.get(
where: { guild_id, id: role_id },
});
return res.json(role);
- },
+ }
);
router.delete(
@@ -75,8 +75,7 @@ router.delete(
}),
async (req: Request, res: Response) => {
const { guild_id, role_id } = req.params;
- if (role_id === guild_id)
- throw new HTTPError("You can't delete the @everyone role");
+ if (role_id === guild_id) throw new HTTPError("You can't delete the @everyone role");
await Promise.all([
Role.delete({
@@ -94,7 +93,7 @@ router.delete(
]);
res.sendStatus(204);
- },
+ }
);
// TODO: check role hierarchy
@@ -123,11 +122,7 @@ router.patch(
const { role_id, guild_id } = req.params;
const body = req.body as RoleModifySchema;
- if (body.icon && body.icon.length)
- body.icon = await handleFile(
- `/role-icons/${role_id}`,
- body.icon as string,
- );
+ if (body.icon && body.icon.length) body.icon = await handleFile(`/role-icons/${role_id}`, body.icon as string);
else body.icon = undefined;
const role = await Role.findOneOrFail({
@@ -135,10 +130,7 @@ router.patch(
});
role.assign({
...body,
- permissions: String(
- (req.permission?.bitfield || 0n) &
- BigInt(body.permissions || "0"),
- ),
+ permissions: String((req.permission?.bitfield || 0n) & BigInt(body.permissions || "0")),
});
await Promise.all([
@@ -154,7 +146,7 @@ router.patch(
]);
res.json(role);
- },
+ }
);
export default router;
diff --git a/src/api/routes/guilds/#guild_id/roles/#role_id/members.ts b/src/api/routes/guilds/#guild_id/roles/#role_id/members.ts
index 539cd5d87..a34908a66 100644
--- a/src/api/routes/guilds/#guild_id/roles/#role_id/members.ts
+++ b/src/api/routes/guilds/#guild_id/roles/#role_id/members.ts
@@ -22,41 +22,31 @@ import { route } from "@spacebar/api";
const router = Router();
-router.patch(
- "/",
- route({ permission: "MANAGE_ROLES" }),
- async (req: Request, res: Response) => {
- // Payload is JSON containing a list of member_ids, the new list of members to have the role
- const { guild_id, role_id } = req.params;
- const { member_ids } = req.body;
+router.patch("/", route({ permission: "MANAGE_ROLES" }), async (req: Request, res: Response) => {
+ // Payload is JSON containing a list of member_ids, the new list of members to have the role
+ const { guild_id, role_id } = req.params;
+ const { member_ids } = req.body;
- // don't mess with @everyone
- if (role_id == guild_id) throw DiscordApiErrors.INVALID_ROLE;
+ // don't mess with @everyone
+ if (role_id == guild_id) throw DiscordApiErrors.INVALID_ROLE;
- const members = await Member.find({
- where: { guild_id },
- relations: ["roles"],
- });
+ const members = await Member.find({
+ where: { guild_id },
+ relations: ["roles"],
+ });
- const [add, remove] = partition(
- members,
- (member) =>
- member_ids.includes(member.id) &&
- !member.roles.map((role) => role.id).includes(role_id),
- );
+ const [add, remove] = partition(
+ members,
+ (member) => member_ids.includes(member.id) && !member.roles.map((role) => role.id).includes(role_id)
+ );
- // TODO (erkin): have a bulk add/remove function that adds the roles in a single txn
- await Promise.all([
- ...add.map((member) =>
- Member.addRole(member.id, guild_id, role_id),
- ),
- ...remove.map((member) =>
- Member.removeRole(member.id, guild_id, role_id),
- ),
- ]);
+ // TODO (erkin): have a bulk add/remove function that adds the roles in a single txn
+ await Promise.all([
+ ...add.map((member) => Member.addRole(member.id, guild_id, role_id)),
+ ...remove.map((member) => Member.removeRole(member.id, guild_id, role_id)),
+ ]);
- res.sendStatus(204);
- },
-);
+ res.sendStatus(204);
+});
export default router;
diff --git a/src/api/routes/guilds/#guild_id/roles/index.ts b/src/api/routes/guilds/#guild_id/roles/index.ts
index e2c34e7f3..1e60c2cf8 100644
--- a/src/api/routes/guilds/#guild_id/roles/index.ts
+++ b/src/api/routes/guilds/#guild_id/roles/index.ts
@@ -68,8 +68,7 @@ router.post(
const role_count = await Role.count({ where: { guild_id } });
const { maxRoles } = Config.get().limits.guild;
- if (role_count > maxRoles)
- throw DiscordApiErrors.MAXIMUM_ROLES.withParams(maxRoles);
+ if (role_count > maxRoles) throw DiscordApiErrors.MAXIMUM_ROLES.withParams(maxRoles);
const role = Role.create({
// values before ...body are default and can be overriden
@@ -80,10 +79,7 @@ router.post(
...body,
guild_id: guild_id,
managed: false,
- permissions: String(
- (req.permission?.bitfield || 0n) &
- BigInt(body.permissions || "0"),
- ),
+ permissions: String((req.permission?.bitfield || 0n) & BigInt(body.permissions || "0")),
tags: undefined,
icon: undefined,
unicode_emoji: undefined,
@@ -112,7 +108,7 @@ router.post(
]);
res.json(role);
- },
+ }
);
router.patch(
@@ -136,11 +132,7 @@ router.patch(
const { guild_id } = req.params;
const body = req.body as RolePositionUpdateSchema;
- await Promise.all(
- body.map(async (x) =>
- Role.update({ guild_id, id: x.id }, { position: x.position }),
- ),
- );
+ await Promise.all(body.map(async (x) => Role.update({ guild_id, id: x.id }, { position: x.position })));
const roles = await Role.find({
where: body.map((x) => ({ id: x.id, guild_id })),
@@ -155,12 +147,12 @@ router.patch(
guild_id,
role: x,
},
- } as GuildRoleUpdateEvent),
- ),
+ } as GuildRoleUpdateEvent)
+ )
);
res.json(roles);
- },
+ }
);
export default router;
diff --git a/src/api/routes/guilds/#guild_id/stickers.ts b/src/api/routes/guilds/#guild_id/stickers.ts
index 88f9a40e8..92b09aabc 100644
--- a/src/api/routes/guilds/#guild_id/stickers.ts
+++ b/src/api/routes/guilds/#guild_id/stickers.ts
@@ -50,7 +50,7 @@ router.get(
await Member.IsInGuildOrFail(req.user_id, guild_id);
res.json(await Sticker.find({ where: { guild_id } }));
- },
+ }
);
const bodyParser = multer({
@@ -102,7 +102,7 @@ router.post(
await sendStickerUpdateEvent(guild_id);
res.json(sticker);
- },
+ }
);
function getStickerFormat(mime_type: string) {
@@ -116,9 +116,7 @@ function getStickerFormat(mime_type: string) {
case "image/gif":
return StickerFormatType.GIF;
default:
- throw new HTTPError(
- "invalid sticker format: must be png, apng or lottie",
- );
+ throw new HTTPError("invalid sticker format: must be png, apng or lottie");
}
}
@@ -141,9 +139,9 @@ router.get(
res.json(
await Sticker.findOneOrFail({
where: { guild_id, id: sticker_id },
- }),
+ })
);
- },
+ }
);
router.patch(
@@ -175,7 +173,7 @@ router.patch(
await sendStickerUpdateEvent(guild_id);
return res.json(sticker);
- },
+ }
);
async function sendStickerUpdateEvent(guild_id: string) {
@@ -207,7 +205,7 @@ router.delete(
await sendStickerUpdateEvent(guild_id);
return res.sendStatus(204);
- },
+ }
);
export default router;
diff --git a/src/api/routes/guilds/#guild_id/templates.ts b/src/api/routes/guilds/#guild_id/templates.ts
index 85ae0ac90..ae40377ea 100644
--- a/src/api/routes/guilds/#guild_id/templates.ts
+++ b/src/api/routes/guilds/#guild_id/templates.ts
@@ -57,7 +57,7 @@ router.get(
});
return res.json(templates);
- },
+ }
);
router.post(
@@ -102,7 +102,7 @@ router.post(
}).save();
res.json(template);
- },
+ }
);
router.delete(
@@ -123,7 +123,7 @@ router.delete(
});
res.json(template);
- },
+ }
);
router.put(
@@ -148,7 +148,7 @@ router.put(
}).save();
res.json(template);
- },
+ }
);
router.patch(
@@ -173,7 +173,7 @@ router.patch(
}).save();
res.json(template);
- },
+ }
);
export default router;
diff --git a/src/api/routes/guilds/#guild_id/vanity-url.ts b/src/api/routes/guilds/#guild_id/vanity-url.ts
index a64ae2c91..1cfa9883d 100644
--- a/src/api/routes/guilds/#guild_id/vanity-url.ts
+++ b/src/api/routes/guilds/#guild_id/vanity-url.ts
@@ -17,13 +17,7 @@
*/
import { route } from "@spacebar/api";
-import {
- Channel,
- ChannelType,
- Guild,
- Invite,
- VanityUrlSchema,
-} from "@spacebar/util";
+import { Channel, ChannelType, Guild, Invite, VanityUrlSchema } from "@spacebar/util";
import { Request, Response, Router } from "express";
import { HTTPError } from "lambert-server";
@@ -64,11 +58,9 @@ router.get(
});
if (!invite || invite.length == 0) return res.json({ code: null });
- return res.json(
- invite.map((x) => ({ code: x.code, uses: x.uses })),
- );
+ return res.json(invite.map((x) => ({ code: x.code, uses: x.uses })));
}
- },
+ }
);
router.patch(
@@ -94,11 +86,9 @@ router.patch(
const code = body.code?.replace(InviteRegex, "");
const guild = await Guild.findOneOrFail({ where: { id: guild_id } });
- if (!guild.features.includes("VANITY_URL"))
- throw new HTTPError("Your guild doesn't support vanity urls");
+ if (!guild.features.includes("VANITY_URL")) throw new HTTPError("Your guild doesn't support vanity urls");
- if (!code || code.length === 0)
- throw new HTTPError("Code cannot be null or empty");
+ if (!code || code.length === 0) throw new HTTPError("Code cannot be null or empty");
const invite = await Invite.findOne({ where: { code } });
if (invite) throw new HTTPError("Invite already exists");
@@ -112,7 +102,7 @@ router.patch(
{ guild_id },
{
code: code,
- },
+ }
);
return res.json({ code });
@@ -132,7 +122,7 @@ router.patch(
}).save();
return res.json({ code: code });
- },
+ }
);
export default router;
diff --git a/src/api/routes/guilds/#guild_id/voice-states/#user_id/index.ts b/src/api/routes/guilds/#guild_id/voice-states/#user_id/index.ts
index 60c69075b..c13d053b0 100644
--- a/src/api/routes/guilds/#guild_id/voice-states/#user_id/index.ts
+++ b/src/api/routes/guilds/#guild_id/voice-states/#user_id/index.ts
@@ -52,14 +52,9 @@ router.patch(
async (req: Request, res: Response) => {
const body = req.body as VoiceStateUpdateSchema;
const { guild_id } = req.params;
- const user_id =
- req.params.user_id === "@me" ? req.user_id : req.params.user_id;
+ const user_id = req.params.user_id === "@me" ? req.user_id : req.params.user_id;
- const perms = await getPermission(
- req.user_id,
- guild_id,
- body.channel_id,
- );
+ const perms = await getPermission(req.user_id, guild_id, body.channel_id);
/*
From https://discord.com/developers/docs/resources/guild#modify-current-user-voice-state
@@ -98,7 +93,7 @@ router.patch(
} as VoiceStateUpdateEvent),
]);
return res.sendStatus(204);
- },
+ }
);
export default router;
diff --git a/src/api/routes/guilds/#guild_id/welcome-screen.ts b/src/api/routes/guilds/#guild_id/welcome-screen.ts
index 81000b4bd..74565a13d 100644
--- a/src/api/routes/guilds/#guild_id/welcome-screen.ts
+++ b/src/api/routes/guilds/#guild_id/welcome-screen.ts
@@ -17,12 +17,7 @@
*/
import { route } from "@spacebar/api";
-import {
- Channel,
- Guild,
- GuildUpdateWelcomeScreenSchema,
- Member,
-} from "@spacebar/util";
+import { Channel, Guild, GuildUpdateWelcomeScreenSchema, Member } from "@spacebar/util";
import { Request, Response, Router } from "express";
const router: Router = Router();
@@ -46,7 +41,7 @@ router.get(
await Member.IsInGuildOrFail(req.user_id, guild_id);
res.json(guild.welcome_screen);
- },
+ }
);
router.patch(
@@ -70,11 +65,9 @@ router.patch(
const guild = await Guild.findOneOrFail({ where: { id: guild_id } });
- if (body.enabled != undefined)
- guild.welcome_screen.enabled = body.enabled;
+ if (body.enabled != undefined) guild.welcome_screen.enabled = body.enabled;
- if (body.description != undefined)
- guild.welcome_screen.description = body.description;
+ if (body.description != undefined) guild.welcome_screen.description = body.description;
if (body.welcome_channels != undefined) {
// Ensure channels exist within the guild
@@ -83,8 +76,8 @@ router.patch(
Channel.findOneOrFail({
where: { id: channel_id, guild_id },
select: { id: true },
- }),
- ) || [],
+ })
+ ) || []
);
guild.welcome_screen.welcome_channels = body.welcome_channels;
}
@@ -92,7 +85,7 @@ router.patch(
await guild.save();
res.status(200).json(guild.welcome_screen);
- },
+ }
);
export default router;
diff --git a/src/api/routes/guilds/#guild_id/widget.json.ts b/src/api/routes/guilds/#guild_id/widget.json.ts
index 39f498049..c2450699d 100644
--- a/src/api/routes/guilds/#guild_id/widget.json.ts
+++ b/src/api/routes/guilds/#guild_id/widget.json.ts
@@ -81,10 +81,8 @@ router.get(
// Only return channels where @everyone has the CONNECT permission
if (
doc.permission_overwrites === undefined ||
- Permissions.channelPermission(
- doc.permission_overwrites,
- Permissions.FLAGS.CONNECT,
- ) === Permissions.FLAGS.CONNECT
+ Permissions.channelPermission(doc.permission_overwrites, Permissions.FLAGS.CONNECT) ===
+ Permissions.FLAGS.CONNECT
) {
channels.push({
id: doc.id,
@@ -110,7 +108,7 @@ router.get(
res.set("Cache-Control", "public, max-age=300");
return res.json(data);
- },
+ }
);
export default router;
diff --git a/src/api/routes/guilds/#guild_id/widget.png.ts b/src/api/routes/guilds/#guild_id/widget.png.ts
index c9ba8afce..c50807098 100644
--- a/src/api/routes/guilds/#guild_id/widget.png.ts
+++ b/src/api/routes/guilds/#guild_id/widget.png.ts
@@ -57,15 +57,8 @@ router.get(
// Fetch parameter
const style = req.query.style?.toString() || "shield";
- if (
- !["shield", "banner1", "banner2", "banner3", "banner4"].includes(
- style,
- )
- ) {
- throw new HTTPError(
- "Value must be one of ('shield', 'banner1', 'banner2', 'banner3', 'banner4').",
- 400,
- );
+ if (!["shield", "banner1", "banner2", "banner3", "banner4"].includes(style)) {
+ throw new HTTPError("Value must be one of ('shield', 'banner1', 'banner2', 'banner3', 'banner4').", 400);
}
// Setup canvas
@@ -74,17 +67,7 @@ router.get(
const sizeOf = require("image-size");
// TODO: Widget style templates need Spacebar branding
- const source = path.join(
- __dirname,
- "..",
- "..",
- "..",
- "..",
- "..",
- "assets",
- "widget",
- `${style}.png`,
- );
+ const source = path.join(__dirname, "..", "..", "..", "..", "..", "assets", "widget", `${style}.png`);
if (!fs.existsSync(source)) {
throw new HTTPError("Widget template does not exist.", 400);
}
@@ -100,99 +83,32 @@ router.get(
switch (style) {
case "shield":
ctx.textAlign = "center";
- await drawText(
- ctx,
- 73,
- 13,
- "#FFFFFF",
- "thin 10px Verdana",
- presence,
- );
+ await drawText(ctx, 73, 13, "#FFFFFF", "thin 10px Verdana", presence);
break;
case "banner1":
if (icon) await drawIcon(ctx, 20, 27, 50, icon);
- await drawText(
- ctx,
- 83,
- 51,
- "#FFFFFF",
- "12px Verdana",
- name,
- 22,
- );
- await drawText(
- ctx,
- 83,
- 66,
- "#C9D2F0FF",
- "thin 11px Verdana",
- presence,
- );
+ await drawText(ctx, 83, 51, "#FFFFFF", "12px Verdana", name, 22);
+ await drawText(ctx, 83, 66, "#C9D2F0FF", "thin 11px Verdana", presence);
break;
case "banner2":
if (icon) await drawIcon(ctx, 13, 19, 36, icon);
- await drawText(
- ctx,
- 62,
- 34,
- "#FFFFFF",
- "12px Verdana",
- name,
- 15,
- );
- await drawText(
- ctx,
- 62,
- 49,
- "#C9D2F0FF",
- "thin 11px Verdana",
- presence,
- );
+ await drawText(ctx, 62, 34, "#FFFFFF", "12px Verdana", name, 15);
+ await drawText(ctx, 62, 49, "#C9D2F0FF", "thin 11px Verdana", presence);
break;
case "banner3":
if (icon) await drawIcon(ctx, 20, 20, 50, icon);
- await drawText(
- ctx,
- 83,
- 44,
- "#FFFFFF",
- "12px Verdana",
- name,
- 27,
- );
- await drawText(
- ctx,
- 83,
- 58,
- "#C9D2F0FF",
- "thin 11px Verdana",
- presence,
- );
+ await drawText(ctx, 83, 44, "#FFFFFF", "12px Verdana", name, 27);
+ await drawText(ctx, 83, 58, "#C9D2F0FF", "thin 11px Verdana", presence);
break;
case "banner4":
if (icon) await drawIcon(ctx, 21, 136, 50, icon);
- await drawText(
- ctx,
- 84,
- 156,
- "#FFFFFF",
- "13px Verdana",
- name,
- 27,
- );
- await drawText(
- ctx,
- 84,
- 171,
- "#C9D2F0FF",
- "thin 12px Verdana",
- presence,
- );
+ await drawText(ctx, 84, 156, "#FFFFFF", "13px Verdana", name, 27);
+ await drawText(ctx, 84, 171, "#C9D2F0FF", "thin 12px Verdana", presence);
break;
default:
throw new HTTPError(
"Value must be one of ('shield', 'banner1', 'banner2', 'banner3', 'banner4').",
- 400,
+ 400
);
}
@@ -201,16 +117,10 @@ router.get(
res.set("Content-Type", "image/png");
res.set("Cache-Control", "public, max-age=3600");
return res.send(buffer);
- },
+ }
);
-async function drawIcon(
- canvas: any,
- x: number,
- y: number,
- scale: number,
- icon: string,
-) {
+async function drawIcon(canvas: any, x: number, y: number, scale: number, icon: string) {
const img = new (require("canvas").Image)();
img.src = icon;
@@ -234,12 +144,11 @@ async function drawText(
color: string,
font: string,
text: string,
- maxcharacters?: number,
+ maxcharacters?: number
) {
canvas.fillStyle = color;
canvas.font = font;
- if (text.length > (maxcharacters || 0) && maxcharacters)
- text = text.slice(0, maxcharacters) + "...";
+ if (text.length > (maxcharacters || 0) && maxcharacters) text = text.slice(0, maxcharacters) + "...";
canvas.fillText(text, x, y);
}
diff --git a/src/api/routes/guilds/#guild_id/widget.ts b/src/api/routes/guilds/#guild_id/widget.ts
index cae0d6bec..17667f29e 100644
--- a/src/api/routes/guilds/#guild_id/widget.ts
+++ b/src/api/routes/guilds/#guild_id/widget.ts
@@ -44,7 +44,7 @@ router.get(
enabled: guild.widget_enabled || false,
channel_id: guild.widget_channel_id || null,
});
- },
+ }
);
// https://discord.com/developers/docs/resources/guild#modify-guild-widget
@@ -74,12 +74,12 @@ router.patch(
{
widget_enabled: body.enabled,
widget_channel_id: body.channel_id,
- },
+ }
);
// Widget invite for the widget_channel_id gets created as part of the /guilds/{guild.id}/widget.json request
return res.json(body);
- },
+ }
);
export default router;
diff --git a/src/api/routes/guilds/index.ts b/src/api/routes/guilds/index.ts
index 545beb185..a0d2f33d0 100644
--- a/src/api/routes/guilds/index.ts
+++ b/src/api/routes/guilds/index.ts
@@ -17,14 +17,7 @@
*/
import { route } from "@spacebar/api";
-import {
- Config,
- DiscordApiErrors,
- Guild,
- GuildCreateSchema,
- Member,
- getRights,
-} from "@spacebar/util";
+import { Config, DiscordApiErrors, Guild, GuildCreateSchema, Member, getRights } from "@spacebar/util";
import { Request, Response, Router } from "express";
const router: Router = Router();
@@ -73,7 +66,7 @@ router.post(
await Member.addToGuild(req.user_id, guild.id);
res.status(201).json(guild);
- },
+ }
);
export default router;
diff --git a/src/api/routes/guilds/templates/index.ts b/src/api/routes/guilds/templates/index.ts
index 8f718a21c..693c8dcb4 100644
--- a/src/api/routes/guilds/templates/index.ts
+++ b/src/api/routes/guilds/templates/index.ts
@@ -47,13 +47,11 @@ router.get(
},
}),
async (req: Request, res: Response) => {
- const { allowDiscordTemplates, allowRaws, enabled } =
- Config.get().templates;
+ const { allowDiscordTemplates, allowRaws, enabled } = Config.get().templates;
if (!enabled)
res.json({
code: 403,
- message:
- "Template creation & usage is disabled on this instance.",
+ message: "Template creation & usage is disabled on this instance.",
}).sendStatus(403);
const { code } = req.params;
@@ -63,8 +61,7 @@ router.get(
return res
.json({
code: 403,
- message:
- "Discord templates cannot be used on this instance.",
+ message: "Discord templates cannot be used on this instance.",
})
.sendStatus(403);
const discordTemplateID = code.split("discord:", 2)[1];
@@ -74,7 +71,7 @@ router.get(
{
method: "get",
headers: { "Content-Type": "application/json" },
- },
+ }
);
return res.json(await discordTemplateData.json());
}
@@ -95,75 +92,70 @@ router.get(
where: { code: code },
});
res.json(template);
- },
+ }
);
-router.post(
- "/:code",
- route({ requestBody: "GuildTemplateCreateSchema" }),
- async (req: Request, res: Response) => {
- const {
- enabled,
- allowTemplateCreation,
- // allowDiscordTemplates,
- // allowRaws,
- } = Config.get().templates;
- if (!enabled)
- return res
- .json({
- code: 403,
- message:
- "Template creation & usage is disabled on this instance.",
- })
- .sendStatus(403);
- if (!allowTemplateCreation)
- return res
- .json({
- code: 403,
- message: "Template creation is disabled on this instance.",
- })
- .sendStatus(403);
+router.post("/:code", route({ requestBody: "GuildTemplateCreateSchema" }), async (req: Request, res: Response) => {
+ const {
+ enabled,
+ allowTemplateCreation,
+ // allowDiscordTemplates,
+ // allowRaws,
+ } = Config.get().templates;
+ if (!enabled)
+ return res
+ .json({
+ code: 403,
+ message: "Template creation & usage is disabled on this instance.",
+ })
+ .sendStatus(403);
+ if (!allowTemplateCreation)
+ return res
+ .json({
+ code: 403,
+ message: "Template creation is disabled on this instance.",
+ })
+ .sendStatus(403);
- const { code } = req.params;
- const body = req.body as GuildTemplateCreateSchema;
+ const { code } = req.params;
+ const body = req.body as GuildTemplateCreateSchema;
- const { maxGuilds } = Config.get().limits.user;
+ const { maxGuilds } = Config.get().limits.user;
- const guild_count = await Member.count({ where: { id: req.user_id } });
- if (guild_count >= maxGuilds) {
- throw DiscordApiErrors.MAXIMUM_GUILDS.withParams(maxGuilds);
- }
+ const guild_count = await Member.count({ where: { id: req.user_id } });
+ if (guild_count >= maxGuilds) {
+ throw DiscordApiErrors.MAXIMUM_GUILDS.withParams(maxGuilds);
+ }
- const template = await Template.findOneOrFail({
- where: { code: code },
- });
+ const template = await Template.findOneOrFail({
+ where: { code: code },
+ });
- const guild_id = Snowflake.generate();
+ const guild_id = Snowflake.generate();
- const [guild] = await Promise.all([
- Guild.create({
- ...body,
- ...template.serialized_source_guild,
- id: guild_id,
- owner_id: req.user_id,
- }).save(),
- Role.create({
- id: guild_id,
- guild_id: guild_id,
- color: 0,
- hoist: false,
- managed: true,
- mentionable: true,
- name: "@everyone",
- permissions: BigInt("2251804225").toString(), // TODO: where did this come from?
- position: 0,
- }).save(),
- ]);
+ const [guild] = await Promise.all([
+ Guild.create({
+ ...body,
+ ...template.serialized_source_guild,
+ id: guild_id,
+ owner_id: req.user_id,
+ }).save(),
+ Role.create({
+ id: guild_id,
+ guild_id: guild_id,
+ color: 0,
+ hoist: false,
+ managed: true,
+ mentionable: true,
+ name: "@everyone",
+ permissions: BigInt("2251804225").toString(), // TODO: where did this come from?
+ position: 0,
+ }).save(),
+ ]);
- await Member.addToGuild(req.user_id, guild_id);
+ await Member.addToGuild(req.user_id, guild_id);
- res.status(201).json({ id: guild.id });
- },
-);
+ res.status(201).json({ id: guild.id });
+});
export default router;
diff --git a/src/api/routes/invites/index.ts b/src/api/routes/invites/index.ts
index 28a3b429f..661b1f7c1 100644
--- a/src/api/routes/invites/index.ts
+++ b/src/api/routes/invites/index.ts
@@ -53,7 +53,7 @@ router.get(
});
res.status(200).send(invite);
- },
+ }
);
router.post(
@@ -89,21 +89,14 @@ router.post(
where: { id: req.user_id },
});
- if (
- features.includes("INTERNAL_EMPLOYEE_ONLY") &&
- (public_flags & 1) !== 1
- )
- throw new HTTPError(
- "Only intended for the staff of this server.",
- 401,
- );
- if (features.includes("INVITES_DISABLED"))
- throw new HTTPError("Sorry, this guild has joins closed.", 403);
+ if (features.includes("INTERNAL_EMPLOYEE_ONLY") && (public_flags & 1) !== 1)
+ throw new HTTPError("Only intended for the staff of this server.", 401);
+ if (features.includes("INVITES_DISABLED")) throw new HTTPError("Sorry, this guild has joins closed.", 403);
const invite = await Invite.joinGuild(req.user_id, code);
res.json(invite);
- },
+ }
);
// * cant use permission of route() function because path doesn't have guild_id/channel_id
@@ -127,20 +120,10 @@ router.delete(
const invite = await Invite.findOneOrFail({ where: { code } });
const { guild_id, channel_id } = invite;
- const permission = await getPermission(
- req.user_id,
- guild_id,
- channel_id,
- );
+ const permission = await getPermission(req.user_id, guild_id, channel_id);
- if (
- !permission.has("MANAGE_GUILD") &&
- !permission.has("MANAGE_CHANNELS")
- )
- throw new HTTPError(
- "You missing the MANAGE_GUILD or MANAGE_CHANNELS permission",
- 401,
- );
+ if (!permission.has("MANAGE_GUILD") && !permission.has("MANAGE_CHANNELS"))
+ throw new HTTPError("You missing the MANAGE_GUILD or MANAGE_CHANNELS permission", 401);
await Promise.all([
Invite.delete({ code }),
@@ -156,7 +139,7 @@ router.delete(
]);
res.json({ invite: invite });
- },
+ }
);
export default router;
diff --git a/src/api/routes/oauth2/applications/@me.ts b/src/api/routes/oauth2/applications/@me.ts
index 0c23bdb1c..3c404d259 100644
--- a/src/api/routes/oauth2/applications/@me.ts
+++ b/src/api/routes/oauth2/applications/@me.ts
@@ -17,11 +17,7 @@
*/
import { route } from "@spacebar/api";
-import {
- Application,
- DiscordApiErrors,
- PublicUserProjection,
-} from "@spacebar/util";
+import { Application, DiscordApiErrors, PublicUserProjection } from "@spacebar/util";
import { Request, Response, Router } from "express";
const router: Router = Router();
@@ -40,9 +36,7 @@ router.get(
where: { id: req.params.id },
relations: ["bot", "owner"],
select: {
- owner: Object.fromEntries(
- PublicUserProjection.map((x) => [x, true]),
- ),
+ owner: Object.fromEntries(PublicUserProjection.map((x) => [x, true])),
},
});
@@ -51,9 +45,8 @@ router.get(
res.json({
...app,
owner: app.owner.toPublicUser(),
- install_params:
- app.install_params !== null ? app.install_params : undefined,
+ install_params: app.install_params !== null ? app.install_params : undefined,
});
- },
+ }
);
export default router;
diff --git a/src/api/routes/oauth2/authorize.ts b/src/api/routes/oauth2/authorize.ts
index 2f2351f38..bdb124552 100644
--- a/src/api/routes/oauth2/authorize.ts
+++ b/src/api/routes/oauth2/authorize.ts
@@ -84,13 +84,7 @@ router.get(
id: req.user_id,
bot: false,
},
- select: [
- "id",
- "username",
- "avatar",
- "discriminator",
- "public_flags",
- ],
+ select: ["id", "username", "avatar", "discriminator", "public_flags"],
});
const guilds = await Member.find({
@@ -165,7 +159,7 @@ router.get(
},
authorized: false,
});
- },
+ }
);
router.post(
@@ -210,17 +204,9 @@ router.post(
// TODO: captcha verification
// TODO: MFA verification
- const perms = await getPermission(
- req.user_id,
- body.guild_id,
- undefined,
- { member_relations: ["user"] },
- );
+ const perms = await getPermission(req.user_id, body.guild_id, undefined, { member_relations: ["user"] });
// getPermission cache won't exist if we're owner
- if (
- Object.keys(perms.cache || {}).length > 0 &&
- perms.cache.member?.user.bot
- )
+ if (Object.keys(perms.cache || {}).length > 0 && perms.cache.member?.user.bot)
throw DiscordApiErrors.UNAUTHORIZED;
perms.hasThrow("MANAGE_GUILD");
@@ -234,19 +220,14 @@ router.post(
// TODO: use DiscordApiErrors
// findOneOrFail throws code 404
if (!app) throw new ApiError("Unknown Application", 10002, 404);
- if (!app.bot)
- throw new ApiError(
- "OAuth2 application does not have a bot",
- 50010,
- 400,
- );
+ if (!app.bot) throw new ApiError("OAuth2 application does not have a bot", 50010, 400);
await Member.addToGuild(app.id, body.guild_id);
return res.json({
location: "/oauth2/authorized", // redirect URL
});
- },
+ }
);
export default router;
diff --git a/src/api/routes/ping.ts b/src/api/routes/ping.ts
index 73330239b..3161eb2c4 100644
--- a/src/api/routes/ping.ts
+++ b/src/api/routes/ping.ts
@@ -48,7 +48,7 @@ router.get(
tosPage: general.tosPage,
},
});
- },
+ }
);
export default router;
diff --git a/src/api/routes/policies/instance/domains.ts b/src/api/routes/policies/instance/domains.ts
index afeb0e857..5ddd21147 100644
--- a/src/api/routes/policies/instance/domains.ts
+++ b/src/api/routes/policies/instance/domains.ts
@@ -34,20 +34,14 @@ router.get(
const { cdn, gateway, api } = Config.get();
const IdentityForm = {
- cdn:
- cdn.endpointPublic ||
- process.env.CDN ||
- "http://localhost:3001",
- gateway:
- gateway.endpointPublic ||
- process.env.GATEWAY ||
- "ws://localhost:3001",
+ cdn: cdn.endpointPublic || process.env.CDN || "http://localhost:3001",
+ gateway: gateway.endpointPublic || process.env.GATEWAY || "ws://localhost:3001",
defaultApiVersion: api.defaultVersion ?? 9,
apiEndpoint: api.endpointPublic ?? "http://localhost:3001/api/",
};
res.json(IdentityForm);
- },
+ }
);
export default router;
diff --git a/src/api/routes/policies/instance/index.ts b/src/api/routes/policies/instance/index.ts
index 6e269a5c9..9ac3f8697 100644
--- a/src/api/routes/policies/instance/index.ts
+++ b/src/api/routes/policies/instance/index.ts
@@ -33,7 +33,7 @@ router.get(
async (req: Request, res: Response) => {
const { general } = Config.get();
res.json(general);
- },
+ }
);
export default router;
diff --git a/src/api/routes/policies/instance/limits.ts b/src/api/routes/policies/instance/limits.ts
index 9852459de..79139d96b 100644
--- a/src/api/routes/policies/instance/limits.ts
+++ b/src/api/routes/policies/instance/limits.ts
@@ -33,7 +33,7 @@ router.get(
async (req: Request, res: Response) => {
const { limits } = Config.get();
res.json(limits);
- },
+ }
);
export default router;
diff --git a/src/api/routes/policies/stats.ts b/src/api/routes/policies/stats.ts
index b2cd3d5a8..615ca6bac 100644
--- a/src/api/routes/policies/stats.ts
+++ b/src/api/routes/policies/stats.ts
@@ -17,14 +17,7 @@
*/
import { route } from "@spacebar/api";
-import {
- Config,
- getRights,
- Guild,
- Member,
- Message,
- User,
-} from "@spacebar/util";
+import { Config, getRights, Guild, Member, Message, User } from "@spacebar/util";
import { Request, Response, Router } from "express";
const router = Router();
@@ -54,7 +47,7 @@ router.get(
members: await Member.count(),
},
});
- },
+ }
);
export default router;
diff --git a/src/api/routes/read-states/ack-bulk.ts b/src/api/routes/read-states/ack-bulk.ts
index 3ee25d1ab..d93b04504 100644
--- a/src/api/routes/read-states/ack-bulk.ts
+++ b/src/api/routes/read-states/ack-bulk.ts
@@ -61,7 +61,7 @@ router.post(
]);
return res.status(204);
- },
+ }
);
export default router;
diff --git a/src/api/routes/scheduled-maintenances/upcoming_json.ts b/src/api/routes/scheduled-maintenances/upcoming_json.ts
index c1fc0ff39..3b0bd5002 100644
--- a/src/api/routes/scheduled-maintenances/upcoming_json.ts
+++ b/src/api/routes/scheduled-maintenances/upcoming_json.ts
@@ -20,15 +20,11 @@ import { Router, Request, Response } from "express";
import { route } from "@spacebar/api";
const router = Router();
-router.get(
- "/scheduled-maintenances/upcoming.json",
- route({}),
- async (req: Request, res: Response) => {
- res.json({
- page: {},
- scheduled_maintenances: {},
- });
- },
-);
+router.get("/scheduled-maintenances/upcoming.json", route({}), async (req: Request, res: Response) => {
+ res.json({
+ page: {},
+ scheduled_maintenances: {},
+ });
+});
export default router;
diff --git a/src/api/routes/science.ts b/src/api/routes/science.ts
index d5cdc173e..6eb4a8e9e 100644
--- a/src/api/routes/science.ts
+++ b/src/api/routes/science.ts
@@ -31,7 +31,7 @@ router.post(
(req: Request, res: Response) => {
// TODO:
res.sendStatus(204);
- },
+ }
);
export default router;
diff --git a/src/api/routes/sticker-packs/index.ts b/src/api/routes/sticker-packs/index.ts
index 569d11047..ec12e30f1 100644
--- a/src/api/routes/sticker-packs/index.ts
+++ b/src/api/routes/sticker-packs/index.ts
@@ -37,7 +37,7 @@ router.get(
});
res.json({ sticker_packs });
- },
+ }
);
export default router;
diff --git a/src/api/routes/stickers/#sticker_id/index.ts b/src/api/routes/stickers/#sticker_id/index.ts
index 2ea81bf9b..72765652c 100644
--- a/src/api/routes/stickers/#sticker_id/index.ts
+++ b/src/api/routes/stickers/#sticker_id/index.ts
@@ -34,7 +34,7 @@ router.get(
const { sticker_id } = req.params;
res.json(await Sticker.find({ where: { id: sticker_id } }));
- },
+ }
);
export default router;
diff --git a/src/api/routes/stop.ts b/src/api/routes/stop.ts
index 79e132d7c..392c2d72b 100644
--- a/src/api/routes/stop.ts
+++ b/src/api/routes/stop.ts
@@ -36,7 +36,7 @@ router.post(
console.log(`/stop was called by ${req.user_id} at ${new Date()}`);
res.sendStatus(200);
process.kill(process.pid, "SIGTERM");
- },
+ }
);
export default router;
diff --git a/src/api/routes/updates.ts b/src/api/routes/updates.ts
index 101bd3bc4..bddf4ca0c 100644
--- a/src/api/routes/updates.ts
+++ b/src/api/routes/updates.ts
@@ -62,7 +62,7 @@ router.get(
url: release.url,
notes: release.notes,
});
- },
+ }
);
export default router;
diff --git a/src/api/routes/users/#id/delete.ts b/src/api/routes/users/#id/delete.ts
index 5b1a682cb..b1888d064 100644
--- a/src/api/routes/users/#id/delete.ts
+++ b/src/api/routes/users/#id/delete.ts
@@ -17,13 +17,7 @@
*/
import { route } from "@spacebar/api";
-import {
- emitEvent,
- Member,
- PrivateUserProjection,
- User,
- UserDeleteEvent,
-} from "@spacebar/util";
+import { emitEvent, Member, PrivateUserProjection, User, UserDeleteEvent } from "@spacebar/util";
import { Request, Response, Router } from "express";
const router = Router();
@@ -47,10 +41,7 @@ router.post(
where: { id: req.params.id },
select: [...PrivateUserProjection, "data"],
});
- await Promise.all([
- Member.delete({ id: req.params.id }),
- User.delete({ id: req.params.id }),
- ]);
+ await Promise.all([Member.delete({ id: req.params.id }), User.delete({ id: req.params.id })]);
// TODO: respect intents as USER_DELETE has potential to cause privacy issues
await emitEvent({
@@ -60,7 +51,7 @@ router.post(
} as UserDeleteEvent);
res.sendStatus(204);
- },
+ }
);
export default router;
diff --git a/src/api/routes/users/#id/index.ts b/src/api/routes/users/#id/index.ts
index 1bd413d35..b6fee65e6 100644
--- a/src/api/routes/users/#id/index.ts
+++ b/src/api/routes/users/#id/index.ts
@@ -35,7 +35,7 @@ router.get(
const { id } = req.params;
res.json(await User.getPublicUser(id));
- },
+ }
);
export default router;
diff --git a/src/api/routes/users/#id/profile.ts b/src/api/routes/users/#id/profile.ts
index eecec0f35..4a4965d8e 100644
--- a/src/api/routes/users/#id/profile.ts
+++ b/src/api/routes/users/#id/profile.ts
@@ -30,129 +30,115 @@ import { Request, Response, Router } from "express";
const router: Router = Router();
-router.get(
- "/",
- route({ responses: { 200: { body: "UserProfileResponse" } } }),
- async (req: Request, res: Response) => {
- if (req.params.id === "@me") req.params.id = req.user_id;
+router.get("/", route({ responses: { 200: { body: "UserProfileResponse" } } }), async (req: Request, res: Response) => {
+ if (req.params.id === "@me") req.params.id = req.user_id;
- const { guild_id, with_mutual_guilds } = req.query;
+ const { guild_id, with_mutual_guilds } = req.query;
- const user = await User.getPublicUser(req.params.id, {
- relations: ["connected_accounts"],
+ const user = await User.getPublicUser(req.params.id, {
+ relations: ["connected_accounts"],
+ });
+
+ const mutual_guilds: object[] = [];
+ let premium_guild_since;
+
+ if (with_mutual_guilds == "true") {
+ const requested_member = await Member.find({
+ where: { id: req.params.id },
+ });
+ const self_member = await Member.find({
+ where: { id: req.user_id },
});
- const mutual_guilds: object[] = [];
- let premium_guild_since;
-
- if (with_mutual_guilds == "true") {
- const requested_member = await Member.find({
- where: { id: req.params.id },
- });
- const self_member = await Member.find({
- where: { id: req.user_id },
- });
-
- for (const rmem of requested_member) {
- if (rmem.premium_since) {
- if (premium_guild_since) {
- if (premium_guild_since > rmem.premium_since) {
- premium_guild_since = rmem.premium_since;
- }
- } else {
+ for (const rmem of requested_member) {
+ if (rmem.premium_since) {
+ if (premium_guild_since) {
+ if (premium_guild_since > rmem.premium_since) {
premium_guild_since = rmem.premium_since;
}
+ } else {
+ premium_guild_since = rmem.premium_since;
}
- for (const smem of self_member) {
- if (smem.guild_id === rmem.guild_id) {
- mutual_guilds.push({
- id: rmem.guild_id,
- nick: rmem.nick,
- });
- }
+ }
+ for (const smem of self_member) {
+ if (smem.guild_id === rmem.guild_id) {
+ mutual_guilds.push({
+ id: rmem.guild_id,
+ nick: rmem.nick,
+ });
}
}
}
+ }
- const guild_member =
- guild_id && typeof guild_id == "string"
- ? await Member.findOneOrFail({
- where: { id: req.params.id, guild_id: guild_id },
- relations: ["roles"],
- })
- : undefined;
+ const guild_member =
+ guild_id && typeof guild_id == "string"
+ ? await Member.findOneOrFail({
+ where: { id: req.params.id, guild_id: guild_id },
+ relations: ["roles"],
+ })
+ : undefined;
- // TODO: make proper DTO's in util?
+ // TODO: make proper DTO's in util?
- const userProfile = {
- bio: req.user_bot ? null : user.bio,
- accent_color: user.accent_color,
- banner: user.banner,
- pronouns: user.pronouns,
- theme_colors: user.theme_colors,
- };
+ const userProfile = {
+ bio: req.user_bot ? null : user.bio,
+ accent_color: user.accent_color,
+ banner: user.banner,
+ pronouns: user.pronouns,
+ theme_colors: user.theme_colors,
+ };
- const guildMemberProfile = {
- accent_color: null,
- banner: guild_member?.banner || null,
- bio: guild_member?.bio || "",
- guild_id,
- };
- res.json({
- connected_accounts: user.connected_accounts.filter(
- (x) => x.visibility != 0,
- ),
- premium_guild_since: premium_guild_since, // TODO
- premium_since: user.premium_since, // TODO
- mutual_guilds: mutual_guilds, // TODO {id: "", nick: null} when ?with_mutual_guilds=true
- user: user.toPublicUser(),
- premium_type: user.premium_type,
- profile_themes_experiment_bucket: 4, // TODO: This doesn't make it available, for some reason?
- user_profile: userProfile,
- guild_member: guild_member?.toPublicMember(),
- guild_member_profile: guild_id && guildMemberProfile,
- });
- },
-);
+ const guildMemberProfile = {
+ accent_color: null,
+ banner: guild_member?.banner || null,
+ bio: guild_member?.bio || "",
+ guild_id,
+ };
+ res.json({
+ connected_accounts: user.connected_accounts.filter((x) => x.visibility != 0),
+ premium_guild_since: premium_guild_since, // TODO
+ premium_since: user.premium_since, // TODO
+ mutual_guilds: mutual_guilds, // TODO {id: "", nick: null} when ?with_mutual_guilds=true
+ user: user.toPublicUser(),
+ premium_type: user.premium_type,
+ profile_themes_experiment_bucket: 4, // TODO: This doesn't make it available, for some reason?
+ user_profile: userProfile,
+ guild_member: guild_member?.toPublicMember(),
+ guild_member_profile: guild_id && guildMemberProfile,
+ });
+});
-router.patch(
- "/",
- route({ requestBody: "UserProfileModifySchema" }),
- async (req: Request, res: Response) => {
- const body = req.body as UserProfileModifySchema;
+router.patch("/", route({ requestBody: "UserProfileModifySchema" }), async (req: Request, res: Response) => {
+ const body = req.body as UserProfileModifySchema;
- if (body.banner)
- body.banner = await handleFile(
- `/banners/${req.user_id}`,
- body.banner as string,
- );
- const user = await User.findOneOrFail({
- where: { id: req.user_id },
- select: [...PrivateUserProjection, "data"],
- });
+ if (body.banner) body.banner = await handleFile(`/banners/${req.user_id}`, body.banner as string);
+ const user = await User.findOneOrFail({
+ where: { id: req.user_id },
+ select: [...PrivateUserProjection, "data"],
+ });
- user.assign(body);
- await user.save();
+ user.assign(body);
+ await user.save();
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
- // @ts-ignore
- delete user.data;
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
+ // @ts-ignore
+ delete user.data;
- // TODO: send update member list event in gateway
- await emitEvent({
- event: "USER_UPDATE",
- user_id: req.user_id,
- data: user,
- } as UserUpdateEvent);
+ // TODO: send update member list event in gateway
+ await emitEvent({
+ event: "USER_UPDATE",
+ user_id: req.user_id,
+ data: user,
+ } as UserUpdateEvent);
- res.json({
- accent_color: user.accent_color,
- bio: user.bio,
- banner: user.banner,
- theme_colors: user.theme_colors,
- pronouns: user.pronouns,
- });
- },
-);
+ res.json({
+ accent_color: user.accent_color,
+ bio: user.bio,
+ banner: user.banner,
+ theme_colors: user.theme_colors,
+ pronouns: user.pronouns,
+ });
+});
export default router;
diff --git a/src/api/routes/users/#id/relationships.ts b/src/api/routes/users/#id/relationships.ts
index 3737ca004..c4c128a8e 100644
--- a/src/api/routes/users/#id/relationships.ts
+++ b/src/api/routes/users/#id/relationships.ts
@@ -46,11 +46,7 @@ router.get(
for (const rmem of requested_relations.relationships) {
for (const smem of self_relations.relationships)
- if (
- rmem.to_id === smem.to_id &&
- rmem.type === 1 &&
- rmem.to_id !== req.user_id
- ) {
+ if (rmem.to_id === smem.to_id && rmem.type === 1 && rmem.to_id !== req.user_id) {
const relation_user = await User.getPublicUser(rmem.to_id);
mutual_relations.push({
@@ -64,7 +60,7 @@ router.get(
}
res.json(mutual_relations);
- },
+ }
);
export default router;
diff --git a/src/api/routes/users/@me/channels.ts b/src/api/routes/users/@me/channels.ts
index 8a8fadd99..ee7fefa74 100644
--- a/src/api/routes/users/@me/channels.ts
+++ b/src/api/routes/users/@me/channels.ts
@@ -17,12 +17,7 @@
*/
import { route } from "@spacebar/api";
-import {
- Channel,
- DmChannelCreateSchema,
- DmChannelDTO,
- Recipient,
-} from "@spacebar/util";
+import { Channel, DmChannelCreateSchema, DmChannelDTO, Recipient } from "@spacebar/util";
import { Request, Response, Router } from "express";
const router: Router = Router();
@@ -41,14 +36,8 @@ router.get(
where: { user_id: req.user_id, closed: false },
relations: ["channel", "channel.recipients"],
});
- res.json(
- await Promise.all(
- recipients.map((r) =>
- DmChannelDTO.from(r.channel, [req.user_id]),
- ),
- ),
- );
- },
+ res.json(await Promise.all(recipients.map((r) => DmChannelDTO.from(r.channel, [req.user_id]))));
+ }
);
router.post(
@@ -63,14 +52,8 @@ router.post(
}),
async (req: Request, res: Response) => {
const body = req.body as DmChannelCreateSchema;
- res.json(
- await Channel.createDMChannel(
- body.recipients,
- req.user_id,
- body.name,
- ),
- );
- },
+ res.json(await Channel.createDMChannel(body.recipients, req.user_id, body.name));
+ }
);
export default router;
diff --git a/src/api/routes/users/@me/connections/#connection_name/#connection_id/access-token.ts b/src/api/routes/users/@me/connections/#connection_name/#connection_id/access-token.ts
index 789a7878a..97c03efd1 100644
--- a/src/api/routes/users/@me/connections/#connection_name/#connection_id/access-token.ts
+++ b/src/api/routes/users/@me/connections/#connection_name/#connection_id/access-token.ts
@@ -77,18 +77,13 @@ router.get("/", route({}), async (req: Request, res: Response) => {
});
if (!connectedAccount) throw DiscordApiErrors.UNKNOWN_CONNECTION;
if (connectedAccount.revoked) throw DiscordApiErrors.CONNECTION_REVOKED;
- if (!connectedAccount.token_data)
- throw new ApiError("No token data", 0, 400);
+ if (!connectedAccount.token_data) throw new ApiError("No token data", 0, 400);
let access_token = connectedAccount.token_data.access_token;
const { expires_at, expires_in, fetched_at } = connectedAccount.token_data;
- if (
- (expires_at && expires_at < Date.now()) ||
- (expires_in && fetched_at + expires_in * 1000 < Date.now())
- ) {
- if (!(connection instanceof RefreshableConnection))
- throw new ApiError("Access token expired", 0, 400);
+ if ((expires_at && expires_at < Date.now()) || (expires_in && fetched_at + expires_in * 1000 < Date.now())) {
+ if (!(connection instanceof RefreshableConnection)) throw new ApiError("Access token expired", 0, 400);
const tokenData = await connection.refresh(connectedAccount);
access_token = tokenData.access_token;
}
diff --git a/src/api/routes/users/@me/connections/#connection_name/#connection_id/index.ts b/src/api/routes/users/@me/connections/#connection_name/#connection_id/index.ts
index 351ec99a1..afb5b2e9d 100644
--- a/src/api/routes/users/@me/connections/#connection_name/#connection_id/index.ts
+++ b/src/api/routes/users/@me/connections/#connection_name/#connection_id/index.ts
@@ -17,68 +17,59 @@
*/
import { route } from "@spacebar/api";
-import {
- ConnectedAccount,
- ConnectionUpdateSchema,
- DiscordApiErrors,
- emitEvent,
-} from "@spacebar/util";
+import { ConnectedAccount, ConnectionUpdateSchema, DiscordApiErrors, emitEvent } from "@spacebar/util";
import { Request, Response, Router } from "express";
const router = Router();
// TODO: connection update schema
-router.patch(
- "/",
- route({ requestBody: "ConnectionUpdateSchema" }),
- async (req: Request, res: Response) => {
- const { connection_name, connection_id } = req.params;
- const body = req.body as ConnectionUpdateSchema;
+router.patch("/", route({ requestBody: "ConnectionUpdateSchema" }), async (req: Request, res: Response) => {
+ const { connection_name, connection_id } = req.params;
+ const body = req.body as ConnectionUpdateSchema;
- const connection = await ConnectedAccount.findOne({
- where: {
- user_id: req.user_id,
- external_id: connection_id,
- type: connection_name,
- },
- select: [
- "external_id",
- "type",
- "name",
- "verified",
- "visibility",
- "show_activity",
- "revoked",
- "friend_sync",
- "integrations",
- ],
- });
+ const connection = await ConnectedAccount.findOne({
+ where: {
+ user_id: req.user_id,
+ external_id: connection_id,
+ type: connection_name,
+ },
+ select: [
+ "external_id",
+ "type",
+ "name",
+ "verified",
+ "visibility",
+ "show_activity",
+ "revoked",
+ "friend_sync",
+ "integrations",
+ ],
+ });
- if (!connection) return DiscordApiErrors.UNKNOWN_CONNECTION;
- // TODO: do we need to do anything if the connection is revoked?
+ if (!connection) return DiscordApiErrors.UNKNOWN_CONNECTION;
+ // TODO: do we need to do anything if the connection is revoked?
- if (typeof body.visibility === "boolean")
- //@ts-expect-error For some reason the client sends this as a boolean, even tho docs say its a number?
- body.visibility = body.visibility ? 1 : 0;
- if (typeof body.show_activity === "boolean")
- //@ts-expect-error For some reason the client sends this as a boolean, even tho docs say its a number?
- body.show_activity = body.show_activity ? 1 : 0;
- if (typeof body.metadata_visibility === "boolean")
- //@ts-expect-error For some reason the client sends this as a boolean, even tho docs say its a number?
- body.metadata_visibility = body.metadata_visibility ? 1 : 0;
+ if (typeof body.visibility === "boolean")
+ //@ts-expect-error For some reason the client sends this as a boolean, even tho docs say its a number?
+ body.visibility = body.visibility ? 1 : 0;
+ if (typeof body.show_activity === "boolean")
+ //@ts-expect-error For some reason the client sends this as a boolean, even tho docs say its a number?
+ body.show_activity = body.show_activity ? 1 : 0;
+ if (typeof body.metadata_visibility === "boolean")
+ //@ts-expect-error For some reason the client sends this as a boolean, even tho docs say its a number?
+ body.metadata_visibility = body.metadata_visibility ? 1 : 0;
- connection.assign(req.body);
+ connection.assign(req.body);
- await ConnectedAccount.update(
- {
- user_id: req.user_id,
- external_id: connection_id,
- type: connection_name,
- },
- connection,
- );
- res.json(connection.toJSON());
- },
-);
+ await ConnectedAccount.update(
+ {
+ user_id: req.user_id,
+ external_id: connection_id,
+ type: connection_name,
+ },
+ connection
+ );
+ res.json(connection.toJSON());
+});
router.delete("/", route({}), async (req: Request, res: Response) => {
const { connection_name, connection_id } = req.params;
diff --git a/src/api/routes/users/@me/delete.ts b/src/api/routes/users/@me/delete.ts
index e36a1e921..a8e043f6b 100644
--- a/src/api/routes/users/@me/delete.ts
+++ b/src/api/routes/users/@me/delete.ts
@@ -46,10 +46,7 @@ router.post(
if (user.data.hash) {
// guest accounts can delete accounts without password
- correctpass = await bcrypt.compare(
- req.body.password,
- user.data.hash,
- );
+ correctpass = await bcrypt.compare(req.body.password, user.data.hash);
if (!correctpass) {
throw new HTTPError(req.t("auth:login.INVALID_PASSWORD"));
}
@@ -58,16 +55,13 @@ router.post(
// TODO: decrement guild member count
if (correctpass) {
- await Promise.all([
- User.delete({ id: req.user_id }),
- Member.delete({ id: req.user_id }),
- ]);
+ await Promise.all([User.delete({ id: req.user_id }), Member.delete({ id: req.user_id })]);
res.sendStatus(204);
} else {
res.sendStatus(401);
}
- },
+ }
);
export default router;
diff --git a/src/api/routes/users/@me/disable.ts b/src/api/routes/users/@me/disable.ts
index b4d03e627..8d9e161c0 100644
--- a/src/api/routes/users/@me/disable.ts
+++ b/src/api/routes/users/@me/disable.ts
@@ -45,10 +45,7 @@ router.post(
if (user.data.hash) {
// guest accounts can delete accounts without password
- correctpass = await bcrypt.compare(
- req.body.password,
- user.data.hash,
- ); //Not sure if user typed right password :/
+ correctpass = await bcrypt.compare(req.body.password, user.data.hash); //Not sure if user typed right password :/
}
if (correctpass) {
@@ -61,7 +58,7 @@ router.post(
code: 50018,
});
}
- },
+ }
);
export default router;
diff --git a/src/api/routes/users/@me/guilds.ts b/src/api/routes/users/@me/guilds.ts
index 0bce432bb..1d2f79cef 100644
--- a/src/api/routes/users/@me/guilds.ts
+++ b/src/api/routes/users/@me/guilds.ts
@@ -17,15 +17,7 @@
*/
import { route } from "@spacebar/api";
-import {
- Config,
- Guild,
- GuildDeleteEvent,
- GuildMemberRemoveEvent,
- Member,
- User,
- emitEvent,
-} from "@spacebar/util";
+import { Config, Guild, GuildDeleteEvent, GuildMemberRemoveEvent, Member, User, emitEvent } from "@spacebar/util";
import { Request, Response, Router } from "express";
import { HTTPError } from "lambert-server";
@@ -53,7 +45,7 @@ router.get(
}
res.json(guild);
- },
+ }
);
// user send to leave a certain guild
@@ -79,17 +71,9 @@ router.delete(
});
if (!guild) throw new HTTPError("Guild doesn't exist", 404);
- if (guild.owner_id === req.user_id)
- throw new HTTPError("You can't leave your own guild", 400);
- if (
- autoJoin.enabled &&
- autoJoin.guilds.includes(guild_id) &&
- !autoJoin.canLeave
- ) {
- throw new HTTPError(
- "You can't leave instance auto join guilds",
- 400,
- );
+ if (guild.owner_id === req.user_id) throw new HTTPError("You can't leave your own guild", 400);
+ if (autoJoin.enabled && autoJoin.guilds.includes(guild_id) && !autoJoin.canLeave) {
+ throw new HTTPError("You can't leave instance auto join guilds", 400);
}
await Promise.all([
@@ -115,7 +99,7 @@ router.delete(
} as GuildMemberRemoveEvent);
return res.sendStatus(204);
- },
+ }
);
export default router;
diff --git a/src/api/routes/users/@me/guilds/#guild_id/settings.ts b/src/api/routes/users/@me/guilds/#guild_id/settings.ts
index ac6586ced..ae5f3922e 100644
--- a/src/api/routes/users/@me/guilds/#guild_id/settings.ts
+++ b/src/api/routes/users/@me/guilds/#guild_id/settings.ts
@@ -17,12 +17,7 @@
*/
import { route } from "@spacebar/api";
-import {
- Channel,
- Member,
- OrmUtils,
- UserGuildSettingsSchema,
-} from "@spacebar/util";
+import { Channel, Member, OrmUtils, UserGuildSettingsSchema } from "@spacebar/util";
import { Request, Response, Router } from "express";
const router = Router();
@@ -42,7 +37,7 @@ router.get(
select: ["settings"],
});
return res.json(user.settings);
- },
+ }
);
router.patch(
@@ -76,7 +71,7 @@ router.patch(
Member.update({ id: req.user_id, guild_id: req.params.guild_id }, user);
res.json(user.settings);
- },
+ }
);
export default router;
diff --git a/src/api/routes/users/@me/index.ts b/src/api/routes/users/@me/index.ts
index ad11a4281..606f33bba 100644
--- a/src/api/routes/users/@me/index.ts
+++ b/src/api/routes/users/@me/index.ts
@@ -47,9 +47,9 @@ router.get(
await User.findOne({
select: PrivateUserProjection,
where: { id: req.user_id },
- }),
+ })
);
- },
+ }
);
router.patch(
@@ -79,23 +79,12 @@ router.patch(
// Populated on password change
let newToken: string | undefined;
- if (body.avatar)
- body.avatar = await handleFile(
- `/avatars/${req.user_id}`,
- body.avatar as string,
- );
- if (body.banner)
- body.banner = await handleFile(
- `/banners/${req.user_id}`,
- body.banner as string,
- );
+ if (body.avatar) body.avatar = await handleFile(`/avatars/${req.user_id}`, body.avatar as string);
+ if (body.banner) body.banner = await handleFile(`/banners/${req.user_id}`, body.banner as string);
if (body.password) {
if (user.data?.hash) {
- const same_password = await bcrypt.compare(
- body.password,
- user.data.hash || "",
- );
+ const same_password = await bcrypt.compare(body.password, user.data.hash || "");
if (!same_password) {
throw FieldErrors({
password: {
@@ -199,7 +188,7 @@ router.patch(
...user,
newToken,
});
- },
+ }
);
export default router;
diff --git a/src/api/routes/users/@me/mfa/codes-verification.ts b/src/api/routes/users/@me/mfa/codes-verification.ts
index f71704a9f..f7083b53d 100644
--- a/src/api/routes/users/@me/mfa/codes-verification.ts
+++ b/src/api/routes/users/@me/mfa/codes-verification.ts
@@ -17,13 +17,7 @@
*/
import { route } from "@spacebar/api";
-import {
- BackupCode,
- CodesVerificationSchema,
- DiscordApiErrors,
- User,
- generateMfaBackupCodes,
-} from "@spacebar/util";
+import { BackupCode, CodesVerificationSchema, DiscordApiErrors, User, generateMfaBackupCodes } from "@spacebar/util";
import { Request, Response, Router } from "express";
const router = Router();
@@ -52,15 +46,11 @@ router.post(
// Once that's done, this route can verify `key`
// const user = await User.findOneOrFail({ where: { id: req.user_id } });
- if ((await User.count({ where: { id: req.user_id } })) === 0)
- throw DiscordApiErrors.UNKNOWN_USER;
+ if ((await User.count({ where: { id: req.user_id } })) === 0) throw DiscordApiErrors.UNKNOWN_USER;
let codes: BackupCode[];
if (regenerate) {
- await BackupCode.update(
- { user: { id: req.user_id } },
- { expired: true },
- );
+ await BackupCode.update({ user: { id: req.user_id } }, { expired: true });
codes = generateMfaBackupCodes(req.user_id);
await Promise.all(codes.map((x) => x.save()));
@@ -78,7 +68,7 @@ router.post(
return res.json({
backup_codes: codes.map((x) => ({ ...x, expired: undefined })),
});
- },
+ }
);
export default router;
diff --git a/src/api/routes/users/@me/mfa/codes.ts b/src/api/routes/users/@me/mfa/codes.ts
index f9cfc4c48..d6e5a4813 100644
--- a/src/api/routes/users/@me/mfa/codes.ts
+++ b/src/api/routes/users/@me/mfa/codes.ts
@@ -17,13 +17,7 @@
*/
import { route } from "@spacebar/api";
-import {
- BackupCode,
- FieldErrors,
- generateMfaBackupCodes,
- MfaCodesSchema,
- User,
-} from "@spacebar/util";
+import { BackupCode, FieldErrors, generateMfaBackupCodes, MfaCodesSchema, User } from "@spacebar/util";
import bcrypt from "bcrypt";
import { Request, Response, Router } from "express";
@@ -36,8 +30,7 @@ router.post(
route({
requestBody: "MfaCodesSchema",
deprecated: true,
- description:
- "This route is replaced with users/@me/mfa/codes-verification in newer clients",
+ description: "This route is replaced with users/@me/mfa/codes-verification in newer clients",
responses: {
200: {
body: "APIBackupCodeArray",
@@ -69,10 +62,7 @@ router.post(
let codes: BackupCode[];
if (regenerate) {
- await BackupCode.update(
- { user: { id: req.user_id } },
- { expired: true },
- );
+ await BackupCode.update({ user: { id: req.user_id } }, { expired: true });
codes = generateMfaBackupCodes(req.user_id);
await Promise.all(codes.map((x) => x.save()));
@@ -90,7 +80,7 @@ router.post(
return res.json({
backup_codes: codes.map((x) => ({ ...x, expired: undefined })),
});
- },
+ }
);
export default router;
diff --git a/src/api/routes/users/@me/mfa/totp/disable.ts b/src/api/routes/users/@me/mfa/totp/disable.ts
index 362152d7f..6a0960d86 100644
--- a/src/api/routes/users/@me/mfa/totp/disable.ts
+++ b/src/api/routes/users/@me/mfa/totp/disable.ts
@@ -17,12 +17,7 @@
*/
import { route } from "@spacebar/api";
-import {
- BackupCode,
- TotpDisableSchema,
- User,
- generateToken,
-} from "@spacebar/util";
+import { BackupCode, TotpDisableSchema, User, generateToken } from "@spacebar/util";
import { Request, Response, Router } from "express";
import { HTTPError } from "lambert-server";
import { verifyToken } from "node-2fa";
@@ -53,11 +48,7 @@ router.post(
const backup = await BackupCode.findOne({ where: { code: body.code } });
if (!backup) {
const ret = verifyToken(user.totp_secret || "", body.code);
- if (!ret || ret.delta != 0)
- throw new HTTPError(
- req.t("auth:login.INVALID_TOTP_CODE"),
- 60008,
- );
+ if (!ret || ret.delta != 0) throw new HTTPError(req.t("auth:login.INVALID_TOTP_CODE"), 60008);
}
await User.update(
@@ -65,20 +56,20 @@ router.post(
{
mfa_enabled: false,
totp_secret: "",
- },
+ }
);
await BackupCode.update(
{ user: { id: req.user_id } },
{
expired: true,
- },
+ }
);
return res.json({
token: await generateToken(user.id),
});
- },
+ }
);
export default router;
diff --git a/src/api/routes/users/@me/mfa/totp/enable.ts b/src/api/routes/users/@me/mfa/totp/enable.ts
index 19836e4d7..6d66fb95c 100644
--- a/src/api/routes/users/@me/mfa/totp/enable.ts
+++ b/src/api/routes/users/@me/mfa/totp/enable.ts
@@ -17,12 +17,7 @@
*/
import { route } from "@spacebar/api";
-import {
- TotpEnableSchema,
- User,
- generateMfaBackupCodes,
- generateToken,
-} from "@spacebar/util";
+import { TotpEnableSchema, User, generateMfaBackupCodes, generateToken } from "@spacebar/util";
import bcrypt from "bcrypt";
import { Request, Response, Router } from "express";
import { HTTPError } from "lambert-server";
@@ -61,21 +56,16 @@ router.post(
}
}
- if (!body.secret)
- throw new HTTPError(req.t("auth:login.INVALID_TOTP_SECRET"), 60005);
+ if (!body.secret) throw new HTTPError(req.t("auth:login.INVALID_TOTP_SECRET"), 60005);
- if (!body.code)
- throw new HTTPError(req.t("auth:login.INVALID_TOTP_CODE"), 60008);
+ if (!body.code) throw new HTTPError(req.t("auth:login.INVALID_TOTP_CODE"), 60008);
if (verifyToken(body.secret, body.code)?.delta != 0)
throw new HTTPError(req.t("auth:login.INVALID_TOTP_CODE"), 60008);
const backup_codes = generateMfaBackupCodes(req.user_id);
await Promise.all(backup_codes.map((x) => x.save()));
- await User.update(
- { id: req.user_id },
- { mfa_enabled: true, totp_secret: body.secret },
- );
+ await User.update({ id: req.user_id }, { mfa_enabled: true, totp_secret: body.secret });
res.send({
token: await generateToken(user.id),
@@ -84,7 +74,7 @@ router.post(
expired: undefined,
})),
});
- },
+ }
);
export default router;
diff --git a/src/api/routes/users/@me/mfa/webauthn/credentials/#key_id/index.ts b/src/api/routes/users/@me/mfa/webauthn/credentials/#key_id/index.ts
index 9cf42defa..ba5df9945 100644
--- a/src/api/routes/users/@me/mfa/webauthn/credentials/#key_id/index.ts
+++ b/src/api/routes/users/@me/mfa/webauthn/credentials/#key_id/index.ts
@@ -41,11 +41,10 @@ router.delete(
});
// disable webauthn if there are no keys left
- if (keys === 0)
- await User.update({ id: req.user_id }, { webauthn_enabled: false });
+ if (keys === 0) await User.update({ id: req.user_id }, { webauthn_enabled: false });
res.sendStatus(204);
- },
+ }
);
export default router;
diff --git a/src/api/routes/users/@me/mfa/webauthn/credentials/index.ts b/src/api/routes/users/@me/mfa/webauthn/credentials/index.ts
index f383ffb78..b8e33da76 100644
--- a/src/api/routes/users/@me/mfa/webauthn/credentials/index.ts
+++ b/src/api/routes/users/@me/mfa/webauthn/credentials/index.ts
@@ -35,15 +35,11 @@ import { ExpectedAttestationResult } from "fido2-lib";
import { HTTPError } from "lambert-server";
const router = Router();
-const isGenerateSchema = (
- body: WebAuthnPostSchema,
-): body is GenerateWebAuthnCredentialsSchema => {
+const isGenerateSchema = (body: WebAuthnPostSchema): body is GenerateWebAuthnCredentialsSchema => {
return "password" in body;
};
-const isCreateSchema = (
- body: WebAuthnPostSchema,
-): body is CreateWebAuthnCredentialSchema => {
+const isCreateSchema = (body: WebAuthnPostSchema): body is CreateWebAuthnCredentialSchema => {
return "credential" in body;
};
@@ -67,7 +63,7 @@ router.get("/", route({}), async (req: Request, res: Response) => {
securityKeys.map((key) => ({
id: key.id,
name: key.name,
- })),
+ }))
);
});
@@ -94,24 +90,13 @@ router.post(
where: {
id: req.user_id,
},
- select: [
- "data",
- "id",
- "disabled",
- "deleted",
- "totp_secret",
- "mfa_enabled",
- "username",
- ],
+ select: ["data", "id", "disabled", "deleted", "totp_secret", "mfa_enabled", "username"],
relations: ["settings"],
});
if (isGenerateSchema(req.body)) {
const { password } = req.body;
- const same_password = await bcrypt.compare(
- password,
- user.data.hash || "",
- );
+ const same_password = await bcrypt.compare(password, user.data.hash || "");
if (!same_password) {
throw FieldErrors({
password: {
@@ -121,14 +106,11 @@ router.post(
});
}
- const registrationOptions =
- await WebAuthn.fido2.attestationOptions();
+ const registrationOptions = await WebAuthn.fido2.attestationOptions();
const challenge = JSON.stringify({
publicKey: {
...registrationOptions,
- challenge: Buffer.from(
- registrationOptions.challenge,
- ).toString("base64"),
+ challenge: Buffer.from(registrationOptions.challenge).toString("base64"),
user: {
id: user.id,
name: user.username,
@@ -151,35 +133,22 @@ router.post(
const clientAttestationResponse = JSON.parse(credential);
- if (!clientAttestationResponse.rawId)
- throw new HTTPError("Missing rawId", 400);
+ if (!clientAttestationResponse.rawId) throw new HTTPError("Missing rawId", 400);
- const rawIdBuffer = Buffer.from(
- clientAttestationResponse.rawId,
- "base64",
- );
+ const rawIdBuffer = Buffer.from(clientAttestationResponse.rawId, "base64");
clientAttestationResponse.rawId = toArrayBuffer(rawIdBuffer);
- const attestationExpectations: ExpectedAttestationResult =
- JSON.parse(
- Buffer.from(
- clientAttestationResponse.response.clientDataJSON,
- "base64",
- ).toString(),
- );
-
- const regResult = await WebAuthn.fido2.attestationResult(
- clientAttestationResponse,
- {
- ...attestationExpectations,
- factor: "second",
- },
+ const attestationExpectations: ExpectedAttestationResult = JSON.parse(
+ Buffer.from(clientAttestationResponse.response.clientDataJSON, "base64").toString()
);
+ const regResult = await WebAuthn.fido2.attestationResult(clientAttestationResponse, {
+ ...attestationExpectations,
+ factor: "second",
+ });
+
const authnrData = regResult.authnrData;
- const keyId = Buffer.from(authnrData.get("credId")).toString(
- "base64",
- );
+ const keyId = Buffer.from(authnrData.get("credId")).toString("base64");
const counter = authnrData.get("counter");
const publicKey = authnrData.get("credentialPublicKeyPem");
@@ -191,10 +160,7 @@ router.post(
key_id: keyId,
});
- await Promise.all([
- securityKey.save(),
- User.update({ id: req.user_id }, { webauthn_enabled: true }),
- ]);
+ await Promise.all([securityKey.save(), User.update({ id: req.user_id }, { webauthn_enabled: true })]);
return res.json({
name,
@@ -203,7 +169,7 @@ router.post(
} else {
throw DiscordApiErrors.INVALID_AUTHENTICATION_TOKEN;
}
- },
+ }
);
export default router;
diff --git a/src/api/routes/users/@me/notes.ts b/src/api/routes/users/@me/notes.ts
index 248e61f9f..51dcbd7fc 100644
--- a/src/api/routes/users/@me/notes.ts
+++ b/src/api/routes/users/@me/notes.ts
@@ -49,7 +49,7 @@ router.get(
note_user_id: id,
user_id: req.user_id,
});
- },
+ }
);
router.put(
@@ -79,10 +79,7 @@ router.put(
},
})
) {
- Note.update(
- { owner: { id: owner.id }, target: { id: target.id } },
- { owner, target, content: note },
- );
+ Note.update({ owner: { id: owner.id }, target: { id: target.id } }, { owner, target, content: note });
} else {
Note.insert({
id: Snowflake.generate(),
@@ -108,7 +105,7 @@ router.put(
});
return res.status(204);
- },
+ }
);
export default router;
diff --git a/src/api/routes/users/@me/relationships.ts b/src/api/routes/users/@me/relationships.ts
index bce0a6549..9bee19a3d 100644
--- a/src/api/routes/users/@me/relationships.ts
+++ b/src/api/routes/users/@me/relationships.ts
@@ -33,10 +33,7 @@ import { HTTPError } from "lambert-server";
const router = Router();
-const userProjection: (keyof User)[] = [
- "relationships",
- ...PublicUserProjection,
-];
+const userProjection: (keyof User)[] = ["relationships", ...PublicUserProjection];
router.get(
"/",
@@ -68,7 +65,7 @@ router.get(
});
return res.json(related_users);
- },
+ }
);
router.put(
@@ -94,9 +91,9 @@ router.put(
relations: ["relationships", "relationships.to"],
select: userProjection,
}),
- req.body.type ?? RelationshipType.friends,
+ req.body.type ?? RelationshipType.friends
);
- },
+ }
);
router.post(
@@ -121,16 +118,13 @@ router.post(
relations: ["relationships", "relationships.to"],
select: userProjection,
where: {
- discriminator: String(req.body.discriminator).padStart(
- 4,
- "0",
- ), //Discord send the discriminator as integer, we need to add leading zeroes
+ discriminator: String(req.body.discriminator).padStart(4, "0"), //Discord send the discriminator as integer, we need to add leading zeroes
username: req.body.username,
},
}),
- req.body.type,
+ req.body.type
);
- },
+ }
);
router.delete(
@@ -148,8 +142,7 @@ router.delete(
}),
async (req: Request, res: Response) => {
const { id } = req.params;
- if (id === req.user_id)
- throw new HTTPError("You can't remove yourself as a friend");
+ if (id === req.user_id) throw new HTTPError("You can't remove yourself as a friend");
const user = await User.findOneOrFail({
where: { id: req.user_id },
@@ -163,12 +156,9 @@ router.delete(
});
const relationship = user.relationships.find((x) => x.to_id === id);
- const friendRequest = friend.relationships.find(
- (x) => x.to_id === req.user_id,
- );
+ const friendRequest = friend.relationships.find((x) => x.to_id === req.user_id);
- if (!relationship)
- throw new HTTPError("You are not friends with the user", 404);
+ if (!relationship) throw new HTTPError("You are not friends with the user", 404);
if (relationship?.type === RelationshipType.blocked) {
// unblock user
@@ -203,20 +193,14 @@ router.delete(
]);
return res.sendStatus(204);
- },
+ }
);
export default router;
-async function updateRelationship(
- req: Request,
- res: Response,
- friend: User,
- type: RelationshipType,
-) {
+async function updateRelationship(req: Request, res: Response, friend: User, type: RelationshipType) {
const id = friend.id;
- if (id === req.user_id)
- throw new HTTPError("You can't add yourself as a friend");
+ if (id === req.user_id) throw new HTTPError("You can't add yourself as a friend");
const user = await User.findOneOrFail({
where: { id: req.user_id },
@@ -225,15 +209,12 @@ async function updateRelationship(
});
let relationship = user.relationships.find((x) => x.to_id === id);
- const friendRequest = friend.relationships.find(
- (x) => x.to_id === req.user_id,
- );
+ const friendRequest = friend.relationships.find((x) => x.to_id === req.user_id);
// TODO: you can add infinitely many blocked users (should this be prevented?)
if (type === RelationshipType.blocked) {
if (relationship) {
- if (relationship.type === RelationshipType.blocked)
- throw new HTTPError("You already blocked the user");
+ if (relationship.type === RelationshipType.blocked) throw new HTTPError("You already blocked the user");
relationship.type = RelationshipType.blocked;
await relationship.save();
} else {
@@ -265,8 +246,7 @@ async function updateRelationship(
}
const { maxFriends } = Config.get().limits.user;
- if (user.relationships.length >= maxFriends)
- throw DiscordApiErrors.MAXIMUM_FRIENDS.withParams(maxFriends);
+ if (user.relationships.length >= maxFriends) throw DiscordApiErrors.MAXIMUM_FRIENDS.withParams(maxFriends);
let incoming_relationship = Relationship.create({
nickname: undefined,
@@ -282,8 +262,7 @@ async function updateRelationship(
});
if (friendRequest) {
- if (friendRequest.type === RelationshipType.blocked)
- throw new HTTPError("The user blocked you");
+ if (friendRequest.type === RelationshipType.blocked) throw new HTTPError("The user blocked you");
if (friendRequest.type === RelationshipType.friends)
throw new HTTPError("You are already friends with the user");
// accept friend request
@@ -292,12 +271,9 @@ async function updateRelationship(
}
if (relationship) {
- if (relationship.type === RelationshipType.outgoing)
- throw new HTTPError("You already sent a friend request");
+ if (relationship.type === RelationshipType.outgoing) throw new HTTPError("You already sent a friend request");
if (relationship.type === RelationshipType.blocked)
- throw new HTTPError(
- "Unblock the user before sending a friend request",
- );
+ throw new HTTPError("Unblock the user before sending a friend request");
if (relationship.type === RelationshipType.friends)
throw new HTTPError("You are already friends with the user");
outgoing_relationship = relationship;
diff --git a/src/api/routes/users/@me/settings.ts b/src/api/routes/users/@me/settings.ts
index d22d6de11..a6e2f92a0 100644
--- a/src/api/routes/users/@me/settings.ts
+++ b/src/api/routes/users/@me/settings.ts
@@ -40,7 +40,7 @@ router.get(
relations: ["settings"],
});
return res.json(user.settings);
- },
+ }
);
router.patch(
@@ -73,7 +73,7 @@ router.patch(
await user.settings.save();
res.json({ ...user.settings, index: undefined });
- },
+ }
);
export default router;
diff --git a/src/api/routes/voice/regions.ts b/src/api/routes/voice/regions.ts
index 10a8b21d7..064b6021f 100644
--- a/src/api/routes/voice/regions.ts
+++ b/src/api/routes/voice/regions.ts
@@ -32,7 +32,7 @@ router.get(
}),
async (req: Request, res: Response) => {
res.json(await getVoiceRegions(getIpAdress(req), true)); //vip true?
- },
+ }
);
export default router;
diff --git a/src/api/util/handlers/Message.ts b/src/api/util/handlers/Message.ts
index 6172a3d0c..24e307ca1 100644
--- a/src/api/util/handlers/Message.ts
+++ b/src/api/util/handlers/Message.ts
@@ -58,12 +58,9 @@ export async function handleMessage(opts: MessageOptions): Promise {
where: { id: opts.channel_id },
relations: ["recipients"],
});
- if (!channel || !opts.channel_id)
- throw new HTTPError("Channel not found", 404);
+ if (!channel || !opts.channel_id) throw new HTTPError("Channel not found", 404);
- const stickers = opts.sticker_ids
- ? await Sticker.find({ where: { id: In(opts.sticker_ids) } })
- : undefined;
+ const stickers = opts.sticker_ids ? await Sticker.find({ where: { id: In(opts.sticker_ids) } }) : undefined;
const message = Message.create({
...opts,
sticker_items: stickers,
@@ -75,10 +72,7 @@ export async function handleMessage(opts: MessageOptions): Promise {
type: opts.type ?? 0,
});
- if (
- message.content &&
- message.content.length > Config.get().limits.message.maxCharacters
- ) {
+ if (message.content && message.content.length > Config.get().limits.message.maxCharacters) {
throw new HTTPError("Content length over max character limit");
}
@@ -98,11 +92,7 @@ export async function handleMessage(opts: MessageOptions): Promise {
});
}
- const permission = await getPermission(
- opts.author_id,
- channel.guild_id,
- opts.channel_id,
- );
+ const permission = await getPermission(opts.author_id, channel.guild_id, opts.channel_id);
permission.hasThrow("SEND_MESSAGES");
if (permission.cache.member) {
message.member = permission.cache.member;
@@ -118,13 +108,9 @@ export async function handleMessage(opts: MessageOptions): Promise {
});
if (!guild.features.includes("CROSS_CHANNEL_REPLIES")) {
if (opts.message_reference.guild_id !== channel.guild_id)
- throw new HTTPError(
- "You can only reference messages from this guild",
- );
+ throw new HTTPError("You can only reference messages from this guild");
if (opts.message_reference.channel_id !== opts.channel_id)
- throw new HTTPError(
- "You can only reference messages from this channel",
- );
+ throw new HTTPError("You can only reference messages from this channel");
}
}
/** Q: should be checked if the referenced message exists? ANSWER: NO
@@ -162,27 +148,22 @@ export async function handleMessage(opts: MessageOptions): Promise {
}*/
for (const [, mention] of content.matchAll(USER_MENTION)) {
- if (!mention_user_ids.includes(mention))
- mention_user_ids.push(mention);
+ if (!mention_user_ids.includes(mention)) mention_user_ids.push(mention);
}
await Promise.all(
- Array.from(content.matchAll(ROLE_MENTION)).map(
- async ([, mention]) => {
- const role = await Role.findOneOrFail({
- where: { id: mention, guild_id: channel.guild_id },
- });
- if (role.mentionable || permission.has("MANAGE_ROLES")) {
- mention_role_ids.push(mention);
- }
- },
- ),
+ Array.from(content.matchAll(ROLE_MENTION)).map(async ([, mention]) => {
+ const role = await Role.findOneOrFail({
+ where: { id: mention, guild_id: channel.guild_id },
+ });
+ if (role.mentionable || permission.has("MANAGE_ROLES")) {
+ mention_role_ids.push(mention);
+ }
+ })
);
if (permission.has("MENTION_EVERYONE")) {
- mention_everyone =
- !!content.match(EVERYONE_MENTION) ||
- !!content.match(HERE_MENTION);
+ mention_everyone = !!content.match(EVERYONE_MENTION) || !!content.match(HERE_MENTION);
}
}
@@ -222,8 +203,7 @@ export async function postHandleMessage(message: Message) {
}
// bit gross, but whatever!
- const endpointPublic =
- Config.get().cdn.endpointPublic || "http://127.0.0.1"; // lol
+ const endpointPublic = Config.get().cdn.endpointPublic || "http://127.0.0.1"; // lol
const handler =
url.hostname == new URL(endpointPublic).hostname
? EmbedHandlers["self"]
@@ -262,10 +242,7 @@ export async function postHandleMessage(message: Message) {
channel_id: message.channel_id,
data,
} as MessageUpdateEvent),
- Message.update(
- { id: message.id, channel_id: message.channel_id },
- { embeds: data.embeds },
- ),
+ Message.update({ id: message.id, channel_id: message.channel_id }, { embeds: data.embeds }),
...cachePromises,
]);
}
@@ -283,9 +260,7 @@ export async function sendMessage(opts: MessageOptions) {
]);
// no await as it should catch error non-blockingly
- postHandleMessage(message).catch((e) =>
- console.error("[Message] post-message handler failed", e),
- );
+ postHandleMessage(message).catch((e) => console.error("[Message] post-message handler failed", e));
return message;
}
diff --git a/src/api/util/handlers/Voice.ts b/src/api/util/handlers/Voice.ts
index db06bd33c..1407a180a 100644
--- a/src/api/util/handlers/Voice.ts
+++ b/src/api/util/handlers/Voice.ts
@@ -21,9 +21,7 @@ import { distanceBetweenLocations, IPAnalysis } from "../utility/ipAddress";
export async function getVoiceRegions(ipAddress: string, vip: boolean) {
const regions = Config.get().regions;
- const availableRegions = regions.available.filter((ar) =>
- vip ? true : !ar.vip,
- );
+ const availableRegions = regions.available.filter((ar) => (vip ? true : !ar.vip));
let optimalId = regions.default;
if (!regions.useDefaultAsOptimal) {
@@ -33,10 +31,7 @@ export async function getVoiceRegions(ipAddress: string, vip: boolean) {
for (const ar of availableRegions) {
//TODO the endpoint location should be saved in the database if not already present to prevent IPAnalysis call
- const dist = distanceBetweenLocations(
- clientIpAnalysis,
- ar.location || (await IPAnalysis(ar.endpoint)),
- );
+ const dist = distanceBetweenLocations(clientIpAnalysis, ar.location || (await IPAnalysis(ar.endpoint)));
if (dist < min) {
min = dist;
diff --git a/src/api/util/handlers/route.ts b/src/api/util/handlers/route.ts
index 5a0b48e63..9668b09b5 100644
--- a/src/api/util/handlers/route.ts
+++ b/src/api/util/handlers/route.ts
@@ -84,24 +84,17 @@ export function route(opts: RouteOptions) {
let validate: AnyValidateFunction | undefined;
if (opts.requestBody) {
validate = ajv.getSchema(opts.requestBody);
- if (!validate)
- throw new Error(`Body schema ${opts.requestBody} not found`);
+ if (!validate) throw new Error(`Body schema ${opts.requestBody} not found`);
}
return async (req: Request, res: Response, next: NextFunction) => {
if (opts.permission) {
const required = new Permissions(opts.permission);
- req.permission = await getPermission(
- req.user_id,
- req.params.guild_id,
- req.params.channel_id,
- );
+ req.permission = await getPermission(req.user_id, req.params.guild_id, req.params.channel_id);
// bitfield comparison: check if user lacks certain permission
if (!req.permission.has(required)) {
- throw DiscordApiErrors.MISSING_PERMISSIONS.withParams(
- opts.permission as string,
- );
+ throw DiscordApiErrors.MISSING_PERMISSIONS.withParams(opts.permission as string);
}
}
@@ -110,25 +103,20 @@ export function route(opts: RouteOptions) {
req.rights = await getRights(req.user_id);
if (!req.rights || !req.rights.has(required)) {
- throw SpacebarApiErrors.MISSING_RIGHTS.withParams(
- opts.right as string,
- );
+ throw SpacebarApiErrors.MISSING_RIGHTS.withParams(opts.right as string);
}
}
if (validate) {
const valid = validate(normalizeBody(req.body));
if (!valid) {
- const fields: Record<
- string,
- { code?: string; message: string }
- > = {};
+ const fields: Record = {};
validate.errors?.forEach(
(x) =>
(fields[x.instancePath.slice(1)] = {
code: x.keyword,
message: x.message || "",
- }),
+ })
);
throw FieldErrors(fields);
}
diff --git a/src/api/util/utility/Base64.ts b/src/api/util/utility/Base64.ts
index c6d1257ce..7426d22bf 100644
--- a/src/api/util/utility/Base64.ts
+++ b/src/api/util/utility/Base64.ts
@@ -16,8 +16,7 @@
along with this program. If not, see .
*/
-const alphabet =
- "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+";
+const alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+";
// binary to string lookup table
const b2s = alphabet.split("");
diff --git a/src/api/util/utility/EmbedHandlers.ts b/src/api/util/utility/EmbedHandlers.ts
index 0f1e88a50..78e569865 100644
--- a/src/api/util/utility/EmbedHandlers.ts
+++ b/src/api/util/utility/EmbedHandlers.ts
@@ -27,8 +27,7 @@ export const DEFAULT_FETCH_OPTIONS: RequestInit = {
redirect: "follow",
follow: 1,
headers: {
- "user-agent":
- "Mozilla/5.0 (compatible; Spacebar/1.0; +https://github.com/spacebarchat/server)",
+ "user-agent": "Mozilla/5.0 (compatible; Spacebar/1.0; +https://github.com/spacebarchat/server)",
},
// size: 1024 * 1024 * 5, // grabbed from config later
compress: true,
@@ -38,7 +37,7 @@ export const DEFAULT_FETCH_OPTIONS: RequestInit = {
const makeEmbedImage = (
url: string | undefined,
width: number | undefined,
- height: number | undefined,
+ height: number | undefined
): Required | undefined => {
if (!url || !width || !height) return undefined;
return {
@@ -51,13 +50,8 @@ const makeEmbedImage = (
let hasWarnedAboutImagor = false;
-export const getProxyUrl = (
- url: URL,
- width: number,
- height: number,
-): string => {
- const { resizeWidthMax, resizeHeightMax, imagorServerUrl } =
- Config.get().cdn;
+export const getProxyUrl = (url: URL, width: number, height: number): string => {
+ const { resizeWidthMax, resizeHeightMax, imagorServerUrl } = Config.get().cdn;
const secret = Config.get().security.requestSignature;
width = Math.min(width || 500, resizeWidthMax || width);
height = Math.min(height || 500, resizeHeightMax || width);
@@ -81,8 +75,8 @@ export const getProxyUrl = (
console.log(
"[Embeds]",
yellow(
- "Imagor has not been set up correctly. https://docs.spacebar.chat/setup/server/configuration/imagor/",
- ),
+ "Imagor has not been set up correctly. https://docs.spacebar.chat/setup/server/configuration/imagor/"
+ )
);
}
@@ -157,11 +151,7 @@ const genericImageHandler = async (url: URL): Promise