INNER CODE UNIT · JavaScript
seatHolders
bostrot/wsl2-distro-manager · n8n/licensing/seat_check.js:84
function seatHolders(entries, seats, now) {
const cutoff = now.getTime() - SEAT_WINDOW_DAYS * DAY_MS;
return entries
.filter((e) => e.kind === 'device' && time(e.last_seen) >= cutoff)
.sort((a, b) => time(b.activated_at) - time(a.activated_at)
|| time(b.last_seen) - time(a.last_seen))
.slice(0, seats);
}
function prune(entries, holders, now) {
const keepAfter = now.getTime() - KEEP_DAYS * DAY_MS;
const holderIds = new Set(holders.map((h) => h.id));
const byRecency = (a, b) => time(b.last_seen) - time(a.last_seen);
const devices = entries
.filter((e) => e.kind === 'device')
.filter((e) => holderIds.has(e.id) || time(e.last_seen) >= keepAfter);
const legacy = entries