bfg-common 1.5.249 → 1.5.250

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 (35) hide show
  1. package/assets/img/icons/icons-sprite-dark-3.svg +227 -227
  2. package/assets/img/icons/icons-sprite-dark-5.svg +488 -488
  3. package/assets/img/icons/icons-sprite-light-3.svg +227 -227
  4. package/assets/img/icons/icons-sprite-light-5.svg +488 -488
  5. package/assets/localization/local_be.json +7 -1
  6. package/assets/localization/local_en.json +7 -1
  7. package/assets/localization/local_hy.json +7 -1
  8. package/assets/localization/local_kk.json +7 -1
  9. package/assets/localization/local_ru.json +7 -1
  10. package/assets/localization/local_zh.json +7 -1
  11. package/assets/scss/common/theme.scss +16 -0
  12. package/components/atoms/stack/StackBlock.vue +185 -185
  13. package/components/atoms/table/info/lib/models/interfaces.ts +10 -10
  14. package/components/common/backup/storage/actions/add/New.vue +4 -9
  15. package/components/common/backup/storage/actions/add/steps/common/tooltipInfo/TooltipInfo.vue +94 -0
  16. package/components/common/backup/storage/actions/add/steps/nameAndConfigure/NameAndConfigureNew.vue +9 -18
  17. package/components/common/backup/storage/actions/add/steps/typeMode/TypeModeNew.vue +3 -12
  18. package/components/common/layout/theHeader/feedback/new/additionalDetails/Headline.vue +67 -8
  19. package/components/common/layout/theHeader/feedback/new/subtitle/Subtitle.vue +72 -8
  20. package/components/common/layout/theHeader/userMenu/modals/preferences/PreferencesOld.vue +1 -9
  21. package/components/common/pages/tasks/table/Table.vue +7 -15
  22. package/components/common/pages/tasks/table/errorInfo/ErrorInfo.vue +128 -0
  23. package/components/common/pages/tasks/table/expandDetails/ExpandDetails.vue +9 -15
  24. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/BusNew.vue +99 -10
  25. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/CpuNew.vue +3 -52
  26. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/model/ModelNew.vue +151 -32
  27. package/components/common/vm/actions/common/select/name/New.vue +70 -10
  28. package/components/common/wizards/datastore/add/New.vue +3 -8
  29. package/components/common/wizards/datastore/add/steps/common/tooltipInfo/TooltipInfo.vue +93 -0
  30. package/components/common/wizards/datastore/add/steps/nameAndConfigure/NameAndConfigureNew.vue +6 -20
  31. package/components/common/wizards/datastore/add/steps/nameAndDevice/NameAndDeviceNew.vue +3 -9
  32. package/components/common/wizards/datastore/add/steps/typeMode/TypeModeNew.vue +3 -8
  33. package/package.json +1 -1
  34. package/components/common/tooltip/Help.vue +0 -132
  35. package/components/common/tooltip/lib/models/types.ts +0 -1
@@ -34,38 +34,9 @@
34
34
  width="auto"
35
35
  />
36
36
 
37
- <common-tooltip-help
38
- test-id="cpu-help-tooltip"
39
- help-id="cpu-help-tooltip-icon"
40
- icon-width="20"
41
- icon-height="20"
42
- :title="localization.common.cpu"
43
- :dropdown-left="true"
44
- dropdown-width="480px"
45
- >
46
- <div class="cpu-info-block">
47
- <p class="help-text">
48
- {{ localization.common.vmCpuHelpText1 }}
49
- </p>
50
- <p class="help-text">
51
- {{ props.vmCpuHelpTextSecond }}
52
- </p>
53
- <p class="help-text">
54
- {{ localization.common.vmCpuHelpText3 }}
55
- </p>
56
- <p class="help-text">
57
- {{ localization.common.vmCpuHelpText4 }}
58
- </p>
59
- <div>
60
- <a
61
- id="cpu-more-info-link"
62
- href="javascript:void(0)"
63
- class="cpu-more-info"
64
- >{{ localization.common.moreInformation }}</a
65
- >
66
- </div>
67
- </div>
68
- </common-tooltip-help>
37
+ <common-vm-actions-common-customize-hardware-virtual-hardware-cpu-tooltip
38
+ :vm-cpu-help-text-second="props.vmCpuHelpTextSecond"
39
+ />
69
40
  </div>
