bfg-common 1.5.488 → 1.5.490

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (101) hide show
  1. package/CODE_STYLE.md +109 -109
  2. package/assets/img/icons/icons-sprite-dark-3.svg +227 -227
  3. package/assets/img/icons/icons-sprite-dark-5.svg +488 -488
  4. package/assets/img/icons/icons-sprite-light-3.svg +227 -227
  5. package/assets/img/icons/icons-sprite-light-5.svg +488 -488
  6. package/components/atoms/TheIcon3.vue +50 -50
  7. package/components/atoms/collapse/CollapseNav.vue +170 -170
  8. package/components/atoms/perPage/PerPage.vue +58 -58
  9. package/components/atoms/table/dataGrid/DataGridPagination.vue +97 -97
  10. package/components/atoms/table/dataGrid/lib/config/settingsTable.ts +94 -94
  11. package/components/atoms/table/dataGrid/lib/utils/export.ts +16 -16
  12. package/components/common/browse/blocks/contents/filesNew/Skeleton.vue +18 -18
  13. package/components/common/browse/blocks/lib/models/types.ts +1 -1
  14. package/components/common/browse/lib/models/interfaces.ts +5 -5
  15. package/components/common/context/lib/models/interfaces.ts +33 -33
  16. package/components/common/diagramMain/DiagramMain.vue +5 -2
  17. package/components/common/diagramMain/network/Contents.vue +497 -497
  18. package/components/common/layout/theHeader/helpMenu/About.vue +79 -79
  19. package/components/common/layout/theHeader/helpMenu/aboutOld/AboutOld.vue +79 -79
  20. package/components/common/pages/backups/DetailView.vue +52 -52
  21. package/components/common/pages/backups/lib/models/interfaces.ts +36 -36
  22. package/components/common/pages/backups/modals/Modals.vue +243 -243
  23. package/components/common/pages/backups/modals/createBackup/configuration/Configuration.vue +29 -29
  24. package/components/common/pages/backups/modals/createBackup/configuration/maxBandwidth/lib/config/options.ts +6 -6
  25. package/components/common/pages/backups/modals/createBackup/datastores/tableView/TableView.vue +95 -95
  26. package/components/common/pages/backups/modals/createBackup/general/General.vue +141 -141
  27. package/components/common/pages/backups/modals/createBackup/lib/config/strategyOptions.ts +12 -12
  28. package/components/common/pages/backups/modals/lib/config/restore.ts +115 -115
  29. package/components/common/pages/backups/modals/lib/models/interfaces.ts +186 -186
  30. package/components/common/pages/backups/modals/restore/disks/Disks.vue +27 -27
  31. package/components/common/pages/backups/modals/restore/disks/tableView/lib/config/table.ts +117 -117
  32. package/components/common/pages/backups/modals/restore/name/Name.vue +166 -166
  33. package/components/common/pages/backups/modals/restore/name/lib/models/interfaces.ts +6 -6
  34. package/components/common/pages/backups/modals/restore/networks/Networks.vue +67 -67
  35. package/components/common/pages/backups/modals/restore/networks/table/Table.vue +214 -214
  36. package/components/common/pages/backups/modals/restore/types/lib/config/typeOptions.ts +25 -25
  37. package/components/common/pages/backups/tools/Tools.vue +75 -75
  38. package/components/common/pages/backups/tools/lib/config/tabs.ts +36 -36
  39. package/components/common/pages/home/lib/models/interfaces.ts +48 -48
  40. package/components/common/pages/home/widgets/hosts/Hosts.vue +27 -27
  41. package/components/common/pages/home/widgets/hosts/lib/config/items.ts +23 -23
  42. package/components/common/pages/home/widgets/vms/VmsOld.vue +35 -35
  43. package/components/common/pages/home/widgets/vms/lib/config/items.ts +19 -19
  44. package/components/common/pages/scheduledTasks/lib/utils/utils.ts +84 -84
  45. package/components/common/readyToComplete/ReadyToComplete.vue +17 -17
  46. package/components/common/select/radio/RadioGroup.vue +137 -137
  47. package/components/common/spiceConsole/Drawer.vue +392 -392
  48. package/components/common/spiceConsole/SpiceConsole.vue +184 -184
  49. package/components/common/spiceConsole/lib/models/interfaces.ts +5 -5
  50. package/components/common/tools/Actions.vue +207 -207
  51. package/components/common/treeView/TreeView.vue +52 -52
  52. package/components/common/vm/actions/add/Add.vue +877 -877
  53. package/components/common/vm/actions/add/folderTreeView/FolderTreeView.vue +72 -72
  54. package/components/common/vm/actions/add/folderTreeView/New.vue +40 -40
  55. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Cpu.vue +368 -368
  56. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/Shares.vue +140 -140
  57. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/lib/config/options.ts +28 -28
  58. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/Location.vue +154 -154
  59. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/table/Table.vue +99 -99
  60. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddress.vue +119 -119
  61. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIo.vue +31 -31
  62. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/Other.vue +16 -16
  63. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/numberDisplays/NumberDisplays.vue +53 -53
  64. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/delay/Delay.vue +32 -32
  65. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/Firmware.vue +60 -60
  66. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +174 -174
  67. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/Keymap.vue +32 -32
  68. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/Password.vue +103 -103
  69. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirection.vue +28 -28
  70. package/components/common/vm/actions/common/select/compatibility/Old.vue +107 -107
  71. package/components/common/vm/actions/common/select/computeResource/ComputeResource.vue +143 -143
  72. package/components/common/vm/actions/common/select/computeResource/New.vue +184 -184
  73. package/components/common/vm/actions/common/select/computeResource/treeView/TreeView.vue +131 -131
  74. package/components/common/vm/actions/common/select/createType/CreateType.vue +38 -38
  75. package/components/common/vm/actions/common/select/createType/lib/models/interfaces.ts +5 -5
  76. package/components/common/vm/actions/common/select/name/Name.vue +200 -200
  77. package/components/common/vm/actions/common/select/name/Old.vue +131 -131
  78. package/components/common/vm/actions/common/select/os/Old.vue +152 -152
  79. package/components/common/vm/actions/common/select/os/Os.vue +139 -139
  80. package/components/common/vm/actions/common/select/storage/new/New.vue +320 -320
  81. package/components/common/vm/actions/common/select/storage/new/lib/models/interfaces.ts +5 -5
  82. package/components/common/vm/actions/common/select/storage/new/lib/utils/utils.ts +21 -21
  83. package/components/common/vm/actions/common/select/template/old/Old.vue +50 -50
  84. package/components/common/vm/actions/editSettings/new/Skeleton.vue +88 -88
  85. package/components/common/vm/actions/register/Register.vue +267 -267
  86. package/components/common/vm/actions/register/lib/config/steps.ts +86 -86
  87. package/components/common/vmt/actions/add/Add.vue +549 -549
  88. package/components/common/wizards/datastore/add/steps/typeMode/lib/config/typeOptions.ts +43 -43
  89. package/components/common/wizards/vm/migrate/select/network/Network.vue +103 -103
  90. package/composables/useAppVersion.ts +21 -21
  91. package/composables/useLocal.ts +6 -6
  92. package/composables/useLocalCommon.ts +39 -39
  93. package/package.json +1 -1
  94. package/plugins/date.ts +233 -233
  95. package/plugins/panelStates.ts +70 -70
  96. package/plugins/text.ts +59 -59
  97. package/public/spice-console/lib/images/bitmap.js +203 -203
  98. package/public/spice-console/network/spicechannel.js +440 -440
  99. package/public/spice-console/run.js +210 -210
  100. package/store/main/mutations.ts +7 -7
  101. package/store/main/state.ts +7 -7
