X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=src%2Fmodels%2FVimAccountModel.ts;h=433727626416fbfafc82c57104d1b8122a5b91cd;hb=refs%2Fchanges%2F73%2F13273%2F3;hp=0e02701d3e24a6ecc0c01aea8e8dec07b860ba80;hpb=1245fc89f257bdc1c8db06d1f9f57e0e2eb760e2;p=osm%2FNG-UI.git diff --git a/src/models/VimAccountModel.ts b/src/models/VimAccountModel.ts index 0e02701..4337276 100644 --- a/src/models/VimAccountModel.ts +++ b/src/models/VimAccountModel.ts @@ -18,9 +18,7 @@ /** * @file Model for VimAccount Details related information. */ - import { NSInstanceDetails } from 'NSInstanceModel'; - /** Interface for VimAccountDetails */ export interface VimAccountDetails { description: string; @@ -35,12 +33,13 @@ export interface VimAccountDetails { vim_user: string; vim_type: string; name: string; + resources?: RESOURCES; } /** Interface for _ADMIN */ interface ADMIN { projects_write: string[]; - deployed: Deployed; + deployed?: Deployed; operationalState: string; modified: string; projects_read: string[]; @@ -106,6 +105,7 @@ export interface VIMData { description: string; page?: string; instancesData?: NSInstanceDetails[]; + resources?: RESOURCES; } /** Interface for VIMLOCATION */ export interface VIMLOCATION { @@ -129,8 +129,67 @@ interface PROPERTIES { name: string; state: string; } -/** Interface for the VIMLOCATIONDATA */ -export interface VIMLOCATIONDATA { - label: string; - value: string; +/** Interface for the RESOURCES */ +export interface RESOURCES { + compute: object; + storage: object; + network: object; +} +/** Interface for the RESOURCESDATA */ +export interface RESOURCESDATA { + heading: string; + length: number; + data: RESOURCESCHARTDATA[]; +} +/** Interface for the RESOURCESCHARTDATA */ +export interface RESOURCESCHARTDATA { + title: string; + values: CHARTVALUES; + data: CHARTDATA[]; +} +/** Interface common use for the Chart */ +export interface CHARTDATA { + data: number[]; + backgroundColor?: string[] | string; + hoverBackgroundColor?: string[] | string; + hoverBorderColor?: string[] | string; +} +/** Interface common use for the Chart */ +export interface CHARTVALUES { + total: number; + used?: number; + remaining?: number; +} +/** Interface for the CHARTRANGE */ +export interface CHARTRANGE { + percentage: number; + nearlyFull: number; + full: number; +} +/** Interface for the COLOR */ +export interface Color { + backgroundColor?: string[] | string; + borderColor?: string[] | string; +} +/** Constant Values for the resources titles */ +export enum CONFIGRESOURCESTITLE { + ram = 'RAM', + instances = 'Instances', + vcpus = 'VCPUs', + snapshots = 'Volume Snapshots', + storage = 'Volume Storage', + volumes = 'Volumes', + floating_ips = 'Floating IPs', + security_group = 'Security Group', + subnets = 'Subnets', + networks = 'Networks', + ports = 'Ports', + routers = 'Routers' +} + +/** constant values for color */ +export enum RANGECOLOR { + used = '#29c3be', + nearlyfull = '#f0ad4e', + full = '#d9534f' }