Skip to content

Commit 3c34a39

Browse files
committed
fix
1 parent 7969060 commit 3c34a39

File tree

2 files changed

+33
-28
lines changed

2 files changed

+33
-28
lines changed

src/components/Yaml/YamlLoader.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ export const YamlLoader: FC<YamlViewButtonProps> = ({ workspaceName, resourceTyp
2525

2626
return (
2727
<YamlViewer
28-
yamlString={stringify(removeManagedFieldsProperty(data as Resource))}
28+
yamlString={stringify(removeManagedFieldsProperty(data as Resource, true))}
2929
filename={`${workspaceName ? `${workspaceName}_` : ''}${resourceType}_${resourceName}`}
3030
/>
3131
);

src/utils/removeManagedFieldsProperty.ts

Lines changed: 32 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -22,39 +22,44 @@ export type Resource = {
2222
};
2323

2424
export const removeManagedFieldsProperty = (resourceObject: Resource, showOnlyImportantData: boolean) => {
25-
if (!resourceObject) {
26-
return resourceObject;
27-
}
28-
const processMetadata = (metadata: Resource['metadata']) => {
29-
const { managedFields, generation, uid, annotations, ...restMetadata } = metadata || {};
30-
31-
const newAnnotations = { ...annotations };
32-
if (showOnlyImportantData) {
33-
delete newAnnotations['kubectl.kubernetes.io/last-applied-configuration'];
34-
}
35-
25+
console.log(resourceObject);
26+
if (resourceObject?.metadata?.managedFields) {
3627
return {
37-
...restMetadata,
38-
...(Object.keys(newAnnotations).length > 0 && {
39-
annotations: newAnnotations,
40-
}),
41-
};
42-
};
43-
44-
const processResource = (resource: Omit<Resource, 'items'>) => {
45-
const { metadata, ...restResource } = resource;
46-
return {
47-
...restResource,
48-
...(metadata && { metadata: processMetadata(metadata) }),
28+
...resourceObject,
29+
metadata: {
30+
...resourceObject.metadata,
31+
managedFields: undefined,
32+
annotations: {
33+
...resourceObject.metadata.annotations,
34+
'kubectl.kubernetes.io/last-applied-configuration': showOnlyImportantData
35+
? undefined
36+
: resourceObject?.metadata?.annotations?.['kubectl.kubernetes.io/last-applied-configuration'],
37+
},
38+
generation: showOnlyImportantData ? undefined : resourceObject?.metadata?.generation,
39+
uid: showOnlyImportantData ? undefined : resourceObject?.metadata?.uid,
40+
},
4941
};
50-
};
51-
42+
}
5243
if (resourceObject?.items) {
5344
return {
5445
...resourceObject,
55-
items: resourceObject.items.map(processResource),
46+
items: resourceObject.items.map((item) => ({
47+
...item,
48+
metadata: {
49+
...item.metadata,
50+
managedFields: undefined,
51+
annotations: {
52+
...resourceObject.metadata.annotations,
53+
'kubectl.kubernetes.io/last-applied-configuration': showOnlyImportantData
54+
? undefined
55+
: resourceObject?.metadata?.annotations?.['kubectl.kubernetes.io/last-applied-configuration'],
56+
},
57+
generation: showOnlyImportantData ? undefined : resourceObject?.metadata?.generation,
58+
uid: showOnlyImportantData ? undefined : resourceObject?.metadata?.uid,
59+
},
60+
})),
5661
};
5762
}
5863

59-
return processResource(resourceObject);
64+
return resourceObject;
6065
};

0 commit comments

Comments
 (0)