bfg-common 1.5.380 → 1.5.382

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 (138) 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/collapse/CollapseNavItem.vue +226 -226
  9. package/components/atoms/nav/NavBar.vue +147 -147
  10. package/components/atoms/perPage/PerPage.vue +58 -58
  11. package/components/atoms/table/dataGrid/DataGrid.vue +1717 -1717
  12. package/components/atoms/table/dataGrid/lib/config/settingsTable.ts +94 -94
  13. package/components/atoms/table/dataGrid/lib/utils/export.ts +16 -16
  14. package/components/atoms/tabs/VerticalTabs.vue +105 -105
  15. package/components/common/backup/storage/actions/add/lib/config/steps.ts +168 -168
  16. package/components/common/backup/storage/actions/add/steps/hostAccessibility/HostAccessibility.vue +52 -52
  17. package/components/common/backup/storage/actions/add/steps/readyComplete/ReadyComplete.vue +45 -45
  18. package/components/common/backup/storage/actions/delete/Delete.vue +65 -65
  19. package/components/common/browse/blocks/Container.vue +234 -234
  20. package/components/common/browse/blocks/contents/filesNew/Skeleton.vue +18 -18
  21. package/components/common/context/lib/models/interfaces.ts +33 -33
  22. package/components/common/diagramMain/modals/lib/config/networkModal.ts +398 -398
  23. package/components/common/diagramMain/network/Network.vue +141 -141
  24. package/components/common/layout/theHeader/helpMenu/About.vue +82 -82
  25. package/components/common/layout/theHeader/userMenu/modals/preferences/view/ViewOld.vue +112 -112
  26. package/components/common/monitor/overview/OverviewOld.vue +139 -139
  27. package/components/common/pages/home/headline/Headline.vue +45 -45
  28. package/components/common/pages/home/headline/HeadlineOld.vue +42 -42
  29. package/components/common/pages/home/lib/models/interfaces.ts +48 -48
  30. package/components/common/pages/home/widgets/Widgets.vue +49 -49
  31. package/components/common/pages/home/widgets/WidgetsNew.vue +88 -88
  32. package/components/common/pages/home/widgets/WidgetsOld.vue +36 -36
  33. package/components/common/pages/home/widgets/hosts/Hosts.vue +27 -27
  34. package/components/common/pages/home/widgets/hosts/lib/config/items.ts +23 -23
  35. package/components/common/pages/home/widgets/vms/Vms.vue +26 -26
  36. package/components/common/pages/home/widgets/vms/VmsOld.vue +35 -35
  37. package/components/common/pages/home/widgets/vms/lib/config/items.ts +19 -19
  38. package/components/common/pages/packages/Packages.vue +208 -208
  39. package/components/common/pages/shortcuts/block/BlockOld.vue +68 -68
  40. package/components/common/readyToComplete/New.vue +129 -129
  41. package/components/common/readyToComplete/ReadyToComplete.vue +17 -17
  42. package/components/common/recursionTree/RecursionTree.vue +223 -223
  43. package/components/common/select/button/ButtonDropdown.vue +112 -112
  44. package/components/common/spiceConsole/Drawer.vue +381 -377
  45. package/components/common/spiceConsole/SpiceConsole.vue +127 -127
  46. package/components/common/spiceConsole/lib/models/interfaces.ts +5 -5
  47. package/components/common/tools/Actions.vue +207 -207
  48. package/components/common/vm/actions/add/Old.vue +388 -388
  49. package/components/common/vm/actions/add/folderTreeView/FolderTreeView.vue +72 -72
  50. package/components/common/vm/actions/add/folderTreeView/New.vue +40 -40
  51. package/components/common/vm/actions/add/folderTreeView/Old.vue +50 -50
  52. package/components/common/vm/actions/clone/Clone.vue +823 -823
  53. package/components/common/vm/actions/clone/lib/config/steps.ts +291 -291
  54. package/components/common/vm/actions/clone/toTemplate/lib/config/steps.ts +116 -116
  55. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardwareOld.vue +321 -321
  56. package/components/common/vm/actions/common/customizeHardware/virtualHardware/browseView/BrowseView.vue +227 -227
  57. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/Bus.vue +100 -100
  58. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDrive.vue +232 -232
  59. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDriveOld.vue +168 -168
  60. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Media.vue +25 -25
  61. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaNew.vue +78 -78
  62. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaOld.vue +50 -50
  63. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/Shares.vue +140 -140
  64. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/lib/config/options.ts +28 -28
  65. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/tooltip/TooltipNew.vue +154 -154
  66. package/components/common/vm/actions/common/customizeHardware/virtualHardware/lib/config/dropdownItems.ts +155 -155
  67. package/components/common/vm/actions/common/customizeHardware/virtualHardware/limit/Limit.vue +220 -220
  68. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/Memory.vue +307 -307
  69. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +385 -385
  70. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/Location.vue +154 -154
  71. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/LocationOld.vue +85 -85
  72. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetwork.vue +288 -288
  73. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/table/lib/config/config.ts +94 -94
  74. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddress.vue +119 -119
  75. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/NewPciDevice.vue +205 -205
  76. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoNew.vue +66 -66
  77. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoOld.vue +62 -62
  78. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIo.vue +31 -31
  79. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIoOld.vue +76 -76
  80. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/Note.vue +15 -15
  81. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteNew.vue +42 -42
  82. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteOld.vue +30 -30
  83. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGridOld.vue +84 -84
  84. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/Other.vue +16 -16
  85. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCard.vue +154 -154
  86. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/numberDisplays/NumberDisplays.vue +53 -53
  87. package/components/common/vm/actions/common/customizeHardware/vmoptions/Vmoptions.vue +155 -155
  88. package/components/common/vm/actions/common/customizeHardware/vmoptions/VmoptionsNew.vue +130 -130
  89. package/components/common/vm/actions/common/customizeHardware/vmoptions/VmoptionsOld.vue +113 -113
  90. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/delay/Delay.vue +32 -32
  91. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/Firmware.vue +60 -60
  92. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +174 -174
  93. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptions.vue +95 -95
  94. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptionsOld.vue +155 -155
  95. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/Keymap.vue +32 -32
  96. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/KeymapOld.vue +44 -44
  97. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/Password.vue +103 -103
  98. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirection.vue +28 -28
  99. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionOld.vue +44 -44
  100. package/components/common/vm/actions/common/select/compatibility/Old.vue +107 -107
  101. package/components/common/vm/actions/common/select/computeResource/ComputeResource.vue +143 -143
  102. package/components/common/vm/actions/common/select/computeResource/New.vue +184 -184
  103. package/components/common/vm/actions/common/select/computeResource/treeView/TreeView.vue +131 -131
  104. package/components/common/vm/actions/common/select/createType/CreateType.vue +38 -38
  105. package/components/common/vm/actions/common/select/createType/lib/config/items.ts +48 -48
  106. package/components/common/vm/actions/common/select/createType/lib/models/interfaces.ts +5 -5
  107. package/components/common/vm/actions/common/select/name/Name.vue +174 -174
  108. package/components/common/vm/actions/common/select/os/Old.vue +152 -152
  109. package/components/common/vm/actions/common/select/os/Os.vue +139 -139
  110. package/components/common/vm/actions/common/select/storage/Storage.vue +155 -155
  111. package/components/common/vm/actions/common/select/storage/new/New.vue +300 -300
  112. package/components/common/vm/actions/common/select/storage/new/lib/models/interfaces.ts +5 -5
  113. package/components/common/vm/actions/common/select/storage/new/lib/utils/utils.ts +21 -21
  114. package/components/common/vm/actions/editSettings/EditSettings.vue +242 -242
  115. package/components/common/vm/actions/editSettings/new/Skeleton.vue +88 -88
  116. package/components/common/vmt/actions/add/lib/models/interfaces.ts +23 -23
  117. package/components/common/wizards/network/add/steps/SelectConnectionType.vue +104 -104
  118. package/components/common/wizards/network/add/steps/SelectedTargetDevice.vue +467 -467
  119. package/components/common/wizards/vm/migrate/Migrate.vue +349 -349
  120. package/components/common/wizards/vm/migrate/lib/config/constructDataReady.ts +220 -220
  121. package/components/common/wizards/vm/migrate/lib/config/steps.ts +157 -157
  122. package/components/common/wizards/vm/migrate/lib/validations.ts +68 -68
  123. package/components/common/wizards/vm/migrate/select/network/Network.vue +103 -103
  124. package/components/common/wizards/vm/migrate/select/network/table/network/lib/config/advancedTable.ts +91 -91
  125. package/components/common/wizards/vm/migrate/select/type/lib/config/typeOptions.ts +45 -45
  126. package/composables/productNameLocal.ts +30 -30
  127. package/composables/useAppVersion.ts +21 -21
  128. package/package.json +1 -1
  129. package/plugins/console.ts +22 -0
  130. package/plugins/date.ts +233 -233
  131. package/plugins/panelStates.ts +70 -70
  132. package/plugins/text.ts +59 -59
  133. package/public/spice-console/lib/images/bitmap.js +203 -203
  134. package/public/spice-console/network/spicechannel.js +390 -387
  135. package/public/spice-console-minify/run.min.js +1 -1
  136. package/store/main/mutations.ts +7 -7
  137. package/store/main/state.ts +7 -7
  138. package/store/tasks/mappers/recentTasks.ts +64 -64
