First one #8

Merged
phoenix merged 42 commits from get_it_going into v0.2.0 2026-06-13 19:49:15 -04:00
2 changed files with 61 additions and 49 deletions
Showing only changes of commit 876293ece2 - Show all commits
+12
View File
@@ -0,0 +1,12 @@
-- Add migration script here
CREATE EXTENSION IF NOT EXISTS pgcrypto;
CREATE EXTENSION IF NOT EXISTS "uuid-ossp";
CREATE TABLE IF NOT EXISTS "contacts" (
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
phone_number TEXT NOT NULL,
user_id UUID NOT NULL,
first_name TEXT NULL,
last_name TEXT NULL,
nickname TEXT NULL
);
+49 -49
View File
@@ -1,49 +1,49 @@
CREATE EXTENSION IF NOT EXISTS "uuid-ossp"; -- CREATE EXTENSION IF NOT EXISTS "uuid-ossp";
--
DROP TABLE IF EXISTS contacts CASCADE; -- DROP TABLE IF EXISTS contacts CASCADE;
DROP TABLE IF EXISTS messages CASCADE; -- DROP TABLE IF EXISTS messages CASCADE;
DROP TABLE IF EXISTS scheduled_messages CASCADE; -- DROP TABLE IF EXISTS scheduled_messages CASCADE;
DROP TABLE IF EXISTS scheduled_message_events CASCADE; -- DROP TABLE IF EXISTS scheduled_message_events CASCADE;
DROP TABLE IF EXISTS message_event_responses CASCADE; -- DROP TABLE IF EXISTS message_event_responses CASCADE;
--
CREATE TABLE IF NOT EXISTS contacts ( -- CREATE TABLE IF NOT EXISTS contacts (
id UUID PRIMARY KEY DEFAULT uuid_generate_v4(), -- id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
phone_number TEXT NOT NULL, -- phone_number TEXT NOT NULL,
user_id UUID NOT NULL, -- user_id UUID NOT NULL,
first_name TEXT NULL, -- first_name TEXT NULL,
last_name TEXT NULL, -- last_name TEXT NULL,
nickname TEXT NULL -- nickname TEXT NULL
); -- );
--
CREATE TABLE IF NOT EXISTS messages ( -- CREATE TABLE IF NOT EXISTS messages (
id UUID PRIMARY KEY DEFAULT uuid_generate_v4(), -- id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
content TEXT NOT NULL, -- content TEXT NOT NULL,
user_id UUID NOT NULL -- user_id UUID NOT NULL
); -- );
--
CREATE TABLE IF NOT EXISTS scheduled_messages ( -- CREATE TABLE IF NOT EXISTS scheduled_messages (
id UUID PRIMARY KEY DEFAULT uuid_generate_v4(), -- id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
scheduled timestamptz NOT NULL, -- scheduled timestamptz NOT NULL,
created timestamptz DEFAULT now(), -- created timestamptz DEFAULT now(),
status TEXT CHECK (status IN ('PENDING', 'READY', 'PROCESSING', 'DONE')), -- status TEXT CHECK (status IN ('PENDING', 'READY', 'PROCESSING', 'DONE')),
user_id UUID NOT NULL -- user_id UUID NOT NULL
); -- );
--
CREATE TABLE IF NOT EXISTS scheduled_message_events ( -- CREATE TABLE IF NOT EXISTS scheduled_message_events (
id UUID PRIMARY KEY DEFAULT uuid_generate_v4(), -- id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
contact_id UUID NOT NULL, -- contact_id UUID NOT NULL,
message_id UUID NOT NULL, -- message_id UUID NOT NULL,
scheduled_message_id UUID NOT NULL, -- scheduled_message_id UUID NOT NULL,
created timestamptz DEFAULT now() -- created timestamptz DEFAULT now()
); -- );
--
CREATE TABLE IF NOT EXISTS message_event_responses ( -- CREATE TABLE IF NOT EXISTS message_event_responses (
id UUID PRIMARY KEY DEFAULT uuid_generate_v4(), -- id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
scheduled_message_event_id UUID NULL, -- scheduled_message_event_id UUID NULL,
response JSONB NOT NULL, -- response JSONB NOT NULL,
user_id UUID NOT NULL, -- user_id UUID NOT NULL,
sent timestamptz NOT NULL, -- sent timestamptz NOT NULL,
contact_id UUID NULL, -- contact_id UUID NULL,
message_id UUID NULL, -- message_id UUID NULL,
status TEXT CHECK (status IN ('INSTANT', 'SCHEDULED')) -- status TEXT CHECK (status IN ('INSTANT', 'SCHEDULED'))
); -- );