node-leek 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (188) hide show
  1. package/README.md +109 -0
  2. package/dist/app.d.ts +1 -0
  3. package/dist/app.d.ts.map +1 -0
  4. package/dist/app.js +1 -0
  5. package/dist/autofighter.d.ts +2 -0
  6. package/dist/autofighter.d.ts.map +1 -0
  7. package/dist/autofighter.js +27 -0
  8. package/dist/boss_farming.d.ts +2 -0
  9. package/dist/boss_farming.d.ts.map +1 -0
  10. package/dist/boss_farming.js +33 -0
  11. package/dist/codegen/api/apis.d.ts +12 -0
  12. package/dist/codegen/api/apis.d.ts.map +1 -0
  13. package/dist/codegen/api/apis.js +33 -0
  14. package/dist/codegen/api/defaultApi.d.ts +239 -0
  15. package/dist/codegen/api/defaultApi.d.ts.map +1 -0
  16. package/dist/codegen/api/defaultApi.js +1071 -0
  17. package/dist/codegen/api.d.ts +3 -0
  18. package/dist/codegen/api.d.ts.map +1 -0
  19. package/dist/codegen/api.js +19 -0
  20. package/dist/codegen/model/aicode.d.ts +34 -0
  21. package/dist/codegen/model/aicode.d.ts.map +1 -0
  22. package/dist/codegen/model/aicode.js +47 -0
  23. package/dist/codegen/model/buy200Response.d.ts +27 -0
  24. package/dist/codegen/model/buy200Response.d.ts.map +1 -0
  25. package/dist/codegen/model/buy200Response.js +35 -0
  26. package/dist/codegen/model/buyRequest.d.ts +27 -0
  27. package/dist/codegen/model/buyRequest.d.ts.map +1 -0
  28. package/dist/codegen/model/buyRequest.js +35 -0
  29. package/dist/codegen/model/createFile200Response.d.ts +27 -0
  30. package/dist/codegen/model/createFile200Response.d.ts.map +1 -0
  31. package/dist/codegen/model/createFile200Response.js +29 -0
  32. package/dist/codegen/model/createFile200ResponseAi.d.ts +30 -0
  33. package/dist/codegen/model/createFile200ResponseAi.d.ts.map +1 -0
  34. package/dist/codegen/model/createFile200ResponseAi.js +53 -0
  35. package/dist/codegen/model/createFileRequest.d.ts +31 -0
  36. package/dist/codegen/model/createFileRequest.d.ts.map +1 -0
  37. package/dist/codegen/model/createFileRequest.js +44 -0
  38. package/dist/codegen/model/createFolder200Response.d.ts +26 -0
  39. package/dist/codegen/model/createFolder200Response.d.ts.map +1 -0
  40. package/dist/codegen/model/createFolder200Response.js +29 -0
  41. package/dist/codegen/model/createFolderRequest.d.ts +27 -0
  42. package/dist/codegen/model/createFolderRequest.d.ts.map +1 -0
  43. package/dist/codegen/model/createFolderRequest.js +35 -0
  44. package/dist/codegen/model/credentials.d.ts +31 -0
  45. package/dist/codegen/model/credentials.d.ts.map +1 -0
  46. package/dist/codegen/model/credentials.js +44 -0
  47. package/dist/codegen/model/deleteFileRequest.d.ts +26 -0
  48. package/dist/codegen/model/deleteFileRequest.d.ts.map +1 -0
  49. package/dist/codegen/model/deleteFileRequest.js +29 -0
  50. package/dist/codegen/model/deleteFolderRequest.d.ts +26 -0
  51. package/dist/codegen/model/deleteFolderRequest.d.ts.map +1 -0
  52. package/dist/codegen/model/deleteFolderRequest.js +29 -0
  53. package/dist/codegen/model/farmer.d.ts +110 -0
  54. package/dist/codegen/model/farmer.d.ts.map +1 -0
  55. package/dist/codegen/model/farmer.js +299 -0
  56. package/dist/codegen/model/farmerOpponent.d.ts +35 -0
  57. package/dist/codegen/model/farmerOpponent.d.ts.map +1 -0
  58. package/dist/codegen/model/farmerOpponent.js +68 -0
  59. package/dist/codegen/model/fightResult.d.ts +38 -0
  60. package/dist/codegen/model/fightResult.d.ts.map +1 -0
  61. package/dist/codegen/model/fightResult.js +80 -0
  62. package/dist/codegen/model/fightResume.d.ts +95 -0
  63. package/dist/codegen/model/fightResume.d.ts.map +1 -0
  64. package/dist/codegen/model/fightResume.js +182 -0
  65. package/dist/codegen/model/fightResumeLeeks1Inner.d.ts +27 -0
  66. package/dist/codegen/model/fightResumeLeeks1Inner.d.ts.map +1 -0
  67. package/dist/codegen/model/fightResumeLeeks1Inner.js +35 -0
  68. package/dist/codegen/model/folder.d.ts +31 -0
  69. package/dist/codegen/model/folder.d.ts.map +1 -0
  70. package/dist/codegen/model/folder.js +44 -0
  71. package/dist/codegen/model/garden.d.ts +30 -0
  72. package/dist/codegen/model/garden.d.ts.map +1 -0
  73. package/dist/codegen/model/garden.js +32 -0
  74. package/dist/codegen/model/gardenGarden.d.ts +52 -0
  75. package/dist/codegen/model/gardenGarden.d.ts.map +1 -0
  76. package/dist/codegen/model/gardenGarden.js +113 -0
  77. package/dist/codegen/model/gardenGardenMyCompositionsInner.d.ts +38 -0
  78. package/dist/codegen/model/gardenGardenMyCompositionsInner.d.ts.map +1 -0
  79. package/dist/codegen/model/gardenGardenMyCompositionsInner.js +86 -0
  80. package/dist/codegen/model/gardenGardenMyTeam.d.ts +32 -0
  81. package/dist/codegen/model/gardenGardenMyTeam.d.ts.map +1 -0
  82. package/dist/codegen/model/gardenGardenMyTeam.js +50 -0
  83. package/dist/codegen/model/getFarmerOpponents200Response.d.ts +27 -0
  84. package/dist/codegen/model/getFarmerOpponents200Response.d.ts.map +1 -0
  85. package/dist/codegen/model/getFarmerOpponents200Response.js +29 -0
  86. package/dist/codegen/model/getFilesContentRequest.d.ts +29 -0
  87. package/dist/codegen/model/getFilesContentRequest.d.ts.map +1 -0
  88. package/dist/codegen/model/getFilesContentRequest.js +32 -0
  89. package/dist/codegen/model/getSoloOpponents200Response.d.ts +27 -0
  90. package/dist/codegen/model/getSoloOpponents200Response.d.ts.map +1 -0
  91. package/dist/codegen/model/getSoloOpponents200Response.js +29 -0
  92. package/dist/codegen/model/ia.d.ts +37 -0
  93. package/dist/codegen/model/ia.d.ts.map +1 -0
  94. package/dist/codegen/model/ia.js +80 -0
  95. package/dist/codegen/model/item.d.ts +35 -0
  96. package/dist/codegen/model/item.d.ts.map +1 -0
  97. package/dist/codegen/model/item.js +68 -0
  98. package/dist/codegen/model/leek.d.ts +172 -0
  99. package/dist/codegen/model/leek.d.ts.map +1 -0
  100. package/dist/codegen/model/leek.js +350 -0
  101. package/dist/codegen/model/logindump.d.ts +34 -0
  102. package/dist/codegen/model/logindump.d.ts.map +1 -0
  103. package/dist/codegen/model/logindump.js +41 -0
  104. package/dist/codegen/model/models.d.ts +87 -0
  105. package/dist/codegen/model/models.d.ts.map +1 -0
  106. package/dist/codegen/model/models.js +331 -0
  107. package/dist/codegen/model/opponent.d.ts +32 -0
  108. package/dist/codegen/model/opponent.d.ts.map +1 -0
  109. package/dist/codegen/model/opponent.js +50 -0
  110. package/dist/codegen/model/publicLeek.d.ts +225 -0
  111. package/dist/codegen/model/publicLeek.d.ts.map +1 -0
  112. package/dist/codegen/model/publicLeek.js +494 -0
  113. package/dist/codegen/model/publicLeekAi.d.ts +30 -0
  114. package/dist/codegen/model/publicLeekAi.d.ts.map +1 -0
  115. package/dist/codegen/model/publicLeekAi.js +53 -0
  116. package/dist/codegen/model/publicLeekChipsInner.d.ts +27 -0
  117. package/dist/codegen/model/publicLeekChipsInner.d.ts.map +1 -0
  118. package/dist/codegen/model/publicLeekChipsInner.js +35 -0
  119. package/dist/codegen/model/saveFile200Response.d.ts +29 -0
  120. package/dist/codegen/model/saveFile200Response.d.ts.map +1 -0
  121. package/dist/codegen/model/saveFile200Response.js +32 -0
  122. package/dist/codegen/model/saveFileRequest.d.ts +27 -0
  123. package/dist/codegen/model/saveFileRequest.d.ts.map +1 -0
  124. package/dist/codegen/model/saveFileRequest.js +35 -0
  125. package/dist/codegen/model/startFarmerFightRequest.d.ts +26 -0
  126. package/dist/codegen/model/startFarmerFightRequest.d.ts.map +1 -0
  127. package/dist/codegen/model/startFarmerFightRequest.js +29 -0
  128. package/dist/codegen/model/startSoloFight200Response.d.ts +26 -0
  129. package/dist/codegen/model/startSoloFight200Response.d.ts.map +1 -0
  130. package/dist/codegen/model/startSoloFight200Response.js +29 -0
  131. package/dist/codegen/model/startSoloFightRequest.d.ts +27 -0
  132. package/dist/codegen/model/startSoloFightRequest.d.ts.map +1 -0
  133. package/dist/codegen/model/startSoloFightRequest.js +35 -0
  134. package/dist/codegen/model/team.d.ts +34 -0
  135. package/dist/codegen/model/team.d.ts.map +1 -0
  136. package/dist/codegen/model/team.js +62 -0
  137. package/dist/codegen/model/tournamentResume.d.ts +36 -0
  138. package/dist/codegen/model/tournamentResume.d.ts.map +1 -0
  139. package/dist/codegen/model/tournamentResume.js +47 -0
  140. package/dist/credentials/credentials-manager.d.ts +19 -0
  141. package/dist/credentials/credentials-manager.d.ts.map +1 -0
  142. package/dist/credentials/credentials-manager.js +80 -0
  143. package/dist/leek-sync/filelist/cached-filelist.d.ts +13 -0
  144. package/dist/leek-sync/filelist/cached-filelist.d.ts.map +1 -0
  145. package/dist/leek-sync/filelist/cached-filelist.js +49 -0
  146. package/dist/leek-sync/filelist/filelist.d.ts +24 -0
  147. package/dist/leek-sync/filelist/filelist.d.ts.map +1 -0
  148. package/dist/leek-sync/filelist/filelist.js +77 -0
  149. package/dist/leek-sync/filelist/leekfile.d.ts +18 -0
  150. package/dist/leek-sync/filelist/leekfile.d.ts.map +1 -0
  151. package/dist/leek-sync/filelist/leekfile.js +54 -0
  152. package/dist/leek-sync/leek-sync-client.d.ts +13 -0
  153. package/dist/leek-sync/leek-sync-client.d.ts.map +1 -0
  154. package/dist/leek-sync/leek-sync-client.js +95 -0
  155. package/dist/leek-sync/leekfile-source/leekfile-source.d.ts +15 -0
  156. package/dist/leek-sync/leekfile-source/leekfile-source.d.ts.map +1 -0
  157. package/dist/leek-sync/leekfile-source/leekfile-source.js +37 -0
  158. package/dist/leek-sync/leekfile-source/leekwars-source.d.ts +22 -0
  159. package/dist/leek-sync/leekfile-source/leekwars-source.d.ts.map +1 -0
  160. package/dist/leek-sync/leekfile-source/leekwars-source.js +114 -0
  161. package/dist/leek-sync/leekfile-source/localfile-source.d.ts +22 -0
  162. package/dist/leek-sync/leekfile-source/localfile-source.d.ts.map +1 -0
  163. package/dist/leek-sync/leekfile-source/localfile-source.js +184 -0
  164. package/dist/leeksync.d.ts +2 -0
  165. package/dist/leeksync.d.ts.map +1 -0
  166. package/dist/leeksync.js +15 -0
  167. package/dist/login.d.ts +2 -0
  168. package/dist/login.d.ts.map +1 -0
  169. package/dist/login.js +12 -0
  170. package/dist/node-leek-client/leek-wars-client.d.ts +46 -0
  171. package/dist/node-leek-client/leek-wars-client.d.ts.map +1 -0
  172. package/dist/node-leek-client/leek-wars-client.js +541 -0
  173. package/dist/node-leek-client/leekwars-frontend/Item.d.ts +80 -0
  174. package/dist/node-leek-client/leekwars-frontend/Item.d.ts.map +1 -0
  175. package/dist/node-leek-client/leekwars-frontend/Item.js +88 -0
  176. package/dist/node-leek-client/leekwars-frontend/Items.d.ts +5 -0
  177. package/dist/node-leek-client/leekwars-frontend/Items.d.ts.map +1 -0
  178. package/dist/node-leek-client/leekwars-frontend/Items.js +7077 -0
  179. package/dist/node-leek-client/leekwars-frontend/Notification.d.ts +41 -0
  180. package/dist/node-leek-client/leekwars-frontend/Notification.d.ts.map +1 -0
  181. package/dist/node-leek-client/leekwars-frontend/Notification.js +44 -0
  182. package/dist/node-leek-client/leekwars-frontend/SocketMessage.d.ts +76 -0
  183. package/dist/node-leek-client/leekwars-frontend/SocketMessage.d.ts.map +1 -0
  184. package/dist/node-leek-client/leekwars-frontend/SocketMessage.js +88 -0
  185. package/dist/node-leek-client/node-leek-client.d.ts +37 -0
  186. package/dist/node-leek-client/node-leek-client.d.ts.map +1 -0
  187. package/dist/node-leek-client/node-leek-client.js +203 -0
  188. package/package.json +25 -0
