immich/server/src/migrations/1704571051932-DefaultOnboardingForExistingInstallations.ts
renovate[bot] 7f0f016f2e
chore(deps): update dependency eslint-plugin-unicorn to v53 (#9502)
* chore(deps): update dependency eslint-plugin-unicorn to v53

* use structured clone to match new eslint rules

* use raw string instead of escaping slash

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2024-05-15 18:06:25 -04:00

18 lines
704 B
TypeScript

import { MigrationInterface, QueryRunner } from 'typeorm';
export class DefaultOnboardingForExistingInstallations1704571051932 implements MigrationInterface {
public async up(queryRunner: QueryRunner): Promise<void> {
const adminCount = await queryRunner.query(`SELECT COUNT(*) FROM users WHERE "isAdmin" = true`);
if (adminCount[0].count > 0) {
await queryRunner.query(`INSERT INTO system_metadata (key, value) VALUES ($1, $2)`, [
'admin-onboarding',
String.raw`"{\"isOnboarded\":true}"`,
]);
}
}
public async down(queryRunner: QueryRunner): Promise<void> {
await queryRunner.query(`DELETE FROM system_metadata WHERE key = 'admin-onboarding'`);
}
}