mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
24 lines
842 B
TypeScript
24 lines
842 B
TypeScript
import { config } from '@grafana/runtime';
|
|
|
|
export function createUrl(path: string, queryParams?: string[][] | Record<string, string> | string | URLSearchParams) {
|
|
const searchParams = new URLSearchParams(queryParams);
|
|
const searchParamsString = searchParams.toString();
|
|
|
|
return `${config.appSubUrl}${path}${searchParamsString ? `?${searchParamsString}` : ''}`;
|
|
}
|
|
|
|
export function createAbsoluteUrl(
|
|
path: string,
|
|
queryParams?: string[][] | Record<string, string> | string | URLSearchParams
|
|
) {
|
|
const searchParams = new URLSearchParams(queryParams);
|
|
const searchParamsString = searchParams.toString();
|
|
|
|
try {
|
|
const baseUrl = new URL(config.appSubUrl + path, config.appUrl);
|
|
return `${baseUrl.href}${searchParamsString ? `?${searchParamsString}` : ''}`;
|
|
} catch (err) {
|
|
return createUrl(path, queryParams);
|
|
}
|
|
}
|