bfg-common 1.4.201 → 1.4.202

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 (33) hide show
  1. package/assets/img/icons/icons-sprite-dark-1.svg +407 -407
  2. package/assets/img/icons/icons-sprite-dark-2.svg +343 -343
  3. package/assets/img/icons/icons-sprite-dark-3.svg +227 -227
  4. package/assets/img/icons/icons-sprite-dark-4.svg +255 -255
  5. package/assets/img/icons/icons-sprite-dark-5.svg +488 -488
  6. package/assets/img/icons/icons-sprite-dark-6.svg +83 -83
  7. package/assets/img/icons/icons-sprite-light-1.svg +407 -407
  8. package/assets/img/icons/icons-sprite-light-2.svg +343 -343
  9. package/assets/img/icons/icons-sprite-light-3.svg +227 -227
  10. package/assets/img/icons/icons-sprite-light-4.svg +255 -255
  11. package/assets/img/icons/icons-sprite-light-5.svg +488 -488
  12. package/assets/img/icons/icons-sprite-light-6.svg +83 -83
  13. package/components/atoms/TheIcon3.vue +50 -0
  14. package/components/atoms/modal/bySteps/BySteps.vue +253 -253
  15. package/components/atoms/stack/StackBlock.vue +185 -185
  16. package/components/common/browse/blocks/Title.vue +91 -91
  17. package/components/common/browse/blocks/info/Date.vue +21 -21
  18. package/components/common/context/lib/models/interfaces.ts +30 -30
  19. package/components/common/context/recursion/Recursion.vue +86 -86
  20. package/components/common/context/recursion/RecursionNew.vue +199 -199
  21. package/components/common/context/recursion/RecursionOld.vue +213 -213
  22. package/components/common/vm/actions/add/Add.vue +609 -609
  23. package/components/common/vm/actions/clone/Clone.vue +522 -522
  24. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/lib/config/options.ts +20 -20
  25. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Cpu.vue +403 -403
  26. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Hv.vue +99 -99
  27. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +201 -201
  28. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/streamingMode/StreamingMode.vue +85 -85
  29. package/composables/productNameLocal.ts +30 -30
  30. package/package.json +1 -1
  31. package/plugins/recursion.ts +311 -311
  32. package/public/spice-console/lib/images/bitmap.js +203 -203
  33. package/store/tasks/mappers/recentTasks.ts +45 -45
