From 83e60464ad2675f09ddee02f6b166bef22f53f33 Mon Sep 17 00:00:00 2001 From: Rory& Date: Thu, 11 Jun 2026 23:18:02 +0200 Subject: Move migrations to database --- .../1776450647000-GuildChannelOrderingAsArray.ts | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 src/database/migration/postgres/1776450647000-GuildChannelOrderingAsArray.ts (limited to 'src/database/migration/postgres/1776450647000-GuildChannelOrderingAsArray.ts') diff --git a/src/database/migration/postgres/1776450647000-GuildChannelOrderingAsArray.ts b/src/database/migration/postgres/1776450647000-GuildChannelOrderingAsArray.ts new file mode 100644 index 00000000..e75c3e89 --- /dev/null +++ b/src/database/migration/postgres/1776450647000-GuildChannelOrderingAsArray.ts @@ -0,0 +1,17 @@ +import { MigrationInterface, QueryRunner } from "typeorm"; + +export class GuildChannelOrderingAsArray1776450647000 implements MigrationInterface { + name = "GuildChannelOrderingAsArray1776450647000"; + + public async up(queryRunner: QueryRunner): Promise { + // spacebar was randomly adding json data into CSV values, unwrap them + await queryRunner.query(`UPDATE guilds SET channel_ordering = REPLACE(channel_ordering, '"', '') WHERE channel_ordering ~ '"';`); + await queryRunner.query(`UPDATE guilds SET channel_ordering = REPLACE(channel_ordering, '[', '') WHERE channel_ordering ~ '\\[';`); + await queryRunner.query(`UPDATE guilds SET channel_ordering = REPLACE(channel_ordering, ']', '') WHERE channel_ordering ~ '\\]';`); + await queryRunner.query(`ALTER TABLE guilds ALTER COLUMN channel_ordering TYPE int8[] USING string_to_array(channel_ordering, ',')::int8[];`); + } + + public async down(queryRunner: QueryRunner): Promise { + console.log(`Migration ${this.name}.down() not implemented`); + } +} -- cgit 1.5.1