bfg-common 1.5.199 → 1.5.200

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 (125) hide show
  1. package/CODE_STYLE.md +109 -109
  2. package/components/atoms/TheIcon3.vue +50 -50
  3. package/components/atoms/perPage/PerPage.vue +58 -58
  4. package/components/atoms/table/dataGrid/lib/config/settingsTable.ts +94 -94
  5. package/components/atoms/table/dataGrid/lib/utils/export.ts +16 -16
  6. package/components/atoms/tabs/VerticalTabs.vue +105 -105
  7. package/components/common/browse/blocks/contents/filesNew/Skeleton.vue +18 -18
  8. package/components/common/context/lib/models/interfaces.ts +31 -31
  9. package/components/common/context/recursion/RecursionNew.vue +238 -238
  10. package/components/common/diagramMain/DiagramMain.vue +897 -897
  11. package/components/common/diagramMain/Header.vue +214 -214
  12. package/components/common/graph/GraphOld.vue +50 -50
  13. package/components/common/graph/graphNew/GraphNew.vue +194 -194
  14. package/components/common/layout/theHeader/helpMenu/About.vue +82 -82
  15. package/components/common/layout/theHeader/userMenu/modals/preferences/view/ViewOld.vue +112 -112
  16. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/table/lib/config/utils.ts +1040 -1040
  17. package/components/common/monitor/overview/OverviewOld.vue +139 -139
  18. package/components/common/pages/home/headline/Headline.vue +45 -45
  19. package/components/common/pages/home/headline/HeadlineOld.vue +42 -42
  20. package/components/common/pages/home/lib/models/interfaces.ts +48 -48
  21. package/components/common/pages/home/widgets/Widgets.vue +49 -49
  22. package/components/common/pages/home/widgets/WidgetsNew.vue +86 -86
  23. package/components/common/pages/home/widgets/WidgetsOld.vue +34 -34
  24. package/components/common/pages/home/widgets/hosts/Hosts.vue +27 -27
  25. package/components/common/pages/home/widgets/hosts/lib/config/items.ts +23 -23
  26. package/components/common/pages/home/widgets/vms/Vms.vue +26 -26
  27. package/components/common/pages/home/widgets/vms/VmsOld.vue +35 -35
  28. package/components/common/pages/home/widgets/vms/lib/config/items.ts +19 -19
  29. package/components/common/pages/packages/Packages.vue +208 -208
  30. package/components/common/pages/shortcuts/block/BlockOld.vue +68 -68
  31. package/components/common/readyToComplete/ReadyToComplete.vue +17 -17
  32. package/components/common/recursionTree/RecursionTree.vue +223 -223
  33. package/components/common/select/button/ButtonDropdown.vue +108 -108
  34. package/components/common/spiceConsole/lib/models/interfaces.ts +5 -5
  35. package/components/common/vm/actions/add/folderTreeView/FolderTreeView.vue +72 -72
  36. package/components/common/vm/actions/add/folderTreeView/New.vue +40 -40
  37. package/components/common/vm/actions/add/folderTreeView/Old.vue +50 -50
  38. package/components/common/vm/actions/add/lib/config/steps.ts +263 -263
  39. package/components/common/vm/actions/clone/lib/config/steps.ts +291 -291
  40. package/components/common/vm/actions/clone/toTemplate/lib/config/steps.ts +116 -116
  41. package/components/common/vm/actions/common/customizeHardware/CustomizeHardwareNew.vue +337 -337
  42. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardwareNew.vue +480 -480
  43. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardwareOld.vue +319 -319
  44. package/components/common/vm/actions/common/customizeHardware/virtualHardware/browseView/BrowseView.vue +219 -219
  45. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/Bus.vue +100 -100
  46. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDrive.vue +232 -232
  47. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDriveOld.vue +168 -168
  48. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Media.vue +25 -25
  49. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaNew.vue +78 -78
  50. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaOld.vue +50 -50
  51. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Cpu.vue +2 -17
  52. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/CpuNew.vue +190 -190
  53. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/model/ModelNew.vue +237 -237
  54. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/Shares.vue +140 -140
  55. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/lib/config/options.ts +28 -28
  56. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/tooltip/TooltipNew.vue +154 -154
  57. package/components/common/vm/actions/common/customizeHardware/virtualHardware/limit/Limit.vue +220 -220
  58. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/Memory.vue +288 -304
  59. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/MemoryNew.vue +154 -154
  60. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +375 -382
  61. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDiskNew.vue +289 -289
  62. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/Location.vue +151 -151
  63. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/LocationNew.vue +73 -73
  64. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/LocationOld.vue +83 -83
  65. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetwork.vue +288 -288
  66. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/table/lib/config/config.ts +94 -94
  67. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddress.vue +119 -119
  68. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/NewPciDevice.vue +205 -205
  69. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoNew.vue +66 -66
  70. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoOld.vue +62 -62
  71. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIo.vue +31 -31
  72. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIoOld.vue +76 -76
  73. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/Note.vue +15 -15
  74. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteNew.vue +42 -42
  75. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteOld.vue +30 -30
  76. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGridOld.vue +84 -84
  77. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/Other.vue +16 -16
  78. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/OtherNew.vue +30 -30
  79. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/inputDevices/InputDevicesNew.vue +40 -40
  80. package/components/common/vm/actions/common/customizeHardware/vmoptions/Vmoptions.vue +145 -145
  81. package/components/common/vm/actions/common/customizeHardware/vmoptions/VmoptionsNew.vue +106 -106
  82. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/BootOptionsNew.vue +81 -81
  83. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/delay/Delay.vue +32 -32
  84. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/Firmware.vue +60 -60
  85. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +174 -174
  86. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/OrderNew.vue +67 -67
  87. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptionsNew.vue +149 -149
  88. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/New.vue +140 -140
  89. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/copyPaste/CopyPasteNew.vue +31 -31
  90. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/fileTransfer/FileTransferNew.vue +31 -31
  91. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/Keymap.vue +32 -32
  92. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/PasswordNew.vue +128 -128
  93. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirection.vue +28 -28
  94. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionNew.vue +39 -39
  95. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionOld.vue +44 -44
  96. package/components/common/vm/actions/common/lib/utils/capabilities.ts +52 -52
  97. package/components/common/vm/actions/common/select/compatibility/Old.vue +107 -107
  98. package/components/common/vm/actions/common/select/computeResource/ComputeResource.vue +134 -134
  99. package/components/common/vm/actions/common/select/computeResource/treeView/New.vue +44 -44
  100. package/components/common/vm/actions/common/select/computeResource/treeView/TreeView.vue +118 -118
  101. package/components/common/vm/actions/common/select/createType/CreateType.vue +38 -38
  102. package/components/common/vm/actions/common/select/createType/New.vue +84 -84
  103. package/components/common/vm/actions/common/select/createType/lib/models/interfaces.ts +5 -5
  104. package/components/common/vm/actions/common/select/name/Name.vue +167 -167
  105. package/components/common/vm/actions/common/select/os/New.vue +122 -122
  106. package/components/common/vm/actions/common/select/os/Old.vue +152 -152
  107. package/components/common/vm/actions/common/select/os/Os.vue +139 -139
  108. package/components/common/vm/actions/common/select/storage/new/lib/models/interfaces.ts +5 -5
  109. package/components/common/vm/actions/common/select/storage/new/lib/utils/utils.ts +21 -21
  110. package/components/common/vm/actions/editSettings/new/Skeleton.vue +88 -88
  111. package/components/common/wizards/vm/migrate/lib/config/constructDataReady.ts +220 -220
  112. package/components/common/wizards/vm/migrate/lib/config/steps.ts +157 -157
  113. package/components/common/wizards/vm/migrate/lib/validations.ts +68 -68
  114. package/components/common/wizards/vm/migrate/select/computeResource/tableView/TableView.vue +137 -137
  115. package/components/common/wizards/vm/migrate/select/network/Network.vue +103 -103
  116. package/components/common/wizards/vm/migrate/select/network/table/network/lib/config/advancedTable.ts +91 -91
  117. package/composables/productNameLocal.ts +30 -30
  118. package/composables/useAppVersion.ts +21 -21
  119. package/package.json +2 -2
  120. package/plugins/date.ts +233 -233
  121. package/public/spice-console/lib/images/bitmap.js +203 -203
  122. package/public/spice-console/network/spicechannel.js +383 -383
  123. package/store/main/mutations.ts +7 -7
  124. package/store/main/state.ts +7 -7
  125. package/store/tasks/mappers/recentTasks.ts +64 -64
