grafana/public/app/features/plugins/admin/components/GetStartedWithPlugin/GetStartedWithDataSource.tsx
mikkancso 37c960e104
Reword button to "Add new data source" (#69125)
* reword button to Create a new data source

The previous wording included the name of the data source, which made it
difficult for the doc team to refer to it.
This allows the doc team to refer to this button in an obvious way.

* "Create a"-> "Add"

* update tests
2023-05-26 10:15:16 +02:00

37 lines
1002 B
TypeScript

import React, { useCallback } from 'react';
import { DataSourcePluginMeta } from '@grafana/data';
import { Button } from '@grafana/ui';
import { useDataSourcesRoutes, addDataSource } from 'app/features/datasources/state';
import { useDispatch } from 'app/types';
import { isDataSourceEditor } from '../../permissions';
import { CatalogPlugin } from '../../types';
type Props = {
plugin: CatalogPlugin;
};
export function GetStartedWithDataSource({ plugin }: Props): React.ReactElement | null {
const dispatch = useDispatch();
const dataSourcesRoutes = useDataSourcesRoutes();
const onAddDataSource = useCallback(() => {
const meta = {
name: plugin.name,
id: plugin.id,
} as DataSourcePluginMeta;
dispatch(addDataSource(meta, dataSourcesRoutes.Edit));
}, [dispatch, plugin, dataSourcesRoutes]);
if (!isDataSourceEditor()) {
return null;
}
return (
<Button variant="primary" onClick={onAddDataSource}>
Add new data source
</Button>
);
}