@foreach($filterConfig as $fieldName => $fieldConfig)
@php
if (isset($fieldConfig['enabled']) && !$fieldConfig['enabled']) {
continue;
}
$type = $fieldConfig['type'] ?? 'select';
$partial = match($type) {
'select' => 'admin.partials.filter-fields.select',
'select2' => 'admin.partials.filter-fields.select2',
'select2-ajax' => 'admin.partials.filter-fields.select2-ajax',
'select-multiple' => 'admin.partials.filter-fields.select-multiple',
'relationship' => 'admin.partials.filter-fields.select2',
'date_range' => 'admin.partials.filter-fields.date-range',
'date' => 'admin.partials.filter-fields.date',
'text' => 'admin.partials.filter-fields.text',
'number' => 'admin.partials.filter-fields.number',
default => 'admin.partials.filter-fields.select',
};
// Prepare field data
$fieldData = array_merge([
'name' => $fieldName,
'id' => $fieldName,
'label' => $fieldConfig['label'] ?? ucfirst(str_replace('_', ' ', $fieldName)),
], $fieldConfig);
@endphp
@include($partial, $fieldData)
@endforeach
@endif