feat: add width, height, duration columns to attachments schema

This commit is contained in:
Jannis Braun
2026-03-21 17:15:09 +01:00
parent 948fa6de5c
commit b74e33b349
3 changed files with 15 additions and 1 deletions
+8
View File
@@ -157,6 +157,14 @@ export function runMigrations(db: Database.Database): void {
{ name: 'show_activity', type: 'INTEGER NOT NULL DEFAULT 1' }, { name: 'show_activity', type: 'INTEGER NOT NULL DEFAULT 1' },
] ]
}, },
{
name: 'attachments',
columns: [
{ name: 'width', type: 'INTEGER' },
{ name: 'height', type: 'INTEGER' },
{ name: 'duration', type: 'REAL' },
]
},
// gif_api_key is handled by migrateRenameGifApiKey() — do NOT add it here // gif_api_key is handled by migrateRenameGifApiKey() — do NOT add it here
// or it will race with the tenor_api_key → gif_api_key rename migration // or it will race with the tenor_api_key → gif_api_key rename migration
]; ];
+4 -1
View File
@@ -1,4 +1,4 @@
import { sqliteTable, text, integer, primaryKey, foreignKey } from 'drizzle-orm/sqlite-core'; import { sqliteTable, text, integer, primaryKey, foreignKey, real } from 'drizzle-orm/sqlite-core';
export const users = sqliteTable('users', { export const users = sqliteTable('users', {
id: text('id').primaryKey(), id: text('id').primaryKey(),
@@ -90,6 +90,9 @@ export const attachments = sqliteTable('attachments', {
mimetype: text('mimetype').notNull(), mimetype: text('mimetype').notNull(),
size: integer('size').notNull(), size: integer('size').notNull(),
thumbnailFilename: text('thumbnail_filename'), thumbnailFilename: text('thumbnail_filename'),
width: integer('width'),
height: integer('height'),
duration: real('duration'),
createdAt: integer('created_at').notNull(), createdAt: integer('created_at').notNull(),
}); });
+3
View File
@@ -217,6 +217,9 @@ export interface Attachment {
mimetype: string; mimetype: string;
size: number; size: number;
thumbnailFilename?: string | null; thumbnailFilename?: string | null;
width?: number | null;
height?: number | null;
duration?: number | null;
createdAt: number; createdAt: number;
} }