mirror of
https://github.com/jakejarvis/sofa.git
synced 2026-07-14 18:15:56 -04:00
- Replace `tmdbProviderId` (single int) with a many-to-many `platformTmdbProviders` join table so one platform entry can map to multiple TMDB provider IDs (e.g. a single "Max" platform covers several regional TMDB IDs) - Add `isSubscription` flag to platforms to distinguish subscription services from transactional ones, replacing the old `displayOrder` field in API responses - Add `getPlatformTmdbIds` / `getPlatformTmdbIdMap` helpers in `@sofa/core/platforms` and thread them through discover, explore, and platform list procedures - Replace `providerId: number` with `platformId: string` (UUID) in discover input schema so the client never needs to resolve TMDB IDs - Add `scripts/sync-tmdb-providers.ts` script to pull live provider data from TMDB and update `platforms.json` - Split native title detail availability into separate "Stream" and "Buy or Rent" sections matching the web pattern - Add two new DB migrations for the join table and platform schema changes
3406 lines
72 KiB
JSON
3406 lines
72 KiB
JSON
{
|
|
"version": "7",
|
|
"dialect": "sqlite",
|
|
"id": "f50d9b53-3ac7-4fd2-95e1-3f8480b5f636",
|
|
"prevIds": [
|
|
"364cbbc8-2e6e-4ebb-9e52-4fea9e88b994"
|
|
],
|
|
"ddl": [
|
|
{
|
|
"name": "account",
|
|
"entityType": "tables"
|
|
},
|
|
{
|
|
"name": "appSettings",
|
|
"entityType": "tables"
|
|
},
|
|
{
|
|
"name": "cronRuns",
|
|
"entityType": "tables"
|
|
},
|
|
{
|
|
"name": "episodes",
|
|
"entityType": "tables"
|
|
},
|
|
{
|
|
"name": "genres",
|
|
"entityType": "tables"
|
|
},
|
|
{
|
|
"name": "importJobs",
|
|
"entityType": "tables"
|
|
},
|
|
{
|
|
"name": "integrationEvents",
|
|
"entityType": "tables"
|
|
},
|
|
{
|
|
"name": "integrations",
|
|
"entityType": "tables"
|
|
},
|
|
{
|
|
"name": "personFilmography",
|
|
"entityType": "tables"
|
|
},
|
|
{
|
|
"name": "persons",
|
|
"entityType": "tables"
|
|
},
|
|
{
|
|
"name": "platformTmdbIds",
|
|
"entityType": "tables"
|
|
},
|
|
{
|
|
"name": "platforms",
|
|
"entityType": "tables"
|
|
},
|
|
{
|
|
"name": "seasons",
|
|
"entityType": "tables"
|
|
},
|
|
{
|
|
"name": "session",
|
|
"entityType": "tables"
|
|
},
|
|
{
|
|
"name": "titleAvailability",
|
|
"entityType": "tables"
|
|
},
|
|
{
|
|
"name": "titleCast",
|
|
"entityType": "tables"
|
|
},
|
|
{
|
|
"name": "titleGenres",
|
|
"entityType": "tables"
|
|
},
|
|
{
|
|
"name": "titleRecommendations",
|
|
"entityType": "tables"
|
|
},
|
|
{
|
|
"name": "titles",
|
|
"entityType": "tables"
|
|
},
|
|
{
|
|
"name": "user",
|
|
"entityType": "tables"
|
|
},
|
|
{
|
|
"name": "userEpisodeWatches",
|
|
"entityType": "tables"
|
|
},
|
|
{
|
|
"name": "userMovieWatches",
|
|
"entityType": "tables"
|
|
},
|
|
{
|
|
"name": "userPlatforms",
|
|
"entityType": "tables"
|
|
},
|
|
{
|
|
"name": "userRatings",
|
|
"entityType": "tables"
|
|
},
|
|
{
|
|
"name": "userTitleStatus",
|
|
"entityType": "tables"
|
|
},
|
|
{
|
|
"name": "verification",
|
|
"entityType": "tables"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "id",
|
|
"entityType": "columns",
|
|
"table": "account"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "userId",
|
|
"entityType": "columns",
|
|
"table": "account"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "accountId",
|
|
"entityType": "columns",
|
|
"table": "account"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "providerId",
|
|
"entityType": "columns",
|
|
"table": "account"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "accessToken",
|
|
"entityType": "columns",
|
|
"table": "account"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "refreshToken",
|
|
"entityType": "columns",
|
|
"table": "account"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "idToken",
|
|
"entityType": "columns",
|
|
"table": "account"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "accessTokenExpiresAt",
|
|
"entityType": "columns",
|
|
"table": "account"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "refreshTokenExpiresAt",
|
|
"entityType": "columns",
|
|
"table": "account"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "scope",
|
|
"entityType": "columns",
|
|
"table": "account"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "password",
|
|
"entityType": "columns",
|
|
"table": "account"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "createdAt",
|
|
"entityType": "columns",
|
|
"table": "account"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "updatedAt",
|
|
"entityType": "columns",
|
|
"table": "account"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "key",
|
|
"entityType": "columns",
|
|
"table": "appSettings"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "value",
|
|
"entityType": "columns",
|
|
"table": "appSettings"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "id",
|
|
"entityType": "columns",
|
|
"table": "cronRuns"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "jobName",
|
|
"entityType": "columns",
|
|
"table": "cronRuns"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "status",
|
|
"entityType": "columns",
|
|
"table": "cronRuns"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "startedAt",
|
|
"entityType": "columns",
|
|
"table": "cronRuns"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "finishedAt",
|
|
"entityType": "columns",
|
|
"table": "cronRuns"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "durationMs",
|
|
"entityType": "columns",
|
|
"table": "cronRuns"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "errorMessage",
|
|
"entityType": "columns",
|
|
"table": "cronRuns"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "id",
|
|
"entityType": "columns",
|
|
"table": "episodes"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "seasonId",
|
|
"entityType": "columns",
|
|
"table": "episodes"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "episodeNumber",
|
|
"entityType": "columns",
|
|
"table": "episodes"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "name",
|
|
"entityType": "columns",
|
|
"table": "episodes"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "overview",
|
|
"entityType": "columns",
|
|
"table": "episodes"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "stillPath",
|
|
"entityType": "columns",
|
|
"table": "episodes"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "stillThumbHash",
|
|
"entityType": "columns",
|
|
"table": "episodes"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "airDate",
|
|
"entityType": "columns",
|
|
"table": "episodes"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "runtimeMinutes",
|
|
"entityType": "columns",
|
|
"table": "episodes"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "id",
|
|
"entityType": "columns",
|
|
"table": "genres"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "name",
|
|
"entityType": "columns",
|
|
"table": "genres"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "id",
|
|
"entityType": "columns",
|
|
"table": "importJobs"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "userId",
|
|
"entityType": "columns",
|
|
"table": "importJobs"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "source",
|
|
"entityType": "columns",
|
|
"table": "importJobs"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "status",
|
|
"entityType": "columns",
|
|
"table": "importJobs"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "payload",
|
|
"entityType": "columns",
|
|
"table": "importJobs"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "importWatches",
|
|
"entityType": "columns",
|
|
"table": "importJobs"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "importWatchlist",
|
|
"entityType": "columns",
|
|
"table": "importJobs"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "importRatings",
|
|
"entityType": "columns",
|
|
"table": "importJobs"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": "0",
|
|
"generated": null,
|
|
"name": "totalItems",
|
|
"entityType": "columns",
|
|
"table": "importJobs"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": "0",
|
|
"generated": null,
|
|
"name": "processedItems",
|
|
"entityType": "columns",
|
|
"table": "importJobs"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": "0",
|
|
"generated": null,
|
|
"name": "importedCount",
|
|
"entityType": "columns",
|
|
"table": "importJobs"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": "0",
|
|
"generated": null,
|
|
"name": "skippedCount",
|
|
"entityType": "columns",
|
|
"table": "importJobs"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": "0",
|
|
"generated": null,
|
|
"name": "failedCount",
|
|
"entityType": "columns",
|
|
"table": "importJobs"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "currentMessage",
|
|
"entityType": "columns",
|
|
"table": "importJobs"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "errors",
|
|
"entityType": "columns",
|
|
"table": "importJobs"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "warnings",
|
|
"entityType": "columns",
|
|
"table": "importJobs"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "createdAt",
|
|
"entityType": "columns",
|
|
"table": "importJobs"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "startedAt",
|
|
"entityType": "columns",
|
|
"table": "importJobs"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "finishedAt",
|
|
"entityType": "columns",
|
|
"table": "importJobs"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "id",
|
|
"entityType": "columns",
|
|
"table": "integrationEvents"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "integrationId",
|
|
"entityType": "columns",
|
|
"table": "integrationEvents"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "eventType",
|
|
"entityType": "columns",
|
|
"table": "integrationEvents"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "mediaType",
|
|
"entityType": "columns",
|
|
"table": "integrationEvents"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "mediaTitle",
|
|
"entityType": "columns",
|
|
"table": "integrationEvents"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "status",
|
|
"entityType": "columns",
|
|
"table": "integrationEvents"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "errorMessage",
|
|
"entityType": "columns",
|
|
"table": "integrationEvents"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "receivedAt",
|
|
"entityType": "columns",
|
|
"table": "integrationEvents"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "id",
|
|
"entityType": "columns",
|
|
"table": "integrations"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "userId",
|
|
"entityType": "columns",
|
|
"table": "integrations"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "provider",
|
|
"entityType": "columns",
|
|
"table": "integrations"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "type",
|
|
"entityType": "columns",
|
|
"table": "integrations"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "token",
|
|
"entityType": "columns",
|
|
"table": "integrations"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": "true",
|
|
"generated": null,
|
|
"name": "enabled",
|
|
"entityType": "columns",
|
|
"table": "integrations"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "createdAt",
|
|
"entityType": "columns",
|
|
"table": "integrations"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "lastEventAt",
|
|
"entityType": "columns",
|
|
"table": "integrations"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "id",
|
|
"entityType": "columns",
|
|
"table": "personFilmography"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "personId",
|
|
"entityType": "columns",
|
|
"table": "personFilmography"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "titleId",
|
|
"entityType": "columns",
|
|
"table": "personFilmography"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "character",
|
|
"entityType": "columns",
|
|
"table": "personFilmography"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": "'Acting'",
|
|
"generated": null,
|
|
"name": "department",
|
|
"entityType": "columns",
|
|
"table": "personFilmography"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "job",
|
|
"entityType": "columns",
|
|
"table": "personFilmography"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": "0",
|
|
"generated": null,
|
|
"name": "displayOrder",
|
|
"entityType": "columns",
|
|
"table": "personFilmography"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "id",
|
|
"entityType": "columns",
|
|
"table": "persons"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "tmdbId",
|
|
"entityType": "columns",
|
|
"table": "persons"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "name",
|
|
"entityType": "columns",
|
|
"table": "persons"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "biography",
|
|
"entityType": "columns",
|
|
"table": "persons"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "birthday",
|
|
"entityType": "columns",
|
|
"table": "persons"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "deathday",
|
|
"entityType": "columns",
|
|
"table": "persons"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "placeOfBirth",
|
|
"entityType": "columns",
|
|
"table": "persons"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "profilePath",
|
|
"entityType": "columns",
|
|
"table": "persons"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "profileThumbHash",
|
|
"entityType": "columns",
|
|
"table": "persons"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "knownForDepartment",
|
|
"entityType": "columns",
|
|
"table": "persons"
|
|
},
|
|
{
|
|
"type": "real",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "popularity",
|
|
"entityType": "columns",
|
|
"table": "persons"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "imdbId",
|
|
"entityType": "columns",
|
|
"table": "persons"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "lastFetchedAt",
|
|
"entityType": "columns",
|
|
"table": "persons"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "filmographyLastFetchedAt",
|
|
"entityType": "columns",
|
|
"table": "persons"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "platformId",
|
|
"entityType": "columns",
|
|
"table": "platformTmdbIds"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "tmdbProviderId",
|
|
"entityType": "columns",
|
|
"table": "platformTmdbIds"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "id",
|
|
"entityType": "columns",
|
|
"table": "platforms"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "name",
|
|
"entityType": "columns",
|
|
"table": "platforms"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "logoPath",
|
|
"entityType": "columns",
|
|
"table": "platforms"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "urlTemplate",
|
|
"entityType": "columns",
|
|
"table": "platforms"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": "true",
|
|
"generated": null,
|
|
"name": "isSubscription",
|
|
"entityType": "columns",
|
|
"table": "platforms"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "id",
|
|
"entityType": "columns",
|
|
"table": "seasons"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "titleId",
|
|
"entityType": "columns",
|
|
"table": "seasons"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "seasonNumber",
|
|
"entityType": "columns",
|
|
"table": "seasons"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "name",
|
|
"entityType": "columns",
|
|
"table": "seasons"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "overview",
|
|
"entityType": "columns",
|
|
"table": "seasons"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "posterPath",
|
|
"entityType": "columns",
|
|
"table": "seasons"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "posterThumbHash",
|
|
"entityType": "columns",
|
|
"table": "seasons"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "airDate",
|
|
"entityType": "columns",
|
|
"table": "seasons"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "lastFetchedAt",
|
|
"entityType": "columns",
|
|
"table": "seasons"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "id",
|
|
"entityType": "columns",
|
|
"table": "session"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "userId",
|
|
"entityType": "columns",
|
|
"table": "session"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "token",
|
|
"entityType": "columns",
|
|
"table": "session"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "expiresAt",
|
|
"entityType": "columns",
|
|
"table": "session"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "ipAddress",
|
|
"entityType": "columns",
|
|
"table": "session"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "userAgent",
|
|
"entityType": "columns",
|
|
"table": "session"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "impersonatedBy",
|
|
"entityType": "columns",
|
|
"table": "session"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "createdAt",
|
|
"entityType": "columns",
|
|
"table": "session"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "updatedAt",
|
|
"entityType": "columns",
|
|
"table": "session"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "titleId",
|
|
"entityType": "columns",
|
|
"table": "titleAvailability"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "platformId",
|
|
"entityType": "columns",
|
|
"table": "titleAvailability"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "offerType",
|
|
"entityType": "columns",
|
|
"table": "titleAvailability"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": "'US'",
|
|
"generated": null,
|
|
"name": "region",
|
|
"entityType": "columns",
|
|
"table": "titleAvailability"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "lastFetchedAt",
|
|
"entityType": "columns",
|
|
"table": "titleAvailability"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "id",
|
|
"entityType": "columns",
|
|
"table": "titleCast"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "titleId",
|
|
"entityType": "columns",
|
|
"table": "titleCast"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "personId",
|
|
"entityType": "columns",
|
|
"table": "titleCast"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "character",
|
|
"entityType": "columns",
|
|
"table": "titleCast"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": "'Acting'",
|
|
"generated": null,
|
|
"name": "department",
|
|
"entityType": "columns",
|
|
"table": "titleCast"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "job",
|
|
"entityType": "columns",
|
|
"table": "titleCast"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": "0",
|
|
"generated": null,
|
|
"name": "displayOrder",
|
|
"entityType": "columns",
|
|
"table": "titleCast"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "episodeCount",
|
|
"entityType": "columns",
|
|
"table": "titleCast"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "lastFetchedAt",
|
|
"entityType": "columns",
|
|
"table": "titleCast"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "titleId",
|
|
"entityType": "columns",
|
|
"table": "titleGenres"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "genreId",
|
|
"entityType": "columns",
|
|
"table": "titleGenres"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "titleId",
|
|
"entityType": "columns",
|
|
"table": "titleRecommendations"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "recommendedTitleId",
|
|
"entityType": "columns",
|
|
"table": "titleRecommendations"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "source",
|
|
"entityType": "columns",
|
|
"table": "titleRecommendations"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "rank",
|
|
"entityType": "columns",
|
|
"table": "titleRecommendations"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "lastFetchedAt",
|
|
"entityType": "columns",
|
|
"table": "titleRecommendations"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "id",
|
|
"entityType": "columns",
|
|
"table": "titles"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "tmdbId",
|
|
"entityType": "columns",
|
|
"table": "titles"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "tvdbId",
|
|
"entityType": "columns",
|
|
"table": "titles"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "type",
|
|
"entityType": "columns",
|
|
"table": "titles"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "title",
|
|
"entityType": "columns",
|
|
"table": "titles"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "originalTitle",
|
|
"entityType": "columns",
|
|
"table": "titles"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "overview",
|
|
"entityType": "columns",
|
|
"table": "titles"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "releaseDate",
|
|
"entityType": "columns",
|
|
"table": "titles"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "firstAirDate",
|
|
"entityType": "columns",
|
|
"table": "titles"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "posterPath",
|
|
"entityType": "columns",
|
|
"table": "titles"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "posterThumbHash",
|
|
"entityType": "columns",
|
|
"table": "titles"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "backdropPath",
|
|
"entityType": "columns",
|
|
"table": "titles"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "backdropThumbHash",
|
|
"entityType": "columns",
|
|
"table": "titles"
|
|
},
|
|
{
|
|
"type": "real",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "popularity",
|
|
"entityType": "columns",
|
|
"table": "titles"
|
|
},
|
|
{
|
|
"type": "real",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "voteAverage",
|
|
"entityType": "columns",
|
|
"table": "titles"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "voteCount",
|
|
"entityType": "columns",
|
|
"table": "titles"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "status",
|
|
"entityType": "columns",
|
|
"table": "titles"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "contentRating",
|
|
"entityType": "columns",
|
|
"table": "titles"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "imdbId",
|
|
"entityType": "columns",
|
|
"table": "titles"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "originalLanguage",
|
|
"entityType": "columns",
|
|
"table": "titles"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "runtimeMinutes",
|
|
"entityType": "columns",
|
|
"table": "titles"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "colorPalette",
|
|
"entityType": "columns",
|
|
"table": "titles"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "trailerVideoKey",
|
|
"entityType": "columns",
|
|
"table": "titles"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "lastFetchedAt",
|
|
"entityType": "columns",
|
|
"table": "titles"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "id",
|
|
"entityType": "columns",
|
|
"table": "user"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "name",
|
|
"entityType": "columns",
|
|
"table": "user"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "email",
|
|
"entityType": "columns",
|
|
"table": "user"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": "false",
|
|
"generated": null,
|
|
"name": "emailVerified",
|
|
"entityType": "columns",
|
|
"table": "user"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "image",
|
|
"entityType": "columns",
|
|
"table": "user"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": "'user'",
|
|
"generated": null,
|
|
"name": "role",
|
|
"entityType": "columns",
|
|
"table": "user"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": "false",
|
|
"generated": null,
|
|
"name": "banned",
|
|
"entityType": "columns",
|
|
"table": "user"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "banReason",
|
|
"entityType": "columns",
|
|
"table": "user"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "banExpires",
|
|
"entityType": "columns",
|
|
"table": "user"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "createdAt",
|
|
"entityType": "columns",
|
|
"table": "user"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "updatedAt",
|
|
"entityType": "columns",
|
|
"table": "user"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "id",
|
|
"entityType": "columns",
|
|
"table": "userEpisodeWatches"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "userId",
|
|
"entityType": "columns",
|
|
"table": "userEpisodeWatches"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "episodeId",
|
|
"entityType": "columns",
|
|
"table": "userEpisodeWatches"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "watchedAt",
|
|
"entityType": "columns",
|
|
"table": "userEpisodeWatches"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": "'manual'",
|
|
"generated": null,
|
|
"name": "source",
|
|
"entityType": "columns",
|
|
"table": "userEpisodeWatches"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "id",
|
|
"entityType": "columns",
|
|
"table": "userMovieWatches"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "userId",
|
|
"entityType": "columns",
|
|
"table": "userMovieWatches"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "titleId",
|
|
"entityType": "columns",
|
|
"table": "userMovieWatches"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "watchedAt",
|
|
"entityType": "columns",
|
|
"table": "userMovieWatches"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": "'manual'",
|
|
"generated": null,
|
|
"name": "source",
|
|
"entityType": "columns",
|
|
"table": "userMovieWatches"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "userId",
|
|
"entityType": "columns",
|
|
"table": "userPlatforms"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "platformId",
|
|
"entityType": "columns",
|
|
"table": "userPlatforms"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "userId",
|
|
"entityType": "columns",
|
|
"table": "userRatings"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "titleId",
|
|
"entityType": "columns",
|
|
"table": "userRatings"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "ratingStars",
|
|
"entityType": "columns",
|
|
"table": "userRatings"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "ratedAt",
|
|
"entityType": "columns",
|
|
"table": "userRatings"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "userId",
|
|
"entityType": "columns",
|
|
"table": "userTitleStatus"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "titleId",
|
|
"entityType": "columns",
|
|
"table": "userTitleStatus"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "status",
|
|
"entityType": "columns",
|
|
"table": "userTitleStatus"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "addedAt",
|
|
"entityType": "columns",
|
|
"table": "userTitleStatus"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "updatedAt",
|
|
"entityType": "columns",
|
|
"table": "userTitleStatus"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "id",
|
|
"entityType": "columns",
|
|
"table": "verification"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "identifier",
|
|
"entityType": "columns",
|
|
"table": "verification"
|
|
},
|
|
{
|
|
"type": "text",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "value",
|
|
"entityType": "columns",
|
|
"table": "verification"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": true,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "expiresAt",
|
|
"entityType": "columns",
|
|
"table": "verification"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "createdAt",
|
|
"entityType": "columns",
|
|
"table": "verification"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"notNull": false,
|
|
"autoincrement": false,
|
|
"default": null,
|
|
"generated": null,
|
|
"name": "updatedAt",
|
|
"entityType": "columns",
|
|
"table": "verification"
|
|
},
|
|
{
|
|
"columns": [
|
|
"userId"
|
|
],
|
|
"tableTo": "user",
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onUpdate": "NO ACTION",
|
|
"onDelete": "CASCADE",
|
|
"nameExplicit": false,
|
|
"name": "fk_account_userId_user_id_fk",
|
|
"entityType": "fks",
|
|
"table": "account"
|
|
},
|
|
{
|
|
"columns": [
|
|
"seasonId"
|
|
],
|
|
"tableTo": "seasons",
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onUpdate": "NO ACTION",
|
|
"onDelete": "CASCADE",
|
|
"nameExplicit": false,
|
|
"name": "fk_episodes_seasonId_seasons_id_fk",
|
|
"entityType": "fks",
|
|
"table": "episodes"
|
|
},
|
|
{
|
|
"columns": [
|
|
"userId"
|
|
],
|
|
"tableTo": "user",
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onUpdate": "NO ACTION",
|
|
"onDelete": "CASCADE",
|
|
"nameExplicit": false,
|
|
"name": "fk_importJobs_userId_user_id_fk",
|
|
"entityType": "fks",
|
|
"table": "importJobs"
|
|
},
|
|
{
|
|
"columns": [
|
|
"integrationId"
|
|
],
|
|
"tableTo": "integrations",
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onUpdate": "NO ACTION",
|
|
"onDelete": "CASCADE",
|
|
"nameExplicit": false,
|
|
"name": "fk_integrationEvents_integrationId_integrations_id_fk",
|
|
"entityType": "fks",
|
|
"table": "integrationEvents"
|
|
},
|
|
{
|
|
"columns": [
|
|
"userId"
|
|
],
|
|
"tableTo": "user",
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onUpdate": "NO ACTION",
|
|
"onDelete": "CASCADE",
|
|
"nameExplicit": false,
|
|
"name": "fk_integrations_userId_user_id_fk",
|
|
"entityType": "fks",
|
|
"table": "integrations"
|
|
},
|
|
{
|
|
"columns": [
|
|
"personId"
|
|
],
|
|
"tableTo": "persons",
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onUpdate": "NO ACTION",
|
|
"onDelete": "CASCADE",
|
|
"nameExplicit": false,
|
|
"name": "fk_personFilmography_personId_persons_id_fk",
|
|
"entityType": "fks",
|
|
"table": "personFilmography"
|
|
},
|
|
{
|
|
"columns": [
|
|
"titleId"
|
|
],
|
|
"tableTo": "titles",
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onUpdate": "NO ACTION",
|
|
"onDelete": "CASCADE",
|
|
"nameExplicit": false,
|
|
"name": "fk_personFilmography_titleId_titles_id_fk",
|
|
"entityType": "fks",
|
|
"table": "personFilmography"
|
|
},
|
|
{
|
|
"columns": [
|
|
"platformId"
|
|
],
|
|
"tableTo": "platforms",
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onUpdate": "NO ACTION",
|
|
"onDelete": "CASCADE",
|
|
"nameExplicit": false,
|
|
"name": "fk_platformTmdbIds_platformId_platforms_id_fk",
|
|
"entityType": "fks",
|
|
"table": "platformTmdbIds"
|
|
},
|
|
{
|
|
"columns": [
|
|
"titleId"
|
|
],
|
|
"tableTo": "titles",
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onUpdate": "NO ACTION",
|
|
"onDelete": "CASCADE",
|
|
"nameExplicit": false,
|
|
"name": "fk_seasons_titleId_titles_id_fk",
|
|
"entityType": "fks",
|
|
"table": "seasons"
|
|
},
|
|
{
|
|
"columns": [
|
|
"userId"
|
|
],
|
|
"tableTo": "user",
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onUpdate": "NO ACTION",
|
|
"onDelete": "CASCADE",
|
|
"nameExplicit": false,
|
|
"name": "fk_session_userId_user_id_fk",
|
|
"entityType": "fks",
|
|
"table": "session"
|
|
},
|
|
{
|
|
"columns": [
|
|
"titleId"
|
|
],
|
|
"tableTo": "titles",
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onUpdate": "NO ACTION",
|
|
"onDelete": "CASCADE",
|
|
"nameExplicit": false,
|
|
"name": "fk_titleAvailability_titleId_titles_id_fk",
|
|
"entityType": "fks",
|
|
"table": "titleAvailability"
|
|
},
|
|
{
|
|
"columns": [
|
|
"platformId"
|
|
],
|
|
"tableTo": "platforms",
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onUpdate": "NO ACTION",
|
|
"onDelete": "CASCADE",
|
|
"nameExplicit": false,
|
|
"name": "fk_titleAvailability_platformId_platforms_id_fk",
|
|
"entityType": "fks",
|
|
"table": "titleAvailability"
|
|
},
|
|
{
|
|
"columns": [
|
|
"titleId"
|
|
],
|
|
"tableTo": "titles",
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onUpdate": "NO ACTION",
|
|
"onDelete": "CASCADE",
|
|
"nameExplicit": false,
|
|
"name": "fk_titleCast_titleId_titles_id_fk",
|
|
"entityType": "fks",
|
|
"table": "titleCast"
|
|
},
|
|
{
|
|
"columns": [
|
|
"personId"
|
|
],
|
|
"tableTo": "persons",
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onUpdate": "NO ACTION",
|
|
"onDelete": "CASCADE",
|
|
"nameExplicit": false,
|
|
"name": "fk_titleCast_personId_persons_id_fk",
|
|
"entityType": "fks",
|
|
"table": "titleCast"
|
|
},
|
|
{
|
|
"columns": [
|
|
"titleId"
|
|
],
|
|
"tableTo": "titles",
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onUpdate": "NO ACTION",
|
|
"onDelete": "CASCADE",
|
|
"nameExplicit": false,
|
|
"name": "fk_titleGenres_titleId_titles_id_fk",
|
|
"entityType": "fks",
|
|
"table": "titleGenres"
|
|
},
|
|
{
|
|
"columns": [
|
|
"genreId"
|
|
],
|
|
"tableTo": "genres",
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onUpdate": "NO ACTION",
|
|
"onDelete": "CASCADE",
|
|
"nameExplicit": false,
|
|
"name": "fk_titleGenres_genreId_genres_id_fk",
|
|
"entityType": "fks",
|
|
"table": "titleGenres"
|
|
},
|
|
{
|
|
"columns": [
|
|
"titleId"
|
|
],
|
|
"tableTo": "titles",
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onUpdate": "NO ACTION",
|
|
"onDelete": "CASCADE",
|
|
"nameExplicit": false,
|
|
"name": "fk_titleRecommendations_titleId_titles_id_fk",
|
|
"entityType": "fks",
|
|
"table": "titleRecommendations"
|
|
},
|
|
{
|
|
"columns": [
|
|
"recommendedTitleId"
|
|
],
|
|
"tableTo": "titles",
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onUpdate": "NO ACTION",
|
|
"onDelete": "CASCADE",
|
|
"nameExplicit": false,
|
|
"name": "fk_titleRecommendations_recommendedTitleId_titles_id_fk",
|
|
"entityType": "fks",
|
|
"table": "titleRecommendations"
|
|
},
|
|
{
|
|
"columns": [
|
|
"userId"
|
|
],
|
|
"tableTo": "user",
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onUpdate": "NO ACTION",
|
|
"onDelete": "CASCADE",
|
|
"nameExplicit": false,
|
|
"name": "fk_userEpisodeWatches_userId_user_id_fk",
|
|
"entityType": "fks",
|
|
"table": "userEpisodeWatches"
|
|
},
|
|
{
|
|
"columns": [
|
|
"episodeId"
|
|
],
|
|
"tableTo": "episodes",
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onUpdate": "NO ACTION",
|
|
"onDelete": "CASCADE",
|
|
"nameExplicit": false,
|
|
"name": "fk_userEpisodeWatches_episodeId_episodes_id_fk",
|
|
"entityType": "fks",
|
|
"table": "userEpisodeWatches"
|
|
},
|
|
{
|
|
"columns": [
|
|
"userId"
|
|
],
|
|
"tableTo": "user",
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onUpdate": "NO ACTION",
|
|
"onDelete": "CASCADE",
|
|
"nameExplicit": false,
|
|
"name": "fk_userMovieWatches_userId_user_id_fk",
|
|
"entityType": "fks",
|
|
"table": "userMovieWatches"
|
|
},
|
|
{
|
|
"columns": [
|
|
"titleId"
|
|
],
|
|
"tableTo": "titles",
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onUpdate": "NO ACTION",
|
|
"onDelete": "CASCADE",
|
|
"nameExplicit": false,
|
|
"name": "fk_userMovieWatches_titleId_titles_id_fk",
|
|
"entityType": "fks",
|
|
"table": "userMovieWatches"
|
|
},
|
|
{
|
|
"columns": [
|
|
"userId"
|
|
],
|
|
"tableTo": "user",
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onUpdate": "NO ACTION",
|
|
"onDelete": "CASCADE",
|
|
"nameExplicit": false,
|
|
"name": "fk_userPlatforms_userId_user_id_fk",
|
|
"entityType": "fks",
|
|
"table": "userPlatforms"
|
|
},
|
|
{
|
|
"columns": [
|
|
"platformId"
|
|
],
|
|
"tableTo": "platforms",
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onUpdate": "NO ACTION",
|
|
"onDelete": "CASCADE",
|
|
"nameExplicit": false,
|
|
"name": "fk_userPlatforms_platformId_platforms_id_fk",
|
|
"entityType": "fks",
|
|
"table": "userPlatforms"
|
|
},
|
|
{
|
|
"columns": [
|
|
"userId"
|
|
],
|
|
"tableTo": "user",
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onUpdate": "NO ACTION",
|
|
"onDelete": "CASCADE",
|
|
"nameExplicit": false,
|
|
"name": "fk_userRatings_userId_user_id_fk",
|
|
"entityType": "fks",
|
|
"table": "userRatings"
|
|
},
|
|
{
|
|
"columns": [
|
|
"titleId"
|
|
],
|
|
"tableTo": "titles",
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onUpdate": "NO ACTION",
|
|
"onDelete": "CASCADE",
|
|
"nameExplicit": false,
|
|
"name": "fk_userRatings_titleId_titles_id_fk",
|
|
"entityType": "fks",
|
|
"table": "userRatings"
|
|
},
|
|
{
|
|
"columns": [
|
|
"userId"
|
|
],
|
|
"tableTo": "user",
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onUpdate": "NO ACTION",
|
|
"onDelete": "CASCADE",
|
|
"nameExplicit": false,
|
|
"name": "fk_userTitleStatus_userId_user_id_fk",
|
|
"entityType": "fks",
|
|
"table": "userTitleStatus"
|
|
},
|
|
{
|
|
"columns": [
|
|
"titleId"
|
|
],
|
|
"tableTo": "titles",
|
|
"columnsTo": [
|
|
"id"
|
|
],
|
|
"onUpdate": "NO ACTION",
|
|
"onDelete": "CASCADE",
|
|
"nameExplicit": false,
|
|
"name": "fk_userTitleStatus_titleId_titles_id_fk",
|
|
"entityType": "fks",
|
|
"table": "userTitleStatus"
|
|
},
|
|
{
|
|
"columns": [
|
|
"id"
|
|
],
|
|
"nameExplicit": false,
|
|
"name": "account_pk",
|
|
"table": "account",
|
|
"entityType": "pks"
|
|
},
|
|
{
|
|
"columns": [
|
|
"key"
|
|
],
|
|
"nameExplicit": false,
|
|
"name": "appSettings_pk",
|
|
"table": "appSettings",
|
|
"entityType": "pks"
|
|
},
|
|
{
|
|
"columns": [
|
|
"id"
|
|
],
|
|
"nameExplicit": false,
|
|
"name": "cronRuns_pk",
|
|
"table": "cronRuns",
|
|
"entityType": "pks"
|
|
},
|
|
{
|
|
"columns": [
|
|
"id"
|
|
],
|
|
"nameExplicit": false,
|
|
"name": "episodes_pk",
|
|
"table": "episodes",
|
|
"entityType": "pks"
|
|
},
|
|
{
|
|
"columns": [
|
|
"id"
|
|
],
|
|
"nameExplicit": false,
|
|
"name": "genres_pk",
|
|
"table": "genres",
|
|
"entityType": "pks"
|
|
},
|
|
{
|
|
"columns": [
|
|
"id"
|
|
],
|
|
"nameExplicit": false,
|
|
"name": "importJobs_pk",
|
|
"table": "importJobs",
|
|
"entityType": "pks"
|
|
},
|
|
{
|
|
"columns": [
|
|
"id"
|
|
],
|
|
"nameExplicit": false,
|
|
"name": "integrationEvents_pk",
|
|
"table": "integrationEvents",
|
|
"entityType": "pks"
|
|
},
|
|
{
|
|
"columns": [
|
|
"id"
|
|
],
|
|
"nameExplicit": false,
|
|
"name": "integrations_pk",
|
|
"table": "integrations",
|
|
"entityType": "pks"
|
|
},
|
|
{
|
|
"columns": [
|
|
"id"
|
|
],
|
|
"nameExplicit": false,
|
|
"name": "personFilmography_pk",
|
|
"table": "personFilmography",
|
|
"entityType": "pks"
|
|
},
|
|
{
|
|
"columns": [
|
|
"id"
|
|
],
|
|
"nameExplicit": false,
|
|
"name": "persons_pk",
|
|
"table": "persons",
|
|
"entityType": "pks"
|
|
},
|
|
{
|
|
"columns": [
|
|
"id"
|
|
],
|
|
"nameExplicit": false,
|
|
"name": "platforms_pk",
|
|
"table": "platforms",
|
|
"entityType": "pks"
|
|
},
|
|
{
|
|
"columns": [
|
|
"id"
|
|
],
|
|
"nameExplicit": false,
|
|
"name": "seasons_pk",
|
|
"table": "seasons",
|
|
"entityType": "pks"
|
|
},
|
|
{
|
|
"columns": [
|
|
"id"
|
|
],
|
|
"nameExplicit": false,
|
|
"name": "session_pk",
|
|
"table": "session",
|
|
"entityType": "pks"
|
|
},
|
|
{
|
|
"columns": [
|
|
"id"
|
|
],
|
|
"nameExplicit": false,
|
|
"name": "titleCast_pk",
|
|
"table": "titleCast",
|
|
"entityType": "pks"
|
|
},
|
|
{
|
|
"columns": [
|
|
"id"
|
|
],
|
|
"nameExplicit": false,
|
|
"name": "titles_pk",
|
|
"table": "titles",
|
|
"entityType": "pks"
|
|
},
|
|
{
|
|
"columns": [
|
|
"id"
|
|
],
|
|
"nameExplicit": false,
|
|
"name": "user_pk",
|
|
"table": "user",
|
|
"entityType": "pks"
|
|
},
|
|
{
|
|
"columns": [
|
|
"id"
|
|
],
|
|
"nameExplicit": false,
|
|
"name": "userEpisodeWatches_pk",
|
|
"table": "userEpisodeWatches",
|
|
"entityType": "pks"
|
|
},
|
|
{
|
|
"columns": [
|
|
"id"
|
|
],
|
|
"nameExplicit": false,
|
|
"name": "userMovieWatches_pk",
|
|
"table": "userMovieWatches",
|
|
"entityType": "pks"
|
|
},
|
|
{
|
|
"columns": [
|
|
"id"
|
|
],
|
|
"nameExplicit": false,
|
|
"name": "verification_pk",
|
|
"table": "verification",
|
|
"entityType": "pks"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "jobName",
|
|
"isExpression": false
|
|
},
|
|
{
|
|
"value": "startedAt",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": false,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "cronRuns_jobName_startedAt",
|
|
"entityType": "indexes",
|
|
"table": "cronRuns"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "seasonId",
|
|
"isExpression": false
|
|
},
|
|
{
|
|
"value": "episodeNumber",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": true,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "episodes_seasonId_episodeNumber",
|
|
"entityType": "indexes",
|
|
"table": "episodes"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "airDate",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": false,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "episodes_airDate",
|
|
"entityType": "indexes",
|
|
"table": "episodes"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "userId",
|
|
"isExpression": false
|
|
},
|
|
{
|
|
"value": "createdAt",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": false,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "importJobs_userId_createdAt",
|
|
"entityType": "indexes",
|
|
"table": "importJobs"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "status",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": false,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "importJobs_status",
|
|
"entityType": "indexes",
|
|
"table": "importJobs"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "userId",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": true,
|
|
"where": "\"importJobs\".\"status\" in ('pending', 'running')",
|
|
"origin": "manual",
|
|
"name": "importJobs_active_user",
|
|
"entityType": "indexes",
|
|
"table": "importJobs"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "integrationId",
|
|
"isExpression": false
|
|
},
|
|
{
|
|
"value": "receivedAt",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": false,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "integrationEvents_integrationId_receivedAt",
|
|
"entityType": "indexes",
|
|
"table": "integrationEvents"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "userId",
|
|
"isExpression": false
|
|
},
|
|
{
|
|
"value": "provider",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": true,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "integrations_userId_provider",
|
|
"entityType": "indexes",
|
|
"table": "integrations"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "token",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": true,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "integrations_token",
|
|
"entityType": "indexes",
|
|
"table": "integrations"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "personId",
|
|
"isExpression": false
|
|
},
|
|
{
|
|
"value": "displayOrder",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": false,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "personFilmography_personId_displayOrder",
|
|
"entityType": "indexes",
|
|
"table": "personFilmography"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "titleId",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": false,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "personFilmography_titleId",
|
|
"entityType": "indexes",
|
|
"table": "personFilmography"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "tmdbId",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": true,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "persons_tmdbId_unique",
|
|
"entityType": "indexes",
|
|
"table": "persons"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "name",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": false,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "persons_name",
|
|
"entityType": "indexes",
|
|
"table": "persons"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "tmdbProviderId",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": true,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "platformTmdbIds_tmdbProviderId_unique",
|
|
"entityType": "indexes",
|
|
"table": "platformTmdbIds"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "platformId",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": false,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "platformTmdbIds_platformId",
|
|
"entityType": "indexes",
|
|
"table": "platformTmdbIds"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "titleId",
|
|
"isExpression": false
|
|
},
|
|
{
|
|
"value": "seasonNumber",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": true,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "seasons_titleId_seasonNumber",
|
|
"entityType": "indexes",
|
|
"table": "seasons"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "titleId",
|
|
"isExpression": false
|
|
},
|
|
{
|
|
"value": "platformId",
|
|
"isExpression": false
|
|
},
|
|
{
|
|
"value": "offerType",
|
|
"isExpression": false
|
|
},
|
|
{
|
|
"value": "region",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": true,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "titleAvailability_unique",
|
|
"entityType": "indexes",
|
|
"table": "titleAvailability"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "titleId",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": false,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "titleAvailability_titleId",
|
|
"entityType": "indexes",
|
|
"table": "titleAvailability"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "platformId",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": false,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "titleAvailability_platformId",
|
|
"entityType": "indexes",
|
|
"table": "titleAvailability"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "titleId",
|
|
"isExpression": false
|
|
},
|
|
{
|
|
"value": "personId",
|
|
"isExpression": false
|
|
},
|
|
{
|
|
"value": "department",
|
|
"isExpression": false
|
|
},
|
|
{
|
|
"value": "character",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": true,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "titleCast_unique",
|
|
"entityType": "indexes",
|
|
"table": "titleCast"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "titleId",
|
|
"isExpression": false
|
|
},
|
|
{
|
|
"value": "displayOrder",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": false,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "titleCast_titleId_displayOrder",
|
|
"entityType": "indexes",
|
|
"table": "titleCast"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "personId",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": false,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "titleCast_personId",
|
|
"entityType": "indexes",
|
|
"table": "titleCast"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "titleId",
|
|
"isExpression": false
|
|
},
|
|
{
|
|
"value": "genreId",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": true,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "titleGenres_titleId_genreId",
|
|
"entityType": "indexes",
|
|
"table": "titleGenres"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "genreId",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": false,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "titleGenres_genreId",
|
|
"entityType": "indexes",
|
|
"table": "titleGenres"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "titleId",
|
|
"isExpression": false
|
|
},
|
|
{
|
|
"value": "recommendedTitleId",
|
|
"isExpression": false
|
|
},
|
|
{
|
|
"value": "source",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": true,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "titleRecommendations_unique",
|
|
"entityType": "indexes",
|
|
"table": "titleRecommendations"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "titleId",
|
|
"isExpression": false
|
|
},
|
|
{
|
|
"value": "rank",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": false,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "titleRecommendations_titleId_rank",
|
|
"entityType": "indexes",
|
|
"table": "titleRecommendations"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "tmdbId",
|
|
"isExpression": false
|
|
},
|
|
{
|
|
"value": "type",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": true,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "titles_tmdbId_type_unique",
|
|
"entityType": "indexes",
|
|
"table": "titles"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "type",
|
|
"isExpression": false
|
|
},
|
|
{
|
|
"value": "releaseDate",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": false,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "titles_type_releaseDate",
|
|
"entityType": "indexes",
|
|
"table": "titles"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "type",
|
|
"isExpression": false
|
|
},
|
|
{
|
|
"value": "firstAirDate",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": false,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "titles_type_firstAirDate",
|
|
"entityType": "indexes",
|
|
"table": "titles"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "lastFetchedAt",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": false,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "titles_lastFetchedAt",
|
|
"entityType": "indexes",
|
|
"table": "titles"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "type",
|
|
"isExpression": false
|
|
},
|
|
{
|
|
"value": "status",
|
|
"isExpression": false
|
|
},
|
|
{
|
|
"value": "lastFetchedAt",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": false,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "titles_type_status_lastFetchedAt",
|
|
"entityType": "indexes",
|
|
"table": "titles"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "userId",
|
|
"isExpression": false
|
|
},
|
|
{
|
|
"value": "watchedAt",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": false,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "userEpisodeWatches_userId_watchedAt",
|
|
"entityType": "indexes",
|
|
"table": "userEpisodeWatches"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "episodeId",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": false,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "userEpisodeWatches_episodeId",
|
|
"entityType": "indexes",
|
|
"table": "userEpisodeWatches"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "userId",
|
|
"isExpression": false
|
|
},
|
|
{
|
|
"value": "episodeId",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": false,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "userEpisodeWatches_userId_episodeId",
|
|
"entityType": "indexes",
|
|
"table": "userEpisodeWatches"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "userId",
|
|
"isExpression": false
|
|
},
|
|
{
|
|
"value": "watchedAt",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": false,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "userMovieWatches_userId_watchedAt",
|
|
"entityType": "indexes",
|
|
"table": "userMovieWatches"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "titleId",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": false,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "userMovieWatches_titleId",
|
|
"entityType": "indexes",
|
|
"table": "userMovieWatches"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "userId",
|
|
"isExpression": false
|
|
},
|
|
{
|
|
"value": "titleId",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": false,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "userMovieWatches_userId_titleId",
|
|
"entityType": "indexes",
|
|
"table": "userMovieWatches"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "userId",
|
|
"isExpression": false
|
|
},
|
|
{
|
|
"value": "platformId",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": true,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "userPlatforms_userId_platformId",
|
|
"entityType": "indexes",
|
|
"table": "userPlatforms"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "userId",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": false,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "userPlatforms_userId",
|
|
"entityType": "indexes",
|
|
"table": "userPlatforms"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "userId",
|
|
"isExpression": false
|
|
},
|
|
{
|
|
"value": "titleId",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": true,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "userRatings_userId_titleId",
|
|
"entityType": "indexes",
|
|
"table": "userRatings"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "userId",
|
|
"isExpression": false
|
|
},
|
|
{
|
|
"value": "titleId",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": true,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "userTitleStatus_userId_titleId",
|
|
"entityType": "indexes",
|
|
"table": "userTitleStatus"
|
|
},
|
|
{
|
|
"columns": [
|
|
{
|
|
"value": "userId",
|
|
"isExpression": false
|
|
},
|
|
{
|
|
"value": "status",
|
|
"isExpression": false
|
|
}
|
|
],
|
|
"isUnique": false,
|
|
"where": null,
|
|
"origin": "manual",
|
|
"name": "userTitleStatus_userId_status",
|
|
"entityType": "indexes",
|
|
"table": "userTitleStatus"
|
|
},
|
|
{
|
|
"columns": [
|
|
"token"
|
|
],
|
|
"nameExplicit": false,
|
|
"name": "session_token_unique",
|
|
"entityType": "uniques",
|
|
"table": "session"
|
|
},
|
|
{
|
|
"columns": [
|
|
"email"
|
|
],
|
|
"nameExplicit": false,
|
|
"name": "user_email_unique",
|
|
"entityType": "uniques",
|
|
"table": "user"
|
|
}
|
|
],
|
|
"renames": []
|
|
} |