bfg-common 1.5.381 → 1.5.383

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 (144) 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 +17 -4
  7. package/assets/localization/local_en.json +17 -4
  8. package/assets/localization/local_hy.json +17 -4
  9. package/assets/localization/local_kk.json +17 -4
  10. package/assets/localization/local_ru.json +17 -4
  11. package/assets/localization/local_zh.json +17 -4
  12. package/components/atoms/TheIcon3.vue +50 -50
  13. package/components/atoms/collapse/CollapseNav.vue +170 -170
  14. package/components/atoms/collapse/CollapseNavItem.vue +226 -226
  15. package/components/atoms/nav/NavBar.vue +147 -147
  16. package/components/atoms/perPage/PerPage.vue +58 -58
  17. package/components/atoms/table/dataGrid/DataGrid.vue +1717 -1717
  18. package/components/atoms/table/dataGrid/lib/config/settingsTable.ts +94 -94
  19. package/components/atoms/table/dataGrid/lib/utils/export.ts +16 -16
  20. package/components/atoms/tabs/VerticalTabs.vue +105 -105
  21. package/components/common/backup/storage/actions/add/lib/config/steps.ts +168 -168
  22. package/components/common/backup/storage/actions/add/steps/hostAccessibility/HostAccessibility.vue +52 -52
  23. package/components/common/backup/storage/actions/add/steps/readyComplete/ReadyComplete.vue +45 -45
  24. package/components/common/backup/storage/actions/delete/Delete.vue +65 -65
  25. package/components/common/browse/blocks/Container.vue +234 -234
  26. package/components/common/browse/blocks/contents/filesNew/Skeleton.vue +18 -18
  27. package/components/common/context/lib/models/interfaces.ts +33 -33
  28. package/components/common/diagramMain/modals/lib/config/networkModal.ts +398 -398
  29. package/components/common/diagramMain/network/Network.vue +141 -141
  30. package/components/common/layout/theHeader/helpMenu/About.vue +82 -82
  31. package/components/common/layout/theHeader/userMenu/modals/preferences/view/ViewOld.vue +112 -112
  32. package/components/common/monitor/overview/OverviewOld.vue +139 -139
  33. package/components/common/pages/home/headline/Headline.vue +45 -45
  34. package/components/common/pages/home/headline/HeadlineOld.vue +42 -42
  35. package/components/common/pages/home/lib/models/interfaces.ts +48 -48
  36. package/components/common/pages/home/widgets/Widgets.vue +49 -49
  37. package/components/common/pages/home/widgets/WidgetsNew.vue +88 -88
  38. package/components/common/pages/home/widgets/WidgetsOld.vue +36 -36
  39. package/components/common/pages/home/widgets/hosts/Hosts.vue +27 -27
  40. package/components/common/pages/home/widgets/hosts/lib/config/items.ts +23 -23
  41. package/components/common/pages/home/widgets/vms/Vms.vue +26 -26
  42. package/components/common/pages/home/widgets/vms/VmsOld.vue +35 -35
  43. package/components/common/pages/home/widgets/vms/lib/config/items.ts +19 -19
  44. package/components/common/pages/packages/Packages.vue +208 -208
  45. package/components/common/pages/shortcuts/block/BlockOld.vue +68 -68
  46. package/components/common/readyToComplete/New.vue +129 -129
  47. package/components/common/readyToComplete/ReadyToComplete.vue +17 -17
  48. package/components/common/recursionTree/RecursionTree.vue +223 -223
  49. package/components/common/select/button/ButtonDropdown.vue +112 -112
  50. package/components/common/spiceConsole/Drawer.vue +381 -381
  51. package/components/common/spiceConsole/SpiceConsole.vue +127 -127
  52. package/components/common/spiceConsole/lib/models/interfaces.ts +5 -5
  53. package/components/common/tools/Actions.vue +207 -207
  54. package/components/common/vm/actions/add/Old.vue +388 -388
  55. package/components/common/vm/actions/add/folderTreeView/FolderTreeView.vue +72 -72
  56. package/components/common/vm/actions/add/folderTreeView/New.vue +40 -40
  57. package/components/common/vm/actions/add/folderTreeView/Old.vue +50 -50
  58. package/components/common/vm/actions/clone/Clone.vue +823 -823
  59. package/components/common/vm/actions/clone/lib/config/steps.ts +291 -291
  60. package/components/common/vm/actions/clone/toTemplate/lib/config/steps.ts +116 -116
  61. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardwareOld.vue +321 -321
  62. package/components/common/vm/actions/common/customizeHardware/virtualHardware/browseView/BrowseView.vue +227 -227
  63. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/Bus.vue +100 -100
  64. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDrive.vue +232 -232
  65. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDriveOld.vue +168 -168
  66. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Media.vue +25 -25
  67. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaNew.vue +78 -78
  68. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaOld.vue +50 -50
  69. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/Shares.vue +140 -140
  70. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/lib/config/options.ts +28 -28
  71. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/tooltip/TooltipNew.vue +154 -154
  72. package/components/common/vm/actions/common/customizeHardware/virtualHardware/lib/config/dropdownItems.ts +155 -155
  73. package/components/common/vm/actions/common/customizeHardware/virtualHardware/limit/Limit.vue +220 -220
  74. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/Memory.vue +307 -307
  75. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +385 -385
  76. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/Location.vue +154 -154
  77. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/LocationOld.vue +85 -85
  78. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetwork.vue +288 -288
  79. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/table/lib/config/config.ts +94 -94
  80. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddress.vue +119 -119
  81. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/NewPciDevice.vue +205 -205
  82. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoNew.vue +66 -66
  83. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoOld.vue +62 -62
  84. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIo.vue +31 -31
  85. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIoOld.vue +76 -76
  86. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/Note.vue +15 -15
  87. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteNew.vue +42 -42
  88. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteOld.vue +30 -30
  89. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGridOld.vue +84 -84
  90. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/Other.vue +16 -16
  91. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCard.vue +154 -154
  92. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/numberDisplays/NumberDisplays.vue +53 -53
  93. package/components/common/vm/actions/common/customizeHardware/vmoptions/Vmoptions.vue +155 -155
  94. package/components/common/vm/actions/common/customizeHardware/vmoptions/VmoptionsNew.vue +130 -130
  95. package/components/common/vm/actions/common/customizeHardware/vmoptions/VmoptionsOld.vue +113 -113
  96. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/delay/Delay.vue +32 -32
  97. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/Firmware.vue +60 -60
  98. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +174 -174
  99. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptions.vue +95 -95
  100. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptionsOld.vue +155 -155
  101. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/Keymap.vue +32 -32
  102. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/KeymapOld.vue +44 -44
  103. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/Password.vue +103 -103
  104. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirection.vue +28 -28
  105. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionOld.vue +44 -44
  106. package/components/common/vm/actions/common/select/compatibility/Old.vue +107 -107
  107. package/components/common/vm/actions/common/select/computeResource/ComputeResource.vue +143 -143
  108. package/components/common/vm/actions/common/select/computeResource/New.vue +184 -184
  109. package/components/common/vm/actions/common/select/computeResource/treeView/TreeView.vue +131 -131
  110. package/components/common/vm/actions/common/select/createType/CreateType.vue +38 -38
  111. package/components/common/vm/actions/common/select/createType/lib/config/items.ts +48 -48
  112. package/components/common/vm/actions/common/select/createType/lib/models/interfaces.ts +5 -5
  113. package/components/common/vm/actions/common/select/name/Name.vue +174 -174
  114. package/components/common/vm/actions/common/select/os/Old.vue +152 -152
  115. package/components/common/vm/actions/common/select/os/Os.vue +139 -139
  116. package/components/common/vm/actions/common/select/storage/Storage.vue +155 -155
  117. package/components/common/vm/actions/common/select/storage/new/New.vue +300 -300
  118. package/components/common/vm/actions/common/select/storage/new/lib/models/interfaces.ts +5 -5
  119. package/components/common/vm/actions/common/select/storage/new/lib/utils/utils.ts +21 -21
  120. package/components/common/vm/actions/editSettings/EditSettings.vue +242 -242
  121. package/components/common/vm/actions/editSettings/new/Skeleton.vue +88 -88
  122. package/components/common/vmt/actions/add/lib/models/interfaces.ts +23 -23
  123. package/components/common/wizards/network/add/steps/SelectConnectionType.vue +104 -104
  124. package/components/common/wizards/network/add/steps/SelectedTargetDevice.vue +467 -467
  125. package/components/common/wizards/vm/migrate/Migrate.vue +349 -349
  126. package/components/common/wizards/vm/migrate/lib/config/constructDataReady.ts +220 -220
  127. package/components/common/wizards/vm/migrate/lib/config/steps.ts +157 -157
  128. package/components/common/wizards/vm/migrate/lib/validations.ts +68 -68
  129. package/components/common/wizards/vm/migrate/select/network/Network.vue +103 -103
  130. package/components/common/wizards/vm/migrate/select/network/table/network/lib/config/advancedTable.ts +91 -91
  131. package/components/common/wizards/vm/migrate/select/type/lib/config/typeOptions.ts +45 -45
  132. package/composables/productNameLocal.ts +30 -30
  133. package/composables/useAppVersion.ts +21 -21
  134. package/lib/models/interfaces.ts +1 -0
  135. package/lib/models/types.ts +1 -0
  136. package/package.json +1 -1
  137. package/plugins/date.ts +233 -233
  138. package/plugins/panelStates.ts +70 -70
  139. package/plugins/text.ts +59 -59
  140. package/public/spice-console/lib/images/bitmap.js +203 -203
  141. package/public/spice-console/network/spicechannel.js +390 -390
  142. package/store/main/mutations.ts +7 -7
  143. package/store/main/state.ts +7 -7
  144. package/store/tasks/mappers/recentTasks.ts +64 -64
