@lgriffin/esi.ts 7.4.0 → 9.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 (348) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/README.md +100 -24
  3. package/dist/EsiClient.d.ts +3 -0
  4. package/dist/EsiClient.d.ts.map +1 -1
  5. package/dist/EsiClientBuilder.d.ts +1 -0
  6. package/dist/EsiClientBuilder.d.ts.map +1 -1
  7. package/dist/clients/AllianceClient.d.ts +3 -0
  8. package/dist/clients/AllianceClient.d.ts.map +1 -1
  9. package/dist/clients/BaseEsiClient.d.ts +1 -1
  10. package/dist/clients/BaseEsiClient.d.ts.map +1 -1
  11. package/dist/clients/CalendarClient.d.ts +3 -0
  12. package/dist/clients/CalendarClient.d.ts.map +1 -1
  13. package/dist/clients/CharacterClient.d.ts +10 -2
  14. package/dist/clients/CharacterClient.d.ts.map +1 -1
  15. package/dist/clients/ClonesClient.d.ts +2 -0
  16. package/dist/clients/ClonesClient.d.ts.map +1 -1
  17. package/dist/clients/ContactsClient.d.ts +7 -0
  18. package/dist/clients/ContactsClient.d.ts.map +1 -1
  19. package/dist/clients/CorporationsClient.d.ts +18 -0
  20. package/dist/clients/CorporationsClient.d.ts.map +1 -1
  21. package/dist/clients/FittingsClient.d.ts +2 -0
  22. package/dist/clients/FittingsClient.d.ts.map +1 -1
  23. package/dist/clients/FleetClient.d.ts +3 -0
  24. package/dist/clients/FleetClient.d.ts.map +1 -1
  25. package/dist/clients/IndustryClient.d.ts +9 -0
  26. package/dist/clients/IndustryClient.d.ts.map +1 -1
  27. package/dist/clients/LoyaltyClient.d.ts +3 -0
  28. package/dist/clients/LoyaltyClient.d.ts.map +1 -1
  29. package/dist/clients/MailClient.d.ts +6 -0
  30. package/dist/clients/MailClient.d.ts.map +1 -1
  31. package/dist/clients/MarketClient.d.ts +13 -22
  32. package/dist/clients/MarketClient.d.ts.map +1 -1
  33. package/dist/clients/PiClient.d.ts +3 -0
  34. package/dist/clients/PiClient.d.ts.map +1 -1
  35. package/dist/clients/SkillsClient.d.ts +2 -0
  36. package/dist/clients/SkillsClient.d.ts.map +1 -1
  37. package/dist/clients/WalletClient.d.ts +1 -0
  38. package/dist/clients/WalletClient.d.ts.map +1 -1
  39. package/dist/clients/WarsClient.d.ts +3 -0
  40. package/dist/clients/WarsClient.d.ts.map +1 -1
  41. package/dist/config/jest/globalSetup.d.ts.map +1 -1
  42. package/dist/config/jest/globalTeardown.d.ts.map +1 -1
  43. package/dist/core/ApiClient.d.ts +14 -6
  44. package/dist/core/ApiClient.d.ts.map +1 -1
  45. package/dist/core/ApiRequestHandler.d.ts +3 -11
  46. package/dist/core/ApiRequestHandler.d.ts.map +1 -1
  47. package/dist/core/IDeduplicator.d.ts +6 -0
  48. package/dist/core/IDeduplicator.d.ts.map +1 -0
  49. package/dist/core/IRetryStrategy.d.ts +5 -0
  50. package/dist/core/IRetryStrategy.d.ts.map +1 -0
  51. package/dist/core/RequestDeduplicator.d.ts +2 -1
  52. package/dist/core/RequestDeduplicator.d.ts.map +1 -1
  53. package/dist/core/RetryStrategy.d.ts +19 -0
  54. package/dist/core/RetryStrategy.d.ts.map +1 -0
  55. package/dist/core/circuitBreaker/CircuitBreaker.d.ts +11 -1
  56. package/dist/core/circuitBreaker/CircuitBreaker.d.ts.map +1 -1
  57. package/dist/core/circuitBreaker/ICircuitBreaker.d.ts +23 -0
  58. package/dist/core/circuitBreaker/ICircuitBreaker.d.ts.map +1 -0
  59. package/dist/core/configureApiClient.d.ts +18 -0
  60. package/dist/core/configureApiClient.d.ts.map +1 -0
  61. package/dist/core/endpoints/EndpointDefinition.d.ts +2 -0
  62. package/dist/core/endpoints/EndpointDefinition.d.ts.map +1 -1
  63. package/dist/core/endpoints/calendarEndpoints.d.ts +1 -1
  64. package/dist/core/endpoints/characterEndpoints.d.ts +3 -3
  65. package/dist/core/endpoints/contactEndpoints.d.ts +7 -3
  66. package/dist/core/endpoints/contactEndpoints.d.ts.map +1 -1
  67. package/dist/core/endpoints/corporationEndpoints.d.ts +4 -1
  68. package/dist/core/endpoints/corporationEndpoints.d.ts.map +1 -1
  69. package/dist/core/endpoints/createClient.d.ts +18 -1
  70. package/dist/core/endpoints/createClient.d.ts.map +1 -1
  71. package/dist/core/endpoints/dogmaEndpoints.d.ts +17 -0
  72. package/dist/core/endpoints/dogmaEndpoints.d.ts.map +1 -1
  73. package/dist/core/endpoints/esi-scopes.generated.d.ts +1 -1
  74. package/dist/core/endpoints/esi-scopes.generated.d.ts.map +1 -1
  75. package/dist/core/endpoints/fleetEndpoints.d.ts +5 -0
  76. package/dist/core/endpoints/fleetEndpoints.d.ts.map +1 -1
  77. package/dist/core/endpoints/mailEndpoints.d.ts +13 -0
  78. package/dist/core/endpoints/mailEndpoints.d.ts.map +1 -1
  79. package/dist/core/endpoints/marketEndpoints.d.ts +29 -48
  80. package/dist/core/endpoints/marketEndpoints.d.ts.map +1 -1
  81. package/dist/core/endpoints/piEndpoints.d.ts +3 -0
  82. package/dist/core/endpoints/piEndpoints.d.ts.map +1 -1
  83. package/dist/core/endpoints/universeEndpoints.d.ts +13 -2
  84. package/dist/core/endpoints/universeEndpoints.d.ts.map +1 -1
  85. package/dist/core/endpoints/walletEndpoints.d.ts +4 -0
  86. package/dist/core/endpoints/walletEndpoints.d.ts.map +1 -1
  87. package/dist/core/logger/logger.d.ts +2 -1
  88. package/dist/core/logger/logger.d.ts.map +1 -1
  89. package/dist/core/pagination/AsyncPaginationIterator.d.ts +4 -1
  90. package/dist/core/pagination/AsyncPaginationIterator.d.ts.map +1 -1
  91. package/dist/core/pagination/CursorPaginationHandler.d.ts +15 -6
  92. package/dist/core/pagination/CursorPaginationHandler.d.ts.map +1 -1
  93. package/dist/core/pagination/PaginationHandler.d.ts +7 -6
  94. package/dist/core/pagination/PaginationHandler.d.ts.map +1 -1
  95. package/dist/core/rateLimiter/RateLimiter.d.ts +8 -2
  96. package/dist/core/rateLimiter/RateLimiter.d.ts.map +1 -1
  97. package/dist/core/requestPipeline/cachePolicy.d.ts +31 -0
  98. package/dist/core/requestPipeline/cachePolicy.d.ts.map +1 -0
  99. package/dist/core/requestPipeline/dependencies.d.ts +10 -0
  100. package/dist/core/requestPipeline/dependencies.d.ts.map +1 -0
  101. package/dist/core/requestPipeline/fetchExecution.d.ts +28 -0
  102. package/dist/core/requestPipeline/fetchExecution.d.ts.map +1 -0
  103. package/dist/core/requestPipeline/headers.d.ts +11 -0
  104. package/dist/core/requestPipeline/headers.d.ts.map +1 -0
  105. package/dist/core/requestPipeline/index.d.ts +10 -0
  106. package/dist/core/requestPipeline/index.d.ts.map +1 -0
  107. package/dist/core/requestPipeline/middlewareBridge.d.ts +15 -0
  108. package/dist/core/requestPipeline/middlewareBridge.d.ts.map +1 -0
  109. package/dist/core/requestPipeline/paginationOrchestration.d.ts +15 -0
  110. package/dist/core/requestPipeline/paginationOrchestration.d.ts.map +1 -0
  111. package/dist/core/requestPipeline/statusHandling.d.ts +18 -0
  112. package/dist/core/requestPipeline/statusHandling.d.ts.map +1 -0
  113. package/dist/core/util/error.d.ts +6 -1
  114. package/dist/core/util/error.d.ts.map +1 -1
  115. package/dist/errors.d.ts +4 -0
  116. package/dist/errors.d.ts.map +1 -0
  117. package/dist/errors.js +196 -0
  118. package/dist/errors.js.map +1 -0
  119. package/dist/errors.mjs +146 -0
  120. package/dist/errors.mjs.map +1 -0
  121. package/dist/index.d.ts +9 -2
  122. package/dist/index.d.ts.map +1 -1
  123. package/dist/index.js +9937 -176
  124. package/dist/index.js.map +1 -0
  125. package/dist/index.mjs +9834 -0
  126. package/dist/index.mjs.map +1 -0
  127. package/dist/schemas/calendar.d.ts +1 -1
  128. package/dist/schemas/character.d.ts +1 -10
  129. package/dist/schemas/character.d.ts.map +1 -1
  130. package/dist/schemas/common.d.ts +9 -0
  131. package/dist/schemas/common.d.ts.map +1 -1
  132. package/dist/schemas/contacts.d.ts +2 -1
  133. package/dist/schemas/contacts.d.ts.map +1 -1
  134. package/dist/schemas/corporation.d.ts +4 -9
  135. package/dist/schemas/corporation.d.ts.map +1 -1
  136. package/dist/schemas/dogma.d.ts +17 -0
  137. package/dist/schemas/dogma.d.ts.map +1 -1
  138. package/dist/schemas/fleet.d.ts +1 -0
  139. package/dist/schemas/fleet.d.ts.map +1 -1
  140. package/dist/schemas/index.js +2085 -46
  141. package/dist/schemas/index.js.map +1 -0
  142. package/dist/schemas/index.mjs +1914 -0
  143. package/dist/schemas/index.mjs.map +1 -0
  144. package/dist/schemas/market.d.ts +91 -4
  145. package/dist/schemas/market.d.ts.map +1 -1
  146. package/dist/schemas/pi.d.ts +3 -0
  147. package/dist/schemas/pi.d.ts.map +1 -1
  148. package/dist/schemas/sovereignty.d.ts +2 -0
  149. package/dist/schemas/sovereignty.d.ts.map +1 -1
  150. package/dist/schemas/universe.d.ts +11 -2
  151. package/dist/schemas/universe.d.ts.map +1 -1
  152. package/dist/schemas/wallet.d.ts +2 -0
  153. package/dist/schemas/wallet.d.ts.map +1 -1
  154. package/dist/testing/TestDataFactory.d.ts.map +1 -1
  155. package/dist/testing/index.d.ts +2 -0
  156. package/dist/testing/index.d.ts.map +1 -0
  157. package/dist/testing/index.js +935 -0
  158. package/dist/testing/index.js.map +1 -0
  159. package/dist/testing/index.mjs +898 -0
  160. package/dist/testing/index.mjs.map +1 -0
  161. package/dist/types/character.d.ts +2 -1
  162. package/dist/types/character.d.ts.map +1 -1
  163. package/dist/types/generated/esi-spec.generated.d.ts +3 -3
  164. package/dist/types/generated/esi-spec.generated.d.ts.map +1 -1
  165. package/dist/types/generated/spec-alignment.check.d.ts +9 -0
  166. package/dist/types/generated/spec-alignment.check.d.ts.map +1 -1
  167. package/dist/types/market.d.ts +7 -1
  168. package/dist/types/market.d.ts.map +1 -1
  169. package/package.json +33 -6
  170. package/dist/EsiClient.js +0 -251
  171. package/dist/EsiClientBuilder.js +0 -217
  172. package/dist/clients/AccessListsClient.js +0 -20
  173. package/dist/clients/AllianceClient.js +0 -72
  174. package/dist/clients/AssetsClient.js +0 -81
  175. package/dist/clients/BaseEsiClient.js +0 -40
  176. package/dist/clients/CalendarClient.js +0 -54
  177. package/dist/clients/CharacterClient.js +0 -149
  178. package/dist/clients/ClonesClient.js +0 -31
  179. package/dist/clients/ContactsClient.js +0 -104
  180. package/dist/clients/ContractsClient.js +0 -111
  181. package/dist/clients/CorporationsClient.js +0 -227
  182. package/dist/clients/DogmaClient.js +0 -55
  183. package/dist/clients/FactionClient.js +0 -79
  184. package/dist/clients/FittingsClient.js +0 -42
  185. package/dist/clients/FleetClient.js +0 -162
  186. package/dist/clients/FreelanceJobsClient.js +0 -76
  187. package/dist/clients/IncursionsClient.js +0 -19
  188. package/dist/clients/IndustryClient.js +0 -88
  189. package/dist/clients/InsuranceClient.js +0 -19
  190. package/dist/clients/KillmailsClient.js +0 -47
  191. package/dist/clients/LocationClient.js +0 -41
  192. package/dist/clients/LoyaltyClient.js +0 -30
  193. package/dist/clients/MailClient.js +0 -108
  194. package/dist/clients/MarketClient.js +0 -131
  195. package/dist/clients/MercenaryClient.js +0 -27
  196. package/dist/clients/MetaClient.js +0 -56
  197. package/dist/clients/PiClient.js +0 -51
  198. package/dist/clients/RouteClient.js +0 -24
  199. package/dist/clients/SearchClient.js +0 -22
  200. package/dist/clients/SkillsClient.js +0 -41
  201. package/dist/clients/SkyhooksClient.js +0 -35
  202. package/dist/clients/SovereigntyClient.js +0 -27
  203. package/dist/clients/StatusClient.js +0 -19
  204. package/dist/clients/UiClient.js +0 -58
  205. package/dist/clients/UniverseClient.js +0 -277
  206. package/dist/clients/WalletClient.js +0 -82
  207. package/dist/clients/WarsClient.js +0 -37
  208. package/dist/config/configManager.js +0 -47
  209. package/dist/config/jest/globalSetup.js +0 -7
  210. package/dist/config/jest/globalTeardown.js +0 -7
  211. package/dist/config/jest/jest.setup.js +0 -29
  212. package/dist/core/ApiClient.js +0 -123
  213. package/dist/core/ApiClientBuilder.js +0 -54
  214. package/dist/core/ApiRequestHandler.js +0 -444
  215. package/dist/core/BatchRequestHandler.js +0 -66
  216. package/dist/core/ClientRegistry.js +0 -116
  217. package/dist/core/EsiDiagnostics.js +0 -47
  218. package/dist/core/RequestDeduplicator.js +0 -26
  219. package/dist/core/cache/ETagCacheManager.js +0 -184
  220. package/dist/core/cache/ICache.js +0 -2
  221. package/dist/core/circuitBreaker/CircuitBreaker.js +0 -156
  222. package/dist/core/constants.js +0 -7
  223. package/dist/core/endpoints/EndpointDefinition.js +0 -2
  224. package/dist/core/endpoints/accessListEndpoints.js +0 -13
  225. package/dist/core/endpoints/allianceEndpoints.js +0 -34
  226. package/dist/core/endpoints/assetEndpoints.js +0 -51
  227. package/dist/core/endpoints/buildEndpointPath.js +0 -44
  228. package/dist/core/endpoints/calendarEndpoints.js +0 -35
  229. package/dist/core/endpoints/characterEndpoints.js +0 -104
  230. package/dist/core/endpoints/cloneEndpoints.js +0 -21
  231. package/dist/core/endpoints/contactEndpoints.js +0 -72
  232. package/dist/core/endpoints/contractEndpoints.js +0 -70
  233. package/dist/core/endpoints/corporationEndpoints.js +0 -161
  234. package/dist/core/endpoints/createClient.js +0 -175
  235. package/dist/core/endpoints/dogmaEndpoints.js +0 -40
  236. package/dist/core/endpoints/esi-cache-ttls.generated.js +0 -133
  237. package/dist/core/endpoints/esi-rate-limit-groups.generated.js +0 -153
  238. package/dist/core/endpoints/esi-scopes.generated.js +0 -135
  239. package/dist/core/endpoints/factionEndpoints.js +0 -57
  240. package/dist/core/endpoints/fittingEndpoints.js +0 -27
  241. package/dist/core/endpoints/fleetEndpoints.js +0 -101
  242. package/dist/core/endpoints/freelanceJobsEndpoints.js +0 -51
  243. package/dist/core/endpoints/incursionEndpoints.js +0 -13
  244. package/dist/core/endpoints/industryEndpoints.js +0 -61
  245. package/dist/core/endpoints/insuranceEndpoints.js +0 -13
  246. package/dist/core/endpoints/killmailEndpoints.js +0 -28
  247. package/dist/core/endpoints/locationEndpoints.js +0 -27
  248. package/dist/core/endpoints/loyaltyEndpoints.js +0 -21
  249. package/dist/core/endpoints/mailEndpoints.js +0 -68
  250. package/dist/core/endpoints/marketEndpoints.js +0 -84
  251. package/dist/core/endpoints/mercenaryEndpoints.js +0 -19
  252. package/dist/core/endpoints/metaEndpoints.js +0 -12
  253. package/dist/core/endpoints/piEndpoints.js +0 -36
  254. package/dist/core/endpoints/routeEndpoints.js +0 -14
  255. package/dist/core/endpoints/searchEndpoints.js +0 -14
  256. package/dist/core/endpoints/skillEndpoints.js +0 -29
  257. package/dist/core/endpoints/skyhookEndpoints.js +0 -25
  258. package/dist/core/endpoints/sovereigntyEndpoints.js +0 -19
  259. package/dist/core/endpoints/statusEndpoints.js +0 -12
  260. package/dist/core/endpoints/uiEndpoints.js +0 -39
  261. package/dist/core/endpoints/universeEndpoints.js +0 -210
  262. package/dist/core/endpoints/walletEndpoints.js +0 -50
  263. package/dist/core/endpoints/warEndpoints.js +0 -28
  264. package/dist/core/logger/ILogger.js +0 -2
  265. package/dist/core/logger/logger.js +0 -16
  266. package/dist/core/logger/loggerUtil.js +0 -30
  267. package/dist/core/middleware/Middleware.js +0 -42
  268. package/dist/core/pagination/AsyncPaginationIterator.js +0 -27
  269. package/dist/core/pagination/CursorPaginationHandler.js +0 -148
  270. package/dist/core/pagination/PaginationHandler.js +0 -115
  271. package/dist/core/rateLimiter/IRateLimiter.js +0 -2
  272. package/dist/core/rateLimiter/RateLimiter.js +0 -307
  273. package/dist/core/util/error.js +0 -122
  274. package/dist/core/util/headersUtil.js +0 -37
  275. package/dist/core/util/retry.js +0 -9
  276. package/dist/core/util/sleep.js +0 -6
  277. package/dist/core/util/stringUtil.js +0 -6
  278. package/dist/core/util/testHelpers.js +0 -9
  279. package/dist/core/util/validation.js +0 -52
  280. package/dist/schemas/access-lists.js +0 -14
  281. package/dist/schemas/alliance.js +0 -28
  282. package/dist/schemas/assets.js +0 -26
  283. package/dist/schemas/calendar.js +0 -43
  284. package/dist/schemas/character.js +0 -122
  285. package/dist/schemas/clones.js +0 -21
  286. package/dist/schemas/common.js +0 -34
  287. package/dist/schemas/contacts.js +0 -15
  288. package/dist/schemas/contracts.js +0 -58
  289. package/dist/schemas/corporation.js +0 -192
  290. package/dist/schemas/dogma.js +0 -42
  291. package/dist/schemas/faction-warfare.js +0 -92
  292. package/dist/schemas/fittings.js +0 -15
  293. package/dist/schemas/fleet.js +0 -48
  294. package/dist/schemas/freelance-jobs.js +0 -99
  295. package/dist/schemas/incursions.js +0 -14
  296. package/dist/schemas/industry.js +0 -75
  297. package/dist/schemas/insurance.js +0 -12
  298. package/dist/schemas/killmails.js +0 -42
  299. package/dist/schemas/location.js +0 -20
  300. package/dist/schemas/loyalty.js +0 -20
  301. package/dist/schemas/mail.js +0 -38
  302. package/dist/schemas/market.js +0 -39
  303. package/dist/schemas/mercenary.js +0 -22
  304. package/dist/schemas/pi.js +0 -85
  305. package/dist/schemas/skills.js +0 -30
  306. package/dist/schemas/skyhooks.js +0 -30
  307. package/dist/schemas/sovereignty.js +0 -70
  308. package/dist/schemas/status.js +0 -10
  309. package/dist/schemas/universe.js +0 -245
  310. package/dist/schemas/wallet.js +0 -29
  311. package/dist/schemas/wars.js +0 -31
  312. package/dist/testing/TestDataFactory.js +0 -823
  313. package/dist/types/access-lists.js +0 -2
  314. package/dist/types/alliance.js +0 -2
  315. package/dist/types/api-responses.js +0 -73
  316. package/dist/types/assets.js +0 -2
  317. package/dist/types/branded.js +0 -6
  318. package/dist/types/calendar.js +0 -2
  319. package/dist/types/character.js +0 -2
  320. package/dist/types/clones.js +0 -2
  321. package/dist/types/common.js +0 -2
  322. package/dist/types/contacts.js +0 -2
  323. package/dist/types/contracts.js +0 -2
  324. package/dist/types/corporation.js +0 -2
  325. package/dist/types/dogma.js +0 -2
  326. package/dist/types/faction-warfare.js +0 -2
  327. package/dist/types/fittings.js +0 -2
  328. package/dist/types/fleet.js +0 -2
  329. package/dist/types/freelance-jobs.js +0 -2
  330. package/dist/types/generated/esi-spec.generated.js +0 -6
  331. package/dist/types/generated/spec-alignment.check.js +0 -14
  332. package/dist/types/incursions.js +0 -2
  333. package/dist/types/industry.js +0 -2
  334. package/dist/types/insurance.js +0 -2
  335. package/dist/types/killmails.js +0 -2
  336. package/dist/types/location.js +0 -2
  337. package/dist/types/loyalty.js +0 -2
  338. package/dist/types/mail.js +0 -2
  339. package/dist/types/market.js +0 -2
  340. package/dist/types/mercenary.js +0 -2
  341. package/dist/types/pi.js +0 -2
  342. package/dist/types/skills.js +0 -2
  343. package/dist/types/skyhooks.js +0 -2
  344. package/dist/types/sovereignty.js +0 -2
  345. package/dist/types/status.js +0 -2
  346. package/dist/types/universe.js +0 -2
  347. package/dist/types/wallet.js +0 -2
  348. package/dist/types/wars.js +0 -2
