mirror of
https://github.com/open-metadata/OpenMetadata.git
synced 2025-11-02 19:48:17 +00:00
This commit is contained in:
parent
8b44de52cb
commit
672041bbb7
@ -48,7 +48,7 @@ const RecentlyViewed: FunctionComponent = () => {
|
||||
case EntityType.DATASET: {
|
||||
const res = await getTableDetailsByFQN(
|
||||
oData.fqn,
|
||||
'database, usageSummary, tags, owner,columns'
|
||||
'usageSummary, tags, owner,columns'
|
||||
);
|
||||
|
||||
const {
|
||||
@ -79,7 +79,7 @@ const RecentlyViewed: FunctionComponent = () => {
|
||||
break;
|
||||
}
|
||||
case EntityType.TOPIC: {
|
||||
const res = await getTopicByFqn(oData.fqn, 'owner, service, tags');
|
||||
const res = await getTopicByFqn(oData.fqn, 'owner, tags');
|
||||
|
||||
const { description, id, name, tags, owner, fullyQualifiedName } =
|
||||
res.data;
|
||||
@ -100,7 +100,7 @@ const RecentlyViewed: FunctionComponent = () => {
|
||||
case EntityType.DASHBOARD: {
|
||||
const res = await getDashboardByFqn(
|
||||
oData.fqn,
|
||||
'owner, service, tags, usageSummary'
|
||||
'owner, tags, usageSummary'
|
||||
);
|
||||
|
||||
const {
|
||||
@ -129,7 +129,7 @@ const RecentlyViewed: FunctionComponent = () => {
|
||||
case EntityType.PIPELINE: {
|
||||
const res = await getPipelineByFqn(
|
||||
oData.fqn,
|
||||
'owner, service, tags, usageSummary'
|
||||
'owner, tags, usageSummary'
|
||||
);
|
||||
|
||||
const {
|
||||
|
||||
@ -188,7 +188,7 @@ const DBTModelDetailsPage: FunctionComponent = () => {
|
||||
setOwner(getOwnerFromId(owner?.id));
|
||||
setTier(getTierTags(tags));
|
||||
setFollowers(followers);
|
||||
getDatabase(database.id, 'service').then((resDB: AxiosResponse) => {
|
||||
getDatabase(database.id).then((resDB: AxiosResponse) => {
|
||||
getServiceById('databaseServices', resDB.data.service?.id).then(
|
||||
(resService: AxiosResponse) => {
|
||||
setSlashedDBTModelName([
|
||||
|
||||
@ -24,7 +24,6 @@ import {
|
||||
patchDashboardDetails,
|
||||
removeFollower,
|
||||
} from '../../axiosAPIs/dashboardAPI';
|
||||
import { getServiceById } from '../../axiosAPIs/serviceAPI';
|
||||
import { TitleBreadcrumbProps } from '../../components/common/title-breadcrumb/title-breadcrumb.interface';
|
||||
import DashboardDetails from '../../components/DashboardDetails/DashboardDetails.component';
|
||||
import Loader from '../../components/Loader/Loader';
|
||||
@ -125,9 +124,7 @@ const DashboardDetailsPage = () => {
|
||||
let chartsData: ChartType[] = [];
|
||||
let promiseArr: Array<AxiosPromise> = [];
|
||||
if (charts?.length) {
|
||||
promiseArr = charts.map((chart) =>
|
||||
getChartById(chart.id, ['service', 'tags'])
|
||||
);
|
||||
promiseArr = charts.map((chart) => getChartById(chart.id, ['tags']));
|
||||
await Promise.allSettled(promiseArr).then(
|
||||
(res: PromiseSettledResult<AxiosResponse>[]) => {
|
||||
if (res.length) {
|
||||
@ -149,7 +146,6 @@ const DashboardDetailsPage = () => {
|
||||
setLoading(true);
|
||||
getDashboardByFqn(dashboardFQN, [
|
||||
'owner',
|
||||
'service',
|
||||
'followers',
|
||||
'tags',
|
||||
'usageSummary',
|
||||
@ -166,6 +162,7 @@ const DashboardDetailsPage = () => {
|
||||
displayName,
|
||||
charts,
|
||||
dashboardUrl,
|
||||
serviceType,
|
||||
} = res.data;
|
||||
setDisplayName(displayName);
|
||||
setDashboardDetails(res.data);
|
||||
@ -175,38 +172,33 @@ const DashboardDetailsPage = () => {
|
||||
setOwner(getOwnerFromId(owner?.id));
|
||||
setTier(getTierTags(tags));
|
||||
setTags(getTagsWithoutTier(tags));
|
||||
getServiceById('dashboardServices', service?.id).then(
|
||||
(serviceRes: AxiosResponse) => {
|
||||
setServiceType(serviceRes.data.serviceType);
|
||||
setSlashedDashboardName([
|
||||
{
|
||||
name: serviceRes.data.name,
|
||||
url: serviceRes.data.name
|
||||
? getServiceDetailsPath(
|
||||
serviceRes.data.name,
|
||||
serviceRes.data.serviceType,
|
||||
ServiceCategory.DASHBOARD_SERVICES
|
||||
)
|
||||
: '',
|
||||
imgSrc: serviceRes.data.serviceType
|
||||
? serviceTypeLogo(serviceRes.data.serviceType)
|
||||
: undefined,
|
||||
},
|
||||
{
|
||||
name: displayName,
|
||||
url: '',
|
||||
activeTitle: true,
|
||||
},
|
||||
]);
|
||||
setServiceType(serviceType);
|
||||
setSlashedDashboardName([
|
||||
{
|
||||
name: service.name,
|
||||
url: service.name
|
||||
? getServiceDetailsPath(
|
||||
service.name,
|
||||
serviceType,
|
||||
ServiceCategory.DASHBOARD_SERVICES
|
||||
)
|
||||
: '',
|
||||
imgSrc: serviceType ? serviceTypeLogo(serviceType) : undefined,
|
||||
},
|
||||
{
|
||||
name: displayName,
|
||||
url: '',
|
||||
activeTitle: true,
|
||||
},
|
||||
]);
|
||||
|
||||
addToRecentViewed({
|
||||
entityType: EntityType.DASHBOARD,
|
||||
fqn: fullyQualifiedName,
|
||||
serviceType: serviceType,
|
||||
timestamp: 0,
|
||||
});
|
||||
|
||||
addToRecentViewed({
|
||||
entityType: EntityType.DASHBOARD,
|
||||
fqn: fullyQualifiedName,
|
||||
serviceType: serviceRes.data.serviceType,
|
||||
timestamp: 0,
|
||||
});
|
||||
}
|
||||
);
|
||||
setDashboardUrl(dashboardUrl);
|
||||
fetchCharts(charts).then((charts) => setCharts(charts));
|
||||
setLoading(false);
|
||||
|
||||
@ -18,9 +18,7 @@ import { EntityTags, LeafNodes, LineagePos, LoadingNodeState } from 'Models';
|
||||
import React, { FunctionComponent, useEffect, useState } from 'react';
|
||||
import { useHistory, useParams } from 'react-router-dom';
|
||||
import AppState from '../../AppState';
|
||||
import { getDatabase } from '../../axiosAPIs/databaseAPI';
|
||||
import { getLineageByFQN } from '../../axiosAPIs/lineageAPI';
|
||||
import { getServiceById } from '../../axiosAPIs/serviceAPI';
|
||||
import {
|
||||
addFollower,
|
||||
getTableDetailsByFQN,
|
||||
@ -226,7 +224,7 @@ const DatasetDetailsPage: FunctionComponent = () => {
|
||||
setIsLoading(true);
|
||||
getTableDetailsByFQN(
|
||||
getPartialNameFromFQN(tableFQN, ['service', 'database', 'table'], '.'),
|
||||
'columns, database, usageSummary, followers, joins, tags, owner, sampleData, tableProfile'
|
||||
'columns, usageSummary, followers, joins, tags, owner, sampleData, tableProfile'
|
||||
)
|
||||
.then((res: AxiosResponse) => {
|
||||
const {
|
||||
@ -245,6 +243,8 @@ const DatasetDetailsPage: FunctionComponent = () => {
|
||||
tableProfile,
|
||||
version,
|
||||
changeDescription,
|
||||
service,
|
||||
serviceType,
|
||||
} = res.data;
|
||||
setTableDetails(res.data);
|
||||
setTableId(id);
|
||||
@ -253,42 +253,34 @@ const DatasetDetailsPage: FunctionComponent = () => {
|
||||
setTier(getTierTags(tags));
|
||||
setOwner(getOwnerFromId(owner?.id));
|
||||
setFollowers(followers);
|
||||
getDatabase(database.id, 'service').then((resDB: AxiosResponse) => {
|
||||
getServiceById('databaseServices', resDB.data.service?.id).then(
|
||||
(resService: AxiosResponse) => {
|
||||
setSlashedTableName([
|
||||
{
|
||||
name: resService.data.name,
|
||||
url: resService.data.name
|
||||
? getServiceDetailsPath(
|
||||
resService.data.name,
|
||||
resService.data.serviceType,
|
||||
ServiceCategory.DATABASE_SERVICES
|
||||
)
|
||||
: '',
|
||||
imgSrc: resService.data.serviceType
|
||||
? serviceTypeLogo(resService.data.serviceType)
|
||||
: undefined,
|
||||
},
|
||||
{
|
||||
name: resDB.data.name,
|
||||
url: getDatabaseDetailsPath(resDB.data.fullyQualifiedName),
|
||||
},
|
||||
{
|
||||
name: name,
|
||||
url: '',
|
||||
activeTitle: true,
|
||||
},
|
||||
]);
|
||||
setSlashedTableName([
|
||||
{
|
||||
name: service.name,
|
||||
url: service.name
|
||||
? getServiceDetailsPath(
|
||||
service.name,
|
||||
serviceType,
|
||||
ServiceCategory.DATABASE_SERVICES
|
||||
)
|
||||
: '',
|
||||
imgSrc: serviceType ? serviceTypeLogo(serviceType) : undefined,
|
||||
},
|
||||
{
|
||||
name: getPartialNameFromFQN(database.name, ['database']),
|
||||
url: getDatabaseDetailsPath(database.name),
|
||||
},
|
||||
{
|
||||
name: name,
|
||||
url: '',
|
||||
activeTitle: true,
|
||||
},
|
||||
]);
|
||||
|
||||
addToRecentViewed({
|
||||
entityType: EntityType.DATASET,
|
||||
fqn: fullyQualifiedName,
|
||||
serviceType: resService.data.serviceType,
|
||||
timestamp: 0,
|
||||
});
|
||||
}
|
||||
);
|
||||
addToRecentViewed({
|
||||
entityType: EntityType.DATASET,
|
||||
fqn: fullyQualifiedName,
|
||||
serviceType: serviceType,
|
||||
timestamp: 0,
|
||||
});
|
||||
setName(name);
|
||||
|
||||
|
||||
@ -53,7 +53,7 @@ const IngestionPage = () => {
|
||||
};
|
||||
|
||||
const getAllIngestionWorkflows = (paging?: string) => {
|
||||
getIngestionWorkflows(['owner, service, tags, status'], paging)
|
||||
getIngestionWorkflows(['owner, tags, status'], paging)
|
||||
.then((res) => {
|
||||
if (res.data.data) {
|
||||
setIngestions(res.data.data);
|
||||
|
||||
@ -68,7 +68,7 @@ const MyDataPage = () => {
|
||||
getAllServices()
|
||||
.then((res) => setCountServices(res.length))
|
||||
.catch(() => setCountServices(0));
|
||||
getIngestionWorkflows(['owner, service, tags, status'])
|
||||
getIngestionWorkflows(['owner,tags, status'])
|
||||
.then((res) => setIngestionCount(res.data.data.length))
|
||||
.catch(() => setIngestionCount(0));
|
||||
}
|
||||
|
||||
@ -31,7 +31,6 @@ import {
|
||||
patchPipelineDetails,
|
||||
removeFollower,
|
||||
} from '../../axiosAPIs/pipelineAPI';
|
||||
import { getServiceById } from '../../axiosAPIs/serviceAPI';
|
||||
import { TitleBreadcrumbProps } from '../../components/common/title-breadcrumb/title-breadcrumb.interface';
|
||||
import Loader from '../../components/Loader/Loader';
|
||||
import PipelineDetails from '../../components/PipelineDetails/PipelineDetails.component';
|
||||
@ -141,13 +140,7 @@ const PipelineDetailsPage = () => {
|
||||
|
||||
const fetchPipelineDetail = (pipelineFQN: string) => {
|
||||
setLoading(true);
|
||||
getPipelineByFqn(pipelineFQN, [
|
||||
'owner',
|
||||
'service',
|
||||
'followers',
|
||||
'tags',
|
||||
'tasks',
|
||||
])
|
||||
getPipelineByFqn(pipelineFQN, ['owner', 'followers', 'tags', 'tasks'])
|
||||
.then((res: AxiosResponse) => {
|
||||
const {
|
||||
id,
|
||||
@ -155,6 +148,7 @@ const PipelineDetailsPage = () => {
|
||||
followers,
|
||||
fullyQualifiedName,
|
||||
service,
|
||||
serviceType,
|
||||
tags,
|
||||
owner,
|
||||
displayName,
|
||||
@ -169,38 +163,32 @@ const PipelineDetailsPage = () => {
|
||||
setOwner(getOwnerFromId(owner?.id));
|
||||
setTier(getTierTags(tags));
|
||||
setTags(getTagsWithoutTier(tags));
|
||||
getServiceById('pipelineServices', service?.id).then(
|
||||
(serviceRes: AxiosResponse) => {
|
||||
setServiceType(serviceRes.data.serviceType);
|
||||
setSlashedPipelineName([
|
||||
{
|
||||
name: serviceRes.data.name,
|
||||
url: serviceRes.data.name
|
||||
? getServiceDetailsPath(
|
||||
serviceRes.data.name,
|
||||
serviceRes.data.serviceType,
|
||||
ServiceCategory.PIPELINE_SERVICES
|
||||
)
|
||||
: '',
|
||||
imgSrc: serviceRes.data.serviceType
|
||||
? serviceTypeLogo(serviceRes.data.serviceType)
|
||||
: undefined,
|
||||
},
|
||||
{
|
||||
name: displayName,
|
||||
url: '',
|
||||
activeTitle: true,
|
||||
},
|
||||
]);
|
||||
setServiceType(serviceType);
|
||||
setSlashedPipelineName([
|
||||
{
|
||||
name: service.name,
|
||||
url: service.name
|
||||
? getServiceDetailsPath(
|
||||
service.name,
|
||||
serviceType,
|
||||
ServiceCategory.PIPELINE_SERVICES
|
||||
)
|
||||
: '',
|
||||
imgSrc: serviceType ? serviceTypeLogo(serviceType) : undefined,
|
||||
},
|
||||
{
|
||||
name: displayName,
|
||||
url: '',
|
||||
activeTitle: true,
|
||||
},
|
||||
]);
|
||||
|
||||
addToRecentViewed({
|
||||
entityType: EntityType.PIPELINE,
|
||||
fqn: fullyQualifiedName,
|
||||
serviceType: serviceRes.data.serviceType,
|
||||
timestamp: 0,
|
||||
});
|
||||
}
|
||||
);
|
||||
addToRecentViewed({
|
||||
entityType: EntityType.PIPELINE,
|
||||
fqn: fullyQualifiedName,
|
||||
serviceType: serviceType,
|
||||
timestamp: 0,
|
||||
});
|
||||
setPipelineUrl(pipelineUrl);
|
||||
setTasks(tasks);
|
||||
})
|
||||
|
||||
@ -18,7 +18,6 @@ import { EntityTags, TableDetail } from 'Models';
|
||||
import React, { FunctionComponent, useEffect, useState } from 'react';
|
||||
import { useHistory, useParams } from 'react-router-dom';
|
||||
import AppState from '../../AppState';
|
||||
import { getServiceById } from '../../axiosAPIs/serviceAPI';
|
||||
import {
|
||||
addFollower,
|
||||
getTopicByFqn,
|
||||
@ -116,7 +115,7 @@ const TopicDetailsPage: FunctionComponent = () => {
|
||||
|
||||
const fetchTopicDetail = (topicFQN: string) => {
|
||||
setLoading(true);
|
||||
getTopicByFqn(topicFQN, ['owner', 'service', 'followers', 'tags'])
|
||||
getTopicByFqn(topicFQN, ['owner', 'followers', 'tags'])
|
||||
.then((res: AxiosResponse) => {
|
||||
const {
|
||||
id,
|
||||
@ -134,6 +133,7 @@ const TopicDetailsPage: FunctionComponent = () => {
|
||||
maximumMessageSize,
|
||||
replicationFactor,
|
||||
retentionSize,
|
||||
serviceType,
|
||||
} = res.data;
|
||||
setName(name);
|
||||
setTopicDetails(res.data);
|
||||
@ -150,45 +150,32 @@ const TopicDetailsPage: FunctionComponent = () => {
|
||||
setMaximumMessageSize(maximumMessageSize);
|
||||
setReplicationFactor(replicationFactor);
|
||||
setRetentionSize(retentionSize);
|
||||
getServiceById('messagingServices', service?.id)
|
||||
.then((serviceRes: AxiosResponse) => {
|
||||
setSlashedTopicName([
|
||||
{
|
||||
name: serviceRes.data.name,
|
||||
url: serviceRes.data.name
|
||||
? getServiceDetailsPath(
|
||||
serviceRes.data.name,
|
||||
serviceRes.data.serviceType,
|
||||
ServiceCategory.MESSAGING_SERVICES
|
||||
)
|
||||
: '',
|
||||
imgSrc: serviceRes.data.serviceType
|
||||
? serviceTypeLogo(serviceRes.data.serviceType)
|
||||
: undefined,
|
||||
},
|
||||
{
|
||||
name: name,
|
||||
url: '',
|
||||
activeTitle: true,
|
||||
},
|
||||
]);
|
||||
setSlashedTopicName([
|
||||
{
|
||||
name: service.name,
|
||||
url: service.name
|
||||
? getServiceDetailsPath(
|
||||
service.name,
|
||||
serviceType,
|
||||
ServiceCategory.MESSAGING_SERVICES
|
||||
)
|
||||
: '',
|
||||
imgSrc: serviceType ? serviceTypeLogo(serviceType) : undefined,
|
||||
},
|
||||
{
|
||||
name: name,
|
||||
url: '',
|
||||
activeTitle: true,
|
||||
},
|
||||
]);
|
||||
|
||||
addToRecentViewed({
|
||||
entityType: EntityType.TOPIC,
|
||||
fqn: fullyQualifiedName,
|
||||
serviceType: serviceRes.data.serviceType,
|
||||
timestamp: 0,
|
||||
});
|
||||
})
|
||||
.catch((err: AxiosError) => {
|
||||
const errMsg =
|
||||
err.message || `Error while fetching service for ${name}`;
|
||||
showToast({
|
||||
variant: 'error',
|
||||
body: errMsg,
|
||||
});
|
||||
})
|
||||
.finally(() => setLoading(false));
|
||||
addToRecentViewed({
|
||||
entityType: EntityType.TOPIC,
|
||||
fqn: fullyQualifiedName,
|
||||
serviceType: serviceType,
|
||||
timestamp: 0,
|
||||
});
|
||||
setLoading(false);
|
||||
})
|
||||
.catch((err: AxiosError) => {
|
||||
const errMsg = err.message || 'Error while fetching topic details';
|
||||
|
||||
@ -168,41 +168,39 @@ const DatabaseDetails: FunctionComponent = () => {
|
||||
};
|
||||
|
||||
const getDetailsByFQN = () => {
|
||||
getDatabaseDetailsByFQN(databaseFQN, 'service').then(
|
||||
(res: AxiosResponse) => {
|
||||
const { description, id, name, service } = res.data;
|
||||
setDatabase(res.data);
|
||||
setDescription(description);
|
||||
setDatabaseId(id);
|
||||
setDatabaseName(name);
|
||||
getDatabaseDetailsByFQN(databaseFQN).then((res: AxiosResponse) => {
|
||||
const { description, id, name, service } = res.data;
|
||||
setDatabase(res.data);
|
||||
setDescription(description);
|
||||
setDatabaseId(id);
|
||||
setDatabaseName(name);
|
||||
|
||||
getServiceById('databaseServices', service?.id).then(
|
||||
(resService: AxiosResponse) => {
|
||||
setServiceName(resService.data.name);
|
||||
setSlashedTableName([
|
||||
{
|
||||
name: resService.data.name,
|
||||
url: resService.data.name
|
||||
? getServiceDetailsPath(
|
||||
resService.data.name,
|
||||
resService.data.serviceType,
|
||||
ServiceCategory.DATABASE_SERVICES
|
||||
)
|
||||
: '',
|
||||
imgSrc: resService.data.serviceType
|
||||
? serviceTypeLogo(resService.data.serviceType)
|
||||
: undefined,
|
||||
},
|
||||
{
|
||||
name: name,
|
||||
url: '',
|
||||
activeTitle: true,
|
||||
},
|
||||
]);
|
||||
}
|
||||
);
|
||||
}
|
||||
);
|
||||
getServiceById('databaseServices', service?.id).then(
|
||||
(resService: AxiosResponse) => {
|
||||
setServiceName(resService.data.name);
|
||||
setSlashedTableName([
|
||||
{
|
||||
name: resService.data.name,
|
||||
url: resService.data.name
|
||||
? getServiceDetailsPath(
|
||||
resService.data.name,
|
||||
resService.data.serviceType,
|
||||
ServiceCategory.DATABASE_SERVICES
|
||||
)
|
||||
: '',
|
||||
imgSrc: resService.data.serviceType
|
||||
? serviceTypeLogo(resService.data.serviceType)
|
||||
: undefined,
|
||||
},
|
||||
{
|
||||
name: name,
|
||||
url: '',
|
||||
activeTitle: true,
|
||||
},
|
||||
]);
|
||||
}
|
||||
);
|
||||
});
|
||||
fetchDatabaseTablesAndDBTModels();
|
||||
};
|
||||
|
||||
|
||||
@ -87,7 +87,7 @@ const ServicePage: FunctionComponent = () => {
|
||||
|
||||
const fetchDatabases = (paging?: string) => {
|
||||
setIsloading(true);
|
||||
getDatabases(serviceFQN, paging, ['owner', 'usageSummary', 'service'])
|
||||
getDatabases(serviceFQN, paging, ['owner', 'usageSummary'])
|
||||
.then((res: AxiosResponse) => {
|
||||
if (res.data.data) {
|
||||
setData(res.data.data);
|
||||
@ -107,7 +107,7 @@ const ServicePage: FunctionComponent = () => {
|
||||
|
||||
const fetchTopics = (paging?: string) => {
|
||||
setIsloading(true);
|
||||
getTopics(serviceFQN, paging, ['owner', 'service', 'tags'])
|
||||
getTopics(serviceFQN, paging, ['owner', 'tags'])
|
||||
.then((res: AxiosResponse) => {
|
||||
if (res.data.data) {
|
||||
setData(res.data.data);
|
||||
@ -127,12 +127,7 @@ const ServicePage: FunctionComponent = () => {
|
||||
|
||||
const fetchDashboards = (paging?: string) => {
|
||||
setIsloading(true);
|
||||
getDashboards(serviceFQN, paging, [
|
||||
'owner',
|
||||
'service',
|
||||
'usageSummary',
|
||||
'tags',
|
||||
])
|
||||
getDashboards(serviceFQN, paging, ['owner', 'usageSummary', 'tags'])
|
||||
.then((res: AxiosResponse) => {
|
||||
if (res.data.data) {
|
||||
setData(res.data.data);
|
||||
@ -152,12 +147,7 @@ const ServicePage: FunctionComponent = () => {
|
||||
|
||||
const fetchPipeLines = (paging?: string) => {
|
||||
setIsloading(true);
|
||||
getPipelines(serviceFQN, paging, [
|
||||
'owner',
|
||||
'service',
|
||||
'usageSummary',
|
||||
'tags',
|
||||
])
|
||||
getPipelines(serviceFQN, paging, ['owner', 'usageSummary', 'tags'])
|
||||
.then((res: AxiosResponse) => {
|
||||
if (res.data.data) {
|
||||
setData(res.data.data);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user