useLastSeen() — supabase Function Reference
Architecture documentation for the useLastSeen() function in SecretAPIKeys.tsx from the supabase codebase.
Entity Profile
Dependency Diagram
graph TD ddb88113_7c4c_40ce_8374_1b9d5665ccad["useLastSeen()"] 28b334af_f88e_3fd3_031e_15a8b25c0d56["SecretAPIKeys()"] 28b334af_f88e_3fd3_031e_15a8b25c0d56 -->|calls| ddb88113_7c4c_40ce_8374_1b9d5665ccad style ddb88113_7c4c_40ce_8374_1b9d5665ccad fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
apps/studio/components/interfaces/APIKeys/SecretAPIKeys.tsx lines 32–68
function useLastSeen({ projectRef, enabled }: { projectRef: string; enabled?: boolean }): {
data?: LastSeenData
isLoading: boolean
} {
const now = useRef(new Date()).current
const query = useLogsQuery(
projectRef,
{
iso_timestamp_start: new Date(now.getTime() - 24 * 60 * 60 * 1000).toISOString(),
iso_timestamp_end: now.toISOString(),
sql: "-- last-used-secret-api-keys\nSELECT unix_millis(max(timestamp)) as timestamp, apikey.`hash` FROM edge_logs cross join unnest(metadata) as m cross join unnest(m.request) as request cross join unnest(request.sb) as sb cross join unnest(sb.apikey) as sbapikey cross join unnest(sbapikey.apikey) as apikey WHERE apikey.error is null and apikey.`hash` is not null and apikey.prefix like 'sb_secret_%' GROUP BY apikey.`hash`",
},
enabled
)
return useMemo(() => {
if (query.isLoading || !query.logData) {
return { data: undefined, isLoading: query.isLoading }
}
const now = dayjs()
const lastSeen = (query.logData as unknown as { timestamp: number; hash: string }[]).reduce(
(a, i) => {
a[i.hash] = {
timestamp: i.timestamp,
relative: `${dayjs.duration(now.diff(dayjs(i.timestamp))).humanize(false)} ago`,
}
return a
},
{} as LastSeenData
)
return { data: lastSeen, isLoading: query.isLoading }
}, [query])
}
Domain
Subdomains
Called By
Source
Frequently Asked Questions
What does useLastSeen() do?
useLastSeen() is a function in the supabase codebase.
What calls useLastSeen()?
useLastSeen() is called by 1 function(s): SecretAPIKeys.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free