bfg-common 1.5.417 → 1.5.419
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.
- package/components/common/modals/confirmation/ConfirmationNew.vue +1 -1
- package/components/common/pages/backups/Backups.vue +102 -0
- package/components/common/pages/backups/DetailView.vue +52 -0
- package/components/common/pages/backups/lib/models/interfaces.ts +24 -0
- package/components/common/pages/backups/lib/models/types.ts +7 -0
- package/components/common/pages/backups/modals/Modals.vue +229 -0
- package/components/common/pages/backups/modals/createBackup/CreateBackup.vue +371 -0
- package/components/common/pages/backups/modals/createBackup/configuration/Configuration.vue +29 -0
- package/components/common/pages/backups/modals/createBackup/configuration/backupWindow/BackupWindow.vue +26 -0
- package/components/common/pages/backups/modals/createBackup/configuration/maxBandwidth/MaxBandwidth.vue +65 -0
- package/components/common/pages/backups/modals/createBackup/configuration/maxBandwidth/lib/config/options.ts +6 -0
- package/components/common/pages/backups/modals/createBackup/configuration/maxBandwidth/lib/models/types.ts +1 -0
- package/components/common/pages/backups/modals/createBackup/configuration/strategy/Strategy.vue +36 -0
- package/components/common/pages/backups/modals/createBackup/datastores/Datastores.vue +58 -0
- package/components/common/pages/backups/modals/createBackup/datastores/tableView/TableView.vue +94 -0
- package/components/common/pages/backups/modals/createBackup/datastores/tableView/lib/config/keys.ts +14 -0
- package/components/common/pages/backups/modals/createBackup/datastores/tableView/lib/config/table.ts +117 -0
- package/components/common/pages/backups/modals/createBackup/datastores/tableView/lib/models/types.ts +10 -0
- package/components/common/pages/backups/modals/createBackup/disks/Disks.vue +28 -0
- package/components/common/pages/backups/modals/createBackup/disks/tableView/TableView.vue +105 -0
- package/components/common/pages/backups/modals/createBackup/disks/tableView/lib/config/keys.ts +12 -0
- package/components/common/pages/backups/modals/createBackup/disks/tableView/lib/config/table.ts +117 -0
- package/components/common/pages/backups/modals/createBackup/disks/tableView/lib/models/interfaces.ts +4 -0
- package/components/common/pages/backups/modals/createBackup/disks/tableView/lib/models/types.ts +10 -0
- package/components/common/pages/backups/modals/createBackup/general/General.vue +48 -0
- package/components/common/pages/backups/modals/createBackup/lib/config/createBackup.ts +14 -0
- package/components/common/pages/backups/modals/createBackup/lib/config/steps.ts +117 -0
- package/components/common/pages/backups/modals/createBackup/lib/config/strategyOptions.ts +12 -0
- package/components/common/pages/backups/modals/createBackup/lib/models/interfaces.ts +8 -0
- package/components/common/pages/backups/modals/createBackup/readyToComplete/ReadyToComplete.vue +15 -0
- package/components/common/pages/backups/modals/lib/config/createBackup.ts +16 -0
- package/components/common/pages/backups/modals/lib/config/restore.ts +115 -0
- package/components/common/pages/backups/modals/lib/models/interfaces.ts +164 -0
- package/components/common/pages/backups/modals/restore/Restore.vue +388 -0
- package/components/common/pages/backups/modals/restore/disks/Disks.vue +28 -0
- package/components/common/pages/backups/modals/restore/disks/tableView/TableView.vue +101 -0
- package/components/common/pages/backups/modals/restore/disks/tableView/lib/config/keys.ts +14 -0
- package/components/common/pages/backups/modals/restore/disks/tableView/lib/config/table.ts +114 -0
- package/components/common/pages/backups/modals/restore/disks/tableView/lib/models/interfaces.ts +4 -0
- package/components/common/pages/backups/modals/restore/disks/tableView/lib/models/types.ts +10 -0
- package/components/common/pages/backups/modals/restore/lib/config/steps.ts +92 -0
- package/components/common/pages/backups/modals/restore/name/Name.vue +159 -0
- package/components/common/pages/backups/modals/restore/networks/Networks.vue +67 -0
- package/components/common/pages/backups/modals/restore/networks/table/Table.vue +216 -0
- package/components/common/pages/backups/modals/restore/networks/table/adapterType/AdapterType.vue +32 -0
- package/components/common/pages/backups/modals/restore/networks/table/adapterType/lib/config/options.ts +8 -0
- package/components/common/pages/backups/modals/restore/networks/table/lib/config/networkTable.ts +82 -0
- package/components/common/pages/backups/modals/restore/networks/table/lib/config/tableKeys.ts +10 -0
- package/components/common/pages/backups/modals/restore/networks/table/lib/models/types.ts +6 -0
- package/components/common/pages/backups/modals/restore/types/Types.vue +61 -0
- package/components/common/pages/backups/modals/restore/types/lib/config/descriptions.ts +7 -0
- package/components/common/pages/backups/modals/restore/types/lib/config/typeOptions.ts +24 -0
- package/components/common/pages/backups/tools/Tools.vue +75 -0
- package/components/common/pages/backups/tools/lib/config/tabs.ts +36 -0
- package/components/common/pages/scheduledTasks/lib/models/interfaces.ts +35 -0
- package/components/common/pages/scheduledTasks/lib/models/types.ts +16 -0
- package/components/common/pages/scheduledTasks/lib/utils/utils.ts +84 -0
- package/components/common/treeView/TreeView.vue +52 -0
- package/lib/models/interfaces.ts +1 -1
- package/package.json +1 -1
- /package/components/common/{backup/actions → pages/backups/modals}/deleteBackup/DeleteBackup.vue +0 -0
@@ -0,0 +1,84 @@
|
|
1
|
+
import type { UI_T_Project } from '~/lib/models/types'
|
2
|
+
import type {
|
3
|
+
UI_I_Localization,
|
4
|
+
UI_I_SendTaskParams,
|
5
|
+
} from '~/lib/models/interfaces'
|
6
|
+
import type { UI_I_ScheduleNewTasksForm } from '~/components/common/pages/scheduledTasks/modals/lib/models/interfaces'
|
7
|
+
import { base64 } from '~/lib/utils/base64'
|
8
|
+
import type {
|
9
|
+
UI_I_CreateScheduledTaskArgs,
|
10
|
+
UI_I_ScheduledTasksTableItem,
|
11
|
+
} from '~/components/common/pages/scheduledTasks/lib/models/interfaces'
|
12
|
+
import type { UI_T_ScheduledTasksActionsType } from '~/components/common/pages/scheduledTasks/lib/models/types'
|
13
|
+
|
14
|
+
export const defineScheduleTaskModalTitle = (
|
15
|
+
type: UI_T_ScheduledTasksActionsType,
|
16
|
+
isEdit: boolean
|
17
|
+
): string => {
|
18
|
+
const localization: UI_I_Localization = useLocal()
|
19
|
+
const { scheduleNewTasks, scheduleTaskEdit } = localization.common
|
20
|
+
|
21
|
+
const typeTitleMap: Partial<Record<UI_T_ScheduledTasksActionsType, string>> =
|
22
|
+
{
|
23
|
+
'power-on': localization.common.powerOn,
|
24
|
+
'power-off': localization.common.powerOff,
|
25
|
+
'shut-down-guest-os': localization.common.shutDownGuestOs,
|
26
|
+
'restart-guest-os': localization.common.restartGuestOs,
|
27
|
+
suspend: localization.common.suspend,
|
28
|
+
reset: localization.common.reset,
|
29
|
+
'take-snapshot': localization.common.takeSnapshot,
|
30
|
+
}
|
31
|
+
|
32
|
+
const title = typeTitleMap[type]
|
33
|
+
const modalMode = isEdit ? scheduleTaskEdit : scheduleNewTasks
|
34
|
+
|
35
|
+
return `${modalMode} (${title})`
|
36
|
+
}
|
37
|
+
export const scheduledTasks = (
|
38
|
+
form: UI_I_ScheduleNewTasksForm,
|
39
|
+
args: UI_I_SendTaskParams,
|
40
|
+
target: string,
|
41
|
+
isEdit: boolean,
|
42
|
+
data: UI_I_ScheduledTasksTableItem,
|
43
|
+
project: UI_T_Project
|
44
|
+
): UI_I_SendTaskParams => {
|
45
|
+
const methodArgs = {
|
46
|
+
method: args.method,
|
47
|
+
params: {
|
48
|
+
target: args.target,
|
49
|
+
args: args.args ? base64.encode(args.args) : '',
|
50
|
+
},
|
51
|
+
}
|
52
|
+
|
53
|
+
let method = ''
|
54
|
+
switch (project) {
|
55
|
+
case 'sphere':
|
56
|
+
method = isEdit
|
57
|
+
? 'VirtualMachines.UpdateScheduledTask'
|
58
|
+
: 'VirtualMachines.CreateScheduledTask'
|
59
|
+
break
|
60
|
+
case 'procurator':
|
61
|
+
method = isEdit ? 'vm.update_sched_task' : 'vm.create_sched_task'
|
62
|
+
break
|
63
|
+
}
|
64
|
+
|
65
|
+
const taskArgs: UI_I_CreateScheduledTaskArgs = {
|
66
|
+
target,
|
67
|
+
name: form.task_name,
|
68
|
+
description: form.description,
|
69
|
+
toggle: form.toggle,
|
70
|
+
cron_2: form.cron,
|
71
|
+
notify_emails: form.ntfn_target,
|
72
|
+
args: base64.encode(methodArgs),
|
73
|
+
...(isEdit && {
|
74
|
+
rid: data.rid,
|
75
|
+
last_modified: data.last_modified,
|
76
|
+
}),
|
77
|
+
}
|
78
|
+
|
79
|
+
return {
|
80
|
+
method,
|
81
|
+
target,
|
82
|
+
args: taskArgs,
|
83
|
+
}
|
84
|
+
}
|
@@ -0,0 +1,52 @@
|
|
1
|
+
<template>
|
2
|
+
<div class="tree-view w-full overflow-auto">
|
3
|
+
<common-recursion-tree
|
4
|
+
v-show="!props.loading"
|
5
|
+
:nodes="nodesLocal"
|
6
|
+
class="recursion-tree"
|
7
|
+
@select-node="onSelectNode"
|
8
|
+
@get-nodes="onShowNodes($event)"
|
9
|
+
/>
|
10
|
+
</div>
|
11
|
+
</template>
|
12
|
+
|
13
|
+
<script setup lang="ts">
|
14
|
+
// TODO remove
|
15
|
+
const props = defineProps<{
|
16
|
+
loading: boolean
|
17
|
+
nodes: any[]
|
18
|
+
}>()
|
19
|
+
|
20
|
+
const emits = defineEmits<{
|
21
|
+
(event: 'select-node', value: any): void
|
22
|
+
(event: 'show-nodes', value: string | number): void
|
23
|
+
}>()
|
24
|
+
|
25
|
+
const nodesLocal = ref<any[]>([])
|
26
|
+
watch(
|
27
|
+
() => props.nodes,
|
28
|
+
(newValue) => {
|
29
|
+
if (!newValue.length) return
|
30
|
+
|
31
|
+
nodesLocal.value = newValue
|
32
|
+
},
|
33
|
+
{ immediate: true, deep: true }
|
34
|
+
)
|
35
|
+
|
36
|
+
const onSelectNode = (item: any): void => {
|
37
|
+
emits('select-node', item)
|
38
|
+
}
|
39
|
+
|
40
|
+
const onShowNodes = ({ node, cb }: { node: any; cb: () => void }): void => {
|
41
|
+
// emits('show-nodes', +node.id) // ???
|
42
|
+
emits('show-nodes', node.id) // Для делева бэкапов
|
43
|
+
|
44
|
+
cb()
|
45
|
+
}
|
46
|
+
</script>
|
47
|
+
|
48
|
+
<style scoped lang="scss">
|
49
|
+
.tree-view {
|
50
|
+
height: 90%;
|
51
|
+
}
|
52
|
+
</style>
|
package/lib/models/interfaces.ts
CHANGED
package/package.json
CHANGED
/package/components/common/{backup/actions → pages/backups/modals}/deleteBackup/DeleteBackup.vue
RENAMED
File without changes
|