Scratch space for learning atproto app development
1import type { Kysely, Migration, MigrationProvider } from 'kysely' 2 3const migrations: Record<string, Migration> = {} 4 5export const migrationProvider: MigrationProvider = { 6 async getMigrations() { 7 return migrations 8 }, 9} 10 11migrations['001'] = { 12 async up(db: Kysely<unknown>) { 13 await db.schema 14 .createTable('status') 15 .addColumn('authorDid', 'varchar', (col) => col.primaryKey()) 16 .addColumn('status', 'varchar', (col) => col.notNull()) 17 .addColumn('updatedAt', 'varchar', (col) => col.notNull()) 18 .addColumn('indexedAt', 'varchar', (col) => col.notNull()) 19 .execute() 20 await db.schema 21 .createTable('auth_session') 22 .addColumn('key', 'varchar', (col) => col.primaryKey()) 23 .addColumn('session', 'varchar', (col) => col.notNull()) 24 .execute() 25 await db.schema 26 .createTable('auth_state') 27 .addColumn('key', 'varchar', (col) => col.primaryKey()) 28 .addColumn('state', 'varchar', (col) => col.notNull()) 29 .execute() 30 }, 31 async down(db: Kysely<unknown>) { 32 await db.schema.dropTable('auth_state').execute() 33 await db.schema.dropTable('auth_session').execute() 34 await db.schema.dropTable('status').execute() 35 }, 36}