{{-- Toast (optional) --}}
@if(session('toast'))
{{ session('toast') }}
@endif
Total connections
18
+2 this week
Healthy
15
no issues detected
Needs attention
3
2 failed syncs today
@php
// Dummy data if none provided
$sources = $sources ?? collect([
(object)['display_name'=>'Shopify','provider'=>'shopify','status'=>'connected','last_sync_at'=>now()->subMinutes(18),'avg_ms'=>320,'pct'=>78,'targets'=>['Power BI','Snowflake']],
(object)['display_name'=>'Google Analytics 4','provider'=>'ga4','status'=>'connected','last_sync_at'=>now()->subHours(2),'avg_ms'=>410,'pct'=>60,'targets'=>['Power BI']],
(object)['display_name'=>'Meta Ads','provider'=>'meta_ads','status'=>'warning','last_sync_at'=>now()->subHours(6),'avg_ms'=>680,'pct'=>32,'targets'=>['BigQuery']],
(object)['display_name'=>'S3 (Data Lake)','provider'=>'s3','status'=>'error','last_sync_at'=>null,'avg_ms'=>0,'pct'=>0,'targets'=>['—']],
(object)['display_name'=>'PostgreSQL – Prod','provider'=>'postgres','status'=>'connected','last_sync_at'=>now()->subMinutes(5),'avg_ms'=>210,'pct'=>91,'targets'=>['Warehouse']],
(object)['display_name'=>'Salesforce','provider'=>'salesforce','status'=>'idle','last_sync_at'=>now()->subDays(1),'avg_ms'=>540,'pct'=>15,'targets'=>['Power BI','Tableau']],
]);
$initials = fn($name)=>collect(explode(' ', preg_replace('/[^A-Za-z0-9 ]/','',$name)))->map(fn($p)=>mb_substr($p,0,1))->take(2)->implode('');
$statusChip = function($s){
return match($s){
'connected' => 'status ok',
'warning' => 'status warn',
'error' => 'status err',
'idle' => 'status idle',
default => 'status'
};
};
$statusLabel = fn($s)=>match($s){
'connected' => 'Connected',
'warning' => 'Warning',
'error' => 'Error',
'idle' => 'Idle',
default => ucfirst($s ?? '—')
};
@endphp
@if($sources->isEmpty())
No sources yet. Click + Add Source to connect your first data source.
@else
@foreach($sources as $s)
{{ $s->display_name }}
{{ \Illuminate\Support\Str::headline($s->provider) }} • Last sync:
{{ $s->last_sync_at ? $s->last_sync_at->diffForHumans() : 'never' }}
{{ $statusLabel($s->status) }}
⋮
@foreach(($s->targets ?? []) as $t)
→ {{ $t }}
@endforeach
@endforeach
@endif
@endsection
@push('scripts')
@endpush