{"success":true,"data":{"block":{"id":"testimonials-images-helpful","name":"Testimonials with Images and Helpful Voting","title":"Testimonials Images Helpful","category":"Testimonials","categorySlug":"testimonials","description":"An enhanced reviews section featuring customer photos, helpful/not helpful voting buttons, and a write review CTA. Each review displays images in a gallery format with star ratings, author info, and engagement metrics. Perfect for e-commerce product pages requiring visual customer feedback.","thumbnail":{"desktop":"https://cdn.ing/assets/i/r/293654/c9itagryaxpgt6c9dgsydh65q7bk/cleanshot-2026-03-10-at-09-45-59-2x.png","mobile":"https://cdn.ing/assets/i/r/293655/xqic4f0wlmadp943edanh260uokx/cleanshot-2026-03-10-at-09-46-16-2x.png"},"componentPath":"blocks/testimonials/testimonials-images-helpful.tsx","code":"import { TestimonialsImagesHelpful } from \"@opensite/ui/blocks/testimonials/testimonials-images-helpful\";\n\nexport default function Demo() {\n  return (\n    <TestimonialsImagesHelpful\n      heading=\"Customer Reviews\"\n      writeReviewLabel=\"Write a Review\"\n      reportButtonLabel=\"Report\"\n      reviews={[\n        {\n          rating: 5,\n          title: \"Exceeded all expectations!\",\n          content:\n            \"I was skeptical at first, but this product completely won me over. The build quality is exceptional, and the performance is outstanding. I've attached photos showing how perfectly it integrates into my workspace.\",\n          author: \"Alexandra Martinez\",\n          avatarSrc: \"https://toastability-production.s3.amazonaws.com/9covpitzpuuobkg1m4mfokpi0enw\",\n          date: \"Jan 15, 2026\",\n          verified: true,\n          images: [\"https://toastability-production.s3.amazonaws.com/90rcw2mljzpeuxlac8q77mor15xz\", \"https://toastability-production.s3.amazonaws.com/w41h7890eivogu3sr78vlwkpzz8g\", \"https://toastability-production.s3.amazonaws.com/ytbyjrcvrghc7wl6w1g7g8fwka22\"],\n          helpful: 24,\n          variant: \"Premium Edition\",\n        },\n        {\n          rating: 5,\n          title: \"Best investment for my business\",\n          content:\n            \"As a business owner, I needed something reliable and efficient. This has transformed how we operate daily. The ROI has been incredible, and our team loves using it. The photos show our actual setup in action.\",\n          author: \"David Kumar\",\n          avatarSrc: \"https://toastability-production.s3.amazonaws.com/102grjqg8aigxkj585s9x3xbxfv7\",\n          date: \"Jan 10, 2026\",\n          verified: true,\n          images: [\"https://toastability-production.s3.amazonaws.com/2t36c7l0ywchaz4nys8yj2l5amae\", \"https://toastability-production.s3.amazonaws.com/ms4s4zyqpmboh0slez1cwat9qhw4\"],\n          helpful: 18,\n          variant: \"Business Pro\",\n        },\n        {\n          rating: 4,\n          title: \"Great product with minor room for improvement\",\n          content:\n            \"Overall very satisfied with my purchase. The features work as advertised and the quality is solid. Only giving 4 stars because the setup process could be more intuitive. Once running, it's been flawless.\",\n          author: \"Jennifer Lee\",\n          avatarSrc: \"https://toastability-production.s3.amazonaws.com/90rcw2mljzpeuxlac8q77mor15xz\",\n          date: \"Jan 5, 2026\",\n          verified: true,\n          helpful: 12,\n          variant: \"Standard\",\n        },\n        {\n          rating: 5,\n          title: \"Life-changing purchase!\",\n          content:\n            \"I cannot overstate how much this has improved my daily routine. It's intuitive, powerful, and beautifully designed. The customer support team has also been incredibly helpful with my questions. Highly recommend!\",\n          author: \"Marcus Johnson\",\n          avatarSrc: \"https://toastability-production.s3.amazonaws.com/gg5qnvb4nsl2k3g4dw4ls8bsllwh\",\n          date: \"Dec 28, 2025\",\n          verified: true,\n          images: [\"https://toastability-production.s3.amazonaws.com/6fffnb4phovtqkjhtzifs4rhb84u\"],\n          helpful: 31,\n          variant: \"Premium Edition\",\n        },\n      ]}\n      onWriteReview={() => console.log(\"Open review form\")}\n      background=\"white\"\n      spacing=\"lg\"\n    />\n  );\n}","propsSchema":{"reviews":{"type":"array","description":"Array of reviews to display","items":{"type":"object","description":"","fields":{"rating":{"type":"number","description":"Star rating (1-5)","required":true},"title":{"type":"object","description":"Review title","typeLabel":"React.ReactNode","required":true},"content":{"type":"object","description":"Review content/body","typeLabel":"React.ReactNode","required":true},"author":{"type":"object","description":"Author name","typeLabel":"React.ReactNode","required":false},"avatarSrc":{"type":"string","description":"Author avatar image URL","required":false},"date":{"type":"string","description":"Review date string","required":false},"verified":{"type":"boolean","description":"Whether the reviewer is verified","required":false},"images":{"type":"array","description":"Array of review image URLs","items":{"type":"string","description":""},"required":false},"helpful":{"type":"number","description":"Number of helpful votes","required":false},"variant":{"type":"string","description":"Product variant purchased","required":false}},"typeLabel":"ReviewWithImages"},"typeLabel":"ReviewWithImages[]","required":true,"minItems":2,"maxItems":6,"mediaHints":{"path":"reviews[].images[]","roles":["gallery","thumbnail"],"disallowedRoles":["logo","favicon","video-thumbnail"],"minPixelClass":"small","required":false,"note":"Reviewer-submitted photo accompanying the review. IMAGE MEDIA ONLY. Do not use logos, favicons, or video assets."}},"reviewsSlot":{"type":"object","description":"Custom slot for rendering reviews (overrides reviews array)","typeLabel":"React.ReactNode","required":false},"heading":{"type":"object","description":"Main heading content","typeLabel":"React.ReactNode","required":false},"verifiedPurchaseLabel":{"type":"object","description":"Label for the verified purchase badge","typeLabel":"React.ReactNode","required":false},"writeReviewLabel":{"type":"object","description":"Write review button text","typeLabel":"React.ReactNode","required":false},"reportButtonLabel":{"type":"object","description":"Label for the report button","typeLabel":"React.ReactNode","required":false},"className":{"type":"string","description":"Additional CSS classes for the section wrapper","required":false},"headerClassName":{"type":"string","description":"Additional CSS classes for the header container","required":false},"headingClassName":{"type":"string","description":"Additional CSS classes for the heading","required":false},"reviewClassName":{"type":"string","description":"Additional CSS classes for each review card","required":false},"contentClassName":{"type":"string","description":"Additional CSS classes for the review content","required":false},"authorClassName":{"type":"string","description":"Additional CSS classes for the author section","required":false},"imagesClassName":{"type":"string","description":"Additional CSS classes for the images container","required":false},"onWriteReview":{"type":"object","description":"Callback when write review button is clicked","typeLabel":"() => void","required":false},"background":{"type":"string","description":"Background style for the section","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 or URL","fields":{},"typeLabel":"PatternName","required":false},"patternOpacity":{"type":"number","description":"Pattern overlay opacity (0-1)","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},"containerClassName":{"type":"string","description":"Additional CSS classes for the container","required":false},"sectionId":{"type":"string","description":"Optional Section ID","required":false},"reviews[].rating":{"type":"object","description":"","required":true},"reviews[].title":{"type":"object","description":"","required":true,"maxLength":80},"reviews[].content":{"type":"object","description":"","required":true,"maxLength":600},"reviews[].images":{"type":"object","description":"","maxItems":4}},"exampleProps":{"heading":"Customer Reviews","verifiedPurchaseLabel":"Verified Purchase","reviews":[{"rating":5,"title":"Transformed our entire operation","content":"We saw immediate ROI within the first 30 days. The onboarding was smooth and the support team is world class.","author":"Sarah Chen","avatarSrc":"https://cdn.ing/assets/i/r/308196/g6bbn73f7gxal82uu49m9prfd0u8/workplace-in-cafe.webp","date":"February 2, 2026","verified":true,"images":["https://cdn.ing/assets/i/r/308196/g6bbn73f7gxal82uu49m9prfd0u8/workplace-in-cafe.webp","https://cdn.ing/assets/i/r/308196/g6bbn73f7gxal82uu49m9prfd0u8/workplace-in-cafe.webp"],"helpful":42},{"rating":5,"title":"Highly recommend for growing teams","content":"As our team scaled from 10 to 50 people this tool grew with us perfectly. Couldn't ask for more.","author":"James Rivera","avatarSrc":"https://cdn.ing/assets/i/r/308196/g6bbn73f7gxal82uu49m9prfd0u8/workplace-in-cafe.webp","date":"January 28, 2026","verified":true,"helpful":31}]},"dependencies":["@opensite/ui"],"tags":["reviews","testimonials","images","photos","helpful","voting","customer-photos","product-reviews","user-generated-content"],"performance":{},"importantUsageNotes":"Testimonials must come from real, sourced reviews or testimonials. Do not fabricate quotes, names, or company affiliations. The images[] array holds supplementary review photos from the reviewer — these must be real product/experience photos, not stock imagery. helpful counts must reflect actual platform data.","usageRequirements":{"requiredProps":["reviews"],"propConstraints":{"reviews":{"required":true,"minItems":2,"maxItems":6},"reviews[].rating":{"required":true,"note":"Integer 1–5."},"reviews[].title":{"required":true,"maxLength":80},"reviews[].content":{"required":true,"maxLength":600},"reviews[].images":{"maxItems":4,"note":"Actual review photos uploaded by the reviewer. Absolute URLs only."}},"mediaSlots":{"reviews[].avatarSrc":{"path":"reviews[].avatarSrc","roles":["profile","avatar"],"disallowedRoles":["logo","favicon","video-thumbnail"],"minPixelClass":"small","required":false,"preferredAspect":"1:1","note":"Reviewer profile photo. IMAGE MEDIA ONLY. Do not use logos, favicons, or video assets."},"reviews[].images[]":{"path":"reviews[].images[]","roles":["gallery","thumbnail"],"disallowedRoles":["logo","favicon","video-thumbnail"],"minPixelClass":"small","required":false,"note":"Reviewer-submitted photo accompanying the review. IMAGE MEDIA ONLY. Do not use logos, favicons, or video assets."}},"requiresSiteCapabilities":["reviews_or_testimonials"],"notes":["All media src values must be absolute URLs to real assets; relative paths and placeholder media variables are not allowed."]}}},"timestamp":"2026-06-27T20:15:34.299Z"}