70
41
  </template>
71
42
  <template #stackChildren>
@@ -202,14 +173,6 @@ const emits = defineEmits<{
202
173
  const localization = computed<UI_I_Localization>(() => useLocal())
203
174
  </script>
204
175
 
205
- <style>
206
- :root {
207
- --cpu-help-more-info-color: #008fd6;
208
- }
209
- :root.dark-theme {
210
- --cpu-help-more-info-color: #2ba2de;
211
- }
212
- </style>
213
176
  <style scoped lang="scss">
214
177
  :deep(.ui-main-select-toggle) {
215
178
  display: flex;
@@ -228,16 +191,4 @@ const localization = computed<UI_I_Localization>(() => useLocal())
228
191
  :deep(.unit .ui-main-select-toggle) {
229
192
  width: 80px;
230
193
  }
231
- .cpu-info-block {
232
- :deep(.help-text) {
233
- margin-bottom: 12px;
234
- }
235
- :deep(.cpu-more-info) {
236
- font-size: 13px;
237
- font-weight: 500;
238
- line-height: 15.73px;
239
- color: var(--cpu-help-more-info-color);
240
- text-decoration: none;
241
- }
242
- }
243
194
  </style>
@@ -25,23 +25,55 @@
25
25
  test-id="passthrough-host-cpu"
26
26
  @change="emits('change-passthrough-host-cpu', $event)"
27
27
  />
28
+ <div id="passthrough-help-icon" class="flex-align-center relative">
29
+ <ui-icon
30
+ width="16"
31
+ height="16"
32
+ name="info"
33
+ data-id="show-passthrough-help-icon"
34
+ :class="[
35
+ 'passthrough-help-icon cursor-pointer disabled',
36
+ { active: isShowPassthroughHost },
37
+ ]"
38
+ @click.stop="isShowPassthroughHost = !isShowPassthroughHost"
39
+ />
40
+ <Teleport to="body">
41
+ <ui-dropdown
42
+ :show="isShowPassthroughHost"
43
+ :items="[]"
44
+ elem-id="passthrough-help-icon"
45
+ test-id=""
46
+ width="480px"
47
+ left
48
+ @hide="isShowPassthroughHost = false"
49
+ >
50
+ <template #content>
51
+ <div class="help-content">
52
+ <div class="headline">
53
+ <ui-icon name="info-2" width="16" height="16" />
54
+ <h3 class="help-title">
55
+ {{ localization.mainNavigation.help }}
56
+ </h3>
57
+ <ui-icon
58
+ name="close"
59
+ width="16"
60
+ height="16"
61
+ class="cursor-pointer"
62
+ @click="isShowPassthroughHost = false"
63
+ />
64
+ </div>
28
65
 
29
- <common-tooltip-help
30
- class="ml-2"
31
- test-id="passthrough-help"
32
- help-id="passthrough-help-icon"
33
- :dropdown-left="true"
34
- :is-disabled="true"
35
- dropdown-width="480px"
36
- >
37
- <p class="help-text">
38
- Lorem ipsum dolor sit amet, consectetur adipisicing elit.
39
- A cum eius expedita, fuga mollitia perferendis quod soluta
40
- vel? Dolor, illo, nam? A consequatur, consequuntur eos
41
- impedit iusto labore sunt tempora!
42
- </p>
43
- </common-tooltip-help>
44
-
66
+ <p class="help-text">
67
+ Lorem ipsum dolor sit amet, consectetur adipisicing elit.
68
+ A cum eius expedita, fuga mollitia perferendis quod soluta
69
+ vel? Dolor, illo, nam? A consequatur, consequuntur eos
70
+ impedit iusto labore sunt tempora!
71
+ </p>
72
+ </div>
73
+ </template>
74
+ </ui-dropdown>
75
+ </Teleport>
76
+ </div>
45
77
  </div>
46
78
  <div class="host-model-cpu-wrap flex-align-center">
47
79
  <ui-checkbox
@@ -51,22 +83,55 @@
51
83
  test-id="host-model-cpu"
52
84
  @change="emits('change-host-model-cpu', $event)"
53
85
  />
86
+ <div id="host-model-help-icon" class="flex-align-center relative">
87
+ <ui-icon
88
+ width="16"
89
+ height="16"
90
+ name="info"
91
+ data-id="show-host-model-help-icon"
92
+ :class="[
93
+ 'host-model-help-icon cursor-pointer disabled',
94
+ { active: isShowHostModel },
95
+ ]"
96
+ @click.stop="isShowHostModel = !isShowHostModel"
97
+ />
98
+ <Teleport to="body">
99
+ <ui-dropdown
100
+ :show="isShowHostModel"
101
+ :items="[]"
102
+ elem-id="host-model-help-icon"
103
+ test-id=""
104
+ width="480px"
105
+ left
106
+ @hide="isShowHostModel = false"
107
+ >
108
+ <template #content>
109
+ <div class="help-content">
110
+ <div class="headline">
111
+ <ui-icon name="info-2" width="16" height="16" />
112
+ <h3 class="help-title">
113
+ {{ localization.mainNavigation.help }}
114
+ </h3>
115
+ <ui-icon
116
+ name="close"
117
+ width="16"
118
+ height="16"
119
+ class="cursor-pointer"
120
+ @click="isShowHostModel = false"
121
+ />
122
+ </div>
54
123
 
