bfg-common 1.5.476 → 1.5.479

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 (109) 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/scss/components/auth.scss +4 -3
  7. package/components/atoms/TheIcon3.vue +50 -50
  8. package/components/atoms/collapse/CollapseNav.vue +170 -170
  9. package/components/atoms/perPage/PerPage.vue +58 -58
  10. package/components/atoms/table/dataGrid/DataGrid.vue +1709 -1709
  11. package/components/atoms/table/dataGrid/DataGridPagination.vue +97 -97
  12. package/components/atoms/table/dataGrid/lib/config/settingsTable.ts +94 -94
  13. package/components/atoms/table/dataGrid/lib/utils/export.ts +16 -16
  14. package/components/atoms/window/Window.vue +460 -458
  15. package/components/common/browse/blocks/contents/filesNew/Skeleton.vue +18 -18
  16. package/components/common/context/lib/models/interfaces.ts +33 -33
  17. package/components/common/diagramMain/modals/lib/config/networkModal.ts +398 -398
  18. package/components/common/diagramMain/modals/lib/config/portModal.ts +251 -251
  19. package/components/common/diagramMain/modals/lib/config/vCenterModal.ts +48 -48
  20. package/components/common/diagramMain/port/Port.vue +580 -580
  21. package/components/common/layout/theHeader/ThemeSwitch.vue +1 -1
  22. package/components/common/layout/theHeader/helpMenu/About.vue +79 -79
  23. package/components/common/layout/theHeader/helpMenu/aboutNew/AboutNew.vue +95 -95
  24. package/components/common/layout/theHeader/helpMenu/aboutOld/AboutOld.vue +79 -79
  25. package/components/common/mainNavigationPanel/MainNavigationPanelNew.vue +1 -1
  26. package/components/common/pages/backups/DetailView.vue +52 -52
  27. package/components/common/pages/backups/lib/models/interfaces.ts +36 -36
  28. package/components/common/pages/backups/modals/createBackup/configuration/Configuration.vue +29 -29
  29. package/components/common/pages/backups/modals/createBackup/configuration/backupWindow/BackupWindow.vue +26 -26
  30. package/components/common/pages/backups/modals/createBackup/configuration/maxBandwidth/MaxBandwidth.vue +66 -66
  31. package/components/common/pages/backups/modals/createBackup/configuration/maxBandwidth/lib/config/options.ts +6 -6
  32. package/components/common/pages/backups/modals/createBackup/configuration/strategy/Strategy.vue +35 -35
  33. package/components/common/pages/backups/modals/createBackup/datastores/tableView/TableView.vue +95 -95
  34. package/components/common/pages/backups/modals/createBackup/general/General.vue +141 -141
  35. package/components/common/pages/backups/modals/createBackup/lib/config/strategyOptions.ts +12 -12
  36. package/components/common/pages/backups/modals/lib/config/restore.ts +115 -115
  37. package/components/common/pages/backups/modals/lib/models/interfaces.ts +186 -186
  38. package/components/common/pages/backups/modals/restore/disks/Disks.vue +27 -27
  39. package/components/common/pages/backups/modals/restore/disks/tableView/lib/config/table.ts +117 -117
  40. package/components/common/pages/backups/modals/restore/name/Name.vue +166 -166
  41. package/components/common/pages/backups/modals/restore/name/lib/models/interfaces.ts +6 -6
  42. package/components/common/pages/backups/modals/restore/networks/Networks.vue +67 -67
  43. package/components/common/pages/backups/modals/restore/networks/table/Table.vue +214 -214
  44. package/components/common/pages/backups/modals/restore/types/lib/config/typeOptions.ts +25 -25
  45. package/components/common/pages/backups/tools/Tools.vue +75 -75
  46. package/components/common/pages/backups/tools/lib/config/tabs.ts +36 -36
  47. package/components/common/pages/home/lib/models/interfaces.ts +48 -48
  48. package/components/common/pages/home/widgets/hosts/Hosts.vue +27 -27
  49. package/components/common/pages/home/widgets/hosts/lib/config/items.ts +23 -23
  50. package/components/common/pages/home/widgets/vms/VmsOld.vue +35 -35
  51. package/components/common/pages/home/widgets/vms/lib/config/items.ts +19 -19
  52. package/components/common/pages/scheduledTasks/lib/utils/utils.ts +84 -84
  53. package/components/common/pages/shortcuts/block/BlockNew.vue +1 -1
  54. package/components/common/readyToComplete/ReadyToComplete.vue +17 -17
  55. package/components/common/select/radio/RadioGroup.vue +137 -137
  56. package/components/common/spiceConsole/Drawer.vue +392 -392
  57. package/components/common/spiceConsole/SpiceConsole.vue +184 -184
  58. package/components/common/spiceConsole/lib/models/interfaces.ts +5 -5
  59. package/components/common/split/vertical/VerticalNew.vue +6 -4
  60. package/components/common/tools/Actions.vue +207 -207
  61. package/components/common/treeView/TreeView.vue +52 -52
  62. package/components/common/vm/actions/add/folderTreeView/FolderTreeView.vue +72 -72
  63. package/components/common/vm/actions/add/folderTreeView/New.vue +40 -40
  64. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Cpu.vue +368 -368
  65. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/Shares.vue +140 -140
  66. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/lib/config/options.ts +28 -28
  67. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/Location.vue +154 -154
  68. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/table/Table.vue +99 -99
  69. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddress.vue +119 -119
  70. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIo.vue +31 -31
  71. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/Other.vue +16 -16
  72. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/numberDisplays/NumberDisplays.vue +53 -53
  73. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/delay/Delay.vue +32 -32
  74. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/Firmware.vue +60 -60
  75. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +174 -174
  76. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/Keymap.vue +32 -32
  77. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/Password.vue +103 -103
  78. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirection.vue +28 -28
  79. package/components/common/vm/actions/common/select/compatibility/Old.vue +107 -107
  80. package/components/common/vm/actions/common/select/computeResource/ComputeResource.vue +143 -143
  81. package/components/common/vm/actions/common/select/computeResource/New.vue +184 -184
  82. package/components/common/vm/actions/common/select/computeResource/treeView/TreeView.vue +131 -131
  83. package/components/common/vm/actions/common/select/createType/CreateType.vue +38 -38
  84. package/components/common/vm/actions/common/select/createType/lib/models/interfaces.ts +5 -5
  85. package/components/common/vm/actions/common/select/name/Name.vue +197 -197
  86. package/components/common/vm/actions/common/select/os/Old.vue +152 -152
  87. package/components/common/vm/actions/common/select/os/Os.vue +139 -139
  88. package/components/common/vm/actions/common/select/storage/new/New.vue +320 -320
  89. package/components/common/vm/actions/common/select/storage/new/lib/models/interfaces.ts +5 -5
  90. package/components/common/vm/actions/common/select/storage/new/lib/utils/utils.ts +21 -21
  91. package/components/common/vm/actions/common/select/template/old/Old.vue +50 -50
  92. package/components/common/vm/actions/editSettings/new/Skeleton.vue +88 -88
  93. package/components/common/vm/actions/register/Register.vue +267 -267
  94. package/components/common/vm/actions/register/lib/config/steps.ts +86 -86
  95. package/components/common/wizards/datastore/add/steps/typeMode/lib/config/typeOptions.ts +43 -43
  96. package/components/common/wizards/network/add/steps/selectTargetDevice/modals/old/SelectNetwork.vue +1 -0
  97. package/components/common/wizards/network/add/steps/selectTargetDevice/modals/old/SelectStandardSwitch.vue +1 -0
  98. package/components/common/wizards/vm/migrate/select/network/Network.vue +103 -103
  99. package/composables/useAppVersion.ts +21 -21
  100. package/composables/useLocal.ts +6 -6
  101. package/composables/useLocalCommon.ts +39 -39
  102. package/package.json +4 -4
  103. package/plugins/date.ts +233 -233
  104. package/plugins/panelStates.ts +70 -70
  105. package/plugins/text.ts +59 -59
  106. package/public/spice-console/lib/images/bitmap.js +203 -203
  107. package/public/spice-console/network/spicechannel.js +440 -440
  108. package/store/main/mutations.ts +7 -7
  109. package/store/main/state.ts +7 -7
