@php $f = $form; $payload = [ 'id' => $f?->id, 'title' => $f?->title ?? '', 'purpose' => $f?->purpose ?? '', 'audience_type' => $f?->audience_type ?? 'lead_capture', 'submission_cap' => (int) ($f?->submission_cap ?? 0), 'cap_reached_note' => $f?->cap_reached_note ?? 'You have already submitted this form.', 'send_button_label' => $f?->send_button_label ?? 'Send', 'thank_you_note' => $f?->thank_you_note ?? 'Thanks — we got your details!', 'status' => $f?->status ?? 'draft', 'definition' => $f?->definition_json ?: [ 'screens' => [ [ 'id' => 'screen_1', 'label' => 'Step 1', 'fields' => [ ['id' => 'fld_intro', 'kind' => 'heading', 'label' => 'Tell us about you'], [ 'id' => 'fld_name', 'kind' => 'text', 'label' => 'Your name', 'required' => true, 'hint' => '', ], [ 'id' => 'fld_email', 'kind' => 'email', 'label' => 'Email address', 'required' => true, 'hint' => '', ], ], ], ], ], ]; @endphp {{-- Sticky top bar — matches /wa-campaigns/create pattern --}}
Forms / {{ $mode === 'edit' ? 'Edit' : 'New' }}
{{ $mode === 'edit' ? 'Edit a' : 'Build a' }} {{ __('WhatsApp form') }}
{{ __('Draft / unsaved') }}
{{-- ── Left rail — component drawer (vertical, NOT competitor's horizontal pill row) --}} {{-- ── Center — meta panel + canvas (NOT competitor's separate cards) --}}

{{ __('Form basics') }}

{{ __('Form designer') }}

0 fields
{{ __('After submit') }}

{{ __('Once the form returns, the conversation continues — the answers land in') }} @{{ form.field_id }} variables your flow can use, and the submission shows in the inbox timeline. Tie this form to a flow's {{ __('WhatsApp form') }} node to chain follow-up automation.

{{-- ── Right rail — WhatsApp chat preview (NOT a full phone mock) --}}