bfg-common 1.5.335 → 1.5.336

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (136) hide show
  1. package/CODE_STYLE.md +109 -109
  2. package/assets/img/icons/icons-sprite-dark-3.svg +227 -227
  3. package/assets/img/icons/icons-sprite-dark-5.svg +488 -488
  4. package/assets/img/icons/icons-sprite-light-3.svg +227 -227
  5. package/assets/img/icons/icons-sprite-light-5.svg +488 -488
  6. package/assets/scss/common/icons/icons-1.scss +3 -3
  7. package/assets/scss/common/icons/icons-5.scss +5 -5
  8. package/components/atoms/TheIcon3.vue +50 -50
  9. package/components/atoms/collapse/CollapseNav.vue +170 -170
  10. package/components/atoms/collapse/CollapseNavItem.vue +226 -226
  11. package/components/atoms/nav/NavBar.vue +147 -147
  12. package/components/atoms/perPage/PerPage.vue +58 -58
  13. package/components/atoms/table/dataGrid/DataGrid.vue +1717 -1717
  14. package/components/atoms/table/dataGrid/lib/config/settingsTable.ts +94 -94
  15. package/components/atoms/table/dataGrid/lib/utils/export.ts +16 -16
  16. package/components/atoms/tabs/VerticalTabs.vue +105 -105
  17. package/components/common/backup/storage/actions/add/lib/config/steps.ts +168 -168
  18. package/components/common/backup/storage/actions/add/steps/hostAccessibility/HostAccessibility.vue +52 -52
  19. package/components/common/backup/storage/actions/add/steps/readyComplete/ReadyComplete.vue +45 -45
  20. package/components/common/backup/storage/actions/delete/Delete.vue +65 -65
  21. package/components/common/browse/blocks/contents/filesNew/Skeleton.vue +18 -18
  22. package/components/common/context/lib/models/interfaces.ts +33 -33
  23. package/components/common/diagramMain/DiagramMain.vue +897 -897
  24. package/components/common/diagramMain/modals/lib/config/networkModal.ts +398 -398
  25. package/components/common/diagramMain/network/Network.vue +141 -141
  26. package/components/common/layout/theHeader/helpMenu/About.vue +82 -82
  27. package/components/common/layout/theHeader/userMenu/modals/preferences/view/ViewOld.vue +112 -112
  28. package/components/common/monitor/overview/OverviewOld.vue +139 -139
  29. package/components/common/pages/home/headline/Headline.vue +45 -45
  30. package/components/common/pages/home/headline/HeadlineOld.vue +42 -42
  31. package/components/common/pages/home/lib/models/interfaces.ts +48 -48
  32. package/components/common/pages/home/widgets/Widgets.vue +49 -49
  33. package/components/common/pages/home/widgets/WidgetsNew.vue +88 -88
  34. package/components/common/pages/home/widgets/WidgetsOld.vue +36 -36
  35. package/components/common/pages/home/widgets/hosts/Hosts.vue +27 -27
  36. package/components/common/pages/home/widgets/hosts/lib/config/items.ts +23 -23
  37. package/components/common/pages/home/widgets/vms/Vms.vue +26 -26
  38. package/components/common/pages/home/widgets/vms/VmsOld.vue +35 -35
  39. package/components/common/pages/home/widgets/vms/lib/config/items.ts +19 -19
  40. package/components/common/pages/packages/Packages.vue +208 -208
  41. package/components/common/pages/shortcuts/block/BlockOld.vue +68 -68
  42. package/components/common/readyToComplete/ReadyToComplete.vue +17 -17
  43. package/components/common/recursionTree/RecursionTree.vue +223 -223
  44. package/components/common/select/button/ButtonDropdown.vue +112 -112
  45. package/components/common/select/radio/RadioGroup.vue +135 -135
  46. package/components/common/spiceConsole/Drawer.vue +377 -377
  47. package/components/common/spiceConsole/SpiceConsole.vue +127 -127
  48. package/components/common/spiceConsole/lib/models/interfaces.ts +5 -5
  49. package/components/common/tools/Actions.vue +207 -207
  50. package/components/common/vm/actions/add/New.vue +647 -647
  51. package/components/common/vm/actions/add/Old.vue +388 -388
  52. package/components/common/vm/actions/add/folderTreeView/FolderTreeView.vue +72 -72
  53. package/components/common/vm/actions/add/folderTreeView/New.vue +40 -40
  54. package/components/common/vm/actions/add/folderTreeView/Old.vue +50 -50
  55. package/components/common/vm/actions/clone/Clone.vue +823 -823
  56. package/components/common/vm/actions/clone/lib/config/steps.ts +291 -291
  57. package/components/common/vm/actions/clone/toTemplate/lib/config/steps.ts +116 -116
  58. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardwareOld.vue +321 -321
  59. package/components/common/vm/actions/common/customizeHardware/virtualHardware/browseView/BrowseView.vue +227 -227
  60. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/Bus.vue +100 -100
  61. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDrive.vue +232 -232
  62. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDriveOld.vue +168 -168
  63. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Media.vue +25 -25
  64. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaNew.vue +78 -78
  65. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaOld.vue +50 -50
  66. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/Shares.vue +140 -140
  67. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/lib/config/options.ts +28 -28
  68. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/tooltip/TooltipNew.vue +154 -154
  69. package/components/common/vm/actions/common/customizeHardware/virtualHardware/lib/config/dropdownItems.ts +155 -155
  70. package/components/common/vm/actions/common/customizeHardware/virtualHardware/limit/Limit.vue +220 -220
  71. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/Memory.vue +307 -307
  72. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +385 -385
  73. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/Location.vue +154 -154
  74. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/LocationOld.vue +85 -85
  75. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetwork.vue +288 -288
  76. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/table/lib/config/config.ts +94 -94
  77. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddress.vue +119 -119
  78. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/NewPciDevice.vue +205 -205
  79. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoNew.vue +66 -66
  80. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoOld.vue +62 -62
  81. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIo.vue +31 -31
  82. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIoOld.vue +76 -76
  83. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/Note.vue +15 -15
  84. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteNew.vue +42 -42
  85. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteOld.vue +30 -30
  86. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGridOld.vue +84 -84
  87. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/Other.vue +16 -16
  88. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCard.vue +154 -154
  89. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/numberDisplays/NumberDisplays.vue +53 -53
  90. package/components/common/vm/actions/common/customizeHardware/vmoptions/Vmoptions.vue +155 -155
  91. package/components/common/vm/actions/common/customizeHardware/vmoptions/VmoptionsNew.vue +130 -130
  92. package/components/common/vm/actions/common/customizeHardware/vmoptions/VmoptionsOld.vue +113 -113
  93. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/delay/Delay.vue +32 -32
  94. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/Firmware.vue +60 -60
  95. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +174 -174
  96. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptions.vue +95 -95
  97. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptionsOld.vue +155 -155
  98. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/Keymap.vue +32 -32
  99. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/KeymapOld.vue +44 -44
  100. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/Password.vue +103 -103
  101. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirection.vue +28 -28
  102. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionOld.vue +44 -44
  103. package/components/common/vm/actions/common/select/compatibility/Old.vue +107 -107
  104. package/components/common/vm/actions/common/select/computeResource/treeView/TreeView.vue +118 -118
  105. package/components/common/vm/actions/common/select/createType/CreateType.vue +38 -38
  106. package/components/common/vm/actions/common/select/createType/lib/config/items.ts +48 -48
  107. package/components/common/vm/actions/common/select/createType/lib/models/interfaces.ts +5 -5
  108. package/components/common/vm/actions/common/select/name/Name.vue +174 -174
  109. package/components/common/vm/actions/common/select/os/Old.vue +152 -152
  110. package/components/common/vm/actions/common/select/os/Os.vue +139 -139
  111. package/components/common/vm/actions/common/select/storage/new/lib/models/interfaces.ts +5 -5
  112. package/components/common/vm/actions/common/select/storage/new/lib/utils/utils.ts +21 -21
  113. package/components/common/vm/actions/editSettings/EditSettings.vue +242 -242
  114. package/components/common/vm/actions/editSettings/new/Skeleton.vue +88 -88
  115. package/components/common/vmt/actions/add/lib/models/interfaces.ts +23 -23
  116. package/components/common/wizards/network/add/steps/SelectConnectionType.vue +104 -104
  117. package/components/common/wizards/network/add/steps/SelectedTargetDevice.vue +467 -467
  118. package/components/common/wizards/vm/migrate/Migrate.vue +349 -349
  119. package/components/common/wizards/vm/migrate/lib/config/constructDataReady.ts +220 -220
  120. package/components/common/wizards/vm/migrate/lib/config/steps.ts +157 -157
  121. package/components/common/wizards/vm/migrate/lib/validations.ts +68 -68
  122. package/components/common/wizards/vm/migrate/select/network/Network.vue +103 -103
  123. package/components/common/wizards/vm/migrate/select/network/table/network/lib/config/advancedTable.ts +91 -91
  124. package/components/common/wizards/vm/migrate/select/type/lib/config/typeOptions.ts +45 -45
  125. package/composables/productNameLocal.ts +30 -30
  126. package/composables/useAppVersion.ts +21 -21
  127. package/composables/useLocalStorage.ts +1 -1
  128. package/package.json +1 -1
  129. package/plugins/date.ts +233 -233
  130. package/plugins/panelStates.ts +70 -70
  131. package/plugins/text.ts +59 -59
  132. package/public/spice-console/lib/images/bitmap.js +203 -203
  133. package/public/spice-console/network/spicechannel.js +387 -387
  134. package/store/main/mutations.ts +7 -7
  135. package/store/main/state.ts +7 -7
  136. package/store/tasks/mappers/recentTasks.ts +64 -64
