@valoranchi/riot-client 0.3.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.
Files changed (283) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +644 -0
  3. package/dist/RiotClient.d.ts +36 -0
  4. package/dist/RiotClient.d.ts.map +1 -0
  5. package/dist/RiotClient.js +115 -0
  6. package/dist/RiotClient.js.map +1 -0
  7. package/dist/bin.d.ts +3 -0
  8. package/dist/bin.d.ts.map +1 -0
  9. package/dist/bin.js +4 -0
  10. package/dist/bin.js.map +1 -0
  11. package/dist/catalogue/Catalogue.d.ts +69 -0
  12. package/dist/catalogue/Catalogue.d.ts.map +1 -0
  13. package/dist/catalogue/Catalogue.js +206 -0
  14. package/dist/catalogue/Catalogue.js.map +1 -0
  15. package/dist/catalogue/CatalogueStore.d.ts +14 -0
  16. package/dist/catalogue/CatalogueStore.d.ts.map +1 -0
  17. package/dist/catalogue/CatalogueStore.js +38 -0
  18. package/dist/catalogue/CatalogueStore.js.map +1 -0
  19. package/dist/catalogue/ValorantApi.d.ts +26 -0
  20. package/dist/catalogue/ValorantApi.d.ts.map +1 -0
  21. package/dist/catalogue/ValorantApi.js +126 -0
  22. package/dist/catalogue/ValorantApi.js.map +1 -0
  23. package/dist/catalogue/types.d.ts +173 -0
  24. package/dist/catalogue/types.d.ts.map +1 -0
  25. package/dist/catalogue/types.js +2 -0
  26. package/dist/catalogue/types.js.map +1 -0
  27. package/dist/cli.d.ts +18 -0
  28. package/dist/cli.d.ts.map +1 -0
  29. package/dist/cli.js +912 -0
  30. package/dist/cli.js.map +1 -0
  31. package/dist/client/AccountService.d.ts +61 -0
  32. package/dist/client/AccountService.d.ts.map +1 -0
  33. package/dist/client/AccountService.js +319 -0
  34. package/dist/client/AccountService.js.map +1 -0
  35. package/dist/client/AccountValidator.d.ts +15 -0
  36. package/dist/client/AccountValidator.d.ts.map +1 -0
  37. package/dist/client/AccountValidator.js +49 -0
  38. package/dist/client/AccountValidator.js.map +1 -0
  39. package/dist/client/ChatValidator.d.ts +40 -0
  40. package/dist/client/ChatValidator.d.ts.map +1 -0
  41. package/dist/client/ChatValidator.js +154 -0
  42. package/dist/client/ChatValidator.js.map +1 -0
  43. package/dist/client/ClientContext.d.ts +16 -0
  44. package/dist/client/ClientContext.d.ts.map +1 -0
  45. package/dist/client/ClientContext.js +12 -0
  46. package/dist/client/ClientContext.js.map +1 -0
  47. package/dist/client/EventsService.d.ts +11 -0
  48. package/dist/client/EventsService.d.ts.map +1 -0
  49. package/dist/client/EventsService.js +54 -0
  50. package/dist/client/EventsService.js.map +1 -0
  51. package/dist/client/LiveMatchService.d.ts +18 -0
  52. package/dist/client/LiveMatchService.d.ts.map +1 -0
  53. package/dist/client/LiveMatchService.js +84 -0
  54. package/dist/client/LiveMatchService.js.map +1 -0
  55. package/dist/client/LoadoutValidator.d.ts +28 -0
  56. package/dist/client/LoadoutValidator.d.ts.map +1 -0
  57. package/dist/client/LoadoutValidator.js +330 -0
  58. package/dist/client/LoadoutValidator.js.map +1 -0
  59. package/dist/client/MatchService.d.ts +80 -0
  60. package/dist/client/MatchService.d.ts.map +1 -0
  61. package/dist/client/MatchService.js +199 -0
  62. package/dist/client/MatchService.js.map +1 -0
  63. package/dist/client/MatchValidator.d.ts +29 -0
  64. package/dist/client/MatchValidator.d.ts.map +1 -0
  65. package/dist/client/MatchValidator.js +81 -0
  66. package/dist/client/MatchValidator.js.map +1 -0
  67. package/dist/client/PartyService.d.ts +111 -0
  68. package/dist/client/PartyService.d.ts.map +1 -0
  69. package/dist/client/PartyService.js +460 -0
  70. package/dist/client/PartyService.js.map +1 -0
  71. package/dist/client/PartyValidator.d.ts +93 -0
  72. package/dist/client/PartyValidator.d.ts.map +1 -0
  73. package/dist/client/PartyValidator.js +390 -0
  74. package/dist/client/PartyValidator.js.map +1 -0
  75. package/dist/client/SessionManager.d.ts +28 -0
  76. package/dist/client/SessionManager.d.ts.map +1 -0
  77. package/dist/client/SessionManager.js +104 -0
  78. package/dist/client/SessionManager.js.map +1 -0
  79. package/dist/client/SocialService.d.ts +63 -0
  80. package/dist/client/SocialService.d.ts.map +1 -0
  81. package/dist/client/SocialService.js +185 -0
  82. package/dist/client/SocialService.js.map +1 -0
  83. package/dist/client/StoreService.d.ts +25 -0
  84. package/dist/client/StoreService.d.ts.map +1 -0
  85. package/dist/client/StoreService.js +88 -0
  86. package/dist/client/StoreService.js.map +1 -0
  87. package/dist/client/StoreValidator.d.ts +32 -0
  88. package/dist/client/StoreValidator.d.ts.map +1 -0
  89. package/dist/client/StoreValidator.js +111 -0
  90. package/dist/client/StoreValidator.js.map +1 -0
  91. package/dist/client/api.d.ts +323 -0
  92. package/dist/client/api.d.ts.map +1 -0
  93. package/dist/client/api.js +2 -0
  94. package/dist/client/api.js.map +1 -0
  95. package/dist/collection/AccountProgressionBuilder.d.ts +12 -0
  96. package/dist/collection/AccountProgressionBuilder.d.ts.map +1 -0
  97. package/dist/collection/AccountProgressionBuilder.js +132 -0
  98. package/dist/collection/AccountProgressionBuilder.js.map +1 -0
  99. package/dist/collection/CollectionBuilder.d.ts +19 -0
  100. package/dist/collection/CollectionBuilder.d.ts.map +1 -0
  101. package/dist/collection/CollectionBuilder.js +199 -0
  102. package/dist/collection/CollectionBuilder.js.map +1 -0
  103. package/dist/collection/ContentBuilder.d.ts +6 -0
  104. package/dist/collection/ContentBuilder.d.ts.map +1 -0
  105. package/dist/collection/ContentBuilder.js +36 -0
  106. package/dist/collection/ContentBuilder.js.map +1 -0
  107. package/dist/collection/CustomGameConfigsBuilder.d.ts +9 -0
  108. package/dist/collection/CustomGameConfigsBuilder.d.ts.map +1 -0
  109. package/dist/collection/CustomGameConfigsBuilder.js +49 -0
  110. package/dist/collection/CustomGameConfigsBuilder.js.map +1 -0
  111. package/dist/collection/FriendsBuilder.d.ts +12 -0
  112. package/dist/collection/FriendsBuilder.d.ts.map +1 -0
  113. package/dist/collection/FriendsBuilder.js +89 -0
  114. package/dist/collection/FriendsBuilder.js.map +1 -0
  115. package/dist/collection/GameSessionBuilder.d.ts +6 -0
  116. package/dist/collection/GameSessionBuilder.d.ts.map +1 -0
  117. package/dist/collection/GameSessionBuilder.js +11 -0
  118. package/dist/collection/GameSessionBuilder.js.map +1 -0
  119. package/dist/collection/LeaderboardBuilder.d.ts +9 -0
  120. package/dist/collection/LeaderboardBuilder.d.ts.map +1 -0
  121. package/dist/collection/LeaderboardBuilder.js +31 -0
  122. package/dist/collection/LeaderboardBuilder.js.map +1 -0
  123. package/dist/collection/LiveMatchBuilder.d.ts +22 -0
  124. package/dist/collection/LiveMatchBuilder.d.ts.map +1 -0
  125. package/dist/collection/LiveMatchBuilder.js +154 -0
  126. package/dist/collection/LiveMatchBuilder.js.map +1 -0
  127. package/dist/collection/LoadoutBuilder.d.ts +12 -0
  128. package/dist/collection/LoadoutBuilder.d.ts.map +1 -0
  129. package/dist/collection/LoadoutBuilder.js +126 -0
  130. package/dist/collection/LoadoutBuilder.js.map +1 -0
  131. package/dist/collection/LoadoutWriter.d.ts +32 -0
  132. package/dist/collection/LoadoutWriter.d.ts.map +1 -0
  133. package/dist/collection/LoadoutWriter.js +48 -0
  134. package/dist/collection/LoadoutWriter.js.map +1 -0
  135. package/dist/collection/MatchBuilder.d.ts +22 -0
  136. package/dist/collection/MatchBuilder.d.ts.map +1 -0
  137. package/dist/collection/MatchBuilder.js +209 -0
  138. package/dist/collection/MatchBuilder.js.map +1 -0
  139. package/dist/collection/MessagesBuilder.d.ts +11 -0
  140. package/dist/collection/MessagesBuilder.d.ts.map +1 -0
  141. package/dist/collection/MessagesBuilder.js +89 -0
  142. package/dist/collection/MessagesBuilder.js.map +1 -0
  143. package/dist/collection/MmrBuilder.d.ts +16 -0
  144. package/dist/collection/MmrBuilder.d.ts.map +1 -0
  145. package/dist/collection/MmrBuilder.js +134 -0
  146. package/dist/collection/MmrBuilder.js.map +1 -0
  147. package/dist/collection/PartyBuilder.d.ts +14 -0
  148. package/dist/collection/PartyBuilder.d.ts.map +1 -0
  149. package/dist/collection/PartyBuilder.js +37 -0
  150. package/dist/collection/PartyBuilder.js.map +1 -0
  151. package/dist/collection/PlayerSettingsBuilder.d.ts +6 -0
  152. package/dist/collection/PlayerSettingsBuilder.d.ts.map +1 -0
  153. package/dist/collection/PlayerSettingsBuilder.js +41 -0
  154. package/dist/collection/PlayerSettingsBuilder.js.map +1 -0
  155. package/dist/collection/QueueConfigBuilder.d.ts +6 -0
  156. package/dist/collection/QueueConfigBuilder.d.ts.map +1 -0
  157. package/dist/collection/QueueConfigBuilder.js +14 -0
  158. package/dist/collection/QueueConfigBuilder.js.map +1 -0
  159. package/dist/collection/RankResolver.d.ts +18 -0
  160. package/dist/collection/RankResolver.d.ts.map +1 -0
  161. package/dist/collection/RankResolver.js +91 -0
  162. package/dist/collection/RankResolver.js.map +1 -0
  163. package/dist/collection/StoreBuilder.d.ts +20 -0
  164. package/dist/collection/StoreBuilder.d.ts.map +1 -0
  165. package/dist/collection/StoreBuilder.js +153 -0
  166. package/dist/collection/StoreBuilder.js.map +1 -0
  167. package/dist/collection/StoreItemResolver.d.ts +14 -0
  168. package/dist/collection/StoreItemResolver.d.ts.map +1 -0
  169. package/dist/collection/StoreItemResolver.js +138 -0
  170. package/dist/collection/StoreItemResolver.js.map +1 -0
  171. package/dist/collection/StoreOffersBuilder.d.ts +12 -0
  172. package/dist/collection/StoreOffersBuilder.d.ts.map +1 -0
  173. package/dist/collection/StoreOffersBuilder.js +46 -0
  174. package/dist/collection/StoreOffersBuilder.js.map +1 -0
  175. package/dist/errors.d.ts +27 -0
  176. package/dist/errors.d.ts.map +1 -0
  177. package/dist/errors.js +52 -0
  178. package/dist/errors.js.map +1 -0
  179. package/dist/events/RiotEvents.d.ts +78 -0
  180. package/dist/events/RiotEvents.d.ts.map +1 -0
  181. package/dist/events/RiotEvents.js +284 -0
  182. package/dist/events/RiotEvents.js.map +1 -0
  183. package/dist/events/TypedEmitter.d.ts +10 -0
  184. package/dist/events/TypedEmitter.d.ts.map +1 -0
  185. package/dist/events/TypedEmitter.js +30 -0
  186. package/dist/events/TypedEmitter.js.map +1 -0
  187. package/dist/index.d.ts +11 -0
  188. package/dist/index.d.ts.map +1 -0
  189. package/dist/index.js +9 -0
  190. package/dist/index.js.map +1 -0
  191. package/dist/local/ChatApi.d.ts +21 -0
  192. package/dist/local/ChatApi.d.ts.map +1 -0
  193. package/dist/local/ChatApi.js +89 -0
  194. package/dist/local/ChatApi.js.map +1 -0
  195. package/dist/local/Lockfile.d.ts +10 -0
  196. package/dist/local/Lockfile.d.ts.map +1 -0
  197. package/dist/local/Lockfile.js +37 -0
  198. package/dist/local/Lockfile.js.map +1 -0
  199. package/dist/local/Presence.d.ts +4 -0
  200. package/dist/local/Presence.d.ts.map +1 -0
  201. package/dist/local/Presence.js +118 -0
  202. package/dist/local/Presence.js.map +1 -0
  203. package/dist/local/RegionResolver.d.ts +12 -0
  204. package/dist/local/RegionResolver.d.ts.map +1 -0
  205. package/dist/local/RegionResolver.js +51 -0
  206. package/dist/local/RegionResolver.js.map +1 -0
  207. package/dist/local/RiotClientLocalApi.d.ts +48 -0
  208. package/dist/local/RiotClientLocalApi.d.ts.map +1 -0
  209. package/dist/local/RiotClientLocalApi.js +218 -0
  210. package/dist/local/RiotClientLocalApi.js.map +1 -0
  211. package/dist/local/RiotSocket.d.ts +56 -0
  212. package/dist/local/RiotSocket.d.ts.map +1 -0
  213. package/dist/local/RiotSocket.js +196 -0
  214. package/dist/local/RiotSocket.js.map +1 -0
  215. package/dist/local/chatTypes.d.ts +115 -0
  216. package/dist/local/chatTypes.d.ts.map +1 -0
  217. package/dist/local/chatTypes.js +2 -0
  218. package/dist/local/chatTypes.js.map +1 -0
  219. package/dist/model/index.d.ts +756 -0
  220. package/dist/model/index.d.ts.map +1 -0
  221. package/dist/model/index.js +2 -0
  222. package/dist/model/index.js.map +1 -0
  223. package/dist/raw.d.ts +25 -0
  224. package/dist/raw.d.ts.map +1 -0
  225. package/dist/raw.js +24 -0
  226. package/dist/raw.js.map +1 -0
  227. package/dist/riot/HttpGateway.d.ts +14 -0
  228. package/dist/riot/HttpGateway.d.ts.map +1 -0
  229. package/dist/riot/HttpGateway.js +87 -0
  230. package/dist/riot/HttpGateway.js.map +1 -0
  231. package/dist/riot/ResponseCache.d.ts +15 -0
  232. package/dist/riot/ResponseCache.d.ts.map +1 -0
  233. package/dist/riot/ResponseCache.js +75 -0
  234. package/dist/riot/ResponseCache.js.map +1 -0
  235. package/dist/riot/RiotApi.d.ts +87 -0
  236. package/dist/riot/RiotApi.d.ts.map +1 -0
  237. package/dist/riot/RiotApi.js +305 -0
  238. package/dist/riot/RiotApi.js.map +1 -0
  239. package/dist/riot/Session.d.ts +24 -0
  240. package/dist/riot/Session.d.ts.map +1 -0
  241. package/dist/riot/Session.js +41 -0
  242. package/dist/riot/Session.js.map +1 -0
  243. package/dist/riot/types.d.ts +676 -0
  244. package/dist/riot/types.d.ts.map +1 -0
  245. package/dist/riot/types.js +17 -0
  246. package/dist/riot/types.js.map +1 -0
  247. package/package.json +68 -0
  248. package/schema/AccountXp.json +86 -0
  249. package/schema/BlockedPlayer.json +22 -0
  250. package/schema/ClientInfo.json +41 -0
  251. package/schema/Content.json +83 -0
  252. package/schema/ContractProgress.json +69 -0
  253. package/schema/Conversation.json +49 -0
  254. package/schema/CustomGameConfigs.json +64 -0
  255. package/schema/CustomGameSettings.json +46 -0
  256. package/schema/Favourite.json +22 -0
  257. package/schema/Friend.json +215 -0
  258. package/schema/FriendRequest.json +26 -0
  259. package/schema/GameSession.json +25 -0
  260. package/schema/Leaderboard.json +103 -0
  261. package/schema/LeaderboardEntry.json +75 -0
  262. package/schema/LiveMatch.json +354 -0
  263. package/schema/Loadout.json +241 -0
  264. package/schema/Match.json +494 -0
  265. package/schema/MatchSummary.json +38 -0
  266. package/schema/Message.json +48 -0
  267. package/schema/Mission.json +31 -0
  268. package/schema/Mmr.json +172 -0
  269. package/schema/Offer.json +163 -0
  270. package/schema/Order.json +177 -0
  271. package/schema/OwnedItems.json +308 -0
  272. package/schema/Participant.json +50 -0
  273. package/schema/Party.json +185 -0
  274. package/schema/PartyInvite.json +45 -0
  275. package/schema/PartyRequest.json +42 -0
  276. package/schema/Penalty.json +22 -0
  277. package/schema/Player.json +31 -0
  278. package/schema/PlayerSettings.json +76 -0
  279. package/schema/Premier.json +19 -0
  280. package/schema/QueueConfig.json +34 -0
  281. package/schema/RankChange.json +89 -0
  282. package/schema/Store.json +455 -0
  283. package/schema/Wallet.json +22 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,61 @@
