forked from cadence-workflow/cadence-web
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdomain-workflows-advanced.tsx
More file actions
74 lines (65 loc) · 2.13 KB
/
domain-workflows-advanced.tsx
File metadata and controls
74 lines (65 loc) · 2.13 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
import { useMemo } from 'react';
import getDayjsFromDateFilterValue from '@/components/date-filter/helpers/get-dayjs-from-date-filter-value';
import usePageQueryParams from '@/hooks/use-page-query-params/use-page-query-params';
import dayjs from '@/utils/datetime/dayjs';
import domainPageQueryParamsConfig from '@/views/domain-page/config/domain-page-query-params.config';
import useWorkflowsListColumns from '@/views/shared/workflows-list/hooks/use-workflows-list-columns';
import DomainWorkflowsHeader from '../domain-workflows-header/domain-workflows-header';
import DomainWorkflowsList from '../domain-workflows-list/domain-workflows-list';
import DomainWorkflowsTable from '../domain-workflows-table/domain-workflows-table';
import { type Props } from './domain-workflows-advanced.types';
export default function DomainWorkflowsAdvanced({
domain,
cluster,
isNewWorkflowsListEnabled,
}: Props) {
const [queryParams] = usePageQueryParams(domainPageQueryParamsConfig);
const { visibleColumns } = useWorkflowsListColumns({ cluster });
const timeRangeParams = useMemo(() => {
const now = dayjs();
return {
timeRangeStart: queryParams.timeRangeStart
? getDayjsFromDateFilterValue(
queryParams.timeRangeStart,
now
).toISOString()
: undefined,
timeRangeEnd: getDayjsFromDateFilterValue(
queryParams.timeRangeEnd,
now
).toISOString(),
};
}, [queryParams.timeRangeStart, queryParams.timeRangeEnd]);
if (isNewWorkflowsListEnabled) {
return (
<>
<DomainWorkflowsHeader
domain={domain}
cluster={cluster}
showColumnsPicker
{...timeRangeParams}
/>
<DomainWorkflowsList
domain={domain}
cluster={cluster}
visibleColumns={visibleColumns}
{...timeRangeParams}
/>
</>
);
}
return (
<>
<DomainWorkflowsHeader
domain={domain}
cluster={cluster}
{...timeRangeParams}
/>
<DomainWorkflowsTable
domain={domain}
cluster={cluster}
{...timeRangeParams}
/>
</>
);
}