@@ -1,97 +1,97 @@
1
- <template>
2
- <div class="pagination">
3
- <div v-if="!props.hidePagination" class="pagination-size">
4
- <atoms-per-page
5
- v-if="!props.hidePageSize"
6
- :test-id="props.testId"
7
- :page-size="props.pageSize"
8
- :options="props.options"
9
- @change="changePageSize"
10
- />
11
- </div>
12
-
13
- <div
14
- :class="['pagination-description', { 'ml-1': !props.isShowHiddenInfo }]"
15
- >
16
- {{ totalItemCount }}
17
- </div>
18
-
19
- <atoms-table-data-grid-page
20
- v-if="!props.hidePagination"
21
- :test-id="props.testId"
22
- :page="props.page"
23
- :total-items="props.totalItems"
24
- :total-pages="props.totalPages"
25
- :page-size="props.pageSize"
26
- @change="changePage"
27
- />
28
- </div>
29
- </template>
30
-
31
- <script setup lang="ts">
32
- import type { UI_I_Localization } from '~/lib/models/interfaces'
33
- import type { UI_I_OptionItem } from '~/components/atoms/lib/models/interfaces'
34
-
35
- const props = withDefaults(
36
- defineProps<{
37
- options: UI_I_OptionItem[]
38
- pageSize: number
39
- page: number
40
- totalItems: number
41
- totalPages: number
42
- pageItemsCount: number
43
- hidePagination?: boolean
44
- hidePageSize?: boolean
45
- showPageInfo?: boolean
46
- testId?: string
47
- isShowHiddenInfo?: boolean
48
- }>(),
49
- {
50
- hidePagination: undefined,
51
- hidePageSize: undefined,
52
- showPageInfo: undefined,
53
- testId: 'ui-data-grid-pagination',
54
- isShowHiddenInfo: false,
55
- }
56
- )
57
- const emits = defineEmits<{
58
- (event: 'change-page-size', value: number): void
59
- (event: 'change-page', value: number): void
60
- }>()
61
- const localization = computed<UI_I_Localization>(() => useLocal())
62
- const totalItemCount = computed<string>(() => {
63
- const start = (props.page - 1) * props.pageSize + 1
64
-
65
- // const paginationInfo = props.showPageInfo
66
- // ? `${start} - ${props.pageItemsCount} ${localization.value.common.of}`
67
- // : ''
68
-
69
- if (props.showPageInfo) {
70
- return `${start} - ${props.pageItemsCount}
71
- ${localization.value.common.of}
72
- ${props.totalItems} ${localization.value.common.items.toLowerCase()}`
73
- }
74
-
75
- return `${
76
- // props.totalItems
77
- props.pageItemsCount
78
- } ${localization.value.common.items.toLowerCase()}`
79
- })
80
-
81
- const changePageSize = (pageSize: number): void => {
82
- const newTotalPages = Math.ceil(props.totalItems / pageSize)
83
- if (newTotalPages < props.page) changePage(newTotalPages)
84
- emits('change-page-size', pageSize)
85
- }
86
-
87
- const changePage = (page: number): void => {
88
- emits('change-page', page)
89
- }
90
- </script>
91
-
92
- <style scoped lang="scss">
93
- .pagination {
94
- display: inline-flex;
95
- align-items: center;
96
- }
97
- </style>
1
+ <template>
2
+ <div class="pagination">
3
+ <div v-if="!props.hidePagination" class="pagination-size">
4
+ <atoms-per-page
5
+ v-if="!props.hidePageSize"
6
+ :test-id="props.testId"
7
+ :page-size="props.pageSize"
8
+ :options="props.options"
9
+ @change="changePageSize"
10
+ />
11
+ </div>
12
+
13
+ <div
14
+ :class="['pagination-description', { 'ml-1': !props.isShowHiddenInfo }]"
15
+ >
16
+ {{ totalItemCount }}
17
+ </div>
18
+
19
+ <atoms-table-data-grid-page
20
+ v-if="!props.hidePagination"
21
+ :test-id="props.testId"
22
+ :page="props.page"
23
+ :total-items="props.totalItems"
24
+ :total-pages="props.totalPages"
25
+ :page-size="props.pageSize"
26
+ @change="changePage"
27
+ />
28
+ </div>
29
+ </template>
30
+
31
+ <script setup lang="ts">
32
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
33
+ import type { UI_I_OptionItem } from '~/components/atoms/lib/models/interfaces'
34
+
35
+ const props = withDefaults(
36
+ defineProps<{
37
+ options: UI_I_OptionItem[]
38
+ pageSize: number
39
+ page: number
40
+ totalItems: number
41
+ totalPages: number
42
+ pageItemsCount: number
43
+ hidePagination?: boolean
44
+ hidePageSize?: boolean
45
+ showPageInfo?: boolean
46
+ testId?: string
47
+ isShowHiddenInfo?: boolean
48
+ }>(),
49
+ {
50
+ hidePagination: undefined,
51
+ hidePageSize: undefined,
52
+ showPageInfo: undefined,
53
+ testId: 'ui-data-grid-pagination',
54
+ isShowHiddenInfo: false,
55
+ }
56
+ )
57
+ const emits = defineEmits<{
58
+ (event: 'change-page-size', value: number): void
59
+ (event: 'change-page', value: number): void
60
+ }>()
61
+ const localization = computed<UI_I_Localization>(() => useLocal())
62
+ const totalItemCount = computed<string>(() => {
63
+ const start = (props.page - 1) * props.pageSize + 1
64
+
65
+ // const paginationInfo = props.showPageInfo
66
+ // ? `${start} - ${props.pageItemsCount} ${localization.value.common.of}`
67
+ // : ''
68
+
69
+ if (props.showPageInfo) {
70
+ return `${start} - ${props.pageItemsCount}
71
+ ${localization.value.common.of}
72
+ ${props.totalItems} ${localization.value.common.items.toLowerCase()}`
73
+ }
74
+
75
+ return `${
76
+ // props.totalItems
77
+ props.pageItemsCount
78
+ } ${localization.value.common.items.toLowerCase()}`
79
+ })
80
+
81
+ const changePageSize = (pageSize: number): void => {
82
+ const newTotalPages = Math.ceil(props.totalItems / pageSize)
83
+ if (newTotalPages < props.page) changePage(newTotalPages)
84
+ emits('change-page-size', pageSize)
85
+ }
86
+
87
+ const changePage = (page: number): void => {
88
+ emits('change-page', page)
89
+ }
90
+ </script>
91
+
92
+ <style scoped lang="scss">
93
+ .pagination {
94
+ display: inline-flex;
95
+ align-items: center;
96
+ }
97
+ </style>
@@ -1,94 +1,94 @@
1
- import type { UI_ColumnSettingsStrategy } from '~/components/atoms/table/dataGrid/lib/models/interfaces'
2
- import type {
3
- UI_I_ColumnKey,
4
- UI_I_HeadItem,
5
- } from '~/components/atoms/table/dataGrid/lib/models/interfaces'
6
- import type { UI_I_DropdownButtonItem } from '~/components/common/select/button/lib/models/interfaces'
7
- import type { UI_I_Localization } from '~/lib/models/interfaces'
8
- import {
9
- constructColumnKey,
10
- constructHeadItem,
11
- } from '~/components/atoms/table/dataGrid/lib/utils/constructDataTable'
12
-
13
- export const defaultColumnKeys = (
14
- items: [string, boolean, string, string][],
15
- strategy?: UI_ColumnSettingsStrategy
16
- ): UI_I_ColumnKey[] => {
17
- const result: UI_I_ColumnKey[] = []
18
- items.forEach((item, i) => {
19
- let col: string = `col${i}` // Стандартное значение по умолчанию
20
-
21
- if (strategy) {
22
- // Проходим по ключам объекта и ищем соответствие индекса i в значениях
23
- for (const key in strategy) {
24
- if (strategy[key].includes(i)) {
25
- col = key
26
- break
27
- }
28
- }
29
- }
30
-
31
- result.push(
32
- constructColumnKey(col, item[0], item[1], `show-column-${item[3]}`)
33
- )
34
- })
35
- return result
36
- }
37
-
38
- export const defaultHeadItems = (
39
- items: [string, boolean, string, string][],
40
- strategy?: UI_ColumnSettingsStrategy
41
- ): UI_I_HeadItem[] => {
42
- const result: UI_I_HeadItem[] = []
43
- items.forEach((item, i) => {
44
- let col: string = `col${i}` // Стандартное значение по умолчанию
45
-
46
- if (strategy) {
47
- // Проходим по ключам объекта и ищем соответствие индекса i в значениях
48
- for (const key in strategy) {
49
- if (strategy[key].includes(i)) {
50
- col = key
51
- break
52
- }
53
- }
54
- }
55
-
56
- result.push(
57
- constructHeadItem(
58
- col,
59
- item[0],
60
- item[3],
61
- false,
62
- item[2],
63
- undefined,
64
- item[3]
65
- )
66
- )
67
- })
68
- return result
69
- }
70
-
71
- export const exportItemsFunc = (
72
- localization: UI_I_Localization,
73
- rows: number,
74
- selectedRows: number,
75
- testId: string
76
- ): UI_I_DropdownButtonItem[] => {
77
- return [
78
- {
79
- text: localization.common.allRowsCount.replace('{0}', '' + rows),
80
- type: '0',
81
- disabled: false,
82
- testId: `${testId}-export-all`,
83
- },
84
- {
85
- text: localization.common.selectedRowsCount.replace(
86
- '{0}',
87
- '' + selectedRows
88
- ),
89
- type: '1',
90
- disabled: false,
91
- testId: `${testId}-export-selected`,
92
- },
93
- ]
94
- }
1
+ import type { UI_ColumnSettingsStrategy } from '~/components/atoms/table/dataGrid/lib/models/interfaces'
2
+ import type {
3
+ UI_I_ColumnKey,
4
+ UI_I_HeadItem,
5
+ } from '~/components/atoms/table/dataGrid/lib/models/interfaces'
6
+ import type { UI_I_DropdownButtonItem } from '~/components/common/select/button/lib/models/interfaces'
7
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
8
+ import {
9
+ constructColumnKey,
10
+ constructHeadItem,
11
+ } from '~/components/atoms/table/dataGrid/lib/utils/constructDataTable'
12
+
13
+ export const defaultColumnKeys = (
14
+ items: [string, boolean, string, string][],
15
+ strategy?: UI_ColumnSettingsStrategy
16
+ ): UI_I_ColumnKey[] => {
17
+ const result: UI_I_ColumnKey[] = []
18
+ items.forEach((item, i) => {
19
+ let col: string = `col${i}` // Стандартное значение по умолчанию
20
+
21
+ if (strategy) {
22
+ // Проходим по ключам объекта и ищем соответствие индекса i в значениях
23
+ for (const key in strategy) {
24
+ if (strategy[key].includes(i)) {
25
+ col = key
26
+ break
27
+ }
28
+ }
29
+ }
30
+
31
+ result.push(
32
+ constructColumnKey(col, item[0], item[1], `show-column-${item[3]}`)
33
+ )
34
+ })
35
+ return result
36
+ }
37
+
38
+ export const defaultHeadItems = (
39
+ items: [string, boolean, string, string][],
40
+ strategy?: UI_ColumnSettingsStrategy
41
+ ): UI_I_HeadItem[] => {
42
+ const result: UI_I_HeadItem[] = []
43
+ items.forEach((item, i) => {
44
+ let col: string = `col${i}` // Стандартное значение по умолчанию
45
+
46
+ if (strategy) {
47
+ // Проходим по ключам объекта и ищем соответствие индекса i в значениях
48
+ for (const key in strategy) {
49
+ if (strategy[key].includes(i)) {
50
+ col = key
51
+ break
52
+ }
53
+ }
54
+ }
55
+
56
+ result.push(
57
+ constructHeadItem(
58
+ col,
59
+ item[0],
60
+ item[3],
61
+ false,
62
+ item[2],
63
+ undefined,
64
+ item[3]
65
+ )
66
+ )
67
+ })
68
+ return result
69
+ }
70
+
71
+ export const exportItemsFunc = (
72
+ localization: UI_I_Localization,
73
+ rows: number,
74
+ selectedRows: number,
75
+ testId: string
76
+ ): UI_I_DropdownButtonItem[] => {
77
+ return [
78
+ {
79
+ text: localization.common.allRowsCount.replace('{0}', '' + rows),
80
+ type: '0',
81
+ disabled: false,
82
+ testId: `${testId}-export-all`,
83
+ },
84
+ {
85
+ text: localization.common.selectedRowsCount.replace(
86
+ '{0}',
87
+ '' + selectedRows
88
+ ),
89
+ type: '1',
90
+ disabled: false,
91
+ testId: `${testId}-export-selected`,
92
+ },
93
+ ]
94
+ }
@@ -1,16 +1,16 @@
1
- export const generateCsvAndDownload = (rows: HTMLElement[]): void => {
2
- const content: string[] = []
3
- rows.forEach((row: HTMLElement) => {
4
- content.push(row.innerText.replaceAll(';', ',').replaceAll('\n', ';'))
5
- })
6
-
7
- const csvContent = 'data:text/csv;charset=utf-8,' + content.join('\n')
8
-
9
- const encodedUri = encodeURI(csvContent)
10
- const link = document.createElement('a')
11
- link.setAttribute('href', encodedUri)
12
- link.setAttribute('download', 'my_data.csv')
13
- document.body.appendChild(link)
14
-
15
- link.click()
16
- }
1
+ export const generateCsvAndDownload = (rows: HTMLElement[]): void => {
2
+ const content: string[] = []
3
+ rows.forEach((row: HTMLElement) => {
4
+ content.push(row.innerText.replaceAll(';', ',').replaceAll('\n', ';'))
5
+ })
6
+
7
+ const csvContent = 'data:text/csv;charset=utf-8,' + content.join('\n')
8
+
9
+ const encodedUri = encodeURI(csvContent)
10
+ const link = document.createElement('a')
11
+ link.setAttribute('href', encodedUri)
12
+ link.setAttribute('download', 'my_data.csv')
13
+ document.body.appendChild(link)
14
+
15
+ link.click()
16
+ }