bfg-common 1.5.478 → 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 (102) 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/components/atoms/TheIcon3.vue +50 -50
  7. package/components/atoms/collapse/CollapseNav.vue +170 -170
  8. package/components/atoms/perPage/PerPage.vue +58 -58
  9. package/components/atoms/table/dataGrid/DataGrid.vue +1709 -1709
  10. package/components/atoms/table/dataGrid/DataGridPagination.vue +97 -97
  11. package/components/atoms/table/dataGrid/lib/config/settingsTable.ts +94 -94
  12. package/components/atoms/table/dataGrid/lib/utils/export.ts +16 -16
  13. package/components/atoms/window/Window.vue +460 -460
  14. package/components/common/browse/blocks/contents/filesNew/Skeleton.vue +18 -18
  15. package/components/common/context/lib/models/interfaces.ts +33 -33
  16. package/components/common/diagramMain/modals/lib/config/networkModal.ts +398 -398
  17. package/components/common/diagramMain/modals/lib/config/portModal.ts +251 -251
  18. package/components/common/diagramMain/modals/lib/config/vCenterModal.ts +48 -48
  19. package/components/common/diagramMain/port/Port.vue +580 -580
  20. package/components/common/layout/theHeader/helpMenu/About.vue +79 -79
  21. package/components/common/layout/theHeader/helpMenu/aboutNew/AboutNew.vue +95 -95
  22. package/components/common/layout/theHeader/helpMenu/aboutOld/AboutOld.vue +79 -79
  23. package/components/common/pages/backups/DetailView.vue +52 -52
  24. package/components/common/pages/backups/lib/models/interfaces.ts +36 -36
  25. package/components/common/pages/backups/modals/createBackup/configuration/Configuration.vue +29 -29
  26. package/components/common/pages/backups/modals/createBackup/configuration/backupWindow/BackupWindow.vue +26 -26
  27. package/components/common/pages/backups/modals/createBackup/configuration/maxBandwidth/MaxBandwidth.vue +66 -66
  28. package/components/common/pages/backups/modals/createBackup/configuration/maxBandwidth/lib/config/options.ts +6 -6
  29. package/components/common/pages/backups/modals/createBackup/configuration/strategy/Strategy.vue +35 -35
  30. package/components/common/pages/backups/modals/createBackup/datastores/tableView/TableView.vue +95 -95
  31. package/components/common/pages/backups/modals/createBackup/general/General.vue +141 -141
  32. package/components/common/pages/backups/modals/createBackup/lib/config/strategyOptions.ts +12 -12
  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/disks/Disks.vue +27 -27
  36. package/components/common/pages/backups/modals/restore/disks/tableView/lib/config/table.ts +117 -117
  37. package/components/common/pages/backups/modals/restore/name/Name.vue +166 -166
  38. package/components/common/pages/backups/modals/restore/name/lib/models/interfaces.ts +6 -6
  39. package/components/common/pages/backups/modals/restore/networks/Networks.vue +67 -67
  40. package/components/common/pages/backups/modals/restore/networks/table/Table.vue +214 -214
  41. package/components/common/pages/backups/modals/restore/types/lib/config/typeOptions.ts +25 -25
  42. package/components/common/pages/backups/tools/Tools.vue +75 -75
  43. package/components/common/pages/backups/tools/lib/config/tabs.ts +36 -36
  44. package/components/common/pages/home/lib/models/interfaces.ts +48 -48
  45. package/components/common/pages/home/widgets/hosts/Hosts.vue +27 -27
  46. package/components/common/pages/home/widgets/hosts/lib/config/items.ts +23 -23
  47. package/components/common/pages/home/widgets/vms/VmsOld.vue +35 -35
  48. package/components/common/pages/home/widgets/vms/lib/config/items.ts +19 -19
  49. package/components/common/pages/scheduledTasks/lib/utils/utils.ts +84 -84
  50. package/components/common/readyToComplete/ReadyToComplete.vue +17 -17
  51. package/components/common/select/radio/RadioGroup.vue +137 -137
  52. package/components/common/spiceConsole/Drawer.vue +392 -392
  53. package/components/common/spiceConsole/SpiceConsole.vue +184 -184
  54. package/components/common/spiceConsole/lib/models/interfaces.ts +5 -5
  55. package/components/common/tools/Actions.vue +207 -207
  56. package/components/common/treeView/TreeView.vue +52 -52
  57. package/components/common/vm/actions/add/folderTreeView/FolderTreeView.vue +72 -72
  58. package/components/common/vm/actions/add/folderTreeView/New.vue +40 -40
  59. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Cpu.vue +368 -368
  60. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/Shares.vue +140 -140
  61. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/lib/config/options.ts +28 -28
  62. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/Location.vue +154 -154
  63. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/table/Table.vue +99 -99
  64. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddress.vue +119 -119
  65. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIo.vue +31 -31
  66. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/Other.vue +16 -16
  67. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/numberDisplays/NumberDisplays.vue +53 -53
  68. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/delay/Delay.vue +32 -32
  69. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/Firmware.vue +60 -60
  70. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +174 -174
  71. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/Keymap.vue +32 -32
  72. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/Password.vue +103 -103
  73. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirection.vue +28 -28
  74. package/components/common/vm/actions/common/select/compatibility/Old.vue +107 -107
  75. package/components/common/vm/actions/common/select/computeResource/ComputeResource.vue +143 -143
  76. package/components/common/vm/actions/common/select/computeResource/New.vue +184 -184
  77. package/components/common/vm/actions/common/select/computeResource/treeView/TreeView.vue +131 -131
  78. package/components/common/vm/actions/common/select/createType/CreateType.vue +38 -38
  79. package/components/common/vm/actions/common/select/createType/lib/models/interfaces.ts +5 -5
  80. package/components/common/vm/actions/common/select/name/Name.vue +197 -197
  81. package/components/common/vm/actions/common/select/os/Old.vue +152 -152
  82. package/components/common/vm/actions/common/select/os/Os.vue +139 -139
  83. package/components/common/vm/actions/common/select/storage/new/New.vue +320 -320
  84. package/components/common/vm/actions/common/select/storage/new/lib/models/interfaces.ts +5 -5
  85. package/components/common/vm/actions/common/select/storage/new/lib/utils/utils.ts +21 -21
  86. package/components/common/vm/actions/common/select/template/old/Old.vue +50 -50
  87. package/components/common/vm/actions/editSettings/new/Skeleton.vue +88 -88
  88. package/components/common/vm/actions/register/Register.vue +267 -267
  89. package/components/common/vm/actions/register/lib/config/steps.ts +86 -86
  90. package/components/common/wizards/datastore/add/steps/typeMode/lib/config/typeOptions.ts +43 -43
  91. package/components/common/wizards/vm/migrate/select/network/Network.vue +103 -103
  92. package/composables/useAppVersion.ts +21 -21
  93. package/composables/useLocal.ts +6 -6
  94. package/composables/useLocalCommon.ts +39 -39
  95. package/package.json +2 -2
  96. package/plugins/date.ts +233 -233
  97. package/plugins/panelStates.ts +70 -70
  98. package/plugins/text.ts +59 -59
  99. package/public/spice-console/lib/images/bitmap.js +203 -203
  100. package/public/spice-console/network/spicechannel.js +440 -440
  101. package/store/main/mutations.ts +7 -7
  102. package/store/main/state.ts +7 -7
