bfg-common 1.1.80 → 1.1.82

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 (84) hide show
  1. package/components/atoms/alert/Notification.vue +167 -167
  2. package/components/atoms/autocomplete/Autocomplete.vue +236 -236
  3. package/components/atoms/datepicker/Datepicker.vue +612 -612
  4. package/components/atoms/list/SelectList.vue +62 -62
  5. package/components/atoms/nav/NavBar.vue +116 -116
  6. package/components/atoms/nav/VerticalNavBar.vue +89 -89
  7. package/components/atoms/notificationBar/NotificationBar.vue +175 -175
  8. package/components/atoms/perPage/PerPage.vue +52 -52
  9. package/components/atoms/popup/SimplePopup.vue +90 -90
  10. package/components/atoms/step/VerticalStep.vue +104 -104
  11. package/components/atoms/switch/Switch.vue +107 -107
  12. package/components/atoms/table/dataGrid/DataGridColumnSwitch.vue +206 -206
  13. package/components/atoms/table/dataGrid/DataGridPage.vue +189 -189
  14. package/components/atoms/tabs/Tabs.vue +189 -189
  15. package/components/atoms/tooltip/Signpost.vue +224 -224
  16. package/components/common/adapterManager/AddAdapterWarningModal.vue +82 -82
  17. package/components/common/adapterManager/NoActiveAdaptersModal.vue +62 -62
  18. package/components/common/adapterManager/NoConnectedActiveAdaptersModal.vue +62 -62
  19. package/components/common/browse/Browse.vue +182 -182
  20. package/components/common/browse/blocks/Title.vue +66 -66
  21. package/components/common/diagramMain/Diagram.vue +186 -186
  22. package/components/common/diagramMain/DiagramMain.vue +986 -986
  23. package/components/common/diagramMain/adapter/AdapterItem.vue +227 -227
  24. package/components/common/diagramMain/adapter/AdapterItems.vue +57 -57
  25. package/components/common/diagramMain/modals/editSettings/tabs/port/IpvFourSettings.vue +339 -339
  26. package/components/common/diagramMain/modals/editSettings/tabs/port/PortProperties.vue +202 -202
  27. package/components/common/diagramMain/modals/remove/RemoveModal.vue +226 -226
  28. package/components/common/diagramMain/network/Contents.vue +238 -238
  29. package/components/common/feedback/Buttons.vue +232 -232
  30. package/components/common/feedback/Message.vue +468 -468
  31. package/components/common/feedback/VisitPortal.vue +54 -54
  32. package/components/common/help/navbar/left/Left.vue +159 -159
  33. package/components/common/help/navbar/left/utils/constructAccordion.ts +27 -27
  34. package/components/common/mainNavigationPanel/MainNavigationPanel.vue +359 -359
  35. package/components/common/modals/Rename.vue +165 -165
  36. package/components/common/monitor/advanced/Advanced.vue +234 -221
  37. package/components/common/monitor/advanced/tools/Tools.vue +428 -441
  38. package/components/common/monitor/advanced/tools/chartOptionsModal/ChartOptionsModal.vue +484 -424
  39. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/Counters.vue +8 -0
  40. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/table/Table.vue +9 -0
  41. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/table/config/utils.ts +3 -2
  42. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/Timespan.vue +79 -73
  43. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/object/Object.vue +66 -19
  44. package/components/common/monitor/advanced/tools/chartOptionsModal/models/models.ts +19 -0
  45. package/components/common/monitor/models/interfaces.ts +1 -0
  46. package/components/common/perPage/PerPage.vue +51 -51
  47. package/components/common/recursionTree/RecursionTree.vue +201 -201
  48. package/components/common/vm/actions/add/config/capabilities.ts +777 -777
  49. package/components/common/vm/actions/add/customizeHardware/virtualHardware/VirtualHardware.vue +646 -646
  50. package/components/common/vm/actions/add/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDrive.vue +246 -246
  51. package/components/common/vm/actions/add/customizeHardware/virtualHardware/cpu/CoresPerSocket.vue +108 -108
  52. package/components/common/vm/actions/add/customizeHardware/virtualHardware/cpu/Cpu.vue +382 -375
  53. package/components/common/vm/actions/add/customizeHardware/virtualHardware/limit/Limit.vue +234 -234
  54. package/components/common/vm/actions/add/customizeHardware/virtualHardware/limit/config/options.ts +28 -28
  55. package/components/common/vm/actions/add/customizeHardware/virtualHardware/memory/Memory.vue +316 -316
  56. package/components/common/vm/actions/add/customizeHardware/virtualHardware/memory/config/memoryOptions.ts +35 -35
  57. package/components/common/vm/actions/add/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +445 -445
  58. package/components/common/vm/actions/add/customizeHardware/virtualHardware/reservation/Reservation.vue +235 -235
  59. package/components/common/vm/actions/add/customizeHardware/virtualHardware/videoCard/VideoCard.vue +177 -177
  60. package/components/common/vm/actions/add/customizeHardware/vmoptions/bootOptions/order/Order.vue +197 -197
  61. package/components/common/vm/actions/add/customizeHardware/vmoptions/generalOptions/GeneralOptions.vue +180 -180
  62. package/components/common/vm/actions/add/customizeHardware/vmoptions/remoteConsoleOptions/CopyPaste.vue +51 -51
  63. package/components/common/vm/actions/add/customizeHardware/vmoptions/remoteConsoleOptions/keymap/Keymap.vue +55 -55
  64. package/components/common/vm/actions/add/select/storage/config/config.ts +154 -154
  65. package/components/common/wizards/datastore/add/nfs/configuration/Configuration.vue +373 -373
  66. package/components/common/wizards/datastore/add/nfs/configuration/serversList/ServersList.vue +123 -123
  67. package/components/common/wizards/datastore/add/nfs/kerberosAuthentication/KerberosAuthentication.vue +54 -54
  68. package/components/common/wizards/datastore/add/sharedStorm/deviceSelection/hostTable/HostTable.vue +131 -131
  69. package/components/common/wizards/datastore/add/sharedStorm/partitionConfiguration/PartitionConfiguration.vue +230 -230
  70. package/models/store/interfaces.ts +37 -37
  71. package/models/store/storage/interfaces.ts +32 -32
  72. package/models/store/types.ts +32 -32
  73. package/modules/fixContentBuild/utils/methods.ts +114 -114
  74. package/package.json +1 -1
  75. package/public/spice-console/application/codec.js +257 -257
  76. package/public/spice-console/lib/rasterEngine.js +907 -907
  77. package/public/spice-console/network/spicechannel.js +369 -369
  78. package/public/spice-console-minify/lib/decoder/dixie.min.js +4 -4
  79. package/public/spice-console-minify/lib/jgestures.min.js +24 -24
  80. package/public/spice-console-minify/lib/jquery-2.0.3.min.js +24 -24
  81. package/public/spice-console-minify/lib/jquery-mousewheel.min.js +11 -11
  82. package/public/spice-console-minify/lib/jquery-visibility.min.js +1 -1
  83. package/public/spice-console-minify/lib/lodash.4.0.0.min.js +5 -5
  84. package/utils/contentBuild.ts +34 -34
