@lgriffin/esi.ts 10.2.0 → 11.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.
- package/CHANGELOG.md +414 -32
- package/LICENSE +667 -19
- package/NOTICE +19 -0
- package/README.md +149 -902
- package/dist/EsiClient.d.mts +5 -36
- package/dist/EsiClient.d.ts +5 -36
- package/dist/EsiClient.d.ts.map +1 -1
- package/dist/EsiClientBuilder.d.mts +128 -1
- package/dist/EsiClientBuilder.d.ts +128 -1
- package/dist/EsiClientBuilder.d.ts.map +1 -1
- package/dist/adapters/PipelineTransport.d.ts +16 -0
- package/dist/adapters/PipelineTransport.d.ts.map +1 -0
- package/dist/auth/EsiTokenManager.d.mts +62 -21
- package/dist/auth/EsiTokenManager.d.ts +62 -21
- package/dist/auth/EsiTokenManager.d.ts.map +1 -1
- package/dist/auth/EveSsoClient.d.mts +9 -9
- package/dist/auth/EveSsoClient.d.ts +9 -9
- package/dist/auth/EveSsoClient.d.ts.map +1 -1
- package/dist/auth/errors.d.mts +2 -2
- package/dist/auth/errors.d.ts +2 -2
- package/dist/auth/errors.d.ts.map +1 -1
- package/dist/auth/jwt.d.mts +7 -7
- package/dist/auth/jwt.d.ts +7 -7
- package/dist/auth/jwt.d.ts.map +1 -1
- package/dist/auth/storage/FileTokenStorage.d.mts +1 -1
- package/dist/auth/storage/FileTokenStorage.d.ts +1 -1
- package/dist/auth/storage/FileTokenStorage.d.ts.map +1 -1
- package/dist/{chunk-BBSHKVPI.js → chunk-CM63VGGF.js} +1 -1
- package/dist/chunk-CM63VGGF.js.map +1 -0
- package/dist/chunk-DFRTIZK4.js +275 -0
- package/dist/chunk-DFRTIZK4.js.map +1 -0
- package/dist/{chunk-VZS32UQ3.mjs → chunk-HXS7ZVEL.mjs} +129 -28
- package/dist/chunk-HXS7ZVEL.mjs.map +1 -0
- package/dist/chunk-JNFQXEWZ.mjs +275 -0
- package/dist/chunk-JNFQXEWZ.mjs.map +1 -0
- package/dist/chunk-KIY3XA5Q.mjs +2980 -0
- package/dist/chunk-KIY3XA5Q.mjs.map +1 -0
- package/dist/{chunk-R7D7M2LQ.mjs → chunk-MGOE2YNH.mjs} +1 -1
- package/dist/chunk-MGOE2YNH.mjs.map +1 -0
- package/dist/{chunk-SAQBXXTM.js → chunk-MRKZ55XI.js} +130 -29
- package/dist/chunk-MRKZ55XI.js.map +1 -0
- package/dist/chunk-NKFIHGC6.js +2980 -0
- package/dist/chunk-NKFIHGC6.js.map +1 -0
- package/dist/{chunk-MSJHIJXA.js → chunk-S73PKM2Y.js} +20 -5
- package/dist/chunk-S73PKM2Y.js.map +1 -0
- package/dist/{chunk-3ZI5A37L.mjs → chunk-YUHGSPQ7.mjs} +19 -4
- package/dist/chunk-YUHGSPQ7.mjs.map +1 -0
- package/dist/client/identity.d.mts +20 -0
- package/dist/client/identity.d.ts +20 -0
- package/dist/client/identity.d.ts.map +1 -0
- package/dist/client/index.d.mts +11 -0
- package/dist/client/index.d.ts +11 -0
- package/dist/client/index.d.ts.map +1 -0
- package/dist/client/index.js +6607 -0
- package/dist/client/index.js.map +1 -0
- package/dist/client/index.mjs +6607 -0
- package/dist/client/index.mjs.map +1 -0
- package/dist/client/runtime.d.mts +67 -0
- package/dist/client/runtime.d.ts +67 -0
- package/dist/client/runtime.d.ts.map +1 -0
- package/dist/clients/BaseEsiClient.d.ts.map +1 -1
- package/dist/clients/ClientRegistry.d.mts +45 -0
- package/dist/clients/ClientRegistry.d.ts +45 -0
- package/dist/clients/ClientRegistry.d.ts.map +1 -0
- package/dist/clients/CorporationsClient.d.mts +3 -3
- package/dist/clients/CorporationsClient.d.ts +3 -3
- package/dist/clients/CorporationsClient.d.ts.map +1 -1
- package/dist/clients/MailClient.d.mts +2 -2
- package/dist/clients/MailClient.d.ts +2 -2
- package/dist/clients/MailClient.d.ts.map +1 -1
- package/dist/clients/MetaClient.d.mts +3 -2
- package/dist/clients/MetaClient.d.ts +3 -2
- package/dist/clients/MetaClient.d.ts.map +1 -1
- package/dist/clients/MilitaryCampaignsClient.d.mts +14 -7
- package/dist/clients/MilitaryCampaignsClient.d.ts +14 -7
- package/dist/clients/MilitaryCampaignsClient.d.ts.map +1 -1
- package/dist/clients/RouteClient.d.mts +4 -4
- package/dist/clients/RouteClient.d.ts +4 -4
- package/dist/clients/RouteClient.d.ts.map +1 -1
- package/dist/clients/SkillsClient.d.mts +1 -1
- package/dist/clients/SkillsClient.d.ts +1 -1
- package/dist/clients/SkillsClient.d.ts.map +1 -1
- package/dist/clients/SkyhooksClient.d.mts +4 -3
- package/dist/clients/SkyhooksClient.d.ts +4 -3
- package/dist/clients/SkyhooksClient.d.ts.map +1 -1
- package/dist/core/ApiClient.d.mts +11 -0
- package/dist/core/ApiClient.d.ts +11 -0
- package/dist/core/ApiClient.d.ts.map +1 -1
- package/dist/core/ApiClientBuilder.d.ts.map +1 -1
- package/dist/core/ApiRequestHandler.d.ts +2 -1
- package/dist/core/ApiRequestHandler.d.ts.map +1 -1
- package/dist/core/BatchRequestHandler.d.mts +13 -2
- package/dist/core/BatchRequestHandler.d.ts +13 -2
- package/dist/core/BatchRequestHandler.d.ts.map +1 -1
- package/dist/core/EsiClientConfig.d.mts +60 -0
- package/dist/core/EsiClientConfig.d.ts +60 -0
- package/dist/core/EsiClientConfig.d.ts.map +1 -0
- package/dist/core/RetryStrategy.d.mts +3 -3
- package/dist/core/RetryStrategy.d.ts +3 -3
- package/dist/core/RetryStrategy.d.ts.map +1 -1
- package/dist/core/cache/ETagCacheManager.d.mts +9 -4
- package/dist/core/cache/ETagCacheManager.d.ts +9 -4
- package/dist/core/cache/ETagCacheManager.d.ts.map +1 -1
- package/dist/core/cache/cacheKey.d.ts +31 -6
- package/dist/core/cache/cacheKey.d.ts.map +1 -1
- package/dist/core/circuitBreaker/CircuitBreaker.d.mts +8 -12
- package/dist/core/circuitBreaker/CircuitBreaker.d.ts +8 -12
- package/dist/core/circuitBreaker/CircuitBreaker.d.ts.map +1 -1
- package/dist/core/clock.d.ts +8 -0
- package/dist/core/clock.d.ts.map +1 -0
- package/dist/core/configureApiClient.d.mts +1 -1
- package/dist/core/configureApiClient.d.ts +1 -1
- package/dist/core/configureApiClient.d.ts.map +1 -1
- package/dist/core/constants.d.ts +3 -3
- package/dist/core/constants.d.ts.map +1 -1
- package/dist/core/endpoints/EndpointDefinition.d.mts +17 -0
- package/dist/core/endpoints/EndpointDefinition.d.ts +17 -0
- package/dist/core/endpoints/EndpointDefinition.d.ts.map +1 -1
- package/dist/core/endpoints/assetEndpoints.d.mts +12 -0
- package/dist/core/endpoints/assetEndpoints.d.ts +12 -0
- package/dist/core/endpoints/assetEndpoints.d.ts.map +1 -1
- package/dist/core/endpoints/characterEndpoints.d.mts +10 -0
- package/dist/core/endpoints/characterEndpoints.d.ts +10 -0
- package/dist/core/endpoints/characterEndpoints.d.ts.map +1 -1
- package/dist/core/endpoints/contactEndpoints.d.mts +1 -0
- package/dist/core/endpoints/contactEndpoints.d.ts +1 -0
- package/dist/core/endpoints/contactEndpoints.d.ts.map +1 -1
- package/dist/core/endpoints/contractEndpoints.d.mts +2 -0
- package/dist/core/endpoints/contractEndpoints.d.ts +2 -0
- package/dist/core/endpoints/contractEndpoints.d.ts.map +1 -1
- package/dist/core/endpoints/corporationEndpoints.d.mts +16 -3
- package/dist/core/endpoints/corporationEndpoints.d.ts +16 -3
- package/dist/core/endpoints/corporationEndpoints.d.ts.map +1 -1
- package/dist/core/endpoints/createClient.d.mts +2 -2
- package/dist/core/endpoints/createClient.d.ts +2 -2
- package/dist/core/endpoints/createClient.d.ts.map +1 -1
- package/dist/core/endpoints/esi-cache-ttls.generated.d.ts.map +1 -1
- package/dist/core/endpoints/esi-rate-limit-groups.generated.d.ts.map +1 -1
- package/dist/core/endpoints/esi-scopes.generated.d.ts.map +1 -1
- package/dist/core/endpoints/fittingEndpoints.d.mts +3 -0
- package/dist/core/endpoints/fittingEndpoints.d.ts +3 -0
- package/dist/core/endpoints/fittingEndpoints.d.ts.map +1 -1
- package/dist/core/endpoints/fleetEndpoints.d.mts +6 -0
- package/dist/core/endpoints/fleetEndpoints.d.ts +6 -0
- package/dist/core/endpoints/fleetEndpoints.d.ts.map +1 -1
- package/dist/core/endpoints/industryEndpoints.d.mts +2 -2
- package/dist/core/endpoints/industryEndpoints.d.ts +2 -2
- package/dist/core/endpoints/mailEndpoints.d.mts +2 -0
- package/dist/core/endpoints/mailEndpoints.d.ts +2 -0
- package/dist/core/endpoints/mailEndpoints.d.ts.map +1 -1
- package/dist/core/endpoints/mercenaryEndpoints.d.mts +1 -1
- package/dist/core/endpoints/mercenaryEndpoints.d.ts +1 -1
- package/dist/core/endpoints/metaEndpoints.d.mts +23 -8
- package/dist/core/endpoints/metaEndpoints.d.ts +23 -8
- package/dist/core/endpoints/metaEndpoints.d.ts.map +1 -1
- package/dist/core/endpoints/militaryCampaignEndpoints.d.mts +78 -49
- package/dist/core/endpoints/militaryCampaignEndpoints.d.ts +78 -49
- package/dist/core/endpoints/militaryCampaignEndpoints.d.ts.map +1 -1
- package/dist/core/endpoints/paragonHubEndpoints.d.mts +5 -5
- package/dist/core/endpoints/paragonHubEndpoints.d.ts +5 -5
- package/dist/core/endpoints/skyhookEndpoints.d.mts +10 -8
- package/dist/core/endpoints/skyhookEndpoints.d.ts +10 -8
- package/dist/core/endpoints/skyhookEndpoints.d.ts.map +1 -1
- package/dist/core/logger/DefaultLogger.d.mts +20 -1
- package/dist/core/logger/DefaultLogger.d.ts +20 -1
- package/dist/core/logger/DefaultLogger.d.ts.map +1 -1
- package/dist/core/logger/ILogger.d.mts +9 -0
- package/dist/core/logger/ILogger.d.ts +9 -0
- package/dist/core/logger/ILogger.d.ts.map +1 -1
- package/dist/core/logger/NoopLogger.d.ts.map +1 -1
- package/dist/core/logger/clientLog.d.ts.map +1 -1
- package/dist/core/logger/loggerUtil.d.ts.map +1 -1
- package/dist/core/logger/redactLog.d.ts +23 -0
- package/dist/core/logger/redactLog.d.ts.map +1 -0
- package/dist/core/logger/resolveLogger.d.ts +3 -3
- package/dist/core/logger/resolveLogger.d.ts.map +1 -1
- package/dist/core/pagination/AsyncPaginationIterator.d.ts.map +1 -1
- package/dist/core/pagination/CursorPaginationHandler.d.mts +2 -1
- package/dist/core/pagination/CursorPaginationHandler.d.ts +2 -1
- package/dist/core/pagination/CursorPaginationHandler.d.ts.map +1 -1
- package/dist/core/ports/CacheStore.d.mts +32 -0
- package/dist/core/ports/CacheStore.d.ts +32 -0
- package/dist/core/ports/CacheStore.d.ts.map +1 -0
- package/dist/core/ports/Clock.d.mts +13 -0
- package/dist/core/ports/Clock.d.ts +13 -0
- package/dist/core/ports/Clock.d.ts.map +1 -0
- package/dist/core/ports/HttpTransport.d.mts +7 -0
- package/dist/core/ports/HttpTransport.d.ts +7 -0
- package/dist/core/ports/HttpTransport.d.ts.map +1 -0
- package/dist/core/ports/Identity.d.mts +31 -0
- package/dist/core/ports/Identity.d.ts +31 -0
- package/dist/core/ports/Identity.d.ts.map +1 -0
- package/dist/core/ports/Logger.d.mts +17 -0
- package/dist/core/ports/Logger.d.ts +17 -0
- package/dist/core/ports/Logger.d.ts.map +1 -0
- package/dist/core/ports/OperationTransport.d.mts +42 -0
- package/dist/core/ports/OperationTransport.d.ts +42 -0
- package/dist/core/ports/OperationTransport.d.ts.map +1 -0
- package/dist/core/ports/TokenProvider.d.mts +7 -0
- package/dist/core/ports/TokenProvider.d.ts +7 -0
- package/dist/core/ports/TokenProvider.d.ts.map +1 -0
- package/dist/core/ports/index.d.mts +14 -0
- package/dist/core/ports/index.d.ts +14 -0
- package/dist/core/ports/index.d.ts.map +1 -0
- package/dist/core/rateLimiter/RateLimiter.d.mts +11 -4
- package/dist/core/rateLimiter/RateLimiter.d.ts +11 -4
- package/dist/core/rateLimiter/RateLimiter.d.ts.map +1 -1
- package/dist/core/requestPipeline/cachePolicy.d.ts +5 -3
- package/dist/core/requestPipeline/cachePolicy.d.ts.map +1 -1
- package/dist/core/requestPipeline/fetchExecution.d.ts +3 -1
- package/dist/core/requestPipeline/fetchExecution.d.ts.map +1 -1
- package/dist/core/requestPipeline/headers.d.ts +1 -1
- package/dist/core/requestPipeline/headers.d.ts.map +1 -1
- package/dist/core/requestPipeline/index.d.ts +3 -5
- package/dist/core/requestPipeline/index.d.ts.map +1 -1
- package/dist/core/requestPipeline/paginationOrchestration.d.ts +1 -1
- package/dist/core/requestPipeline/paginationOrchestration.d.ts.map +1 -1
- package/dist/core/requestPipeline/statusHandling.d.ts +3 -3
- package/dist/core/requestPipeline/statusHandling.d.ts.map +1 -1
- package/dist/core/util/callerIdentity.d.ts +10 -0
- package/dist/core/util/callerIdentity.d.ts.map +1 -0
- package/dist/core/util/concurrency.d.ts +2 -2
- package/dist/core/util/concurrency.d.ts.map +1 -1
- package/dist/core/util/error.d.mts +92 -3
- package/dist/core/util/error.d.ts +92 -3
- package/dist/core/util/error.d.ts.map +1 -1
- package/dist/core/util/retry.d.mts +4 -4
- package/dist/core/util/retry.d.ts +4 -4
- package/dist/core/util/retry.d.ts.map +1 -1
- package/dist/core/util/validation.d.ts +6 -0
- package/dist/core/util/validation.d.ts.map +1 -1
- package/dist/errors.d.mts +2 -3
- package/dist/errors.d.ts +2 -3
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +29 -3
- package/dist/errors.js.map +1 -1
- package/dist/errors.mjs +28 -2
- package/dist/generated/operations.generated.d.mts +9379 -0
- package/dist/generated/operations.generated.d.ts +9379 -0
- package/dist/generated/operations.generated.d.ts.map +1 -0
- package/dist/index.d.mts +4 -4
- package/dist/index.d.ts +4 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +699 -2865
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +359 -2525
- package/dist/index.mjs.map +1 -1
- package/dist/schemas/character.d.mts +5 -0
- package/dist/schemas/character.d.ts +5 -0
- package/dist/schemas/character.d.ts.map +1 -1
- package/dist/schemas/contacts.d.mts +2 -0
- package/dist/schemas/contacts.d.ts +2 -0
- package/dist/schemas/contacts.d.ts.map +1 -1
- package/dist/schemas/corporation.d.mts +24 -3
- package/dist/schemas/corporation.d.ts +24 -3
- package/dist/schemas/corporation.d.ts.map +1 -1
- package/dist/schemas/fittings.d.mts +4 -0
- package/dist/schemas/fittings.d.ts +4 -0
- package/dist/schemas/fittings.d.ts.map +1 -1
- package/dist/schemas/fleet.d.mts +8 -0
- package/dist/schemas/fleet.d.ts +8 -0
- package/dist/schemas/fleet.d.ts.map +1 -1
- package/dist/schemas/index.js +24 -2
- package/dist/schemas/index.js.map +1 -1
- package/dist/schemas/index.mjs +23 -1
- package/dist/schemas/industry.d.mts +2 -2
- package/dist/schemas/industry.d.ts +2 -2
- package/dist/schemas/mail.d.mts +4 -0
- package/dist/schemas/mail.d.ts +4 -0
- package/dist/schemas/mail.d.ts.map +1 -1
- package/dist/schemas/mercenary.d.mts +1 -1
- package/dist/schemas/mercenary.d.ts +1 -1
- package/dist/schemas/meta.d.mts +18 -9
- package/dist/schemas/meta.d.ts +18 -9
- package/dist/schemas/meta.d.ts.map +1 -1
- package/dist/schemas/military-campaigns.d.mts +54 -10
- package/dist/schemas/military-campaigns.d.ts +54 -10
- package/dist/schemas/military-campaigns.d.ts.map +1 -1
- package/dist/schemas/paragon-hub.d.mts +4 -4
- package/dist/schemas/paragon-hub.d.ts +4 -4
- package/dist/schemas/skyhooks.d.mts +18 -6
- package/dist/schemas/skyhooks.d.ts +18 -6
- package/dist/schemas/skyhooks.d.ts.map +1 -1
- package/dist/sde/clock.d.ts +11 -0
- package/dist/sde/clock.d.ts.map +1 -0
- package/dist/sde/domain/characters/schemas.d.ts +149 -0
- package/dist/sde/domain/characters/schemas.d.ts.map +1 -0
- package/dist/sde/domain/characters/types.d.mts +163 -0
- package/dist/sde/domain/characters/types.d.ts +163 -0
- package/dist/sde/domain/characters/types.d.ts.map +1 -0
- package/dist/sde/domain/content/schemas.d.ts +84 -0
- package/dist/sde/domain/content/schemas.d.ts.map +1 -0
- package/dist/sde/domain/content/types.d.mts +91 -0
- package/dist/sde/domain/content/types.d.ts +91 -0
- package/dist/sde/domain/content/types.d.ts.map +1 -0
- package/dist/sde/domain/corporations/schemas.d.ts +113 -0
- package/dist/sde/domain/corporations/schemas.d.ts.map +1 -0
- package/dist/sde/domain/corporations/types.d.mts +118 -0
- package/dist/sde/domain/corporations/types.d.ts +118 -0
- package/dist/sde/domain/corporations/types.d.ts.map +1 -0
- package/dist/sde/domain/dogma/schemas.d.ts +76 -0
- package/dist/sde/domain/dogma/schemas.d.ts.map +1 -0
- package/dist/sde/domain/dogma/types.d.mts +80 -0
- package/dist/sde/domain/dogma/types.d.ts +80 -0
- package/dist/sde/domain/dogma/types.d.ts.map +1 -0
- package/dist/sde/domain/industry/schemas.d.ts +204 -0
- package/dist/sde/domain/industry/schemas.d.ts.map +1 -0
- package/dist/sde/domain/industry/types.d.mts +88 -0
- package/dist/sde/domain/industry/types.d.ts +88 -0
- package/dist/sde/domain/industry/types.d.ts.map +1 -0
- package/dist/sde/domain/market/schemas.d.ts +24 -0
- package/dist/sde/domain/market/schemas.d.ts.map +1 -0
- package/dist/sde/domain/market/types.d.mts +25 -0
- package/dist/sde/domain/market/types.d.ts +25 -0
- package/dist/sde/domain/market/types.d.ts.map +1 -0
- package/dist/sde/domain/schemas.d.ts +15 -0
- package/dist/sde/domain/schemas.d.ts.map +1 -0
- package/dist/sde/domain/skins/schemas.d.ts +109 -0
- package/dist/sde/domain/skins/schemas.d.ts.map +1 -0
- package/dist/sde/domain/skins/types.d.mts +121 -0
- package/dist/sde/domain/skins/types.d.ts +121 -0
- package/dist/sde/domain/skins/types.d.ts.map +1 -0
- package/dist/sde/domain/types/schemas.d.ts +163 -0
- package/dist/sde/domain/types/schemas.d.ts.map +1 -0
- package/dist/sde/domain/types/types.d.mts +182 -0
- package/dist/sde/domain/types/types.d.ts +182 -0
- package/dist/sde/domain/types/types.d.ts.map +1 -0
- package/dist/sde/domain/types.d.mts +16 -0
- package/dist/sde/domain/types.d.ts +16 -0
- package/dist/sde/domain/types.d.ts.map +1 -0
- package/dist/sde/domain/ui/schemas.d.ts +42 -0
- package/dist/sde/domain/ui/schemas.d.ts.map +1 -0
- package/dist/sde/domain/ui/types.d.mts +45 -0
- package/dist/sde/domain/ui/types.d.ts +45 -0
- package/dist/sde/domain/ui/types.d.ts.map +1 -0
- package/dist/sde/domain/universe/schemas.d.ts +239 -0
- package/dist/sde/domain/universe/schemas.d.ts.map +1 -0
- package/dist/sde/domain/universe/types.d.mts +206 -0
- package/dist/sde/domain/universe/types.d.ts +206 -0
- package/dist/sde/domain/universe/types.d.ts.map +1 -0
- package/dist/sde/domain/version/schemas.d.ts +11 -0
- package/dist/sde/domain/version/schemas.d.ts.map +1 -0
- package/dist/sde/errors.d.mts +1 -1
- package/dist/sde/errors.d.ts +1 -1
- package/dist/sde/errors.d.ts.map +1 -1
- package/dist/sde/index.d.mts +7 -6
- package/dist/sde/index.d.ts +7 -6
- package/dist/sde/index.d.ts.map +1 -1
- package/dist/sde/index.js +31 -21
- package/dist/sde/index.js.map +1 -1
- package/dist/sde/index.mjs +26 -16
- package/dist/sde/index.mjs.map +1 -1
- package/dist/sde/ingestion/SdeDatabaseBuilder.d.ts +11 -0
- package/dist/sde/ingestion/SdeDatabaseBuilder.d.ts.map +1 -1
- package/dist/sde/ingestion/SdeDownloader.d.ts +2 -2
- package/dist/sde/ingestion/SdeDownloader.d.ts.map +1 -1
- package/dist/sde/memory.d.mts +5 -5
- package/dist/sde/memory.d.ts +5 -5
- package/dist/sde/memory.d.ts.map +1 -1
- package/dist/sde/memory.js +2 -2
- package/dist/sde/memory.mjs +1 -1
- package/dist/sde/{IStaticDataProvider.d.mts → ports/IStaticDataProvider.d.mts} +9 -2
- package/dist/sde/{IStaticDataProvider.d.ts → ports/IStaticDataProvider.d.ts} +9 -2
- package/dist/sde/ports/IStaticDataProvider.d.ts.map +1 -0
- package/dist/sde/{MemorySdeProvider.d.mts → providers/memory/MemorySdeProvider.d.mts} +3 -3
- package/dist/sde/{MemorySdeProvider.d.ts → providers/memory/MemorySdeProvider.d.ts} +3 -3
- package/dist/sde/providers/memory/MemorySdeProvider.d.ts.map +1 -0
- package/dist/sde/providers/order.d.ts +10 -0
- package/dist/sde/providers/order.d.ts.map +1 -0
- package/dist/sde/{SdeDataProvider.d.mts → providers/yaml/SdeDataProvider.d.mts} +14 -5
- package/dist/sde/{SdeDataProvider.d.ts → providers/yaml/SdeDataProvider.d.ts} +14 -5
- package/dist/sde/providers/yaml/SdeDataProvider.d.ts.map +1 -0
- package/dist/sde/{SdeTestDataFactory.d.mts → testing/SdeTestDataFactory.d.mts} +3 -3
- package/dist/sde/{SdeTestDataFactory.d.ts → testing/SdeTestDataFactory.d.ts} +3 -3
- package/dist/sde/testing/SdeTestDataFactory.d.ts.map +1 -0
- package/dist/sde/version.d.mts +1 -1
- package/dist/sde/version.d.ts +1 -1
- package/dist/sde/version.d.ts.map +1 -1
- package/dist/testing/TestDataFactory.d.mts +21 -3
- package/dist/testing/TestDataFactory.d.ts +21 -3
- package/dist/testing/TestDataFactory.d.ts.map +1 -1
- package/dist/testing/index.d.mts +1 -0
- package/dist/testing/index.d.ts +1 -0
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/testing/index.js +157 -10
- package/dist/testing/index.js.map +1 -1
- package/dist/testing/index.mjs +155 -8
- package/dist/testing/index.mjs.map +1 -1
- package/dist/testing/mockTransport.d.mts +87 -0
- package/dist/testing/mockTransport.d.ts +87 -0
- package/dist/testing/mockTransport.d.ts.map +1 -0
- package/dist/types/generated/esi-spec.generated.d.mts +230 -10
- package/dist/types/generated/esi-spec.generated.d.ts +230 -10
- package/dist/types/generated/esi-spec.generated.d.ts.map +1 -1
- package/dist/types/military-campaigns.d.mts +4 -1
- package/dist/types/military-campaigns.d.ts +4 -1
- package/dist/types/military-campaigns.d.ts.map +1 -1
- package/dist/types/skyhooks.d.mts +2 -1
- package/dist/types/skyhooks.d.ts +2 -1
- package/dist/types/skyhooks.d.ts.map +1 -1
- package/package.json +167 -131
- package/dist/chunk-3ZI5A37L.mjs.map +0 -1
- package/dist/chunk-BBSHKVPI.js.map +0 -1
- package/dist/chunk-D5L5HZVF.mjs +0 -417
- package/dist/chunk-D5L5HZVF.mjs.map +0 -1
- package/dist/chunk-MSJHIJXA.js.map +0 -1
- package/dist/chunk-R7D7M2LQ.mjs.map +0 -1
- package/dist/chunk-SAQBXXTM.js.map +0 -1
- package/dist/chunk-VZS32UQ3.mjs.map +0 -1
- package/dist/chunk-XIB2OXEZ.js +0 -417
- package/dist/chunk-XIB2OXEZ.js.map +0 -1
- package/dist/config/jest/globalSetup.d.ts +0 -2
- package/dist/config/jest/globalSetup.d.ts.map +0 -1
- package/dist/config/jest/globalTeardown.d.ts +0 -2
- package/dist/config/jest/globalTeardown.d.ts.map +0 -1
- package/dist/config/jest/jest.setup.d.ts +0 -3
- package/dist/config/jest/jest.setup.d.ts.map +0 -1
- package/dist/core/ClientRegistry.d.mts +0 -45
- package/dist/core/ClientRegistry.d.ts +0 -45
- package/dist/core/ClientRegistry.d.ts.map +0 -1
- package/dist/core/logger/logger.d.ts +0 -12
- package/dist/core/logger/logger.d.ts.map +0 -1
- package/dist/sde/IStaticDataProvider.d.ts.map +0 -1
- package/dist/sde/MemorySdeProvider.d.ts.map +0 -1
- package/dist/sde/SdeDataProvider.d.ts.map +0 -1
- package/dist/sde/SdeTestDataFactory.d.ts.map +0 -1
- package/dist/sde/schemas.d.ts +0 -1121
- package/dist/sde/schemas.d.ts.map +0 -1
- package/dist/sde/types.d.mts +0 -1039
- package/dist/sde/types.d.ts +0 -1039
- package/dist/sde/types.d.ts.map +0 -1
package/package.json
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lgriffin/esi.ts",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "11.0.0",
|
|
4
4
|
"description": "This is a TypeScript Implementation for the EVE Online API offered through ESI",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/index.mjs",
|
|
7
7
|
"types": "dist/index.d.ts",
|
|
8
8
|
"type": "commonjs",
|
|
9
|
+
"sideEffects": false,
|
|
9
10
|
"engines": {
|
|
10
|
-
"node": ">=
|
|
11
|
+
"node": ">=22.12.0"
|
|
11
12
|
},
|
|
12
13
|
"publishConfig": {
|
|
13
14
|
"access": "public"
|
|
@@ -53,6 +54,16 @@
|
|
|
53
54
|
"default": "./dist/testing/index.js"
|
|
54
55
|
}
|
|
55
56
|
},
|
|
57
|
+
"./client": {
|
|
58
|
+
"import": {
|
|
59
|
+
"types": "./dist/client/index.d.mts",
|
|
60
|
+
"default": "./dist/client/index.mjs"
|
|
61
|
+
},
|
|
62
|
+
"require": {
|
|
63
|
+
"types": "./dist/client/index.d.ts",
|
|
64
|
+
"default": "./dist/client/index.js"
|
|
65
|
+
}
|
|
66
|
+
},
|
|
56
67
|
"./sde": {
|
|
57
68
|
"import": {
|
|
58
69
|
"types": "./dist/sde/index.d.mts",
|
|
@@ -79,15 +90,21 @@
|
|
|
79
90
|
"dist",
|
|
80
91
|
"README.md",
|
|
81
92
|
"LICENSE",
|
|
93
|
+
"NOTICE",
|
|
82
94
|
"CHANGELOG.md"
|
|
83
95
|
],
|
|
84
96
|
"scripts": {
|
|
85
|
-
"build": "tsup && tsc --emitDeclarationOnly && node scripts/esm-declarations.cjs",
|
|
97
|
+
"build": "tsup && tsc --emitDeclarationOnly && node scripts/package/esm-declarations.cjs",
|
|
86
98
|
"typecheck": "tsc --noEmit",
|
|
87
|
-
"
|
|
99
|
+
"typecheck:examples": "tsc -p tsconfig.examples.json",
|
|
100
|
+
"typecheck:isolated": "ts-node scripts/package/isolated-declarations.ts",
|
|
101
|
+
"examples:nightly": "ts-node scripts/docs/examples-nightly.ts",
|
|
102
|
+
"help": "ts-node scripts/quality/npm-help.ts",
|
|
88
103
|
"start": "ts-node examples/character-profile.ts",
|
|
89
104
|
"example": "ts-node examples/character-profile.ts",
|
|
90
105
|
"example:status": "ts-node examples/status.ts",
|
|
106
|
+
"example:multi-character": "ts-node examples/multi-character.ts",
|
|
107
|
+
"example:public-vs-authenticated": "ts-node examples/public-vs-authenticated.ts",
|
|
91
108
|
"example:character": "ts-node examples/character-lookup.ts",
|
|
92
109
|
"example:universe": "ts-node examples/universe-info.ts",
|
|
93
110
|
"example:market": "ts-node examples/market-prices.ts",
|
|
@@ -133,144 +150,168 @@
|
|
|
133
150
|
"example:corporation-projects": "ts-node examples/corporation-projects.ts",
|
|
134
151
|
"example:freelance-jobs": "ts-node examples/freelance-jobs.ts",
|
|
135
152
|
"example:military-campaigns": "ts-node examples/military-campaigns.ts",
|
|
153
|
+
"example:meta": "ts-node examples/meta.ts",
|
|
154
|
+
"example:public-contracts": "ts-node examples/public-contracts.ts",
|
|
155
|
+
"example:corporation-history": "ts-node examples/corporation-history.ts",
|
|
156
|
+
"example:remaining-coverage": "ts-node examples/remaining-coverage.ts",
|
|
136
157
|
"example:sde-basic": "ts-node examples/sde-basic-lookup.ts",
|
|
137
158
|
"example:sde-fitting": "ts-node examples/sde-fitting.ts",
|
|
138
159
|
"example:sde-industry": "ts-node examples/sde-industry.ts",
|
|
139
160
|
"example:sde-market-tree": "ts-node examples/sde-market-tree.ts",
|
|
140
|
-
"sde:ingest": "ts-node scripts/sde-ingest.ts",
|
|
161
|
+
"sde:ingest": "ts-node scripts/sde/sde-ingest.ts",
|
|
162
|
+
"sde:drift": "ts-node scripts/sde/sde-drift.ts",
|
|
141
163
|
"example:write-ops": "ts-node examples/write-operations.ts",
|
|
142
|
-
"token:create": "ts-node scripts/create-token.ts",
|
|
143
|
-
"token:refresh": "ts-node scripts/refresh-token.ts",
|
|
144
|
-
"lint": "eslint src",
|
|
145
|
-
"lint:fix": "eslint src --fix",
|
|
146
|
-
"lint:bdd-seam": "eslint --config eslint
|
|
147
|
-
"lint:determinism": "ts-node scripts/determinism-lint.ts",
|
|
148
|
-
"lint:
|
|
149
|
-
"lint:
|
|
150
|
-
"lint:
|
|
164
|
+
"token:create": "ts-node scripts/auth/create-token.ts",
|
|
165
|
+
"token:refresh": "ts-node scripts/auth/refresh-token.ts",
|
|
166
|
+
"lint": "eslint src tests",
|
|
167
|
+
"lint:fix": "eslint src tests --fix",
|
|
168
|
+
"lint:bdd-seam": "eslint --config config/eslint/bdd-seam.config.mjs tests/bdd",
|
|
169
|
+
"lint:determinism": "ts-node scripts/quality/determinism-lint.ts",
|
|
170
|
+
"lint:layers": "eslint --config config/eslint/layers.config.mjs --no-inline-config src",
|
|
171
|
+
"lint:suite-health": "eslint --config config/eslint/suite-health.config.mjs tests",
|
|
172
|
+
"lint:workflows": "ts-node scripts/quality/workflow-lint.ts",
|
|
173
|
+
"lint:package": "ts-node scripts/package/package-lint.ts",
|
|
151
174
|
"size": "size-limit",
|
|
152
175
|
"format": "prettier --write \"src/**/*.ts\" \"tests/**/*.ts\"",
|
|
153
176
|
"format:check": "prettier --check \"src/**/*.ts\" \"tests/**/*.ts\"",
|
|
154
|
-
"test": "jest --config jest
|
|
155
|
-
"test:watch": "jest --config jest
|
|
156
|
-
"bdd": "jest --config jest
|
|
157
|
-
"bdd:steps": "jest --config jest
|
|
158
|
-
"bdd:alliance": "jest --config jest
|
|
159
|
-
"bdd:assets": "jest --config jest
|
|
160
|
-
"bdd:calendar": "jest --config jest
|
|
161
|
-
"bdd:character": "jest --config jest
|
|
162
|
-
"bdd:clones": "jest --config jest
|
|
163
|
-
"bdd:contacts": "jest --config jest
|
|
164
|
-
"bdd:contracts": "jest --config jest
|
|
165
|
-
"bdd:corporation": "jest --config jest
|
|
166
|
-
"bdd:corporation-projects": "jest --config jest
|
|
167
|
-
"bdd:dogma": "jest --config jest
|
|
168
|
-
"bdd:etag-caching": "jest --config jest
|
|
169
|
-
"bdd:factions": "jest --config jest
|
|
170
|
-
"bdd:fittings": "jest --config jest
|
|
171
|
-
"bdd:fleets": "jest --config jest
|
|
172
|
-
"bdd:freelance": "jest --config jest
|
|
173
|
-
"bdd:incursions": "jest --config jest
|
|
174
|
-
"bdd:industry": "jest --config jest
|
|
175
|
-
"bdd:insurance": "jest --config jest
|
|
176
|
-
"bdd:killmails": "jest --config jest
|
|
177
|
-
"bdd:location": "jest --config jest
|
|
178
|
-
"bdd:loyalty": "jest --config jest
|
|
179
|
-
"bdd:mail": "jest --config jest
|
|
180
|
-
"bdd:market": "jest --config jest
|
|
181
|
-
"bdd:meta": "jest --config jest
|
|
182
|
-
"bdd:pi": "jest --config jest
|
|
183
|
-
"bdd:route": "jest --config jest
|
|
184
|
-
"bdd:search": "jest --config jest
|
|
185
|
-
"bdd:skills": "jest --config jest
|
|
186
|
-
"bdd:skyhooks": "jest --config jest
|
|
187
|
-
"bdd:sovereignty": "jest --config jest
|
|
188
|
-
"bdd:mercenary": "jest --config jest
|
|
189
|
-
"bdd:military-campaigns": "jest --config jest
|
|
190
|
-
"bdd:access-lists": "jest --config jest
|
|
191
|
-
"bdd:sde": "jest --config jest
|
|
192
|
-
"bdd:status": "jest --config jest
|
|
193
|
-
"bdd:resilience": "jest --config jest
|
|
194
|
-
"bdd:ui": "jest --config jest
|
|
195
|
-
"bdd:universe": "jest --config jest
|
|
196
|
-
"bdd:wallet": "jest --config jest
|
|
197
|
-
"bdd:wars": "jest --config jest
|
|
198
|
-
"bdd:token-management": "jest --config jest
|
|
199
|
-
"bdd:integration": "jest --config jest
|
|
200
|
-
"bdd:performance": "jest --config jest
|
|
201
|
-
"coverage": "jest --config jest
|
|
202
|
-
"test:integration": "jest --config jest
|
|
203
|
-
"test:integration:live": "jest --config jest
|
|
204
|
-
"test:integration:gated": "node --env-file=.env -e \"require('child_process').execSync('npx jest --config jest
|
|
177
|
+
"test": "jest --config config/jest/unit.config.cjs",
|
|
178
|
+
"test:watch": "jest --config config/jest/unit.config.cjs --watch",
|
|
179
|
+
"bdd": "jest --config config/jest/unit.config.cjs --testPathPatterns=tests/bdd/",
|
|
180
|
+
"bdd:steps": "jest --config config/jest/unit.config.cjs --testPathPatterns=step-library",
|
|
181
|
+
"bdd:alliance": "jest --config config/jest/unit.config.cjs --testPathPatterns=specs/core/0001-alliance",
|
|
182
|
+
"bdd:assets": "jest --config config/jest/unit.config.cjs --testPathPatterns=step-definitions/core/assets",
|
|
183
|
+
"bdd:calendar": "jest --config config/jest/unit.config.cjs --testPathPatterns=step-definitions/core/calendar",
|
|
184
|
+
"bdd:character": "jest --config config/jest/unit.config.cjs --testPathPatterns=step-definitions/core/character",
|
|
185
|
+
"bdd:clones": "jest --config config/jest/unit.config.cjs --testPathPatterns=specs/core/0007-clones",
|
|
186
|
+
"bdd:contacts": "jest --config config/jest/unit.config.cjs --testPathPatterns=step-definitions/core/contacts",
|
|
187
|
+
"bdd:contracts": "jest --config config/jest/unit.config.cjs --testPathPatterns=step-definitions/core/contracts",
|
|
188
|
+
"bdd:corporation": "jest --config config/jest/unit.config.cjs --testPathPatterns=step-definitions/core/corporation",
|
|
189
|
+
"bdd:corporation-projects": "jest --config config/jest/unit.config.cjs --testPathPatterns=specs/core/0004-corporation-projects",
|
|
190
|
+
"bdd:dogma": "jest --config config/jest/unit.config.cjs --testPathPatterns=specs/core/0011-dogma",
|
|
191
|
+
"bdd:etag-caching": "jest --config config/jest/unit.config.cjs --testPathPatterns=step-definitions/core/etag-caching",
|
|
192
|
+
"bdd:factions": "jest --config config/jest/unit.config.cjs --testPathPatterns=step-definitions/core/factions",
|
|
193
|
+
"bdd:fittings": "jest --config config/jest/unit.config.cjs --testPathPatterns=step-definitions/core/fittings",
|
|
194
|
+
"bdd:fleets": "jest --config config/jest/unit.config.cjs --testPathPatterns=step-definitions/core/fleets",
|
|
195
|
+
"bdd:freelance": "jest --config config/jest/unit.config.cjs --testPathPatterns=step-definitions/core/freelance",
|
|
196
|
+
"bdd:incursions": "jest --config config/jest/unit.config.cjs --testPathPatterns=step-definitions/core/incursions",
|
|
197
|
+
"bdd:industry": "jest --config config/jest/unit.config.cjs --testPathPatterns=step-definitions/core/industry",
|
|
198
|
+
"bdd:insurance": "jest --config config/jest/unit.config.cjs --testPathPatterns=specs/core/0018-insurance",
|
|
199
|
+
"bdd:killmails": "jest --config config/jest/unit.config.cjs --testPathPatterns=specs/core/0019-killmails",
|
|
200
|
+
"bdd:location": "jest --config config/jest/unit.config.cjs --testPathPatterns=step-definitions/core/location",
|
|
201
|
+
"bdd:loyalty": "jest --config config/jest/unit.config.cjs --testPathPatterns=step-definitions/core/loyalty",
|
|
202
|
+
"bdd:mail": "jest --config config/jest/unit.config.cjs --testPathPatterns=specs/core/0022-mail",
|
|
203
|
+
"bdd:market": "jest --config config/jest/unit.config.cjs --testPathPatterns=specs/core/0023-market",
|
|
204
|
+
"bdd:meta": "jest --config config/jest/unit.config.cjs --testPathPatterns=specs/core/0025-meta",
|
|
205
|
+
"bdd:pi": "jest --config config/jest/unit.config.cjs --testPathPatterns=step-definitions/core/pi",
|
|
206
|
+
"bdd:route": "jest --config config/jest/unit.config.cjs --testPathPatterns=specs/core/0029-route",
|
|
207
|
+
"bdd:search": "jest --config config/jest/unit.config.cjs --testPathPatterns=step-definitions/core/search",
|
|
208
|
+
"bdd:skills": "jest --config config/jest/unit.config.cjs --testPathPatterns=step-definitions/core/skills",
|
|
209
|
+
"bdd:skyhooks": "jest --config config/jest/unit.config.cjs --testPathPatterns=step-definitions/core/skyhooks",
|
|
210
|
+
"bdd:sovereignty": "jest --config config/jest/unit.config.cjs --testPathPatterns=step-definitions/core/sovereignty",
|
|
211
|
+
"bdd:mercenary": "jest --config config/jest/unit.config.cjs --testPathPatterns=step-definitions/core/mercenary",
|
|
212
|
+
"bdd:military-campaigns": "jest --config config/jest/unit.config.cjs --testPathPatterns=step-definitions/core/military-campaigns",
|
|
213
|
+
"bdd:access-lists": "jest --config config/jest/unit.config.cjs --testPathPatterns=specs/core/0039-access-lists",
|
|
214
|
+
"bdd:sde": "jest --config config/jest/unit.config.cjs --testPathPatterns=specs/sde",
|
|
215
|
+
"bdd:status": "jest --config config/jest/unit.config.cjs --testPathPatterns=step-definitions/core/status",
|
|
216
|
+
"bdd:resilience": "jest --config config/jest/unit.config.cjs --testPathPatterns=step-definitions/core/resilience",
|
|
217
|
+
"bdd:ui": "jest --config config/jest/unit.config.cjs --testPathPatterns=step-definitions/core/ui",
|
|
218
|
+
"bdd:universe": "jest --config config/jest/unit.config.cjs --testPathPatterns=specs/core/0036-universe",
|
|
219
|
+
"bdd:wallet": "jest --config config/jest/unit.config.cjs --testPathPatterns=specs/core/0037-wallet",
|
|
220
|
+
"bdd:wars": "jest --config config/jest/unit.config.cjs --testPathPatterns=specs/core/0038-wars",
|
|
221
|
+
"bdd:token-management": "jest --config config/jest/unit.config.cjs --testPathPatterns=step-definitions/core/token-management",
|
|
222
|
+
"bdd:integration": "jest --config config/jest/unit.config.cjs --testPathPatterns=step-definitions/integration",
|
|
223
|
+
"bdd:performance": "jest --config config/jest/unit.config.cjs --testPathPatterns=step-definitions/performance",
|
|
224
|
+
"coverage": "jest --config config/jest/unit.config.cjs --coverage",
|
|
225
|
+
"test:integration": "jest --config config/jest/integration.config.cjs",
|
|
226
|
+
"test:integration:live": "jest --config config/jest/integration.live.config.cjs",
|
|
227
|
+
"test:integration:gated": "node --env-file=.env -e \"require('child_process').execSync('npx jest --config config/jest/integration.config.cjs --testPathPatterns=gated-auth',{stdio:'inherit',env:Object.assign({},process.env,{ESI_GATED_TESTS:'true'})})\"",
|
|
205
228
|
"test:all": "npm run test && npm run bdd && npm run test:integration && npm run fuzz && npm run test:types",
|
|
206
|
-
"contract": "jest --config jest
|
|
207
|
-
"contract:live": "jest --config jest
|
|
208
|
-
"contract:snapshot": "ts-node scripts/snapshot-openapi.ts",
|
|
229
|
+
"contract": "jest --config config/jest/contract.config.cjs",
|
|
230
|
+
"contract:live": "jest --config config/jest/contract.live.config.cjs",
|
|
231
|
+
"contract:snapshot": "ts-node scripts/spec/snapshot-openapi.ts",
|
|
209
232
|
"contract:record": "ts-node tests/contract/record.ts",
|
|
210
|
-
"contract:replay": "jest --config jest
|
|
233
|
+
"contract:replay": "jest --config config/jest/contract.replay.config.cjs",
|
|
211
234
|
"contract:shape-diff": "ts-node tests/contract/shape-diff.ts",
|
|
212
235
|
"contract:diff": "docker run --rm -v ./tests/contract/snapshots:/specs tufin/oasdiff breaking /specs/esi-openapi.snapshot.json https://esi.evetech.net/meta/openapi.json",
|
|
213
|
-
"benchmark": "ts-node scripts/bench-ab.ts --head .",
|
|
214
|
-
"bench:ab": "ts-node scripts/bench-ab.ts",
|
|
215
|
-
"bench:compare": "ts-node scripts/bench-compare.ts",
|
|
216
|
-
"bench:trend": "ts-node scripts/bench-trend.ts",
|
|
217
|
-
"soak": "node --expose-gc -r ts-node/register/transpile-only scripts/soak.ts",
|
|
218
|
-
"fuzz": "jest --config jest
|
|
219
|
-
"fuzz:properties": "jest --config jest
|
|
220
|
-
"fuzz:api": "bash scripts/run-schemathesis.sh",
|
|
221
|
-
"faults": "jest --config jest
|
|
222
|
-
"faults:nightly": "jest --config jest
|
|
223
|
-
"mock:esi": "prism mock https://esi.evetech.net/meta/openapi.json
|
|
236
|
+
"benchmark": "ts-node scripts/bench/bench-ab.ts --head .",
|
|
237
|
+
"bench:ab": "ts-node scripts/bench/bench-ab.ts",
|
|
238
|
+
"bench:compare": "ts-node scripts/bench/bench-compare.ts",
|
|
239
|
+
"bench:trend": "ts-node scripts/bench/bench-trend.ts",
|
|
240
|
+
"soak": "node --expose-gc -r ts-node/register/transpile-only scripts/bench/soak.ts",
|
|
241
|
+
"fuzz": "jest --config config/jest/fuzz.config.cjs",
|
|
242
|
+
"fuzz:properties": "jest --config config/jest/fuzz.config.cjs --testPathPatterns property.test sde-schema-fuzz.test",
|
|
243
|
+
"fuzz:api": "bash scripts/spec/run-schemathesis.sh",
|
|
244
|
+
"faults": "jest --config config/jest/faults.config.cjs",
|
|
245
|
+
"faults:nightly": "jest --config config/jest/faults.nightly.config.cjs",
|
|
246
|
+
"mock:esi": "docker run --rm -p 4010:4010 stoplight/prism:5@sha256:3f6d29e31bfe0b99587f0f6f79c423858dd6a2ea7e1e4658273ed930a78a9acf mock -h 0.0.0.0 -p 4010 -m false https://esi.evetech.net/meta/openapi.json",
|
|
224
247
|
"test:types": "tsd --files 'tests/typetests/*.test-d.ts'",
|
|
225
|
-
"test:export-coverage": "ts-node scripts/export-coverage.ts",
|
|
226
|
-
"test:type-mutation": "ts-node scripts/type-mutation.ts",
|
|
227
|
-
"test:consumer": "ts-node scripts/consumer-contract.ts",
|
|
228
|
-
"test:docs-examples": "ts-node scripts/doc-examples.ts",
|
|
229
|
-
"generate:types": "ts-node scripts/generate-esi-types.ts",
|
|
230
|
-
"generate:okf": "ts-node scripts/generate-okf.ts",
|
|
231
|
-
"generate:endpoints": "ts-node scripts/generate-endpoint-scaffold.ts",
|
|
248
|
+
"test:export-coverage": "ts-node scripts/package/export-coverage.ts",
|
|
249
|
+
"test:type-mutation": "ts-node scripts/mutation/type-mutation.ts",
|
|
250
|
+
"test:consumer": "ts-node scripts/quality/consumer-contract.ts",
|
|
251
|
+
"test:docs-examples": "ts-node scripts/docs/doc-examples.ts",
|
|
252
|
+
"generate:types": "ts-node scripts/spec/generate-esi-types.ts",
|
|
253
|
+
"generate:okf": "ts-node scripts/docs/generate-okf.ts",
|
|
254
|
+
"generate:endpoints": "ts-node scripts/spec/generate-endpoint-scaffold.ts",
|
|
232
255
|
"generate:all": "npm run generate:types && npm run generate:okf && npm run contract:snapshot && npm run schema:drift && npm run validate:esi",
|
|
233
256
|
"knip": "knip",
|
|
234
|
-
"validate:esi": "ts-node scripts/validate-esi-endpoints.ts",
|
|
235
|
-
"validate:
|
|
257
|
+
"validate:esi": "ts-node scripts/spec/validate-esi-endpoints.ts",
|
|
258
|
+
"validate:esi:vendored": "ts-node scripts/spec/validate-esi-endpoints.ts --spec-file=tests/contract/snapshots/esi-openapi.snapshot.json",
|
|
259
|
+
"validate:auth-scopes": "ts-node scripts/spec/validate-auth-scopes.ts",
|
|
236
260
|
"validate:spec": "redocly lint",
|
|
237
|
-
"validate": "npm run lint && npm run format:check && npm run build && npm run coverage && knip
|
|
238
|
-
"release:canary": "ts-node scripts/release-canary.ts",
|
|
239
|
-
"release:sbom": "ts-node scripts/release-sbom.ts",
|
|
240
|
-
"
|
|
241
|
-
"
|
|
242
|
-
"spec:
|
|
243
|
-
"
|
|
244
|
-
"
|
|
245
|
-
"
|
|
246
|
-
"
|
|
247
|
-
"
|
|
248
|
-
"
|
|
261
|
+
"validate": "npm run lint && npm run format:check && npm run build && npm run coverage && npm run knip",
|
|
262
|
+
"release:canary": "ts-node scripts/release/release-canary.ts",
|
|
263
|
+
"release:sbom": "ts-node scripts/release/release-sbom.ts",
|
|
264
|
+
"release:dedupe-changelog": "ts-node scripts/release/changelog-dedupe.ts",
|
|
265
|
+
"validate:versions": "ts-node --transpile-only scripts/package/validate-versions.ts",
|
|
266
|
+
"spec:generate": "ts-node scripts/spec/spec-generate.ts",
|
|
267
|
+
"spec:generate:check": "ts-node scripts/spec/spec-generate.ts --check",
|
|
268
|
+
"spec:coverage": "ts-node scripts/spec/spec-coverage.ts",
|
|
269
|
+
"spec:coverage:sde": "ts-node scripts/sde/sde-spec-coverage.ts",
|
|
270
|
+
"spec:coverage:sde:ci": "ts-node scripts/sde/sde-spec-coverage.ts --ci",
|
|
271
|
+
"spec:coverage:clients": "ts-node scripts/spec/client-spec-coverage.ts",
|
|
272
|
+
"spec:coverage:clients:ci": "ts-node scripts/spec/client-spec-coverage.ts --ci",
|
|
273
|
+
"spec:response-schemas": "ts-node scripts/spec/spec-response-schemas.ts",
|
|
274
|
+
"spec:audit": "ts-node scripts/spec/spec-audit.ts",
|
|
275
|
+
"charter:audit": "ts-node scripts/quality/charter-audit.ts",
|
|
276
|
+
"spec:audit:verbose": "ts-node scripts/spec/spec-audit.ts --verbose",
|
|
277
|
+
"bdd:report": "ts-node scripts/quality/bdd-report.ts",
|
|
278
|
+
"ears": "ts-node scripts/quality/ears.ts",
|
|
279
|
+
"validate:spec-consistency": "ts-node scripts/spec/rule-schema-check.ts",
|
|
280
|
+
"check:local": "ts-node scripts/quality/verify-local.ts",
|
|
281
|
+
"check:local:fast": "ts-node scripts/quality/verify-local.ts --fast",
|
|
282
|
+
"check:local:all": "ts-node scripts/quality/verify-local.ts --all",
|
|
283
|
+
"check:all": "npm run lint && npm run format:check && npm run build && npm run coverage && npm run knip && npm run validate:esi && npm run validate:spec && npm run validate:versions && npm run spec:audit && npm run charter:audit && npm run validate:spec-consistency && npm run spec:coverage:sde:ci && npm run spec:coverage:clients:ci",
|
|
249
284
|
"docs": "typedoc --options typedoc.json",
|
|
250
285
|
"docs:watch": "typedoc --options typedoc.json --watch",
|
|
251
286
|
"docs:serve": "npx http-server docs-site/public/api -p 8080 -o",
|
|
252
|
-
"
|
|
253
|
-
"
|
|
287
|
+
"docs:sync": "ts-node scripts/docs/sync-docs.ts",
|
|
288
|
+
"docs:metrics": "ts-node --transpile-only scripts/docs/doc-metrics.ts",
|
|
289
|
+
"docs:site": "npm run docs && npm run docs:sync && npm --prefix docs-site run build",
|
|
290
|
+
"docs:site:dev": "npm run docs:sync && npm --prefix docs-site run dev",
|
|
291
|
+
"docs:site:preview": "npm --prefix docs-site run preview",
|
|
292
|
+
"clean": "rm -rf dist coverage && npm run clean:docs",
|
|
293
|
+
"clean:docs": "rm -rf docs-site/public/api docs-site/guide docs-site/examples docs-site/.vitepress/dist docs-site/.vitepress/sidebar.generated.json",
|
|
254
294
|
"prepare": "husky && npm run build",
|
|
255
|
-
"health
|
|
256
|
-
"
|
|
257
|
-
"mutation
|
|
258
|
-
"mutation:
|
|
259
|
-
"mutation:bdd
|
|
260
|
-
"mutation:
|
|
261
|
-
"mutation:
|
|
262
|
-
"mutation:ratchet": "ts-node scripts/mutation-ratchet.ts
|
|
263
|
-
"mutation:
|
|
264
|
-
"mutation:pr
|
|
265
|
-
"mutation:pr:
|
|
266
|
-
"mutation:
|
|
295
|
+
"health:live": "ts-node scripts/quality/live-health.ts",
|
|
296
|
+
"health-check": "ts-node -e \"import('./src/EsiClient').then(({EsiClient}) => { const c = new EsiClient(); return c.status.getStatus().then(console.log).finally(() => c.shutdown()); })\"",
|
|
297
|
+
"mutation": "stryker run config/mutation/stryker.config.mjs",
|
|
298
|
+
"mutation:report": "stryker run config/mutation/stryker.config.mjs --reporters html,clear-text",
|
|
299
|
+
"mutation:bdd": "stryker run config/mutation/stryker.bdd.config.mjs",
|
|
300
|
+
"mutation:bdd:merge": "ts-node scripts/mutation/mutation-merge.ts",
|
|
301
|
+
"mutation:unit:merge": "ts-node scripts/mutation/mutation-merge.ts --shards config/mutation/unit-shards.json --shard-dir reports/mutation/shards --out reports/mutation/mutation.json",
|
|
302
|
+
"mutation:bdd:ratchet": "ts-node scripts/mutation/mutation-ratchet.ts",
|
|
303
|
+
"mutation:ratchet": "ts-node scripts/mutation/mutation-ratchet.ts --suite unit",
|
|
304
|
+
"mutation:pr": "ts-node scripts/mutation/mutation-pr.ts",
|
|
305
|
+
"mutation:pr:shard": "ts-node scripts/mutation/mutation-pr.ts --baseline-shard",
|
|
306
|
+
"mutation:pr:gate": "ts-node scripts/mutation/mutation-pr-gate.ts",
|
|
307
|
+
"mutation:fixture": "ts-node scripts/mutation/mutation-fixture.ts",
|
|
267
308
|
"api-report": "api-extractor run --local --verbose",
|
|
268
309
|
"api-report:check": "api-extractor run --verbose",
|
|
269
|
-
"api-report:semver": "ts-node scripts/api-semver-gate.ts",
|
|
270
|
-
"schema:drift": "ts-node scripts/generate-schema-drift-report.ts",
|
|
271
|
-
"schema:drift:ci": "ts-node scripts/generate-schema-drift-report.ts --ci",
|
|
272
|
-
"audit:check": "ts-node scripts/audit-check.ts --check",
|
|
273
|
-
"audit:diff": "ts-node scripts/audit-check.ts --diff"
|
|
310
|
+
"api-report:semver": "ts-node scripts/package/api-semver-gate.ts",
|
|
311
|
+
"schema:drift": "ts-node scripts/spec/generate-schema-drift-report.ts",
|
|
312
|
+
"schema:drift:ci": "ts-node scripts/spec/generate-schema-drift-report.ts --ci",
|
|
313
|
+
"audit:check": "ts-node scripts/quality/audit-check.ts --check",
|
|
314
|
+
"audit:diff": "ts-node scripts/quality/audit-check.ts --diff"
|
|
274
315
|
},
|
|
275
316
|
"lint-staged": {
|
|
276
317
|
"src/**/*.ts": [
|
|
@@ -278,6 +319,7 @@
|
|
|
278
319
|
"prettier --write"
|
|
279
320
|
],
|
|
280
321
|
"tests/**/*.ts": [
|
|
322
|
+
"eslint --fix",
|
|
281
323
|
"prettier --write"
|
|
282
324
|
],
|
|
283
325
|
"*.{json,md,yml,yaml}": [
|
|
@@ -312,18 +354,15 @@
|
|
|
312
354
|
"@cucumber/messages": "^34.2.1",
|
|
313
355
|
"@microsoft/api-extractor": "^7.58.9",
|
|
314
356
|
"@redocly/cli": "^2.48.0",
|
|
315
|
-
"@size-limit/esbuild": "^
|
|
316
|
-
"@size-limit/file": "^
|
|
317
|
-
"@stoplight/prism-cli": "^5.14.2",
|
|
357
|
+
"@size-limit/esbuild": "^13.0.3",
|
|
358
|
+
"@size-limit/file": "^13.0.3",
|
|
318
359
|
"@stryker-mutator/core": "^10.0.0",
|
|
319
360
|
"@stryker-mutator/jest-runner": "^10.0.0",
|
|
320
361
|
"@stryker-mutator/typescript-checker": "^10.0.0",
|
|
321
|
-
"@types/adm-zip": "^0.5.8",
|
|
322
362
|
"@types/jest": "^30.0.0",
|
|
323
|
-
"@types/js-yaml": "^4.0.9",
|
|
324
363
|
"@types/node": "^26.3.0",
|
|
325
364
|
"adm-zip": "^0.6.0",
|
|
326
|
-
"better-sqlite3": "^
|
|
365
|
+
"better-sqlite3": "^13.0.3",
|
|
327
366
|
"esbuild": "^0.28.2",
|
|
328
367
|
"eslint": "^10.9.1",
|
|
329
368
|
"eslint-config-prettier": "^10.1.8",
|
|
@@ -335,22 +374,20 @@
|
|
|
335
374
|
"jest": "^30.4.2",
|
|
336
375
|
"jest-cucumber": "^4.5.0",
|
|
337
376
|
"jest-fetch-mock": "^4.2.0",
|
|
338
|
-
"jest-junit": "^17.0.0",
|
|
339
377
|
"js-yaml": "^5.4.0",
|
|
340
378
|
"knip": "^6.6.1",
|
|
341
379
|
"lint-staged": "^17.0.8",
|
|
342
380
|
"mitata": "^1.0.34",
|
|
343
381
|
"prettier": "^3.3.2",
|
|
344
382
|
"publint": "^0.3.24",
|
|
345
|
-
"size-limit": "^
|
|
383
|
+
"size-limit": "^13.0.3",
|
|
346
384
|
"ts-jest": "^29.4.11",
|
|
347
385
|
"ts-node": "^10.9.2",
|
|
348
386
|
"tsd": "^0.33.0",
|
|
349
387
|
"tsup": "^8.5.1",
|
|
350
388
|
"typedoc": "^0.28.18",
|
|
351
389
|
"typescript": "^6.0.3",
|
|
352
|
-
"typescript-eslint": "^8.68.0"
|
|
353
|
-
"zod": "^4.4.3"
|
|
390
|
+
"typescript-eslint": "^8.68.0"
|
|
354
391
|
},
|
|
355
392
|
"peerDependencies": {
|
|
356
393
|
"adm-zip": ">=0.4.11",
|
|
@@ -379,7 +416,6 @@
|
|
|
379
416
|
"brace-expansion": ">=5.0.8",
|
|
380
417
|
"esbuild": "$esbuild",
|
|
381
418
|
"uuid": "~11.1.1",
|
|
382
|
-
"@faker-js/faker": ">=10.5.0",
|
|
383
419
|
"fast-uri": "^3.1.6",
|
|
384
420
|
"cosmiconfig": {
|
|
385
421
|
"js-yaml": "^4.3.2"
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/sde/errors.ts","../src/sde/MemorySdeProvider.ts","../src/sde/SdeTestDataFactory.ts"],"sourcesContent":["export class SdeError extends Error {\n constructor(message: string) {\n super(message);\n this.name = 'SdeError';\n }\n}\n\nexport class SdeDatabaseError extends SdeError {\n public override readonly cause: unknown;\n\n constructor(message: string, cause?: unknown) {\n super(message);\n this.name = 'SdeDatabaseError';\n this.cause = cause;\n }\n}\n\nexport class SdeValidationError extends SdeError {\n public readonly validationError: unknown;\n public readonly entityType: string;\n public readonly entityId?: number;\n\n constructor(entityType: string, validationError: unknown, entityId?: number) {\n const idSuffix = entityId !== undefined ? ` (id: ${entityId})` : '';\n super(`SDE validation failed for ${entityType}${idSuffix}`);\n this.name = 'SdeValidationError';\n this.validationError = validationError;\n this.entityType = entityType;\n this.entityId = entityId;\n }\n}\n\nexport class SdeVersionMismatchError extends SdeError {\n public readonly expected: string;\n public readonly actual: string;\n\n constructor(expected: string, actual: string) {\n super(`SDE version mismatch: expected ${expected}, got ${actual}`);\n this.name = 'SdeVersionMismatchError';\n this.expected = expected;\n this.actual = actual;\n }\n}\n\nexport function isSdeError(error: unknown): error is SdeError {\n return error instanceof SdeError;\n}\n\nexport function isSdeDatabaseError(error: unknown): error is SdeDatabaseError {\n return error instanceof SdeDatabaseError;\n}\n\nexport function isSdeValidationError(\n error: unknown,\n): error is SdeValidationError {\n return error instanceof SdeValidationError;\n}\n\nexport function isSdeVersionMismatch(\n error: unknown,\n): error is SdeVersionMismatchError {\n return error instanceof SdeVersionMismatchError;\n}\n","import type { IStaticDataProvider } from './IStaticDataProvider';\nimport type {\n EveType,\n EveGroup,\n EveCategory,\n Region,\n Constellation,\n SolarSystem,\n Stargate,\n Star,\n Planet,\n Moon,\n AsteroidBelt,\n Faction,\n Race,\n Bloodline,\n Ancestry,\n NpcCorporation,\n NpcStation,\n MarketGroup,\n MetaGroup,\n Icon,\n Graphic,\n DogmaAttribute,\n DogmaEffect,\n Blueprint,\n PlanetSchematic,\n AgentType,\n AgentInSpace,\n Certificate,\n CharacterAttribute,\n CloneGrade,\n CorporationActivity,\n DogmaAttributeCategory,\n DogmaUnit,\n IndustryActivity,\n Landmark,\n NotificationType,\n NpcCharacter,\n NpcCorporationDivision,\n School,\n SecondarySun,\n Skin,\n SkinLicense,\n StationOperation,\n StationService,\n TypeDogma,\n TypeMaterial,\n TypeBonus,\n Mission,\n Dungeon,\n EpicArc,\n} from './types';\nimport type { SdeVersionInfo } from './version';\n\nexport interface MemorySdeData {\n types?: EveType[];\n groups?: EveGroup[];\n categories?: EveCategory[];\n regions?: Region[];\n constellations?: Constellation[];\n solarSystems?: SolarSystem[];\n stargates?: Stargate[];\n stars?: Star[];\n planets?: Planet[];\n moons?: Moon[];\n asteroidBelts?: AsteroidBelt[];\n factions?: Faction[];\n races?: Race[];\n bloodlines?: Bloodline[];\n ancestries?: Ancestry[];\n npcCorporations?: NpcCorporation[];\n npcStations?: NpcStation[];\n marketGroups?: MarketGroup[];\n metaGroups?: MetaGroup[];\n icons?: Icon[];\n graphics?: Graphic[];\n dogmaAttributes?: DogmaAttribute[];\n dogmaEffects?: DogmaEffect[];\n blueprints?: Blueprint[];\n planetSchematics?: PlanetSchematic[];\n agentTypes?: AgentType[];\n agentsInSpace?: AgentInSpace[];\n certificates?: Certificate[];\n characterAttributes?: CharacterAttribute[];\n cloneGrades?: CloneGrade[];\n corporationActivities?: CorporationActivity[];\n dogmaAttributeCategories?: DogmaAttributeCategory[];\n dogmaUnits?: DogmaUnit[];\n industryActivities?: IndustryActivity[];\n landmarks?: Landmark[];\n notificationTypes?: NotificationType[];\n npcCharacters?: NpcCharacter[];\n npcCorporationDivisions?: NpcCorporationDivision[];\n schools?: School[];\n secondarySuns?: SecondarySun[];\n skins?: Skin[];\n skinLicenses?: SkinLicense[];\n stationOperations?: StationOperation[];\n stationServices?: StationService[];\n typeDogma?: TypeDogma[];\n typeMaterials?: TypeMaterial[];\n typeBonuses?: TypeBonus[];\n missions?: Mission[];\n dungeons?: Dungeon[];\n epicArcs?: EpicArc[];\n version?: Partial<SdeVersionInfo>;\n}\n\nexport class MemorySdeProvider implements IStaticDataProvider {\n private data: Map<string, Map<number | string, unknown>> = new Map();\n private versionInfo: SdeVersionInfo;\n\n constructor(data: MemorySdeData = {}) {\n const register = <T>(\n key: string,\n items: T[] | undefined,\n idFn: (item: T) => number | string,\n ): void => {\n this.data.set(\n key,\n new Map((items ?? []).map((item) => [idFn(item), item])),\n );\n };\n\n register('eve_types', data.types, (t) => t.typeId);\n register('eve_groups', data.groups, (g) => g.groupId);\n register('eve_categories', data.categories, (c) => c.categoryId);\n register('eve_regions', data.regions, (r) => r.regionId);\n register(\n 'eve_constellations',\n data.constellations,\n (c) => c.constellationId,\n );\n register('eve_solar_systems', data.solarSystems, (s) => s.systemId);\n register('eve_stargates', data.stargates, (s) => s.stargateId);\n register('eve_stars', data.stars, (s) => s.starId);\n register('eve_planets', data.planets, (p) => p.planetId);\n register('eve_moons', data.moons, (m) => m.moonId);\n register('eve_asteroid_belts', data.asteroidBelts, (a) => a.asteroidBeltId);\n register('eve_factions', data.factions, (f) => f.factionId);\n register('eve_races', data.races, (r) => r.raceId);\n register('eve_bloodlines', data.bloodlines, (b) => b.bloodlineId);\n register('eve_ancestries', data.ancestries, (a) => a.ancestryId);\n register(\n 'eve_npc_corporations',\n data.npcCorporations,\n (c) => c.corporationId,\n );\n register('eve_npc_stations', data.npcStations, (s) => s.stationId);\n register('eve_market_groups', data.marketGroups, (g) => g.marketGroupId);\n register('eve_meta_groups', data.metaGroups, (g) => g.metaGroupId);\n register('eve_icons', data.icons, (i) => i.iconId);\n register('eve_graphics', data.graphics, (g) => g.graphicId);\n register(\n 'eve_dogma_attributes',\n data.dogmaAttributes,\n (a) => a.attributeId,\n );\n register('eve_dogma_effects', data.dogmaEffects, (e) => e.effectId);\n register('eve_blueprints', data.blueprints, (b) => b.blueprintTypeId);\n register(\n 'eve_planet_schematics',\n data.planetSchematics,\n (s) => s.planetSchematicId,\n );\n register('eve_agent_types', data.agentTypes, (a) => a.agentTypeId);\n register('eve_agents_in_space', data.agentsInSpace, (a) => a.characterId);\n register('eve_certificates', data.certificates, (c) => c.certificateId);\n register(\n 'eve_character_attributes',\n data.characterAttributes,\n (c) => c.attributeId,\n );\n register('eve_clone_grades', data.cloneGrades, (c) => c.cloneGradeId);\n register(\n 'eve_corporation_activities',\n data.corporationActivities,\n (c) => c.corporationActivityId,\n );\n register(\n 'eve_dogma_attribute_categories',\n data.dogmaAttributeCategories,\n (d) => d.attributeCategoryId,\n );\n register('eve_dogma_units', data.dogmaUnits, (d) => d.unitId);\n register(\n 'eve_industry_activities',\n data.industryActivities,\n (i) => i.industryActivityId,\n );\n register('eve_landmarks', data.landmarks, (l) => l.landmarkId);\n register(\n 'eve_notification_types',\n data.notificationTypes,\n (n) => n.notificationTypeId,\n );\n register('eve_npc_characters', data.npcCharacters, (n) => n.characterId);\n register(\n 'eve_npc_corporation_divisions',\n data.npcCorporationDivisions,\n (n) => n.npcCorporationDivisionId,\n );\n register('eve_schools', data.schools, (s) => s.schoolId);\n register('eve_secondary_suns', data.secondarySuns, (s) => s.secondarySunId);\n register('eve_skins', data.skins, (s) => s.skinId);\n register('eve_skin_licenses', data.skinLicenses, (s) => s.licenseTypeId);\n register(\n 'eve_station_operations',\n data.stationOperations,\n (s) => s.stationOperationId,\n );\n register(\n 'eve_station_services',\n data.stationServices,\n (s) => s.stationServiceId,\n );\n register('eve_type_dogma', data.typeDogma, (t) => t.typeId);\n register('eve_type_materials', data.typeMaterials, (t) => t.typeId);\n register('eve_type_bonuses', data.typeBonuses, (t) => t.typeId);\n register('eve_missions', data.missions, (m) => m.missionId);\n register('eve_dungeons', data.dungeons, (d) => d.dungeonId);\n register('eve_epic_arcs', data.epicArcs, (e) => e.epicArcId);\n\n this.versionInfo = {\n version: data.version?.version ?? '1.0.0-test',\n buildDate: data.version?.buildDate ?? '2024-01-01T00:00:00Z',\n importedAt: data.version?.importedAt ?? '2024-01-01T00:00:00Z',\n checksum: data.version?.checksum,\n };\n }\n\n private getById<T>(table: string, id: number | string): T | null {\n return (this.data.get(table)?.get(id) as T) ?? null;\n }\n\n private getAllFrom<T>(table: string): T[] {\n const map = this.data.get(table);\n return map ? (Array.from(map.values()) as T[]) : [];\n }\n\n private filterBy<T>(table: string, field: string, value: unknown): T[] {\n return this.getAllFrom<T>(table).filter(\n (item) => (item as Record<string, unknown>)[field] === value,\n );\n }\n\n private searchBy<T>(\n table: string,\n field: string,\n query: string,\n limit = 25,\n ): T[] {\n const lowerQuery = query.toLowerCase();\n const results: T[] = [];\n for (const item of this.getAllFrom<T>(table)) {\n const val = (item as Record<string, unknown>)[field];\n if (typeof val === 'string' && val.toLowerCase().includes(lowerQuery)) {\n results.push(item);\n if (results.length >= limit) break;\n }\n }\n return results;\n }\n\n // --- Types, Groups, Categories ---\n getType(typeId: number): EveType | null {\n return this.getById('eve_types', typeId);\n }\n getTypesByGroup(groupId: number): EveType[] {\n return this.filterBy('eve_types', 'groupId', groupId);\n }\n getGroup(groupId: number): EveGroup | null {\n return this.getById('eve_groups', groupId);\n }\n getGroupsByCategory(categoryId: number): EveGroup[] {\n return this.filterBy('eve_groups', 'categoryId', categoryId);\n }\n getCategory(categoryId: number): EveCategory | null {\n return this.getById('eve_categories', categoryId);\n }\n getAllCategories(): EveCategory[] {\n return this.getAllFrom('eve_categories');\n }\n\n // --- Regions, Constellations, Solar Systems, Stargates ---\n getRegion(regionId: number): Region | null {\n return this.getById('eve_regions', regionId);\n }\n getAllRegions(): Region[] {\n return this.getAllFrom('eve_regions');\n }\n getConstellation(constellationId: number): Constellation | null {\n return this.getById('eve_constellations', constellationId);\n }\n getConstellationsByRegion(regionId: number): Constellation[] {\n return this.filterBy('eve_constellations', 'regionId', regionId);\n }\n getSolarSystem(systemId: number): SolarSystem | null {\n return this.getById('eve_solar_systems', systemId);\n }\n getSolarSystemsByConstellation(constellationId: number): SolarSystem[] {\n return this.filterBy(\n 'eve_solar_systems',\n 'constellationId',\n constellationId,\n );\n }\n getStargate(stargateId: number): Stargate | null {\n return this.getById('eve_stargates', stargateId);\n }\n getStargatesBySystem(systemId: number): Stargate[] {\n return this.filterBy('eve_stargates', 'solarSystemId', systemId);\n }\n\n // --- Search ---\n searchTypesByName(query: string, limit = 25): EveType[] {\n return this.searchBy('eve_types', 'name', query, limit);\n }\n searchSolarSystemsByName(query: string, limit = 25): SolarSystem[] {\n return this.searchBy('eve_solar_systems', 'name', query, limit);\n }\n\n // --- Universe ---\n getStar(starId: number): Star | null {\n return this.getById('eve_stars', starId);\n }\n getStarBySystem(systemId: number): Star | null {\n return (\n this.filterBy<Star>('eve_stars', 'solarSystemId', systemId)[0] ?? null\n );\n }\n getPlanet(planetId: number): Planet | null {\n return this.getById('eve_planets', planetId);\n }\n getPlanetsBySystem(systemId: number): Planet[] {\n return this.filterBy('eve_planets', 'solarSystemId', systemId);\n }\n getMoon(moonId: number): Moon | null {\n return this.getById('eve_moons', moonId);\n }\n getMoonsBySystem(systemId: number): Moon[] {\n return this.filterBy('eve_moons', 'solarSystemId', systemId);\n }\n getAsteroidBelt(asteroidBeltId: number): AsteroidBelt | null {\n return this.getById('eve_asteroid_belts', asteroidBeltId);\n }\n getAsteroidBeltsBySystem(systemId: number): AsteroidBelt[] {\n return this.filterBy('eve_asteroid_belts', 'solarSystemId', systemId);\n }\n\n // --- Character/Lore ---\n getFaction(factionId: number): Faction | null {\n return this.getById('eve_factions', factionId);\n }\n getAllFactions(): Faction[] {\n return this.getAllFrom('eve_factions');\n }\n getRace(raceId: number): Race | null {\n return this.getById('eve_races', raceId);\n }\n getAllRaces(): Race[] {\n return this.getAllFrom('eve_races');\n }\n getBloodline(bloodlineId: number): Bloodline | null {\n return this.getById('eve_bloodlines', bloodlineId);\n }\n getBloodlinesByRace(raceId: number): Bloodline[] {\n return this.filterBy('eve_bloodlines', 'raceId', raceId);\n }\n getAncestry(ancestryId: number): Ancestry | null {\n return this.getById('eve_ancestries', ancestryId);\n }\n getAncestriesByBloodline(bloodlineId: number): Ancestry[] {\n return this.filterBy('eve_ancestries', 'bloodlineId', bloodlineId);\n }\n\n // --- NPC Infrastructure ---\n getNpcCorporation(corporationId: number): NpcCorporation | null {\n return this.getById('eve_npc_corporations', corporationId);\n }\n getNpcCorporationsByFaction(factionId: number): NpcCorporation[] {\n return this.filterBy('eve_npc_corporations', 'factionId', factionId);\n }\n getNpcStation(stationId: number): NpcStation | null {\n return this.getById('eve_npc_stations', stationId);\n }\n getNpcStationsBySystem(systemId: number): NpcStation[] {\n return this.filterBy('eve_npc_stations', 'solarSystemId', systemId);\n }\n getNpcStationsByOwner(ownerId: number): NpcStation[] {\n return this.filterBy('eve_npc_stations', 'ownerId', ownerId);\n }\n\n // --- Market ---\n getMarketGroup(marketGroupId: number): MarketGroup | null {\n return this.getById('eve_market_groups', marketGroupId);\n }\n getMarketGroupsByParent(parentGroupId: number): MarketGroup[] {\n return this.filterBy('eve_market_groups', 'parentGroupId', parentGroupId);\n }\n getRootMarketGroups(): MarketGroup[] {\n return this.getAllFrom<MarketGroup>('eve_market_groups').filter(\n (g) => g.parentGroupId === null,\n );\n }\n getTypesByMarketGroup(marketGroupId: number): EveType[] {\n return this.filterBy('eve_types', 'marketGroupId', marketGroupId);\n }\n searchMarketGroupsByName(query: string, limit = 25): MarketGroup[] {\n return this.searchBy('eve_market_groups', 'name', query, limit);\n }\n\n // --- Meta/UI ---\n getMetaGroup(metaGroupId: number): MetaGroup | null {\n return this.getById('eve_meta_groups', metaGroupId);\n }\n getAllMetaGroups(): MetaGroup[] {\n return this.getAllFrom('eve_meta_groups');\n }\n getIcon(iconId: number): Icon | null {\n return this.getById('eve_icons', iconId);\n }\n getGraphic(graphicId: number): Graphic | null {\n return this.getById('eve_graphics', graphicId);\n }\n\n // --- Dogma ---\n getDogmaAttribute(attributeId: number): DogmaAttribute | null {\n return this.getById('eve_dogma_attributes', attributeId);\n }\n searchDogmaAttributesByName(query: string, limit = 25): DogmaAttribute[] {\n return this.searchBy('eve_dogma_attributes', 'name', query, limit);\n }\n getDogmaEffect(effectId: number): DogmaEffect | null {\n return this.getById('eve_dogma_effects', effectId);\n }\n searchDogmaEffectsByName(query: string, limit = 25): DogmaEffect[] {\n return this.searchBy('eve_dogma_effects', 'name', query, limit);\n }\n getDogmaAttributeCategory(\n attributeCategoryId: number,\n ): DogmaAttributeCategory | null {\n return this.getById('eve_dogma_attribute_categories', attributeCategoryId);\n }\n getAllDogmaAttributeCategories(): DogmaAttributeCategory[] {\n return this.getAllFrom('eve_dogma_attribute_categories');\n }\n getDogmaUnit(unitId: number): DogmaUnit | null {\n return this.getById('eve_dogma_units', unitId);\n }\n getAllDogmaUnits(): DogmaUnit[] {\n return this.getAllFrom('eve_dogma_units');\n }\n\n // --- Industry ---\n getBlueprint(blueprintTypeId: number): Blueprint | null {\n return this.getById('eve_blueprints', blueprintTypeId);\n }\n getPlanetSchematic(planetSchematicId: number): PlanetSchematic | null {\n return this.getById('eve_planet_schematics', planetSchematicId);\n }\n getAllPlanetSchematics(): PlanetSchematic[] {\n return this.getAllFrom('eve_planet_schematics');\n }\n getIndustryActivity(industryActivityId: number): IndustryActivity | null {\n return this.getById('eve_industry_activities', industryActivityId);\n }\n getAllIndustryActivities(): IndustryActivity[] {\n return this.getAllFrom('eve_industry_activities');\n }\n\n // --- Agent System ---\n getAgentType(agentTypeId: number): AgentType | null {\n return this.getById('eve_agent_types', agentTypeId);\n }\n getAllAgentTypes(): AgentType[] {\n return this.getAllFrom('eve_agent_types');\n }\n getAgentInSpace(characterId: number): AgentInSpace | null {\n return this.getById('eve_agents_in_space', characterId);\n }\n getAgentsInSpaceBySystem(systemId: number): AgentInSpace[] {\n return this.filterBy('eve_agents_in_space', 'solarSystemId', systemId);\n }\n\n // --- Certificates ---\n getCertificate(certificateId: number): Certificate | null {\n return this.getById('eve_certificates', certificateId);\n }\n getAllCertificates(): Certificate[] {\n return this.getAllFrom('eve_certificates');\n }\n\n // --- Character Attributes ---\n getCharacterAttribute(attributeId: number): CharacterAttribute | null {\n return this.getById('eve_character_attributes', attributeId);\n }\n getAllCharacterAttributes(): CharacterAttribute[] {\n return this.getAllFrom('eve_character_attributes');\n }\n\n // --- NPC Characters ---\n getNpcCharacter(characterId: number): NpcCharacter | null {\n return this.getById('eve_npc_characters', characterId);\n }\n getNpcCharactersByCorporation(corporationId: number): NpcCharacter[] {\n return this.filterBy('eve_npc_characters', 'corporationId', corporationId);\n }\n searchNpcCharactersByName(query: string, limit = 25): NpcCharacter[] {\n return this.searchBy('eve_npc_characters', 'name', query, limit);\n }\n\n // --- Clone Grades ---\n getCloneGrade(cloneGradeId: number): CloneGrade | null {\n return this.getById('eve_clone_grades', cloneGradeId);\n }\n getAllCloneGrades(): CloneGrade[] {\n return this.getAllFrom('eve_clone_grades');\n }\n\n // --- Corporation Reference ---\n getCorporationActivity(\n corporationActivityId: number,\n ): CorporationActivity | null {\n return this.getById('eve_corporation_activities', corporationActivityId);\n }\n getAllCorporationActivities(): CorporationActivity[] {\n return this.getAllFrom('eve_corporation_activities');\n }\n getNpcCorporationDivision(\n npcCorporationDivisionId: number,\n ): NpcCorporationDivision | null {\n return this.getById(\n 'eve_npc_corporation_divisions',\n npcCorporationDivisionId,\n );\n }\n getAllNpcCorporationDivisions(): NpcCorporationDivision[] {\n return this.getAllFrom('eve_npc_corporation_divisions');\n }\n\n // --- Landmarks ---\n getLandmark(landmarkId: number): Landmark | null {\n return this.getById('eve_landmarks', landmarkId);\n }\n getAllLandmarks(): Landmark[] {\n return this.getAllFrom('eve_landmarks');\n }\n\n // --- Notifications ---\n getNotificationType(notificationTypeId: number): NotificationType | null {\n return this.getById('eve_notification_types', notificationTypeId);\n }\n\n // --- Schools ---\n getSchool(schoolId: number): School | null {\n return this.getById('eve_schools', schoolId);\n }\n getAllSchools(): School[] {\n return this.getAllFrom('eve_schools');\n }\n\n // --- Secondary Suns ---\n getSecondarySun(secondarySunId: number): SecondarySun | null {\n return this.getById('eve_secondary_suns', secondarySunId);\n }\n getSecondarySunsBySystem(systemId: number): SecondarySun[] {\n return this.filterBy('eve_secondary_suns', 'solarSystemId', systemId);\n }\n\n // --- Skins ---\n getSkin(skinId: number): Skin | null {\n return this.getById('eve_skins', skinId);\n }\n getSkinLicense(licenseTypeId: number): SkinLicense | null {\n return this.getById('eve_skin_licenses', licenseTypeId);\n }\n getSkinLicensesBySkin(skinId: number): SkinLicense[] {\n return this.filterBy('eve_skin_licenses', 'skinId', skinId);\n }\n\n // --- Station Operations & Services ---\n getStationOperation(stationOperationId: number): StationOperation | null {\n return this.getById('eve_station_operations', stationOperationId);\n }\n getAllStationOperations(): StationOperation[] {\n return this.getAllFrom('eve_station_operations');\n }\n getStationService(stationServiceId: number): StationService | null {\n return this.getById('eve_station_services', stationServiceId);\n }\n getAllStationServices(): StationService[] {\n return this.getAllFrom('eve_station_services');\n }\n\n // --- Type Extensions ---\n getTypeDogma(typeId: number): TypeDogma | null {\n return this.getById('eve_type_dogma', typeId);\n }\n getTypeMaterial(typeId: number): TypeMaterial | null {\n return this.getById('eve_type_materials', typeId);\n }\n getTypeBonus(typeId: number): TypeBonus | null {\n return this.getById('eve_type_bonuses', typeId);\n }\n\n // --- Missions & Content ---\n getMission(missionId: number): Mission | null {\n return this.getById('eve_missions', missionId);\n }\n getDungeon(dungeonId: number): Dungeon | null {\n return this.getById('eve_dungeons', dungeonId);\n }\n getEpicArc(epicArcId: number): EpicArc | null {\n return this.getById('eve_epic_arcs', epicArcId);\n }\n getAllEpicArcs(): EpicArc[] {\n return this.getAllFrom('eve_epic_arcs');\n }\n\n // --- Generic accessor ---\n getEntity<T = Record<string, unknown>>(\n tableName: string,\n id: number | string,\n ): T | null {\n return this.getById<T>(tableName, id);\n }\n\n getAllEntities<T = Record<string, unknown>>(tableName: string): T[] {\n return this.getAllFrom<T>(tableName);\n }\n\n // --- Version & Lifecycle ---\n getVersion(): SdeVersionInfo {\n return { ...this.versionInfo };\n }\n\n close(): void {\n this.data.clear();\n }\n}\n","import type {\n EveType,\n EveGroup,\n EveCategory,\n Region,\n Constellation,\n SolarSystem,\n Stargate,\n Star,\n Planet,\n Moon,\n AsteroidBelt,\n Faction,\n Race,\n Bloodline,\n Ancestry,\n NpcCorporation,\n NpcStation,\n MarketGroup,\n MetaGroup,\n Icon,\n Graphic,\n DogmaAttribute,\n DogmaEffect,\n Blueprint,\n PlanetSchematic,\n} from './types';\nimport type { SdeVersionInfo } from './version';\nimport type { MemorySdeData } from './MemorySdeProvider';\n\nexport class SdeTestDataFactory {\n static createEveType(overrides: Partial<EveType> = {}): EveType {\n return {\n typeId: 34,\n groupId: 18,\n mass: 1,\n name: 'Tritanium',\n portionSize: 1,\n published: true,\n packagedVolume: null,\n volume: 0.01,\n radius: null,\n description: 'The most common mineral in the known universe.',\n graphicId: 20,\n soundId: null,\n iconId: null,\n raceId: null,\n basePrice: 4,\n marketGroupId: 1857,\n capacity: null,\n isRepackable: null,\n ...overrides,\n };\n }\n\n static createEveGroup(overrides: Partial<EveGroup> = {}): EveGroup {\n return {\n groupId: 18,\n anchorable: false,\n anchored: false,\n categoryId: 4,\n fittableNonSingleton: false,\n name: 'Mineral',\n published: true,\n useBasePrice: true,\n iconId: null,\n ...overrides,\n };\n }\n\n static createEveCategory(overrides: Partial<EveCategory> = {}): EveCategory {\n return {\n categoryId: 4,\n name: 'Material',\n published: true,\n iconId: null,\n ...overrides,\n };\n }\n\n static createRegion(overrides: Partial<Region> = {}): Region {\n return {\n regionId: 10000002,\n constellationIDs: [20000020],\n description: 'The Forge is the industrial heart of the Caldari State.',\n factionId: 500001,\n name: 'The Forge',\n nebulaId: 10,\n position: { x: -9.6e16, y: 6.0e16, z: -1.1e17 },\n wormholeClassId: 0,\n ...overrides,\n };\n }\n\n static createConstellation(\n overrides: Partial<Constellation> = {},\n ): Constellation {\n return {\n constellationId: 20000020,\n factionId: 500001,\n name: 'Kimotoro',\n position: { x: -9.7e16, y: 6.1e16, z: -1.15e17 },\n regionId: 10000002,\n solarSystemIDs: [30000142, 30000144],\n wormholeClassId: 0,\n ...overrides,\n };\n }\n\n static createSolarSystem(overrides: Partial<SolarSystem> = {}): SolarSystem {\n return {\n systemId: 30000142,\n border: false,\n constellationId: 20000020,\n hub: true,\n international: false,\n luminosity: 0.02142,\n name: 'Jita',\n planetIDs: [40009077],\n position: { x: -1.29e17, y: 6.07e16, z: -1.12e17 },\n position2D: { x: -1.29e17, y: -1.12e17 },\n radius: 4.67e12,\n regionId: 10000002,\n regional: false,\n securityClass: 'B',\n securityStatus: 0.9459991455078125,\n starId: 40009082,\n stargateIDs: [50001248],\n corridor: null,\n fringe: null,\n wormholeClassId: null,\n visualEffect: null,\n ...overrides,\n };\n }\n\n static createStargate(overrides: Partial<Stargate> = {}): Stargate {\n return {\n stargateId: 50001248,\n destination: { solarSystemId: 30000144, stargateId: 50001249 },\n position: { x: 1.5e12, y: 3.2e11, z: -8.7e11 },\n solarSystemId: 30000142,\n typeId: 16,\n ...overrides,\n };\n }\n\n static createStar(overrides: Partial<Star> = {}): Star {\n return {\n starId: 40009082,\n radius: 346600000,\n solarSystemId: 30000142,\n statistics: {\n age: 76000000000,\n life: 100000000000,\n luminosity: 0.02142,\n locked: false,\n spectralClass: 'K7 V',\n temperature: 4000,\n },\n typeId: 3796,\n ...overrides,\n };\n }\n\n static createPlanet(overrides: Partial<Planet> = {}): Planet {\n return {\n planetId: 40009077,\n asteroidBeltIDs: [40009079],\n attributes: {},\n celestialIndex: 1,\n moonIDs: [40009078],\n orbitId: 40009082,\n position: { x: 1.2e13, y: 1e11, z: -3.5e12 },\n radius: 2330000,\n solarSystemId: 30000142,\n statistics: {},\n typeId: 2015,\n npcStationIDs: null,\n ...overrides,\n };\n }\n\n static createMoon(overrides: Partial<Moon> = {}): Moon {\n return {\n moonId: 40009078,\n attributes: {},\n celestialIndex: 1,\n orbitId: 40009077,\n orbitIndex: 1,\n position: { x: 1.21e13, y: 1.01e11, z: -3.51e12 },\n radius: 240000,\n solarSystemId: 30000142,\n statistics: {},\n typeId: 14,\n npcStationIDs: null,\n ...overrides,\n };\n }\n\n static createAsteroidBelt(\n overrides: Partial<AsteroidBelt> = {},\n ): AsteroidBelt {\n return {\n asteroidBeltId: 40009079,\n celestialIndex: 1,\n orbitId: 40009077,\n orbitIndex: 1,\n position: { x: 1.19e13, y: 9.9e10, z: -3.49e12 },\n radius: 50000,\n solarSystemId: 30000142,\n statistics: {},\n typeId: 15,\n ...overrides,\n };\n }\n\n static createFaction(overrides: Partial<Faction> = {}): Faction {\n return {\n factionId: 500001,\n corporationId: 1000035,\n description: 'The Caldari State is a corporate dictatorship.',\n flatLogo: 'res:/ui/texture/corps/caldari.png',\n flatLogoWithName: 'res:/ui/texture/corps/caldari_name.png',\n iconId: 1439,\n memberRaces: [1],\n militiaCorporationId: 1000180,\n name: 'Caldari State',\n shortDescription: 'Caldari',\n sizeFactor: 5,\n solarSystemId: 30000142,\n uniqueName: true,\n ...overrides,\n };\n }\n\n static createRace(overrides: Partial<Race> = {}): Race {\n return {\n raceId: 1,\n description: 'The Caldari State is a corporate dictatorship.',\n iconId: 1439,\n name: 'Caldari',\n shipTypeId: 601,\n skills: {},\n ...overrides,\n };\n }\n\n static createBloodline(overrides: Partial<Bloodline> = {}): Bloodline {\n return {\n bloodlineId: 1,\n charisma: 3,\n corporationId: 1000006,\n description: 'The Deteis are regarded as the face of the Caldari State.',\n iconId: 1383,\n intelligence: 7,\n memory: 7,\n name: 'Deteis',\n perception: 5,\n raceId: 1,\n willpower: 5,\n ...overrides,\n };\n }\n\n static createAncestry(overrides: Partial<Ancestry> = {}): Ancestry {\n return {\n ancestryId: 1,\n bloodlineId: 1,\n charisma: 0,\n description: 'Born and raised in a capsule.',\n iconId: 1664,\n intelligence: 0,\n memory: 0,\n name: 'Tube Child',\n perception: 0,\n shortDescription: 'Raised in a capsule.',\n willpower: 2,\n ...overrides,\n };\n }\n\n static createNpcCorporation(\n overrides: Partial<NpcCorporation> = {},\n ): NpcCorporation {\n return {\n corporationId: 1000035,\n ceoId: 3004451,\n deleted: false,\n description: 'The Caldari Navy is the armed forces of the Caldari State.',\n extent: 'G',\n hasPlayerPersonnelManager: false,\n initialPrice: 0,\n memberLimit: 0,\n minSecurity: 0,\n minimumJoinStanding: 0,\n name: 'Caldari Navy',\n sendCharTerminationMessage: true,\n shares: 100000,\n size: 'H',\n stationId: 60003760,\n taxRate: 0,\n tickerName: 'CN',\n uniqueName: true,\n allowedMemberRaces: null,\n corporationTrades: null,\n divisions: null,\n enemyId: null,\n factionId: 500001,\n friendId: null,\n iconId: 1439,\n investors: null,\n lpOfferTables: null,\n mainActivityId: null,\n raceId: 1,\n sizeFactor: null,\n solarSystemId: 30000142,\n secondaryActivityId: null,\n ...overrides,\n };\n }\n\n static createNpcStation(overrides: Partial<NpcStation> = {}): NpcStation {\n return {\n stationId: 60003760,\n celestialIndex: 4,\n operationId: 1,\n orbitId: 40009081,\n orbitIndex: 4,\n ownerId: 1000035,\n position: { x: 1.58e14, y: 9.63e12, z: 1.06e14 },\n reprocessingEfficiency: 0.5,\n reprocessingHangarFlag: 4,\n reprocessingStationsTake: 0.05,\n solarSystemId: 30000142,\n typeId: 1529,\n useOperationName: true,\n ...overrides,\n };\n }\n\n static createMarketGroup(overrides: Partial<MarketGroup> = {}): MarketGroup {\n return {\n marketGroupId: 1857,\n description: 'Refined minerals used in manufacturing.',\n hasTypes: true,\n iconId: 22,\n name: 'Minerals',\n parentGroupId: 1031,\n ...overrides,\n };\n }\n\n static createMetaGroup(overrides: Partial<MetaGroup> = {}): MetaGroup {\n return {\n metaGroupId: 1,\n color: { r: 255, g: 255, b: 255, a: 255 },\n name: 'Tech I',\n iconId: null,\n iconSuffix: null,\n description: null,\n ...overrides,\n };\n }\n\n static createIcon(overrides: Partial<Icon> = {}): Icon {\n return {\n iconId: 22,\n iconFile: 'res:/UI/Texture/Icons/22_32_2.png',\n ...overrides,\n };\n }\n\n static createGraphic(overrides: Partial<Graphic> = {}): Graphic {\n return {\n graphicId: 20,\n graphicFile: 'res:/dx9/model/worldobject/asteroid/oreveld001.red',\n iconFolder: null,\n sofFactionName: null,\n sofHullName: null,\n sofRaceName: null,\n ...overrides,\n };\n }\n\n static createDogmaAttribute(\n overrides: Partial<DogmaAttribute> = {},\n ): DogmaAttribute {\n return {\n attributeId: 9,\n attributeCategoryId: 1,\n dataType: 2,\n defaultValue: 0,\n description: 'Hit points for a ship.',\n displayWhenZero: false,\n highIsGood: true,\n name: 'hp',\n published: true,\n stackable: false,\n displayName: null,\n iconId: null,\n tooltipDescription: null,\n tooltipTitle: null,\n unitId: 1,\n chargeRechargeTimeId: null,\n maxAttributeId: null,\n minAttributeId: null,\n ...overrides,\n };\n }\n\n static createDogmaEffect(overrides: Partial<DogmaEffect> = {}): DogmaEffect {\n return {\n effectId: 11,\n disallowAutoRepeat: false,\n dischargeAttributeId: 0,\n durationAttributeId: 0,\n effectCategoryId: 0,\n electronicChance: false,\n guid: 'effects.LowSlotModifier',\n isAssistance: false,\n isOffensive: false,\n isWarpSafe: true,\n name: 'lowSlotModifier',\n propulsionChance: false,\n published: true,\n rangeChance: false,\n distribution: null,\n falloffAttributeId: null,\n rangeAttributeId: null,\n trackingSpeedAttributeId: null,\n description: null,\n displayName: null,\n iconId: null,\n modifierInfo: null,\n ...overrides,\n };\n }\n\n static createBlueprint(overrides: Partial<Blueprint> = {}): Blueprint {\n return {\n activities: {\n manufacturing: {\n time: 6000,\n materials: [\n { typeId: 34, quantity: 100 },\n { typeId: 35, quantity: 50 },\n ],\n products: [{ typeId: 587, quantity: 1 }],\n },\n },\n blueprintTypeId: 787,\n maxProductionLimit: 10,\n ...overrides,\n };\n }\n\n static createPlanetSchematic(\n overrides: Partial<PlanetSchematic> = {},\n ): PlanetSchematic {\n return {\n planetSchematicId: 65,\n cycleTime: 1800,\n name: 'Bacteria',\n pins: [],\n types: [],\n ...overrides,\n };\n }\n\n static createVersionInfo(\n overrides: Partial<SdeVersionInfo> = {},\n ): SdeVersionInfo {\n return {\n version: '2024-01-15.1',\n buildDate: '2024-01-15T00:00:00Z',\n importedAt: '2024-01-16T12:00:00Z',\n checksum: 'abc123def456',\n ...overrides,\n };\n }\n\n static createHierarchicalTestData(): MemorySdeData {\n const category = this.createEveCategory();\n const group = this.createEveGroup({ categoryId: category.categoryId });\n const type1 = this.createEveType({\n typeId: 34,\n name: 'Tritanium',\n groupId: group.groupId,\n });\n const type2 = this.createEveType({\n typeId: 35,\n name: 'Pyerite',\n groupId: group.groupId,\n });\n const type3 = this.createEveType({\n typeId: 36,\n name: 'Mexallon',\n groupId: group.groupId,\n });\n\n const region = this.createRegion();\n const constellation = this.createConstellation({\n regionId: region.regionId,\n });\n const system1 = this.createSolarSystem({\n systemId: 30000142,\n name: 'Jita',\n constellationId: constellation.constellationId,\n regionId: region.regionId,\n });\n const system2 = this.createSolarSystem({\n systemId: 30000144,\n name: 'Perimeter',\n constellationId: constellation.constellationId,\n regionId: region.regionId,\n securityStatus: 0.9,\n });\n const stargate = this.createStargate({\n solarSystemId: system1.systemId,\n destination: { solarSystemId: system2.systemId, stargateId: 50001249 },\n });\n\n const star = this.createStar({ solarSystemId: system1.systemId });\n const planet = this.createPlanet({ solarSystemId: system1.systemId });\n const moon = this.createMoon({ solarSystemId: system1.systemId });\n const asteroidBelt = this.createAsteroidBelt({\n solarSystemId: system1.systemId,\n });\n\n const race = this.createRace();\n const faction = this.createFaction({ memberRaces: [race.raceId] });\n const bloodline = this.createBloodline({ raceId: race.raceId });\n const ancestry = this.createAncestry({\n bloodlineId: bloodline.bloodlineId,\n });\n const npcCorp = this.createNpcCorporation({\n factionId: faction.factionId,\n raceId: race.raceId,\n });\n const npcStation = this.createNpcStation({\n solarSystemId: system1.systemId,\n ownerId: npcCorp.corporationId,\n });\n\n const rootMarketGroup = this.createMarketGroup({\n marketGroupId: 1031,\n name: 'Manufacture & Research',\n parentGroupId: null,\n hasTypes: false,\n });\n const marketGroup = this.createMarketGroup({\n parentGroupId: rootMarketGroup.marketGroupId,\n });\n const metaGroup = this.createMetaGroup();\n const icon = this.createIcon();\n const graphic = this.createGraphic();\n\n const dogmaAttribute = this.createDogmaAttribute();\n const dogmaEffect = this.createDogmaEffect();\n const blueprint = this.createBlueprint();\n const planetSchematic = this.createPlanetSchematic();\n\n return {\n categories: [category],\n groups: [group],\n types: [type1, type2, type3],\n regions: [region],\n constellations: [constellation],\n solarSystems: [system1, system2],\n stargates: [stargate],\n stars: [star],\n planets: [planet],\n moons: [moon],\n asteroidBelts: [asteroidBelt],\n factions: [faction],\n races: [race],\n bloodlines: [bloodline],\n ancestries: [ancestry],\n npcCorporations: [npcCorp],\n npcStations: [npcStation],\n marketGroups: [rootMarketGroup, marketGroup],\n metaGroups: [metaGroup],\n icons: [icon],\n graphics: [graphic],\n dogmaAttributes: [dogmaAttribute],\n dogmaEffects: [dogmaEffect],\n blueprints: [blueprint],\n planetSchematics: [planetSchematic],\n version: this.createVersionInfo(),\n };\n }\n}\n"],"mappings":"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","names":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/ESI.ts/ESI.ts/dist/chunk-BBSHKVPI.js","../src/auth/errors.ts"],"names":[],"mappings":"AAAA;ACCO,IAAM,UAAA,EAAN,MAAA,QAAwB,MAAM;AAAA,EACnC,WAAA,CAAY,OAAA,EAAiB;AAC3B,IAAA,KAAA,CAAM,OAAO,CAAA;AACb,IAAA,IAAA,CAAK,KAAA,EAAO,WAAA;AAAA,EACd;AACF,CAAA;AASO,IAAM,SAAA,EAAN,MAAA,QAAuB,UAAU;AAAA,EACtB;AAAA,EACA;AAAA,EACA;AAAA,EAEhB,WAAA,CACE,UAAA,EACA,SAAA,EACA,gBAAA,EACA;AACA,IAAA,MAAM,OAAA,EAAS,iBAAA,EAAmB,CAAA,EAAA,EAAK,gBAAgB,CAAA,EAAA;AACC,IAAA;AAC5C,IAAA;AACM,IAAA;AACD,IAAA;AACO,IAAA;AAC1B,EAAA;AAAA;AAGuB,EAAA;AACgC,IAAA;AACvD,EAAA;AACF;AAOiD;AAC/B,EAAA;AAEmC,EAAA;AACpC,IAAA;AACD,IAAA;AACO,IAAA;AACrB,EAAA;AACF;AAGgD;AACjB,EAAA;AACd,IAAA;AACD,IAAA;AACd,EAAA;AACF;AAGsD;AACpC,EAAA;AAEiB,EAAA;AACqB,IAAA;AACxC,IAAA;AACO,IAAA;AACrB,EAAA;AACF;AAEgE;AACtC,EAAA;AAC1B;AAE8D;AACpC,EAAA;AAC1B;AAE2E;AACjD,EAAA;AAC1B;AAImC;AACT,EAAA;AAC1B;AD/B4D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"/home/runner/work/ESI.ts/ESI.ts/dist/chunk-BBSHKVPI.js","sourcesContent":[null,"/** Base class for every error raised by the auth subsystem. */\nexport class AuthError extends Error {\n constructor(message: string) {\n super(message);\n this.name = 'AuthError';\n }\n}\n\n/**\n * EVE SSO answered a token or revoke request with a non-2xx status.\n *\n * `errorCode` is the OAuth2 `error` field from the response body\n * (`invalid_client`, `invalid_request`, ...) or `unknown` when the body could\n * not be parsed. `statusCode` is the HTTP status.\n */\nexport class SsoError extends AuthError {\n public readonly statusCode: number;\n public readonly errorCode: string;\n public readonly errorDescription?: string;\n\n constructor(\n statusCode: number,\n errorCode: string,\n errorDescription?: string,\n ) {\n const detail = errorDescription ? `: ${errorDescription}` : '';\n super(`EVE SSO request failed (${statusCode} ${errorCode})${detail}`);\n this.name = 'SsoError';\n this.statusCode = statusCode;\n this.errorCode = errorCode;\n this.errorDescription = errorDescription;\n }\n\n /** True for statuses where the same request can be retried later. */\n isRetryable(): boolean {\n return this.statusCode === 429 || this.statusCode >= 500;\n }\n}\n\n/**\n * The refresh token is no longer accepted by SSO (`invalid_grant`), or the\n * manager has already recorded that outcome for the character. The character\n * must log in again; retrying cannot help.\n */\nexport class TokenRevokedError extends AuthError {\n public readonly characterId?: number;\n\n constructor(message: string, characterId?: number) {\n super(message);\n this.name = 'TokenRevokedError';\n this.characterId = characterId;\n }\n}\n\n/** A JWT access token could not be decoded into the claims the manager needs. */\nexport class TokenDecodeError extends AuthError {\n constructor(message: string) {\n super(message);\n this.name = 'TokenDecodeError';\n }\n}\n\n/** No token is stored for the requested character. */\nexport class CharacterNotFoundError extends AuthError {\n public readonly characterId: number;\n\n constructor(characterId: number) {\n super(`No token stored for character ${characterId}`);\n this.name = 'CharacterNotFoundError';\n this.characterId = characterId;\n }\n}\n\nexport function isAuthError(error: unknown): error is AuthError {\n return error instanceof AuthError;\n}\n\nexport function isSsoError(error: unknown): error is SsoError {\n return error instanceof SsoError;\n}\n\nexport function isTokenRevoked(error: unknown): error is TokenRevokedError {\n return error instanceof TokenRevokedError;\n}\n\nexport function isCharacterNotFound(\n error: unknown,\n): error is CharacterNotFoundError {\n return error instanceof CharacterNotFoundError;\n}\n"]}
|