diff --git a/scripts/fetch-schema.ts b/scripts/fetch-schema.ts index 25e2cd0..a43d9d3 100644 --- a/scripts/fetch-schema.ts +++ b/scripts/fetch-schema.ts @@ -1,8 +1,9 @@ import fs from 'fs' import path from 'path' +import { fileURLToPath } from 'node:url' const SCHEMA_URL = 'https://esi.evetech.net/meta/openapi.json' -const __dirname = path.dirname(new URL(import.meta.url).pathname) +const __dirname = path.dirname(fileURLToPath(import.meta.url)) const SCHEMA_FILE = path.join(__dirname, './static/openapi.json') async function fetchSchema(): Promise { diff --git a/scripts/generate-readme.ts b/scripts/generate-readme.ts index 5951adb..a71dcd9 100644 --- a/scripts/generate-readme.ts +++ b/scripts/generate-readme.ts @@ -1,7 +1,8 @@ -import fs from 'fs' -import path from 'path' +import fs from 'node:fs' +import path from 'node:path' +import { fileURLToPath } from 'node:url' -const __dirname = path.dirname(new URL(import.meta.url).pathname) +const __dirname = path.dirname(fileURLToPath(import.meta.url)) export interface MethodInfo { name: string diff --git a/scripts/generate.ts b/scripts/generate.ts index 53bf09b..dfd3242 100644 --- a/scripts/generate.ts +++ b/scripts/generate.ts @@ -1,10 +1,11 @@ import fs from 'fs' import path from 'path' +import { fileURLToPath } from 'url' import camelcase from 'camelcase' import assert from 'assert' import { generateReadme, type MethodInfo } from './generate-readme.ts' -const __dirname = path.dirname(new URL(import.meta.url).pathname) +const __dirname = path.dirname(fileURLToPath(import.meta.url)) const SCHEMA_FILE = path.join(__dirname, './static/openapi.json') const TYPES_FILE = path.join(__dirname, '../src/types.ts') const CLIENT_FILE = path.join(__dirname, '../src/client.ts') @@ -92,7 +93,7 @@ interface ResponseHeader { } function loadSchema(): OpenAPISchema { - console.log('Loading OpenAPI schema from local file...') + console.log('Loading OpenAPI schema from ' + SCHEMA_FILE + '...') if (!fs.existsSync(SCHEMA_FILE)) { console.error('Schema file not found. Run "yarn fetch-schema" first.') @@ -361,7 +362,7 @@ function getTypeScriptType(schema: Schema): string { return 'boolean' case 'array': assert(schema.items) - return `${getTypeScriptType(schema.items)}[]` + return `(${getTypeScriptType(schema.items)})[]` case 'object': if (schema.properties) { const props = Object.entries(schema.properties) @@ -501,7 +502,7 @@ function generateClient(schema: OpenAPISchema): { let client = `// Auto-generated API client for EVE ESI API /* eslint-disable @typescript-eslint/no-explicit-any */ -import * as Types from './types'; +import * as Types from './types.js'; const COMPATIBILITY_DATE = '${new Date().toISOString().slice(0, 10)}'; diff --git a/src/client.ts b/src/client.ts index 5fa87a2..6907b3c 100644 --- a/src/client.ts +++ b/src/client.ts @@ -1,8 +1,8 @@ // Auto-generated API client for EVE ESI API /* eslint-disable @typescript-eslint/no-explicit-any */ -import * as Types from './types' +import * as Types from './types.js' -const COMPATIBILITY_DATE = '2026-01-27' +const COMPATIBILITY_DATE = '2026-02-03' export class EsiClient { private readonly baseUrl: string = 'https://esi.evetech.net' diff --git a/src/index.ts b/src/index.ts index b709889..16e61a2 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,2 +1,2 @@ -export { EsiClient } from './client' -export * from './types' +export { EsiClient } from './client.js' +export * from './types.js' diff --git a/src/types.ts b/src/types.ts index 918743f..7f77ae0 100644 --- a/src/types.ts +++ b/src/types.ts @@ -1728,7 +1728,7 @@ export interface GetCharacterPortraitResponseHeaders { } export interface GetCharacterRolesResponse { - roles?: + roles?: ( | 'Account_Take_1' | 'Account_Take_2' | 'Account_Take_3' @@ -1782,8 +1782,9 @@ export interface GetCharacterRolesResponse { | 'Starbase_Defense_Operator' | 'Starbase_Fuel_Technician' | 'Station_Manager' - | 'Trader'[] - roles_at_base?: + | 'Trader' + )[] + roles_at_base?: ( | 'Account_Take_1' | 'Account_Take_2' | 'Account_Take_3' @@ -1837,8 +1838,9 @@ export interface GetCharacterRolesResponse { | 'Starbase_Defense_Operator' | 'Starbase_Fuel_Technician' | 'Station_Manager' - | 'Trader'[] - roles_at_hq?: + | 'Trader' + )[] + roles_at_hq?: ( | 'Account_Take_1' | 'Account_Take_2' | 'Account_Take_3' @@ -1892,8 +1894,9 @@ export interface GetCharacterRolesResponse { | 'Starbase_Defense_Operator' | 'Starbase_Fuel_Technician' | 'Station_Manager' - | 'Trader'[] - roles_at_other?: + | 'Trader' + )[] + roles_at_other?: ( | 'Account_Take_1' | 'Account_Take_2' | 'Account_Take_3' @@ -1947,7 +1950,8 @@ export interface GetCharacterRolesResponse { | 'Starbase_Defense_Operator' | 'Starbase_Fuel_Technician' | 'Station_Manager' - | 'Trader'[] + | 'Trader' + )[] } export interface GetCharacterRolesParams { @@ -1976,7 +1980,7 @@ export interface GetCharacterSearchResponse { export interface GetCharacterSearchParams { character_id: number | string - categories?: + categories?: ( | 'agent' | 'alliance' | 'character' @@ -1987,7 +1991,8 @@ export interface GetCharacterSearchParams { | 'region' | 'solar_system' | 'station' - | 'structure'[] + | 'structure' + )[] search?: string strict?: boolean } @@ -3454,7 +3459,7 @@ export interface GetCorporationOrdersHistoryResponseHeaders { export type GetCorporationRolesResponse = { character_id: number - grantable_roles: + grantable_roles: ( | 'Account_Take_1' | 'Account_Take_2' | 'Account_Take_3' @@ -3508,8 +3513,9 @@ export type GetCorporationRolesResponse = { | 'Starbase_Defense_Operator' | 'Starbase_Fuel_Technician' | 'Station_Manager' - | 'Trader'[] - grantable_roles_at_base: + | 'Trader' + )[] + grantable_roles_at_base: ( | 'Account_Take_1' | 'Account_Take_2' | 'Account_Take_3' @@ -3563,8 +3569,9 @@ export type GetCorporationRolesResponse = { | 'Starbase_Defense_Operator' | 'Starbase_Fuel_Technician' | 'Station_Manager' - | 'Trader'[] - grantable_roles_at_hq: + | 'Trader' + )[] + grantable_roles_at_hq: ( | 'Account_Take_1' | 'Account_Take_2' | 'Account_Take_3' @@ -3618,8 +3625,9 @@ export type GetCorporationRolesResponse = { | 'Starbase_Defense_Operator' | 'Starbase_Fuel_Technician' | 'Station_Manager' - | 'Trader'[] - grantable_roles_at_other: + | 'Trader' + )[] + grantable_roles_at_other: ( | 'Account_Take_1' | 'Account_Take_2' | 'Account_Take_3' @@ -3673,8 +3681,9 @@ export type GetCorporationRolesResponse = { | 'Starbase_Defense_Operator' | 'Starbase_Fuel_Technician' | 'Station_Manager' - | 'Trader'[] - roles: + | 'Trader' + )[] + roles: ( | 'Account_Take_1' | 'Account_Take_2' | 'Account_Take_3' @@ -3728,8 +3737,9 @@ export type GetCorporationRolesResponse = { | 'Starbase_Defense_Operator' | 'Starbase_Fuel_Technician' | 'Station_Manager' - | 'Trader'[] - roles_at_base: + | 'Trader' + )[] + roles_at_base: ( | 'Account_Take_1' | 'Account_Take_2' | 'Account_Take_3' @@ -3783,8 +3793,9 @@ export type GetCorporationRolesResponse = { | 'Starbase_Defense_Operator' | 'Starbase_Fuel_Technician' | 'Station_Manager' - | 'Trader'[] - roles_at_hq: + | 'Trader' + )[] + roles_at_hq: ( | 'Account_Take_1' | 'Account_Take_2' | 'Account_Take_3' @@ -3838,8 +3849,9 @@ export type GetCorporationRolesResponse = { | 'Starbase_Defense_Operator' | 'Starbase_Fuel_Technician' | 'Station_Manager' - | 'Trader'[] - roles_at_other: + | 'Trader' + )[] + roles_at_other: ( | 'Account_Take_1' | 'Account_Take_2' | 'Account_Take_3' @@ -3893,7 +3905,8 @@ export type GetCorporationRolesResponse = { | 'Starbase_Defense_Operator' | 'Starbase_Fuel_Technician' | 'Station_Manager' - | 'Trader'[] + | 'Trader' + )[] }[] export interface GetCorporationRolesParams { @@ -3910,7 +3923,7 @@ export type GetCorporationRolesHistoryResponse = { changed_at: string character_id: number issuer_id: number - new_roles: + new_roles: ( | 'Account_Take_1' | 'Account_Take_2' | 'Account_Take_3' @@ -3964,8 +3977,9 @@ export type GetCorporationRolesHistoryResponse = { | 'Starbase_Defense_Operator' | 'Starbase_Fuel_Technician' | 'Station_Manager' - | 'Trader'[] - old_roles: + | 'Trader' + )[] + old_roles: ( | 'Account_Take_1' | 'Account_Take_2' | 'Account_Take_3' @@ -4019,7 +4033,8 @@ export type GetCorporationRolesHistoryResponse = { | 'Starbase_Defense_Operator' | 'Starbase_Fuel_Technician' | 'Station_Manager' - | 'Trader'[] + | 'Trader' + )[] role_type: | 'grantable_roles' | 'grantable_roles_at_base' @@ -4200,7 +4215,7 @@ export interface GetCorporationStructuresResponseHeaders { } export type GetCorporationTitlesResponse = { - grantable_roles: + grantable_roles: ( | 'Account_Take_1' | 'Account_Take_2' | 'Account_Take_3' @@ -4254,8 +4269,9 @@ export type GetCorporationTitlesResponse = { | 'Starbase_Defense_Operator' | 'Starbase_Fuel_Technician' | 'Station_Manager' - | 'Trader'[] - grantable_roles_at_base: + | 'Trader' + )[] + grantable_roles_at_base: ( | 'Account_Take_1' | 'Account_Take_2' | 'Account_Take_3' @@ -4309,8 +4325,9 @@ export type GetCorporationTitlesResponse = { | 'Starbase_Defense_Operator' | 'Starbase_Fuel_Technician' | 'Station_Manager' - | 'Trader'[] - grantable_roles_at_hq: + | 'Trader' + )[] + grantable_roles_at_hq: ( | 'Account_Take_1' | 'Account_Take_2' | 'Account_Take_3' @@ -4364,8 +4381,9 @@ export type GetCorporationTitlesResponse = { | 'Starbase_Defense_Operator' | 'Starbase_Fuel_Technician' | 'Station_Manager' - | 'Trader'[] - grantable_roles_at_other: + | 'Trader' + )[] + grantable_roles_at_other: ( | 'Account_Take_1' | 'Account_Take_2' | 'Account_Take_3' @@ -4419,9 +4437,10 @@ export type GetCorporationTitlesResponse = { | 'Starbase_Defense_Operator' | 'Starbase_Fuel_Technician' | 'Station_Manager' - | 'Trader'[] + | 'Trader' + )[] name: string - roles: + roles: ( | 'Account_Take_1' | 'Account_Take_2' | 'Account_Take_3' @@ -4475,8 +4494,9 @@ export type GetCorporationTitlesResponse = { | 'Starbase_Defense_Operator' | 'Starbase_Fuel_Technician' | 'Station_Manager' - | 'Trader'[] - roles_at_base: + | 'Trader' + )[] + roles_at_base: ( | 'Account_Take_1' | 'Account_Take_2' | 'Account_Take_3' @@ -4530,8 +4550,9 @@ export type GetCorporationTitlesResponse = { | 'Starbase_Defense_Operator' | 'Starbase_Fuel_Technician' | 'Station_Manager' - | 'Trader'[] - roles_at_hq: + | 'Trader' + )[] + roles_at_hq: ( | 'Account_Take_1' | 'Account_Take_2' | 'Account_Take_3' @@ -4585,8 +4606,9 @@ export type GetCorporationTitlesResponse = { | 'Starbase_Defense_Operator' | 'Starbase_Fuel_Technician' | 'Station_Manager' - | 'Trader'[] - roles_at_other: + | 'Trader' + )[] + roles_at_other: ( | 'Account_Take_1' | 'Account_Take_2' | 'Account_Take_3' @@ -4640,7 +4662,8 @@ export type GetCorporationTitlesResponse = { | 'Starbase_Defense_Operator' | 'Starbase_Fuel_Technician' | 'Station_Manager' - | 'Trader'[] + | 'Trader' + )[] title_id: number }[] @@ -6192,7 +6215,7 @@ export interface GetUniverseStationResponse { race_id?: number reprocessing_efficiency: number reprocessing_stations_take: number - services: + services: ( | 'bounty-missions' | 'assasination-missions' | 'courier-missions' @@ -6219,7 +6242,8 @@ export interface GetUniverseStationResponse { | 'jump-clone-facility' | 'loyalty-point-store' | 'navy-offices' - | 'security-offices'[] + | 'security-offices' + )[] station_id: number system_id: number type_id: number