diff --git a/package-lock.json b/package-lock.json index 44bbcbb..4679e89 100644 --- a/package-lock.json +++ b/package-lock.json @@ -31,12 +31,12 @@ "get-relative-path": "^1.0.2", "get-stream": "^6.0.1", "h3": "^1.12.0", - "heatsync": "^2.7.0", + "heatsync": "^2.7.2", "lru-cache": "^10.4.3", "minimist": "^1.2.8", "prettier-bytes": "^1.0.4", "sharp": "^0.33.4", - "snowtransfer": "^0.11.0", + "snowtransfer": "^0.12.0", "stream-mime-type": "^1.0.2", "try-to-catch": "^3.0.1", "uqr": "^0.1.2", @@ -1075,10 +1075,11 @@ "dev": true }, "node_modules/@types/node": { - "version": "18.19.75", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.75.tgz", - "integrity": "sha512-UIksWtThob6ZVSyxcOqCLOUNg/dyO1Qvx4McgeuhrEtHTLFTf7BBhEazaE4K806FGTPtzd/2sE90qn4fVr7cyw==", + "version": "18.19.76", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.76.tgz", + "integrity": "sha512-yvR7Q9LdPz2vGpmpJX5LolrgRdWvB67MJKDPSgIIzpFbaf9a1j/f5DnLp5VDyHGMR0QZHlTr1afsD87QCXFHKw==", "dev": true, + "license": "MIT", "dependencies": { "undici-types": "~5.26.4" } @@ -1412,12 +1413,13 @@ } }, "node_modules/cloudstorm": { - "version": "0.11.2", - "resolved": "https://registry.npmjs.org/cloudstorm/-/cloudstorm-0.11.2.tgz", - "integrity": "sha512-LuKey+nTp5fEGH5TdCxCUWSG1VMcXKV57rsFvGi/XLpdPT1LUTlc5TmCONAaKzy2uZFJm9EG+iIB2Vq+uBqgog==", + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/cloudstorm/-/cloudstorm-0.11.4.tgz", + "integrity": "sha512-fk0tAyZmUBWrxELyXaKh19s1RJucmhmvTMfB/LrvdRHdUvc20VkD7qCrFaQHSQ/+kzwhSHVY43zNAjtz93pH9A==", + "license": "MIT", "dependencies": { "discord-api-types": "^0.37.119", - "snowtransfer": "^0.11.0" + "snowtransfer": "^0.12.0" }, "engines": { "node": ">=16.15.0" @@ -1868,9 +1870,9 @@ } }, "node_modules/heatsync": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/heatsync/-/heatsync-2.7.0.tgz", - "integrity": "sha512-9ILOyyHFZKfIrqBmNz+fwKd+zupFE2UqFZ9k4FjRcMjNDp7GtW+K9n2htXLy3CwdDTRd6NV6BPxKvU51UqKIJA==", + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/heatsync/-/heatsync-2.7.2.tgz", + "integrity": "sha512-1djRg4eufv5q+CRy5SuZSiV3j53KIDSGkDubJB+vXY1OE+AnTkw5HIJxi+0vEjHjX+wbH5syYQunQ/ElAgoEmg==", "license": "MIT", "dependencies": { "backtracker": "^4.0.0" @@ -2679,9 +2681,10 @@ } }, "node_modules/snowtransfer": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/snowtransfer/-/snowtransfer-0.11.0.tgz", - "integrity": "sha512-07rvRnCtXdL/E3PmKTS/zHVlIIIWizKh7YzsUxN2bmX1Fr5odFgZ08J0/dE1YL6XmsbpmEB2r4LBAfdCGzKs7w==", + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/snowtransfer/-/snowtransfer-0.12.0.tgz", + "integrity": "sha512-EmVTAeSXtA7ZlTqwmZxe5JwRTm4FOXEOqMOzGu8fdVSoqXjcWgQ8IfaIRu/54FamOMjOmcxnpTyNPj5MUqWxpA==", + "license": "MIT", "dependencies": { "discord-api-types": "^0.37.119" }, @@ -3318,9 +3321,10 @@ } }, "node_modules/zod": { - "version": "3.24.1", - "resolved": "https://registry.npmjs.org/zod/-/zod-3.24.1.tgz", - "integrity": "sha512-muH7gBL9sI1nciMZV67X5fTKKBLtwpZ5VBp1vsOQzj1MhrBZ4wlVCm3gedKZWLp0Oyel8sIGfeiz54Su+OVT+A==", + "version": "3.24.2", + "resolved": "https://registry.npmjs.org/zod/-/zod-3.24.2.tgz", + "integrity": "sha512-lY7CDW43ECgW9u1TcT3IoXHflywfVqDYze4waEz812jR/bZ8FHDsl7pFQoSZTz5N+2NqRXs8GBwnAwo3ZNxqhQ==", + "license": "MIT", "funding": { "url": "https://github.com/sponsors/colinhacks" } diff --git a/package.json b/package.json index 83dc636..df954f7 100644 --- a/package.json +++ b/package.json @@ -40,12 +40,12 @@ "get-relative-path": "^1.0.2", "get-stream": "^6.0.1", "h3": "^1.12.0", - "heatsync": "^2.7.0", + "heatsync": "^2.7.2", "lru-cache": "^10.4.3", "minimist": "^1.2.8", "prettier-bytes": "^1.0.4", "sharp": "^0.33.4", - "snowtransfer": "^0.11.0", + "snowtransfer": "^0.12.0", "stream-mime-type": "^1.0.2", "try-to-catch": "^3.0.1", "uqr": "^0.1.2", diff --git a/src/d2m/actions/set-presence.js b/src/d2m/actions/set-presence.js index d16835e..f26668f 100644 --- a/src/d2m/actions/set-presence.js +++ b/src/d2m/actions/set-presence.js @@ -38,7 +38,7 @@ const guildPresenceSetting = new class { } } -class Presence extends sync.ReloadableClass { +class Presence extends sync.reloadClassMethods(() => Presence) { /** @type {string} */ userID /** @type {{presence: "online" | "offline" | "unavailable", status_msg?: string}} */ data /** @private @type {?string | undefined} */ mxid @@ -70,7 +70,6 @@ class Presence extends sync.ReloadableClass { }, this.delay * presenceLoopInterval).unref() } } -sync.reloadClassMethods(Presence) const presenceTracker = new class { /** @private @type {Map} userID -> Presence */ presences = sync.remember(() => new Map())