moons-ta-client 1.1.0 → 1.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.
@@ -1,4 +1,4 @@
1
1
  export declare const masterAddress = "server.tournamentassistant.net";
2
2
  export declare const masterPort = "8676";
3
- export declare const version = "1.1.0";
4
- export declare const versionCode = 110;
3
+ export declare const version = "1.1.2";
4
+ export declare const versionCode = 112;
package/dist/constants.js CHANGED
@@ -1,4 +1,4 @@
1
1
  export const masterAddress = "server.tournamentassistant.net";
2
2
  export const masterPort = "8676";
3
- export const version = "1.1.0";
4
- export const versionCode = 110;
3
+ export const version = "1.1.2";
4
+ export const versionCode = 112;
package/dist/index.d.ts CHANGED
@@ -3875,6 +3875,10 @@ interface Request_Connect {
3875
3875
  * @generated from protobuf field: int32 client_version = 1;
3876
3876
  */
3877
3877
  clientVersion: number;
3878
+ /**
3879
+ * @generated from protobuf field: int32 ui_version = 2;
3880
+ */
3881
+ uiVersion: number;
3878
3882
  }
3879
3883
  /**
3880
3884
  * @generated MessageType for protobuf message proto.packets.Request.Connect
@@ -4118,12 +4122,6 @@ interface Push {
4118
4122
  * @generated from protobuf field: proto.packets.Push.SongFinished song_finished = 2;
4119
4123
  */
4120
4124
  songFinished: Push_SongFinished;
4121
- } | {
4122
- oneofKind: "discordAuthorized";
4123
- /**
4124
- * @generated from protobuf field: proto.packets.Push.DiscordAuthorized discord_authorized = 3;
4125
- */
4126
- discordAuthorized: Push_DiscordAuthorized;
4127
4125
  } | {
4128
4126
  oneofKind: undefined;
4129
4127
  };