@@ -0,0 +1,935 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+
30
+ // src/testing/index.ts
31
+ var testing_exports = {};
32
+ __export(testing_exports, {
33
+ TestDataFactory: () => TestDataFactory
34
+ });
35
+ module.exports = __toCommonJS(testing_exports);
36
+
37
+ // src/core/logger/logger.ts
38
+ var import_pino = __toESM(require("pino"));
39
+ var pinoLogger = (0, import_pino.default)({ level: process.env.ESI_LOG_LEVEL || "warn" });
40
+
41
+ // src/core/util/error.ts
42
+ var SENSITIVE_PARAMS = [
43
+ "token",
44
+ "access_token",
45
+ "api_key",
46
+ "refresh_token",
47
+ "client_secret",
48
+ "code",
49
+ "key",
50
+ "secret",
51
+ "auth",
52
+ "password",
53
+ "bearer"
54
+ ];
55
+ function sanitizeUrl(url) {
56
+ if (!url) return url;
57
+ try {
58
+ const parsed = new URL(url);
59
+ for (const param of SENSITIVE_PARAMS) {
60
+ if (parsed.searchParams.has(param)) {
61
+ parsed.searchParams.set(param, "[REDACTED]");
62
+ }
63
+ }
64
+ return parsed.toString();
65
+ } catch {
66
+ const qIndex = url.indexOf("?");
67
+ return qIndex >= 0 ? url.substring(0, qIndex) + "?[params-redacted]" : url;
68
+ }
69
+ }
70
+ var EsiError = class extends Error {
71
+ constructor(statusCode, message, url, requestId) {
72
+ super(message);
73
+ this.statusCode = statusCode;
74
+ this.requestId = requestId;
75
+ this.name = "EsiError";
76
+ this.url = sanitizeUrl(url);
77
+ }
78
+ statusCode;
79
+ requestId;
80
+ url;
81
+ isRateLimited() {
82
+ return this.statusCode === 420 || this.statusCode === 429;
83
+ }
84
+ isNotFound() {
85
+ return this.statusCode === 404;
86
+ }
87
+ isUnauthorized() {
88
+ return this.statusCode === 401;
89
+ }
90
+ isForbidden() {
91
+ return this.statusCode === 403;
92
+ }
93
+ isServerError() {
94
+ return this.statusCode >= 500;
95
+ }
96
+ isTimeout() {
97
+ return this.statusCode === 0;
98
+ }
99
+ get retryable() {
100
+ return this.statusCode === 0 || this.statusCode === 420 || this.statusCode === 429 || this.statusCode === 502 || this.statusCode === 503 || this.statusCode === 504;
101
+ }
102
+ };
103
+
104
+ // src/testing/TestDataFactory.ts
105
+ var TestDataFactory = class {
106
+ // Alliance test data
107
+ static createAllianceInfo(overrides = {}) {
108
+ return {
109
+ alliance_id: 99005338,
110
+ name: "Goonswarm Federation",
111
+ ticker: "CONDI",
112
+ creator_id: 1689391488,
113
+ creator_corporation_id: 1344654522,
114
+ executor_corporation_id: 1344654522,
115
+ date_founded: "2010-06-01T00:00:00Z",
116
+ faction_id: 500001,
117
+ ...overrides
118
+ };
119
+ }
120
+ static createAllianceContact(overrides = {}) {
121
+ return {
122
+ contact_id: 1689391488,
123
+ contact_type: "character",
124
+ standing: 10,
125
+ label_ids: [1, 2],
126
+ ...overrides
127
+ };
128
+ }
129
+ static createAllianceContactLabel(overrides = {}) {
130
+ return {
131
+ label_id: 1,
132
+ label_name: "Friendly",
133
+ ...overrides
134
+ };
135
+ }
136
+ // Character test data
137
+ static createCharacterInfo(overrides = {}) {
138
+ return {
139
+ character_id: 1689391488,
140
+ name: "Test Character",
141
+ corporation_id: 1344654522,
142
+ alliance_id: 99005338,
143
+ bloodline_id: 4,
144
+ race_id: 1,
145
+ gender: "male",
146
+ birthday: "2003-05-06T00:00:00Z",
147
+ description: "A test character for BDD scenarios",
148
+ security_status: 5,
149
+ title: "Test Pilot",
150
+ ...overrides
151
+ };
152
+ }
153
+ static createCharacterPortrait(characterId = 1689391488) {
154
+ return {
155
+ px64x64: `https://images.evetech.net/characters/${characterId}/portrait?size=64`,
156
+ px128x128: `https://images.evetech.net/characters/${characterId}/portrait?size=128`,
157
+ px256x256: `https://images.evetech.net/characters/${characterId}/portrait?size=256`,
158
+ px512x512: `https://images.evetech.net/characters/${characterId}/portrait?size=512`
159
+ };
160
+ }
161
+ static createCharacterAttributes(overrides = {}) {
162
+ return {
163
+ charisma: 20,
164
+ intelligence: 24,
165
+ memory: 21,
166
+ perception: 23,
167
+ willpower: 22,
168
+ bonus_remaps: 2,
169
+ last_remap_date: "2023-01-01T00:00:00Z",
170
+ accrued_remap_cooldown_date: "2024-01-01T00:00:00Z",
171
+ ...overrides
172
+ };
173
+ }
174
+ static createCharacterSkill(overrides = {}) {
175
+ return {
176
+ skill_id: 3300,
177
+ skillpoints_in_skill: 256e3,
178
+ trained_skill_level: 5,
179
+ active_skill_level: 5,
180
+ ...overrides
181
+ };
182
+ }
183
+ static createCharacterRoles(overrides = {}) {
184
+ return {
185
+ roles: ["Director"],
186
+ roles_at_base: [],
187
+ roles_at_hq: ["Director"],
188
+ roles_at_other: [],
189
+ ...overrides
190
+ };
191
+ }
192
+ static createCorporationHistoryEntry(overrides = {}) {
193
+ return {
194
+ corporation_id: 1344654522,
195
+ is_deleted: false,
196
+ record_id: 1,
197
+ start_date: "2020-01-01T00:00:00Z",
198
+ ...overrides
199
+ };
200
+ }
201
+ static createCharacterMedal(overrides = {}) {
202
+ return {
203
+ medal_id: 1,
204
+ title: "Test Medal",
205
+ description: "A test medal for demonstration",
206
+ corporation_id: 1344654522,
207
+ date: "2023-01-01T00:00:00Z",
208
+ issuer_id: 1689391489,
209
+ reason: "Outstanding service",
210
+ ...overrides
211
+ };
212
+ }
213
+ static createCharacterNotification(overrides = {}) {
214
+ return {
215
+ notification_id: 1000001,
216
+ sender_id: 1689391489,
217
+ sender_type: "character",
218
+ text: "Test notification",
219
+ timestamp: "2024-01-15T12:00:00Z",
220
+ type: "AllWarDeclaredMsg",
221
+ is_read: false,
222
+ ...overrides
223
+ };
224
+ }
225
+ // Market test data
226
+ static createMarketPrice(overrides = {}) {
227
+ return {
228
+ type_id: 34,
229
+ average_price: 4.5,
230
+ adjusted_price: 4.55,
231
+ ...overrides
232
+ };
233
+ }
234
+ static createMarketHistory(overrides = {}) {
235
+ return {
236
+ date: "2024-01-15",
237
+ volume: 1e9,
238
+ order_count: 2500,
239
+ lowest: 4.2,
240
+ highest: 4.8,
241
+ average: 4.5,
242
+ ...overrides
243
+ };
244
+ }
245
+ static createCharacterMarketOrder(overrides = {}) {
246
+ return {
247
+ order_id: 5000000001,
248
+ type_id: 34,
249
+ region_id: 10000002,
250
+ location_id: 60003760,
251
+ range: "region",
252
+ volume_total: 1e6,
253
+ volume_remain: 75e4,
254
+ min_volume: 1,
255
+ price: 4.5,
256
+ is_buy_order: true,
257
+ is_corporation: false,
258
+ duration: 90,
259
+ issued: "2024-01-15T12:00:00Z",
260
+ ...overrides
261
+ };
262
+ }
263
+ static createCharacterOrderHistory(overrides = {}) {
264
+ return {
265
+ order_id: 5000000001,
266
+ type_id: 34,
267
+ region_id: 10000002,
268
+ location_id: 60003760,
269
+ range: "region",
270
+ volume_total: 1e6,
271
+ volume_remain: 0,
272
+ min_volume: 1,
273
+ price: 4.5,
274
+ is_buy_order: true,
275
+ is_corporation: false,
276
+ duration: 90,
277
+ issued: "2024-01-10T12:00:00Z",
278
+ state: "expired",
279
+ ...overrides
280
+ };
281
+ }
282
+ // Universe test data
283
+ static createSolarSystem(overrides = {}) {
284
+ return {
285
+ system_id: 30000142,
286
+ name: "Jita",
287
+ constellation_id: 20000020,
288
+ security_status: 0.9459991455078125,
289
+ star_id: 40000001,
290
+ stargates: [50000001, 50000002],
291
+ stations: [60003760, 60003761],
292
+ planets: [
293
+ { planet_id: 40000001, moons: [40000002, 40000003] },
294
+ { planet_id: 40000004, moons: [40000005] }
295
+ ],
296
+ ...overrides
297
+ };
298
+ }
299
+ static createStation(overrides = {}) {
300
+ return {
301
+ station_id: 60003760,
302
+ name: "Jita IV - Moon 4 - Caldari Navy Assembly Plant",
303
+ owner: 1000035,
304
+ type_id: 52678,
305
+ race_id: 1,
306
+ system_id: 30000142,
307
+ reprocessing_efficiency: 0.5,
308
+ reprocessing_stations_take: 0.05,
309
+ max_dockable_ship_volume: 5e7,
310
+ office_rental_cost: 1e7,
311
+ services: [
312
+ "bounty-missions",
313
+ "courier-missions",
314
+ "interbus",
315
+ "reprocessing-plant",
316
+ "market",
317
+ "stock-exchange"
318
+ ],
319
+ ...overrides
320
+ };
321
+ }
322
+ static createStructure(overrides = {}) {
323
+ return {
324
+ structure_id: 1021975535893,
325
+ name: "Test Citadel",
326
+ owner_id: 1689391488,
327
+ solar_system_id: 30000142,
328
+ type_id: 35832,
329
+ position: { x: 1e9, y: 2e9, z: 3e9 },
330
+ ...overrides
331
+ };
332
+ }
333
+ static createItemType(overrides = {}) {
334
+ return {
335
+ type_id: 34,
336
+ name: "Tritanium",
337
+ description: "The most common ore type in the known universe.",
338
+ group_id: 18,
339
+ category_id: 4,
340
+ market_group_id: 1857,
341
+ mass: 1,
342
+ volume: 0.01,
343
+ capacity: 0,
344
+ portion_size: 1,
345
+ radius: 1,
346
+ published: true,
347
+ ...overrides
348
+ };
349
+ }
350
+ static createItemGroup(overrides = {}) {
351
+ return {
352
+ group_id: 18,
353
+ name: "Mineral",
354
+ category_id: 4,
355
+ published: true,
356
+ types: [34, 35, 36, 37, 38, 39, 40, 11399],
357
+ ...overrides
358
+ };
359
+ }
360
+ static createStar(overrides = {}) {
361
+ return {
362
+ star_id: 40000001,
363
+ name: "Jita - Star",
364
+ type_id: 3802,
365
+ solar_system_id: 30000142,
366
+ age: 46e8,
367
+ luminosity: 0.06575,
368
+ radius: 6214e4,
369
+ spectral_class: "K2 V",
370
+ temperature: 4567,
371
+ ...overrides
372
+ };
373
+ }
374
+ static createPlanet(overrides = {}) {
375
+ return {
376
+ planet_id: 40000004,
377
+ name: "Jita IV",
378
+ type_id: 11,
379
+ system_id: 30000142,
380
+ position: { x: 15e10, y: 0, z: 0 },
381
+ ...overrides
382
+ };
383
+ }
384
+ static createSearchResults(overrides = {}) {
385
+ return {
386
+ systems: [],
387
+ stations: [],
388
+ structures: [],
389
+ characters: [],
390
+ corporations: [],
391
+ alliances: [],
392
+ ...overrides
393
+ };
394
+ }
395
+ static createEntityName(overrides = {}) {
396
+ return {
397
+ id: 30000142,
398
+ name: "Jita",
399
+ category: "solar_system",
400
+ ...overrides
401
+ };
402
+ }
403
+ // Corporation test data
404
+ static createCorporationMemberRoles(overrides = {}) {
405
+ return {
406
+ character_id: 1689391488,
407
+ roles: ["Director", "Personnel_Manager"],
408
+ grantable_roles: ["Hangar_Take_1", "Hangar_Take_2"],
409
+ roles_at_hq: ["Director"],
410
+ roles_at_base: [],
411
+ roles_at_other: [],
412
+ ...overrides
413
+ };
414
+ }
415
+ static createCorporationAsset(overrides = {}) {
416
+ return {
417
+ item_id: 1000000000001,
418
+ type_id: 587,
419
+ quantity: 100,
420
+ location_id: 60003760,
421
+ location_flag: "CorpSAG1",
422
+ location_type: "station",
423
+ ...overrides
424
+ };
425
+ }
426
+ static createCorporationStructure(overrides = {}) {
427
+ return {
428
+ structure_id: 1021975535893,
429
+ type_id: 35832,
430
+ system_id: 30000142,
431
+ profile_id: 101853,
432
+ fuel_expires: "2024-02-01T12:00:00Z",
433
+ state_timer_start: "2024-01-15T12:00:00Z",
434
+ state_timer_end: "2024-01-22T12:00:00Z",
435
+ state: "shield_vulnerable",
436
+ ...overrides
437
+ };
438
+ }
439
+ static createCorporationWallet(overrides = {}) {
440
+ return {
441
+ division: 1,
442
+ balance: 1e9,
443
+ ...overrides
444
+ };
445
+ }
446
+ static createWalletJournalEntry(overrides = {}) {
447
+ return {
448
+ id: 1000000001,
449
+ date: "2024-01-15T12:00:00Z",
450
+ ref_type: "market_transaction",
451
+ first_party_id: 1344654522,
452
+ amount: 1e6,
453
+ balance: 1e9,
454
+ reason: "Market transaction",
455
+ description: "Sold items on market",
456
+ ...overrides
457
+ };
458
+ }
459
+ // Fleet test data
460
+ static createFleetInfo(overrides = {}) {
461
+ return {
462
+ fleet_id: 1234567890,
463
+ fleet_boss_id: 1689391488,
464
+ is_free_move: false,
465
+ is_registered: true,
466
+ is_voice_enabled: true,
467
+ motd: "Fleet operations in progress",
468
+ ...overrides
469
+ };
470
+ }
471
+ static createFleetMember(overrides = {}) {
472
+ return {
473
+ character_id: 1689391488,
474
+ role: "fleet_commander",
475
+ ship_type_id: 17918,
476
+ solar_system_id: 30000142,
477
+ station_id: 60003760,
478
+ ...overrides
479
+ };
480
+ }
481
+ static createFleetWing(overrides = {}) {
482
+ return {
483
+ wing_id: 987654321,
484
+ name: "Wing 1",
485
+ squads: [{ squad_id: 123456789, name: "Squad 1" }],
486
+ ...overrides
487
+ };
488
+ }
489
+ // Industry test data
490
+ static createIndustryJob(overrides = {}) {
491
+ return {
492
+ job_id: 1000001,
493
+ installer_id: 1689391488,
494
+ facility_id: 60003760,
495
+ activity_id: 1,
496
+ blueprint_id: 1000000001,
497
+ blueprint_type_id: 17918,
498
+ product_type_id: 17918,
499
+ runs: 1,
500
+ status: "active",
501
+ start_date: "2024-01-15T12:00:00Z",
502
+ end_date: "2024-01-16T12:00:00Z",
503
+ ...overrides
504
+ };
505
+ }
506
+ static createBlueprint(overrides = {}) {
507
+ return {
508
+ item_id: 1000000001,
509
+ type_id: 17918,
510
+ location_id: 60003760,
511
+ location_flag: "Hangar",
512
+ quantity: -2,
513
+ time_efficiency: 10,
514
+ material_efficiency: 10,
515
+ runs: 100,
516
+ ...overrides
517
+ };
518
+ }
519
+ static createCharacterAsset(overrides = {}) {
520
+ return {
521
+ item_id: 1000000002,
522
+ type_id: 34,
523
+ quantity: 1e6,
524
+ location_id: 60003760,
525
+ location_flag: "Hangar",
526
+ location_type: "station",
527
+ ...overrides
528
+ };
529
+ }
530
+ static createCharacterLocation(overrides = {}) {
531
+ return {
532
+ solar_system_id: 30000142,
533
+ station_id: 60003760,
534
+ structure_id: void 0,
535
+ ...overrides
536
+ };
537
+ }
538
+ static createCharacterSkills(overrides = {}) {
539
+ return {
540
+ skills: [
541
+ {
542
+ skill_id: 3300,
543
+ skillpoints_in_skill: 256e3,
544
+ trained_skill_level: 5,
545
+ active_skill_level: 5
546
+ },
547
+ {
548
+ skill_id: 3301,
549
+ skillpoints_in_skill: 128e3,
550
+ trained_skill_level: 4,
551
+ active_skill_level: 4
552
+ }
553
+ ],
554
+ total_sp: 384e3,
555
+ unallocated_sp: 0,
556
+ ...overrides
557
+ };
558
+ }
559
+ // Corporation test data
560
+ static createCorporationInfo(overrides = {}) {
561
+ return {
562
+ corporation_id: 1344654522,
563
+ name: "GoonWaffe",
564
+ ticker: "GEWNS",
565
+ ceo_id: 1689391488,
566
+ creator_id: 1689391488,
567
+ member_count: 15e3,
568
+ tax_rate: 0.1,
569
+ alliance_id: 99005338,
570
+ date_founded: "2003-05-06T00:00:00Z",
571
+ description: "The founding corporation of Goonswarm Federation",
572
+ home_station_id: 60003760,
573
+ shares: 1e3,
574
+ // eslint-disable-next-line sonarjs/no-clear-text-protocols
575
+ url: "http://www.goonfleet.com/",
576
+ faction_id: 500001,
577
+ war_eligible: true,
578
+ ...overrides
579
+ };
580
+ }
581
+ // Market test data
582
+ static createMarketOrder(overrides = {}) {
583
+ return {
584
+ order_id: 123456789,
585
+ type_id: 34,
586
+ // Tritanium
587
+ location_id: 60003760,
588
+ // Jita 4-4
589
+ volume_total: 1e6,
590
+ volume_remain: 5e5,
591
+ min_volume: 1,
592
+ price: 5.5,
593
+ is_buy_order: false,
594
+ system_id: 30000142,
595
+ duration: 90,
596
+ issued: "2023-12-01T12:00:00Z",
597
+ range: "region",
598
+ ...overrides
599
+ };
600
+ }
601
+ // Wallet test data
602
+ static createWalletTransaction(overrides = {}) {
603
+ return {
604
+ transaction_id: 123456789,
605
+ date: "2023-12-01T12:00:00Z",
606
+ type_id: 34,
607
+ location_id: 60003760,
608
+ unit_price: 5.5,
609
+ quantity: 1e3,
610
+ client_id: 1689391488,
611
+ is_buy: false,
612
+ is_personal: true,
613
+ journal_ref_id: 987654321,
614
+ ...overrides
615
+ };
616
+ }
617
+ // Contract test data
618
+ static createContract(overrides = {}) {
619
+ return {
620
+ contract_id: 123456789,
621
+ issuer_id: 1689391488,
622
+ issuer_corporation_id: 1344654522,
623
+ assignee_id: 987654321,
624
+ start_location_id: 60003760,
625
+ end_location_id: 60008494,
626
+ type: "courier",
627
+ status: "outstanding",
628
+ title: "Test Courier Contract",
629
+ for_corporation: false,
630
+ availability: "public",
631
+ date_issued: "2023-12-01T12:00:00Z",
632
+ date_expired: "2023-12-08T12:00:00Z",
633
+ days_to_complete: 3,
634
+ price: 1e6,
635
+ reward: 5e5,
636
+ collateral: 1e7,
637
+ volume: 1e3,
638
+ ...overrides
639
+ };
640
+ }
641
+ // Sovereignty test data (Equinox)
642
+ static createSovereigntySystem(overrides = {}) {
643
+ return {
644
+ solar_systems: [
645
+ {
646
+ solar_system_id: 30000142,
647
+ claim: {
648
+ alliance: {
649
+ alliance_id: 99005338,
650
+ corporation_id: 1344654522,
651
+ claimed_since: "2020-10-08T00:38:16Z",
652
+ is_capital_system: false,
653
+ development: {
654
+ activity_defense_multiplier: 4.5,
655
+ military_level: 5,
656
+ industrial_level: 3,
657
+ strategic_level: 1
658
+ }
659
+ }
660
+ }
661
+ }
662
+ ],
663
+ ...overrides
664
+ };
665
+ }
666
+ static createSovereigntyHub(overrides = {}) {
667
+ return {
668
+ structure_id: 100000001,
669
+ system_id: 30000142,
670
+ corporation_id: 98000002,
671
+ alliance_id: 99000006,
672
+ online: true,
673
+ remaining_reagents: 500,
674
+ installed_upgrades: [1, 2, 3],
675
+ ...overrides
676
+ };
677
+ }
678
+ static createOrbitalSkyhook(overrides = {}) {
679
+ return {
680
+ structure_id: 200000001,
681
+ system_id: 30000142,
682
+ corporation_id: 98000002,
683
+ alliance_id: 99000006,
684
+ online: true,
685
+ reagent_silo_capacity: 1e3,
686
+ reagent_silo_level: 750,
687
+ ...overrides
688
+ };
689
+ }
690
+ static createRaidableSkyhook(overrides = {}) {
691
+ return {
692
+ structure_id: 200000001,
693
+ system_id: 30000142,
694
+ corporation_id: 98000002,
695
+ alliance_id: 99000006,
696
+ raidable_at: "2026-05-20T12:00:00Z",
697
+ is_raidable: true,
698
+ ...overrides
699
+ };
700
+ }
701
+ static createMercenaryDen(overrides = {}) {
702
+ return {
703
+ den_id: 5001,
704
+ system_id: 30000142,
705
+ constellation_id: 20000125,
706
+ region_id: 10000002,
707
+ development_level: 3,
708
+ anarchy_level: 2,
709
+ active_operations: 1,
710
+ ...overrides
711
+ };
712
+ }
713
+ static createMercenaryTacticalOperation(overrides = {}) {
714
+ return {
715
+ operation_id: 7001,
716
+ den_id: 5001,
717
+ system_id: 30000142,
718
+ site_type: "assault",
719
+ status: "active",
720
+ started_at: "2026-05-20T10:00:00Z",
721
+ expires_at: "2026-05-20T22:00:00Z",
722
+ ...overrides
723
+ };
724
+ }
725
+ static createAccessListEntry(overrides = {}) {
726
+ return {
727
+ entity_id: 1689391488,
728
+ entity_type: "character",
729
+ access_type: "allowed",
730
+ ...overrides
731
+ };
732
+ }
733
+ // Error test data
734
+ static createError(statusCode, message) {
735
+ const defaultMessages = {
736
+ 400: "Bad request",
737
+ 401: "Unauthorized",
738
+ 403: "Forbidden",
739
+ 404: "Resource not found",
740
+ 429: "Rate limit exceeded",
741
+ 500: "Internal server error",
742
+ 503: "Service unavailable"
743
+ };
744
+ return new EsiError(
745
+ statusCode,
746
+ // eslint-disable-next-line security/detect-object-injection
747
+ message || defaultMessages[statusCode] || "Unknown error"
748
+ );
749
+ }
750
+ // Test scenarios
751
+ static createTestScenarios() {
752
+ return {
753
+ alliances: [
754
+ { id: 99005338, name: "Goonswarm Federation", ticker: "CONDI" },
755
+ { id: 99000001, name: "Test Alliance Please Ignore", ticker: "TEST" },
756
+ { id: 99000002, name: "Brave Collective", ticker: "BRAVE" },
757
+ { id: 99000003, name: "Pandemic Legion", ticker: "PL" },
758
+ { id: 99000004, name: "Northern Coalition.", ticker: "NC." }
759
+ ],
760
+ characters: [
761
+ {
762
+ id: 1689391488,
763
+ name: "Test Character",
764
+ corp: 1344654522,
765
+ alliance: 99005338
766
+ },
767
+ {
768
+ id: 123456789,
769
+ name: "Demo Pilot",
770
+ corp: 987654321,
771
+ alliance: 99000001
772
+ },
773
+ {
774
+ id: 111111111,
775
+ name: "Alpha Tester",
776
+ corp: 222222222,
777
+ alliance: 99000002
778
+ },
779
+ {
780
+ id: 333333333,
781
+ name: "Beta User",
782
+ corp: 444444444,
783
+ alliance: 99000003
784
+ },
785
+ {
786
+ id: 555555555,
787
+ name: "Gamma Pilot",
788
+ corp: 666666666,
789
+ alliance: 99000004
790
+ }
791
+ ],
792
+ corporations: [
793
+ {
794
+ id: 1344654522,
795
+ name: "GoonWaffe",
796
+ ticker: "GEWNS",
797
+ alliance: 99005338
798
+ },
799
+ {
800
+ id: 987654321,
801
+ name: "Test Corp Please Ignore",
802
+ ticker: "TCPI",
803
+ alliance: 99000001
804
+ },
805
+ {
806
+ id: 222222222,
807
+ name: "Brave Newbies Inc.",
808
+ ticker: "BNI",
809
+ alliance: 99000002
810
+ },
811
+ {
812
+ id: 444444444,
813
+ name: "Sniggerdly",
814
+ ticker: "SNIGG",
815
+ alliance: 99000003
816
+ },
817
+ {
818
+ id: 666666666,
819
+ name: "Tactical Narcotics Team",
820
+ ticker: "TNT",
821
+ alliance: 99000004
822
+ }
823
+ ],
824
+ errorScenarios: [
825
+ { statusCode: 0, label: "network_error", probability: 0.1 },
826
+ { statusCode: 429, label: "rate_limited", probability: 0.05 },
827
+ { statusCode: 500, label: "server_error", probability: 0.02 },
828
+ { statusCode: 504, label: "timeout", probability: 0.03 },
829
+ { statusCode: 404, label: "not_found", probability: 0.01 }
830
+ ]
831
+ };
832
+ }
833
+ // Performance test data
834
+ static createPerformanceTestData(size = "medium") {
835
+ const sizes = {
836
+ small: { alliances: 5, characters: 20, corporations: 10 },
837
+ medium: { alliances: 20, characters: 100, corporations: 50 },
838
+ large: { alliances: 100, characters: 1e3, corporations: 500 }
839
+ };
840
+ const config = sizes[size];
841
+ const data = {
842
+ alliances: [],
843
+ characters: [],
844
+ corporations: []
845
+ };
846
+ for (let i = 1; i <= config.alliances; i++) {
847
+ data.alliances.push(
848
+ this.createAllianceInfo({
849
+ alliance_id: 99e6 + i,
850
+ name: `Test Alliance ${i}`,
851
+ ticker: `TST${i.toString().padStart(2, "0")}`,
852
+ creator_id: 1e6 + i
853
+ })
854
+ );
855
+ }
856
+ for (let i = 1; i <= config.corporations; i++) {
857
+ const allianceIndex = Math.floor(
858
+ (i - 1) / (config.corporations / config.alliances)
859
+ );
860
+ data.corporations.push(
861
+ this.createCorporationInfo({
862
+ corporation_id: 2e6 + i,
863
+ name: `Test Corporation ${i}`,
864
+ ticker: `TC${i.toString().padStart(3, "0")}`,
865
+ // eslint-disable-next-line security/detect-object-injection
866
+ alliance_id: data.alliances[allianceIndex]?.alliance_id,
867
+ ceo_id: 3e6 + i
868
+ })
869
+ );
870
+ }
871
+ for (let i = 1; i <= config.characters; i++) {
872
+ const corpIndex = Math.floor(
873
+ (i - 1) / (config.characters / config.corporations)
874
+ );
875
+ const corp = data.corporations[corpIndex];
876
+ data.characters.push(
877
+ this.createCharacterInfo({
878
+ character_id: 3e6 + i,
879
+ name: `Test Character ${i}`,
880
+ corporation_id: corp?.corporation_id || 2000001,
881
+ alliance_id: corp?.alliance_id
882
+ })
883
+ );
884
+ }
885
+ return data;
886
+ }
887
+ // Realistic test data with relationships
888
+ static createRealisticTestData() {
889
+ const goonswarm = this.createAllianceInfo({
890
+ alliance_id: 99005338,
891
+ name: "Goonswarm Federation",
892
+ ticker: "CONDI",
893
+ creator_id: 1689391488,
894
+ creator_corporation_id: 1344654522,
895
+ executor_corporation_id: 1344654522,
896
+ date_founded: "2010-06-01T00:00:00Z"
897
+ });
898
+ const goonwaffe = this.createCorporationInfo({
899
+ corporation_id: 1344654522,
900
+ name: "GoonWaffe",
901
+ ticker: "GEWNS",
902
+ alliance_id: 99005338,
903
+ ceo_id: 1689391488,
904
+ creator_id: 1689391488,
905
+ member_count: 15e3,
906
+ date_founded: "2003-05-06T00:00:00Z"
907
+ });
908
+ const testCharacter = this.createCharacterInfo({
909
+ character_id: 1689391488,
910
+ name: "The Mittani",
911
+ corporation_id: 1344654522,
912
+ alliance_id: 99005338,
913
+ birthday: "2003-05-06T00:00:00Z"
914
+ });
915
+ return {
916
+ alliances: [goonswarm],
917
+ corporations: [goonwaffe],
918
+ characters: [testCharacter],
919
+ relationships: {
920
+ allianceExecutor: { alliance: 99005338, corporation: 1344654522 },
921
+ corporationCEO: { corporation: 1344654522, character: 1689391488 },
922
+ characterMembership: {
923
+ character: 1689391488,
924
+ corporation: 1344654522,
925
+ alliance: 99005338
926
+ }
927
+ }
928
+ };
929
+ }
930
+ };
931
+ // Annotate the CommonJS export names for ESM import in node:
932
+ 0 && (module.exports = {
933
+ TestDataFactory
934
+ });
935
+ //# sourceMappingURL=index.js.map