Skip to content

Commit 895dd6c

Browse files
committed
update
Signed-off-by: Kirill Mokevnin <[email protected]>
1 parent 8b78f4e commit 895dd6c

File tree

14 files changed

+2356
-467
lines changed

14 files changed

+2356
-467
lines changed

db/seeds.js

+3
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@ import { buildCourse, buildCourseLesson, buildUser } from '../lib/data.js'
66
export default async (db) => {
77
const [_user1] = await db.insert(schemas.users).values(buildUser()).returning()
88
const [user2] = await db.insert(schemas.users).values(buildUser()).returning()
9+
const [_user3] = await db.insert(schemas.users).values(buildUser({
10+
email: '[email protected]', fullName: 'Тото Поддерживающий',
11+
})).returning()
912
const [_course1] = await db.insert(schemas.courses).values(
1013
buildCourse({ creatorId: user2.id }),
1114
).returning()

lib/data.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import { faker } from '@faker-js/faker'
66
export function buildUser(params = {}) {
77
const user = {
88
fullName: faker.person.fullName(),
9-
email: faker.internet.email(),
9+
email: faker.internet.email().toLowerCase(),
1010
}
1111

1212
return Object.assign({}, user, params)

main.tsp

+8-2
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,9 @@ using TypeSpec.Rest;
1010
using TypeSpec.JsonSchema;
1111

1212
@service({
13-
title: "Fastify Rest Api Example",
13+
title: "Hexlet Fastify Rest Api Example",
1414
})
15-
@server("https://code-basics.com", "Single server endpoint")
15+
@server("https://localhost", "Single server endpoint")
1616
@jsonSchema
1717
@versioned(Versions)
1818
namespace FastifyRestApiExample;
@@ -69,8 +69,14 @@ model Timestamps {
6969

7070
model User {
7171
id: numeric;
72+
73+
@minLength(2)
74+
@maxLength(100)
7275
fullName: string | null;
76+
77+
@format("email")
7378
email: string;
79+
7480
...Timestamps;
7581
}
7682

models/User.js

+3-2
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,10 @@ import uniqueRule from '../rules/unique.js'
33
import { users } from '../db/schema.js'
44

55
const schema = vine.object({
6-
email: vine.string().email()
6+
email: vine.string()
7+
.email()
8+
.normalizeEmail({ all_lowercase: true })
79
.use(uniqueRule({ schema: users }))
8-
.transform(value => value.toLowerCase()),
910
}).allowUnknownProperties()
1011
const validator = vine.compile(schema)
1112

0 commit comments

Comments
 (0)