OVDashboardPlugin.api_version

This commit is contained in:
Jörn-Michael Miehe 2022-09-19 09:24:20 +00:00
parent a565125245
commit 889fae5a37

View file

@ -3,8 +3,9 @@ import Vue from 'vue';
export class OVDashboardPlugin { export class OVDashboardPlugin {
private axios: AxiosInstance; private axios: AxiosInstance;
private api_version: string;
public constructor() { public constructor(api_version: string) {
// Full config: https://github.com/axios/axios#request-config // Full config: https://github.com/axios/axios#request-config
// axios.defaults.baseURL = process.env.baseURL || process.env.apiUrl || ''; // axios.defaults.baseURL = process.env.baseURL || process.env.apiUrl || '';
// axios.defaults.headers.common['Authorization'] = AUTH_TOKEN; // axios.defaults.headers.common['Authorization'] = AUTH_TOKEN;
@ -17,6 +18,7 @@ export class OVDashboardPlugin {
}; };
this.axios = axios.create(config); this.axios = axios.create(config);
this.api_version = api_version;
} }
public install(vue: typeof Vue) { public install(vue: typeof Vue) {
@ -25,23 +27,20 @@ export class OVDashboardPlugin {
private get api_baseurl(): string { private get api_baseurl(): string {
if (process.env.NODE_ENV === "production") { if (process.env.NODE_ENV === "production") {
return "//" + window.location.host + "/api/v1"; return `//${window.location.host}/api`;
} else { } else if (process.env.NODE_ENV !== "development") {
if (process.env.NODE_ENV !== "development") {
console.warn("Unexpected NODE_ENV value"); console.warn("Unexpected NODE_ENV value");
} }
return "//" + window.location.hostname + ":8000/api/v1"; return `//${window.location.hostname}:8000/api`;
}
} }
public api_url(endpoint?: string): string { public api_url(endpoint?: string): string {
if (endpoint === undefined) if (endpoint === undefined)
return this.api_baseurl; return `${this.api_baseurl}/${this.api_version}`;
else return `${this.api_baseurl}/${this.api_version}/${endpoint}`;
return this.api_baseurl + "/" + endpoint;
} }
private fail(name: string): (reason: unknown) => void { private fail(name: string): (reason: unknown) => void {
@ -141,4 +140,4 @@ export class OVDashboardPlugin {
} }
} }
export default new OVDashboardPlugin(); export default new OVDashboardPlugin("v1");