55
- <common-tooltip-help
56
- test-id="host-model-help"
57
- help-id="host-model-help-icon"
58
- :dropdown-left="true"
59
- :is-disabled="true"
60
- dropdown-width="480px"
61
- >
62
- <p class="help-text">
63
- Lorem ipsum dolor sit amet, consectetur adipisicing elit.
64
- A cum eius expedita, fuga mollitia perferendis quod soluta
65
- vel? Dolor, illo, nam? A consequatur, consequuntur eos
66
- impedit iusto labore sunt tempora!
67
- </p>
68
- </common-tooltip-help>
69
-
124
+ <p class="help-text">
125
+ Lorem ipsum dolor sit amet, consectetur adipisicing elit.
126
+ A cum eius expedita, fuga mollitia perferendis quod soluta
127
+ vel? Dolor, illo, nam? A consequatur, consequuntur eos
128
+ impedit iusto labore sunt tempora!
129
+ </p>
130
+ </div>
131
+ </template>
132
+ </ui-dropdown>
133
+ </Teleport>
134
+ </div>
70
135
  </div>
71
136
  </div>
72
137
  </template>
@@ -99,12 +164,22 @@ const emits = defineEmits<{
99
164
 
100
165
  const localization = computed<UI_I_Localization>(() => useLocal())
101
166
 
167
+ const isShowPassthroughHost = ref<boolean>(false)
168
+ const isShowHostModel = ref<boolean>(false)
169
+
102
170
  const onChangeCpuModel = (data: UI_T_SelectedValue): void => {
103
171
  emits('change-cpu-model', { target: { value: data } })
104
172
  }
105
173
  </script>
106
174
 
107
-
175
+ <style>
176
+ :root {
177
+ --cpu-model-help-icon-color: #4d5d69;
178
+ }
179
+ :root.dark-theme {
180
+ --cpu-model-help-icon-color: #e9eaec;
181
+ }
182
+ </style>
108
183
  <style scoped lang="scss">
109
184
  .limit-title {
110
185
  margin-right: 12px;
@@ -124,4 +199,48 @@ const onChangeCpuModel = (data: UI_T_SelectedValue): void => {
124
199
  }
125
200
  }
126
201
 
202
+ #passthrough-help-icon,
203
+ #host-model-help-icon {
204
+ margin-left: 8px;
205
+ }
206
+
207
+ .passthrough-help-icon,
208
+ .host-model-help-icon {
209
+ color: #9da6ad; // for light and dark
210
+
211
+ &:hover {
212
+ color: var(--cpu-model-help-icon-color);
213
+ }
214
+ &.active {
215
+ color: #008fd6;
216
+ }
217
+ &.disabled {
218
+ color: #bdc3c7;
219
+ pointer-events: none;
220
+ }
221
+ }
222
+ .help-content {
223
+ padding: 16px;
224
+
225
+ .headline {
226
+ display: flex;
227
+ align-items: center;
228
+ gap: 8px;
229
+ margin-bottom: 12px;
230
+
231
+ .help-title {
232
+ flex: 1;
233
+ font-size: 14px;
234
+ font-weight: 500;
235
+ line-height: 16.94px;
236
+ color: #4d5d69;
237
+ }
238
+ }
239
+
240
+ .help-text {
241
+ font-size: 13px;
242
+ line-height: 15.73px;
243
+ color: #4d5d69;
244
+ }
245
+ }
127
246
  </style>
