@php
// Device limit, data allowance and location scope are derived from
// the plan's own columns rather than duplicated into the features
// JSON, so they cannot disagree with what is actually enforced.
$derived = [
$plan->device_limit === 1
? '1 device'
: $plan->device_limit.' devices',
$plan->isUnmetered()
? 'Unmetered data'
: format_bytes($plan->data_limit_bytes).' per month',
$plan->has_all_locations
? 'All server locations'
: 'Selected server locations',
];
if ($plan->speed_limit_mbps) {
$derived[] = 'Up to '.$plan->speed_limit_mbps.' Mbps';
}
if ($plan->priority_routing) {
$derived[] = 'Priority routing';
}
@endphp
@foreach (array_merge($derived, $plan->features ?? []) as $feature)