bfg-common 1.5.514 → 1.5.516

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 (52) hide show
  1. package/assets/localization/local_be.json +5 -3
  2. package/assets/localization/local_en.json +6 -4
  3. package/assets/localization/local_hy.json +5 -3
  4. package/assets/localization/local_kk.json +5 -3
  5. package/assets/localization/local_ru.json +5 -3
  6. package/assets/localization/local_zh.json +5 -3
  7. package/components/atoms/sortableView/SortableView.vue +2 -2
  8. package/components/common/browse/blocks/lib/models/types.ts +1 -1
  9. package/components/common/browse/lib/models/interfaces.ts +5 -5
  10. package/components/common/diagramMain/modals/lib/config/portModal.ts +251 -251
  11. package/components/common/diagramMain/modals/lib/config/vCenterModal.ts +48 -48
  12. package/components/common/diagramMain/network/Contents.vue +497 -497
  13. package/components/common/diagramMain/port/Port.vue +580 -580
  14. package/components/common/pages/backups/modals/createBackup/CreateBackup.vue +196 -379
  15. package/components/common/pages/backups/modals/createBackup/New.vue +267 -0
  16. package/components/common/pages/backups/modals/createBackup/Old.vue +142 -0
  17. package/components/common/pages/backups/modals/createBackup/configuration/Configuration.vue +29 -29
  18. package/components/common/pages/backups/modals/createBackup/configuration/ConfigurationNew.vue +218 -0
  19. package/components/common/pages/backups/modals/createBackup/configuration/ConfigurationOld.vue +29 -0
  20. package/components/common/pages/backups/modals/createBackup/configuration/backupWindow/BackupWindow.vue +29 -29
  21. package/components/common/pages/backups/modals/createBackup/configuration/maxBandwidth/MaxBandwidth.vue +69 -69
  22. package/components/common/pages/backups/modals/createBackup/configuration/maxBandwidth/lib/config/options.ts +6 -6
  23. package/components/common/pages/backups/modals/createBackup/configuration/strategy/Strategy.vue +38 -38
  24. package/components/common/pages/backups/modals/createBackup/datastores/Datastores.vue +34 -59
  25. package/components/common/pages/backups/modals/createBackup/datastores/DatastoresNew.vue +23 -0
  26. package/components/common/pages/backups/modals/createBackup/datastores/DatastoresOld.vue +33 -0
  27. package/components/common/pages/backups/modals/createBackup/datastores/tableView/new/TableView.vue +134 -0
  28. package/components/common/pages/backups/modals/createBackup/datastores/tableView/new/lib/config/table.ts +219 -0
  29. package/components/common/pages/backups/modals/createBackup/datastores/tableView/new/lib/models/enums.ts +15 -0
  30. package/components/common/pages/backups/modals/createBackup/datastores/tableView/new/lib/models/interfaces.ts +5 -0
  31. package/components/common/pages/backups/modals/createBackup/datastores/tableView/{TableView.vue → old/TableView.vue} +95 -95
  32. package/components/common/pages/backups/modals/createBackup/datastores/tableView/{lib → old/lib}/config/keys.ts +14 -14
  33. package/components/common/pages/backups/modals/createBackup/datastores/tableView/{lib → old/lib}/config/table.ts +127 -127
  34. package/components/common/pages/backups/modals/createBackup/datastores/tableView/{lib → old/lib}/models/types.ts +10 -10
  35. package/components/common/pages/backups/modals/createBackup/disks/Disks.vue +34 -28
  36. package/components/common/pages/backups/modals/createBackup/disks/DisksNew.vue +22 -0
  37. package/components/common/pages/backups/modals/createBackup/disks/DisksOld.vue +28 -0
  38. package/components/common/pages/backups/modals/createBackup/disks/tableView/new/TableView.vue +131 -0
  39. package/components/common/pages/backups/modals/createBackup/disks/tableView/new/lib/config/table.ts +178 -0
  40. package/components/common/pages/backups/modals/createBackup/disks/tableView/{TableView.vue → old/TableView.vue} +119 -108
  41. package/components/common/pages/backups/modals/createBackup/disks/tableView/{lib → old/lib}/config/keys.ts +12 -12
  42. package/components/common/pages/backups/modals/createBackup/disks/tableView/{lib → old/lib}/config/table.ts +125 -125
  43. package/components/common/pages/backups/modals/createBackup/disks/tableView/{lib → old/lib}/models/types.ts +10 -10
  44. package/components/common/pages/backups/modals/createBackup/general/General.vue +33 -141
  45. package/components/common/pages/backups/modals/createBackup/general/GeneralNew.vue +128 -0
  46. package/components/common/pages/backups/modals/createBackup/general/GeneralOld.vue +66 -0
  47. package/components/common/pages/backups/modals/createBackup/lib/config/readyToCompleteOptions.ts +59 -0
  48. package/components/common/pages/backups/modals/createBackup/lib/config/steps.ts +123 -117
  49. package/components/common/pages/backups/modals/createBackup/lib/config/strategyOptions.ts +13 -12
  50. package/components/common/pages/backups/modals/createBackup/lib/models/interfaces.ts +8 -8
  51. package/components/common/pages/backups/modals/createBackup/lib/validation/validations.ts +145 -0
  52. package/package.json +1 -1
