mirror of
https://github.com/Frooodle/Stirling-PDF.git
synced 2026-02-17 13:52:14 +01:00
# Description of Changes <!-- Please provide a summary of the changes, including: - What was changed - Why the change was made - Any challenges encountered Closes #(issue_number) --> --- ## Checklist ### General - [ ] I have read the [Contribution Guidelines](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/CONTRIBUTING.md) - [ ] I have read the [Stirling-PDF Developer Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/DeveloperGuide.md) (if applicable) - [ ] I have read the [How to add new languages to Stirling-PDF](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/HowToAddNewLanguage.md) (if applicable) - [ ] I have performed a self-review of my own code - [ ] My changes generate no new warnings ### Documentation - [ ] I have updated relevant docs on [Stirling-PDF's doc repo](https://github.com/Stirling-Tools/Stirling-Tools.github.io/blob/main/docs/) (if functionality has heavily changed) - [ ] I have read the section [Add New Translation Tags](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/HowToAddNewLanguage.md#add-new-translation-tags) (for new translation tags only) ### UI Changes (if applicable) - [ ] Screenshots or videos demonstrating the UI changes are attached (e.g., as comments or direct attachments in the PR) ### Testing (if applicable) - [ ] I have tested my changes locally. Refer to the [Testing Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/DeveloperGuide.md#6-testing) for more details.
24 lines
965 B
TypeScript
24 lines
965 B
TypeScript
import { useAppConfig } from '../hooks/useAppConfig';
|
|
|
|
// Get base URL from app config with fallback
|
|
export const getBaseUrl = (): string => {
|
|
const { config } = useAppConfig();
|
|
return config?.baseUrl || 'https://stirling.com';
|
|
};
|
|
|
|
// Base path from Vite config - build-time constant, normalized (no trailing slash)
|
|
// When no subpath, use empty string instead of '.' to avoid relative path issues
|
|
export const BASE_PATH = (import.meta.env.BASE_URL || '/').replace(/\/$/, '').replace(/^\.$/, '');
|
|
|
|
/** For in-app navigations when you must touch window.location (rare). */
|
|
export const withBasePath = (path: string): string => {
|
|
const clean = path.startsWith('/') ? path : `/${path}`;
|
|
return `${BASE_PATH}${clean}`;
|
|
};
|
|
|
|
/** For OAuth (needs absolute URL with scheme+host) */
|
|
export const absoluteWithBasePath = (path: string): string => {
|
|
const clean = path.startsWith('/') ? path : `/${path}`;
|
|
return `${window.location.origin}${BASE_PATH}${clean}`;
|
|
};
|