@@ -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
+ }
@@ -1,29 +1,29 @@
1
- <template>
2
- <div class="configuration">
3
- <div class="stack-view">
4
- <common-pages-backups-modals-create-backup-configuration-strategy
5
- v-model="model"
6
- />
7
- <!-- <common-pages-backups-modals-create-backup-configuration-backup-window-->
8
- <!-- v-model="model"-->
9
- <!-- />-->
10
- <common-pages-backups-modals-create-backup-configuration-max-bandwidth
11
- v-model="model"
12
- />
13
- </div>
14
- </div>
15
- </template>
16
-
17
- <script lang="ts" setup>
18
- import type { UI_I_CreateBackupForm } from '~/components/common/pages/backups/modals/lib/models/interfaces'
19
-
20
- const model = defineModel<UI_I_CreateBackupForm>({ required: true })
21
- </script>
22
-
23
- <style lang="scss" scoped>
24
- .stack-view {
25
- :deep(.select-input__inner) {
26
- min-width: max-content;
27
- }
28
- }
29
- </style>
1
+ <template>
2
+ <div class="configuration">
3
+ <div class="stack-view">
4
+ <common-pages-backups-modals-create-backup-configuration-strategy
5
+ v-model="model"
6
+ />
7
+ <!-- <common-pages-backups-modals-create-backup-configuration-backup-window-->
8
+ <!-- v-model="model"-->
9
+ <!-- />-->
10
+ <common-pages-backups-modals-create-backup-configuration-max-bandwidth
11
+ v-model="model"
12
+ />
13
+ </div>
14
+ </div>
15
+ </template>
16
+
17
+ <script lang="ts" setup>
18
+ import type { UI_I_CreateBackupForm } from '~/components/common/pages/backups/modals/lib/models/interfaces'
19
+
20
+ const model = defineModel<UI_I_CreateBackupForm>({ required: true })
21
+ </script>
22
+
23
+ <style lang="scss" scoped>
24
+ .stack-view {
25
+ :deep(.select-input__inner) {
26
+ min-width: max-content;
27
+ }
28
+ }
29
+ </style>
@@ -1,26 +1,26 @@
1
- <template>
2
- <atoms-stack-block :has-children="false">
3
- <template #stackBlockKey>
4
- <span>{{ localization.common.backupWindow }}</span>
5
- </template>
6
- <template #stackBlockContent>
7
- <input
8
- v-model="model.start_window_min"
9
- data-id="hours-input"
10
- type="number"
11
- class="hrs"
12
- />
13
- </template>
14
- </atoms-stack-block>
15
- </template>
16
-
17
- <script lang="ts" setup>
18
- import type { UI_I_Localization } from '~/lib/models/interfaces'
19
- import type { UI_I_CreateBackupForm } from '~/components/common/pages/backups/modals/lib/models/interfaces'
20
-
21
- const model = defineModel<UI_I_CreateBackupForm>({ required: true })
22
-
23
- const localization = computed<UI_I_Localization>(() => useLocal())
24
- </script>
25
-
26
- <style lang="scss" scoped></style>
1
+ <template>
2
+ <atoms-stack-block :has-children="false">
3
+ <template #stackBlockKey>
4
+ <span>{{ localization.common.backupWindow }}</span>
5
+ </template>
6
+ <template #stackBlockContent>
7
+ <input
8
+ v-model="model.start_window_min"
9
+ data-id="hours-input"
10
+ type="number"
11
+ class="hrs"
12
+ />
13
+ </template>
14
+ </atoms-stack-block>
15
+ </template>
16
+
17
+ <script lang="ts" setup>
18
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
19
+ import type { UI_I_CreateBackupForm } from '~/components/common/pages/backups/modals/lib/models/interfaces'
20
+
21
+ const model = defineModel<UI_I_CreateBackupForm>({ required: true })
22
+
23
+ const localization = computed<UI_I_Localization>(() => useLocal())
24
+ </script>
25
+
26
+ <style lang="scss" scoped></style>
@@ -1,66 +1,66 @@
1
- <template>
2
- <atoms-stack-block :has-children="false">
3
- <template #stackBlockKey>
4
- <span>{{ localization.common.maxBandwidth }}</span>
5
- </template>
6
- <template #stackBlockContent>
7
- <div class="flex-align-center">
8
- <input
9
- v-model="maxBindwidthLocal"
10
- data-id="mbps-input"
11
- type="number"
12
- class="mbps"
13
- />
14
-
15
- <common-select-input
16
- v-model="selectedType"
17
- :data="maxBandwidthOptionsLocal"
18
- test-id="backup-max-bandwidth-type"
19
- class="ml-1"
20
- />
21
- </div>
22
- </template>
23
- </atoms-stack-block>
24
- </template>
25
-
26
- <script lang="ts" setup>
27
- import type { UI_I_Localization } from '~/lib/models/interfaces'
28
- import type { UI_I_CreateBackupForm } from '~/components/common/pages/backups/modals/lib/models/interfaces'
29
- import type { UI_T_BandwidthOption } from '~/components/common/pages/backups/modals/createBackup/configuration/maxBandwidth/lib/models/types'
30
- import type { UI_I_SelectInputItem } from '~/components/common/select/input/lib/models/interfaces'
31
- import { maxBandwidthOptions } from '~/components/common/pages/backups/modals/createBackup/configuration/maxBandwidth/lib/config/options'
32
-
33
- const model = defineModel<UI_I_CreateBackupForm>({ required: true })
34
-
35
- const localization = computed<UI_I_Localization>(() => useLocal())
36
- const { $binary }: any = useNuxtApp()
37
-
38
- const maxBandwidthOptionsLocal =
39
- ref<UI_I_SelectInputItem[]>(maxBandwidthOptions)
40
-
41
- const maxBindwidthLocal = computed<number>({
42
- get() {
43
- return selectedType.value === 1
44
- ? $binary.bToGb(model.value.bandwidth_limit)
45
- : $binary.bToMb(model.value.bandwidth_limit)
46
- },
47
- set(newValue: number) {
48
- model.value.bandwidth_limit =
49
- selectedType.value === 1
50
- ? $binary.gbToB(newValue)
51
- : $binary.mbToB(newValue)
52
- },
53
- })
54
-
55
- const selectedType = ref<UI_T_BandwidthOption>(0)
56
- watch(selectedType, (newValue) => {
57
- if (newValue === 1) model.value.bandwidth_limit *= 1_024
58
- else model.value.bandwidth_limit /= 1_024
59
- })
60
- </script>
61
-
62
- <style lang="scss" scoped>
63
- #backup-transaction-logs {
64
- margin: 4px 4px 0 0;
65
- }
66
- </style>
1
+ <template>
2
+ <atoms-stack-block :has-children="false">
3
+ <template #stackBlockKey>
4
+ <span>{{ localization.common.maxBandwidth }}</span>
5
+ </template>
6
+ <template #stackBlockContent>
7
+ <div class="flex-align-center">
8
+ <input
9
+ v-model="maxBindwidthLocal"
10
+ data-id="mbps-input"
11
+ type="number"
12
+ class="mbps"
13
+ />
14
+
15
+ <common-select-input
16
+ v-model="selectedType"
17
+ :data="maxBandwidthOptionsLocal"
18
+ test-id="backup-max-bandwidth-type"
19
+ class="ml-1"
20
+ />
21
+ </div>
22
+ </template>
23
+ </atoms-stack-block>
24
+ </template>
25
+
26
+ <script lang="ts" setup>
27
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
28
+ import type { UI_I_CreateBackupForm } from '~/components/common/pages/backups/modals/lib/models/interfaces'
29
+ import type { UI_T_BandwidthOption } from '~/components/common/pages/backups/modals/createBackup/configuration/maxBandwidth/lib/models/types'
30
+ import type { UI_I_SelectInputItem } from '~/components/common/select/input/lib/models/interfaces'
31
+ import { maxBandwidthOptions } from '~/components/common/pages/backups/modals/createBackup/configuration/maxBandwidth/lib/config/options'
32
+
33
+ const model = defineModel<UI_I_CreateBackupForm>({ required: true })
34
+
35
+ const localization = computed<UI_I_Localization>(() => useLocal())
36
+ const { $binary }: any = useNuxtApp()
37
+
38
+ const maxBandwidthOptionsLocal =
39
+ ref<UI_I_SelectInputItem[]>(maxBandwidthOptions)
40
+
41
+ const maxBindwidthLocal = computed<number>({
42
+ get() {
43
+ return selectedType.value === 1
44
+ ? $binary.bToGb(model.value.bandwidth_limit)
45
+ : $binary.bToMb(model.value.bandwidth_limit)
46
+ },
47
+ set(newValue: number) {
48
+ model.value.bandwidth_limit =
49
+ selectedType.value === 1
50
+ ? $binary.gbToB(newValue)
51
+ : $binary.mbToB(newValue)
52
+ },
53
+ })
54
+
55
+ const selectedType = ref<UI_T_BandwidthOption>(0)
56
+ watch(selectedType, (newValue) => {
57
+ if (newValue === 1) model.value.bandwidth_limit *= 1_024
58
+ else model.value.bandwidth_limit /= 1_024
59
+ })
60
+ </script>
61
+
62
+ <style lang="scss" scoped>
63
+ #backup-transaction-logs {
64
+ margin: 4px 4px 0 0;
65
+ }
66
+ </style>
@@ -1,6 +1,6 @@
1
- import type {UI_I_SelectInputItem} from "~/components/common/select/input/lib/models/interfaces";
2
-
3
- export const maxBandwidthOptions: UI_I_SelectInputItem[] = [
4
- { label: 'Mbps', value: 0 },
5
- { label: 'Gbps', value: 1 },
6
- ]
1
+ import type {UI_I_SelectInputItem} from "~/components/common/select/input/lib/models/interfaces";
2
+
3
+ export const maxBandwidthOptions: UI_I_SelectInputItem[] = [
4
+ { label: 'Mbps', value: 0 },
5
+ { label: 'Gbps', value: 1 },
6
+ ]
@@ -1,35 +1,35 @@
1
- <template>
2
- <atoms-stack-block :has-children="false">
3
- <template #stackBlockKey>
4
- <span>{{ localization.common.strategy }}</span>
5
- </template>
6
- <template #stackBlockContent>
7
- <common-select-input
8
- v-model="model.strategy"
9
- :data="strategyOptions"
10
- test-id="backup-strategy"
11
- />
12
- </template>
13
- </atoms-stack-block>
14
- </template>
15
-
16
- <script lang="ts" setup>
17
- import type { UI_I_Localization } from '~/lib/models/interfaces'
18
- import type { UI_I_CreateBackupForm } from '~/components/common/pages/backups/modals/lib/models/interfaces'
19
- import type { UI_I_SelectInputItem } from '~/components/common/select/input/lib/models/interfaces'
20
- import { strategyOptionsFunc } from '~/components/common/pages/backups/modals/createBackup/lib/config/strategyOptions'
21
-
22
- const model = defineModel<UI_I_CreateBackupForm>({ required: true })
23
-
24
- const localization = computed<UI_I_Localization>(() => useLocal())
25
-
26
- const strategyOptions = ref<UI_I_SelectInputItem[]>(
27
- strategyOptionsFunc(localization.value)
28
- )
29
- </script>
30
-
31
- <style lang="scss" scoped>
32
- #backup-transaction-logs {
33
- margin: 4px 4px 0 0;
34
- }
35
- </style>
1
+ <template>
2
+ <atoms-stack-block :has-children="false">
3
+ <template #stackBlockKey>
4
+ <span>{{ localization.common.strategy }}</span>
5
+ </template>
6
+ <template #stackBlockContent>
7
+ <common-select-input
8
+ v-model="model.strategy"
9
+ :data="strategyOptions"
10
+ test-id="backup-strategy"
11
+ />
12
+ </template>
13
+ </atoms-stack-block>
14
+ </template>
15
+
16
+ <script lang="ts" setup>
17
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
18
+ import type { UI_I_CreateBackupForm } from '~/components/common/pages/backups/modals/lib/models/interfaces'
19
+ import type { UI_I_SelectInputItem } from '~/components/common/select/input/lib/models/interfaces'
20
+ import { strategyOptionsFunc } from '~/components/common/pages/backups/modals/createBackup/lib/config/strategyOptions'
21
+
22
+ const model = defineModel<UI_I_CreateBackupForm>({ required: true })
23
+
24
+ const localization = computed<UI_I_Localization>(() => useLocal())
25
+
26
+ const strategyOptions = ref<UI_I_SelectInputItem[]>(
27
+ strategyOptionsFunc(localization.value)
28
+ )
29
+ </script>
30
+
31
+ <style lang="scss" scoped>
32
+ #backup-transaction-logs {
33
+ margin: 4px 4px 0 0;
34
+ }
35
+ </style>
@@ -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
+ 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>