diff --git a/src/renderer/components/+workloads-pods/pod-details-secrets.tsx b/src/renderer/components/+workloads-pods/pod-details-secrets.tsx index 709909c3ca..b2c7cd14c3 100644 --- a/src/renderer/components/+workloads-pods/pod-details-secrets.tsx +++ b/src/renderer/components/+workloads-pods/pod-details-secrets.tsx @@ -13,18 +13,20 @@ interface Props { @observer export class PodDetailsSecrets extends Component { - @observable secrets: Secret[] = []; + @observable secrets: Map = observable.map(); @disposeOnUnmount secretsLoader = autorun(async () => { const { pod } = this.props; - this.secrets = (await Promise.all( + const secrets = await Promise.all( pod.getSecrets().map(secretName => secretsApi.get({ name: secretName, namespace: pod.getNs(), })) - )).filter(Boolean); + ); + + secrets.forEach(secret => secret && this.secrets.set(secret.getName(), secret)); }); render() { @@ -34,13 +36,13 @@ export class PodDetailsSecrets extends Component {
{ pod.getSecrets().map(secretName => { - const secret = this.secrets.find(secret => secret.getName() === secretName); + const secret = this.secrets.get(secretName); if (secret) { return this.renderSecretLink(secret); } else { return ( - {secretName} + {secretName} ); } })