feat(ui): Allow copying assertion urn from the UI (#9523)

This commit is contained in:
Sumit Patil 2023-12-28 01:25:37 +05:30 committed by GitHub
parent c804b3c1aa
commit cfb4d2f95f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 31 additions and 2 deletions

View File

@ -0,0 +1,16 @@
import React from 'react';
import { Menu } from 'antd';
import CopyUrnMenuItem from '../../../../../shared/share/items/CopyUrnMenuItem';
interface AssertionMenuProps {
urn: string;
}
export default function AssertionMenu({urn} : AssertionMenuProps){
return (
<Menu>
<CopyUrnMenuItem key="1" urn={urn} type="Assertion" />
</Menu>
);
}

View File

@ -1,7 +1,7 @@
import { Button, Empty, Image, message, Modal, Tag, Tooltip, Typography } from 'antd';
import { Button, Dropdown, Empty, Image, message, Modal, Tag, Tooltip, Typography } from 'antd';
import React from 'react';
import styled from 'styled-components';
import { DeleteOutlined, DownOutlined, RightOutlined, StopOutlined } from '@ant-design/icons';
import { DeleteOutlined, DownOutlined, MoreOutlined, RightOutlined, StopOutlined } from '@ant-design/icons';
import { DatasetAssertionDescription } from './DatasetAssertionDescription';
import { StyledTable } from '../../../components/styled/StyledTable';
import { DatasetAssertionDetails } from './DatasetAssertionDetails';
@ -9,6 +9,7 @@ import { Assertion, AssertionRunStatus } from '../../../../../../types.generated
import { getResultColor, getResultIcon, getResultText } from './assertionUtils';
import { useDeleteAssertionMutation } from '../../../../../../graphql/assertion.generated';
import { capitalizeFirstLetterOnly } from '../../../../../shared/textUtil';
import AssertionMenu from './AssertionMenu';
const ResultContainer = styled.div`
display: flex;
@ -30,6 +31,10 @@ const PlatformContainer = styled.div`
margin-right: 8px;
`;
const StyledMoreOutlined = styled(MoreOutlined)`
font-size: 18px;
`;
type Props = {
assertions: Array<Assertion>;
onDelete?: (urn: string) => void;
@ -141,6 +146,14 @@ export const DatasetAssertionsList = ({ assertions, onDelete }: Props) => {
<Button onClick={() => onDeleteAssertion(record.urn)} type="text" shape="circle" danger>
<DeleteOutlined />
</Button>
<Dropdown
overlay={
<AssertionMenu urn={record.urn}/>
}
trigger={['click']}
>
<StyledMoreOutlined />
</Dropdown>
</ActionButtonContainer>
),
},