wwwfiberdirekt/src/blocks/FDNewsletterBlock/config.ts
2026-02-20 17:34:24 +01:00

126 lines
3.2 KiB
TypeScript

import type { Block } from 'payload'
export const FDNewsletterBlock: Block = {
slug: 'fdNewsletter',
imageURL: '/block-thumbnails/fd-newsletter.png',
imageAltText: 'FD Nyhetsbrev',
interfaceName: 'FDNewsletterBlock',
labels: {
singular: 'FD Nyhetsbrev',
plural: 'FD Nyhetsbrev',
},
fields: [
// --- Content ---
{
name: 'heading',
type: 'text',
localized: true,
label: 'Rubrik',
defaultValue: 'Håll dig uppdaterad',
},
{
name: 'description',
type: 'textarea',
localized: true,
label: 'Beskrivning',
defaultValue: 'Prenumerera på vårt nyhetsbrev för att få de senaste nyheterna om fiber, cloud och IT-infrastruktur.',
},
// --- Form settings ---
{
name: 'submitEndpoint',
type: 'text',
label: 'Formulärets endpoint-URL',
required: true,
admin: {
description:
'URL dit formulärdata skickas (POST). T.ex. /api/newsletter, en Lime CRM webhook, eller en tredjeparts-URL.',
},
},
{
name: 'buttonText',
type: 'text',
localized: true,
label: 'Knapptext',
defaultValue: 'Prenumerera',
},
{
name: 'successMessage',
type: 'text',
localized: true,
label: 'Bekräftelsemeddelande',
defaultValue: 'Tack! Du är nu prenumerant.',
},
{
name: 'consentText',
type: 'text',
localized: true,
label: 'Samtycketext',
defaultValue: 'Jag godkänner att mina uppgifter används enligt vår integritetspolicy.',
admin: {
description: 'Text bredvid samtyckeskryssrutan (GDPR)',
},
},
{
name: 'privacyPolicyLink',
type: 'text',
label: 'Länk till integritetspolicy',
defaultValue: '/integritetspolicy',
},
// --- Extra fields toggle ---
{
name: 'collectName',
type: 'checkbox',
label: 'Samla in namn',
defaultValue: false,
admin: {
description: 'Lägg till ett namnfält i formuläret',
},
},
{
name: 'collectCompany',
type: 'checkbox',
label: 'Samla in företagsnamn',
defaultValue: false,
admin: {
description: 'Lägg till ett fält för företagsnamn',
},
},
// --- Layout ---
{
name: 'layout',
type: 'select',
label: 'Layout',
defaultValue: 'inline',
options: [
{ label: 'Inline (fält + knapp på en rad)', value: 'inline' },
{ label: 'Staplad (fält ovanför knapp)', value: 'stacked' },
{ label: 'Kort (centrerat med bakgrund)', value: 'card' },
],
},
// --- Style ---
{
name: 'sectionBackground',
type: 'select',
label: 'Sektionsbakgrund',
defaultValue: 'navy',
options: [
{ label: 'Vit', value: 'white' },
{ label: 'Navy', value: 'navy' },
{ label: 'Grå', value: 'gray' },
{ label: 'Gul', value: 'yellow' },
],
},
{
name: 'textColor',
type: 'select',
label: 'Textfärg',
defaultValue: 'auto',
options: [
{ label: 'Automatisk', value: 'auto' },
{ label: 'Navy', value: 'navy' },
{ label: 'Vit', value: 'white' },
],
},
],
}