From f579368b13e1df9e3f0d66f923b0cb0248822049 Mon Sep 17 00:00:00 2001 From: bender Date: Fri, 17 Apr 2026 21:19:20 +0000 Subject: [PATCH] Switch to version 2: added registry/schemas/FeatureBento.schema.json --- registry/schemas/FeatureBento.schema.json | 38 +++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 registry/schemas/FeatureBento.schema.json diff --git a/registry/schemas/FeatureBento.schema.json b/registry/schemas/FeatureBento.schema.json new file mode 100644 index 0000000..ce2c166 --- /dev/null +++ b/registry/schemas/FeatureBento.schema.json @@ -0,0 +1,38 @@ +{ + "name": "FeatureBento", + "propsSchema": { + "features": "Array<{ title: string, description: string, button?: { text: string, href?: string }, bentoComponent: ... }> - CRITICAL: Each feature MUST use a DIFFERENT bentoComponent type (never repeat same type). Available types: 'globe' | 'icon-info-cards' | 'animated-bar-chart' | '3d-stack-cards' | '3d-task-list' | 'orbiting-icons' | 'marquee' | 'map' | 'line-chart' | '3d-card-grid' | 'phone' | 'chat' | 'reveal-icon' | 'timeline' | 'media-stack', plus bentoComponent-specific props", + "carouselMode?": "'auto' | 'buttons' (default: 'buttons')", + "animationType": "'none' | 'opacity' | 'slide-up' | 'blur-reveal'", + "title": "string", + "titleSegments?": "Array<{ type: 'text', content: string } | { type: 'image', src: string, alt?: string }>", + "description": "string", + "tag?": "string", + "tagIcon?": "LucideIcon", + "tagAnimation?": "'none' | 'opacity' | 'slide-up' | 'blur-reveal'", + "buttons?": "Array<{ text: string, href?: string, onClick?: () => void }>", + "buttonAnimation?": "'none' | 'opacity' | 'slide-up' | 'blur-reveal'", + "textboxLayout": "'default' | 'split' | 'split-actions' | 'split-description' | 'inline-image'", + "useInvertedBackground": "boolean", + "ariaLabel?": "string (default: 'Feature section')", + "className?": "string", + "containerClassName?": "string", + "cardClassName?": "string", + "textBoxTitleClassName?": "string", + "textBoxTitleImageWrapperClassName?": "string", + "textBoxTitleImageClassName?": "string", + "textBoxDescriptionClassName?": "string", + "cardTitleClassName?": "string", + "cardDescriptionClassName?": "string", + "cardButtonClassName?": "string", + "cardButtonTextClassName?": "string", + "gridClassName?": "string", + "carouselClassName?": "string", + "controlsClassName?": "string", + "textBoxClassName?": "string", + "textBoxTagClassName?": "string", + "textBoxButtonContainerClassName?": "string", + "textBoxButtonClassName?": "string", + "textBoxButtonTextClassName?": "string" + } +}