Files
flashcards/packages/backend/drizzle/meta/0000_snapshot.json

475 lines
12 KiB
JSON

{
"version": "6",
"dialect": "sqlite",
"id": "00509e45-a6d9-417d-b3c0-a7e936e7001f",
"prevId": "00000000-0000-0000-0000-000000000000",
"tables": {
"attempts": {
"name": "attempts",
"columns": {
"id": {
"name": "id",
"type": "integer",
"primaryKey": true,
"notNull": true,
"autoincrement": true
},
"session_id": {
"name": "session_id",
"type": "integer",
"primaryKey": false,
"notNull": true,
"autoincrement": false
},
"card_id": {
"name": "card_id",
"type": "integer",
"primaryKey": false,
"notNull": true,
"autoincrement": false
},
"direction": {
"name": "direction",
"type": "text",
"primaryKey": false,
"notNull": true,
"autoincrement": false
},
"shown_at": {
"name": "shown_at",
"type": "integer",
"primaryKey": false,
"notNull": true,
"autoincrement": false,
"default": "(unixepoch())"
},
"result": {
"name": "result",
"type": "text",
"primaryKey": false,
"notNull": true,
"autoincrement": false
},
"time_to_answer_ms": {
"name": "time_to_answer_ms",
"type": "integer",
"primaryKey": false,
"notNull": false,
"autoincrement": false
}
},
"indexes": {
"attempts_session_idx": {
"name": "attempts_session_idx",
"columns": [
"session_id"
],
"isUnique": false
},
"attempts_card_idx": {
"name": "attempts_card_idx",
"columns": [
"card_id"
],
"isUnique": false
}
},
"foreignKeys": {
"attempts_session_id_sessions_id_fk": {
"name": "attempts_session_id_sessions_id_fk",
"tableFrom": "attempts",
"tableTo": "sessions",
"columnsFrom": [
"session_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"attempts_card_id_cards_id_fk": {
"name": "attempts_card_id_cards_id_fk",
"tableFrom": "attempts",
"tableTo": "cards",
"columnsFrom": [
"card_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
},
"card_progress": {
"name": "card_progress",
"columns": {
"card_id": {
"name": "card_id",
"type": "integer",
"primaryKey": false,
"notNull": true,
"autoincrement": false
},
"direction": {
"name": "direction",
"type": "text",
"primaryKey": false,
"notNull": true,
"autoincrement": false
},
"box": {
"name": "box",
"type": "integer",
"primaryKey": false,
"notNull": true,
"autoincrement": false,
"default": 1
},
"correct_count": {
"name": "correct_count",
"type": "integer",
"primaryKey": false,
"notNull": true,
"autoincrement": false,
"default": 0
},
"incorrect_count": {
"name": "incorrect_count",
"type": "integer",
"primaryKey": false,
"notNull": true,
"autoincrement": false,
"default": 0
},
"last_shown_at": {
"name": "last_shown_at",
"type": "integer",
"primaryKey": false,
"notNull": false,
"autoincrement": false
},
"next_due_at": {
"name": "next_due_at",
"type": "integer",
"primaryKey": false,
"notNull": true,
"autoincrement": false,
"default": 0
}
},
"indexes": {
"card_progress_pk": {
"name": "card_progress_pk",
"columns": [
"card_id",
"direction"
],
"isUnique": false
},
"card_progress_due_idx": {
"name": "card_progress_due_idx",
"columns": [
"next_due_at"
],
"isUnique": false
}
},
"foreignKeys": {
"card_progress_card_id_cards_id_fk": {
"name": "card_progress_card_id_cards_id_fk",
"tableFrom": "card_progress",
"tableTo": "cards",
"columnsFrom": [
"card_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
},
"cards": {
"name": "cards",
"columns": {
"id": {
"name": "id",
"type": "integer",
"primaryKey": true,
"notNull": true,
"autoincrement": true
},
"lesson_id": {
"name": "lesson_id",
"type": "integer",
"primaryKey": false,
"notNull": true,
"autoincrement": false
},
"question": {
"name": "question",
"type": "text",
"primaryKey": false,
"notNull": true,
"autoincrement": false
},
"answer": {
"name": "answer",
"type": "text",
"primaryKey": false,
"notNull": true,
"autoincrement": false
},
"hint": {
"name": "hint",
"type": "text",
"primaryKey": false,
"notNull": false,
"autoincrement": false
},
"position": {
"name": "position",
"type": "integer",
"primaryKey": false,
"notNull": true,
"autoincrement": false,
"default": 0
},
"created_at": {
"name": "created_at",
"type": "integer",
"primaryKey": false,
"notNull": true,
"autoincrement": false,
"default": "(unixepoch())"
},
"updated_at": {
"name": "updated_at",
"type": "integer",
"primaryKey": false,
"notNull": true,
"autoincrement": false,
"default": "(unixepoch())"
}
},
"indexes": {
"cards_lesson_idx": {
"name": "cards_lesson_idx",
"columns": [
"lesson_id"
],
"isUnique": false
}
},
"foreignKeys": {
"cards_lesson_id_lessons_id_fk": {
"name": "cards_lesson_id_lessons_id_fk",
"tableFrom": "cards",
"tableTo": "lessons",
"columnsFrom": [
"lesson_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
},
"lessons": {
"name": "lessons",
"columns": {
"id": {
"name": "id",
"type": "integer",
"primaryKey": true,
"notNull": true,
"autoincrement": true
},
"parent_id": {
"name": "parent_id",
"type": "integer",
"primaryKey": false,
"notNull": false,
"autoincrement": false
},
"name": {
"name": "name",
"type": "text",
"primaryKey": false,
"notNull": true,
"autoincrement": false
},
"description": {
"name": "description",
"type": "text",
"primaryKey": false,
"notNull": false,
"autoincrement": false
},
"position": {
"name": "position",
"type": "integer",
"primaryKey": false,
"notNull": true,
"autoincrement": false,
"default": 0
},
"bidirectional": {
"name": "bidirectional",
"type": "integer",
"primaryKey": false,
"notNull": true,
"autoincrement": false,
"default": false
},
"created_at": {
"name": "created_at",
"type": "integer",
"primaryKey": false,
"notNull": true,
"autoincrement": false,
"default": "(unixepoch())"
},
"updated_at": {
"name": "updated_at",
"type": "integer",
"primaryKey": false,
"notNull": true,
"autoincrement": false,
"default": "(unixepoch())"
}
},
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
},
"sessions": {
"name": "sessions",
"columns": {
"id": {
"name": "id",
"type": "integer",
"primaryKey": true,
"notNull": true,
"autoincrement": true
},
"lesson_id": {
"name": "lesson_id",
"type": "integer",
"primaryKey": false,
"notNull": true,
"autoincrement": false
},
"started_at": {
"name": "started_at",
"type": "integer",
"primaryKey": false,
"notNull": true,
"autoincrement": false,
"default": "(unixepoch())"
},
"ended_at": {
"name": "ended_at",
"type": "integer",
"primaryKey": false,
"notNull": false,
"autoincrement": false
},
"duration_seconds": {
"name": "duration_seconds",
"type": "integer",
"primaryKey": false,
"notNull": false,
"autoincrement": false
},
"cards_shown": {
"name": "cards_shown",
"type": "integer",
"primaryKey": false,
"notNull": true,
"autoincrement": false,
"default": 0
},
"cards_correct": {
"name": "cards_correct",
"type": "integer",
"primaryKey": false,
"notNull": true,
"autoincrement": false,
"default": 0
},
"cards_incorrect": {
"name": "cards_incorrect",
"type": "integer",
"primaryKey": false,
"notNull": true,
"autoincrement": false,
"default": 0
},
"status": {
"name": "status",
"type": "text",
"primaryKey": false,
"notNull": true,
"autoincrement": false,
"default": "'active'"
},
"queue_snapshot": {
"name": "queue_snapshot",
"type": "text",
"primaryKey": false,
"notNull": false,
"autoincrement": false
}
},
"indexes": {
"sessions_status_idx": {
"name": "sessions_status_idx",
"columns": [
"status"
],
"isUnique": false
}
},
"foreignKeys": {
"sessions_lesson_id_lessons_id_fk": {
"name": "sessions_lesson_id_lessons_id_fk",
"tableFrom": "sessions",
"tableTo": "lessons",
"columnsFrom": [
"lesson_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {}
}
},
"enums": {},
"_meta": {
"schemas": {},
"tables": {},
"columns": {}
},
"internal": {
"indexes": {}
}
}