bfg-common 1.5.649 → 1.5.650

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 (100) 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/localization/local_be.json +25 -1
  7. package/assets/localization/local_en.json +25 -1
  8. package/assets/localization/local_hy.json +25 -1
  9. package/assets/localization/local_kk.json +25 -1
  10. package/assets/localization/local_ru.json +25 -1
  11. package/assets/localization/local_zh.json +25 -1
  12. package/components/atoms/TheIcon3.vue +50 -50
  13. package/components/atoms/collapse/CollapseNav.vue +170 -170
  14. package/components/atoms/perPage/PerPage.vue +58 -58
  15. package/components/atoms/table/dataGrid/DataGrid.vue +1718 -1718
  16. package/components/atoms/table/dataGrid/DataGridPagination.vue +97 -97
  17. package/components/atoms/table/dataGrid/lib/config/settingsTable.ts +94 -94
  18. package/components/atoms/table/dataGrid/lib/utils/export.ts +16 -16
  19. package/components/common/backup/storage/actions/add/lib/utils.ts +51 -51
  20. package/components/common/browse/blocks/contents/filesNew/Skeleton.vue +18 -18
  21. package/components/common/browse/blocks/lib/models/types.ts +1 -1
  22. package/components/common/browse/lib/models/interfaces.ts +5 -5
  23. package/components/common/diagramMain/network/Contents.vue +497 -497
  24. package/components/common/layout/theHeader/helpMenu/About.vue +79 -79
  25. package/components/common/layout/theHeader/helpMenu/aboutOld/AboutOld.vue +79 -79
  26. package/components/common/layout/theHeader/userMenu/modals/changePassword/ChangePassword.vue +99 -99
  27. package/components/common/layout/theHeader/userMenu/modals/changePassword/New.vue +193 -193
  28. package/components/common/pages/backups/DetailView.vue +52 -52
  29. package/components/common/pages/backups/lib/models/interfaces.ts +36 -36
  30. package/components/common/pages/backups/modals/Modals.vue +243 -243
  31. package/components/common/pages/backups/modals/createBackup/configuration/maxBandwidth/lib/config/options.ts +6 -6
  32. package/components/common/pages/backups/modals/createBackup/lib/config/readyToCompleteOptions.ts +69 -69
  33. package/components/common/pages/backups/modals/lib/config/restore.ts +115 -115
  34. package/components/common/pages/backups/modals/lib/models/interfaces.ts +186 -186
  35. package/components/common/pages/backups/modals/restore/name/lib/models/interfaces.ts +6 -6
  36. package/components/common/pages/home/lib/models/interfaces.ts +48 -48
  37. package/components/common/pages/home/widgets/hosts/Hosts.vue +27 -27
  38. package/components/common/pages/home/widgets/hosts/lib/config/items.ts +23 -23
  39. package/components/common/pages/home/widgets/vms/VmsOld.vue +35 -35
  40. package/components/common/pages/home/widgets/vms/lib/config/items.ts +19 -19
  41. package/components/common/pages/scheduledTasks/lib/utils/utils.ts +84 -84
  42. package/components/common/readyToComplete/ReadyToComplete.vue +17 -17
  43. package/components/common/select/radio/RadioGroup.vue +137 -137
  44. package/components/common/spiceConsole/Drawer.vue +420 -420
  45. package/components/common/spiceConsole/SpiceConsole.vue +184 -184
  46. package/components/common/spiceConsole/lib/models/interfaces.ts +5 -5
  47. package/components/common/tools/Actions.vue +207 -207
  48. package/components/common/treeView/TreeView.vue +52 -52
  49. package/components/common/vm/actions/clone/lib/config/steps.ts +295 -295
  50. package/components/common/vm/actions/clone/new/New.vue +438 -438
  51. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/lib/config/options.ts +28 -28
  52. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/Memory.vue +283 -283
  53. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +156 -156
  54. package/components/common/vm/actions/common/select/compatibility/Old.vue +107 -107
  55. package/components/common/vm/actions/common/select/createType/lib/models/interfaces.ts +5 -5
  56. package/components/common/vm/actions/common/select/options/New.vue +263 -263
  57. package/components/common/vm/actions/common/select/options/Old.vue +109 -109
  58. package/components/common/vm/actions/common/select/options/Options.vue +58 -58
  59. package/components/common/vm/actions/common/select/storage/Old.vue +125 -125
  60. package/components/common/vm/actions/common/select/storage/new/New.vue +311 -311
  61. package/components/common/vm/actions/common/select/storage/new/lib/models/interfaces.ts +5 -5
  62. package/components/common/vm/actions/common/select/storage/new/lib/utils/utils.ts +21 -21
  63. package/components/common/vm/actions/common/select/template/old/Old.vue +50 -50
  64. package/components/common/vm/actions/editSettings/new/Skeleton.vue +88 -88
  65. package/components/common/wizards/common/compatibility/Compatibility.vue +35 -35
  66. package/components/common/wizards/common/compatibility/New.vue +99 -99
  67. package/components/common/wizards/common/compatibility/Old.vue +53 -53
  68. package/components/common/wizards/common/steps/computeResource/New.vue +93 -93
  69. package/components/common/wizards/common/steps/name/Name.vue +178 -178
  70. package/components/common/wizards/common/steps/name/New.vue +221 -221
  71. package/components/common/wizards/common/steps/name/Old.vue +121 -121
  72. package/components/common/wizards/common/steps/name/lib/models/interfaces.ts +4 -4
  73. package/components/common/wizards/common/steps/name/location/New.vue +40 -40
  74. package/components/common/wizards/datastore/add/Add.vue +228 -228
  75. package/components/common/wizards/datastore/add/lib/utils.ts +85 -85
  76. package/components/common/wizards/datastore/add/steps/typeMode/lib/config/typeOptions.ts +43 -43
  77. package/components/common/wizards/network/add/steps/portProperties/PortPropertiesNew.vue +1 -1
  78. package/composables/useAppVersion.ts +21 -21
  79. package/composables/useLocal.ts +6 -6
  80. package/composables/useLocalCommon.ts +39 -39
  81. package/package.json +1 -1
  82. package/plugins/console.ts +21 -21
  83. package/plugins/mouse.ts +21 -21
  84. package/plugins/panelStates.ts +70 -70
  85. package/plugins/text.ts +59 -59
  86. package/plugins/time.ts +58 -58
  87. package/public/spice-console/application/clientgui.js +854 -854
  88. package/public/spice-console/application/packetfactory.js +211 -211
  89. package/public/spice-console/application/virtualmouse.js +147 -147
  90. package/public/spice-console/lib/images/bitmap.js +203 -203
  91. package/public/spice-console/network/spicechannel.js +440 -440
  92. package/public/spice-console/process/cursorprocess.js +128 -128
  93. package/public/spice-console/process/inputprocess.js +227 -227
  94. package/public/spice-console/process/mainprocess.js +212 -212
  95. package/public/spice-console/run.js +210 -210
  96. package/store/main/mutations.ts +7 -7
  97. package/store/main/state.ts +7 -7
  98. package/store/tasks/actions.ts +165 -165
  99. package/store/tasks/mappers/recentTasks.ts +123 -123
  100. package/store/tasks/mutations.ts +82 -82