@@ -1,180 +1,180 @@
1
- <template>
2
- <div class="hardware-cpu">
3
- <atoms-stack-block :has-children="true" @toggle="blockIsOpen = $event">
4
- <template #stackBlockKey>
5
- <div class="flex-align-center">
6
- <span>{{ localization.generalOptions }}</span>
7
- </div>
8
- </template>
9
- <template #stackBlockContent>
10
- <div v-show="!blockIsOpen">
11
- {{ localization.vmName }}: {{ vmNameLocal }}
12
- </div>
13
- </template>
14
- <template #stackChildren>
15
- <atoms-stack-block :has-children="false">
16
- <template #stackBlockKey>
17
- {{ localization.vmName }}
18
- </template>
19
- <template #stackBlockContent>
20
- <span>{{ vmNameLocal }}</span>
21
- <!-- <span v-if="!props.isEdit">{{ vmNameLocal }}</span>-->
22
- <!-- <input-->
23
- <!-- v-else-->
24
- <!-- id="general-option-vm-name"-->
25
- <!-- v-model="vmNameLocal"-->
26
- <!-- type="text"-->
27
- <!-- />-->
28
- </template>
29
- </atoms-stack-block>
30
-
31
- <atoms-stack-block :has-children="false">
32
- <template #stackBlockKey>
33
- {{ localization.machineType }}
34
- </template>
35
- <template #stackBlockContent>
36
- <select
37
- v-if="props.guestMachineType"
38
- id="guest-machine-type-select"
39
- :disabled="isDisabled"
40
- v-model="guestMachineTypeLocal"
41
- >
42
- <option
43
- v-for="item in machineTypeOptions"
44
- :key="item.value"
45
- :value="item"
46
- >
47
- {{ item.text }}
48
- </option>
49
- </select>
50
- </template>
51
- </atoms-stack-block>
52
-
53
- <atoms-stack-block :has-children="false">
54
- <template #stackBlockKey>
55
- {{ localization.guestOsFamily }}
56
- </template>
57
- <template #stackBlockContent>
58
- <select
59
- v-if="props.guestOsFamily"
60
- id="guest-os-family-select"
61
- v-model="guestOsFamilyLocal"
62
- :disabled="isDisabled"
63
- @change="onChangeOS"
64
- >
65
- <option v-for="item in osOptions" :key="item.value" :value="item">
66
- {{ item.text }}
67
- </option>
68
- </select>
69
- </template>
70
- </atoms-stack-block>
71
-
72
- <atoms-stack-block :has-children="false">
73
- <template #stackBlockKey>
74
- {{ localization.guestOsVersion }}
75
- </template>
76
- <template #stackBlockContent>
77
- <select
78
- v-if="props.guestOsVersion"
79
- id="guest-os-version-select"
80
- v-model="guestOsVersionLocal"
81
- :disabled="isDisabled"
82
- >
83
- <option
84
- v-for="item in versionsOptions"
85
- :key="item.value"
86
- :value="item"
87
- >
88
- {{ item.text }}
89
- </option>
90
- </select>
91
- </template>
92
- </atoms-stack-block>
93
- </template>
94
- </atoms-stack-block>
95
- </div>
96
- </template>
97
-
98
- <script setup lang="ts">
99
- import { UI_I_Localization } from '~/models/interfaces'
100
- import { UI_I_OptionItem } from '~/components/atoms/models/interfaces'
101
- import { capabilities } from '~/components/common/vm/actions/add/config/capabilities'
102
-
103
- const localization = computed<UI_I_Localization>(() => useLocal())
104
-
105
- const props = defineProps<{
106
- vmName: string
107
- guestMachineType: UI_I_OptionItem | null
108
- guestOsFamily: UI_I_OptionItem | null
109
- guestOsVersion: UI_I_OptionItem | null
110
- isEdit: boolean
111
- state?: string | number
112
- }>()
113
- const emits = defineEmits<{
114
- (event: 'update:vm-name', value: string): void
115
- (event: 'update:guest-machine-type', value: UI_I_OptionItem | null): void
116
- (event: 'update:guest-os-family', value: UI_I_OptionItem | null): void
117
- (event: 'update:guest-os-version', value: UI_I_OptionItem | null): void
118
- }>()
119
-
120
- const isDisabled = computed<boolean>(
121
- () => !props.isEdit || (props.isEdit && props.state !== 1)
122
- )
123
-
124
- const vmNameLocal = computed<string>({
125
- get() {
126
- return props.vmName
127
- },
128
- set(newValue) {
129
- emits('update:vm-name', newValue)
130
- },
131
- })
132
-
133
- const guestMachineTypeLocal = computed<UI_I_OptionItem | null>({
134
- get() {
135
- return props.guestMachineType
136
- },
137
- set(newValue) {
138
- emits('update:guest-machine-type', newValue)
139
- },
140
- })
141
- const machineTypeOptions = ref<UI_I_OptionItem[]>(capabilities.machineTypes)
142
-
143
- const guestOsFamilyLocal = computed<UI_I_OptionItem | null>({
144
- get() {
145
- return props.guestOsFamily
146
- },
147
- set(newValue) {
148
- emits('update:guest-os-family', newValue)
149
- },
150
- })
151
- const osOptions = ref<UI_I_OptionItem[]>(capabilities.guestOsFamilies)
152
- const onChangeOS = (): void => {
153
- guestOsVersionLocal.value = versionsOptions.value[0]
154
- }
155
-
156
- const guestOsVersionLocal = computed<UI_I_OptionItem | null>({
157
- get() {
158
- return props.guestOsVersion
159
- },
160
- set(newValue) {
161
- emits('update:guest-os-version', newValue)
162
- },
163
- })
164
- const versionsOptions = computed<UI_I_OptionItem[]>(() => {
165
- if (!guestOsFamilyLocal.value) return []
166
-
167
- return capabilities.guestOsVersions[guestOsFamilyLocal.value.value] || []
168
- })
169
- watch(
170
- versionsOptions,
171
- () => {
172
- guestOsVersionLocal.value = versionsOptions.value[0]
173
- }
174
- // { immediate: true }
175
- )
176
-
177
- const blockIsOpen = ref<boolean>(false)
178
- </script>
179
-
180
- <style scoped lang="scss"></style>
1
+ <template>
2
+ <div class="hardware-cpu">
3
+ <atoms-stack-block :has-children="true" @toggle="blockIsOpen = $event">
4
+ <template #stackBlockKey>
5
+ <div class="flex-align-center">
6
+ <span>{{ localization.generalOptions }}</span>
7
+ </div>
8
+ </template>
9
+ <template #stackBlockContent>
10
+ <div v-show="!blockIsOpen">
11
+ {{ localization.vmName }}: {{ vmNameLocal }}
12
+ </div>
13
+ </template>
14
+ <template #stackChildren>
15
+ <atoms-stack-block :has-children="false">
16
+ <template #stackBlockKey>
17
+ {{ localization.vmName }}
18
+ </template>
19
+ <template #stackBlockContent>
20
+ <span>{{ vmNameLocal }}</span>
21
+ <!-- <span v-if="!props.isEdit">{{ vmNameLocal }}</span>-->
22
+ <!-- <input-->
23
+ <!-- v-else-->
24
+ <!-- id="general-option-vm-name"-->
25
+ <!-- v-model="vmNameLocal"-->
26
+ <!-- type="text"-->
27
+ <!-- />-->
28
+ </template>
29
+ </atoms-stack-block>
30
+
31
+ <atoms-stack-block :has-children="false">
32
+ <template #stackBlockKey>
33
+ {{ localization.machineType }}
34
+ </template>
35
+ <template #stackBlockContent>
36
+ <select
37
+ v-if="props.guestMachineType"
38
+ id="guest-machine-type-select"
39
+ :disabled="isDisabled"
40
+ v-model="guestMachineTypeLocal"
41
+ >
42
+ <option
43
+ v-for="item in machineTypeOptions"
44
+ :key="item.value"
45
+ :value="item"
46
+ >
47
+ {{ item.text }}
48
+ </option>
49
+ </select>
50
+ </template>
51
+ </atoms-stack-block>
52
+
53
+ <atoms-stack-block :has-children="false">
54
+ <template #stackBlockKey>
55
+ {{ localization.guestOsFamily }}
56
+ </template>
57
+ <template #stackBlockContent>
58
+ <select
59
+ v-if="props.guestOsFamily"
60
+ id="guest-os-family-select"
61
+ v-model="guestOsFamilyLocal"
62
+ :disabled="isDisabled"
63
+ @change="onChangeOS"
64
+ >
65
+ <option v-for="item in osOptions" :key="item.value" :value="item">
66
+ {{ item.text }}
67
+ </option>
68
+ </select>
69
+ </template>
70
+ </atoms-stack-block>
71
+
72
+ <atoms-stack-block :has-children="false">
73
+ <template #stackBlockKey>
74
+ {{ localization.guestOsVersion }}
75
+ </template>
76
+ <template #stackBlockContent>
77
+ <select
78
+ v-if="props.guestOsVersion"
79
+ id="guest-os-version-select"
80
+ v-model="guestOsVersionLocal"
81
+ :disabled="isDisabled"
82
+ >
83
+ <option
84
+ v-for="item in versionsOptions"
85
+ :key="item.value"
86
+ :value="item"
87
+ >
88
+ {{ item.text }}
89
+ </option>
90
+ </select>
91
+ </template>
92
+ </atoms-stack-block>
93
+ </template>
94
+ </atoms-stack-block>
95
+ </div>
96
+ </template>
97
+
98
+ <script setup lang="ts">
99
+ import { UI_I_Localization } from '~/models/interfaces'
100
+ import { UI_I_OptionItem } from '~/components/atoms/models/interfaces'
101
+ import { capabilities } from '~/components/common/vm/actions/add/config/capabilities'
102
+
103
+ const localization = computed<UI_I_Localization>(() => useLocal())
104
+
105
+ const props = defineProps<{
106
+ vmName: string
107
+ guestMachineType: UI_I_OptionItem | null
108
+ guestOsFamily: UI_I_OptionItem | null
109
+ guestOsVersion: UI_I_OptionItem | null
110
+ isEdit: boolean
111
+ state?: string | number
112
+ }>()
113
+ const emits = defineEmits<{
114
+ (event: 'update:vm-name', value: string): void
115
+ (event: 'update:guest-machine-type', value: UI_I_OptionItem | null): void
116
+ (event: 'update:guest-os-family', value: UI_I_OptionItem | null): void
117
+ (event: 'update:guest-os-version', value: UI_I_OptionItem | null): void
118
+ }>()
119
+
120
+ const isDisabled = computed<boolean>(
121
+ () => !props.isEdit || (props.isEdit && props.state !== 1)
122
+ )
123
+
124
+ const vmNameLocal = computed<string>({
125
+ get() {
126
+ return props.vmName
127
+ },
128
+ set(newValue) {
129
+ emits('update:vm-name', newValue)
130
+ },
131
+ })
132
+
133
+ const guestMachineTypeLocal = computed<UI_I_OptionItem | null>({
134
+ get() {
135
+ return props.guestMachineType
136
+ },
137
+ set(newValue) {
138
+ emits('update:guest-machine-type', newValue)
139
+ },
140
+ })
141
+ const machineTypeOptions = ref<UI_I_OptionItem[]>(capabilities.machineTypes)
142
+
143
+ const guestOsFamilyLocal = computed<UI_I_OptionItem | null>({
144
+ get() {
145
+ return props.guestOsFamily
146
+ },
147
+ set(newValue) {
148
+ emits('update:guest-os-family', newValue)
149
+ },
150
+ })
151
+ const osOptions = ref<UI_I_OptionItem[]>(capabilities.guestOsFamilies)
152
+ const onChangeOS = (): void => {
153
+ guestOsVersionLocal.value = versionsOptions.value[0]
154
+ }
155
+
156
+ const guestOsVersionLocal = computed<UI_I_OptionItem | null>({
157
+ get() {
158
+ return props.guestOsVersion
159
+ },
160
+ set(newValue) {
161
+ emits('update:guest-os-version', newValue)
162
+ },
163
+ })
164
+ const versionsOptions = computed<UI_I_OptionItem[]>(() => {
165
+ if (!guestOsFamilyLocal.value) return []
166
+
167
+ return capabilities.guestOsVersions[guestOsFamilyLocal.value.value] || []
168
+ })
169
+ watch(
170
+ versionsOptions,
171
+ () => {
172
+ guestOsVersionLocal.value = versionsOptions.value[0]
173
+ }
174
+ // { immediate: true }
175
+ )
176
+
177
+ const blockIsOpen = ref<boolean>(false)
178
+ </script>
179
+
180
+ <style scoped lang="scss"></style>
@@ -1,51 +1,51 @@
1
- <template>
2
- <div class="">
3
- <atoms-stack-block :has-children="false">
4
- <template #stackBlockKey>
5
- {{ localization.copyPaste }}
6
- </template>
7
- <template #stackBlockContent>
8
- <div class="flex-align-center">
9
- <input
10
- id="copy-paste"
11
- v-model="copyPasteLocal"
12
- :disabled="props.disabled"
13
- type="checkbox"
14
- />
15
- <label for="copy-paste" class="label-text-normal">{{
16
- localization.enable
17
- }}</label>
18
- </div>
19
- </template>
20
- </atoms-stack-block>
21
- </div>
22
- </template>
23
-
24
- <script setup lang="ts">
25
- import { UI_I_Localization } from '~/models/interfaces'
26
-
27
- const localization = computed<UI_I_Localization>(() => useLocal())
28
-
29
- const props = defineProps<{
30
- copyPaste: boolean
31
- disabled: boolean
32
- }>()
33
- const emits = defineEmits<{
34
- (event: 'update:copy-paste', value: boolean): void
35
- }>()
36
-
37
- const copyPasteLocal = computed<boolean>({
38
- get() {
39
- return props.copyPaste
40
- },
41
- set(newValue) {
42
- emits('update:copy-paste', newValue)
43
- },
44
- })
45
- </script>
46
-
47
- <style scoped>
48
- #copy-paste {
49
- margin: 0 4px 4px 0;
50
- }
51
- </style>
1
+ <template>
2
+ <div class="">
3
+ <atoms-stack-block :has-children="false">
4
+ <template #stackBlockKey>
5
+ {{ localization.copyPaste }}
6
+ </template>
7
+ <template #stackBlockContent>
8
+ <div class="flex-align-center">
9
+ <input
10
+ id="copy-paste"
11
+ v-model="copyPasteLocal"
12
+ :disabled="props.disabled"
13
+ type="checkbox"
14
+ />
15
+ <label for="copy-paste" class="label-text-normal">{{
16
+ localization.enable
17
+ }}</label>
18
+ </div>
19
+ </template>
20
+ </atoms-stack-block>
21
+ </div>
22
+ </template>
23
+
24
+ <script setup lang="ts">
25
+ import { UI_I_Localization } from '~/models/interfaces'
26
+
27
+ const localization = computed<UI_I_Localization>(() => useLocal())
28
+
29
+ const props = defineProps<{
30
+ copyPaste: boolean
31
+ disabled: boolean
32
+ }>()
33
+ const emits = defineEmits<{
34
+ (event: 'update:copy-paste', value: boolean): void
35
+ }>()
36
+
37
+ const copyPasteLocal = computed<boolean>({
38
+ get() {
39
+ return props.copyPaste
40
+ },
41
+ set(newValue) {
42
+ emits('update:copy-paste', newValue)
43
+ },
44
+ })
45
+ </script>
46
+
47
+ <style scoped>
48
+ #copy-paste {
49
+ margin: 0 4px 4px 0;
50
+ }
51
+ </style>
@@ -1,55 +1,55 @@
1
- <template>
2
- <div class="">
3
- <atoms-stack-block :has-children="false">
4
- <template #stackBlockKey>
5
- {{ localization.keymap }}
6
- </template>
7
- <template #stackBlockContent>
8
- <div class="select">
9
- <select
10
- v-model="remoteConsoleTypeLocal"
11
- :disabled="props.disabled"
12
- id="keymap-select"
13
- >
14
- <option
15
- v-for="(item, key) in keymapOptions"
16
- :key="key"
17
- :value="item.value"
18
- >
19
- {{ item.text }}
20
- </option>
21
- </select>
22
- </div>
23
- </template>
24
- </atoms-stack-block>
25
- </div>
26
- </template>
27
-
28
- <script setup lang="ts">
29
- import { keymapOptionsConfig } from '~/components/common/vm/actions/add/customizeHardware/vmoptions/remoteConsoleOptions/keymap/config/config'
30
- import { UI_I_OptionItem } from '~/components/atoms/models/interfaces'
31
- import { UI_I_Localization } from '~/models/interfaces'
32
-
33
- const localization = computed<UI_I_Localization>(() => useLocal())
34
-
35
- const props = defineProps<{
36
- keymap: string
37
- disabled: boolean
38
- }>()
39
- const emits = defineEmits<{
40
- (event: 'update:keymap', value: string): void
41
- }>()
42
-
43
- const keymapOptions = ref<UI_I_OptionItem[]>(keymapOptionsConfig)
44
-
45
- const remoteConsoleTypeLocal = computed<string>({
46
- get() {
47
- return props.keymap
48
- },
49
- set(newValue) {
50
- emits('update:keymap', newValue)
51
- },
52
- })
53
- </script>
54
-
55
- <style scoped></style>
1
+ <template>
2
+ <div class="">
3
+ <atoms-stack-block :has-children="false">
4
+ <template #stackBlockKey>
5
+ {{ localization.keymap }}
6
+ </template>
7
+ <template #stackBlockContent>
8
+ <div class="select">
9
+ <select
10
+ v-model="remoteConsoleTypeLocal"
11
+ :disabled="props.disabled"
12
+ id="keymap-select"
13
+ >
14
+ <option
15
+ v-for="(item, key) in keymapOptions"
16
+ :key="key"
17
+ :value="item.value"
18
+ >
19
+ {{ item.text }}
20
+ </option>
21
+ </select>
22
+ </div>
23
+ </template>
24
+ </atoms-stack-block>
25
+ </div>
26
+ </template>
27
+
28
+ <script setup lang="ts">
29
+ import { keymapOptionsConfig } from '~/components/common/vm/actions/add/customizeHardware/vmoptions/remoteConsoleOptions/keymap/config/config'
30
+ import { UI_I_OptionItem } from '~/components/atoms/models/interfaces'
31
+ import { UI_I_Localization } from '~/models/interfaces'
32
+
33
+ const localization = computed<UI_I_Localization>(() => useLocal())
34
+
35
+ const props = defineProps<{
36
+ keymap: string
37
+ disabled: boolean
38
+ }>()
39
+ const emits = defineEmits<{
40
+ (event: 'update:keymap', value: string): void
41
+ }>()
42
+
43
+ const keymapOptions = ref<UI_I_OptionItem[]>(keymapOptionsConfig)
44
+
45
+ const remoteConsoleTypeLocal = computed<string>({
46
+ get() {
47
+ return props.keymap
48
+ },
49
+ set(newValue) {
50
+ emits('update:keymap', newValue)
51
+ },
52
+ })
53
+ </script>
54
+
55
+ <style scoped></style>