api: add triggers
Parents:
95520d82 file(s) changed
- api/prisma/migrations/20260428001925_create_triggers/migration.sql +15 -0
- api/prisma/schema.prisma +20 -0
api/prisma/migrations/20260428001925_create_triggers/migration.sql
@@ -0,0 +1,15 @@
1 + -- CreateEnum
2 + CREATE TYPE "TriggerType" AS ENUM ('SOCIAL', 'ENVIRONMENTAL', 'EMOTIONAL', 'PHYSICAL', 'OTHER');
3 +
4 + -- CreateTable
5 + CREATE TABLE "triggers" (
6 + "id" SERIAL NOT NULL,
7 + "comment" TEXT,
8 + "category" "TriggerType" NOT NULL,
9 + "user_id" INTEGER NOT NULL,
10 +
11 + CONSTRAINT "triggers_pkey" PRIMARY KEY ("id")
12 + );
13 +
14 + -- AddForeignKey
15 + ALTER TABLE "triggers" ADD CONSTRAINT "triggers_user_id_fkey" FOREIGN KEY ("user_id") REFERENCES "users"("id") ON DELETE RESTRICT ON UPDATE CASCADE;
api/prisma/schema.prisma
@@ -20,6 +20,7 @@ updatedAt DateTime @updatedAt @map("updated_at")
20 20
21 21 moods Mood[]
22 22 interventions Intervention[]
23 + triggers Trigger[]
23 24
24 25 @@map("users")
25 26 }
@@ -64,6 +65,17 @@
64 65 @@map("interventions")
65 66 }
66 67
68 + model Trigger {
69 + id Int @id @default(autoincrement())
70 + comment String? @db.Text
71 + category TriggerType
72 +
73 + userId Int @map("user_id")
74 + user User @relation(fields: [userId], references: [id])
75 +
76 + @@map("triggers")
77 + }
78 +
67 79 enum IntensityLevel {
68 80 LIGHT
69 81 MODERATE
@@ -77,3 +89,11 @@ MEDITATION
77 89 EXERCISE
78 90 CONVERSATION
79 91 }
92 +
93 + enum TriggerType {
94 + SOCIAL
95 + ENVIRONMENTAL
96 + EMOTIONAL
97 + PHYSICAL
98 + OTHER
99 + }