Files
mintel.me/apps/web/src/payload/blocks/ComparisonRowBlock.ts
Marc Mintel 11f735bbdf
Some checks failed
Build & Deploy / 🔍 Prepare (push) Successful in 16s
Build & Deploy / 🏗️ Build (push) Failing after 6m58s
Build & Deploy / 🚀 Deploy (push) Has been skipped
Build & Deploy / 🧪 QA (push) Has been skipped
Build & Deploy / 🧪 Post-Deploy Verification (push) Has been skipped
Build & Deploy / 🔔 Notify (push) Successful in 1s
fix: resolve admin white screen via static ChatWindowProvider import
- Statically declare ChatWindowProvider in payload.config.ts admin.components.providers
- Regenerate importMap.js with correct component mappings
- Update Dockerfile to support _at-mintel monorepo sync for local builds
- Add .gitignore entries for manual build artifacts
- Update blocks and collections (payload-ai integration updates)
- Sync pnpm-lock.yaml
2026-03-07 11:47:52 +01:00

103 lines
2.6 KiB
TypeScript

import { MintelBlock } from "./types";
import type { Block } from "payload";
export const ComparisonRowBlock: MintelBlock = {
slug: "comparisonRow",
labels: {
singular: "Comparison Row",
plural: "Comparison Rows",
},
admin: {
group: "MDX Components",
},
ai: {
name: "ComparisonRow",
description:
'Side-by-side comparison: negative "Standard" approach vs positive "Mintel" approach. Props include showShare boolean.',
usageExample: `<ComparisonRow
description="Architektur-Vergleich"
negativeLabel="Legacy CMS"
negativeText="Langsame Datenbankabfragen, verwundbare Plugins."
positiveLabel="Mintel Stack"
positiveText="Statische Generierung, perfekte Sicherheit."
showShare={true`,
},
fields: [
{
name: "description",
type: "text",
admin: {
description: "Optional overarching description for the comparison.",
components: {
afterInput: [
"@mintel/payload-ai/components/FieldGenerators/AiFieldButton#AiFieldButton",
],
},
},
},
{
name: "negativeLabel",
type: "text",
required: true,
defaultValue: "Legacy",
admin: {
components: {
afterInput: [
"@mintel/payload-ai/components/FieldGenerators/AiFieldButton#AiFieldButton",
],
},
description: "Geben Sie den Text für negativeLabel ein.",
},
},
{
name: "negativeText",
type: "text",
required: true,
admin: {
components: {
afterInput: [
"@mintel/payload-ai/components/FieldGenerators/AiFieldButton#AiFieldButton",
],
},
description: "Geben Sie den Text für negativeText ein.",
},
},
{
name: "positiveLabel",
type: "text",
required: true,
defaultValue: "Mintel Stack",
admin: {
components: {
afterInput: [
"@mintel/payload-ai/components/FieldGenerators/AiFieldButton#AiFieldButton",
],
},
description: "Geben Sie den Text für positiveLabel ein.",
},
},
{
name: "positiveText",
type: "text",
required: true,
admin: {
components: {
afterInput: [
"@mintel/payload-ai/components/FieldGenerators/AiFieldButton#AiFieldButton",
],
},
description: "Geben Sie den Text für positiveText ein.",
},
},
{
name: "reverse",
type: "checkbox",
defaultValue: false,
admin: {
description: "Swap the visual order of the positive/negative cards?",
},
},
],
};