bfg-common 1.5.708 → 1.5.709

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 (197) hide show
  1. package/CODE_STYLE.md +109 -109
  2. package/assets/img/icons/icons-sprite-dark-1.svg +2 -3
  3. package/assets/img/icons/icons-sprite-dark-3.svg +227 -227
  4. package/assets/img/icons/icons-sprite-dark-5.svg +488 -488
  5. package/assets/img/icons/icons-sprite-light-1.svg +3 -4
  6. package/assets/img/icons/icons-sprite-light-3.svg +227 -227
  7. package/assets/img/icons/icons-sprite-light-5.svg +488 -488
  8. package/assets/localization/local_be.json +46 -3
  9. package/assets/localization/local_en.json +46 -3
  10. package/assets/localization/local_hy.json +46 -3
  11. package/assets/localization/local_kk.json +46 -3
  12. package/assets/localization/local_ru.json +48 -5
  13. package/assets/localization/local_zh.json +46 -3
  14. package/assets/scss/common/icons/icons-1.scss +1 -1
  15. package/assets/scss/common/icons/icons-2.scss +18 -0
  16. package/assets/scss/common/theme.scss +2 -0
  17. package/assets/scss/components/auth.scss +32 -5
  18. package/components/atoms/TheIcon3.vue +50 -50
  19. package/components/atoms/collapse/CollapseNav.vue +170 -170
  20. package/components/atoms/dropdown/tree/Tree.vue +2 -0
  21. package/components/atoms/perPage/PerPage.vue +58 -58
  22. package/components/atoms/switch/Switch.vue +7 -1
  23. package/components/atoms/table/dataGrid/DataGrid.vue +1718 -1718
  24. package/components/atoms/table/dataGrid/DataGridPagination.vue +97 -97
  25. package/components/atoms/table/dataGrid/lib/config/settingsTable.ts +94 -94
  26. package/components/atoms/table/dataGrid/lib/utils/export.ts +16 -16
  27. package/components/atoms/wizard/Wizard.vue +1 -1
  28. package/components/common/backup/storage/actions/add/lib/utils.ts +51 -51
  29. package/components/common/browse/blocks/contents/filesNew/Skeleton.vue +18 -18
  30. package/components/common/certificate/Certificate.vue +27 -0
  31. package/components/common/certificate/CertificateInfo.vue +139 -0
  32. package/components/common/certificate/Tools.vue +59 -0
  33. package/components/common/certificate/lib/config/tabsPannel.ts +22 -0
  34. package/components/common/certificate/lib/models/interfaces.ts +9 -0
  35. package/components/common/certificate/lib/models/types.ts +1 -0
  36. package/components/common/certificate/modals/renew/New.vue +64 -0
  37. package/components/common/certificate/modals/renew/Old.vue +122 -0
  38. package/components/common/certificate/modals/renew/Renew.vue +67 -0
  39. package/components/common/diagramMain/modals/lib/config/vCenterModal.ts +48 -48
  40. package/components/common/diagramMain/port/Port.vue +580 -580
  41. package/components/common/help/navbar/left/lib/utils/constructAccordion.ts +2 -1
  42. package/components/common/help/navbar/right/Right.vue +86 -23
  43. package/components/common/layout/theHeader/TheHeader.vue +186 -191
  44. package/components/common/layout/theHeader/TheHeaderNew.vue +3 -7
  45. package/components/common/layout/theHeader/TheHeaderOld.vue +3 -7
  46. package/components/common/layout/theHeader/helpMenu/About.vue +79 -79
  47. package/components/common/layout/theHeader/helpMenu/aboutOld/AboutOld.vue +79 -79
  48. package/components/common/layout/theHeader/modals/reconnect/ReconnectOld.vue +2 -0
  49. package/components/common/layout/theHeader/userMenu/UserMenu.vue +109 -113
  50. package/components/common/layout/theHeader/userMenu/modals/changePassword/ChangePassword.vue +12 -21
  51. package/components/common/layout/theHeader/userMenu/modals/changePassword/New.vue +36 -43
  52. package/components/common/layout/theHeader/userMenu/modals/changePassword/Old.vue +0 -2
  53. package/components/common/layout/theHeader/userMenu/modals/changePassword/lib/utils.ts +1 -1
  54. package/components/common/layout/theHeader/userMenu/modals/preferences/Preferences.vue +81 -86
  55. package/components/common/layout/theHeader/userMenu/modals/preferences/PreferencesNew.vue +113 -102
  56. package/components/common/layout/theHeader/userMenu/modals/preferences/PreferencesOld.vue +2 -4
  57. package/components/common/layout/theHeader/userMenu/modals/preferences/changeLanguage/ChangeLanguage.vue +114 -115
  58. package/components/common/layout/theHeader/userMenu/modals/preferences/changeLanguage/{ChangeLanguageNew.vue → New.vue} +65 -89
  59. package/components/common/layout/theHeader/userMenu/modals/preferences/changeLanguage/{ChangeLanguageOld.vue → Old.vue} +66 -91
  60. package/components/common/layout/theHeader/userMenu/modals/preferences/defaultConsole/DefaultConsole.vue +8 -7
  61. package/components/common/layout/theHeader/userMenu/modals/preferences/defaultConsole/{DefaultConsoleNew.vue → New.vue} +3 -3
  62. package/components/common/layout/theHeader/userMenu/modals/preferences/defaultConsole/{DefaultConsoleOld.vue → Old.vue} +2 -2
  63. package/components/common/layout/theHeader/userMenu/modals/preferences/inventory/Inventory.vue +7 -8
  64. package/components/common/layout/theHeader/userMenu/modals/preferences/inventory/{InventoryNew.vue → New.vue} +3 -2
  65. package/components/common/layout/theHeader/userMenu/modals/preferences/inventory/{InventoryOld.vue → Old.vue} +2 -2
  66. package/components/common/layout/theHeader/userMenu/modals/preferences/lib/models/types.ts +7 -7
  67. package/components/common/layout/theHeader/userMenu/modals/preferences/security/New.vue +277 -12
  68. package/components/common/layout/theHeader/userMenu/modals/preferences/security/Old.vue +30 -56
  69. package/components/common/layout/theHeader/userMenu/modals/preferences/security/Security.vue +65 -6
  70. package/components/common/layout/theHeader/userMenu/modals/preferences/timeFormat/{TimeFormatNew.vue → New.vue} +3 -3
  71. package/components/common/layout/theHeader/userMenu/modals/preferences/timeFormat/{TimeFormatOld.vue → Old.vue} +2 -2
  72. package/components/common/layout/theHeader/userMenu/modals/preferences/timeFormat/TimeFormat.vue +8 -8
  73. package/components/common/layout/theHeader/userMenu/modals/preferences/view/{ViewNew.vue → New.vue} +12 -3
  74. package/components/common/layout/theHeader/userMenu/modals/preferences/view/{ViewOld.vue → Old.vue} +2 -2
  75. package/components/common/layout/theHeader/userMenu/modals/preferences/view/View.vue +33 -45
  76. package/components/common/monitor/advanced/graphView/GraphView.vue +8 -0
  77. package/components/common/monitor/advanced/tools/Tools.vue +5 -1
  78. package/components/common/pages/auth/TheFooter.vue +104 -0
  79. package/components/common/pages/backups/DetailView.vue +52 -52
  80. package/components/common/pages/backups/lib/models/interfaces.ts +36 -36
  81. package/components/common/pages/backups/modals/Modals.vue +243 -243
  82. package/components/common/pages/backups/modals/createBackup/configuration/maxBandwidth/lib/config/options.ts +6 -6
  83. package/components/common/pages/backups/modals/createBackup/lib/config/readyToCompleteOptions.ts +69 -69
  84. package/components/common/pages/backups/modals/lib/config/restore.ts +115 -115
  85. package/components/common/pages/backups/modals/lib/models/interfaces.ts +186 -186
  86. package/components/common/pages/backups/modals/restore/name/lib/models/interfaces.ts +6 -6
  87. package/components/common/pages/files/lib/models/enums.ts +10 -0
  88. package/components/common/pages/hardwareHealth/historyTestimony/tools/Tools.vue +7 -2
  89. package/components/common/pages/hardwareHealth/tableView/TableView.vue +8 -0
  90. package/components/common/pages/hardwareHealth/tableView/lib/config/sensorTable.ts +13 -1
  91. package/components/common/pages/hardwareHealth/toolsPanel/lib/config/actionsPanel.ts +4 -4
  92. package/components/common/pages/home/lib/models/interfaces.ts +48 -48
  93. package/components/common/pages/home/widgets/hosts/Hosts.vue +27 -27
  94. package/components/common/pages/home/widgets/hosts/lib/config/items.ts +23 -23
  95. package/components/common/pages/home/widgets/vms/VmsOld.vue +35 -35
  96. package/components/common/pages/home/widgets/vms/lib/config/items.ts +19 -19
  97. package/components/common/pages/scheduledTasks/lib/utils/utils.ts +84 -84
  98. package/components/common/pages/tasks/table/expandDetails/ExpandDetails.vue +1 -1
  99. package/components/common/qr/Qr.vue +69 -0
  100. package/components/common/readyToComplete/ReadyToComplete.vue +17 -17
  101. package/components/common/select/radio/RadioGroup.vue +137 -137
  102. package/components/common/selectLanguage/SelectLanguage.vue +200 -200
  103. package/components/common/spiceConsole/Drawer.vue +420 -420
  104. package/components/common/spiceConsole/SpiceConsole.vue +184 -184
  105. package/components/common/spiceConsole/lib/models/interfaces.ts +5 -5
  106. package/components/common/split/horizontal/New.vue +0 -2
  107. package/components/common/split/vertical/New.vue +2 -1
  108. package/components/common/tools/Actions.vue +207 -207
  109. package/components/common/treeView/TreeView.vue +52 -52
  110. package/components/common/vm/actions/add/New.vue +1 -1
  111. package/components/common/vm/actions/add/Old.vue +1 -1
  112. package/components/common/vm/actions/clone/lib/config/steps.ts +295 -295
  113. package/components/common/vm/actions/clone/new/New.vue +438 -438
  114. package/components/common/vm/actions/clone/old/Old.vue +1 -0
  115. package/components/common/vm/actions/common/customizeHardware/virtualHardware/New.vue +10 -34
  116. package/components/common/vm/actions/common/customizeHardware/virtualHardware/Old.vue +15 -37
  117. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardware.vue +49 -50
  118. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/coresPerSocket/CoresPerSocket.vue +1 -1
  119. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/lib/config/options.ts +28 -28
  120. package/components/common/vm/actions/common/customizeHardware/virtualHardware/lib/models/interfaces.ts +3 -1
  121. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/Memory.vue +283 -283
  122. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +13 -7
  123. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/New.vue +7 -4
  124. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/NewPciDevice.vue +52 -45
  125. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/Old.vue +5 -8
  126. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIo.vue +1 -3
  127. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/New.vue +2 -2
  128. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/Old.vue +2 -2
  129. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIo.vue +1 -1
  130. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/New.vue +1 -2
  131. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/Old.vue +1 -2
  132. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/New.vue +1 -1
  133. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGrid.vue +1 -1
  134. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/Old.vue +1 -1
  135. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +156 -156
  136. package/components/common/vm/actions/common/select/compatibility/Old.vue +107 -107
  137. package/components/common/vm/actions/common/select/createType/lib/models/interfaces.ts +5 -5
  138. package/components/common/vm/actions/common/select/options/New.vue +264 -264
  139. package/components/common/vm/actions/common/select/options/Old.vue +1 -2
  140. package/components/common/vm/actions/common/select/options/Options.vue +58 -58
  141. package/components/common/vm/actions/common/select/storage/Old.vue +125 -125
  142. package/components/common/vm/actions/common/select/storage/new/New.vue +311 -311
  143. package/components/common/vm/actions/common/select/storage/new/lib/models/interfaces.ts +5 -5
  144. package/components/common/vm/actions/common/select/storage/new/lib/utils/utils.ts +21 -21
  145. package/components/common/vm/actions/common/select/template/old/Old.vue +50 -50
  146. package/components/common/vm/actions/editSettings/new/Skeleton.vue +88 -88
  147. package/components/common/wizards/common/compatibility/Compatibility.vue +35 -35
  148. package/components/common/wizards/common/compatibility/New.vue +1 -1
  149. package/components/common/wizards/common/compatibility/Old.vue +1 -1
  150. package/components/common/wizards/common/steps/computeResource/New.vue +93 -93
  151. package/components/common/wizards/common/steps/name/Name.vue +178 -178
  152. package/components/common/wizards/common/steps/name/New.vue +221 -221
  153. package/components/common/wizards/common/steps/name/Old.vue +121 -121
  154. package/components/common/wizards/common/steps/name/lib/models/interfaces.ts +4 -4
  155. package/components/common/wizards/common/steps/name/location/New.vue +40 -40
  156. package/components/common/wizards/datastore/add/Add.vue +228 -228
  157. package/components/common/wizards/datastore/add/lib/config/createDatastore.ts +1 -0
  158. package/components/common/wizards/datastore/add/lib/models/interfaces.ts +1 -0
  159. package/components/common/wizards/datastore/add/lib/utils.ts +85 -85
  160. package/components/common/wizards/datastore/add/steps/nameAndDevice/NameAndDeviceNew.vue +5 -0
  161. package/components/common/wizards/datastore/add/steps/nameAndDevice/NameAndDeviceOld.vue +5 -0
  162. package/components/common/wizards/datastore/add/steps/nameAndDevice/advancedOptions/AdvancedOptions.vue +43 -0
  163. package/components/common/wizards/datastore/add/steps/nameAndDevice/advancedOptions/New.vue +114 -0
  164. package/components/common/wizards/datastore/add/steps/nameAndDevice/advancedOptions/Old.vue +114 -0
  165. package/components/common/wizards/datastore/add/steps/nameAndDevice/table/old/Old.vue +2 -3
  166. package/components/common/wizards/datastore/add/steps/readyComplete/lib/config/propertiesDetails.ts +8 -1
  167. package/components/common/wizards/datastore/add/steps/typeMode/lib/config/typeOptions.ts +43 -43
  168. package/components/common/wizards/vm/migrate/lib/models/enums.ts +2 -2
  169. package/components/common/wizards/vm/migrate/steps/selectStorage/SelectStorage.vue +4 -4
  170. package/components/common/wizards/vm/migrate/steps/selectStorage/configure/disk/table/new/lib/config/diskTable.ts +6 -2
  171. package/components/common/wizards/vm/migrate/steps/selectStorage/configure/disk/table/old/lib/config/diskTable.ts +18 -12
  172. package/composables/useAppVersion.ts +21 -21
  173. package/composables/useEnvLanguage.ts +7 -8
  174. package/composables/useLocal.ts +6 -6
  175. package/composables/useLocalCommon.ts +39 -39
  176. package/lib/models/interfaces.ts +1 -0
  177. package/package.json +3 -4
  178. package/plugins/console.ts +21 -21
  179. package/plugins/date.ts +14 -37
  180. package/plugins/mouse.ts +21 -21
  181. package/plugins/panelStates.ts +70 -70
  182. package/plugins/text.ts +59 -59
  183. package/public/spice-console/application/clientgui.js +854 -854
  184. package/public/spice-console/application/packetfactory.js +211 -211
  185. package/public/spice-console/application/virtualmouse.js +147 -147
  186. package/public/spice-console/lib/images/bitmap.js +203 -203
  187. package/public/spice-console/network/spicechannel.js +440 -440
  188. package/public/spice-console/process/cursorprocess.js +128 -128
  189. package/public/spice-console/process/inputprocess.js +227 -227
  190. package/public/spice-console/process/mainprocess.js +212 -212
  191. package/public/spice-console/run.js +210 -210
  192. package/store/main/getters.ts +2 -2
  193. package/store/main/mutations.ts +7 -7
  194. package/store/main/state.ts +7 -7
  195. package/store/tasks/mappers/recentTasks.ts +123 -123
  196. package/store/tasks/mutations.ts +82 -82
  197. package/components/common/qrcode/Qrcode.vue +0 -56
