@lgriffin/esi.ts 4.0.0 → 5.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 (343) hide show
  1. package/CHANGELOG.md +156 -0
  2. package/LICENSE +26 -26
  3. package/README.md +562 -557
  4. package/dist/EsiClient.d.ts +8 -2
  5. package/dist/EsiClient.d.ts.map +1 -1
  6. package/dist/EsiClient.js +9 -0
  7. package/dist/EsiClientBuilder.d.ts +4 -1
  8. package/dist/EsiClientBuilder.d.ts.map +1 -1
  9. package/dist/EsiClientBuilder.js +9 -0
  10. package/dist/clients/AccessListsClient.d.ts +15 -0
  11. package/dist/clients/AccessListsClient.d.ts.map +1 -0
  12. package/dist/clients/AccessListsClient.js +20 -0
  13. package/dist/clients/MercenaryClient.d.ts +20 -0
  14. package/dist/clients/MercenaryClient.d.ts.map +1 -0
  15. package/dist/clients/MercenaryClient.js +27 -0
  16. package/dist/clients/SkyhooksClient.d.ts +26 -0
  17. package/dist/clients/SkyhooksClient.d.ts.map +1 -0
  18. package/dist/clients/SkyhooksClient.js +35 -0
  19. package/dist/clients/SovereigntyClient.d.ts +4 -10
  20. package/dist/clients/SovereigntyClient.d.ts.map +1 -1
  21. package/dist/clients/SovereigntyClient.js +4 -12
  22. package/dist/clients/UniverseClient.d.ts +2 -2
  23. package/dist/clients/UniverseClient.d.ts.map +1 -1
  24. package/dist/clients/UniverseClient.js +3 -3
  25. package/dist/config/configManager.d.ts.map +1 -1
  26. package/dist/config/configManager.js +12 -6
  27. package/dist/config/jest/jest.setup.js +0 -1
  28. package/dist/core/ApiRequestHandler.d.ts.map +1 -1
  29. package/dist/core/ApiRequestHandler.js +6 -2
  30. package/dist/core/ClientRegistry.d.ts +6 -4
  31. package/dist/core/ClientRegistry.d.ts.map +1 -1
  32. package/dist/core/ClientRegistry.js +11 -2
  33. package/dist/core/circuitBreaker/CircuitBreaker.js +2 -2
  34. package/dist/core/constants.d.ts +3 -3
  35. package/dist/core/constants.js +2 -2
  36. package/dist/core/endpoints/accessListEndpoints.d.ts +9 -0
  37. package/dist/core/endpoints/accessListEndpoints.d.ts.map +1 -0
  38. package/dist/core/endpoints/accessListEndpoints.js +11 -0
  39. package/dist/core/endpoints/assetEndpoints.d.ts +4 -12
  40. package/dist/core/endpoints/assetEndpoints.d.ts.map +1 -1
  41. package/dist/core/endpoints/assetEndpoints.js +4 -4
  42. package/dist/core/endpoints/contactEndpoints.d.ts +1 -3
  43. package/dist/core/endpoints/contactEndpoints.d.ts.map +1 -1
  44. package/dist/core/endpoints/contactEndpoints.js +1 -1
  45. package/dist/core/endpoints/mercenaryEndpoints.d.ts +13 -0
  46. package/dist/core/endpoints/mercenaryEndpoints.d.ts.map +1 -0
  47. package/dist/core/endpoints/mercenaryEndpoints.js +15 -0
  48. package/dist/core/endpoints/skyhookEndpoints.d.ts +18 -0
  49. package/dist/core/endpoints/skyhookEndpoints.d.ts.map +1 -0
  50. package/dist/core/endpoints/skyhookEndpoints.js +20 -0
  51. package/dist/core/endpoints/sovereigntyEndpoints.d.ts +2 -7
  52. package/dist/core/endpoints/sovereigntyEndpoints.d.ts.map +1 -1
  53. package/dist/core/endpoints/sovereigntyEndpoints.js +2 -7
  54. package/dist/core/endpoints/universeEndpoints.d.ts +2 -6
  55. package/dist/core/endpoints/universeEndpoints.d.ts.map +1 -1
  56. package/dist/core/endpoints/universeEndpoints.js +2 -2
  57. package/dist/core/util/testHelpers.d.ts +0 -2
  58. package/dist/core/util/testHelpers.d.ts.map +1 -1
  59. package/dist/core/util/testHelpers.js +3 -19
  60. package/dist/core/util/validation.js +2 -2
  61. package/dist/index.d.ts +3 -0
  62. package/dist/index.d.ts.map +1 -1
  63. package/dist/index.js +8 -2
  64. package/dist/testing/TestDataFactory.d.ts +8 -2
  65. package/dist/testing/TestDataFactory.d.ts.map +1 -1
  66. package/dist/testing/TestDataFactory.js +86 -1
  67. package/dist/types/access-lists.d.ts +11 -0
  68. package/dist/types/access-lists.d.ts.map +1 -0
  69. package/dist/types/api-responses.d.ts +3 -0
  70. package/dist/types/api-responses.d.ts.map +1 -1
  71. package/dist/types/api-responses.js +3 -0
  72. package/dist/types/mercenary.d.ts +19 -0
  73. package/dist/types/mercenary.d.ts.map +1 -0
  74. package/dist/types/mercenary.js +2 -0
  75. package/dist/types/skyhooks.d.ts +27 -0
  76. package/dist/types/skyhooks.d.ts.map +1 -0
  77. package/dist/types/skyhooks.js +2 -0
  78. package/dist/types/sovereignty.d.ts +11 -9
  79. package/dist/types/sovereignty.d.ts.map +1 -1
  80. package/package.json +181 -156
  81. package/dist/api/alliances/getAllianceById.js +0 -17
  82. package/dist/api/alliances/getAllianceContactLabels.js +0 -13
  83. package/dist/api/alliances/getAllianceContacts.js +0 -13
  84. package/dist/api/alliances/getAllianceCorporations.js +0 -13
  85. package/dist/api/alliances/getAllianceIcons.js +0 -13
  86. package/dist/api/alliances/getAlliances.js +0 -13
  87. package/dist/api/assets/getCharacterAssets.js +0 -13
  88. package/dist/api/assets/getCorporationAssets.js +0 -13
  89. package/dist/api/assets/postCharacterAssetLocations.js +0 -13
  90. package/dist/api/assets/postCharacterAssetNames.js +0 -13
  91. package/dist/api/assets/postCorporationAssetLocations.js +0 -13
  92. package/dist/api/assets/postCorporationAssetNames.js +0 -13
  93. package/dist/api/bookmarks/getCharacterBookmarkFolders.js +0 -13
  94. package/dist/api/bookmarks/getCharacterBookmarks.js +0 -13
  95. package/dist/api/bookmarks/getCorporationBookmarkFolders.js +0 -13
  96. package/dist/api/bookmarks/getCorporationBookmarks.js +0 -13
  97. package/dist/api/calendar/getCalendarEventById.js +0 -13
  98. package/dist/api/calendar/getCalendarEvents.js +0 -13
  99. package/dist/api/calendar/getEventAttendees.js +0 -13
  100. package/dist/api/calendar/respondToCalendarEvent.js +0 -14
  101. package/dist/api/characters/getAgentsResearch.js +0 -13
  102. package/dist/api/characters/getBlueprints.js +0 -13
  103. package/dist/api/characters/getCharacterPublicInfo.js +0 -13
  104. package/dist/api/characters/getCharacterRoles.js +0 -13
  105. package/dist/api/characters/getCharacterStandings.js +0 -13
  106. package/dist/api/characters/getCharacterTitles.js +0 -13
  107. package/dist/api/characters/getContactNotifications.js +0 -13
  108. package/dist/api/characters/getCorporationHistory.js +0 -13
  109. package/dist/api/characters/getJumpFatigue.js +0 -13
  110. package/dist/api/characters/getMedals.js +0 -13
  111. package/dist/api/characters/getNotifications.js +0 -13
  112. package/dist/api/characters/getPortrait.js +0 -13
  113. package/dist/api/characters/postCSPAChargeCost.js +0 -13
  114. package/dist/api/characters/postCharacterAffiliations.js +0 -14
  115. package/dist/api/clones/getClones.js +0 -14
  116. package/dist/api/clones/getImplants.js +0 -14
  117. package/dist/api/clones/postJumpCloneActivation.js +0 -14
  118. package/dist/api/contacts/deleteCharacterContacts.js +0 -13
  119. package/dist/api/contacts/getAllianceContactLabels.js +0 -13
  120. package/dist/api/contacts/getAllianceContacts.js +0 -13
  121. package/dist/api/contacts/getCharacterContactLabels.js +0 -13
  122. package/dist/api/contacts/getCharacterContacts.js +0 -13
  123. package/dist/api/contacts/getCorporationContactLabels.js +0 -13
  124. package/dist/api/contacts/getCorporationContacts.js +0 -13
  125. package/dist/api/contacts/postCharacterContacts.js +0 -13
  126. package/dist/api/contacts/putCharacterContacts.js +0 -13
  127. package/dist/api/contracts/getCharacterContractBids.js +0 -13
  128. package/dist/api/contracts/getCharacterContractItems.js +0 -13
  129. package/dist/api/contracts/getCharacterContracts.js +0 -13
  130. package/dist/api/contracts/getCorporationContractBids.js +0 -13
  131. package/dist/api/contracts/getCorporationContractItems.js +0 -13
  132. package/dist/api/contracts/getCorporationContracts.js +0 -13
  133. package/dist/api/contracts/getPublicContractBids.js +0 -13
  134. package/dist/api/contracts/getPublicContractItems.js +0 -13
  135. package/dist/api/contracts/getPublicContracts.js +0 -13
  136. package/dist/api/corporations/getCorporationAllianceHistory.js +0 -13
  137. package/dist/api/corporations/getCorporationAlscLogs.js +0 -13
  138. package/dist/api/corporations/getCorporationBlueprints.js +0 -13
  139. package/dist/api/corporations/getCorporationDivisions.js +0 -13
  140. package/dist/api/corporations/getCorporationFacilities.js +0 -13
  141. package/dist/api/corporations/getCorporationIcon.js +0 -13
  142. package/dist/api/corporations/getCorporationInfo.js +0 -13
  143. package/dist/api/corporations/getCorporationIssuedMedals.js +0 -13
  144. package/dist/api/corporations/getCorporationMedals.js +0 -13
  145. package/dist/api/corporations/getCorporationMemberLimit.js +0 -13
  146. package/dist/api/corporations/getCorporationMemberRoles.js +0 -13
  147. package/dist/api/corporations/getCorporationMemberRolesHistory.js +0 -13
  148. package/dist/api/corporations/getCorporationMemberTracking.js +0 -13
  149. package/dist/api/corporations/getCorporationMembers.js +0 -13
  150. package/dist/api/corporations/getCorporationMembersTitles.js +0 -13
  151. package/dist/api/corporations/getCorporationProjects.js +0 -13
  152. package/dist/api/corporations/getCorporationShareholders.js +0 -13
  153. package/dist/api/corporations/getCorporationStandings.js +0 -13
  154. package/dist/api/corporations/getCorporationStarbaseDetail.js +0 -13
  155. package/dist/api/corporations/getCorporationStarbases.js +0 -13
  156. package/dist/api/corporations/getCorporationStructures.js +0 -13
  157. package/dist/api/corporations/getCorporationTitles.js +0 -13
  158. package/dist/api/corporations/getNpcCorporations.js +0 -13
  159. package/dist/api/dogma/getDogmaAttributeById.js +0 -13
  160. package/dist/api/dogma/getDogmaAttributes.js +0 -13
  161. package/dist/api/dogma/getDogmaDynamicItemAttributes.js +0 -13
  162. package/dist/api/dogma/getDogmaEffectById.js +0 -13
  163. package/dist/api/dogma/getDogmaEffects.js +0 -13
  164. package/dist/api/factions/getCharacterFactionWarfareStats.js +0 -13
  165. package/dist/api/factions/getCharacterLeaderboards.js +0 -13
  166. package/dist/api/factions/getCorporationFactionWarfareStats.js +0 -13
  167. package/dist/api/factions/getCorporationLeaderboards.js +0 -13
  168. package/dist/api/factions/getFactionLeaderboards.js +0 -13
  169. package/dist/api/factions/getFactionWarfareStats.js +0 -13
  170. package/dist/api/factions/getFactionWarfareSystems.js +0 -13
  171. package/dist/api/factions/getFactionWarfareWars.js +0 -13
  172. package/dist/api/fittings/deleteCharacterFitting.js +0 -13
  173. package/dist/api/fittings/getCharacterFittings.js +0 -13
  174. package/dist/api/fittings/postCharacterFittings.js +0 -13
  175. package/dist/api/fleets/deleteFleetMember.js +0 -13
  176. package/dist/api/fleets/deleteFleetSquad.js +0 -13
  177. package/dist/api/fleets/deleteFleetWing.js +0 -13
  178. package/dist/api/fleets/getCharacterFleetInfo.js +0 -13
  179. package/dist/api/fleets/getFleetInfo.js +0 -13
  180. package/dist/api/fleets/getFleetMembers.js +0 -13
  181. package/dist/api/fleets/getFleetWings.js +0 -13
  182. package/dist/api/fleets/postFleetInvitation.js +0 -13
  183. package/dist/api/fleets/postFleetSquad.js +0 -14
  184. package/dist/api/fleets/postFleetWing.js +0 -13
  185. package/dist/api/fleets/putFleetMember.js +0 -13
  186. package/dist/api/fleets/putFleetSquad.js +0 -13
  187. package/dist/api/fleets/putFleetWing.js +0 -14
  188. package/dist/api/fleets/updateFleet.js +0 -13
  189. package/dist/api/incursions/getIncursions.js +0 -13
  190. package/dist/api/industry/getCharacterIndustryJobs.js +0 -13
  191. package/dist/api/industry/getCharacterMiningLedger.js +0 -13
  192. package/dist/api/industry/getCorporationIndustryJobs.js +0 -13
  193. package/dist/api/industry/getCorporationMiningObserver.js +0 -13
  194. package/dist/api/industry/getCorporationMiningObservers.js +0 -13
  195. package/dist/api/industry/getIndustryFacilities.js +0 -13
  196. package/dist/api/industry/getIndustrySystems.js +0 -13
  197. package/dist/api/industry/getMoonExtractionTimers.js +0 -13
  198. package/dist/api/insurance/getInsurancePrices.js +0 -13
  199. package/dist/api/killmails/getCharacterRecentKillmails.js +0 -13
  200. package/dist/api/killmails/getCorporationRecentKillmails.js +0 -13
  201. package/dist/api/killmails/getKillmail.js +0 -13
  202. package/dist/api/location/getCharacterLocation.js +0 -13
  203. package/dist/api/location/getCharacterOnline.js +0 -13
  204. package/dist/api/location/getCharacterShip.js +0 -13
  205. package/dist/api/loyalty/getLoyaltyPoints.js +0 -13
  206. package/dist/api/loyalty/getLoyaltyStoreOffers.js +0 -13
  207. package/dist/api/mail/deleteCharacterMail.js +0 -13
  208. package/dist/api/mail/deleteCharacterMailLabel.js +0 -13
  209. package/dist/api/mail/deleteCharacterMailLabel.test.js +0 -21
  210. package/dist/api/mail/getCharacerMailingLists.test.js +0 -33
  211. package/dist/api/mail/getCharacterMail.js +0 -13
  212. package/dist/api/mail/getCharacterMailHeaders.js +0 -13
  213. package/dist/api/mail/getCharacterMailLabels.js +0 -13
  214. package/dist/api/mail/getCharacterMailingLists.js +0 -13
  215. package/dist/api/mail/postCharacterMail.js +0 -13
  216. package/dist/api/mail/postCharacterMailLabels.js +0 -13
  217. package/dist/api/mail/putCharacterMail.js +0 -13
  218. package/dist/api/market/getCharacterOrderHistory.js +0 -13
  219. package/dist/api/market/getCharacterOrders.js +0 -13
  220. package/dist/api/market/getCorporationOrderHistory.js +0 -13
  221. package/dist/api/market/getCorporationOrders.js +0 -13
  222. package/dist/api/market/getMarketGroupInformation.js +0 -13
  223. package/dist/api/market/getMarketGroups.js +0 -13
  224. package/dist/api/market/getMarketHistory.js +0 -13
  225. package/dist/api/market/getMarketOrders.js +0 -13
  226. package/dist/api/market/getMarketOrdersInStructure.js +0 -13
  227. package/dist/api/market/getMarketPrices.js +0 -13
  228. package/dist/api/market/getMarketTypes.js +0 -13
  229. package/dist/api/meta/getSwaggerJson.js +0 -13
  230. package/dist/api/meta/getSwaggerYaml.js +0 -37
  231. package/dist/api/opportunities/getCharacterOpportunities.js +0 -13
  232. package/dist/api/opportunities/getOpportunitiesGroupById.js +0 -13
  233. package/dist/api/opportunities/getOpportunitiesGroups.js +0 -13
  234. package/dist/api/opportunities/getOpportunitiesTaskById.js +0 -13
  235. package/dist/api/opportunities/getOpportunitiesTasks.js +0 -13
  236. package/dist/api/pi/getColonies.js +0 -13
  237. package/dist/api/pi/getColonyLayout.js +0 -13
  238. package/dist/api/pi/getCorporationCustomsOffices.js +0 -13
  239. package/dist/api/pi/getSchematicInformation.js +0 -13
  240. package/dist/api/route/getRoute.js +0 -13
  241. package/dist/api/search/getCharacterSearch.js +0 -13
  242. package/dist/api/skills/getCharacterAttributes.js +0 -13
  243. package/dist/api/skills/getCharacterSkillQueue.js +0 -13
  244. package/dist/api/skills/getCharacterSkills.js +0 -13
  245. package/dist/api/sovereignty/getSovereigntyCampaigns.js +0 -13
  246. package/dist/api/sovereignty/getSovereigntyMap.js +0 -13
  247. package/dist/api/sovereignty/getSovereigntyStructures.js +0 -13
  248. package/dist/api/status/getStatus.js +0 -13
  249. package/dist/api/ui/postAutopilotWaypoint.js +0 -13
  250. package/dist/api/ui/postOpenContractWindow.js +0 -13
  251. package/dist/api/ui/postOpenInformationWindow.js +0 -13
  252. package/dist/api/ui/postOpenMarketDetailsWindow.js +0 -13
  253. package/dist/api/ui/postOpenNewMailWindow.js +0 -13
  254. package/dist/api/universe/getAncestries.js +0 -13
  255. package/dist/api/universe/getAsteroidBeltInfo.js +0 -13
  256. package/dist/api/universe/getBloodlines.js +0 -13
  257. package/dist/api/universe/getConstellationById.js +0 -13
  258. package/dist/api/universe/getConstellations.js +0 -13
  259. package/dist/api/universe/getFactions.js +0 -13
  260. package/dist/api/universe/getGraphicById.js +0 -13
  261. package/dist/api/universe/getGraphics.js +0 -13
  262. package/dist/api/universe/getItemCategories.js +0 -13
  263. package/dist/api/universe/getItemCategoryById.js +0 -13
  264. package/dist/api/universe/getItemGroupById.js +0 -13
  265. package/dist/api/universe/getItemGroups.js +0 -13
  266. package/dist/api/universe/getMoonById.js +0 -13
  267. package/dist/api/universe/getPlanetById.js +0 -13
  268. package/dist/api/universe/getRaces.js +0 -13
  269. package/dist/api/universe/getRegionById.js +0 -13
  270. package/dist/api/universe/getRegions.js +0 -13
  271. package/dist/api/universe/getSchematicById.js +0 -13
  272. package/dist/api/universe/getStarById.js +0 -13
  273. package/dist/api/universe/getStargateById.js +0 -13
  274. package/dist/api/universe/getStationById.js +0 -13
  275. package/dist/api/universe/getStructureById.js +0 -13
  276. package/dist/api/universe/getStructures.js +0 -13
  277. package/dist/api/universe/getSystemById.js +0 -13
  278. package/dist/api/universe/getSystemJumps.js +0 -13
  279. package/dist/api/universe/getSystemKills.js +0 -13
  280. package/dist/api/universe/getSystems.js +0 -13
  281. package/dist/api/universe/getTypeById.js +0 -13
  282. package/dist/api/universe/getTypes.js +0 -13
  283. package/dist/api/universe/postBulkNamesToIds.js +0 -14
  284. package/dist/api/universe/postNamesAndCategories.js +0 -14
  285. package/dist/api/wallet/getCharacterWallet.js +0 -13
  286. package/dist/api/wallet/getCharacterWalletJournal.js +0 -13
  287. package/dist/api/wallet/getCharacterWalletTransactions.js +0 -13
  288. package/dist/api/wallet/getCorporationWalletJournal.js +0 -13
  289. package/dist/api/wallet/getCorporationWalletTransactions.js +0 -13
  290. package/dist/api/wallet/getCorporationWallets.js +0 -13
  291. package/dist/api/wars/getWarById.js +0 -13
  292. package/dist/api/wars/getWarKillmails.js +0 -13
  293. package/dist/api/wars/getWars.js +0 -13
  294. package/dist/builders/AllianceApiBuilder.js +0 -13
  295. package/dist/builders/AssetsApiBuilder.js +0 -13
  296. package/dist/builders/BookmarkApiBuilder.js +0 -13
  297. package/dist/builders/CalendarApiBuilder.js +0 -13
  298. package/dist/builders/CharacterApiBuilder.js +0 -13
  299. package/dist/builders/ClonesApiBuilder.js +0 -13
  300. package/dist/builders/ContactsApiBuilder.js +0 -13
  301. package/dist/builders/ContractsApiBuilder.js +0 -13
  302. package/dist/builders/CorporationsApiBuilder.js +0 -13
  303. package/dist/builders/DogmaApiBuilder.js +0 -13
  304. package/dist/builders/FactionApiBuilder.js +0 -13
  305. package/dist/builders/FittingsApiBuilder.js +0 -13
  306. package/dist/builders/FleetApiBuilder.js +0 -13
  307. package/dist/builders/IncursionsApiBuilder.js +0 -13
  308. package/dist/builders/IndustryApiBuilder.js +0 -13
  309. package/dist/builders/InsuranceApiBuilder.js +0 -13
  310. package/dist/builders/KillmailsBuilder.js +0 -13
  311. package/dist/builders/LocationApiBuilder.js +0 -13
  312. package/dist/builders/LoyaltyApiBuilder.js +0 -13
  313. package/dist/builders/MailApiBuilder.js +0 -13
  314. package/dist/builders/MarketApiBuilder.js +0 -13
  315. package/dist/builders/MetaApiBuilder.js +0 -13
  316. package/dist/builders/OpportunitiesApiBuilder.js +0 -13
  317. package/dist/builders/PiApiBuilder.js +0 -13
  318. package/dist/builders/RouteApiBuilder.js +0 -13
  319. package/dist/builders/SearchApiBuilder.js +0 -13
  320. package/dist/builders/SkillsApiBuilder.js +0 -13
  321. package/dist/builders/SovereigntyApiBuilder.js +0 -13
  322. package/dist/builders/StatusApiBuilder.js +0 -13
  323. package/dist/builders/UiApiBuilder.js +0 -13
  324. package/dist/builders/UniverseApiBuilder.js +0 -13
  325. package/dist/builders/WalletApiBuilder.js +0 -13
  326. package/dist/builders/WarsAPIBuilder.js +0 -13
  327. package/dist/clients/BookmarkClient.js +0 -28
  328. package/dist/clients/OpportunitiesClient.js +0 -33
  329. package/dist/config/constants.js +0 -11
  330. package/dist/core/ApiError.js +0 -11
  331. package/dist/core/container/Container.js +0 -145
  332. package/dist/core/errors/ApiError.js +0 -129
  333. package/dist/core/factory/ApiFactory.js +0 -170
  334. package/dist/core/logger/index.d.ts +0 -2
  335. package/dist/core/logger/index.d.ts.map +0 -1
  336. package/dist/core/logger/index.js +0 -8
  337. package/dist/core/util/file.js +0 -26
  338. package/dist/core/util/inputValidation.js +0 -9
  339. package/dist/core/util/network.js +0 -15
  340. package/dist/core/util/request.js +0 -21
  341. package/dist/testing/TestHelpers.js +0 -205
  342. package/dist/tsconfig.tsbuildinfo +0 -1
  343. /package/dist/{core/IAPIBuilder.js → types/access-lists.js} +0 -0
