beeeeg update
Some checks failed
Test and deploy staging / staging (push) Has been cancelled

This commit is contained in:
2026-09-23 04:15:10 +00:00
parent 487eff5bb2
commit d0c7b6548b
135 changed files with 9531 additions and 1777 deletions

View File

@@ -0,0 +1,38 @@
import { integer, pgTable, text, unique } from 'drizzle-orm/pg-core';
import { id, timestamps } from './helpers';
export const tasks = pgTable('tasks', {
id: id(),
name: text('name').notNull(),
currentPoints: integer('current_points').notNull().default(0),
totalPoints: integer('total_points').notNull().default(1),
notes: text('notes'),
...timestamps
});
export const topics = pgTable('topics', {
id: id(),
name: text('name').notNull(),
emoji: text('emoji'),
...timestamps
});
export const tasksToTopics = pgTable(
'tasks_to_topics',
{
id: id(),
taskId: integer('task_id')
.notNull()
.references(() => tasks.id, { onDelete: 'cascade' }),
topicId: integer('topic_id')
.notNull()
.references(() => topics.id, { onDelete: 'cascade' }),
...timestamps
},
(table) => [unique().on(table.taskId, table.topicId)]
);
export type Task = typeof tasks.$inferSelect;
export type NewTask = typeof tasks.$inferInsert;
export type Topic = typeof topics.$inferSelect;
export type NewTopic = typeof topics.$inferInsert;