bfg-common 1.5.408 → 1.5.410

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 (176) 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/localization/local_be.json +11 -1
  7. package/assets/localization/local_en.json +11 -1
  8. package/assets/localization/local_hy.json +11 -1
  9. package/assets/localization/local_kk.json +11 -1
  10. package/assets/localization/local_ru.json +12 -2
  11. package/assets/localization/local_zh.json +11 -1
  12. package/components/atoms/TheIcon3.vue +50 -50
  13. package/components/atoms/collapse/CollapseNav.vue +170 -170
  14. package/components/atoms/collapse/CollapseNavItem.vue +226 -226
  15. package/components/atoms/nav/NavBar.vue +159 -159
  16. package/components/atoms/perPage/PerPage.vue +58 -58
  17. package/components/atoms/table/dataGrid/DataGrid.vue +1717 -1717
  18. package/components/atoms/table/dataGrid/DataGridColumnSwitch.vue +277 -277
  19. package/components/atoms/table/dataGrid/lib/config/settingsTable.ts +94 -94
  20. package/components/atoms/table/dataGrid/lib/utils/export.ts +16 -16
  21. package/components/atoms/tabs/VerticalTabs.vue +105 -105
  22. package/components/common/backup/storage/actions/add/lib/config/steps.ts +168 -168
  23. package/components/common/backup/storage/actions/add/steps/hostAccessibility/HostAccessibility.vue +52 -52
  24. package/components/common/backup/storage/actions/add/steps/readyComplete/ReadyComplete.vue +45 -45
  25. package/components/common/backup/storage/actions/delete/Delete.vue +65 -65
  26. package/components/common/browse/blocks/Container.vue +234 -234
  27. package/components/common/browse/blocks/contents/filesNew/Skeleton.vue +18 -18
  28. package/components/common/browse/blocks/lib/models/types.ts +1 -1
  29. package/components/common/browse/lib/models/interfaces.ts +5 -5
  30. package/components/common/context/lib/models/interfaces.ts +33 -33
  31. package/components/common/diagramMain/adapter/AdapterItems.vue +61 -61
  32. package/components/common/diagramMain/lib/config/initial.ts +50 -50
  33. package/components/common/diagramMain/lib/models/types.ts +21 -21
  34. package/components/common/diagramMain/lib/utils/utils.ts +331 -331
  35. package/components/common/diagramMain/modals/editSettings/ConfirmTeamingSettingsModal.vue +40 -40
  36. package/components/common/diagramMain/modals/editSettings/tabs/NetworkProperties.vue +214 -214
  37. package/components/common/diagramMain/modals/editSettings/tabs/Security.vue +189 -189
  38. package/components/common/diagramMain/modals/editSettings/tabs/SwitchProperties.vue +163 -163
  39. package/components/common/diagramMain/modals/editSettings/tabs/TeamingFailover.vue +175 -175
  40. package/components/common/diagramMain/modals/editSettings/tabs/port/IpvFourSettings.vue +346 -346
  41. package/components/common/diagramMain/modals/lib/config/initial.ts +180 -180
  42. package/components/common/diagramMain/modals/lib/config/networkModal.ts +398 -398
  43. package/components/common/diagramMain/modals/lib/config/vmKernelAdapter.ts +90 -90
  44. package/components/common/diagramMain/modals/lib/mappers/mappers.ts +87 -87
  45. package/components/common/diagramMain/modals/lib/utils/index.ts +24 -24
  46. package/components/common/diagramMain/modals/migrateVmkernelAdapter/lib/config/steps.ts +114 -114
  47. package/components/common/diagramMain/modals/migrateVmkernelAdapter/steps/ConnectionSettings.vue +169 -169
  48. package/components/common/diagramMain/modals/migrateVmkernelAdapter/steps/SelectVmkernelAdapter.vue +159 -159
  49. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/common.ts +14 -14
  50. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/connectionSettings.ts +137 -137
  51. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/selectVmkernelAdapter.ts +52 -52
  52. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/validations.ts +19 -19
  53. package/components/common/diagramMain/network/Network.vue +141 -141
  54. package/components/common/diagramMain/port/Ports.vue +47 -47
  55. package/components/common/layout/theHeader/helpMenu/About.vue +82 -82
  56. package/components/common/layout/theHeader/userMenu/modals/preferences/view/ViewOld.vue +112 -112
  57. package/components/common/monitor/overview/OverviewOld.vue +139 -139
  58. package/components/common/pages/home/headline/Headline.vue +45 -45
  59. package/components/common/pages/home/headline/HeadlineOld.vue +42 -42
  60. package/components/common/pages/home/lib/models/interfaces.ts +48 -48
  61. package/components/common/pages/home/widgets/Widgets.vue +49 -49
  62. package/components/common/pages/home/widgets/WidgetsNew.vue +88 -88
  63. package/components/common/pages/home/widgets/WidgetsOld.vue +36 -36
  64. package/components/common/pages/home/widgets/hosts/Hosts.vue +27 -27
  65. package/components/common/pages/home/widgets/hosts/lib/config/items.ts +23 -23
  66. package/components/common/pages/home/widgets/vms/Vms.vue +26 -26
  67. package/components/common/pages/home/widgets/vms/VmsOld.vue +35 -35
  68. package/components/common/pages/home/widgets/vms/lib/config/items.ts +19 -19
  69. package/components/common/pages/packages/Packages.vue +208 -208
  70. package/components/common/pages/shortcuts/block/BlockOld.vue +68 -68
  71. package/components/common/readyToComplete/ReadyToComplete.vue +17 -17
  72. package/components/common/recursionTree/RecursionTree.vue +223 -223
  73. package/components/common/select/button/ButtonDropdown.vue +112 -112
  74. package/components/common/select/radio/RadioGroup.vue +137 -137
  75. package/components/common/spiceConsole/Drawer.vue +381 -381
  76. package/components/common/spiceConsole/SpiceConsole.vue +127 -127
  77. package/components/common/spiceConsole/lib/models/interfaces.ts +5 -5
  78. package/components/common/tools/Actions.vue +207 -207
  79. package/components/common/vm/actions/add/Old.vue +388 -388
  80. package/components/common/vm/actions/add/folderTreeView/FolderTreeView.vue +72 -72
  81. package/components/common/vm/actions/add/folderTreeView/New.vue +40 -40
  82. package/components/common/vm/actions/add/folderTreeView/Old.vue +50 -50
  83. package/components/common/vm/actions/clone/Clone.vue +823 -823
  84. package/components/common/vm/actions/clone/lib/config/steps.ts +291 -291
  85. package/components/common/vm/actions/clone/toTemplate/lib/config/steps.ts +116 -116
  86. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardwareOld.vue +321 -321
  87. package/components/common/vm/actions/common/customizeHardware/virtualHardware/browseView/BrowseView.vue +227 -227
  88. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/Bus.vue +100 -100
  89. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDrive.vue +232 -232
  90. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDriveOld.vue +168 -168
  91. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Media.vue +25 -25
  92. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaNew.vue +78 -78
  93. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaOld.vue +50 -50
  94. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/Shares.vue +140 -140
  95. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/lib/config/options.ts +28 -28
  96. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/tooltip/TooltipNew.vue +154 -154
  97. package/components/common/vm/actions/common/customizeHardware/virtualHardware/lib/config/dropdownItems.ts +155 -155
  98. package/components/common/vm/actions/common/customizeHardware/virtualHardware/limit/Limit.vue +220 -220
  99. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/Memory.vue +307 -307
  100. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +385 -385
  101. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/Location.vue +154 -154
  102. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/LocationOld.vue +85 -85
  103. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetwork.vue +288 -288
  104. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/table/lib/config/config.ts +94 -94
  105. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddress.vue +119 -119
  106. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/NewPciDevice.vue +205 -205
  107. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoNew.vue +66 -66
  108. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoOld.vue +62 -62
  109. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIo.vue +31 -31
  110. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIoOld.vue +76 -76
  111. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/Note.vue +15 -15
  112. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteNew.vue +42 -42
  113. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteOld.vue +30 -30
  114. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGridOld.vue +84 -84
  115. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/Other.vue +16 -16
  116. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCard.vue +154 -154
  117. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/numberDisplays/NumberDisplays.vue +53 -53
  118. package/components/common/vm/actions/common/customizeHardware/vmoptions/Vmoptions.vue +155 -155
  119. package/components/common/vm/actions/common/customizeHardware/vmoptions/VmoptionsNew.vue +130 -130
  120. package/components/common/vm/actions/common/customizeHardware/vmoptions/VmoptionsOld.vue +113 -113
  121. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/delay/Delay.vue +32 -32
  122. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/Firmware.vue +60 -60
  123. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +174 -174
  124. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptions.vue +95 -95
  125. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptionsOld.vue +155 -155
  126. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/Keymap.vue +32 -32
  127. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/KeymapOld.vue +44 -44
  128. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/Password.vue +103 -103
  129. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirection.vue +28 -28
  130. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionOld.vue +44 -44
  131. package/components/common/vm/actions/common/select/compatibility/Old.vue +107 -107
  132. package/components/common/vm/actions/common/select/computeResource/ComputeResource.vue +143 -143
  133. package/components/common/vm/actions/common/select/computeResource/New.vue +184 -184
  134. package/components/common/vm/actions/common/select/computeResource/treeView/TreeView.vue +131 -131
  135. package/components/common/vm/actions/common/select/createType/CreateType.vue +38 -38
  136. package/components/common/vm/actions/common/select/createType/lib/config/items.ts +48 -48
  137. package/components/common/vm/actions/common/select/createType/lib/models/interfaces.ts +5 -5
  138. package/components/common/vm/actions/common/select/os/Old.vue +152 -152
  139. package/components/common/vm/actions/common/select/os/Os.vue +139 -139
  140. package/components/common/vm/actions/common/select/storage/Storage.vue +155 -155
  141. package/components/common/vm/actions/common/select/storage/new/New.vue +300 -300
  142. package/components/common/vm/actions/common/select/storage/new/lib/models/interfaces.ts +5 -5
  143. package/components/common/vm/actions/common/select/storage/new/lib/utils/utils.ts +21 -21
  144. package/components/common/vm/actions/common/select/template/old/Old.vue +50 -50
  145. package/components/common/vm/actions/editSettings/EditSettings.vue +242 -242
  146. package/components/common/vm/actions/editSettings/new/Skeleton.vue +88 -88
  147. package/components/common/vmt/actions/add/lib/models/interfaces.ts +23 -23
  148. package/components/common/wizards/datastore/add/New.vue +7 -6
  149. package/components/common/wizards/datastore/add/steps/hostAccessibility/table/new/New.vue +9 -4
  150. package/components/common/wizards/datastore/add/steps/nameAndConfigure/NameAndConfigure.vue +13 -5
  151. package/components/common/wizards/datastore/add/steps/nameAndConfigure/NameAndConfigureNew.vue +4 -0
  152. package/components/common/wizards/datastore/add/steps/nameAndDevice/NameAndDeviceNew.vue +1 -0
  153. package/components/common/wizards/datastore/add/steps/nameAndDevice/table/new/New.vue +12 -4
  154. package/components/common/wizards/datastore/add/steps/nameAndDevice/table/new/lib/models/enums.ts +1 -1
  155. package/components/common/wizards/datastore/add/steps/typeMode/lib/config/typeOptions.ts +43 -43
  156. package/components/common/wizards/network/add/steps/SelectConnectionType.vue +104 -104
  157. package/components/common/wizards/network/add/steps/SelectedTargetDevice.vue +467 -467
  158. package/components/common/wizards/vm/migrate/Migrate.vue +349 -349
  159. package/components/common/wizards/vm/migrate/lib/config/constructDataReady.ts +220 -220
  160. package/components/common/wizards/vm/migrate/lib/config/steps.ts +157 -157
  161. package/components/common/wizards/vm/migrate/lib/validations.ts +68 -68
  162. package/components/common/wizards/vm/migrate/select/network/Network.vue +103 -103
  163. package/components/common/wizards/vm/migrate/select/network/table/network/lib/config/advancedTable.ts +91 -91
  164. package/components/common/wizards/vm/migrate/select/type/lib/config/typeOptions.ts +45 -45
  165. package/composables/productNameLocal.ts +30 -30
  166. package/composables/useAppVersion.ts +21 -21
  167. package/package.json +2 -2
  168. package/plugins/date.ts +233 -233
  169. package/plugins/panelStates.ts +70 -70
  170. package/plugins/text.ts +59 -59
  171. package/public/spice-console/lib/images/bitmap.js +203 -203
  172. package/public/spice-console/network/spicechannel.js +390 -390
  173. package/store/main/mutations.ts +7 -7
  174. package/store/main/state.ts +7 -7
  175. package/store/tasks/lib/models/enums.ts +4 -4
  176. package/store/tasks/mappers/recentTasks.ts +79 -79
