UNPKG

@trap_stevo/filetide

Version:

Revolutionizing real-time file transfer with seamless, instant communication across any device. Deliver files instantly, regardless of platform, and experience unparalleled speed and control in managing transfers. Elevate your file-sharing capabilities wi

45 lines (44 loc) 1.11 kB
"use strict"; const currentOnlineClients = new Map(); class FileNetClientManager { static addOnlineClient(clientID, pClientID, tideID, id, details = {}) { if (currentOnlineClients.get(pClientID)) { currentOnlineClients.delete(pClientID); } currentOnlineClients.set(clientID, { pClientID: pClientID || "", clientID, tideID, id, ...(details || {}) }); return currentOnlineClients; } static updateOnlineClient(clientID, data) { const onlineClient = currentOnlineClients.get(clientID); if (!onlineClient) { return false; } currentOnlineClients.set(clientID, { ...onlineClient, ...data }); return true; } static clearOnlineClient(clientID) { if (!currentOnlineClients.get(clientID)) { return currentOnlineClients; } currentOnlineClients.delete(clientID); return currentOnlineClients; } static getOnlineClient(clientID) { return currentOnlineClients.get(clientID); } static getOnlineClients() { return currentOnlineClients; } } module.exports = { FileNetClientManager };