Files
vfxreview/vfxreview.sql
T
twotalesanimation 0fbe856dce Initial commit
2026-05-19 22:20:29 +02:00

1240 lines
51 KiB
SQL
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
--
-- PostgreSQL database dump
--
\restrict 1whWgtdsF6xBXiPHGFiuC9Ygoef9RJWmzx1RVEWvPdonWRifHup6QOcEmo1uBHI
-- Dumped from database version 16.11 (Debian 16.11-1.pgdg13+1)
-- Dumped by pg_dump version 16.11 (Debian 16.11-1.pgdg13+1)
SET statement_timeout = 0;
SET lock_timeout = 0;
SET idle_in_transaction_session_timeout = 0;
SET client_encoding = 'UTF8';
SET standard_conforming_strings = on;
SELECT pg_catalog.set_config('search_path', '', false);
SET check_function_bodies = false;
SET xmloption = content;
SET client_min_messages = warning;
SET row_security = off;
--
-- Name: public; Type: SCHEMA; Schema: -; Owner: postgres
--
-- *not* creating schema, since initdb creates it
ALTER SCHEMA public OWNER TO postgres;
--
-- Name: SCHEMA public; Type: COMMENT; Schema: -; Owner: postgres
--
COMMENT ON SCHEMA public IS '';
--
-- Name: ApprovalStatus; Type: TYPE; Schema: public; Owner: postgres
--
CREATE TYPE public."ApprovalStatus" AS ENUM (
'PENDING_REVIEW',
'APPROVED',
'REJECTED',
'NEEDS_CHANGES'
);
ALTER TYPE public."ApprovalStatus" OWNER TO postgres;
--
-- Name: NotificationType; Type: TYPE; Schema: public; Owner: postgres
--
CREATE TYPE public."NotificationType" AS ENUM (
'VERSION_UPLOADED',
'FEEDBACK_ADDED',
'SHOT_APPROVED',
'SHOT_REJECTED',
'COMMENT_REPLY',
'MENTION',
'REVISION_REQUESTED',
'TASK_ASSIGNED',
'TASK_OVERDUE',
'TASK_APPROVED',
'TASK_CHANGES_REQUESTED',
'TASK_READY_FOR_REVIEW'
);
ALTER TYPE public."NotificationType" OWNER TO postgres;
--
-- Name: ProjectStatus; Type: TYPE; Schema: public; Owner: postgres
--
CREATE TYPE public."ProjectStatus" AS ENUM (
'ACTIVE',
'ON_HOLD',
'COMPLETED',
'ARCHIVED'
);
ALTER TYPE public."ProjectStatus" OWNER TO postgres;
--
-- Name: ProjectType; Type: TYPE; Schema: public; Owner: postgres
--
CREATE TYPE public."ProjectType" AS ENUM (
'STANDARD',
'EPISODIC'
);
ALTER TYPE public."ProjectType" OWNER TO postgres;
--
-- Name: ReviewStatus; Type: TYPE; Schema: public; Owner: postgres
--
CREATE TYPE public."ReviewStatus" AS ENUM (
'PENDING',
'INTERNAL_APPROVED',
'CLIENT_APPROVED',
'NEEDS_CHANGES',
'FINAL_APPROVED'
);
ALTER TYPE public."ReviewStatus" OWNER TO postgres;
--
-- Name: Role; Type: TYPE; Schema: public; Owner: postgres
--
CREATE TYPE public."Role" AS ENUM (
'ADMIN',
'PRODUCER',
'SUPERVISOR',
'ARTIST',
'CLIENT'
);
ALTER TYPE public."Role" OWNER TO postgres;
--
-- Name: ShotPriority; Type: TYPE; Schema: public; Owner: postgres
--
CREATE TYPE public."ShotPriority" AS ENUM (
'LOW',
'NORMAL',
'HIGH',
'URGENT'
);
ALTER TYPE public."ShotPriority" OWNER TO postgres;
--
-- Name: ShotStatus; Type: TYPE; Schema: public; Owner: postgres
--
CREATE TYPE public."ShotStatus" AS ENUM (
'WAITING',
'IN_PROGRESS',
'IN_REVIEW',
'REVISIONS',
'COMPLETE'
);
ALTER TYPE public."ShotStatus" OWNER TO postgres;
--
-- Name: TaskStatus; Type: TYPE; Schema: public; Owner: postgres
--
CREATE TYPE public."TaskStatus" AS ENUM (
'TODO',
'IN_PROGRESS',
'INTERNAL_REVIEW',
'CLIENT_REVIEW',
'CHANGES',
'DONE'
);
ALTER TYPE public."TaskStatus" OWNER TO postgres;
--
-- Name: TaskType; Type: TYPE; Schema: public; Owner: postgres
--
CREATE TYPE public."TaskType" AS ENUM (
'TRACK',
'ROTO',
'KEY',
'COMP',
'FX',
'LIGHTING',
'RENDER',
'ANIMATION',
'MODEL',
'TEXTURE',
'RIG',
'LOOKDEV',
'GENERAL'
);
ALTER TYPE public."TaskType" OWNER TO postgres;
SET default_tablespace = '';
SET default_table_access_method = heap;
--
-- Name: _prisma_migrations; Type: TABLE; Schema: public; Owner: postgres
--
CREATE TABLE public._prisma_migrations (
id character varying(36) NOT NULL,
checksum character varying(64) NOT NULL,
finished_at timestamp with time zone,
migration_name character varying(255) NOT NULL,
logs text,
rolled_back_at timestamp with time zone,
started_at timestamp with time zone DEFAULT now() NOT NULL,
applied_steps_count integer DEFAULT 0 NOT NULL
);
ALTER TABLE public._prisma_migrations OWNER TO postgres;
--
-- Name: accounts; Type: TABLE; Schema: public; Owner: postgres
--
CREATE TABLE public.accounts (
id text NOT NULL,
"userId" text NOT NULL,
type text NOT NULL,
provider text NOT NULL,
"providerAccountId" text NOT NULL,
refresh_token text,
access_token text,
expires_at integer,
token_type text,
scope text,
id_token text,
session_state text
);
ALTER TABLE public.accounts OWNER TO postgres;
--
-- Name: annotations; Type: TABLE; Schema: public; Owner: postgres
--
CREATE TABLE public.annotations (
id text NOT NULL,
"versionId" text NOT NULL,
"commentId" text,
"authorId" text,
"frameNumber" integer NOT NULL,
"drawingData" jsonb NOT NULL,
color text DEFAULT '#ef4444'::text NOT NULL,
"isVisible" boolean DEFAULT true NOT NULL,
"createdAt" timestamp(3) without time zone DEFAULT CURRENT_TIMESTAMP NOT NULL
);
ALTER TABLE public.annotations OWNER TO postgres;
--
-- Name: approvals; Type: TABLE; Schema: public; Owner: postgres
--
CREATE TABLE public.approvals (
id text NOT NULL,
"versionId" text NOT NULL,
"userId" text,
status public."ApprovalStatus" NOT NULL,
notes text,
"createdAt" timestamp(3) without time zone DEFAULT CURRENT_TIMESTAMP NOT NULL
);
ALTER TABLE public.approvals OWNER TO postgres;
--
-- Name: assets; Type: TABLE; Schema: public; Owner: postgres
--
CREATE TABLE public.assets (
id text NOT NULL,
"projectId" text NOT NULL,
"assetCode" text NOT NULL,
name text NOT NULL,
description text,
status public."ShotStatus" DEFAULT 'WAITING'::public."ShotStatus" NOT NULL,
priority public."ShotPriority" DEFAULT 'NORMAL'::public."ShotPriority" NOT NULL,
"leadId" text,
"dueDate" timestamp(3) without time zone,
"createdAt" timestamp(3) without time zone DEFAULT CURRENT_TIMESTAMP NOT NULL,
"updatedAt" timestamp(3) without time zone NOT NULL
);
ALTER TABLE public.assets OWNER TO postgres;
--
-- Name: client_access; Type: TABLE; Schema: public; Owner: postgres
--
CREATE TABLE public.client_access (
id text NOT NULL,
"userId" text NOT NULL,
"clientId" text NOT NULL,
"createdAt" timestamp(3) without time zone DEFAULT CURRENT_TIMESTAMP NOT NULL
);
ALTER TABLE public.client_access OWNER TO postgres;
--
-- Name: clients; Type: TABLE; Schema: public; Owner: postgres
--
CREATE TABLE public.clients (
id text NOT NULL,
company text NOT NULL,
"contactPerson" text NOT NULL,
email text NOT NULL,
phone text,
notes text,
"logoUrl" text,
"isActive" boolean DEFAULT true NOT NULL,
"createdAt" timestamp(3) without time zone DEFAULT CURRENT_TIMESTAMP NOT NULL,
"updatedAt" timestamp(3) without time zone NOT NULL
);
ALTER TABLE public.clients OWNER TO postgres;
--
-- Name: comment_replies; Type: TABLE; Schema: public; Owner: postgres
--
CREATE TABLE public.comment_replies (
id text NOT NULL,
"commentId" text NOT NULL,
"authorId" text,
text text NOT NULL,
"createdAt" timestamp(3) without time zone DEFAULT CURRENT_TIMESTAMP NOT NULL,
"updatedAt" timestamp(3) without time zone NOT NULL
);
ALTER TABLE public.comment_replies OWNER TO postgres;
--
-- Name: comments; Type: TABLE; Schema: public; Owner: postgres
--
CREATE TABLE public.comments (
id text NOT NULL,
"versionId" text NOT NULL,
"authorId" text,
"frameNumber" integer NOT NULL,
"timestamp" double precision NOT NULL,
text text NOT NULL,
"isResolved" boolean DEFAULT false NOT NULL,
"createdAt" timestamp(3) without time zone DEFAULT CURRENT_TIMESTAMP NOT NULL,
"updatedAt" timestamp(3) without time zone NOT NULL
);
ALTER TABLE public.comments OWNER TO postgres;
--
-- Name: notifications; Type: TABLE; Schema: public; Owner: postgres
--
CREATE TABLE public.notifications (
id text NOT NULL,
"userId" text NOT NULL,
type public."NotificationType" NOT NULL,
title text NOT NULL,
message text NOT NULL,
data jsonb,
"isRead" boolean DEFAULT false NOT NULL,
"createdAt" timestamp(3) without time zone DEFAULT CURRENT_TIMESTAMP NOT NULL
);
ALTER TABLE public.notifications OWNER TO postgres;
--
-- Name: projects; Type: TABLE; Schema: public; Owner: postgres
--
CREATE TABLE public.projects (
id text NOT NULL,
name text NOT NULL,
code text NOT NULL,
description text,
status public."ProjectStatus" DEFAULT 'ACTIVE'::public."ProjectStatus" NOT NULL,
"dueDate" timestamp(3) without time zone,
"startDate" timestamp(3) without time zone,
"clientId" text,
"producerId" text,
"supervisorId" text,
"slackWebhook" text,
"slackChannel" text,
"createdAt" timestamp(3) without time zone DEFAULT CURRENT_TIMESTAMP NOT NULL,
"updatedAt" timestamp(3) without time zone NOT NULL,
"showId" text DEFAULT ''::text NOT NULL,
"projectType" public."ProjectType" DEFAULT 'STANDARD'::public."ProjectType" NOT NULL
);
ALTER TABLE public.projects OWNER TO postgres;
--
-- Name: review_sessions; Type: TABLE; Schema: public; Owner: postgres
--
CREATE TABLE public.review_sessions (
id text NOT NULL,
"projectId" text NOT NULL,
token text NOT NULL,
label text,
email text,
"expiresAt" timestamp(3) without time zone NOT NULL,
"isActive" boolean DEFAULT true NOT NULL,
"accessCount" integer DEFAULT 0 NOT NULL,
"createdAt" timestamp(3) without time zone DEFAULT CURRENT_TIMESTAMP NOT NULL
);
ALTER TABLE public.review_sessions OWNER TO postgres;
--
-- Name: sessions; Type: TABLE; Schema: public; Owner: postgres
--
CREATE TABLE public.sessions (
id text NOT NULL,
"sessionToken" text NOT NULL,
"userId" text NOT NULL,
expires timestamp(3) without time zone NOT NULL
);
ALTER TABLE public.sessions OWNER TO postgres;
--
-- Name: shots; Type: TABLE; Schema: public; Owner: postgres
--
CREATE TABLE public.shots (
id text NOT NULL,
"shotCode" text NOT NULL,
sequence text,
description text,
status public."ShotStatus" DEFAULT 'WAITING'::public."ShotStatus" NOT NULL,
priority public."ShotPriority" DEFAULT 'NORMAL'::public."ShotPriority" NOT NULL,
"artistId" text,
"projectId" text NOT NULL,
"frameStart" integer,
"frameEnd" integer,
fps double precision DEFAULT 24 NOT NULL,
"dueDate" timestamp(3) without time zone,
"createdAt" timestamp(3) without time zone DEFAULT CURRENT_TIMESTAMP NOT NULL,
"updatedAt" timestamp(3) without time zone NOT NULL,
scene text DEFAULT ''::text NOT NULL,
episode text,
"shotNumber" integer DEFAULT 0 NOT NULL,
"thumbnailUrl" text
);
ALTER TABLE public.shots OWNER TO postgres;
--
-- Name: tasks; Type: TABLE; Schema: public; Owner: postgres
--
CREATE TABLE public.tasks (
id text NOT NULL,
title text NOT NULL,
description text,
type public."TaskType" DEFAULT 'GENERAL'::public."TaskType" NOT NULL,
status public."TaskStatus" DEFAULT 'TODO'::public."TaskStatus" NOT NULL,
priority public."ShotPriority" DEFAULT 'NORMAL'::public."ShotPriority" NOT NULL,
"dueDate" timestamp(3) without time zone,
"estimatedHours" double precision,
"sortOrder" integer DEFAULT 0 NOT NULL,
"shotId" text,
"assetId" text,
"assignedArtistId" text,
"createdById" text,
"projectId" text NOT NULL,
"createdAt" timestamp(3) without time zone DEFAULT CURRENT_TIMESTAMP NOT NULL,
"updatedAt" timestamp(3) without time zone NOT NULL
);
ALTER TABLE public.tasks OWNER TO postgres;
--
-- Name: users; Type: TABLE; Schema: public; Owner: postgres
--
CREATE TABLE public.users (
id text NOT NULL,
name text,
email text NOT NULL,
"emailVerified" timestamp(3) without time zone,
image text,
"passwordHash" text,
role public."Role" DEFAULT 'ARTIST'::public."Role" NOT NULL,
"isActive" boolean DEFAULT true NOT NULL,
"createdAt" timestamp(3) without time zone DEFAULT CURRENT_TIMESTAMP NOT NULL,
"updatedAt" timestamp(3) without time zone NOT NULL,
"mustChangePassword" boolean DEFAULT false NOT NULL
);
ALTER TABLE public.users OWNER TO postgres;
--
-- Name: verification_tokens; Type: TABLE; Schema: public; Owner: postgres
--
CREATE TABLE public.verification_tokens (
identifier text NOT NULL,
token text NOT NULL,
expires timestamp(3) without time zone NOT NULL
);
ALTER TABLE public.verification_tokens OWNER TO postgres;
--
-- Name: versions; Type: TABLE; Schema: public; Owner: postgres
--
CREATE TABLE public.versions (
id text NOT NULL,
"versionNumber" integer NOT NULL,
"shotId" text,
"artistId" text,
"fileUrl" text NOT NULL,
"fileName" text NOT NULL,
"fileSize" bigint,
"mimeType" text,
"thumbnailUrl" text,
"posterUrl" text,
"proxyUrl" text,
fps double precision DEFAULT 24 NOT NULL,
duration double precision,
"frameCount" integer,
width integer,
height integer,
notes text,
"approvalStatus" public."ApprovalStatus" DEFAULT 'PENDING_REVIEW'::public."ApprovalStatus" NOT NULL,
"reviewStatus" public."ReviewStatus" DEFAULT 'PENDING'::public."ReviewStatus" NOT NULL,
"isLatest" boolean DEFAULT true NOT NULL,
"createdAt" timestamp(3) without time zone DEFAULT CURRENT_TIMESTAMP NOT NULL,
"updatedAt" timestamp(3) without time zone NOT NULL,
"isClientVisible" boolean DEFAULT false NOT NULL,
"sharedAt" timestamp(3) without time zone,
"sharedById" text,
"taskId" text
);
ALTER TABLE public.versions OWNER TO postgres;
--
-- Data for Name: _prisma_migrations; Type: TABLE DATA; Schema: public; Owner: postgres
--
COPY public._prisma_migrations (id, checksum, finished_at, migration_name, logs, rolled_back_at, started_at, applied_steps_count) FROM stdin;
e1e67776-5fbb-4639-98c5-028a2891bab9 ba0a3793ab2cee7f72249246db5e1fdbf12170981e24aeaeedf02adefbeace1a 2026-05-15 07:12:53.510646+00 20260514062418_01_initial_migration \N \N 2026-05-15 07:12:52.845407+00 1
b805947c-ab7d-4a86-82f6-0929c7007869 4c08fb5ebd7e3892395404a146553456182fb5922baf892ed550493ac041ce07 2026-05-15 07:12:53.682166+00 20260514105432_add_tasks_assets_client_visibility \N \N 2026-05-15 07:12:53.523009+00 1
a54ab11f-9d6a-4884-8521-953cd2f1796e 10cce7cbaf37bcd8825e883755f4fe147d6e3cf6311d77f8a56038f2d7709045 2026-05-15 07:12:53.967865+00 20260514120000_task_first_workflow \N \N 2026-05-15 07:12:53.692238+00 1
7a6ca15a-d86b-4838-bfe2-c1760ffe3780 babb30e6fd032a3ba74f73c738b2a432fe88a0926dd4fea1d12257284cc7d1aa 2026-05-15 07:12:54.018215+00 20260514130000_shot_naming_conventions \N \N 2026-05-15 07:12:53.976314+00 1
f2c31504-2756-4621-aa24-059aba13f088 5d175c77a7dc60a219608898fb8a3eb06c74640c19f5359473700b51cfa865d0 2026-05-15 07:12:54.05694+00 20260515070205_add_shot_thumbnail \N \N 2026-05-15 07:12:54.026791+00 1
4af4adb1-cc6b-4dc7-a7a2-7ffc15a0813c b5c045382fa853fcd915a4a05b127e116e87611e445e1d7dd51c2b8f07e7f864 2026-05-15 09:08:49.790348+00 20260515090849_add_must_change_password \N \N 2026-05-15 09:08:49.722293+00 1
6668f4e3-ec46-4c8e-9fad-767a86abc051 f0118cfdcbf87576ba3e2ee217945825a8db0ee9397e452535ed11e10c675e17 2026-05-15 09:40:28.976683+00 20260515094028_nullable_user_fks_for_delete \N \N 2026-05-15 09:40:28.870877+00 1
\.
--
-- Data for Name: accounts; Type: TABLE DATA; Schema: public; Owner: postgres
--
COPY public.accounts (id, "userId", type, provider, "providerAccountId", refresh_token, access_token, expires_at, token_type, scope, id_token, session_state) FROM stdin;
\.
--
-- Data for Name: annotations; Type: TABLE DATA; Schema: public; Owner: postgres
--
COPY public.annotations (id, "versionId", "commentId", "authorId", "frameNumber", "drawingData", color, "isVisible", "createdAt") FROM stdin;
cmp6mgr38000vua0gil3ztyft cmp6m2h1l000oua0gk6kp9kyv \N \N 102 {"shapes": [{"id": "13579e0c-0678-4d28-ae1d-a8f1d4c5fe4c", "tool": "freehand", "color": "#ef4444", "points": [{"x": 0.6622242647058824, "y": 0.3543465734557578}, {"x": 0.6617647058823529, "y": 0.3543465734557578}, {"x": 0.6613051470588235, "y": 0.3526194577390048}, {"x": 0.6599264705882353, "y": 0.3517558998806283}, {"x": 0.6553308823529411, "y": 0.3517558998806283}, {"x": 0.6484375, "y": 0.3517558998806283}, {"x": 0.6452205882352942, "y": 0.3517558998806283}, {"x": 0.6401654411764706, "y": 0.3517558998806283}, {"x": 0.6337316176470589, "y": 0.3517558998806283}, {"x": 0.6286764705882353, "y": 0.3517558998806283}, {"x": 0.6240808823529411, "y": 0.3517558998806283}, {"x": 0.6167279411764706, "y": 0.3517558998806283}, {"x": 0.6139705882352942, "y": 0.3517558998806283}, {"x": 0.6066176470588235, "y": 0.3517558998806283}, {"x": 0.5978860294117647, "y": 0.3517558998806283}, {"x": 0.5896139705882353, "y": 0.3526194577390048}, {"x": 0.5827205882352942, "y": 0.3543465734557578}, {"x": 0.5762867647058824, "y": 0.3603914784643934}, {"x": 0.5707720588235294, "y": 0.3690270570481585}, {"x": 0.5657169117647058, "y": 0.3767990777735472}, {"x": 0.5615808823529411, "y": 0.3862982142156888}, {"x": 0.5583639705882353, "y": 0.3949337927994538}, {"x": 0.5574448529411765, "y": 0.3992515820913364}, {"x": 0.5546875, "y": 0.4061600449583485}, {"x": 0.5523897058823529, "y": 0.4147956235421136}, {"x": 0.5519301470588235, "y": 0.4191134128339962}, {"x": 0.5500919117647058, "y": 0.4337938964263969}, {"x": 0.5487132352941176, "y": 0.444156590726915}, {"x": 0.5477941176470589, "y": 0.4553828428858097}, {"x": 0.5477941176470589, "y": 0.4691997686198338}, {"x": 0.5477941176470589, "y": 0.484743810070611}, {"x": 0.5487132352941176, "y": 0.5011514093797648}, {"x": 0.5496323529411765, "y": 0.5054691986716473}, {"x": 0.5533088235294118, "y": 0.5158318929721655}, {"x": 0.5560661764705882, "y": 0.5261945872726835}, {"x": 0.5597426470588235, "y": 0.5356937237148252}, {"x": 0.5647977941176471, "y": 0.5460564180153433}, {"x": 0.5707720588235294, "y": 0.559009785890991}, {"x": 0.578125, "y": 0.5676453644747561}, {"x": 0.5863970588235294, "y": 0.5754173852001447}, {"x": 0.5955882352941176, "y": 0.5814622902087803}, {"x": 0.6038602941176471, "y": 0.5866436373590393}, {"x": 0.6144301470588235, "y": 0.5892343109341689}, {"x": 0.6204044117647058, "y": 0.5909614266509219}, {"x": 0.6314338235294118, "y": 0.5918249845092984}, {"x": 0.6415441176470589, "y": 0.5918249845092984}, {"x": 0.6507352941176471, "y": 0.5909614266509219}, {"x": 0.6599264705882353, "y": 0.5849165216422864}, {"x": 0.6681985294117647, "y": 0.5754173852001447}, {"x": 0.6755514705882353, "y": 0.5650546908996266}, {"x": 0.6819852941176471, "y": 0.5546919965991084}, {"x": 0.6875, "y": 0.5417386287234608}, {"x": 0.6920955882352942, "y": 0.5261945872726835}, {"x": 0.6948529411764706, "y": 0.5115141036802828}, {"x": 0.6957720588235294, "y": 0.5046056408132708}, {"x": 0.6980698529411765, "y": 0.4907887150792466}, {"x": 0.6994485294117647, "y": 0.4778353472035989}, {"x": 0.6999080882352942, "y": 0.4648819793279513}, {"x": 0.6999080882352942, "y": 0.4545192850274332}, {"x": 0.6999080882352942, "y": 0.444156590726915}, {"x": 0.6994485294117647, "y": 0.4355210121431499}, {"x": 0.6971507352941176, "y": 0.4242947599842553}, {"x": 0.6934742647058824, "y": 0.4156591814004901}, {"x": 0.6893382352941176, "y": 0.4044329292415955}, {"x": 0.6856617647058824, "y": 0.3992515820913364}, {"x": 0.6810661764705882, "y": 0.3914795613659478}, {"x": 0.6769301470588235, "y": 0.3854346563573122}, {"x": 0.6737132352941176, "y": 0.3811168670654297}, {"x": 0.6709558823529411, "y": 0.3776626356319236}, {"x": 0.6659007352941176, "y": 0.3724812884816646}, {"x": 0.6622242647058824, "y": 0.368163499189782}, {"x": 0.6576286764705882, "y": 0.3629821520395229}, {"x": 0.6516544117647058, "y": 0.3595279206060169}, {"x": 0.6461397058823529, "y": 0.3543465734557578}, {"x": 0.6420036764705882, "y": 0.3526194577390048}, {"x": 0.640625, "y": 0.3517558998806283}, {"x": 0.6369485294117647, "y": 0.3508923420222518}, {"x": 0.6337316176470589, "y": 0.3508923420222518}, {"x": 0.6323529411764706, "y": 0.3500287841638753}, {"x": 0.6323529411764706, "y": 0.3500287841638753}], "frameNumber": 102, "strokeWidth": 2}], "version": "1.0", "canvasWidth": 2176, "canvasHeight": 1158} #ef4444 t 2026-05-15 07:54:58.724
cmp6mhveu0011ua0g65rmd433 cmp6m2h1l000oua0gk6kp9kyv \N \N 93 {"shapes": [{"id": "4061ab2a-1375-4bd6-80d3-d1b736485801", "tool": "freehand", "color": "#ef4444", "points": [{"x": 0.5709821428571429, "y": 0.4498550713580587}, {"x": 0.5700892857142857, "y": 0.4481159409232762}, {"x": 0.565625, "y": 0.442028984401537}, {"x": 0.5633928571428571, "y": 0.442028984401537}, {"x": 0.5584821428571428, "y": 0.4385507235319718}, {"x": 0.5526785714285715, "y": 0.4359420278797979}, {"x": 0.5464285714285714, "y": 0.4350724626624066}, {"x": 0.540625, "y": 0.4350724626624066}, {"x": 0.5379464285714286, "y": 0.4350724626624066}, {"x": 0.5330357142857143, "y": 0.4411594191841457}, {"x": 0.5272321428571428, "y": 0.4542028974450153}, {"x": 0.5209821428571428, "y": 0.473333332227624}, {"x": 0.5160714285714286, "y": 0.4985507235319718}, {"x": 0.5142857142857142, "y": 0.5107246365754501}, {"x": 0.5138392857142857, "y": 0.5385507235319718}, {"x": 0.5165178571428571, "y": 0.5689855061406675}, {"x": 0.5223214285714286, "y": 0.5942028974450153}, {"x": 0.53125, "y": 0.6168115930971892}, {"x": 0.5410714285714285, "y": 0.6394202887493631}, {"x": 0.5517857142857143, "y": 0.653333332227624}, {"x": 0.5611607142857142, "y": 0.6585507235319719}, {"x": 0.56875, "y": 0.6594202887493631}, {"x": 0.5767857142857142, "y": 0.6594202887493631}, {"x": 0.5830357142857143, "y": 0.6515942017928413}, {"x": 0.5866071428571429, "y": 0.6437681148363197}, {"x": 0.590625, "y": 0.6281159409232762}, {"x": 0.5933035714285714, "y": 0.6081159409232761}, {"x": 0.5946428571428571, "y": 0.5872463757058849}, {"x": 0.5955357142857143, "y": 0.5655072452711022}, {"x": 0.5955357142857143, "y": 0.5446376800537109}, {"x": 0.5941964285714286, "y": 0.5255072452711023}, {"x": 0.5892857142857143, "y": 0.5063768104884936}, {"x": 0.5848214285714286, "y": 0.4907246365754501}, {"x": 0.5776785714285714, "y": 0.4785507235319718}, {"x": 0.5741071428571428, "y": 0.4715942017928414}, {"x": 0.5678571428571428, "y": 0.4646376800537109}, {"x": 0.5625, "y": 0.4594202887493631}, {"x": 0.5589285714285714, "y": 0.4568115930971892}, {"x": 0.5566964285714285, "y": 0.4559420278797979}, {"x": 0.5526785714285715, "y": 0.4542028974450153}, {"x": 0.5486607142857143, "y": 0.4542028974450153}, {"x": 0.5455357142857142, "y": 0.4542028974450153}, {"x": 0.5446428571428571, "y": 0.4542028974450153}], "frameNumber": 93, "strokeWidth": 2}], "version": "1.0", "canvasWidth": 2240, "canvasHeight": 1150} #ef4444 t 2026-05-15 07:55:50.982
cmp6mi1ql0015ua0gg6046gwx cmp6m2h1l000oua0gk6kp9kyv \N \N 123 {"shapes": [{"id": "8c074df8-1e9e-4edc-b8c3-c720a7fc8741", "tool": "freehand", "color": "#ef4444", "points": [{"x": 0.5401785714285714, "y": 0.3976811583145805}, {"x": 0.5375, "y": 0.3968115930971892}, {"x": 0.53125, "y": 0.3968115930971892}, {"x": 0.5290178571428571, "y": 0.3968115930971892}, {"x": 0.5196428571428572, "y": 0.3968115930971892}, {"x": 0.5053571428571428, "y": 0.393333332227624}, {"x": 0.4875, "y": 0.3924637670102327}, {"x": 0.4705357142857143, "y": 0.3924637670102327}, {"x": 0.4642857142857143, "y": 0.3924637670102327}, {"x": 0.4535714285714286, "y": 0.3924637670102327}, {"x": 0.4375, "y": 0.393333332227624}, {"x": 0.4272321428571428, "y": 0.4002898539667544}, {"x": 0.415625, "y": 0.4107246365754501}, {"x": 0.4075892857142857, "y": 0.4228985496189283}, {"x": 0.4053571428571429, "y": 0.4272463757058849}, {"x": 0.4017857142857143, "y": 0.4368115930971892}, {"x": 0.4008928571428572, "y": 0.4463768104884935}, {"x": 0.4008928571428572, "y": 0.4576811583145805}, {"x": 0.4058035714285714, "y": 0.4742028974450153}, {"x": 0.4183035714285714, "y": 0.4959420278797979}, {"x": 0.4330357142857143, "y": 0.513333332227624}, {"x": 0.4575892857142857, "y": 0.5237681148363197}, {"x": 0.4821428571428572, "y": 0.5255072452711023}, {"x": 0.5013392857142858, "y": 0.5255072452711023}, {"x": 0.5111607142857143, "y": 0.5237681148363197}, {"x": 0.5258928571428572, "y": 0.5159420278797979}, {"x": 0.5366071428571428, "y": 0.5028985496189283}, {"x": 0.5455357142857142, "y": 0.4855072452711022}, {"x": 0.5508928571428572, "y": 0.4715942017928414}, {"x": 0.5526785714285715, "y": 0.4559420278797979}, {"x": 0.5526785714285715, "y": 0.442028984401537}, {"x": 0.5504464285714286, "y": 0.4272463757058849}, {"x": 0.54375, "y": 0.4107246365754501}, {"x": 0.5330357142857143, "y": 0.3968115930971892}, {"x": 0.5205357142857143, "y": 0.3828985496189283}, {"x": 0.5142857142857142, "y": 0.3794202887493631}, {"x": 0.5008928571428571, "y": 0.3689855061406674}, {"x": 0.4875, "y": 0.3646376800537109}, {"x": 0.4723214285714286, "y": 0.362028984401537}, {"x": 0.4642857142857143, "y": 0.362028984401537}, {"x": 0.4410714285714286, "y": 0.362028984401537}, {"x": 0.4245535714285714, "y": 0.362028984401537}, {"x": 0.4107142857142857, "y": 0.3689855061406674}, {"x": 0.3991071428571429, "y": 0.3794202887493631}, {"x": 0.3919642857142857, "y": 0.3924637670102327}, {"x": 0.3897321428571429, "y": 0.402028984401537}, {"x": 0.3875, "y": 0.4202898539667544}, {"x": 0.3875, "y": 0.4428985496189283}, {"x": 0.3919642857142857, "y": 0.4646376800537109}, {"x": 0.3995535714285715, "y": 0.4846376800537109}, {"x": 0.4120535714285714, "y": 0.5046376800537109}, {"x": 0.4303571428571429, "y": 0.522028984401537}, {"x": 0.4491071428571429, "y": 0.5342028974450153}, {"x": 0.4674107142857143, "y": 0.5411594191841457}, {"x": 0.484375, "y": 0.5428985496189284}, {"x": 0.4928571428571429, "y": 0.5428985496189284}, {"x": 0.509375, "y": 0.5359420278797979}, {"x": 0.5223214285714286, "y": 0.522028984401537}, {"x": 0.5325892857142858, "y": 0.5046376800537109}, {"x": 0.5419642857142857, "y": 0.4855072452711022}, {"x": 0.5482142857142858, "y": 0.4663768104884936}, {"x": 0.5508928571428572, "y": 0.4515942017928414}, {"x": 0.5513392857142857, "y": 0.442028984401537}, {"x": 0.5504464285714286, "y": 0.4307246365754501}, {"x": 0.5450892857142857, "y": 0.4176811583145805}, {"x": 0.5361607142857143, "y": 0.4046376800537109}, {"x": 0.53125, "y": 0.3994202887493631}, {"x": 0.5214285714285715, "y": 0.3898550713580587}, {"x": 0.5098214285714285, "y": 0.3811594191841457}, {"x": 0.5017857142857143, "y": 0.3776811583145805}, {"x": 0.4991071428571429, "y": 0.3768115930971892}, {"x": 0.4986607142857143, "y": 0.3768115930971892}], "frameNumber": 123, "strokeWidth": 2}], "version": "1.0", "canvasWidth": 2240, "canvasHeight": 1150} #ef4444 t 2026-05-15 07:55:59.181
\.
--
-- Data for Name: approvals; Type: TABLE DATA; Schema: public; Owner: postgres
--
COPY public.approvals (id, "versionId", "userId", status, notes, "createdAt") FROM stdin;
cmp6m4exd000tua0g9ze76dua cmp6lpfmx000dua0gr256g7bd \N APPROVED 2026-05-15 07:45:23.089
cmp6ms0n0001bua0gem455iqz cmp6m2h1l000oua0gk6kp9kyv \N APPROVED 2026-05-15 08:03:44.316
cmp6mtzxh001fua0gb3x83byq cmp6m2h1l000oua0gk6kp9kyv \N NEEDS_CHANGES not great\n 2026-05-15 08:05:16.71
cmp6mw17e001mua0g0wv6g2yc cmp6muvky001hua0gtvk9sx7j \N APPROVED 2026-05-15 08:06:51.675
cmp6n93sf0029ua0go7z1o88m cmp6n30cr001yua0gijmi6ab8 \N APPROVED 2026-05-15 08:17:01.552
cmp6ndq2r002hua0g9olq4s8b cmp6muvky001hua0gtvk9sx7j \N NEEDS_CHANGES Didnt work! 2026-05-15 08:20:37.059
\.
--
-- Data for Name: assets; Type: TABLE DATA; Schema: public; Owner: postgres
--
COPY public.assets (id, "projectId", "assetCode", name, description, status, priority, "leadId", "dueDate", "createdAt", "updatedAt") FROM stdin;
\.
--
-- Data for Name: client_access; Type: TABLE DATA; Schema: public; Owner: postgres
--
COPY public.client_access (id, "userId", "clientId", "createdAt") FROM stdin;
\.
--
-- Data for Name: clients; Type: TABLE DATA; Schema: public; Owner: postgres
--
COPY public.clients (id, company, "contactPerson", email, phone, notes, "logoUrl", "isActive", "createdAt", "updatedAt") FROM stdin;
cmp6pm6bg0004uaecev06fsly YellowBone Entertainment Dries Scholtz driesscholtz@gmail.com \N t 2026-05-15 09:23:10.588 2026-05-15 09:23:10.588
cmp6pqo2l0005uaecmp57rjpt Ungovernable Cartel (Pty) Ltd Nono Mofokeng nmofokeng@netflixpartner.com +27 83 207 3993 VFX Coordinator at Ungovernable Cartel (Pty) Ltd \N t 2026-05-15 09:26:40.221 2026-05-15 09:26:40.221
cmp6pt47s0006uaechzp496j4 Red Letter Day Pictures Rene van Rooyen rene@redletterdaypictures.com \N t 2026-05-15 09:28:34.455 2026-05-15 09:28:34.455
cmp6pvnin0009uaece99q52q7 Ebony Life Media Heidi Uys heidi@ebonylifemedia.com \N t 2026-05-15 09:30:32.782 2026-05-15 09:30:32.782
\.
--
-- Data for Name: comment_replies; Type: TABLE DATA; Schema: public; Owner: postgres
--
COPY public.comment_replies (id, "commentId", "authorId", text, "createdAt", "updatedAt") FROM stdin;
\.
--
-- Data for Name: comments; Type: TABLE DATA; Schema: public; Owner: postgres
--
COPY public.comments (id, "versionId", "authorId", "frameNumber", "timestamp", text, "isResolved", "createdAt", "updatedAt") FROM stdin;
cmp6mst1b001dua0gynmpdyay cmp6m2h1l000oua0gk6kp9kyv \N 61 2.541666666666667 what is this? f 2026-05-15 08:04:21.119 2026-05-15 08:04:21.119
cmp6mya3t001oua0gtmoq1kbz cmp6muvky001hua0gtvk9sx7j \N 63 2.625 Check this please f 2026-05-15 08:08:36.522 2026-05-15 08:08:36.522
cmp6n48nx0025ua0g9roxnf76 cmp6n30cr001yua0gijmi6ab8 \N 111 4.625 test2 f 2026-05-15 08:13:14.589 2026-05-15 08:13:14.589
cmp6n8iot0027ua0g9bvrlc33 cmp6n30cr001yua0gijmi6ab8 \N 0 0 test3 f 2026-05-15 08:16:34.205 2026-05-15 08:16:34.205
cmp6nfa81002nua0gpdvj9j52 cmp6n30cr001yua0gijmi6ab8 \N 127 5.291666666666667 this is cool f 2026-05-15 08:21:49.826 2026-05-15 08:21:49.826
cmp6nh75o002rua0gkoive3ph cmp6n30cr001yua0gijmi6ab8 \N 81 3.375 test f 2026-05-15 08:23:19.164 2026-05-15 08:23:19.164
cmp6mgr6y000xua0goma5pwmr cmp6m2h1l000oua0gk6kp9kyv \N 102 4.25 Annotation at frame 102 f 2026-05-15 07:54:58.858 2026-05-15 07:54:58.858
cmp6mgxgf000zua0gl10gb67b cmp6m2h1l000oua0gk6kp9kyv \N 102 4.25 Out of focus f 2026-05-15 07:55:06.976 2026-05-15 07:55:06.976
cmp6mhvhr0013ua0giy5xzd5s cmp6m2h1l000oua0gk6kp9kyv \N 93 3.875 Annotation at frame 93 f 2026-05-15 07:55:51.087 2026-05-15 07:55:51.087
cmp6mi1th0017ua0gbgh5hh4q cmp6m2h1l000oua0gk6kp9kyv \N 123 5.125 Annotation at frame 123 f 2026-05-15 07:55:59.285 2026-05-15 07:55:59.285
cmp6mobc00019ua0gb049awv0 cmp6m2h1l000oua0gk6kp9kyv \N 115 4.791666666666667 looks a little wonky f 2026-05-15 08:00:51.551 2026-05-15 08:00:51.551
cmp6mzdh2001qua0gnhf2c6ag cmp6muvky001hua0gtvk9sx7j \N 130 5.416666666666667 this is the internal review comment f 2026-05-15 08:09:27.541 2026-05-15 08:09:27.541
cmp6n1hcg001sua0gmsn82v7j cmp6muvky001hua0gtvk9sx7j \N 108 4.5 test f 2026-05-15 08:11:05.873 2026-05-15 08:11:05.873
cmp6n3joh0023ua0g9ai3yhrh cmp6n30cr001yua0gijmi6ab8 \N 108 4.5 test f 2026-05-15 08:12:42.209 2026-05-15 08:12:42.209
cmp6ndfko002fua0gm5e9w1sk cmp6muvky001hua0gtvk9sx7j \N 87 3.625 TESTINT f 2026-05-15 08:20:23.448 2026-05-15 08:20:23.448
cmp6nesy8002lua0gwsndjgoh cmp6muvky001hua0gtvk9sx7j \N 87 3.625 check f 2026-05-15 08:21:27.44 2026-05-15 08:21:27.44
cmp6ngvvl002pua0gtcultp1r cmp6muvky001hua0gtvk9sx7j \N 55 2.291666666666667 Whatabout here? f 2026-05-15 08:23:04.544 2026-05-15 08:23:04.544
\.
--
-- Data for Name: notifications; Type: TABLE DATA; Schema: public; Owner: postgres
--
COPY public.notifications (id, "userId", type, title, message, data, "isRead", "createdAt") FROM stdin;
cmp6qz5om0001ua0srnfika29 cmp6p84ln0001uaec9xgguyqg TASK_ASSIGNED New task assigned to you Chris Pinto assigned you: Comp (UNG_101_01_0010) {"taskId": "cmp6lonel0009ua0gsfb8meil"} f 2026-05-15 10:01:15.91
\.
--
-- Data for Name: projects; Type: TABLE DATA; Schema: public; Owner: postgres
--
COPY public.projects (id, name, code, description, status, "dueDate", "startDate", "clientId", "producerId", "supervisorId", "slackWebhook", "slackChannel", "createdAt", "updatedAt", "showId", "projectType") FROM stdin;
cmp6pjs5c0003uaecugx03rsv Queenstown Kings: Back 2 Goal QTK-26 Netflix sequel to Queenstown Kings, a soccer film set in rural South Africa. ACTIVE 2026-12-31 00:00:00 2026-05-18 00:00:00 cmp6pm6bg0004uaecev06fsly cmp6p76do0000uaec12miwml1 cmp6p84ln0001uaec9xgguyqg https://hooks.slack.com/services/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 \N 2026-05-15 09:21:18.912 2026-05-15 09:23:23.769 QTK STANDARD
cmp6l5mzq0001ua0gz07bk72f Ungovernable UNG_S1 Netflix tellanovella crime thirller set in South Africa ACTIVE 2026-11-30 00:00:00 \N cmp6pqo2l0005uaecmp57rjpt cmp6p76do0000uaec12miwml1 cmp6p84ln0001uaec9xgguyqg https://hooks.slack.com/services/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 \t#ungovernable 2026-05-15 07:18:20.582 2026-05-15 09:32:41.717 UNG EPISODIC
cmp6px3ak000buaec7dks2bi1 The Secret Lives of Baba Segi's Wives BAB-26 Nigerian Netfilx Film. ACTIVE 2026-05-30 00:00:00 \N cmp6pvnin0009uaece99q52q7 cmp6p76do0000uaec12miwml1 cmp6p84ln0001uaec9xgguyqg https://hooks.slack.com/services/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 \N 2026-05-15 09:31:39.884 2026-05-15 09:33:59.63 BAB STANDARD
cmp6pu8h20008uaecsh1y7egv Better As Gister BAG_S1 Kyknet/Mnet drama series set in Cape Town. ACTIVE 2026-08-31 00:00:00 \N cmp6pt47s0006uaechzp496j4 cmp6p84ln0001uaec9xgguyqg \N https://hooks.slack.com/services/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 \N 2026-05-15 09:29:26.63 2026-05-15 09:34:19.067 BAG EPISODIC
\.
--
-- Data for Name: review_sessions; Type: TABLE DATA; Schema: public; Owner: postgres
--
COPY public.review_sessions (id, "projectId", token, label, email, "expiresAt", "isActive", "accessCount", "createdAt") FROM stdin;
cmp6lbitx0006ua0gjn87gy7c cmp6l5mzq0001ua0gz07bk72f cmp6lbitx0007ua0gg3r6fb1l Review Round 1 client@studio.com 2026-06-14 07:22:55.125 t 34 2026-05-15 07:22:55.126
\.
--
-- Data for Name: sessions; Type: TABLE DATA; Schema: public; Owner: postgres
--
COPY public.sessions (id, "sessionToken", "userId", expires) FROM stdin;
\.
--
-- Data for Name: shots; Type: TABLE DATA; Schema: public; Owner: postgres
--
COPY public.shots (id, "shotCode", sequence, description, status, priority, "artistId", "projectId", "frameStart", "frameEnd", fps, "dueDate", "createdAt", "updatedAt", scene, episode, "shotNumber", "thumbnailUrl") FROM stdin;
cmp6lab2c0003ua0gqfuqv2zi UNG_101_01_0010 \N Add Lighting behind the building COMPLETE NORMAL \N cmp6l5mzq0001ua0gz07bk72f \N \N 24 \N 2026-05-15 07:21:58.404 2026-05-15 07:45:23.131 01 101 10 /api/files/image%2Fa2065027-698b-40eb-85d4-e8aba9737068-Screenshot%202026-05-15%20092103.png
cmp6ly5w9000iua0gd4p83r25 UNG_102_35_0010 \N Add blood to Mondi's shirt REVISIONS NORMAL \N cmp6l5mzq0001ua0gz07bk72f \N \N 24 \N 2026-05-15 07:40:31.449 2026-05-15 08:20:37.121 35 102 10 /api/files/image%2F776ff254-f529-462a-9547-56af08e81f36-Screenshot%202026-05-15%20093934.png
\.
--
-- Data for Name: tasks; Type: TABLE DATA; Schema: public; Owner: postgres
--
COPY public.tasks (id, title, description, type, status, priority, "dueDate", "estimatedHours", "sortOrder", "shotId", "assetId", "assignedArtistId", "createdById", "projectId", "createdAt", "updatedAt") FROM stdin;
cmp6nb5re002bua0gpj1b0r5m Key KEY TODO NORMAL \N 6 2 cmp6ly5w9000iua0gd4p83r25 \N \N \N cmp6l5mzq0001ua0gz07bk72f 2026-05-15 08:18:37.418 2026-05-15 08:18:37.418
cmp6n2ndd001uua0gyrhinj0b Roto FX DONE NORMAL \N 6 1 cmp6ly5w9000iua0gd4p83r25 \N \N \N cmp6l5mzq0001ua0gz07bk72f 2026-05-15 08:12:00.338 2026-05-15 08:17:01.583
cmp6m1tkq000kua0gazp1izqc Comp COMP CHANGES NORMAL 2026-05-29 00:00:00 2 0 cmp6ly5w9000iua0gd4p83r25 \N \N \N cmp6l5mzq0001ua0gz07bk72f 2026-05-15 07:43:22.107 2026-05-15 08:20:37.103
cmp6lonel0009ua0gsfb8meil Comp COMP DONE NORMAL 2026-05-16 00:00:00 5 0 cmp6lab2c0003ua0gqfuqv2zi \N cmp6p84ln0001uaec9xgguyqg \N cmp6l5mzq0001ua0gz07bk72f 2026-05-15 07:33:07.582 2026-05-15 10:01:15.874
\.
--
-- Data for Name: users; Type: TABLE DATA; Schema: public; Owner: postgres
--
COPY public.users (id, name, email, "emailVerified", image, "passwordHash", role, "isActive", "createdAt", "updatedAt", "mustChangePassword") FROM stdin;
cmp6p76do0000uaec12miwml1 Michelle Pinto michelle@twotalesanimation.com \N \N $2a$12$74w6W8UCBfoNHTZDEfIiDullrhpDwxdntHchJ3osnw3jeQCFmee5q PRODUCER t 2026-05-15 09:11:30.828 2026-05-15 09:11:30.828 t
cmp6p84ln0001uaec9xgguyqg Chris Pinto chris@twotalesanimation.com \N \N $2a$12$5ufWMRE8PvIIJkVTtMHK8eGh.5A4RWAm/QZloyWyKRLRZkYAWzl9C ADMIN t 2026-05-15 09:12:15.179 2026-05-15 09:12:59.339 f
\.
--
-- Data for Name: verification_tokens; Type: TABLE DATA; Schema: public; Owner: postgres
--
COPY public.verification_tokens (identifier, token, expires) FROM stdin;
\.
--
-- Data for Name: versions; Type: TABLE DATA; Schema: public; Owner: postgres
--
COPY public.versions (id, "versionNumber", "shotId", "artistId", "fileUrl", "fileName", "fileSize", "mimeType", "thumbnailUrl", "posterUrl", "proxyUrl", fps, duration, "frameCount", width, height, notes, "approvalStatus", "reviewStatus", "isLatest", "createdAt", "updatedAt", "isClientVisible", "sharedAt", "sharedById", "taskId") FROM stdin;
cmp6lpfmx000dua0gr256g7bd 1 \N \N /api/files/videos%2Fdfb19d65-30b1-4fec-b518-b013f8063b4a-UNG_102_01_0035_MINICUT.mp4 UNG_102_01_0035_MINICUT.mp4 13295042 video/mp4 \N \N \N 24 \N \N \N \N \N APPROVED PENDING t 2026-05-15 07:33:44.169 2026-05-15 07:45:23.112 t 2026-05-15 07:33:56.405 \N cmp6lonel0009ua0gsfb8meil
cmp6m2h1l000oua0gk6kp9kyv 1 \N \N /api/files/videos%2F92aa6ef6-600c-4676-985b-480ebaff6dc1-UNG_102_01_0035_MINICUT.mp4 UNG_102_01_0035_MINICUT.mp4 13295042 video/mp4 \N \N \N 24 \N \N \N \N \N NEEDS_CHANGES PENDING f 2026-05-15 07:43:52.521 2026-05-15 08:05:57.693 t 2026-05-15 07:43:58.453 \N cmp6m1tkq000kua0gazp1izqc
cmp6n30cr001yua0gijmi6ab8 1 \N \N /api/files/videos%2F5fc64845-6a95-42af-94cc-1fc647dfd712-UNG_102_01_0035_MINICUT.mp4 UNG_102_01_0035_MINICUT.mp4 13295042 video/mp4 \N \N \N 24 \N \N \N \N \N APPROVED PENDING t 2026-05-15 08:12:17.163 2026-05-15 08:17:01.574 t 2026-05-15 08:12:23.616 \N cmp6n2ndd001uua0gyrhinj0b
cmp6muvky001hua0gtvk9sx7j 2 \N \N /api/files/videos%2F9efc898f-c1fe-48ff-b300-8cdf2e0b86ee-UNG_102_01_0035_MINICUT.mp4 UNG_102_01_0035_MINICUT.mp4 13295042 video/mp4 \N \N \N 24 \N \N \N \N \N NEEDS_CHANGES PENDING t 2026-05-15 08:05:57.73 2026-05-15 08:20:37.084 t 2026-05-15 08:06:37.578 \N cmp6m1tkq000kua0gazp1izqc
\.
--
-- Name: _prisma_migrations _prisma_migrations_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public._prisma_migrations
ADD CONSTRAINT _prisma_migrations_pkey PRIMARY KEY (id);
--
-- Name: accounts accounts_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.accounts
ADD CONSTRAINT accounts_pkey PRIMARY KEY (id);
--
-- Name: annotations annotations_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.annotations
ADD CONSTRAINT annotations_pkey PRIMARY KEY (id);
--
-- Name: approvals approvals_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.approvals
ADD CONSTRAINT approvals_pkey PRIMARY KEY (id);
--
-- Name: assets assets_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.assets
ADD CONSTRAINT assets_pkey PRIMARY KEY (id);
--
-- Name: client_access client_access_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.client_access
ADD CONSTRAINT client_access_pkey PRIMARY KEY (id);
--
-- Name: clients clients_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.clients
ADD CONSTRAINT clients_pkey PRIMARY KEY (id);
--
-- Name: comment_replies comment_replies_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.comment_replies
ADD CONSTRAINT comment_replies_pkey PRIMARY KEY (id);
--
-- Name: comments comments_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.comments
ADD CONSTRAINT comments_pkey PRIMARY KEY (id);
--
-- Name: notifications notifications_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.notifications
ADD CONSTRAINT notifications_pkey PRIMARY KEY (id);
--
-- Name: projects projects_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.projects
ADD CONSTRAINT projects_pkey PRIMARY KEY (id);
--
-- Name: review_sessions review_sessions_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.review_sessions
ADD CONSTRAINT review_sessions_pkey PRIMARY KEY (id);
--
-- Name: sessions sessions_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.sessions
ADD CONSTRAINT sessions_pkey PRIMARY KEY (id);
--
-- Name: shots shots_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.shots
ADD CONSTRAINT shots_pkey PRIMARY KEY (id);
--
-- Name: tasks tasks_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.tasks
ADD CONSTRAINT tasks_pkey PRIMARY KEY (id);
--
-- Name: users users_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.users
ADD CONSTRAINT users_pkey PRIMARY KEY (id);
--
-- Name: versions versions_pkey; Type: CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.versions
ADD CONSTRAINT versions_pkey PRIMARY KEY (id);
--
-- Name: accounts_provider_providerAccountId_key; Type: INDEX; Schema: public; Owner: postgres
--
CREATE UNIQUE INDEX "accounts_provider_providerAccountId_key" ON public.accounts USING btree (provider, "providerAccountId");
--
-- Name: assets_projectId_assetCode_key; Type: INDEX; Schema: public; Owner: postgres
--
CREATE UNIQUE INDEX "assets_projectId_assetCode_key" ON public.assets USING btree ("projectId", "assetCode");
--
-- Name: client_access_userId_clientId_key; Type: INDEX; Schema: public; Owner: postgres
--
CREATE UNIQUE INDEX "client_access_userId_clientId_key" ON public.client_access USING btree ("userId", "clientId");
--
-- Name: clients_email_key; Type: INDEX; Schema: public; Owner: postgres
--
CREATE UNIQUE INDEX clients_email_key ON public.clients USING btree (email);
--
-- Name: projects_code_key; Type: INDEX; Schema: public; Owner: postgres
--
CREATE UNIQUE INDEX projects_code_key ON public.projects USING btree (code);
--
-- Name: review_sessions_token_key; Type: INDEX; Schema: public; Owner: postgres
--
CREATE UNIQUE INDEX review_sessions_token_key ON public.review_sessions USING btree (token);
--
-- Name: sessions_sessionToken_key; Type: INDEX; Schema: public; Owner: postgres
--
CREATE UNIQUE INDEX "sessions_sessionToken_key" ON public.sessions USING btree ("sessionToken");
--
-- Name: shots_projectId_shotCode_key; Type: INDEX; Schema: public; Owner: postgres
--
CREATE UNIQUE INDEX "shots_projectId_shotCode_key" ON public.shots USING btree ("projectId", "shotCode");
--
-- Name: users_email_key; Type: INDEX; Schema: public; Owner: postgres
--
CREATE UNIQUE INDEX users_email_key ON public.users USING btree (email);
--
-- Name: verification_tokens_identifier_token_key; Type: INDEX; Schema: public; Owner: postgres
--
CREATE UNIQUE INDEX verification_tokens_identifier_token_key ON public.verification_tokens USING btree (identifier, token);
--
-- Name: verification_tokens_token_key; Type: INDEX; Schema: public; Owner: postgres
--
CREATE UNIQUE INDEX verification_tokens_token_key ON public.verification_tokens USING btree (token);
--
-- Name: accounts accounts_userId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.accounts
ADD CONSTRAINT "accounts_userId_fkey" FOREIGN KEY ("userId") REFERENCES public.users(id) ON UPDATE CASCADE ON DELETE CASCADE;
--
-- Name: annotations annotations_authorId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.annotations
ADD CONSTRAINT "annotations_authorId_fkey" FOREIGN KEY ("authorId") REFERENCES public.users(id) ON UPDATE CASCADE ON DELETE SET NULL;
--
-- Name: annotations annotations_commentId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.annotations
ADD CONSTRAINT "annotations_commentId_fkey" FOREIGN KEY ("commentId") REFERENCES public.comments(id) ON UPDATE CASCADE ON DELETE SET NULL;
--
-- Name: annotations annotations_versionId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.annotations
ADD CONSTRAINT "annotations_versionId_fkey" FOREIGN KEY ("versionId") REFERENCES public.versions(id) ON UPDATE CASCADE ON DELETE CASCADE;
--
-- Name: approvals approvals_userId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.approvals
ADD CONSTRAINT "approvals_userId_fkey" FOREIGN KEY ("userId") REFERENCES public.users(id) ON UPDATE CASCADE ON DELETE SET NULL;
--
-- Name: approvals approvals_versionId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.approvals
ADD CONSTRAINT "approvals_versionId_fkey" FOREIGN KEY ("versionId") REFERENCES public.versions(id) ON UPDATE CASCADE ON DELETE CASCADE;
--
-- Name: assets assets_leadId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.assets
ADD CONSTRAINT "assets_leadId_fkey" FOREIGN KEY ("leadId") REFERENCES public.users(id) ON UPDATE CASCADE ON DELETE SET NULL;
--
-- Name: assets assets_projectId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.assets
ADD CONSTRAINT "assets_projectId_fkey" FOREIGN KEY ("projectId") REFERENCES public.projects(id) ON UPDATE CASCADE ON DELETE CASCADE;
--
-- Name: client_access client_access_clientId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.client_access
ADD CONSTRAINT "client_access_clientId_fkey" FOREIGN KEY ("clientId") REFERENCES public.clients(id) ON UPDATE CASCADE ON DELETE CASCADE;
--
-- Name: client_access client_access_userId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.client_access
ADD CONSTRAINT "client_access_userId_fkey" FOREIGN KEY ("userId") REFERENCES public.users(id) ON UPDATE CASCADE ON DELETE CASCADE;
--
-- Name: comment_replies comment_replies_authorId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.comment_replies
ADD CONSTRAINT "comment_replies_authorId_fkey" FOREIGN KEY ("authorId") REFERENCES public.users(id) ON UPDATE CASCADE ON DELETE SET NULL;
--
-- Name: comment_replies comment_replies_commentId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.comment_replies
ADD CONSTRAINT "comment_replies_commentId_fkey" FOREIGN KEY ("commentId") REFERENCES public.comments(id) ON UPDATE CASCADE ON DELETE CASCADE;
--
-- Name: comments comments_authorId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.comments
ADD CONSTRAINT "comments_authorId_fkey" FOREIGN KEY ("authorId") REFERENCES public.users(id) ON UPDATE CASCADE ON DELETE SET NULL;
--
-- Name: comments comments_versionId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.comments
ADD CONSTRAINT "comments_versionId_fkey" FOREIGN KEY ("versionId") REFERENCES public.versions(id) ON UPDATE CASCADE ON DELETE CASCADE;
--
-- Name: notifications notifications_userId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.notifications
ADD CONSTRAINT "notifications_userId_fkey" FOREIGN KEY ("userId") REFERENCES public.users(id) ON UPDATE CASCADE ON DELETE CASCADE;
--
-- Name: projects projects_clientId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.projects
ADD CONSTRAINT "projects_clientId_fkey" FOREIGN KEY ("clientId") REFERENCES public.clients(id) ON UPDATE CASCADE ON DELETE SET NULL;
--
-- Name: projects projects_producerId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.projects
ADD CONSTRAINT "projects_producerId_fkey" FOREIGN KEY ("producerId") REFERENCES public.users(id) ON UPDATE CASCADE ON DELETE SET NULL;
--
-- Name: projects projects_supervisorId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.projects
ADD CONSTRAINT "projects_supervisorId_fkey" FOREIGN KEY ("supervisorId") REFERENCES public.users(id) ON UPDATE CASCADE ON DELETE SET NULL;
--
-- Name: review_sessions review_sessions_projectId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.review_sessions
ADD CONSTRAINT "review_sessions_projectId_fkey" FOREIGN KEY ("projectId") REFERENCES public.projects(id) ON UPDATE CASCADE ON DELETE CASCADE;
--
-- Name: sessions sessions_userId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.sessions
ADD CONSTRAINT "sessions_userId_fkey" FOREIGN KEY ("userId") REFERENCES public.users(id) ON UPDATE CASCADE ON DELETE CASCADE;
--
-- Name: shots shots_artistId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.shots
ADD CONSTRAINT "shots_artistId_fkey" FOREIGN KEY ("artistId") REFERENCES public.users(id) ON UPDATE CASCADE ON DELETE SET NULL;
--
-- Name: shots shots_projectId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.shots
ADD CONSTRAINT "shots_projectId_fkey" FOREIGN KEY ("projectId") REFERENCES public.projects(id) ON UPDATE CASCADE ON DELETE CASCADE;
--
-- Name: tasks tasks_assetId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.tasks
ADD CONSTRAINT "tasks_assetId_fkey" FOREIGN KEY ("assetId") REFERENCES public.assets(id) ON UPDATE CASCADE ON DELETE CASCADE;
--
-- Name: tasks tasks_assignedArtistId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.tasks
ADD CONSTRAINT "tasks_assignedArtistId_fkey" FOREIGN KEY ("assignedArtistId") REFERENCES public.users(id) ON UPDATE CASCADE ON DELETE SET NULL;
--
-- Name: tasks tasks_createdById_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.tasks
ADD CONSTRAINT "tasks_createdById_fkey" FOREIGN KEY ("createdById") REFERENCES public.users(id) ON UPDATE CASCADE ON DELETE SET NULL;
--
-- Name: tasks tasks_projectId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.tasks
ADD CONSTRAINT "tasks_projectId_fkey" FOREIGN KEY ("projectId") REFERENCES public.projects(id) ON UPDATE CASCADE ON DELETE CASCADE;
--
-- Name: tasks tasks_shotId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.tasks
ADD CONSTRAINT "tasks_shotId_fkey" FOREIGN KEY ("shotId") REFERENCES public.shots(id) ON UPDATE CASCADE ON DELETE CASCADE;
--
-- Name: versions versions_artistId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.versions
ADD CONSTRAINT "versions_artistId_fkey" FOREIGN KEY ("artistId") REFERENCES public.users(id) ON UPDATE CASCADE ON DELETE SET NULL;
--
-- Name: versions versions_sharedById_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.versions
ADD CONSTRAINT "versions_sharedById_fkey" FOREIGN KEY ("sharedById") REFERENCES public.users(id) ON UPDATE CASCADE ON DELETE SET NULL;
--
-- Name: versions versions_shotId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.versions
ADD CONSTRAINT "versions_shotId_fkey" FOREIGN KEY ("shotId") REFERENCES public.shots(id) ON UPDATE CASCADE ON DELETE CASCADE;
--
-- Name: versions versions_taskId_fkey; Type: FK CONSTRAINT; Schema: public; Owner: postgres
--
ALTER TABLE ONLY public.versions
ADD CONSTRAINT "versions_taskId_fkey" FOREIGN KEY ("taskId") REFERENCES public.tasks(id) ON UPDATE CASCADE ON DELETE CASCADE;
--
-- Name: SCHEMA public; Type: ACL; Schema: -; Owner: postgres
--
REVOKE USAGE ON SCHEMA public FROM PUBLIC;
--
-- PostgreSQL database dump complete
--
\unrestrict 1whWgtdsF6xBXiPHGFiuC9Ygoef9RJWmzx1RVEWvPdonWRifHup6QOcEmo1uBHI