{ "version": "6", "dialect": "sqlite", "id": "6d22de90-25a5-4565-8b37-8d1d479c2dc6", "prevId": "00000000-0000-0000-0000-000000000000", "tables": { "categories": { "name": "categories", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "autoincrement": true }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "slug": { "name": "slug", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "(strftime('%Y-%m-%dT%H:%M:%fZ', 'now'))" }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "(strftime('%Y-%m-%dT%H:%M:%fZ', 'now'))" } }, "indexes": { "categories_slug_unique_idx": { "name": "categories_slug_unique_idx", "columns": [ "slug" ], "isUnique": true } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {} }, "comments": { "name": "comments", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "autoincrement": true }, "content": { "name": "content", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "is_internal": { "name": "is_internal", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": false }, "ticket_id": { "name": "ticket_id", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "author_id": { "name": "author_id", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "(strftime('%Y-%m-%dT%H:%M:%fZ', 'now'))" }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "(strftime('%Y-%m-%dT%H:%M:%fZ', 'now'))" } }, "indexes": { "comments_ticket_id_idx": { "name": "comments_ticket_id_idx", "columns": [ "ticket_id" ], "isUnique": false }, "comments_author_id_idx": { "name": "comments_author_id_idx", "columns": [ "author_id" ], "isUnique": false } }, "foreignKeys": { "comments_ticket_id_tickets_id_fk": { "name": "comments_ticket_id_tickets_id_fk", "tableFrom": "comments", "tableTo": "tickets", "columnsFrom": [ "ticket_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "comments_author_id_users_id_fk": { "name": "comments_author_id_users_id_fk", "tableFrom": "comments", "tableTo": "users", "columnsFrom": [ "author_id" ], "columnsTo": [ "id" ], "onDelete": "restrict", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {} }, "tickets": { "name": "tickets", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "autoincrement": true }, "title": { "name": "title", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'open'" }, "priority": { "name": "priority", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'medium'" }, "creator_id": { "name": "creator_id", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "assignee_id": { "name": "assignee_id", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "category_id": { "name": "category_id", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "due_at": { "name": "due_at", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "resolved_at": { "name": "resolved_at", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "(strftime('%Y-%m-%dT%H:%M:%fZ', 'now'))" }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "(strftime('%Y-%m-%dT%H:%M:%fZ', 'now'))" } }, "indexes": { "tickets_status_idx": { "name": "tickets_status_idx", "columns": [ "status" ], "isUnique": false }, "tickets_priority_idx": { "name": "tickets_priority_idx", "columns": [ "priority" ], "isUnique": false }, "tickets_assignee_id_idx": { "name": "tickets_assignee_id_idx", "columns": [ "assignee_id" ], "isUnique": false }, "tickets_creator_id_idx": { "name": "tickets_creator_id_idx", "columns": [ "creator_id" ], "isUnique": false }, "tickets_category_id_idx": { "name": "tickets_category_id_idx", "columns": [ "category_id" ], "isUnique": false }, "tickets_status_assignee_idx": { "name": "tickets_status_assignee_idx", "columns": [ "status", "assignee_id" ], "isUnique": false } }, "foreignKeys": { "tickets_creator_id_users_id_fk": { "name": "tickets_creator_id_users_id_fk", "tableFrom": "tickets", "tableTo": "users", "columnsFrom": [ "creator_id" ], "columnsTo": [ "id" ], "onDelete": "restrict", "onUpdate": "no action" }, "tickets_assignee_id_users_id_fk": { "name": "tickets_assignee_id_users_id_fk", "tableFrom": "tickets", "tableTo": "users", "columnsFrom": [ "assignee_id" ], "columnsTo": [ "id" ], "onDelete": "set null", "onUpdate": "no action" }, "tickets_category_id_categories_id_fk": { "name": "tickets_category_id_categories_id_fk", "tableFrom": "tickets", "tableTo": "categories", "columnsFrom": [ "category_id" ], "columnsTo": [ "id" ], "onDelete": "set null", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {} }, "users": { "name": "users", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "autoincrement": true }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "email": { "name": "email", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "password": { "name": "password", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "role": { "name": "role", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'requester'" }, "is_active": { "name": "is_active", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": true }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "(strftime('%Y-%m-%dT%H:%M:%fZ', 'now'))" }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "(strftime('%Y-%m-%dT%H:%M:%fZ', 'now'))" } }, "indexes": { "users_email_unique_idx": { "name": "users_email_unique_idx", "columns": [ "email" ], "isUnique": true }, "users_role_idx": { "name": "users_role_idx", "columns": [ "role" ], "isUnique": false } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {} } }, "enums": {}, "_meta": { "schemas": {}, "tables": {}, "columns": {} }, "internal": { "indexes": {} } }