@@ -1,99 +1,99 @@
1
- <template>
2
- <div class="">
3
- <atoms-stack-block :has-children="false">
4
- <template #stackBlockKey>
5
- {{ localization.common.hardwareVirtualization }}
6
- </template>
7
- <template #stackBlockContent>
8
- <div class="flex-space-between">
9
- <div class="flex-align-center">
10
- <input
11
- id="expose-hardware-assisted-virtualization"
12
- v-model="hardwareVirtualizationLocal"
13
- data-id="expose-hardware-assisted-virtualization"
14
- type="checkbox"
15
- disabled
16
- />
17
- <label
18
- for="expose-hardware-assisted-virtualization"
19
- :class="['label-text-normal', { 'div-disabled': true }]"
20
- >{{
21
- localization.common.exposeHardwareAssistedVirtualizationGuestOs
22
- }}</label
23
- >
24
- </div>
25
-
26
- <div id="hv-help-icon">
27
- <atoms-the-icon
28
- fill="#0072a3"
29
- width="24px"
30
- height="24px"
31
- name="info-circle"
32
- data-id="show-hv-help-icon"
33
- @click.stop="isShowHvHelp = !isShowHvHelp"
34
- />
35
- <Teleport to="body">
36
- <atoms-tooltip-signpost
37
- v-if="isShowHvHelp"
38
- elem-id="hv-help-icon"
39
- @hide="isShowHvHelp = false"
40
- >
41
- <h3 class="hv-help-title">
42
- {{ localization.mainNavigation.help }}
43
- </h3>
44
-
45
- <p class="hv-help-text">
46
- {{
47
- localization.common.hardwareVirtualizationHelpDescription
48
- }}
49
- </p>
50
- </atoms-tooltip-signpost>
51
- </Teleport>
52
- </div>
53
- </div>
54
- </template>
55
- </atoms-stack-block>
56
- </div>
57
- </template>
58
-
59
- <script setup lang="ts">
60
- import type { UI_I_Localization } from '~/lib/models/interfaces'
61
-
62
- const localization = computed<UI_I_Localization>(() => useLocal())
63
-
64
- const props = defineProps<{
65
- hardwareVirtualization: boolean
66
- }>()
67
- const emits = defineEmits<{
68
- (event: 'update:hardware-virtualization', value: boolean): boolean
69
- }>()
70
-
71
- const hardwareVirtualizationLocal = computed<boolean>({
72
- get() {
73
- return props.hardwareVirtualization
74
- },
75
- set(newValue) {
76
- emits('update:hardware-virtualization', newValue)
77
- },
78
- })
79
-
80
- const isShowHvHelp = ref<boolean>(false)
81
- </script>
82
-
83
- <style scoped lang="scss">
84
- #expose-hardware-assisted-virtualization {
85
- margin: 4px 4px 0 0;
86
- }
87
-
88
- h3.hv-help-title {
89
- margin-top: 7px;
90
- font-size: 22px;
91
- color: #565656;
92
- }
93
- p.hv-help-text {
94
- width: 310px;
95
- margin-top: 24px;
96
- font-size: 14px;
97
- color: #565656;
98
- }
99
- </style>
1
+ <template>
2
+ <div class="">
3
+ <atoms-stack-block :has-children="false">
4
+ <template #stackBlockKey>
5
+ {{ localization.common.hardwareVirtualization }}
6
+ </template>
7
+ <template #stackBlockContent>
8
+ <div class="flex-space-between">
9
+ <div class="flex-align-center">
10
+ <input
11
+ id="expose-hardware-assisted-virtualization"
12
+ v-model="hardwareVirtualizationLocal"
13
+ data-id="expose-hardware-assisted-virtualization"
14
+ type="checkbox"
15
+ disabled
16
+ />
17
+ <label
18
+ for="expose-hardware-assisted-virtualization"
19
+ :class="['label-text-normal', { 'div-disabled': true }]"
20
+ >{{
21
+ localization.common.exposeHardwareAssistedVirtualizationGuestOs
22
+ }}</label
23
+ >
24
+ </div>
25
+
26
+ <div id="hv-help-icon">
27
+ <atoms-the-icon
28
+ fill="#0072a3"
29
+ width="24px"
30
+ height="24px"
31
+ name="info-circle"
32
+ data-id="show-hv-help-icon"
33
+ @click.stop="isShowHvHelp = !isShowHvHelp"
34
+ />
35
+ <Teleport to="body">
36
+ <atoms-tooltip-signpost
37
+ v-if="isShowHvHelp"
38
+ elem-id="hv-help-icon"
39
+ @hide="isShowHvHelp = false"
40
+ >
41
+ <h3 class="hv-help-title">
42
+ {{ localization.mainNavigation.help }}
43
+ </h3>
44
+
45
+ <p class="hv-help-text">
46
+ {{
47
+ localization.common.hardwareVirtualizationHelpDescription
48
+ }}
49
+ </p>
50
+ </atoms-tooltip-signpost>
51
+ </Teleport>
52
+ </div>
53
+ </div>
54
+ </template>
55
+ </atoms-stack-block>
56
+ </div>
57
+ </template>
58
+
59
+ <script setup lang="ts">
60
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
61
+
62
+ const localization = computed<UI_I_Localization>(() => useLocal())
63
+
64
+ const props = defineProps<{
65
+ hardwareVirtualization: boolean
66
+ }>()
67
+ const emits = defineEmits<{
68
+ (event: 'update:hardware-virtualization', value: boolean): boolean
69
+ }>()
70
+
71
+ const hardwareVirtualizationLocal = computed<boolean>({
72
+ get() {
73
+ return props.hardwareVirtualization
74
+ },
75
+ set(newValue) {
76
+ emits('update:hardware-virtualization', newValue)
77
+ },
78
+ })
79
+
80
+ const isShowHvHelp = ref<boolean>(false)
81
+ </script>
82
+
83
+ <style scoped lang="scss">
84
+ #expose-hardware-assisted-virtualization {
85
+ margin: 4px 4px 0 0;
86
+ }
87
+
88
+ h3.hv-help-title {
89
+ margin-top: 7px;
90
+ font-size: 22px;
91
+ color: #565656;
92
+ }
93
+ p.hv-help-text {
94
+ width: 310px;
95
+ margin-top: 24px;
96
+ font-size: 14px;
97
+ color: #565656;
98
+ }
99
+ </style>
@@ -1,201 +1,201 @@
1
- <template>
2
- <div class="boot-orders">
3
- <atoms-stack-block :has-children="false">
4
- <template #stackBlockKey>
5
- {{ localization.common.bootOrder }}
6
- </template>
7
- <template #stackBlockContent>
8
- <atoms-list-drag-drop-list
9
- :items="bootList"
10
- grab-item-key="text"
11
- @drop="onChangeOrder"
12
- >
13
- <template
14
- v-for="(item, index) in bootList"
15
- :key="index"
16
- #[`leftSide${index}`]
17
- >
18
- <input
19
- :id="`boot-order-${index}`"
20
- v-model="item.isChecked"
21
- :data-id="item.testId"
22
- type="checkbox"
23
- />
24
- </template>
25
- <template
26
- v-for="(item, index) in bootList"
27
- :key="bootList.length + index"
28
- #[`rightSide${index}`]
29
- >
30
- <div :class="['device-icon', item.iconClassName]" />
31
- <span>{{ item.text }}</span>
32
- </template>
33
- </atoms-list-drag-drop-list>
34
- </template>
35
- </atoms-stack-block>
36
- </div>
37
- </template>
38
-
39
- <script setup lang="ts">
40
- import type { UI_I_BootItem } from '~/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/lib/models/interfaces'
41
- import type {
42
- UI_I_SendDataNewCdDvdDrive,
43
- UI_I_SendDataNewHardDisk,
44
- UI_I_SendDataNewNetwork,
45
- } from '~/components/common/vm/actions/common/customizeHardware/virtualHardware/lib/models/interfaces'
46
- import type { UI_I_Localization } from '~/lib/models/interfaces'
47
- import type { UI_I_DropEvent } from '~/components/atoms/list/dragDropList/lib/config/events'
48
-
49
- const localization = computed<UI_I_Localization>(() => useLocal())
50
-
51
- const props = defineProps<{
52
- hardDisks: UI_I_SendDataNewHardDisk[] | null
53
- cdDvdDrives: UI_I_SendDataNewCdDvdDrive[] | null
54
- networks: UI_I_SendDataNewNetwork[] | null
55
- }>()
56
- const emits = defineEmits<{
57
- (
58
- event: 'change',
59
- value: [
60
- UI_I_SendDataNewHardDisk[],
61
- UI_I_SendDataNewCdDvdDrive[],
62
- UI_I_SendDataNewNetwork[]
63
- ]
64
- ): void
65
- }>()
66
-
67
- const bootList = ref<UI_I_BootItem[]>([])
68
-
69
- const hardDisksAndNetworks = computed<
70
- [
71
- UI_I_SendDataNewHardDisk[] | null,
72
- UI_I_SendDataNewCdDvdDrive[] | null,
73
- UI_I_SendDataNewNetwork[] | null
74
- ]
75
- >(() => [props.hardDisks, props.cdDvdDrives, props.networks])
76
- watch(
77
- hardDisksAndNetworks,
78
- (
79
- newValue: [
80
- UI_I_SendDataNewHardDisk[] | null,
81
- UI_I_SendDataNewCdDvdDrive[] | null,
82
- UI_I_SendDataNewNetwork[] | null
83
- ]
84
- ) => {
85
- const hardDisks: UI_I_BootItem[] =
86
- newValue[0]?.map((item, index) => {
87
- const order = item.boot_order || 0
88
- return {
89
- order,
90
- isChecked: !!order,
91
- text: `disk${index}`,
92
- iconClassName: 'icon-disk',
93
- type: 'disk',
94
- name: item.source + index,
95
- testId: `select-disk-value-${index + 1}`,
96
- }
97
- }) || []
98
- const cdDvdDrives: UI_I_BootItem[] =
99
- newValue[1]?.map((item, index) => {
100
- const order = item.boot_order || 0
101
- return {
102
- order,
103
- isChecked: !!order,
104
- text: `cdrom${index}`,
105
- iconClassName: 'icon-disk',
106
- type: 'cdDvd',
107
- name: item.source + index,
108
- testId: `select-cd-dvd-value-${index + 1}`,
109
- }
110
- }) || []
111
- const networks: UI_I_BootItem[] =
112
- newValue[2]?.map((item, index) => {
113
- const order = item.boot_order || 0
114
- return {
115
- order,
116
- isChecked: !!order,
117
- text: item.mac || 'undefined',
118
- iconClassName: 'vsphere-icon-network',
119
- type: 'nic',
120
- name: item.network + index,
121
- testId: `select-nic-value-${index + 1}`,
122
- }
123
- }) || []
124
-
125
- bootList.value = [...hardDisks, ...cdDvdDrives, ...networks].sort(
126
- (a, b) => a.order - b.order
127
- )
128
- },
129
- { deep: true, immediate: true }
130
- )
131
-
132
- const onChangeOrder = (event: UI_I_DropEvent): void => {
133
- let order = -1
134
- bootList.value = bootList.value
135
- .map((item) => {
136
- if (item === event.target) {
137
- item.order = event.toPosition
138
- return item
139
- }
140
-
141
- item.order = order + 1 === event.toPosition ? (order += 2) : order++
142
-
143
- return item
144
- })
145
- .sort((a, b) => a.order - b.order)
146
- }
147
-
148
- watch(
149
- bootList,
150
- (newValue) => {
151
- const networks: UI_I_SendDataNewNetwork[] = []
152
- const hardDisks: UI_I_SendDataNewHardDisk[] = []
153
- const cdDvdDrives: UI_I_SendDataNewCdDvdDrive[] = []
154
- let index = 0
155
- newValue.forEach((boot) => {
156
- if (boot.type === 'nic') {
157
- const network = props.networks?.find(
158
- (network, index2) => network.network + index2 === boot.name
159
- )
160
- if (network) {
161
- networks.push({
162
- ...network,
163
- boot_order: boot.isChecked ? ++index : 0,
164
- })
165
- }
166
- } else if (boot.type === 'disk') {
167
- const hardDisk = props.hardDisks?.find(
168
- (hardDisk, index2) => hardDisk.source + index2 === boot.name
169
- )
170
- if (hardDisk) {
171
- hardDisks.push({
172
- ...hardDisk,
173
- boot_order: boot.isChecked ? ++index : 0,
174
- })
175
- }
176
- } else {
177
- const cdDvdDrive = props.cdDvdDrives?.find(
178
- (cdDvdDrive, index2) => cdDvdDrive.source + index2 === boot.name
179
- )
180
- if (cdDvdDrive) {
181
- cdDvdDrives.push({
182
- ...cdDvdDrive,
183
- boot_order: boot.isChecked ? ++index : 0,
184
- })
185
- }
186
- }
187
- })
188
-
189
- emits('change', [hardDisks, cdDvdDrives, networks])
190
- },
191
- { deep: true, immediate: true }
192
- )
193
- </script>
194
-
195
- <style scoped lang="scss">
196
- .boot-orders {
197
- .device-icon {
198
- margin-right: 6px;
199
- }
200
- }
201
- </style>
1
+ <template>
2
+ <div class="boot-orders">
3
+ <atoms-stack-block :has-children="false">
4
+ <template #stackBlockKey>
5
+ {{ localization.common.bootOrder }}
6
+ </template>
7
+ <template #stackBlockContent>
8
+ <atoms-list-drag-drop-list
9
+ :items="bootList"
10
+ grab-item-key="text"
11
+ @drop="onChangeOrder"
12
+ >
13
+ <template
14
+ v-for="(item, index) in bootList"
15
+ :key="index"
16
+ #[`leftSide${index}`]
17
+ >
18
+ <input
19
+ :id="`boot-order-${index}`"
20
+ v-model="item.isChecked"
21
+ :data-id="item.testId"
22
+ type="checkbox"
23
+ />
24
+ </template>
25
+ <template
26
+ v-for="(item, index) in bootList"
27
+ :key="bootList.length + index"
28
+ #[`rightSide${index}`]
29
+ >
30
+ <div :class="['device-icon', item.iconClassName]" />
31
+ <span>{{ item.text }}</span>
32
+ </template>
33
+ </atoms-list-drag-drop-list>
34
+ </template>
35
+ </atoms-stack-block>
36
+ </div>
37
+ </template>
38
+
39
+ <script setup lang="ts">
40
+ import type { UI_I_BootItem } from '~/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/lib/models/interfaces'
41
+ import type {
42
+ UI_I_SendDataNewCdDvdDrive,
43
+ UI_I_SendDataNewHardDisk,
44
+ UI_I_SendDataNewNetwork,
45
+ } from '~/components/common/vm/actions/common/customizeHardware/virtualHardware/lib/models/interfaces'
46
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
47
+ import type { UI_I_DropEvent } from '~/components/atoms/list/dragDropList/lib/config/events'
48
+
49
+ const localization = computed<UI_I_Localization>(() => useLocal())
50
+
51
+ const props = defineProps<{
52
+ hardDisks: UI_I_SendDataNewHardDisk[] | null
53
+ cdDvdDrives: UI_I_SendDataNewCdDvdDrive[] | null
54
+ networks: UI_I_SendDataNewNetwork[] | null
55
+ }>()
56
+ const emits = defineEmits<{
57
+ (
58
+ event: 'change',
59
+ value: [
60
+ UI_I_SendDataNewHardDisk[],
61
+ UI_I_SendDataNewCdDvdDrive[],
62
+ UI_I_SendDataNewNetwork[]
63
+ ]
64
+ ): void
65
+ }>()
66
+
67
+ const bootList = ref<UI_I_BootItem[]>([])
68
+
69
+ const hardDisksAndNetworks = computed<
70
+ [
71
+ UI_I_SendDataNewHardDisk[] | null,
72
+ UI_I_SendDataNewCdDvdDrive[] | null,
73
+ UI_I_SendDataNewNetwork[] | null
74
+ ]
75
+ >(() => [props.hardDisks, props.cdDvdDrives, props.networks])
76
+ watch(
77
+ hardDisksAndNetworks,
78
+ (
79
+ newValue: [
80
+ UI_I_SendDataNewHardDisk[] | null,
81
+ UI_I_SendDataNewCdDvdDrive[] | null,
82
+ UI_I_SendDataNewNetwork[] | null
83
+ ]
84
+ ) => {
85
+ const hardDisks: UI_I_BootItem[] =
86
+ newValue[0]?.map((item, index) => {
87
+ const order = item.boot_order || 0
88
+ return {
89
+ order,
90
+ isChecked: !!order,
91
+ text: `disk${index}`,
92
+ iconClassName: 'icon-disk',
93
+ type: 'disk',
94
+ name: item.source + index,
95
+ testId: `select-disk-value-${index + 1}`,
96
+ }
97
+ }) || []
98
+ const cdDvdDrives: UI_I_BootItem[] =
99
+ newValue[1]?.map((item, index) => {
100
+ const order = item.boot_order || 0
101
+ return {
102
+ order,
103
+ isChecked: !!order,
104
+ text: `cdrom${index}`,
105
+ iconClassName: 'icon-disk',
106
+ type: 'cdDvd',
107
+ name: item.source + index,
108
+ testId: `select-cd-dvd-value-${index + 1}`,
109
+ }
110
+ }) || []
111
+ const networks: UI_I_BootItem[] =
112
+ newValue[2]?.map((item, index) => {
113
+ const order = item.boot_order || 0
114
+ return {
115
+ order,
116
+ isChecked: !!order,
117
+ text: item.mac || 'undefined',
118
+ iconClassName: 'vsphere-icon-network',
119
+ type: 'nic',
120
+ name: item.network + index,
121
+ testId: `select-nic-value-${index + 1}`,
122
+ }
123
+ }) || []
124
+
125
+ bootList.value = [...hardDisks, ...cdDvdDrives, ...networks].sort(
126
+ (a, b) => a.order - b.order
127
+ )
128
+ },
129
+ { deep: true, immediate: true }
130
+ )
131
+
132
+ const onChangeOrder = (event: UI_I_DropEvent): void => {
133
+ let order = -1
134
+ bootList.value = bootList.value
135
+ .map((item) => {
136
+ if (item === event.target) {
137
+ item.order = event.toPosition
138
+ return item
139
+ }
140
+
141
+ item.order = order + 1 === event.toPosition ? (order += 2) : order++
142
+
143
+ return item
144
+ })
145
+ .sort((a, b) => a.order - b.order)
146
+ }
147
+
148
+ watch(
149
+ bootList,
150
+ (newValue) => {
151
+ const networks: UI_I_SendDataNewNetwork[] = []
152
+ const hardDisks: UI_I_SendDataNewHardDisk[] = []
153
+ const cdDvdDrives: UI_I_SendDataNewCdDvdDrive[] = []
154
+ let index = 0
155
+ newValue.forEach((boot) => {
156
+ if (boot.type === 'nic') {
157
+ const network = props.networks?.find(
158
+ (network, index2) => network.network + index2 === boot.name
159
+ )
160
+ if (network) {
161
+ networks.push({
162
+ ...network,
163
+ boot_order: boot.isChecked ? ++index : 0,
164
+ })
165
+ }
166
+ } else if (boot.type === 'disk') {
167
+ const hardDisk = props.hardDisks?.find(
168
+ (hardDisk, index2) => hardDisk.source + index2 === boot.name
169
+ )
170
+ if (hardDisk) {
171
+ hardDisks.push({
172
+ ...hardDisk,
173
+ boot_order: boot.isChecked ? ++index : 0,
174
+ })
175
+ }
176
+ } else {
177
+ const cdDvdDrive = props.cdDvdDrives?.find(
178
+ (cdDvdDrive, index2) => cdDvdDrive.source + index2 === boot.name
179
+ )
180
+ if (cdDvdDrive) {
181
+ cdDvdDrives.push({
182
+ ...cdDvdDrive,
183
+ boot_order: boot.isChecked ? ++index : 0,
184
+ })
185
+ }
186
+ }
187
+ })
188
+
189
+ emits('change', [hardDisks, cdDvdDrives, networks])
190
+ },
191
+ { deep: true, immediate: true }
192
+ )
193
+ </script>
194
+
195
+ <style scoped lang="scss">
196
+ .boot-orders {
197
+ .device-icon {
198
+ margin-right: 6px;
199
+ }
200
+ }
201
+ </style>