eletrotupi / tcc/ commit / 28956b7

api: store user's push token

Pedro Lucas Porcellis porcellis@eletrotupi.com 1 month ago 28956b73c7c5447650edfe10a874c4e61a49cbf0
Parents: d662feb
3 file(s) changed
  • api/prisma/migrations/20260612070623_add_push_token_to_users/migration.sql +2 -0
  • api/prisma/schema.prisma +2 -0
  • api/src/schemas/user.schema.ts +6 -7
api/prisma/migrations/20260612070623_add_push_token_to_users/migration.sql
@@ -0,0 +1,2 @@
1 + -- AlterTable
2 + ALTER TABLE "users" ADD COLUMN "push_token" TEXT;
api/prisma/schema.prisma
1 1
generator client {
2 2
  provider = "prisma-client-js"
3 3
  //output   = "../src/generated/prisma"
4 4
}
5 5

▸ 16 unchanged lines
22 22

23 23
  activationCode          String?   @map("activation_code")
24 24
  activationCodeExpiresAt DateTime? @map("activation_code_expires_at")
25 25
  active                  Boolean   @default(false) @map("active")
26 26

27 +
  pushToken String? @map("push_token")
28 +

27 29
  moods         Mood[]
28 30
  interventions Intervention[]
29 31
  triggers      Trigger[]
30 32
  reminders     Reminder[]
31 33
  sleepRecords  SleepRecord[]
▸ 152 unchanged lines
184 186
  ANXIETY
185 187
  GRATITUDE
186 188
  FOCUS
187 189
  TIREDNESS
188 190
}
api/src/schemas/user.schema.ts
1 -
import { z } from 'zod';
1 +
import { z } from "zod";
2 2

3 3
export const CreateUserSchema = z.object({
4 4
  firstName: z.string(),
5 5
  lastName: z.string().optional(),
6 6
  email: z.string().email(),
7 -
  password: z.string().min(6)
7 +
  password: z.string().min(6),
8 +
  pushToken: z.string().optional(),
8 9
});
9 10

10 -
export const UpdateUserSchema = CreateUserSchema
11 -
  .partial()
12 -
  .extend({
13 -
    id: z.number()
14 -
  });
11 +
export const UpdateUserSchema = CreateUserSchema.partial().extend({
12 +
  id: z.number(),
13 +
});
15 14

16 15
export type CreateUserInput = z.infer<typeof CreateUserSchema>;
17 16
export type UpdateUserInput = z.infer<typeof UpdateUserSchema>;