import { MigrationInterface, QueryRunner } from "typeorm"; export class initial1659899662635 implements MigrationInterface { name = "initial1659899662635"; public async up(queryRunner: QueryRunner): Promise { await queryRunner.query(` CREATE TABLE "config" ("key" varchar PRIMARY KEY NOT NULL, "value" text) `); await queryRunner.query(` CREATE TABLE "relationships" ( "id" varchar PRIMARY KEY NOT NULL, "from_id" varchar NOT NULL, "to_id" varchar NOT NULL, "nickname" varchar, "type" integer NOT NULL ) `); await queryRunner.query(` CREATE UNIQUE INDEX "IDX_a0b2ff0a598df0b0d055934a17" ON "relationships" ("from_id", "to_id") `); await queryRunner.query(` CREATE TABLE "connected_accounts" ( "id" varchar PRIMARY KEY NOT NULL, "user_id" varchar, "access_token" varchar NOT NULL, "friend_sync" boolean NOT NULL, "name" varchar NOT NULL, "revoked" boolean NOT NULL, "show_activity" boolean NOT NULL, "type" varchar NOT NULL, "verified" boolean NOT NULL, "visibility" integer NOT NULL ) `); await queryRunner.query(` CREATE TABLE "users" ( "id" varchar PRIMARY KEY NOT NULL, "username" varchar NOT NULL, "discriminator" varchar NOT NULL, "avatar" varchar, "accent_color" integer, "banner" varchar, "phone" varchar, "desktop" boolean NOT NULL, "mobile" boolean NOT NULL, "premium" boolean NOT NULL, "premium_type" integer NOT NULL, "bot" boolean NOT NULL, "bio" varchar NOT NULL, "system" boolean NOT NULL, "nsfw_allowed" boolean NOT NULL, "mfa_enabled" boolean NOT NULL, "totp_secret" varchar, "totp_last_ticket" varchar, "created_at" datetime NOT NULL, "premium_since" datetime, "verified" boolean NOT NULL, "disabled" boolean NOT NULL, "deleted" boolean NOT NULL, "email" varchar, "flags" varchar NOT NULL, "public_flags" integer NOT NULL, "rights" bigint NOT NULL, "data" text NOT NULL, "fingerprints" text NOT NULL, "settings" text NOT NULL, "extended_settings" text NOT NULL, "notes" text NOT NULL ) `); await queryRunner.query(` CREATE TABLE "backup_codes" ( "id" varchar PRIMARY KEY NOT NULL, "code" varchar NOT NULL, "consumed" boolean NOT NULL, "expired" boolean NOT NULL, "user_id" varchar ) `); await queryRunner.query(` CREATE TABLE "bans" ( "id" varchar PRIMARY KEY NOT NULL, "user_id" varchar, "guild_id" varchar, "executor_id" varchar, "ip" varchar NOT NULL, "reason" varchar ) `); await queryRunner.query(` CREATE TABLE "recipients" ( "id" varchar PRIMARY KEY NOT NULL, "channel_id" varchar NOT NULL, "user_id" varchar NOT NULL, "closed" boolean NOT NULL DEFAULT (0) ) `); await queryRunner.query(` CREATE TABLE "roles" ( "id" varchar PRIMARY KEY NOT NULL, "guild_id" varchar, "color" integer NOT NULL, "hoist" boolean NOT NULL, "managed" boolean NOT NULL, "mentionable" boolean NOT NULL, "name" varchar NOT NULL, "permissions" varchar NOT NULL, "position" integer NOT NULL, "icon" varchar, "unicode_emoji" varchar, "tags" text ) `); await queryRunner.query(` CREATE TABLE "members" ( "index" integer PRIMARY KEY AUTOINCREMENT NOT NULL, "id" varchar NOT NULL, "guild_id" varchar NOT NULL, "nick" varchar, "joined_at" datetime NOT NULL, "premium_since" bigint, "deaf" boolean NOT NULL, "mute" boolean NOT NULL, "pending" boolean NOT NULL, "settings" text NOT NULL, "last_message_id" varchar, "joined_by" varchar ) `); await queryRunner.query(` CREATE UNIQUE INDEX "IDX_bb2bf9386ac443afbbbf9f12d3" ON "members" ("id", "guild_id") `); await queryRunner.query(` CREATE TABLE "webhooks" ( "id" varchar PRIMARY KEY NOT NULL, "type" integer NOT NULL, "name" varchar, "avatar" varchar, "token" varchar, "guild_id" varchar, "channel_id" varchar, "application_id" varchar, "user_id" varchar, "source_guild_id" varchar ) `); await queryRunner.query(` CREATE TABLE "stickers" ( "id" varchar PRIMARY KEY NOT NULL, "name" varchar NOT NULL, "description" varchar, "available" boolean, "tags" varchar, "pack_id" varchar, "guild_id" varchar, "user_id" varchar, "type" integer NOT NULL, "format_type" integer NOT NULL ) `); await queryRunner.query(` CREATE TABLE "attachments" ( "id" varchar PRIMARY KEY NOT NULL, "filename" varchar NOT NULL, "size" integer NOT NULL, "url" varchar NOT NULL, "proxy_url" varchar NOT NULL, "height" integer, "width" integer, "content_type" varchar, "message_id" varchar ) `); await queryRunner.query(` CREATE TABLE "messages" ( "id" varchar PRIMARY KEY NOT NULL, "channel_id" varchar, "guild_id" varchar, "author_id" varchar, "member_id" varchar, "webhook_id" varchar, "application_id" varchar, "content" varchar, "timestamp" datetime NOT NULL DEFAULT (datetime('now')), "edited_timestamp" datetime, "tts" boolean, "mention_everyone" boolean, "embeds" text NOT NULL, "reactions" text NOT NULL, "nonce" text, "pinned" boolean, "type" integer NOT NULL, "activity" text, "flags" varchar, "message_reference" text, "interaction" text, "components" text, "message_reference_id" varchar ) `); await queryRunner.query(` CREATE INDEX "IDX_86b9109b155eb70c0a2ca3b4b6" ON "messages" ("channel_id") `); await queryRunner.query(` CREATE INDEX "IDX_05535bc695e9f7ee104616459d" ON "messages" ("author_id") `); await queryRunner.query(` CREATE UNIQUE INDEX "IDX_3ed7a60fb7dbe04e1ba9332a8b" ON "messages" ("channel_id", "id") `); await queryRunner.query(` CREATE TABLE "read_states" ( "id" varchar PRIMARY KEY NOT NULL, "channel_id" varchar NOT NULL, "user_id" varchar NOT NULL, "last_message_id" varchar, "public_ack" varchar, "notifications_cursor" varchar, "last_pin_timestamp" datetime, "mention_count" integer ) `); await queryRunner.query(` CREATE UNIQUE INDEX "IDX_0abf8b443321bd3cf7f81ee17a" ON "read_states" ("channel_id", "user_id") `); await queryRunner.query(` CREATE TABLE "invites" ( "code" varchar PRIMARY KEY NOT NULL, "temporary" boolean NOT NULL, "uses" integer NOT NULL, "max_uses" integer NOT NULL, "max_age" integer NOT NULL, "created_at" datetime NOT NULL, "expires_at" datetime NOT NULL, "guild_id" varchar, "channel_id" varchar, "inviter_id" varchar, "target_user_id" varchar, "target_user_type" integer, "vanity_url" boolean ) `); await queryRunner.query(` CREATE TABLE "voice_states" ( "id" varchar PRIMARY KEY NOT NULL, "guild_id" varchar, "channel_id" varchar, "user_id" varchar, "session_id" varchar NOT NULL, "token" varchar, "deaf" boolean NOT NULL, "mute" boolean NOT NULL, "self_deaf" boolean NOT NULL, "self_mute" boolean NOT NULL, "self_stream" boolean, "self_video" boolean NOT NULL, "suppress" boolean NOT NULL, "request_to_speak_timestamp" datetime ) `); await queryRunner.query(` CREATE TABLE "channels" ( "id" varchar PRIMARY KEY NOT NULL, "created_at" datetime NOT NULL, "name" varchar, "icon" text, "type" integer NOT NULL, "last_message_id" varchar, "guild_id" varchar, "parent_id" varchar, "owner_id" varchar, "last_pin_timestamp" integer, "default_auto_archive_duration" integer, "position" integer, "permission_overwrites" text, "video_quality_mode" integer, "bitrate" integer, "user_limit" integer, "nsfw" boolean, "rate_limit_per_user" integer, "topic" varchar, "retention_policy_id" varchar ) `); await queryRunner.query(` CREATE TABLE "emojis" ( "id" varchar PRIMARY KEY NOT NULL, "animated" boolean NOT NULL, "available" boolean NOT NULL, "guild_id" varchar NOT NULL, "user_id" varchar, "managed" boolean NOT NULL, "name" varchar NOT NULL, "require_colons" boolean NOT NULL, "roles" text NOT NULL, "groups" text ) `); await queryRunner.query(` CREATE TABLE "templates" ( "id" varchar PRIMARY KEY NOT NULL, "code" varchar NOT NULL, "name" varchar NOT NULL, "description" varchar, "usage_count" integer, "creator_id" varchar, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL, "source_guild_id" varchar, "serialized_source_guild" text NOT NULL, CONSTRAINT "UQ_be38737bf339baf63b1daeffb55" UNIQUE ("code") ) `); await queryRunner.query(` CREATE TABLE "guilds" ( "id" varchar PRIMARY KEY NOT NULL, "afk_channel_id" varchar, "afk_timeout" integer, "banner" varchar, "default_message_notifications" integer, "description" varchar, "discovery_splash" varchar, "explicit_content_filter" integer, "features" text NOT NULL, "primary_category_id" integer, "icon" varchar, "large" boolean, "max_members" integer, "max_presences" integer, "max_video_channel_users" integer, "member_count" integer, "presence_count" integer, "template_id" varchar, "mfa_level" integer, "name" varchar NOT NULL, "owner_id" varchar, "preferred_locale" varchar, "premium_subscription_count" integer, "premium_tier" integer, "public_updates_channel_id" varchar, "rules_channel_id" varchar, "region" varchar, "splash" varchar, "system_channel_id" varchar, "system_channel_flags" integer, "unavailable" boolean, "verification_level" integer, "welcome_screen" text NOT NULL, "widget_channel_id" varchar, "widget_enabled" boolean, "nsfw_level" integer, "nsfw" boolean, "parent" varchar ) `); await queryRunner.query(` CREATE TABLE "team_members" ( "id" varchar PRIMARY KEY NOT NULL, "membership_state" integer NOT NULL, "permissions" text NOT NULL, "team_id" varchar, "user_id" varchar ) `); await queryRunner.query(` CREATE TABLE "teams" ( "id" varchar PRIMARY KEY NOT NULL, "icon" varchar, "name" varchar NOT NULL, "owner_user_id" varchar ) `); await queryRunner.query(` CREATE TABLE "applications" ( "id" varchar PRIMARY KEY NOT NULL, "name" varchar NOT NULL, "icon" varchar, "description" varchar NOT NULL, "rpc_origins" text, "bot_public" boolean NOT NULL, "bot_require_code_grant" boolean NOT NULL, "terms_of_service_url" varchar, "privacy_policy_url" varchar, "summary" varchar, "verify_key" varchar NOT NULL, "primary_sku_id" varchar, "slug" varchar, "cover_image" varchar, "flags" varchar NOT NULL, "owner_id" varchar, "team_id" varchar, "guild_id" varchar ) `); await queryRunner.query(` CREATE TABLE "audit_logs" ( "id" varchar PRIMARY KEY NOT NULL, "user_id" varchar, "action_type" integer NOT NULL, "options" text, "changes" text NOT NULL, "reason" varchar, "target_id" varchar ) `); await queryRunner.query(` CREATE TABLE "categories" ( "id" integer PRIMARY KEY NOT NULL, "name" varchar, "localizations" text NOT NULL, "is_primary" boolean ) `); await queryRunner.query(` CREATE TABLE "rate_limits" ( "id" varchar PRIMARY KEY NOT NULL, "executor_id" varchar NOT NULL, "hits" integer NOT NULL, "blocked" boolean NOT NULL, "expires_at" datetime NOT NULL ) `); await queryRunner.query(` CREATE TABLE "sessions" ( "id" varchar PRIMARY KEY NOT NULL, "user_id" varchar, "session_id" varchar NOT NULL, "activities" text, "client_info" text NOT NULL, "status" varchar NOT NULL ) `); await queryRunner.query(` CREATE TABLE "sticker_packs" ( "id" varchar PRIMARY KEY NOT NULL, "name" varchar NOT NULL, "description" varchar, "banner_asset_id" varchar, "cover_sticker_id" varchar, "coverStickerId" varchar ) `); await queryRunner.query(` CREATE TABLE "client_release" ( "id" varchar PRIMARY KEY NOT NULL, "name" varchar NOT NULL, "pub_date" varchar NOT NULL, "url" varchar NOT NULL, "deb_url" varchar NOT NULL, "osx_url" varchar NOT NULL, "win_url" varchar NOT NULL, "notes" varchar ) `); await queryRunner.query(` CREATE TABLE "notes" ( "id" varchar PRIMARY KEY NOT NULL, "content" varchar NOT NULL, "owner_id" varchar, "target_id" varchar, CONSTRAINT "UQ_74e6689b9568cc965b8bfc9150b" UNIQUE ("owner_id", "target_id") ) `); await queryRunner.query(` CREATE TABLE "member_roles" ( "index" integer NOT NULL, "role_id" varchar NOT NULL, PRIMARY KEY ("index", "role_id") ) `); await queryRunner.query(` CREATE INDEX "IDX_5d7ddc8a5f9c167f548625e772" ON "member_roles" ("index") `); await queryRunner.query(` CREATE INDEX "IDX_e9080e7a7997a0170026d5139c" ON "member_roles" ("role_id") `); await queryRunner.query(` CREATE TABLE "message_user_mentions" ( "messagesId" varchar NOT NULL, "usersId" varchar NOT NULL, PRIMARY KEY ("messagesId", "usersId") ) `); await queryRunner.query(` CREATE INDEX "IDX_a343387fc560ef378760681c23" ON "message_user_mentions" ("messagesId") `); await queryRunner.query(` CREATE INDEX "IDX_b831eb18ceebd28976239b1e2f" ON "message_user_mentions" ("usersId") `); await queryRunner.query(` CREATE TABLE "message_role_mentions" ( "messagesId" varchar NOT NULL, "rolesId" varchar NOT NULL, PRIMARY KEY ("messagesId", "rolesId") ) `); await queryRunner.query(` CREATE INDEX "IDX_a8242cf535337a490b0feaea0b" ON "message_role_mentions" ("messagesId") `); await queryRunner.query(` CREATE INDEX "IDX_29d63eb1a458200851bc37d074" ON "message_role_mentions" ("rolesId") `); await queryRunner.query(` CREATE TABLE "message_channel_mentions" ( "messagesId" varchar NOT NULL, "channelsId" varchar NOT NULL, PRIMARY KEY ("messagesId", "channelsId") ) `); await queryRunner.query(` CREATE INDEX "IDX_2a27102ecd1d81b4582a436092" ON "message_channel_mentions" ("messagesId") `); await queryRunner.query(` CREATE INDEX "IDX_bdb8c09e1464cabf62105bf4b9" ON "message_channel_mentions" ("channelsId") `); await queryRunner.query(` CREATE TABLE "message_stickers" ( "messagesId" varchar NOT NULL, "stickersId" varchar NOT NULL, PRIMARY KEY ("messagesId", "stickersId") ) `); await queryRunner.query(` CREATE INDEX "IDX_40bb6f23e7cc133292e92829d2" ON "message_stickers" ("messagesId") `); await queryRunner.query(` CREATE INDEX "IDX_e22a70819d07659c7a71c112a1" ON "message_stickers" ("stickersId") `); await queryRunner.query(` DROP INDEX "IDX_a0b2ff0a598df0b0d055934a17" `); await queryRunner.query(` CREATE TABLE "temporary_relationships" ( "id" varchar PRIMARY KEY NOT NULL, "from_id" varchar NOT NULL, "to_id" varchar NOT NULL, "nickname" varchar, "type" integer NOT NULL, CONSTRAINT "FK_9af4194bab1250b1c584ae4f1d7" FOREIGN KEY ("from_id") REFERENCES "users" ("id") ON DELETE CASCADE ON UPDATE NO ACTION, CONSTRAINT "FK_9c7f6b98a9843b76dce1b0c878b" FOREIGN KEY ("to_id") REFERENCES "users" ("id") ON DELETE CASCADE ON UPDATE NO ACTION ) `); await queryRunner.query(` INSERT INTO "temporary_relationships"("id", "from_id", "to_id", "nickname", "type") SELECT "id", "from_id", "to_id", "nickname", "type" FROM "relationships" `); await queryRunner.query(` DROP TABLE "relationships" `); await queryRunner.query(` ALTER TABLE "temporary_relationships" RENAME TO "relationships" `); await queryRunner.query(` CREATE UNIQUE INDEX "IDX_a0b2ff0a598df0b0d055934a17" ON "relationships" ("from_id", "to_id") `); await queryRunner.query(` CREATE TABLE "temporary_connected_accounts" ( "id" varchar PRIMARY KEY NOT NULL, "user_id" varchar, "access_token" varchar NOT NULL, "friend_sync" boolean NOT NULL, "name" varchar NOT NULL, "revoked" boolean NOT NULL, "show_activity" boolean NOT NULL, "type" varchar NOT NULL, "verified" boolean NOT NULL, "visibility" integer NOT NULL, CONSTRAINT "FK_f47244225a6a1eac04a3463dd90" FOREIGN KEY ("user_id") REFERENCES "users" ("id") ON DELETE CASCADE ON UPDATE NO ACTION ) `); await queryRunner.query(` INSERT INTO "temporary_connected_accounts"( "id", "user_id", "access_token", "friend_sync", "name", "revoked", "show_activity", "type", "verified", "visibility" ) SELECT "id", "user_id", "access_token", "friend_sync", "name", "revoked", "show_activity", "type", "verified", "visibility" FROM "connected_accounts" `); await queryRunner.query(` DROP TABLE "connected_accounts" `); await queryRunner.query(` ALTER TABLE "temporary_connected_accounts" RENAME TO "connected_accounts" `); await queryRunner.query(` CREATE TABLE "temporary_backup_codes" ( "id" varchar PRIMARY KEY NOT NULL, "code" varchar NOT NULL, "consumed" boolean NOT NULL, "expired" boolean NOT NULL, "user_id" varchar, CONSTRAINT "FK_70066ea80d2f4b871beda32633b" FOREIGN KEY ("user_id") REFERENCES "users" ("id") ON DELETE CASCADE ON UPDATE NO ACTION ) `); await queryRunner.query(` INSERT INTO "temporary_backup_codes"("id", "code", "consumed", "expired", "user_id") SELECT "id", "code", "consumed", "expired", "user_id" FROM "backup_codes" `); await queryRunner.query(` DROP TABLE "backup_codes" `); await queryRunner.query(` ALTER TABLE "temporary_backup_codes" RENAME TO "backup_codes" `); await queryRunner.query(` CREATE TABLE "temporary_bans" ( "id" varchar PRIMARY KEY NOT NULL, "user_id" varchar, "guild_id" varchar, "executor_id" varchar, "ip" varchar NOT NULL, "reason" varchar, CONSTRAINT "FK_5999e8e449f80a236ff72023559" FOREIGN KEY ("user_id") REFERENCES "users" ("id") ON DELETE CASCADE ON UPDATE NO ACTION, CONSTRAINT "FK_9d3ab7dd180ebdd245cdb66ecad" FOREIGN KEY ("guild_id") REFERENCES "guilds" ("id") ON DELETE CASCADE ON UPDATE NO ACTION, CONSTRAINT "FK_07ad88c86d1f290d46748410d58" FOREIGN KEY ("executor_id") REFERENCES "users" ("id") ON DELETE NO ACTION ON UPDATE NO ACTION ) `); await queryRunner.query(` INSERT INTO "temporary_bans"( "id", "user_id", "guild_id", "executor_id", "ip", "reason" ) SELECT "id", "user_id", "guild_id", "executor_id", "ip", "reason" FROM "bans" `); await queryRunner.query(` DROP TABLE "bans" `); await queryRunner.query(` ALTER TABLE "temporary_bans" RENAME TO "bans" `); await queryRunner.query(` CREATE TABLE "temporary_recipients" ( "id" varchar PRIMARY KEY NOT NULL, "channel_id" varchar NOT NULL, "user_id" varchar NOT NULL, "closed" boolean NOT NULL DEFAULT (0), CONSTRAINT "FK_2f18ee1ba667f233ae86c0ea60e" FOREIGN KEY ("channel_id") REFERENCES "channels" ("id") ON DELETE CASCADE ON UPDATE NO ACTION, CONSTRAINT "FK_6157e8b6ba4e6e3089616481fe2" FOREIGN KEY ("user_id") REFERENCES "users" ("id") ON DELETE CASCADE ON UPDATE NO ACTION ) `); await queryRunner.query(` INSERT INTO "temporary_recipients"("id", "channel_id", "user_id", "closed") SELECT "id", "channel_id", "user_id", "closed" FROM "recipients" `); await queryRunner.query(` DROP TABLE "recipients" `); await queryRunner.query(` ALTER TABLE "temporary_recipients" RENAME TO "recipients" `); await queryRunner.query(` CREATE TABLE "temporary_roles" ( "id" varchar PRIMARY KEY NOT NULL, "guild_id" varchar, "color" integer NOT NULL, "hoist" boolean NOT NULL, "managed" boolean NOT NULL, "mentionable" boolean NOT NULL, "name" varchar NOT NULL, "permissions" varchar NOT NULL, "position" integer NOT NULL, "icon" varchar, "unicode_emoji" varchar, "tags" text, CONSTRAINT "FK_c32c1ab1c4dc7dcb0278c4b1b8b" FOREIGN KEY ("guild_id") REFERENCES "guilds" ("id") ON DELETE CASCADE ON UPDATE NO ACTION ) `); await queryRunner.query(` INSERT INTO "temporary_roles"( "id", "guild_id", "color", "hoist", "managed", "mentionable", "name", "permissions", "position", "icon", "unicode_emoji", "tags" ) SELECT "id", "guild_id", "color", "hoist", "managed", "mentionable", "name", "permissions", "position", "icon", "unicode_emoji", "tags" FROM "roles" `); await queryRunner.query(` DROP TABLE "roles" `); await queryRunner.query(` ALTER TABLE "temporary_roles" RENAME TO "roles" `); await queryRunner.query(` DROP INDEX "IDX_bb2bf9386ac443afbbbf9f12d3" `); await queryRunner.query(` CREATE TABLE "temporary_members" ( "index" integer PRIMARY KEY AUTOINCREMENT NOT NULL, "id" varchar NOT NULL, "guild_id" varchar NOT NULL, "nick" varchar, "joined_at" datetime NOT NULL, "premium_since" bigint, "deaf" boolean NOT NULL, "mute" boolean NOT NULL, "pending" boolean NOT NULL, "settings" text NOT NULL, "last_message_id" varchar, "joined_by" varchar, CONSTRAINT "FK_28b53062261b996d9c99fa12404" FOREIGN KEY ("id") REFERENCES "users" ("id") ON DELETE CASCADE ON UPDATE NO ACTION, CONSTRAINT "FK_16aceddd5b89825b8ed6029ad1c" FOREIGN KEY ("guild_id") REFERENCES "guilds" ("id") ON DELETE CASCADE ON UPDATE NO ACTION ) `); await queryRunner.query(` INSERT INTO "temporary_members"( "index", "id", "guild_id", "nick", "joined_at", "premium_since", "deaf", "mute", "pending", "settings", "last_message_id", "joined_by" ) SELECT "index", "id", "guild_id", "nick", "joined_at", "premium_since", "deaf", "mute", "pending", "settings", "last_message_id", "joined_by" FROM "members" `); await queryRunner.query(` DROP TABLE "members" `); await queryRunner.query(` ALTER TABLE "temporary_members" RENAME TO "members" `); await queryRunner.query(` CREATE UNIQUE INDEX "IDX_bb2bf9386ac443afbbbf9f12d3" ON "members" ("id", "guild_id") `); await queryRunner.query(` CREATE TABLE "temporary_webhooks" ( "id" varchar PRIMARY KEY NOT NULL, "type" integer NOT NULL, "name" varchar, "avatar" varchar, "token" varchar, "guild_id" varchar, "channel_id" varchar, "application_id" varchar, "user_id" varchar, "source_guild_id" varchar, CONSTRAINT "FK_487a7af59d189f744fe394368fc" FOREIGN KEY ("guild_id") REFERENCES "guilds" ("id") ON DELETE CASCADE ON UPDATE NO ACTION, CONSTRAINT "FK_df528cf77e82f8032230e7e37d8" FOREIGN KEY ("channel_id") REFERENCES "channels" ("id") ON DELETE CASCADE ON UPDATE NO ACTION, CONSTRAINT "FK_c3e5305461931763b56aa905f1c" FOREIGN KEY ("application_id") REFERENCES "applications" ("id") ON DELETE CASCADE ON UPDATE NO ACTION, CONSTRAINT "FK_0d523f6f997c86e052c49b1455f" FOREIGN KEY ("user_id") REFERENCES "users" ("id") ON DELETE CASCADE ON UPDATE NO ACTION, CONSTRAINT "FK_3a285f4f49c40e0706d3018bc9f" FOREIGN KEY ("source_guild_id") REFERENCES "guilds" ("id") ON DELETE CASCADE ON UPDATE NO ACTION ) `); await queryRunner.query(` INSERT INTO "temporary_webhooks"( "id", "type", "name", "avatar", "token", "guild_id", "channel_id", "application_id", "user_id", "source_guild_id" ) SELECT "id", "type", "name", "avatar", "token", "guild_id", "channel_id", "application_id", "user_id", "source_guild_id" FROM "webhooks" `); await queryRunner.query(` DROP TABLE "webhooks" `); await queryRunner.query(` ALTER TABLE "temporary_webhooks" RENAME TO "webhooks" `); await queryRunner.query(` CREATE TABLE "temporary_stickers" ( "id" varchar PRIMARY KEY NOT NULL, "name" varchar NOT NULL, "description" varchar, "available" boolean, "tags" varchar, "pack_id" varchar, "guild_id" varchar, "user_id" varchar, "type" integer NOT NULL, "format_type" integer NOT NULL, CONSTRAINT "FK_e7cfa5cefa6661b3fb8fda8ce69" FOREIGN KEY ("pack_id") REFERENCES "sticker_packs" ("id") ON DELETE CASCADE ON UPDATE NO ACTION, CONSTRAINT "FK_193d551d852aca5347ef5c9f205" FOREIGN KEY ("guild_id") REFERENCES "guilds" ("id") ON DELETE CASCADE ON UPDATE NO ACTION, CONSTRAINT "FK_8f4ee73f2bb2325ff980502e158" FOREIGN KEY ("user_id") REFERENCES "users" ("id") ON DELETE CASCADE ON UPDATE NO ACTION ) `); await queryRunner.query(` INSERT INTO "temporary_stickers"( "id", "name", "description", "available", "tags", "pack_id", "guild_id", "user_id", "type", "format_type" ) SELECT "id", "name", "description", "available", "tags", "pack_id", "guild_id", "user_id", "type", "format_type" FROM "stickers" `); await queryRunner.query(` DROP TABLE "stickers" `); await queryRunner.query(` ALTER TABLE "temporary_stickers" RENAME TO "stickers" `); await queryRunner.query(` CREATE TABLE "temporary_attachments" ( "id" varchar PRIMARY KEY NOT NULL, "filename" varchar NOT NULL, "size" integer NOT NULL, "url" varchar NOT NULL, "proxy_url" varchar NOT NULL, "height" integer, "width" integer, "content_type" varchar, "message_id" varchar, CONSTRAINT "FK_623e10eec51ada466c5038979e3" FOREIGN KEY ("message_id") REFERENCES "messages" ("id") ON DELETE CASCADE ON UPDATE NO ACTION ) `); await queryRunner.query(` INSERT INTO "temporary_attachments"( "id", "filename", "size", "url", "proxy_url", "height", "width", "content_type", "message_id" ) SELECT "id", "filename", "size", "url", "proxy_url", "height", "width", "content_type", "message_id" FROM "attachments" `); await queryRunner.query(` DROP TABLE "attachments" `); await queryRunner.query(` ALTER TABLE "temporary_attachments" RENAME TO "attachments" `); await queryRunner.query(` DROP INDEX "IDX_86b9109b155eb70c0a2ca3b4b6" `); await queryRunner.query(` DROP INDEX "IDX_05535bc695e9f7ee104616459d" `); await queryRunner.query(` DROP INDEX "IDX_3ed7a60fb7dbe04e1ba9332a8b" `); await queryRunner.query(` CREATE TABLE "temporary_messages" ( "id" varchar PRIMARY KEY NOT NULL, "channel_id" varchar, "guild_id" varchar, "author_id" varchar, "member_id" varchar, "webhook_id" varchar, "application_id" varchar, "content" varchar, "timestamp" datetime NOT NULL DEFAULT (datetime('now')), "edited_timestamp" datetime, "tts" boolean, "mention_everyone" boolean, "embeds" text NOT NULL, "reactions" text NOT NULL, "nonce" text, "pinned" boolean, "type" integer NOT NULL, "activity" text, "flags" varchar, "message_reference" text, "interaction" text, "components" text, "message_reference_id" varchar, CONSTRAINT "FK_86b9109b155eb70c0a2ca3b4b6d" FOREIGN KEY ("channel_id") REFERENCES "channels" ("id") ON DELETE CASCADE ON UPDATE NO ACTION, CONSTRAINT "FK_b193588441b085352a4c0109423" FOREIGN KEY ("guild_id") REFERENCES "guilds" ("id") ON DELETE CASCADE ON UPDATE NO ACTION, CONSTRAINT "FK_05535bc695e9f7ee104616459d3" FOREIGN KEY ("author_id") REFERENCES "users" ("id") ON DELETE CASCADE ON UPDATE NO ACTION, CONSTRAINT "FK_b0525304f2262b7014245351c76" FOREIGN KEY ("member_id") REFERENCES "users" ("id") ON DELETE CASCADE ON UPDATE NO ACTION, CONSTRAINT "FK_f83c04bcf1df4e5c0e7a52ed348" FOREIGN KEY ("webhook_id") REFERENCES "webhooks" ("id") ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT "FK_5d3ec1cb962de6488637fd779d6" FOREIGN KEY ("application_id") REFERENCES "applications" ("id") ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT "FK_61a92bb65b302a76d9c1fcd3174" FOREIGN KEY ("message_reference_id") REFERENCES "messages" ("id") ON DELETE NO ACTION ON UPDATE NO ACTION ) `); await queryRunner.query(` INSERT INTO "temporary_messages"( "id", "channel_id", "guild_id", "author_id", "member_id", "webhook_id", "application_id", "content", "timestamp", "edited_timestamp", "tts", "mention_everyone", "embeds", "reactions", "nonce", "pinned", "type", "activity", "flags", "message_reference", "interaction", "components", "message_reference_id" ) SELECT "id", "channel_id", "guild_id", "author_id", "member_id", "webhook_id", "application_id", "content", "timestamp", "edited_timestamp", "tts", "mention_everyone", "embeds", "reactions", "nonce", "pinned", "type", "activity", "flags", "message_reference", "interaction", "components", "message_reference_id" FROM "messages" `); await queryRunner.query(` DROP TABLE "messages" `); await queryRunner.query(` ALTER TABLE "temporary_messages" RENAME TO "messages" `); await queryRunner.query(` CREATE INDEX "IDX_86b9109b155eb70c0a2ca3b4b6" ON "messages" ("channel_id") `); await queryRunner.query(` CREATE INDEX "IDX_05535bc695e9f7ee104616459d" ON "messages" ("author_id") `); await queryRunner.query(` CREATE UNIQUE INDEX "IDX_3ed7a60fb7dbe04e1ba9332a8b" ON "messages" ("channel_id", "id") `); await queryRunner.query(` DROP INDEX "IDX_0abf8b443321bd3cf7f81ee17a" `); await queryRunner.query(` CREATE TABLE "temporary_read_states" ( "id" varchar PRIMARY KEY NOT NULL, "channel_id" varchar NOT NULL, "user_id" varchar NOT NULL, "last_message_id" varchar, "public_ack" varchar, "notifications_cursor" varchar, "last_pin_timestamp" datetime, "mention_count" integer, CONSTRAINT "FK_40da2fca4e0eaf7a23b5bfc5d34" FOREIGN KEY ("channel_id") REFERENCES "channels" ("id") ON DELETE CASCADE ON UPDATE NO ACTION, CONSTRAINT "FK_195f92e4dd1254a4e348c043763" FOREIGN KEY ("user_id") REFERENCES "users" ("id") ON DELETE CASCADE ON UPDATE NO ACTION ) `); await queryRunner.query(` INSERT INTO "temporary_read_states"( "id", "channel_id", "user_id", "last_message_id", "public_ack", "notifications_cursor", "last_pin_timestamp", "mention_count" ) SELECT "id", "channel_id", "user_id", "last_message_id", "public_ack", "notifications_cursor", "last_pin_timestamp", "mention_count" FROM "read_states" `); await queryRunner.query(` DROP TABLE "read_states" `); await queryRunner.query(` ALTER TABLE "temporary_read_states" RENAME TO "read_states" `); await queryRunner.query(` CREATE UNIQUE INDEX "IDX_0abf8b443321bd3cf7f81ee17a" ON "read_states" ("channel_id", "user_id") `); await queryRunner.query(` CREATE TABLE "temporary_invites" ( "code" varchar PRIMARY KEY NOT NULL, "temporary" boolean NOT NULL, "uses" integer NOT NULL, "max_uses" integer NOT NULL, "max_age" integer NOT NULL, "created_at" datetime NOT NULL, "expires_at" datetime NOT NULL, "guild_id" varchar, "channel_id" varchar, "inviter_id" varchar, "target_user_id" varchar, "target_user_type" integer, "vanity_url" boolean, CONSTRAINT "FK_3f4939aa1461e8af57fea3fb05d" FOREIGN KEY ("guild_id") REFERENCES "guilds" ("id") ON DELETE CASCADE ON UPDATE NO ACTION, CONSTRAINT "FK_6a15b051fe5050aa00a4b9ff0f6" FOREIGN KEY ("channel_id") REFERENCES "channels" ("id") ON DELETE CASCADE ON UPDATE NO ACTION, CONSTRAINT "FK_15c35422032e0b22b4ada95f48f" FOREIGN KEY ("inviter_id") REFERENCES "users" ("id") ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT "FK_11a0d394f8fc649c19ce5f16b59" FOREIGN KEY ("target_user_id") REFERENCES "users" ("id") ON DELETE CASCADE ON UPDATE NO ACTION ) `); await queryRunner.query(` INSERT INTO "temporary_invites"( "code", "temporary", "uses", "max_uses", "max_age", "created_at", "expires_at", "guild_id", "channel_id", "inviter_id", "target_user_id", "target_user_type", "vanity_url" ) SELECT "code", "temporary", "uses", "max_uses", "max_age", "created_at", "expires_at", "guild_id", "channel_id", "inviter_id", "target_user_id", "target_user_type", "vanity_url" FROM "invites" `); await queryRunner.query(` DROP TABLE "invites" `); await queryRunner.query(` ALTER TABLE "temporary_invites" RENAME TO "invites" `); await queryRunner.query(` CREATE TABLE "temporary_voice_states" ( "id" varchar PRIMARY KEY NOT NULL, "guild_id" varchar, "channel_id" varchar, "user_id" varchar, "session_id" varchar NOT NULL, "token" varchar, "deaf" boolean NOT NULL, "mute" boolean NOT NULL, "self_deaf" boolean NOT NULL, "self_mute" boolean NOT NULL, "self_stream" boolean, "self_video" boolean NOT NULL, "suppress" boolean NOT NULL, "request_to_speak_timestamp" datetime, CONSTRAINT "FK_03779ef216d4b0358470d9cb748" FOREIGN KEY ("guild_id") REFERENCES "guilds" ("id") ON DELETE CASCADE ON UPDATE NO ACTION, CONSTRAINT "FK_9f8d389866b40b6657edd026dd4" FOREIGN KEY ("channel_id") REFERENCES "channels" ("id") ON DELETE CASCADE ON UPDATE NO ACTION, CONSTRAINT "FK_5fe1d5f931a67e85039c640001b" FOREIGN KEY ("user_id") REFERENCES "users" ("id") ON DELETE CASCADE ON UPDATE NO ACTION ) `); await queryRunner.query(` INSERT INTO "temporary_voice_states"( "id", "guild_id", "channel_id", "user_id", "session_id", "token", "deaf", "mute", "self_deaf", "self_mute", "self_stream", "self_video", "suppress", "request_to_speak_timestamp" ) SELECT "id", "guild_id", "channel_id", "user_id", "session_id", "token", "deaf", "mute", "self_deaf", "self_mute", "self_stream", "self_video", "suppress", "request_to_speak_timestamp" FROM "voice_states" `); await queryRunner.query(` DROP TABLE "voice_states" `); await queryRunner.query(` ALTER TABLE "temporary_voice_states" RENAME TO "voice_states" `); await queryRunner.query(` CREATE TABLE "temporary_channels" ( "id" varchar PRIMARY KEY NOT NULL, "created_at" datetime NOT NULL, "name" varchar, "icon" text, "type" integer NOT NULL, "last_message_id" varchar, "guild_id" varchar, "parent_id" varchar, "owner_id" varchar, "last_pin_timestamp" integer, "default_auto_archive_duration" integer, "position" integer, "permission_overwrites" text, "video_quality_mode" integer, "bitrate" integer, "user_limit" integer, "nsfw" boolean, "rate_limit_per_user" integer, "topic" varchar, "retention_policy_id" varchar, CONSTRAINT "FK_c253dafe5f3a03ec00cd8fb4581" FOREIGN KEY ("guild_id") REFERENCES "guilds" ("id") ON DELETE CASCADE ON UPDATE NO ACTION, CONSTRAINT "FK_3274522d14af40540b1a883fc80" FOREIGN KEY ("parent_id") REFERENCES "channels" ("id") ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT "FK_3873ed438575cce703ecff4fc7b" FOREIGN KEY ("owner_id") REFERENCES "users" ("id") ON DELETE NO ACTION ON UPDATE NO ACTION ) `); await queryRunner.query(` INSERT INTO "temporary_channels"( "id", "created_at", "name", "icon", "type", "last_message_id", "guild_id", "parent_id", "owner_id", "last_pin_timestamp", "default_auto_archive_duration", "position", "permission_overwrites", "video_quality_mode", "bitrate", "user_limit", "nsfw", "rate_limit_per_user", "topic", "retention_policy_id" ) SELECT "id", "created_at", "name", "icon", "type", "last_message_id", "guild_id", "parent_id", "owner_id", "last_pin_timestamp", "default_auto_archive_duration", "position", "permission_overwrites", "video_quality_mode", "bitrate", "user_limit", "nsfw", "rate_limit_per_user", "topic", "retention_policy_id" FROM "channels" `); await queryRunner.query(` DROP TABLE "channels" `); await queryRunner.query(` ALTER TABLE "temporary_channels" RENAME TO "channels" `); await queryRunner.query(` CREATE TABLE "temporary_emojis" ( "id" varchar PRIMARY KEY NOT NULL, "animated" boolean NOT NULL, "available" boolean NOT NULL, "guild_id" varchar NOT NULL, "user_id" varchar, "managed" boolean NOT NULL, "name" varchar NOT NULL, "require_colons" boolean NOT NULL, "roles" text NOT NULL, "groups" text, CONSTRAINT "FK_4b988e0db89d94cebcf07f598cc" FOREIGN KEY ("guild_id") REFERENCES "guilds" ("id") ON DELETE CASCADE ON UPDATE NO ACTION, CONSTRAINT "FK_fa7ddd5f9a214e28ce596548421" FOREIGN KEY ("user_id") REFERENCES "users" ("id") ON DELETE NO ACTION ON UPDATE NO ACTION ) `); await queryRunner.query(` INSERT INTO "temporary_emojis"( "id", "animated", "available", "guild_id", "user_id", "managed", "name", "require_colons", "roles", "groups" ) SELECT "id", "animated", "available", "guild_id", "user_id", "managed", "name", "require_colons", "roles", "groups" FROM "emojis" `); await queryRunner.query(` DROP TABLE "emojis" `); await queryRunner.query(` ALTER TABLE "temporary_emojis" RENAME TO "emojis" `); await queryRunner.query(` CREATE TABLE "temporary_templates" ( "id" varchar PRIMARY KEY NOT NULL, "code" varchar NOT NULL, "name" varchar NOT NULL, "description" varchar, "usage_count" integer, "creator_id" varchar, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL, "source_guild_id" varchar, "serialized_source_guild" text NOT NULL, CONSTRAINT "UQ_be38737bf339baf63b1daeffb55" UNIQUE ("code"), CONSTRAINT "FK_d7374b7f8f5fbfdececa4fb62e1" FOREIGN KEY ("creator_id") REFERENCES "users" ("id") ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT "FK_445d00eaaea0e60a017a5ed0c11" FOREIGN KEY ("source_guild_id") REFERENCES "guilds" ("id") ON DELETE NO ACTION ON UPDATE NO ACTION ) `); await queryRunner.query(` INSERT INTO "temporary_templates"( "id", "code", "name", "description", "usage_count", "creator_id", "created_at", "updated_at", "source_guild_id", "serialized_source_guild" ) SELECT "id", "code", "name", "description", "usage_count", "creator_id", "created_at", "updated_at", "source_guild_id", "serialized_source_guild" FROM "templates" `); await queryRunner.query(` DROP TABLE "templates" `); await queryRunner.query(` ALTER TABLE "temporary_templates" RENAME TO "templates" `); await queryRunner.query(` CREATE TABLE "temporary_guilds" ( "id" varchar PRIMARY KEY NOT NULL, "afk_channel_id" varchar, "afk_timeout" integer, "banner" varchar, "default_message_notifications" integer, "description" varchar, "discovery_splash" varchar, "explicit_content_filter" integer, "features" text NOT NULL, "primary_category_id" integer, "icon" varchar, "large" boolean, "max_members" integer, "max_presences" integer, "max_video_channel_users" integer, "member_count" integer, "presence_count" integer, "template_id" varchar, "mfa_level" integer, "name" varchar NOT NULL, "owner_id" varchar, "preferred_locale" varchar, "premium_subscription_count" integer, "premium_tier" integer, "public_updates_channel_id" varchar, "rules_channel_id" varchar, "region" varchar, "splash" varchar, "system_channel_id" varchar, "system_channel_flags" integer, "unavailable" boolean, "verification_level" integer, "welcome_screen" text NOT NULL, "widget_channel_id" varchar, "widget_enabled" boolean, "nsfw_level" integer, "nsfw" boolean, "parent" varchar, CONSTRAINT "FK_f591a66b8019d87b0fe6c12dad6" FOREIGN KEY ("afk_channel_id") REFERENCES "channels" ("id") ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT "FK_e2a2f873a64a5cf62526de42325" FOREIGN KEY ("template_id") REFERENCES "templates" ("id") ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT "FK_fc1a451727e3643ca572a3bb394" FOREIGN KEY ("owner_id") REFERENCES "users" ("id") ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT "FK_8d450b016dc8bec35f36729e4b0" FOREIGN KEY ("public_updates_channel_id") REFERENCES "channels" ("id") ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT "FK_95828668aa333460582e0ca6396" FOREIGN KEY ("rules_channel_id") REFERENCES "channels" ("id") ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT "FK_cfc3d3ad260f8121c95b31a1fce" FOREIGN KEY ("system_channel_id") REFERENCES "channels" ("id") ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT "FK_9d1d665379eefde7876a17afa99" FOREIGN KEY ("widget_channel_id") REFERENCES "channels" ("id") ON DELETE NO ACTION ON UPDATE NO ACTION ) `); await queryRunner.query(` INSERT INTO "temporary_guilds"( "id", "afk_channel_id", "afk_timeout", "banner", "default_message_notifications", "description", "discovery_splash", "explicit_content_filter", "features", "primary_category_id", "icon", "large", "max_members", "max_presences", "max_video_channel_users", "member_count", "presence_count", "template_id", "mfa_level", "name", "owner_id", "preferred_locale", "premium_subscription_count", "premium_tier", "public_updates_channel_id", "rules_channel_id", "region", "splash", "system_channel_id", "system_channel_flags", "unavailable", "verification_level", "welcome_screen", "widget_channel_id", "widget_enabled", "nsfw_level", "nsfw", "parent" ) SELECT "id", "afk_channel_id", "afk_timeout", "banner", "default_message_notifications", "description", "discovery_splash", "explicit_content_filter", "features", "primary_category_id", "icon", "large", "max_members", "max_presences", "max_video_channel_users", "member_count", "presence_count", "template_id", "mfa_level", "name", "owner_id", "preferred_locale", "premium_subscription_count", "premium_tier", "public_updates_channel_id", "rules_channel_id", "region", "splash", "system_channel_id", "system_channel_flags", "unavailable", "verification_level", "welcome_screen", "widget_channel_id", "widget_enabled", "nsfw_level", "nsfw", "parent" FROM "guilds" `); await queryRunner.query(` DROP TABLE "guilds" `); await queryRunner.query(` ALTER TABLE "temporary_guilds" RENAME TO "guilds" `); await queryRunner.query(` CREATE TABLE "temporary_team_members" ( "id" varchar PRIMARY KEY NOT NULL, "membership_state" integer NOT NULL, "permissions" text NOT NULL, "team_id" varchar, "user_id" varchar, CONSTRAINT "FK_fdad7d5768277e60c40e01cdcea" FOREIGN KEY ("team_id") REFERENCES "teams" ("id") ON DELETE CASCADE ON UPDATE NO ACTION, CONSTRAINT "FK_c2bf4967c8c2a6b845dadfbf3d4" FOREIGN KEY ("user_id") REFERENCES "users" ("id") ON DELETE CASCADE ON UPDATE NO ACTION ) `); await queryRunner.query(` INSERT INTO "temporary_team_members"( "id", "membership_state", "permissions", "team_id", "user_id" ) SELECT "id", "membership_state", "permissions", "team_id", "user_id" FROM "team_members" `); await queryRunner.query(` DROP TABLE "team_members" `); await queryRunner.query(` ALTER TABLE "temporary_team_members" RENAME TO "team_members" `); await queryRunner.query(` CREATE TABLE "temporary_teams" ( "id" varchar PRIMARY KEY NOT NULL, "icon" varchar, "name" varchar NOT NULL, "owner_user_id" varchar, CONSTRAINT "FK_13f00abf7cb6096c43ecaf8c108" FOREIGN KEY ("owner_user_id") REFERENCES "users" ("id") ON DELETE NO ACTION ON UPDATE NO ACTION ) `); await queryRunner.query(` INSERT INTO "temporary_teams"("id", "icon", "name", "owner_user_id") SELECT "id", "icon", "name", "owner_user_id" FROM "teams" `); await queryRunner.query(` DROP TABLE "teams" `); await queryRunner.query(` ALTER TABLE "temporary_teams" RENAME TO "teams" `); await queryRunner.query(` CREATE TABLE "temporary_applications" ( "id" varchar PRIMARY KEY NOT NULL, "name" varchar NOT NULL, "icon" varchar, "description" varchar NOT NULL, "rpc_origins" text, "bot_public" boolean NOT NULL, "bot_require_code_grant" boolean NOT NULL, "terms_of_service_url" varchar, "privacy_policy_url" varchar, "summary" varchar, "verify_key" varchar NOT NULL, "primary_sku_id" varchar, "slug" varchar, "cover_image" varchar, "flags" varchar NOT NULL, "owner_id" varchar, "team_id" varchar, "guild_id" varchar, CONSTRAINT "FK_e57508958bf92b9d9d25231b5e8" FOREIGN KEY ("owner_id") REFERENCES "users" ("id") ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT "FK_a36ed02953077f408d0f3ebc424" FOREIGN KEY ("team_id") REFERENCES "teams" ("id") ON DELETE CASCADE ON UPDATE NO ACTION, CONSTRAINT "FK_e5bf78cdbbe9ba91062d74c5aba" FOREIGN KEY ("guild_id") REFERENCES "guilds" ("id") ON DELETE NO ACTION ON UPDATE NO ACTION ) `); await queryRunner.query(` INSERT INTO "temporary_applications"( "id", "name", "icon", "description", "rpc_origins", "bot_public", "bot_require_code_grant", "terms_of_service_url", "privacy_policy_url", "summary", "verify_key", "primary_sku_id", "slug", "cover_image", "flags", "owner_id", "team_id", "guild_id" ) SELECT "id", "name", "icon", "description", "rpc_origins", "bot_public", "bot_require_code_grant", "terms_of_service_url", "privacy_policy_url", "summary", "verify_key", "primary_sku_id", "slug", "cover_image", "flags", "owner_id", "team_id", "guild_id" FROM "applications" `); await queryRunner.query(` DROP TABLE "applications" `); await queryRunner.query(` ALTER TABLE "temporary_applications" RENAME TO "applications" `); await queryRunner.query(` CREATE TABLE "temporary_audit_logs" ( "id" varchar PRIMARY KEY NOT NULL, "user_id" varchar, "action_type" integer NOT NULL, "options" text, "changes" text NOT NULL, "reason" varchar, "target_id" varchar, CONSTRAINT "FK_3cd01cd3ae7aab010310d96ac8e" FOREIGN KEY ("target_id") REFERENCES "users" ("id") ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT "FK_bd2726fd31b35443f2245b93ba0" FOREIGN KEY ("user_id") REFERENCES "users" ("id") ON DELETE NO ACTION ON UPDATE NO ACTION ) `); await queryRunner.query(` INSERT INTO "temporary_audit_logs"( "id", "user_id", "action_type", "options", "changes", "reason", "target_id" ) SELECT "id", "user_id", "action_type", "options", "changes", "reason", "target_id" FROM "audit_logs" `); await queryRunner.query(` DROP TABLE "audit_logs" `); await queryRunner.query(` ALTER TABLE "temporary_audit_logs" RENAME TO "audit_logs" `); await queryRunner.query(` CREATE TABLE "temporary_sessions" ( "id" varchar PRIMARY KEY NOT NULL, "user_id" varchar, "session_id" varchar NOT NULL, "activities" text, "client_info" text NOT NULL, "status" varchar NOT NULL, CONSTRAINT "FK_085d540d9f418cfbdc7bd55bb19" FOREIGN KEY ("user_id") REFERENCES "users" ("id") ON DELETE CASCADE ON UPDATE NO ACTION ) `); await queryRunner.query(` INSERT INTO "temporary_sessions"( "id", "user_id", "session_id", "activities", "client_info", "status" ) SELECT "id", "user_id", "session_id", "activities", "client_info", "status" FROM "sessions" `); await queryRunner.query(` DROP TABLE "sessions" `); await queryRunner.query(` ALTER TABLE "temporary_sessions" RENAME TO "sessions" `); await queryRunner.query(` CREATE TABLE "temporary_sticker_packs" ( "id" varchar PRIMARY KEY NOT NULL, "name" varchar NOT NULL, "description" varchar, "banner_asset_id" varchar, "cover_sticker_id" varchar, "coverStickerId" varchar, CONSTRAINT "FK_448fafba4355ee1c837bbc865f1" FOREIGN KEY ("coverStickerId") REFERENCES "stickers" ("id") ON DELETE NO ACTION ON UPDATE NO ACTION ) `); await queryRunner.query(` INSERT INTO "temporary_sticker_packs"( "id", "name", "description", "banner_asset_id", "cover_sticker_id", "coverStickerId" ) SELECT "id", "name", "description", "banner_asset_id", "cover_sticker_id", "coverStickerId" FROM "sticker_packs" `); await queryRunner.query(` DROP TABLE "sticker_packs" `); await queryRunner.query(` ALTER TABLE "temporary_sticker_packs" RENAME TO "sticker_packs" `); await queryRunner.query(` CREATE TABLE "temporary_notes" ( "id" varchar PRIMARY KEY NOT NULL, "content" varchar NOT NULL, "owner_id" varchar, "target_id" varchar, CONSTRAINT "UQ_74e6689b9568cc965b8bfc9150b" UNIQUE ("owner_id", "target_id"), CONSTRAINT "FK_f9e103f8ae67cb1787063597925" FOREIGN KEY ("owner_id") REFERENCES "users" ("id") ON DELETE CASCADE ON UPDATE NO ACTION, CONSTRAINT "FK_23e08e5b4481711d573e1abecdc" FOREIGN KEY ("target_id") REFERENCES "users" ("id") ON DELETE CASCADE ON UPDATE NO ACTION ) `); await queryRunner.query(` INSERT INTO "temporary_notes"("id", "content", "owner_id", "target_id") SELECT "id", "content", "owner_id", "target_id" FROM "notes" `); await queryRunner.query(` DROP TABLE "notes" `); await queryRunner.query(` ALTER TABLE "temporary_notes" RENAME TO "notes" `); await queryRunner.query(` DROP INDEX "IDX_5d7ddc8a5f9c167f548625e772" `); await queryRunner.query(` DROP INDEX "IDX_e9080e7a7997a0170026d5139c" `); await queryRunner.query(` CREATE TABLE "temporary_member_roles" ( "index" integer NOT NULL, "role_id" varchar NOT NULL, CONSTRAINT "FK_5d7ddc8a5f9c167f548625e772e" FOREIGN KEY ("index") REFERENCES "members" ("index") ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT "FK_e9080e7a7997a0170026d5139c1" FOREIGN KEY ("role_id") REFERENCES "roles" ("id") ON DELETE CASCADE ON UPDATE CASCADE, PRIMARY KEY ("index", "role_id") ) `); await queryRunner.query(` INSERT INTO "temporary_member_roles"("index", "role_id") SELECT "index", "role_id" FROM "member_roles" `); await queryRunner.query(` DROP TABLE "member_roles" `); await queryRunner.query(` ALTER TABLE "temporary_member_roles" RENAME TO "member_roles" `); await queryRunner.query(` CREATE INDEX "IDX_5d7ddc8a5f9c167f548625e772" ON "member_roles" ("index") `); await queryRunner.query(` CREATE INDEX "IDX_e9080e7a7997a0170026d5139c" ON "member_roles" ("role_id") `); await queryRunner.query(` DROP INDEX "IDX_a343387fc560ef378760681c23" `); await queryRunner.query(` DROP INDEX "IDX_b831eb18ceebd28976239b1e2f" `); await queryRunner.query(` CREATE TABLE "temporary_message_user_mentions" ( "messagesId" varchar NOT NULL, "usersId" varchar NOT NULL, CONSTRAINT "FK_a343387fc560ef378760681c236" FOREIGN KEY ("messagesId") REFERENCES "messages" ("id") ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT "FK_b831eb18ceebd28976239b1e2f8" FOREIGN KEY ("usersId") REFERENCES "users" ("id") ON DELETE CASCADE ON UPDATE CASCADE, PRIMARY KEY ("messagesId", "usersId") ) `); await queryRunner.query(` INSERT INTO "temporary_message_user_mentions"("messagesId", "usersId") SELECT "messagesId", "usersId" FROM "message_user_mentions" `); await queryRunner.query(` DROP TABLE "message_user_mentions" `); await queryRunner.query(` ALTER TABLE "temporary_message_user_mentions" RENAME TO "message_user_mentions" `); await queryRunner.query(` CREATE INDEX "IDX_a343387fc560ef378760681c23" ON "message_user_mentions" ("messagesId") `); await queryRunner.query(` CREATE INDEX "IDX_b831eb18ceebd28976239b1e2f" ON "message_user_mentions" ("usersId") `); await queryRunner.query(` DROP INDEX "IDX_a8242cf535337a490b0feaea0b" `); await queryRunner.query(` DROP INDEX "IDX_29d63eb1a458200851bc37d074" `); await queryRunner.query(` CREATE TABLE "temporary_message_role_mentions" ( "messagesId" varchar NOT NULL, "rolesId" varchar NOT NULL, CONSTRAINT "FK_a8242cf535337a490b0feaea0b4" FOREIGN KEY ("messagesId") REFERENCES "messages" ("id") ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT "FK_29d63eb1a458200851bc37d074b" FOREIGN KEY ("rolesId") REFERENCES "roles" ("id") ON DELETE CASCADE ON UPDATE CASCADE, PRIMARY KEY ("messagesId", "rolesId") ) `); await queryRunner.query(` INSERT INTO "temporary_message_role_mentions"("messagesId", "rolesId") SELECT "messagesId", "rolesId" FROM "message_role_mentions" `); await queryRunner.query(` DROP TABLE "message_role_mentions" `); await queryRunner.query(` ALTER TABLE "temporary_message_role_mentions" RENAME TO "message_role_mentions" `); await queryRunner.query(` CREATE INDEX "IDX_a8242cf535337a490b0feaea0b" ON "message_role_mentions" ("messagesId") `); await queryRunner.query(` CREATE INDEX "IDX_29d63eb1a458200851bc37d074" ON "message_role_mentions" ("rolesId") `); await queryRunner.query(` DROP INDEX "IDX_2a27102ecd1d81b4582a436092" `); await queryRunner.query(` DROP INDEX "IDX_bdb8c09e1464cabf62105bf4b9" `); await queryRunner.query(` CREATE TABLE "temporary_message_channel_mentions" ( "messagesId" varchar NOT NULL, "channelsId" varchar NOT NULL, CONSTRAINT "FK_2a27102ecd1d81b4582a4360921" FOREIGN KEY ("messagesId") REFERENCES "messages" ("id") ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT "FK_bdb8c09e1464cabf62105bf4b9d" FOREIGN KEY ("channelsId") REFERENCES "channels" ("id") ON DELETE CASCADE ON UPDATE CASCADE, PRIMARY KEY ("messagesId", "channelsId") ) `); await queryRunner.query(` INSERT INTO "temporary_message_channel_mentions"("messagesId", "channelsId") SELECT "messagesId", "channelsId" FROM "message_channel_mentions" `); await queryRunner.query(` DROP TABLE "message_channel_mentions" `); await queryRunner.query(` ALTER TABLE "temporary_message_channel_mentions" RENAME TO "message_channel_mentions" `); await queryRunner.query(` CREATE INDEX "IDX_2a27102ecd1d81b4582a436092" ON "message_channel_mentions" ("messagesId") `); await queryRunner.query(` CREATE INDEX "IDX_bdb8c09e1464cabf62105bf4b9" ON "message_channel_mentions" ("channelsId") `); await queryRunner.query(` DROP INDEX "IDX_40bb6f23e7cc133292e92829d2" `); await queryRunner.query(` DROP INDEX "IDX_e22a70819d07659c7a71c112a1" `); await queryRunner.query(` CREATE TABLE "temporary_message_stickers" ( "messagesId" varchar NOT NULL, "stickersId" varchar NOT NULL, CONSTRAINT "FK_40bb6f23e7cc133292e92829d28" FOREIGN KEY ("messagesId") REFERENCES "messages" ("id") ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT "FK_e22a70819d07659c7a71c112a1f" FOREIGN KEY ("stickersId") REFERENCES "stickers" ("id") ON DELETE CASCADE ON UPDATE CASCADE, PRIMARY KEY ("messagesId", "stickersId") ) `); await queryRunner.query(` INSERT INTO "temporary_message_stickers"("messagesId", "stickersId") SELECT "messagesId", "stickersId" FROM "message_stickers" `); await queryRunner.query(` DROP TABLE "message_stickers" `); await queryRunner.query(` ALTER TABLE "temporary_message_stickers" RENAME TO "message_stickers" `); await queryRunner.query(` CREATE INDEX "IDX_40bb6f23e7cc133292e92829d2" ON "message_stickers" ("messagesId") `); await queryRunner.query(` CREATE INDEX "IDX_e22a70819d07659c7a71c112a1" ON "message_stickers" ("stickersId") `); await queryRunner.query(` CREATE TABLE "query-result-cache" ( "id" integer PRIMARY KEY AUTOINCREMENT NOT NULL, "identifier" varchar, "time" bigint NOT NULL, "duration" integer NOT NULL, "query" text NOT NULL, "result" text NOT NULL ) `); } public async down(queryRunner: QueryRunner): Promise { await queryRunner.query(` DROP TABLE "query-result-cache" `); await queryRunner.query(` DROP INDEX "IDX_e22a70819d07659c7a71c112a1" `); await queryRunner.query(` DROP INDEX "IDX_40bb6f23e7cc133292e92829d2" `); await queryRunner.query(` ALTER TABLE "message_stickers" RENAME TO "temporary_message_stickers" `); await queryRunner.query(` CREATE TABLE "message_stickers" ( "messagesId" varchar NOT NULL, "stickersId" varchar NOT NULL, PRIMARY KEY ("messagesId", "stickersId") ) `); await queryRunner.query(` INSERT INTO "message_stickers"("messagesId", "stickersId") SELECT "messagesId", "stickersId" FROM "temporary_message_stickers" `); await queryRunner.query(` DROP TABLE "temporary_message_stickers" `); await queryRunner.query(` CREATE INDEX "IDX_e22a70819d07659c7a71c112a1" ON "message_stickers" ("stickersId") `); await queryRunner.query(` CREATE INDEX "IDX_40bb6f23e7cc133292e92829d2" ON "message_stickers" ("messagesId") `); await queryRunner.query(` DROP INDEX "IDX_bdb8c09e1464cabf62105bf4b9" `); await queryRunner.query(` DROP INDEX "IDX_2a27102ecd1d81b4582a436092" `); await queryRunner.query(` ALTER TABLE "message_channel_mentions" RENAME TO "temporary_message_channel_mentions" `); await queryRunner.query(` CREATE TABLE "message_channel_mentions" ( "messagesId" varchar NOT NULL, "channelsId" varchar NOT NULL, PRIMARY KEY ("messagesId", "channelsId") ) `); await queryRunner.query(` INSERT INTO "message_channel_mentions"("messagesId", "channelsId") SELECT "messagesId", "channelsId" FROM "temporary_message_channel_mentions" `); await queryRunner.query(` DROP TABLE "temporary_message_channel_mentions" `); await queryRunner.query(` CREATE INDEX "IDX_bdb8c09e1464cabf62105bf4b9" ON "message_channel_mentions" ("channelsId") `); await queryRunner.query(` CREATE INDEX "IDX_2a27102ecd1d81b4582a436092" ON "message_channel_mentions" ("messagesId") `); await queryRunner.query(` DROP INDEX "IDX_29d63eb1a458200851bc37d074" `); await queryRunner.query(` DROP INDEX "IDX_a8242cf535337a490b0feaea0b" `); await queryRunner.query(` ALTER TABLE "message_role_mentions" RENAME TO "temporary_message_role_mentions" `); await queryRunner.query(` CREATE TABLE "message_role_mentions" ( "messagesId" varchar NOT NULL, "rolesId" varchar NOT NULL, PRIMARY KEY ("messagesId", "rolesId") ) `); await queryRunner.query(` INSERT INTO "message_role_mentions"("messagesId", "rolesId") SELECT "messagesId", "rolesId" FROM "temporary_message_role_mentions" `); await queryRunner.query(` DROP TABLE "temporary_message_role_mentions" `); await queryRunner.query(` CREATE INDEX "IDX_29d63eb1a458200851bc37d074" ON "message_role_mentions" ("rolesId") `); await queryRunner.query(` CREATE INDEX "IDX_a8242cf535337a490b0feaea0b" ON "message_role_mentions" ("messagesId") `); await queryRunner.query(` DROP INDEX "IDX_b831eb18ceebd28976239b1e2f" `); await queryRunner.query(` DROP INDEX "IDX_a343387fc560ef378760681c23" `); await queryRunner.query(` ALTER TABLE "message_user_mentions" RENAME TO "temporary_message_user_mentions" `); await queryRunner.query(` CREATE TABLE "message_user_mentions" ( "messagesId" varchar NOT NULL, "usersId" varchar NOT NULL, PRIMARY KEY ("messagesId", "usersId") ) `); await queryRunner.query(` INSERT INTO "message_user_mentions"("messagesId", "usersId") SELECT "messagesId", "usersId" FROM "temporary_message_user_mentions" `); await queryRunner.query(` DROP TABLE "temporary_message_user_mentions" `); await queryRunner.query(` CREATE INDEX "IDX_b831eb18ceebd28976239b1e2f" ON "message_user_mentions" ("usersId") `); await queryRunner.query(` CREATE INDEX "IDX_a343387fc560ef378760681c23" ON "message_user_mentions" ("messagesId") `); await queryRunner.query(` DROP INDEX "IDX_e9080e7a7997a0170026d5139c" `); await queryRunner.query(` DROP INDEX "IDX_5d7ddc8a5f9c167f548625e772" `); await queryRunner.query(` ALTER TABLE "member_roles" RENAME TO "temporary_member_roles" `); await queryRunner.query(` CREATE TABLE "member_roles" ( "index" integer NOT NULL, "role_id" varchar NOT NULL, PRIMARY KEY ("index", "role_id") ) `); await queryRunner.query(` INSERT INTO "member_roles"("index", "role_id") SELECT "index", "role_id" FROM "temporary_member_roles" `); await queryRunner.query(` DROP TABLE "temporary_member_roles" `); await queryRunner.query(` CREATE INDEX "IDX_e9080e7a7997a0170026d5139c" ON "member_roles" ("role_id") `); await queryRunner.query(` CREATE INDEX "IDX_5d7ddc8a5f9c167f548625e772" ON "member_roles" ("index") `); await queryRunner.query(` ALTER TABLE "notes" RENAME TO "temporary_notes" `); await queryRunner.query(` CREATE TABLE "notes" ( "id" varchar PRIMARY KEY NOT NULL, "content" varchar NOT NULL, "owner_id" varchar, "target_id" varchar, CONSTRAINT "UQ_74e6689b9568cc965b8bfc9150b" UNIQUE ("owner_id", "target_id") ) `); await queryRunner.query(` INSERT INTO "notes"("id", "content", "owner_id", "target_id") SELECT "id", "content", "owner_id", "target_id" FROM "temporary_notes" `); await queryRunner.query(` DROP TABLE "temporary_notes" `); await queryRunner.query(` ALTER TABLE "sticker_packs" RENAME TO "temporary_sticker_packs" `); await queryRunner.query(` CREATE TABLE "sticker_packs" ( "id" varchar PRIMARY KEY NOT NULL, "name" varchar NOT NULL, "description" varchar, "banner_asset_id" varchar, "cover_sticker_id" varchar, "coverStickerId" varchar ) `); await queryRunner.query(` INSERT INTO "sticker_packs"( "id", "name", "description", "banner_asset_id", "cover_sticker_id", "coverStickerId" ) SELECT "id", "name", "description", "banner_asset_id", "cover_sticker_id", "coverStickerId" FROM "temporary_sticker_packs" `); await queryRunner.query(` DROP TABLE "temporary_sticker_packs" `); await queryRunner.query(` ALTER TABLE "sessions" RENAME TO "temporary_sessions" `); await queryRunner.query(` CREATE TABLE "sessions" ( "id" varchar PRIMARY KEY NOT NULL, "user_id" varchar, "session_id" varchar NOT NULL, "activities" text, "client_info" text NOT NULL, "status" varchar NOT NULL ) `); await queryRunner.query(` INSERT INTO "sessions"( "id", "user_id", "session_id", "activities", "client_info", "status" ) SELECT "id", "user_id", "session_id", "activities", "client_info", "status" FROM "temporary_sessions" `); await queryRunner.query(` DROP TABLE "temporary_sessions" `); await queryRunner.query(` ALTER TABLE "audit_logs" RENAME TO "temporary_audit_logs" `); await queryRunner.query(` CREATE TABLE "audit_logs" ( "id" varchar PRIMARY KEY NOT NULL, "user_id" varchar, "action_type" integer NOT NULL, "options" text, "changes" text NOT NULL, "reason" varchar, "target_id" varchar ) `); await queryRunner.query(` INSERT INTO "audit_logs"( "id", "user_id", "action_type", "options", "changes", "reason", "target_id" ) SELECT "id", "user_id", "action_type", "options", "changes", "reason", "target_id" FROM "temporary_audit_logs" `); await queryRunner.query(` DROP TABLE "temporary_audit_logs" `); await queryRunner.query(` ALTER TABLE "applications" RENAME TO "temporary_applications" `); await queryRunner.query(` CREATE TABLE "applications" ( "id" varchar PRIMARY KEY NOT NULL, "name" varchar NOT NULL, "icon" varchar, "description" varchar NOT NULL, "rpc_origins" text, "bot_public" boolean NOT NULL, "bot_require_code_grant" boolean NOT NULL, "terms_of_service_url" varchar, "privacy_policy_url" varchar, "summary" varchar, "verify_key" varchar NOT NULL, "primary_sku_id" varchar, "slug" varchar, "cover_image" varchar, "flags" varchar NOT NULL, "owner_id" varchar, "team_id" varchar, "guild_id" varchar ) `); await queryRunner.query(` INSERT INTO "applications"( "id", "name", "icon", "description", "rpc_origins", "bot_public", "bot_require_code_grant", "terms_of_service_url", "privacy_policy_url", "summary", "verify_key", "primary_sku_id", "slug", "cover_image", "flags", "owner_id", "team_id", "guild_id" ) SELECT "id", "name", "icon", "description", "rpc_origins", "bot_public", "bot_require_code_grant", "terms_of_service_url", "privacy_policy_url", "summary", "verify_key", "primary_sku_id", "slug", "cover_image", "flags", "owner_id", "team_id", "guild_id" FROM "temporary_applications" `); await queryRunner.query(` DROP TABLE "temporary_applications" `); await queryRunner.query(` ALTER TABLE "teams" RENAME TO "temporary_teams" `); await queryRunner.query(` CREATE TABLE "teams" ( "id" varchar PRIMARY KEY NOT NULL, "icon" varchar, "name" varchar NOT NULL, "owner_user_id" varchar ) `); await queryRunner.query(` INSERT INTO "teams"("id", "icon", "name", "owner_user_id") SELECT "id", "icon", "name", "owner_user_id" FROM "temporary_teams" `); await queryRunner.query(` DROP TABLE "temporary_teams" `); await queryRunner.query(` ALTER TABLE "team_members" RENAME TO "temporary_team_members" `); await queryRunner.query(` CREATE TABLE "team_members" ( "id" varchar PRIMARY KEY NOT NULL, "membership_state" integer NOT NULL, "permissions" text NOT NULL, "team_id" varchar, "user_id" varchar ) `); await queryRunner.query(` INSERT INTO "team_members"( "id", "membership_state", "permissions", "team_id", "user_id" ) SELECT "id", "membership_state", "permissions", "team_id", "user_id" FROM "temporary_team_members" `); await queryRunner.query(` DROP TABLE "temporary_team_members" `); await queryRunner.query(` ALTER TABLE "guilds" RENAME TO "temporary_guilds" `); await queryRunner.query(` CREATE TABLE "guilds" ( "id" varchar PRIMARY KEY NOT NULL, "afk_channel_id" varchar, "afk_timeout" integer, "banner" varchar, "default_message_notifications" integer, "description" varchar, "discovery_splash" varchar, "explicit_content_filter" integer, "features" text NOT NULL, "primary_category_id" integer, "icon" varchar, "large" boolean, "max_members" integer, "max_presences" integer, "max_video_channel_users" integer, "member_count" integer, "presence_count" integer, "template_id" varchar, "mfa_level" integer, "name" varchar NOT NULL, "owner_id" varchar, "preferred_locale" varchar, "premium_subscription_count" integer, "premium_tier" integer, "public_updates_channel_id" varchar, "rules_channel_id" varchar, "region" varchar, "splash" varchar, "system_channel_id" varchar, "system_channel_flags" integer, "unavailable" boolean, "verification_level" integer, "welcome_screen" text NOT NULL, "widget_channel_id" varchar, "widget_enabled" boolean, "nsfw_level" integer, "nsfw" boolean, "parent" varchar ) `); await queryRunner.query(` INSERT INTO "guilds"( "id", "afk_channel_id", "afk_timeout", "banner", "default_message_notifications", "description", "discovery_splash", "explicit_content_filter", "features", "primary_category_id", "icon", "large", "max_members", "max_presences", "max_video_channel_users", "member_count", "presence_count", "template_id", "mfa_level", "name", "owner_id", "preferred_locale", "premium_subscription_count", "premium_tier", "public_updates_channel_id", "rules_channel_id", "region", "splash", "system_channel_id", "system_channel_flags", "unavailable", "verification_level", "welcome_screen", "widget_channel_id", "widget_enabled", "nsfw_level", "nsfw", "parent" ) SELECT "id", "afk_channel_id", "afk_timeout", "banner", "default_message_notifications", "description", "discovery_splash", "explicit_content_filter", "features", "primary_category_id", "icon", "large", "max_members", "max_presences", "max_video_channel_users", "member_count", "presence_count", "template_id", "mfa_level", "name", "owner_id", "preferred_locale", "premium_subscription_count", "premium_tier", "public_updates_channel_id", "rules_channel_id", "region", "splash", "system_channel_id", "system_channel_flags", "unavailable", "verification_level", "welcome_screen", "widget_channel_id", "widget_enabled", "nsfw_level", "nsfw", "parent" FROM "temporary_guilds" `); await queryRunner.query(` DROP TABLE "temporary_guilds" `); await queryRunner.query(` ALTER TABLE "templates" RENAME TO "temporary_templates" `); await queryRunner.query(` CREATE TABLE "templates" ( "id" varchar PRIMARY KEY NOT NULL, "code" varchar NOT NULL, "name" varchar NOT NULL, "description" varchar, "usage_count" integer, "creator_id" varchar, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL, "source_guild_id" varchar, "serialized_source_guild" text NOT NULL, CONSTRAINT "UQ_be38737bf339baf63b1daeffb55" UNIQUE ("code") ) `); await queryRunner.query(` INSERT INTO "templates"( "id", "code", "name", "description", "usage_count", "creator_id", "created_at", "updated_at", "source_guild_id", "serialized_source_guild" ) SELECT "id", "code", "name", "description", "usage_count", "creator_id", "created_at", "updated_at", "source_guild_id", "serialized_source_guild" FROM "temporary_templates" `); await queryRunner.query(` DROP TABLE "temporary_templates" `); await queryRunner.query(` ALTER TABLE "emojis" RENAME TO "temporary_emojis" `); await queryRunner.query(` CREATE TABLE "emojis" ( "id" varchar PRIMARY KEY NOT NULL, "animated" boolean NOT NULL, "available" boolean NOT NULL, "guild_id" varchar NOT NULL, "user_id" varchar, "managed" boolean NOT NULL, "name" varchar NOT NULL, "require_colons" boolean NOT NULL, "roles" text NOT NULL, "groups" text ) `); await queryRunner.query(` INSERT INTO "emojis"( "id", "animated", "available", "guild_id", "user_id", "managed", "name", "require_colons", "roles", "groups" ) SELECT "id", "animated", "available", "guild_id", "user_id", "managed", "name", "require_colons", "roles", "groups" FROM "temporary_emojis" `); await queryRunner.query(` DROP TABLE "temporary_emojis" `); await queryRunner.query(` ALTER TABLE "channels" RENAME TO "temporary_channels" `); await queryRunner.query(` CREATE TABLE "channels" ( "id" varchar PRIMARY KEY NOT NULL, "created_at" datetime NOT NULL, "name" varchar, "icon" text, "type" integer NOT NULL, "last_message_id" varchar, "guild_id" varchar, "parent_id" varchar, "owner_id" varchar, "last_pin_timestamp" integer, "default_auto_archive_duration" integer, "position" integer, "permission_overwrites" text, "video_quality_mode" integer, "bitrate" integer, "user_limit" integer, "nsfw" boolean, "rate_limit_per_user" integer, "topic" varchar, "retention_policy_id" varchar ) `); await queryRunner.query(` INSERT INTO "channels"( "id", "created_at", "name", "icon", "type", "last_message_id", "guild_id", "parent_id", "owner_id", "last_pin_timestamp", "default_auto_archive_duration", "position", "permission_overwrites", "video_quality_mode", "bitrate", "user_limit", "nsfw", "rate_limit_per_user", "topic", "retention_policy_id" ) SELECT "id", "created_at", "name", "icon", "type", "last_message_id", "guild_id", "parent_id", "owner_id", "last_pin_timestamp", "default_auto_archive_duration", "position", "permission_overwrites", "video_quality_mode", "bitrate", "user_limit", "nsfw", "rate_limit_per_user", "topic", "retention_policy_id" FROM "temporary_channels" `); await queryRunner.query(` DROP TABLE "temporary_channels" `); await queryRunner.query(` ALTER TABLE "voice_states" RENAME TO "temporary_voice_states" `); await queryRunner.query(` CREATE TABLE "voice_states" ( "id" varchar PRIMARY KEY NOT NULL, "guild_id" varchar, "channel_id" varchar, "user_id" varchar, "session_id" varchar NOT NULL, "token" varchar, "deaf" boolean NOT NULL, "mute" boolean NOT NULL, "self_deaf" boolean NOT NULL, "self_mute" boolean NOT NULL, "self_stream" boolean, "self_video" boolean NOT NULL, "suppress" boolean NOT NULL, "request_to_speak_timestamp" datetime ) `); await queryRunner.query(` INSERT INTO "voice_states"( "id", "guild_id", "channel_id", "user_id", "session_id", "token", "deaf", "mute", "self_deaf", "self_mute", "self_stream", "self_video", "suppress", "request_to_speak_timestamp" ) SELECT "id", "guild_id", "channel_id", "user_id", "session_id", "token", "deaf", "mute", "self_deaf", "self_mute", "self_stream", "self_video", "suppress", "request_to_speak_timestamp" FROM "temporary_voice_states" `); await queryRunner.query(` DROP TABLE "temporary_voice_states" `); await queryRunner.query(` ALTER TABLE "invites" RENAME TO "temporary_invites" `); await queryRunner.query(` CREATE TABLE "invites" ( "code" varchar PRIMARY KEY NOT NULL, "temporary" boolean NOT NULL, "uses" integer NOT NULL, "max_uses" integer NOT NULL, "max_age" integer NOT NULL, "created_at" datetime NOT NULL, "expires_at" datetime NOT NULL, "guild_id" varchar, "channel_id" varchar, "inviter_id" varchar, "target_user_id" varchar, "target_user_type" integer, "vanity_url" boolean ) `); await queryRunner.query(` INSERT INTO "invites"( "code", "temporary", "uses", "max_uses", "max_age", "created_at", "expires_at", "guild_id", "channel_id", "inviter_id", "target_user_id", "target_user_type", "vanity_url" ) SELECT "code", "temporary", "uses", "max_uses", "max_age", "created_at", "expires_at", "guild_id", "channel_id", "inviter_id", "target_user_id", "target_user_type", "vanity_url" FROM "temporary_invites" `); await queryRunner.query(` DROP TABLE "temporary_invites" `); await queryRunner.query(` DROP INDEX "IDX_0abf8b443321bd3cf7f81ee17a" `); await queryRunner.query(` ALTER TABLE "read_states" RENAME TO "temporary_read_states" `); await queryRunner.query(` CREATE TABLE "read_states" ( "id" varchar PRIMARY KEY NOT NULL, "channel_id" varchar NOT NULL, "user_id" varchar NOT NULL, "last_message_id" varchar, "public_ack" varchar, "notifications_cursor" varchar, "last_pin_timestamp" datetime, "mention_count" integer ) `); await queryRunner.query(` INSERT INTO "read_states"( "id", "channel_id", "user_id", "last_message_id", "public_ack", "notifications_cursor", "last_pin_timestamp", "mention_count" ) SELECT "id", "channel_id", "user_id", "last_message_id", "public_ack", "notifications_cursor", "last_pin_timestamp", "mention_count" FROM "temporary_read_states" `); await queryRunner.query(` DROP TABLE "temporary_read_states" `); await queryRunner.query(` CREATE UNIQUE INDEX "IDX_0abf8b443321bd3cf7f81ee17a" ON "read_states" ("channel_id", "user_id") `); await queryRunner.query(` DROP INDEX "IDX_3ed7a60fb7dbe04e1ba9332a8b" `); await queryRunner.query(` DROP INDEX "IDX_05535bc695e9f7ee104616459d" `); await queryRunner.query(` DROP INDEX "IDX_86b9109b155eb70c0a2ca3b4b6" `); await queryRunner.query(` ALTER TABLE "messages" RENAME TO "temporary_messages" `); await queryRunner.query(` CREATE TABLE "messages" ( "id" varchar PRIMARY KEY NOT NULL, "channel_id" varchar, "guild_id" varchar, "author_id" varchar, "member_id" varchar, "webhook_id" varchar, "application_id" varchar, "content" varchar, "timestamp" datetime NOT NULL DEFAULT (datetime('now')), "edited_timestamp" datetime, "tts" boolean, "mention_everyone" boolean, "embeds" text NOT NULL, "reactions" text NOT NULL, "nonce" text, "pinned" boolean, "type" integer NOT NULL, "activity" text, "flags" varchar, "message_reference" text, "interaction" text, "components" text, "message_reference_id" varchar ) `); await queryRunner.query(` INSERT INTO "messages"( "id", "channel_id", "guild_id", "author_id", "member_id", "webhook_id", "application_id", "content", "timestamp", "edited_timestamp", "tts", "mention_everyone", "embeds", "reactions", "nonce", "pinned", "type", "activity", "flags", "message_reference", "interaction", "components", "message_reference_id" ) SELECT "id", "channel_id", "guild_id", "author_id", "member_id", "webhook_id", "application_id", "content", "timestamp", "edited_timestamp", "tts", "mention_everyone", "embeds", "reactions", "nonce", "pinned", "type", "activity", "flags", "message_reference", "interaction", "components", "message_reference_id" FROM "temporary_messages" `); await queryRunner.query(` DROP TABLE "temporary_messages" `); await queryRunner.query(` CREATE UNIQUE INDEX "IDX_3ed7a60fb7dbe04e1ba9332a8b" ON "messages" ("channel_id", "id") `); await queryRunner.query(` CREATE INDEX "IDX_05535bc695e9f7ee104616459d" ON "messages" ("author_id") `); await queryRunner.query(` CREATE INDEX "IDX_86b9109b155eb70c0a2ca3b4b6" ON "messages" ("channel_id") `); await queryRunner.query(` ALTER TABLE "attachments" RENAME TO "temporary_attachments" `); await queryRunner.query(` CREATE TABLE "attachments" ( "id" varchar PRIMARY KEY NOT NULL, "filename" varchar NOT NULL, "size" integer NOT NULL, "url" varchar NOT NULL, "proxy_url" varchar NOT NULL, "height" integer, "width" integer, "content_type" varchar, "message_id" varchar ) `); await queryRunner.query(` INSERT INTO "attachments"( "id", "filename", "size", "url", "proxy_url", "height", "width", "content_type", "message_id" ) SELECT "id", "filename", "size", "url", "proxy_url", "height", "width", "content_type", "message_id" FROM "temporary_attachments" `); await queryRunner.query(` DROP TABLE "temporary_attachments" `); await queryRunner.query(` ALTER TABLE "stickers" RENAME TO "temporary_stickers" `); await queryRunner.query(` CREATE TABLE "stickers" ( "id" varchar PRIMARY KEY NOT NULL, "name" varchar NOT NULL, "description" varchar, "available" boolean, "tags" varchar, "pack_id" varchar, "guild_id" varchar, "user_id" varchar, "type" integer NOT NULL, "format_type" integer NOT NULL ) `); await queryRunner.query(` INSERT INTO "stickers"( "id", "name", "description", "available", "tags", "pack_id", "guild_id", "user_id", "type", "format_type" ) SELECT "id", "name", "description", "available", "tags", "pack_id", "guild_id", "user_id", "type", "format_type" FROM "temporary_stickers" `); await queryRunner.query(` DROP TABLE "temporary_stickers" `); await queryRunner.query(` ALTER TABLE "webhooks" RENAME TO "temporary_webhooks" `); await queryRunner.query(` CREATE TABLE "webhooks" ( "id" varchar PRIMARY KEY NOT NULL, "type" integer NOT NULL, "name" varchar, "avatar" varchar, "token" varchar, "guild_id" varchar, "channel_id" varchar, "application_id" varchar, "user_id" varchar, "source_guild_id" varchar ) `); await queryRunner.query(` INSERT INTO "webhooks"( "id", "type", "name", "avatar", "token", "guild_id", "channel_id", "application_id", "user_id", "source_guild_id" ) SELECT "id", "type", "name", "avatar", "token", "guild_id", "channel_id", "application_id", "user_id", "source_guild_id" FROM "temporary_webhooks" `); await queryRunner.query(` DROP TABLE "temporary_webhooks" `); await queryRunner.query(` DROP INDEX "IDX_bb2bf9386ac443afbbbf9f12d3" `); await queryRunner.query(` ALTER TABLE "members" RENAME TO "temporary_members" `); await queryRunner.query(` CREATE TABLE "members" ( "index" integer PRIMARY KEY AUTOINCREMENT NOT NULL, "id" varchar NOT NULL, "guild_id" varchar NOT NULL, "nick" varchar, "joined_at" datetime NOT NULL, "premium_since" bigint, "deaf" boolean NOT NULL, "mute" boolean NOT NULL, "pending" boolean NOT NULL, "settings" text NOT NULL, "last_message_id" varchar, "joined_by" varchar ) `); await queryRunner.query(` INSERT INTO "members"( "index", "id", "guild_id", "nick", "joined_at", "premium_since", "deaf", "mute", "pending", "settings", "last_message_id", "joined_by" ) SELECT "index", "id", "guild_id", "nick", "joined_at", "premium_since", "deaf", "mute", "pending", "settings", "last_message_id", "joined_by" FROM "temporary_members" `); await queryRunner.query(` DROP TABLE "temporary_members" `); await queryRunner.query(` CREATE UNIQUE INDEX "IDX_bb2bf9386ac443afbbbf9f12d3" ON "members" ("id", "guild_id") `); await queryRunner.query(` ALTER TABLE "roles" RENAME TO "temporary_roles" `); await queryRunner.query(` CREATE TABLE "roles" ( "id" varchar PRIMARY KEY NOT NULL, "guild_id" varchar, "color" integer NOT NULL, "hoist" boolean NOT NULL, "managed" boolean NOT NULL, "mentionable" boolean NOT NULL, "name" varchar NOT NULL, "permissions" varchar NOT NULL, "position" integer NOT NULL, "icon" varchar, "unicode_emoji" varchar, "tags" text ) `); await queryRunner.query(` INSERT INTO "roles"( "id", "guild_id", "color", "hoist", "managed", "mentionable", "name", "permissions", "position", "icon", "unicode_emoji", "tags" ) SELECT "id", "guild_id", "color", "hoist", "managed", "mentionable", "name", "permissions", "position", "icon", "unicode_emoji", "tags" FROM "temporary_roles" `); await queryRunner.query(` DROP TABLE "temporary_roles" `); await queryRunner.query(` ALTER TABLE "recipients" RENAME TO "temporary_recipients" `); await queryRunner.query(` CREATE TABLE "recipients" ( "id" varchar PRIMARY KEY NOT NULL, "channel_id" varchar NOT NULL, "user_id" varchar NOT NULL, "closed" boolean NOT NULL DEFAULT (0) ) `); await queryRunner.query(` INSERT INTO "recipients"("id", "channel_id", "user_id", "closed") SELECT "id", "channel_id", "user_id", "closed" FROM "temporary_recipients" `); await queryRunner.query(` DROP TABLE "temporary_recipients" `); await queryRunner.query(` ALTER TABLE "bans" RENAME TO "temporary_bans" `); await queryRunner.query(` CREATE TABLE "bans" ( "id" varchar PRIMARY KEY NOT NULL, "user_id" varchar, "guild_id" varchar, "executor_id" varchar, "ip" varchar NOT NULL, "reason" varchar ) `); await queryRunner.query(` INSERT INTO "bans"( "id", "user_id", "guild_id", "executor_id", "ip", "reason" ) SELECT "id", "user_id", "guild_id", "executor_id", "ip", "reason" FROM "temporary_bans" `); await queryRunner.query(` DROP TABLE "temporary_bans" `); await queryRunner.query(` ALTER TABLE "backup_codes" RENAME TO "temporary_backup_codes" `); await queryRunner.query(` CREATE TABLE "backup_codes" ( "id" varchar PRIMARY KEY NOT NULL, "code" varchar NOT NULL, "consumed" boolean NOT NULL, "expired" boolean NOT NULL, "user_id" varchar ) `); await queryRunner.query(` INSERT INTO "backup_codes"("id", "code", "consumed", "expired", "user_id") SELECT "id", "code", "consumed", "expired", "user_id" FROM "temporary_backup_codes" `); await queryRunner.query(` DROP TABLE "temporary_backup_codes" `); await queryRunner.query(` ALTER TABLE "connected_accounts" RENAME TO "temporary_connected_accounts" `); await queryRunner.query(` CREATE TABLE "connected_accounts" ( "id" varchar PRIMARY KEY NOT NULL, "user_id" varchar, "access_token" varchar NOT NULL, "friend_sync" boolean NOT NULL, "name" varchar NOT NULL, "revoked" boolean NOT NULL, "show_activity" boolean NOT NULL, "type" varchar NOT NULL, "verified" boolean NOT NULL, "visibility" integer NOT NULL ) `); await queryRunner.query(` INSERT INTO "connected_accounts"( "id", "user_id", "access_token", "friend_sync", "name", "revoked", "show_activity", "type", "verified", "visibility" ) SELECT "id", "user_id", "access_token", "friend_sync", "name", "revoked", "show_activity", "type", "verified", "visibility" FROM "temporary_connected_accounts" `); await queryRunner.query(` DROP TABLE "temporary_connected_accounts" `); await queryRunner.query(` DROP INDEX "IDX_a0b2ff0a598df0b0d055934a17" `); await queryRunner.query(` ALTER TABLE "relationships" RENAME TO "temporary_relationships" `); await queryRunner.query(` CREATE TABLE "relationships" ( "id" varchar PRIMARY KEY NOT NULL, "from_id" varchar NOT NULL, "to_id" varchar NOT NULL, "nickname" varchar, "type" integer NOT NULL ) `); await queryRunner.query(` INSERT INTO "relationships"("id", "from_id", "to_id", "nickname", "type") SELECT "id", "from_id", "to_id", "nickname", "type" FROM "temporary_relationships" `); await queryRunner.query(` DROP TABLE "temporary_relationships" `); await queryRunner.query(` CREATE UNIQUE INDEX "IDX_a0b2ff0a598df0b0d055934a17" ON "relationships" ("from_id", "to_id") `); await queryRunner.query(` DROP INDEX "IDX_e22a70819d07659c7a71c112a1" `); await queryRunner.query(` DROP INDEX "IDX_40bb6f23e7cc133292e92829d2" `); await queryRunner.query(` DROP TABLE "message_stickers" `); await queryRunner.query(` DROP INDEX "IDX_bdb8c09e1464cabf62105bf4b9" `); await queryRunner.query(` DROP INDEX "IDX_2a27102ecd1d81b4582a436092" `); await queryRunner.query(` DROP TABLE "message_channel_mentions" `); await queryRunner.query(` DROP INDEX "IDX_29d63eb1a458200851bc37d074" `); await queryRunner.query(` DROP INDEX "IDX_a8242cf535337a490b0feaea0b" `); await queryRunner.query(` DROP TABLE "message_role_mentions" `); await queryRunner.query(` DROP INDEX "IDX_b831eb18ceebd28976239b1e2f" `); await queryRunner.query(` DROP INDEX "IDX_a343387fc560ef378760681c23" `); await queryRunner.query(` DROP TABLE "message_user_mentions" `); await queryRunner.query(` DROP INDEX "IDX_e9080e7a7997a0170026d5139c" `); await queryRunner.query(` DROP INDEX "IDX_5d7ddc8a5f9c167f548625e772" `); await queryRunner.query(` DROP TABLE "member_roles" `); await queryRunner.query(` DROP TABLE "notes" `); await queryRunner.query(` DROP TABLE "client_release" `); await queryRunner.query(` DROP TABLE "sticker_packs" `); await queryRunner.query(` DROP TABLE "sessions" `); await queryRunner.query(` DROP TABLE "rate_limits" `); await queryRunner.query(` DROP TABLE "categories" `); await queryRunner.query(` DROP TABLE "audit_logs" `); await queryRunner.query(` DROP TABLE "applications" `); await queryRunner.query(` DROP TABLE "teams" `); await queryRunner.query(` DROP TABLE "team_members" `); await queryRunner.query(` DROP TABLE "guilds" `); await queryRunner.query(` DROP TABLE "templates" `); await queryRunner.query(` DROP TABLE "emojis" `); await queryRunner.query(` DROP TABLE "channels" `); await queryRunner.query(` DROP TABLE "voice_states" `); await queryRunner.query(` DROP TABLE "invites" `); await queryRunner.query(` DROP INDEX "IDX_0abf8b443321bd3cf7f81ee17a" `); await queryRunner.query(` DROP TABLE "read_states" `); await queryRunner.query(` DROP INDEX "IDX_3ed7a60fb7dbe04e1ba9332a8b" `); await queryRunner.query(` DROP INDEX "IDX_05535bc695e9f7ee104616459d" `); await queryRunner.query(` DROP INDEX "IDX_86b9109b155eb70c0a2ca3b4b6" `); await queryRunner.query(` DROP TABLE "messages" `); await queryRunner.query(` DROP TABLE "attachments" `); await queryRunner.query(` DROP TABLE "stickers" `); await queryRunner.query(` DROP TABLE "webhooks" `); await queryRunner.query(` DROP INDEX "IDX_bb2bf9386ac443afbbbf9f12d3" `); await queryRunner.query(` DROP TABLE "members" `); await queryRunner.query(` DROP TABLE "roles" `); await queryRunner.query(` DROP TABLE "recipients" `); await queryRunner.query(` DROP TABLE "bans" `); await queryRunner.query(` DROP TABLE "backup_codes" `); await queryRunner.query(` DROP TABLE "users" `); await queryRunner.query(` DROP TABLE "connected_accounts" `); await queryRunner.query(` DROP INDEX "IDX_a0b2ff0a598df0b0d055934a17" `); await queryRunner.query(` DROP TABLE "relationships" `); await queryRunner.query(` DROP TABLE "config" `); } }