harvester-ui-extension/pkg/harvester/models/network.harvesterhci.io.nodenetwork.js
Francesco Torchia 4f2688f6ab
Add pkg/harvester components + shell portings - 1
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2024-10-23 17:00:46 +02:00

35 lines
876 B
JavaScript

import { findBy } from '@shell/utils/array';
import { get } from '@shell/utils/object';
import { HCI } from '../types';
import HarvesterResource from './harvester';
export default class HciNodeNetwork extends HarvesterResource {
get message() {
const conditions = get(this, 'status.conditions');
return (findBy(conditions, 'type', 'Ready') || {}).message ;
}
get isReady() {
const conditions = get(this, 'status.conditions');
return (findBy(conditions, 'type', 'Ready') || {})?.status === 'True';
}
get nics() {
return this?.status?.nics || [];
}
get attachNodeName() {
return get(this, `metadata.labels."network.harvesterhci.io/nodename"`) || '';
}
get linkMessage() {
return {
name: this.attachNodeName,
message: this.message,
to: `${ HCI.HOST }/${ this.attachNodeName }?mode=edit`
};
}
}