diff --git a/migrations/20260916_192252_cookie_settings.json b/migrations/20260916_192252_cookie_settings.json new file mode 100644 index 0000000..c436bd1 --- /dev/null +++ b/migrations/20260916_192252_cookie_settings.json @@ -0,0 +1,6659 @@ +{ + "version": "7", + "dialect": "postgresql", + "tables": { + "public.users_sessions": { + "name": "users_sessions", + "schema": "", + "columns": { + "_order": { + "name": "_order", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "_parent_id": { + "name": "_parent_id", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "id": { + "name": "id", + "type": "varchar", + "primaryKey": true, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "expires_at": { + "name": "expires_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true + } + }, + "indexes": { + "users_sessions_order_idx": { + "name": "users_sessions_order_idx", + "columns": [ + { + "expression": "_order", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "users_sessions_parent_id_idx": { + "name": "users_sessions_parent_id_idx", + "columns": [ + { + "expression": "_parent_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "users_sessions_parent_id_fk": { + "name": "users_sessions_parent_id_fk", + "tableFrom": "users_sessions", + "tableTo": "users", + "columnsFrom": [ + "_parent_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.users": { + "name": "users", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "name": { + "name": "name", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "role": { + "name": "role", + "type": "enum_users_role", + "typeSchema": "public", + "primaryKey": false, + "notNull": true, + "default": "'admin'" + }, + "can_view_analytics": { + "name": "can_view_analytics", + "type": "boolean", + "primaryKey": false, + "notNull": false, + "default": true + }, + "calendar_feed_token_hash": { + "name": "calendar_feed_token_hash", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "created_at": { + "name": "created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "email": { + "name": "email", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "reset_password_token": { + "name": "reset_password_token", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "reset_password_expiration": { + "name": "reset_password_expiration", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "salt": { + "name": "salt", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "hash": { + "name": "hash", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "login_attempts": { + "name": "login_attempts", + "type": "numeric", + "primaryKey": false, + "notNull": false, + "default": 0 + }, + "lock_until": { + "name": "lock_until", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "users_calendar_feed_token_hash_idx": { + "name": "users_calendar_feed_token_hash_idx", + "columns": [ + { + "expression": "calendar_feed_token_hash", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "users_updated_at_idx": { + "name": "users_updated_at_idx", + "columns": [ + { + "expression": "updated_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "users_created_at_idx": { + "name": "users_created_at_idx", + "columns": [ + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "users_email_idx": { + "name": "users_email_idx", + "columns": [ + { + "expression": "email", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.customers_sessions": { + "name": "customers_sessions", + "schema": "", + "columns": { + "_order": { + "name": "_order", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "_parent_id": { + "name": "_parent_id", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "id": { + "name": "id", + "type": "varchar", + "primaryKey": true, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "expires_at": { + "name": "expires_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true + } + }, + "indexes": { + "customers_sessions_order_idx": { + "name": "customers_sessions_order_idx", + "columns": [ + { + "expression": "_order", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "customers_sessions_parent_id_idx": { + "name": "customers_sessions_parent_id_idx", + "columns": [ + { + "expression": "_parent_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "customers_sessions_parent_id_fk": { + "name": "customers_sessions_parent_id_fk", + "tableFrom": "customers_sessions", + "tableTo": "customers", + "columnsFrom": [ + "_parent_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.customers": { + "name": "customers", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "name": { + "name": "name", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "phone": { + "name": "phone", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "email_verified": { + "name": "email_verified", + "type": "boolean", + "primaryKey": false, + "notNull": false, + "default": false + }, + "email_verification_token_hash": { + "name": "email_verification_token_hash", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "email_verification_expires": { + "name": "email_verification_expires", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "created_at": { + "name": "created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "email": { + "name": "email", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "reset_password_token": { + "name": "reset_password_token", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "reset_password_expiration": { + "name": "reset_password_expiration", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "salt": { + "name": "salt", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "hash": { + "name": "hash", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "login_attempts": { + "name": "login_attempts", + "type": "numeric", + "primaryKey": false, + "notNull": false, + "default": 0 + }, + "lock_until": { + "name": "lock_until", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "customers_email_verification_token_hash_idx": { + "name": "customers_email_verification_token_hash_idx", + "columns": [ + { + "expression": "email_verification_token_hash", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "customers_updated_at_idx": { + "name": "customers_updated_at_idx", + "columns": [ + { + "expression": "updated_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "customers_created_at_idx": { + "name": "customers_created_at_idx", + "columns": [ + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "customers_email_idx": { + "name": "customers_email_idx", + "columns": [ + { + "expression": "email", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.media": { + "name": "media", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "alt": { + "name": "alt", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "caption": { + "name": "caption", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "created_at": { + "name": "created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "url": { + "name": "url", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "thumbnail_u_r_l": { + "name": "thumbnail_u_r_l", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "filename": { + "name": "filename", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "mime_type": { + "name": "mime_type", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "filesize": { + "name": "filesize", + "type": "numeric", + "primaryKey": false, + "notNull": false + }, + "width": { + "name": "width", + "type": "numeric", + "primaryKey": false, + "notNull": false + }, + "height": { + "name": "height", + "type": "numeric", + "primaryKey": false, + "notNull": false + }, + "focal_x": { + "name": "focal_x", + "type": "numeric", + "primaryKey": false, + "notNull": false + }, + "focal_y": { + "name": "focal_y", + "type": "numeric", + "primaryKey": false, + "notNull": false + }, + "sizes_thumbnail_url": { + "name": "sizes_thumbnail_url", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "sizes_thumbnail_width": { + "name": "sizes_thumbnail_width", + "type": "numeric", + "primaryKey": false, + "notNull": false + }, + "sizes_thumbnail_height": { + "name": "sizes_thumbnail_height", + "type": "numeric", + "primaryKey": false, + "notNull": false + }, + "sizes_thumbnail_mime_type": { + "name": "sizes_thumbnail_mime_type", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "sizes_thumbnail_filesize": { + "name": "sizes_thumbnail_filesize", + "type": "numeric", + "primaryKey": false, + "notNull": false + }, + "sizes_thumbnail_filename": { + "name": "sizes_thumbnail_filename", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "sizes_card_url": { + "name": "sizes_card_url", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "sizes_card_width": { + "name": "sizes_card_width", + "type": "numeric", + "primaryKey": false, + "notNull": false + }, + "sizes_card_height": { + "name": "sizes_card_height", + "type": "numeric", + "primaryKey": false, + "notNull": false + }, + "sizes_card_mime_type": { + "name": "sizes_card_mime_type", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "sizes_card_filesize": { + "name": "sizes_card_filesize", + "type": "numeric", + "primaryKey": false, + "notNull": false + }, + "sizes_card_filename": { + "name": "sizes_card_filename", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "sizes_hero_url": { + "name": "sizes_hero_url", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "sizes_hero_width": { + "name": "sizes_hero_width", + "type": "numeric", + "primaryKey": false, + "notNull": false + }, + "sizes_hero_height": { + "name": "sizes_hero_height", + "type": "numeric", + "primaryKey": false, + "notNull": false + }, + "sizes_hero_mime_type": { + "name": "sizes_hero_mime_type", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "sizes_hero_filesize": { + "name": "sizes_hero_filesize", + "type": "numeric", + "primaryKey": false, + "notNull": false + }, + "sizes_hero_filename": { + "name": "sizes_hero_filename", + "type": "varchar", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "media_updated_at_idx": { + "name": "media_updated_at_idx", + "columns": [ + { + "expression": "updated_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "media_created_at_idx": { + "name": "media_created_at_idx", + "columns": [ + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "media_filename_idx": { + "name": "media_filename_idx", + "columns": [ + { + "expression": "filename", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "media_sizes_thumbnail_sizes_thumbnail_filename_idx": { + "name": "media_sizes_thumbnail_sizes_thumbnail_filename_idx", + "columns": [ + { + "expression": "sizes_thumbnail_filename", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "media_sizes_card_sizes_card_filename_idx": { + "name": "media_sizes_card_sizes_card_filename_idx", + "columns": [ + { + "expression": "sizes_card_filename", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "media_sizes_hero_sizes_hero_filename_idx": { + "name": "media_sizes_hero_sizes_hero_filename_idx", + "columns": [ + { + "expression": "sizes_hero_filename", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.events": { + "name": "events", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "title": { + "name": "title", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "slug": { + "name": "slug", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "description": { + "name": "description", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "date": { + "name": "date", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "start_time": { + "name": "start_time", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "end_time": { + "name": "end_time", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "location": { + "name": "location", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "category": { + "name": "category", + "type": "enum_events_category", + "typeSchema": "public", + "primaryKey": false, + "notNull": false, + "default": "'sonstiges'" + }, + "image_id": { + "name": "image_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "max_participants": { + "name": "max_participants", + "type": "numeric", + "primaryKey": false, + "notNull": false + }, + "registration_required": { + "name": "registration_required", + "type": "boolean", + "primaryKey": false, + "notNull": false, + "default": false + }, + "registration_info": { + "name": "registration_info", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "is_online": { + "name": "is_online", + "type": "boolean", + "primaryKey": false, + "notNull": false, + "default": false + }, + "meeting_password": { + "name": "meeting_password", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "regenerate_password": { + "name": "regenerate_password", + "type": "boolean", + "primaryKey": false, + "notNull": false, + "default": false + }, + "reminder60_enabled": { + "name": "reminder60_enabled", + "type": "boolean", + "primaryKey": false, + "notNull": false, + "default": true + }, + "reminder30_enabled": { + "name": "reminder30_enabled", + "type": "boolean", + "primaryKey": false, + "notNull": false, + "default": true + }, + "host_reminder_enabled": { + "name": "host_reminder_enabled", + "type": "boolean", + "primaryKey": false, + "notNull": false, + "default": true + }, + "host_reminder60_sent": { + "name": "host_reminder60_sent", + "type": "boolean", + "primaryKey": false, + "notNull": false, + "default": false + }, + "host_reminder30_sent": { + "name": "host_reminder30_sent", + "type": "boolean", + "primaryKey": false, + "notNull": false, + "default": false + }, + "is_private_booking": { + "name": "is_private_booking", + "type": "boolean", + "primaryKey": false, + "notNull": false, + "default": false + }, + "booking_request_id": { + "name": "booking_request_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "seo_title": { + "name": "seo_title", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "seo_description": { + "name": "seo_description", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "seo_keywords": { + "name": "seo_keywords", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "seo_og_image_id": { + "name": "seo_og_image_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "created_at": { + "name": "created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "_status": { + "name": "_status", + "type": "enum_events_status", + "typeSchema": "public", + "primaryKey": false, + "notNull": false, + "default": "'draft'" + } + }, + "indexes": { + "events_slug_idx": { + "name": "events_slug_idx", + "columns": [ + { + "expression": "slug", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "events_image_idx": { + "name": "events_image_idx", + "columns": [ + { + "expression": "image_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "events_booking_request_idx": { + "name": "events_booking_request_idx", + "columns": [ + { + "expression": "booking_request_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "events_seo_seo_og_image_idx": { + "name": "events_seo_seo_og_image_idx", + "columns": [ + { + "expression": "seo_og_image_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "events_updated_at_idx": { + "name": "events_updated_at_idx", + "columns": [ + { + "expression": "updated_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "events_created_at_idx": { + "name": "events_created_at_idx", + "columns": [ + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "events__status_idx": { + "name": "events__status_idx", + "columns": [ + { + "expression": "_status", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "events_image_id_media_id_fk": { + "name": "events_image_id_media_id_fk", + "tableFrom": "events", + "tableTo": "media", + "columnsFrom": [ + "image_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "set null", + "onUpdate": "no action" + }, + "events_booking_request_id_booking_requests_id_fk": { + "name": "events_booking_request_id_booking_requests_id_fk", + "tableFrom": "events", + "tableTo": "booking_requests", + "columnsFrom": [ + "booking_request_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "set null", + "onUpdate": "no action" + }, + "events_seo_og_image_id_media_id_fk": { + "name": "events_seo_og_image_id_media_id_fk", + "tableFrom": "events", + "tableTo": "media", + "columnsFrom": [ + "seo_og_image_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public._events_v": { + "name": "_events_v", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "parent_id": { + "name": "parent_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "version_title": { + "name": "version_title", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "version_slug": { + "name": "version_slug", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "version_description": { + "name": "version_description", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "version_date": { + "name": "version_date", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "version_start_time": { + "name": "version_start_time", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "version_end_time": { + "name": "version_end_time", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "version_location": { + "name": "version_location", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "version_category": { + "name": "version_category", + "type": "enum__events_v_version_category", + "typeSchema": "public", + "primaryKey": false, + "notNull": false, + "default": "'sonstiges'" + }, + "version_image_id": { + "name": "version_image_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "version_max_participants": { + "name": "version_max_participants", + "type": "numeric", + "primaryKey": false, + "notNull": false + }, + "version_registration_required": { + "name": "version_registration_required", + "type": "boolean", + "primaryKey": false, + "notNull": false, + "default": false + }, + "version_registration_info": { + "name": "version_registration_info", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "version_is_online": { + "name": "version_is_online", + "type": "boolean", + "primaryKey": false, + "notNull": false, + "default": false + }, + "version_meeting_password": { + "name": "version_meeting_password", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "version_regenerate_password": { + "name": "version_regenerate_password", + "type": "boolean", + "primaryKey": false, + "notNull": false, + "default": false + }, + "version_reminder60_enabled": { + "name": "version_reminder60_enabled", + "type": "boolean", + "primaryKey": false, + "notNull": false, + "default": true + }, + "version_reminder30_enabled": { + "name": "version_reminder30_enabled", + "type": "boolean", + "primaryKey": false, + "notNull": false, + "default": true + }, + "version_host_reminder_enabled": { + "name": "version_host_reminder_enabled", + "type": "boolean", + "primaryKey": false, + "notNull": false, + "default": true + }, + "version_host_reminder60_sent": { + "name": "version_host_reminder60_sent", + "type": "boolean", + "primaryKey": false, + "notNull": false, + "default": false + }, + "version_host_reminder30_sent": { + "name": "version_host_reminder30_sent", + "type": "boolean", + "primaryKey": false, + "notNull": false, + "default": false + }, + "version_is_private_booking": { + "name": "version_is_private_booking", + "type": "boolean", + "primaryKey": false, + "notNull": false, + "default": false + }, + "version_booking_request_id": { + "name": "version_booking_request_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "version_seo_title": { + "name": "version_seo_title", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "version_seo_description": { + "name": "version_seo_description", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "version_seo_keywords": { + "name": "version_seo_keywords", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "version_seo_og_image_id": { + "name": "version_seo_og_image_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "version_updated_at": { + "name": "version_updated_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "version_created_at": { + "name": "version_created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "version__status": { + "name": "version__status", + "type": "enum__events_v_version_status", + "typeSchema": "public", + "primaryKey": false, + "notNull": false, + "default": "'draft'" + }, + "created_at": { + "name": "created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "latest": { + "name": "latest", + "type": "boolean", + "primaryKey": false, + "notNull": false + }, + "autosave": { + "name": "autosave", + "type": "boolean", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "_events_v_parent_idx": { + "name": "_events_v_parent_idx", + "columns": [ + { + "expression": "parent_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "_events_v_version_version_slug_idx": { + "name": "_events_v_version_version_slug_idx", + "columns": [ + { + "expression": "version_slug", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "_events_v_version_version_image_idx": { + "name": "_events_v_version_version_image_idx", + "columns": [ + { + "expression": "version_image_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "_events_v_version_version_booking_request_idx": { + "name": "_events_v_version_version_booking_request_idx", + "columns": [ + { + "expression": "version_booking_request_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "_events_v_version_seo_version_seo_og_image_idx": { + "name": "_events_v_version_seo_version_seo_og_image_idx", + "columns": [ + { + "expression": "version_seo_og_image_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "_events_v_version_version_updated_at_idx": { + "name": "_events_v_version_version_updated_at_idx", + "columns": [ + { + "expression": "version_updated_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "_events_v_version_version_created_at_idx": { + "name": "_events_v_version_version_created_at_idx", + "columns": [ + { + "expression": "version_created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "_events_v_version_version__status_idx": { + "name": "_events_v_version_version__status_idx", + "columns": [ + { + "expression": "version__status", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "_events_v_created_at_idx": { + "name": "_events_v_created_at_idx", + "columns": [ + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "_events_v_updated_at_idx": { + "name": "_events_v_updated_at_idx", + "columns": [ + { + "expression": "updated_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "_events_v_latest_idx": { + "name": "_events_v_latest_idx", + "columns": [ + { + "expression": "latest", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "_events_v_autosave_idx": { + "name": "_events_v_autosave_idx", + "columns": [ + { + "expression": "autosave", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "_events_v_parent_id_events_id_fk": { + "name": "_events_v_parent_id_events_id_fk", + "tableFrom": "_events_v", + "tableTo": "events", + "columnsFrom": [ + "parent_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "set null", + "onUpdate": "no action" + }, + "_events_v_version_image_id_media_id_fk": { + "name": "_events_v_version_image_id_media_id_fk", + "tableFrom": "_events_v", + "tableTo": "media", + "columnsFrom": [ + "version_image_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "set null", + "onUpdate": "no action" + }, + "_events_v_version_booking_request_id_booking_requests_id_fk": { + "name": "_events_v_version_booking_request_id_booking_requests_id_fk", + "tableFrom": "_events_v", + "tableTo": "booking_requests", + "columnsFrom": [ + "version_booking_request_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "set null", + "onUpdate": "no action" + }, + "_events_v_version_seo_og_image_id_media_id_fk": { + "name": "_events_v_version_seo_og_image_id_media_id_fk", + "tableFrom": "_events_v", + "tableTo": "media", + "columnsFrom": [ + "version_seo_og_image_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.posts": { + "name": "posts", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "title": { + "name": "title", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "slug": { + "name": "slug", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "teaser": { + "name": "teaser", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "content": { + "name": "content", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "cover_image_id": { + "name": "cover_image_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "publish_date": { + "name": "publish_date", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "author": { + "name": "author", + "type": "varchar", + "primaryKey": false, + "notNull": false, + "default": "'Anouma'" + }, + "seo_title": { + "name": "seo_title", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "seo_description": { + "name": "seo_description", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "seo_keywords": { + "name": "seo_keywords", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "seo_og_image_id": { + "name": "seo_og_image_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "created_at": { + "name": "created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "_status": { + "name": "_status", + "type": "enum_posts_status", + "typeSchema": "public", + "primaryKey": false, + "notNull": false, + "default": "'draft'" + } + }, + "indexes": { + "posts_slug_idx": { + "name": "posts_slug_idx", + "columns": [ + { + "expression": "slug", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "posts_cover_image_idx": { + "name": "posts_cover_image_idx", + "columns": [ + { + "expression": "cover_image_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "posts_seo_seo_og_image_idx": { + "name": "posts_seo_seo_og_image_idx", + "columns": [ + { + "expression": "seo_og_image_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "posts_updated_at_idx": { + "name": "posts_updated_at_idx", + "columns": [ + { + "expression": "updated_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "posts_created_at_idx": { + "name": "posts_created_at_idx", + "columns": [ + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "posts__status_idx": { + "name": "posts__status_idx", + "columns": [ + { + "expression": "_status", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "posts_cover_image_id_media_id_fk": { + "name": "posts_cover_image_id_media_id_fk", + "tableFrom": "posts", + "tableTo": "media", + "columnsFrom": [ + "cover_image_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "set null", + "onUpdate": "no action" + }, + "posts_seo_og_image_id_media_id_fk": { + "name": "posts_seo_og_image_id_media_id_fk", + "tableFrom": "posts", + "tableTo": "media", + "columnsFrom": [ + "seo_og_image_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public._posts_v": { + "name": "_posts_v", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "parent_id": { + "name": "parent_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "version_title": { + "name": "version_title", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "version_slug": { + "name": "version_slug", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "version_teaser": { + "name": "version_teaser", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "version_content": { + "name": "version_content", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "version_cover_image_id": { + "name": "version_cover_image_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "version_publish_date": { + "name": "version_publish_date", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "version_author": { + "name": "version_author", + "type": "varchar", + "primaryKey": false, + "notNull": false, + "default": "'Anouma'" + }, + "version_seo_title": { + "name": "version_seo_title", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "version_seo_description": { + "name": "version_seo_description", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "version_seo_keywords": { + "name": "version_seo_keywords", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "version_seo_og_image_id": { + "name": "version_seo_og_image_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "version_updated_at": { + "name": "version_updated_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "version_created_at": { + "name": "version_created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "version__status": { + "name": "version__status", + "type": "enum__posts_v_version_status", + "typeSchema": "public", + "primaryKey": false, + "notNull": false, + "default": "'draft'" + }, + "created_at": { + "name": "created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "latest": { + "name": "latest", + "type": "boolean", + "primaryKey": false, + "notNull": false + }, + "autosave": { + "name": "autosave", + "type": "boolean", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "_posts_v_parent_idx": { + "name": "_posts_v_parent_idx", + "columns": [ + { + "expression": "parent_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "_posts_v_version_version_slug_idx": { + "name": "_posts_v_version_version_slug_idx", + "columns": [ + { + "expression": "version_slug", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "_posts_v_version_version_cover_image_idx": { + "name": "_posts_v_version_version_cover_image_idx", + "columns": [ + { + "expression": "version_cover_image_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "_posts_v_version_seo_version_seo_og_image_idx": { + "name": "_posts_v_version_seo_version_seo_og_image_idx", + "columns": [ + { + "expression": "version_seo_og_image_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "_posts_v_version_version_updated_at_idx": { + "name": "_posts_v_version_version_updated_at_idx", + "columns": [ + { + "expression": "version_updated_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "_posts_v_version_version_created_at_idx": { + "name": "_posts_v_version_version_created_at_idx", + "columns": [ + { + "expression": "version_created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "_posts_v_version_version__status_idx": { + "name": "_posts_v_version_version__status_idx", + "columns": [ + { + "expression": "version__status", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "_posts_v_created_at_idx": { + "name": "_posts_v_created_at_idx", + "columns": [ + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "_posts_v_updated_at_idx": { + "name": "_posts_v_updated_at_idx", + "columns": [ + { + "expression": "updated_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "_posts_v_latest_idx": { + "name": "_posts_v_latest_idx", + "columns": [ + { + "expression": "latest", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "_posts_v_autosave_idx": { + "name": "_posts_v_autosave_idx", + "columns": [ + { + "expression": "autosave", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "_posts_v_parent_id_posts_id_fk": { + "name": "_posts_v_parent_id_posts_id_fk", + "tableFrom": "_posts_v", + "tableTo": "posts", + "columnsFrom": [ + "parent_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "set null", + "onUpdate": "no action" + }, + "_posts_v_version_cover_image_id_media_id_fk": { + "name": "_posts_v_version_cover_image_id_media_id_fk", + "tableFrom": "_posts_v", + "tableTo": "media", + "columnsFrom": [ + "version_cover_image_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "set null", + "onUpdate": "no action" + }, + "_posts_v_version_seo_og_image_id_media_id_fk": { + "name": "_posts_v_version_seo_og_image_id_media_id_fk", + "tableFrom": "_posts_v", + "tableTo": "media", + "columnsFrom": [ + "version_seo_og_image_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.offers": { + "name": "offers", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "title": { + "name": "title", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "slug": { + "name": "slug", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "short_description": { + "name": "short_description", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "description": { + "name": "description", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "image_id": { + "name": "image_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "category": { + "name": "category", + "type": "enum_offers_category", + "typeSchema": "public", + "primaryKey": false, + "notNull": false + }, + "order": { + "name": "order", + "type": "numeric", + "primaryKey": false, + "notNull": false, + "default": 0 + }, + "visibility": { + "name": "visibility", + "type": "enum_offers_visibility", + "typeSchema": "public", + "primaryKey": false, + "notNull": false, + "default": "'public'" + }, + "bookable": { + "name": "bookable", + "type": "boolean", + "primaryKey": false, + "notNull": false, + "default": false + }, + "price": { + "name": "price", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "duration_minutes": { + "name": "duration_minutes", + "type": "numeric", + "primaryKey": false, + "notNull": false + }, + "seo_title": { + "name": "seo_title", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "seo_description": { + "name": "seo_description", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "seo_keywords": { + "name": "seo_keywords", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "seo_og_image_id": { + "name": "seo_og_image_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "created_at": { + "name": "created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "_status": { + "name": "_status", + "type": "enum_offers_status", + "typeSchema": "public", + "primaryKey": false, + "notNull": false, + "default": "'draft'" + } + }, + "indexes": { + "offers_slug_idx": { + "name": "offers_slug_idx", + "columns": [ + { + "expression": "slug", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "offers_image_idx": { + "name": "offers_image_idx", + "columns": [ + { + "expression": "image_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "offers_seo_seo_og_image_idx": { + "name": "offers_seo_seo_og_image_idx", + "columns": [ + { + "expression": "seo_og_image_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "offers_updated_at_idx": { + "name": "offers_updated_at_idx", + "columns": [ + { + "expression": "updated_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "offers_created_at_idx": { + "name": "offers_created_at_idx", + "columns": [ + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "offers__status_idx": { + "name": "offers__status_idx", + "columns": [ + { + "expression": "_status", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "offers_image_id_media_id_fk": { + "name": "offers_image_id_media_id_fk", + "tableFrom": "offers", + "tableTo": "media", + "columnsFrom": [ + "image_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "set null", + "onUpdate": "no action" + }, + "offers_seo_og_image_id_media_id_fk": { + "name": "offers_seo_og_image_id_media_id_fk", + "tableFrom": "offers", + "tableTo": "media", + "columnsFrom": [ + "seo_og_image_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public._offers_v": { + "name": "_offers_v", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "parent_id": { + "name": "parent_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "version_title": { + "name": "version_title", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "version_slug": { + "name": "version_slug", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "version_short_description": { + "name": "version_short_description", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "version_description": { + "name": "version_description", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "version_image_id": { + "name": "version_image_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "version_category": { + "name": "version_category", + "type": "enum__offers_v_version_category", + "typeSchema": "public", + "primaryKey": false, + "notNull": false + }, + "version_order": { + "name": "version_order", + "type": "numeric", + "primaryKey": false, + "notNull": false, + "default": 0 + }, + "version_visibility": { + "name": "version_visibility", + "type": "enum__offers_v_version_visibility", + "typeSchema": "public", + "primaryKey": false, + "notNull": false, + "default": "'public'" + }, + "version_bookable": { + "name": "version_bookable", + "type": "boolean", + "primaryKey": false, + "notNull": false, + "default": false + }, + "version_price": { + "name": "version_price", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "version_duration_minutes": { + "name": "version_duration_minutes", + "type": "numeric", + "primaryKey": false, + "notNull": false + }, + "version_seo_title": { + "name": "version_seo_title", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "version_seo_description": { + "name": "version_seo_description", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "version_seo_keywords": { + "name": "version_seo_keywords", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "version_seo_og_image_id": { + "name": "version_seo_og_image_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "version_updated_at": { + "name": "version_updated_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "version_created_at": { + "name": "version_created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "version__status": { + "name": "version__status", + "type": "enum__offers_v_version_status", + "typeSchema": "public", + "primaryKey": false, + "notNull": false, + "default": "'draft'" + }, + "created_at": { + "name": "created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "latest": { + "name": "latest", + "type": "boolean", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "_offers_v_parent_idx": { + "name": "_offers_v_parent_idx", + "columns": [ + { + "expression": "parent_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "_offers_v_version_version_slug_idx": { + "name": "_offers_v_version_version_slug_idx", + "columns": [ + { + "expression": "version_slug", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "_offers_v_version_version_image_idx": { + "name": "_offers_v_version_version_image_idx", + "columns": [ + { + "expression": "version_image_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "_offers_v_version_seo_version_seo_og_image_idx": { + "name": "_offers_v_version_seo_version_seo_og_image_idx", + "columns": [ + { + "expression": "version_seo_og_image_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "_offers_v_version_version_updated_at_idx": { + "name": "_offers_v_version_version_updated_at_idx", + "columns": [ + { + "expression": "version_updated_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "_offers_v_version_version_created_at_idx": { + "name": "_offers_v_version_version_created_at_idx", + "columns": [ + { + "expression": "version_created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "_offers_v_version_version__status_idx": { + "name": "_offers_v_version_version__status_idx", + "columns": [ + { + "expression": "version__status", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "_offers_v_created_at_idx": { + "name": "_offers_v_created_at_idx", + "columns": [ + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "_offers_v_updated_at_idx": { + "name": "_offers_v_updated_at_idx", + "columns": [ + { + "expression": "updated_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "_offers_v_latest_idx": { + "name": "_offers_v_latest_idx", + "columns": [ + { + "expression": "latest", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "_offers_v_parent_id_offers_id_fk": { + "name": "_offers_v_parent_id_offers_id_fk", + "tableFrom": "_offers_v", + "tableTo": "offers", + "columnsFrom": [ + "parent_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "set null", + "onUpdate": "no action" + }, + "_offers_v_version_image_id_media_id_fk": { + "name": "_offers_v_version_image_id_media_id_fk", + "tableFrom": "_offers_v", + "tableTo": "media", + "columnsFrom": [ + "version_image_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "set null", + "onUpdate": "no action" + }, + "_offers_v_version_seo_og_image_id_media_id_fk": { + "name": "_offers_v_version_seo_og_image_id_media_id_fk", + "tableFrom": "_offers_v", + "tableTo": "media", + "columnsFrom": [ + "version_seo_og_image_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.event_registrations": { + "name": "event_registrations", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "event_id": { + "name": "event_id", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "name": { + "name": "name", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "email": { + "name": "email", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "status": { + "name": "status", + "type": "enum_event_registrations_status", + "typeSchema": "public", + "primaryKey": false, + "notNull": true, + "default": "'registered'" + }, + "registered_at": { + "name": "registered_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "reminder60_sent": { + "name": "reminder60_sent", + "type": "boolean", + "primaryKey": false, + "notNull": false, + "default": false + }, + "reminder30_sent": { + "name": "reminder30_sent", + "type": "boolean", + "primaryKey": false, + "notNull": false, + "default": false + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "created_at": { + "name": "created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "event_registrations_event_idx": { + "name": "event_registrations_event_idx", + "columns": [ + { + "expression": "event_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "event_registrations_updated_at_idx": { + "name": "event_registrations_updated_at_idx", + "columns": [ + { + "expression": "updated_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "event_registrations_created_at_idx": { + "name": "event_registrations_created_at_idx", + "columns": [ + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "event_registrations_event_id_events_id_fk": { + "name": "event_registrations_event_id_events_id_fk", + "tableFrom": "event_registrations", + "tableTo": "events", + "columnsFrom": [ + "event_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.availability": { + "name": "availability", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "weekday": { + "name": "weekday", + "type": "enum_availability_weekday", + "typeSchema": "public", + "primaryKey": false, + "notNull": true + }, + "start_time": { + "name": "start_time", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true + }, + "end_time": { + "name": "end_time", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true + }, + "active": { + "name": "active", + "type": "boolean", + "primaryKey": false, + "notNull": false, + "default": true + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "created_at": { + "name": "created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "availability_updated_at_idx": { + "name": "availability_updated_at_idx", + "columns": [ + { + "expression": "updated_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "availability_created_at_idx": { + "name": "availability_created_at_idx", + "columns": [ + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.availability_overrides": { + "name": "availability_overrides", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "date": { + "name": "date", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true + }, + "type": { + "name": "type", + "type": "enum_availability_overrides_type", + "typeSchema": "public", + "primaryKey": false, + "notNull": true, + "default": "'unavailable'" + }, + "start_time": { + "name": "start_time", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "end_time": { + "name": "end_time", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "reason": { + "name": "reason", + "type": "enum_availability_overrides_reason", + "typeSchema": "public", + "primaryKey": false, + "notNull": false + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "created_at": { + "name": "created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "availability_overrides_updated_at_idx": { + "name": "availability_overrides_updated_at_idx", + "columns": [ + { + "expression": "updated_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "availability_overrides_created_at_idx": { + "name": "availability_overrides_created_at_idx", + "columns": [ + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.booking_requests": { + "name": "booking_requests", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "user_id": { + "name": "user_id", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "offer_id": { + "name": "offer_id", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "date": { + "name": "date", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true + }, + "start_time": { + "name": "start_time", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true + }, + "end_time": { + "name": "end_time", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true + }, + "appointment_type": { + "name": "appointment_type", + "type": "enum_booking_requests_appointment_type", + "typeSchema": "public", + "primaryKey": false, + "notNull": true, + "default": "'onsite'" + }, + "status": { + "name": "status", + "type": "enum_booking_requests_status", + "typeSchema": "public", + "primaryKey": false, + "notNull": true, + "default": "'pending'" + }, + "user_message": { + "name": "user_message", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "internal_note": { + "name": "internal_note", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "proposed_alternative_date": { + "name": "proposed_alternative_date", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "proposed_alternative_start_time": { + "name": "proposed_alternative_start_time", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "proposed_alternative_end_time": { + "name": "proposed_alternative_end_time", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "linked_event_id": { + "name": "linked_event_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "created_at": { + "name": "created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "booking_requests_user_idx": { + "name": "booking_requests_user_idx", + "columns": [ + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "booking_requests_offer_idx": { + "name": "booking_requests_offer_idx", + "columns": [ + { + "expression": "offer_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "booking_requests_linked_event_idx": { + "name": "booking_requests_linked_event_idx", + "columns": [ + { + "expression": "linked_event_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "booking_requests_updated_at_idx": { + "name": "booking_requests_updated_at_idx", + "columns": [ + { + "expression": "updated_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "booking_requests_created_at_idx": { + "name": "booking_requests_created_at_idx", + "columns": [ + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "booking_requests_user_id_customers_id_fk": { + "name": "booking_requests_user_id_customers_id_fk", + "tableFrom": "booking_requests", + "tableTo": "customers", + "columnsFrom": [ + "user_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "set null", + "onUpdate": "no action" + }, + "booking_requests_offer_id_offers_id_fk": { + "name": "booking_requests_offer_id_offers_id_fk", + "tableFrom": "booking_requests", + "tableTo": "offers", + "columnsFrom": [ + "offer_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "set null", + "onUpdate": "no action" + }, + "booking_requests_linked_event_id_events_id_fk": { + "name": "booking_requests_linked_event_id_events_id_fk", + "tableFrom": "booking_requests", + "tableTo": "events", + "columnsFrom": [ + "linked_event_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.redirects": { + "name": "redirects", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "from_path": { + "name": "from_path", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "to_path": { + "name": "to_path", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "type": { + "name": "type", + "type": "enum_redirects_type", + "typeSchema": "public", + "primaryKey": false, + "notNull": true, + "default": "'permanent'" + }, + "enabled": { + "name": "enabled", + "type": "boolean", + "primaryKey": false, + "notNull": false, + "default": true + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "created_at": { + "name": "created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "redirects_from_path_idx": { + "name": "redirects_from_path_idx", + "columns": [ + { + "expression": "from_path", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "redirects_updated_at_idx": { + "name": "redirects_updated_at_idx", + "columns": [ + { + "expression": "updated_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "redirects_created_at_idx": { + "name": "redirects_created_at_idx", + "columns": [ + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.analytics_events": { + "name": "analytics_events", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "session_id": { + "name": "session_id", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "visitor_hash": { + "name": "visitor_hash", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "path": { + "name": "path", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "event_name": { + "name": "event_name", + "type": "varchar", + "primaryKey": false, + "notNull": true, + "default": "'page_view'" + }, + "referrer_host": { + "name": "referrer_host", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "device": { + "name": "device", + "type": "enum_analytics_events_device", + "typeSchema": "public", + "primaryKey": false, + "notNull": false + }, + "browser": { + "name": "browser", + "type": "enum_analytics_events_browser", + "typeSchema": "public", + "primaryKey": false, + "notNull": false + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "created_at": { + "name": "created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "analytics_events_session_id_idx": { + "name": "analytics_events_session_id_idx", + "columns": [ + { + "expression": "session_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "analytics_events_path_idx": { + "name": "analytics_events_path_idx", + "columns": [ + { + "expression": "path", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "analytics_events_event_name_idx": { + "name": "analytics_events_event_name_idx", + "columns": [ + { + "expression": "event_name", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "analytics_events_updated_at_idx": { + "name": "analytics_events_updated_at_idx", + "columns": [ + { + "expression": "updated_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "analytics_events_created_at_idx": { + "name": "analytics_events_created_at_idx", + "columns": [ + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "visitorHash_createdAt_idx": { + "name": "visitorHash_createdAt_idx", + "columns": [ + { + "expression": "visitor_hash", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "createdAt_idx": { + "name": "createdAt_idx", + "columns": [ + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.analytics_daily_stats": { + "name": "analytics_daily_stats", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "date": { + "name": "date", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true + }, + "sessions": { + "name": "sessions", + "type": "numeric", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "page_views": { + "name": "page_views", + "type": "numeric", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "unique_visitors": { + "name": "unique_visitors", + "type": "numeric", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "event_counts": { + "name": "event_counts", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "device_counts": { + "name": "device_counts", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "browser_counts": { + "name": "browser_counts", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "top_paths": { + "name": "top_paths", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "entry_paths": { + "name": "entry_paths", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "exit_paths": { + "name": "exit_paths", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "created_at": { + "name": "created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "analytics_daily_stats_date_idx": { + "name": "analytics_daily_stats_date_idx", + "columns": [ + { + "expression": "date", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "analytics_daily_stats_updated_at_idx": { + "name": "analytics_daily_stats_updated_at_idx", + "columns": [ + { + "expression": "updated_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "analytics_daily_stats_created_at_idx": { + "name": "analytics_daily_stats_created_at_idx", + "columns": [ + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.payload_kv": { + "name": "payload_kv", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "key": { + "name": "key", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "data": { + "name": "data", + "type": "jsonb", + "primaryKey": false, + "notNull": true + } + }, + "indexes": { + "payload_kv_key_idx": { + "name": "payload_kv_key_idx", + "columns": [ + { + "expression": "key", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.payload_locked_documents": { + "name": "payload_locked_documents", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "global_slug": { + "name": "global_slug", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "created_at": { + "name": "created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "payload_locked_documents_global_slug_idx": { + "name": "payload_locked_documents_global_slug_idx", + "columns": [ + { + "expression": "global_slug", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "payload_locked_documents_updated_at_idx": { + "name": "payload_locked_documents_updated_at_idx", + "columns": [ + { + "expression": "updated_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "payload_locked_documents_created_at_idx": { + "name": "payload_locked_documents_created_at_idx", + "columns": [ + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.payload_locked_documents_rels": { + "name": "payload_locked_documents_rels", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "order": { + "name": "order", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "parent_id": { + "name": "parent_id", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "path": { + "name": "path", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "users_id": { + "name": "users_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "customers_id": { + "name": "customers_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "media_id": { + "name": "media_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "events_id": { + "name": "events_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "posts_id": { + "name": "posts_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "offers_id": { + "name": "offers_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "event_registrations_id": { + "name": "event_registrations_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "availability_id": { + "name": "availability_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "availability_overrides_id": { + "name": "availability_overrides_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "booking_requests_id": { + "name": "booking_requests_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "redirects_id": { + "name": "redirects_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "analytics_events_id": { + "name": "analytics_events_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "analytics_daily_stats_id": { + "name": "analytics_daily_stats_id", + "type": "integer", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "payload_locked_documents_rels_order_idx": { + "name": "payload_locked_documents_rels_order_idx", + "columns": [ + { + "expression": "order", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "payload_locked_documents_rels_parent_idx": { + "name": "payload_locked_documents_rels_parent_idx", + "columns": [ + { + "expression": "parent_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "payload_locked_documents_rels_path_idx": { + "name": "payload_locked_documents_rels_path_idx", + "columns": [ + { + "expression": "path", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "payload_locked_documents_rels_users_id_idx": { + "name": "payload_locked_documents_rels_users_id_idx", + "columns": [ + { + "expression": "users_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "payload_locked_documents_rels_customers_id_idx": { + "name": "payload_locked_documents_rels_customers_id_idx", + "columns": [ + { + "expression": "customers_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "payload_locked_documents_rels_media_id_idx": { + "name": "payload_locked_documents_rels_media_id_idx", + "columns": [ + { + "expression": "media_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "payload_locked_documents_rels_events_id_idx": { + "name": "payload_locked_documents_rels_events_id_idx", + "columns": [ + { + "expression": "events_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "payload_locked_documents_rels_posts_id_idx": { + "name": "payload_locked_documents_rels_posts_id_idx", + "columns": [ + { + "expression": "posts_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "payload_locked_documents_rels_offers_id_idx": { + "name": "payload_locked_documents_rels_offers_id_idx", + "columns": [ + { + "expression": "offers_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "payload_locked_documents_rels_event_registrations_id_idx": { + "name": "payload_locked_documents_rels_event_registrations_id_idx", + "columns": [ + { + "expression": "event_registrations_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "payload_locked_documents_rels_availability_id_idx": { + "name": "payload_locked_documents_rels_availability_id_idx", + "columns": [ + { + "expression": "availability_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "payload_locked_documents_rels_availability_overrides_id_idx": { + "name": "payload_locked_documents_rels_availability_overrides_id_idx", + "columns": [ + { + "expression": "availability_overrides_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "payload_locked_documents_rels_booking_requests_id_idx": { + "name": "payload_locked_documents_rels_booking_requests_id_idx", + "columns": [ + { + "expression": "booking_requests_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "payload_locked_documents_rels_redirects_id_idx": { + "name": "payload_locked_documents_rels_redirects_id_idx", + "columns": [ + { + "expression": "redirects_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "payload_locked_documents_rels_analytics_events_id_idx": { + "name": "payload_locked_documents_rels_analytics_events_id_idx", + "columns": [ + { + "expression": "analytics_events_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "payload_locked_documents_rels_analytics_daily_stats_id_idx": { + "name": "payload_locked_documents_rels_analytics_daily_stats_id_idx", + "columns": [ + { + "expression": "analytics_daily_stats_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "payload_locked_documents_rels_parent_fk": { + "name": "payload_locked_documents_rels_parent_fk", + "tableFrom": "payload_locked_documents_rels", + "tableTo": "payload_locked_documents", + "columnsFrom": [ + "parent_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "payload_locked_documents_rels_users_fk": { + "name": "payload_locked_documents_rels_users_fk", + "tableFrom": "payload_locked_documents_rels", + "tableTo": "users", + "columnsFrom": [ + "users_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "payload_locked_documents_rels_customers_fk": { + "name": "payload_locked_documents_rels_customers_fk", + "tableFrom": "payload_locked_documents_rels", + "tableTo": "customers", + "columnsFrom": [ + "customers_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "payload_locked_documents_rels_media_fk": { + "name": "payload_locked_documents_rels_media_fk", + "tableFrom": "payload_locked_documents_rels", + "tableTo": "media", + "columnsFrom": [ + "media_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "payload_locked_documents_rels_events_fk": { + "name": "payload_locked_documents_rels_events_fk", + "tableFrom": "payload_locked_documents_rels", + "tableTo": "events", + "columnsFrom": [ + "events_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "payload_locked_documents_rels_posts_fk": { + "name": "payload_locked_documents_rels_posts_fk", + "tableFrom": "payload_locked_documents_rels", + "tableTo": "posts", + "columnsFrom": [ + "posts_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "payload_locked_documents_rels_offers_fk": { + "name": "payload_locked_documents_rels_offers_fk", + "tableFrom": "payload_locked_documents_rels", + "tableTo": "offers", + "columnsFrom": [ + "offers_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "payload_locked_documents_rels_event_registrations_fk": { + "name": "payload_locked_documents_rels_event_registrations_fk", + "tableFrom": "payload_locked_documents_rels", + "tableTo": "event_registrations", + "columnsFrom": [ + "event_registrations_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "payload_locked_documents_rels_availability_fk": { + "name": "payload_locked_documents_rels_availability_fk", + "tableFrom": "payload_locked_documents_rels", + "tableTo": "availability", + "columnsFrom": [ + "availability_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "payload_locked_documents_rels_availability_overrides_fk": { + "name": "payload_locked_documents_rels_availability_overrides_fk", + "tableFrom": "payload_locked_documents_rels", + "tableTo": "availability_overrides", + "columnsFrom": [ + "availability_overrides_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "payload_locked_documents_rels_booking_requests_fk": { + "name": "payload_locked_documents_rels_booking_requests_fk", + "tableFrom": "payload_locked_documents_rels", + "tableTo": "booking_requests", + "columnsFrom": [ + "booking_requests_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "payload_locked_documents_rels_redirects_fk": { + "name": "payload_locked_documents_rels_redirects_fk", + "tableFrom": "payload_locked_documents_rels", + "tableTo": "redirects", + "columnsFrom": [ + "redirects_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "payload_locked_documents_rels_analytics_events_fk": { + "name": "payload_locked_documents_rels_analytics_events_fk", + "tableFrom": "payload_locked_documents_rels", + "tableTo": "analytics_events", + "columnsFrom": [ + "analytics_events_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "payload_locked_documents_rels_analytics_daily_stats_fk": { + "name": "payload_locked_documents_rels_analytics_daily_stats_fk", + "tableFrom": "payload_locked_documents_rels", + "tableTo": "analytics_daily_stats", + "columnsFrom": [ + "analytics_daily_stats_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.payload_preferences": { + "name": "payload_preferences", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "key": { + "name": "key", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "value": { + "name": "value", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "created_at": { + "name": "created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "payload_preferences_key_idx": { + "name": "payload_preferences_key_idx", + "columns": [ + { + "expression": "key", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "payload_preferences_updated_at_idx": { + "name": "payload_preferences_updated_at_idx", + "columns": [ + { + "expression": "updated_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "payload_preferences_created_at_idx": { + "name": "payload_preferences_created_at_idx", + "columns": [ + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.payload_preferences_rels": { + "name": "payload_preferences_rels", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "order": { + "name": "order", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "parent_id": { + "name": "parent_id", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "path": { + "name": "path", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "users_id": { + "name": "users_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "customers_id": { + "name": "customers_id", + "type": "integer", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "payload_preferences_rels_order_idx": { + "name": "payload_preferences_rels_order_idx", + "columns": [ + { + "expression": "order", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "payload_preferences_rels_parent_idx": { + "name": "payload_preferences_rels_parent_idx", + "columns": [ + { + "expression": "parent_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "payload_preferences_rels_path_idx": { + "name": "payload_preferences_rels_path_idx", + "columns": [ + { + "expression": "path", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "payload_preferences_rels_users_id_idx": { + "name": "payload_preferences_rels_users_id_idx", + "columns": [ + { + "expression": "users_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "payload_preferences_rels_customers_id_idx": { + "name": "payload_preferences_rels_customers_id_idx", + "columns": [ + { + "expression": "customers_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "payload_preferences_rels_parent_fk": { + "name": "payload_preferences_rels_parent_fk", + "tableFrom": "payload_preferences_rels", + "tableTo": "payload_preferences", + "columnsFrom": [ + "parent_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "payload_preferences_rels_users_fk": { + "name": "payload_preferences_rels_users_fk", + "tableFrom": "payload_preferences_rels", + "tableTo": "users", + "columnsFrom": [ + "users_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "payload_preferences_rels_customers_fk": { + "name": "payload_preferences_rels_customers_fk", + "tableFrom": "payload_preferences_rels", + "tableTo": "customers", + "columnsFrom": [ + "customers_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.payload_migrations": { + "name": "payload_migrations", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "name": { + "name": "name", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "batch": { + "name": "batch", + "type": "numeric", + "primaryKey": false, + "notNull": false + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "created_at": { + "name": "created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "payload_migrations_updated_at_idx": { + "name": "payload_migrations_updated_at_idx", + "columns": [ + { + "expression": "updated_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "payload_migrations_created_at_idx": { + "name": "payload_migrations_created_at_idx", + "columns": [ + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.home_values": { + "name": "home_values", + "schema": "", + "columns": { + "_order": { + "name": "_order", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "_parent_id": { + "name": "_parent_id", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "id": { + "name": "id", + "type": "varchar", + "primaryKey": true, + "notNull": true + }, + "title": { + "name": "title", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "quote": { + "name": "quote", + "type": "varchar", + "primaryKey": false, + "notNull": true + } + }, + "indexes": { + "home_values_order_idx": { + "name": "home_values_order_idx", + "columns": [ + { + "expression": "_order", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "home_values_parent_id_idx": { + "name": "home_values_parent_id_idx", + "columns": [ + { + "expression": "_parent_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "home_values_parent_id_fk": { + "name": "home_values_parent_id_fk", + "tableFrom": "home_values", + "tableTo": "home", + "columnsFrom": [ + "_parent_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.home": { + "name": "home", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "hero_eyebrow": { + "name": "hero_eyebrow", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "hero_title": { + "name": "hero_title", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "hero_highlight": { + "name": "hero_highlight", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "hero_supporting": { + "name": "hero_supporting", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "hero_image_id": { + "name": "hero_image_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "about_eyebrow": { + "name": "about_eyebrow", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "about_title": { + "name": "about_title", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "about_text": { + "name": "about_text", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "about_image_id": { + "name": "about_image_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "values_eyebrow": { + "name": "values_eyebrow", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "values_title": { + "name": "values_title", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "cta_title": { + "name": "cta_title", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "cta_lead": { + "name": "cta_lead", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "seo_title": { + "name": "seo_title", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "seo_description": { + "name": "seo_description", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "seo_keywords": { + "name": "seo_keywords", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "seo_og_image_id": { + "name": "seo_og_image_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "home_hero_image_idx": { + "name": "home_hero_image_idx", + "columns": [ + { + "expression": "hero_image_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "home_about_image_idx": { + "name": "home_about_image_idx", + "columns": [ + { + "expression": "about_image_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "home_seo_seo_og_image_idx": { + "name": "home_seo_seo_og_image_idx", + "columns": [ + { + "expression": "seo_og_image_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "home_hero_image_id_media_id_fk": { + "name": "home_hero_image_id_media_id_fk", + "tableFrom": "home", + "tableTo": "media", + "columnsFrom": [ + "hero_image_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "set null", + "onUpdate": "no action" + }, + "home_about_image_id_media_id_fk": { + "name": "home_about_image_id_media_id_fk", + "tableFrom": "home", + "tableTo": "media", + "columnsFrom": [ + "about_image_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "set null", + "onUpdate": "no action" + }, + "home_seo_og_image_id_media_id_fk": { + "name": "home_seo_og_image_id_media_id_fk", + "tableFrom": "home", + "tableTo": "media", + "columnsFrom": [ + "seo_og_image_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.about": { + "name": "about", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "eyebrow": { + "name": "eyebrow", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "title": { + "name": "title", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "portrait_id": { + "name": "portrait_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "body": { + "name": "body", + "type": "jsonb", + "primaryKey": false, + "notNull": true + }, + "closing_lead": { + "name": "closing_lead", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "closing_highlight": { + "name": "closing_highlight", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "closing_paragraph": { + "name": "closing_paragraph", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "seo_title": { + "name": "seo_title", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "seo_description": { + "name": "seo_description", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "seo_keywords": { + "name": "seo_keywords", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "seo_og_image_id": { + "name": "seo_og_image_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "about_portrait_idx": { + "name": "about_portrait_idx", + "columns": [ + { + "expression": "portrait_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "about_seo_seo_og_image_idx": { + "name": "about_seo_seo_og_image_idx", + "columns": [ + { + "expression": "seo_og_image_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "about_portrait_id_media_id_fk": { + "name": "about_portrait_id_media_id_fk", + "tableFrom": "about", + "tableTo": "media", + "columnsFrom": [ + "portrait_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "set null", + "onUpdate": "no action" + }, + "about_seo_og_image_id_media_id_fk": { + "name": "about_seo_og_image_id_media_id_fk", + "tableFrom": "about", + "tableTo": "media", + "columnsFrom": [ + "seo_og_image_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.angebote_intro": { + "name": "angebote_intro", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "eyebrow": { + "name": "eyebrow", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "title": { + "name": "title", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "lead": { + "name": "lead", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "seo_title": { + "name": "seo_title", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "seo_description": { + "name": "seo_description", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "seo_keywords": { + "name": "seo_keywords", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "seo_og_image_id": { + "name": "seo_og_image_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "angebote_intro_seo_seo_og_image_idx": { + "name": "angebote_intro_seo_seo_og_image_idx", + "columns": [ + { + "expression": "seo_og_image_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "angebote_intro_seo_og_image_id_media_id_fk": { + "name": "angebote_intro_seo_og_image_id_media_id_fk", + "tableFrom": "angebote_intro", + "tableTo": "media", + "columnsFrom": [ + "seo_og_image_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.aktuelles_intro": { + "name": "aktuelles_intro", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "eyebrow": { + "name": "eyebrow", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "title": { + "name": "title", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "lead": { + "name": "lead", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "seo_title": { + "name": "seo_title", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "seo_description": { + "name": "seo_description", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "seo_keywords": { + "name": "seo_keywords", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "seo_og_image_id": { + "name": "seo_og_image_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "aktuelles_intro_seo_seo_og_image_idx": { + "name": "aktuelles_intro_seo_seo_og_image_idx", + "columns": [ + { + "expression": "seo_og_image_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "aktuelles_intro_seo_og_image_id_media_id_fk": { + "name": "aktuelles_intro_seo_og_image_id_media_id_fk", + "tableFrom": "aktuelles_intro", + "tableTo": "media", + "columnsFrom": [ + "seo_og_image_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.contact": { + "name": "contact", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "eyebrow": { + "name": "eyebrow", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "title": { + "name": "title", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "lead": { + "name": "lead", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "email": { + "name": "email", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "phone": { + "name": "phone", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "region": { + "name": "region", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "seo_title": { + "name": "seo_title", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "seo_description": { + "name": "seo_description", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "seo_keywords": { + "name": "seo_keywords", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "seo_og_image_id": { + "name": "seo_og_image_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "contact_seo_seo_og_image_idx": { + "name": "contact_seo_seo_og_image_idx", + "columns": [ + { + "expression": "seo_og_image_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "contact_seo_og_image_id_media_id_fk": { + "name": "contact_seo_og_image_id_media_id_fk", + "tableFrom": "contact", + "tableTo": "media", + "columnsFrom": [ + "seo_og_image_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.booking_steps": { + "name": "booking_steps", + "schema": "", + "columns": { + "_order": { + "name": "_order", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "_parent_id": { + "name": "_parent_id", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "id": { + "name": "id", + "type": "varchar", + "primaryKey": true, + "notNull": true + }, + "title": { + "name": "title", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "text": { + "name": "text", + "type": "varchar", + "primaryKey": false, + "notNull": true + } + }, + "indexes": { + "booking_steps_order_idx": { + "name": "booking_steps_order_idx", + "columns": [ + { + "expression": "_order", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "booking_steps_parent_id_idx": { + "name": "booking_steps_parent_id_idx", + "columns": [ + { + "expression": "_parent_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "booking_steps_parent_id_fk": { + "name": "booking_steps_parent_id_fk", + "tableFrom": "booking_steps", + "tableTo": "booking", + "columnsFrom": [ + "_parent_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.booking": { + "name": "booking", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "eyebrow": { + "name": "eyebrow", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "title": { + "name": "title", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "lead": { + "name": "lead", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "form_note": { + "name": "form_note", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "seo_title": { + "name": "seo_title", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "seo_description": { + "name": "seo_description", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "seo_keywords": { + "name": "seo_keywords", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "seo_og_image_id": { + "name": "seo_og_image_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "booking_seo_seo_og_image_idx": { + "name": "booking_seo_seo_og_image_idx", + "columns": [ + { + "expression": "seo_og_image_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "booking_seo_og_image_id_media_id_fk": { + "name": "booking_seo_og_image_id_media_id_fk", + "tableFrom": "booking", + "tableTo": "media", + "columnsFrom": [ + "seo_og_image_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.meeting_settings": { + "name": "meeting_settings", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "participant_join_window_minutes": { + "name": "participant_join_window_minutes", + "type": "numeric", + "primaryKey": false, + "notNull": true, + "default": 10 + }, + "host_join_window_minutes": { + "name": "host_join_window_minutes", + "type": "numeric", + "primaryKey": false, + "notNull": true, + "default": 60 + }, + "meeting_close_after_minutes": { + "name": "meeting_close_after_minutes", + "type": "numeric", + "primaryKey": false, + "notNull": true, + "default": 30 + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + } + }, + "indexes": {}, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.booking_settings": { + "name": "booking_settings", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "location_name": { + "name": "location_name", + "type": "varchar", + "primaryKey": false, + "notNull": false, + "default": "'Anouma'" + }, + "street": { + "name": "street", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "postal_code": { + "name": "postal_code", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "city": { + "name": "city", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "region": { + "name": "region", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "country": { + "name": "country", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + } + }, + "indexes": {}, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.seo_settings_opening_hours_days": { + "name": "seo_settings_opening_hours_days", + "schema": "", + "columns": { + "order": { + "name": "order", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "parent_id": { + "name": "parent_id", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "value": { + "name": "value", + "type": "enum_seo_settings_opening_hours_days", + "typeSchema": "public", + "primaryKey": false, + "notNull": false + }, + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + } + }, + "indexes": { + "seo_settings_opening_hours_days_order_idx": { + "name": "seo_settings_opening_hours_days_order_idx", + "columns": [ + { + "expression": "order", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "seo_settings_opening_hours_days_parent_idx": { + "name": "seo_settings_opening_hours_days_parent_idx", + "columns": [ + { + "expression": "parent_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "seo_settings_opening_hours_days_parent_fk": { + "name": "seo_settings_opening_hours_days_parent_fk", + "tableFrom": "seo_settings_opening_hours_days", + "tableTo": "seo_settings_opening_hours", + "columnsFrom": [ + "parent_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.seo_settings_opening_hours": { + "name": "seo_settings_opening_hours", + "schema": "", + "columns": { + "_order": { + "name": "_order", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "_parent_id": { + "name": "_parent_id", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "id": { + "name": "id", + "type": "varchar", + "primaryKey": true, + "notNull": true + }, + "opens": { + "name": "opens", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "closes": { + "name": "closes", + "type": "varchar", + "primaryKey": false, + "notNull": true + } + }, + "indexes": { + "seo_settings_opening_hours_order_idx": { + "name": "seo_settings_opening_hours_order_idx", + "columns": [ + { + "expression": "_order", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "seo_settings_opening_hours_parent_id_idx": { + "name": "seo_settings_opening_hours_parent_id_idx", + "columns": [ + { + "expression": "_parent_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "seo_settings_opening_hours_parent_id_fk": { + "name": "seo_settings_opening_hours_parent_id_fk", + "tableFrom": "seo_settings_opening_hours", + "tableTo": "seo_settings", + "columnsFrom": [ + "_parent_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.seo_settings_social_links": { + "name": "seo_settings_social_links", + "schema": "", + "columns": { + "_order": { + "name": "_order", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "_parent_id": { + "name": "_parent_id", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "id": { + "name": "id", + "type": "varchar", + "primaryKey": true, + "notNull": true + }, + "platform": { + "name": "platform", + "type": "varchar", + "primaryKey": false, + "notNull": true + }, + "url": { + "name": "url", + "type": "varchar", + "primaryKey": false, + "notNull": true + } + }, + "indexes": { + "seo_settings_social_links_order_idx": { + "name": "seo_settings_social_links_order_idx", + "columns": [ + { + "expression": "_order", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "seo_settings_social_links_parent_id_idx": { + "name": "seo_settings_social_links_parent_id_idx", + "columns": [ + { + "expression": "_parent_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "seo_settings_social_links_parent_id_fk": { + "name": "seo_settings_social_links_parent_id_fk", + "tableFrom": "seo_settings_social_links", + "tableTo": "seo_settings", + "columnsFrom": [ + "_parent_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.seo_settings": { + "name": "seo_settings", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "site_url": { + "name": "site_url", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "default_description": { + "name": "default_description", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "default_og_image_id": { + "name": "default_og_image_id", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "robots_indexable": { + "name": "robots_indexable", + "type": "boolean", + "primaryKey": false, + "notNull": false, + "default": true + }, + "business_name": { + "name": "business_name", + "type": "varchar", + "primaryKey": false, + "notNull": false, + "default": "'Anouma'" + }, + "business_description": { + "name": "business_description", + "type": "varchar", + "primaryKey": false, + "notNull": false + }, + "latitude": { + "name": "latitude", + "type": "numeric", + "primaryKey": false, + "notNull": false + }, + "longitude": { + "name": "longitude", + "type": "numeric", + "primaryKey": false, + "notNull": false + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "seo_settings_default_og_image_idx": { + "name": "seo_settings_default_og_image_idx", + "columns": [ + { + "expression": "default_og_image_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "seo_settings_default_og_image_id_media_id_fk": { + "name": "seo_settings_default_og_image_id_media_id_fk", + "tableFrom": "seo_settings", + "tableTo": "media", + "columnsFrom": [ + "default_og_image_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.cookie_settings": { + "name": "cookie_settings", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "consent_version": { + "name": "consent_version", + "type": "varchar", + "primaryKey": false, + "notNull": true, + "default": "'1.0'" + }, + "necessary_label": { + "name": "necessary_label", + "type": "varchar", + "primaryKey": false, + "notNull": true, + "default": "'Notwendig'" + }, + "necessary_description": { + "name": "necessary_description", + "type": "varchar", + "primaryKey": false, + "notNull": true, + "default": "'Für den Betrieb der Website technisch erforderlich (z. B. Login, Sitzung). Kann nicht deaktiviert werden.'" + }, + "preferences_label": { + "name": "preferences_label", + "type": "varchar", + "primaryKey": false, + "notNull": true, + "default": "'Präferenzen'" + }, + "preferences_description": { + "name": "preferences_description", + "type": "varchar", + "primaryKey": false, + "notNull": true, + "default": "'Speichert Einstellungen wie z. B. bevorzugte Anzeigeoptionen.'" + }, + "preferences_enabled": { + "name": "preferences_enabled", + "type": "boolean", + "primaryKey": false, + "notNull": false, + "default": true + }, + "statistics_label": { + "name": "statistics_label", + "type": "varchar", + "primaryKey": false, + "notNull": true, + "default": "'Statistik'" + }, + "statistics_description": { + "name": "statistics_description", + "type": "varchar", + "primaryKey": false, + "notNull": true, + "default": "'Anonymisierte, datensparsame Reichweitenmessung (Seitenaufrufe, Ereignisse) ohne personenbezogene Profile.'" + }, + "statistics_enabled": { + "name": "statistics_enabled", + "type": "boolean", + "primaryKey": false, + "notNull": false, + "default": true + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + } + }, + "indexes": {}, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.analytics_settings": { + "name": "analytics_settings", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "serial", + "primaryKey": true, + "notNull": true + }, + "raw_retention_days": { + "name": "raw_retention_days", + "type": "numeric", + "primaryKey": false, + "notNull": true, + "default": 90 + }, + "aggregate_retention_months": { + "name": "aggregate_retention_months", + "type": "numeric", + "primaryKey": false, + "notNull": true, + "default": 12 + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp(3) with time zone", + "primaryKey": false, + "notNull": false + } + }, + "indexes": {}, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + } + }, + "enums": { + "public.enum_users_role": { + "name": "enum_users_role", + "schema": "public", + "values": [ + "admin" + ] + }, + "public.enum_events_category": { + "name": "enum_events_category", + "schema": "public", + "values": [ + "prozessbegleitung", + "doula", + "erdenkinder", + "maedchenkreis", + "singen-im-kreis", + "singen-fuer-schwangere", + "singen-fuer-mamas-mit-baby", + "sonstiges" + ] + }, + "public.enum_events_status": { + "name": "enum_events_status", + "schema": "public", + "values": [ + "draft", + "published" + ] + }, + "public.enum__events_v_version_category": { + "name": "enum__events_v_version_category", + "schema": "public", + "values": [ + "prozessbegleitung", + "doula", + "erdenkinder", + "maedchenkreis", + "singen-im-kreis", + "singen-fuer-schwangere", + "singen-fuer-mamas-mit-baby", + "sonstiges" + ] + }, + "public.enum__events_v_version_status": { + "name": "enum__events_v_version_status", + "schema": "public", + "values": [ + "draft", + "published" + ] + }, + "public.enum_posts_status": { + "name": "enum_posts_status", + "schema": "public", + "values": [ + "draft", + "published" + ] + }, + "public.enum__posts_v_version_status": { + "name": "enum__posts_v_version_status", + "schema": "public", + "values": [ + "draft", + "published" + ] + }, + "public.enum_offers_category": { + "name": "enum_offers_category", + "schema": "public", + "values": [ + "prozessbegleitung", + "doula-begleitung", + "kindergruppen", + "singkreise" + ] + }, + "public.enum_offers_visibility": { + "name": "enum_offers_visibility", + "schema": "public", + "values": [ + "public", + "private" + ] + }, + "public.enum_offers_status": { + "name": "enum_offers_status", + "schema": "public", + "values": [ + "draft", + "published" + ] + }, + "public.enum__offers_v_version_category": { + "name": "enum__offers_v_version_category", + "schema": "public", + "values": [ + "prozessbegleitung", + "doula-begleitung", + "kindergruppen", + "singkreise" + ] + }, + "public.enum__offers_v_version_visibility": { + "name": "enum__offers_v_version_visibility", + "schema": "public", + "values": [ + "public", + "private" + ] + }, + "public.enum__offers_v_version_status": { + "name": "enum__offers_v_version_status", + "schema": "public", + "values": [ + "draft", + "published" + ] + }, + "public.enum_event_registrations_status": { + "name": "enum_event_registrations_status", + "schema": "public", + "values": [ + "registered", + "cancelled", + "attended" + ] + }, + "public.enum_availability_weekday": { + "name": "enum_availability_weekday", + "schema": "public", + "values": [ + "monday", + "tuesday", + "wednesday", + "thursday", + "friday", + "saturday", + "sunday" + ] + }, + "public.enum_availability_overrides_type": { + "name": "enum_availability_overrides_type", + "schema": "public", + "values": [ + "unavailable", + "custom-hours" + ] + }, + "public.enum_availability_overrides_reason": { + "name": "enum_availability_overrides_reason", + "schema": "public", + "values": [ + "urlaub", + "feiertag", + "krankheit", + "sonderoeffnungszeit", + "sonstiges" + ] + }, + "public.enum_booking_requests_appointment_type": { + "name": "enum_booking_requests_appointment_type", + "schema": "public", + "values": [ + "onsite", + "online" + ] + }, + "public.enum_booking_requests_status": { + "name": "enum_booking_requests_status", + "schema": "public", + "values": [ + "pending", + "confirmed", + "rejected", + "cancelled" + ] + }, + "public.enum_redirects_type": { + "name": "enum_redirects_type", + "schema": "public", + "values": [ + "permanent", + "temporary" + ] + }, + "public.enum_analytics_events_device": { + "name": "enum_analytics_events_device", + "schema": "public", + "values": [ + "mobile", + "desktop", + "tablet" + ] + }, + "public.enum_analytics_events_browser": { + "name": "enum_analytics_events_browser", + "schema": "public", + "values": [ + "chrome", + "firefox", + "safari", + "edge", + "other" + ] + }, + "public.enum_seo_settings_opening_hours_days": { + "name": "enum_seo_settings_opening_hours_days", + "schema": "public", + "values": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday", + "Sunday" + ] + } + }, + "schemas": {}, + "sequences": {}, + "roles": {}, + "policies": {}, + "views": {}, + "_meta": { + "schemas": {}, + "tables": {}, + "columns": {} + }, + "id": "d1b88a4d-1d09-4ecb-b20f-5f7b747d98f9", + "prevId": "00000000-0000-0000-0000-000000000000" +} \ No newline at end of file diff --git a/migrations/20260916_192252_cookie_settings.ts b/migrations/20260916_192252_cookie_settings.ts new file mode 100644 index 0000000..0d84079 --- /dev/null +++ b/migrations/20260916_192252_cookie_settings.ts @@ -0,0 +1,101 @@ +import { MigrateUpArgs, MigrateDownArgs, sql } from '@payloadcms/db-postgres' + +export async function up({ db, payload, req }: MigrateUpArgs): Promise { + await db.execute(sql` + CREATE TYPE "public"."enum_analytics_events_device" AS ENUM('mobile', 'desktop', 'tablet'); + CREATE TYPE "public"."enum_analytics_events_browser" AS ENUM('chrome', 'firefox', 'safari', 'edge', 'other'); + CREATE TABLE "analytics_events" ( + "id" serial PRIMARY KEY NOT NULL, + "session_id" varchar NOT NULL, + "visitor_hash" varchar NOT NULL, + "path" varchar NOT NULL, + "event_name" varchar DEFAULT 'page_view' NOT NULL, + "referrer_host" varchar, + "device" "enum_analytics_events_device", + "browser" "enum_analytics_events_browser", + "updated_at" timestamp(3) with time zone DEFAULT now() NOT NULL, + "created_at" timestamp(3) with time zone DEFAULT now() NOT NULL + ); + + CREATE TABLE "analytics_daily_stats" ( + "id" serial PRIMARY KEY NOT NULL, + "date" timestamp(3) with time zone NOT NULL, + "sessions" numeric DEFAULT 0 NOT NULL, + "page_views" numeric DEFAULT 0 NOT NULL, + "unique_visitors" numeric DEFAULT 0 NOT NULL, + "event_counts" jsonb, + "device_counts" jsonb, + "browser_counts" jsonb, + "top_paths" jsonb, + "entry_paths" jsonb, + "exit_paths" jsonb, + "updated_at" timestamp(3) with time zone DEFAULT now() NOT NULL, + "created_at" timestamp(3) with time zone DEFAULT now() NOT NULL + ); + + CREATE TABLE "cookie_settings" ( + "id" serial PRIMARY KEY NOT NULL, + "consent_version" varchar DEFAULT '1.0' NOT NULL, + "necessary_label" varchar DEFAULT 'Notwendig' NOT NULL, + "necessary_description" varchar DEFAULT 'Für den Betrieb der Website technisch erforderlich (z. B. Login, Sitzung). Kann nicht deaktiviert werden.' NOT NULL, + "preferences_label" varchar DEFAULT 'Präferenzen' NOT NULL, + "preferences_description" varchar DEFAULT 'Speichert Einstellungen wie z. B. bevorzugte Anzeigeoptionen.' NOT NULL, + "preferences_enabled" boolean DEFAULT true, + "statistics_label" varchar DEFAULT 'Statistik' NOT NULL, + "statistics_description" varchar DEFAULT 'Anonymisierte, datensparsame Reichweitenmessung (Seitenaufrufe, Ereignisse) ohne personenbezogene Profile.' NOT NULL, + "statistics_enabled" boolean DEFAULT true, + "updated_at" timestamp(3) with time zone, + "created_at" timestamp(3) with time zone + ); + + CREATE TABLE "analytics_settings" ( + "id" serial PRIMARY KEY NOT NULL, + "raw_retention_days" numeric DEFAULT 90 NOT NULL, + "aggregate_retention_months" numeric DEFAULT 12 NOT NULL, + "updated_at" timestamp(3) with time zone, + "created_at" timestamp(3) with time zone + ); + + ALTER TABLE "meeting_settings" ALTER COLUMN "participant_join_window_minutes" SET DEFAULT 10; + ALTER TABLE "users" ADD COLUMN "can_view_analytics" boolean DEFAULT true; + ALTER TABLE "payload_locked_documents_rels" ADD COLUMN "analytics_events_id" integer; + ALTER TABLE "payload_locked_documents_rels" ADD COLUMN "analytics_daily_stats_id" integer; + CREATE INDEX "analytics_events_session_id_idx" ON "analytics_events" USING btree ("session_id"); + CREATE INDEX "analytics_events_path_idx" ON "analytics_events" USING btree ("path"); + CREATE INDEX "analytics_events_event_name_idx" ON "analytics_events" USING btree ("event_name"); + CREATE INDEX "analytics_events_updated_at_idx" ON "analytics_events" USING btree ("updated_at"); + CREATE INDEX "analytics_events_created_at_idx" ON "analytics_events" USING btree ("created_at"); + CREATE INDEX "visitorHash_createdAt_idx" ON "analytics_events" USING btree ("visitor_hash","created_at"); + CREATE INDEX "createdAt_idx" ON "analytics_events" USING btree ("created_at"); + CREATE UNIQUE INDEX "analytics_daily_stats_date_idx" ON "analytics_daily_stats" USING btree ("date"); + CREATE INDEX "analytics_daily_stats_updated_at_idx" ON "analytics_daily_stats" USING btree ("updated_at"); + CREATE INDEX "analytics_daily_stats_created_at_idx" ON "analytics_daily_stats" USING btree ("created_at"); + ALTER TABLE "payload_locked_documents_rels" ADD CONSTRAINT "payload_locked_documents_rels_analytics_events_fk" FOREIGN KEY ("analytics_events_id") REFERENCES "public"."analytics_events"("id") ON DELETE cascade ON UPDATE no action; + ALTER TABLE "payload_locked_documents_rels" ADD CONSTRAINT "payload_locked_documents_rels_analytics_daily_stats_fk" FOREIGN KEY ("analytics_daily_stats_id") REFERENCES "public"."analytics_daily_stats"("id") ON DELETE cascade ON UPDATE no action; + CREATE INDEX "payload_locked_documents_rels_analytics_events_id_idx" ON "payload_locked_documents_rels" USING btree ("analytics_events_id"); + CREATE INDEX "payload_locked_documents_rels_analytics_daily_stats_id_idx" ON "payload_locked_documents_rels" USING btree ("analytics_daily_stats_id");`) +} + +export async function down({ db, payload, req }: MigrateDownArgs): Promise { + await db.execute(sql` + ALTER TABLE "analytics_events" DISABLE ROW LEVEL SECURITY; + ALTER TABLE "analytics_daily_stats" DISABLE ROW LEVEL SECURITY; + ALTER TABLE "cookie_settings" DISABLE ROW LEVEL SECURITY; + ALTER TABLE "analytics_settings" DISABLE ROW LEVEL SECURITY; + DROP TABLE "analytics_events" CASCADE; + DROP TABLE "analytics_daily_stats" CASCADE; + DROP TABLE "cookie_settings" CASCADE; + DROP TABLE "analytics_settings" CASCADE; + ALTER TABLE "payload_locked_documents_rels" DROP CONSTRAINT "payload_locked_documents_rels_analytics_events_fk"; + + ALTER TABLE "payload_locked_documents_rels" DROP CONSTRAINT "payload_locked_documents_rels_analytics_daily_stats_fk"; + + DROP INDEX "payload_locked_documents_rels_analytics_events_id_idx"; + DROP INDEX "payload_locked_documents_rels_analytics_daily_stats_id_idx"; + ALTER TABLE "meeting_settings" ALTER COLUMN "participant_join_window_minutes" SET DEFAULT 30; + ALTER TABLE "users" DROP COLUMN "can_view_analytics"; + ALTER TABLE "payload_locked_documents_rels" DROP COLUMN "analytics_events_id"; + ALTER TABLE "payload_locked_documents_rels" DROP COLUMN "analytics_daily_stats_id"; + DROP TYPE "public"."enum_analytics_events_device"; + DROP TYPE "public"."enum_analytics_events_browser";`) +} diff --git a/migrations/index.ts b/migrations/index.ts index 3d24055..3d98568 100644 --- a/migrations/index.ts +++ b/migrations/index.ts @@ -1,9 +1,15 @@ import * as migration_20260826_004425 from './20260826_004425'; +import * as migration_20260916_192252_cookie_settings from './20260916_192252_cookie_settings'; export const migrations = [ { up: migration_20260826_004425.up, down: migration_20260826_004425.down, - name: '20260826_004425' + name: '20260826_004425', + }, + { + up: migration_20260916_192252_cookie_settings.up, + down: migration_20260916_192252_cookie_settings.down, + name: '20260916_192252_cookie_settings' }, ]; diff --git a/scripts/seed.ts b/scripts/seed.ts index c477b6b..8b45be3 100644 --- a/scripts/seed.ts +++ b/scripts/seed.ts @@ -220,6 +220,30 @@ async function seedGlobals(payload: Awaited>) { }, }); console.log(" ↺ Global „Termin buchen“ gesetzt"); + + await payload.updateGlobal({ + slug: "cookie-settings", + data: { + consentVersion: "1.0", + necessary: { + label: "Notwendig", + description: + "Für den Betrieb der Website technisch erforderlich (z. B. Login, Sitzung). Kann nicht deaktiviert werden.", + }, + preferences: { + label: "Präferenzen", + description: "Speichert Einstellungen wie z. B. bevorzugte Anzeigeoptionen.", + enabled: true, + }, + statistics: { + label: "Statistik", + description: + "Anonymisierte, datensparsame Reichweitenmessung (Seitenaufrufe, Ereignisse) ohne personenbezogene Profile.", + enabled: true, + }, + }, + }); + console.log(" ↺ Global „Cookie-Einstellungen“ gesetzt"); } async function run() { @@ -235,7 +259,7 @@ async function run() { process.exit(0); } -run().catch((err) => { +await run().catch((err) => { console.error(err); process.exit(1); });