diff --git a/datahub-web-react/src/app/analyticsDashboardV2/components/AnalyticsPage.tsx b/datahub-web-react/src/app/analyticsDashboardV2/components/AnalyticsPage.tsx index 8db4aefc46a339..145b19eec14570 100644 --- a/datahub-web-react/src/app/analyticsDashboardV2/components/AnalyticsPage.tsx +++ b/datahub-web-react/src/app/analyticsDashboardV2/components/AnalyticsPage.tsx @@ -1,5 +1,5 @@ -import { Loader, PageTitle } from '@components'; -import { Alert, Select } from 'antd'; +import { Loader, PageTitle, SelectOption, SimpleSelect } from '@components'; +import { Alert } from 'antd'; import React, { useState } from 'react'; import styled from 'styled-components'; @@ -35,6 +35,9 @@ const PageContainer = styled.div<{ isV2: boolean; $isShowNavBarRedesign?: boolea }}; padding: 24px; padding-bottom: 48px; + display: flex; + flex-direction: column; + gap: 16px; `; const HighlightGroup = styled.div` @@ -52,20 +55,14 @@ const DomainSection = styled.div` display: flex; flex-direction: column; gap: 16px; - padding: 24px 16px; -`; - -const TitleContainer = styled.div` - margin-bottom: 8px; `; const FilterSection = styled.div` display: flex; align-items: center; - margin-bottom: 16px; `; -const DomainSelect = styled(Select)` +const DomainSelect = styled(SimpleSelect)` width: 220px; `; @@ -76,12 +73,6 @@ const LoaderContainer = styled.div` min-height: 200px; `; -const Divider = styled.div` - height: 1px; - background: ${(props) => props.theme.styles['border-color-default']}; - margin: 32px 0; -`; - export const AnalyticsPage = () => { const isV2 = useIsThemeV2(); const isShowNavBarRedesign = useShowNavBarRedesign(); @@ -105,7 +96,7 @@ export const AnalyticsPage = () => { }); const [domain, setDomain] = useState('ALL'); - const onDomainChange = (inputDomain) => setDomain(inputDomain); + const onDomainChange = (inputDomains) => setDomain(inputDomains[0]); const { loading: metadataAnalyticsLoading, error: metadataAnalyticsError, @@ -123,6 +114,10 @@ export const AnalyticsPage = () => { const isLoading = highlightLoading || chartLoading || domainLoading || metadataAnalyticsLoading; + const domainOptions = + domainData?.listDomains?.domains?.map((d) => ({ value: d.urn, label: d?.properties?.name || '' })) || []; + const options: SelectOption[] = [{ value: 'ALL', label: 'All Domains' }, ...domainOptions]; + return ( {isLoading && ( @@ -154,9 +149,7 @@ export const AnalyticsPage = () => { ))} - - - + {domainError && ( { - option?.children?.toLowerCase()?.indexOf(input.toLowerCase()) >= 0 - } - > - All Domains - {domainData?.listDomains?.domains?.map((domainChoice) => ( - - {domainChoice?.properties?.name} - - ))} - + values={[domain]} + onUpdate={onDomainChange} + filterResultsByQuery + options={options} + isMultiSelect={false} + onClear={undefined} + showClear={false} + width={220} + /> @@ -195,7 +184,6 @@ export const AnalyticsPage = () => { ?.filter((chartGroup) => chartGroup.groupId === 'DataHubUsageAnalytics') .map((chartGroup) => ( - ))} diff --git a/datahub-web-react/src/app/analyticsDashboardV2/components/ChartGroup.tsx b/datahub-web-react/src/app/analyticsDashboardV2/components/ChartGroup.tsx index 2f5dad4ee46b7e..2bccab46be8c9f 100644 --- a/datahub-web-react/src/app/analyticsDashboardV2/components/ChartGroup.tsx +++ b/datahub-web-react/src/app/analyticsDashboardV2/components/ChartGroup.tsx @@ -11,11 +11,7 @@ const Container = styled.div` display: flex; flex-direction: column; gap: 16px; - padding: 24px 16px; -`; - -const TitleContainer = styled.div` - margin-bottom: 8px; + margin-bottom: 24px; `; const ChartCol = styled(Col)` @@ -36,11 +32,7 @@ type Props = { export const ChartGroup = ({ chartGroup }: Props) => { return ( - {chartGroup.title?.length > 0 && ( - - - - )} + {chartGroup.title?.length > 0 && } {chartGroup.charts.map((chart) => ( diff --git a/datahub-web-react/src/app/analyticsDashboardV2/components/Highlight.tsx b/datahub-web-react/src/app/analyticsDashboardV2/components/Highlight.tsx index 10a08222228530..08843c23d879c9 100644 --- a/datahub-web-react/src/app/analyticsDashboardV2/components/Highlight.tsx +++ b/datahub-web-react/src/app/analyticsDashboardV2/components/Highlight.tsx @@ -1,6 +1,5 @@ -import { Card, Text } from '@components'; +import { Card, Tooltip } from '@components'; import React from 'react'; -import styled from 'styled-components'; import { formatNumber } from '@app/shared/formatNumber'; @@ -11,47 +10,15 @@ type Props = { shortenValue?: boolean; }; -const TitleText = styled(Text)` - font-size: 16px; - font-weight: 600; - text-align: center; - margin-bottom: 8px; -`; - -const ValueText = styled(Text)` - font-size: 36px; - font-weight: 700; - line-height: 1.2; -`; - -const TrendText = styled(Text)` - margin-top: 8px; -`; - -const ContentWrapper = styled.div` - display: flex; - flex-direction: column; - align-items: center; - justify-content: center; - text-align: center; - padding: 16px 8px; - gap: 4px; -`; - export const Highlight = ({ highlight, shortenValue }: Props) => { return ( - - - {highlight.title} - - {(shortenValue && formatNumber(highlight.value)) || highlight.value} - - {highlight.body && ( - - {highlight.body} - - )} - - + +
+ +
+
); };