CREATE TABLE pack_checklist (
id BIGINT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
rider TEXT NOT NULL,
item_id TEXT NOT NULL,
checked_at TIMESTAMPTZ DEFAULT now(),
UNIQUE(rider, item_id)
);
CREATE TABLE pack_custom_items (
id BIGINT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
item_id TEXT NOT NULL UNIQUE,
cat_idx INT NOT NULL,
name_en TEXT NOT NULL,
name_fr TEXT,
item_type TEXT DEFAULT 'personal',
max_needed INT DEFAULT 1,
created_at TIMESTAMPTZ DEFAULT now()
);
ALTER TABLE pack_checklist ENABLE ROW LEVEL SECURITY;
ALTER TABLE pack_custom_items ENABLE ROW LEVEL SECURITY;
CREATE POLICY "public" ON pack_checklist FOR ALL USING (true) WITH CHECK (true);
CREATE POLICY "public" ON pack_custom_items FOR ALL USING (true) WITH CHECK (true);
ALTER PUBLICATION supabase_realtime ADD TABLE pack_checklist;
ALTER PUBLICATION supabase_realtime ADD TABLE pack_custom_items;