diff --git a/package-lock.json b/package-lock.json index c937402ea1cd..99a8894b3347 100644 --- a/package-lock.json +++ b/package-lock.json @@ -166,7 +166,7 @@ "@types/lru-cache": "5.1.0", "@types/memoizee": "0.4.2", "@types/mocha": "9.0.0", - "@types/node": "18.15.11", + "@types/node": "20.14.10", "@types/node-fetch": "2.6.2", "@types/normalize-path": "3.0.0", "@types/pify": "3.0.2", @@ -7988,6 +7988,15 @@ "integrity": "sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==", "dev": true }, + "node_modules/@storybook/builder-webpack5/node_modules/@types/node": { + "version": "18.19.39", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.39.tgz", + "integrity": "sha512-nPwTRDKUctxw3di5b4TfT3I0sWDiWoPQCZjXhvdkINntwr8lcoVCKsTgnXeRubKIlfnV+eN/HYk6Jb40tbcEAQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "node_modules/@storybook/builder-webpack5/node_modules/@types/semver": { "version": "7.5.8", "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", @@ -9267,6 +9276,15 @@ } } }, + "node_modules/@storybook/core-server/node_modules/@types/node": { + "version": "18.19.39", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.39.tgz", + "integrity": "sha512-nPwTRDKUctxw3di5b4TfT3I0sWDiWoPQCZjXhvdkINntwr8lcoVCKsTgnXeRubKIlfnV+eN/HYk6Jb40tbcEAQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "node_modules/@storybook/core-server/node_modules/@types/semver": { "version": "7.5.8", "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", @@ -9391,6 +9409,15 @@ "url": "https://opencollective.com/storybook" } }, + "node_modules/@storybook/core-webpack/node_modules/@types/node": { + "version": "18.19.39", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.39.tgz", + "integrity": "sha512-nPwTRDKUctxw3di5b4TfT3I0sWDiWoPQCZjXhvdkINntwr8lcoVCKsTgnXeRubKIlfnV+eN/HYk6Jb40tbcEAQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "node_modules/@storybook/csf": { "version": "0.1.9", "resolved": "https://registry.npmjs.org/@storybook/csf/-/csf-0.1.9.tgz", @@ -9568,6 +9595,15 @@ } } }, + "node_modules/@storybook/preset-react-webpack/node_modules/@types/node": { + "version": "18.19.39", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.39.tgz", + "integrity": "sha512-nPwTRDKUctxw3di5b4TfT3I0sWDiWoPQCZjXhvdkINntwr8lcoVCKsTgnXeRubKIlfnV+eN/HYk6Jb40tbcEAQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "node_modules/@storybook/preset-react-webpack/node_modules/@types/semver": { "version": "7.5.8", "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", @@ -9767,6 +9803,24 @@ } } }, + "node_modules/@storybook/react-webpack5/node_modules/@types/node": { + "version": "18.19.39", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.39.tgz", + "integrity": "sha512-nPwTRDKUctxw3di5b4TfT3I0sWDiWoPQCZjXhvdkINntwr8lcoVCKsTgnXeRubKIlfnV+eN/HYk6Jb40tbcEAQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, + "node_modules/@storybook/react/node_modules/@types/node": { + "version": "18.19.39", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.39.tgz", + "integrity": "sha512-nPwTRDKUctxw3di5b4TfT3I0sWDiWoPQCZjXhvdkINntwr8lcoVCKsTgnXeRubKIlfnV+eN/HYk6Jb40tbcEAQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "node_modules/@storybook/react/node_modules/acorn": { "version": "7.4.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", @@ -10973,9 +11027,12 @@ "dev": true }, "node_modules/@types/node": { - "version": "18.15.11", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.15.11.tgz", - "integrity": "sha512-E5Kwq2n4SbMzQOn6wnmBjuK9ouqlURrcZDVfbo9ftDDTFt3nk7ZKK4GMOzoYgnpQJKcxwQw+lGaBvvlMo0qN/Q==" + "version": "20.14.10", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.10.tgz", + "integrity": "sha512-MdiXf+nDuMvY0gJKxyfZ7/6UFsETO7mGKF54MVD/ekJS6HdFtpZFBgrh6Pseu64XTb2MLyFPlbW6hj8HYRQNOQ==", + "dependencies": { + "undici-types": "~5.26.4" + } }, "node_modules/@types/node-fetch": { "version": "2.6.2", @@ -18313,15 +18370,6 @@ "is-electron-renderer": "^2.0.0" } }, - "node_modules/electron/node_modules/@types/node": { - "version": "20.14.8", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.8.tgz", - "integrity": "sha512-DO+2/jZinXfROG7j7WKFn/3C6nFwxy2lLpgLjEXJz+0XKphZlTLJ14mo8Vfg8X5BWN6XjyESXq+LcYdT7tR3bA==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, "node_modules/emittery": { "version": "0.13.1", "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", @@ -35106,8 +35154,7 @@ "node_modules/undici-types": { "version": "5.26.5", "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", - "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", - "dev": true + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==" }, "node_modules/unicode-canonical-property-names-ecmascript": { "version": "2.0.0", diff --git a/package.json b/package.json index bbda9e0d7e2b..a9477a8706e3 100644 --- a/package.json +++ b/package.json @@ -248,7 +248,7 @@ "@types/lru-cache": "5.1.0", "@types/memoizee": "0.4.2", "@types/mocha": "9.0.0", - "@types/node": "18.15.11", + "@types/node": "20.14.10", "@types/node-fetch": "2.6.2", "@types/normalize-path": "3.0.0", "@types/pify": "3.0.2", diff --git a/ts/models/conversations.ts b/ts/models/conversations.ts index 4f3c28b0783a..4efb4be4506b 100644 --- a/ts/models/conversations.ts +++ b/ts/models/conversations.ts @@ -241,7 +241,7 @@ export class ConversationModel extends window.Backbone string, { senderId: string; - timer: NodeJS.Timer; + timer: NodeJS.Timeout; timestamp: number; } >; @@ -270,9 +270,9 @@ export class ConversationModel extends window.Backbone throttledUpdateVerified?: () => void; - typingRefreshTimer?: NodeJS.Timer | null; + typingRefreshTimer?: NodeJS.Timeout | null; - typingPauseTimer?: NodeJS.Timer | null; + typingPauseTimer?: NodeJS.Timeout | null; intlCollator = new Intl.Collator(undefined, { sensitivity: 'base' }); @@ -286,7 +286,7 @@ export class ConversationModel extends window.Backbone private lastIsTyping?: boolean; - private muteTimer?: NodeJS.Timer; + private muteTimer?: NodeJS.Timeout; private isInReduxBatch = false; diff --git a/ts/textsecure/WebsocketResources.ts b/ts/textsecure/WebsocketResources.ts index 7cce546622c9..0d54126af0fe 100644 --- a/ts/textsecure/WebsocketResources.ts +++ b/ts/textsecure/WebsocketResources.ts @@ -369,7 +369,7 @@ export class WebSocketResourceWithShadowing implements IWebSocketResource { private stats: AggregatedStats; - private statsTimer: NodeJS.Timer; + private statsTimer: NodeJS.Timeout; private shadowingWithReporting: boolean; diff --git a/ts/util/createHTTPSAgent.ts b/ts/util/createHTTPSAgent.ts index c364119e8fec..78ebcc68b447 100644 --- a/ts/util/createHTTPSAgent.ts +++ b/ts/util/createHTTPSAgent.ts @@ -213,8 +213,10 @@ async function defaultConnect({ }: ConnectOptionsType): Promise { const socket = tls.connect(port, address, { ...tlsOptions, - signal: abortSignal, }); + abortSignal?.addEventListener('abort', () => + socket.destroy(new Error('Aborted')) + ); const { promise: onHandshake, resolve, reject } = explodePromise();