chatbot-ui/supabase/migrations/20240108234543_add_folders.sql

42 lines
999 B
SQL

--------------- FOLDERS ---------------
-- TABLE --
CREATE TABLE IF NOT EXISTS folders (
-- ID
id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
-- RELATIONSHIPS
user_id UUID NOT NULL REFERENCES auth.users(id) ON DELETE CASCADE,
workspace_id UUID NOT NULL REFERENCES workspaces(id) ON DELETE CASCADE,
-- METADATA
created_at TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMPTZ,
-- REQUIRED
name TEXT NOT NULL,
description TEXT NOT NULL,
type TEXT NOT NULL
);
-- INDEXES --
CREATE INDEX folders_user_id_idx ON folders(user_id);
CREATE INDEX folders_workspace_id_idx ON folders(workspace_id);
-- RLS --
ALTER TABLE folders ENABLE ROW LEVEL SECURITY;
CREATE POLICY "Allow full access to own folders"
ON folders
USING (user_id = auth.uid())
WITH CHECK (user_id = auth.uid());
-- TRIGGERS --
CREATE TRIGGER update_folders_updated_at
BEFORE UPDATE ON folders
FOR EACH ROW
EXECUTE PROCEDURE update_updated_at_column();