1
0
mirror of https://github.com/lensapp/lens.git synced 2025-05-20 05:10:56 +00:00

Fix list sort by age (#276)

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
This commit is contained in:
Jari Kolehmainen 2020-04-19 17:49:14 +03:00 committed by GitHub
parent 07e2653f80
commit 6bdd247a85
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
26 changed files with 44 additions and 44 deletions

View File

@ -31,7 +31,7 @@ export class ConfigMaps extends React.Component<Props> {
[sortBy.name]: (item: ConfigMap) => item.getName(), [sortBy.name]: (item: ConfigMap) => item.getName(),
[sortBy.namespace]: (item: ConfigMap) => item.getNs(), [sortBy.namespace]: (item: ConfigMap) => item.getNs(),
[sortBy.keys]: (item: ConfigMap) => item.getKeys(), [sortBy.keys]: (item: ConfigMap) => item.getKeys(),
[sortBy.age]: (item: ConfigMap) => item.getAge(false), [sortBy.age]: (item: ConfigMap) => item.metadata.creationTimestamp,
}} }}
searchFilters={[ searchFilters={[
(item: ConfigMap) => item.getSearchFields(), (item: ConfigMap) => item.getSearchFields(),
@ -66,4 +66,4 @@ export function ConfigMapMenu(props: KubeObjectMenuProps<ConfigMap>) {
apiManager.registerViews(configMapApi, { apiManager.registerViews(configMapApi, {
Menu: ConfigMapMenu, Menu: ConfigMapMenu,
}) })

View File

@ -31,7 +31,7 @@ export class ResourceQuotas extends React.Component<Props> {
sortingCallbacks={{ sortingCallbacks={{
[sortBy.name]: (item: ResourceQuota) => item.getName(), [sortBy.name]: (item: ResourceQuota) => item.getName(),
[sortBy.namespace]: (item: ResourceQuota) => item.getNs(), [sortBy.namespace]: (item: ResourceQuota) => item.getNs(),
[sortBy.age]: (item: ResourceQuota) => item.getAge(false), [sortBy.age]: (item: ResourceQuota) => item.metadata.creationTimestamp,
}} }}
searchFilters={[ searchFilters={[
(item: ResourceQuota) => item.getSearchFields(), (item: ResourceQuota) => item.getSearchFields(),
@ -70,4 +70,4 @@ export function ResourceQuotaMenu(props: KubeObjectMenuProps<ResourceQuota>) {
apiManager.registerViews(resourceQuotaApi, { apiManager.registerViews(resourceQuotaApi, {
Menu: ResourceQuotaMenu, Menu: ResourceQuotaMenu,
}) })

View File

@ -38,7 +38,7 @@ export class Secrets extends React.Component<Props> {
[sortBy.labels]: (item: Secret) => item.getLabels(), [sortBy.labels]: (item: Secret) => item.getLabels(),
[sortBy.keys]: (item: Secret) => item.getKeys(), [sortBy.keys]: (item: Secret) => item.getKeys(),
[sortBy.type]: (item: Secret) => item.type, [sortBy.type]: (item: Secret) => item.type,
[sortBy.age]: (item: Secret) => item.getAge(false), [sortBy.age]: (item: Secret) => item.metadata.creationTimestamp,
}} }}
searchFilters={[ searchFilters={[
(item: Secret) => item.getSearchFields(), (item: Secret) => item.getSearchFields(),

View File

@ -52,7 +52,7 @@ export class Issuers extends React.Component<KubeObjectListLayoutProps> {
[sortBy.namespace]: (item: Issuer) => item.getNs(), [sortBy.namespace]: (item: Issuer) => item.getNs(),
[sortBy.type]: (item: Issuer) => item.getType(), [sortBy.type]: (item: Issuer) => item.getType(),
[sortBy.labels]: (item: Issuer) => item.getLabels(), [sortBy.labels]: (item: Issuer) => item.getLabels(),
[sortBy.age]: (item: Issuer) => item.getAge(false), [sortBy.age]: (item: Issuer) => item.metadata.creationTimestamp,
}} }}
searchFilters={[ searchFilters={[
(item: Issuer) => item.getSearchFields(), (item: Issuer) => item.getSearchFields(),

View File

@ -54,7 +54,7 @@ export class CrdResources extends React.Component<Props> {
const sortingCallbacks: { [sortBy: string]: SortingCallback } = { const sortingCallbacks: { [sortBy: string]: SortingCallback } = {
[sortBy.name]: (item: KubeObject) => item.getName(), [sortBy.name]: (item: KubeObject) => item.getName(),
[sortBy.namespace]: (item: KubeObject) => item.getNs(), [sortBy.namespace]: (item: KubeObject) => item.getNs(),
[sortBy.age]: (item: KubeObject) => item.getAge(false), [sortBy.age]: (item: KubeObject) => item.metadata.creationTimestamp,
} }
extraColumns.forEach(column => { extraColumns.forEach(column => {
sortingCallbacks[column.name] = (item: KubeObject) => jsonPath.query(item, column.JSONPath.slice(1)) sortingCallbacks[column.name] = (item: KubeObject) => jsonPath.query(item, column.JSONPath.slice(1))
@ -109,4 +109,4 @@ export function CrdResourceMenu(props: KubeObjectMenuProps<KubeObject>) {
return ( return (
<KubeObjectMenu {...props}/> <KubeObjectMenu {...props}/>
) )
} }

View File

@ -49,7 +49,7 @@ export class Events extends React.Component<Props> {
[sortBy.type]: (event: KubeEvent) => event.involvedObject.kind, [sortBy.type]: (event: KubeEvent) => event.involvedObject.kind,
[sortBy.object]: (event: KubeEvent) => event.involvedObject.name, [sortBy.object]: (event: KubeEvent) => event.involvedObject.name,
[sortBy.count]: (event: KubeEvent) => event.count, [sortBy.count]: (event: KubeEvent) => event.count,
[sortBy.age]: (event: KubeEvent) => event.getAge(false), [sortBy.age]: (event: KubeEvent) => event.metadata.creationTimestamp,
}} }}
searchFilters={[ searchFilters={[
(event: KubeEvent) => event.getSearchFields(), (event: KubeEvent) => event.getSearchFields(),

View File

@ -33,7 +33,7 @@ export class Namespaces extends React.Component<Props> {
sortingCallbacks={{ sortingCallbacks={{
[sortBy.name]: (ns: Namespace) => ns.getName(), [sortBy.name]: (ns: Namespace) => ns.getName(),
[sortBy.labels]: (ns: Namespace) => ns.getLabels(), [sortBy.labels]: (ns: Namespace) => ns.getLabels(),
[sortBy.age]: (ns: Namespace) => ns.getAge(false), [sortBy.age]: (ns: Namespace) => ns.metadata.creationTimestamp,
[sortBy.status]: (ns: Namespace) => ns.getStatus(), [sortBy.status]: (ns: Namespace) => ns.getStatus(),
}} }}
searchFilters={[ searchFilters={[

View File

@ -29,7 +29,7 @@ export class Endpoints extends React.Component<Props> {
sortingCallbacks={{ sortingCallbacks={{
[sortBy.name]: (endpoint: Endpoint) => endpoint.getName(), [sortBy.name]: (endpoint: Endpoint) => endpoint.getName(),
[sortBy.namespace]: (endpoint: Endpoint) => endpoint.getNs(), [sortBy.namespace]: (endpoint: Endpoint) => endpoint.getNs(),
[sortBy.age]: (endpoint: Endpoint) => endpoint.getAge(false), [sortBy.age]: (endpoint: Endpoint) => endpoint.metadata.creationTimestamp,
}} }}
searchFilters={[ searchFilters={[
(endpoint: Endpoint) => endpoint.getSearchFields() (endpoint: Endpoint) => endpoint.getSearchFields()
@ -69,4 +69,4 @@ export function EndpointMenu(props: KubeObjectMenuProps<Endpoint>) {
apiManager.registerViews(endpointApi, { apiManager.registerViews(endpointApi, {
Menu: EndpointMenu Menu: EndpointMenu
}) })

View File

@ -29,7 +29,7 @@ export class Ingresses extends React.Component<Props> {
sortingCallbacks={{ sortingCallbacks={{
[sortBy.name]: (ingress: Ingress) => ingress.getName(), [sortBy.name]: (ingress: Ingress) => ingress.getName(),
[sortBy.namespace]: (ingress: Ingress) => ingress.getNs(), [sortBy.namespace]: (ingress: Ingress) => ingress.getNs(),
[sortBy.age]: (ingress: Ingress) => ingress.getAge(false), [sortBy.age]: (ingress: Ingress) => ingress.metadata.creationTimestamp,
}} }}
searchFilters={[ searchFilters={[
(ingress: Ingress) => ingress.getSearchFields(), (ingress: Ingress) => ingress.getSearchFields(),
@ -70,4 +70,4 @@ export function IngressMenu(props: KubeObjectMenuProps<Ingress>) {
apiManager.registerViews(ingressApi, { apiManager.registerViews(ingressApi, {
Menu: IngressMenu Menu: IngressMenu
}) })

View File

@ -29,7 +29,7 @@ export class NetworkPolicies extends React.Component<Props> {
sortingCallbacks={{ sortingCallbacks={{
[sortBy.name]: (item: NetworkPolicy) => item.getName(), [sortBy.name]: (item: NetworkPolicy) => item.getName(),
[sortBy.namespace]: (item: NetworkPolicy) => item.getNs(), [sortBy.namespace]: (item: NetworkPolicy) => item.getNs(),
[sortBy.age]: (item: NetworkPolicy) => item.getAge(false), [sortBy.age]: (item: NetworkPolicy) => item.metadata.creationTimestamp,
}} }}
searchFilters={[ searchFilters={[
(item: NetworkPolicy) => item.getSearchFields(), (item: NetworkPolicy) => item.getSearchFields(),
@ -63,4 +63,4 @@ export function NetworkPolicyMenu(props: KubeObjectMenuProps<NetworkPolicy>) {
apiManager.registerViews(networkPolicyApi, { apiManager.registerViews(networkPolicyApi, {
Menu: NetworkPolicyMenu, Menu: NetworkPolicyMenu,
}) })

View File

@ -39,7 +39,7 @@ export class Services extends React.Component<Props> {
[sortBy.ports]: (service: Service) => (service.spec.ports || []).map(({ port }) => port)[0], [sortBy.ports]: (service: Service) => (service.spec.ports || []).map(({ port }) => port)[0],
[sortBy.clusterIp]: (service: Service) => service.getClusterIp(), [sortBy.clusterIp]: (service: Service) => service.getClusterIp(),
[sortBy.type]: (service: Service) => service.getType(), [sortBy.type]: (service: Service) => service.getType(),
[sortBy.age]: (service: Service) => service.getAge(false), [sortBy.age]: (service: Service) => service.metadata.creationTimestamp,
[sortBy.status]: (service: Service) => service.getStatus(), [sortBy.status]: (service: Service) => service.getStatus(),
}} }}
searchFilters={[ searchFilters={[
@ -86,4 +86,4 @@ export function ServiceMenu(props: KubeObjectMenuProps<Service>) {
apiManager.registerViews(serviceApi, { apiManager.registerViews(serviceApi, {
Menu: ServiceMenu Menu: ServiceMenu
}) })

View File

@ -132,7 +132,7 @@ export class Nodes extends React.Component<Props> {
[sortBy.conditions]: (node: Node) => node.getNodeConditionText(), [sortBy.conditions]: (node: Node) => node.getNodeConditionText(),
[sortBy.taints]: (node: Node) => node.getTaints().length, [sortBy.taints]: (node: Node) => node.getTaints().length,
[sortBy.roles]: (node: Node) => node.getRoleLabels(), [sortBy.roles]: (node: Node) => node.getRoleLabels(),
[sortBy.age]: (node: Node) => node.getAge(false), [sortBy.age]: (node: Node) => node.metadata.creationTimestamp,
[sortBy.version]: (node: Node) => node.getKubeletVersion(), [sortBy.version]: (node: Node) => node.getKubeletVersion(),
}} }}
searchFilters={[ searchFilters={[

View File

@ -28,7 +28,7 @@ export class PodSecurityPolicies extends React.Component {
[sortBy.name]: (item: PodSecurityPolicy) => item.getName(), [sortBy.name]: (item: PodSecurityPolicy) => item.getName(),
[sortBy.volumes]: (item: PodSecurityPolicy) => item.getVolumes(), [sortBy.volumes]: (item: PodSecurityPolicy) => item.getVolumes(),
[sortBy.privileged]: (item: PodSecurityPolicy) => +item.isPrivileged(), [sortBy.privileged]: (item: PodSecurityPolicy) => +item.isPrivileged(),
[sortBy.age]: (item: PodSecurityPolicy) => item.getAge(false), [sortBy.age]: (item: PodSecurityPolicy) => item.metadata.creationTimestamp,
}} }}
searchFilters={[ searchFilters={[
(item: PodSecurityPolicy) => item.getSearchFields(), (item: PodSecurityPolicy) => item.getSearchFields(),
@ -66,4 +66,4 @@ export function PodSecurityPolicyMenu(props: KubeObjectMenuProps<PodSecurityPoli
apiManager.registerViews(pspApi, { apiManager.registerViews(pspApi, {
Menu: PodSecurityPolicyMenu, Menu: PodSecurityPolicyMenu,
}) })

View File

@ -30,7 +30,7 @@ export class StorageClasses extends React.Component<Props> {
store={storageClassStore} isClusterScoped store={storageClassStore} isClusterScoped
sortingCallbacks={{ sortingCallbacks={{
[sortBy.name]: (item: StorageClass) => item.getName(), [sortBy.name]: (item: StorageClass) => item.getName(),
[sortBy.age]: (item: StorageClass) => item.getAge(false), [sortBy.age]: (item: StorageClass) => item.metadata.creationTimestamp,
[sortBy.provisioner]: (item: StorageClass) => item.provisioner, [sortBy.provisioner]: (item: StorageClass) => item.provisioner,
[sortBy.reclaimPolicy]: (item: StorageClass) => item.reclaimPolicy, [sortBy.reclaimPolicy]: (item: StorageClass) => item.reclaimPolicy,
}} }}
@ -69,4 +69,4 @@ export function StorageClassMenu(props: KubeObjectMenuProps<StorageClass>) {
apiManager.registerViews(storageClassApi, { apiManager.registerViews(storageClassApi, {
Menu: StorageClassMenu, Menu: StorageClassMenu,
}) })

View File

@ -44,7 +44,7 @@ export class PersistentVolumeClaims extends React.Component<Props> {
[sortBy.status]: (pvc: PersistentVolumeClaim) => pvc.getStatus(), [sortBy.status]: (pvc: PersistentVolumeClaim) => pvc.getStatus(),
[sortBy.size]: (pvc: PersistentVolumeClaim) => unitsToBytes(pvc.getStorage()), [sortBy.size]: (pvc: PersistentVolumeClaim) => unitsToBytes(pvc.getStorage()),
[sortBy.storageClass]: (pvc: PersistentVolumeClaim) => pvc.spec.storageClassName, [sortBy.storageClass]: (pvc: PersistentVolumeClaim) => pvc.spec.storageClassName,
[sortBy.age]: (pvc: PersistentVolumeClaim) => pvc.getAge(false), [sortBy.age]: (pvc: PersistentVolumeClaim) => pvc.metadata.creationTimestamp,
}} }}
searchFilters={[ searchFilters={[
(item: PersistentVolumeClaim) => item.getSearchFields(), (item: PersistentVolumeClaim) => item.getSearchFields(),
@ -98,4 +98,4 @@ export function PersistentVolumeClaimMenu(props: KubeObjectMenuProps<PersistentV
apiManager.registerViews(pvcApi, { apiManager.registerViews(pvcApi, {
Menu: PersistentVolumeClaimMenu, Menu: PersistentVolumeClaimMenu,
}) })

View File

@ -37,7 +37,7 @@ export class PersistentVolumes extends React.Component<Props> {
[sortBy.storageClass]: (item: PersistentVolume) => item.spec.storageClassName, [sortBy.storageClass]: (item: PersistentVolume) => item.spec.storageClassName,
[sortBy.capacity]: (item: PersistentVolume) => item.getCapacity(true), [sortBy.capacity]: (item: PersistentVolume) => item.getCapacity(true),
[sortBy.status]: (item: PersistentVolume) => item.getStatus(), [sortBy.status]: (item: PersistentVolume) => item.getStatus(),
[sortBy.age]: (item: PersistentVolume) => item.getAge(false), [sortBy.age]: (item: PersistentVolume) => item.metadata.creationTimestamp,
}} }}
searchFilters={[ searchFilters={[
(item: PersistentVolume) => item.getSearchFields(), (item: PersistentVolume) => item.getSearchFields(),

View File

@ -35,7 +35,7 @@ export class RoleBindings extends React.Component<Props> {
[sortBy.name]: (binding: RoleBinding) => binding.getName(), [sortBy.name]: (binding: RoleBinding) => binding.getName(),
[sortBy.namespace]: (binding: RoleBinding) => binding.getNs(), [sortBy.namespace]: (binding: RoleBinding) => binding.getNs(),
[sortBy.bindings]: (binding: RoleBinding) => binding.getSubjectNames(), [sortBy.bindings]: (binding: RoleBinding) => binding.getSubjectNames(),
[sortBy.age]: (binding: RoleBinding) => binding.getAge(false), [sortBy.age]: (binding: RoleBinding) => binding.metadata.creationTimestamp,
}} }}
searchFilters={[ searchFilters={[
(binding: RoleBinding) => binding.getSearchFields(), (binding: RoleBinding) => binding.getSearchFields(),
@ -90,4 +90,4 @@ export function RoleBindingMenu(props: KubeObjectMenuProps<RoleBinding>) {
apiManager.registerViews([roleBindingApi, clusterRoleBindingApi], { apiManager.registerViews([roleBindingApi, clusterRoleBindingApi], {
Menu: RoleBindingMenu, Menu: RoleBindingMenu,
}) })

View File

@ -34,7 +34,7 @@ export class Roles extends React.Component<Props> {
sortingCallbacks={{ sortingCallbacks={{
[sortBy.name]: (role: Role) => role.getName(), [sortBy.name]: (role: Role) => role.getName(),
[sortBy.namespace]: (role: Role) => role.getNs(), [sortBy.namespace]: (role: Role) => role.getNs(),
[sortBy.age]: (role: Role) => role.getAge(false), [sortBy.age]: (role: Role) => role.metadata.creationTimestamp,
}} }}
searchFilters={[ searchFilters={[
(role: Role) => role.getSearchFields(), (role: Role) => role.getSearchFields(),

View File

@ -34,7 +34,7 @@ export class ServiceAccounts extends React.Component<Props> {
sortingCallbacks={{ sortingCallbacks={{
[sortBy.name]: (account: ServiceAccount) => account.getName(), [sortBy.name]: (account: ServiceAccount) => account.getName(),
[sortBy.namespace]: (account: ServiceAccount) => account.getNs(), [sortBy.namespace]: (account: ServiceAccount) => account.getNs(),
[sortBy.age]: (account: ServiceAccount) => account.getAge(false), [sortBy.age]: (account: ServiceAccount) => account.metadata.creationTimestamp,
}} }}
searchFilters={[ searchFilters={[
(account: ServiceAccount) => account.getSearchFields(), (account: ServiceAccount) => account.getSearchFields(),
@ -78,4 +78,4 @@ export function ServiceAccountMenu(props: KubeObjectMenuProps<ServiceAccount>) {
apiManager.registerViews(serviceAccountsApi, { apiManager.registerViews(serviceAccountsApi, {
Menu: ServiceAccountMenu, Menu: ServiceAccountMenu,
}) })

View File

@ -39,7 +39,7 @@ export class CronJobs extends React.Component<Props> {
[sortBy.suspend]: (cronJob: CronJob) => cronJob.getSuspendFlag(), [sortBy.suspend]: (cronJob: CronJob) => cronJob.getSuspendFlag(),
[sortBy.active]: (cronJob: CronJob) => cronJobStore.getActiveJobsNum(cronJob), [sortBy.active]: (cronJob: CronJob) => cronJobStore.getActiveJobsNum(cronJob),
[sortBy.lastSchedule]: (cronJob: CronJob) => cronJob.getLastScheduleTime(), [sortBy.lastSchedule]: (cronJob: CronJob) => cronJob.getLastScheduleTime(),
[sortBy.age]: (cronJob: CronJob) => cronJob.getAge(false), [sortBy.age]: (cronJob: CronJob) => cronJob.metadata.creationTimestamp,
}} }}
searchFilters={[ searchFilters={[
(cronJob: CronJob) => cronJob.getSearchFields(), (cronJob: CronJob) => cronJob.getSearchFields(),
@ -86,4 +86,4 @@ export function CronJobMenu(props: KubeObjectMenuProps<CronJob>) {
apiManager.registerViews(cronJobApi, { apiManager.registerViews(cronJobApi, {
Menu: CronJobMenu, Menu: CronJobMenu,
}) })

View File

@ -47,7 +47,7 @@ export class DaemonSets extends React.Component<Props> {
[sortBy.name]: (daemonSet: DaemonSet) => daemonSet.getName(), [sortBy.name]: (daemonSet: DaemonSet) => daemonSet.getName(),
[sortBy.namespace]: (daemonSet: DaemonSet) => daemonSet.getNs(), [sortBy.namespace]: (daemonSet: DaemonSet) => daemonSet.getNs(),
[sortBy.pods]: (daemonSet: DaemonSet) => this.getPodsLength(daemonSet), [sortBy.pods]: (daemonSet: DaemonSet) => this.getPodsLength(daemonSet),
[sortBy.age]: (daemonSet: DaemonSet) => daemonSet.getAge(false), [sortBy.age]: (daemonSet: DaemonSet) => daemonSet.metadata.creationTimestamp,
}} }}
searchFilters={[ searchFilters={[
(daemonSet: DaemonSet) => daemonSet.getSearchFields(), (daemonSet: DaemonSet) => daemonSet.getSearchFields(),
@ -86,4 +86,4 @@ export function DaemonSetMenu(props: KubeObjectMenuProps<DaemonSet>) {
apiManager.registerViews(daemonSetApi, { apiManager.registerViews(daemonSetApi, {
Menu: DaemonSetMenu, Menu: DaemonSetMenu,
}) })

View File

@ -59,7 +59,7 @@ export class Deployments extends React.Component<Props> {
[sortBy.name]: (deployment: Deployment) => deployment.getName(), [sortBy.name]: (deployment: Deployment) => deployment.getName(),
[sortBy.namespace]: (deployment: Deployment) => deployment.getNs(), [sortBy.namespace]: (deployment: Deployment) => deployment.getNs(),
[sortBy.replicas]: (deployment: Deployment) => deployment.getReplicas(), [sortBy.replicas]: (deployment: Deployment) => deployment.getReplicas(),
[sortBy.age]: (deployment: Deployment) => deployment.getAge(false), [sortBy.age]: (deployment: Deployment) => deployment.metadata.creationTimestamp,
[sortBy.condition]: (deployment: Deployment) => deployment.getConditionsText(), [sortBy.condition]: (deployment: Deployment) => deployment.getConditionsText(),
}} }}
searchFilters={[ searchFilters={[
@ -107,4 +107,4 @@ export function DeploymentMenu(props: KubeObjectMenuProps<Deployment>) {
apiManager.registerViews(deploymentApi, { apiManager.registerViews(deploymentApi, {
Menu: DeploymentMenu, Menu: DeploymentMenu,
}); });

View File

@ -36,7 +36,7 @@ export class Jobs extends React.Component<Props> {
[sortBy.name]: (job: Job) => job.getName(), [sortBy.name]: (job: Job) => job.getName(),
[sortBy.namespace]: (job: Job) => job.getNs(), [sortBy.namespace]: (job: Job) => job.getNs(),
[sortBy.conditions]: (job: Job) => job.getCondition() != null ? job.getCondition().type : "", [sortBy.conditions]: (job: Job) => job.getCondition() != null ? job.getCondition().type : "",
[sortBy.age]: (job: Job) => job.getAge(false), [sortBy.age]: (job: Job) => job.metadata.creationTimestamp,
}} }}
searchFilters={[ searchFilters={[
(job: Job) => job.getSearchFields(), (job: Job) => job.getSearchFields(),
@ -80,4 +80,4 @@ export function JobMenu(props: KubeObjectMenuProps<Job>) {
apiManager.registerViews(jobApi, { apiManager.registerViews(jobApi, {
Menu: JobMenu, Menu: JobMenu,
}) })

View File

@ -79,7 +79,7 @@ export class Pods extends React.Component<Props> {
[sortBy.restarts]: (pod: Pod) => pod.getRestartsCount(), [sortBy.restarts]: (pod: Pod) => pod.getRestartsCount(),
[sortBy.owners]: (pod: Pod) => pod.getOwnerRefs().map(ref => ref.kind), [sortBy.owners]: (pod: Pod) => pod.getOwnerRefs().map(ref => ref.kind),
[sortBy.qos]: (pod: Pod) => pod.getQosClass(), [sortBy.qos]: (pod: Pod) => pod.getQosClass(),
[sortBy.age]: (pod: Pod) => pod.getAge(false), [sortBy.age]: (pod: Pod) => pod.metadata.creationTimestamp,
[sortBy.status]: (pod: Pod) => pod.getStatusMessage(), [sortBy.status]: (pod: Pod) => pod.getStatusMessage(),
}} }}
searchFilters={[ searchFilters={[
@ -127,4 +127,4 @@ export class Pods extends React.Component<Props> {
apiManager.registerViews(podsApi, { apiManager.registerViews(podsApi, {
Menu: PodMenu, Menu: PodMenu,
}) })

View File

@ -29,7 +29,7 @@ export class ReplicaSets extends React.Component<Props> {
private sortingCallbacks = { private sortingCallbacks = {
[sortBy.name]: (replicaSet: ReplicaSet) => replicaSet.getName(), [sortBy.name]: (replicaSet: ReplicaSet) => replicaSet.getName(),
[sortBy.namespace]: (replicaSet: ReplicaSet) => replicaSet.getNs(), [sortBy.namespace]: (replicaSet: ReplicaSet) => replicaSet.getNs(),
[sortBy.age]: (replicaSet: ReplicaSet) => replicaSet.getAge(false), [sortBy.age]: (replicaSet: ReplicaSet) => replicaSet.metadata.creationTimestamp,
[sortBy.pods]: (replicaSet: ReplicaSet) => this.getPodsLength(replicaSet), [sortBy.pods]: (replicaSet: ReplicaSet) => this.getPodsLength(replicaSet),
} }
@ -95,4 +95,4 @@ export function ReplicaSetMenu(props: KubeObjectMenuProps<ReplicaSet>) {
apiManager.registerViews(replicaSetApi, { apiManager.registerViews(replicaSetApi, {
Menu: ReplicaSetMenu, Menu: ReplicaSetMenu,
}); });

View File

@ -39,7 +39,7 @@ export class StatefulSets extends React.Component<Props> {
sortingCallbacks={{ sortingCallbacks={{
[sortBy.name]: (statefulSet: StatefulSet) => statefulSet.getName(), [sortBy.name]: (statefulSet: StatefulSet) => statefulSet.getName(),
[sortBy.namespace]: (statefulSet: StatefulSet) => statefulSet.getNs(), [sortBy.namespace]: (statefulSet: StatefulSet) => statefulSet.getNs(),
[sortBy.age]: (statefulSet: StatefulSet) => statefulSet.getAge(false), [sortBy.age]: (statefulSet: StatefulSet) => statefulSet.metadata.creationTimestamp,
[sortBy.pods]: (statefulSet: StatefulSet) => this.getPodsLength(statefulSet), [sortBy.pods]: (statefulSet: StatefulSet) => this.getPodsLength(statefulSet),
}} }}
searchFilters={[ searchFilters={[