1
+ import type { AccountXp, ClientInfo, ContractProgress, Favourite, GameSession, Loadout, Mission, OwnedItems, Penalty, Player, PlayerSettings, Wallet } from "../model/index.js";
2
+ import { type RiotLoadoutResponse } from "../riot/types.js";
3
+ import type { AccountApi } from "./api.js";
4
+ import type { ClientContext } from "./ClientContext.js";
5
+ import { type LoadoutChange } from "./LoadoutValidator.js";
6
+ export declare class AccountService implements AccountApi {
7
+ private readonly context;
8
+ constructor(context: ClientContext);
9
+ whoami(): Promise<Player>;
10
+ ownedItems(options?: {
11
+ language?: string;
12
+ }): Promise<OwnedItems>;
13
+ loadout(): Promise<Loadout>;
14
+ validateEquip(change: LoadoutChange): Promise<RiotLoadoutResponse>;
15
+ equip(change: LoadoutChange): Promise<Loadout>;
16
+ validateEquipCollection(skinUuids: string[]): Promise<RiotLoadoutResponse>;
17
+ equipCollection(skinUuids: string[]): Promise<Loadout>;
18
+ private resolveCollectionGunChanges;
19
+ private hasLoadoutChanges;
20
+ wallet(): Promise<Wallet>;
21
+ xp(): Promise<AccountXp>;
22
+ contracts(): Promise<ContractProgress[]>;
23
+ missions(): Promise<Mission[]>;
24
+ validateActivateContract(uuid: string): Promise<{
25
+ contractId: string;
26
+ }>;
27
+ activateContract(uuid: string): Promise<ContractProgress[]>;
28
+ penalties(): Promise<Penalty[]>;
29
+ favourites(): Promise<Favourite[]>;
30
+ validateAddFavourite(skin: string): Promise<{
31
+ ItemID: string;
32
+ }>;
33
+ addFavourite(skin: string): Promise<Favourite[]>;
34
+ validateRemoveFavourite(skin: string): Promise<{
35
+ itemIdWithoutDashes: string;
36
+ }>;
37
+ removeFavourite(skin: string): Promise<Favourite[]>;
38
+ validateSetActRankBadgeHidden(hidden: boolean): Promise<{
39
+ HideActRankBadge: boolean;
40
+ }>;
41
+ setActRankBadgeHidden(hidden: boolean): Promise<boolean>;
42
+ validateSetLeaderboardAnonymized(anonymized: boolean): Promise<{
43
+ seasonId: string;
44
+ Anonymize: boolean;
45
+ }>;
46
+ setLeaderboardAnonymized(anonymized: boolean): Promise<boolean>;
47
+ session(): Promise<GameSession>;
48
+ config(): Promise<Record<string, unknown>>;
49
+ settings(): Promise<PlayerSettings>;
50
+ validateSaveSettings(data: unknown, options?: {
51
+ confirm?: boolean;
52
+ }): Promise<{
53
+ type: string;
54
+ data: Record<string, unknown>;
55
+ }>;
56
+ saveSettings(data: unknown, options?: {
57
+ confirm?: boolean;
58
+ }): Promise<PlayerSettings>;
59
+ client(): Promise<ClientInfo>;
60
+ }
61
+ //# sourceMappingURL=AccountService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AccountService.d.ts","sourceRoot":"","sources":["../../src/client/AccountService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,319 @@
1
+ import { AccountProgressionBuilder } from "../collection/AccountProgressionBuilder.js";
2
+ import { CollectionBuilder } from "../collection/CollectionBuilder.js";
3
+ import { GameSessionBuilder } from "../collection/GameSessionBuilder.js";
4
+ import { LoadoutBuilder } from "../collection/LoadoutBuilder.js";
5
+ import { LoadoutWriter } from "../collection/LoadoutWriter.js";
6
+ import { PlayerSettingsBuilder } from "../collection/PlayerSettingsBuilder.js";
7
+ import { ValidationError } from "../errors.js";
8
+ import { CURRENCY_UUIDS } from "../riot/types.js";
9
+ import { AccountValidator } from "./AccountValidator.js";
10
+ import { LoadoutValidator } from "./LoadoutValidator.js";
11
+ export class AccountService {
12
+ context;
13
+ constructor(context) {
14
+ this.context = context;
15
+ }
16
+ async whoami() {
17
+ const session = await this.context.sessions.session();
18
+ return this.context.player(session);
19
+ }
20
+ async ownedItems(options) {
21
+ const lang = options?.language ?? this.context.language;
22
+ const session = await this.context.sessions.session();
23
+ const api = this.context.api(session);
24
+ const [player, entitlements, catalogue] = await Promise.all([
25
+ this.context.player(session),
26
+ api.entitlements(),
27
+ this.context.catalogue(lang),
28
+ ]);
29
+ return new CollectionBuilder(player, entitlements, catalogue, lang).build();
30
+ }
31
+ async loadout() {
32
+ const session = await this.context.sessions.session();
33
+ const api = this.context.api(session);
34
+ const [player, rawLoadout, catalogue] = await Promise.all([
35
+ this.context.player(session),
36
+ api.loadout(),
37
+ this.context.catalogue(),
38
+ ]);
39
+ return new LoadoutBuilder(player, rawLoadout, catalogue).build();
40
+ }
41
+ async validateEquip(change) {
42
+ const session = await this.context.sessions.session();
43
+ const api = this.context.api(session);
44
+ if (!this.hasLoadoutChanges(change)) {
45
+ return api.loadout();
46
+ }
47
+ const [currentRaw, ownedItems, catalogue, rawEntitlements] = await Promise.all([
48
+ api.loadout(),
49
+ this.ownedItems(),
50
+ this.context.catalogue(),
51
+ api.entitlements(),
52
+ ]);
53
+ const validatedRaw = LoadoutValidator.validate(currentRaw, ownedItems, catalogue, rawEntitlements, change);
54
+ return LoadoutWriter.buildPutBody(validatedRaw);
55
+ }
56
+ async equip(change) {
57
+ if (!this.hasLoadoutChanges(change)) {
58
+ return this.loadout();
59
+ }
60
+ const session = await this.context.sessions.session();
61
+ const api = this.context.api(session);
62
+ const putBody = await this.validateEquip(change);
63
+ await api.putLoadout(putBody);
64
+ api.invalidateLoadout();
65
+ return this.loadout();
66
+ }
67
+ async validateEquipCollection(skinUuids) {
68
+ if (!skinUuids || skinUuids.length === 0) {
69
+ return this.validateEquip({});
70
+ }
71
+ const gunChanges = await this.resolveCollectionGunChanges(skinUuids);
72
+ return this.validateEquip({ guns: gunChanges });
73
+ }
74
+ async equipCollection(skinUuids) {
75
+ if (!skinUuids || skinUuids.length === 0) {
76
+ return this.loadout();
77
+ }
78
+ const gunChanges = await this.resolveCollectionGunChanges(skinUuids);
79
+ return this.equip({ guns: gunChanges });
80
+ }
81
+ async resolveCollectionGunChanges(skinUuids) {
82
+ const catalogue = await this.context.catalogue();
83
+ const seenWeapons = new Set();
84
+ const gunChanges = [];
85
+ for (const skinUuid of skinUuids) {
86
+ const skin = catalogue.getSkin(skinUuid);
87
+ if (!skin) {
88
+ throw new ValidationError("unknown-item", `Unknown skin: ${skinUuid}`, { skin: skinUuid });
89
+ }
90
+ const weapon = catalogue.weapons.find((w) => w.skins.some((s) => s.uuid.toLowerCase() === skin.uuid.toLowerCase()));
91
+ if (!weapon) {
92
+ throw new ValidationError("unknown-weapon", `No weapon found for skin: ${skin.displayName}`);
93
+ }
94
+ const weaponKey = weapon.uuid.toLowerCase();
95
+ if (seenWeapons.has(weaponKey)) {
96
+ throw new ValidationError("duplicate-weapon", `Multiple skins specified for weapon ${weapon.displayName}`, { weapon: weapon.uuid, skin: skin.uuid });
97
+ }
98
+ seenWeapons.add(weaponKey);
99
+ gunChanges.push({
100
+ weapon: weapon.uuid,
101
+ skin: skin.uuid,
102
+ });
103
+ }
104
+ return gunChanges;
105
+ }
106
+ hasLoadoutChanges(change) {
107
+ if (!change)
108
+ return false;
109
+ return Boolean(change.guns?.length ||
110
+ change.sprays?.length ||
111
+ change.flex !== undefined ||
112
+ change.card ||
113
+ change.title ||
114
+ change.levelBorder ||
115
+ change.incognito !== undefined ||
116
+ change.hideAccountLevel !== undefined);
117
+ }
118
+ async wallet() {
119
+ const session = await this.context.sessions.session();
120
+ const rawWallet = await this.context.api(session).wallet();
121
+ const balances = rawWallet.Balances ?? {};
122
+ return {
123
+ valorantPoints: balances[CURRENCY_UUIDS.valorantPoints] ?? 0,
124
+ radianite: balances[CURRENCY_UUIDS.radianite] ?? 0,
125
+ kingdomCredits: balances[CURRENCY_UUIDS.kingdomCredits] ?? 0,
126
+ };
127
+ }
128
+ async xp() {
129
+ const session = await this.context.sessions.session();
130
+ const raw = await this.context.api(session).accountXp();
131
+ return AccountProgressionBuilder.buildAccountXp(raw);
132
+ }
133
+ async contracts() {
134
+ const session = await this.context.sessions.session();
135
+ const [raw, catalogue] = await Promise.all([
136
+ this.context.api(session).contracts(),
137
+ this.context.catalogue(),
138
+ ]);
139
+ return AccountProgressionBuilder.buildContracts(raw, catalogue);
140
+ }
141
+ async missions() {
142
+ const session = await this.context.sessions.session();
143
+ const [raw, catalogue] = await Promise.all([
144
+ this.context.api(session).contracts(),
145
+ this.context.catalogue(),
146
+ ]);
147
+ return AccountProgressionBuilder.buildMissions(raw, catalogue);
148
+ }
149
+ async validateActivateContract(uuid) {
150
+ const session = await this.context.sessions.session();
151
+ const api = this.context.api(session);
152
+ const [rawContracts, owned, catalogue] = await Promise.all([
153
+ api.contracts(),
154
+ this.ownedItems(),
155
+ this.context.catalogue(),
156
+ ]);
157
+ return AccountValidator.validateActivateContract(rawContracts, owned, catalogue, uuid);
158
+ }
159
+ async activateContract(uuid) {
160
+ const validated = await this.validateActivateContract(uuid);
161
+ const session = await this.context.sessions.session();
162
+ await this.context.api(session).activateContract(validated.contractId);
163
+ return this.contracts();
164
+ }
165
+ async penalties() {
166
+ const session = await this.context.sessions.session();
167
+ const raw = await this.context.api(session).penalties();
168
+ return AccountProgressionBuilder.buildPenalties(raw);
169
+ }
170
+ async favourites() {
171
+ const session = await this.context.sessions.session();
172
+ const [raw, catalogue] = await Promise.all([
173
+ this.context.api(session).favorites(),
174
+ this.context.catalogue(),
175
+ ]);
176
+ return AccountProgressionBuilder.buildFavourites(raw, catalogue);
177
+ }
178
+ async validateAddFavourite(skin) {
179
+ const session = await this.context.sessions.session();
180
+ const api = this.context.api(session);
181
+ const [rawFavs, owned, catalogue] = await Promise.all([
182
+ api.favorites(),
183
+ this.ownedItems(),
184
+ this.context.catalogue(),
185
+ ]);
186
+ return AccountValidator.validateAddFavourite(rawFavs, owned, catalogue, skin);
187
+ }
188
+ async addFavourite(skin) {
189
+ const validated = await this.validateAddFavourite(skin);
190
+ const session = await this.context.sessions.session();
191
+ await this.context.api(session).addFavorite(validated.ItemID);
192
+ return this.favourites();
193
+ }
194
+ async validateRemoveFavourite(skin) {
195
+ const session = await this.context.sessions.session();
196
+ const [rawFavs, catalogue] = await Promise.all([
197
+ this.context.api(session).favorites(),
198
+ this.context.catalogue(),
199
+ ]);
200
+ return AccountValidator.validateRemoveFavourite(rawFavs, catalogue, skin);
201
+ }
202
+ async removeFavourite(skin) {
203
+ const validated = await this.validateRemoveFavourite(skin);
204
+ const session = await this.context.sessions.session();
205
+ await this.context.api(session).removeFavorite(validated.itemIdWithoutDashes);
206
+ return this.favourites();
207
+ }
208
+ async validateSetActRankBadgeHidden(hidden) {
209
+ if (typeof hidden !== "boolean") {
210
+ throw new ValidationError("invalid-argument", "Expected boolean for badge privacy");
211
+ }
212
+ return { HideActRankBadge: hidden };
213
+ }
214
+ async setActRankBadgeHidden(hidden) {
215
+ const validated = await this.validateSetActRankBadgeHidden(hidden);
216
+ const session = await this.context.sessions.session();
217
+ await this.context.api(session).setActRankBadgeHidden(validated.HideActRankBadge);
218
+ return hidden;
219
+ }
220
+ async validateSetLeaderboardAnonymized(anonymized) {
221
+ if (typeof anonymized !== "boolean") {
222
+ throw new ValidationError("invalid-argument", "Expected boolean for leaderboard anonymize");
223
+ }
224
+ const session = await this.context.sessions.session();
225
+ const catalogue = await this.context.catalogue();
226
+ let seasonId = catalogue.currentAct()?.uuid;
227
+ if (!seasonId) {
228
+ const content = await this.context.api(session).content();
229
+ const activeAct = content.Seasons.find((s) => s.Type.toLowerCase() === "act" && s.IsActive);
230
+ seasonId = activeAct?.ID ?? "";
231
+ }
232
+ return { seasonId, Anonymize: anonymized };
233
+ }
234
+ async setLeaderboardAnonymized(anonymized) {
235
+ const validated = await this.validateSetLeaderboardAnonymized(anonymized);
236
+ const session = await this.context.sessions.session();
237
+ await this.context.api(session).setLeaderboardAnonymized(validated.seasonId, validated.Anonymize);
238
+ return anonymized;
239
+ }
240
+ async session() {
241
+ const session = await this.context.sessions.session();
242
+ const raw = await this.context.api(session).gameSession();
243
+ return GameSessionBuilder.build(raw);
244
+ }
245
+ async config() {
246
+ const session = await this.context.sessions.session();
247
+ const raw = await this.context.api(session).clientConfig();
248
+ return (raw.Collapsed ?? raw);
249
+ }
250
+ async settings() {
251
+ const localApi = this.context.sessions.localApi();
252
+ const gameAuth = await localApi.gameAuthorization();
253
+ if (!gameAuth) {
254
+ throw new ValidationError("game-not-running", "Valorant must be running to access player settings");
255
+ }
256
+ const res = await localApi.get("/player-preferences/v1/data-json/Ares.PlayerSettings", { Authorization: gameAuth });
257
+ return PlayerSettingsBuilder.build(res?.data ?? {});
258
+ }
259
+ async validateSaveSettings(data, options) {
260
+ if (options?.confirm !== true) {
261
+ throw new ValidationError("confirm-required", "Settings save requires confirmation");
262
+ }
263
+ const localApi = this.context.sessions.localApi();
264
+ const gameAuth = await localApi.gameAuthorization();
265
+ if (!gameAuth) {
266
+ throw new ValidationError("game-not-running", "Valorant must be running to save player settings");
267
+ }
268
+ const payload = typeof data === "object" && data !== null && "raw" in data && typeof data.raw === "object"
269
+ ? (data.raw ?? {})
270
+ : data;
271
+ return { type: "Ares.PlayerSettings", data: payload };
272
+ }
273
+ async saveSettings(data, options) {
274
+ const validated = await this.validateSaveSettings(data, options);
275
+ const localApi = this.context.sessions.localApi();
276
+ const gameAuth = await localApi.gameAuthorization();
277
+ await localApi.put("/player-preferences/v1/data-json/Ares.PlayerSettings", validated, {
278
+ Authorization: gameAuth,
279
+ });
280
+ return this.settings();
281
+ }
282
+ async client() {
283
+ const localApi = this.context.sessions.localApi();
284
+ const [regionLocale, activeAlias, externalSessions] = await Promise.all([
285
+ localApi.get("/riotclient/region-locale").catch(() => null),
286
+ localApi
287
+ .get("/player-account/aliases/v1/active")
288
+ .catch(() => null),
289
+ localApi
290
+ .get("/product-session/v1/external-sessions")
291
+ .catch(() => null),
292
+ ]);
293
+ const valorant = Object.values(externalSessions ?? {}).find((entry) => entry.productId?.toLowerCase() === "valorant");
294
+ const valorantRunning = Boolean(valorant);
295
+ const valorantVersion = valorant?.version ??
296
+ valorant?.launchConfiguration?.arguments
297
+ ?.find((a) => a.startsWith("-client-version="))
298
+ ?.split("=")[1] ??
299
+ null;
300
+ const patchline = valorant?.patchlineId ??
301
+ valorant?.launchConfiguration?.patchline ??
302
+ valorant?.launchConfiguration?.arguments
303
+ ?.find((a) => a.startsWith("-patchline="))
304
+ ?.split("=")[1] ??
305
+ null;
306
+ return {
307
+ locale: regionLocale?.locale ?? "en_US",
308
+ region: regionLocale?.region ?? "",
309
+ riotId: {
310
+ gameName: activeAlias?.game_name ?? "",
311
+ tagLine: activeAlias?.tag_line ?? "",
312
+ },
313
+ valorantRunning,
314
+ valorantVersion,
315
+ patchline,
316
+ };
317
+ }
318
+ }
319
+ //# sourceMappingURL=AccountService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AccountService.js","sourceRoot":"","sources":["../../src/client/AccountService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import type { Catalogue } from "../catalogue/Catalogue.js";
2
+ import type { OwnedItems } from "../model/index.js";
3
+ import type { RiotContractsResponse, RiotFavoritesResponse } from "../riot/types.js";
4
+ export declare class AccountValidator {
5
+ static validateActivateContract(rawContracts: RiotContractsResponse, ownedItems: OwnedItems, catalogue: Catalogue, contractInput: string): {
6
+ contractId: string;
7
+ };
8
+ static validateAddFavourite(rawFavorites: RiotFavoritesResponse, ownedItems: OwnedItems, catalogue: Catalogue, skinInput: string): {
9
+ ItemID: string;
10
+ };
11
+ static validateRemoveFavourite(rawFavorites: RiotFavoritesResponse, catalogue: Catalogue, skinInput: string): {
12
+ itemIdWithoutDashes: string;
13
+ };
14
+ }
15
+ //# sourceMappingURL=AccountValidator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AccountValidator.d.ts","sourceRoot":"","sources":["../../src/client/AccountValidator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAE3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAErF,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,wBAAwB,CAC7B,YAAY,EAAE,qBAAqB,EACnC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,MAAM,GACpB;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE;IA2BzB,MAAM,CAAC,oBAAoB,CACzB,YAAY,EAAE,qBAAqB,EACnC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,MAAM,GAChB;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE;IA2BrB,MAAM,CAAC,uBAAuB,CAC5B,YAAY,EAAE,qBAAqB,EACnC,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,MAAM,GAChB;QAAE,mBAAmB,EAAE,MAAM,CAAA;KAAE;CAiBnC"}
@@ -0,0 +1,49 @@
1
+ import { ValidationError } from "../errors.js";
2
+ export class AccountValidator {
3
+ static validateActivateContract(rawContracts, ownedItems, catalogue, contractInput) {
4
+ const def = catalogue.getContract(contractInput) ??
5
+ catalogue.contracts.find((c) => c.displayName.toLowerCase() === contractInput.toLowerCase());
6
+ if (!def) {
7
+ throw new ValidationError("unknown-contract", `Unknown contract: ${contractInput}`);
8
+ }
9
+ if (def.content?.relationType !== "Agent") {
10
+ throw new ValidationError("contract-not-agent", "Contract is not an agent contract");
11
+ }
12
+ const agentUuid = def.content.relationUuid.toLowerCase();
13
+ const isAgentOwned = ownedItems.agents.some((a) => a.uuid.toLowerCase() === agentUuid);
14
+ if (isAgentOwned) {
15
+ throw new ValidationError("agent-owned", "Agent is already owned");
16
+ }
17
+ if (rawContracts.ActiveSpecialContract?.toLowerCase() === def.uuid.toLowerCase()) {
18
+ throw new ValidationError("contract-active", "Contract is already active");
19
+ }
20
+ return { contractId: def.uuid };
21
+ }
22
+ static validateAddFavourite(rawFavorites, ownedItems, catalogue, skinInput) {
23
+ const skin = catalogue.getSkin(skinInput) ??
24
+ catalogue.weapons.flatMap((w) => w.skins).find((s) => s.displayName.toLowerCase() === skinInput.toLowerCase());
25
+ if (!skin) {
26
+ throw new ValidationError("unknown-item", `Unknown skin: ${skinInput}`);
27
+ }
28
+ const isOwned = ownedItems.weapons.flatMap((w) => w.skins).some((s) => s.uuid.toLowerCase() === skin.uuid.toLowerCase());
29
+ if (!isOwned) {
30
+ throw new ValidationError("not-owned", "Skin is not owned");
31
+ }
32
+ const isFav = Object.values(rawFavorites.FavoritedContent ?? {}).some((f) => f.ItemID.toLowerCase() === skin.uuid.toLowerCase());
33
+ if (isFav) {
34
+ throw new ValidationError("already-favourite", "Skin is already in favourites");
35
+ }
36
+ return { ItemID: skin.uuid };
37
+ }
38
+ static validateRemoveFavourite(rawFavorites, catalogue, skinInput) {
39
+ const skin = catalogue.getSkin(skinInput) ??
40
+ catalogue.weapons.flatMap((w) => w.skins).find((s) => s.displayName.toLowerCase() === skinInput.toLowerCase());
41
+ const skinUuid = skin ? skin.uuid : skinInput;
42
+ const isFav = Object.values(rawFavorites.FavoritedContent ?? {}).some((f) => f.ItemID.toLowerCase() === skinUuid.toLowerCase());
43
+ if (!isFav) {
44
+ throw new ValidationError("not-favourite", "Skin is not in favourites");
45
+ }
46
+ return { itemIdWithoutDashes: skinUuid.replace(/-/g, "") };
47
+ }
48
+ }
49
+ //# sourceMappingURL=AccountValidator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AccountValidator.js","sourceRoot":"","sources":["../../src/client/AccountValidator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ import type { RawChatFriend, RawFriendRequest } from "../local/chatTypes.js";
2
+ import type { BlockedPlayer, Conversation, Friend, FriendRequest } from "../model/index.js";
3
+ export declare class ChatValidator {
4
+ static validateMessageText(text: string): string;
5
+ static validateMessageTarget(to: {
6
+ puuid: string;
7
+ } | {
8
+ conversationId: string;
9
+ } | {
10
+ riotId: string;
11
+ }, friends: RawChatFriend[], conversations: Conversation[]): {
12
+ cid: string;
13
+ type: "chat" | "groupchat";
14
+ };
15
+ static parseRiotId(riotId: string): {
16
+ gameName: string;
17
+ gameTag: string;
18
+ };
19
+ static validateFriendRequest(riotId: string, self: {
20
+ gameName?: string;
21
+ tagLine?: string;
22
+ }, friends: Friend[], requests: FriendRequest[]): {
23
+ gameName: string;
24
+ gameTag: string;
25
+ };
26
+ static validateAcceptFriendRequest(puuid: string, requests: RawFriendRequest[]): {
27
+ gameName: string;
28
+ gameTag: string;
29
+ };
30
+ static validateDeclineFriendRequest(puuid: string, requests: RawFriendRequest[]): void;
31
+ static validateCancelFriendRequest(puuid: string, requests: RawFriendRequest[]): void;
32
+ static validateRemoveFriend(puuid: string, friends: Friend[]): void;
33
+ static validateBlockPlayer(target: string, self: {
34
+ puuid?: string;
35
+ gameName?: string;
36
+ tagLine?: string;
37
+ }, blocked: BlockedPlayer[], friends: Friend[], requests: FriendRequest[]): string;
38
+ static validateUnblockPlayer(puuid: string, blocked: BlockedPlayer[]): void;
39
+ }
40
+ //# sourceMappingURL=ChatValidator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChatValidator.d.ts","sourceRoot":"","sources":["../../src/client/ChatValidator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAE5F,qBAAa,aAAa;IACxB,MAAM,CAAC,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAWhD,MAAM,CAAC,qBAAqB,CAC1B,EAAE,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG;QAAE,cAAc,EAAE,MAAM,CAAA;KAAE,GAAG;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,EACvE,OAAO,EAAE,aAAa,EAAE,EACxB,aAAa,EAAE,YAAY,EAAE,GAC5B;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAAA;KAAE;IAkD9C,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;IAazE,MAAM,CAAC,qBAAqB,CAC1B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,EAC7C,OAAO,EAAE,MAAM,EAAE,EACjB,QAAQ,EAAE,aAAa,EAAE,GACxB;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;IAmCxC,MAAM,CAAC,2BAA2B,CAChC,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,gBAAgB,EAAE,GAC3B;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;IAUxC,MAAM,CAAC,4BAA4B,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,gBAAgB,EAAE,GAAG,IAAI;IAStF,MAAM,CAAC,2BAA2B,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,gBAAgB,EAAE,GAAG,IAAI;IASrF,MAAM,CAAC,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI;IAOnE,MAAM,CAAC,mBAAmB,CACxB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,EAC7D,OAAO,EAAE,aAAa,EAAE,EACxB,OAAO,EAAE,MAAM,EAAE,EACjB,QAAQ,EAAE,aAAa,EAAE,GACxB,MAAM;IA2CT,MAAM,CAAC,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,IAAI;CAM5E"}