fix: add localized fields to FDCtaSideImageBlock, FDButton system, dark hover fix

This commit is contained in:
Jeffrey 2026-02-19 20:53:47 +01:00
parent f1462cf7c3
commit b36f7ebe6e
7 changed files with 31216 additions and 24 deletions

BIN
src/blocks.zip Normal file

Binary file not shown.

View File

@ -12,23 +12,27 @@ export const FDCtaSideImageBlock: Block = {
name: 'heading', name: 'heading',
type: 'text', type: 'text',
required: true, required: true,
localized: true,
label: 'Rubrik', label: 'Rubrik',
}, },
{ {
name: 'body', name: 'body',
type: 'textarea', type: 'textarea',
required: true, required: true,
localized: true,
label: 'Brödtext', label: 'Brödtext',
}, },
{ {
name: 'ctaText', name: 'ctaText',
type: 'text', type: 'text',
localized: true,
label: 'CTA-knapp text', label: 'CTA-knapp text',
defaultValue: 'Läs mer', defaultValue: 'Läs mer',
}, },
{ {
name: 'ctaLink', name: 'ctaLink',
type: 'text', type: 'text',
localized: true,
label: 'CTA-knapp länk', label: 'CTA-knapp länk',
defaultValue: '#', defaultValue: '#',
}, },

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,47 @@
import { MigrateUpArgs, MigrateDownArgs, sql } from '@payloadcms/db-postgres'
export async function up({ db, payload, req }: MigrateUpArgs): Promise<void> {
await db.execute(sql`
ALTER TABLE "pages_blocks_fd_cta_side_image" ALTER COLUMN "theme" SET DATA TYPE text;
ALTER TABLE "pages_blocks_fd_cta_side_image" ALTER COLUMN "theme" SET DEFAULT 'dark'::text;
DROP TYPE "public"."enum_pages_blocks_fd_cta_side_image_theme";
CREATE TYPE "public"."enum_pages_blocks_fd_cta_side_image_theme" AS ENUM('light', 'dark');
ALTER TABLE "pages_blocks_fd_cta_side_image" ALTER COLUMN "theme" SET DEFAULT 'dark'::"public"."enum_pages_blocks_fd_cta_side_image_theme";
ALTER TABLE "pages_blocks_fd_cta_side_image" ALTER COLUMN "theme" SET DATA TYPE "public"."enum_pages_blocks_fd_cta_side_image_theme" USING "theme"::"public"."enum_pages_blocks_fd_cta_side_image_theme";
ALTER TABLE "_pages_v_blocks_fd_cta_side_image" ALTER COLUMN "theme" SET DATA TYPE text;
ALTER TABLE "_pages_v_blocks_fd_cta_side_image" ALTER COLUMN "theme" SET DEFAULT 'dark'::text;
DROP TYPE "public"."enum__pages_v_blocks_fd_cta_side_image_theme";
CREATE TYPE "public"."enum__pages_v_blocks_fd_cta_side_image_theme" AS ENUM('light', 'dark');
ALTER TABLE "_pages_v_blocks_fd_cta_side_image" ALTER COLUMN "theme" SET DEFAULT 'dark'::"public"."enum__pages_v_blocks_fd_cta_side_image_theme";
ALTER TABLE "_pages_v_blocks_fd_cta_side_image" ALTER COLUMN "theme" SET DATA TYPE "public"."enum__pages_v_blocks_fd_cta_side_image_theme" USING "theme"::"public"."enum__pages_v_blocks_fd_cta_side_image_theme";
ALTER TABLE "pages_blocks_fd_cta_side_image" DROP COLUMN "custom_background_color";
ALTER TABLE "pages_blocks_fd_cta_side_image" DROP COLUMN "custom_text_light";
ALTER TABLE "pages_blocks_fd_cta_side_image" DROP COLUMN "image_overlay";
ALTER TABLE "pages_blocks_fd_cta_side_image" DROP COLUMN "image_overlay_opacity";
ALTER TABLE "_pages_v_blocks_fd_cta_side_image" DROP COLUMN "custom_background_color";
ALTER TABLE "_pages_v_blocks_fd_cta_side_image" DROP COLUMN "custom_text_light";
ALTER TABLE "_pages_v_blocks_fd_cta_side_image" DROP COLUMN "image_overlay";
ALTER TABLE "_pages_v_blocks_fd_cta_side_image" DROP COLUMN "image_overlay_opacity";
DROP TYPE "public"."enum_pages_blocks_fd_cta_side_image_image_overlay";
DROP TYPE "public"."enum_pages_blocks_fd_cta_side_image_image_overlay_opacity";
DROP TYPE "public"."enum__pages_v_blocks_fd_cta_side_image_image_overlay";
DROP TYPE "public"."enum__pages_v_blocks_fd_cta_side_image_image_overlay_opacity";`)
}
export async function down({ db, payload, req }: MigrateDownArgs): Promise<void> {
await db.execute(sql`
CREATE TYPE "public"."enum_pages_blocks_fd_cta_side_image_image_overlay" AS ENUM('none', 'navy', 'yellow', 'black');
CREATE TYPE "public"."enum_pages_blocks_fd_cta_side_image_image_overlay_opacity" AS ENUM('20', '30', '50', '70');
CREATE TYPE "public"."enum__pages_v_blocks_fd_cta_side_image_image_overlay" AS ENUM('none', 'navy', 'yellow', 'black');
CREATE TYPE "public"."enum__pages_v_blocks_fd_cta_side_image_image_overlay_opacity" AS ENUM('20', '30', '50', '70');
ALTER TYPE "public"."enum_pages_blocks_fd_cta_side_image_theme" ADD VALUE 'custom';
ALTER TYPE "public"."enum__pages_v_blocks_fd_cta_side_image_theme" ADD VALUE 'custom';
ALTER TABLE "pages_blocks_fd_cta_side_image" ADD COLUMN "custom_background_color" varchar;
ALTER TABLE "pages_blocks_fd_cta_side_image" ADD COLUMN "custom_text_light" boolean DEFAULT true;
ALTER TABLE "pages_blocks_fd_cta_side_image" ADD COLUMN "image_overlay" "enum_pages_blocks_fd_cta_side_image_image_overlay" DEFAULT 'none';
ALTER TABLE "pages_blocks_fd_cta_side_image" ADD COLUMN "image_overlay_opacity" "enum_pages_blocks_fd_cta_side_image_image_overlay_opacity" DEFAULT '30';
ALTER TABLE "_pages_v_blocks_fd_cta_side_image" ADD COLUMN "custom_background_color" varchar;
ALTER TABLE "_pages_v_blocks_fd_cta_side_image" ADD COLUMN "custom_text_light" boolean DEFAULT true;
ALTER TABLE "_pages_v_blocks_fd_cta_side_image" ADD COLUMN "image_overlay" "enum__pages_v_blocks_fd_cta_side_image_image_overlay" DEFAULT 'none';
ALTER TABLE "_pages_v_blocks_fd_cta_side_image" ADD COLUMN "image_overlay_opacity" "enum__pages_v_blocks_fd_cta_side_image_image_overlay_opacity" DEFAULT '30';`)
}