@@ -0,0 +1,41 @@
1
+ export declare enum NotificationType {
2
+ UP_LEVEL = 1,// Passage de niveau
3
+ FIGHT_REPORT = 2,// Rapport de combat
4
+ NEW_MESSAGE = 3,// Nouveau message (forum)
5
+ COMPOSITION_FIGHT_REPORT = 4,// Rapport de combat de composition
6
+ TEAM_BANNED = 5,// Banni d'une team
7
+ TEAM_NEW_CANDIDACY = 6,// Nouvelle candidature (à voir parceque si le mec fait Rejoindre/Annuler ma demande en boucle ça va vite être chiant)
8
+ CANDIDACY_ACCEPTED = 7,// Accepté dans une team
9
+ CANDIDACY_REFUSED = 8,// Refusé dans une team
10
+ TOURNAMENT_WINNER = 9,// Gagnant d'un tournoi
11
+ NO_TOURNAMENT = 10,// Pas de place pour le tournoi
12
+ TROPHY_UNLOCKED = 11,// Nouveau trophée
13
+ FIGHT_COMMENT = 12,// Quelqu'un commente un combat dans lequel vous jouez
14
+ TOURNAMENT_END = 13,// Fin d'un tournoi
15
+ CHALLENGE = 14,// Quelqu'un nous a challengé
16
+ FARMER_FIGHT_REPORT = 15,// Aggression par un farmer
17
+ TEAM_NEW_FARMER = 16,// Nouveau Farmer dans une team
18
+ FARMER_TOURNAMENT_WIN = 17,// Victoire tournoi éleveur
19
+ NEW_GODSON = 18,// Nouveau Filleul (params : id_godson, name_godson)
20
+ FARMER_TOURNAMENT_END = 19,// Fin d'un tournoi de farmer
21
+ NEW_WARNING = 20,// Warning
22
+ TOURNAMENT_COMMENT = 21,// Quelqu'un commente un tournoi dans lequel vous jouez
23
+ TEAM_TOURNAMENT_WIN = 22,// Victoire tournoi team
24
+ TEAM_TOURNAMENT_END = 23,// Fin d'un tournoi de team
25
+ REPORTING_PROCESSED = 24,// Signalement traité par un modérateur
26
+ FARMER_CHALLENGE = 25,// Défi éleveur
27
+ BATTLE_ROYALE_STARTED = 26,// Battle royale
28
+ NEW_LEEKWARS_VERSION = 27,// Nouvelle version de Leek Wars
29
+ PRIVATE_MESSAGE = 28,// Message privé (pas en notif mais pour les push & mails)
30
+ NO_TOURNAMENT_FARMER = 29,// Pas de place pour le tournoi d'éleveur
31
+ NO_TOURNAMENT_TEAM = 30,// Pas de place pour le tournoi d'équipe
32
+ NO_BR = 31,// Pas de place pour la BR
33
+ CHAT_MENTION = 32,// Mention sur un chat publique
34
+ GAME_UPDATE = 33,// Nouvelle mise à jour
35
+ GIVE_ITEM = 34,// Don d'item
36
+ BOSS_STARTED = 35,// Démarrage d'un boss
37
+ FORUM_TOPIC = 36,// Création d'un nouveau topic
38
+ GIVE_MONEY = 37,// Don d'argent
39
+ GIVE_FIGHTS = 38
40
+ }
41
+ //# sourceMappingURL=Notification.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Notification.d.ts","sourceRoot":"","sources":["../../../src/node-leek-client/leekwars-frontend/Notification.ts"],"names":[],"mappings":"AAAA,oBAAY,gBAAgB;IACxB,QAAQ,IAAI,CAAE,oBAAoB;IAClC,YAAY,IAAI,CAAE,oBAAoB;IACtC,WAAW,IAAI,CAAE,0BAA0B;IAC3C,wBAAwB,IAAI,CAAE,mCAAmC;IACjE,WAAW,IAAI,CAAE,mBAAmB;IACpC,kBAAkB,IAAI,CAAE,sHAAsH;IAC9I,kBAAkB,IAAI,CAAE,wBAAwB;IAChD,iBAAiB,IAAI,CAAE,uBAAuB;IAC9C,iBAAiB,IAAI,CAAE,uBAAuB;IAC9C,aAAa,KAAK,CAAE,+BAA+B;IACnD,eAAe,KAAK,CAAE,kBAAkB;IACxC,aAAa,KAAK,CAAE,sDAAsD;IAC1E,cAAc,KAAK,CAAE,mBAAmB;IACxC,SAAS,KAAK,CAAE,6BAA6B;IAC7C,mBAAmB,KAAK,CAAE,2BAA2B;IACrD,eAAe,KAAK,CAAE,+BAA+B;IACrD,qBAAqB,KAAK,CAAE,2BAA2B;IACvD,UAAU,KAAK,CAAE,oDAAoD;IACrE,qBAAqB,KAAK,CAAE,6BAA6B;IACzD,WAAW,KAAK,CAAE,UAAU;IAC5B,kBAAkB,KAAK,CAAE,uDAAuD;IAChF,mBAAmB,KAAK,CAAE,wBAAwB;IAClD,mBAAmB,KAAK,CAAE,2BAA2B;IACrD,mBAAmB,KAAK,CAAE,uCAAuC;IACjE,gBAAgB,KAAK,CAAE,eAAe;IACtC,qBAAqB,KAAK,CAAE,gBAAgB;IAC5C,oBAAoB,KAAK,CAAE,gCAAgC;IAC3D,eAAe,KAAK,CAAE,0DAA0D;IAChF,oBAAoB,KAAK,CAAE,yCAAyC;IACpE,kBAAkB,KAAK,CAAE,wCAAwC;IACjE,KAAK,KAAK,CAAE,0BAA0B;IACtC,YAAY,KAAK,CAAE,+BAA+B;IAClD,WAAW,KAAK,CAAE,uBAAuB;IACzC,SAAS,KAAK,CAAE,aAAa;IAC7B,YAAY,KAAK,CAAE,sBAAsB;IACzC,WAAW,KAAK,CAAE,8BAA8B;IAChD,UAAU,KAAK,CAAE,eAAe;IAChC,WAAW,KAAK;CACnB"}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NotificationType = void 0;
4
+ var NotificationType;
5
+ (function (NotificationType) {
6
+ NotificationType[NotificationType["UP_LEVEL"] = 1] = "UP_LEVEL";
7
+ NotificationType[NotificationType["FIGHT_REPORT"] = 2] = "FIGHT_REPORT";
8
+ NotificationType[NotificationType["NEW_MESSAGE"] = 3] = "NEW_MESSAGE";
9
+ NotificationType[NotificationType["COMPOSITION_FIGHT_REPORT"] = 4] = "COMPOSITION_FIGHT_REPORT";
10
+ NotificationType[NotificationType["TEAM_BANNED"] = 5] = "TEAM_BANNED";
11
+ NotificationType[NotificationType["TEAM_NEW_CANDIDACY"] = 6] = "TEAM_NEW_CANDIDACY";
12
+ NotificationType[NotificationType["CANDIDACY_ACCEPTED"] = 7] = "CANDIDACY_ACCEPTED";
13
+ NotificationType[NotificationType["CANDIDACY_REFUSED"] = 8] = "CANDIDACY_REFUSED";
14
+ NotificationType[NotificationType["TOURNAMENT_WINNER"] = 9] = "TOURNAMENT_WINNER";
15
+ NotificationType[NotificationType["NO_TOURNAMENT"] = 10] = "NO_TOURNAMENT";
16
+ NotificationType[NotificationType["TROPHY_UNLOCKED"] = 11] = "TROPHY_UNLOCKED";
17
+ NotificationType[NotificationType["FIGHT_COMMENT"] = 12] = "FIGHT_COMMENT";
18
+ NotificationType[NotificationType["TOURNAMENT_END"] = 13] = "TOURNAMENT_END";
19
+ NotificationType[NotificationType["CHALLENGE"] = 14] = "CHALLENGE";
20
+ NotificationType[NotificationType["FARMER_FIGHT_REPORT"] = 15] = "FARMER_FIGHT_REPORT";
21
+ NotificationType[NotificationType["TEAM_NEW_FARMER"] = 16] = "TEAM_NEW_FARMER";
22
+ NotificationType[NotificationType["FARMER_TOURNAMENT_WIN"] = 17] = "FARMER_TOURNAMENT_WIN";
23
+ NotificationType[NotificationType["NEW_GODSON"] = 18] = "NEW_GODSON";
24
+ NotificationType[NotificationType["FARMER_TOURNAMENT_END"] = 19] = "FARMER_TOURNAMENT_END";
25
+ NotificationType[NotificationType["NEW_WARNING"] = 20] = "NEW_WARNING";
26
+ NotificationType[NotificationType["TOURNAMENT_COMMENT"] = 21] = "TOURNAMENT_COMMENT";
27
+ NotificationType[NotificationType["TEAM_TOURNAMENT_WIN"] = 22] = "TEAM_TOURNAMENT_WIN";
28
+ NotificationType[NotificationType["TEAM_TOURNAMENT_END"] = 23] = "TEAM_TOURNAMENT_END";
29
+ NotificationType[NotificationType["REPORTING_PROCESSED"] = 24] = "REPORTING_PROCESSED";
30
+ NotificationType[NotificationType["FARMER_CHALLENGE"] = 25] = "FARMER_CHALLENGE";
31
+ NotificationType[NotificationType["BATTLE_ROYALE_STARTED"] = 26] = "BATTLE_ROYALE_STARTED";
32
+ NotificationType[NotificationType["NEW_LEEKWARS_VERSION"] = 27] = "NEW_LEEKWARS_VERSION";
33
+ NotificationType[NotificationType["PRIVATE_MESSAGE"] = 28] = "PRIVATE_MESSAGE";
34
+ NotificationType[NotificationType["NO_TOURNAMENT_FARMER"] = 29] = "NO_TOURNAMENT_FARMER";
35
+ NotificationType[NotificationType["NO_TOURNAMENT_TEAM"] = 30] = "NO_TOURNAMENT_TEAM";
36
+ NotificationType[NotificationType["NO_BR"] = 31] = "NO_BR";
37
+ NotificationType[NotificationType["CHAT_MENTION"] = 32] = "CHAT_MENTION";
38
+ NotificationType[NotificationType["GAME_UPDATE"] = 33] = "GAME_UPDATE";
39
+ NotificationType[NotificationType["GIVE_ITEM"] = 34] = "GIVE_ITEM";
40
+ NotificationType[NotificationType["BOSS_STARTED"] = 35] = "BOSS_STARTED";
41
+ NotificationType[NotificationType["FORUM_TOPIC"] = 36] = "FORUM_TOPIC";
42
+ NotificationType[NotificationType["GIVE_MONEY"] = 37] = "GIVE_MONEY";
43
+ NotificationType[NotificationType["GIVE_FIGHTS"] = 38] = "GIVE_FIGHTS";
44
+ })(NotificationType || (exports.NotificationType = NotificationType = {}));
@@ -0,0 +1,76 @@
1
+ export declare enum SocketMessage {
2
+ AUTH = 0,
3
+ NOTIFICATION_RECEIVE = 6,
4
+ CHAT_SEND = 8,
5
+ CHAT_RECEIVE = 9,
6
+ MP_READ = 11,
7
+ FIGHT_LISTEN = 12,
8
+ FIGHT_GENERATED = 12,
9
+ FIGHT_WAITING_POSITION = 13,
10
+ FORUM_CHAT_DISABLE = 19,
11
+ READ_ALL_NOTIFICATIONS = 20,
12
+ CHAT_REQUEST_MUTE = 21,
13
+ CHAT_MUTE_USER = 22,
14
+ CHAT_REQUEST_UNMUTE = 23,
15
+ CHAT_UNMUTE_USER = 24,
16
+ YOU_ARE_MUTED = 25,
17
+ LUCKY = 26,
18
+ GET_LUCKY = 27,
19
+ BATTLE_ROYALE_REGISTER = 28,
20
+ BATTLE_ROYALE_UPDATE = 29,
21
+ BATTLE_ROYALE_START = 30,
22
+ BATTLE_ROYALE_LEAVE = 31,
23
+ BATTLE_ROYALE_CHAT_NOTIF = 32,
24
+ PONG = 33,
25
+ CHAT_ENABLE = 34,
26
+ CHAT_RECEIVE_PACK = 35,
27
+ GARDEN_QUEUE_REGISTER = 37,
28
+ GARDEN_QUEUE = 38,
29
+ GARDEN_QUEUE_UNREGISTER = 39,
30
+ FIGHT_PROGRESS_REGISTER = 40,
31
+ FIGHT_PROGRESS = 41,
32
+ FIGHT_PROGRESS_UNREGISTER = 42,
33
+ UPDATE_LEEK_TALENT = 45,
34
+ UPDATE_FARMER_TALENT = 46,
35
+ UPDATE_TEAM_TALENT = 47,
36
+ UPDATE_HABS = 48,
37
+ UPDATE_LEEK_XP = 49,
38
+ CHAT_CENSOR = 50,
39
+ CHAT_REACT = 51,
40
+ READ_NOTIFICATION = 52,
41
+ ADD_RESOURCE = 53,
42
+ EDITOR_HOVER = 54,
43
+ CHAT_DELETE = 56,
44
+ WRONG_TOKEN = 57,
45
+ TOURNAMENT_LISTEN = 58,
46
+ TOURNAMENT_UNLISTEN = 59,
47
+ TOURNAMENT_UPDATE = 60,
48
+ FAKE_LUCKY = 61,
49
+ EDITOR_COMPLETE = 62,
50
+ EDITOR_ANALYZE = 64,
51
+ EDITOR_ANALYZE_ERROR = 65,
52
+ GARDEN_BOSS_CREATE_SQUAD = 66,
53
+ GARDEN_BOSS_JOIN_SQUAD = 67,
54
+ GARDEN_BOSS_ADD_LEEK = 68,
55
+ GARDEN_BOSS_REMOVE_LEEK = 69,
56
+ GARDEN_BOSS_SQUAD_PUBLIC = 70,
57
+ GARDEN_BOSS_ATTACK = 71,
58
+ GARDEN_BOSS_LISTEN = 72,
59
+ GARDEN_BOSS_SQUADS = 73,
60
+ GARDEN_BOSS_SQUAD_JOINED = 74,
61
+ GARDEN_BOSS_LEAVE_SQUAD = 75,
62
+ GARDEN_BOSS_SQUAD = 76,
63
+ GARDEN_BOSS_NO_SUCH_SQUAD = 77,
64
+ GARDEN_BOSS_STARTED = 78,
65
+ GARDEN_BOSS_OPEN = 79,
66
+ GARDEN_BOSS_LOCK = 80,
67
+ GARDEN_BOSS_UNLISTEN = 81,
68
+ GARDEN_BOSS_LEFT = 82,
69
+ CONSOLE_NEW = 83,
70
+ CONSOLE_EXECUTE = 84,
71
+ CONSOLE_RESULT = 85,
72
+ CONSOLE_ERROR = 86,
73
+ CONSOLE_LOG = 87,
74
+ CONSOLE_CLOSE = 88
75
+ }
76
+ //# sourceMappingURL=SocketMessage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SocketMessage.d.ts","sourceRoot":"","sources":["../../../src/node-leek-client/leekwars-frontend/SocketMessage.ts"],"names":[],"mappings":"AAAA,oBAAY,aAAa;IACrB,IAAI,IAAI;IAMR,oBAAoB,IAAI;IAExB,SAAS,IAAI;IACb,YAAY,IAAI;IAEhB,OAAO,KAAK;IACZ,YAAY,KAAK;IACjB,eAAe,KAAK;IACpB,sBAAsB,KAAK;IAC3B,kBAAkB,KAAK;IACvB,sBAAsB,KAAK;IAC3B,iBAAiB,KAAK;IACtB,cAAc,KAAK;IACnB,mBAAmB,KAAK;IACxB,gBAAgB,KAAK;IACrB,aAAa,KAAK;IAClB,KAAK,KAAK;IACV,SAAS,KAAK;IACd,sBAAsB,KAAK;IAC3B,oBAAoB,KAAK;IACzB,mBAAmB,KAAK;IACxB,mBAAmB,KAAK;IACxB,wBAAwB,KAAK;IAC7B,IAAI,KAAK;IACT,WAAW,KAAK;IAChB,iBAAiB,KAAK;IACtB,qBAAqB,KAAK;IAC1B,YAAY,KAAK;IACjB,uBAAuB,KAAK;IAC5B,uBAAuB,KAAK;IAC5B,cAAc,KAAK;IACnB,yBAAyB,KAAK;IAG9B,kBAAkB,KAAK;IACvB,oBAAoB,KAAK;IACzB,kBAAkB,KAAK;IACvB,WAAW,KAAK;IAChB,cAAc,KAAK;IACnB,WAAW,KAAK;IAChB,UAAU,KAAK;IACf,iBAAiB,KAAK;IACtB,YAAY,KAAK;IACjB,YAAY,KAAK;IACjB,WAAW,KAAK;IAChB,WAAW,KAAK;IAChB,iBAAiB,KAAK;IACtB,mBAAmB,KAAK;IACxB,iBAAiB,KAAK;IACtB,UAAU,KAAK;IACf,eAAe,KAAK;IACpB,cAAc,KAAK;IACnB,oBAAoB,KAAK;IACzB,wBAAwB,KAAK;IAC7B,sBAAsB,KAAK;IAC3B,oBAAoB,KAAK;IACzB,uBAAuB,KAAK;IAC5B,wBAAwB,KAAK;IAC7B,kBAAkB,KAAK;IACvB,kBAAkB,KAAK;IACvB,kBAAkB,KAAK;IACvB,wBAAwB,KAAK;IAC7B,uBAAuB,KAAK;IAC5B,iBAAiB,KAAK;IACtB,yBAAyB,KAAK;IAC9B,mBAAmB,KAAK;IACxB,gBAAgB,KAAK;IACrB,gBAAgB,KAAK;IACrB,oBAAoB,KAAK;IACzB,gBAAgB,KAAK;IACrB,WAAW,KAAK;IAChB,eAAe,KAAK;IACpB,cAAc,KAAK;IACnB,aAAa,KAAK;IAClB,WAAW,KAAK;IAChB,aAAa,KAAK;CACrB"}
@@ -0,0 +1,88 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SocketMessage = void 0;
4
+ var SocketMessage;
5
+ (function (SocketMessage) {
6
+ SocketMessage[SocketMessage["AUTH"] = 0] = "AUTH";
7
+ // TEAM_CHAT_SEND = 1, // Deprecated
8
+ // TEAM_CHAT_RECEIVE = 2, // Deprecated
9
+ // TEAM_CHAT_MEMBERS = 3, // Deprecated
10
+ // TEAM_CHAT_ENABLE = 4, // Deprecated
11
+ // MP_RECEIVE = 5, // Deprecated
12
+ SocketMessage[SocketMessage["NOTIFICATION_RECEIVE"] = 6] = "NOTIFICATION_RECEIVE";
13
+ // CHAT_ENABLE = 7, // Deprecated
14
+ SocketMessage[SocketMessage["CHAT_SEND"] = 8] = "CHAT_SEND";
15
+ SocketMessage[SocketMessage["CHAT_RECEIVE"] = 9] = "CHAT_RECEIVE";
16
+ // MP_UNREAD_MESSAGES = 10, // Deprecated
17
+ SocketMessage[SocketMessage["MP_READ"] = 11] = "MP_READ";
18
+ SocketMessage[SocketMessage["FIGHT_LISTEN"] = 12] = "FIGHT_LISTEN";
19
+ SocketMessage[SocketMessage["FIGHT_GENERATED"] = 12] = "FIGHT_GENERATED";
20
+ SocketMessage[SocketMessage["FIGHT_WAITING_POSITION"] = 13] = "FIGHT_WAITING_POSITION";
21
+ SocketMessage[SocketMessage["FORUM_CHAT_DISABLE"] = 19] = "FORUM_CHAT_DISABLE";
22
+ SocketMessage[SocketMessage["READ_ALL_NOTIFICATIONS"] = 20] = "READ_ALL_NOTIFICATIONS";
23
+ SocketMessage[SocketMessage["CHAT_REQUEST_MUTE"] = 21] = "CHAT_REQUEST_MUTE";
24
+ SocketMessage[SocketMessage["CHAT_MUTE_USER"] = 22] = "CHAT_MUTE_USER";
25
+ SocketMessage[SocketMessage["CHAT_REQUEST_UNMUTE"] = 23] = "CHAT_REQUEST_UNMUTE";
26
+ SocketMessage[SocketMessage["CHAT_UNMUTE_USER"] = 24] = "CHAT_UNMUTE_USER";
27
+ SocketMessage[SocketMessage["YOU_ARE_MUTED"] = 25] = "YOU_ARE_MUTED";
28
+ SocketMessage[SocketMessage["LUCKY"] = 26] = "LUCKY";
29
+ SocketMessage[SocketMessage["GET_LUCKY"] = 27] = "GET_LUCKY";
30
+ SocketMessage[SocketMessage["BATTLE_ROYALE_REGISTER"] = 28] = "BATTLE_ROYALE_REGISTER";
31
+ SocketMessage[SocketMessage["BATTLE_ROYALE_UPDATE"] = 29] = "BATTLE_ROYALE_UPDATE";
32
+ SocketMessage[SocketMessage["BATTLE_ROYALE_START"] = 30] = "BATTLE_ROYALE_START";
33
+ SocketMessage[SocketMessage["BATTLE_ROYALE_LEAVE"] = 31] = "BATTLE_ROYALE_LEAVE";
34
+ SocketMessage[SocketMessage["BATTLE_ROYALE_CHAT_NOTIF"] = 32] = "BATTLE_ROYALE_CHAT_NOTIF";
35
+ SocketMessage[SocketMessage["PONG"] = 33] = "PONG";
36
+ SocketMessage[SocketMessage["CHAT_ENABLE"] = 34] = "CHAT_ENABLE";
37
+ SocketMessage[SocketMessage["CHAT_RECEIVE_PACK"] = 35] = "CHAT_RECEIVE_PACK";
38
+ SocketMessage[SocketMessage["GARDEN_QUEUE_REGISTER"] = 37] = "GARDEN_QUEUE_REGISTER";
39
+ SocketMessage[SocketMessage["GARDEN_QUEUE"] = 38] = "GARDEN_QUEUE";
40
+ SocketMessage[SocketMessage["GARDEN_QUEUE_UNREGISTER"] = 39] = "GARDEN_QUEUE_UNREGISTER";
41
+ SocketMessage[SocketMessage["FIGHT_PROGRESS_REGISTER"] = 40] = "FIGHT_PROGRESS_REGISTER";
42
+ SocketMessage[SocketMessage["FIGHT_PROGRESS"] = 41] = "FIGHT_PROGRESS";
43
+ SocketMessage[SocketMessage["FIGHT_PROGRESS_UNREGISTER"] = 42] = "FIGHT_PROGRESS_UNREGISTER";
44
+ // TEAM_CHAT_ENABLE_FAST = 43, // Deprecated
45
+ // TEAM_CHAT_RECEIVE_PACK = 44, // Deprecated
46
+ SocketMessage[SocketMessage["UPDATE_LEEK_TALENT"] = 45] = "UPDATE_LEEK_TALENT";
47
+ SocketMessage[SocketMessage["UPDATE_FARMER_TALENT"] = 46] = "UPDATE_FARMER_TALENT";
48
+ SocketMessage[SocketMessage["UPDATE_TEAM_TALENT"] = 47] = "UPDATE_TEAM_TALENT";
49
+ SocketMessage[SocketMessage["UPDATE_HABS"] = 48] = "UPDATE_HABS";
50
+ SocketMessage[SocketMessage["UPDATE_LEEK_XP"] = 49] = "UPDATE_LEEK_XP";
51
+ SocketMessage[SocketMessage["CHAT_CENSOR"] = 50] = "CHAT_CENSOR";
52
+ SocketMessage[SocketMessage["CHAT_REACT"] = 51] = "CHAT_REACT";
53
+ SocketMessage[SocketMessage["READ_NOTIFICATION"] = 52] = "READ_NOTIFICATION";
54
+ SocketMessage[SocketMessage["ADD_RESOURCE"] = 53] = "ADD_RESOURCE";
55
+ SocketMessage[SocketMessage["EDITOR_HOVER"] = 54] = "EDITOR_HOVER";
56
+ SocketMessage[SocketMessage["CHAT_DELETE"] = 56] = "CHAT_DELETE";
57
+ SocketMessage[SocketMessage["WRONG_TOKEN"] = 57] = "WRONG_TOKEN";
58
+ SocketMessage[SocketMessage["TOURNAMENT_LISTEN"] = 58] = "TOURNAMENT_LISTEN";
59
+ SocketMessage[SocketMessage["TOURNAMENT_UNLISTEN"] = 59] = "TOURNAMENT_UNLISTEN";
60
+ SocketMessage[SocketMessage["TOURNAMENT_UPDATE"] = 60] = "TOURNAMENT_UPDATE";
61
+ SocketMessage[SocketMessage["FAKE_LUCKY"] = 61] = "FAKE_LUCKY";
62
+ SocketMessage[SocketMessage["EDITOR_COMPLETE"] = 62] = "EDITOR_COMPLETE";
63
+ SocketMessage[SocketMessage["EDITOR_ANALYZE"] = 64] = "EDITOR_ANALYZE";
64
+ SocketMessage[SocketMessage["EDITOR_ANALYZE_ERROR"] = 65] = "EDITOR_ANALYZE_ERROR";
65
+ SocketMessage[SocketMessage["GARDEN_BOSS_CREATE_SQUAD"] = 66] = "GARDEN_BOSS_CREATE_SQUAD";
66
+ SocketMessage[SocketMessage["GARDEN_BOSS_JOIN_SQUAD"] = 67] = "GARDEN_BOSS_JOIN_SQUAD";
67
+ SocketMessage[SocketMessage["GARDEN_BOSS_ADD_LEEK"] = 68] = "GARDEN_BOSS_ADD_LEEK";
68
+ SocketMessage[SocketMessage["GARDEN_BOSS_REMOVE_LEEK"] = 69] = "GARDEN_BOSS_REMOVE_LEEK";
69
+ SocketMessage[SocketMessage["GARDEN_BOSS_SQUAD_PUBLIC"] = 70] = "GARDEN_BOSS_SQUAD_PUBLIC";
70
+ SocketMessage[SocketMessage["GARDEN_BOSS_ATTACK"] = 71] = "GARDEN_BOSS_ATTACK";
71
+ SocketMessage[SocketMessage["GARDEN_BOSS_LISTEN"] = 72] = "GARDEN_BOSS_LISTEN";
72
+ SocketMessage[SocketMessage["GARDEN_BOSS_SQUADS"] = 73] = "GARDEN_BOSS_SQUADS";
73
+ SocketMessage[SocketMessage["GARDEN_BOSS_SQUAD_JOINED"] = 74] = "GARDEN_BOSS_SQUAD_JOINED";
74
+ SocketMessage[SocketMessage["GARDEN_BOSS_LEAVE_SQUAD"] = 75] = "GARDEN_BOSS_LEAVE_SQUAD";
75
+ SocketMessage[SocketMessage["GARDEN_BOSS_SQUAD"] = 76] = "GARDEN_BOSS_SQUAD";
76
+ SocketMessage[SocketMessage["GARDEN_BOSS_NO_SUCH_SQUAD"] = 77] = "GARDEN_BOSS_NO_SUCH_SQUAD";
77
+ SocketMessage[SocketMessage["GARDEN_BOSS_STARTED"] = 78] = "GARDEN_BOSS_STARTED";
78
+ SocketMessage[SocketMessage["GARDEN_BOSS_OPEN"] = 79] = "GARDEN_BOSS_OPEN";
79
+ SocketMessage[SocketMessage["GARDEN_BOSS_LOCK"] = 80] = "GARDEN_BOSS_LOCK";
80
+ SocketMessage[SocketMessage["GARDEN_BOSS_UNLISTEN"] = 81] = "GARDEN_BOSS_UNLISTEN";
81
+ SocketMessage[SocketMessage["GARDEN_BOSS_LEFT"] = 82] = "GARDEN_BOSS_LEFT";
82
+ SocketMessage[SocketMessage["CONSOLE_NEW"] = 83] = "CONSOLE_NEW";
83
+ SocketMessage[SocketMessage["CONSOLE_EXECUTE"] = 84] = "CONSOLE_EXECUTE";
84
+ SocketMessage[SocketMessage["CONSOLE_RESULT"] = 85] = "CONSOLE_RESULT";
85
+ SocketMessage[SocketMessage["CONSOLE_ERROR"] = 86] = "CONSOLE_ERROR";
86
+ SocketMessage[SocketMessage["CONSOLE_LOG"] = 87] = "CONSOLE_LOG";
87
+ SocketMessage[SocketMessage["CONSOLE_CLOSE"] = 88] = "CONSOLE_CLOSE";
88
+ })(SocketMessage || (exports.SocketMessage = SocketMessage = {}));
@@ -0,0 +1,37 @@
1
+ import { Farmer } from "../codegen/model/farmer.js";
2
+ import { Opponent } from "../codegen/model/opponent.js";
3
+ import { FightResult } from "../codegen/model/fightResult.js";
4
+ import { LeekWarsClient } from "./leek-wars-client.js";
5
+ import { PublicLeek } from "../codegen/model/publicLeek.js";
6
+ declare class NodeLeekClient extends LeekWarsClient {
7
+ farmer: Farmer;
8
+ leeks: PublicLeek[];
9
+ private foldersById;
10
+ private filesByName;
11
+ private leekSyncClient;
12
+ static Create(username: string, password: string): Promise<NodeLeekClient>;
13
+ login(): Promise<void>;
14
+ private initClient;
15
+ logFarmerInfos(): void;
16
+ private logLeekInfos;
17
+ private getImportantStats;
18
+ private fightToString;
19
+ private fightToBigString;
20
+ private registerOwnLeek;
21
+ private registerFolder;
22
+ private registerFolders;
23
+ private registerAis;
24
+ private registerAi;
25
+ getFiles(): {
26
+ [name: string]: number;
27
+ };
28
+ startRandomSoloFight(leek_id: number): Promise<[Opponent, number]>;
29
+ startRandomFarmerFight(): Promise<[Opponent, number]>;
30
+ startRandomTeamFight(leek_id: number): Promise<[Opponent, number]>;
31
+ getCompleteFight(fight_id: number): Promise<FightResult | void>;
32
+ syncWith(path: string, watch: boolean, choice?: string): Promise<void>;
33
+ createRoom(bossId: number, locked?: boolean): Promise<string>;
34
+ joinRoom(roomId: string): Promise<string>;
35
+ }
36
+ export { NodeLeekClient as default };
37
+ //# sourceMappingURL=node-leek-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-leek-client.d.ts","sourceRoot":"","sources":["../../src/node-leek-client/node-leek-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,4BAA4B,CAAC;AAGlD,OAAO,EAAC,QAAQ,EAAC,MAAM,8BAA8B,CAAC;AACtD,OAAO,EAAC,WAAW,EAAC,MAAM,iCAAiC,CAAC;AAE5D,OAAO,EAAC,cAAc,EAAC,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAC,UAAU,EAAC,MAAM,gCAAgC,CAAC;AAO1D,cAAM,cAAe,SAAQ,cAAc;IAEhC,MAAM,EAAE,MAAM,CAAgB;IAC9B,KAAK,EAAE,UAAU,EAAE,CAAM;IAChC,OAAO,CAAC,WAAW,CAAqC;IACxD,OAAO,CAAC,WAAW,CAAuC;IAC1D,OAAO,CAAC,cAAc,CAA+B;WAEjC,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAK1E,KAAK;YAaJ,UAAU;IAWjB,cAAc;IAKrB,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,iBAAiB;IA0BzB,OAAO,CAAC,aAAa;IAcrB,OAAO,CAAC,gBAAgB;YAQV,eAAe;IAO7B,OAAO,CAAC,cAAc;IAUtB,OAAO,CAAC,eAAe;IAavB,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,UAAU;IAMX,QAAQ,IAAI;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE;IAIhC,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAI,OAAO,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAcnE,sBAAsB,IAAK,OAAO,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IActD,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAI,OAAO,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAcnE,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAI,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAWhE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,GAAE,MAAW;IAK1D,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,GAAE,OAAe,GAAI,OAAO,CAAC,MAAM,CAAC;IAUrE,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAI,OAAO,CAAC,MAAM,CAAC;CAO1D;AAED,OAAO,EAAC,cAAc,IAAI,OAAO,EAAC,CAAC"}
@@ -0,0 +1,203 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.default = void 0;
4
+ const farmer_js_1 = require("../codegen/model/farmer.js");
5
+ const leek_sync_client_js_1 = require("../leek-sync/leek-sync-client.js");
6
+ const leek_wars_client_js_1 = require("./leek-wars-client.js");
7
+ function randomIn(array) {
8
+ return array[Math.floor(Math.random() * array.length)];
9
+ }
10
+ class NodeLeekClient extends leek_wars_client_js_1.LeekWarsClient {
11
+ farmer = new farmer_js_1.Farmer();
12
+ leeks = [];
13
+ foldersById = { 0: "/" };
14
+ filesByName = { "/": 0 };
15
+ leekSyncClient = null;
16
+ static async Create(username, password) {
17
+ var client = new NodeLeekClient(username, password);
18
+ return client.login().then(nodeLeek => client);
19
+ }
20
+ async login() {
21
+ return this.loginOnLeekwars().then(farmer => {
22
+ console.log("\n\n\n📯 NodeLeek connected !");
23
+ return this.initClient(farmer);
24
+ }).catch(err => {
25
+ if (err?.response?.statusCode == 401 && err.body.error == "invalid") {
26
+ console.error("🛑 Failed to start NodeLeek : invalid credentials. Check credentials.json");
27
+ }
28
+ else {
29
+ console.error(err);
30
+ }
31
+ });
32
+ }
33
+ async initClient(farmer) {
34
+ this.farmer = farmer;
35
+ this.logFarmerInfos();
36
+ this.registerFolders(this.farmer.folders);
37
+ this.registerAis(this.farmer.ais);
38
+ for (const id of Object.keys(this.farmer.leeks)) {
39
+ await this.registerOwnLeek(Number(id));
40
+ }
41
+ this.leeks.forEach(leek => this.logLeekInfos(leek));
42
+ }
43
+ logFarmerInfos() {
44
+ console.log("🤠 " + this.farmer.name + " (" + this.farmer.habs + " habs) " + this.farmer.fights + " fights");
45
+ //Object.values(this.farmer.leeks).forEach(leek => console.log("🥬 " + leek.name + " lvl." + leek.level + " - " + leek.talent + " talents" + (leek.capital > 0 ? " - ⚠️ " + leek.capital + " capitals to spend" : "")));
46
+ }
47
+ logLeekInfos(leek) {
48
+ console.log("\n/--- 🥬 " + leek.name + " lvl." + leek.level + " (" + Math.floor(100 * (leek.xp - leek.downXp) / (leek.upXp - leek.downXp)) + "%) " + leek.talent + " talents (" + (leek.talentMore > 0 ? "+" : "") + leek.talentMore + ") #" + leek.ranking);
49
+ console.log("/- 🏅 " + leek.victories + " wins / " + leek.draws + " draws / " + leek.defeats + " defeats");
50
+ console.log("/- ❤️ " + leek.totalLife + " ⭐️ " + leek.totalTp + " 👢 " + leek.totalMp + this.getImportantStats(leek));
51
+ console.log("/- Fights : " + leek.fights.map(fight => this.fightToString(fight)).join(" "));
52
+ }
53
+ getImportantStats(leek) {
54
+ const stats = {
55
+ " 🤎 ": leek.totalStrength,
56
+ " 💚 ": leek.totalWisdom,
57
+ " 🩵 ": leek.totalAgility,
58
+ " 🧡 ": leek.totalResistance,
59
+ " 💙 ": leek.totalScience,
60
+ " 💜 ": leek.totalMagic
61
+ };
62
+ let maxValue = 0;
63
+ Object.values(stats).forEach((value) => {
64
+ if (value > maxValue) {
65
+ maxValue = value;
66
+ }
67
+ });
68
+ let result = "";
69
+ Object.entries(stats).forEach(([key, value]) => {
70
+ if (value > (maxValue / 2) && value > 0) {
71
+ result += key + value;
72
+ }
73
+ });
74
+ return result;
75
+ }
76
+ fightToString(fight) {
77
+ return "[" + {
78
+ "win": "💚 ",
79
+ "defeat": "🔴 ",
80
+ "draw": "⬜️ ",
81
+ "?": "wait "
82
+ }[fight.result]
83
+ + "⬆".repeat(fight.levelups)
84
+ + "☘".repeat(fight.rareloot)
85
+ + "⛤".repeat(fight.trophies)
86
+ + "]";
87
+ }
88
+ fightToBigString(fight) {
89
+ return "[ "
90
+ + fight.leeks1.map(leek => leek.name).join(" ")
91
+ + " VS "
92
+ + fight.leeks2.map(leek => leek.name).join(" ")
93
+ + " ]";
94
+ }
95
+ async registerOwnLeek(id) {
96
+ return this.getLeek(id).then(leek => {
97
+ if (leek == null)
98
+ return;
99
+ this.leeks.push(leek);
100
+ });
101
+ }
102
+ registerFolder(folder) {
103
+ if (this.foldersById[folder.folder] === undefined) {
104
+ return false;
105
+ }
106
+ var fullname = this.foldersById[folder.folder] + folder.name + "/";
107
+ this.filesByName[fullname] = folder.id;
108
+ this.foldersById[folder.id] = fullname;
109
+ return true;
110
+ }
111
+ registerFolders(folders, count = 0) {
112
+ if (folders.length > 0) {
113
+ if (count < 50) {
114
+ // Register all folders that haven't been registered on first try
115
+ this.registerFolders(folders.filter(folder => !this.registerFolder(folder)), count + 1);
116
+ }
117
+ else {
118
+ // console.log("Theses folder can't be registered. Their parent are either bugged or they are more than 50 level deep in folder hierarchy :");
119
+ // console.log(folders);
120
+ }
121
+ }
122
+ }
123
+ registerAis(ais) {
124
+ ais.forEach(ai => this.registerAi(ai));
125
+ }
126
+ registerAi(ai) {
127
+ if (this.foldersById[ai.folder] != undefined) {
128
+ this.filesByName[(this.foldersById[ai.folder] ?? "/") + ai.name + ".leek"] = ai.id;
129
+ }
130
+ }
131
+ getFiles() {
132
+ return this.filesByName;
133
+ }
134
+ async startRandomSoloFight(leek_id) {
135
+ return this.getSoloOpponents(leek_id)
136
+ .then((opponents) => {
137
+ if (opponents.length == 0) {
138
+ console.error("Can't find opponent for " + leek_id);
139
+ return [null, -1];
140
+ }
141
+ const opponent = randomIn(opponents);
142
+ return this.startSoloFight(leek_id, opponent.id)
143
+ .then((fightId) => [opponent, fightId]);
144
+ });
145
+ }
146
+ async startRandomFarmerFight() {
147
+ return this.getFarmerOpponents()
148
+ .then((opponents) => {
149
+ if (opponents.length == 0) {
150
+ console.error("Can't find farmer opponents");
151
+ return [null, -1];
152
+ }
153
+ const opponent = randomIn(opponents);
154
+ return this.startFarmerFight(opponent.id)
155
+ .then((fightId) => [opponent, fightId]);
156
+ });
157
+ }
158
+ async startRandomTeamFight(leek_id) {
159
+ return this.getSoloOpponents(leek_id)
160
+ .then((opponents) => {
161
+ if (opponents.length == 0) {
162
+ console.error("Can't find opponent for " + leek_id);
163
+ return [null, -1];
164
+ }
165
+ const opponent = randomIn(opponents);
166
+ return this.startSoloFight(leek_id, opponent.id)
167
+ .then((fightId) => [opponent, fightId]);
168
+ });
169
+ }
170
+ async getCompleteFight(fight_id) {
171
+ const result = await this.getFight(fight_id);
172
+ if (result == null)
173
+ return;
174
+ if (result.status == 0) {
175
+ await this.sleep(5000);
176
+ return this.getCompleteFight(result.id);
177
+ }
178
+ await this.sleep(100);
179
+ return result;
180
+ }
181
+ async syncWith(path, watch, choice = "") {
182
+ this.leekSyncClient = new leek_sync_client_js_1.LeekSyncClient(this, path);
183
+ return this.leekSyncClient.start(watch, choice);
184
+ }
185
+ async createRoom(bossId, locked = false) {
186
+ if (this.farmer.fights == 0)
187
+ return "";
188
+ this.currentRoom = "";
189
+ await this.createBossRoom(bossId, locked, Object.keys(this.farmer.leeks).map(id => Number(id)));
190
+ while (this.currentRoom == "") {
191
+ await this.sleep(10);
192
+ }
193
+ return this.currentRoom;
194
+ }
195
+ async joinRoom(roomId) {
196
+ await this.joinBossRoom(roomId, Object.keys(this.farmer.leeks).map(id => Number(id)));
197
+ while (this.currentRoom == "") {
198
+ await this.sleep(10);
199
+ }
200
+ return this.currentRoom;
201
+ }
202
+ }
203
+ exports.default = NodeLeekClient;
package/package.json ADDED
@@ -0,0 +1,25 @@
1
+ {
2
+ "name": "node-leek",
3
+ "version": "1.0.0",
4
+ "description": "A library for interacting with LeekWars API.",
5
+ "main": "dist/node-leek-client/node-leek-client.js",
6
+ "types": "dist/node-leek-client/node-leek-client.d.ts",
7
+ "scripts": {
8
+ "build": "tsc",
9
+ "prepublish": "npm run build",
10
+ "test": "echo \"Error: no test specified\" && exit 1"
11
+ },
12
+ "keywords": ["leekwars", "api", "client"],
13
+ "author": "Portevent",
14
+ "license": "ISC",
15
+ "dependencies": {
16
+ "debounce": "^3.0.0",
17
+ "request": "^2.88.2",
18
+ "watcher": "^2.3.1"
19
+ },
20
+ "files": ["dist"],
21
+ "repository": {
22
+ "type": "git",
23
+ "url": "https://github.com/Portevent/node-leek"
24
+ }
25
+ }