@@ -15,18 +15,51 @@
15
15
  <div class="name-field">
16
16
  <div class="flex-1 flex-align-center">
17
17
  <label for="virtual-machine-name" class="name-label">{{
18
- localization.common.name
19
- }}</label>
20
-
21
- <common-tooltip-help
22
- test-id="virtual-machine-name"
23
- help-id="virtual-machine-name-icon"
24
- :title="localization.vmWizard.vmNameRules"
25
- :help-text="localization.common.vmNameValidationDescription"
26
- :dropdown-left="true"
27
- dropdown-width="320px"
18
+ localization.common.name
19
+ }}</label>
20
+ <ui-icon
21
+ id="virtual-machine-name-icon"
22
+ :class="{ active: isShowHelp }"
23
+ width="16"
24
+ height="16"
25
+ name="info"
26
+ data-id="virtual-machine-name-icon"
27
+ @click.stop="isShowHelp = !isShowHelp"
28
28
  />
29
29
  </div>
30
+ <Teleport to="body">
31
+ <ui-dropdown
32
+ :show="isShowHelp"
33
+ :items="[]"
34
+ elem-id="virtual-machine-name-icon"
35
+ test-id="virtual-machine-name"
36
+ width="320px"
37
+ left
38
+ @hide="isShowHelp = false"
39
+ >
40
+ <template #content>
41
+ <div class="vm-name-help-content">
42
+ <div class="headline">
43
+ <ui-icon name="info-2" width="16" height="16" />
44
+ <h3 class="vm-name-help-title">
45
+ {{ localization.vmWizard.vmNameRules }}
46
+ </h3>
47
+ <ui-icon
48
+ name="close"
49
+ width="16"
50
+ height="16"
51
+ class="hide-icon pointer"
52
+ @click="isShowHelp = false"
53
+ />
54
+ </div>
55
+
56
+ <p class="vm-name-help-text">
57
+ {{ localization.common.vmNameValidationDescription }}
58
+ </p>
59
+ </div>
60
+ </template>
61
+ </ui-dropdown>
62
+ </Teleport>
30
63
 
31
64
  <div class="flex-2">
32
65
  <ui-input
@@ -211,4 +244,31 @@ const onSelectNode = (node: UI_I_TreeNode) => {
211
244
  }
212
245
  }
213
246
 
247
+ .vm-name-help-content {
248
+ padding: 16px;
249
+
250
+ .headline {
251
+ display: flex;
252
+ align-items: center;
253
+ gap: 8px;
254
+ margin-bottom: 12px;
255
+
256
+ .vm-name-help-title {
257
+ flex: 1;
258
+ font-size: 14px;
259
+ font-weight: 500;
260
+ line-height: 16.94px;
261
+ color: var(--select-name-text-color);
262
+ }
263
+ .hide-icon {
264
+ color: var(--select-name-help-hide-icon-color);
265
+ }
266
+ }
267
+
268
+ .vm-name-help-text {
269
+ font-size: 13px;
270
+ line-height: 15.73px;
271
+ color: var(--select-name-text-color);
272
+ }
273
+ }
214
274
  </style>
