{ "version": "6", "dialect": "sqlite", "id": "1e6cef10-8b62-4e22-9659-2a6797bc15f0", "prevId": "00000000-0000-0000-0000-000000000000", "tables": { "bookable_objects": { "name": "bookable_objects", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "active": { "name": "active", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": true }, "sort_order": { "name": "sort_order", "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('subsec') * 1000)" } }, "indexes": { "bookable_objects_name_unique": { "name": "bookable_objects_name_unique", "columns": [ "name" ], "isUnique": true } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "booking_objects": { "name": "booking_objects", "columns": { "booking_id": { "name": "booking_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "object_id": { "name": "object_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "booking_objects_booking_id_bookings_id_fk": { "name": "booking_objects_booking_id_bookings_id_fk", "tableFrom": "booking_objects", "tableTo": "bookings", "columnsFrom": [ "booking_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "booking_objects_object_id_bookable_objects_id_fk": { "name": "booking_objects_object_id_bookable_objects_id_fk", "tableFrom": "booking_objects", "tableTo": "bookable_objects", "columnsFrom": [ "object_id" ], "columnsTo": [ "id" ], "onDelete": "restrict", "onUpdate": "no action" } }, "compositePrimaryKeys": { "booking_objects_booking_id_object_id_pk": { "columns": [ "booking_id", "object_id" ], "name": "booking_objects_booking_id_object_id_pk" } }, "uniqueConstraints": {}, "checkConstraints": {} }, "bookings": { "name": "bookings", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "booking_number": { "name": "booking_number", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "contact_name": { "name": "contact_name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "phone": { "name": "phone", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "date": { "name": "date", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "check_in": { "name": "check_in", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "check_out": { "name": "check_out", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "guest_count": { "name": "guest_count", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "cost": { "name": "cost", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "prepayment": { "name": "prepayment", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 }, "comment": { "name": "comment", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "source": { "name": "source", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "booked_by_user_id": { "name": "booked_by_user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'confirmed'" }, "created_at": { "name": "created_at", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "(unixepoch('subsec') * 1000)" }, "updated_at": { "name": "updated_at", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "(unixepoch('subsec') * 1000)" } }, "indexes": { "bookings_booking_number_unique": { "name": "bookings_booking_number_unique", "columns": [ "booking_number" ], "isUnique": true } }, "foreignKeys": { "bookings_booked_by_user_id_users_id_fk": { "name": "bookings_booked_by_user_id_users_id_fk", "tableFrom": "bookings", "tableTo": "users", "columnsFrom": [ "booked_by_user_id" ], "columnsTo": [ "id" ], "onDelete": "restrict", "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 }, "expires_at": { "name": "expires_at", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "created_at": { "name": "created_at", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "(unixepoch('subsec') * 1000)" } }, "indexes": {}, "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": {} }, "users": { "name": "users", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "email": { "name": "email", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "password_hash": { "name": "password_hash", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "role": { "name": "role", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'staff'" }, "created_at": { "name": "created_at", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "(unixepoch('subsec') * 1000)" } }, "indexes": { "users_email_unique": { "name": "users_email_unique", "columns": [ "email" ], "isUnique": true } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} } }, "views": {}, "enums": {}, "_meta": { "schemas": {}, "tables": {}, "columns": {} }, "internal": { "indexes": {} } }