@@ -1,193 +1,193 @@
1
- <template>
2
- <ui-modal
3
- :title="localization.common.changePassword"
4
- :texts="modalTexts"
5
- :subtitle="props.subtitle"
6
- width="560px"
7
- test-id="change-password-modal"
8
- show
9
- @submit="onSubmit"
10
- @hide="onHideModal"
11
- >
12
- <template #content>
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
- <p class="change-password__description">
24
- {{ description }}
25
- </p>
26
-
27
- <div class="change-password__form">
28
- <ui-input
29
- v-model="modelLocal.current_password"
30
- :label="localization.common.currentPassword"
31
- :error="passwordErrorText"
32
- :autocomplete="'new-password'"
33
- type="password"
34
- test-id="change-password-password-field"
35
- />
36
-
37
- <ui-input
38
- v-model="modelLocal.new_password"
39
- :label="localization.common.newPassword"
40
- :error="newPasswordErrorText"
41
- test-id="change-password-new-password-field"
42
- type="password"
43
- />
44
-
45
- <ui-input
46
- v-model="modelLocal.confirm_password"
47
- :label="localization.common.confirmNewPassword"
48
- :error="confirmPasswordErrorText"
49
- test-id="change-password-confirm-password-field"
50
- type="password"
51
- />
52
- </div>
53
- </ui-modal-block-standard>
54
- </template>
55
-
56
- <template #footerLeftContent><span /></template>
57
- </ui-modal>
58
- </template>
59
-
60
- <script setup lang="ts">
61
- import type { UI_I_ModalTexts } from '~/node_modules/bfg-uikit/components/ui/modal/models/interfaces'
62
- import type { UI_I_Localization } from '~/lib/models/interfaces'
63
- import type { UI_I_ChangePasswordForm } from '~/components/common/layout/theHeader/userMenu/modals/changePassword/lib/models/interfaces'
64
- import type { UI_T_Project } from '~/lib/models/types'
65
- import type { UI_I_InitialValidationFields } from '~/components/common/layout/theHeader/userMenu/modals/changePassword/lib/models/interfaces'
66
- import {
67
- validateField,
68
- getPasswordMismatchError,
69
- } from '~/components/common/layout/theHeader/userMenu/modals/changePassword/lib/utils'
70
-
71
- const props = defineProps<{
72
- project: UI_T_Project
73
- subtitle: string
74
- firstTime: boolean
75
- }>()
76
- const emits = defineEmits<{
77
- (event: 'hide'): void
78
- (event: 'change-password'): void
79
- }>()
80
- const modelLocal = defineModel<UI_I_ChangePasswordForm>({ required: true })
81
-
82
- const localization = computed<UI_I_Localization>(() => useLocal())
83
-
84
- const description = ref<string>(props.firstTime
85
- ? localization.value.common.firstTimeChangePasswordDesc
86
- : localization.value.common.changePasswordDesc)
87
-
88
- const modalTexts = computed<UI_I_ModalTexts>(() => {
89
- return {
90
- button1: localization.value.common.cancel,
91
- button2: localization.value.common.save,
92
- }
93
- })
94
-
95
- const alertErrorText = ref<string>('')
96
- const initValidationFields = ref<UI_I_InitialValidationFields>({
97
- currentPassword: false,
98
- newPassword: false,
99
- confirmPassword: false,
100
- })
101
- const initValidation = (types: string[]): boolean => {
102
- types.forEach((type) => (initValidationFields.value[type] = true))
103
-
104
- return (
105
- !!passwordErrorText.value ||
106
- !!newPasswordErrorText.value ||
107
- !!confirmPasswordErrorText.value
108
- )
109
- }
110
-
111
- const passwordErrorText = computed<string>(() => {
112
- if (!initValidationFields.value.currentPassword) return ''
113
-
114
- return !modelLocal.value.current_password
115
- ? localization.value.common.fieldRequired
116
- : ''
117
- })
118
- const newPasswordErrorText = computed<string>(() => {
119
- if (!initValidationFields.value.newPassword) return ''
120
-
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
- )
129
- })
130
- const confirmPasswordErrorText = computed<string>(() => {
131
- if (!initValidationFields.value.confirmPassword) return ''
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
- )
140
- })
141
- const onSubmit = (): void => {
142
- const isFieldValid = initValidation([
143
- 'currentPassword',
144
- 'newPassword',
145
- 'confirmPassword',
146
- ])
147
-
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')
159
- }
160
- const onHideModal = (): void => {
161
- emits('hide')
162
- }
163
- </script>
164
-
165
- <style lang="scss" scoped>
166
- @import 'assets/scss/common/mixins.scss';
167
- .modal-container-standard {
168
- padding-top: 8px;
169
- padding-bottom: 8px;
170
-
171
- .change-password {
172
- &__description {
173
- color: #9da6ad;
174
- font-size: 12px;
175
- font-weight: 400;
176
- line-height: 14.52px;
177
- margin-bottom: 20px;
178
- }
179
- &__alert {
180
- padding: 10px 12px;
181
- margin-bottom: 12px;
182
- :deep(svg) {
183
- width: 16px;
184
- height: 16px;
185
- }
186
- }
187
- &__form {
188
- @include flex($dir: column);
189
- row-gap: 16px;
190
- }
191
- }
192
- }
193
- </style>
1
+ <template>
2
+ <ui-modal
3
+ :title="localization.common.changePassword"
4
+ :texts="modalTexts"
5
+ :subtitle="props.subtitle"
6
+ width="560px"
7
+ test-id="change-password-modal"
8
+ show
9
+ @submit="onSubmit"
10
+ @hide="onHideModal"
11
+ >
12
+ <template #content>
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
+ <p class="change-password__description">
24
+ {{ description }}
25
+ </p>
26
+
27
+ <div class="change-password__form">
28
+ <ui-input
29
+ v-model="modelLocal.current_password"
30
+ :label="localization.common.currentPassword"
31
+ :error="passwordErrorText"
32
+ :autocomplete="'new-password'"
33
+ type="password"
34
+ test-id="change-password-password-field"
35
+ />
36
+
37
+ <ui-input
38
+ v-model="modelLocal.new_password"
39
+ :label="localization.common.newPassword"
40
+ :error="newPasswordErrorText"
41
+ test-id="change-password-new-password-field"
42
+ type="password"
43
+ />
44
+
45
+ <ui-input
46
+ v-model="modelLocal.confirm_password"
47
+ :label="localization.common.confirmNewPassword"
48
+ :error="confirmPasswordErrorText"
49
+ test-id="change-password-confirm-password-field"
50
+ type="password"
51
+ />
52
+ </div>
53
+ </ui-modal-block-standard>
54
+ </template>
55
+
56
+ <template #footerLeftContent><span /></template>
57
+ </ui-modal>
58
+ </template>
59
+
60
+ <script setup lang="ts">
61
+ import type { UI_I_ModalTexts } from '~/node_modules/bfg-uikit/components/ui/modal/models/interfaces'
62
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
63
+ import type { UI_I_ChangePasswordForm } from '~/components/common/layout/theHeader/userMenu/modals/changePassword/lib/models/interfaces'
64
+ import type { UI_T_Project } from '~/lib/models/types'
65
+ import type { UI_I_InitialValidationFields } from '~/components/common/layout/theHeader/userMenu/modals/changePassword/lib/models/interfaces'
66
+ import {
67
+ validateField,
68
+ getPasswordMismatchError,
69
+ } from '~/components/common/layout/theHeader/userMenu/modals/changePassword/lib/utils'
70
+
71
+ const props = defineProps<{
72
+ project: UI_T_Project
73
+ subtitle: string
74
+ firstTime: boolean
75
+ }>()
76
+ const emits = defineEmits<{
77
+ (event: 'hide'): void
78
+ (event: 'change-password'): void
79
+ }>()
80
+ const modelLocal = defineModel<UI_I_ChangePasswordForm>({ required: true })
81
+
82
+ const localization = computed<UI_I_Localization>(() => useLocal())
83
+
84
+ const description = ref<string>(props.firstTime
85
+ ? localization.value.common.firstTimeChangePasswordDesc
86
+ : localization.value.common.changePasswordDesc)
87
+
88
+ const modalTexts = computed<UI_I_ModalTexts>(() => {
89
+ return {
90
+ button1: localization.value.common.cancel,
91
+ button2: localization.value.common.save,
92
+ }
93
+ })
94
+
95
+ const alertErrorText = ref<string>('')
96
+ const initValidationFields = ref<UI_I_InitialValidationFields>({
97
+ currentPassword: false,
98
+ newPassword: false,
99
+ confirmPassword: false,
100
+ })
101
+ const initValidation = (types: string[]): boolean => {
102
+ types.forEach((type) => (initValidationFields.value[type] = true))
103
+
104
+ return (
105
+ !!passwordErrorText.value ||
106
+ !!newPasswordErrorText.value ||
107
+ !!confirmPasswordErrorText.value
108
+ )
109
+ }
110
+
111
+ const passwordErrorText = computed<string>(() => {
112
+ if (!initValidationFields.value.currentPassword) return ''
113
+
114
+ return !modelLocal.value.current_password
115
+ ? localization.value.common.fieldRequired
116
+ : ''
117
+ })
118
+ const newPasswordErrorText = computed<string>(() => {
119
+ if (!initValidationFields.value.newPassword) return ''
120
+
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
+ )
129
+ })
130
+ const confirmPasswordErrorText = computed<string>(() => {
131
+ if (!initValidationFields.value.confirmPassword) return ''
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
+ )
140
+ })
141
+ const onSubmit = (): void => {
142
+ const isFieldValid = initValidation([
143
+ 'currentPassword',
144
+ 'newPassword',
145
+ 'confirmPassword',
146
+ ])
147
+
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')
159
+ }
160
+ const onHideModal = (): void => {
161
+ emits('hide')
162
+ }
163
+ </script>
164
+
165
+ <style lang="scss" scoped>
166
+ @import 'assets/scss/common/mixins.scss';
167
+ .modal-container-standard {
168
+ padding-top: 8px;
169
+ padding-bottom: 8px;
170
+
171
+ .change-password {
172
+ &__description {
173
+ color: #9da6ad;
174
+ font-size: 12px;
175
+ font-weight: 400;
176
+ line-height: 14.52px;
177
+ margin-bottom: 20px;
178
+ }
179
+ &__alert {
180
+ padding: 10px 12px;
181
+ margin-bottom: 12px;
182
+ :deep(svg) {
183
+ width: 16px;
184
+ height: 16px;
185
+ }
186
+ }
187
+ &__form {
188
+ @include flex($dir: column);
189
+ row-gap: 16px;
190
+ }
191
+ }
192
+ }
193
+ </style>
@@ -1,52 +1,52 @@
1
- <template>
2
- <div class="detail-view overflow-auto py-0 px-6">
3
- <table v-if="detailData" class="table table-noborder">
4
- <tbody>
5
- <tr>
6
- <td class="left">{{ localization.common.name }}</td>
7
- <td class="left backup-name-label">{{ detailData.name }}</td>
8
- </tr>
9
- <tr>
10
- <td class="left">{{ localization.common.description }}</td>
11
- <td class="left backup-name-label">{{ detailData.description }}</td>
12
- </tr>
13
- <tr>
14
- <td class="left">{{ localization.common.timestamp }}</td>
15
- <td class="left backup-name-label">{{ detailData.timestamp }}</td>
16
- </tr>
17
- </tbody>
18
- </table>
19
- </div>
20
- </template>
21
-
22
- <script setup lang="ts">
23
- import type { UI_I_Localization } from '~/lib/models/interfaces'
24
- import type { UI_I_BackupsTreeNode } from '~/components/common/pages/backups/lib/models/interfaces'
25
-
26
- const props = defineProps<{
27
- detail: UI_I_BackupsTreeNode | null
28
- }>()
29
-
30
- const localization = computed<UI_I_Localization>(() => useLocal())
31
-
32
- const detailData = ref<UI_I_BackupsTreeNode | null>(null)
33
- watch(
34
- () => props.detail,
35
- (newValue) => {
36
- detailData.value = newValue
37
- },
38
- { immediate: true, deep: true }
39
- )
40
- </script>
41
-
42
- <style scoped lang="scss">
43
- .detail-view {
44
- width: 50%;
45
-
46
- .table {
47
- .left:not(.backup-name-label) {
48
- width: 320px;
49
- }
50
- }
51
- }
52
- </style>
1
+ <template>
2
+ <div class="detail-view overflow-auto py-0 px-6">
3
+ <table v-if="detailData" class="table table-noborder">
4
+ <tbody>
5
+ <tr>
6
+ <td class="left">{{ localization.common.name }}</td>
7
+ <td class="left backup-name-label">{{ detailData.name }}</td>
8
+ </tr>
9
+ <tr>
10
+ <td class="left">{{ localization.common.description }}</td>
11
+ <td class="left backup-name-label">{{ detailData.description }}</td>
12
+ </tr>
13
+ <tr>
14
+ <td class="left">{{ localization.common.timestamp }}</td>
15
+ <td class="left backup-name-label">{{ detailData.timestamp }}</td>
16
+ </tr>
17
+ </tbody>
18
+ </table>
19
+ </div>
20
+ </template>
21
+
22
+ <script setup lang="ts">
23
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
24
+ import type { UI_I_BackupsTreeNode } from '~/components/common/pages/backups/lib/models/interfaces'
25
+
26
+ const props = defineProps<{
27
+ detail: UI_I_BackupsTreeNode | null
28
+ }>()
29
+
30
+ const localization = computed<UI_I_Localization>(() => useLocal())
31
+
32
+ const detailData = ref<UI_I_BackupsTreeNode | null>(null)
33
+ watch(
34
+ () => props.detail,
35
+ (newValue) => {
36
+ detailData.value = newValue
37
+ },
38
+ { immediate: true, deep: true }
39
+ )
40
+ </script>
41
+
42
+ <style scoped lang="scss">
43
+ .detail-view {
44
+ width: 50%;
45
+
46
+ .table {
47
+ .left:not(.backup-name-label) {
48
+ width: 320px;
49
+ }
50
+ }
51
+ }
52
+ </style>
@@ -1,36 +1,36 @@
1
- import type { API_UI_I_DataTable } from '~/lib/models/table/interfaces'
2
- import type { UI_I_TreeNode } from '~/components/common/recursionTree/lib/models/interfaces'
3
- import type { UI_T_BackupActionType } from '~/components/common/pages/backups/lib/models/types'
4
-
5
- export interface API_UI_I_Backup {
6
- creation_time: number
7
- creation_type: number
8
- description: string
9
- kind: number // TODO
10
- msg: string
11
- name: string
12
- state: number // TODO
13
- uuid: string
14
- vm_name: string
15
- vmid: string
16
- storage_id: string
17
- storage_name: string
18
- }
19
-
20
- export interface UI_I_Backup extends API_UI_I_Backup {}
21
-
22
- export interface UI_I_BackupsTreeNode
23
- extends UI_I_TreeNode<UI_I_BackupsTreeNode> {
24
- parent_id: string
25
- timestamp: string
26
- description: string
27
- }
28
-
29
- export interface UI_I_BackupAction {
30
- action: UI_T_BackupActionType | ''
31
- id?: string
32
- name?: string
33
- backupId?: string
34
- bucketId?: string
35
- storageId?: string
36
- }
1
+ import type { API_UI_I_DataTable } from '~/lib/models/table/interfaces'
2
+ import type { UI_I_TreeNode } from '~/components/common/recursionTree/lib/models/interfaces'
3
+ import type { UI_T_BackupActionType } from '~/components/common/pages/backups/lib/models/types'
4
+
5
+ export interface API_UI_I_Backup {
6
+ creation_time: number
7
+ creation_type: number
8
+ description: string
9
+ kind: number // TODO
10
+ msg: string
11
+ name: string
12
+ state: number // TODO
13
+ uuid: string
14
+ vm_name: string
15
+ vmid: string
16
+ storage_id: string
17
+ storage_name: string
18
+ }
19
+
20
+ export interface UI_I_Backup extends API_UI_I_Backup {}
21
+
22
+ export interface UI_I_BackupsTreeNode
23
+ extends UI_I_TreeNode<UI_I_BackupsTreeNode> {
24
+ parent_id: string
25
+ timestamp: string
26
+ description: string
27
+ }
28
+
29
+ export interface UI_I_BackupAction {
30
+ action: UI_T_BackupActionType | ''
31
+ id?: string
32
+ name?: string
33
+ backupId?: string
34
+ bucketId?: string
35
+ storageId?: string
36
+ }