{"success":true,"data":{"block":{"id":"contact-retreat","name":"Contact Retreat Registration","title":"Contact Retreat Registration","category":"Contact","categorySlug":"contact","description":"Retreat registration form with accommodation preferences, dietary requirements, and participant information. Perfect for wellness retreats and corporate events.","thumbnail":{"desktop":"https://cdn.ing/assets/i/r/290585/n89hg5mgbs2clzzbmpatqud3d3pp/contact-retreat-desktop.png","mobile":"https://cdn.ing/assets/i/r/290586/gxsvw2cqtlo0o7t0tftb58ipdbh6/contact-retreat-mobile.png"},"componentPath":"blocks/contact/contact-retreat.tsx","code":"\"use client\";\n\nimport { ContactRetreat } from \"@opensite/ui/blocks/contact/contact-retreat\";\nimport { demoFormEngineApi } from \"@/lib/form-demo-data\";\nimport type { FormFieldConfig } from \"@opensite/ui\";\n\nconst formFields: FormFieldConfig[] = [\n  {\n    name: \"first_name\",\n    type: \"text\",\n    label: \"First Name\",\n    placeholder: \"First name\",\n    required: true,\n    columnSpan: 6,\n  },\n  {\n    name: \"last_name\",\n    type: \"text\",\n    label: \"Last Name\",\n    placeholder: \"Last name\",\n    required: true,\n    columnSpan: 6,\n  },\n  {\n    name: \"email\",\n    type: \"email\",\n    label: \"Email Address\",\n    placeholder: \"your@email.com\",\n    required: true,\n    columnSpan: 6,\n  },\n  {\n    name: \"phone\",\n    type: \"tel\",\n    label: \"Phone Number\",\n    placeholder: \"+1 (555) 000-0000\",\n    required: true,\n    columnSpan: 6,\n  },\n  {\n    name: \"company\",\n    type: \"text\",\n    label: \"Company/Organization\",\n    placeholder: \"Your organization\",\n    required: false,\n    columnSpan: 12,\n  },\n  {\n    name: \"retreat_type\",\n    type: \"radio\",\n    label: \"Type of Retreat\",\n    required: true,\n    columnSpan: 12,\n    layout: \"grid\",\n    options: [\n      {\n        value: \"corporate\",\n        label: \"Corporate Team Building\",\n        description: \"Company retreats and team bonding.\",\n      },\n      {\n        value: \"wellness\",\n        label: \"Wellness Retreat\",\n        description: \"Yoga, meditation, and mindfulness.\",\n      },\n      {\n        value: \"creative\",\n        label: \"Creative Workshop\",\n        description: \"Artists, writers, and creatives.\",\n      },\n      {\n        value: \"leadership\",\n        label: \"Leadership Training\",\n        description: \"Executive development programs.\",\n      },\n      {\n        value: \"spiritual\",\n        label: \"Spiritual Retreat\",\n        description: \"Religious or spiritual gatherings.\",\n      },\n      {\n        value: \"special_event\",\n        label: \"Special Event\",\n        description: \"Weddings, reunions, celebrations.\",\n      },\n    ],\n  },\n  {\n    name: \"check_in\",\n    type: \"date-picker\",\n    label: \"Preferred Check-in Date\",\n    placeholder: \"Select check-in date\",\n    required: true,\n    columnSpan: 6,\n  },\n  {\n    name: \"check_out\",\n    type: \"date-picker\",\n    label: \"Preferred Check-out Date\",\n    placeholder: \"Select check-out date\",\n    required: true,\n    columnSpan: 6,\n  },\n  {\n    name: \"number_of_guests\",\n    type: \"select\",\n    label: \"Number of Guests\",\n    required: true,\n    columnSpan: 6,\n    options: [\n      { value: \"1-10\", label: \"1-10 guests\" },\n      { value: \"11-20\", label: \"11-20 guests\" },\n      { value: \"21-30\", label: \"21-30 guests\" },\n      { value: \"31-40\", label: \"31-40 guests\" },\n      { value: \"41-50\", label: \"41-50 guests\" },\n      { value: \"51+\", label: \"51+ guests\" },\n    ],\n  },\n  {\n    name: \"accommodation_type\",\n    type: \"select\",\n    label: \"Accommodation Preference\",\n    required: false,\n    columnSpan: 6,\n    options: [\n      { value: \"shared\", label: \"Shared Rooms\" },\n      { value: \"private\", label: \"Private Rooms\" },\n      { value: \"suites\", label: \"Suites\" },\n      { value: \"cabins\", label: \"Private Cabins\" },\n      { value: \"mixed\", label: \"Mix of Options\" },\n    ],\n  },\n  {\n    name: \"catering_needs\",\n    type: \"checkbox-group\",\n    label: \"Catering Requirements\",\n    required: true,\n    columnSpan: 12,\n    layout: \"grid\",\n    options: [\n      { value: \"breakfast\", label: \"Breakfast\", description: \"Daily breakfast service.\" },\n      { value: \"lunch\", label: \"Lunch\", description: \"Daily lunch service.\" },\n      { value: \"dinner\", label: \"Dinner\", description: \"Daily dinner service.\" },\n      { value: \"snacks\", label: \"Snacks & Beverages\", description: \"All-day refreshments.\" },\n      { value: \"special_diet\", label: \"Special Dietary Needs\", description: \"Accommodations required.\" },\n    ],\n  },\n  {\n    name: \"facilities_needed\",\n    type: \"checkbox-group\",\n    label: \"Facilities & Services Needed\",\n    required: false,\n    columnSpan: 12,\n    layout: \"grid\",\n    options: [\n      { value: \"meeting_rooms\", label: \"Meeting Rooms\", description: \"Conference spaces.\" },\n      { value: \"av_equipment\", label: \"A/V Equipment\", description: \"Projectors, sound systems.\" },\n      { value: \"outdoor_space\", label: \"Outdoor Spaces\", description: \"Gardens, patios, fire pits.\" },\n      { value: \"yoga_studio\", label: \"Yoga/Meditation Studio\", description: \"Wellness facilities.\" },\n      { value: \"recreation\", label: \"Recreation\", description: \"Pool, gym, spa.\" },\n      { value: \"transportation\", label: \"Transportation\", description: \"Airport/local shuttles.\" },\n    ],\n  },\n  {\n    name: \"activities\",\n    type: \"textarea\",\n    label: \"Planned Activities\",\n    placeholder: \"Describe any workshops, activities, or programming you're planning...\",\n    required: false,\n    rows: 3,\n    columnSpan: 12,\n  },\n  {\n    name: \"budget_range\",\n    type: \"select\",\n    label: \"Budget Range (per person)\",\n    required: false,\n    columnSpan: 6,\n    options: [\n      { value: \"500-1000\", label: \"$500 - $1,000\" },\n      { value: \"1000-2000\", label: \"$1,000 - $2,000\" },\n      { value: \"2000-3000\", label: \"$2,000 - $3,000\" },\n      { value: \"3000-5000\", label: \"$3,000 - $5,000\" },\n      { value: \"5000+\", label: \"$5,000+\" },\n      { value: \"flexible\", label: \"Flexible\" },\n    ],\n  },\n  {\n    name: \"flexible_dates\",\n    type: \"radio\",\n    label: \"Are Your Dates Flexible?\",\n    required: false,\n    columnSpan: 6,\n    layout: \"stacked\",\n    options: [\n      { value: \"yes\", label: \"Yes\" },\n      { value: \"no\", label: \"No\" },\n      { value: \"somewhat\", label: \"Somewhat\" },\n    ],\n  },\n  {\n    name: \"content\",\n    type: \"textarea\",\n    label: \"Additional Details\",\n    placeholder: \"Tell us more about your retreat vision, goals, special requirements, accessibility needs, etc...\",\n    required: true,\n    rows: 5,\n    columnSpan: 12,\n  },\n  {\n    name: \"proposal_docs\",\n    type: \"file\",\n    label: \"Retreat Proposal or Agenda\",\n    placeholder: \"Upload any planning documents...\",\n    required: false,\n    accept: \".pdf,.doc,.docx,.xls,.xlsx\",\n    maxSize: 15 * 1024 * 1024,\n    maxFiles: 3,\n    multiple: true,\n    columnSpan: 12,\n  },\n];\n\nexport default function Demo() {\n  return (\n    <ContactRetreat\n      heading=\"Plan Your Perfect Retreat\"\n      description=\"Create an unforgettable retreat experience at our peaceful sanctuary. Complete the form below and our event specialists will create a custom proposal for you.\"\n      formEngineSetup={{\n        api: demoFormEngineApi,\n        fields: formFields,\n        successMessage: \"Thank you for your retreat inquiry! Our event team will review your requirements and send you a detailed proposal within 2-3 business days.\",\n        formLayoutSettings: {\n          submitButtonSetup: {\n            submitLabel: \"Request Retreat Proposal\",\n          },\n        },\n      }}\n      background=\"white\"\n      pattern=\"dashedGridFadeTop\"\n      patternOpacity={0.4}\n    />\n  );\n}","propsSchema":{"heading":{"type":"object","description":"Main heading text","typeLabel":"React.ReactNode","required":false},"description":{"type":"object","description":"Description text below heading","typeLabel":"React.ReactNode","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},"headerClassName":{"type":"string","description":"Additional CSS classes for the header","required":false},"headingClassName":{"type":"string","description":"Additional CSS classes for the heading","required":false},"descriptionClassName":{"type":"string","description":"Additional CSS classes for the description","required":false},"cardClassName":{"type":"string","description":"Additional CSS classes for the card","required":false},"cardContentClassName":{"type":"string","description":"Additional CSS classes for the card content","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},"formEngineSetup":{"type":"object","description":"Full form engine setup and props","typeLabel":"FormEngineProps","required":false},"sectionId":{"type":"string","description":"Optional Section ID","required":false}},"defaultProps":{},"dependencies":["@opensite/ui","@page-speed/forms"],"tags":["contact","retreat","registration","form","wellness","event"],"performance":{},"importantUsageNotes":"Ensure to follow the form implementation requirements properly (correct field types, labels, validation, and submit handling). The form fields shown in the demo are calibrated for a retreat booking inquiry use case — first/last name, email, phone, company/organization (optional), retreat type radio (corporate/wellness/creative/leadership/spiritual/special event), group size, preferred dates, and additional details — do not change the field set unless the site has clearly different requirements. Ensure to only supply a valid set of contact data points (email, phone, address, etc), DO NOT make up any contact data. Follow the example props closely for this block."}},"timestamp":"2026-05-13T10:42:11.993Z"}