node-ts 6.0.1 → 6.1.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/.github/workflows/CD.yml +2 -2
- package/.github/workflows/CI.yml +2 -2
- package/lib/node-ts.d.ts +1 -2
- package/lib/node-ts.js +36 -41
- package/lib/queryStrings.js +2 -3
- package/package.json +4 -4
package/.github/workflows/CD.yml
CHANGED
package/.github/workflows/CI.yml
CHANGED
|
@@ -12,10 +12,10 @@ jobs:
|
|
|
12
12
|
node-version: [16.x, 18.x, 20.x]
|
|
13
13
|
|
|
14
14
|
steps:
|
|
15
|
-
- uses: actions/checkout@
|
|
15
|
+
- uses: actions/checkout@v4
|
|
16
16
|
|
|
17
17
|
- name: Use Node.js ${{ matrix.node-version }}
|
|
18
|
-
uses: actions/setup-node@
|
|
18
|
+
uses: actions/setup-node@v4
|
|
19
19
|
with:
|
|
20
20
|
node-version: ${{ matrix.node-version }}
|
|
21
21
|
cache: npm
|
package/lib/node-ts.d.ts
CHANGED
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
* @autor Niklas Mollenhauer <holzig@outlook.com>
|
|
3
3
|
* @autor Tim Kluge <timklge@wh2.tu-dresden.de>
|
|
4
4
|
*/
|
|
5
|
-
/// <reference types="node" />
|
|
6
5
|
import { EventEmitter } from "events";
|
|
7
6
|
import type { MapLike } from "./types";
|
|
8
7
|
/**
|
|
@@ -249,7 +248,7 @@ export interface RegisterNotificationsParamsGeneric extends QueryResponseItem {
|
|
|
249
248
|
}
|
|
250
249
|
export interface RegisterNotificationsChannelParams extends QueryResponseItem {
|
|
251
250
|
event: "channel";
|
|
252
|
-
|
|
251
|
+
id: number;
|
|
253
252
|
}
|
|
254
253
|
export type RegisterNotificationsParams = RegisterNotificationsParamsGeneric | RegisterNotificationsChannelParams;
|
|
255
254
|
export interface SendTextMessageParams extends QueryResponseItem {
|
package/lib/node-ts.js
CHANGED
|
@@ -60,42 +60,37 @@ class TeamSpeakClient extends events_1.EventEmitter {
|
|
|
60
60
|
* Gets called on an opened connection
|
|
61
61
|
*/
|
|
62
62
|
onConnect(connectionEstablished, error) {
|
|
63
|
-
var _a, e_1, _b, _c;
|
|
64
63
|
return __awaiter(this, void 0, void 0, function* () {
|
|
64
|
+
var _a, e_1, _b, _c;
|
|
65
65
|
const lineGenerator = (0, stringio_1.chunksToLinesAsync)(this.socket);
|
|
66
66
|
let lineCounter = 0;
|
|
67
67
|
try {
|
|
68
|
-
for (var _d = true, lineGenerator_1 = __asyncValues(lineGenerator), lineGenerator_1_1; lineGenerator_1_1 = yield lineGenerator_1.next(), _a = lineGenerator_1_1.done, !_a;) {
|
|
68
|
+
for (var _d = true, lineGenerator_1 = __asyncValues(lineGenerator), lineGenerator_1_1; lineGenerator_1_1 = yield lineGenerator_1.next(), _a = lineGenerator_1_1.done, !_a; _d = true) {
|
|
69
69
|
_c = lineGenerator_1_1.value;
|
|
70
70
|
_d = false;
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
return;
|
|
83
|
-
}
|
|
84
|
-
continue;
|
|
85
|
-
}
|
|
86
|
-
case 2:
|
|
87
|
-
// We have read a second non-empty line, so we are ready to take commands
|
|
88
|
-
this.isConnected = true;
|
|
89
|
-
connectionEstablished();
|
|
90
|
-
continue; // Welcome message, followed by empty line (which is skipped)
|
|
91
|
-
default: {
|
|
92
|
-
this.handleSingleLine(line);
|
|
93
|
-
this.checkQueue();
|
|
71
|
+
const lineWithNewLine = _c;
|
|
72
|
+
const line = (0, stringio_1.chomp)(lineWithNewLine).trim();
|
|
73
|
+
if (line === "")
|
|
74
|
+
continue;
|
|
75
|
+
++lineCounter;
|
|
76
|
+
switch (lineCounter) {
|
|
77
|
+
case 1: {
|
|
78
|
+
if (line !== "TS3") {
|
|
79
|
+
this.isConnected = false;
|
|
80
|
+
error(new Error("Remove server is not a TS3 Query Server endpoint."));
|
|
81
|
+
return;
|
|
94
82
|
}
|
|
83
|
+
continue;
|
|
84
|
+
}
|
|
85
|
+
case 2:
|
|
86
|
+
// We have read a second non-empty line, so we are ready to take commands
|
|
87
|
+
this.isConnected = true;
|
|
88
|
+
connectionEstablished();
|
|
89
|
+
continue; // Welcome message, followed by empty line (which is skipped)
|
|
90
|
+
default: {
|
|
91
|
+
this.handleSingleLine(line);
|
|
92
|
+
this.checkQueue();
|
|
95
93
|
}
|
|
96
|
-
}
|
|
97
|
-
finally {
|
|
98
|
-
_d = true;
|
|
99
94
|
}
|
|
100
95
|
}
|
|
101
96
|
}
|
|
@@ -208,7 +203,7 @@ class TeamSpeakClient extends events_1.EventEmitter {
|
|
|
208
203
|
});
|
|
209
204
|
}
|
|
210
205
|
subscribeChannelEvents(channelId) {
|
|
211
|
-
return this.send("servernotifyregister", { event: "channel", channelId });
|
|
206
|
+
return this.send("servernotifyregister", { event: "channel", id: channelId });
|
|
212
207
|
}
|
|
213
208
|
subscribeServerEvents() {
|
|
214
209
|
return this.send("servernotifyregister", { event: "server" });
|
|
@@ -297,9 +292,9 @@ class TeamSpeakClient extends events_1.EventEmitter {
|
|
|
297
292
|
return this.setTimeout(0);
|
|
298
293
|
}
|
|
299
294
|
}
|
|
295
|
+
exports.TeamSpeakClient = TeamSpeakClient;
|
|
300
296
|
TeamSpeakClient.DefaultHost = "localhost";
|
|
301
297
|
TeamSpeakClient.DefaultPort = 10011;
|
|
302
|
-
exports.TeamSpeakClient = TeamSpeakClient;
|
|
303
298
|
/*
|
|
304
299
|
|
|
305
300
|
Enums imported from documentation.
|
|
@@ -309,7 +304,7 @@ var YesNo;
|
|
|
309
304
|
(function (YesNo) {
|
|
310
305
|
YesNo[YesNo["No"] = 0] = "No";
|
|
311
306
|
YesNo[YesNo["Yes"] = 1] = "Yes";
|
|
312
|
-
})(YesNo
|
|
307
|
+
})(YesNo || (exports.YesNo = YesNo = {}));
|
|
313
308
|
var HostMessageMode;
|
|
314
309
|
(function (HostMessageMode) {
|
|
315
310
|
/**
|
|
@@ -324,7 +319,7 @@ var HostMessageMode;
|
|
|
324
319
|
* 3: display message in modal dialog and close connection
|
|
325
320
|
*/
|
|
326
321
|
HostMessageMode[HostMessageMode["MODALQUIT"] = 3] = "MODALQUIT";
|
|
327
|
-
})(HostMessageMode
|
|
322
|
+
})(HostMessageMode || (exports.HostMessageMode = HostMessageMode = {}));
|
|
328
323
|
var HostBannerMode;
|
|
329
324
|
(function (HostBannerMode) {
|
|
330
325
|
/**
|
|
@@ -339,7 +334,7 @@ var HostBannerMode;
|
|
|
339
334
|
* 2: adjust and keep aspect ratio
|
|
340
335
|
*/
|
|
341
336
|
HostBannerMode[HostBannerMode["KEEPASPECT"] = 2] = "KEEPASPECT";
|
|
342
|
-
})(HostBannerMode
|
|
337
|
+
})(HostBannerMode || (exports.HostBannerMode = HostBannerMode = {}));
|
|
343
338
|
var Codec;
|
|
344
339
|
(function (Codec) {
|
|
345
340
|
/**
|
|
@@ -358,7 +353,7 @@ var Codec;
|
|
|
358
353
|
* 3: celt mono (mono, 16bit, 48kHz)
|
|
359
354
|
*/
|
|
360
355
|
Codec[Codec["CELT_MONO"] = 3] = "CELT_MONO";
|
|
361
|
-
})(Codec
|
|
356
|
+
})(Codec || (exports.Codec = Codec = {}));
|
|
362
357
|
var CodecEncryptionMode;
|
|
363
358
|
(function (CodecEncryptionMode) {
|
|
364
359
|
/**
|
|
@@ -373,7 +368,7 @@ var CodecEncryptionMode;
|
|
|
373
368
|
* 2: globally enabled
|
|
374
369
|
*/
|
|
375
370
|
CodecEncryptionMode[CodecEncryptionMode["ENABLED"] = 2] = "ENABLED";
|
|
376
|
-
})(CodecEncryptionMode
|
|
371
|
+
})(CodecEncryptionMode || (exports.CodecEncryptionMode = CodecEncryptionMode = {}));
|
|
377
372
|
var TextMessageTargetMode;
|
|
378
373
|
(function (TextMessageTargetMode) {
|
|
379
374
|
/**
|
|
@@ -388,7 +383,7 @@ var TextMessageTargetMode;
|
|
|
388
383
|
* 3: target is a virtual server
|
|
389
384
|
*/
|
|
390
385
|
TextMessageTargetMode[TextMessageTargetMode["SERVER"] = 3] = "SERVER";
|
|
391
|
-
})(TextMessageTargetMode
|
|
386
|
+
})(TextMessageTargetMode || (exports.TextMessageTargetMode = TextMessageTargetMode = {}));
|
|
392
387
|
var LogLevel;
|
|
393
388
|
(function (LogLevel) {
|
|
394
389
|
/**
|
|
@@ -407,7 +402,7 @@ var LogLevel;
|
|
|
407
402
|
* 4: informational output
|
|
408
403
|
*/
|
|
409
404
|
LogLevel[LogLevel["INFO"] = 4] = "INFO";
|
|
410
|
-
})(LogLevel
|
|
405
|
+
})(LogLevel || (exports.LogLevel = LogLevel = {}));
|
|
411
406
|
var ReasonIdentifier;
|
|
412
407
|
(function (ReasonIdentifier) {
|
|
413
408
|
/**
|
|
@@ -418,7 +413,7 @@ var ReasonIdentifier;
|
|
|
418
413
|
* 5: kick client from server
|
|
419
414
|
*/
|
|
420
415
|
ReasonIdentifier[ReasonIdentifier["SERVER"] = 5] = "SERVER";
|
|
421
|
-
})(ReasonIdentifier
|
|
416
|
+
})(ReasonIdentifier || (exports.ReasonIdentifier = ReasonIdentifier = {}));
|
|
422
417
|
var PermissionGroupDatabaseTypes;
|
|
423
418
|
(function (PermissionGroupDatabaseTypes) {
|
|
424
419
|
/**
|
|
@@ -433,7 +428,7 @@ var PermissionGroupDatabaseTypes;
|
|
|
433
428
|
* 2: global query group (used for ServerQuery clients)
|
|
434
429
|
*/
|
|
435
430
|
PermissionGroupDatabaseTypes[PermissionGroupDatabaseTypes["QUERY"] = 2] = "QUERY";
|
|
436
|
-
})(PermissionGroupDatabaseTypes
|
|
431
|
+
})(PermissionGroupDatabaseTypes || (exports.PermissionGroupDatabaseTypes = PermissionGroupDatabaseTypes = {}));
|
|
437
432
|
var PermissionGroupTypes;
|
|
438
433
|
(function (PermissionGroupTypes) {
|
|
439
434
|
/**
|
|
@@ -456,7 +451,7 @@ var PermissionGroupTypes;
|
|
|
456
451
|
* 4: channel-client specific permission
|
|
457
452
|
*/
|
|
458
453
|
PermissionGroupTypes[PermissionGroupTypes["CHANNEL_CLIENT"] = 4] = "CHANNEL_CLIENT";
|
|
459
|
-
})(PermissionGroupTypes
|
|
454
|
+
})(PermissionGroupTypes || (exports.PermissionGroupTypes = PermissionGroupTypes = {}));
|
|
460
455
|
var TokenType;
|
|
461
456
|
(function (TokenType) {
|
|
462
457
|
/**
|
|
@@ -467,4 +462,4 @@ var TokenType;
|
|
|
467
462
|
* 1: channel group token (id1={groupID} id2={channelID})
|
|
468
463
|
*/
|
|
469
464
|
TokenType[TokenType["CHANNEL_GROUP"] = 1] = "CHANNEL_GROUP";
|
|
470
|
-
})(TokenType
|
|
465
|
+
})(TokenType || (exports.TokenType = TokenType = {}));
|
package/lib/queryStrings.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.escape = escape;
|
|
4
|
+
exports.unescape = unescape;
|
|
4
5
|
/**
|
|
5
6
|
* Escapes a string so it can be safely used for querying the api.
|
|
6
7
|
* @param {string} s The string to escape.
|
|
@@ -19,7 +20,6 @@ function escape(s) {
|
|
|
19
20
|
r = r.replace(/ /g, "\\s"); // Whitespace
|
|
20
21
|
return r;
|
|
21
22
|
}
|
|
22
|
-
exports.escape = escape;
|
|
23
23
|
/**
|
|
24
24
|
* Unescapes a string so it can be used for processing the response of the api.
|
|
25
25
|
* @param {string} s The string to unescape.
|
|
@@ -38,4 +38,3 @@ function unescape(s) {
|
|
|
38
38
|
r = r.replace(/\\\\/g, "\\"); // Backslash
|
|
39
39
|
return r;
|
|
40
40
|
}
|
|
41
|
-
exports.unescape = unescape;
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"author": "Niklas Mollenhauer <nikeee@outlook.com>",
|
|
3
3
|
"name": "node-ts",
|
|
4
4
|
"description": "TeamSpeak® 3 Server Query client for node.js implemented using TypeScript",
|
|
5
|
-
"version": "6.
|
|
5
|
+
"version": "6.1.2",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
8
8
|
"url": "git://github.com/nikeee/node-ts.git"
|
|
@@ -11,11 +11,11 @@
|
|
|
11
11
|
"types": "lib/index.d.ts",
|
|
12
12
|
"dependencies": {
|
|
13
13
|
"@rauschma/stringio": "^1.4.0",
|
|
14
|
-
"@types/node": "^
|
|
14
|
+
"@types/node": "^22.0.2"
|
|
15
15
|
},
|
|
16
16
|
"devDependencies": {
|
|
17
|
-
"rimraf": "^
|
|
18
|
-
"typescript": "^5.
|
|
17
|
+
"rimraf": "^6.0.1",
|
|
18
|
+
"typescript": "^5.5.4"
|
|
19
19
|
},
|
|
20
20
|
"scripts": {
|
|
21
21
|
"test": "tsc --noEmit",
|