@@ -1,75 +1,75 @@
1
- <template>
2
- <div class="backup-actions grid py-0 px-6">
3
- <button
4
- v-if="targetType === 'vm'"
5
- id="create-backup-button"
6
- v-permission="permission"
7
- :disabled="isDisabled"
8
- data-id="create-backup-button"
9
- class="btn btn-primary btn-sm"
10
- @click="onSelect('createBackup')"
11
- >
12
- {{ localization.common.createBackup }}...
13
- </button>
14
- <atoms-tabs
15
- :items="tabs"
16
- test-id="vm-backup-tabs"
17
- size="small"
18
- class="tabs w-100"
19
- @change="onSelect"
20
- />
21
- </div>
22
- </template>
23
-
24
- <script setup lang="ts">
25
- import type { UI_T_Project } from '~/lib/models/types'
26
- import type { UI_I_Localization } from '~/lib/models/interfaces'
27
- import type { UI_I_CollapseNavItem } from '~/components/atoms/collapse/lib/models/interfaces'
28
- import type {
29
- UI_T_BackupActionType,
30
- UI_T_TargetType,
31
- } from '~/components/common/pages/backups/lib/models/types'
32
- import type { UI_I_BackupsTreeNode } from '~/components/common/pages/backups/lib/models/interfaces'
33
- import { backupsTabsFunc } from '~/components/common/pages/backups/tools/lib/config/tabs'
34
-
35
- const props = defineProps<{
36
- project: UI_T_Project
37
- backupsCount: number
38
- backupsLoading: boolean
39
- targetType: UI_T_TargetType
40
- selectedNode: UI_I_BackupsTreeNode | null
41
- }>()
42
-
43
- const emits = defineEmits<{
44
- (event: 'select', value: UI_T_BackupActionType): void
45
- }>()
46
-
47
- const localization = computed<UI_I_Localization>(() => useLocal())
48
-
49
- const permission = computed<string>(() => {
50
- return props.project === 'sphere' ? 'VirtualMachines.CreateBackup' : ''
51
- })
52
-
53
- const tabs = computed<UI_I_CollapseNavItem[]>(() =>
54
- backupsTabsFunc(
55
- localization.value,
56
- isDisabled.value,
57
- props.backupsCount,
58
- props.selectedNode,
59
- props.project
60
- )
61
- )
62
-
63
- const onSelect = (action: UI_T_BackupActionType): void => {
64
- emits('select', action)
65
- }
66
-
67
- const isDisabled = computed<boolean>(() => props.backupsLoading)
68
- </script>
69
-
70
- <style scoped lang="scss">
71
- .backup-actions {
72
- grid-template-columns: auto 1fr;
73
- align-items: baseline;
74
- }
75
- </style>
1
+ <template>
2
+ <div class="backup-actions grid py-0 px-6">
3
+ <button
4
+ v-if="targetType === 'vm'"
5
+ id="create-backup-button"
6
+ v-permission="permission"
7
+ :disabled="isDisabled"
8
+ data-id="create-backup-button"
9
+ class="btn btn-primary btn-sm"
10
+ @click="onSelect('createBackup')"
11
+ >
12
+ {{ localization.common.createBackup }}...
13
+ </button>
14
+ <atoms-tabs
15
+ :items="tabs"
16
+ test-id="vm-backup-tabs"
17
+ size="small"
18
+ class="tabs w-100"
19
+ @change="onSelect"
20
+ />
21
+ </div>
22
+ </template>
23
+
24
+ <script setup lang="ts">
25
+ import type { UI_T_Project } from '~/lib/models/types'
26
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
27
+ import type { UI_I_CollapseNavItem } from '~/components/atoms/collapse/lib/models/interfaces'
28
+ import type {
29
+ UI_T_BackupActionType,
30
+ UI_T_TargetType,
31
+ } from '~/components/common/pages/backups/lib/models/types'
32
+ import type { UI_I_BackupsTreeNode } from '~/components/common/pages/backups/lib/models/interfaces'
33
+ import { backupsTabsFunc } from '~/components/common/pages/backups/tools/lib/config/tabs'
34
+
35
+ const props = defineProps<{
36
+ project: UI_T_Project
37
+ backupsCount: number
38
+ backupsLoading: boolean
39
+ targetType: UI_T_TargetType
40
+ selectedNode: UI_I_BackupsTreeNode | null
41
+ }>()
42
+
43
+ const emits = defineEmits<{
44
+ (event: 'select', value: UI_T_BackupActionType): void
45
+ }>()
46
+
47
+ const localization = computed<UI_I_Localization>(() => useLocal())
48
+
49
+ const permission = computed<string>(() => {
50
+ return props.project === 'sphere' ? 'VirtualMachines.CreateBackup' : ''
51
+ })
52
+
53
+ const tabs = computed<UI_I_CollapseNavItem[]>(() =>
54
+ backupsTabsFunc(
55
+ localization.value,
56
+ isDisabled.value,
57
+ props.backupsCount,
58
+ props.selectedNode,
59
+ props.project
60
+ )
61
+ )
62
+
63
+ const onSelect = (action: UI_T_BackupActionType): void => {
64
+ emits('select', action)
65
+ }
66
+
67
+ const isDisabled = computed<boolean>(() => props.backupsLoading)
68
+ </script>
69
+
70
+ <style scoped lang="scss">
71
+ .backup-actions {
72
+ grid-template-columns: auto 1fr;
73
+ align-items: baseline;
74
+ }
75
+ </style>
@@ -1,36 +1,36 @@
1
- import type { UI_I_Localization } from '~/lib/models/interfaces'
2
- import type { UI_I_CollapseNavItem } from '~/components/atoms/collapse/lib/models/interfaces'
3
- import type { UI_I_BackupsTreeNode } from '~/components/common/pages/backups/lib/models/interfaces'
4
- import type { UI_T_Project } from '~/lib/models/types'
5
-
6
- export const backupsTabsFunc = (
7
- localization: UI_I_Localization,
8
- isDisabled: boolean,
9
- backupsCount: number,
10
- selectedNode: UI_I_BackupsTreeNode | null,
11
- project: UI_T_Project
12
- ): UI_I_CollapseNavItem[] => {
13
- return [
14
- {
15
- text: localization.common.restore.toUpperCase(),
16
- value: 'restoreBackup',
17
- disabled: isDisabled || selectedNode?.type !== 'backup',
18
- testId: 'restore-backup',
19
- permission: project === 'sphere' ? 'VirtualMachines.RestoreBackup' : '',
20
- },
21
- {
22
- text: localization.common.delete.toUpperCase(),
23
- value: 'deleteBackup',
24
- disabled: isDisabled || selectedNode?.type !== 'backup',
25
- testId: 'delete-backup',
26
- permission: project === 'sphere' ? 'VirtualMachines.DeleteBackup' : '',
27
- },
28
- {
29
- text: localization.common.deleteAll.toUpperCase(),
30
- value: 'deleteBackupAll',
31
- disabled: isDisabled || !backupsCount,
32
- testId: 'delete-all-backups',
33
- permission: project === 'sphere' ? 'VirtualMachines.DeleteBackups' : '',
34
- },
35
- ]
36
- }
1
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
2
+ import type { UI_I_CollapseNavItem } from '~/components/atoms/collapse/lib/models/interfaces'
3
+ import type { UI_I_BackupsTreeNode } from '~/components/common/pages/backups/lib/models/interfaces'
4
+ import type { UI_T_Project } from '~/lib/models/types'
5
+
6
+ export const backupsTabsFunc = (
7
+ localization: UI_I_Localization,
8
+ isDisabled: boolean,
9
+ backupsCount: number,
10
+ selectedNode: UI_I_BackupsTreeNode | null,
11
+ project: UI_T_Project
12
+ ): UI_I_CollapseNavItem[] => {
13
+ return [
14
+ {
15
+ text: localization.common.restore.toUpperCase(),
16
+ value: 'restoreBackup',
17
+ disabled: isDisabled || selectedNode?.type !== 'backup',
18
+ testId: 'restore-backup',
19
+ permission: project === 'sphere' ? 'VirtualMachines.RestoreBackup' : '',
20
+ },
21
+ {
22
+ text: localization.common.delete.toUpperCase(),
23
+ value: 'deleteBackup',
24
+ disabled: isDisabled || selectedNode?.type !== 'backup',
25
+ testId: 'delete-backup',
26
+ permission: project === 'sphere' ? 'VirtualMachines.DeleteBackup' : '',
27
+ },
28
+ {
29
+ text: localization.common.deleteAll.toUpperCase(),
30
+ value: 'deleteBackupAll',
31
+ disabled: isDisabled || !backupsCount,
32
+ testId: 'delete-all-backups',
33
+ permission: project === 'sphere' ? 'VirtualMachines.DeleteBackups' : '',
34
+ },
35
+ ]
36
+ }
@@ -1,48 +1,48 @@
1
- import type { UI_T_NodeType } from '~/components/common/pages/home/lib/models/types'
2
- import type { UI_I_Resources } from '~/components/common/resource/lib/models/interfaces'
3
- import type { UI_I_Option } from '~/components/atoms/select/lib/models/interfaces'
4
-
5
- export interface UI_I_ZoneList extends UI_I_Option {}
6
- export interface UI_I_Hosts {
7
- connected: number
8
- disconnected: number
9
- maintenance: number
10
- total: number
11
- }
12
-
13
- export interface UI_I_Vms {
14
- powered_on: number
15
- powered_off: number
16
- suspended: number
17
- total: number
18
- }
19
-
20
- export interface UI_I_Alert {
21
- item: string
22
- type: UI_T_NodeType
23
- id: number
24
- alerts: number
25
- warnings: number
26
- }
27
-
28
- export interface UI_I_Service {
29
- id: number
30
- item: string
31
- statusIcon: string
32
- statusText: string
33
- version: string
34
- }
35
-
36
- export interface UI_I_HomeInfo {
37
- resource_meter: UI_I_Resources[]
38
- vms: UI_I_Vms
39
- alerts: UI_I_Alert[]
40
- services: UI_I_Service[]
41
- hosts?: UI_I_Hosts
42
- }
43
-
44
- export interface UI_I_Card {
45
- text: string
46
- value: number
47
- icon?: string
48
- }
1
+ import type { UI_T_NodeType } from '~/components/common/pages/home/lib/models/types'
2
+ import type { UI_I_Resources } from '~/components/common/resource/lib/models/interfaces'
3
+ import type { UI_I_Option } from '~/components/atoms/select/lib/models/interfaces'
4
+
5
+ export interface UI_I_ZoneList extends UI_I_Option {}
6
+ export interface UI_I_Hosts {
7
+ connected: number
8
+ disconnected: number
9
+ maintenance: number
10
+ total: number
11
+ }
12
+
13
+ export interface UI_I_Vms {
14
+ powered_on: number
15
+ powered_off: number
16
+ suspended: number
17
+ total: number
18
+ }
19
+
20
+ export interface UI_I_Alert {
21
+ item: string
22
+ type: UI_T_NodeType
23
+ id: number
24
+ alerts: number
25
+ warnings: number
26
+ }
27
+
28
+ export interface UI_I_Service {
29
+ id: number
30
+ item: string
31
+ statusIcon: string
32
+ statusText: string
33
+ version: string
34
+ }
35
+
36
+ export interface UI_I_HomeInfo {
37
+ resource_meter: UI_I_Resources[]
38
+ vms: UI_I_Vms
39
+ alerts: UI_I_Alert[]
40
+ services: UI_I_Service[]
41
+ hosts?: UI_I_Hosts
42
+ }
43
+
44
+ export interface UI_I_Card {
45
+ text: string
46
+ value: number
47
+ icon?: string
48
+ }
@@ -1,27 +1,27 @@
1
- <template>
2
- <common-pages-home-widgets-hosts-new
3
- v-if="isNewView"
4
- :hosts="props.hosts"
5
- :loading="props.loading"
6
- />
7
-
8
- <common-pages-home-widgets-hosts-old
9
- v-else
10
- :hosts="props.hosts"
11
- />
12
- </template>
13
-
14
- <script lang="ts" setup>
15
- import type { UI_I_Hosts } from '~/components/common/pages/home/lib/models/interfaces'
16
-
17
- const props = defineProps<{
18
- hosts: UI_I_Hosts
19
- loading: boolean
20
- }>()
21
-
22
- const { $store }: any = useNuxtApp()
23
-
24
- const isNewView = computed<boolean>(() => $store.getters['main/getIsNewView'])
25
- </script>
26
-
27
- <style lang="scss" scoped></style>
1
+ <template>
2
+ <common-pages-home-widgets-hosts-new
3
+ v-if="isNewView"
4
+ :hosts="props.hosts"
5
+ :loading="props.loading"
6
+ />
7
+
8
+ <common-pages-home-widgets-hosts-old
9
+ v-else
10
+ :hosts="props.hosts"
11
+ />
12
+ </template>
13
+
14
+ <script lang="ts" setup>
15
+ import type { UI_I_Hosts } from '~/components/common/pages/home/lib/models/interfaces'
16
+
17
+ const props = defineProps<{
18
+ hosts: UI_I_Hosts
19
+ loading: boolean
20
+ }>()
21
+
22
+ const { $store }: any = useNuxtApp()
23
+
24
+ const isNewView = computed<boolean>(() => $store.getters['main/getIsNewView'])
25
+ </script>
26
+
27
+ <style lang="scss" scoped></style>
@@ -1,23 +1,23 @@
1
- import type {
2
- UI_I_Card,
3
- UI_I_Hosts,
4
- } from '~/components/common/pages/home/lib/models/interfaces'
5
-
6
- export const itemsFunc = (hosts: UI_I_Hosts): UI_I_Card[] => [
7
- {
8
- value: hosts.connected,
9
- text: 'connected',
10
- icon: 'vsphere-icon-Host_Connect',
11
- },
12
- {
13
- value: hosts.disconnected,
14
- text: 'disconnected',
15
- icon: 'vsphere-icon-Host_Disconnect',
16
- },
17
-
18
- {
19
- value: hosts.maintenance,
20
- text: 'maintenance',
21
- icon: 'vsphere-icon-host-maintenance',
22
- },
23
- ]
1
+ import type {
2
+ UI_I_Card,
3
+ UI_I_Hosts,
4
+ } from '~/components/common/pages/home/lib/models/interfaces'
5
+
6
+ export const itemsFunc = (hosts: UI_I_Hosts): UI_I_Card[] => [
7
+ {
8
+ value: hosts.connected,
9
+ text: 'connected',
10
+ icon: 'vsphere-icon-Host_Connect',
11
+ },
12
+ {
13
+ value: hosts.disconnected,
14
+ text: 'disconnected',
15
+ icon: 'vsphere-icon-Host_Disconnect',
16
+ },
17
+
18
+ {
19
+ value: hosts.maintenance,
20
+ text: 'maintenance',
21
+ icon: 'vsphere-icon-host-maintenance',
22
+ },
23
+ ]
@@ -1,35 +1,35 @@
1
- <template>
2
- <div :class="classes">
3
- <div class="entity-status">
4
- <common-pages-home-card
5
- :title="localization.common.vms"
6
- :count="props.vms.total"
7
- icon-name="vsphere-icon-vm"
8
- >
9
- <common-pages-home-status-content :items="props.vms" />
10
- </common-pages-home-card>
11
- </div>
12
- </div>
13
- </template>
14
-
15
- <script lang="ts" setup>
16
- import type { UI_I_Localization } from '~/lib/models/interfaces'
17
- import type { UI_I_Vms } from '~/components/common/pages/home/lib/models/interfaces'
18
- import type { UI_T_Project } from '~/lib/models/types'
19
- const props = defineProps<{
20
- vms: UI_I_Vms
21
- project?: UI_T_Project
22
- }>()
23
-
24
- const localization = computed<UI_I_Localization>(() => useLocal())
25
-
26
- const classes = computed<string>(() => {
27
- let classes = 'clr-col-md-6 clr-col-sm-12'
28
- if (props.project === 'procurator') {
29
- classes = 'clr-col-md-12 clr-col-sm-12'
30
- }
31
- return classes
32
- })
33
- </script>
34
-
35
- <style lang="scss" scoped></style>
1
+ <template>
2
+ <div :class="classes">
3
+ <div class="entity-status">
4
+ <common-pages-home-card
5
+ :title="localization.common.vms"
6
+ :count="props.vms.total"
7
+ icon-name="vsphere-icon-vm"
8
+ >
9
+ <common-pages-home-status-content :items="props.vms" />
10
+ </common-pages-home-card>
11
+ </div>
12
+ </div>
13
+ </template>
14
+
15
+ <script lang="ts" setup>
16
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
17
+ import type { UI_I_Vms } from '~/components/common/pages/home/lib/models/interfaces'
18
+ import type { UI_T_Project } from '~/lib/models/types'
19
+ const props = defineProps<{
20
+ vms: UI_I_Vms
21
+ project?: UI_T_Project
22
+ }>()
23
+
24
+ const localization = computed<UI_I_Localization>(() => useLocal())
25
+
26
+ const classes = computed<string>(() => {
27
+ let classes = 'clr-col-md-6 clr-col-sm-12'
28
+ if (props.project === 'procurator') {
29
+ classes = 'clr-col-md-12 clr-col-sm-12'
30
+ }
31
+ return classes
32
+ })
33
+ </script>
34
+
35
+ <style lang="scss" scoped></style>
@@ -1,20 +1,20 @@
1
- import type {UI_I_Card, UI_I_Vms} from "~/components/common/pages/home/lib/models/interfaces";
2
-
3
- export const itemsFunc = (vms: UI_I_Vms): UI_I_Card[] => [
4
- {
5
- value: vms.powered_on,
6
- text: 'powered_on',
7
- icon: 'vsphere-icon-vm-on',
8
- },
9
- {
10
- value: vms.powered_off,
11
- text: 'powered_off',
12
- icon: 'icon-vm-power-off',
13
- },
14
-
15
- {
16
- value: vms.suspended,
17
- text: 'suspended',
18
- icon: 'vsphere-icon-vm-suspended',
19
- },
1
+ import type {UI_I_Card, UI_I_Vms} from "~/components/common/pages/home/lib/models/interfaces";
2
+
3
+ export const itemsFunc = (vms: UI_I_Vms): UI_I_Card[] => [
4
+ {
5
+ value: vms.powered_on,
6
+ text: 'powered_on',
7
+ icon: 'vsphere-icon-vm-on',
8
+ },
9
+ {
10
+ value: vms.powered_off,
11
+ text: 'powered_off',
12
+ icon: 'icon-vm-power-off',
13
+ },
14
+
15
+ {
16
+ value: vms.suspended,
17
+ text: 'suspended',
18
+ icon: 'vsphere-icon-vm-suspended',
19
+ },
20
20
  ]