Add dynamic subpath support (#1011)
* Add dynamic subpath support for WebUI - Add SubpathConfig utility for server-side subpath detection - Configure React Router basename from server config - Update API base URL handling for subpath compatibility - Fix asset loading with relative paths - Add VITE_SUBPATH environment variable for development - Update locales and manifest paths for subpath support Closes #174 * Move VITE_SUBPATH interface to vite-env.d.ts * Ensure production bundle always uses relative base
This commit is contained in:
@@ -10,6 +10,7 @@ import { AppStorage } from '@/lib/storage/AppStorage.ts';
|
||||
import { UserRefreshMutation } from '@/lib/graphql/generated/graphql.ts';
|
||||
import { AuthManager } from '@/features/authentication/AuthManager.ts';
|
||||
import { AbortableApolloMutationResponse } from '@/lib/requests/RequestManager.ts';
|
||||
import { SubpathConfig } from '@/lib/utils/SubpathConfig.ts';
|
||||
|
||||
export abstract class BaseClient<Client, ClientConfig, Fetcher> {
|
||||
protected abstract client: Client;
|
||||
@@ -68,7 +69,10 @@ export abstract class BaseClient<Client, ClientConfig, Fetcher> {
|
||||
? import.meta.env.VITE_SERVER_URL_DEFAULT
|
||||
: `${protocol}//${hostname}:${port}`;
|
||||
|
||||
return AppStorage.local.getItemParsed('serverBaseURL', defaultUrl);
|
||||
const serverBaseURL = AppStorage.local.getItemParsed('serverBaseURL', defaultUrl);
|
||||
|
||||
// Apply subpath configuration to the base URL
|
||||
return SubpathConfig.getApiBaseUrl(serverBaseURL);
|
||||
}
|
||||
|
||||
public abstract updateConfig(config: Partial<ClientConfig>): void;
|
||||
|
||||
Reference in New Issue
Block a user