{ "version": "6", "dialect": "sqlite", "id": "79583aaf-5f48-44cd-b105-407d229c3ced", "prevId": "c1f6559a-c6f4-491e-8201-4f622718de35", "tables": { "combined_charts": { "name": "combined_charts", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "habit_ids": { "name": "habit_ids", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "settings": { "name": "settings", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "created_at": { "name": "created_at", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "updated_at": { "name": "updated_at", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": { "combined_charts_user_idx": { "name": "combined_charts_user_idx", "columns": [ "user_id" ], "isUnique": false } }, "foreignKeys": { "combined_charts_user_id_users_id_fk": { "name": "combined_charts_user_id_users_id_fk", "tableFrom": "combined_charts", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "habit_calendar_settings": { "name": "habit_calendar_settings", "columns": { "habit_id": { "name": "habit_id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "settings": { "name": "settings", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "habit_calendar_settings_habit_id_habits_id_fk": { "name": "habit_calendar_settings_habit_id_habits_id_fk", "tableFrom": "habit_calendar_settings", "tableTo": "habits", "columnsFrom": [ "habit_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "habit_days": { "name": "habit_days", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "autoincrement": true }, "habit_id": { "name": "habit_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "revision_id": { "name": "revision_id", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "date": { "name": "date", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "timezone": { "name": "timezone", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "ends_at": { "name": "ends_at", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "count_set": { "name": "count_set", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": false }, "count": { "name": "count", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 }, "done": { "name": "done", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": false } }, "indexes": { "habit_days_lookup_idx": { "name": "habit_days_lookup_idx", "columns": [ "habit_id", "date", "revision_id" ], "isUnique": false } }, "foreignKeys": { "habit_days_habit_id_habits_id_fk": { "name": "habit_days_habit_id_habits_id_fk", "tableFrom": "habit_days", "tableTo": "habits", "columnsFrom": [ "habit_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" }, "habit_days_revision_id_habit_revisions_id_fk": { "name": "habit_days_revision_id_habit_revisions_id_fk", "tableFrom": "habit_days", "tableTo": "habit_revisions", "columnsFrom": [ "revision_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "habit_revisions": { "name": "habit_revisions", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "autoincrement": true }, "habit_id": { "name": "habit_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "effective_date": { "name": "effective_date", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "config": { "name": "config", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "created_at": { "name": "created_at", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": { "habit_revisions_date_idx": { "name": "habit_revisions_date_idx", "columns": [ "habit_id", "effective_date", "id" ], "isUnique": false } }, "foreignKeys": { "habit_revisions_habit_id_habits_id_fk": { "name": "habit_revisions_habit_id_habits_id_fk", "tableFrom": "habit_revisions", "tableTo": "habits", "columnsFrom": [ "habit_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "habits": { "name": "habits", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "created_date": { "name": "created_date", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "materialized_through": { "name": "materialized_through", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": { "habits_user_idx": { "name": "habits_user_idx", "columns": [ "user_id" ], "isUnique": false } }, "foreignKeys": { "habits_user_id_users_id_fk": { "name": "habits_user_id_users_id_fk", "tableFrom": "habits", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "progress_events": { "name": "progress_events", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "autoincrement": true }, "day_id": { "name": "day_id", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "occurrence_id": { "name": "occurrence_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "before": { "name": "before", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "after": { "name": "after", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "created_at": { "name": "created_at", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": { "progress_events_day_idx": { "name": "progress_events_day_idx", "columns": [ "day_id" ], "isUnique": false } }, "foreignKeys": { "progress_events_day_id_habit_days_id_fk": { "name": "progress_events_day_id_habit_days_id_fk", "tableFrom": "progress_events", "tableTo": "habit_days", "columnsFrom": [ "day_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "sessions": { "name": "sessions", "columns": { "token_hash": { "name": "token_hash", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "created_at": { "name": "created_at", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "expires_at": { "name": "expires_at", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": { "sessions_user_id_idx": { "name": "sessions_user_id_idx", "columns": [ "user_id" ], "isUnique": false }, "sessions_expires_at_idx": { "name": "sessions_expires_at_idx", "columns": [ "expires_at" ], "isUnique": false } }, "foreignKeys": { "sessions_user_id_users_id_fk": { "name": "sessions_user_id_users_id_fk", "tableFrom": "sessions", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "task_occurrences": { "name": "task_occurrences", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "day_id": { "name": "day_id", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "task_id": { "name": "task_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "done": { "name": "done", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": false }, "expired_at": { "name": "expired_at", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "updated_at": { "name": "updated_at", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": { "task_occurrences_day_idx": { "name": "task_occurrences_day_idx", "columns": [ "day_id" ], "isUnique": false } }, "foreignKeys": { "task_occurrences_day_id_habit_days_id_fk": { "name": "task_occurrences_day_id_habit_days_id_fk", "tableFrom": "task_occurrences", "tableTo": "habit_days", "columnsFrom": [ "day_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "users": { "name": "users", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "discord_id": { "name": "discord_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "username": { "name": "username", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "global_name": { "name": "global_name", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "avatar_hash": { "name": "avatar_hash", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "timezone": { "name": "timezone", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'UTC'" }, "created_at": { "name": "created_at", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "updated_at": { "name": "updated_at", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": { "users_discord_id_unique": { "name": "users_discord_id_unique", "columns": [ "discord_id" ], "isUnique": true } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} } }, "views": {}, "enums": {}, "_meta": { "schemas": {}, "tables": {}, "columns": {} }, "internal": { "indexes": {} } }