mirror of
https://github.com/apache/superset.git
synced 2026-05-07 17:04:58 +00:00
chore: Refactor Menu.Item and cleanup console errors (#34536)
This commit is contained in:
@@ -317,47 +317,59 @@ class DatasourceControl extends PureComponent {
|
||||
sql: datasource.sql,
|
||||
};
|
||||
|
||||
const defaultDatasourceMenu = (
|
||||
<Menu onClick={this.handleMenuItemClick}>
|
||||
{this.props.isEditable && !isMissingDatasource && (
|
||||
<Menu.Item
|
||||
key={EDIT_DATASET}
|
||||
data-test="edit-dataset"
|
||||
disabled={!allowEdit}
|
||||
>
|
||||
{!allowEdit ? (
|
||||
<Tooltip
|
||||
title={t(
|
||||
'You must be a dataset owner in order to edit. Please reach out to a dataset owner to request modifications or edit access.',
|
||||
)}
|
||||
>
|
||||
{editText}
|
||||
</Tooltip>
|
||||
) : (
|
||||
editText
|
||||
const defaultDatasourceMenuItems = [];
|
||||
if (this.props.isEditable && !isMissingDatasource) {
|
||||
defaultDatasourceMenuItems.push({
|
||||
key: EDIT_DATASET,
|
||||
label: !allowEdit ? (
|
||||
<Tooltip
|
||||
title={t(
|
||||
'You must be a dataset owner in order to edit. Please reach out to a dataset owner to request modifications or edit access.',
|
||||
)}
|
||||
</Menu.Item>
|
||||
)}
|
||||
<Menu.Item key={CHANGE_DATASET}>{t('Swap dataset')}</Menu.Item>
|
||||
{!isMissingDatasource && canAccessSqlLab && (
|
||||
<Menu.Item key={VIEW_IN_SQL_LAB}>
|
||||
<Link
|
||||
to={{
|
||||
pathname: '/sqllab',
|
||||
state: { requestedQuery },
|
||||
}}
|
||||
onClick={preventRouterLinkWhileMetaClicked}
|
||||
>
|
||||
{t('View in SQL Lab')}
|
||||
</Link>
|
||||
</Menu.Item>
|
||||
)}
|
||||
</Menu>
|
||||
>
|
||||
{editText}
|
||||
</Tooltip>
|
||||
) : (
|
||||
editText
|
||||
),
|
||||
disabled: !allowEdit,
|
||||
...{ 'data-test': 'edit-dataset' },
|
||||
});
|
||||
}
|
||||
|
||||
defaultDatasourceMenuItems.push({
|
||||
key: CHANGE_DATASET,
|
||||
label: t('Swap dataset'),
|
||||
});
|
||||
|
||||
if (!isMissingDatasource && canAccessSqlLab) {
|
||||
defaultDatasourceMenuItems.push({
|
||||
key: VIEW_IN_SQL_LAB,
|
||||
label: (
|
||||
<Link
|
||||
to={{
|
||||
pathname: '/sqllab',
|
||||
state: { requestedQuery },
|
||||
}}
|
||||
onClick={preventRouterLinkWhileMetaClicked}
|
||||
>
|
||||
{t('View in SQL Lab')}
|
||||
</Link>
|
||||
),
|
||||
});
|
||||
}
|
||||
|
||||
const defaultDatasourceMenu = (
|
||||
<Menu
|
||||
onClick={this.handleMenuItemClick}
|
||||
items={defaultDatasourceMenuItems}
|
||||
/>
|
||||
);
|
||||
|
||||
const queryDatasourceMenu = (
|
||||
<Menu onClick={this.handleMenuItemClick}>
|
||||
<Menu.Item key={QUERY_PREVIEW}>
|
||||
const queryDatasourceMenuItems = [
|
||||
{
|
||||
key: QUERY_PREVIEW,
|
||||
label: (
|
||||
<ModalTrigger
|
||||
triggerNode={
|
||||
<div data-test="view-query-menu-item">{t('Query preview')}</div>
|
||||
@@ -378,22 +390,37 @@ class DatasourceControl extends PureComponent {
|
||||
resizable={false}
|
||||
responsive
|
||||
/>
|
||||
</Menu.Item>
|
||||
{canAccessSqlLab && (
|
||||
<Menu.Item key={VIEW_IN_SQL_LAB}>
|
||||
<Link
|
||||
to={{
|
||||
pathname: '/sqllab',
|
||||
state: { requestedQuery },
|
||||
}}
|
||||
onClick={preventRouterLinkWhileMetaClicked}
|
||||
>
|
||||
{t('View in SQL Lab')}
|
||||
</Link>
|
||||
</Menu.Item>
|
||||
)}
|
||||
<Menu.Item key={SAVE_AS_DATASET}>{t('Save as dataset')}</Menu.Item>
|
||||
</Menu>
|
||||
),
|
||||
},
|
||||
];
|
||||
|
||||
if (canAccessSqlLab) {
|
||||
queryDatasourceMenuItems.push({
|
||||
key: VIEW_IN_SQL_LAB,
|
||||
label: (
|
||||
<Link
|
||||
to={{
|
||||
pathname: '/sqllab',
|
||||
state: { requestedQuery },
|
||||
}}
|
||||
onClick={preventRouterLinkWhileMetaClicked}
|
||||
>
|
||||
{t('View in SQL Lab')}
|
||||
</Link>
|
||||
),
|
||||
});
|
||||
}
|
||||
|
||||
queryDatasourceMenuItems.push({
|
||||
key: SAVE_AS_DATASET,
|
||||
label: t('Save as dataset'),
|
||||
});
|
||||
|
||||
const queryDatasourceMenu = (
|
||||
<Menu
|
||||
onClick={this.handleMenuItemClick}
|
||||
items={queryDatasourceMenuItems}
|
||||
/>
|
||||
);
|
||||
|
||||
const { health_check_message: healthCheckMessage } = datasource;
|
||||
|
||||
Reference in New Issue
Block a user