@@ -1,237 +1,237 @@
1
- <template>
2
- <ui-stack-block :has-children="false">
3
- <template #stackBlockKey>
4
- {{ localization.common.cpuModel }}
5
- </template>
6
- <template #stackBlockContent>
7
- <div class="cpu-model-content">
8
- <ui-select
9
- v-model="cpuModel"
10
- :items="props.cpuModelOptions"
11
- :disabled="props.disabled"
12
- :error-text="props.errorText"
13
- test-id="vm-wizard-cpu-model-field"
14
- size="sm"
15
- @change="onChangeCpuModel"
16
- />
17
-
18
- <div class="passthrough-host-cpu-wrap flex-align-center">
19
- <ui-checkbox
20
- v-model="passthroughHostCpu"
21
- :disabled="props.disabled"
22
- :label-text="localization.common.passthroughHostCpu"
23
- test-id="passthrough-host-cpu"
24
- @change="emits('change-passthrough-host-cpu', $event)"
25
- />
26
- <div id="passthrough-help-icon" class="flex-align-center relative">
27
- <ui-icon
28
- width="16"
29
- height="16"
30
- name="info"
31
- data-id="show-passthrough-help-icon"
32
- :class="[
33
- 'passthrough-help-icon cursor-pointer disabled',
34
- { active: isShowPassthroughHost },
35
- ]"
36
- @click.stop="isShowPassthroughHost = !isShowPassthroughHost"
37
- />
38
- <Teleport to="body">
39
- <ui-dropdown
40
- :show="isShowPassthroughHost"
41
- :items="[]"
42
- elem-id="passthrough-help-icon"
43
- test-id=""
44
- width="480px"
45
- left
46
- @hide="isShowPassthroughHost = false"
47
- >
48
- <template #content>
49
- <div class="help-content">
50
- <div class="headline">
51
- <ui-icon name="info-2" width="16" height="16" />
52
- <h3 class="help-title">
53
- {{ localization.mainNavigation.help }}
54
- </h3>
55
- <ui-icon
56
- name="close"
57
- width="16"
58
- height="16"
59
- class="cursor-pointer"
60
- @click="isShowPassthroughHost = false"
61
- />
62
- </div>
63
-
64
- <p class="help-text">
65
- Lorem ipsum dolor sit amet, consectetur adipisicing elit.
66
- A cum eius expedita, fuga mollitia perferendis quod soluta
67
- vel? Dolor, illo, nam? A consequatur, consequuntur eos
68
- impedit iusto labore sunt tempora!
69
- </p>
70
- </div>
71
- </template>
72
- </ui-dropdown>
73
- </Teleport>
74
- </div>
75
- </div>
76
- <div class="flex-align-center">
77
- <ui-checkbox
78
- v-model="hostModelCpu"
79
- :disabled="props.disabled"
80
- :label-text="localization.common.hostModelCpu"
81
- test-id="host-model-cpu"
82
- @change="emits('change-host-model-cpu', $event)"
83
- />
84
- <div id="host-model-help-icon" class="flex-align-center relative">
85
- <ui-icon
86
- width="16"
87
- height="16"
88
- name="info"
89
- data-id="show-host-model-help-icon"
90
- :class="[
91
- 'host-model-help-icon cursor-pointer disabled',
92
- { active: isShowHostModel },
93
- ]"
94
- @click.stop="isShowHostModel = !isShowHostModel"
95
- />
96
- <Teleport to="body">
97
- <ui-dropdown
98
- :show="isShowHostModel"
99
- :items="[]"
100
- elem-id="host-model-help-icon"
101
- test-id=""
102
- width="480px"
103
- left
104
- @hide="isShowHostModel = false"
105
- >
106
- <template #content>
107
- <div class="help-content">
108
- <div class="headline">
109
- <ui-icon name="info-2" width="16" height="16" />
110
- <h3 class="help-title">
111
- {{ localization.mainNavigation.help }}
112
- </h3>
113
- <ui-icon
114
- name="close"
115
- width="16"
116
- height="16"
117
- class="cursor-pointer"
118
- @click="isShowHostModel = false"
119
- />
120
- </div>
121
-
122
- <p class="help-text">
123
- Lorem ipsum dolor sit amet, consectetur adipisicing elit.
124
- A cum eius expedita, fuga mollitia perferendis quod soluta
125
- vel? Dolor, illo, nam? A consequatur, consequuntur eos
126
- impedit iusto labore sunt tempora!
127
- </p>
128
- </div>
129
- </template>
130
- </ui-dropdown>
131
- </Teleport>
132
- </div>
133
- </div>
134
- </div>
135
- </template>
136
- </ui-stack-block>
137
- </template>
138
-
139
- <script setup lang="ts">
140
- import type { UI_T_SelectedValue } from '~/node_modules/bfg-uikit/components/ui/select/models/types'
141
- import type {
142
- UI_I_Localization,
143
- UI_I_HTMLSelectElement,
144
- } from '~/lib/models/interfaces'
145
- import type { UI_I_OptionItem } from '~/components/atoms/lib/models/interfaces'
146
-
147
- const cpuModel = defineModel<string>('cpuModel')
148
- const passthroughHostCpu = defineModel<boolean>('passthroughHostCpu')
149
- const hostModelCpu = defineModel<boolean>('hostModelCpu')
150
-
151
- const props = defineProps<{
152
- cpuModelOptions: UI_I_OptionItem[]
153
- disabled: boolean
154
- errorText: string
155
- }>()
156
- const emits = defineEmits<{
157
- (event: 'change-cpu-model', value: UI_I_HTMLSelectElement): void
158
- (event: 'change-passthrough-host-cpu', value: Event): void
159
- (event: 'change-host-model-cpu', value: Event): void
160
- (event: 'remove-error'): void
161
- }>()
162
-
163
- const localization = computed<UI_I_Localization>(() => useLocal())
164
-
165
- const isShowPassthroughHost = ref<boolean>(false)
166
- const isShowHostModel = ref<boolean>(false)
167
-
168
- const onChangeCpuModel = (data: UI_T_SelectedValue): void => {
169
- emits('change-cpu-model', { target: { value: data } })
170
- }
171
- </script>
172
-
173
- <style>
174
- :root {
175
- --cpu-model-help-icon-color: #4d5d69;
176
- }
177
- :root.dark-theme {
178
- --cpu-model-help-icon-color: #e9eaec;
179
- }
180
- </style>
181
- <style scoped lang="scss">
182
- .cpu-model-content {
183
- display: flex;
184
- flex-direction: column;
185
- width: 224px;
186
- gap: 12px;
187
-
188
- :deep(.ui-main-select-toggle) {
189
- width: 100%;
190
- }
191
- }
192
-
193
- #passthrough-help-icon,
194
- #host-model-help-icon {
195
- margin-left: 8px;
196
- }
197
-
198
- .passthrough-help-icon,
199
- .host-model-help-icon {
200
- color: #9da6ad; // for light and dark
201
-
202
- &:hover {
203
- color: var(--cpu-model-help-icon-color);
204
- }
205
- &.active {
206
- color: #008fd6;
207
- }
208
- &.disabled {
209
- color: #bdc3c7;
210
- pointer-events: none;
211
- }
212
- }
213
- .help-content {
214
- padding: 16px;
215
-
216
- .headline {
217
- display: flex;
218
- align-items: center;
219
- gap: 8px;
220
- margin-bottom: 12px;
221
-
222
- .help-title {
223
- flex: 1;
224
- font-size: 14px;
225
- font-weight: 500;
226
- line-height: 16.94px;
227
- color: #4d5d69;
228
- }
229
- }
230
-
231
- .help-text {
232
- font-size: 13px;
233
- line-height: 15.73px;
234
- color: #4d5d69;
235
- }
236
- }
237
- </style>
1
+ <template>
2
+ <ui-stack-block :has-children="false">
3
+ <template #stackBlockKey>
4
+ {{ localization.common.cpuModel }}
5
+ </template>
6
+ <template #stackBlockContent>
7
+ <div class="cpu-model-content">
8
+ <ui-select
9
+ v-model="cpuModel"
10
+ :items="props.cpuModelOptions"
11
+ :disabled="props.disabled"
12
+ :error-text="props.errorText"
13
+ test-id="vm-wizard-cpu-model-field"
14
+ size="sm"
15
+ @change="onChangeCpuModel"
16
+ />
17
+
18
+ <div class="passthrough-host-cpu-wrap flex-align-center">
19
+ <ui-checkbox
20
+ v-model="passthroughHostCpu"
21
+ :disabled="props.disabled"
22
+ :label-text="localization.common.passthroughHostCpu"
23
+ test-id="passthrough-host-cpu"
24
+ @change="emits('change-passthrough-host-cpu', $event)"
25
+ />
26
+ <div id="passthrough-help-icon" class="flex-align-center relative">
27
+ <ui-icon
28
+ width="16"
29
+ height="16"
30
+ name="info"
31
+ data-id="show-passthrough-help-icon"
32
+ :class="[
33
+ 'passthrough-help-icon cursor-pointer disabled',
34
+ { active: isShowPassthroughHost },
35
+ ]"
36
+ @click.stop="isShowPassthroughHost = !isShowPassthroughHost"
37
+ />
38
+ <Teleport to="body">
39
+ <ui-dropdown
40
+ :show="isShowPassthroughHost"
41
+ :items="[]"
42
+ elem-id="passthrough-help-icon"
43
+ test-id=""
44
+ width="480px"
45
+ left
46
+ @hide="isShowPassthroughHost = false"
47
+ >
48
+ <template #content>
49
+ <div class="help-content">
50
+ <div class="headline">
51
+ <ui-icon name="info-2" width="16" height="16" />
52
+ <h3 class="help-title">
53
+ {{ localization.mainNavigation.help }}
54
+ </h3>
55
+ <ui-icon
56
+ name="close"
57
+ width="16"
58
+ height="16"
59
+ class="cursor-pointer"
60
+ @click="isShowPassthroughHost = false"
61
+ />
62
+ </div>
63
+
64
+ <p class="help-text">
65
+ Lorem ipsum dolor sit amet, consectetur adipisicing elit.
66
+ A cum eius expedita, fuga mollitia perferendis quod soluta
67
+ vel? Dolor, illo, nam? A consequatur, consequuntur eos
68
+ impedit iusto labore sunt tempora!
69
+ </p>
70
+ </div>
71
+ </template>
72
+ </ui-dropdown>
73
+ </Teleport>
74
+ </div>
75
+ </div>
76
+ <div class="flex-align-center">
77
+ <ui-checkbox
78
+ v-model="hostModelCpu"
79
+ :disabled="props.disabled"
80
+ :label-text="localization.common.hostModelCpu"
81
+ test-id="host-model-cpu"
82
+ @change="emits('change-host-model-cpu', $event)"
83
+ />
84
+ <div id="host-model-help-icon" class="flex-align-center relative">
85
+ <ui-icon
86
+ width="16"
87
+ height="16"
88
+ name="info"
89
+ data-id="show-host-model-help-icon"
90
+ :class="[
91
+ 'host-model-help-icon cursor-pointer disabled',
92
+ { active: isShowHostModel },
93
+ ]"
94
+ @click.stop="isShowHostModel = !isShowHostModel"
95
+ />
96
+ <Teleport to="body">
97
+ <ui-dropdown
98
+ :show="isShowHostModel"
99
+ :items="[]"
100
+ elem-id="host-model-help-icon"
101
+ test-id=""
102
+ width="480px"
103
+ left
104
+ @hide="isShowHostModel = false"
105
+ >
106
+ <template #content>
107
+ <div class="help-content">
108
+ <div class="headline">
109
+ <ui-icon name="info-2" width="16" height="16" />
110
+ <h3 class="help-title">
111
+ {{ localization.mainNavigation.help }}
112
+ </h3>
113
+ <ui-icon
114
+ name="close"
115
+ width="16"
116
+ height="16"
117
+ class="cursor-pointer"
118
+ @click="isShowHostModel = false"
119
+ />
120
+ </div>
121
+
122
+ <p class="help-text">
123
+ Lorem ipsum dolor sit amet, consectetur adipisicing elit.
124
+ A cum eius expedita, fuga mollitia perferendis quod soluta
125
+ vel? Dolor, illo, nam? A consequatur, consequuntur eos
126
+ impedit iusto labore sunt tempora!
127
+ </p>
128
+ </div>
129
+ </template>
130
+ </ui-dropdown>
131
+ </Teleport>
132
+ </div>
133
+ </div>
134
+ </div>
135
+ </template>
136
+ </ui-stack-block>
137
+ </template>
138
+
139
+ <script setup lang="ts">
140
+ import type { UI_T_SelectedValue } from '~/node_modules/bfg-uikit/components/ui/select/models/types'
141
+ import type {
142
+ UI_I_Localization,
143
+ UI_I_HTMLSelectElement,
144
+ } from '~/lib/models/interfaces'
145
+ import type { UI_I_OptionItem } from '~/components/atoms/lib/models/interfaces'
146
+
147
+ const cpuModel = defineModel<string>('cpuModel')
148
+ const passthroughHostCpu = defineModel<boolean>('passthroughHostCpu')
149
+ const hostModelCpu = defineModel<boolean>('hostModelCpu')
150
+
151
+ const props = defineProps<{
152
+ cpuModelOptions: UI_I_OptionItem[]
153
+ disabled: boolean
154
+ errorText: string
155
+ }>()
156
+ const emits = defineEmits<{
157
+ (event: 'change-cpu-model', value: UI_I_HTMLSelectElement): void
158
+ (event: 'change-passthrough-host-cpu', value: Event): void
159
+ (event: 'change-host-model-cpu', value: Event): void
160
+ (event: 'remove-error'): void
161
+ }>()
162
+
163
+ const localization = computed<UI_I_Localization>(() => useLocal())
164
+
165
+ const isShowPassthroughHost = ref<boolean>(false)
166
+ const isShowHostModel = ref<boolean>(false)
167
+
168
+ const onChangeCpuModel = (data: UI_T_SelectedValue): void => {
169
+ emits('change-cpu-model', { target: { value: data } })
170
+ }
171
+ </script>
172
+
173
+ <style>
174
+ :root {
175
+ --cpu-model-help-icon-color: #4d5d69;
176
+ }
177
+ :root.dark-theme {
178
+ --cpu-model-help-icon-color: #e9eaec;
179
+ }
180
+ </style>
181
+ <style scoped lang="scss">
182
+ .cpu-model-content {
183
+ display: flex;
184
+ flex-direction: column;
185
+ width: 224px;
186
+ gap: 12px;
187
+
188
+ :deep(.ui-main-select-toggle) {
189
+ width: 100%;
190
+ }
191
+ }
192
+
193
+ #passthrough-help-icon,
194
+ #host-model-help-icon {
195
+ margin-left: 8px;
196
+ }
197
+
198
+ .passthrough-help-icon,
199
+ .host-model-help-icon {
200
+ color: #9da6ad; // for light and dark
201
+
202
+ &:hover {
203
+ color: var(--cpu-model-help-icon-color);
204
+ }
205
+ &.active {
206
+ color: #008fd6;
207
+ }
208
+ &.disabled {
209
+ color: #bdc3c7;
210
+ pointer-events: none;
211
+ }
212
+ }
213
+ .help-content {
214
+ padding: 16px;
215
+
216
+ .headline {
217
+ display: flex;
218
+ align-items: center;
219
+ gap: 8px;
220
+ margin-bottom: 12px;
221
+
222
+ .help-title {
223
+ flex: 1;
224
+ font-size: 14px;
225
+ font-weight: 500;
226
+ line-height: 16.94px;
227
+ color: #4d5d69;
228
+ }
229
+ }
230
+
231
+ .help-text {
232
+ font-size: 13px;
233
+ line-height: 15.73px;
234
+ color: #4d5d69;
235
+ }
236
+ }
237
+ </style>