{"success":true,"data":{"block":{"id":"footer-newsletter-minimal","name":"Footer Newsletter Minimal","title":"Footer Newsletter Minimal","category":"Footer","categorySlug":"footer","description":"A dark-themed minimal footer with newsletter and animated logo. Features a clean layout with main heading, support email, navigation columns, newsletter signup form, and a large animated brand logo. Ideal for modern SaaS products, creative agencies, and businesses that want a sophisticated, dark-themed footer with strong visual branding.","thumbnail":{"desktop":"https://cdn.ing/assets/i/r/290444/r4sw0piidu898r4etokgu7fxkxsv/footer-newsletter-minimal-desktop.png","mobile":"https://cdn.ing/assets/i/r/290445/8eea8pmmzqmnof64aaaf4qgbaodb/footer-newsletter-minimal-mobile.png"},"componentPath":"blocks/footers/footer-newsletter-minimal.tsx","code":"import { FooterNewsletterMinimal } from \"@opensite/ui/blocks/footers/footer-newsletter-minimal\";\nimport { demoFormEngineApi } from \"@/lib/form-demo-data\";\nimport type { FormFieldConfig } from \"@opensite/ui\";\n\nconst formFields: FormFieldConfig[] = [\n  {\n    name: \"email\",\n    type: \"email\",\n    className: \"w-full\",\n    placeholder: \"Enter your email\",\n    required: true,\n    columnSpan: 12,\n  },\n];\n\nexport default function Demo() {\n  return (\n    <FooterNewsletterMinimal\n      heading=\"Let's build something extraordinary together\"\n      supportLabel=\"Need help with your project?\"\n      supportEmail=\"hello@designstudio.co\"\n      navLinks={[\n        { label: \"Work\", href: \"#\" },\n        { label: \"Services\", href: \"#\" },\n        { label: \"About\", href: \"#\" },\n        { label: \"Blog\", href: \"#\" },\n        { label: \"Careers\", href: \"#\" },\n        { label: \"Contact\", href: \"#\" },\n      ]}\n      socialLinks={[\n        { label: \"Dribbble\", href: \"https://dribbble.com/designstudio\" },\n        { label: \"Behance\", href: \"https://behance.net/designstudio\" },\n        { label: \"Instagram\", href: \"https://instagram.com/designstudio\" },\n        { label: \"Twitter\", href: \"https://twitter.com/designstudio\" },\n        {\n          label: \"LinkedIn\",\n          href: \"https://linkedin.com/company/designstudio\",\n        },\n      ]}\n      footerLinks={[\n        { label: \"Privacy\", href: \"/privacy\" },\n        { label: \"Terms\", href: \"/terms\" },\n        { label: \"Cookies\", href: \"/cookies\" },\n        { label: \"Accessibility\", href: \"/accessibility\" },\n      ]}\n      newsletterLabel=\"Join our creative community\"\n      formEngineSetup={{\n        api: demoFormEngineApi,\n        fields: formFields,\n        successMessage:\n          \"Thank you for subscribing! Check your inbox for a confirmation email.\",\n      }}\n      brandText=\"INDUSTRY STANDARD\"\n      copyright=\"Design Studio Co.\"\n      location=\"San Francisco, California & Remote Worldwide\"\n      background=\"dark\"\n    />\n  );\n}","propsSchema":{"heading":{"type":"object","description":"Main heading text","typeLabel":"React.ReactNode","required":false},"supportLabel":{"type":"object","description":"Support label text","typeLabel":"React.ReactNode","required":false},"supportEmail":{"type":"string","description":"Support email","required":false},"navLinks":{"type":"array","description":"Navigation links","items":{"type":"object","description":"","fields":{"label":{"type":"object","description":"Link label","typeLabel":"ReactNode","required":true},"href":{"type":"string","description":"Link URL","required":true},"icon":{"type":"object","description":"Optional icon","typeLabel":"ReactNode","required":false},"className":{"type":"string","description":"Additional CSS classes","required":false}},"typeLabel":"NavLinkItem"},"typeLabel":"NavLinkItem[]","required":false},"socialLinks":{"type":"array","description":"Social links","items":{"type":"object","description":"","fields":{"href":{"type":"string","description":"Link URL - required. The platform icon is automatically determined from the URL.","required":true},"label":{"type":"string","description":"Optional accessible label for screen readers.\nIf not provided, the platform name is used.","required":false},"iconNameOverride":{"type":"string","description":"Optional icon name override in format: prefix/name (e.g., \"cib/instagram\")\nUse when you need a specific icon that differs from the auto-detected platform.","required":false}},"typeLabel":"FooterSocialLink"},"typeLabel":"FooterSocialLink[]","required":false},"footerLinks":{"type":"array","description":"Footer links (privacy, terms)","items":{"type":"object","description":"","fields":{"label":{"type":"string","description":"Link label","required":true},"href":{"type":"string","description":"Link URL","required":true}},"typeLabel":"FooterNewsletterMinimalFooterLink"},"typeLabel":"FooterNewsletterMinimalFooterLink[]","required":false},"newsletterLabel":{"type":"object","description":"Newsletter label","typeLabel":"React.ReactNode","required":false},"brandText":{"type":"object","description":"Brand text displayed at the bottom","typeLabel":"React.ReactNode","required":false},"copyright":{"type":"string","description":"Brand/company name for the copyright notice","required":false},"location":{"type":"object","description":"Location text","typeLabel":"React.ReactNode","required":false},"className":{"type":"string","description":"Additional CSS classes for the section wrapper","required":false},"contentClassName":{"type":"string","description":"Additional CSS classes for the content wrapper","required":false},"topSectionClassName":{"type":"string","description":"Additional CSS classes for the top section","required":false},"headingClassName":{"type":"string","description":"Additional CSS classes for the heading","required":false},"supportClassName":{"type":"string","description":"Additional CSS classes for the support section","required":false},"navGridClassName":{"type":"string","description":"Additional CSS classes for the nav/social grid","required":false},"navLinksClassName":{"type":"string","description":"Additional CSS classes for the nav links list","required":false},"navLinkClassName":{"type":"string","description":"Additional CSS classes for nav link items","required":false},"socialLinksClassName":{"type":"string","description":"Additional CSS classes for the social links list","required":false},"socialLinkClassName":{"type":"string","description":"Additional CSS classes for social link items","required":false},"newsletterSectionClassName":{"type":"string","description":"Additional CSS classes for the newsletter section","required":false},"newsletterLabelClassName":{"type":"string","description":"Additional CSS classes for the newsletter heading styles","required":false},"newsletterFormClassName":{"type":"string","description":"Additional CSS classes for the newsletter form","required":false},"bottomGridClassName":{"type":"string","description":"Additional CSS classes for the location/footer links section","required":false},"locationClassName":{"type":"string","description":"Additional CSS classes for the location text","required":false},"footerLinksClassName":{"type":"string","description":"Additional CSS classes for the footer links list","required":false},"footerLinkClassName":{"type":"string","description":"Additional CSS classes for footer link items","required":false},"brandSectionClassName":{"type":"string","description":"Additional CSS classes for the brand section","required":false},"brandTextClassName":{"type":"string","description":"Additional CSS classes for the brand text","required":false},"copyrightClassName":{"type":"string","description":"Additional CSS classes for the copyright section","required":false},"background":{"type":"string","description":"Section background variant","typeLabel":"SectionBackground","required":false},"containerClassName":{"type":"string","description":"Additional CSS classes for the container","required":false},"spacing":{"type":"object","description":"Section spacing variant","fields":{},"typeLabel":"SectionSpacing","required":false},"pattern":{"type":"object","description":"Optional background pattern","fields":{},"typeLabel":"PatternName","required":false},"patternOpacity":{"type":"number","description":"Pattern opacity (0-1)","required":false},"optixFlowConfig":{"type":"object","description":"Optional Optix Flow configuration for image optimization","fields":{"apiKey":{"type":"string","description":"API key for OptixFlow service","required":true},"compression":{"type":"number","description":"Compression level (0-100)","required":false}},"typeLabel":"OptixFlowConfig","required":false},"formEngineSetup":{"type":"object","description":"Full form engine setup and props","typeLabel":"FormEngineProps","required":false},"buttonAction":{"type":"object","description":"Submit button configuration","fields":{"variant":{"type":"string","description":"","typeLabel":"\"default\" | \"destructive\" | \"outline\" | \"secondary\" | \"ghost\" | \"link\"","required":false},"size":{"type":"string","description":"","typeLabel":"\"default\" | \"sm\" | \"md\" | \"lg\" | \"icon\" | \"icon-sm\" | \"icon-lg\"","required":false},"label":{"type":"object","description":"Button/link label text or ReactNode","typeLabel":"ReactNode","required":false},"icon":{"type":"object","description":"Icon to display (typically before label)","typeLabel":"ReactNode","required":false},"iconAfter":{"type":"object","description":"Icon to display after the label","typeLabel":"ReactNode","required":false},"href":{"type":"string","description":"URL for link behavior","required":false},"onClick":{"type":"object","description":"Click handler for button behavior","typeLabel":"MouseEventHandler","required":false},"className":{"type":"string","description":"Additional CSS classes for the action","required":false},"children":{"type":"object","description":"Custom children (overrides label + icon rendering)","typeLabel":"ReactNode","required":false},"aria-label":{"type":"string","description":"ARIA label for accessibility","required":false},"asButton":{"type":"boolean","description":"Render as a button element instead of an anchor/link","required":false}},"typeLabel":"ActionConfig","required":false},"formSlot":{"type":"object","description":"Custom slot for the form (overrides form props)","typeLabel":"React.ReactNode","required":false},"sectionId":{"type":"string","description":"Optional Section ID","required":false}},"exampleProps":{"heading":"Let's build the future together.","supportLabel":"Need help? Reach us at","supportEmail":"hello@company.com","navLinks":[{"label":"About","href":"#"},{"label":"Careers","href":"#"},{"label":"Blog","href":"#"}],"socialLinks":[{"href":"https://twitter.com/company","label":"Twitter"},{"href":"https://instagram.com/company","label":"Instagram"}],"newsletterLabel":"Subscribe to our newsletter","brandText":"Acme","copyright":"Acme Inc.","footerLinks":[{"label":"Privacy Policy","href":"#"},{"label":"Terms","href":"#"}]},"dependencies":["@opensite/ui"],"tags":["footer","newsletter","minimal","dark","animated","logo","saas","sophisticated"],"performance":{},"importantUsageNotes":"Newsletter form requires formEngineSetup with a valid formConfig endpoint. brandText renders as a very large animated display text — use the business name. navLinks use NavLinkItem shape: { label, href }. socialLinks use { href, label, iconNameOverride? }. footerLinks use { label, href }.","usageRequirements":{"requiredProps":[],"propConstraints":{},"requiresSiteCapabilities":["contact_form"],"mediaSlots":{}}}},"timestamp":"2026-06-27T20:19:06.881Z"}