add EdgeDB dataschema and module

This commit is contained in:
2024-05-05 20:46:15 +02:00
parent 83bcf4f194
commit 917bd3f6bd
5 changed files with 87 additions and 0 deletions
+82
View File
@@ -0,0 +1,82 @@
module default {
type GameBoard {
overloaded required id: uuid {
readonly := true;
constraint exclusive;
}
url: str {
readonly := true;
}
required created_at: datetime {
readonly := true;
}
required turns: int32 {
readonly := true;
}
required map: str {
readonly := true;
}
required single type: GameType {
readonly := true;
on source delete delete target;
}
required single ruleset: Ruleset {
readonly := true;
on source delete delete target;
}
required winner: str {
readonly := true;
}
required multi moves: Moves {
readonly := true;
}
required single snake: Snake {
readonly := true;
on source delete delete target;
}
}
type GameType {
required name: str {
readonly := true;
}
required is_ladder: bool {
readonly := true;
}
}
type Ruleset {
required name: str {
readonly := true;
}
required version: str {
readonly := true;
}
required settings: json {
readonly := true;
}
}
type Snake {
required type: str {
readonly := true;
}
calculations: array<json> {
readonly := true;
}
}
type Moves {
required turn: int32 {
readonly := true;
}
required snake_move: str {
readonly := true;
}
required game_board: json {
readonly := true;
}
}
}