mirror of
https://github.com/wasp-lang/wasp.git
synced 2024-12-26 10:35:04 +03:00
68 lines
1.8 KiB
JavaScript
68 lines
1.8 KiB
JavaScript
app TodoTypescript {
|
|
wasp: {
|
|
version: "^0.7.3"
|
|
},
|
|
title: "ToDo TypeScript",
|
|
|
|
auth: {
|
|
userEntity: User,
|
|
methods: {
|
|
usernameAndPassword: {},
|
|
},
|
|
onAuthFailedRedirectTo: "/login",
|
|
}
|
|
}
|
|
|
|
// Use Prisma Schema Language (PSL) to define our entities: https://www.prisma.io/docs/concepts/components/prisma-schema
|
|
// Run `wasp db migrate-dev` in the CLI to create the database tables
|
|
// Then run `wasp db studio` to open Prisma Studio and view your db models
|
|
entity User {=psl
|
|
id Int @id @default(autoincrement())
|
|
username String @unique
|
|
password String
|
|
tasks Task[]
|
|
psl=}
|
|
|
|
entity Task {=psl
|
|
id Int @id @default(autoincrement())
|
|
description String
|
|
isDone Boolean @default(false)
|
|
user User? @relation(fields: [userId], references: [id])
|
|
userId Int?
|
|
psl=}
|
|
|
|
route RootRoute { path: "/", to: MainPage }
|
|
page MainPage {
|
|
authRequired: true,
|
|
component: import Main from "@client/MainPage"
|
|
}
|
|
|
|
route LoginRoute { path: "/login", to: LoginPage }
|
|
page LoginPage {
|
|
component: import Login from "@client/LoginPage"
|
|
}
|
|
|
|
route SignupRoute { path: "/signup", to: SignupPage }
|
|
page SignupPage {
|
|
component: import Signup from "@client/SignupPage"
|
|
}
|
|
|
|
query getTasks {
|
|
// We specify the JS implementation of our query (which is an async JS function)
|
|
// which can be found in `server/queries.js` as a named export `getTasks`.
|
|
fn: import { getTasks } from "@server/queries.js",
|
|
// We tell Wasp that this query is doing something with the `Task` entity. With that, Wasp will
|
|
// automatically refresh the results of this query when tasks change.
|
|
entities: [Task]
|
|
}
|
|
|
|
action createTask {
|
|
fn: import { createTask } from "@server/actions.js",
|
|
entities: [Task]
|
|
}
|
|
|
|
action updateTask {
|
|
fn: import { updateTask } from "@server/actions.js",
|
|
entities: [Task]
|
|
}
|