причесываем лог
This commit is contained in:
@@ -240,8 +240,10 @@ export const api = {
|
||||
getEnvironmentsList: () => fetchApi('/environments'),
|
||||
getLlmStatus: () => fetchApi('/llm/status'),
|
||||
getEnvironmentDatabases: (id) => fetchApi(`/environments/${id}/databases`),
|
||||
|
||||
// Dashboards
|
||||
getStorageFileBlob: (path) =>
|
||||
fetchApiBlob(`/storage/file?path=${encodeURIComponent(path)}`),
|
||||
|
||||
// Dashboards
|
||||
getDashboards: (envId, options = {}) => {
|
||||
const params = new URLSearchParams({ env_id: envId });
|
||||
if (options.search) params.append('search', options.search);
|
||||
|
||||
@@ -169,6 +169,23 @@
|
||||
return byName?.id || rawEnvIdOrName;
|
||||
}
|
||||
|
||||
function normalizeSupersetBaseUrl(rawUrl) {
|
||||
const baseUrl = String(rawUrl || "").trim().replace(/\/+$/, "");
|
||||
if (!baseUrl) return null;
|
||||
if (baseUrl.endsWith("/api/v1")) {
|
||||
return baseUrl.slice(0, -"/api/v1".length);
|
||||
}
|
||||
return baseUrl;
|
||||
}
|
||||
|
||||
function resolveSupersetDashboardUrl(envId, dashboardId) {
|
||||
if (!envId || !dashboardId) return null;
|
||||
const env = environmentOptions.find((item) => item.id === envId);
|
||||
const baseUrl = normalizeSupersetBaseUrl(env?.url);
|
||||
if (!baseUrl) return null;
|
||||
return `${baseUrl}/superset/dashboard/${encodeURIComponent(String(dashboardId))}/`;
|
||||
}
|
||||
|
||||
async function loadActiveTaskDetails() {
|
||||
const taskId = normalizeTaskId(activeTaskId);
|
||||
if (!taskId) return;
|
||||
@@ -295,7 +312,17 @@
|
||||
);
|
||||
return;
|
||||
}
|
||||
const href = `/dashboards/${encodeURIComponent(String(taskSummary.primaryDashboardId))}?env_id=${encodeURIComponent(String(taskSummary.targetEnvId))}`;
|
||||
const href = resolveSupersetDashboardUrl(
|
||||
taskSummary.targetEnvId,
|
||||
taskSummary.primaryDashboardId,
|
||||
);
|
||||
if (!href) {
|
||||
addToast(
|
||||
$t.tasks?.summary_link_unavailable || "Deep link unavailable",
|
||||
"error",
|
||||
);
|
||||
return;
|
||||
}
|
||||
window.open(href, "_blank", "noopener,noreferrer");
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user