@honeybbq/teamspeak 1.0.0-beta.11 → 1.0.0-beta.13
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/README.md +52 -7
- package/dist/client/api/voice.d.ts +13 -0
- package/dist/client/api/voice.d.ts.map +1 -1
- package/dist/client/api/voice.js +20 -1
- package/dist/client/api/voice.js.map +1 -1
- package/dist/client/capabilities.d.ts +4 -4
- package/dist/client/capabilities.d.ts.map +1 -1
- package/dist/client/capabilities.js +3 -8
- package/dist/client/capabilities.js.map +1 -1
- package/dist/client/client.d.ts.map +1 -1
- package/dist/client/client.js +120 -18
- package/dist/client/client.js.map +1 -1
- package/dist/client/crypto/crypt.d.ts +25 -4
- package/dist/client/crypto/crypt.d.ts.map +1 -1
- package/dist/client/crypto/crypt.js +41 -9
- package/dist/client/crypto/crypt.js.map +1 -1
- package/dist/client/crypto/identity.d.ts +2 -0
- package/dist/client/crypto/identity.d.ts.map +1 -1
- package/dist/client/crypto/identity.js +2 -2
- package/dist/client/crypto/identity.js.map +1 -1
- package/dist/client/crypto/index.d.ts +1 -1
- package/dist/client/crypto/index.d.ts.map +1 -1
- package/dist/client/crypto/index.js +1 -1
- package/dist/client/crypto/index.js.map +1 -1
- package/dist/client/errors.d.ts +14 -0
- package/dist/client/errors.d.ts.map +1 -1
- package/dist/client/errors.js +28 -0
- package/dist/client/errors.js.map +1 -1
- package/dist/client/handshake/crypt-handshake.d.ts +8 -2
- package/dist/client/handshake/crypt-handshake.d.ts.map +1 -1
- package/dist/client/handshake/crypt-handshake.js +26 -20
- package/dist/client/handshake/crypt-handshake.js.map +1 -1
- package/dist/client/index.d.ts +3 -3
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js +2 -2
- package/dist/client/index.js.map +1 -1
- package/dist/client/trace.d.ts +7 -0
- package/dist/client/trace.d.ts.map +1 -1
- package/dist/client/transport/handler.d.ts +2 -0
- package/dist/client/transport/handler.d.ts.map +1 -1
- package/dist/client/transport/handler.js +4 -0
- package/dist/client/transport/handler.js.map +1 -1
- package/dist/client/types.d.ts +25 -3
- package/dist/client/types.d.ts.map +1 -1
- package/dist/client/types.js +4 -0
- package/dist/client/types.js.map +1 -1
- package/dist/client/view.d.ts +71 -4
- package/dist/client/view.d.ts.map +1 -1
- package/dist/client/view.js +165 -5
- package/dist/client/view.js.map +1 -1
- package/dist/core/api/channels.d.ts +7 -3
- package/dist/core/api/channels.d.ts.map +1 -1
- package/dist/core/api/channels.js +5 -3
- package/dist/core/api/channels.js.map +1 -1
- package/dist/core/api/clients.d.ts +38 -1
- package/dist/core/api/clients.d.ts.map +1 -1
- package/dist/core/api/clients.js +33 -2
- package/dist/core/api/clients.js.map +1 -1
- package/dist/core/api/command.d.ts +18 -1
- package/dist/core/api/command.d.ts.map +1 -1
- package/dist/core/api/command.js +7 -1
- package/dist/core/api/command.js.map +1 -1
- package/dist/core/api/group-rows.d.ts +12 -0
- package/dist/core/api/group-rows.d.ts.map +1 -0
- package/dist/core/api/group-rows.js +34 -0
- package/dist/core/api/group-rows.js.map +1 -0
- package/dist/core/api/groups.d.ts.map +1 -1
- package/dist/core/api/groups.js +2 -13
- package/dist/core/api/groups.js.map +1 -1
- package/dist/core/api/instance.d.ts +10 -2
- package/dist/core/api/instance.d.ts.map +1 -1
- package/dist/core/api/instance.js +6 -2
- package/dist/core/api/instance.js.map +1 -1
- package/dist/core/api/moderation.d.ts +7 -0
- package/dist/core/api/moderation.d.ts.map +1 -1
- package/dist/core/api/moderation.js +7 -0
- package/dist/core/api/moderation.js.map +1 -1
- package/dist/core/api/parse.d.ts.map +1 -1
- package/dist/core/api/parse.js +1 -0
- package/dist/core/api/parse.js.map +1 -1
- package/dist/core/api/server.d.ts +9 -0
- package/dist/core/api/server.d.ts.map +1 -1
- package/dist/core/api/server.js +5 -13
- package/dist/core/api/server.js.map +1 -1
- package/dist/core/command/responses.d.ts.map +1 -1
- package/dist/core/command/responses.js +1 -0
- package/dist/core/command/responses.js.map +1 -1
- package/dist/core/errorcode.d.ts +16 -0
- package/dist/core/errorcode.d.ts.map +1 -1
- package/dist/core/errorcode.js +16 -0
- package/dist/core/errorcode.js.map +1 -1
- package/dist/core/events.d.ts +67 -6
- package/dist/core/events.d.ts.map +1 -1
- package/dist/core/index.d.ts +2 -2
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +1 -1
- package/dist/core/index.js.map +1 -1
- package/dist/core/internal.d.ts +1 -0
- package/dist/core/internal.d.ts.map +1 -1
- package/dist/core/internal.js +1 -0
- package/dist/core/internal.js.map +1 -1
- package/dist/core/notification-name.d.ts +4 -0
- package/dist/core/notification-name.d.ts.map +1 -1
- package/dist/core/notification-name.js +4 -0
- package/dist/core/notification-name.js.map +1 -1
- package/dist/core/notifications.d.ts +6 -2
- package/dist/core/notifications.d.ts.map +1 -1
- package/dist/core/notifications.js +32 -1
- package/dist/core/notifications.js.map +1 -1
- package/dist/core/types.d.ts +7 -0
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js +16 -0
- package/dist/core/types.js.map +1 -1
- package/dist/query/client.d.ts +16 -7
- package/dist/query/client.d.ts.map +1 -1
- package/dist/query/client.js +55 -20
- package/dist/query/client.js.map +1 -1
- package/dist/query/errors.d.ts +21 -0
- package/dist/query/errors.d.ts.map +1 -1
- package/dist/query/errors.js +34 -0
- package/dist/query/errors.js.map +1 -1
- package/dist/query/index.d.ts +4 -3
- package/dist/query/index.d.ts.map +1 -1
- package/dist/query/index.js +3 -2
- package/dist/query/index.js.map +1 -1
- package/dist/query/options.d.ts +32 -19
- package/dist/query/options.d.ts.map +1 -1
- package/dist/query/options.js +21 -16
- package/dist/query/options.js.map +1 -1
- package/dist/query/ssh.d.ts +3 -1
- package/dist/query/ssh.d.ts.map +1 -1
- package/dist/query/ssh.js +4 -1
- package/dist/query/ssh.js.map +1 -1
- package/dist/query/stream.d.ts +16 -3
- package/dist/query/stream.d.ts.map +1 -1
- package/dist/query/stream.js +57 -6
- package/dist/query/stream.js.map +1 -1
- package/dist/query/tcp.js +1 -1
- package/dist/query/tcp.js.map +1 -1
- package/dist/query/transport.d.ts +39 -3
- package/dist/query/transport.d.ts.map +1 -1
- package/dist/query/web.d.ts +25 -7
- package/dist/query/web.d.ts.map +1 -1
- package/dist/query/web.js +40 -10
- package/dist/query/web.js.map +1 -1
- package/package.json +6 -5
- package/src/client/api/voice.ts +25 -1
- package/src/client/capabilities.ts +14 -11
- package/src/client/client.ts +128 -14
- package/src/client/crypto/crypt.ts +46 -9
- package/src/client/crypto/identity.ts +2 -2
- package/src/client/crypto/index.ts +1 -0
- package/src/client/errors.ts +31 -0
- package/src/client/handshake/crypt-handshake.ts +51 -16
- package/src/client/index.ts +4 -1
- package/src/client/trace.ts +7 -0
- package/src/client/transport/handler.ts +5 -0
- package/src/client/types.ts +25 -1
- package/src/client/view.ts +227 -8
- package/src/core/api/channels.ts +9 -3
- package/src/core/api/clients.ts +73 -2
- package/src/core/api/command.ts +22 -1
- package/src/core/api/group-rows.ts +38 -0
- package/src/core/api/groups.ts +1 -14
- package/src/core/api/instance.ts +20 -2
- package/src/core/api/moderation.ts +7 -0
- package/src/core/api/parse.ts +1 -0
- package/src/core/api/server.ts +13 -15
- package/src/core/command/responses.ts +1 -0
- package/src/core/errorcode.ts +16 -0
- package/src/core/events.ts +68 -6
- package/src/core/index.ts +2 -1
- package/src/core/internal.ts +1 -0
- package/src/core/notification-name.ts +4 -0
- package/src/core/notifications.ts +48 -17
- package/src/core/types.ts +14 -0
- package/src/query/client.ts +63 -20
- package/src/query/errors.ts +37 -0
- package/src/query/index.ts +9 -3
- package/src/query/options.ts +53 -33
- package/src/query/ssh.ts +9 -2
- package/src/query/stream.ts +65 -7
- package/src/query/tcp.ts +1 -1
- package/src/query/testing/live.ts +311 -0
- package/src/query/testing/ssh-keys.ts +67 -0
- package/src/query/transport.ts +40 -3
- package/src/query/web.ts +65 -16
package/dist/client/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/client/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/client/types.ts"],"names":[],"mappings":"AAiJA,sDAAsD;AACtD,MAAM,sBAAsB,GAAG;IAC7B,mEAAmE;IACnE,WAAW,EAAE,CAAC;IACd,oEAAoE;IACpE,YAAY,EAAE,CAAC;IACf,sFAAsF;IACtF,gBAAgB,EAAE,CAAC;IACnB,oBAAoB;IACpB,UAAU,EAAE,CAAC;CACL,CAAC;AACX;;;;GAIG;AACH,MAAM,CAAC,MAAM,gBAAgB;AAC3B,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC;AAIxD,sDAAsD;AACtD,MAAM,uBAAuB,GAAG;IAC9B,qBAAqB;IACrB,WAAW,EAAE,CAAC;IACd,oCAAoC;IACpC,cAAc,EAAE,CAAC;IACjB,sDAAsD;IACtD,aAAa,EAAE,CAAC;IAChB,0DAA0D;IAC1D,iBAAiB,EAAE,CAAC;IACpB,4DAA4D;IAC5D,aAAa,EAAE,CAAC;IAChB,2EAA2E;IAC3E,qBAAqB,EAAE,CAAC;IACxB,2DAA2D;IAC3D,WAAW,EAAE,CAAC;CACN,CAAC;AACX;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB;AAC5B,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC;AA8BzD,sDAAsD;AACtD,MAAM,eAAe,GAAG;IACtB,gEAAgE;IAChE,WAAW,EAAE,aAAa;IAC1B,qFAAqF;IACrF,WAAW,EAAE,aAAa;IAC1B,kCAAkC;IAClC,WAAW,EAAE,aAAa;IAC1B,iCAAiC;IACjC,WAAW,EAAE,aAAa;IAC1B,+BAA+B;IAC/B,cAAc,EAAE,gBAAgB;IAChC,2CAA2C;IAC3C,aAAa,EAAE,eAAe;IAC9B,0CAA0C;IAC1C,YAAY,EAAE,cAAc;IAC5B,+BAA+B;IAC/B,cAAc,EAAE,gBAAgB;IAChC,+DAA+D;IAC/D,yBAAyB,EAAE,2BAA2B;IACtD,0DAA0D;IAC1D,sBAAsB,EAAE,wBAAwB;IAChD,0CAA0C;IAC1C,YAAY,EAAE,cAAc;IAC5B,qEAAqE;IACrE,aAAa,EAAE,eAAe;IAC9B,wCAAwC;IACxC,sBAAsB,EAAE,wBAAwB;IAChD,4CAA4C;IAC5C,wBAAwB,EAAE,0BAA0B;IACpD,sDAAsD;IACtD,yBAAyB,EAAE,2BAA2B;IACtD,iDAAiD;IACjD,iBAAiB,EAAE,mBAAmB;IACtC,2DAA2D;IAC3D,mBAAmB,EAAE,qBAAqB;IAC1C,sCAAsC;IACtC,aAAa,EAAE,eAAe;IAC9B,wDAAwD;IACxD,mBAAmB,EAAE,qBAAqB;IAC1C,0DAA0D;IAC1D,gBAAgB,EAAE,kBAAkB;IACpC,iDAAiD;IACjD,SAAS,EAAE,WAAW;IACtB,2CAA2C;IAC3C,WAAW,EAAE,aAAa;IAC1B,+BAA+B;IAC/B,KAAK,EAAE,OAAO;IACd,mFAAmF;IACnF,SAAS,EAAE,WAAW;IACtB;;;OAGG;IACH,YAAY,EAAE,cAAc;IAC5B,0EAA0E;IAC1E,SAAS,EAAE,WAAW;IACtB,gFAAgF;IAChF,YAAY,EAAE,cAAc;IAC5B,8DAA8D;IAC9D,MAAM,EAAE,QAAQ;CACR,CAAC;AACX;;;;GAIG;AACH,MAAM,CAAC,MAAM,SAAS,GAA2B,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;AAOhG,4EAA4E;AAC5E,yDAAyD;AACzD,MAAM,uBAAuB,GAC3B,IAAI,CAAC;AACP,MAAM,wBAAwB,GAElB,IAAI,CAAC;AACjB,KAAK,uBAAuB,CAAC;AAC7B,KAAK,wBAAwB,CAAC"}
|
package/dist/client/view.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type Channel, type ChannelCreatedEvent, type ChannelDeletedEvent, type ChannelEditedEvent, type ChannelID, type ChannelMovedEvent, type
|
|
1
|
+
import { type Channel, type ChannelCreatedEvent, type ChannelDeletedEvent, type ChannelEditedEvent, type ChannelID, type ChannelMovedEvent, type ClientEntry, type ChannelGroup, type ChannelGroupID, type ClientID, type Logger, type ServerGroup, type ServerGroupID } from "@honeybbq/teamspeak";
|
|
2
2
|
/**
|
|
3
3
|
* Where a {@link ServerView} is in a connection's life.
|
|
4
4
|
*
|
|
@@ -22,6 +22,15 @@ export interface ViewReadyEvent {
|
|
|
22
22
|
/** The view's `revision` when it became live. */
|
|
23
23
|
readonly revision: number;
|
|
24
24
|
}
|
|
25
|
+
/**
|
|
26
|
+
* What `viewChanged` delivers.
|
|
27
|
+
*
|
|
28
|
+
* @experimental New in 1.x and may change in a minor release.
|
|
29
|
+
*/
|
|
30
|
+
export interface ViewChangedEvent {
|
|
31
|
+
/** The view's `revision` when the event was delivered. */
|
|
32
|
+
readonly revision: number;
|
|
33
|
+
}
|
|
25
34
|
/**
|
|
26
35
|
* What a connected client knows of the server: the channels in the server's
|
|
27
36
|
* order, the clients it has been told about, and itself. It is read-only and
|
|
@@ -51,6 +60,11 @@ export interface ViewReadyEvent {
|
|
|
51
60
|
* and does not say when a subscription ends, so the view drops a channel's
|
|
52
61
|
* clients when it sees `channelUnsubscribed`. It is not a list of everyone on
|
|
53
62
|
* the server; `listClients` is, for the moment it is called.
|
|
63
|
+
* - The group definitions are the server's last full list of each kind, which
|
|
64
|
+
* it sends again whole after any group is added, renamed, copied or deleted.
|
|
65
|
+
* A change to a group's permissions is not announced, and is not in the view.
|
|
66
|
+
* - The server's properties are exact for those the server announces when
|
|
67
|
+
* they change, and as of the last `getServerVariables` for the others.
|
|
54
68
|
*
|
|
55
69
|
* @experimental New in 1.x and may change in a minor release: the shape of the
|
|
56
70
|
* view and its names are still settling.
|
|
@@ -110,16 +124,47 @@ export interface ServerView {
|
|
|
110
124
|
clientsIn(id: ChannelID): readonly ClientEntry[];
|
|
111
125
|
/** This client's own record; `undefined` until the welcome has delivered it. */
|
|
112
126
|
readonly self: ClientEntry | undefined;
|
|
127
|
+
/**
|
|
128
|
+
* The server groups, in the server's order, which is ascending id. A change
|
|
129
|
+
* to the list makes the next read a new map; a client's `serverGroups` can
|
|
130
|
+
* name an id that is not in it for a moment, so look ups must allow for a
|
|
131
|
+
* miss. Empty until `groupsLoaded`.
|
|
132
|
+
*/
|
|
133
|
+
readonly serverGroups: ReadonlyMap<ServerGroupID, ServerGroup>;
|
|
134
|
+
/** The channel groups, as `serverGroups` is for server groups. */
|
|
135
|
+
readonly channelGroups: ReadonlyMap<ChannelGroupID, ChannelGroup>;
|
|
136
|
+
/**
|
|
137
|
+
* True once both group lists of this connection have arrived. The server
|
|
138
|
+
* sends them right after the welcome, so `viewReady` can come first: the
|
|
139
|
+
* `viewChanged` that follows reports them. It is `false` again from the next
|
|
140
|
+
* `connect()` and stays `true` once `"stale"`.
|
|
141
|
+
*/
|
|
142
|
+
readonly groupsLoaded: boolean;
|
|
143
|
+
/**
|
|
144
|
+
* The server's `virtualserver_*` properties by wire name, the keys
|
|
145
|
+
* `getServerInfo` returns and `PropertyName` names. A change makes the next
|
|
146
|
+
* read a new object.
|
|
147
|
+
*
|
|
148
|
+
* It starts from what the server says on joining. It then follows the edits
|
|
149
|
+
* the server announces, and merges every `getServerVariables` answer. The
|
|
150
|
+
* server announces an edit only to a property that answer does not carry; a
|
|
151
|
+
* change to the welcome message, the host message or the maximum number of
|
|
152
|
+
* clients, among others, arrives as an empty `serverEdited`. Call
|
|
153
|
+
* `getServerVariables` after one to bring those up to date. The counters and
|
|
154
|
+
* statistics that change by themselves (clients online, uptime, traffic) are
|
|
155
|
+
* never held.
|
|
156
|
+
*/
|
|
157
|
+
readonly server: Readonly<Record<string, string>>;
|
|
113
158
|
}
|
|
114
159
|
/**
|
|
115
160
|
* The clients a client knows, by id. Every change to it, whoever makes it, is
|
|
116
161
|
* a change to the view, so it counts them.
|
|
117
162
|
*/
|
|
118
|
-
export declare class Roster extends Map<number,
|
|
163
|
+
export declare class Roster extends Map<number, ClientEntry> {
|
|
119
164
|
#private;
|
|
120
165
|
/** Call `changed` after each change from now on. */
|
|
121
166
|
onChange(changed: () => void): void;
|
|
122
|
-
set(id: number, entry:
|
|
167
|
+
set(id: number, entry: ClientEntry): this;
|
|
123
168
|
delete(id: number): boolean;
|
|
124
169
|
clear(): void;
|
|
125
170
|
}
|
|
@@ -132,9 +177,16 @@ export declare class ViewStore {
|
|
|
132
177
|
/** The clients, shared with the client's own roster. */
|
|
133
178
|
readonly roster: Roster;
|
|
134
179
|
readonly view: ServerView;
|
|
135
|
-
|
|
180
|
+
/** `changed` is called when the revision moves outside a loading view, so an event can follow. */
|
|
181
|
+
constructor(logger: Logger, selfID: () => number, changed?: () => void);
|
|
136
182
|
/** A connection begins: what the last one left is cleared. */
|
|
137
183
|
reset(): void;
|
|
184
|
+
/**
|
|
185
|
+
* The revision to announce with `viewChanged`, or `undefined` when there is
|
|
186
|
+
* nothing to say: the view is loading, or it is as it was when the last
|
|
187
|
+
* `viewReady` or `viewChanged` reported it.
|
|
188
|
+
*/
|
|
189
|
+
announce(): number | undefined;
|
|
138
190
|
/** A `channellist` row of the welcome. */
|
|
139
191
|
collect(row: Channel): void;
|
|
140
192
|
/**
|
|
@@ -156,6 +208,21 @@ export declare class ViewStore {
|
|
|
156
208
|
* not say they left: forget them. This client's own record stays.
|
|
157
209
|
*/
|
|
158
210
|
dropChannel(channelID: ChannelID): void;
|
|
211
|
+
/**
|
|
212
|
+
* The server's list of its server groups, one line of rows. It replaces the
|
|
213
|
+
* set, so a group the line lacks is gone; a row without an id is skipped.
|
|
214
|
+
*/
|
|
215
|
+
setServerGroups(groups: readonly ServerGroup[]): void;
|
|
216
|
+
/** The server's list of its channel groups; see {@link ViewStore.setServerGroups}. */
|
|
217
|
+
setChannelGroups(groups: readonly ChannelGroup[]): void;
|
|
218
|
+
/** The `initserver` parameters: the server's own properties are kept, nothing of the client's. */
|
|
219
|
+
seedServer(params: Readonly<Record<string, string>>): void;
|
|
220
|
+
/** An edit the server announced. */
|
|
221
|
+
patchServer(changes: Readonly<Record<string, string>>): void;
|
|
222
|
+
/** An answer to `servergetvariables`, whoever asked: merged, less the counters. */
|
|
223
|
+
mergeServer(params: Readonly<Record<string, string>>): void;
|
|
224
|
+
/** The channel as the view holds it, for the event that reports its deletion. */
|
|
225
|
+
channelBeforeDeletion(id: ChannelID): Channel | undefined;
|
|
159
226
|
/** The connection ended, for `error`; undefined for a disconnect. */
|
|
160
227
|
end(error: unknown): void;
|
|
161
228
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../src/client/view.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,OAAO,EACZ,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,SAAS,EACd,KAAK,iBAAiB,EACtB,KAAK,
|
|
1
|
+
{"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../src/client/view.ts"],"names":[],"mappings":"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"}
|
package/dist/client/view.js
CHANGED
|
@@ -29,6 +29,55 @@ export class Roster extends Map {
|
|
|
29
29
|
}
|
|
30
30
|
}
|
|
31
31
|
const TOP = asChannelID(0n);
|
|
32
|
+
/**
|
|
33
|
+
* The `virtualserver_*` properties of `servergetvariables` that change by
|
|
34
|
+
* themselves. A number nothing keeps current would be wrong from the next
|
|
35
|
+
* second, so the view never holds one.
|
|
36
|
+
*/
|
|
37
|
+
const COUNTERS = new Set([
|
|
38
|
+
"clientsonline",
|
|
39
|
+
"queryclientsonline",
|
|
40
|
+
"channelsonline",
|
|
41
|
+
"uptime",
|
|
42
|
+
"client_connections",
|
|
43
|
+
"query_client_connections",
|
|
44
|
+
"month_bytes_downloaded",
|
|
45
|
+
"month_bytes_uploaded",
|
|
46
|
+
"total_bytes_downloaded",
|
|
47
|
+
"total_bytes_uploaded",
|
|
48
|
+
"total_packetloss_speech",
|
|
49
|
+
"total_packetloss_keepalive",
|
|
50
|
+
"total_packetloss_control",
|
|
51
|
+
"total_packetloss_total",
|
|
52
|
+
"total_ping",
|
|
53
|
+
].map((name) => `virtualserver_${name}`));
|
|
54
|
+
/** The `virtualserver_*` entries of `params`, less the counters when `counters` is false. */
|
|
55
|
+
function serverEntries(params, counters) {
|
|
56
|
+
return Object.entries(params).filter(([key]) => key.startsWith("virtualserver_") && (counters || !COUNTERS.has(key)));
|
|
57
|
+
}
|
|
58
|
+
/** Whether two records hold the same values under the same keys. */
|
|
59
|
+
function sameRecord(a, b) {
|
|
60
|
+
const left = Object.entries(a);
|
|
61
|
+
const right = Object.entries(b);
|
|
62
|
+
return (left.length === right.length &&
|
|
63
|
+
left.every(([key, value], i) => {
|
|
64
|
+
const other = right[i];
|
|
65
|
+
return key === other[0] && Object.is(value, other[1]);
|
|
66
|
+
}));
|
|
67
|
+
}
|
|
68
|
+
/** Whether two lists hold the same groups in the same order. */
|
|
69
|
+
function sameGroups(a, b) {
|
|
70
|
+
if (a.size !== b.size)
|
|
71
|
+
return false;
|
|
72
|
+
const right = [...b];
|
|
73
|
+
let i = 0;
|
|
74
|
+
for (const [id, group] of a) {
|
|
75
|
+
const other = right[i++];
|
|
76
|
+
if (id !== other[0] || !sameRecord(group, other[1]))
|
|
77
|
+
return false;
|
|
78
|
+
}
|
|
79
|
+
return true;
|
|
80
|
+
}
|
|
32
81
|
/** The channels of `tree`, parents first and siblings in order, in one map. */
|
|
33
82
|
function preorder(tree) {
|
|
34
83
|
const out = new Map();
|
|
@@ -58,15 +107,25 @@ export class ViewStore {
|
|
|
58
107
|
#rows = [];
|
|
59
108
|
#known;
|
|
60
109
|
#ordered;
|
|
110
|
+
#serverGroups = new Map();
|
|
111
|
+
#channelGroups = new Map();
|
|
112
|
+
#serverGroupsSeen = false;
|
|
113
|
+
#channelGroupsSeen = false;
|
|
114
|
+
#server = {};
|
|
115
|
+
/** The revision `viewReady` or `viewChanged` last reported. */
|
|
116
|
+
#announced = 0;
|
|
117
|
+
#changed;
|
|
61
118
|
#waiters = new Set();
|
|
62
119
|
/** Why the last connection ended. */
|
|
63
120
|
#endedBy;
|
|
64
|
-
|
|
121
|
+
/** `changed` is called when the revision moves outside a loading view, so an event can follow. */
|
|
122
|
+
constructor(logger, selfID, changed = () => { }) {
|
|
65
123
|
this.#logger = logger;
|
|
66
124
|
this.#selfID = selfID;
|
|
125
|
+
this.#changed = changed;
|
|
67
126
|
this.#ordered = { tree: this.#tree, channels: new Map() };
|
|
68
127
|
this.#known = { revision: this.#revision, clients: new Map() };
|
|
69
|
-
this.roster.onChange(() => this.#
|
|
128
|
+
this.roster.onChange(() => this.#bump());
|
|
70
129
|
// oxlint-disable-next-line no-this-alias -- accessors cannot be arrow functions
|
|
71
130
|
const store = this;
|
|
72
131
|
this.view = {
|
|
@@ -103,6 +162,18 @@ export class ViewStore {
|
|
|
103
162
|
const id = store.#selfID();
|
|
104
163
|
return id === 0 ? undefined : store.roster.get(id);
|
|
105
164
|
},
|
|
165
|
+
get serverGroups() {
|
|
166
|
+
return store.#serverGroups;
|
|
167
|
+
},
|
|
168
|
+
get channelGroups() {
|
|
169
|
+
return store.#channelGroups;
|
|
170
|
+
},
|
|
171
|
+
get groupsLoaded() {
|
|
172
|
+
return store.#groupsLoaded();
|
|
173
|
+
},
|
|
174
|
+
get server() {
|
|
175
|
+
return store.#server;
|
|
176
|
+
},
|
|
106
177
|
};
|
|
107
178
|
}
|
|
108
179
|
/** A connection begins: what the last one left is cleared. */
|
|
@@ -110,8 +181,32 @@ export class ViewStore {
|
|
|
110
181
|
this.roster.clear();
|
|
111
182
|
this.#rows = [];
|
|
112
183
|
this.#tree = ChannelTree.from([]);
|
|
184
|
+
this.#serverGroups = new Map();
|
|
185
|
+
this.#channelGroups = new Map();
|
|
186
|
+
this.#serverGroupsSeen = false;
|
|
187
|
+
this.#channelGroupsSeen = false;
|
|
188
|
+
this.#server = {};
|
|
113
189
|
this.#status = "loading";
|
|
190
|
+
this.#bump();
|
|
191
|
+
}
|
|
192
|
+
/** The revision moved. */
|
|
193
|
+
#bump() {
|
|
114
194
|
this.#revision++;
|
|
195
|
+
if (this.#status !== "loading")
|
|
196
|
+
this.#changed();
|
|
197
|
+
}
|
|
198
|
+
/**
|
|
199
|
+
* The revision to announce with `viewChanged`, or `undefined` when there is
|
|
200
|
+
* nothing to say: the view is loading, or it is as it was when the last
|
|
201
|
+
* `viewReady` or `viewChanged` reported it.
|
|
202
|
+
*/
|
|
203
|
+
announce() {
|
|
204
|
+
if (this.#status === "loading" || this.#status === "empty")
|
|
205
|
+
return undefined;
|
|
206
|
+
if (this.#revision === this.#announced)
|
|
207
|
+
return undefined;
|
|
208
|
+
this.#announced = this.#revision;
|
|
209
|
+
return this.#revision;
|
|
115
210
|
}
|
|
116
211
|
/** A `channellist` row of the welcome. */
|
|
117
212
|
collect(row) {
|
|
@@ -137,7 +232,8 @@ export class ViewStore {
|
|
|
137
232
|
if (!this.#tree.consistent)
|
|
138
233
|
this.#logger.debug("the channel list is not a tree");
|
|
139
234
|
this.#status = "live";
|
|
140
|
-
this.#
|
|
235
|
+
this.#bump();
|
|
236
|
+
this.#announced = this.#revision;
|
|
141
237
|
for (const waiter of this.#waiters)
|
|
142
238
|
waiter.resolve();
|
|
143
239
|
return this.#revision;
|
|
@@ -163,7 +259,7 @@ export class ViewStore {
|
|
|
163
259
|
return;
|
|
164
260
|
const before = this.#tree;
|
|
165
261
|
this.#tree = next(before);
|
|
166
|
-
this.#
|
|
262
|
+
this.#bump();
|
|
167
263
|
if (before.consistent && !this.#tree.consistent) {
|
|
168
264
|
this.#logger.debug("a channel event could not be placed", {
|
|
169
265
|
event: name,
|
|
@@ -182,12 +278,76 @@ export class ViewStore {
|
|
|
182
278
|
this.roster.delete(id);
|
|
183
279
|
}
|
|
184
280
|
}
|
|
281
|
+
/**
|
|
282
|
+
* The server's list of its server groups, one line of rows. It replaces the
|
|
283
|
+
* set, so a group the line lacks is gone; a row without an id is skipped.
|
|
284
|
+
*/
|
|
285
|
+
setServerGroups(groups) {
|
|
286
|
+
if (!this.#accepting())
|
|
287
|
+
return;
|
|
288
|
+
const loaded = this.#groupsLoaded();
|
|
289
|
+
const next = new Map();
|
|
290
|
+
for (const group of groups)
|
|
291
|
+
next.set(group.id, group);
|
|
292
|
+
this.#serverGroupsSeen = true;
|
|
293
|
+
const changed = !sameGroups(this.#serverGroups, next);
|
|
294
|
+
if (changed)
|
|
295
|
+
this.#serverGroups = next;
|
|
296
|
+
if (changed || loaded !== this.#groupsLoaded())
|
|
297
|
+
this.#bump();
|
|
298
|
+
}
|
|
299
|
+
/** The server's list of its channel groups; see {@link ViewStore.setServerGroups}. */
|
|
300
|
+
setChannelGroups(groups) {
|
|
301
|
+
if (!this.#accepting())
|
|
302
|
+
return;
|
|
303
|
+
const loaded = this.#groupsLoaded();
|
|
304
|
+
const next = new Map();
|
|
305
|
+
for (const group of groups)
|
|
306
|
+
next.set(group.id, group);
|
|
307
|
+
this.#channelGroupsSeen = true;
|
|
308
|
+
const changed = !sameGroups(this.#channelGroups, next);
|
|
309
|
+
if (changed)
|
|
310
|
+
this.#channelGroups = next;
|
|
311
|
+
if (changed || loaded !== this.#groupsLoaded())
|
|
312
|
+
this.#bump();
|
|
313
|
+
}
|
|
314
|
+
#groupsLoaded() {
|
|
315
|
+
return this.#serverGroupsSeen && this.#channelGroupsSeen;
|
|
316
|
+
}
|
|
317
|
+
/** The `initserver` parameters: the server's own properties are kept, nothing of the client's. */
|
|
318
|
+
seedServer(params) {
|
|
319
|
+
this.#mergeServer(serverEntries(params, true));
|
|
320
|
+
}
|
|
321
|
+
/** An edit the server announced. */
|
|
322
|
+
patchServer(changes) {
|
|
323
|
+
this.#mergeServer(serverEntries(changes, true));
|
|
324
|
+
}
|
|
325
|
+
/** An answer to `servergetvariables`, whoever asked: merged, less the counters. */
|
|
326
|
+
mergeServer(params) {
|
|
327
|
+
this.#mergeServer(serverEntries(params, false));
|
|
328
|
+
}
|
|
329
|
+
#mergeServer(entries) {
|
|
330
|
+
if (!this.#accepting())
|
|
331
|
+
return;
|
|
332
|
+
if (entries.every(([key, value]) => this.#server[key] === value))
|
|
333
|
+
return;
|
|
334
|
+
this.#server = { ...this.#server, ...Object.fromEntries(entries) };
|
|
335
|
+
this.#bump();
|
|
336
|
+
}
|
|
337
|
+
/** Group lists and server properties are taken while loading and live, not once stale. */
|
|
338
|
+
#accepting() {
|
|
339
|
+
return this.#status === "loading" || this.#status === "live";
|
|
340
|
+
}
|
|
341
|
+
/** The channel as the view holds it, for the event that reports its deletion. */
|
|
342
|
+
channelBeforeDeletion(id) {
|
|
343
|
+
return this.#status === "live" ? this.#tree.get(id) : undefined;
|
|
344
|
+
}
|
|
185
345
|
/** The connection ended, for `error`; undefined for a disconnect. */
|
|
186
346
|
end(error) {
|
|
187
347
|
if (this.#status !== "loading" && this.#status !== "live")
|
|
188
348
|
return;
|
|
189
349
|
this.#status = "stale";
|
|
190
|
-
this.#
|
|
350
|
+
this.#bump();
|
|
191
351
|
this.#endedBy =
|
|
192
352
|
error === undefined
|
|
193
353
|
? new NotConnectedError()
|
package/dist/client/view.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"view.js","sourceRoot":"","sources":["../../src/client/view.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"view.js","sourceRoot":"","sources":["../../src/client/view.ts"],"names":[],"mappings":"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"}
|
|
@@ -82,6 +82,10 @@ export interface ChannelSettings {
|
|
|
82
82
|
readonly deleteDelayMs?: number | undefined;
|
|
83
83
|
/** How the name is pronounced, for text-to-speech (`channel_name_phonetic`). */
|
|
84
84
|
readonly namePhonetic?: string | undefined;
|
|
85
|
+
/** The URL of the channel's banner image (`channel_banner_gfx_url`); needs `b_channel_modify_banner`. */
|
|
86
|
+
readonly bannerURL?: string | undefined;
|
|
87
|
+
/** How the banner is scaled (`channel_banner_mode`); needs `b_channel_modify_banner`. */
|
|
88
|
+
readonly bannerMode?: number | undefined;
|
|
85
89
|
}
|
|
86
90
|
/** A new channel's settings. Only `name` is required; see {@link ChannelSettings}. */
|
|
87
91
|
export interface ChannelCreateOptions extends ChannelSettings {
|
|
@@ -140,9 +144,9 @@ export declare function deleteChannel(client: CommandExecutor, cid: ChannelID, o
|
|
|
140
144
|
* All channels on the server, in the server's own sort order.
|
|
141
145
|
*
|
|
142
146
|
* Always asks for the topic, flags, voice, limits, icon, seconds empty and
|
|
143
|
-
* banners, which a bare `channellist` leaves out.
|
|
144
|
-
*
|
|
145
|
-
* `
|
|
147
|
+
* banners, which a bare `channellist` leaves out. `description`, `uid` and
|
|
148
|
+
* `filePath` are not part of `channellist` and stay empty or undefined;
|
|
149
|
+
* `getChannelInfo` has them.
|
|
146
150
|
*/
|
|
147
151
|
export declare function listChannels(client: CommandExecutor, options?: CommandOptions): Promise<Channel[]>;
|
|
148
152
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"channels.d.ts","sourceRoot":"","sources":["../../../src/core/api/channels.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAgBH,OAAO,KAAK,EAAE,OAAO,EAAE,eAAe,EAAa,MAAM,cAAc,CAAC;AACxE,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAI/D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD;;;;;;;GAOG;AACH,MAAM,WAAW,eAAe;IAC9B,wDAAwD;IACxD,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,+CAA+C;IAC/C,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C;;;OAGG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACvC;;;OAGG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC3C,yCAAyC;IACzC,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;IACnC,8DAA8D;IAC9D,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3C,2FAA2F;IAC3F,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjD,yFAAyF;IACzF,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC7C,qEAAqE;IACrE,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/C,6EAA6E;IAC7E,QAAQ,CAAC,qBAAqB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACrD,yFAAyF;IACzF,QAAQ,CAAC,2BAA2B,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC3D;;;OAGG;IACH,QAAQ,CAAC,2BAA2B,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC3D;;;OAGG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IACvC,iFAAiF;IACjF,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9C,gFAAgF;IAChF,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC3C;;;OAGG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC/C,8DAA8D;IAC9D,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACzC;;;OAGG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5C,gFAAgF;IAChF,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"channels.d.ts","sourceRoot":"","sources":["../../../src/core/api/channels.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAgBH,OAAO,KAAK,EAAE,OAAO,EAAE,eAAe,EAAa,MAAM,cAAc,CAAC;AACxE,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAI/D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD;;;;;;;GAOG;AACH,MAAM,WAAW,eAAe;IAC9B,wDAAwD;IACxD,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,+CAA+C;IAC/C,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C;;;OAGG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACvC;;;OAGG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC3C,yCAAyC;IACzC,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;IACnC,8DAA8D;IAC9D,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3C,2FAA2F;IAC3F,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjD,yFAAyF;IACzF,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC7C,qEAAqE;IACrE,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/C,6EAA6E;IAC7E,QAAQ,CAAC,qBAAqB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACrD,yFAAyF;IACzF,QAAQ,CAAC,2BAA2B,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC3D;;;OAGG;IACH,QAAQ,CAAC,2BAA2B,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC3D;;;OAGG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IACvC,iFAAiF;IACjF,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9C,gFAAgF;IAChF,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC3C;;;OAGG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC/C,8DAA8D;IAC9D,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACzC;;;OAGG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5C,gFAAgF;IAChF,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3C,yGAAyG;IACzG,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,yFAAyF;IACzF,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC1C;AA2BD,sFAAsF;AACtF,MAAM,WAAW,oBAAqB,SAAQ,eAAe;IAC3D,2CAA2C;IAC3C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;CAC3C;AAQD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,aAAa,CACjC,MAAM,EAAE,eAAe,EACvB,OAAO,EAAE,oBAAoB,EAC7B,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,SAAS,CAAC,CAiBpB;AAED,iEAAiE;AACjE,MAAM,WAAW,kBAAmB,SAAQ,eAAe;IACzD,+CAA+C;IAC/C,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACpC;AAID;;;;;;GAMG;AACH,wBAAsB,WAAW,CAC/B,MAAM,EAAE,eAAe,EACvB,GAAG,EAAE,SAAS,EACd,QAAQ,EAAE,kBAAkB,EAC5B,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,IAAI,CAAC,CAIf;AAED,yCAAyC;AACzC,MAAM,WAAW,oBAAqB,SAAQ,cAAc;IAC1D;;;;OAIG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CACtC;AAED,wBAAwB;AACxB,wBAAsB,aAAa,CACjC,MAAM,EAAE,eAAe,EACvB,GAAG,EAAE,SAAS,EACd,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,IAAI,CAAC,CAUf;AAYD;;;;;;;GAOG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,eAAe,EACvB,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,OAAO,EAAE,CAAC,CAEpB;AAED;;;;;;;;;GASG;AACH,wBAAsB,cAAc,CAClC,MAAM,EAAE,eAAe,EACvB,GAAG,EAAE,SAAS,EACd,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,OAAO,CAAC,CAGlB;AAED,6CAA6C;AAC7C,MAAM,WAAW,YAAY;IAC3B,wBAAwB;IACxB,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC;IACvB,0BAA0B;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED;;;;GAIG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,eAAe,EACvB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,YAAY,EAAE,CAAC,CAKzB;AAED,0EAA0E;AAC1E,MAAM,WAAW,kBAAmB,SAAQ,cAAc;IACxD,uFAAuF;IACvF,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;CACxC;AAED,yCAAyC;AACzC,wBAAsB,WAAW,CAC/B,MAAM,EAAE,eAAe,EACvB,GAAG,EAAE,SAAS,EACd,QAAQ,EAAE,SAAS,EACnB,OAAO,GAAE,kBAAuB,GAC/B,OAAO,CAAC,IAAI,CAAC,CAWf;AAID,qCAAqC;AACrC,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,eAAe,EACvB,GAAG,EAAE,SAAS,EACd,UAAU,EAAE,UAAU,EACtB,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,IAAI,CAAC,CAOf;AAED,0CAA0C;AAC1C,wBAAsB,uBAAuB,CAC3C,MAAM,EAAE,eAAe,EACvB,GAAG,EAAE,SAAS,EACd,UAAU,EAAE,UAAU,EACtB,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,IAAI,CAAC,CAEf;AAED,6CAA6C;AAC7C,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,eAAe,EACvB,GAAG,EAAE,SAAS,EACd,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,eAAe,EAAE,CAAC,CAE5B;AAED,4DAA4D;AAC5D,wBAAsB,4BAA4B,CAChD,MAAM,EAAE,eAAe,EACvB,GAAG,EAAE,SAAS,EACd,MAAM,EAAE,UAAU,EAClB,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,eAAe,EAAE,CAAC,CAW5B;AAED,yDAAyD;AACzD,wBAAsB,0BAA0B,CAC9C,MAAM,EAAE,eAAe,EACvB,GAAG,EAAE,SAAS,EACd,MAAM,EAAE,UAAU,EAClB,UAAU,EAAE,UAAU,EACtB,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,IAAI,CAAC,CAOf;AAED,8DAA8D;AAC9D,wBAAsB,6BAA6B,CACjD,MAAM,EAAE,eAAe,EACvB,GAAG,EAAE,SAAS,EACd,MAAM,EAAE,UAAU,EAClB,UAAU,EAAE,UAAU,EACtB,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,IAAI,CAAC,CAOf"}
|
|
@@ -32,6 +32,8 @@ const settingNames = {
|
|
|
32
32
|
isDefault: "channel_flag_default",
|
|
33
33
|
deleteDelayMs: ["channel_delete_delay", inSeconds],
|
|
34
34
|
namePhonetic: "channel_name_phonetic",
|
|
35
|
+
bannerURL: "channel_banner_gfx_url",
|
|
36
|
+
bannerMode: "channel_banner_mode",
|
|
35
37
|
};
|
|
36
38
|
const createNames = {
|
|
37
39
|
name: "channel_name",
|
|
@@ -102,9 +104,9 @@ const listFlags = [
|
|
|
102
104
|
* All channels on the server, in the server's own sort order.
|
|
103
105
|
*
|
|
104
106
|
* Always asks for the topic, flags, voice, limits, icon, seconds empty and
|
|
105
|
-
* banners, which a bare `channellist` leaves out.
|
|
106
|
-
*
|
|
107
|
-
* `
|
|
107
|
+
* banners, which a bare `channellist` leaves out. `description`, `uid` and
|
|
108
|
+
* `filePath` are not part of `channellist` and stay empty or undefined;
|
|
109
|
+
* `getChannelInfo` has them.
|
|
108
110
|
*/
|
|
109
111
|
export async function listChannels(client, options) {
|
|
110
112
|
return (await list(client, "channellist", listFlags, options)).map(parseChannel);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"channels.js","sourceRoot":"","sources":["../../../src/core/api/channels.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EACL,OAAO,EACP,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,YAAY,EACZ,eAAe,EACf,eAAe,EACf,YAAY,EACZ,SAAS,EACT,GAAG,EACH,GAAG,GACJ,MAAM,cAAc,CAAC;AAItB,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"channels.js","sourceRoot":"","sources":["../../../src/core/api/channels.ts"],"names":[],"mappings":"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"}
|
|
@@ -70,6 +70,11 @@ export interface ClientEntry {
|
|
|
70
70
|
* the request (`client_talk_request`); any non-zero value is true. No flag.
|
|
71
71
|
*/
|
|
72
72
|
readonly isRequestingTalk?: boolean | undefined;
|
|
73
|
+
/**
|
|
74
|
+
* When the client asked to talk (`client_talk_request`, a unix time; 0 on
|
|
75
|
+
* the wire when there is no request, which reads as undefined); no flag.
|
|
76
|
+
*/
|
|
77
|
+
readonly talkRequestedAt?: Date | undefined;
|
|
73
78
|
/** The message sent with a talk request (`client_talk_request_msg`); no flag. */
|
|
74
79
|
readonly talkRequestMessage?: string | undefined;
|
|
75
80
|
/** The client's description (`client_description`); no flag. */
|
|
@@ -78,7 +83,7 @@ export interface ClientEntry {
|
|
|
78
83
|
readonly metaData?: string | undefined;
|
|
79
84
|
/** The MD5 of the client's avatar (`client_flag_avatar`); "" for none; no flag. */
|
|
80
85
|
readonly avatar?: string | undefined;
|
|
81
|
-
/** The client's icon (`client_icon_id`)
|
|
86
|
+
/** The client's icon (`client_icon_id`), with `icon`; undefined for none as well as for absent. */
|
|
82
87
|
readonly iconID?: IconID | undefined;
|
|
83
88
|
/** How the nickname is pronounced (`client_nickname_phonetic`); no flag. */
|
|
84
89
|
readonly nicknamePhonetic?: string | undefined;
|
|
@@ -158,6 +163,8 @@ export interface ClientListOptions extends CommandOptions {
|
|
|
158
163
|
readonly ip?: boolean | undefined;
|
|
159
164
|
/** The client's badges (`-badges`). */
|
|
160
165
|
readonly badges?: boolean | undefined;
|
|
166
|
+
/** The client's icon (`-icon`), which fills `ClientEntry.iconID`. */
|
|
167
|
+
readonly icon?: boolean | undefined;
|
|
161
168
|
}
|
|
162
169
|
/** Every client currently connected. */
|
|
163
170
|
export declare function listClients(client: CommandExecutor, options?: ClientListOptions): Promise<ClientEntry[]>;
|
|
@@ -416,6 +423,22 @@ export declare function findClients(client: CommandExecutor, pattern: string, op
|
|
|
416
423
|
export declare function getClientIDs(client: CommandExecutor, uid: UID, options?: CommandOptions): Promise<ClientMatch[]>;
|
|
417
424
|
/** The uid of a connected client. */
|
|
418
425
|
export declare function getClientUIDByID(client: CommandExecutor, clid: ClientID, options?: CommandOptions): Promise<UID>;
|
|
426
|
+
/** What `clientgetuidfromclid` says about a connected client. */
|
|
427
|
+
export interface ClientUIDInfo {
|
|
428
|
+
/** The client's id (`clid`). */
|
|
429
|
+
readonly clientID: ClientID;
|
|
430
|
+
/** The client's unique identifier (`cluid`). */
|
|
431
|
+
readonly uid: UID;
|
|
432
|
+
/** The client's nickname (`nickname`). */
|
|
433
|
+
readonly nickname: string;
|
|
434
|
+
/** The client's myTeamSpeak id (`mytsid`); "" for none, as TS3 3.13.8 and TS6 6.0.0-beta13.1 sent it for a client without one. */
|
|
435
|
+
readonly mytsid: string;
|
|
436
|
+
}
|
|
437
|
+
/**
|
|
438
|
+
* The uid, nickname and myTeamSpeak id of a connected client.
|
|
439
|
+
* {@link getClientUIDByID} is the same command, keeping only the uid.
|
|
440
|
+
*/
|
|
441
|
+
export declare function getClientUIDInfoByID(client: CommandExecutor, clid: ClientID, options?: CommandOptions): Promise<ClientUIDInfo>;
|
|
419
442
|
/** The persistent database id behind a uid. */
|
|
420
443
|
export declare function getClientDBIDByUID(client: CommandExecutor, uid: UID, options?: CommandOptions): Promise<ClientDBID>;
|
|
421
444
|
/** The database record a uid or database id names. */
|
|
@@ -424,6 +447,8 @@ export interface ClientDatabaseName {
|
|
|
424
447
|
readonly databaseID: ClientDBID;
|
|
425
448
|
/** The nickname the client last used. */
|
|
426
449
|
readonly name: string;
|
|
450
|
+
/** The client's unique identifier (`cluid`); "" when the server sent none. */
|
|
451
|
+
readonly uid: UID;
|
|
427
452
|
}
|
|
428
453
|
/** The database id and nickname recorded for a database id. */
|
|
429
454
|
export declare function getClientNameByDBID(client: CommandExecutor, cldbid: ClientDBID, options?: CommandOptions): Promise<ClientDatabaseName>;
|
|
@@ -449,6 +474,18 @@ export interface ClientDatabaseEntry {
|
|
|
449
474
|
readonly description: string;
|
|
450
475
|
/** The address the client last connected from. */
|
|
451
476
|
readonly lastIP: string;
|
|
477
|
+
/** The client's query account name (`client_login_name`); "" for none; `clientdblist` rows only. */
|
|
478
|
+
readonly loginName?: string | undefined;
|
|
479
|
+
/** The MD5 of the client's avatar (`client_flag_avatar`), "" for none; `getClientDatabaseInfo` only. */
|
|
480
|
+
readonly avatarHash?: string | undefined;
|
|
481
|
+
/** Bytes the client has uploaded in all (`client_total_bytes_uploaded`); `getClientDatabaseInfo` only. */
|
|
482
|
+
readonly totalBytesUploaded?: number | undefined;
|
|
483
|
+
/** Bytes the client has downloaded in all (`client_total_bytes_downloaded`); `getClientDatabaseInfo` only. */
|
|
484
|
+
readonly totalBytesDownloaded?: number | undefined;
|
|
485
|
+
/** Bytes the client has uploaded this month (`client_month_bytes_uploaded`); `getClientDatabaseInfo` only. */
|
|
486
|
+
readonly monthBytesUploaded?: number | undefined;
|
|
487
|
+
/** Bytes the client has downloaded this month (`client_month_bytes_downloaded`); `getClientDatabaseInfo` only. */
|
|
488
|
+
readonly monthBytesDownloaded?: number | undefined;
|
|
452
489
|
}
|
|
453
490
|
/** Which slice of the client database {@link listClientDatabase} reads. */
|
|
454
491
|
export interface ClientDatabasePageOptions extends CommandOptions {
|