View File

@ -8,6 +8,7 @@ import * as migration_20260218_130902 from './20260218_130902';
import * as migration_20260218_145924 from './20260218_145924'; import * as migration_20260218_145924 from './20260218_145924';
import * as migration_20260219_175400 from './20260219_175400'; import * as migration_20260219_175400 from './20260219_175400';
import * as migration_20260219_184333 from './20260219_184333'; import * as migration_20260219_184333 from './20260219_184333';
import * as migration_20260219_194949 from './20260219_194949';
export const migrations = [ export const migrations = [
{ {
@ -58,6 +59,11 @@ export const migrations = [
{ {
up: migration_20260219_184333.up, up: migration_20260219_184333.up,
down: migration_20260219_184333.down, down: migration_20260219_184333.down,
name: '20260219_184333' name: '20260219_184333',
},
{
up: migration_20260219_194949.up,
down: migration_20260219_194949.down,
name: '20260219_194949'
}, },
]; ];

View File

@ -298,25 +298,9 @@ export interface FDCtaSideImageBlock {
body: string; body: string;
ctaText?: string | null; ctaText?: string | null;
ctaLink?: string | null; ctaLink?: string | null;
image: number | Media; image?: (number | null) | Media;
imagePosition?: ('right' | 'left') | null; imagePosition?: ('right' | 'left') | null;
theme?: ('light' | 'dark' | 'custom') | null; theme?: ('light' | 'dark') | null;
/**
* Valfri HEX-färg, t.ex. #1a3a5c eller #fecc02
*/
customBackgroundColor?: string | null;
/**
* Aktivera för vit text mörk anpassad bakgrund
*/
customTextLight?: boolean | null;
/**
* Tonad overlay över bilden med varumärkesfärg
*/
imageOverlay?: ('none' | 'navy' | 'yellow' | 'black') | null;
/**
* Hur stark overlay över bilden
*/
imageOverlayOpacity?: ('20' | '30' | '50' | '70') | null;
id?: string | null; id?: string | null;
blockName?: string | null; blockName?: string | null;
blockType: 'fdCtaSideImage'; blockType: 'fdCtaSideImage';
@ -1748,10 +1732,6 @@ export interface FDCtaSideImageBlockSelect<T extends boolean = true> {
image?: T; image?: T;
imagePosition?: T; imagePosition?: T;
theme?: T; theme?: T;
customBackgroundColor?: T;
customTextLight?: T;
imageOverlay?: T;
imageOverlayOpacity?: T;
id?: T; id?: T;
blockName?: T; blockName?: T;
} }

File diff suppressed because one or more lines are too long