@@ -1,91 +1,91 @@
1
- import type {
2
- UI_I_HeadItem,
3
- UI_I_BodyItem,
4
- } from '~/components/atoms/table/dataGrid/lib/models/interfaces'
5
- import type { UI_I_Localization } from '~/lib/models/interfaces'
6
- import { constructHeadItem } from '~/components/atoms/table/dataGrid/lib/utils/constructDataTable'
7
- import type { UI_I_MigrateSelectNetworkAdvancedItem } from '~/components/common/wizards/vm/migrate/select/network/table/network/lib/models/interfaces'
8
- import { networkAdvancedTableItemKeys } from '~/components/common/wizards/vm/migrate/select/network/table/network/lib/config/tableKeys'
9
-
10
- const getItems = (
11
- localization: UI_I_Localization
12
- ): [string, boolean, string, string][] => {
13
- return [
14
- [
15
- localization.common.sourceNetwork,
16
- true,
17
- '25%',
18
- networkAdvancedTableItemKeys[0],
19
- ],
20
- [
21
- localization.common.macAddress,
22
- true,
23
- '25%',
24
- networkAdvancedTableItemKeys[1],
25
- ],
26
- [
27
- localization.common.networkAdapter,
28
- true,
29
- '25%',
30
- networkAdvancedTableItemKeys[2],
31
- ],
32
- [
33
- localization.common.destinationNetwork,
34
- true,
35
- '25%',
36
- networkAdvancedTableItemKeys[3],
37
- ],
38
- ]
39
- }
40
-
41
- export const headItems = (localization: UI_I_Localization): UI_I_HeadItem[] => {
42
- const result: UI_I_HeadItem[] = []
43
- getItems(localization).forEach((item, i) => {
44
- const col = i === 3 ? 'select' : `col${i}`
45
- result.push(constructHeadItem(col, item[0], item[3], false, item[2]))
46
- })
47
- return result
48
- }
49
-
50
- export const bodyItems = (
51
- data: UI_I_MigrateSelectNetworkAdvancedItem[]
52
- ): UI_I_BodyItem[][] => {
53
- const bodyItems: UI_I_BodyItem[][] = []
54
-
55
- data?.forEach(
56
- (network: UI_I_MigrateSelectNetworkAdvancedItem, key: number) => {
57
- const data = {
58
- id: `${network.source_network}-select`,
59
- sourceNetwork: network.source_network,
60
- disabled: false,
61
- value: network.destination_network[0]?.text || '',
62
- option: network.destination_network,
63
- }
64
-
65
- bodyItems.push([
66
- {
67
- key: 'col0',
68
- text: network[networkAdvancedTableItemKeys[0]],
69
- id: key,
70
- },
71
- {
72
- key: 'col1',
73
- text: network[networkAdvancedTableItemKeys[1]],
74
- id: key,
75
- },
76
- {
77
- key: 'col2',
78
- text: network[networkAdvancedTableItemKeys[2]],
79
- id: key,
80
- },
81
- {
82
- key: 'select',
83
- text: network[networkAdvancedTableItemKeys[3]],
84
- data,
85
- id: key,
86
- },
87
- ])
88
- }
89
- )
90
- return bodyItems
91
- }
1
+ import type {
2
+ UI_I_HeadItem,
3
+ UI_I_BodyItem,
4
+ } from '~/components/atoms/table/dataGrid/lib/models/interfaces'
5
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
6
+ import { constructHeadItem } from '~/components/atoms/table/dataGrid/lib/utils/constructDataTable'
7
+ import type { UI_I_MigrateSelectNetworkAdvancedItem } from '~/components/common/wizards/vm/migrate/select/network/table/network/lib/models/interfaces'
8
+ import { networkAdvancedTableItemKeys } from '~/components/common/wizards/vm/migrate/select/network/table/network/lib/config/tableKeys'
9
+
10
+ const getItems = (
11
+ localization: UI_I_Localization
12
+ ): [string, boolean, string, string][] => {
13
+ return [
14
+ [
15
+ localization.common.sourceNetwork,
16
+ true,
17
+ '25%',
18
+ networkAdvancedTableItemKeys[0],
19
+ ],
20
+ [
21
+ localization.common.macAddress,
22
+ true,
23
+ '25%',
24
+ networkAdvancedTableItemKeys[1],
25
+ ],
26
+ [
27
+ localization.common.networkAdapter,
28
+ true,
29
+ '25%',
30
+ networkAdvancedTableItemKeys[2],
31
+ ],
32
+ [
33
+ localization.common.destinationNetwork,
34
+ true,
35
+ '25%',
36
+ networkAdvancedTableItemKeys[3],
37
+ ],
38
+ ]
39
+ }
40
+
41
+ export const headItems = (localization: UI_I_Localization): UI_I_HeadItem[] => {
42
+ const result: UI_I_HeadItem[] = []
43
+ getItems(localization).forEach((item, i) => {
44
+ const col = i === 3 ? 'select' : `col${i}`
45
+ result.push(constructHeadItem(col, item[0], item[3], false, item[2]))
46
+ })
47
+ return result
48
+ }
49
+
50
+ export const bodyItems = (
51
+ data: UI_I_MigrateSelectNetworkAdvancedItem[]
52
+ ): UI_I_BodyItem[][] => {
53
+ const bodyItems: UI_I_BodyItem[][] = []
54
+
55
+ data?.forEach(
56
+ (network: UI_I_MigrateSelectNetworkAdvancedItem, key: number) => {
57
+ const data = {
58
+ id: `${network.source_network}-select`,
59
+ sourceNetwork: network.source_network,
60
+ disabled: false,
61
+ value: network.destination_network[0]?.text || '',
62
+ option: network.destination_network,
63
+ }
64
+
65
+ bodyItems.push([
66
+ {
67
+ key: 'col0',
68
+ text: network[networkAdvancedTableItemKeys[0]],
69
+ id: key,
70
+ },
71
+ {
72
+ key: 'col1',
73
+ text: network[networkAdvancedTableItemKeys[1]],
74
+ id: key,
75
+ },
76
+ {
77
+ key: 'col2',
78
+ text: network[networkAdvancedTableItemKeys[2]],
79
+ id: key,
80
+ },
81
+ {
82
+ key: 'select',
83
+ text: network[networkAdvancedTableItemKeys[3]],
84
+ data,
85
+ id: key,
86
+ },
87
+ ])
88
+ }
89
+ )
90
+ return bodyItems
91
+ }
@@ -1,45 +1,45 @@
1
- import type { UI_I_Localization } from '~/lib/models/interfaces'
2
- import type { UI_T_Project } from '~/lib/models/types'
3
- import type { UI_I_VmMigrateTypeOption } from '~/components/common/wizards/vm/migrate/select/type/lib/models/interfaces'
4
-
5
- export const vmMigrateTypesFunc = (
6
- localization: UI_I_Localization,
7
- project: UI_T_Project
8
- ): UI_I_VmMigrateTypeOption[] => {
9
- const options: UI_I_VmMigrateTypeOption[] = [
10
- {
11
- label: localization.common.changeComputeResourceOnly,
12
- value: 'resource',
13
- disabled: false,
14
- description: localization.common.changeComputeResourceOnlyDesc,
15
- permissions: ['sphere'],
16
- permission: 'VirtualMachines.MigrateHost',
17
- },
18
- {
19
- label: localization.common.changeStorageOnly,
20
- value: 'storage',
21
- disabled: false,
22
- description: localization.common.changeStorageOnlyDesc,
23
- permissions: ['sphere', 'procurator'],
24
- permission: 'VirtualMachines.MigrateDatastore',
25
- },
26
- // TODO 700
27
- // {
28
- // label: localization.common.changeBothComputeResourceStorage,
29
- // value: 'resource-storage',
30
- // disabled: true,
31
- // description: localization.common.changeBothComputeResourceStorageDesc,
32
- // permissions: ['sphere'],
33
- // },
34
- // TODO 700
35
- // {
36
- // label: localization.common.crossVCenterServerExport,
37
- // value: 'server',
38
- // disabled: true,
39
- // description: localization.common.crossVCenterServerExportDesc,
40
- // permissions: ['sphere'],
41
- // },
42
- ]
43
-
44
- return options.filter((option) => option.permissions.includes(project))
45
- }
1
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
2
+ import type { UI_T_Project } from '~/lib/models/types'
3
+ import type { UI_I_VmMigrateTypeOption } from '~/components/common/wizards/vm/migrate/select/type/lib/models/interfaces'
4
+
5
+ export const vmMigrateTypesFunc = (
6
+ localization: UI_I_Localization,
7
+ project: UI_T_Project
8
+ ): UI_I_VmMigrateTypeOption[] => {
9
+ const options: UI_I_VmMigrateTypeOption[] = [
10
+ {
11
+ label: localization.common.changeComputeResourceOnly,
12
+ value: 'resource',
13
+ disabled: false,
14
+ description: localization.common.changeComputeResourceOnlyDesc,
15
+ permissions: ['sphere'],
16
+ permission: 'VirtualMachines.MigrateHost',
17
+ },
18
+ {
19
+ label: localization.common.changeStorageOnly,
20
+ value: 'storage',
21
+ disabled: false,
22
+ description: localization.common.changeStorageOnlyDesc,
23
+ permissions: ['sphere', 'procurator'],
24
+ permission: 'VirtualMachines.MigrateDatastore',
25
+ },
26
+ // TODO 700
27
+ // {
28
+ // label: localization.common.changeBothComputeResourceStorage,
29
+ // value: 'resource-storage',
30
+ // disabled: true,
31
+ // description: localization.common.changeBothComputeResourceStorageDesc,
32
+ // permissions: ['sphere'],
33
+ // },
34
+ // TODO 700
35
+ // {
36
+ // label: localization.common.crossVCenterServerExport,
37
+ // value: 'server',
38
+ // disabled: true,
39
+ // description: localization.common.crossVCenterServerExportDesc,
40
+ // permissions: ['sphere'],
41
+ // },
42
+ ]
43
+
44
+ return options.filter((option) => option.permissions.includes(project))
45
+ }
@@ -1,30 +1,30 @@
1
- import type { UI_I_Localization } from '~/lib/models/interfaces'
2
- import type { UI_T_LanguageKey } from '~/lib/models/types'
3
-
4
- export function productNameLocal(
5
- localization: UI_I_Localization
6
- ): UI_I_Localization {
7
- const config = useRuntimeConfig()
8
-
9
- const productName =
10
- config.public.LOCALIZATION_CODE === 'ru'
11
- ? config.public.PRODUCT_NAME_RU
12
- : config.public.PRODUCT_NAME_EN
13
-
14
- return replaceProductNameRecursion(localization, productName)
15
- }
16
-
17
- const replaceProductNameRecursion = (
18
- localization: UI_I_Localization,
19
- productName: any
20
- ): UI_I_Localization => {
21
- for (const key of Object.keys(localization)) {
22
- let item = localization[key as UI_T_LanguageKey]
23
-
24
- for (const key2 of Object.keys(item)) {
25
- item[key2] = item[key2].replaceAll('{productName}', productName)
26
- }
27
- }
28
-
29
- return localization
30
- }
1
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
2
+ import type { UI_T_LanguageKey } from '~/lib/models/types'
3
+
4
+ export function productNameLocal(
5
+ localization: UI_I_Localization
6
+ ): UI_I_Localization {
7
+ const config = useRuntimeConfig()
8
+
9
+ const productName =
10
+ config.public.LOCALIZATION_CODE === 'ru'
11
+ ? config.public.PRODUCT_NAME_RU
12
+ : config.public.PRODUCT_NAME_EN
13
+
14
+ return replaceProductNameRecursion(localization, productName)
15
+ }
16
+
17
+ const replaceProductNameRecursion = (
18
+ localization: UI_I_Localization,
19
+ productName: any
20
+ ): UI_I_Localization => {
21
+ for (const key of Object.keys(localization)) {
22
+ let item = localization[key as UI_T_LanguageKey]
23
+
24
+ for (const key2 of Object.keys(item)) {
25
+ item[key2] = item[key2].replaceAll('{productName}', productName)
26
+ }
27
+ }
28
+
29
+ return localization
30
+ }
@@ -1,21 +1,21 @@
1
- import type { UI_I_UseAppVersionReturnType } from '~/lib/models/composables/useAppVersion/interfaces'
2
-
3
- export function useAppVersion(): UI_I_UseAppVersionReturnType {
4
- const config = useRuntimeConfig()
5
- const version = config.public.APP_VERSION as string
6
-
7
- // const regexHasDot = /\./
8
- // const regexHasDotAndB = /\.\d*b$/
9
- // const regexHasDotAndD = /\..*d/
10
-
11
- // const isBeta = regexHasDotAndB.test(version)
12
- // const isDev =
13
- // regexHasDotAndD.test(version) ||
14
- // (!regexHasDot.test(version) && version.length < 8)
15
-
16
- return {
17
- version,
18
- // isBeta,
19
- // isDev,
20
- }
21
- }
1
+ import type { UI_I_UseAppVersionReturnType } from '~/lib/models/composables/useAppVersion/interfaces'
2
+
3
+ export function useAppVersion(): UI_I_UseAppVersionReturnType {
4
+ const config = useRuntimeConfig()
5
+ const version = config.public.APP_VERSION as string
6
+
7
+ // const regexHasDot = /\./
8
+ // const regexHasDotAndB = /\.\d*b$/
9
+ // const regexHasDotAndD = /\..*d/
10
+
11
+ // const isBeta = regexHasDotAndB.test(version)
12
+ // const isDev =
13
+ // regexHasDotAndD.test(version) ||
14
+ // (!regexHasDot.test(version) && version.length < 8)
15
+
16
+ return {
17
+ version,
18
+ // isBeta,
19
+ // isDev,
20
+ }
21
+ }
@@ -25,6 +25,7 @@ export interface UI_I_Localization {
25
25
  mainNavigation: UI_I_ArbitraryObject<string>
26
26
  administration: UI_I_ArbitraryObject<string>
27
27
  inventoryConfigure: UI_I_ArbitraryObject<string>
28
+ vmOverrides: UI_I_ArbitraryObject<string>
28
29
  datastoreWizard: UI_I_ArbitraryObject<string>
29
30
  inventorySummary: UI_I_ArbitraryObject<string>
30
31
  contextMenu: UI_I_ArbitraryObject<string>
@@ -37,6 +37,7 @@ export type UI_T_LanguageKey =
37
37
  | 'mainNavigation'
38
38
  | 'administration'
39
39
  | 'inventoryConfigure'
40
+ | 'vmOverrides'
40
41
  | 'datastoreWizard'
41
42
  | 'inventorySummary'
42
43
  | 'contextMenu'
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "bfg-common",
3
3
  "private": false,
4
- "version": "1.5.381",
4
+ "version": "1.5.383",
5
5
  "scripts": {
6
6
  "build": "nuxt build",
7
7
  "dev": "nuxt dev --port=3002",