store reference assets on supabase

This commit is contained in:
wass08
2026-02-26 09:56:50 +09:00
parent 1117e0cb5f
commit b167702bca
10 changed files with 1438 additions and 15 deletions
+1
View File
@@ -10,6 +10,7 @@ export * from './feedback/feedback'
// Project tables
export * from './projects/addresses'
export * from './projects/assets'
export * from './projects/likes'
export * from './projects/models'
export * from './projects/projects'
+25
View File
@@ -0,0 +1,25 @@
import { relations } from 'drizzle-orm'
import { pgTable } from 'drizzle-orm/pg-core'
import { id, timestampsColumns } from '../../helpers'
import { projects } from './projects'
export const projectAssets = pgTable('project_assets', (t) => ({
id: id('asset'),
projectId: t.text('project_id').notNull().references(() => projects.id, { onDelete: 'cascade' }),
storageKey: t.text('storage_key').notNull(),
url: t.text('url').notNull(),
type: t.text('type').notNull(), // 'scan' | 'guide'
originalName: t.text('original_name'),
mimeType: t.text('mime_type'),
...timestampsColumns,
})).enableRLS()
export const projectAssetsRelations = relations(projectAssets, ({ one }) => ({
project: one(projects, {
fields: [projectAssets.projectId],
references: [projects.id],
}),
}))
export type ProjectAsset = typeof projectAssets.$inferSelect
export type NewProjectAsset = typeof projectAssets.$inferInsert