@@ -21,14 +21,9 @@
21
21
  <div class="subtitle-block flex-row">
22
22
  <ui-wizard-subtitle :sub-title="selectedStep.subTitle" />
23
23
 
24
- <common-tooltip-help
25
- test-id="datastore-type-subtitle"
26
- help-id="datastore-type-subtitle-icon"
27
- :help-text="localization.common.datastoreTypeHelpDesc"
28
- :title="localization.common.information"
29
- dropdown-width="272px"
30
- dropdown-left
31
- dropdown-top
24
+ <common-wizards-datastore-add-steps-common-tooltip-info
25
+ id="datastore-type-subtitle-tooltip"
26
+ :description="localization.common.datastoreTypeHelpDesc"
32
27
  />
33
28
  </div>
34
29
  </div>
@@ -0,0 +1,93 @@
1
+ <template>
2
+ <div class="tooltip-info">
3
+ <ui-icon
4
+ :id="`${props.id}-info-trigger`"
5
+ name="info"
6
+ width="16"
7
+ height="16"
8
+ :class="['tooltip-info__icon pointer', { active: isShowInfo }]"
9
+ @click.stop="isShowInfo = !isShowInfo"
10
+ />
11
+ <ui-popup-window
12
+ v-model="isShowInfo"
13
+ top
14
+ left
15
+ width="272px"
16
+ :elem-id="`${props.id}-info-trigger`"
17
+ >
18
+ <div class="common-widget-info">
19
+ <div class="flex justify-between">
20
+ <div class="flex">
21
+ <ui-icon name="info-2" width="16px" height="16px" />
22
+ <span class="title"> {{ localization.common.information }}</span>
23
+ </div>
24
+ <ui-icon
25
+ name="close"
26
+ class="pointer hide-icon"
27
+ width="16px"
28
+ height="16px"
29
+ @click.stop="isShowInfo = false"
30
+ />
31
+ </div>
32
+
33
+ <div class="common-widget-info-description">
34
+ {{ props.description }}
35
+ </div>
36
+ </div>
37
+ </ui-popup-window>
38
+ </div>
39
+ </template>
40
+
41
+ <script lang="ts" setup>
42
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
43
+
44
+ const props = defineProps<{
45
+ id: string
46
+ description: string
47
+ }>()
48
+
49
+ const localization = computed<UI_I_Localization>(() => useLocal())
50
+
51
+ const isShowInfo = ref<boolean>(false)
52
+ </script>
53
+
54
+ <style lang="scss" scoped>
55
+ @import 'assets/scss/common/mixins.scss';
56
+ .tooltip-info {
57
+ @include flex($align: center);
58
+ &__icon {
59
+ color: var(--form-icon-color);
60
+ &:hover {
61
+ color: var(--close-icon);
62
+ }
63
+ &.active {
64
+ color: var(--btn-primary-fill-bg-color);
65
+ }
66
+ }
67
+
68
+ .common-widget-info {
69
+ padding: 16px;
70
+
71
+ .title {
72
+ font-size: 14px;
73
+ font-weight: 500;
74
+ line-height: 16px;
75
+ color: var(--zabbix-text-color);
76
+ margin-left: 8px;
77
+ }
78
+
79
+ .common-widget-info-description {
80
+ font-size: 13px;
81
+ line-height: 15.73px;
82
+ color: var(--zabbix-text-color);
83
+ margin-top: 12px;
84
+ white-space: pre-line;
85
+ }
86
+
87
+ svg {
88
+ color: var(--alert-icon);
89
+ min-width: 16px;
90
+ }
91
+ }
92
+ }
93
+ </style>
@@ -26,15 +26,9 @@
26
26
  <span class="basics-step-row-title-text">