@@ -1,139 +1,139 @@
1
- <template>
2
- <div class="charts-view">
3
- <div v-if="!props.allData.length" class="content-global-loading">
4
- {{ localization.common.loading }}...
5
- </div>
6
- <template v-else>
7
- <template
8
- v-for="(chartData, key) in props.allData"
9
- :key="chartData.title"
10
- >
11
- <div :class="['chart-container', `graph-${chartData.title}`]">
12
- <div v-if="chartData.loader" class="graphic-loader-block">
13
- <div class="spinner"></div>
14
- <p>{{ localization.inventoryMonitor.retrievingData }}...</p>
15
- </div>
16
- <common-graph
17
- v-else-if="chartData.data"
18
- :data="chartData.data"
19
- :chart="props.charts[key]"
20
- :update="props.updateHelper"
21
- />
22
- <div v-else class="graph-empty-block">
23
- <div class="title">{{ chartData.title }}</div>
24
- <div class="body-block">
25
- {{ localization.common.emptyGraphText }}
26
- </div>
27
- </div>
28
- </div>
29
- </template>
30
- </template>
31
- </div>
32
- </template>
33
-
34
- <script setup lang="ts">
35
- import type { UI_I_Localization } from '~/lib/models/interfaces'
36
- import type { UI_I_GraphDataSettingItem } from '~/components/common/monitor/lib/models/interfaces'
37
-
38
- const props = defineProps<{
39
- charts: (UI_I_GraphDataSettingItem | null)[]
40
- allData: UI_I_GraphDataSettingItem[]
41
- updateHelper: number
42
- }>()
43
-
44
- const localization = computed<UI_I_Localization>(() => useLocal())
45
- </script>
46
-
47
- <style>
48
- :root {
49
- --loader-bg-color: #ffffff;
50
- }
51
- :root.dark-theme {
52
- --loader-bg-color: #22343c;
53
- }
54
- </style>
55
-
56
- <style scoped lang="scss">
57
- .charts-view {
58
- position: relative;
59
- display: flex;
60
- flex-direction: row;
61
- flex-wrap: wrap;
62
- justify-content: space-between;
63
- overflow: auto;
64
- height: 100%;
65
-
66
- .graphic-loader-block {
67
- background-color: var(--loader-bg-color);
68
- height: 100%;
69
- display: flex;
70
- flex-direction: column;
71
- align-items: center;
72
- justify-content: center;
73
- }
74
-
75
- .graph-empty-block {
76
- display: flex;
77
- flex-direction: column;
78
- height: 100%;
79
- background-color: var(--loader-bg-color);
80
-
81
- .title {
82
- text-align: center;
83
- font-size: 18px;
84
- margin-top: 10px;
85
- color: var(--global-font-color);
86
- }
87
-
88
- .body-block {
89
- height: 100%;
90
- display: flex;
91
- justify-content: center;
92
- text-align: center;
93
- align-items: center;
94
- color: var(--global-font-color);
95
- }
96
- }
97
-
98
- .chart-container {
99
- box-sizing: border-box;
100
- flex-grow: 1;
101
- padding: 5px;
102
- min-height: 300px;
103
- height: 100%;
104
- min-width: 300px;
105
- width: 100%;
106
- position: relative;
107
-
108
- &:first-child:last-child {
109
- height: 100%;
110
- width: 100%;
111
- }
112
-
113
- &:first-child:nth-last-child(2),
114
- &:nth-child(2):last-child {
115
- width: 50%;
116
- height: 100%;
117
- }
118
- }
119
-
120
- .content-global-loading {
121
- width: 100%;
122
- height: 100%;
123
- display: flex;
124
- align-items: center;
125
- justify-content: center;
126
- color: var(--global-font-color);
127
- }
128
- }
129
- @media (min-width: 1280px) {
130
- .charts-view .chart-container {
131
- width: 50%;
132
- }
133
- }
134
- @media (min-height: 800px) {
135
- .charts-view .chart-container {
136
- height: 50%;
137
- }
138
- }
139
- </style>
1
+ <template>
2
+ <div class="charts-view">
3
+ <div v-if="!props.allData.length" class="content-global-loading">
4
+ {{ localization.common.loading }}...
5
+ </div>
6
+ <template v-else>
7
+ <template
8
+ v-for="(chartData, key) in props.allData"
9
+ :key="chartData.title"
10
+ >
11
+ <div :class="['chart-container', `graph-${chartData.title}`]">
12
+ <div v-if="chartData.loader" class="graphic-loader-block">
13
+ <div class="spinner"></div>
14
+ <p>{{ localization.inventoryMonitor.retrievingData }}...</p>
15
+ </div>
16
+ <common-graph
17
+ v-else-if="chartData.data"
18
+ :data="chartData.data"
19
+ :chart="props.charts[key]"
20
+ :update="props.updateHelper"
21
+ />
22
+ <div v-else class="graph-empty-block">
23
+ <div class="title">{{ chartData.title }}</div>
24
+ <div class="body-block">
25
+ {{ localization.common.emptyGraphText }}
26
+ </div>
27
+ </div>
28
+ </div>
29
+ </template>
30
+ </template>
31
+ </div>
32
+ </template>
33
+
34
+ <script setup lang="ts">
35
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
36
+ import type { UI_I_GraphDataSettingItem } from '~/components/common/monitor/lib/models/interfaces'
37
+
38
+ const props = defineProps<{
39
+ charts: (UI_I_GraphDataSettingItem | null)[]
40
+ allData: UI_I_GraphDataSettingItem[]
41
+ updateHelper: number
42
+ }>()
43
+
44
+ const localization = computed<UI_I_Localization>(() => useLocal())
45
+ </script>
46
+
47
+ <style>
48
+ :root {
49
+ --loader-bg-color: #ffffff;
50
+ }
51
+ :root.dark-theme {
52
+ --loader-bg-color: #22343c;
53
+ }
54
+ </style>
55
+
56
+ <style scoped lang="scss">
57
+ .charts-view {
58
+ position: relative;
59
+ display: flex;
60
+ flex-direction: row;
61
+ flex-wrap: wrap;
62
+ justify-content: space-between;
63
+ overflow: auto;
64
+ height: 100%;
65
+
66
+ .graphic-loader-block {
67
+ background-color: var(--loader-bg-color);
68
+ height: 100%;
69
+ display: flex;
70
+ flex-direction: column;
71
+ align-items: center;
72
+ justify-content: center;
73
+ }
74
+
75
+ .graph-empty-block {
76
+ display: flex;
77
+ flex-direction: column;
78
+ height: 100%;
79
+ background-color: var(--loader-bg-color);
80
+
81
+ .title {
82
+ text-align: center;
83
+ font-size: 18px;
84
+ margin-top: 10px;
85
+ color: var(--global-font-color);
86
+ }
87
+
88
+ .body-block {
89
+ height: 100%;
90
+ display: flex;
91
+ justify-content: center;
92
+ text-align: center;
93
+ align-items: center;
94
+ color: var(--global-font-color);
95
+ }
96
+ }
97
+
98
+ .chart-container {
99
+ box-sizing: border-box;
100
+ flex-grow: 1;
101
+ padding: 5px;
102
+ min-height: 300px;
103
+ height: 100%;
104
+ min-width: 300px;
105
+ width: 100%;
106
+ position: relative;
107
+
108
+ &:first-child:last-child {
109
+ height: 100%;
110
+ width: 100%;
111
+ }
112
+
113
+ &:first-child:nth-last-child(2),
114
+ &:nth-child(2):last-child {
115
+ width: 50%;
116
+ height: 100%;
117
+ }
118
+ }
119
+
120
+ .content-global-loading {
121
+ width: 100%;
122
+ height: 100%;
123
+ display: flex;
124
+ align-items: center;
125
+ justify-content: center;
126
+ color: var(--global-font-color);
127
+ }
128
+ }
129
+ @media (min-width: 1280px) {
130
+ .charts-view .chart-container {
131
+ width: 50%;
132
+ }
133
+ }
134
+ @media (min-height: 800px) {
135
+ .charts-view .chart-container {
136
+ height: 50%;
137
+ }
138
+ }
139
+ </style>
@@ -1,45 +1,45 @@
1
- <template>
2
- <div class="home-headline">
3
- <common-pages-home-headline-new
4
- v-if="isNewView"
5
- v-model="selectedZone"
6
- :data="zoneOptionList"
7
- :project="props.project"
8
- />
9
-
10
- <common-pages-home-headline-old
11
- v-else
12
- v-model="selectedZone"
13
- :data="zoneOptionList"
14
- :project="props.project"
15
- />
16
- </div>
17
- </template>
18
-
19
- <script lang="ts" setup>
20
- import type { UI_I_ZoneList } from '~/components/common/pages/home/lib/models/interfaces'
21
- import type { UI_T_Project } from '~/lib/models/types'
22
-
23
- const selectedZone = defineModel<string>('selectedZone', { required: true })
24
-
25
- const props = defineProps<{
26
- zoneList: UI_I_ZoneList[]
27
- project: UI_T_Project
28
- }>()
29
-
30
- const { $store }: any = useNuxtApp()
31
-
32
- const isNewView = computed<boolean>(() => $store.getters['main/getIsNewView'])
33
-
34
- const zoneOptionList = computed<UI_I_ZoneList[]>(() => props.zoneList)
35
- </script>
36
-
37
- <style lang="scss">
38
- :root {
39
- --home-title-color: #4d5d69;
40
- }
41
-
42
- :root.dark-theme {
43
- --home-title-color: #e9eaec;
44
- }
45
- </style>
1
+ <template>
2
+ <div class="home-headline">
3
+ <common-pages-home-headline-new
4
+ v-if="isNewView"
5
+ v-model="selectedZone"
6
+ :data="zoneOptionList"
7
+ :project="props.project"
8
+ />
9
+
10
+ <common-pages-home-headline-old
11
+ v-else
12
+ v-model="selectedZone"
13
+ :data="zoneOptionList"
14
+ :project="props.project"
15
+ />
16
+ </div>
17
+ </template>
18
+
19
+ <script lang="ts" setup>
20
+ import type { UI_I_ZoneList } from '~/components/common/pages/home/lib/models/interfaces'
21
+ import type { UI_T_Project } from '~/lib/models/types'
22
+
23
+ const selectedZone = defineModel<string>('selectedZone', { required: true })
24
+
25
+ const props = defineProps<{
26
+ zoneList: UI_I_ZoneList[]
27
+ project: UI_T_Project
28
+ }>()
29
+
30
+ const { $store }: any = useNuxtApp()
31
+
32
+ const isNewView = computed<boolean>(() => $store.getters['main/getIsNewView'])
33
+
34
+ const zoneOptionList = computed<UI_I_ZoneList[]>(() => props.zoneList)
35
+ </script>
36
+
37
+ <style lang="scss">
38
+ :root {
39
+ --home-title-color: #4d5d69;
40
+ }
41
+
42
+ :root.dark-theme {
43
+ --home-title-color: #e9eaec;
44
+ }
45
+ </style>
@@ -1,42 +1,42 @@
1
- <template>
2
- <h2 class="headline-title">
3
- {{ localization.mainNavigation.home }}
4
- </h2>
5
-
6
- <atoms-select-the-select
7
- v-if="isProjectSphere"
8
- v-model="selectedZoneModel"
9
- :options="props.data"
10
- test-id="home-zone-select"
11
- @update:model-value="emits('update')"
12
- >
13
- <span class="vsphere-icon-vcenter" />
14
- </atoms-select-the-select>
15
- </template>
16
-
17
- <script lang="ts" setup>
18
- import type { UI_T_Project } from '~/lib/models/types'
19
- import type { UI_I_Localization } from '~/lib/models/interfaces'
20
- import type { UI_I_Option } from '~/components/atoms/select/lib/models/interfaces'
21
-
22
- const selectedZoneModel = defineModel<string>({ required: true })
23
- const props = defineProps<{
24
- project: UI_T_Project
25
- data: UI_I_Option[]
26
- }>()
27
- const emits = defineEmits<{
28
- (event: 'update'): void
29
- }>()
30
-
31
- const localization = computed<UI_I_Localization>(() => useLocal())
32
-
33
- const isProjectSphere = ref<boolean>(props.project === 'sphere')
34
- </script>
35
-
36
- <style lang="scss" scoped>
37
- .headline-title {
38
- font-size: 28px;
39
- font-weight: 200;
40
- letter-spacing: normal;
41
- }
42
- </style>
1
+ <template>
2
+ <h2 class="headline-title">
3
+ {{ localization.mainNavigation.home }}
4
+ </h2>
5
+
6
+ <atoms-select-the-select
7
+ v-if="isProjectSphere"
8
+ v-model="selectedZoneModel"
9
+ :options="props.data"
10
+ test-id="home-zone-select"
11
+ @update:model-value="emits('update')"
12
+ >
13
+ <span class="vsphere-icon-vcenter" />
14
+ </atoms-select-the-select>
15
+ </template>
16
+
17
+ <script lang="ts" setup>
18
+ import type { UI_T_Project } from '~/lib/models/types'
19
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
20
+ import type { UI_I_Option } from '~/components/atoms/select/lib/models/interfaces'
21
+
22
+ const selectedZoneModel = defineModel<string>({ required: true })
23
+ const props = defineProps<{
24
+ project: UI_T_Project
25
+ data: UI_I_Option[]
26
+ }>()
27
+ const emits = defineEmits<{
28
+ (event: 'update'): void
29
+ }>()
30
+
31
+ const localization = computed<UI_I_Localization>(() => useLocal())
32
+
33
+ const isProjectSphere = ref<boolean>(props.project === 'sphere')
34
+ </script>
35
+
36
+ <style lang="scss" scoped>
37
+ .headline-title {
38
+ font-size: 28px;
39
+ font-weight: 200;
40
+ letter-spacing: normal;
41
+ }
42
+ </style>
@@ -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,49 +1,49 @@
1
- <template>
2
- <common-pages-home-widgets-new
3
- v-if="isNewView"
4
- :vms="vms"
5
- :hosts="hosts"
6
- :alerts="alerts || []"
7
- :services="services || []"
8
- :loading="props.loading"
9
- :project="props.project"
10
- />
11
-
12
- <common-pages-home-widgets-old
13
- v-else
14
- :vms="vms"
15
- :hosts="hosts"
16
- :alerts="alerts || []"
17
- :services="services || []"
18
- :project="props.project"
19
- />
20
- </template>
21
-
22
- <script lang="ts" setup>
23
- import type {
24
- UI_I_Alert,
25
- UI_I_HomeInfo,
26
- UI_I_Hosts,
27
- UI_I_Vms,
28
- UI_I_Service,
29
- } from '~/components/common/pages/home/lib/models/interfaces'
30
- import type { UI_T_Project } from '~/lib/models/types'
31
-
32
- const props = defineProps<{
33
- homeInfo: UI_I_HomeInfo
34
- loading: boolean
35
- project?: UI_T_Project
36
- }>()
37
-
38
- const { $store }: any = useNuxtApp()
39
-
40
- const isNewView = computed<boolean>(() => $store.getters['main/getIsNewView'])
41
-
42
- const vms = computed<UI_I_Vms>(() => props.homeInfo.vms || {})
43
- const hosts = computed<UI_I_Hosts>(() => props.homeInfo.hosts || {})
44
-
45
- const alerts = computed<UI_I_Alert[]>(() => props.homeInfo.alerts || 0)
46
- const services = computed<UI_I_Service[]>(() => props.homeInfo.services || 0)
47
- </script>
48
-
49
- <style lang="scss" scoped></style>
1
+ <template>
2
+ <common-pages-home-widgets-new
3
+ v-if="isNewView"
4
+ :vms="vms"
5
+ :hosts="hosts"
6
+ :alerts="alerts || []"
7
+ :services="services || []"
8
+ :loading="props.loading"
9
+ :project="props.project"
10
+ />
11
+
12
+ <common-pages-home-widgets-old
13
+ v-else
14
+ :vms="vms"
15
+ :hosts="hosts"
16
+ :alerts="alerts || []"
17
+ :services="services || []"
18
+ :project="props.project"
19
+ />
20
+ </template>
21
+
22
+ <script lang="ts" setup>
23
+ import type {
24
+ UI_I_Alert,
25
+ UI_I_HomeInfo,
26
+ UI_I_Hosts,
27
+ UI_I_Vms,
28
+ UI_I_Service,
29
+ } from '~/components/common/pages/home/lib/models/interfaces'
30
+ import type { UI_T_Project } from '~/lib/models/types'
31
+
32
+ const props = defineProps<{
33
+ homeInfo: UI_I_HomeInfo
34
+ loading: boolean
35
+ project?: UI_T_Project
36
+ }>()
37
+
38
+ const { $store }: any = useNuxtApp()
39
+
40
+ const isNewView = computed<boolean>(() => $store.getters['main/getIsNewView'])
41
+
42
+ const vms = computed<UI_I_Vms>(() => props.homeInfo.vms || {})
43
+ const hosts = computed<UI_I_Hosts>(() => props.homeInfo.hosts || {})
44
+
45
+ const alerts = computed<UI_I_Alert[]>(() => props.homeInfo.alerts || 0)
46
+ const services = computed<UI_I_Service[]>(() => props.homeInfo.services || 0)
47
+ </script>
48
+
49
+ <style lang="scss" scoped></style>