import { getNameDescriptionTableColumn, getTimeTableColumn } from '@/utils/common/tableColumn'
import i18n from '@/locales'
import { k8sStatusColumn } from '@K8S/utils/tableColumns'
export default {
created () {
this.columns = [
getNameDescriptionTableColumn({
onManager: this.onManager,
hideField: true,
edit: false,
showDesc: false,
slotCallback: row => {
return (
this.handleOpenSidepage(row)}>{ row.name }
)
},
}),
{
field: 'namespace',
title: i18n.t('k8s.text_23'),
sortable: true,
},
k8sStatusColumn(),
{
field: 'clusterIP',
title: 'clusterIP',
minWidth: 70,
slots: {
default: ({ row }) => {
if (row.clusterIP === 'None') return row.clusterIP
return [
,
]
},
},
},
{
field: 'internalEndpoint',
title: i18n.t('k8s.text_342'),
minWidth: 200,
slots: {
default: ({ row }) => {
if (row.internalEndpoint && row.internalEndpoint.ports && row.internalEndpoint.ports.length) {
return row.internalEndpoint.ports.map(v => {
return
{ `${row.internalEndpoint.host}:${v.port} ${v.protocol}` }
})
}
return '-'
},
},
},
{
field: 'externalEndpoints',
title: i18n.t('k8s.text_343'),
slots: {
default: ({ row }) => {
if (row.externalEndpoints && row.externalEndpoints.length) {
return row.externalEndpoints.map(v => {
return
})
}
return '-'
},
},
},
{
field: 'type',
title: i18n.t('k8s.text_34'),
},
{
field: 'nodePort',
title: 'nodePort',
slots: {
default: ({ row }) => {
if (row.internalEndpoint && row.internalEndpoint.ports && row.internalEndpoint.ports.length) {
return row.internalEndpoint.ports.map(v => {
let p = v.nodePort
if (p === 0) {
p = '-'
}
return { `${p}` }
})
}
return '-'
},
},
},
getTimeTableColumn({ field: 'creationTimestamp', fromNow: true, sortable: true }),
]
},
}