12 lines
401 B
TypeScript
12 lines
401 B
TypeScript
import type { SessionInfo } from '@/hermes'
|
|
|
|
// Cheap signature compare so a poll only swaps the atom (and re-renders the
|
|
// sidebar) when the visible rows actually changed.
|
|
export function sameCronSignature(a: SessionInfo[], b: SessionInfo[]): boolean {
|
|
if (a.length !== b.length) {
|
|
return false
|
|
}
|
|
|
|
return a.every((session, i) => session.id === b[i]?.id && session.title === b[i]?.title)
|
|
}
|