package/CHANGELOG.md ADDED
@@ -0,0 +1,156 @@
1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file.
4
+
5
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
+ ## [Unreleased]
9
+
10
+ ## [5.0.0] - 2026-06-26
11
+
12
+ ### Breaking Changes
13
+
14
+ - **Removed `SovereigntyClient.getSovereigntyMap()`** — sunset ESI endpoint; use `getSovereigntySystems()` instead
15
+ - **Removed `SovereigntyClient.getSovereigntyStructures()`** — sunset ESI endpoint; use `getSovereigntySystems()` instead
16
+
17
+ ### Added
18
+
19
+ - **Dependabot** — automated weekly dependency update PRs with grouped ESLint and testing ecosystems
20
+ - **CodeQL Analysis** — GitHub-native security scanning workflow
21
+ - **Commitlint** — conventional commit message validation via husky hook
22
+ - **Version consistency script** — `npm run validate:versions` checks `package.json` matches `constants.ts`
23
+ - **`npm run check:all`** — comprehensive validation including ESI endpoint and version checks
24
+ - Coverage and npm download badges in README
25
+ - `.editorconfig`, `.nvmrc`, `CONTRIBUTING.md`, `SECURITY.md`
26
+ - ClientRegistry test coverage for all 35 client types
27
+
28
+ ### Fixed
29
+
30
+ - **POST body format** for asset and contact endpoints — request body was incorrectly structured
31
+ - **POST body format** for `/universe/ids` and `/universe/names` — same issue
32
+ - **Circuit breaker** now treats HTTP 420/429 rate-limit responses as failures
33
+ - **configManager** uses `require.resolve` instead of `process.cwd()` fallback for reliable path resolution
34
+ - **User-Agent version** — ESI requests were sending `esi.ts/3.4.0` instead of current version
35
+ - **Compatibility date** — updated from `2025-12-16` to `2026-05-19` (Equinox)
36
+ - TypeScript badge in README updated from 5.0+ to 6.0+
37
+
38
+ ### Removed
39
+
40
+ - `src/TODO` — fully completed roadmap
41
+ - `jest.improved.config.cjs` — dead config matching zero test files
42
+ - `docs/` — generated TypeDoc output removed from git tracking (CI builds as artifact)
43
+ - Unused `getHeaders` test helper
44
+
45
+ ### Changed
46
+
47
+ - `package.json`: added `keywords`, `homepage`, `bugs` URLs, `files` includes README/LICENSE/CHANGELOG
48
+ - Moved `docs/architecture.md` to `guides/ARCHITECTURE.md`
49
+ - Updated `guides/TESTING.md` and `guides/DOCUMENTATION.md` to current state
50
+ - Test coverage raised from 75% to 91%+
51
+
52
+ ### Dependencies
53
+
54
+ - `@typescript-eslint/eslint-plugin`: 7.18.0 → 8.x
55
+ - `@typescript-eslint/parser`: 7.18.0 → 8.x
56
+ - `@types/node`: 18.x → 26.x
57
+ - `@commitlint/cli`: 19.x → 21.x
58
+ - `eslint-config-prettier`: 9.x → 10.x
59
+ - `lint-staged`: 16.x → 17.x
60
+ - `jest-junit`: 16.x → 17.x
61
+ - GitHub Actions: checkout v4→v7, setup-node v4→v6, upload-artifact v4→v7, codeql-action v3→v4, gh-pages v3→v4, action-gh-release v1→v3
62
+
63
+ ## [4.1.1] - 2026-06-08
64
+
65
+ ### Changed
66
+
67
+ - **TypeScript 5.9 → 6.0** — upgraded to TypeScript 6.0.3, the last version before the Go-based TS7 compiler
68
+ - `tsconfig.json`: added explicit `moduleResolution: "bundler"` (TS6 changed the default from `node` to `bundler`)
69
+ - `tsconfig.json`: added explicit `rootDir: "./src"` (TS6 requires this when emitting)
70
+ - `tsconfig.json`: removed `esModuleInterop: true` (always-on in TS6)
71
+
72
+ ## [4.1.0] - 2026-06-08
73
+
74
+ ### Added
75
+
76
+ - **Equinox ESI compliance** — new endpoints and types for the [Equinox expansion](https://developers.eveonline.com/blog/equinox-on-esi-structures-sovereignty-and-access-lists) (compatibility date 2026-05-19)
77
+ - **`SovereigntyClient.getSovereigntySystems()`** — combined sovereignty systems route with separate ADM indices (`military_index`, `industry_index`, `strategic_index`), occupancy data, and anchored structures in a single response
78
+ - **`SkyhooksClient`** — new domain client with `getSovereigntyHubs()`, `getOrbitalSkyhooks()`, and `getRaidableSkyhooks()` endpoints for Upwell sovereignty structures
79
+ - **`MercenaryClient`** — new domain client with `getMercenaryDens()` and `getMercenaryTacticalOperations()` endpoints for mercenary content
80
+ - **`AccessListsClient`** — new domain client with `getAccessList(id)` for reading access list (ACL) contents including character, corporation, and alliance entries
81
+ - `TestDataFactory` methods for all new Equinox types: `createSovereigntySystem()`, `createSovereigntyHub()`, `createOrbitalSkyhook()`, `createRaidableSkyhook()`, `createMercenaryDen()`, `createMercenaryTacticalOperation()`, `createAccessListEntry()`
82
+ - TDD and BDD test coverage for all new endpoints
83
+
84
+ ### Changed
85
+
86
+ - `SovereigntyClient.getSovereigntyMap()` and `getSovereigntyStructures()` marked as deprecated — use `getSovereigntySystems()` instead
87
+ - Domain client count increased from 32 to 35
88
+
89
+ ### Dependencies
90
+
91
+ - `ts-jest`: 29.4.9 → 29.4.11
92
+ - `eslint-plugin-prettier`: 5.5.5 → 5.5.6
93
+
94
+ ## [4.0.0] - 2026-05-15
95
+
96
+ ### Breaking Changes
97
+
98
+ - **Removed `RateLimiter.getInstance()` singleton** - Create instances with `new RateLimiter()` instead
99
+ - **Removed global cache/circuit breaker functions** - `initializeETagCache()`, `getETagCache()`, `resetETagCache()`, `initializeCircuitBreaker()`, `getCircuitBreaker()`, `resetCircuitBreaker()` are no longer exported from `ApiRequestHandler`
100
+ - Each `EsiClient` and `ApiClientBuilder` now creates its own `RateLimiter`, `ETagCacheManager`, and `CircuitBreaker` instances
101
+
102
+ ### Added
103
+
104
+ - **`BaseEsiClient` base class** — eliminates ~650 lines of repeated constructor/field/`withMetadata()` boilerplate across all 33 domain clients
105
+ - **`RequestDeduplicator`** — coalesces concurrent identical GET requests into a single in-flight fetch, sharing the result across all callers (enabled by default; disable with `enableRequestDeduplication: false`)
106
+ - **`EsiDiagnostics` API** — `client.diagnostics` accessor for cache/circuit-breaker stats, moved out of the main `EsiClient` API surface
107
+ - **`fetchPages()` async generator** — memory-efficient page-by-page iteration over paginated ESI responses
108
+ - **Request timeouts** — `config.timeout` now wired to `AbortController` (default 30s); previously the field existed but was never connected to `fetch()` calls
109
+ - **`EsiError` retry helpers** — `isTimeout()`, `retryable` getter, and `isRetryable()` guard for smarter consumer retry logic
110
+ - **`RateLimiterConfig`** — `minDelayMs` and `decelerationThreshold` exposed via `EsiClientConfig` for consumer-tunable rate limiting
111
+ - TypeScript declaration files (`.d.ts`) now emitted with builds
112
+ - `exports` field in `package.json` for modern Node.js module resolution
113
+ - `engines` field specifying Node.js >= 18.0.0
114
+ - `publishConfig` with public access for scoped package
115
+ - `RateLimiter`, `ETagCacheManager`, and `CircuitBreaker` classes exported from main index
116
+ - `ApiClientBuilder.setRateLimiter()`, `.setCache()`, `.setCircuitBreaker()` builder methods
117
+ - `validateBaseUrl()` for SSRF protection — validates ESI host allowlist and HTTPS
118
+ - `unsafeAllowCustomHost` config option to bypass base URL validation
119
+ - URL sanitization in `EsiError` — sensitive query params (`token`, `access_token`, `api_key`) are redacted
120
+ - Path parameters encoded with `encodeURIComponent()` for defense-in-depth
121
+ - URL assertions in all client unit tests — every test now verifies the correct endpoint URL
122
+ - Endpoint definition contract tests — 1800+ tests validating path templates, params, methods
123
+ - Test coverage for `RequestDeduplicator`, `EsiDiagnostics`, `AsyncPaginationIterator`, and extended `EsiError` tests
124
+ - `CHANGELOG.md` following Keep a Changelog format
125
+ - Changelog validation step in release workflow
126
+
127
+ ### Fixed
128
+
129
+ - `.d.ts` files not generated during build (`declaration: true` added to `tsconfig.json`)
130
+ - Release pipeline CNAME placeholder removed from GitHub Pages deployment
131
+ - `ContractsClient.ts` test file renamed to `.test.ts` so Jest actually runs it
132
+
133
+ ### Changed
134
+
135
+ - `RateLimiter` constructor is now public
136
+ - Cache, rate limiter, and circuit breaker are instance-based per client (no global shared state)
137
+ - `ApiClientBuilder.build()` auto-creates a `RateLimiter` if none was explicitly set
138
+ - `api-responses.ts` (1366 lines) split into 29 domain-specific type files with barrel re-export for backward compatibility
139
+ - `RateLimiter` uses `logWarn` instead of `console.warn` for consistent observability
140
+ - Reduced allocations and deduplicated fetch/sleep logic across core modules
141
+
142
+ ## [3.4.0] - 2026-04-29
143
+
144
+ ### Added
145
+
146
+ - ESI response header best practices documentation
147
+ - Dogma test coverage (10 TDD + 9 BDD tests)
148
+ - Gated authenticated integration tests (32 tests across 14 endpoint groups)
149
+ - EVE SSO token creator for local integration testing
150
+ - Search endpoint `categories` query parameter
151
+
152
+ ### Fixed
153
+
154
+ - 3 industry endpoint paths (`corporation` -> `corporations`) for mining routes
155
+ - Pagination middleware bypass: pages 2+ now route through request pipeline
156
+ - Consolidated duplicate alliance contact endpoints
package/LICENSE CHANGED
@@ -1,26 +1,26 @@
1
- GNU GENERAL PUBLIC LICENSE
2
- Version 3, 29 June 2007
3
-
4
- Copyright (C) 2024 lgriffin
5
-
6
- This program is free software: you can redistribute it and/or modify
7
- it under the terms of the GNU General Public License as published by
8
- the Free Software Foundation, either version 3 of the License, or
9
- (at your option) any later version.
10
-
11
- This program is distributed in the hope that it will be useful,
12
- but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
- GNU General Public License for more details.
15
-
16
- You should have received a copy of the GNU General Public License
17
- along with this program. If not, see <https://www.gnu.org/licenses/>.
18
-
19
- ---
20
-
21
- EVE Online and the EVE logo are the registered trademarks of CCP hf. All rights are reserved worldwide.
22
- All other trademarks are the property of their respective owners.
23
- EVE Online, the EVE logo, EVE and all associated logos and designs are the intellectual property of CCP hf.
24
- All artwork, screenshots, characters, vehicles, storylines, world facts or other recognizable features of the intellectual property relating to these trademarks are likewise the intellectual property of CCP hf.
25
-
26
- This software is not affiliated with or endorsed by CCP hf.
1
+ GNU GENERAL PUBLIC LICENSE
2
+ Version 3, 29 June 2007
3
+
4
+ Copyright (C) 2024 lgriffin
5
+
6
+ This program is free software: you can redistribute it and/or modify
7
+ it under the terms of the GNU General Public License as published by
8
+ the Free Software Foundation, either version 3 of the License, or
9
+ (at your option) any later version.
10
+
11
+ This program is distributed in the hope that it will be useful,
12
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
+ GNU General Public License for more details.
15
+
16
+ You should have received a copy of the GNU General Public License
17
+ along with this program. If not, see <https://www.gnu.org/licenses/>.
18
+
19
+ ---
20
+
21
+ EVE Online and the EVE logo are the registered trademarks of CCP hf. All rights are reserved worldwide.
22
+ All other trademarks are the property of their respective owners.
23
+ EVE Online, the EVE logo, EVE and all associated logos and designs are the intellectual property of CCP hf.
24
+ All artwork, screenshots, characters, vehicles, storylines, world facts or other recognizable features of the intellectual property relating to these trademarks are likewise the intellectual property of CCP hf.
25
+
26
+ This software is not affiliated with or endorsed by CCP hf.