1854 lines
48 KiB
JSON
1854 lines
48 KiB
JSON
{
|
|
"version": "6",
|
|
"dialect": "sqlite",
|
|
"id": "9c096d91-489e-45c4-9a23-48176623283d",
|
|
"prevId": "7a8a43d6-acae-4f0f-9f6d-2d0bcb0df3cf",
|
|
"tables": {
|
|
"item_access": {
|
|
"name": "item_access",
|
|
"columns": {
|
|
"id": {
|
|
"name": "id",
|
|
"type": "text",
|
|
"primaryKey": true,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"itemId": {
|
|
"name": "itemId",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"userId": {
|
|
"name": "userId",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
},
|
|
"guestId": {
|
|
"name": "guestId",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
},
|
|
"role": {
|
|
"name": "role",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"read": {
|
|
"name": "read",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": false
|
|
},
|
|
"deletedAt": {
|
|
"name": "deletedAt",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
},
|
|
"favorite": {
|
|
"name": "favorite",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": false
|
|
}
|
|
},
|
|
"indexes": {
|
|
"access_subject_role": {
|
|
"name": "access_subject_role",
|
|
"columns": [
|
|
"itemId",
|
|
"guestId",
|
|
"role"
|
|
],
|
|
"isUnique": true
|
|
},
|
|
"access_account_role": {
|
|
"name": "access_account_role",
|
|
"columns": [
|
|
"itemId",
|
|
"userId",
|
|
"role"
|
|
],
|
|
"isUnique": true
|
|
},
|
|
"access_account": {
|
|
"name": "access_account",
|
|
"columns": [
|
|
"userId",
|
|
"deletedAt"
|
|
],
|
|
"isUnique": false
|
|
},
|
|
"access_guest": {
|
|
"name": "access_guest",
|
|
"columns": [
|
|
"guestId",
|
|
"deletedAt"
|
|
],
|
|
"isUnique": false
|
|
}
|
|
},
|
|
"foreignKeys": {
|
|
"item_access_itemId_items_id_fk": {
|
|
"name": "item_access_itemId_items_id_fk",
|
|
"tableFrom": "item_access",
|
|
"tableTo": "items",
|
|
"columnsFrom": [
|
|
"itemId"
|
|
],
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onDelete": "no action",
|
|
"onUpdate": "no action"
|
|
},
|
|
"item_access_userId_users_id_fk": {
|
|
"name": "item_access_userId_users_id_fk",
|
|
"tableFrom": "item_access",
|
|
"tableTo": "users",
|
|
"columnsFrom": [
|
|
"userId"
|
|
],
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onDelete": "no action",
|
|
"onUpdate": "no action"
|
|
},
|
|
"item_access_guestId_guest_sessions_id_fk": {
|
|
"name": "item_access_guestId_guest_sessions_id_fk",
|
|
"tableFrom": "item_access",
|
|
"tableTo": "guest_sessions",
|
|
"columnsFrom": [
|
|
"guestId"
|
|
],
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onDelete": "no action",
|
|
"onUpdate": "no action"
|
|
}
|
|
},
|
|
"compositePrimaryKeys": {},
|
|
"uniqueConstraints": {},
|
|
"checkConstraints": {
|
|
"access_subject": {
|
|
"name": "access_subject",
|
|
"value": "(\"item_access\".\"guestId\" IS NOT NULL) + (\"item_access\".\"userId\" IS NOT NULL) = 1"
|
|
}
|
|
}
|
|
},
|
|
"account_sessions": {
|
|
"name": "account_sessions",
|
|
"columns": {
|
|
"id": {
|
|
"name": "id",
|
|
"type": "text",
|
|
"primaryKey": true,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"userId": {
|
|
"name": "userId",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"tokenHash": {
|
|
"name": "tokenHash",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"createdAt": {
|
|
"name": "createdAt",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"lastSeen": {
|
|
"name": "lastSeen",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"expiresAt": {
|
|
"name": "expiresAt",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"revokedAt": {
|
|
"name": "revokedAt",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
}
|
|
},
|
|
"indexes": {
|
|
"account_sessions_tokenHash_unique": {
|
|
"name": "account_sessions_tokenHash_unique",
|
|
"columns": [
|
|
"tokenHash"
|
|
],
|
|
"isUnique": true
|
|
},
|
|
"account_session_user": {
|
|
"name": "account_session_user",
|
|
"columns": [
|
|
"userId",
|
|
"expiresAt"
|
|
],
|
|
"isUnique": false
|
|
}
|
|
},
|
|
"foreignKeys": {
|
|
"account_sessions_userId_users_id_fk": {
|
|
"name": "account_sessions_userId_users_id_fk",
|
|
"tableFrom": "account_sessions",
|
|
"tableTo": "users",
|
|
"columnsFrom": [
|
|
"userId"
|
|
],
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onDelete": "no action",
|
|
"onUpdate": "no action"
|
|
}
|
|
},
|
|
"compositePrimaryKeys": {},
|
|
"uniqueConstraints": {},
|
|
"checkConstraints": {}
|
|
},
|
|
"account_tokens": {
|
|
"name": "account_tokens",
|
|
"columns": {
|
|
"id": {
|
|
"name": "id",
|
|
"type": "text",
|
|
"primaryKey": true,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"userId": {
|
|
"name": "userId",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"purpose": {
|
|
"name": "purpose",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"tokenHash": {
|
|
"name": "tokenHash",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"value": {
|
|
"name": "value",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
},
|
|
"createdAt": {
|
|
"name": "createdAt",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"expiresAt": {
|
|
"name": "expiresAt",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"usedAt": {
|
|
"name": "usedAt",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
}
|
|
},
|
|
"indexes": {
|
|
"account_tokens_tokenHash_unique": {
|
|
"name": "account_tokens_tokenHash_unique",
|
|
"columns": [
|
|
"tokenHash"
|
|
],
|
|
"isUnique": true
|
|
},
|
|
"account_token_expiry": {
|
|
"name": "account_token_expiry",
|
|
"columns": [
|
|
"expiresAt"
|
|
],
|
|
"isUnique": false
|
|
}
|
|
},
|
|
"foreignKeys": {
|
|
"account_tokens_userId_users_id_fk": {
|
|
"name": "account_tokens_userId_users_id_fk",
|
|
"tableFrom": "account_tokens",
|
|
"tableTo": "users",
|
|
"columnsFrom": [
|
|
"userId"
|
|
],
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onDelete": "no action",
|
|
"onUpdate": "no action"
|
|
}
|
|
},
|
|
"compositePrimaryKeys": {},
|
|
"uniqueConstraints": {},
|
|
"checkConstraints": {}
|
|
},
|
|
"transfer_batches": {
|
|
"name": "transfer_batches",
|
|
"columns": {
|
|
"id": {
|
|
"name": "id",
|
|
"type": "text",
|
|
"primaryKey": true,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"requestId": {
|
|
"name": "requestId",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"status": {
|
|
"name": "status",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"storedAt": {
|
|
"name": "storedAt",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
}
|
|
},
|
|
"indexes": {
|
|
"transfer_batches_requestId_unique": {
|
|
"name": "transfer_batches_requestId_unique",
|
|
"columns": [
|
|
"requestId"
|
|
],
|
|
"isUnique": true
|
|
}
|
|
},
|
|
"foreignKeys": {
|
|
"transfer_batches_requestId_transfer_requests_id_fk": {
|
|
"name": "transfer_batches_requestId_transfer_requests_id_fk",
|
|
"tableFrom": "transfer_batches",
|
|
"tableTo": "transfer_requests",
|
|
"columnsFrom": [
|
|
"requestId"
|
|
],
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onDelete": "no action",
|
|
"onUpdate": "no action"
|
|
}
|
|
},
|
|
"compositePrimaryKeys": {},
|
|
"uniqueConstraints": {},
|
|
"checkConstraints": {}
|
|
},
|
|
"guest_blocks": {
|
|
"name": "guest_blocks",
|
|
"columns": {
|
|
"id": {
|
|
"name": "id",
|
|
"type": "text",
|
|
"primaryKey": true,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"guestId": {
|
|
"name": "guestId",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"targetGuestId": {
|
|
"name": "targetGuestId",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
}
|
|
},
|
|
"indexes": {
|
|
"guest_block_pair": {
|
|
"name": "guest_block_pair",
|
|
"columns": [
|
|
"guestId",
|
|
"targetGuestId"
|
|
],
|
|
"isUnique": true
|
|
}
|
|
},
|
|
"foreignKeys": {
|
|
"guest_blocks_guestId_guest_sessions_id_fk": {
|
|
"name": "guest_blocks_guestId_guest_sessions_id_fk",
|
|
"tableFrom": "guest_blocks",
|
|
"tableTo": "guest_sessions",
|
|
"columnsFrom": [
|
|
"guestId"
|
|
],
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onDelete": "no action",
|
|
"onUpdate": "no action"
|
|
},
|
|
"guest_blocks_targetGuestId_guest_sessions_id_fk": {
|
|
"name": "guest_blocks_targetGuestId_guest_sessions_id_fk",
|
|
"tableFrom": "guest_blocks",
|
|
"tableTo": "guest_sessions",
|
|
"columnsFrom": [
|
|
"targetGuestId"
|
|
],
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onDelete": "no action",
|
|
"onUpdate": "no action"
|
|
}
|
|
},
|
|
"compositePrimaryKeys": {},
|
|
"uniqueConstraints": {},
|
|
"checkConstraints": {}
|
|
},
|
|
"deletion_targets": {
|
|
"name": "deletion_targets",
|
|
"columns": {
|
|
"id": {
|
|
"name": "id",
|
|
"type": "text",
|
|
"primaryKey": true,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"operationId": {
|
|
"name": "operationId",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"accessId": {
|
|
"name": "accessId",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
}
|
|
},
|
|
"indexes": {},
|
|
"foreignKeys": {
|
|
"deletion_targets_operationId_deletion_operations_id_fk": {
|
|
"name": "deletion_targets_operationId_deletion_operations_id_fk",
|
|
"tableFrom": "deletion_targets",
|
|
"tableTo": "deletion_operations",
|
|
"columnsFrom": [
|
|
"operationId"
|
|
],
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onDelete": "no action",
|
|
"onUpdate": "no action"
|
|
}
|
|
},
|
|
"compositePrimaryKeys": {},
|
|
"uniqueConstraints": {},
|
|
"checkConstraints": {}
|
|
},
|
|
"deletion_operations": {
|
|
"name": "deletion_operations",
|
|
"columns": {
|
|
"id": {
|
|
"name": "id",
|
|
"type": "text",
|
|
"primaryKey": true,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"userId": {
|
|
"name": "userId",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
},
|
|
"guestId": {
|
|
"name": "guestId",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"undoUntil": {
|
|
"name": "undoUntil",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"createdAt": {
|
|
"name": "createdAt",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"restoredAt": {
|
|
"name": "restoredAt",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
}
|
|
},
|
|
"indexes": {},
|
|
"foreignKeys": {
|
|
"deletion_operations_userId_users_id_fk": {
|
|
"name": "deletion_operations_userId_users_id_fk",
|
|
"tableFrom": "deletion_operations",
|
|
"tableTo": "users",
|
|
"columnsFrom": [
|
|
"userId"
|
|
],
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onDelete": "no action",
|
|
"onUpdate": "no action"
|
|
},
|
|
"deletion_operations_guestId_guest_sessions_id_fk": {
|
|
"name": "deletion_operations_guestId_guest_sessions_id_fk",
|
|
"tableFrom": "deletion_operations",
|
|
"tableTo": "guest_sessions",
|
|
"columnsFrom": [
|
|
"guestId"
|
|
],
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onDelete": "no action",
|
|
"onUpdate": "no action"
|
|
}
|
|
},
|
|
"compositePrimaryKeys": {},
|
|
"uniqueConstraints": {},
|
|
"checkConstraints": {
|
|
"deletion_subject": {
|
|
"name": "deletion_subject",
|
|
"value": "(\"deletion_operations\".\"guestId\" IS NOT NULL) + (\"deletion_operations\".\"userId\" IS NOT NULL) = 1"
|
|
}
|
|
}
|
|
},
|
|
"browser_devices": {
|
|
"name": "browser_devices",
|
|
"columns": {
|
|
"id": {
|
|
"name": "id",
|
|
"type": "text",
|
|
"primaryKey": true,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"guestId": {
|
|
"name": "guestId",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"name": {
|
|
"name": "name",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"code": {
|
|
"name": "code",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"discoverable": {
|
|
"name": "discoverable",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": true
|
|
},
|
|
"lastSeen": {
|
|
"name": "lastSeen",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
}
|
|
},
|
|
"indexes": {
|
|
"browser_devices_guestId_unique": {
|
|
"name": "browser_devices_guestId_unique",
|
|
"columns": [
|
|
"guestId"
|
|
],
|
|
"isUnique": true
|
|
},
|
|
"browser_devices_code_unique": {
|
|
"name": "browser_devices_code_unique",
|
|
"columns": [
|
|
"code"
|
|
],
|
|
"isUnique": true
|
|
}
|
|
},
|
|
"foreignKeys": {
|
|
"browser_devices_guestId_guest_sessions_id_fk": {
|
|
"name": "browser_devices_guestId_guest_sessions_id_fk",
|
|
"tableFrom": "browser_devices",
|
|
"tableTo": "guest_sessions",
|
|
"columnsFrom": [
|
|
"guestId"
|
|
],
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onDelete": "no action",
|
|
"onUpdate": "no action"
|
|
}
|
|
},
|
|
"compositePrimaryKeys": {},
|
|
"uniqueConstraints": {},
|
|
"checkConstraints": {
|
|
"device_name_length": {
|
|
"name": "device_name_length",
|
|
"value": "length(\"browser_devices\".\"name\") between 1 and 40"
|
|
}
|
|
}
|
|
},
|
|
"files": {
|
|
"name": "files",
|
|
"columns": {
|
|
"id": {
|
|
"name": "id",
|
|
"type": "text",
|
|
"primaryKey": true,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"requestId": {
|
|
"name": "requestId",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"ownerGuestId": {
|
|
"name": "ownerGuestId",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
},
|
|
"ownerUserId": {
|
|
"name": "ownerUserId",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
},
|
|
"position": {
|
|
"name": "position",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"storageKey": {
|
|
"name": "storageKey",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"name": {
|
|
"name": "name",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"type": {
|
|
"name": "type",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"size": {
|
|
"name": "size",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"checksum": {
|
|
"name": "checksum",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
},
|
|
"status": {
|
|
"name": "status",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"uploadId": {
|
|
"name": "uploadId",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
},
|
|
"uploadKey": {
|
|
"name": "uploadKey",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
},
|
|
"updatedAt": {
|
|
"name": "updatedAt",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
}
|
|
},
|
|
"indexes": {
|
|
"files_storageKey_unique": {
|
|
"name": "files_storageKey_unique",
|
|
"columns": [
|
|
"storageKey"
|
|
],
|
|
"isUnique": true
|
|
},
|
|
"request_file_position": {
|
|
"name": "request_file_position",
|
|
"columns": [
|
|
"requestId",
|
|
"position"
|
|
],
|
|
"isUnique": true
|
|
},
|
|
"files_owner_state": {
|
|
"name": "files_owner_state",
|
|
"columns": [
|
|
"ownerGuestId",
|
|
"status"
|
|
],
|
|
"isUnique": false
|
|
}
|
|
},
|
|
"foreignKeys": {
|
|
"files_requestId_transfer_requests_id_fk": {
|
|
"name": "files_requestId_transfer_requests_id_fk",
|
|
"tableFrom": "files",
|
|
"tableTo": "transfer_requests",
|
|
"columnsFrom": [
|
|
"requestId"
|
|
],
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onDelete": "no action",
|
|
"onUpdate": "no action"
|
|
},
|
|
"files_ownerGuestId_guest_sessions_id_fk": {
|
|
"name": "files_ownerGuestId_guest_sessions_id_fk",
|
|
"tableFrom": "files",
|
|
"tableTo": "guest_sessions",
|
|
"columnsFrom": [
|
|
"ownerGuestId"
|
|
],
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onDelete": "no action",
|
|
"onUpdate": "no action"
|
|
},
|
|
"files_ownerUserId_users_id_fk": {
|
|
"name": "files_ownerUserId_users_id_fk",
|
|
"tableFrom": "files",
|
|
"tableTo": "users",
|
|
"columnsFrom": [
|
|
"ownerUserId"
|
|
],
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onDelete": "no action",
|
|
"onUpdate": "no action"
|
|
}
|
|
},
|
|
"compositePrimaryKeys": {},
|
|
"uniqueConstraints": {},
|
|
"checkConstraints": {
|
|
"file_nonnegative_size": {
|
|
"name": "file_nonnegative_size",
|
|
"value": "\"files\".\"size\" >= 0"
|
|
},
|
|
"file_owner_subject": {
|
|
"name": "file_owner_subject",
|
|
"value": "(\"files\".\"ownerGuestId\" IS NOT NULL) + (\"files\".\"ownerUserId\" IS NOT NULL) = 1"
|
|
}
|
|
}
|
|
},
|
|
"guest_sessions": {
|
|
"name": "guest_sessions",
|
|
"columns": {
|
|
"id": {
|
|
"name": "id",
|
|
"type": "text",
|
|
"primaryKey": true,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"tokenHash": {
|
|
"name": "tokenHash",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"expiresAt": {
|
|
"name": "expiresAt",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"revokedAt": {
|
|
"name": "revokedAt",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
},
|
|
"createdAt": {
|
|
"name": "createdAt",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
}
|
|
},
|
|
"indexes": {
|
|
"guest_sessions_tokenHash_unique": {
|
|
"name": "guest_sessions_tokenHash_unique",
|
|
"columns": [
|
|
"tokenHash"
|
|
],
|
|
"isUnique": true
|
|
},
|
|
"guest_expiry": {
|
|
"name": "guest_expiry",
|
|
"columns": [
|
|
"expiresAt"
|
|
],
|
|
"isUnique": false
|
|
}
|
|
},
|
|
"foreignKeys": {},
|
|
"compositePrimaryKeys": {},
|
|
"uniqueConstraints": {},
|
|
"checkConstraints": {}
|
|
},
|
|
"idempotency_records": {
|
|
"name": "idempotency_records",
|
|
"columns": {
|
|
"id": {
|
|
"name": "id",
|
|
"type": "text",
|
|
"primaryKey": true,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"userId": {
|
|
"name": "userId",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
},
|
|
"guestId": {
|
|
"name": "guestId",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
},
|
|
"operation": {
|
|
"name": "operation",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"key": {
|
|
"name": "key",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"payloadHash": {
|
|
"name": "payloadHash",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"response": {
|
|
"name": "response",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"createdAt": {
|
|
"name": "createdAt",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
}
|
|
},
|
|
"indexes": {
|
|
"idempotency_scope": {
|
|
"name": "idempotency_scope",
|
|
"columns": [
|
|
"guestId",
|
|
"operation",
|
|
"key"
|
|
],
|
|
"isUnique": true
|
|
},
|
|
"account_idempotency_scope": {
|
|
"name": "account_idempotency_scope",
|
|
"columns": [
|
|
"userId",
|
|
"operation",
|
|
"key"
|
|
],
|
|
"isUnique": true
|
|
}
|
|
},
|
|
"foreignKeys": {
|
|
"idempotency_records_userId_users_id_fk": {
|
|
"name": "idempotency_records_userId_users_id_fk",
|
|
"tableFrom": "idempotency_records",
|
|
"tableTo": "users",
|
|
"columnsFrom": [
|
|
"userId"
|
|
],
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onDelete": "no action",
|
|
"onUpdate": "no action"
|
|
},
|
|
"idempotency_records_guestId_guest_sessions_id_fk": {
|
|
"name": "idempotency_records_guestId_guest_sessions_id_fk",
|
|
"tableFrom": "idempotency_records",
|
|
"tableTo": "guest_sessions",
|
|
"columnsFrom": [
|
|
"guestId"
|
|
],
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onDelete": "no action",
|
|
"onUpdate": "no action"
|
|
}
|
|
},
|
|
"compositePrimaryKeys": {},
|
|
"uniqueConstraints": {},
|
|
"checkConstraints": {
|
|
"idempotency_subject": {
|
|
"name": "idempotency_subject",
|
|
"value": "(\"idempotency_records\".\"guestId\" IS NOT NULL) + (\"idempotency_records\".\"userId\" IS NOT NULL) = 1"
|
|
}
|
|
}
|
|
},
|
|
"items": {
|
|
"name": "items",
|
|
"columns": {
|
|
"id": {
|
|
"name": "id",
|
|
"type": "text",
|
|
"primaryKey": true,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"batchId": {
|
|
"name": "batchId",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"kind": {
|
|
"name": "kind",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"text": {
|
|
"name": "text",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
},
|
|
"url": {
|
|
"name": "url",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
},
|
|
"fileId": {
|
|
"name": "fileId",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
},
|
|
"createdAt": {
|
|
"name": "createdAt",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"expiresAt": {
|
|
"name": "expiresAt",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
}
|
|
},
|
|
"indexes": {
|
|
"items_expiry": {
|
|
"name": "items_expiry",
|
|
"columns": [
|
|
"expiresAt"
|
|
],
|
|
"isUnique": false
|
|
}
|
|
},
|
|
"foreignKeys": {
|
|
"items_batchId_transfer_batches_id_fk": {
|
|
"name": "items_batchId_transfer_batches_id_fk",
|
|
"tableFrom": "items",
|
|
"tableTo": "transfer_batches",
|
|
"columnsFrom": [
|
|
"batchId"
|
|
],
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onDelete": "no action",
|
|
"onUpdate": "no action"
|
|
},
|
|
"items_fileId_files_id_fk": {
|
|
"name": "items_fileId_files_id_fk",
|
|
"tableFrom": "items",
|
|
"tableTo": "files",
|
|
"columnsFrom": [
|
|
"fileId"
|
|
],
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onDelete": "no action",
|
|
"onUpdate": "no action"
|
|
}
|
|
},
|
|
"compositePrimaryKeys": {},
|
|
"uniqueConstraints": {},
|
|
"checkConstraints": {
|
|
"item_payload": {
|
|
"name": "item_payload",
|
|
"value": "(\"items\".\"kind\" = 'text' AND \"items\".\"text\" IS NOT NULL AND \"items\".\"url\" IS NULL AND \"items\".\"fileId\" IS NULL) OR (\"items\".\"kind\" = 'url' AND \"items\".\"url\" IS NOT NULL AND \"items\".\"text\" IS NULL AND \"items\".\"fileId\" IS NULL) OR (\"items\".\"kind\" = 'file' AND \"items\".\"fileId\" IS NOT NULL AND \"items\".\"text\" IS NULL AND \"items\".\"url\" IS NULL)"
|
|
}
|
|
}
|
|
},
|
|
"space_members": {
|
|
"name": "space_members",
|
|
"columns": {
|
|
"id": {
|
|
"name": "id",
|
|
"type": "text",
|
|
"primaryKey": true,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"spaceId": {
|
|
"name": "spaceId",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"deviceId": {
|
|
"name": "deviceId",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"status": {
|
|
"name": "status",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"joinedAt": {
|
|
"name": "joinedAt",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
}
|
|
},
|
|
"indexes": {
|
|
"space_device": {
|
|
"name": "space_device",
|
|
"columns": [
|
|
"spaceId",
|
|
"deviceId"
|
|
],
|
|
"isUnique": true
|
|
}
|
|
},
|
|
"foreignKeys": {
|
|
"space_members_spaceId_connection_spaces_id_fk": {
|
|
"name": "space_members_spaceId_connection_spaces_id_fk",
|
|
"tableFrom": "space_members",
|
|
"tableTo": "connection_spaces",
|
|
"columnsFrom": [
|
|
"spaceId"
|
|
],
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onDelete": "no action",
|
|
"onUpdate": "no action"
|
|
},
|
|
"space_members_deviceId_browser_devices_id_fk": {
|
|
"name": "space_members_deviceId_browser_devices_id_fk",
|
|
"tableFrom": "space_members",
|
|
"tableTo": "browser_devices",
|
|
"columnsFrom": [
|
|
"deviceId"
|
|
],
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onDelete": "no action",
|
|
"onUpdate": "no action"
|
|
}
|
|
},
|
|
"compositePrimaryKeys": {},
|
|
"uniqueConstraints": {},
|
|
"checkConstraints": {}
|
|
},
|
|
"transfer_requests": {
|
|
"name": "transfer_requests",
|
|
"columns": {
|
|
"id": {
|
|
"name": "id",
|
|
"type": "text",
|
|
"primaryKey": true,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"mode": {
|
|
"name": "mode",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": "'local'"
|
|
},
|
|
"senderGuestId": {
|
|
"name": "senderGuestId",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
},
|
|
"recipientGuestId": {
|
|
"name": "recipientGuestId",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
},
|
|
"senderUserId": {
|
|
"name": "senderUserId",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
},
|
|
"recipientUserId": {
|
|
"name": "recipientUserId",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
},
|
|
"kind": {
|
|
"name": "kind",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"byteSize": {
|
|
"name": "byteSize",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"manifest": {
|
|
"name": "manifest",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
},
|
|
"count": {
|
|
"name": "count",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"status": {
|
|
"name": "status",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"createdAt": {
|
|
"name": "createdAt",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"expiresAt": {
|
|
"name": "expiresAt",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"acceptedAt": {
|
|
"name": "acceptedAt",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
},
|
|
"rejectedAt": {
|
|
"name": "rejectedAt",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
},
|
|
"startBy": {
|
|
"name": "startBy",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
}
|
|
},
|
|
"indexes": {
|
|
"requests_sender_time": {
|
|
"name": "requests_sender_time",
|
|
"columns": [
|
|
"senderGuestId",
|
|
"createdAt"
|
|
],
|
|
"isUnique": false
|
|
},
|
|
"requests_recipient_time": {
|
|
"name": "requests_recipient_time",
|
|
"columns": [
|
|
"recipientGuestId",
|
|
"createdAt"
|
|
],
|
|
"isUnique": false
|
|
},
|
|
"requests_expiry": {
|
|
"name": "requests_expiry",
|
|
"columns": [
|
|
"status",
|
|
"expiresAt"
|
|
],
|
|
"isUnique": false
|
|
},
|
|
"requests_sender_user": {
|
|
"name": "requests_sender_user",
|
|
"columns": [
|
|
"senderUserId",
|
|
"createdAt"
|
|
],
|
|
"isUnique": false
|
|
},
|
|
"requests_recipient_user": {
|
|
"name": "requests_recipient_user",
|
|
"columns": [
|
|
"recipientUserId",
|
|
"createdAt"
|
|
],
|
|
"isUnique": false
|
|
}
|
|
},
|
|
"foreignKeys": {
|
|
"transfer_requests_senderGuestId_guest_sessions_id_fk": {
|
|
"name": "transfer_requests_senderGuestId_guest_sessions_id_fk",
|
|
"tableFrom": "transfer_requests",
|
|
"tableTo": "guest_sessions",
|
|
"columnsFrom": [
|
|
"senderGuestId"
|
|
],
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onDelete": "no action",
|
|
"onUpdate": "no action"
|
|
},
|
|
"transfer_requests_recipientGuestId_guest_sessions_id_fk": {
|
|
"name": "transfer_requests_recipientGuestId_guest_sessions_id_fk",
|
|
"tableFrom": "transfer_requests",
|
|
"tableTo": "guest_sessions",
|
|
"columnsFrom": [
|
|
"recipientGuestId"
|
|
],
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onDelete": "no action",
|
|
"onUpdate": "no action"
|
|
},
|
|
"transfer_requests_senderUserId_users_id_fk": {
|
|
"name": "transfer_requests_senderUserId_users_id_fk",
|
|
"tableFrom": "transfer_requests",
|
|
"tableTo": "users",
|
|
"columnsFrom": [
|
|
"senderUserId"
|
|
],
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onDelete": "no action",
|
|
"onUpdate": "no action"
|
|
},
|
|
"transfer_requests_recipientUserId_users_id_fk": {
|
|
"name": "transfer_requests_recipientUserId_users_id_fk",
|
|
"tableFrom": "transfer_requests",
|
|
"tableTo": "users",
|
|
"columnsFrom": [
|
|
"recipientUserId"
|
|
],
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onDelete": "no action",
|
|
"onUpdate": "no action"
|
|
}
|
|
},
|
|
"compositePrimaryKeys": {},
|
|
"uniqueConstraints": {},
|
|
"checkConstraints": {
|
|
"request_different_guests": {
|
|
"name": "request_different_guests",
|
|
"value": "\"transfer_requests\".\"mode\" <> 'local' OR \"transfer_requests\".\"senderGuestId\" <> \"transfer_requests\".\"recipientGuestId\""
|
|
},
|
|
"request_sender_subject": {
|
|
"name": "request_sender_subject",
|
|
"value": "(\"transfer_requests\".\"senderGuestId\" IS NOT NULL) + (\"transfer_requests\".\"senderUserId\" IS NOT NULL) = 1"
|
|
},
|
|
"request_recipient_subject": {
|
|
"name": "request_recipient_subject",
|
|
"value": "(\"transfer_requests\".\"recipientGuestId\" IS NOT NULL) + (\"transfer_requests\".\"recipientUserId\" IS NOT NULL) = 1"
|
|
},
|
|
"request_mode_subjects": {
|
|
"name": "request_mode_subjects",
|
|
"value": "(\"transfer_requests\".\"mode\" = 'local' AND \"transfer_requests\".\"senderGuestId\" IS NOT NULL AND \"transfer_requests\".\"recipientGuestId\" IS NOT NULL) OR (\"transfer_requests\".\"mode\" = 'email' AND \"transfer_requests\".\"senderUserId\" IS NOT NULL AND \"transfer_requests\".\"recipientUserId\" IS NOT NULL)"
|
|
}
|
|
}
|
|
},
|
|
"quota_reservations": {
|
|
"name": "quota_reservations",
|
|
"columns": {
|
|
"id": {
|
|
"name": "id",
|
|
"type": "text",
|
|
"primaryKey": true,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"fileId": {
|
|
"name": "fileId",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"userId": {
|
|
"name": "userId",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
},
|
|
"guestId": {
|
|
"name": "guestId",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
},
|
|
"bytes": {
|
|
"name": "bytes",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"expiresAt": {
|
|
"name": "expiresAt",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
}
|
|
},
|
|
"indexes": {
|
|
"quota_reservations_fileId_unique": {
|
|
"name": "quota_reservations_fileId_unique",
|
|
"columns": [
|
|
"fileId"
|
|
],
|
|
"isUnique": true
|
|
},
|
|
"quota_guest_expiry": {
|
|
"name": "quota_guest_expiry",
|
|
"columns": [
|
|
"guestId",
|
|
"expiresAt"
|
|
],
|
|
"isUnique": false
|
|
}
|
|
},
|
|
"foreignKeys": {
|
|
"quota_reservations_fileId_files_id_fk": {
|
|
"name": "quota_reservations_fileId_files_id_fk",
|
|
"tableFrom": "quota_reservations",
|
|
"tableTo": "files",
|
|
"columnsFrom": [
|
|
"fileId"
|
|
],
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onDelete": "no action",
|
|
"onUpdate": "no action"
|
|
},
|
|
"quota_reservations_userId_users_id_fk": {
|
|
"name": "quota_reservations_userId_users_id_fk",
|
|
"tableFrom": "quota_reservations",
|
|
"tableTo": "users",
|
|
"columnsFrom": [
|
|
"userId"
|
|
],
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onDelete": "no action",
|
|
"onUpdate": "no action"
|
|
},
|
|
"quota_reservations_guestId_guest_sessions_id_fk": {
|
|
"name": "quota_reservations_guestId_guest_sessions_id_fk",
|
|
"tableFrom": "quota_reservations",
|
|
"tableTo": "guest_sessions",
|
|
"columnsFrom": [
|
|
"guestId"
|
|
],
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onDelete": "no action",
|
|
"onUpdate": "no action"
|
|
}
|
|
},
|
|
"compositePrimaryKeys": {},
|
|
"uniqueConstraints": {},
|
|
"checkConstraints": {
|
|
"reservations_subject": {
|
|
"name": "reservations_subject",
|
|
"value": "(\"quota_reservations\".\"guestId\" IS NOT NULL) + (\"quota_reservations\".\"userId\" IS NOT NULL) = 1"
|
|
},
|
|
"reservation_nonnegative": {
|
|
"name": "reservation_nonnegative",
|
|
"value": "\"quota_reservations\".\"bytes\" >= 0"
|
|
}
|
|
}
|
|
},
|
|
"user_rules": {
|
|
"name": "user_rules",
|
|
"columns": {
|
|
"id": {
|
|
"name": "id",
|
|
"type": "text",
|
|
"primaryKey": true,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"userId": {
|
|
"name": "userId",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"targetUserId": {
|
|
"name": "targetUserId",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"action": {
|
|
"name": "action",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
}
|
|
},
|
|
"indexes": {
|
|
"user_rule_pair": {
|
|
"name": "user_rule_pair",
|
|
"columns": [
|
|
"userId",
|
|
"targetUserId"
|
|
],
|
|
"isUnique": true
|
|
}
|
|
},
|
|
"foreignKeys": {
|
|
"user_rules_userId_users_id_fk": {
|
|
"name": "user_rules_userId_users_id_fk",
|
|
"tableFrom": "user_rules",
|
|
"tableTo": "users",
|
|
"columnsFrom": [
|
|
"userId"
|
|
],
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onDelete": "no action",
|
|
"onUpdate": "no action"
|
|
},
|
|
"user_rules_targetUserId_users_id_fk": {
|
|
"name": "user_rules_targetUserId_users_id_fk",
|
|
"tableFrom": "user_rules",
|
|
"tableTo": "users",
|
|
"columnsFrom": [
|
|
"targetUserId"
|
|
],
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onDelete": "no action",
|
|
"onUpdate": "no action"
|
|
}
|
|
},
|
|
"compositePrimaryKeys": {},
|
|
"uniqueConstraints": {},
|
|
"checkConstraints": {
|
|
"rule_not_self": {
|
|
"name": "rule_not_self",
|
|
"value": "\"user_rules\".\"userId\" <> \"user_rules\".\"targetUserId\""
|
|
}
|
|
}
|
|
},
|
|
"connection_spaces": {
|
|
"name": "connection_spaces",
|
|
"columns": {
|
|
"id": {
|
|
"name": "id",
|
|
"type": "text",
|
|
"primaryKey": true,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"creatorGuestId": {
|
|
"name": "creatorGuestId",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"tokenHash": {
|
|
"name": "tokenHash",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"codeHash": {
|
|
"name": "codeHash",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"approvalRequired": {
|
|
"name": "approvalRequired",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"expiresAt": {
|
|
"name": "expiresAt",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"closedAt": {
|
|
"name": "closedAt",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
},
|
|
"createdAt": {
|
|
"name": "createdAt",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
}
|
|
},
|
|
"indexes": {
|
|
"connection_spaces_tokenHash_unique": {
|
|
"name": "connection_spaces_tokenHash_unique",
|
|
"columns": [
|
|
"tokenHash"
|
|
],
|
|
"isUnique": true
|
|
},
|
|
"connection_spaces_codeHash_unique": {
|
|
"name": "connection_spaces_codeHash_unique",
|
|
"columns": [
|
|
"codeHash"
|
|
],
|
|
"isUnique": true
|
|
},
|
|
"space_expiry": {
|
|
"name": "space_expiry",
|
|
"columns": [
|
|
"expiresAt"
|
|
],
|
|
"isUnique": false
|
|
}
|
|
},
|
|
"foreignKeys": {
|
|
"connection_spaces_creatorGuestId_guest_sessions_id_fk": {
|
|
"name": "connection_spaces_creatorGuestId_guest_sessions_id_fk",
|
|
"tableFrom": "connection_spaces",
|
|
"tableTo": "guest_sessions",
|
|
"columnsFrom": [
|
|
"creatorGuestId"
|
|
],
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onDelete": "no action",
|
|
"onUpdate": "no action"
|
|
}
|
|
},
|
|
"compositePrimaryKeys": {},
|
|
"uniqueConstraints": {},
|
|
"checkConstraints": {}
|
|
},
|
|
"users": {
|
|
"name": "users",
|
|
"columns": {
|
|
"id": {
|
|
"name": "id",
|
|
"type": "text",
|
|
"primaryKey": true,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"email": {
|
|
"name": "email",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
},
|
|
"displayName": {
|
|
"name": "displayName",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"passwordHash": {
|
|
"name": "passwordHash",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
},
|
|
"role": {
|
|
"name": "role",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": "'user'"
|
|
},
|
|
"status": {
|
|
"name": "status",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"verifiedAt": {
|
|
"name": "verifiedAt",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": false,
|
|
"autoincrement": false
|
|
},
|
|
"createdAt": {
|
|
"name": "createdAt",
|
|
"type": "integer",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false
|
|
},
|
|
"receivePolicy": {
|
|
"name": "receivePolicy",
|
|
"type": "text",
|
|
"primaryKey": false,
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": "'requests'"
|
|
}
|
|
},
|
|
"indexes": {
|
|
"users_email_unique": {
|
|
"name": "users_email_unique",
|
|
"columns": [
|
|
"email"
|
|
],
|
|
"isUnique": true
|
|
}
|
|
},
|
|
"foreignKeys": {},
|
|
"compositePrimaryKeys": {},
|
|
"uniqueConstraints": {},
|
|
"checkConstraints": {}
|
|
}
|
|
},
|
|
"views": {},
|
|
"enums": {},
|
|
"_meta": {
|
|
"schemas": {},
|
|
"tables": {},
|
|
"columns": {}
|
|
},
|
|
"internal": {
|
|
"indexes": {}
|
|
}
|
|
}
|