new migration file

This commit is contained in:
Philipinho
2024-03-25 00:46:24 +00:00
parent a4c129c49d
commit df6b0326ba
2 changed files with 23 additions and 2 deletions

View File

@ -23,7 +23,7 @@ export async function up(db: Kysely<any>): Promise<void> {
.addColumn('deletedById', 'uuid', (col) => col)
.addColumn('spaceId', 'uuid', (col) => col.notNull())
.addColumn('workspaceId', 'uuid', (col) => col.notNull())
.addColumn('isLocked', 'boolean', (col) => col.notNull())
.addColumn('isLocked', 'boolean', (col) => col.defaultTo(false).notNull())
.addColumn('status', 'varchar', (col) => col)
.addColumn('publishedAt', 'date', (col) => col)
.addColumn('createdAt', 'timestamp', (col) =>
@ -44,6 +44,5 @@ export async function up(db: Kysely<any>): Promise<void> {
}
export async function down(db: Kysely<any>): Promise<void> {
await db.schema.dropIndex('IDX_pages_tsv').on('pages').execute();
await db.schema.dropTable('pages').execute();
}

View File

@ -0,0 +1,22 @@
import { type Kysely, sql } from 'kysely';
export async function up(db: Kysely<any>): Promise<void> {
await sql`CREATE FUNCTION pages_tsvector_trigger() RETURNS trigger AS $$
begin
new.tsv :=
setweight(to_tsvector('english', coalesce(new.title, '')), 'A') ||
setweight(to_tsvector('english', coalesce(new.\"textContent\", '')), 'B');
return new;
end;
$$ LANGUAGE plpgsql;`.execute(db);
await sql`CREATE TRIGGER pages_tsvector_update BEFORE INSERT OR UPDATE
ON pages FOR EACH ROW EXECUTE FUNCTION pages_tsvector_trigger();`.execute(
db,
);
}
export async function down(db: Kysely<any>): Promise<void> {
await sql`DROP trigger pages_tsvector_update ON pages`.execute(db);
await sql`DROP FUNCTION pages_tsvector_trigger`.execute(db);
}