@php $addresses = collect($addresses ?? []); $preselectedAddressId = old($name); if ($preselectedAddressId === null && is_string($name) && str_contains($name, '[')) { $dotName = preg_replace('/\[(.*?)\]/', '.$1', $name); $dotName = trim($dotName, '.'); $preselectedAddressId = $dotName ? old($dotName) : null; } if (($preselectedAddressId === null || $preselectedAddressId === '') && $addresses->isNotEmpty()) { $defaultAddress = $addresses->firstWhere('priority', 1); if (! $defaultAddress) { $defaultAddress = $addresses ->filter(function ($address) { return (int) ($address['priority'] ?? 0) > 0; }) ->sortByDesc(function ($address) { return (int) ($address['priority'] ?? 0); }) ->first(); } if (! $defaultAddress) { $defaultAddress = $addresses->firstWhere('is_default', true) ?? $addresses->firstWhere('default', true); } if (! $defaultAddress) { $defaultAddress = $addresses->first(); } $preselectedAddressId = $defaultAddress['id'] ?? null; } $addresses = $addresses->all(); @endphp @if ($addresses) @foreach ($addresses as $address)