1
0
mirror of https://github.com/lensapp/lens.git synced 2025-05-20 05:10:56 +00:00
lens/dashboard/client/components/+workloads-pods/pod-details-secrets.tsx
Jari Kolehmainen 1d0815abd2
Lens app source code (#119)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-03-15 09:52:02 +02:00

45 lines
1.1 KiB
TypeScript

import "./pod-details-secrets.scss";
import React, { Component } from "react";
import { Link } from "react-router-dom";
import { autorun, observable } from "mobx";
import { disposeOnUnmount, observer } from "mobx-react";
import { Pod, Secret, secretsApi } from "../../api/endpoints";
import { getDetailsUrl } from "../../navigation";
interface Props {
pod: Pod;
}
@observer
export class PodDetailsSecrets extends Component<Props> {
@observable secrets: Secret[] = [];
@disposeOnUnmount
secretsLoader = autorun(async () => {
const { pod } = this.props;
this.secrets = await Promise.all(
pod.getSecrets().map(secretName => secretsApi.get({
name: secretName,
namespace: pod.getNs(),
}))
);
});
render() {
return (
<div className="PodDetailsSecrets">
{
this.secrets.map(secret => {
return (
<Link key={secret.getId()} to={getDetailsUrl(secret.selfLink)}>
{secret.getName()}
</Link>
);
})
}
</div>
);
}
}