Skip to content

Commit cd5942e

Browse files
committed
refactor: centralize API client configuration with global Axios instance
This commit introduces a global API client configuration approach: - Created a new `apiClient.ts` to manage a single, configurable Axios instance - Removed individual API-specific Axios instance generators - Updated client and query option generators to use the global API client - Simplified API client configuration in the README - Standardized method for setting and retrieving the API client across different API specifications
1 parent ea2e1d0 commit cd5942e

18 files changed

+1357
-1154
lines changed

example/configs/apiClient.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
import axios from "axios";
2+
import { setApiClient } from "../generated/apiClient";
3+
4+
const api = axios.create({ baseURL: "https://api.diks.acc.lightbase.nl" });
5+
setApiClient(api);

example/generated/apiClient.ts

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
import type { AxiosInstance } from "axios";
2+
3+
let apiClient: AxiosInstance;
4+
5+
export function setApiClient(instance: AxiosInstance): void {
6+
apiClient = instance;
7+
}
8+
9+
export function getApiClient(): AxiosInstance {
10+
if (!apiClient) {
11+
throw new Error("API client not configured. Call setApiClient with an axios instance first.");
12+
}
13+
return apiClient;
14+
}
15+
16+
export { apiClient };

example/generated/diks.axios.ts

Lines changed: 0 additions & 14 deletions
This file was deleted.

0 commit comments

Comments
 (0)