Skip to content

Commit 9bce141

Browse files
authored
fix: [DPS-36769] - Filtering clusters by region not working (#13491)
1 parent 9fcb771 commit 9bce141

4 files changed

Lines changed: 28 additions & 11 deletions

File tree

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"@linode/manager": Fixed
3+
---
4+
5+
In Stream Create and Edit forms in the Clusters table filtering by region resulted in an empty clusters list ([#13491](https://github.com/linode/manager/pull/13491))

packages/manager/src/features/Delivery/Streams/StreamForm/Clusters/StreamFormClusters.tsx

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -29,10 +29,12 @@ import { Table } from 'src/components/Table';
2929
import { StreamFormClusterTableContent } from 'src/features/Delivery/Streams/StreamForm/Clusters/StreamFormClustersTableContent';
3030
import { useAllKubernetesClustersQuery } from 'src/queries/kubernetes';
3131

32-
import type { KubernetesCluster } from '@linode/api-v4';
3332
import type { FormMode } from 'src/features/Delivery/Shared/types';
3433
import type { OrderByKeys } from 'src/features/Delivery/Streams/StreamForm/Clusters/StreamFormClustersTableContent';
35-
import type { StreamAndDestinationFormType } from 'src/features/Delivery/Streams/StreamForm/types';
34+
import type {
35+
ExtendedKubernetesCluster,
36+
StreamAndDestinationFormType,
37+
} from 'src/features/Delivery/Streams/StreamForm/types';
3638

3739
const controlPaths = {
3840
isAutoAddAllClustersEnabled:
@@ -80,7 +82,7 @@ export const StreamFormClusters = (props: StreamFormClustersProps) => {
8082
[regions]
8183
);
8284

83-
const eligibleClusters = useMemo(() => {
85+
const eligibleClusters: ExtendedKubernetesCluster[] = useMemo(() => {
8486
const regionMap = new Map(
8587
eligibleRegions.map(({ id, label }) => [id, label])
8688
);
@@ -89,7 +91,7 @@ export const StreamFormClusters = (props: StreamFormClustersProps) => {
8991
.filter(({ region }) => regionMap.has(region))
9092
.map((cluster) => ({
9193
...cluster,
92-
region: regionMap.get(cluster.region)
94+
regionLabel: regionMap.get(cluster.region)
9395
? `${regionMap.get(cluster.region)} (${cluster.region})`
9496
: cluster.region,
9597
}));
@@ -198,7 +200,7 @@ export const StreamFormClusters = (props: StreamFormClustersProps) => {
198200
}, [searchText, regionFilter, logGenerationFilter, eligibleClusters]);
199201

200202
const sortedAndFilteredClusters = useMemo(
201-
() => sortData<KubernetesCluster>(orderBy, order)(filteredClusters),
203+
() => sortData<ExtendedKubernetesCluster>(orderBy, order)(filteredClusters),
202204
[orderBy, order, filteredClusters]
203205
);
204206

packages/manager/src/features/Delivery/Streams/StreamForm/Clusters/StreamFormClustersTableContent.tsx

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,15 @@ import { TableRow } from 'src/components/TableRow';
1010
import { TableRowEmpty } from 'src/components/TableRowEmpty/TableRowEmpty';
1111
import { TableSortCell } from 'src/components/TableSortCell';
1212

13-
import type { KubernetesCluster } from '@linode/api-v4';
14-
import type { StreamAndDestinationFormType } from 'src/features/Delivery/Streams/StreamForm/types';
13+
import type {
14+
ExtendedKubernetesCluster,
15+
StreamAndDestinationFormType,
16+
} from 'src/features/Delivery/Streams/StreamForm/types';
1517

1618
export type OrderByKeys = 'label' | 'region';
1719

1820
interface StreamFormClusterTableContentProps {
19-
clusters: KubernetesCluster[] | undefined;
21+
clusters: ExtendedKubernetesCluster[] | undefined;
2022
field: ControllerRenderProps<
2123
StreamAndDestinationFormType,
2224
'stream.details.cluster_ids'
@@ -101,7 +103,7 @@ export const StreamFormClusterTableContent = ({
101103
clusters.map(
102104
({
103105
label,
104-
region,
106+
regionLabel,
105107
id,
106108
control_plane: { audit_logs_enabled: logsEnabled },
107109
}) => (
@@ -115,7 +117,7 @@ export const StreamFormClusterTableContent = ({
115117
/>
116118
</TableCell>
117119
<TableCell>{label}</TableCell>
118-
<TableCell>{region}</TableCell>
120+
<TableCell>{regionLabel}</TableCell>
119121
<TableCell>
120122
<Box alignItems="center" display="flex">
121123
<StatusIcon status={logsEnabled ? 'active' : 'error'} />

packages/manager/src/features/Delivery/Streams/StreamForm/types.ts

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,8 @@
1-
import type { CreateStreamPayload, StreamDetailsType } from '@linode/api-v4';
1+
import type {
2+
CreateStreamPayload,
3+
KubernetesCluster,
4+
StreamDetailsType,
5+
} from '@linode/api-v4';
26
import type { DestinationFormType } from 'src/features/Delivery/Shared/types';
37

48
export interface StreamFromType extends Omit<CreateStreamPayload, 'details'> {
@@ -9,3 +13,7 @@ export interface StreamAndDestinationFormType {
913
destination: DestinationFormType;
1014
stream: StreamFromType;
1115
}
16+
17+
export interface ExtendedKubernetesCluster extends KubernetesCluster {
18+
regionLabel: string;
19+
}

0 commit comments

Comments
 (0)