fix(hero): replace literal \n in titles; fix hero_slides table schema (varchar id)
Some checks are pending
CI / Type Check (push) Waiting to run
CI / Lint (push) Waiting to run
CI / Unit Tests (push) Waiting to run
Deploy / Build & Push Image (push) Waiting to run
Deploy / Deploy to VPS (push) Blocked by required conditions

This commit is contained in:
Vadym Samoilenko 2026-06-04 13:33:55 +01:00
parent abfc8de91c
commit 76c487401d
2 changed files with 17 additions and 15 deletions

View file

@ -1,19 +1,20 @@
-- Migration: add home_page_hero_slides table for CMS-managed hero slider
CREATE TABLE IF NOT EXISTS home_page_hero_slides (
id serial PRIMARY KEY,
-- IMPORTANT: id must be character varying (not serial) — Payload generates string IDs
DROP TABLE IF EXISTS home_page_hero_slides CASCADE;
CREATE TABLE home_page_hero_slides (
_order integer NOT NULL,
_parent_id integer NOT NULL REFERENCES home_page(id) ON DELETE CASCADE,
id character varying NOT NULL,
background_image_id integer REFERENCES media(id) ON DELETE SET NULL,
background_image_url varchar,
type varchar,
title varchar,
subtitle varchar,
cta_label varchar,
cta_href varchar,
updated_at timestamp with time zone,
created_at timestamp with time zone
background_image_url character varying,
type character varying,
title character varying,
subtitle character varying,
cta_label character varying,
cta_href character varying,
updated_at timestamp with time zone DEFAULT now(),
created_at timestamp with time zone DEFAULT now(),
CONSTRAINT home_page_hero_slides_pkey PRIMARY KEY (id)
);
CREATE INDEX IF NOT EXISTS home_page_hero_slides_parent_idx ON home_page_hero_slides (_parent_id);
CREATE INDEX IF NOT EXISTS home_page_hero_slides_order_idx ON home_page_hero_slides (_order);
-- Add background_image_url if table already exists (idempotent)
ALTER TABLE home_page_hero_slides ADD COLUMN IF NOT EXISTS background_image_url varchar;
CREATE INDEX home_page_hero_slides_order_idx ON home_page_hero_slides (_order);
CREATE INDEX home_page_hero_slides_parent_id_idx ON home_page_hero_slides (_parent_id);

View file

@ -99,7 +99,8 @@ export function HeroSlider({ slides: slidesProp }: { slides?: SlideData[] }) {
}
}, [next, paused])
const slide = slides[current]!
const rawSlide = slides[current]!
const slide = { ...rawSlide, title: rawSlide.title.replace(/\\n/g, '\n') }
const isBrand = slide.type === 'brand'
return (