bfg-common 1.4.742 → 1.4.744

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 (128) 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/scss/common/normalize.scss +361 -361
  6. package/components/atoms/TheIcon3.vue +50 -50
  7. package/components/atoms/modal/bySteps/BySteps.vue +253 -253
  8. package/components/atoms/stack/StackBlock.vue +185 -185
  9. package/components/atoms/table/dataGrid/DataGrid.vue +1696 -1696
  10. package/components/atoms/table/dataGrid/DataGridColumnSwitch.vue +222 -222
  11. package/components/atoms/table/dataGrid/lib/config/settingsTable.ts +91 -91
  12. package/components/common/browse/BrowseNew.vue +237 -237
  13. package/components/common/browse/BrowseOld.vue +217 -217
  14. package/components/common/browse/blocks/contents/Files.vue +37 -37
  15. package/components/common/browse/blocks/contents/FilesOld.vue +72 -72
  16. package/components/common/browse/blocks/contents/filesNew/FilesNew.vue +96 -96
  17. package/components/common/browse/blocks/contents/filesNew/Skeleton.vue +18 -18
  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 +226 -211
  21. package/components/common/context/recursion/RecursionOld.vue +227 -213
  22. package/components/common/layout/theHeader/helpMenu/About.vue +82 -82
  23. package/components/common/layout/theHeader/helpMenu/aboutNew/AboutNew.vue +103 -103
  24. package/components/common/mainNavigationPanel/MainNavigationPanel.vue +150 -150
  25. package/components/common/mainNavigationPanel/MainNavigationPanelOld.vue +300 -300
  26. package/components/common/modals/confirmByInput/ConfirmByInput.vue +206 -206
  27. package/components/common/modals/unsavedChanges/UnsavedChanges.vue +56 -56
  28. package/components/common/pages/home/StatusContent.vue +49 -49
  29. package/components/common/pages/home/headline/Headline.vue +44 -44
  30. package/components/common/pages/home/headline/HeadlineNew.vue +71 -71
  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 +86 -86
  34. package/components/common/pages/home/widgets/WidgetsOld.vue +34 -34
  35. package/components/common/pages/home/widgets/hosts/Hosts.vue +27 -27
  36. package/components/common/pages/home/widgets/hosts/HostsNew.vue +100 -100
  37. package/components/common/pages/home/widgets/hosts/lib/config/items.ts +23 -23
  38. package/components/common/pages/home/widgets/services/lib/config/config.ts +108 -108
  39. package/components/common/pages/home/widgets/vms/Vms.vue +26 -26
  40. package/components/common/pages/home/widgets/vms/VmsNew.vue +101 -101
  41. package/components/common/pages/home/widgets/vms/VmsOld.vue +35 -35
  42. package/components/common/pages/home/widgets/vms/lib/config/items.ts +19 -19
  43. package/components/common/recursionTree/RecursionTree.vue +223 -223
  44. package/components/common/select/button/ButtonDropdown.vue +108 -108
  45. package/components/common/selectLanguage/lib/config/config.ts +1 -0
  46. package/components/common/spiceConsole/Drawer.vue +370 -370
  47. package/components/common/spiceConsole/lib/models/interfaces.ts +5 -5
  48. package/components/common/split/horizontal/HorizontalNew.vue +384 -358
  49. package/components/common/split/horizontal/HorizontalOld.vue +345 -307
  50. package/components/common/split/vertical/Vertical.vue +160 -160
  51. package/components/common/vm/actions/add/Add.vue +621 -621
  52. package/components/common/vm/actions/clone/Clone.vue +639 -639
  53. package/components/common/vm/actions/clone/lib/config/steps.ts +129 -129
  54. package/components/common/vm/actions/common/customizeHardware/CustomizeHardware.vue +271 -271
  55. package/components/common/vm/actions/common/customizeHardware/CustomizeHardwareNew.vue +271 -271
  56. package/components/common/vm/actions/common/customizeHardware/CustomizeHardwareOld.vue +174 -174
  57. package/components/common/vm/actions/common/customizeHardware/virtualHardware/browseView/BrowseView.vue +219 -219
  58. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/BusNew.vue +117 -117
  59. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDriveNew.vue +161 -161
  60. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDriveOld.vue +165 -165
  61. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Media.vue +25 -25
  62. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaNew.vue +70 -70
  63. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaOld.vue +50 -50
  64. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Cpu.vue +338 -338
  65. package/components/common/vm/actions/common/customizeHardware/virtualHardware/limit/Limit.vue +220 -220
  66. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/mode/ModeOld.vue +56 -56
  67. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/sharing/SharingNew.vue +44 -44
  68. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetwork.vue +281 -281
  69. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetworkNew.vue +124 -124
  70. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/LocationOld.vue +134 -134
  71. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/New.vue +63 -63
  72. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/table/lib/config/config.ts +95 -95
  73. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddress.vue +119 -119
  74. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddressNew.vue +69 -69
  75. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddressOld.vue +83 -83
  76. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoNew.vue +66 -66
  77. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoOld.vue +62 -62
  78. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIo.vue +31 -31
  79. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIoNew.vue +84 -84
  80. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIoOld.vue +76 -76
  81. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/Note.vue +15 -15
  82. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteNew.vue +42 -42
  83. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteOld.vue +30 -30
  84. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGrid.vue +41 -41
  85. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGridNew.vue +81 -81
  86. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGridOld.vue +84 -84
  87. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newUsbController/NewUsbControllerNew.vue +56 -56
  88. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/Other.vue +16 -16
  89. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/OtherNew.vue +30 -30
  90. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCardNew.vue +104 -104
  91. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCardOld.vue +112 -112
  92. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/totalVideoMemory/TotalVideoMemoryNew.vue +54 -54
  93. package/components/common/vm/actions/common/customizeHardware/vmoptions/Vmoptions.vue +145 -145
  94. package/components/common/vm/actions/common/customizeHardware/vmoptions/VmoptionsNew.vue +102 -102
  95. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/BootOptionsNew.vue +75 -75
  96. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/delay/Delay.vue +26 -26
  97. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/Firmware.vue +57 -57
  98. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/FirmwareNew.vue +42 -42
  99. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/menu/MenuNew.vue +25 -25
  100. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +171 -171
  101. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/OrderNew.vue +50 -50
  102. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptionsNew.vue +141 -141
  103. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/New.vue +140 -140
  104. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/copyPaste/CopyPasteNew.vue +30 -30
  105. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/fileTransfer/FileTransferNew.vue +30 -30
  106. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/folderSharing/FolderSharingNew.vue +30 -30
  107. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/Keymap.vue +32 -32
  108. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/KeymapNew.vue +39 -39
  109. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/Password.vue +103 -103
  110. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/PasswordNew.vue +102 -102
  111. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/PasswordOld.vue +94 -94
  112. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirection.vue +28 -28
  113. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionNew.vue +38 -38
  114. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionOld.vue +44 -44
  115. package/components/common/vm/actions/common/select/storage/Storage.vue +130 -130
  116. package/components/common/vm/actions/common/select/storage/StorageOld.vue +129 -129
  117. package/components/common/vm/actions/editSettings/new/Skeleton.vue +88 -88
  118. package/composables/productNameLocal.ts +30 -30
  119. package/composables/useAppVersion.ts +21 -21
  120. package/package.json +1 -1
  121. package/plugins/date.ts +233 -233
  122. package/plugins/recursion.ts +311 -311
  123. package/public/spice-console/lib/images/bitmap.js +203 -203
  124. package/public/spice-console/network/spicechannel.js +383 -383
  125. package/public/spice-console-minify/run.min.js +4 -4
  126. package/store/main/mutations.ts +7 -7
  127. package/store/main/state.ts +7 -7
  128. package/store/tasks/mappers/recentTasks.ts +64 -64
