node-ts 5.1.1 → 6.0.0
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/FUNDING.yml +1 -0
- package/.github/dependabot.yml +11 -0
- package/.github/workflows/CD.yml +34 -0
- package/.github/workflows/CI.yml +4 -3
- package/lib/index.js +5 -1
- package/lib/node-ts.d.ts +1 -1
- package/lib/node-ts.js +41 -34
- package/lib/types.d.ts +1 -1
- package/package.json +5 -5
|
@@ -0,0 +1 @@
|
|
|
1
|
+
github: nikeee
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
name: CD
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches:
|
|
6
|
+
- "!*"
|
|
7
|
+
tags:
|
|
8
|
+
- "v*"
|
|
9
|
+
|
|
10
|
+
jobs:
|
|
11
|
+
build:
|
|
12
|
+
runs-on: ubuntu-latest
|
|
13
|
+
|
|
14
|
+
permissions:
|
|
15
|
+
contents: read
|
|
16
|
+
id-token: write
|
|
17
|
+
|
|
18
|
+
steps:
|
|
19
|
+
- uses: actions/checkout@v3
|
|
20
|
+
|
|
21
|
+
- uses: actions/setup-node@v3
|
|
22
|
+
with:
|
|
23
|
+
node-version: 20
|
|
24
|
+
cache: npm
|
|
25
|
+
registry-url: https://registry.npmjs.org
|
|
26
|
+
|
|
27
|
+
- run: npm ci
|
|
28
|
+
- run: npm run compile
|
|
29
|
+
- run: npm test
|
|
30
|
+
env:
|
|
31
|
+
CI: true
|
|
32
|
+
- run: npm publish --provenance --access public
|
|
33
|
+
env:
|
|
34
|
+
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
|
package/.github/workflows/CI.yml
CHANGED
|
@@ -9,15 +9,16 @@ jobs:
|
|
|
9
9
|
|
|
10
10
|
strategy:
|
|
11
11
|
matrix:
|
|
12
|
-
node-version: [
|
|
12
|
+
node-version: [16.x, 18.x, 20.x]
|
|
13
13
|
|
|
14
14
|
steps:
|
|
15
|
-
- uses: actions/checkout@
|
|
15
|
+
- uses: actions/checkout@v3
|
|
16
16
|
|
|
17
17
|
- name: Use Node.js ${{ matrix.node-version }}
|
|
18
|
-
uses: actions/setup-node@
|
|
18
|
+
uses: actions/setup-node@v3
|
|
19
19
|
with:
|
|
20
20
|
node-version: ${{ matrix.node-version }}
|
|
21
|
+
cache: npm
|
|
21
22
|
|
|
22
23
|
- run: npm ci
|
|
23
24
|
- run: npm run compile
|
package/lib/index.js
CHANGED
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
3
|
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
5
9
|
}) : (function(o, m, k, k2) {
|
|
6
10
|
if (k2 === undefined) k2 = k;
|
|
7
11
|
o[k2] = m[k];
|
package/lib/node-ts.d.ts
CHANGED
|
@@ -251,7 +251,7 @@ export interface RegisterNotificationsChannelParams extends QueryResponseItem {
|
|
|
251
251
|
event: "channel";
|
|
252
252
|
channelId: number;
|
|
253
253
|
}
|
|
254
|
-
export
|
|
254
|
+
export type RegisterNotificationsParams = RegisterNotificationsParamsGeneric | RegisterNotificationsChannelParams;
|
|
255
255
|
export interface SendTextMessageParams extends QueryResponseItem {
|
|
256
256
|
targetmode: TextMessageTargetMode;
|
|
257
257
|
target: number;
|
package/lib/node-ts.js
CHANGED
|
@@ -60,42 +60,49 @@ class TeamSpeakClient extends events_1.EventEmitter {
|
|
|
60
60
|
* Gets called on an opened connection
|
|
61
61
|
*/
|
|
62
62
|
onConnect(connectionEstablished, error) {
|
|
63
|
-
var e_1,
|
|
63
|
+
var _a, e_1, _b, _c;
|
|
64
64
|
return __awaiter(this, void 0, void 0, function* () {
|
|
65
|
-
const lineGenerator = stringio_1.chunksToLinesAsync(this.socket);
|
|
65
|
+
const lineGenerator = (0, stringio_1.chunksToLinesAsync)(this.socket);
|
|
66
66
|
let lineCounter = 0;
|
|
67
67
|
try {
|
|
68
|
-
for (var lineGenerator_1 = __asyncValues(lineGenerator), lineGenerator_1_1; lineGenerator_1_1 = yield lineGenerator_1.next(),
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
case 1: {
|
|
76
|
-
if (line !== "TS3") {
|
|
77
|
-
this.isConnected = false;
|
|
78
|
-
error(new Error("Remove server is not a TS3 Query Server endpoint."));
|
|
79
|
-
return;
|
|
80
|
-
}
|
|
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;) {
|
|
69
|
+
_c = lineGenerator_1_1.value;
|
|
70
|
+
_d = false;
|
|
71
|
+
try {
|
|
72
|
+
const lineWithNewLine = _c;
|
|
73
|
+
const line = (0, stringio_1.chomp)(lineWithNewLine).trim();
|
|
74
|
+
if (line === "")
|
|
81
75
|
continue;
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
76
|
+
++lineCounter;
|
|
77
|
+
switch (lineCounter) {
|
|
78
|
+
case 1: {
|
|
79
|
+
if (line !== "TS3") {
|
|
80
|
+
this.isConnected = false;
|
|
81
|
+
error(new Error("Remove server is not a TS3 Query Server endpoint."));
|
|
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();
|
|
94
|
+
}
|
|
91
95
|
}
|
|
92
96
|
}
|
|
97
|
+
finally {
|
|
98
|
+
_d = true;
|
|
99
|
+
}
|
|
93
100
|
}
|
|
94
101
|
}
|
|
95
102
|
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
96
103
|
finally {
|
|
97
104
|
try {
|
|
98
|
-
if (
|
|
105
|
+
if (!_d && !_a && (_b = lineGenerator_1.return)) yield _b.call(lineGenerator_1);
|
|
99
106
|
}
|
|
100
107
|
finally { if (e_1) throw e_1.error; }
|
|
101
108
|
}
|
|
@@ -156,22 +163,22 @@ class TeamSpeakClient extends events_1.EventEmitter {
|
|
|
156
163
|
return Promise.reject(new Error("Empty command"));
|
|
157
164
|
if (!this.isConnected)
|
|
158
165
|
return Promise.reject(new Error("Not connected to any server. Call \"connect()\" before sending anything."));
|
|
159
|
-
let tosend = queryStrings_1.escape(cmd);
|
|
166
|
+
let tosend = (0, queryStrings_1.escape)(cmd);
|
|
160
167
|
for (const v of options)
|
|
161
|
-
tosend += " -" + queryStrings_1.escape(v);
|
|
168
|
+
tosend += " -" + (0, queryStrings_1.escape)(v);
|
|
162
169
|
for (const key in params) {
|
|
163
170
|
if (!params.hasOwnProperty(key))
|
|
164
171
|
continue;
|
|
165
172
|
const value = params[key];
|
|
166
|
-
if (!util_1.isArray(value)) {
|
|
167
|
-
tosend += " " + queryStrings_1.escape(key.toString()) + "=" + queryStrings_1.escape(value.toString());
|
|
173
|
+
if (!(0, util_1.isArray)(value)) {
|
|
174
|
+
tosend += " " + (0, queryStrings_1.escape)(key.toString()) + "=" + (0, queryStrings_1.escape)(value.toString());
|
|
168
175
|
}
|
|
169
176
|
}
|
|
170
177
|
// Handle multiple arrays correctly
|
|
171
178
|
// Get all array in the params
|
|
172
179
|
const arrayParamKeys = [];
|
|
173
180
|
for (const key in params) {
|
|
174
|
-
if (params.hasOwnProperty(key) && util_1.isArray(params[key]))
|
|
181
|
+
if (params.hasOwnProperty(key) && (0, util_1.isArray)(params[key]))
|
|
175
182
|
arrayParamKeys.push(key);
|
|
176
183
|
}
|
|
177
184
|
if (arrayParamKeys.length > 0) {
|
|
@@ -180,7 +187,7 @@ class TeamSpeakClient extends events_1.EventEmitter {
|
|
|
180
187
|
for (let i = 0; i < firstArray.length; ++i) {
|
|
181
188
|
let segment = "";
|
|
182
189
|
for (var key of arrayParamKeys) {
|
|
183
|
-
segment += queryStrings_1.escape(key) + "=" + queryStrings_1.escape(params[key][i]) + " ";
|
|
190
|
+
segment += (0, queryStrings_1.escape)(key) + "=" + (0, queryStrings_1.escape)(params[key][i]) + " ";
|
|
184
191
|
}
|
|
185
192
|
escapedSegments += segment.slice(0, -1) + "|";
|
|
186
193
|
}
|
|
@@ -235,8 +242,8 @@ class TeamSpeakClient extends events_1.EventEmitter {
|
|
|
235
242
|
thisrec[v] = "";
|
|
236
243
|
continue;
|
|
237
244
|
}
|
|
238
|
-
const key = queryStrings_1.unescape(v.substr(0, v.indexOf("=")));
|
|
239
|
-
const value = queryStrings_1.unescape(v.substr(v.indexOf("=") + 1));
|
|
245
|
+
const key = (0, queryStrings_1.unescape)(v.substr(0, v.indexOf("=")));
|
|
246
|
+
const value = (0, queryStrings_1.unescape)(v.substr(v.indexOf("=") + 1));
|
|
240
247
|
thisrec[key] = (parseInt(value, 10).toString() == value) ? parseInt(value, 10) : value;
|
|
241
248
|
}
|
|
242
249
|
return thisrec;
|
|
@@ -290,9 +297,9 @@ class TeamSpeakClient extends events_1.EventEmitter {
|
|
|
290
297
|
return this.setTimeout(0);
|
|
291
298
|
}
|
|
292
299
|
}
|
|
293
|
-
exports.TeamSpeakClient = TeamSpeakClient;
|
|
294
300
|
TeamSpeakClient.DefaultHost = "localhost";
|
|
295
301
|
TeamSpeakClient.DefaultPort = 10011;
|
|
302
|
+
exports.TeamSpeakClient = TeamSpeakClient;
|
|
296
303
|
/*
|
|
297
304
|
|
|
298
305
|
Enums imported from documentation.
|
package/lib/types.d.ts
CHANGED
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": "
|
|
5
|
+
"version": "6.0.0",
|
|
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": "^18.15.12"
|
|
15
15
|
},
|
|
16
16
|
"devDependencies": {
|
|
17
|
-
"rimraf": "^
|
|
18
|
-
"typescript": "^
|
|
17
|
+
"rimraf": "^5.0.0",
|
|
18
|
+
"typescript": "^5.0.4"
|
|
19
19
|
},
|
|
20
20
|
"scripts": {
|
|
21
21
|
"test": "tsc --noEmit",
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
],
|
|
33
33
|
"optionalDependencies": {},
|
|
34
34
|
"engines": {
|
|
35
|
-
"node": ">=
|
|
35
|
+
"node": ">=18.0.0"
|
|
36
36
|
},
|
|
37
37
|
"license": "LGPL-3.0",
|
|
38
38
|
"readmeFilename": "README.md"
|