airdcpp-apisocket 2.4.5-beta.1 → 2.5.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/GUIDE.md +1 -1
- package/README.md +3 -2
- package/dist/ApiConstants.d.ts +6 -6
- package/dist/ApiConstants.js +7 -7
- package/dist/NodeSocket.d.ts +4 -4
- package/dist/NodeSocket.js +24 -24
- package/dist/Promise.d.ts +8 -8
- package/dist/Promise.js +26 -26
- package/dist/PublicHelpers.d.ts +2 -2
- package/dist/PublicHelpers.js +94 -99
- package/dist/PublicHelpers.js.map +1 -1
- package/dist/SocketBase.d.ts +4 -4
- package/dist/SocketBase.js +351 -343
- package/dist/SocketBase.js.map +1 -1
- package/dist/SocketLogger.d.ts +9 -9
- package/dist/SocketLogger.js +74 -74
- package/dist/SocketLogger.js.map +1 -1
- package/dist/SocketRequestHandler.d.ts +14 -14
- package/dist/SocketRequestHandler.js +168 -162
- package/dist/SocketRequestHandler.js.map +1 -1
- package/dist/SocketSubscriptionHandler.d.ts +11 -11
- package/dist/SocketSubscriptionHandler.js +161 -158
- package/dist/SocketSubscriptionHandler.js.map +1 -1
- package/dist/types/api.d.ts +30 -30
- package/dist/types/api.js +3 -3
- package/dist/types/api_internal.d.ts +24 -24
- package/dist/types/api_internal.js +2 -2
- package/dist/types/index.d.ts +7 -7
- package/dist/types/index.js +23 -23
- package/dist/types/logger.d.ts +6 -6
- package/dist/types/logger.js +2 -2
- package/dist/types/options.d.ts +31 -31
- package/dist/types/options.js +3 -3
- package/dist/types/public_helpers.d.ts +19 -14
- package/dist/types/public_helpers.js +2 -2
- package/dist/types/public_helpers_internal.d.ts +27 -25
- package/dist/types/public_helpers_internal.js +2 -2
- package/dist/types/requests.d.ts +14 -14
- package/dist/types/requests.js +2 -2
- package/dist/types/socket.d.ts +23 -23
- package/dist/types/socket.js +2 -2
- package/dist/types/subscriptions.d.ts +20 -20
- package/dist/types/subscriptions.js +2 -2
- package/dist/utils.d.ts +2 -2
- package/dist/utils.js +15 -15
- package/dist-es/ApiConstants.d.ts +6 -6
- package/dist-es/ApiConstants.js +5 -5
- package/dist-es/NodeSocket.d.ts +4 -4
- package/dist-es/NodeSocket.js +4 -4
- package/dist-es/Promise.d.ts +8 -8
- package/dist-es/Promise.js +24 -24
- package/dist-es/PublicHelpers.d.ts +2 -2
- package/dist-es/PublicHelpers.js +90 -95
- package/dist-es/PublicHelpers.js.map +1 -1
- package/dist-es/SocketBase.d.ts +4 -4
- package/dist-es/SocketBase.js +346 -338
- package/dist-es/SocketBase.js.map +1 -1
- package/dist-es/SocketLogger.d.ts +9 -9
- package/dist-es/SocketLogger.js +68 -68
- package/dist-es/SocketLogger.js.map +1 -1
- package/dist-es/SocketRequestHandler.d.ts +14 -14
- package/dist-es/SocketRequestHandler.js +163 -157
- package/dist-es/SocketRequestHandler.js.map +1 -1
- package/dist-es/SocketSubscriptionHandler.d.ts +11 -11
- package/dist-es/SocketSubscriptionHandler.js +156 -153
- package/dist-es/SocketSubscriptionHandler.js.map +1 -1
- package/dist-es/types/api.d.ts +30 -30
- package/dist-es/types/api.js +2 -2
- package/dist-es/types/api_internal.d.ts +24 -24
- package/dist-es/types/api_internal.js +1 -1
- package/dist-es/types/index.d.ts +7 -7
- package/dist-es/types/index.js +7 -7
- package/dist-es/types/logger.d.ts +6 -6
- package/dist-es/types/logger.js +1 -1
- package/dist-es/types/options.d.ts +31 -31
- package/dist-es/types/options.js +2 -2
- package/dist-es/types/public_helpers.d.ts +19 -14
- package/dist-es/types/public_helpers.js +1 -1
- package/dist-es/types/public_helpers_internal.d.ts +27 -25
- package/dist-es/types/public_helpers_internal.js +1 -1
- package/dist-es/types/requests.d.ts +14 -14
- package/dist-es/types/requests.js +1 -1
- package/dist-es/types/socket.d.ts +23 -23
- package/dist-es/types/socket.js +1 -1
- package/dist-es/types/subscriptions.d.ts +20 -20
- package/dist-es/types/subscriptions.js +1 -1
- package/dist-es/utils.d.ts +2 -2
- package/dist-es/utils.js +11 -11
- package/jest.config.js +0 -3
- package/package.json +5 -5
- package/src/PublicHelpers.ts +10 -9
- package/src/SocketLogger.ts +1 -1
- package/src/SocketRequestHandler.ts +2 -2
- package/src/tests/Socket.test.ts +4 -9
- package/src/tests/helpers.ts +7 -2
- package/src/tests/public_helpers.test.ts +4 -4
- package/src/types/public_helpers.ts +7 -1
- package/src/types/public_helpers_internal.ts +3 -1
- package/tsconfig.json +2 -3
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"SocketBase.js","sourceRoot":"","sources":["../src/SocketBase.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAE7C,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAC7C,OAAO,yBAAyB,MAAM,gCAAgC,CAAC;AACvE,OAAO,oBAAoB,MAAM,2BAA2B,CAAC;AAE7D,OAAO,SAAS,MAAM,WAAW,CAAC;AAClC,OAAO,OAAO,MAAM,cAAc,CAAC;AAkBnC,YAAY;AACZ,MAAM,cAAc,GAAkC;IACpD,aAAa,EAAE,IAAI;IACnB,iBAAiB,EAAE,EAAE;IACrB,WAAW,EAAE,KAAK;CACnB,CAAC;AAEF,MAAM,SAAS,GAAG,CAAC,WAAqC,EAAE,aAAwB,EAAE,EAAE;IACpF,MAAM,OAAO,
|
1
|
+
{"version":3,"file":"SocketBase.js","sourceRoot":"","sources":["../src/SocketBase.ts"],"names":[],"mappings":"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"}
|
@@ -1,9 +1,9 @@
|
|
1
|
-
import * as Options from './types/options.js';
|
2
|
-
import { Logger } from './types/logger.js';
|
3
|
-
export declare const LOG_NONE = "none";
|
4
|
-
export declare const LOG_ERROR = "error";
|
5
|
-
export declare const LOG_WARN = "warn";
|
6
|
-
export declare const LOG_INFO = "info";
|
7
|
-
export declare const LOG_VERBOSE = "verbose";
|
8
|
-
declare const Logger: ({ logLevel: logSetting, logOutput }: Options.LoggerOptions) => Logger;
|
9
|
-
export default Logger;
|
1
|
+
import * as Options from './types/options.js';
|
2
|
+
import { Logger } from './types/logger.js';
|
3
|
+
export declare const LOG_NONE = "none";
|
4
|
+
export declare const LOG_ERROR = "error";
|
5
|
+
export declare const LOG_WARN = "warn";
|
6
|
+
export declare const LOG_INFO = "info";
|
7
|
+
export declare const LOG_VERBOSE = "verbose";
|
8
|
+
declare const Logger: ({ logLevel: logSetting, logOutput }: Options.LoggerOptions) => Logger;
|
9
|
+
export default Logger;
|
package/dist-es/SocketLogger.js
CHANGED
@@ -1,69 +1,69 @@
|
|
1
|
-
import chalk from 'chalk';
|
2
|
-
// @ts-ignore
|
3
|
-
import { isBrowser, isJsDom } from 'is-in-browser';
|
4
|
-
import invariant from 'invariant';
|
5
|
-
export const LOG_NONE = 'none';
|
6
|
-
export const LOG_ERROR = 'error';
|
7
|
-
export const LOG_WARN = 'warn';
|
8
|
-
export const LOG_INFO = 'info';
|
9
|
-
export const LOG_VERBOSE = 'verbose';
|
10
|
-
const Severities = {
|
11
|
-
[LOG_NONE]: -1,
|
12
|
-
[LOG_ERROR]: 0,
|
13
|
-
[LOG_WARN]: 1,
|
14
|
-
[LOG_INFO]: 2,
|
15
|
-
[LOG_VERBOSE]: 3,
|
16
|
-
};
|
17
|
-
// Should we format the line with timestamp and coloring or let the logger implementation to handle it?
|
18
|
-
// Do this when running in terminal (node.js/tests in browser env)
|
19
|
-
const shouldFormatLine = isJsDom || !isBrowser;
|
20
|
-
const Logger = ({ logLevel: logSetting = LOG_VERBOSE, logOutput = console }) => {
|
21
|
-
const logLevel = Severities[logSetting];
|
22
|
-
invariant(
|
23
|
-
// @ts-ignore: This condition will always return true since the function is always defined
|
24
|
-
logOutput.log && logOutput.info && logOutput.warn && logOutput.error, 'Invalid logOutput provided');
|
25
|
-
const formatCurrentTime = () => {
|
26
|
-
const d = new Date();
|
27
|
-
return `[${d.toLocaleDateString()} ${d.toLocaleTimeString()}:${d.getMilliseconds()}]`;
|
28
|
-
};
|
29
|
-
const print = (args, printHandler, argFormat) => {
|
30
|
-
let printableArgs = [...Array.prototype.slice.call(args)];
|
31
|
-
if (shouldFormatLine && argFormat) {
|
32
|
-
// Add the current time as well
|
33
|
-
printableArgs = [
|
34
|
-
chalk.magenta(formatCurrentTime()),
|
35
|
-
...printableArgs.map(arg => argFormat(typeof arg === 'object' ? JSON.stringify(arg, null, ' ') : arg)),
|
36
|
-
];
|
37
|
-
}
|
38
|
-
printHandler.apply(logOutput, printableArgs);
|
39
|
-
};
|
40
|
-
const Impl = {
|
41
|
-
verbose() {
|
42
|
-
if (logLevel < Severities[LOG_VERBOSE]) {
|
43
|
-
return;
|
44
|
-
}
|
45
|
-
print(arguments, logOutput.log, chalk.gray);
|
46
|
-
},
|
47
|
-
info() {
|
48
|
-
if (logLevel < Severities[LOG_INFO]) {
|
49
|
-
return;
|
50
|
-
}
|
51
|
-
print(arguments, logOutput.info, chalk.white.bold);
|
52
|
-
},
|
53
|
-
warn() {
|
54
|
-
if (logLevel < Severities[LOG_WARN]) {
|
55
|
-
return;
|
56
|
-
}
|
57
|
-
print(arguments, logOutput.warn, chalk.yellow.bold);
|
58
|
-
},
|
59
|
-
error() {
|
60
|
-
if (logLevel < Severities[LOG_ERROR]) {
|
61
|
-
return;
|
62
|
-
}
|
63
|
-
print(arguments, logOutput.error, chalk.red.bold);
|
64
|
-
},
|
65
|
-
};
|
66
|
-
return Impl;
|
67
|
-
};
|
68
|
-
export default Logger;
|
1
|
+
import chalk from 'chalk';
|
2
|
+
// @ts-ignore
|
3
|
+
import { isBrowser, isJsDom } from 'is-in-browser';
|
4
|
+
import invariant from 'invariant';
|
5
|
+
export const LOG_NONE = 'none';
|
6
|
+
export const LOG_ERROR = 'error';
|
7
|
+
export const LOG_WARN = 'warn';
|
8
|
+
export const LOG_INFO = 'info';
|
9
|
+
export const LOG_VERBOSE = 'verbose';
|
10
|
+
const Severities = {
|
11
|
+
[LOG_NONE]: -1,
|
12
|
+
[LOG_ERROR]: 0,
|
13
|
+
[LOG_WARN]: 1,
|
14
|
+
[LOG_INFO]: 2,
|
15
|
+
[LOG_VERBOSE]: 3,
|
16
|
+
};
|
17
|
+
// Should we format the line with timestamp and coloring or let the logger implementation to handle it?
|
18
|
+
// Do this when running in terminal (node.js/tests in browser env)
|
19
|
+
const shouldFormatLine = isJsDom || !isBrowser;
|
20
|
+
const Logger = ({ logLevel: logSetting = LOG_VERBOSE, logOutput = console }) => {
|
21
|
+
const logLevel = Severities[logSetting];
|
22
|
+
invariant(
|
23
|
+
// @ts-ignore: This condition will always return true since the function is always defined
|
24
|
+
logOutput.log && logOutput.info && logOutput.warn && logOutput.error, 'Invalid logOutput provided');
|
25
|
+
const formatCurrentTime = () => {
|
26
|
+
const d = new Date();
|
27
|
+
return `[${d.toLocaleDateString()} ${d.toLocaleTimeString()}:${d.getMilliseconds()}]`;
|
28
|
+
};
|
29
|
+
const print = (args, printHandler, argFormat) => {
|
30
|
+
let printableArgs = [...Array.prototype.slice.call(args)];
|
31
|
+
if (shouldFormatLine && argFormat) {
|
32
|
+
// Add the current time as well
|
33
|
+
printableArgs = [
|
34
|
+
chalk.magenta(formatCurrentTime()),
|
35
|
+
...printableArgs.map(arg => argFormat(typeof arg === 'object' ? JSON.stringify(arg, null, ' ') : arg)),
|
36
|
+
];
|
37
|
+
}
|
38
|
+
printHandler.apply(logOutput, printableArgs);
|
39
|
+
};
|
40
|
+
const Impl = {
|
41
|
+
verbose() {
|
42
|
+
if (logLevel < Severities[LOG_VERBOSE]) {
|
43
|
+
return;
|
44
|
+
}
|
45
|
+
print(arguments, logOutput.log, chalk.gray);
|
46
|
+
},
|
47
|
+
info() {
|
48
|
+
if (logLevel < Severities[LOG_INFO]) {
|
49
|
+
return;
|
50
|
+
}
|
51
|
+
print(arguments, logOutput.info, chalk.white.bold);
|
52
|
+
},
|
53
|
+
warn() {
|
54
|
+
if (logLevel < Severities[LOG_WARN]) {
|
55
|
+
return;
|
56
|
+
}
|
57
|
+
print(arguments, logOutput.warn, chalk.yellow.bold);
|
58
|
+
},
|
59
|
+
error() {
|
60
|
+
if (logLevel < Severities[LOG_ERROR]) {
|
61
|
+
return;
|
62
|
+
}
|
63
|
+
print(arguments, logOutput.error, chalk.red.bold);
|
64
|
+
},
|
65
|
+
};
|
66
|
+
return Impl;
|
67
|
+
};
|
68
|
+
export default Logger;
|
69
69
|
//# sourceMappingURL=SocketLogger.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"SocketLogger.js","sourceRoot":"","sources":["../src/SocketLogger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,aAAa;AACb,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,SAAS,MAAM,WAAW,CAAC;AAMlC,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC;AAC/B,MAAM,CAAC,MAAM,SAAS,GAAG,OAAO,CAAC;AACjC,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC;AAC/B,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC;AAC/B,MAAM,CAAC,MAAM,WAAW,GAAG,SAAS,CAAC;AAErC,MAAM,UAAU,GAAG;IACjB,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACd,CAAC,SAAS,CAAC,EAAE,CAAC;IACd,CAAC,QAAQ,CAAC,EAAE,CAAC;IACb,CAAC,QAAQ,CAAC,EAAE,CAAC;IACb,CAAC,WAAW,CAAC,EAAE,CAAC;CACjB,CAAC;AAGF,uGAAuG;AACvG,kEAAkE;AAClE,MAAM,gBAAgB,GAAG,OAAO,IAAI,CAAC,SAAS,CAAC;AAE/C,MAAM,MAAM,GAAG,CAAC,EAAE,QAAQ,EAAE,UAAU,GAAG,WAAW,EAAE,SAAS,GAAG,OAAO,EAAyB,EAAE,EAAE;IACpG,MAAM,QAAQ,GAAG,UAAU,CAAC,
|
1
|
+
{"version":3,"file":"SocketLogger.js","sourceRoot":"","sources":["../src/SocketLogger.ts"],"names":[],"mappings":"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"}
|
@@ -1,14 +1,14 @@
|
|
1
|
-
import * as API from './types/api.js';
|
2
|
-
import * as APIInternal from './types/api_internal.js';
|
3
|
-
import * as Options from './types/options.js';
|
4
|
-
import * as Socket from './types/socket.js';
|
5
|
-
import { Logger } from './types/logger.js';
|
6
|
-
import { SocketRequestMethods } from './types/requests.js';
|
7
|
-
declare const SocketRequestHandler: (socket: () => Socket.APISocket, logger: Logger, { requestTimeout, ignoredRequestPaths }: Options.SocketRequestOptions) => {
|
8
|
-
socket: SocketRequestMethods;
|
9
|
-
onSocketConnected(): void;
|
10
|
-
onSocketDisconnected(): void;
|
11
|
-
handleMessage(messageObj: APIInternal.RequestSuccessResponse | APIInternal.RequestErrorResponse): void;
|
12
|
-
postAuthenticate(path: string, data: API.TokenAuthenticationData | API.CredentialsAuthenticationData | API.RefreshTokenAuthenticationData): Promise<any>;
|
13
|
-
};
|
14
|
-
export default SocketRequestHandler;
|
1
|
+
import * as API from './types/api.js';
|
2
|
+
import * as APIInternal from './types/api_internal.js';
|
3
|
+
import * as Options from './types/options.js';
|
4
|
+
import * as Socket from './types/socket.js';
|
5
|
+
import { Logger } from './types/logger.js';
|
6
|
+
import { SocketRequestMethods } from './types/requests.js';
|
7
|
+
declare const SocketRequestHandler: (socket: () => Socket.APISocket, logger: Logger, { requestTimeout, ignoredRequestPaths }: Options.SocketRequestOptions) => {
|
8
|
+
socket: SocketRequestMethods;
|
9
|
+
onSocketConnected(): void;
|
10
|
+
onSocketDisconnected(): void;
|
11
|
+
handleMessage(messageObj: APIInternal.RequestSuccessResponse | APIInternal.RequestErrorResponse): void;
|
12
|
+
postAuthenticate(path: string, data: API.TokenAuthenticationData | API.CredentialsAuthenticationData | API.RefreshTokenAuthenticationData): Promise<any>;
|
13
|
+
};
|
14
|
+
export default SocketRequestHandler;
|
@@ -1,158 +1,164 @@
|
|
1
|
-
import chalk from 'chalk';
|
2
|
-
import invariant from 'invariant';
|
3
|
-
import Promise from './Promise.js';
|
4
|
-
import { eventIgnored } from './utils.js';
|
5
|
-
const SocketRequestHandler = (socket, logger, { requestTimeout = 30, ignoredRequestPaths }) => {
|
6
|
-
let callbacks = {};
|
7
|
-
let currentCallbackId = 0;
|
8
|
-
let timeoutReportInterval;
|
9
|
-
// Internal
|
10
|
-
// This creates a new callback ID for a request
|
11
|
-
const getCallbackId = () => {
|
12
|
-
if (currentCallbackId > 100000) {
|
13
|
-
currentCallbackId = 0;
|
14
|
-
}
|
15
|
-
currentCallbackId += 1;
|
16
|
-
return currentCallbackId;
|
17
|
-
};
|
18
|
-
const filterPassword = (data) => {
|
19
|
-
if (!data || !data.hasOwnProperty('password')) {
|
20
|
-
return data;
|
21
|
-
}
|
22
|
-
return
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
const
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
return sendRequest('
|
86
|
-
},
|
87
|
-
|
88
|
-
return sendRequest('
|
89
|
-
},
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
return
|
100
|
-
},
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
}
|
105
|
-
|
106
|
-
|
107
|
-
};
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
}
|
129
|
-
callbacks[id].
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
};
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
},
|
154
|
-
|
155
|
-
|
156
|
-
}
|
157
|
-
|
1
|
+
import chalk from 'chalk';
|
2
|
+
import invariant from 'invariant';
|
3
|
+
import Promise from './Promise.js';
|
4
|
+
import { eventIgnored } from './utils.js';
|
5
|
+
const SocketRequestHandler = (socket, logger, { requestTimeout = 30, ignoredRequestPaths }) => {
|
6
|
+
let callbacks = {};
|
7
|
+
let currentCallbackId = 0;
|
8
|
+
let timeoutReportInterval;
|
9
|
+
// Internal
|
10
|
+
// This creates a new callback ID for a request
|
11
|
+
const getCallbackId = () => {
|
12
|
+
if (currentCallbackId > 100000) {
|
13
|
+
currentCallbackId = 0;
|
14
|
+
}
|
15
|
+
currentCallbackId += 1;
|
16
|
+
return currentCallbackId;
|
17
|
+
};
|
18
|
+
const filterPassword = (data) => {
|
19
|
+
if (!data || !data.hasOwnProperty('password')) {
|
20
|
+
return data;
|
21
|
+
}
|
22
|
+
return {
|
23
|
+
...data,
|
24
|
+
password: '(hidden)',
|
25
|
+
};
|
26
|
+
};
|
27
|
+
const sendRequest = (method, path, data, authenticating = false) => {
|
28
|
+
// Pre-checks
|
29
|
+
if (!authenticating && !socket().isConnected()) {
|
30
|
+
logger.warn(`Attempting to send request on a non-authenticated socket: ${path}`);
|
31
|
+
return Promise.reject('Not authorized');
|
32
|
+
}
|
33
|
+
if (!socket().nativeSocket) {
|
34
|
+
logger.warn(`Attempting to send request without a socket: ${path}`);
|
35
|
+
return Promise.reject('No socket');
|
36
|
+
}
|
37
|
+
const callbackId = getCallbackId();
|
38
|
+
// Reporting
|
39
|
+
invariant(path, 'Attempting socket request without a path');
|
40
|
+
const ignored = eventIgnored(path, ignoredRequestPaths);
|
41
|
+
if (!ignored) {
|
42
|
+
logger.verbose(chalk.white.bold(callbackId.toString()), method, path, data ? filterPassword(data) : '(no data)');
|
43
|
+
}
|
44
|
+
// Callback
|
45
|
+
const resolver = Promise.pending();
|
46
|
+
callbacks[callbackId.toString()] = {
|
47
|
+
time: Date.now(),
|
48
|
+
resolver,
|
49
|
+
ignored,
|
50
|
+
};
|
51
|
+
// Actual request
|
52
|
+
const request = {
|
53
|
+
path,
|
54
|
+
method,
|
55
|
+
data,
|
56
|
+
callback_id: callbackId,
|
57
|
+
};
|
58
|
+
socket().nativeSocket.send(JSON.stringify(request));
|
59
|
+
return resolver.promise;
|
60
|
+
};
|
61
|
+
// Report timed out requests
|
62
|
+
// This is more about spotting backend issues, such as frozen threads and dropped responses
|
63
|
+
// The socket itself should handle actual connection issues
|
64
|
+
const reportTimeouts = () => {
|
65
|
+
const now = Date.now();
|
66
|
+
Object.keys(callbacks).forEach(callbackId => {
|
67
|
+
const request = callbacks[callbackId];
|
68
|
+
if (request.time + (requestTimeout * 1000) < now) {
|
69
|
+
logger.warn(`Request ${callbackId} timed out`);
|
70
|
+
}
|
71
|
+
});
|
72
|
+
};
|
73
|
+
const cancelPendingRequests = (message = 'Request cancelled') => {
|
74
|
+
Object.keys(callbacks)
|
75
|
+
.forEach(id => {
|
76
|
+
logger.verbose(`Canceling a pending request ${id} (${message})`);
|
77
|
+
const cb = callbacks[id];
|
78
|
+
cb.resolver.reject(message);
|
79
|
+
});
|
80
|
+
callbacks = {};
|
81
|
+
};
|
82
|
+
// Public
|
83
|
+
const RequestsPublic = {
|
84
|
+
put: (path, data) => {
|
85
|
+
return sendRequest('PUT', path, data);
|
86
|
+
},
|
87
|
+
patch: (path, data) => {
|
88
|
+
return sendRequest('PATCH', path, data);
|
89
|
+
},
|
90
|
+
post: (path, data) => {
|
91
|
+
return sendRequest('POST', path, data);
|
92
|
+
},
|
93
|
+
delete: (path) => {
|
94
|
+
//invariant(!data, 'No data is allowed for delete command');
|
95
|
+
return sendRequest('DELETE', path);
|
96
|
+
},
|
97
|
+
get: (path) => {
|
98
|
+
//invariant(!data, 'No data is allowed for get command');
|
99
|
+
return sendRequest('GET', path);
|
100
|
+
},
|
101
|
+
getPendingRequestCount: () => {
|
102
|
+
return Object.keys(callbacks).length;
|
103
|
+
},
|
104
|
+
};
|
105
|
+
Object.assign(RequestsPublic, {
|
106
|
+
reportRequestTimeouts: reportTimeouts, // internal method for testing
|
107
|
+
});
|
108
|
+
const formatFieldError = (error) => {
|
109
|
+
return error.field && error.code ? `${error.field} (${error.code})` : '';
|
110
|
+
};
|
111
|
+
// Shared for the socket
|
112
|
+
const RequestsInternal = {
|
113
|
+
onSocketConnected() {
|
114
|
+
timeoutReportInterval = setInterval(reportTimeouts, 30000);
|
115
|
+
},
|
116
|
+
onSocketDisconnected() {
|
117
|
+
// Clear callbacks
|
118
|
+
cancelPendingRequests('Socket disconnected');
|
119
|
+
clearTimeout(timeoutReportInterval);
|
120
|
+
},
|
121
|
+
handleMessage(messageObj) {
|
122
|
+
const id = messageObj.callback_id;
|
123
|
+
if (!callbacks.hasOwnProperty(id)) {
|
124
|
+
logger.warn('No pending request for an API response', id, messageObj);
|
125
|
+
return;
|
126
|
+
}
|
127
|
+
if (messageObj.code >= 200 && messageObj.code <= 204) {
|
128
|
+
const { data } = messageObj;
|
129
|
+
if (!callbacks[id].ignored) {
|
130
|
+
logger.verbose(chalk.green(id.toString()), 'SUCCEEDED', data ? data : '(no data)');
|
131
|
+
}
|
132
|
+
callbacks[id].resolver.resolve(data);
|
133
|
+
}
|
134
|
+
else {
|
135
|
+
const errorMessageObj = messageObj;
|
136
|
+
if (!errorMessageObj.error) {
|
137
|
+
// API should always return an error message but this isn't always the case
|
138
|
+
// (e.g. https://github.com/airdcpp/airdcpp-windows/commit/596b31a9c8c4e72f6c9279972a40ea30f10798c4)
|
139
|
+
logger.warn('Error message missing from the response (this is an API bug that should be reported)', id, messageObj);
|
140
|
+
}
|
141
|
+
const { code } = errorMessageObj;
|
142
|
+
const error = errorMessageObj.error || {
|
143
|
+
message: '(no error description)'
|
144
|
+
};
|
145
|
+
logger.warn(id, code, error.message, formatFieldError(error));
|
146
|
+
callbacks[id].resolver.reject({
|
147
|
+
message: error.message,
|
148
|
+
code,
|
149
|
+
json: error
|
150
|
+
});
|
151
|
+
}
|
152
|
+
delete callbacks[id];
|
153
|
+
},
|
154
|
+
postAuthenticate(path, data) {
|
155
|
+
return sendRequest('POST', path, data, true);
|
156
|
+
},
|
157
|
+
};
|
158
|
+
return {
|
159
|
+
...RequestsInternal,
|
160
|
+
socket: RequestsPublic,
|
161
|
+
};
|
162
|
+
};
|
163
|
+
export default SocketRequestHandler;
|
158
164
|
//# sourceMappingURL=SocketRequestHandler.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"SocketRequestHandler.js","sourceRoot":"","sources":["../src/SocketRequestHandler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,SAAS,MAAM,WAAW,CAAC;AAClC,OAAO,OAA0B,MAAM,cAAc,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAiB1C,MAAM,oBAAoB,GAAG,CAC3B,MAA8B,EAC9B,MAAc,EACd,EAAE,cAAc,GAAG,EAAE,EAAE,mBAAmB,EAAgC,EAC1E,EAAE;IAEF,IAAI,SAAS,
|
1
|
+
{"version":3,"file":"SocketRequestHandler.js","sourceRoot":"","sources":["../src/SocketRequestHandler.ts"],"names":[],"mappings":"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"}
|
@@ -1,11 +1,11 @@
|
|
1
|
-
import { Logger } from './types/logger.js';
|
2
|
-
import * as APIInternal from './types/api_internal.js';
|
3
|
-
import * as Options from './types/options.js';
|
4
|
-
import * as Socket from './types/socket.js';
|
5
|
-
import * as Subscriptions from './types/subscriptions.js';
|
6
|
-
declare const SocketSubscriptionHandler: (socket: () => Socket.APISocket, logger: Logger, { ignoredListenerEvents }: Options.SocketSubscriptionOptions) => {
|
7
|
-
socket: Subscriptions.SocketSubscriptions;
|
8
|
-
onSocketDisconnected(): void;
|
9
|
-
handleMessage(message: APIInternal.IncomingSubscriptionEvent): void;
|
10
|
-
};
|
11
|
-
export default SocketSubscriptionHandler;
|
1
|
+
import { Logger } from './types/logger.js';
|
2
|
+
import * as APIInternal from './types/api_internal.js';
|
3
|
+
import * as Options from './types/options.js';
|
4
|
+
import * as Socket from './types/socket.js';
|
5
|
+
import * as Subscriptions from './types/subscriptions.js';
|
6
|
+
declare const SocketSubscriptionHandler: (socket: () => Socket.APISocket, logger: Logger, { ignoredListenerEvents }: Options.SocketSubscriptionOptions) => {
|
7
|
+
socket: Subscriptions.SocketSubscriptions;
|
8
|
+
onSocketDisconnected(): void;
|
9
|
+
handleMessage(message: APIInternal.IncomingSubscriptionEvent): void;
|
10
|
+
};
|
11
|
+
export default SocketSubscriptionHandler;
|