@csrf @if ($component->exists) @method('PUT') @endif @php $micronutrientsText = old('micronutrients_text', collect($component->micronutrients ?? []) ->map(fn ($value, $key) => $key . ': ' . (is_scalar($value) ? $value : json_encode($value))) ->implode("\n")); $checkboxes = [ 'menu_labels' => array_combine(\App\Models\Component::MENU_LABELS, \App\Models\Component::MENU_LABELS), 'meal_slots' => collect(\App\Models\Component::MEAL_SLOTS)->mapWithKeys(fn ($slot) => [$slot => __('admin_components.meals.' . $slot)])->all(), 'diet_types' => collect(\App\Models\Component::DIET_TYPES)->mapWithKeys(fn ($diet) => [$diet => __('admin_components.diets.' . $diet)])->all(), ]; $numberFields = [ 'kcal' => '0.1', 'fat_g' => '0.01', 'saturated_fat_g' => '0.01', 'protein_g' => '0.01', 'carbs_g' => '0.01', 'fiber_g' => '0.01', 'sugar_g' => '0.01', 'calcium_mg' => '0.1', 'vitamin_c_mg' => '0.1', 'vitamin_d_mcg' => '0.01', ]; $requiredNumbers = ['kcal', 'fat_g', 'saturated_fat_g', 'protein_g', 'carbs_g', 'fiber_g', 'sugar_g']; $portionPhotos = $component->exists ? $component->portionPhotos->keyBy('slot') : collect(); @endphp

{{ __('admin_components.section_basic') }}

{{ __('admin_components.serving_size_hint') }}

{{ __('admin_components.section_nutrition') }} — {{ __('admin_components.per_reference') }}

@foreach ($numberFields as $field => $step)
@endforeach
@include('portal.admin.components._portions')

{{ __('admin_components.micronutrients_hint') }}

{{ __('admin_components.allergens_hint') }}

{{ __('admin_components.section_menu') }}

@foreach ($checkboxes as $field => $options)
{{ __('admin_components.' . $field) }}
@foreach ($options as $value => $label) @endforeach
@endforeach

{{ __('admin_components.show_in_menu_hint') }}

{{ __('common.cancel') }}