@@ -0,0 +1,219 @@
1
+ import type {
2
+ UI_I_DataTableBody,
3
+ UI_I_DataTableOptions,
4
+ UI_I_DataTableHeader
5
+ } from '~/node_modules/bfg-uikit/components/ui/dataTable/models/interfaces'
6
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
7
+ import type {
8
+ UI_I_BackupDatastore,
9
+ } from '~/components/common/pages/backups/modals/lib/models/interfaces'
10
+ import { datastoreLocalizationByState } from '~/components/common/lib/config/states'
11
+ import type {
12
+ I_BackupDatastoreChipStatus
13
+ } from "~/components/common/pages/backups/modals/createBackup/datastores/tableView/new/lib/models/interfaces";
14
+
15
+
16
+ export const getHeaderDataFunc = (
17
+ localization: UI_I_Localization
18
+ ): UI_I_DataTableHeader[] => [
19
+ {
20
+ col: 'col0',
21
+ colName: 'name',
22
+ text: localization.common.name,
23
+ isSortable: true,
24
+ sort: 'asc',
25
+ width: '104px',
26
+ show: true,
27
+ filter: true
28
+ },
29
+ {
30
+ col: 'col1',
31
+ colName: 'state',
32
+ text: localization.common.state,
33
+ isSortable: true,
34
+ sort: 'asc',
35
+ width: '128px',
36
+ show: true,
37
+ filter: true
38
+ },
39
+ {
40
+ col: 'col2',
41
+ colName: 'capacity',
42
+ text: localization.common.capacity,
43
+ isSortable: true,
44
+ sort: 'asc',
45
+ width: '96px',
46
+ show: true,
47
+ filter: true
48
+ },
49
+ {
50
+ col: 'col3',
51
+ colName: 'provisioned',
52
+ text: localization.common.provisioned,
53
+ isSortable: true,
54
+ sort: 'asc',
55
+ width: '96px',
56
+ show: true,
57
+ filter: true
58
+ },
59
+ {
60
+ col: 'col4',
61
+ colName: 'free',
62
+ text: localization.common.free,
63
+ isSortable: true,
64
+ sort: 'asc',
65
+ width: '96px',
66
+ show: true,
67
+ filter: true
68
+ },
69
+ {
70
+ col: 'col5',
71
+ colName: 'used',
72
+ text: localization.common.used,
73
+ isSortable: true,
74
+ sort: 'asc',
75
+ width: '96px',
76
+ show: true,
77
+ filter: true
78
+ },
79
+ {
80
+ col: 'col6',
81
+ colName: 'type',
82
+ text: localization.common.type,
83
+ isSortable: true,
84
+ sort: 'asc',
85
+ width: '80',
86
+ show: true,
87
+ filter: true
88
+ },
89
+ {
90
+ col: 'col7',
91
+ colName: 'location',
92
+ text: localization.common.location,
93
+ isSortable: true,
94
+ sort: 'asc',
95
+ width: '160px',
96
+ show: true,
97
+ filter: true
98
+ }
99
+ ]
100
+
101
+ export const options: UI_I_DataTableOptions = {
102
+ perPageOptions: [{ text: '10', value: 100, default: true }],
103
+ isSelectable: true,
104
+ isFocusable: false,
105
+ showPagination: false,
106
+ showPaginationOnTop: false,
107
+ selectType: 'radio',
108
+ showPageInfo: false,
109
+ isSortable: true,
110
+ server: false,
111
+ isResizable: true,
112
+ showSearch: false,
113
+ showSelectedRows: false,
114
+ showColumnManager: true,
115
+ withActions: false,
116
+ inBlock: false,
117
+ inModal: true,
118
+ showExport: false,
119
+ withCollapse: false
120
+ }
121
+
122
+ export const getBodyDataFunc = (
123
+ bodyData: UI_I_BackupDatastore[],
124
+ localization: UI_I_Localization,
125
+ selectedRow: string
126
+ ): UI_I_DataTableBody[] => {
127
+ const { $binary }: any = useNuxtApp()
128
+ const lang = useLocalStorage('lang') === 'ru_RU' ? 'ru' : 'en'
129
+
130
+ return bodyData.map((datastore, index: number) => {
131
+ const stateData: I_BackupDatastoreChipStatus = {
132
+ chipColor: '',
133
+ testId: `${datastore.name}-progress`
134
+ }
135
+
136
+ switch (datastore.state) {
137
+ case 0:
138
+ stateData.iconClassName = 'icon-help'
139
+ stateData.chipColor = 'primary'
140
+ break
141
+ case 1:
142
+ stateData.iconClassName = 'status-check'
143
+ stateData.chipColor = 'green'
144
+ break
145
+ case 2:
146
+ stateData.iconClassName = 'warning-outline'
147
+ stateData.chipColor = 'yellow'
148
+ break
149
+ case 3:
150
+ stateData.iconClassName = 'error-outline'
151
+ stateData.chipColor = 'red'
152
+ break
153
+ case 4:
154
+ stateData.iconClassName = 'maintenance'
155
+ stateData.chipColor = 'yellow'
156
+ break
157
+ case 5:
158
+ stateData.iconClassName = 'close'
159
+ stateData.chipColor = 'red'
160
+ break
161
+ case 6:
162
+ stateData.iconClassName = 'close'
163
+ stateData.chipColor = 'red'
164
+ break
165
+ default:
166
+ stateData.iconClassName = ''
167
+ stateData.chipColor = ''
168
+ }
169
+
170
+ return {
171
+ row: index,
172
+ collapse: false,
173
+ isHiddenCollapse: false,
174
+ collapseToggle: false,
175
+ isSelected: selectedRow === datastore.id,
176
+ data: [
177
+ {
178
+ key: 'icon',
179
+ col: 'col0',
180
+ text: datastore.name,
181
+ data: {
182
+ iconClassName: [3, 5, 6].includes(datastore.state) ? 'vsphere-icon-datastore-error' : 'vsphere-icon-datastore',
183
+ id: datastore.id
184
+ }
185
+ },
186
+ {
187
+ key: 'status',
188
+ col: 'col1',
189
+ text: localization.common[datastoreLocalizationByState[datastore.state]] || '--',
190
+ data: stateData
191
+ },
192
+ {
193
+ col: 'col2',
194
+ text: $binary.round(datastore.capacity.capacity_mb, false, lang)
195
+ },
196
+ {
197
+ col: 'col3',
198
+ text: $binary.round(datastore.capacity.provisioned_mb, false, lang)
199
+ },
200
+ {
201
+ col: 'col4',
202
+ text: $binary.round(datastore.capacity.free_mb, false, lang)
203
+ },
204
+ {
205
+ col: 'col5',
206
+ text: $binary.round(datastore.capacity.used_mb, false, lang)
207
+ },
208
+ {
209
+ col: 'col6',
210
+ text: datastore.type_text
211
+ },
212
+ {
213
+ col: 'col7',
214
+ text: datastore.location
215
+ }
216
+ ]
217
+ }
218
+ })
219
+ }
@@ -0,0 +1,15 @@
1
+ export enum E_BackupDatastoreChipStatus {
2
+ 'help-icon',
3
+ 'running-icon',
4
+ 'status-check',
5
+ 'close',
6
+ }
7
+
8
+ export enum E_BackupDatastoreChipColor {
9
+ 'default',
10
+ 'primary',
11
+ 'green',
12
+ 'red',
13
+ }
14
+
15
+
@@ -0,0 +1,5 @@
1
+ export interface I_BackupDatastoreChipStatus {
2
+ iconClassName?: string,
3
+ chipColor?: string,
4
+ testId: string
5
+ }
@@ -1,95 +1,95 @@
1
- <template>
2
- <div class="data-table-view overflow-hidden">
3
- <div class="data-table-view__inner">
4
- <atoms-table-data-grid
5
- v-model:selected-row="selectedRows"
6
- v-model:column-keys="columnKeys"
7
- class="data-table"
8
- type="radio"
9
- test-id="datastore-table"
10
- :head-items="headItems"
11
- :body-items="bodyItems"
12
- :total-items="props.totalItems"
13
- :total-pages="props.totalPages"
14
- :items-per-page="itemsPerPage"
15
- :loading="loading"
16
- hide-pagination
17
- server-off
18
- >
19
- <template #icon="{ item }">
20
- <span :class="['datagrid-cell-icon', item.data]" />
21
- <span class="text-ellipsis">
22
- {{ item.text }}
23
- </span>
24
- </template>
25
- </atoms-table-data-grid>
26
- </div>
27
- </div>
28
- </template>
29
-
30
- <script lang="ts" setup>
31
- import type {
32
- UI_I_HeadItem,
33
- UI_I_ColumnKey,
34
- UI_I_BodyItem,
35
- } from '~/components/atoms/table/dataGrid/lib/models/interfaces'
36
- import type { UI_I_Localization } from '~/lib/models/interfaces'
37
- import type { UI_I_BackupDatastore } from '~/components/common/pages/backups/modals/lib/models/interfaces'
38
- import { itemsPerPage } from '~/components/atoms/table/dataGrid/lib/config/itemsPerPage'
39
- import * as table from '~/components/common/pages/backups/modals/createBackup/datastores/tableView/lib/config/table'
40
-
41
- const props = defineProps<{
42
- dataTable: UI_I_BackupDatastore[]
43
- loading: boolean
44
- totalItems: number
45
- totalPages: number
46
- }>()
47
- const localization = computed<UI_I_Localization>(() => useLocal())
48
-
49
- const selectedRows = defineModel<string>('selected')
50
-
51
- const columnKeys = ref<UI_I_ColumnKey[]>(table.columnKeys(localization.value))
52
-
53
- const headItems = computed<UI_I_HeadItem[]>(() =>
54
- table.headItems(localization.value)
55
- )
56
-
57
- const bodyItems = computed<UI_I_BodyItem[][]>(() => {
58
- let result: UI_I_BodyItem[][] = []
59
- if (props.dataTable) {
60
- result = table.bodyItems(props.dataTable, localization.value)
61
- }
62
-
63
- return result
64
- })
65
- watch(
66
- bodyItems,
67
- () => {
68
- setTimeout(() => {
69
- selectedRows.value = ''
70
- }, 0)
71
- },
72
- { deep: true, immediate: true }
73
- )
74
- </script>
75
-
76
- <style lang="scss" scoped>
77
- .data-table-view {
78
- height: inherit;
79
- margin-bottom: 10px;
80
- margin-right: 10px;
81
-
82
- &__inner {
83
- height: inherit;
84
- }
85
- :deep(.data-table) {
86
- height: inherit;
87
- .datagrid-outer-wrapper {
88
- height: inherit;
89
- }
90
- }
91
- }
92
- .vm-icon {
93
- margin-right: 5px;
94
- }
95
- </style>
1
+ <template>
2
+ <div class="data-table-view overflow-hidden">
3
+ <div class="data-table-view__inner">
4
+ <atoms-table-data-grid
5
+ v-model:selected-row="selectedRows"
6
+ v-model:column-keys="columnKeys"
7
+ v-model:page="pagination.page"
8
+ v-model:page-size="pagination.pageSize"
9
+ :head-items="headItems"
10
+ :body-items="bodyItems"
11
+ :total-items="props.totalItems"
12
+ :total-pages="props.totalPages"
13
+ :items-per-page="itemsPerPage"
14
+ :loading="loading"
15
+ class="data-table"
16
+ type="radio"
17
+ test-id="datastore-table"
18
+ hide-pagination
19
+ server-off
20
+ >
21
+ <template #icon="{ item }">
22
+ <span :class="['datagrid-cell-icon', item.data]" />
23
+ <span class="text-ellipsis">
24
+ {{ item.text }}
25
+ </span>
26
+ </template>
27
+ </atoms-table-data-grid>
28
+ </div>
29
+ </div>
30
+ </template>
31
+
32
+ <script lang="ts" setup>
33
+ import type {
34
+ UI_I_HeadItem,
35
+ UI_I_ColumnKey,
36
+ UI_I_BodyItem,
37
+ } from '~/components/atoms/table/dataGrid/lib/models/interfaces'
38
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
39
+ import type { UI_I_BackupDatastore } from '~/components/common/pages/backups/modals/lib/models/interfaces'
40
+ import { itemsPerPage } from '~/components/atoms/table/dataGrid/lib/config/itemsPerPage'
41
+ import * as table from '~/components/common/pages/backups/modals/createBackup/datastores/tableView/old/lib/config/table'
42
+ import type {UI_I_Pagination} from "~/lib/models/table/interfaces";
43
+
44
+ const props = defineProps<{
45
+ dataTable: UI_I_BackupDatastore[]
46
+ loading: boolean
47
+ totalItems: number
48
+ totalPages: number
49
+ }>()
50
+ const localization = computed<UI_I_Localization>(() => useLocal())
51
+
52
+ const selectedRows = defineModel<string>('selected')
53
+
54
+ const pagination = ref<UI_I_Pagination>({
55
+ page: 1,
56
+ pageSize: 100,
57
+ })
58
+
59
+ const columnKeys = ref<UI_I_ColumnKey[]>(table.columnKeys(localization.value))
60
+
61
+ const headItems = computed<UI_I_HeadItem[]>(() =>
62
+ table.headItems(localization.value)
63
+ )
64
+
65
+ const bodyItems = computed<UI_I_BodyItem[][]>(() => {
66
+ let result: UI_I_BodyItem[][] = []
67
+ if (props.dataTable) {
68
+ result = table.bodyItems(props.dataTable, localization.value)
69
+ }
70
+
71
+ return result
72
+ })
73
+
74
+ </script>
75
+
76
+ <style lang="scss" scoped>
77
+ .data-table-view {
78
+ height: inherit;
79
+ margin-bottom: 10px;
80
+ margin-right: 10px;
81
+
82
+ &__inner {
83
+ height: inherit;
84
+ }
85
+ :deep(.data-table) {
86
+ height: inherit;
87
+ .datagrid-outer-wrapper {
88
+ height: inherit;
89
+ }
90
+ }
91
+ }
92
+ .vm-icon {
93
+ margin-right: 5px;
94
+ }
95
+ </style>
@@ -1,14 +1,14 @@
1
- import type {
2
- UI_T_DatastoreTableKeysTuple
3
- } from '~/components/common/pages/backups/modals/createBackup/datastores/tableView/lib/models/types';
4
-
5
- export const tableKeys: UI_T_DatastoreTableKeysTuple = [
6
- 'name',
7
- 'state',
8
- 'capacity_mb',
9
- 'provisioned_mb',
10
- 'free_mb',
11
- 'used_mb',
12
- 'type_text',
13
- 'location'
14
- ]
1
+ import type {
2
+ UI_T_DatastoreTableKeysTuple
3
+ } from '~/components/common/pages/backups/modals/createBackup/datastores/tableView/old/lib/models/types';
4
+
5
+ export const tableKeys: UI_T_DatastoreTableKeysTuple = [
6
+ 'name',
7
+ 'state',
8
+ 'capacity_mb',
9
+ 'provisioned_mb',
10
+ 'free_mb',
11
+ 'used_mb',
12
+ 'type_text',
13
+ 'location'
14
+ ]