{{-- Dynamic Field Display Partial --}}
@if($value === null || $value === '') No data provided @else @switch($field->field_type) {{-- Text-based fields --}} @case('text') @case('textarea')
@if($field->field_type === 'textarea')
{{ $value }}
@else {{ $value }} @endif
@break {{-- Email field --}} @case('email') @break {{-- URL field --}} @case('url') @break {{-- Phone field --}} @case('tel') @break {{-- Password field --}} @case('password')
Password Set
@break {{-- Number fields --}} @case('number')
{{ number_format($value) }}
@break @case('decimal')
{{ number_format($value, 2) }}
@break {{-- Currency field --}} @case('currency')
{{ ($field->configuration['currency_symbol'] ?? '$') . number_format($value, 2) }}
@break {{-- Select and Radio --}} @case('select') @case('radio')
{{ $value }}
@break {{-- Multi-select and Checkbox --}} @case('multiselect') @case('checkbox')
@php $values = is_string($value) ? json_decode($value, true) : $value; $values = is_array($values) ? $values : [$value]; @endphp @if(count($values) > 0)
@foreach($values as $item) {{ $item }} @endforeach
@else No selections @endif
@break {{-- Single Checkbox --}} @case('single_checkbox')
@if($value) Yes @else No @endif
@break {{-- Date fields --}} @case('date')
{{ \Carbon\Carbon::parse($value)->format('F j, Y') }} ({{ \Carbon\Carbon::parse($value)->diffForHumans() }})
@break @case('datetime')
{{ \Carbon\Carbon::parse($value)->format('F j, Y \a\t g:i A') }} ({{ \Carbon\Carbon::parse($value)->diffForHumans() }})
@break @case('time')
{{ \Carbon\Carbon::parse($value)->format('g:i A') }}
@break {{-- File fields --}} @case('file')
@if(Storage::disk('public')->exists($value)) @php $fileName = basename($value); $fileSize = Storage::disk('public')->size($value); $fileSizeFormatted = number_format($fileSize / 1024, 2) . ' KB'; if ($fileSize > 1024 * 1024) { $fileSizeFormatted = number_format($fileSize / (1024 * 1024), 2) . ' MB'; } @endphp
{{ $fileName }}
{{ $fileSizeFormatted }}
Download
@else File not found @endif
@break {{-- Image field --}} @case('image')
@if(Storage::disk('public')->exists($value)) @php $fileName = basename($value); $fileSize = Storage::disk('public')->size($value); $fileSizeFormatted = number_format($fileSize / 1024, 2) . ' KB'; if ($fileSize > 1024 * 1024) { $fileSizeFormatted = number_format($fileSize / (1024 * 1024), 2) . ' MB'; } @endphp
{{ $field->label }}
{{ $fileName }} ({{ $fileSizeFormatted }})
@else Image not found @endif
@break {{-- JSON field --}} @case('json')
{{ json_encode(json_decode($value), JSON_PRETTY_PRINT) }}
@break {{-- Color field --}} @case('color')
{{ strtoupper($value) }}
Color Value
@break {{-- Hidden field --}} @case('hidden')
Hidden: {{ $value }}
@break {{-- Default case for unknown field types --}} @default
Unknown field type: {{ $field->field_type }}
Raw value: {{ $value }}
@endswitch @endif
{{-- Field Description --}} @if($field->description) {{ $field->description }} @endif
{{-- Image Modal for full-size viewing --}} @if($field->field_type === 'image' && $value && Storage::disk('public')->exists($value)) @push('modals') @endpush @endif @push('scripts') @endpush