mirror of
https://codeberg.org/yeentown/barkey.git
synced 2025-07-07 12:36:57 +00:00
fix arrays in migration add_instance_block_columns
This commit is contained in:
parent
ab96402c2a
commit
9e282b1d10
1 changed files with 12 additions and 16 deletions
|
@ -37,32 +37,32 @@ export class AddInstanceBlockColumns1748105111513 {
|
||||||
|
|
||||||
// Blocked hosts
|
// Blocked hosts
|
||||||
if (meta.blockedHosts.length > 0) {
|
if (meta.blockedHosts.length > 0) {
|
||||||
const pattern = buildPatterns(meta.blockedHosts);
|
const patterns = buildPatterns(meta.blockedHosts);
|
||||||
await queryRunner.query(`UPDATE "instance" SET "isBlocked" = true WHERE ((lower(reverse("host")) || '.')::text) LIKE ANY ${pattern}`);
|
await queryRunner.query(`UPDATE "instance" SET "isBlocked" = true WHERE ((lower(reverse("host")) || '.')::text) LIKE ANY ($1)`, [ patterns ]);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Silenced hosts
|
// Silenced hosts
|
||||||
if (meta.silencedHosts.length > 0) {
|
if (meta.silencedHosts.length > 0) {
|
||||||
const pattern = buildPatterns(meta.silencedHosts);
|
const patterns = buildPatterns(meta.silencedHosts);
|
||||||
await queryRunner.query(`UPDATE "instance" SET "isSilenced" = true WHERE ((lower(reverse("host")) || '.')::text) LIKE ANY ${pattern}`);
|
await queryRunner.query(`UPDATE "instance" SET "isSilenced" = true WHERE ((lower(reverse("host")) || '.')::text) LIKE ANY ($1)`, [ patterns ]);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Media silenced hosts
|
// Media silenced hosts
|
||||||
if (meta.mediaSilencedHosts.length > 0) {
|
if (meta.mediaSilencedHosts.length > 0) {
|
||||||
const pattern = buildPatterns(meta.mediaSilencedHosts);
|
const patterns = buildPatterns(meta.mediaSilencedHosts);
|
||||||
await queryRunner.query(`UPDATE "instance" SET "isMediaSilenced" = true WHERE ((lower(reverse("host")) || '.')::text) LIKE ANY ${pattern}`);
|
await queryRunner.query(`UPDATE "instance" SET "isMediaSilenced" = true WHERE ((lower(reverse("host")) || '.')::text) LIKE ANY ($1)`, [ patterns ]);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Allow-listed hosts
|
// Allow-listed hosts
|
||||||
if (meta.federationHosts.length > 0) {
|
if (meta.federationHosts.length > 0) {
|
||||||
const pattern = buildPatterns(meta.federationHosts);
|
const patterns = buildPatterns(meta.federationHosts);
|
||||||
await queryRunner.query(`UPDATE "instance" SET "isAllowListed" = true WHERE ((lower(reverse("host")) || '.')::text) LIKE ANY ${pattern}`);
|
await queryRunner.query(`UPDATE "instance" SET "isAllowListed" = true WHERE ((lower(reverse("host")) || '.')::text) LIKE ANY ($1)`, [ patterns ]);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Bubbled hosts
|
// Bubbled hosts
|
||||||
if (meta.bubbleInstances.length > 0) {
|
if (meta.bubbleInstances.length > 0) {
|
||||||
const pattern = buildPatterns(meta.bubbleInstances);
|
const patterns = buildPatterns(meta.bubbleInstances);
|
||||||
await queryRunner.query(`UPDATE "instance" SET "isBubbled" = true WHERE ((lower(reverse("host")) || '.')::text) LIKE ANY ${pattern}`);
|
await queryRunner.query(`UPDATE "instance" SET "isBubbled" = true WHERE ((lower(reverse("host")) || '.')::text) LIKE ANY ($1)`, [ patterns ]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -78,12 +78,8 @@ export class AddInstanceBlockColumns1748105111513 {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param {string[]} input
|
* @param {string[]} input
|
||||||
* @returns {string}
|
* @returns {string[]}
|
||||||
*/
|
*/
|
||||||
function buildPatterns(input) {
|
function buildPatterns(input) {
|
||||||
const strings = input
|
return input.map(i => i.toLowerCase().split('').reverse().join('') + '.%');
|
||||||
.map(i => i.toLowerCase().split('').reverse().join('') + '.%')
|
|
||||||
.map(i => `'${i}'`)
|
|
||||||
.join(', ');
|
|
||||||
return `(array[${strings}]::text[])`;
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue