D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
usr
/
share
/
grafana
/
public
/
app
/
features
/
connections
/
hooks
/
Filename :
useDataSourceSettingsNav.ts
back
Copy
import { useLocation, useParams } from 'react-router-dom'; import { useDataSource, useDataSourceSettingsNav as useDataSourceSettingsNavOriginal, } from 'app/features/datasources/state/hooks'; import { useGetSingle } from 'app/features/plugins/admin/state/hooks'; // We are extending the original useDataSourceSettingsNav in the following ways: // - changing the URL of the nav items to point to Connections // - setting the parent nav item export function useDataSourceSettingsNav(pageId?: string) { const { uid } = useParams<{ uid: string }>(); const location = useLocation(); const datasource = useDataSource(uid); const datasourcePlugin = useGetSingle(datasource.type); const params = new URLSearchParams(location.search); const nav = useDataSourceSettingsNavOriginal(uid, pageId || params.get('page')); const pageNav = { ...nav.main, text: datasource.name, subTitle: `Type: ${datasourcePlugin?.name}`, children: (nav.main.children || []).map((navModelItem) => ({ ...navModelItem, url: navModelItem.url?.replace('datasources/edit/', '/connections/datasources/edit/'), })), }; return { navId: 'connections-datasources', pageNav, dataSourceHeader: nav.dataSourceHeader, }; }