mirror of
https://github.com/Shadowfita/docmost.git
synced 2025-11-11 13:02:00 +10:00
52 lines
1.1 KiB
TypeScript
52 lines
1.1 KiB
TypeScript
declare global {
|
|
interface Window {
|
|
CONFIG?: Record<string, string>;
|
|
}
|
|
}
|
|
|
|
export function getAppUrl(): string {
|
|
//let appUrl = window.CONFIG?.APP_URL || process.env.APP_URL;
|
|
|
|
// if (import.meta.env.DEV) {
|
|
// return appUrl || "http://localhost:3000";
|
|
//}
|
|
|
|
return `${window.location.protocol}//${window.location.host}`;
|
|
}
|
|
|
|
export function getBackendUrl(): string {
|
|
return getAppUrl() + '/api';
|
|
}
|
|
|
|
export function getCollaborationUrl(): string {
|
|
const COLLAB_PATH = '/collab';
|
|
|
|
let url = getAppUrl();
|
|
if (import.meta.env.DEV) {
|
|
url = process.env.APP_URL;
|
|
}
|
|
|
|
const wsProtocol = url.startsWith('https') ? 'wss' : 'ws';
|
|
return `${wsProtocol}://${url.split('://')[1]}${COLLAB_PATH}`;
|
|
}
|
|
|
|
export function getAvatarUrl(avatarUrl: string) {
|
|
if (!avatarUrl) {
|
|
return null;
|
|
}
|
|
|
|
if (avatarUrl?.startsWith('http')) {
|
|
return avatarUrl;
|
|
}
|
|
|
|
return getBackendUrl() + '/attachments/img/avatar/' + avatarUrl;
|
|
}
|
|
|
|
export function getSpaceUrl(spaceSlug: string) {
|
|
return '/s/' + spaceSlug;
|
|
}
|
|
|
|
export function getFileUrl(src: string) {
|
|
return src?.startsWith('/files/') ? getBackendUrl() + src : src;
|
|
}
|