@@ -1,112 +1,112 @@
1
- <template>
2
- <form id="view-form" class="compact">
3
- <div class="description">
4
- {{ props.description }}
5
- </div>
6
-
7
- <div class="flex-align-center" :title="localization.common.inDevelopment">
8
- <label for="view">{{ localization.common.newView }}</label>
9
- <input
10
- id="view"
11
- v-model="newViewLocal"
12
- :disabled="isDisabled"
13
- type="checkbox"
14
- class="switch"
15
- />
16
- </div>
17
- </form>
18
- </template>
19
-
20
- <script setup lang="ts">
21
- import type { UI_I_Localization } from '~/lib/models/interfaces'
22
-
23
- const props = defineProps<{
24
- description: string
25
- }>()
26
-
27
- const localization = computed<UI_I_Localization>(() => useLocal())
28
-
29
- const newViewLocal = defineModel<boolean>()
30
-
31
- const isDisabled = ref<boolean>(true)
32
- // @ts-ignore
33
- window.tools = new Proxy(
34
- {},
35
- {
36
- set: function (_obj, prop, value): boolean {
37
- if (prop === 'isDev') isDisabled.value = !value
38
- return true
39
- },
40
- }
41
- )
42
- </script>
43
-
44
- <style lang="scss" scoped>
45
- .description {
46
- margin-bottom: 10px;
47
- }
48
-
49
- label {
50
- margin-right: 6px;
51
- }
52
-
53
- input[type='checkbox'] {
54
- --active: var(--checkbox-value-active-color);
55
- --active-inner: var(--checkbox-mark-color);
56
- --border: var(--checkbox-mark-color);
57
- --background: var(--checkbox-mark-background-color);
58
- -webkit-appearance: none;
59
- -moz-appearance: none;
60
- height: 20px;
61
- outline: none;
62
- display: inline-block;
63
- vertical-align: top;
64
- position: relative;
65
- margin: 0;
66
- cursor: pointer;
67
- border: 1px solid var(--bc, var(--border));
68
- background: var(--b, var(--background));
69
- transition: background 0.3s, border-color 0.3s, box-shadow 0.2s;
70
- &:after {
71
- content: '';
72
- display: block;
73
- left: 0;
74
- top: 0;
75
- position: absolute;
76
- transition: transform var(--d-t, 0.3s) var(--d-t-e, ease),
77
- opacity var(--d-o, 0.2s);
78
- }
79
- &:checked {
80
- --b: var(--active);
81
- --bc: var(--active);
82
- --d-o: 0.3s;
83
- --d-t: 0.6s;
84
- --d-t-e: cubic-bezier(0.2, 0.85, 0.32, 1.2);
85
- }
86
- }
87
- input[type='checkbox'] {
88
- &.switch {
89
- width: 35px;
90
- border-radius: 11px;
91
- &:after {
92
- left: 2px;
93
- top: 2px;
94
- bottom: 2px;
95
- border-radius: 50%;
96
- width: 14px;
97
- height: 14px;
98
- border: 1px solid var(--bc, var(--border));
99
- background: var(--ab, var(--border));
100
- transform: translateX(var(--x, 0));
101
- }
102
- &:checked {
103
- --ab: var(--active-inner);
104
- --x: 14px;
105
- }
106
- &:disabled {
107
- cursor: not-allowed;
108
- opacity: 0.5;
109
- }
110
- }
111
- }
112
- </style>
1
+ <template>
2
+ <form id="view-form" class="compact">
3
+ <div class="description">
4
+ {{ props.description }}
5
+ </div>
6
+
7
+ <div class="flex-align-center" :title="localization.common.inDevelopment">
8
+ <label for="view">{{ localization.common.newView }}</label>
9
+ <input
10
+ id="view"
11
+ v-model="newViewLocal"
12
+ :disabled="isDisabled"
13
+ type="checkbox"
14
+ class="switch"
15
+ />
16
+ </div>
17
+ </form>
18
+ </template>
19
+
20
+ <script setup lang="ts">
21
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
22
+
23
+ const props = defineProps<{
24
+ description: string
25
+ }>()
26
+
27
+ const localization = computed<UI_I_Localization>(() => useLocal())
28
+
29
+ const newViewLocal = defineModel<boolean>()
30
+
31
+ const isDisabled = ref<boolean>(true)
32
+ // @ts-ignore
33
+ window.tools = new Proxy(
34
+ {},
35
+ {
36
+ set: function (_obj, prop, value): boolean {
37
+ if (prop === 'isDev') isDisabled.value = !value
38
+ return true
39
+ },
40
+ }
41
+ )
42
+ </script>
43
+
44
+ <style lang="scss" scoped>
45
+ .description {
46
+ margin-bottom: 10px;
47
+ }
48
+
49
+ label {
50
+ margin-right: 6px;
51
+ }
52
+
53
+ input[type='checkbox'] {
54
+ --active: var(--checkbox-value-active-color);
55
+ --active-inner: var(--checkbox-mark-color);
56
+ --border: var(--checkbox-mark-color);
57
+ --background: var(--checkbox-mark-background-color);
58
+ -webkit-appearance: none;
59
+ -moz-appearance: none;
60
+ height: 20px;
61
+ outline: none;
62
+ display: inline-block;
63
+ vertical-align: top;
64
+ position: relative;
65
+ margin: 0;
66
+ cursor: pointer;
67
+ border: 1px solid var(--bc, var(--border));
68
+ background: var(--b, var(--background));
69
+ transition: background 0.3s, border-color 0.3s, box-shadow 0.2s;
70
+ &:after {
71
+ content: '';
72
+ display: block;
73
+ left: 0;
74
+ top: 0;
75
+ position: absolute;
76
+ transition: transform var(--d-t, 0.3s) var(--d-t-e, ease),
77
+ opacity var(--d-o, 0.2s);
78
+ }
79
+ &:checked {
80
+ --b: var(--active);
81
+ --bc: var(--active);
82
+ --d-o: 0.3s;
83
+ --d-t: 0.6s;
84
+ --d-t-e: cubic-bezier(0.2, 0.85, 0.32, 1.2);
85
+ }
86
+ }
87
+ input[type='checkbox'] {
88
+ &.switch {
89
+ width: 35px;
90
+ border-radius: 11px;
91
+ &:after {
92
+ left: 2px;
93
+ top: 2px;
94
+ bottom: 2px;
95
+ border-radius: 50%;
96
+ width: 14px;
97
+ height: 14px;
98
+ border: 1px solid var(--bc, var(--border));
99
+ background: var(--ab, var(--border));
100
+ transform: translateX(var(--x, 0));
101
+ }
102
+ &:checked {
103
+ --ab: var(--active-inner);
104
+ --x: 14px;
105
+ }
106
+ &:disabled {
107
+ cursor: not-allowed;
108
+ opacity: 0.5;
109
+ }
110
+ }
111
+ }
112
+ </style>
@@ -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>