@@ -1,30 +1,30 @@
1
- <template>
2
- <ui-stack-block :has-children="false">
3
- <template #stackBlockKey>
4
- {{ localization.common.fileTransfer }}
5
- </template>
6
- <template #stackBlockContent>
7
- <ui-checkbox
8
- id="file-transfer"
9
- v-model="fileTransfer"
10
- test-id="file-transfer-checkbox"
11
- :disabled="props.disabled"
12
- :label-text="localization.common.enable"
13
- />
14
- </template>
15
- </ui-stack-block>
16
- </template>
17
-
18
- <script setup lang="ts">
19
- import type { UI_I_Localization } from '~/lib/models/interfaces'
20
-
21
- const fileTransfer = defineModel<boolean>('fileTransfer', { required: true })
22
-
23
- const props = defineProps<{
24
- disabled: boolean
25
- }>()
26
-
27
- const localization = computed<UI_I_Localization>(() => useLocal())
28
- </script>
29
-
30
- <style scoped></style>
1
+ <template>
2
+ <ui-stack-block :has-children="false">
3
+ <template #stackBlockKey>
4
+ {{ localization.common.fileTransfer }}
5
+ </template>
6
+ <template #stackBlockContent>
7
+ <ui-checkbox
8
+ id="file-transfer"
9
+ v-model="fileTransfer"
10
+ test-id="file-transfer-checkbox"
11
+ :disabled="props.disabled"
12
+ :label-text="localization.common.enable"
13
+ />
14
+ </template>
15
+ </ui-stack-block>
16
+ </template>
17
+
18
+ <script setup lang="ts">
19
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
20
+
21
+ const fileTransfer = defineModel<boolean>('fileTransfer', { required: true })
22
+
23
+ const props = defineProps<{
24
+ disabled: boolean
25
+ }>()
26
+
27
+ const localization = computed<UI_I_Localization>(() => useLocal())
28
+ </script>
29
+
30
+ <style scoped></style>
@@ -1,30 +1,30 @@
1
- <template>
2
- <ui-stack-block :has-children="false">
3
- <template #stackBlockKey>
4
- {{ localization.common.folderSharing }}
5
- </template>
6
- <template #stackBlockContent>
7
- <ui-checkbox
8
- id="folder-sharing"
9
- v-model="folderSharing"
10
- test-id="folder-sharing-checkbox"
11
- :label-text="localization.common.enable"
12
- disabled
13
- />
14
- </template>
15
- </ui-stack-block>
16
- </template>
17
-
18
- <script setup lang="ts">
19
- import type { UI_I_Localization } from '~/lib/models/interfaces'
20
-
21
- const folderSharing = defineModel<boolean>('folderSharing')
22
-
23
- const localization = computed<UI_I_Localization>(() => useLocal())
24
- </script>
25
-
26
- <style scoped>
27
- #folder-sharing {
28
- margin: 0 4px 4px 0;
29
- }
30
- </style>
1
+ <template>
2
+ <ui-stack-block :has-children="false">
3
+ <template #stackBlockKey>
4
+ {{ localization.common.folderSharing }}
5
+ </template>
6
+ <template #stackBlockContent>
7
+ <ui-checkbox
8
+ id="folder-sharing"
9
+ v-model="folderSharing"
10
+ test-id="folder-sharing-checkbox"
11
+ :label-text="localization.common.enable"
12
+ disabled
13
+ />
14
+ </template>
15
+ </ui-stack-block>
16
+ </template>
17
+
18
+ <script setup lang="ts">
19
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
20
+
21
+ const folderSharing = defineModel<boolean>('folderSharing')
22
+
23
+ const localization = computed<UI_I_Localization>(() => useLocal())
24
+ </script>
25
+
26
+ <style scoped>
27
+ #folder-sharing {
28
+ margin: 0 4px 4px 0;
29
+ }
30
+ </style>
@@ -1,32 +1,32 @@
1
- <template>
2
- <common-vm-actions-common-customize-hardware-vmoptions-remote-console-options-keymap-new
3
- v-if="isNewView"
4
- v-model:keymap="keymap"
5
- :disabled="props.disabled"
6
- :keymap-options="keymapOptions"
7
- />
8
- <common-vm-actions-common-customize-hardware-vmoptions-remote-console-options-keymap-old
9
- v-else
10
- v-model:keymap="keymap"
11
- :disabled="props.disabled"
12
- :keymap-options="keymapOptions"
13
- />
14
- </template>
15
-
16
- <script setup lang="ts">
17
- import type { UI_I_OptionItem } from '~/components/atoms/lib/models/interfaces'
18
- import { keymapOptionsConfig } from '~/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/lib/config/config'
19
-
20
- const keymap = defineModel<string>('keymap', { required: true })
21
-
22
- const props = defineProps<{
23
- disabled: boolean
24
- }>()
25
-
26
- const { $store }: any = useNuxtApp()
27
- const isNewView = computed<boolean>(() => $store.getters['main/getIsNewView'])
28
-
29
- const keymapOptions = ref<UI_I_OptionItem[]>(keymapOptionsConfig)
30
- </script>
31
-
32
- <style scoped></style>
1
+ <template>
2
+ <common-vm-actions-common-customize-hardware-vmoptions-remote-console-options-keymap-new
3
+ v-if="isNewView"
4
+ v-model:keymap="keymap"
5
+ :disabled="props.disabled"
6
+ :keymap-options="keymapOptions"
7
+ />
8
+ <common-vm-actions-common-customize-hardware-vmoptions-remote-console-options-keymap-old
9
+ v-else
10
+ v-model:keymap="keymap"
11
+ :disabled="props.disabled"
12
+ :keymap-options="keymapOptions"
13
+ />
14
+ </template>
15
+
16
+ <script setup lang="ts">
17
+ import type { UI_I_OptionItem } from '~/components/atoms/lib/models/interfaces'
18
+ import { keymapOptionsConfig } from '~/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/lib/config/config'
19
+
20
+ const keymap = defineModel<string>('keymap', { required: true })
21
+
22
+ const props = defineProps<{
23
+ disabled: boolean
24
+ }>()
25
+
26
+ const { $store }: any = useNuxtApp()
27
+ const isNewView = computed<boolean>(() => $store.getters['main/getIsNewView'])
28
+
29
+ const keymapOptions = ref<UI_I_OptionItem[]>(keymapOptionsConfig)
30
+ </script>
31
+
32
+ <style scoped></style>
@@ -1,39 +1,39 @@
1
- <template>
2
- <ui-stack-block :has-children="false">
3
- <template #stackBlockKey>
4
- {{ localization.common.keymap }}
5
- </template>
6
- <template #stackBlockContent>
7
- <ui-select
8
- id="keymap-select"
9
- v-model="keymap"
10
- width="auto"
11
- :items="props.keymapOptions"
12
- :disabled="props.disabled"
13
- test-id="keymap-select"
14
- class="keymap-select"
15
- @click.stop
16
- />
17
- </template>
18
- </ui-stack-block>
19
- </template>
20
-
21
- <script setup lang="ts">
22
- import type { UI_I_OptionItem } from '~/components/atoms/lib/models/interfaces'
23
- import type { UI_I_Localization } from '~/lib/models/interfaces'
24
-
25
- const keymap = defineModel<string>('keymap', { required: true })
26
-
27
- const props = defineProps<{
28
- disabled: boolean
29
- keymapOptions: UI_I_OptionItem[]
30
- }>()
31
-
32
- const localization = computed<UI_I_Localization>(() => useLocal())
33
- </script>
34
-
35
- <style scoped>
36
- :deep(.keymap-select .ui-main-select-toggle) {
37
- width: 108px;
38
- }
39
- </style>
1
+ <template>
2
+ <ui-stack-block :has-children="false">
3
+ <template #stackBlockKey>
4
+ {{ localization.common.keymap }}
5
+ </template>
6
+ <template #stackBlockContent>
7
+ <ui-select
8
+ id="keymap-select"
9
+ v-model="keymap"
10
+ width="auto"
11
+ :items="props.keymapOptions"
12
+ :disabled="props.disabled"
13
+ test-id="keymap-select"
14
+ class="keymap-select"
15
+ @click.stop
16
+ />
17
+ </template>
18
+ </ui-stack-block>
19
+ </template>
20
+
21
+ <script setup lang="ts">
22
+ import type { UI_I_OptionItem } from '~/components/atoms/lib/models/interfaces'
23
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
24
+
25
+ const keymap = defineModel<string>('keymap', { required: true })
26
+
27
+ const props = defineProps<{
28
+ disabled: boolean
29
+ keymapOptions: UI_I_OptionItem[]
30
+ }>()
31
+
32
+ const localization = computed<UI_I_Localization>(() => useLocal())
33
+ </script>
34
+
35
+ <style scoped>
36
+ :deep(.keymap-select .ui-main-select-toggle) {
37
+ width: 108px;
38
+ }
39
+ </style>
@@ -1,103 +1,103 @@
1
- <template>
2
- <common-vm-actions-common-customize-hardware-vmoptions-remote-console-options-password-new
3
- v-if="isNewView"
4
- v-model:is-enabled-password="isEnabledPassword"
5
- v-model:form="form"
6
- :disabled="props.disabled"
7
- :error-text="passwordErrorText"
8
- @set-password-disable="setPasswordDisable"
9
- @change-password="changePassword"
10
- @generate-password="onGeneratePassword"
11
- />
12
- <common-vm-actions-common-customize-hardware-vmoptions-remote-console-options-password-old
13
- v-else
14
- v-model:is-enabled-password="isEnabledPassword"
15
- v-model:form="form"
16
- :disabled="props.disabled"
17
- :error-text="passwordErrorText"
18
- @set-password-disable="setPasswordDisable"
19
- @change-password="changePassword"
20
- @generate-password="onGeneratePassword"
21
- />
22
- </template>
23
-
24
- <script setup lang="ts">
25
- import type { UI_I_DefaultForm } from '~/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/lib/models/interfaces'
26
- import type {
27
- UI_I_Localization,
28
- UI_I_HTMLSelectElement,
29
- } from '~/lib/models/interfaces'
30
- import { generatePassword } from '~/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/lib/utils'
31
-
32
- const password = defineModel<string>('password', { required: true })
33
-
34
- const props = defineProps<{
35
- disabled: boolean
36
- }>()
37
- const emits = defineEmits<{
38
- (event: 'valid', value: boolean): void
39
- }>()
40
-
41
- const { $store, $validation }: any = useNuxtApp()
42
- const isNewView = computed<boolean>(() => $store.getters['main/getIsNewView'])
43
-
44
- const localization = computed<UI_I_Localization>(() => useLocal())
45
-
46
- const validation = $validation.call({})
47
- const defaultForm: UI_I_DefaultForm = {
48
- password: {
49
- value: password.value,
50
- validations: [
51
- {
52
- value: 'password',
53
- errorText: localization.value.common.changePasswordError,
54
- },
55
- ],
56
- },
57
- }
58
- const form = ref<UI_I_DefaultForm>(useDeepCopy(defaultForm))
59
- const setForm = (): void => {
60
- form.value = useDeepCopy(defaultForm)
61
- validation.setForm(form)
62
- }
63
- setForm()
64
-
65
- const showValidationErrors = (): void => {
66
- const valid = validation.touch()
67
- passwordErrorText.value = !valid.isValid ? valid.errors.password[0] : ''
68
- emits('valid', valid.isValid)
69
- }
70
- const removeValidationErrors = (): void => {
71
- passwordErrorText.value = ''
72
- emits('valid', true)
73
- }
74
-
75
- const setPasswordDisable = (): void => {
76
- if (isEnabledPassword.value) {
77
- return
78
- }
79
-
80
- removeValidationErrors()
81
- setForm()
82
- password.value = ''
83
- }
84
-
85
- const passwordErrorText = ref<string>('')
86
-
87
- const changePassword = (value: string): void => {
88
- showValidationErrors()
89
-
90
- password.value = value
91
- }
92
-
93
- const isEnabledPassword = ref<boolean>(!!password.value)
94
-
95
- const onGeneratePassword = (): void => {
96
- const generatedPassword = generatePassword()
97
-
98
- form.value.password.value = generatedPassword
99
- password.value = generatedPassword
100
- }
101
- </script>
102
-
103
- <style scoped></style>
1
+ <template>
2
+ <common-vm-actions-common-customize-hardware-vmoptions-remote-console-options-password-new
3
+ v-if="isNewView"
4
+ v-model:is-enabled-password="isEnabledPassword"
5
+ v-model:form="form"
6
+ :disabled="props.disabled"
7
+ :error-text="passwordErrorText"
8
+ @set-password-disable="setPasswordDisable"
9
+ @change-password="changePassword"
10
+ @generate-password="onGeneratePassword"
11
+ />
12
+ <common-vm-actions-common-customize-hardware-vmoptions-remote-console-options-password-old
13
+ v-else
14
+ v-model:is-enabled-password="isEnabledPassword"
15
+ v-model:form="form"
16
+ :disabled="props.disabled"
17
+ :error-text="passwordErrorText"
18
+ @set-password-disable="setPasswordDisable"
19
+ @change-password="changePassword"
20
+ @generate-password="onGeneratePassword"
21
+ />
22
+ </template>
23
+
24
+ <script setup lang="ts">
25
+ import type { UI_I_DefaultForm } from '~/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/lib/models/interfaces'
26
+ import type {
27
+ UI_I_Localization,
28
+ UI_I_HTMLSelectElement,
29
+ } from '~/lib/models/interfaces'
30
+ import { generatePassword } from '~/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/lib/utils'
31
+
32
+ const password = defineModel<string>('password', { required: true })
33
+
34
+ const props = defineProps<{
35
+ disabled: boolean
36
+ }>()
37
+ const emits = defineEmits<{
38
+ (event: 'valid', value: boolean): void
39
+ }>()
40
+
41
+ const { $store, $validation }: any = useNuxtApp()
42
+ const isNewView = computed<boolean>(() => $store.getters['main/getIsNewView'])
43
+
44
+ const localization = computed<UI_I_Localization>(() => useLocal())
45
+
46
+ const validation = $validation.call({})
47
+ const defaultForm: UI_I_DefaultForm = {
48
+ password: {
49
+ value: password.value,
50
+ validations: [
51
+ {
52
+ value: 'password',
53
+ errorText: localization.value.common.changePasswordError,
54
+ },
55
+ ],
56
+ },
57
+ }
58
+ const form = ref<UI_I_DefaultForm>(useDeepCopy(defaultForm))
59
+ const setForm = (): void => {
60
+ form.value = useDeepCopy(defaultForm)
61
+ validation.setForm(form)
62
+ }
63
+ setForm()
64
+
65
+ const showValidationErrors = (): void => {
66
+ const valid = validation.touch()
67
+ passwordErrorText.value = !valid.isValid ? valid.errors.password[0] : ''
68
+ emits('valid', valid.isValid)
69
+ }
70
+ const removeValidationErrors = (): void => {
71
+ passwordErrorText.value = ''
72
+ emits('valid', true)
73
+ }
74
+
75
+ const setPasswordDisable = (): void => {
76
+ if (isEnabledPassword.value) {
77
+ return
78
+ }
79
+
80
+ removeValidationErrors()
81
+ setForm()
82
+ password.value = ''
83
+ }
84
+
85
+ const passwordErrorText = ref<string>('')
86
+
87
+ const changePassword = (value: string): void => {
88
+ showValidationErrors()
89
+
90
+ password.value = value
91
+ }
92
+
93
+ const isEnabledPassword = ref<boolean>(!!password.value)
94
+
95
+ const onGeneratePassword = (): void => {
96
+ const generatedPassword = generatePassword()
97
+
98
+ form.value.password.value = generatedPassword
99
+ password.value = generatedPassword
100
+ }
101
+ </script>
102
+
103
+ <style scoped></style>