@@ -4,7 +4,6 @@
4
4
  v-model="form"
5
5
  :subtitle="props.hostname"
6
6
  :project="props.project"
7
- :first-time="props.firstTime"
8
7
  @change-password="onChangePassword"
9
8
  @hide="onHideModal"
10
9
  />
@@ -14,20 +13,16 @@
14
13
  import type { UI_I_Localization } from '~/lib/models/interfaces'
15
14
  import type { API_UI_I_Error } from '~/lib/models/store/interfaces'
16
15
  import type {
17
- UI_I_ChangePasswordBodyRequest, UI_I_ChangePasswordFirstTimeBodyRequest,
16
+ UI_I_ChangePasswordBodyRequest,
17
+ UI_I_ChangePasswordFirstTimeBodyRequest,
18
18
  UI_I_ChangePasswordForm,
19
19
  } from '~/components/common/layout/theHeader/userMenu/modals/changePassword/lib/models/interfaces'
20
20
  import type { UI_T_Project } from '~/lib/models/types'
21
- // import {} from '#build/components/common/layout/theHeader/userMenu/modals/changePassword/lib/models/interfaces'
22
21
 
23
- const props = withDefaults(
24
- defineProps<{
25
- hostname: string
26
- project: UI_T_Project
27
- firstTime?: boolean
28
- }>(),
29
- { firstTime: false }
30
- )
22
+ const props = defineProps<{
23
+ hostname: string
24
+ project: UI_T_Project
25
+ }>()
31
26
  const isShowModalLocal = defineModel<boolean>({ required: true })
