bfg-common 1.5.335 → 1.5.336

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 (136) 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/assets/scss/common/icons/icons-1.scss +3 -3
  7. package/assets/scss/common/icons/icons-5.scss +5 -5
  8. package/components/atoms/TheIcon3.vue +50 -50
  9. package/components/atoms/collapse/CollapseNav.vue +170 -170
  10. package/components/atoms/collapse/CollapseNavItem.vue +226 -226
  11. package/components/atoms/nav/NavBar.vue +147 -147
  12. package/components/atoms/perPage/PerPage.vue +58 -58
  13. package/components/atoms/table/dataGrid/DataGrid.vue +1717 -1717
  14. package/components/atoms/table/dataGrid/lib/config/settingsTable.ts +94 -94
  15. package/components/atoms/table/dataGrid/lib/utils/export.ts +16 -16
  16. package/components/atoms/tabs/VerticalTabs.vue +105 -105
  17. package/components/common/backup/storage/actions/add/lib/config/steps.ts +168 -168
  18. package/components/common/backup/storage/actions/add/steps/hostAccessibility/HostAccessibility.vue +52 -52
  19. package/components/common/backup/storage/actions/add/steps/readyComplete/ReadyComplete.vue +45 -45
  20. package/components/common/backup/storage/actions/delete/Delete.vue +65 -65
  21. package/components/common/browse/blocks/contents/filesNew/Skeleton.vue +18 -18
  22. package/components/common/context/lib/models/interfaces.ts +33 -33
  23. package/components/common/diagramMain/DiagramMain.vue +897 -897
  24. package/components/common/diagramMain/modals/lib/config/networkModal.ts +398 -398
  25. package/components/common/diagramMain/network/Network.vue +141 -141
  26. package/components/common/layout/theHeader/helpMenu/About.vue +82 -82
  27. package/components/common/layout/theHeader/userMenu/modals/preferences/view/ViewOld.vue +112 -112
  28. package/components/common/monitor/overview/OverviewOld.vue +139 -139
  29. package/components/common/pages/home/headline/Headline.vue +45 -45
  30. package/components/common/pages/home/headline/HeadlineOld.vue +42 -42
  31. package/components/common/pages/home/lib/models/interfaces.ts +48 -48
  32. package/components/common/pages/home/widgets/Widgets.vue +49 -49
  33. package/components/common/pages/home/widgets/WidgetsNew.vue +88 -88
  34. package/components/common/pages/home/widgets/WidgetsOld.vue +36 -36
  35. package/components/common/pages/home/widgets/hosts/Hosts.vue +27 -27
  36. package/components/common/pages/home/widgets/hosts/lib/config/items.ts +23 -23
  37. package/components/common/pages/home/widgets/vms/Vms.vue +26 -26
  38. package/components/common/pages/home/widgets/vms/VmsOld.vue +35 -35
  39. package/components/common/pages/home/widgets/vms/lib/config/items.ts +19 -19
  40. package/components/common/pages/packages/Packages.vue +208 -208
  41. package/components/common/pages/shortcuts/block/BlockOld.vue +68 -68
  42. package/components/common/readyToComplete/ReadyToComplete.vue +17 -17
  43. package/components/common/recursionTree/RecursionTree.vue +223 -223
  44. package/components/common/select/button/ButtonDropdown.vue +112 -112
  45. package/components/common/select/radio/RadioGroup.vue +135 -135
  46. package/components/common/spiceConsole/Drawer.vue +377 -377
  47. package/components/common/spiceConsole/SpiceConsole.vue +127 -127
  48. package/components/common/spiceConsole/lib/models/interfaces.ts +5 -5
  49. package/components/common/tools/Actions.vue +207 -207
  50. package/components/common/vm/actions/add/New.vue +647 -647
  51. package/components/common/vm/actions/add/Old.vue +388 -388
  52. package/components/common/vm/actions/add/folderTreeView/FolderTreeView.vue +72 -72
  53. package/components/common/vm/actions/add/folderTreeView/New.vue +40 -40
  54. package/components/common/vm/actions/add/folderTreeView/Old.vue +50 -50
  55. package/components/common/vm/actions/clone/Clone.vue +823 -823
  56. package/components/common/vm/actions/clone/lib/config/steps.ts +291 -291
  57. package/components/common/vm/actions/clone/toTemplate/lib/config/steps.ts +116 -116
  58. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardwareOld.vue +321 -321
  59. package/components/common/vm/actions/common/customizeHardware/virtualHardware/browseView/BrowseView.vue +227 -227
  60. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/Bus.vue +100 -100
  61. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDrive.vue +232 -232
  62. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDriveOld.vue +168 -168
  63. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Media.vue +25 -25
  64. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaNew.vue +78 -78
  65. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaOld.vue +50 -50
  66. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/Shares.vue +140 -140
  67. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/lib/config/options.ts +28 -28
  68. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/tooltip/TooltipNew.vue +154 -154
  69. package/components/common/vm/actions/common/customizeHardware/virtualHardware/lib/config/dropdownItems.ts +155 -155
  70. package/components/common/vm/actions/common/customizeHardware/virtualHardware/limit/Limit.vue +220 -220
  71. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/Memory.vue +307 -307
  72. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +385 -385
  73. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/Location.vue +154 -154
  74. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/LocationOld.vue +85 -85
  75. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetwork.vue +288 -288
  76. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/table/lib/config/config.ts +94 -94
  77. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddress.vue +119 -119
  78. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/NewPciDevice.vue +205 -205
  79. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoNew.vue +66 -66
  80. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoOld.vue +62 -62
  81. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIo.vue +31 -31
  82. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIoOld.vue +76 -76
  83. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/Note.vue +15 -15
  84. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteNew.vue +42 -42
  85. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteOld.vue +30 -30
  86. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGridOld.vue +84 -84
  87. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/Other.vue +16 -16
  88. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCard.vue +154 -154
  89. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/numberDisplays/NumberDisplays.vue +53 -53
  90. package/components/common/vm/actions/common/customizeHardware/vmoptions/Vmoptions.vue +155 -155
  91. package/components/common/vm/actions/common/customizeHardware/vmoptions/VmoptionsNew.vue +130 -130
  92. package/components/common/vm/actions/common/customizeHardware/vmoptions/VmoptionsOld.vue +113 -113
  93. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/delay/Delay.vue +32 -32
  94. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/Firmware.vue +60 -60
  95. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +174 -174
  96. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptions.vue +95 -95
  97. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptionsOld.vue +155 -155
  98. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/Keymap.vue +32 -32
  99. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/KeymapOld.vue +44 -44
  100. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/Password.vue +103 -103
  101. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirection.vue +28 -28
  102. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionOld.vue +44 -44
  103. package/components/common/vm/actions/common/select/compatibility/Old.vue +107 -107
  104. package/components/common/vm/actions/common/select/computeResource/treeView/TreeView.vue +118 -118
  105. package/components/common/vm/actions/common/select/createType/CreateType.vue +38 -38
  106. package/components/common/vm/actions/common/select/createType/lib/config/items.ts +48 -48
  107. package/components/common/vm/actions/common/select/createType/lib/models/interfaces.ts +5 -5
  108. package/components/common/vm/actions/common/select/name/Name.vue +174 -174
  109. package/components/common/vm/actions/common/select/os/Old.vue +152 -152
  110. package/components/common/vm/actions/common/select/os/Os.vue +139 -139
  111. package/components/common/vm/actions/common/select/storage/new/lib/models/interfaces.ts +5 -5
  112. package/components/common/vm/actions/common/select/storage/new/lib/utils/utils.ts +21 -21
  113. package/components/common/vm/actions/editSettings/EditSettings.vue +242 -242
  114. package/components/common/vm/actions/editSettings/new/Skeleton.vue +88 -88
  115. package/components/common/vmt/actions/add/lib/models/interfaces.ts +23 -23
  116. package/components/common/wizards/network/add/steps/SelectConnectionType.vue +104 -104
  117. package/components/common/wizards/network/add/steps/SelectedTargetDevice.vue +467 -467
  118. package/components/common/wizards/vm/migrate/Migrate.vue +349 -349
  119. package/components/common/wizards/vm/migrate/lib/config/constructDataReady.ts +220 -220
  120. package/components/common/wizards/vm/migrate/lib/config/steps.ts +157 -157
  121. package/components/common/wizards/vm/migrate/lib/validations.ts +68 -68
  122. package/components/common/wizards/vm/migrate/select/network/Network.vue +103 -103
  123. package/components/common/wizards/vm/migrate/select/network/table/network/lib/config/advancedTable.ts +91 -91
  124. package/components/common/wizards/vm/migrate/select/type/lib/config/typeOptions.ts +45 -45
  125. package/composables/productNameLocal.ts +30 -30
  126. package/composables/useAppVersion.ts +21 -21
  127. package/composables/useLocalStorage.ts +1 -1
  128. package/package.json +1 -1
  129. package/plugins/date.ts +233 -233
  130. package/plugins/panelStates.ts +70 -70
  131. package/plugins/text.ts +59 -59
  132. package/public/spice-console/lib/images/bitmap.js +203 -203
  133. package/public/spice-console/network/spicechannel.js +387 -387
  134. package/store/main/mutations.ts +7 -7
  135. package/store/main/state.ts +7 -7
  136. 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>