@@ -4186,30 +4184,7 @@ interface Push_SongFinished {
4186
4184
  /**
4187
4185
  * @generated MessageType for protobuf message proto.packets.Push.SongFinished
4188
4186
  */
4189
- declare const Push_SongFinished: Push_SongFinished$Type;
4190
- declare class Push_DiscordAuthorized$Type extends MessageType<Push_DiscordAuthorized> {
4191
- constructor();
4192
- create(value?: PartialMessage<Push_DiscordAuthorized>): Push_DiscordAuthorized;
4193
- internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Push_DiscordAuthorized): Push_DiscordAuthorized;
4194
- internalBinaryWrite(message: Push_DiscordAuthorized, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
4195
- }
4196
- /**
4197
- * @generated from protobuf message proto.packets.Push.DiscordAuthorized
4198
- */
4199
- interface Push_DiscordAuthorized {
4200
- /**
4201
- * @generated from protobuf field: bool success = 1;
4202
- */
4203
- success: boolean;
4204
- /**
4205
- * @generated from protobuf field: string token = 2;
4206
- */
4207
- token: string;
4208
- }
4209
- /**
4210
- * @generated MessageType for protobuf message proto.packets.Push.DiscordAuthorized
4211
- */
4212
- declare const Push_DiscordAuthorized: Push_DiscordAuthorized$Type;
4187
+ declare const Push_SongFinished: Push_SongFinished$Type;
4213
4188
 
4214
4189
  declare class Command$Type extends MessageType<Command> {
4215
4190
  constructor();
@@ -4511,8 +4486,6 @@ type TAClientEvents = {
4511
4486
  failedToConnectToServer: {};
4512
4487
  disconnectedFromServer: {};
4513
4488
  authorizationRequestedFromServer: string;
4514
- authorizedWithServer: string;
4515
- failedToAuthorizeWithServer: {};
4516
4489
  loadSongRequested: [string, string, Request_LoadSong];
4517
4490
  songFinished: Push_SongFinished;
4518
4491
  realtimeScore: RealtimeScore;
@@ -4540,11 +4513,12 @@ type TAClientEvents = {
4540
4513
  };
4541
4514
  declare class TAClient extends CustomEventEmitter<TAClientEvents> {
4542
4515
  stateManager: StateManager;
4516
+ private uiVersion;
4543
4517
  private client?;
4544
4518
  private token;
4545
4519
  private shouldHeartbeat;
4546
4520
  private heartbeatInterval;
4547
- constructor();
4521
+ constructor(uiVersion?: number | undefined);
4548
4522
  get isConnected(): boolean;
4549
4523
  get isConnecting(): boolean;
4550
4524
  connect(serverAddress: string, port: string): Promise<Response>;
@@ -4610,7 +4584,7 @@ declare class TAClient extends CustomEventEmitter<TAClientEvents> {
4610
4584
 
4611
4585
  declare const masterAddress = "server.tournamentassistant.net";
4612
4586
  declare const masterPort = "8676";
4613
- declare const version = "1.1.0";
4614
- declare const versionCode = 110;
4587
+ declare const version = "1.1.2";
4588
+ declare const versionCode = 112;
4615
4589
 
4616
- export { Acknowledgement, Acknowledgement_AcknowledgementType, Beatmap, Channel, Characteristic, Command, Command_PlaySong, Command_SendBotMessage, CoreServer, CustomEventEmitter, DiscordUser, Event, Event_MatchCreated, Event_MatchDeleted, Event_MatchUpdated, Event_QualifierCreated, Event_QualifierDeleted, Event_QualifierUpdated, Event_ServerAdded, Event_ServerDeleted, Event_TournamentCreated, Event_TournamentDeleted, Event_TournamentUpdated, Event_UserAdded, Event_UserLeft, Event_UserUpdated, ForwardingPacket, GameplayModifiers, GameplayModifiers_GameOptions, GameplayParameters, Guild, LeaderboardEntry, Map, Match, ModalOption, Packet, Permissions, PlayerSpecificSettings, PlayerSpecificSettings_ArcVisibilityType, PlayerSpecificSettings_NoteJumpDurationTypeSettings, PlayerSpecificSettings_PlayerOptions, Push, Push_DiscordAuthorized, Push_SongFinished, Push_SongFinished_CompletionType, QualifierEvent, QualifierEvent_EventSettings, QualifierEvent_LeaderboardSort, RealtimeScore, Request, Request_AddAuthorizedUser, Request_AddAuthorizedUserPermission, Request_AddQualifierMaps, Request_AddServer, Request_AddTournamentPool, Request_AddTournamentPoolMaps, Request_AddTournamentTeam, Request_AddUserToMatch, Request_Connect, Request_CreateMatch, Request_CreateQualifierEvent, Request_CreateTournament, Request_DeleteMatch, Request_DeleteQualifierEvent, Request_DeleteTournament, Request_GetAuthorizedUsers, Request_GetDiscordInfo, Request_Join, Request_LoadSong, Request_PreloadImageForStreamSync, Request_QualifierScores, Request_RemainingAttempts, Request_RemoveAuthorizedUser, Request_RemoveAuthorizedUserPermission, Request_RemoveQualifierMap, Request_RemoveTournamentPool, Request_RemoveTournamentPoolMap, Request_RemoveTournamentTeam, Request_RemoveUserFromMatch, Request_SetMatchLeader, Request_SetMatchMap, Request_SetQualifierFlags, Request_SetQualifierImage, Request_SetQualifierInfoChannel, Request_SetQualifierLeaderboardSort, Request_SetQualifierName, Request_SetTournamentAllowUnauthorizedView, Request_SetTournamentBannedMods, Request_SetTournamentEnablePools, Request_SetTournamentEnableTeams, Request_SetTournamentImage, Request_SetTournamentName, Request_SetTournamentPoolName, Request_SetTournamentScoreUpdateFrequency, Request_SetTournamentShowQualifierButton, Request_SetTournamentShowTournamentButton, Request_SetTournamentTeamImage, Request_SetTournamentTeamName, Request_ShowModal, Request_SubmitQualifierScore, Request_UpdateQualifierMap, Request_UpdateTournamentPoolMap, Request_UpdateUser, Response, type ResponseFromUser, Response_AddAuthorizedUser, Response_AddServer, Response_Connect, Response_Connect_ConnectFailReason, Response_CreateMatch, Response_CreateQualifierEvent, Response_CreateTournament, Response_DeleteMatch, Response_DeleteQualifierEvent, Response_DeleteTournament, Response_GetAuthorizedUsers, Response_GetAuthorizedUsers_AuthroizedUser, Response_GetDiscordInfo, Response_Join, Response_Join_JoinFailReason, Response_LeaderboardEntries, Response_LoadSong, Response_PreloadImageForStreamSync, Response_RemainingAttempts, Response_RemoveAuthorizedUser, Response_ResponseType, Response_ShowModal, Response_UpdateAuthorizedUser, Response_UpdateMatch, Response_UpdateQualifierEvent, Response_UpdateTournament, Response_UpdateUser, ScoreTrackerHand, State, TAClient, Tournament, Tournament_TournamentSettings, Tournament_TournamentSettings_Pool, Tournament_TournamentSettings_Team, User, User_ClientTypes, User_DiscordInfo, User_DownloadStates, User_PlayStates, User_Point, getTournaments, masterAddress, masterPort, version, versionCode };
4590
+ export { Acknowledgement, Acknowledgement_AcknowledgementType, Beatmap, Channel, Characteristic, Command, Command_PlaySong, Command_SendBotMessage, CoreServer, CustomEventEmitter, DiscordUser, Event, Event_MatchCreated, Event_MatchDeleted, Event_MatchUpdated, Event_QualifierCreated, Event_QualifierDeleted, Event_QualifierUpdated, Event_ServerAdded, Event_ServerDeleted, Event_TournamentCreated, Event_TournamentDeleted, Event_TournamentUpdated, Event_UserAdded, Event_UserLeft, Event_UserUpdated, ForwardingPacket, GameplayModifiers, GameplayModifiers_GameOptions, GameplayParameters, Guild, LeaderboardEntry, Map, Match, ModalOption, Packet, Permissions, PlayerSpecificSettings, PlayerSpecificSettings_ArcVisibilityType, PlayerSpecificSettings_NoteJumpDurationTypeSettings, PlayerSpecificSettings_PlayerOptions, Push, Push_SongFinished, Push_SongFinished_CompletionType, QualifierEvent, QualifierEvent_EventSettings, QualifierEvent_LeaderboardSort, RealtimeScore, Request, Request_AddAuthorizedUser, Request_AddAuthorizedUserPermission, Request_AddQualifierMaps, Request_AddServer, Request_AddTournamentPool, Request_AddTournamentPoolMaps, Request_AddTournamentTeam, Request_AddUserToMatch, Request_Connect, Request_CreateMatch, Request_CreateQualifierEvent, Request_CreateTournament, Request_DeleteMatch, Request_DeleteQualifierEvent, Request_DeleteTournament, Request_GetAuthorizedUsers, Request_GetDiscordInfo, Request_Join, Request_LoadSong, Request_PreloadImageForStreamSync, Request_QualifierScores, Request_RemainingAttempts, Request_RemoveAuthorizedUser, Request_RemoveAuthorizedUserPermission, Request_RemoveQualifierMap, Request_RemoveTournamentPool, Request_RemoveTournamentPoolMap, Request_RemoveTournamentTeam, Request_RemoveUserFromMatch, Request_SetMatchLeader, Request_SetMatchMap, Request_SetQualifierFlags, Request_SetQualifierImage, Request_SetQualifierInfoChannel, Request_SetQualifierLeaderboardSort, Request_SetQualifierName, Request_SetTournamentAllowUnauthorizedView, Request_SetTournamentBannedMods, Request_SetTournamentEnablePools, Request_SetTournamentEnableTeams, Request_SetTournamentImage, Request_SetTournamentName, Request_SetTournamentPoolName, Request_SetTournamentScoreUpdateFrequency, Request_SetTournamentShowQualifierButton, Request_SetTournamentShowTournamentButton, Request_SetTournamentTeamImage, Request_SetTournamentTeamName, Request_ShowModal, Request_SubmitQualifierScore, Request_UpdateQualifierMap, Request_UpdateTournamentPoolMap, Request_UpdateUser, Response, type ResponseFromUser, Response_AddAuthorizedUser, Response_AddServer, Response_Connect, Response_Connect_ConnectFailReason, Response_CreateMatch, Response_CreateQualifierEvent, Response_CreateTournament, Response_DeleteMatch, Response_DeleteQualifierEvent, Response_DeleteTournament, Response_GetAuthorizedUsers, Response_GetAuthorizedUsers_AuthroizedUser, Response_GetDiscordInfo, Response_Join, Response_Join_JoinFailReason, Response_LeaderboardEntries, Response_LoadSong, Response_PreloadImageForStreamSync, Response_RemainingAttempts, Response_RemoveAuthorizedUser, Response_ResponseType, Response_ShowModal, Response_UpdateAuthorizedUser, Response_UpdateMatch, Response_UpdateQualifierEvent, Response_UpdateTournament, Response_UpdateUser, ScoreTrackerHand, State, TAClient, Tournament, Tournament_TournamentSettings, Tournament_TournamentSettings_Pool, Tournament_TournamentSettings_Team, User, User_ClientTypes, User_DiscordInfo, User_DownloadStates, User_PlayStates, User_Point, getTournaments, masterAddress, masterPort, version, versionCode };
package/dist/index.esm.js CHANGED
@@ -13433,11 +13433,18 @@ var Request_Connect$Type = class extends MessageType {
13433
13433
  kind: "scalar",
13434
13434
  T: 5
13435
13435
  /*ScalarType.INT32*/
13436
+ },
13437
+ {
13438
+ no: 2,
13439
+ name: "ui_version",
13440
+ kind: "scalar",
13441
+ T: 5
13442
+ /*ScalarType.INT32*/
13436
13443
  }
13437
13444
  ]);
13438
13445
  }
13439
13446
  create(value) {
13440
- const message = { clientVersion: 0 };
13447
+ const message = { clientVersion: 0, uiVersion: 0 };
13441
13448
  globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this });
13442
13449
  if (value !== void 0)
13443
13450
  reflectionMergePartial(this, message, value);
@@ -13452,6 +13459,10 @@ var Request_Connect$Type = class extends MessageType {
13452
13459
  1:
13453
13460
  message.clientVersion = reader.int32();
13454
13461
  break;
13462
+ case /* int32 ui_version */
13463
+ 2:
13464
+ message.uiVersion = reader.int32();
13465
+ break;
13455
13466
  default:
13456
13467
  let u2 = options.readUnknownField;
13457
13468
  if (u2 === "throw")
@@ -13466,6 +13477,8 @@ var Request_Connect$Type = class extends MessageType {
13466
13477
  internalBinaryWrite(message, writer, options) {
13467
13478
  if (message.clientVersion !== 0)
13468
13479
  writer.tag(1, WireType.Varint).int32(message.clientVersion);
13480
+ if (message.uiVersion !== 0)
13481
+ writer.tag(2, WireType.Varint).int32(message.uiVersion);
13469
13482
  let u2 = options.writeUnknownFields;
13470
13483
  if (u2 !== false)
13471
13484
  (u2 == true ? UnknownFieldHandler.onWrite : u2)(this.typeName, message, writer);
@@ -14002,8 +14015,7 @@ var Push$Type = class extends MessageType {
14002
14015
  constructor() {
14003
14016
  super("proto.packets.Push", [
14004
14017
  { no: 1, name: "realtime_score", kind: "message", oneof: "data", T: () => RealtimeScore },
14005
- { no: 2, name: "song_finished", kind: "message", oneof: "data", T: () => Push_SongFinished },
14006
- { no: 3, name: "discord_authorized", kind: "message", oneof: "data", T: () => Push_DiscordAuthorized }
14018
+ { no: 2, name: "song_finished", kind: "message", oneof: "data", T: () => Push_SongFinished }
14007
14019
  ]);
14008
14020
  }
14009
14021
  create(value) {
@@ -14032,13 +14044,6 @@ var Push$Type = class extends MessageType {
14032
14044
  songFinished: Push_SongFinished.internalBinaryRead(reader, reader.uint32(), options, message.data.songFinished)
14033
14045
  };
14034
14046
  break;
14035
- case /* proto.packets.Push.DiscordAuthorized discord_authorized */
14036
- 3:
14037
- message.data = {
14038
- oneofKind: "discordAuthorized",
14039
- discordAuthorized: Push_DiscordAuthorized.internalBinaryRead(reader, reader.uint32(), options, message.data.discordAuthorized)
14040
- };
14041
- break;
14042
14047
  default:
14043
14048
  let u2 = options.readUnknownField;
14044
14049
  if (u2 === "throw")
@@ -14055,8 +14060,6 @@ var Push$Type = class extends MessageType {
14055
14060
  RealtimeScore.internalBinaryWrite(message.data.realtimeScore, writer.tag(1, WireType.LengthDelimited).fork(), options).join();
14056
14061
  if (message.data.oneofKind === "songFinished")
14057
14062
  Push_SongFinished.internalBinaryWrite(message.data.songFinished, writer.tag(2, WireType.LengthDelimited).fork(), options).join();
14058
- if (message.data.oneofKind === "discordAuthorized")
14059
- Push_DiscordAuthorized.internalBinaryWrite(message.data.discordAuthorized, writer.tag(3, WireType.LengthDelimited).fork(), options).join();
14060
14063
  let u2 = options.writeUnknownFields;
14061
14064
  if (u2 !== false)
14062
14065
  (u2 == true ? UnknownFieldHandler.onWrite : u2)(this.typeName, message, writer);
@@ -14212,68 +14215,6 @@ var Push_SongFinished$Type = class extends MessageType {
14212
14215
  }
14213
14216
  };
14214
14217
  var Push_SongFinished = new Push_SongFinished$Type();
14215
- var Push_DiscordAuthorized$Type = class extends MessageType {
14216
- constructor() {
14217
- super("proto.packets.Push.DiscordAuthorized", [
14218
- {
14219
- no: 1,
14220
- name: "success",
14221
- kind: "scalar",
14222
- T: 8
14223
- /*ScalarType.BOOL*/
14224
- },
14225
- {
14226
- no: 2,
14227
- name: "token",
14228
- kind: "scalar",
14229
- T: 9
14230
- /*ScalarType.STRING*/
14231
- }
14232
- ]);
14233
- }
14234
- create(value) {
14235
- const message = { success: false, token: "" };
14236
- globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this });
14237
- if (value !== void 0)
14238
- reflectionMergePartial(this, message, value);
14239
- return message;
14240
- }
14241
- internalBinaryRead(reader, length, options, target) {
14242
- let message = target ?? this.create(), end = reader.pos + length;
14243
- while (reader.pos < end) {
14244
- let [fieldNo, wireType] = reader.tag();
14245
- switch (fieldNo) {
14246
- case /* bool success */
14247
- 1:
14248
- message.success = reader.bool();
14249
- break;
14250
- case /* string token */
14251
- 2:
14252
- message.token = reader.string();
14253
- break;
14254
- default:
14255
- let u2 = options.readUnknownField;
14256
- if (u2 === "throw")
14257
- throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
14258
- let d = reader.skip(wireType);
14259
- if (u2 !== false)
14260
- (u2 === true ? UnknownFieldHandler.onRead : u2)(this.typeName, message, fieldNo, wireType, d);
14261
- }
14262
- }
14263
- return message;
14264
- }
14265
- internalBinaryWrite(message, writer, options) {
14266
- if (message.success !== false)
14267
- writer.tag(1, WireType.Varint).bool(message.success);
14268
- if (message.token !== "")
14269
- writer.tag(2, WireType.LengthDelimited).string(message.token);
14270
- let u2 = options.writeUnknownFields;
14271
- if (u2 !== false)
14272
- (u2 == true ? UnknownFieldHandler.onWrite : u2)(this.typeName, message, writer);
14273
- return writer;
14274
- }
14275
- };
14276
- var Push_DiscordAuthorized = new Push_DiscordAuthorized$Type();
14277
14218
 
14278
14219
  // src/models/commands.ts
14279
14220
  init_dirname();
@@ -15184,8 +15125,8 @@ init_buffer2();
15184
15125
  init_process2();
15185
15126
  var masterAddress = "server.tournamentassistant.net";
15186
15127
  var masterPort = "8676";
15187
- var version = "1.1.0";
15188
- var versionCode = 110;
15128
+ var version = "1.1.2";
15129
+ var versionCode = 112;
15189
15130
 
15190
15131
  // src/tournament-assistant-client.ts
15191
15132
  var import_ws2 = __toESM(require_ws(), 1);
@@ -15281,13 +15222,15 @@ var Scraper = class extends CustomEventEmitter {
15281
15222
  // src/tournament-assistant-client.ts
15282
15223
  var TAClient = class extends CustomEventEmitter {
15283
15224
  stateManager;
15225
+ uiVersion;
15284
15226
  client;
15285
15227
  token = "";
15286
15228
  shouldHeartbeat = false;
15287
15229
  heartbeatInterval;
15288
- constructor() {
15230
+ constructor(uiVersion = void 0) {
15289
15231
  super();
15290
15232
  this.stateManager = new StateManager();
15233
+ this.uiVersion = uiVersion;
15291
15234
  }
15292
15235
  // --- State helpers --- //
15293
15236
  get isConnected() {
@@ -15321,7 +15264,8 @@ var TAClient = class extends CustomEventEmitter {
15321
15264
  type: {
15322
15265
  oneofKind: "connect",
15323
15266
  connect: {
15324
- clientVersion: versionCode
15267
+ clientVersion: versionCode,
15268
+ uiVersion: this.uiVersion ?? 0
15325
15269
  }
15326
15270
  }
15327
15271
  });
@@ -15420,7 +15364,6 @@ var TAClient = class extends CustomEventEmitter {
15420
15364
  const addListeners = () => {
15421
15365
  this.on("responseReceived", onResponseReceived);
15422
15366
  this.on("authorizationRequestedFromServer", onAuthorizationRequested);
15423
- this.on("authorizedWithServer", onAuthroizedWithServer);
15424
15367
  };
15425
15368
  const removeListeners = () => {
15426
15369
  this.removeListener("responseReceived", onResponseReceived);
@@ -15428,7 +15371,6 @@ var TAClient = class extends CustomEventEmitter {
15428
15371
  "authorizationRequestedFromServer",
15429
15372
  onAuthorizationRequested
15430
15373
  );
15431
- this.removeListener("authorizedWithServer", onAuthroizedWithServer);
15432
15374
  };
15433
15375
  const checkResponses = () => {
15434
15376
  const responseUsers = responseDictionary.map((x) => x.userId);
@@ -15466,10 +15408,7 @@ var TAClient = class extends CustomEventEmitter {
15466
15408
  const timeout = createTimeout(3e4);
15467
15409
  const onAuthorizationRequested = () => {
15468
15410
  clearTimeout(timeout);
15469
- createTimeout(3e4);
15470
- };
15471
- const onAuthroizedWithServer = () => {
15472
- sendRequest();
15411
+ throw "Authorization token invalid or not provided";
15473
15412
  };
15474
15413
  addListeners();
15475
15414
  });
@@ -15741,13 +15680,7 @@ var TAClient = class extends CustomEventEmitter {
15741
15680
  }
15742
15681
  } else if (packet.packet.oneofKind === "push") {
15743
15682
  const push = packet.packet.push;
15744
- if (push.data.oneofKind === "discordAuthorized") {
15745
- if (push.data.discordAuthorized.success) {
15746
- this.emit("authorizedWithServer", push.data.discordAuthorized.token);
15747
- } else {
15748
- this.emit("failedToAuthorizeWithServer", {});
15749
- }
15750
- } else if (push.data.oneofKind === "songFinished") {
15683
+ if (push.data.oneofKind === "songFinished") {
15751
15684
  this.emit("songFinished", push.data.songFinished);
15752
15685
  } else if (push.data.oneofKind === "realtimeScore") {
15753
15686
  this.emit("realtimeScore", push.data.realtimeScore);
@@ -16465,7 +16398,6 @@ export {
16465
16398
  PlayerSpecificSettings_NoteJumpDurationTypeSettings,
16466
16399
  PlayerSpecificSettings_PlayerOptions,
16467
16400
  Push,
16468
- Push_DiscordAuthorized,
16469
16401
  Push_SongFinished,
16470
16402
  Push_SongFinished_CompletionType,
16471
16403
  QualifierEvent,
@@ -28,12 +28,6 @@ export interface Push {
28
28
  * @generated from protobuf field: proto.packets.Push.SongFinished song_finished = 2;
29
29
  */
30
30
  songFinished: Push_SongFinished;
31
- } | {
32
- oneofKind: "discordAuthorized";
33
- /**
34
- * @generated from protobuf field: proto.packets.Push.DiscordAuthorized discord_authorized = 3;
35
- */
36
- discordAuthorized: Push_DiscordAuthorized;
37
31
  } | {
38
32
  oneofKind: undefined;
39
33
  };
@@ -100,19 +94,6 @@ export declare enum Push_SongFinished_CompletionType {
100
94
  */
101
95
  Quit = 2
102
96
  }
103
- /**
104
- * @generated from protobuf message proto.packets.Push.DiscordAuthorized
105
- */
106
- export interface Push_DiscordAuthorized {
107
- /**
108
- * @generated from protobuf field: bool success = 1;
109
- */
110
- success: boolean;
111
- /**
112
- * @generated from protobuf field: string token = 2;
113
- */
114
- token: string;
115
- }
116
97
  declare class Push$Type extends MessageType<Push> {
117
98
  constructor();
118
99
  create(value?: PartialMessage<Push>): Push;
@@ -133,14 +114,4 @@ declare class Push_SongFinished$Type extends MessageType<Push_SongFinished> {
133
114
  * @generated MessageType for protobuf message proto.packets.Push.SongFinished
134
115
  */
135
116
  export declare const Push_SongFinished: Push_SongFinished$Type;
136
- declare class Push_DiscordAuthorized$Type extends MessageType<Push_DiscordAuthorized> {
137
- constructor();
138
- create(value?: PartialMessage<Push_DiscordAuthorized>): Push_DiscordAuthorized;
139
- internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Push_DiscordAuthorized): Push_DiscordAuthorized;
140
- internalBinaryWrite(message: Push_DiscordAuthorized, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
141
- }
142
- /**
143
- * @generated MessageType for protobuf message proto.packets.Push.DiscordAuthorized
144
- */
145
- export declare const Push_DiscordAuthorized: Push_DiscordAuthorized$Type;
146
117
  export {};
@@ -29,8 +29,7 @@ class Push$Type extends MessageType {
29
29
  constructor() {
30
30
  super("proto.packets.Push", [
31
31
  { no: 1, name: "realtime_score", kind: "message", oneof: "data", T: () => RealtimeScore },
32
- { no: 2, name: "song_finished", kind: "message", oneof: "data", T: () => Push_SongFinished },
33
- { no: 3, name: "discord_authorized", kind: "message", oneof: "data", T: () => Push_DiscordAuthorized }
32
+ { no: 2, name: "song_finished", kind: "message", oneof: "data", T: () => Push_SongFinished }
34
33
  ]);
35
34
  }
36
35
  create(value) {
@@ -57,12 +56,6 @@ class Push$Type extends MessageType {
57
56
  songFinished: Push_SongFinished.internalBinaryRead(reader, reader.uint32(), options, message.data.songFinished)
58
57
  };
59
58
  break;
60
- case /* proto.packets.Push.DiscordAuthorized discord_authorized */ 3:
61
- message.data = {
62
- oneofKind: "discordAuthorized",
63
- discordAuthorized: Push_DiscordAuthorized.internalBinaryRead(reader, reader.uint32(), options, message.data.discordAuthorized)
64
- };
65
- break;
66
59
  default:
67
60
  let u = options.readUnknownField;
68
61
  if (u === "throw")
@@ -81,9 +74,6 @@ class Push$Type extends MessageType {
81
74
  /* proto.packets.Push.SongFinished song_finished = 2; */
82
75
  if (message.data.oneofKind === "songFinished")
83
76
  Push_SongFinished.internalBinaryWrite(message.data.songFinished, writer.tag(2, WireType.LengthDelimited).fork(), options).join();
84
- /* proto.packets.Push.DiscordAuthorized discord_authorized = 3; */
85
- if (message.data.oneofKind === "discordAuthorized")
86
- Push_DiscordAuthorized.internalBinaryWrite(message.data.discordAuthorized, writer.tag(3, WireType.LengthDelimited).fork(), options).join();
87
77
  let u = options.writeUnknownFields;
88
78
  if (u !== false)
89
79
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -204,57 +194,3 @@ class Push_SongFinished$Type extends MessageType {
204
194
  * @generated MessageType for protobuf message proto.packets.Push.SongFinished
205
195
  */
206
196
  export const Push_SongFinished = new Push_SongFinished$Type();
207
- // @generated message type with reflection information, may provide speed optimized methods
208
- class Push_DiscordAuthorized$Type extends MessageType {
209
- constructor() {
210
- super("proto.packets.Push.DiscordAuthorized", [
211
- { no: 1, name: "success", kind: "scalar", T: 8 /*ScalarType.BOOL*/ },
212
- { no: 2, name: "token", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
213
- ]);
214
- }
215
- create(value) {
216
- const message = { success: false, token: "" };
217
- globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this });
218
- if (value !== undefined)
219
- reflectionMergePartial(this, message, value);
220
- return message;
221
- }
222
- internalBinaryRead(reader, length, options, target) {
223
- let message = target ?? this.create(), end = reader.pos + length;
224
- while (reader.pos < end) {
225
- let [fieldNo, wireType] = reader.tag();
226
- switch (fieldNo) {
227
- case /* bool success */ 1:
228
- message.success = reader.bool();
229
- break;
230
- case /* string token */ 2:
231
- message.token = reader.string();
232
- break;
233
- default:
234
- let u = options.readUnknownField;
235
- if (u === "throw")
236
- throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
237
- let d = reader.skip(wireType);
238
- if (u !== false)
239
- (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
240
- }
241
- }
242
- return message;
243
- }
244
- internalBinaryWrite(message, writer, options) {
245
- /* bool success = 1; */
246
- if (message.success !== false)
247
- writer.tag(1, WireType.Varint).bool(message.success);
248
- /* string token = 2; */
249
- if (message.token !== "")
250
- writer.tag(2, WireType.LengthDelimited).string(message.token);
251
- let u = options.writeUnknownFields;
252
- if (u !== false)
253
- (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
254
- return writer;
255
- }
256
- }
257
- /**
258
- * @generated MessageType for protobuf message proto.packets.Push.DiscordAuthorized
259
- */
260
- export const Push_DiscordAuthorized = new Push_DiscordAuthorized$Type();
@@ -1027,6 +1027,10 @@ export interface Request_Connect {
1027
1027
  * @generated from protobuf field: int32 client_version = 1;
1028
1028
  */
1029
1029
  clientVersion: number;
1030
+ /**
1031
+ * @generated from protobuf field: int32 ui_version = 2;
1032
+ */
1033
+ uiVersion: number;
1030
1034
  }
1031
1035
  /**
1032
1036
  * @generated from protobuf message proto.packets.Request.Join
@@ -3148,11 +3148,12 @@ export const Request_AddServer = new Request_AddServer$Type();
3148
3148
  class Request_Connect$Type extends MessageType {
3149
3149
  constructor() {
3150
3150
  super("proto.packets.Request.Connect", [
3151
- { no: 1, name: "client_version", kind: "scalar", T: 5 /*ScalarType.INT32*/ }
3151
+ { no: 1, name: "client_version", kind: "scalar", T: 5 /*ScalarType.INT32*/ },
3152
+ { no: 2, name: "ui_version", kind: "scalar", T: 5 /*ScalarType.INT32*/ }
3152
3153
  ]);
3153
3154
  }
3154
3155
  create(value) {
3155
- const message = { clientVersion: 0 };
3156
+ const message = { clientVersion: 0, uiVersion: 0 };
3156
3157
  globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this });
3157
3158
  if (value !== undefined)
3158
3159
  reflectionMergePartial(this, message, value);
@@ -3166,6 +3167,9 @@ class Request_Connect$Type extends MessageType {
3166
3167
  case /* int32 client_version */ 1:
3167
3168
  message.clientVersion = reader.int32();
3168
3169
  break;
3170
+ case /* int32 ui_version */ 2:
3171
+ message.uiVersion = reader.int32();
3172
+ break;
3169
3173
  default:
3170
3174
  let u = options.readUnknownField;
3171
3175
  if (u === "throw")
@@ -3181,6 +3185,9 @@ class Request_Connect$Type extends MessageType {
3181
3185
  /* int32 client_version = 1; */
3182
3186
  if (message.clientVersion !== 0)
3183
3187
  writer.tag(1, WireType.Varint).int32(message.clientVersion);
3188
+ /* int32 ui_version = 2; */
3189
+ if (message.uiVersion !== 0)
3190
+ writer.tag(2, WireType.Varint).int32(message.uiVersion);
3184
3191
  let u = options.writeUnknownFields;
3185
3192
  if (u !== false)
3186
3193
  (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -16,8 +16,6 @@ type TAClientEvents = {
16
16
  failedToConnectToServer: {};
17
17
  disconnectedFromServer: {};
18
18
  authorizationRequestedFromServer: string;
19
- authorizedWithServer: string;
20
- failedToAuthorizeWithServer: {};
21
19
  loadSongRequested: [string, string, Request_LoadSong];
22
20
  songFinished: Push_SongFinished;
23
21
  realtimeScore: RealtimeScore;
@@ -45,11 +43,12 @@ type TAClientEvents = {
45
43
  };
46
44
  export declare class TAClient extends CustomEventEmitter<TAClientEvents> {
47
45
  stateManager: StateManager;
46
+ private uiVersion;
48
47
  private client?;
49
48
  private token;
50
49
  private shouldHeartbeat;
51
50
  private heartbeatInterval;
52
- constructor();
51
+ constructor(uiVersion?: number | undefined);
53
52
  get isConnected(): boolean;
54
53
  get isConnecting(): boolean;
55
54
  connect(serverAddress: string, port: string): Promise<Response>;
@@ -10,13 +10,15 @@ export * from "./scraper.js";
10
10
  export * from "./models/models.js";
11
11
  export class TAClient extends CustomEventEmitter {
12
12
  stateManager;
13
+ uiVersion;
13
14
  client;
14
15
  token = "";
15
16
  shouldHeartbeat = false;
16
17
  heartbeatInterval;
17
- constructor() {
18
+ constructor(uiVersion = undefined) {
18
19
  super();
19
20
  this.stateManager = new StateManager();
21
+ this.uiVersion = uiVersion;
20
22
  }
21
23
  // --- State helpers --- //
22
24
  get isConnected() {
@@ -48,6 +50,7 @@ export class TAClient extends CustomEventEmitter {
48
50
  oneofKind: "connect",
49
51
  connect: {
50
52
  clientVersion: versionCode,
53
+ uiVersion: this.uiVersion ?? 0
51
54
  },
52
55
  },
53
56
  });
@@ -142,12 +145,10 @@ export class TAClient extends CustomEventEmitter {
142
145
  const addListeners = () => {
143
146
  this.on("responseReceived", onResponseReceived);
144
147
  this.on("authorizationRequestedFromServer", onAuthorizationRequested);
145
- this.on("authorizedWithServer", onAuthroizedWithServer);
146
148
  };
147
149
  const removeListeners = () => {
148
150
  this.removeListener("responseReceived", onResponseReceived);
149
151
  this.removeListener("authorizationRequestedFromServer", onAuthorizationRequested);
150
- this.removeListener("authorizedWithServer", onAuthroizedWithServer);
151
152
  };
152
153
  // Check that we got responses from all expected users
153
154
  const checkResponses = () => {
@@ -188,16 +189,11 @@ export class TAClient extends CustomEventEmitter {
188
189
  }, time);
189
190
  };
190
191
  const timeout = createTimeout(30000);
191
- // If authorization is requested, we're assuming an external application will handle
192
- // resetting the auth token, so we'll extend the timeout by 30 seconds and try again
193
- // if a successful auth is noticed
192
+ // If authorization is requested, we're assuming an external application failed
193
+ // to provide a valid token, so we will combust
194
194
  const onAuthorizationRequested = () => {
195
195
  clearTimeout(timeout);
196
- createTimeout(30000);
197
- };
198
- // Retry on successful authorization
199
- const onAuthroizedWithServer = () => {
200
- sendRequest();
196
+ throw "Authorization token invalid or not provided";
201
197
  };
202
198
  addListeners();
203
199
  });
@@ -488,15 +484,7 @@ export class TAClient extends CustomEventEmitter {
488
484
  }
489
485
  else if (packet.packet.oneofKind === "push") {
490
486
  const push = packet.packet.push;
491
- if (push.data.oneofKind === "discordAuthorized") {
492
- if (push.data.discordAuthorized.success) {
493
- this.emit("authorizedWithServer", push.data.discordAuthorized.token);
494
- }
495
- else {
496
- this.emit("failedToAuthorizeWithServer", {});
497
- }
498
- }
499
- else if (push.data.oneofKind === "songFinished") {
487
+ if (push.data.oneofKind === "songFinished") {
500
488
  this.emit("songFinished", push.data.songFinished);
501
489
  }
502
490
  else if (push.data.oneofKind === "realtimeScore") {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "moons-ta-client",
3
- "version": "1.1.0",
3
+ "version": "1.1.2",
4
4
  "type": "module",
5
5
  "main": "./dist/index.esm.js",
6
6
  "types": "./dist/index.d.ts",