@@ -1,140 +1,140 @@
1
- <template>
2
- <common-vm-actions-common-customize-hardware-virtual-hardware-cpu-shares-new
3
- v-if="isNewView"
4
- v-model:shares-type="sharesTypeLocal"
5
- v-model:shares="sharesLocal"
6
- :disabled="props.disabled"
7
- :shares-type-options="sharesTypeOptions"
8
- :shares-errors-texts="sharesLocalAndApiErrorsTexts"
9
- :shares-options="sharesOptions"
10
- :is-disabled-shares="isDisabledShares"
11
- @change-shares-type="onChangeSharesType"
12
- @remove-error="onRemoveValidationError"
13
- />
14
- <common-vm-actions-common-customize-hardware-virtual-hardware-cpu-shares-old
15
- v-else
16
- v-model:shares-type="sharesTypeLocal"
17
- v-model:shares="sharesLocal"
18
- :disabled="props.disabled"
19
- :shares-type-options="sharesTypeOptions"
20
- :shares-errors-texts="sharesLocalAndApiErrorsTexts"
21
- :shares-options="sharesOptions"
22
- :is-disabled-shares="isDisabledShares"
23
- @change-shares-type="onChangeSharesType"
24
- @remove-error="onRemoveValidationError"
25
- />
26
- </template>
27
-
28
- <script setup lang="ts">
29
- import type {
30
- UI_I_Localization,
31
- UI_I_HTMLSelectElement,
32
- } from '~/lib/models/interfaces'
33
- import type { UI_I_ErrorValidationField } from '~/lib/models/store/interfaces'
34
- import type { UI_I_OptionItem } from '~/components/atoms/lib/models/interfaces'
35
- import {
36
- sharesTypeOptionsFunc,
37
- sharesOptionsFunc,
38
- } from '~/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/lib/config/options'
39
-
40
- const props = defineProps<{
41
- shares: string
42
- sharesType: string
43
- disabled: boolean
44
- errorValidationFields: UI_I_ErrorValidationField<string>[]
45
- }>()
46
- const emits = defineEmits<{
47
- (event: 'update:shares', value: string): void
48
- (event: 'update:shares-type', value: string): void
49
- (event: 'invalid', value: boolean): void
50
- (event: 'remove-error-by-title', value: string): void
51
- }>()
52
-
53
- const { $store }: any = useNuxtApp()
54
- const isNewView = computed<boolean>(() => $store.getters['main/getIsNewView'])
55
-
56
- const localization = computed<UI_I_Localization>(() => useLocal())
57
-
58
- const apiErrorLocal = computed<string>(() => {
59
- return (
60
- props.errorValidationFields?.find(
61
- (message) => message.field === 'cpu.shares'
62
- )?.error_message || ''
63
- )
64
- })
65
-
66
- const maxShares = 262_144
67
- const sharesOptions = computed<UI_I_OptionItem[]>(() => {
68
- return sharesOptionsFunc(localization.value, maxShares)
69
- })
70
-
71
- const sharesTypeOptions = ref<UI_I_OptionItem[]>(
72
- sharesTypeOptionsFunc(localization.value)
73
- )
74
-
75
- const isDisabledShares = computed<boolean>(
76
- () => sharesTypeLocal.value !== '2' || props.disabled
77
- )
78
- const sharesLocal = computed<string>({
79
- get() {
80
- return props.shares
81
- },
82
- set(newValue) {
83
- emits('update:shares', newValue)
84
- },
85
- })
86
- const sharesTypeLocal = computed<string>({
87
- get() {
88
- return props.sharesType
89
- },
90
- set(newValue) {
91
- emits('update:shares-type', newValue)
92
- },
93
- })
94
- const onChangeSharesType = (event: UI_I_HTMLSelectElement): void => {
95
- const value = event.target.value
96
- if (value === '2') return
97
- sharesLocal.value = event.target.value
98
- }
99
-
100
- const sharesErrorLocalText = computed<string>(() => {
101
- if (+sharesLocal.value < 2 || +sharesLocal.value > maxShares) {
102
- return localization.value.common.sharesMustBe
103
- .replace('{0}', '2')
104
- .replace('{1}', maxShares + '')
105
- }
106
-
107
- const validValue = /^\d+(\.\d+)?$/.test(sharesLocal.value + '')
108
- if (!validValue) {
109
- return localization.value.common.inputContainsInvalidCharacters
110
- }
111
-
112
- return ''
113
- })
114
- const sharesInvalid = computed<boolean>(() => !!sharesErrorLocalText.value)
115
- watch(
116
- sharesInvalid,
117
- (newValue) => {
118
- emits('invalid', newValue)
119
- },
120
- { immediate: true }
121
- )
122
-
123
- const sharesLocalAndApiErrorsTexts = computed<string>(() => {
124
- const localError = sharesErrorLocalText.value
125
- const apiError = apiErrorLocal.value
126
-
127
- let result = ''
128
- if (localError && !apiError) result = localError
129
- if (localError && apiError) result = localError + ', ' + apiError
130
- if (!localError) result = apiError
131
-
132
- return result
133
- })
134
-
135
- const onRemoveValidationError = (): void => {
136
- emits('remove-error-by-title', 'cpu.shares')
137
- }
138
- </script>
139
-
140
- <style scoped></style>
1
+ <template>
2
+ <common-vm-actions-common-customize-hardware-virtual-hardware-cpu-shares-new
3
+ v-if="isNewView"
4
+ v-model:shares-type="sharesTypeLocal"
5
+ v-model:shares="sharesLocal"
6
+ :disabled="props.disabled"
7
+ :shares-type-options="sharesTypeOptions"
8
+ :shares-errors-texts="sharesLocalAndApiErrorsTexts"
9
+ :shares-options="sharesOptions"
10
+ :is-disabled-shares="isDisabledShares"
11
+ @change-shares-type="onChangeSharesType"
12
+ @remove-error="onRemoveValidationError"
13
+ />
14
+ <common-vm-actions-common-customize-hardware-virtual-hardware-cpu-shares-old
15
+ v-else
16
+ v-model:shares-type="sharesTypeLocal"
17
+ v-model:shares="sharesLocal"
18
+ :disabled="props.disabled"
19
+ :shares-type-options="sharesTypeOptions"
20
+ :shares-errors-texts="sharesLocalAndApiErrorsTexts"
21
+ :shares-options="sharesOptions"
22
+ :is-disabled-shares="isDisabledShares"
23
+ @change-shares-type="onChangeSharesType"
24
+ @remove-error="onRemoveValidationError"
25
+ />
26
+ </template>
27
+
28
+ <script setup lang="ts">
29
+ import type {
30
+ UI_I_Localization,
31
+ UI_I_HTMLSelectElement,
32
+ } from '~/lib/models/interfaces'
33
+ import type { UI_I_ErrorValidationField } from '~/lib/models/store/interfaces'
34
+ import type { UI_I_OptionItem } from '~/components/atoms/lib/models/interfaces'
35
+ import {
36
+ sharesTypeOptionsFunc,
37
+ sharesOptionsFunc,
38
+ } from '~/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/lib/config/options'
39
+
40
+ const props = defineProps<{
41
+ shares: string
42
+ sharesType: string
43
+ disabled: boolean
44
+ errorValidationFields: UI_I_ErrorValidationField<string>[]
45
+ }>()
46
+ const emits = defineEmits<{
47
+ (event: 'update:shares', value: string): void
48
+ (event: 'update:shares-type', value: string): void
49
+ (event: 'invalid', value: boolean): void
50
+ (event: 'remove-error-by-title', value: string): void
51
+ }>()
52
+
53
+ const { $store }: any = useNuxtApp()
54
+ const isNewView = computed<boolean>(() => $store.getters['main/getIsNewView'])
55
+
56
+ const localization = computed<UI_I_Localization>(() => useLocal())
57
+
58
+ const apiErrorLocal = computed<string>(() => {
59
+ return (
60
+ props.errorValidationFields?.find(
61
+ (message) => message.field === 'cpu.shares'
62
+ )?.error_message || ''
63
+ )
64
+ })
65
+
66
+ const maxShares = 262_144
67
+ const sharesOptions = computed<UI_I_OptionItem[]>(() => {
68
+ return sharesOptionsFunc(localization.value, maxShares)
69
+ })
70
+
71
+ const sharesTypeOptions = ref<UI_I_OptionItem[]>(
72
+ sharesTypeOptionsFunc(localization.value)
73
+ )
74
+
75
+ const isDisabledShares = computed<boolean>(
76
+ () => sharesTypeLocal.value !== '2' || props.disabled
77
+ )
78
+ const sharesLocal = computed<string>({
79
+ get() {
80
+ return props.shares
81
+ },
82
+ set(newValue) {
83
+ emits('update:shares', newValue)
84
+ },
85
+ })
86
+ const sharesTypeLocal = computed<string>({
87
+ get() {
88
+ return props.sharesType
89
+ },
90
+ set(newValue) {
91
+ emits('update:shares-type', newValue)
92
+ },
93
+ })
94
+ const onChangeSharesType = (event: UI_I_HTMLSelectElement): void => {
95
+ const value = event.target.value
96
+ if (value === '2') return
97
+ sharesLocal.value = event.target.value
98
+ }
99
+
100
+ const sharesErrorLocalText = computed<string>(() => {
101
+ if (+sharesLocal.value < 2 || +sharesLocal.value > maxShares) {
102
+ return localization.value.common.sharesMustBe
103
+ .replace('{0}', '2')
104
+ .replace('{1}', maxShares + '')
105
+ }
106
+
107
+ const validValue = /^\d+(\.\d+)?$/.test(sharesLocal.value + '')
108
+ if (!validValue) {
109
+ return localization.value.common.inputContainsInvalidCharacters
110
+ }
111
+
112
+ return ''
113
+ })
114
+ const sharesInvalid = computed<boolean>(() => !!sharesErrorLocalText.value)
115
+ watch(
116
+ sharesInvalid,
117
+ (newValue) => {
118
+ emits('invalid', newValue)
119
+ },
120
+ { immediate: true }
121
+ )
122
+
123
+ const sharesLocalAndApiErrorsTexts = computed<string>(() => {
124
+ const localError = sharesErrorLocalText.value
125
+ const apiError = apiErrorLocal.value
126
+
127
+ let result = ''
128
+ if (localError && !apiError) result = localError
129
+ if (localError && apiError) result = localError + ', ' + apiError
130
+ if (!localError) result = apiError
131
+
132
+ return result
133
+ })
134
+
135
+ const onRemoveValidationError = (): void => {
136
+ emits('remove-error-by-title', 'cpu.shares')
137
+ }
138
+ </script>
139
+
140
+ <style scoped></style>
@@ -1,28 +1,28 @@
1
- import type { UI_I_Localization } from '~/lib/models/interfaces'
2
- import type { UI_I_OptionItem } from '~/components/atoms/lib/models/interfaces'
3
-
4
- export const sharesOptionsFunc = (
5
- localization: UI_I_Localization,
6
- maxShares: number
7
- ): UI_I_OptionItem[] => {
8
- return [
9
- {
10
- text: `${localization.common.minimum} 2`,
11
- value: 2,
12
- },
13
- {
14
- text: `${localization.common.maximum} ${maxShares}`,
15
- value: maxShares,
16
- },
17
- ]
18
- }
19
- export const sharesTypeOptionsFunc = (
20
- localization: UI_I_Localization
21
- ): UI_I_OptionItem[] => {
22
- return [
23
- { text: localization.common.low, value: '1000' },
24
- { text: localization.common.normal, value: '2000' },
25
- { text: localization.common.high, value: '4000' },
26
- { text: localization.common.custom, value: '2' },
27
- ]
28
- }
1
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
2
+ import type { UI_I_OptionItem } from '~/components/atoms/lib/models/interfaces'
3
+
4
+ export const sharesOptionsFunc = (
5
+ localization: UI_I_Localization,
6
+ maxShares: number
7
+ ): UI_I_OptionItem[] => {
8
+ return [
9
+ {
10
+ text: `${localization.common.minimum} 2`,
11
+ value: 2,
12
+ },
13
+ {
14
+ text: `${localization.common.maximum} ${maxShares}`,
15
+ value: maxShares,
16
+ },
17
+ ]
18
+ }
19
+ export const sharesTypeOptionsFunc = (
20
+ localization: UI_I_Localization
21
+ ): UI_I_OptionItem[] => {
22
+ return [
23
+ { text: localization.common.low, value: '1000' },
24
+ { text: localization.common.normal, value: '2000' },
25
+ { text: localization.common.high, value: '4000' },
26
+ { text: localization.common.custom, value: '2' },
27
+ ]
28
+ }
@@ -1,154 +1,154 @@
1
- <template>
2
- <div id="cpu-help-icon" class="flex-align-center relative">
3
- <ui-icon
4
- :class="['cpu-help-icon cursor-pointer', { active: isShowCpuHelp }]"
5
- width="20"
6
- height="20"
7
- name="info"
8
- data-id="show-cpu-help-icon"
9
- @click.stop="isShowCpuHelp = !isShowCpuHelp"
10
- />
11
- <Teleport to="body">
12
- <ui-dropdown
13
- :show="isShowCpuHelp"
14
- :items="[]"
15
- elem-id="cpu-help-icon"
16
- test-id="cpu-help"
17
- width="480px"
18
- max-height="unset"
19
- left
20
- @hide="isShowCpuHelp = false"
21
- >
22
- <template #content>
23
- <div class="cpu-help-content">
24
- <div class="headline">
25
- <ui-icon name="info-2" width="16" height="16" />
26
- <h3 class="cpu-help-title">
27
- {{ localization.common.cpu }}
28
- </h3>
29
- <ui-icon
30
- name="close"
31
- width="16"
32
- height="16"
33
- class="cpu-help-close-icon cursor-pointer"
34
- @click="isShowCpuHelp = false"
35
- />
36
- </div>
37
-
38
- <p class="cpu-help-text">
39
- {{ localization.common.vmCpuHelpText1 }}
40
- </p>
41
- <p class="cpu-help-text">
42
- {{ props.description }}
43
- </p>
44
- <p class="cpu-help-text">
45
- {{ localization.common.vmCpuHelpText3 }}
46
- </p>
47
- <p class="cpu-help-text">
48
- {{ localization.common.vmCpuHelpText4 }}
49
- </p>
50
-
51
- <div>
52
- <a
53
- id="cpu-more-info-link"
54
- href="javascript:void(0)"
55
- class="cpu-more-info"
56
- >{{ localization.common.moreInformation }}</a
57
- >
58
- </div>
59
- </div>
60
- </template>
61
- </ui-dropdown>
62
- </Teleport>
63
- </div>
64
- </template>
65
-
66
- <script lang="ts" setup>
67
- import type { UI_I_Localization } from '~/lib/models/interfaces'
68
-
69
- const props = defineProps<{
70
- description: string
71
- }>()
72
-
73
- const localization = computed<UI_I_Localization>(() => useLocal())
74
-
75
- const isShowCpuHelp = ref<boolean>(false)
76
- </script>
77
-
78
- <style lang="scss">
79
- :root {
80
- --cpu-help-color: #4d5d69;
81
- --cpu-help-icon-hover-color: #4d5d69;
82
- --cpu-help-icon-active-color: #008fd6;
83
- --cpu-help-close-icon-color: #182531;
84
- --cpu-help-more-info-color: #008fd6;
85
- }
86
- :root.dark-theme {
87
- --cpu-help-color: #e9eaec;
88
- --cpu-help-icon-hover-color: #e9eaec;
89
- --cpu-help-icon-active-color: #2ba2de;
90
- --cpu-help-close-icon-color: #e9eaec;
91
- --cpu-help-more-info-color: #2ba2de;
92
- }
93
-
94
- .light-theme {
95
- .stack-block-expanded {
96
- --cpu-help-icon-hover-color: #e9eaec;
97
- --cpu-help-icon-active-color: #2ba2de;
98
- }
99
- }
100
- .dark-theme {
101
- .stack-block-expanded {
102
- --cpu-help-icon-hover-color: #4d5d69;
103
- --cpu-help-icon-active-color: #008fd6;
104
- }
105
- }
106
- </style>
107
- <style lang="scss" scoped>
108
- .cpu-help-icon {
109
- color: #9da6ad; // for light and dark
110
-
111
- &:hover {
112
- color: var(--cpu-help-icon-hover-color);
113
- }
114
- &.active {
115
- color: var(--cpu-help-icon-active-color);
116
- }
117
- }
118
- .cpu-help-content {
119
- padding: 16px;
120
-
121
- .headline {
122
- display: flex;
123
- align-items: center;
124
- gap: 8px;
125
- margin-bottom: 12px;
126
-
127
- .cpu-help-title {
128
- flex: 1;
129
- font-size: 14px;
130
- font-weight: 500;
131
- line-height: 16.94px;
132
- color: var(--cpu-help-color);
133
- }
134
- .cpu-help-close-icon {
135
- color: var(--cpu-help-close-icon-color);
136
- }
137
- }
138
-
139
- .cpu-help-text {
140
- font-size: 13px;
141
- line-height: 15.73px;
142
- color: var(--cpu-help-color);
143
- margin-bottom: 12px;
144
- }
145
-
146
- .cpu-more-info {
147
- font-size: 13px;
148
- font-weight: 500;
149
- line-height: 15.73px;
150
- color: var(--cpu-help-more-info-color);
151
- text-decoration: none;
152
- }
153
- }
154
- </style>
1
+ <template>
2
+ <div id="cpu-help-icon" class="flex-align-center relative">
3
+ <ui-icon
4
+ :class="['cpu-help-icon cursor-pointer', { active: isShowCpuHelp }]"
5
+ width="20"
6
+ height="20"
7
+ name="info"
8
+ data-id="show-cpu-help-icon"
9
+ @click.stop="isShowCpuHelp = !isShowCpuHelp"
10
+ />
11
+ <Teleport to="body">
12
+ <ui-dropdown
13
+ :show="isShowCpuHelp"
14
+ :items="[]"
15
+ elem-id="cpu-help-icon"
16
+ test-id="cpu-help"
17
+ width="480px"
18
+ max-height="unset"
19
+ left
20
+ @hide="isShowCpuHelp = false"
21
+ >
22
+ <template #content>
23
+ <div class="cpu-help-content">
24
+ <div class="headline">
25
+ <ui-icon name="info-2" width="16" height="16" />
26
+ <h3 class="cpu-help-title">
27
+ {{ localization.common.cpu }}
28
+ </h3>
29
+ <ui-icon
30
+ name="close"
31
+ width="16"
32
+ height="16"
33
+ class="cpu-help-close-icon cursor-pointer"
34
+ @click="isShowCpuHelp = false"
35
+ />
36
+ </div>
37
+
38
+ <p class="cpu-help-text">
39
+ {{ localization.common.vmCpuHelpText1 }}
40
+ </p>
41
+ <p class="cpu-help-text">
42
+ {{ props.description }}
43
+ </p>
44
+ <p class="cpu-help-text">
45
+ {{ localization.common.vmCpuHelpText3 }}
46
+ </p>
47
+ <p class="cpu-help-text">
48
+ {{ localization.common.vmCpuHelpText4 }}
49
+ </p>
50
+
51
+ <div>
52
+ <a
53
+ id="cpu-more-info-link"
54
+ href="javascript:void(0)"
55
+ class="cpu-more-info"
56
+ >{{ localization.common.moreInformation }}</a
57
+ >
58
+ </div>
59
+ </div>
60
+ </template>
61
+ </ui-dropdown>
62
+ </Teleport>
63
+ </div>
64
+ </template>
65
+
66
+ <script lang="ts" setup>
67
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
68
+
69
+ const props = defineProps<{
70
+ description: string
71
+ }>()
72
+
73
+ const localization = computed<UI_I_Localization>(() => useLocal())
74
+
75
+ const isShowCpuHelp = ref<boolean>(false)
76
+ </script>
77
+
78
+ <style lang="scss">
79
+ :root {
80
+ --cpu-help-color: #4d5d69;
81
+ --cpu-help-icon-hover-color: #4d5d69;
82
+ --cpu-help-icon-active-color: #008fd6;
83
+ --cpu-help-close-icon-color: #182531;
84
+ --cpu-help-more-info-color: #008fd6;
85
+ }
86
+ :root.dark-theme {
87
+ --cpu-help-color: #e9eaec;
88
+ --cpu-help-icon-hover-color: #e9eaec;
89
+ --cpu-help-icon-active-color: #2ba2de;
90
+ --cpu-help-close-icon-color: #e9eaec;
91
+ --cpu-help-more-info-color: #2ba2de;
92
+ }
93
+
94
+ .light-theme {
95
+ .stack-block-expanded {
96
+ --cpu-help-icon-hover-color: #e9eaec;
97
+ --cpu-help-icon-active-color: #2ba2de;
98
+ }
99
+ }
100
+ .dark-theme {
101
+ .stack-block-expanded {
102
+ --cpu-help-icon-hover-color: #4d5d69;
103
+ --cpu-help-icon-active-color: #008fd6;
104
+ }
105
+ }
106
+ </style>
107
+ <style lang="scss" scoped>
108
+ .cpu-help-icon {
109
+ color: #9da6ad; // for light and dark
110
+
111
+ &:hover {
112
+ color: var(--cpu-help-icon-hover-color);
113
+ }
114
+ &.active {
115
+ color: var(--cpu-help-icon-active-color);
116
+ }
117
+ }
118
+ .cpu-help-content {
119
+ padding: 16px;
120
+
121
+ .headline {
122
+ display: flex;
123
+ align-items: center;
124
+ gap: 8px;
125
+ margin-bottom: 12px;
126
+
127
+ .cpu-help-title {
128
+ flex: 1;
129
+ font-size: 14px;
130
+ font-weight: 500;
131
+ line-height: 16.94px;
132
+ color: var(--cpu-help-color);
133
+ }
134
+ .cpu-help-close-icon {
135
+ color: var(--cpu-help-close-icon-color);
136
+ }
137
+ }
138
+
139
+ .cpu-help-text {
140
+ font-size: 13px;
141
+ line-height: 15.73px;
142
+ color: var(--cpu-help-color);
143
+ margin-bottom: 12px;
144
+ }
145
+
146
+ .cpu-more-info {
147
+ font-size: 13px;
148
+ font-weight: 500;
149
+ line-height: 15.73px;
150
+ color: var(--cpu-help-more-info-color);
151
+ text-decoration: none;
152
+ }
153
+ }
154
+ </style>