-- Create customers table CREATE TABLE IF NOT EXISTS customers ( id BIGINT PRIMARY KEY GENERATED ALWAYS AS IDENTITY, full_name TEXT NOT NULL, email TEXT, phone TEXT, address TEXT, notes TEXT, created_at TIMESTAMP WITH TIME ZONE DEFAULT timezone('utc'::text, now()) NOT NULL, updated_at TIMESTAMP WITH TIME ZONE DEFAULT timezone('utc'::text, now()) NOT NULL ); -- Enable Row Level Security ALTER TABLE customers ENABLE ROW LEVEL SECURITY; -- Policies -- 1. Admin read access CREATE POLICY "Admins can view customers" ON customers FOR SELECT USING (auth.role() = 'authenticated'); -- 2. Admin insert access CREATE POLICY "Admins can insert customers" ON customers FOR INSERT WITH CHECK (auth.role() = 'authenticated'); -- 3. Admin update access CREATE POLICY "Admins can update customers" ON customers FOR UPDATE USING (auth.role() = 'authenticated'); -- 4. Admin delete access CREATE POLICY "Admins can delete customers" ON customers FOR DELETE USING (auth.role() = 'authenticated');