32
27
 
33
28
  const localization = computed<UI_I_Localization>(() => useLocal())
@@ -51,25 +46,21 @@ const onChangePassword = async (): Promise<void> => {
51
46
 
52
47
  onHideModal()
53
48
 
54
- let sendData: UI_I_ChangePasswordBodyRequest | UI_I_ChangePasswordFirstTimeBodyRequest = {
49
+ let sendData:
50
+ | UI_I_ChangePasswordBodyRequest
51
+ | UI_I_ChangePasswordFirstTimeBodyRequest = {
55
52
  current_password,
56
53
  new_password,
57
54
  }
58
55
 
59
56
  let url = ''
60
57
  if (props.project === 'sphere') {
61
- const { id } = useLocalStorage('userData')
62
-
63
- url = `ui/users/${id}/passwd`
64
- } else if (props.project === 'procurator') {
65
- url = '/ui/passwd'
66
- }
67
-
68
- if (props.firstTime) {
69
58
  sendData = {
70
- password: new_password
59
+ password: new_password,
71
60
  }
72
61
  url = 'ui/users/current/change_password'
62
+ } else if (props.project === 'procurator') {
63
+ url = '/ui/passwd'
73
64
  }
74
65
 
75
66
  const { error } = await useMyFetch<never, API_UI_I_Error>(url, {
@@ -11,15 +11,6 @@
11
11
  >
12
12
  <template #content>
13
13
  <ui-modal-block-standard>
14
- <ui-alert
15
- v-if="alertErrorText"
16
- :messages="[alertErrorText]"
17
- test-id="change-password-error-alert"
18
- type="error"
19
- class="change-password__alert"
20
- hide-close-button
21
- />
22
-
23
14
  <p class="change-password__description">
24
15
  {{ description }}
25
16
  </p>
@@ -71,7 +62,6 @@ import {
71
62
  const props = defineProps<{
72
63
  project: UI_T_Project
73
64
  subtitle: string
74
- firstTime: boolean
75
65
  }>()
76
66
  const emits = defineEmits<{
77
67
  (event: 'hide'): void
@@ -81,9 +71,7 @@ const modelLocal = defineModel<UI_I_ChangePasswordForm>({ required: true })
81
71
 
82
72
  const localization = computed<UI_I_Localization>(() => useLocal())
83
73
 
84
- const description = ref<string>(props.firstTime
85
- ? localization.value.common.firstTimeChangePasswordDesc
86
- : localization.value.common.changePasswordDesc)
74
+ const description = ref<string>(localization.value.common.changePasswordDesc)
87
75
 
88
76
  const modalTexts = computed<UI_I_ModalTexts>(() => {
89
77
  return {
@@ -92,7 +80,6 @@ const modalTexts = computed<UI_I_ModalTexts>(() => {
92
80
  }
93
81
  })
94
82
 
95
- const alertErrorText = ref<string>('')
96
83
  const initValidationFields = ref<UI_I_InitialValidationFields>({
97
84
  currentPassword: false,
98
85
  newPassword: false,
@@ -111,32 +98,48 @@ const initValidation = (types: string[]): boolean => {
111
98
  const passwordErrorText = computed<string>(() => {
112
99
  if (!initValidationFields.value.currentPassword) return ''
113
100
 
114
- return !modelLocal.value.current_password
115
- ? localization.value.common.fieldRequired
116
- : ''
101
+ if (!modelLocal.value.current_password) {
102
+ return localization.value.common.fieldRequired
103
+ } else {
104
+ return ''
105
+ }
117
106
  })
118
107
  const newPasswordErrorText = computed<string>(() => {
119
108
  if (!initValidationFields.value.newPassword) return ''
120
109
 
121
- const { new_password, confirm_password } = modelLocal.value
122
- return !new_password
123
- ? localization.value.common.fieldRequired
124
- : getPasswordMismatchError(
125
- localization.value,
126
- new_password,
127
- confirm_password
128
- )
110
+ const { current_password, new_password, confirm_password } = modelLocal.value
111
+
112
+ const validateText = validateField(
113
+ localization.value,
114
+ current_password,
115
+ new_password
116
+ )
117
+ const mismatchError = getPasswordMismatchError(
118
+ localization.value,
119
+ new_password,
120
+ confirm_password
121
+ )
122
+ if (!new_password) {
123
+ return localization.value.common.fieldRequired
124
+ } else if (validateText) {
125
+ return validateText
126
+ } else if (mismatchError) {
127
+ return mismatchError
128
+ } else return ''
129
129
  })
130
130
  const confirmPasswordErrorText = computed<string>(() => {
131
131
  if (!initValidationFields.value.confirmPassword) return ''
132
132
  const { new_password, confirm_password } = modelLocal.value
133
- return !confirm_password
134
- ? localization.value.common.fieldRequired
135
- : getPasswordMismatchError(
136
- localization.value,
137
- new_password,
138
- confirm_password
139
- )
133
+
134
+ if (!confirm_password) {
135
+ return localization.value.common.fieldRequired
136
+ } else {
137
+ return getPasswordMismatchError(
138
+ localization.value,
139
+ new_password,
140
+ confirm_password
141
+ )
142
+ }
140
143
  })
141
144
  const onSubmit = (): void => {
142
145
  const isFieldValid = initValidation([
@@ -145,17 +148,7 @@ const onSubmit = (): void => {
145
148
  'confirmPassword',
146
149
  ])
147
150
 
148
- const { current_password, new_password } = modelLocal.value
149
-
150
- if (!isFieldValid) {
151
- alertErrorText.value = validateField(
152
- localization.value,
153
- current_password,
154
- new_password
155
- )
156
- }
157
-
158
- !isFieldValid && !alertErrorText.value && emits('change-password')
151
+ !isFieldValid && emits('change-password')
159
152
  }
160
153
  const onHideModal = (): void => {
161
154
  emits('hide')
@@ -10,7 +10,6 @@
10
10
  @submit="onChangePassword"
11
11
  >
12
12
  <template #modalBody>
13
- <p v-if="props.firstTime">{{ localization.common.firstTimeChangePasswordDesc }}</p>
14
13
  <form id="change-password-form" class="compact" @submit.prevent>
15
14
  <section class="form-block">
16
15
  <div class="form-group">
@@ -98,7 +97,6 @@ import { defaultFormFunc } from '~/components/common/layout/theHeader/userMenu/m
98
97
  const props = defineProps<{
99
98
  hostname: string
100
99
  project: UI_T_Project
101
- firstTime: boolean
102
100
  }>()
103
101
  const emits = defineEmits<{
104
102
  (event: 'hide'): void
@@ -1,4 +1,4 @@
1
- import type { UI_I_Localization } from '~//lib/models/interfaces'
1
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
2
2
  import { RegExp } from '~/lib/config/regExp'
3
3
 
4
4
  export const getPasswordMismatchError = (
@@ -1,86 +1,81 @@
1
- <template>
2
- <common-layout-the-header-user-menu-modals-preferences-new
3
- v-if="props.newView"
4
- v-model:security="security"
5
- :project="props.project"
6
- :time-format="props.timeFormat"
7
- :new-view="props.newView"
8
- :new-view-local="props.newViewLocal"
9
- :selected-language-type="props.selectedLanguageType"
10
- :selected-language="props.selectedLanguage"
11
- :remote-console="props.remoteConsole"
12
- :vm-cluster="props.vmCluster"
13
- :security-loader="props.securityLoader"
14
- :recovery="props.recovery"
15
- @hide="emits('hide')"
16
- @reset="emits('reset')"
17
- @update-time-format="emits('update-time-format', $event)"
18
- @update-language="emits('update-language', $event)"
19
- @update-is-browser="emits('update-is-browser', $event)"
20
- @update-is-new-view="emits('update-is-new-view', $event)"
21
- @update-remote-console="emits('update-remote-console', $event)"
22
- @update-vm-clusters="emits('update-vm-clusters', $event)"
23
- @security-confirm="emits('security-confirm', $event)"
24
- @submit="emits('submit')"
25
- />
26
- <common-layout-the-header-user-menu-modals-preferences-old
27
- v-else
28
- v-model:security="security"
29
- :project="props.project"
30
- :time-format="props.timeFormat"
31
- :new-view="props.newView"
32
- :new-view-local="props.newViewLocal"
33
- :selected-language-type="props.selectedLanguageType"
34
- :selected-language="props.selectedLanguage"
35
- :remote-console="props.remoteConsole"
36
- :vm-cluster="props.vmCluster"
37
- :security-loader="props.securityLoader"
38
- :recovery="props.recovery"
39
- @hide="emits('hide')"
40
- @update-time-format="emits('update-time-format', $event)"
41
- @update-language="emits('update-language', $event)"
42
- @update-is-browser="emits('update-is-browser', $event)"
43
- @update-is-new-view="emits('update-is-new-view', $event)"
44
- @update-remote-console="emits('update-remote-console', $event)"
45
- @update-vm-clusters="emits('update-vm-clusters', $event)"
46
- @security-confirm="emits('security-confirm', $event)"
47
- @submit="emits('submit')"
48
- />
49
- </template>
50
-
51
- <script setup lang="ts">
52
- import type { UI_I_Dropdown } from '~/node_modules/bfg-uikit/components/ui/dropdown/models/interfaces'
53
- import type { UI_T_LangValue, UI_T_Project } from '~/lib/models/types'
54
- import type { UI_T_TimeValue } from '~/components/common/layout/theHeader/userMenu/modals/preferences/timeFormat/lib/models/types'
55
- import type {
56
- UI_I_Recovery
57
- } from "~/components/common/layout/theHeader/userMenu/modals/preferences/security/lib/models/interfaces";
58
-
59
- const security = defineModel<boolean>('security')
60
-
61
- const props = defineProps<{
62
- project: UI_T_Project
63
- timeFormat: UI_T_TimeValue
64
- newView: boolean
65
- newViewLocal: boolean
66
- selectedLanguageType: UI_T_LangValue
67
- selectedLanguage: UI_I_Dropdown | string
68
- remoteConsole: string
69
- vmCluster: boolean
70
- securityLoader: boolean // для Сферы
71
- recovery: UI_I_Recovery | null // для Сферы
72
- }>()
73
-
74
- const emits = defineEmits<{
75
- (event: 'hide'): void
76
- (event: 'reset'): void
77
- (event: 'update-time-format', value: UI_T_TimeValue): void
78
- (event: 'update-language', value: UI_I_Dropdown): void
79
- (event: 'update-is-browser', value: string): void
80
- (event: 'update-is-new-view', value: boolean): void
81
- (event: 'update-remote-console', value: string): void
82
- (event: 'update-vm-clusters', value: boolean): void
83
- (event: 'security-confirm', value: boolean): void
84
- (event: 'submit'): void
85
- }>()
86
- </script>
1
+ <template>
2
+ <common-layout-the-header-user-menu-modals-preferences-new
3
+ v-if="props.newView"
4
+ v-model:security="security"
5
+ v-model:new-view-local="newViewLocal"
6
+ :project="props.project"
7
+ :time-format="props.timeFormat"
8
+ :new-view="props.newView"
9
+ :selected-language-type="props.selectedLanguageType"
10
+ :selected-language="props.selectedLanguage"
11
+ :remote-console="props.remoteConsole"
12
+ :vm-cluster="props.vmCluster"
13
+ :security-loader="props.securityLoader"
14
+ :recovery="props.recovery"
15
+ @hide="emits('hide')"
16
+ @reset="emits('reset')"
17
+ @update-time-format="emits('update-time-format', $event)"
18
+ @update-language="emits('update-language', $event)"
19
+ @update-is-browser="emits('update-is-browser', $event)"
20
+ @update-remote-console="emits('update-remote-console', $event)"
21
+ @update-vm-clusters="emits('update-vm-clusters', $event)"
22
+ @security-confirm="emits('security-confirm', $event)"
23
+ @submit="emits('submit')"
24
+ />
25
+ <common-layout-the-header-user-menu-modals-preferences-old
26
+ v-else
27
+ v-model:security="security"
28
+ v-model:new-view-local="newViewLocal"
29
+ :project="props.project"
30
+ :time-format="props.timeFormat"
31
+ :new-view="props.newView"
32
+ :selected-language-type="props.selectedLanguageType"
33
+ :selected-language="props.selectedLanguage"
34
+ :remote-console="props.remoteConsole"
35
+ :vm-cluster="props.vmCluster"
36
+ :security-loader="props.securityLoader"
37
+ :recovery="props.recovery"
38
+ @hide="emits('hide')"
39
+ @update-time-format="emits('update-time-format', $event)"
40
+ @update-language="emits('update-language', $event)"
41
+ @update-is-browser="emits('update-is-browser', $event)"
42
+ @update-remote-console="emits('update-remote-console', $event)"
43
+ @update-vm-clusters="emits('update-vm-clusters', $event)"
44
+ @security-confirm="emits('security-confirm', $event)"
45
+ @submit="emits('submit')"
46
+ />
47
+ </template>
48
+
49
+ <script setup lang="ts">
50
+ import type { UI_I_Dropdown } from '~/node_modules/bfg-uikit/components/ui/dropdown/models/interfaces'
51
+ import type { UI_T_LangValue, UI_T_Project } from '~/lib/models/types'
52
+ import type { UI_T_TimeValue } from '~/components/common/layout/theHeader/userMenu/modals/preferences/timeFormat/lib/models/types'
53
+ import type { UI_I_Recovery } from '~/components/common/layout/theHeader/userMenu/modals/preferences/security/lib/models/interfaces'
54
+
55
+ const security = defineModel<boolean>('security')
56
+ const newViewLocal = defineModel<boolean>('newViewLocal')
57
+
58
+ const props = defineProps<{
59
+ project: UI_T_Project
60
+ timeFormat: UI_T_TimeValue
61
+ newView: boolean
62
+ selectedLanguageType: UI_T_LangValue
63
+ selectedLanguage: UI_I_Dropdown | string
64
+ remoteConsole: string
65
+ vmCluster: boolean
66
+ securityLoader: boolean // для Сферы
67
+ recovery: UI_I_Recovery | null // для Сферы
68
+ }>()
69
+
70
+ const emits = defineEmits<{
71
+ (event: 'hide'): void
72
+ (event: 'reset'): void
73
+ (event: 'update-time-format', value: UI_T_TimeValue): void
74
+ (event: 'update-language', value: UI_I_Dropdown): void
75
+ (event: 'update-is-browser', value: string): void
76
+ (event: 'update-remote-console', value: string): void
77
+ (event: 'update-vm-clusters', value: boolean): void
78
+ (event: 'security-confirm', value: boolean): void
79
+ (event: 'submit'): void
80
+ }>()
81
+ </script>
@@ -1,102 +1,113 @@
1
- <template>
2
- <ui-modal
3
- :title="localization.common.preferences"
4
- :texts="modalTexts"
5
- test-id="user-preferences-modal"
6
- width="580px"
7
- show
8
- @reset="emits('reset')"
9
- @submit="emits('submit')"
10
- @hide="onHide"
11
- >
12
- <template #content>
13
- <ui-modal-block-standard>
14
- <ui-modal-block-form-standard>
15
- <common-layout-the-header-user-menu-modals-preferences-time-format
16
- :new-view="props.newView"
17
- :time-format="props.timeFormat"
18
- @update-time-format="emits('update-time-format', $event)"
19
- />
20
- </ui-modal-block-form-standard>
21
-
22
- <ui-modal-block-form-standard>
23
- <common-layout-the-header-user-menu-modals-preferences-change-language
24
- :new-view="props.newView"
25
- :selected-type="props.selectedLanguageType"
26
- :selected-language="props.selectedLanguage"
27
- @update-language="emits('update-language', $event)"
28
- @update-is-browser="emits('update-is-browser', $event)"
29
- />
30
- </ui-modal-block-form-standard>
31
-
32
- <ui-modal-block-form-standard v-if="isSphere">
33
- <common-layout-the-header-user-menu-modals-preferences-default-console
34
- :new-view="props.newView"
35
- :remote-console="props.remoteConsole"
36
- @update-remote-console="emits('update-remote-console', $event)"
37
- />
38
- </ui-modal-block-form-standard>
39
-
40
- <ui-modal-block-form-standard v-if="isSphere">
41
- <common-layout-the-header-user-menu-modals-preferences-inventory
42
- :new-view="props.newView"
43
- :vm-cluster="props.vmCluster"
44
- @update-vm-clusters="emits('update-vm-clusters', $event)"
45
- />
46
- </ui-modal-block-form-standard>
47
-
48
- <ui-modal-block-form-standard without-border-bottom>
49
- <common-layout-the-header-user-menu-modals-preferences-view
50
- :new-view="props.newView"
51
- :new-view-local="props.newViewLocal"
52
- @update-is-new-view="emits('update-is-new-view', $event)"
53
- />
54
- </ui-modal-block-form-standard>
55
- </ui-modal-block-standard>
56
- </template>
57
- </ui-modal>
58
- </template>
59
-
60
- <script setup lang="ts">
61
- import type { UI_I_Dropdown } from '~/node_modules/bfg-uikit/components/ui/dropdown/models/interfaces'
62
- import type { UI_I_ModalTexts } from '~/node_modules/bfg-uikit/components/ui/modal/models/interfaces'
63
- import type { UI_I_Localization } from '~/lib/models/interfaces'
64
- import type { UI_T_LangValue, UI_T_Project } from '~/lib/models/types'
65
- import type { UI_T_TimeValue } from '~/components/common/layout/theHeader/userMenu/modals/preferences/timeFormat/lib/models/types'
66
-
67
- const props = defineProps<{
68
- project: UI_T_Project
69
- timeFormat: UI_T_TimeValue
70
- selectedLanguage: UI_I_Dropdown
71
- selectedLanguageType: UI_T_LangValue
72
- newView: boolean
73
- newViewLocal: boolean
74
- remoteConsole: string
75
- vmCluster: boolean
76
- }>()
77
- const emits = defineEmits<{
78
- (event: 'hide'): void
79
- (event: 'update-time-format', value: UI_T_TimeValue): void
80
- (event: 'update-language', value: UI_I_Dropdown): void
81
- (event: 'update-is-browser', value: string): void
82
- (event: 'update-is-new-view', value: boolean): void
83
- (event: 'update-remote-console', value: string): void
84
- (event: 'update-vm-clusters', value: boolean): void
85
- (event: 'submit'): void
86
- (event: 'reset'): void
87
- }>()
88
-
89
- const localization = computed<UI_I_Localization>(() => useLocal())
90
-
91
- const modalTexts = ref<UI_I_ModalTexts>({
92
- resetToDefault: localization.value.common.resetToDefault,
93
- button1: localization.value.common.cancel,
94
- button2: localization.value.common.save,
95
- })
96
-
97
- const isSphere = ref<boolean>(props.project === 'sphere')
98
-
99
- const onHide = (): void => {
100
- emits('hide')
101
- }
102
- </script>
1
+ <template>
2
+ <ui-modal
3
+ :title="localization.common.preferences"
4
+ :texts="modalTexts"
5
+ test-id="user-preferences-modal"
6
+ width="580px"
7
+ show
8
+ @reset="emits('reset')"
9
+ @submit="emits('submit')"
10
+ @hide="onHide"
11
+ >
12
+ <template #content>
13
+ <ui-modal-block-standard>
14
+ <ui-modal-block-form-standard>
15
+ <common-layout-the-header-user-menu-modals-preferences-time-format
16
+ :new-view="props.newView"
17
+ :time-format="props.timeFormat"
18
+ @update-time-format="emits('update-time-format', $event)"
19
+ />
20
+ </ui-modal-block-form-standard>
21
+
22
+ <ui-modal-block-form-standard>
23
+ <common-layout-the-header-user-menu-modals-preferences-change-language
24
+ :new-view="props.newView"
25
+ :selected-type="props.selectedLanguageType"
26
+ :selected-language="props.selectedLanguage"
27
+ @update-language="emits('update-language', $event)"
28
+ @update-is-browser="emits('update-is-browser', $event)"
29
+ />
30
+ </ui-modal-block-form-standard>
31
+
32
+ <ui-modal-block-form-standard v-if="isSphere">
33
+ <common-layout-the-header-user-menu-modals-preferences-default-console
34
+ :new-view="props.newView"
35
+ :remote-console="props.remoteConsole"
36
+ @update-remote-console="emits('update-remote-console', $event)"
37
+ />
38
+ </ui-modal-block-form-standard>
39
+
40
+ <ui-modal-block-form-standard v-if="isSphere">
41
+ <common-layout-the-header-user-menu-modals-preferences-inventory
42
+ :new-view="props.newView"
43
+ :vm-cluster="props.vmCluster"
44
+ @update-vm-clusters="emits('update-vm-clusters', $event)"
45
+ />
46
+ </ui-modal-block-form-standard>
47
+
48
+ <ui-modal-block-form-standard v-if="isSphere">
49
+ <common-layout-the-header-user-menu-modals-preferences-security
50
+ v-model:security="security"
51
+ :recovery="props.recovery"
52
+ @confirm="emits('security-confirm', $event)"
53
+ />
54
+ </ui-modal-block-form-standard>
55
+
56
+ <ui-modal-block-form-standard without-border-bottom>
57
+ <common-layout-the-header-user-menu-modals-preferences-view
58
+ v-model:new-view-local="newViewLocal"
59
+ :new-view="props.newView"
60
+ />
61
+ </ui-modal-block-form-standard>
62
+ </ui-modal-block-standard>
63
+ </template>
64
+ </ui-modal>
65
+ </template>
66
+
67
+ <script setup lang="ts">
68
+ import type { UI_I_Dropdown } from '~/node_modules/bfg-uikit/components/ui/dropdown/models/interfaces'
69
+ import type { UI_I_ModalTexts } from '~/node_modules/bfg-uikit/components/ui/modal/models/interfaces'
70
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
71
+ import type { UI_T_LangValue, UI_T_Project } from '~/lib/models/types'
72
+ import type { UI_T_TimeValue } from '~/components/common/layout/theHeader/userMenu/modals/preferences/timeFormat/lib/models/types'
73
+ import type { UI_I_Recovery } from '~/components/common/layout/theHeader/userMenu/modals/preferences/security/lib/models/interfaces'
74
+
75
+ const security = defineModel<boolean>('security')
76
+ const newViewLocal = defineModel<boolean>('newViewLocal')
77
+
78
+ const props = defineProps<{
79
+ project: UI_T_Project
80
+ timeFormat: UI_T_TimeValue
81
+ selectedLanguage: UI_I_Dropdown
82
+ selectedLanguageType: UI_T_LangValue
83
+ newView: boolean
84
+ remoteConsole: string
85
+ vmCluster: boolean
86
+ recovery: UI_I_Recovery | null // для Сферы
87
+ }>()
88
+ const emits = defineEmits<{
89
+ (event: 'hide'): void
90
+ (event: 'update-time-format', value: UI_T_TimeValue): void
91
+ (event: 'update-language', value: UI_I_Dropdown): void
92
+ (event: 'update-is-browser', value: string): void
93
+ (event: 'update-remote-console', value: string): void
94
+ (event: 'update-vm-clusters', value: boolean): void
95
+ (event: 'security-confirm', value: boolean): void
96
+ (event: 'submit'): void
97
+ (event: 'reset'): void
98
+ }>()
99
+
100
+ const localization = computed<UI_I_Localization>(() => useLocal())
101
+
102
+ const modalTexts = ref<UI_I_ModalTexts>({
103
+ resetToDefault: localization.value.common.resetToDefault,
104
+ button1: localization.value.common.cancel,
105
+ button2: localization.value.common.save,
106
+ })
107
+
108
+ const isSphere = ref<boolean>(props.project === 'sphere')
109
+
110
+ const onHide = (): void => {
111
+ emits('hide')
112
+ }
113
+ </script>
@@ -54,9 +54,8 @@
54
54
 
55
55
  <common-layout-the-header-user-menu-modals-preferences-view
56
56
  v-if="selectedTab === 'view-tab'"
57
+ v-model:new-view-local="newViewLocal"
57
58
  :new-view="props.newView"
58
- :new-view-local="props.newViewLocal"
59
- @update-is-new-view="emits('update-is-new-view', $event)"
60
59
  />
61
60
  </template>
62
61
 
@@ -91,6 +90,7 @@ import type { UI_I_Recovery } from '~/components/common/layout/theHeader/userMen
91
90
  import { preferencesTabs } from '~/components/common/layout/theHeader/userMenu/modals/preferences/lib/config/preferencesTabs'
92
91
 
93
92
  const security = defineModel<boolean>('security')
93
+ const newViewLocal = defineModel<boolean>('newViewLocal')
94
94
 
95
95
  const props = defineProps<{
96
96
  project: UI_T_Project
@@ -98,7 +98,6 @@ const props = defineProps<{
98
98
  selectedLanguage: UI_T_LangValue
99
99
  selectedLanguageType: UI_T_LangValue
100
100
  newView: boolean
101
- newViewLocal: boolean
102
101
  remoteConsole: string
103
102
  vmCluster: boolean
104
103
  securityLoader: boolean // для Сферы
@@ -109,7 +108,6 @@ const emits = defineEmits<{
109
108
  (event: 'update-time-format', value: UI_T_TimeValue): void
110
109
  (event: 'update-language', value: string): void
111
110
  (event: 'update-is-browser', value: string): void
112
- (event: 'update-is-new-view', value: boolean): void
113
111
  (event: 'update-remote-console', value: string): void
114
112
  (event: 'update-vm-clusters', value: boolean): void
115
113
  (event: 'security-confirm', value: boolean): void