Add ACMCC app source, Supabase backend, and project config

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-06-01 20:19:26 -04:00
parent 313b51b412
commit 183fe0a93c
1422 changed files with 259271 additions and 0 deletions
@@ -0,0 +1,37 @@
CREATE TABLE public.mailchimp_configs (
id UUID NOT NULL DEFAULT gen_random_uuid() PRIMARY KEY,
association_id UUID NOT NULL UNIQUE REFERENCES public.associations(id) ON DELETE CASCADE,
api_key TEXT NOT NULL,
server_prefix TEXT NOT NULL,
audience_id TEXT,
audience_name TEXT,
last_sync_at TIMESTAMP WITH TIME ZONE,
last_sync_status TEXT,
last_sync_count INTEGER DEFAULT 0,
last_sync_error TEXT,
created_by UUID,
created_at TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT now(),
updated_at TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT now()
);
ALTER TABLE public.mailchimp_configs ENABLE ROW LEVEL SECURITY;
CREATE POLICY "Staff can view mailchimp configs"
ON public.mailchimp_configs FOR SELECT
USING (public.has_role(auth.uid(), 'admin'::public.app_role) OR public.has_role(auth.uid(), 'manager'::public.app_role));
CREATE POLICY "Staff can insert mailchimp configs"
ON public.mailchimp_configs FOR INSERT
WITH CHECK (public.has_role(auth.uid(), 'admin'::public.app_role) OR public.has_role(auth.uid(), 'manager'::public.app_role));
CREATE POLICY "Staff can update mailchimp configs"
ON public.mailchimp_configs FOR UPDATE
USING (public.has_role(auth.uid(), 'admin'::public.app_role) OR public.has_role(auth.uid(), 'manager'::public.app_role));
CREATE POLICY "Staff can delete mailchimp configs"
ON public.mailchimp_configs FOR DELETE
USING (public.has_role(auth.uid(), 'admin'::public.app_role) OR public.has_role(auth.uid(), 'manager'::public.app_role));
CREATE TRIGGER update_mailchimp_configs_updated_at
BEFORE UPDATE ON public.mailchimp_configs
FOR EACH ROW EXECUTE FUNCTION public.update_updated_at_column();