1689671563305-add-shared-vault-and-key-system-associations.ts 1.8 KB

12345678910111213141516171819202122232425
  1. import { MigrationInterface, QueryRunner } from 'typeorm'
  2. export class AddSharedVaultAndKeySystemAssociations1689671563305 implements MigrationInterface {
  3. name = 'AddSharedVaultAndKeySystemAssociations1689671563305'
  4. public async up(queryRunner: QueryRunner): Promise<void> {
  5. await queryRunner.query(
  6. 'CREATE TABLE `shared_vault_associations` (`uuid` varchar(36) NOT NULL, `shared_vault_uuid` varchar(36) NOT NULL, `item_uuid` varchar(36) NOT NULL, `last_edited_by` varchar(36) NOT NULL, `created_at_timestamp` bigint NOT NULL, `updated_at_timestamp` bigint NOT NULL, INDEX `shared_vault_uuid_on_shared_vault_associations` (`shared_vault_uuid`), INDEX `item_uuid_on_shared_vault_associations` (`item_uuid`), PRIMARY KEY (`uuid`)) ENGINE=InnoDB',
  7. )
  8. await queryRunner.query(
  9. 'CREATE TABLE `key_system_associations` (`uuid` varchar(36) NOT NULL, `key_system_uuid` varchar(36) NOT NULL, `item_uuid` varchar(36) NOT NULL, `created_at_timestamp` bigint NOT NULL, `updated_at_timestamp` bigint NOT NULL, INDEX `key_system_uuid_on_key_system_associations` (`key_system_uuid`), INDEX `item_uuid_on_key_system_associations` (`item_uuid`), PRIMARY KEY (`uuid`)) ENGINE=InnoDB',
  10. )
  11. }
  12. public async down(queryRunner: QueryRunner): Promise<void> {
  13. await queryRunner.query('DROP INDEX `item_uuid_on_key_system_associations` ON `key_system_associations`')
  14. await queryRunner.query('DROP INDEX `key_system_uuid_on_key_system_associations` ON `key_system_associations`')
  15. await queryRunner.query('DROP TABLE `key_system_associations`')
  16. await queryRunner.query('DROP INDEX `item_uuid_on_shared_vault_associations` ON `shared_vault_associations`')
  17. await queryRunner.query(
  18. 'DROP INDEX `shared_vault_uuid_on_shared_vault_associations` ON `shared_vault_associations`',
  19. )
  20. await queryRunner.query('DROP TABLE `shared_vault_associations`')
  21. }
  22. }