{"success":true,"data":{"block":{"id":"hero-product-showcase-floating","name":"Product Showcase Floating Hero","title":"Hero Product Showcase Floating","category":"Hero","categorySlug":"hero","description":"A hero with floating stats cards around a product showcase. Dynamic design highlighting key metrics and features.","thumbnail":{"desktop":"https://cdn.ing/assets/i/r/290353/be22zbvrrqprz6b306evz4ql1xtt/cleanshot-2026-02-18-at-09-07-50.png","mobile":"https://cdn.ing/assets/i/r/290354/awbnvfo5q8bfyc1b73nzu6savmd4/cleanshot-2026-02-18-at-09-08-13.png"},"componentPath":"blocks/hero/hero-product-showcase-floating.tsx","code":"import { imagePlaceholders } from \"@/lib/media\";\nimport { HeroProductShowcaseFloating } from \"@opensite/ui/blocks/hero/hero-product-showcase-floating\";\nimport { DynamicIcon } from \"@opensite/ui/components/dynamic-icon\";\n\nexport default function Demo() {\n  return (\n    <HeroProductShowcaseFloating\n      badgeText=\"New Arrival\"\n      badgeIcon=\"lucide/sparkles\"\n      heading=\"Introducing our latest innovation\"\n      description=\"Experience the perfect blend of style, functionality, and cutting-edge technology. Designed to elevate your everyday.\"\n      userCount={{\n        count: \"300+\",\n        label: \"Websites Powered\",\n        avatars: [\n          {\n            src: imagePlaceholders[1],\n            alt: \"User Avatar 1\",\n          },\n          {\n            src: imagePlaceholders[2],\n            alt: \"User Avatar 2\",\n          },\n          {\n            src: imagePlaceholders[3],\n            alt: \"User Avatar 3\",\n          },\n        ],\n      }}\n      floatingStat={{\n        label: \"Clients\",\n        value: \"300+\",\n        icon: \"lucide/users\",\n        position: \"top-right\",\n      }}\n      actions={[\n        {\n          label: \"Shop Now\",\n          href: \"#\",\n          variant: \"default\",\n          size: \"lg\",\n          iconAfter: <DynamicIcon name=\"lucide/shopping-bag\" size={16} />,\n        },\n        {\n          label: \"Learn More\",\n          href: \"#\",\n          size: \"lg\",\n          variant: \"outline\",\n        },\n      ]}\n      productImage={{ src: imagePlaceholders[103], alt: \"Product showcase\" }}\n      background=\"dark\"\n      pattern=\"diagonalCrossFadeTopLeft\"\n      patternOpacity={0.15}\n    />\n  );\n}","propsSchema":{"badgeText":{"type":"object","description":"Badge text with icon","typeLabel":"React.ReactNode","required":false},"badgeIcon":{"type":"string","description":"Badge icon name","required":false},"badgeSlot":{"type":"object","description":"Custom slot for badge (overrides badge props)","typeLabel":"React.ReactNode","required":false},"heading":{"type":"object","description":"Main heading content","typeLabel":"React.ReactNode","required":false},"description":{"type":"object","description":"Description text below heading","typeLabel":"React.ReactNode","required":false},"actions":{"type":"array","description":"Array of action configurations for CTA buttons","items":{"type":"object","description":"","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"},"typeLabel":"ActionConfig[]","required":false},"actionsSlot":{"type":"object","description":"Custom slot for rendering actions (overrides actions array)","typeLabel":"React.ReactNode","required":false},"productImage":{"type":"object","description":"Main product image","fields":{"src":{"type":"string","description":"Image source URL","required":true},"alt":{"type":"string","description":"Alt text for accessibility","required":true},"href":{"type":"string","description":"Optional link URL","required":false},"className":{"type":"string","description":"Additional CSS classes for the image","required":false}},"typeLabel":"ImageItem","required":false},"productImageSlot":{"type":"object","description":"Custom slot for product image (overrides productImage prop)","typeLabel":"React.ReactNode","required":false},"floatingStat":{"type":"object","description":"Floating stat configuration","fields":{"value":{"type":"string","description":"Stat value (e.g., \"+127%\")","required":true},"label":{"type":"string","description":"Stat label (e.g., \"Growth\")","required":true},"icon":{"type":"string","description":"Icon name for the stat","required":false},"position":{"type":"string","description":"Position of the floating stat","typeLabel":"\"top-right\" | \"bottom-left\"","required":false}},"typeLabel":"FloatingStatItem","required":false},"floatingStatSlot":{"type":"object","description":"Custom slot for floating stat (overrides floatingStat prop)","typeLabel":"React.ReactNode","required":false},"userCount":{"type":"object","description":"User count configuration","fields":{"count":{"type":"string","description":"User count value (e.g., \"2.5K+\")","required":true},"label":{"type":"string","description":"User count label (e.g., \"Active users\")","required":true},"avatars":{"type":"array","description":"Array of user avatar images","items":{"type":"object","description":"","fields":{"src":{"type":"string","description":"Image source URL","required":true},"alt":{"type":"string","description":"Alt text for accessibility","required":true},"href":{"type":"string","description":"Optional link URL","required":false},"className":{"type":"string","description":"Additional CSS classes for the image","required":false}},"typeLabel":"ImageItem"},"typeLabel":"ImageItem[]","required":false}},"typeLabel":"UserCountItem","required":false},"userCountSlot":{"type":"object","description":"Custom slot for user count (overrides userCount prop)","typeLabel":"React.ReactNode","required":false},"background":{"type":"string","description":"","typeLabel":"SectionBackground","required":false},"spacing":{"type":"object","description":"Vertical spacing for the section","fields":{},"typeLabel":"SectionSpacing","required":false},"pattern":{"type":"object","description":"Optional background pattern name","fields":{},"typeLabel":"PatternName","required":false},"patternOpacity":{"type":"number","description":"Pattern overlay opacity (0-1)","required":false},"className":{"type":"string","description":"Additional CSS classes for the section","required":false},"containerClassName":{"type":"string","description":"Additional CSS classes for the container","required":false},"contentClassName":{"type":"string","description":"Additional CSS classes for the content column","required":false},"headingClassName":{"type":"string","description":"Additional CSS classes for the heading","required":false},"headerClassName":{"type":"string","description":"Additional CSS classes for the header wrapper","required":false},"descriptionClassName":{"type":"string","description":"Additional CSS classes for the description","required":false},"showcaseClassName":{"type":"string","description":"Additional CSS classes for the product showcase","required":false},"optixFlowConfig":{"type":"object","description":"OptixFlow image optimization configuration","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},"actionsClassName":{"type":"string","description":"Additional CSS classes for the actions container","required":false},"sectionId":{"type":"string","description":"Optional Section ID","required":false}},"defaultProps":{},"dependencies":["@opensite/ui"],"tags":["hero","product","showcase","floating","stats","cards","metrics","dynamic"],"performance":{},"importantUsageNotes":"Only use if you have REAL data for the 'floatingStat' and/or 'userCount' props and a 'productImage' prop object. Do not exceed 20 characters for the 'badgeText' prop. Do not exceed 40 characters for the 'heading' prop. Do not exceed 130 characters for the 'description' prop. If you supply multiple 'actions', ensure to use a variant of 'default' for the first action, and 'outline' for the second action to ensure proper visual distinction between the two CTAs. Follow the example props closely for this block."}},"timestamp":"2026-05-13T10:42:50.646Z"}