27
27
  {{ localization.common.folder }}
28
28
  </span>
29
-
30
- <common-tooltip-help
31
- test-id="configuration-folder-help"
32
- help-id="configuration-folder-help-icon"
33
- :title="localization.common.information"
34
- :help-text="localization.backup.specifyFolderPathExample"
35
- dropdown-width="272px"
36
- dropdown-left
37
- dropdown-top
29
+ <common-wizards-datastore-add-steps-common-tooltip-info
30
+ :id="'option.testId'"
31
+ :description="'Specify the folder path - for example, /vols/vol0/datastore-001'"
38
32
  />
39
33
  </div>
40
34
  <div class="basics-step-row-content">
@@ -57,14 +51,9 @@
57
51
  <span class="basics-step-row-title-text">
58
52
  {{ localization.common.server }}
59
53
  </span>
60
- <common-tooltip-help
61
- test-id="configuration-server-help"
62
- help-id="configuration-server-help-icon"
63
- :title="localization.common.information"
64
- :help-text="localization.backup.specifyServerAddressExample"
65
- dropdown-width="272px"
66
- dropdown-left
67
- dropdown-top
54
+ <common-wizards-datastore-add-steps-common-tooltip-info
55
+ :id="'option.testIdserver'"
56
+ :description="'Specify the server address - for example, nas, nas.it.com or 192.168.0.1.'"
68
57
  />
69
58
  </div>
70
59
  <div class="basics-step-row-content">
@@ -86,9 +75,6 @@
86
75
  import type { UI_I_Localization } from '~/lib/models/interfaces'
87
76
  import type { UI_I_WizardStep } from '~/components/atoms/wizard/lib/models/interfaces'
88
77
  import type { UI_I_CreateDatastoreForm } from '~/components/common/wizards/datastore/add/lib/models/interfaces'
89
- import type {
90
- UI_I_InitialValidationFields
91
- } from "~/components/common/wizards/vm/migrate/select/targetServer/new/lib/models/interfaces";
92
78
 
93
79
  const formModelLocal = defineModel<UI_I_CreateDatastoreForm>({ required: true })
94
80
  // const isShowAlertInfo = defineModel<boolean>('alertInfo', { required: true })
@@ -32,15 +32,9 @@
32
32
  <span class="row__title-text">
33
33
  {{ localization.common.selectHost }}
34
34
  </span>
35
-
36
- <common-tooltip-help
37
- test-id="device-select-host-tooltip"
38
- help-id="device-select-host-tooltip"
39
- :title="localization.common.information"
40
- :help-text="localization.common.selectHostToViewAccessible"
41
- dropdown-width="272px"
42
- dropdown-left
43
- dropdown-top
35
+ <common-wizards-datastore-add-steps-common-tooltip-info
36
+ id="device-select-host-tooltip"
37
+ :description="localization.common.selectHostToViewAccessible"
44
38
  />
45
39
  </div>
46
40
  <div v-if="props.isShowSelectHost" class="row__content">
@@ -17,14 +17,9 @@
17
17
  </template>
18
18
 
19
19
  <template #tooltip>
20
- <common-tooltip-help
21
- :test-id="`${option.testId}-${key}`"
22
- :help-id="`${option.testId}-${key}`"
23
- :help-text="option.tooltipContent"
24
- :title="localization.common.information"
25
- dropdown-width="272px"
26
- dropdown-left
27
- dropdown-top
20
+ <common-wizards-datastore-add-steps-common-tooltip-info
21
+ :id="option.testId"
22
+ :description="option.tooltipContent"
28
23
  />
29
24
  </template>
30
25
  </ui-radio>
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "bfg-common",
3
3
  "private": false,
4
- "version": "1.5.249",
4
+ "version": "1.5.250",
5
5
  "scripts": {
6
6
  "build": "nuxt build",
7
7
  "dev": "nuxt dev --port=3002",