diff --git a/migrations/0020_kvytky_to_payments_richtext.sql b/migrations/0020_kvytky_to_payments_richtext.sql index 434fa85..cab45c8 100644 --- a/migrations/0020_kvytky_to_payments_richtext.sql +++ b/migrations/0020_kvytky_to_payments_richtext.sql @@ -3,7 +3,7 @@ UPDATE "header" SET "cta_href" = '/payments' WHERE "cta_href" = '/kvytky'; UPDATE "birthday_page_pricing_packages" SET "cta_href" = '/payments' WHERE "cta_href" = '/kvytky'; -- Change heroDescription, featureText, bottomText from varchar to jsonb --- (existing text is incompatible with Lexical JSON; fields reset to NULL — re-enter via admin) +-- Must drop DEFAULT first, then change type (PostgreSQL can't cast text default to jsonb) DO $$ BEGIN IF EXISTS ( @@ -11,6 +11,7 @@ BEGIN WHERE table_name = 'group_visits_page' AND column_name = 'hero_description' AND data_type = 'character varying' ) THEN + ALTER TABLE "group_visits_page" ALTER COLUMN "hero_description" DROP DEFAULT; ALTER TABLE "group_visits_page" ALTER COLUMN "hero_description" TYPE jsonb USING NULL; END IF; @@ -19,6 +20,7 @@ BEGIN WHERE table_name = 'group_visits_page' AND column_name = 'feature_text' AND data_type = 'character varying' ) THEN + ALTER TABLE "group_visits_page" ALTER COLUMN "feature_text" DROP DEFAULT; ALTER TABLE "group_visits_page" ALTER COLUMN "feature_text" TYPE jsonb USING NULL; END IF; @@ -27,6 +29,7 @@ BEGIN WHERE table_name = 'group_visits_page' AND column_name = 'bottom_text' AND data_type = 'character varying' ) THEN + ALTER TABLE "group_visits_page" ALTER COLUMN "bottom_text" DROP DEFAULT; ALTER TABLE "group_visits_page" ALTER COLUMN "bottom_text" TYPE jsonb USING NULL; END IF; END $$; @@ -38,6 +41,7 @@ BEGIN WHERE table_name = '_group_visits_page_v' AND column_name = 'version_hero_description' AND data_type = 'character varying' ) THEN + ALTER TABLE "_group_visits_page_v" ALTER COLUMN "version_hero_description" DROP DEFAULT; ALTER TABLE "_group_visits_page_v" ALTER COLUMN "version_hero_description" TYPE jsonb USING NULL; END IF; @@ -46,6 +50,7 @@ BEGIN WHERE table_name = '_group_visits_page_v' AND column_name = 'version_feature_text' AND data_type = 'character varying' ) THEN + ALTER TABLE "_group_visits_page_v" ALTER COLUMN "version_feature_text" DROP DEFAULT; ALTER TABLE "_group_visits_page_v" ALTER COLUMN "version_feature_text" TYPE jsonb USING NULL; END IF; @@ -54,6 +59,7 @@ BEGIN WHERE table_name = '_group_visits_page_v' AND column_name = 'version_bottom_text' AND data_type = 'character varying' ) THEN + ALTER TABLE "_group_visits_page_v" ALTER COLUMN "version_bottom_text" DROP DEFAULT; ALTER TABLE "_group_visits_page_v" ALTER COLUMN "version_bottom_text" TYPE jsonb USING NULL; END IF; END $$;