bfg-common 1.4.882 → 1.4.884

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 (191) hide show
  1. package/assets/localization/local_be.json +1 -1
  2. package/assets/localization/local_en.json +7 -7
  3. package/assets/localization/local_hy.json +1 -1
  4. package/assets/localization/local_kk.json +1 -1
  5. package/assets/localization/local_ru.json +1 -1
  6. package/assets/localization/local_zh.json +1 -1
  7. package/assets/scss/common/normalize.scss +361 -361
  8. package/components/atoms/TheIcon3.vue +50 -50
  9. package/components/atoms/autocomplete/Autocomplete.vue +301 -301
  10. package/components/atoms/collapse/CollapseNav.vue +165 -165
  11. package/components/atoms/dropdown/dropdown/Dropdown.vue +168 -168
  12. package/components/atoms/modal/bySteps/BySteps.vue +253 -253
  13. package/components/atoms/stack/StackBlock.vue +185 -185
  14. package/components/atoms/table/dataGrid/DataGrid.vue +1704 -1704
  15. package/components/atoms/table/dataGrid/DataGridColumnSwitch.vue +222 -222
  16. package/components/atoms/table/dataGrid/lib/config/settingsTable.ts +94 -94
  17. package/components/atoms/table/dataGrid/lib/utils/export.ts +16 -16
  18. package/components/atoms/tabs/VerticalTabs.vue +105 -105
  19. package/components/common/browse/BrowseNew.vue +237 -237
  20. package/components/common/browse/BrowseOld.vue +217 -217
  21. package/components/common/browse/blocks/contents/Files.vue +37 -37
  22. package/components/common/browse/blocks/contents/FilesOld.vue +72 -72
  23. package/components/common/browse/blocks/contents/filesNew/FilesNew.vue +96 -96
  24. package/components/common/browse/blocks/contents/filesNew/Skeleton.vue +18 -18
  25. package/components/common/chartOptionsModal/counters/timespan/form/Form.vue +102 -92
  26. package/components/common/chartOptionsModal/counters/timespan/form/FormNew.vue +39 -18
  27. package/components/common/context/Context.vue +111 -111
  28. package/components/common/context/lib/models/interfaces.ts +30 -30
  29. package/components/common/context/recursion/Recursion.vue +87 -87
  30. package/components/common/context/recursion/RecursionOld.vue +227 -227
  31. package/components/common/details/DetailsItem.vue +109 -109
  32. package/components/common/graph/Graph.vue +104 -104
  33. package/components/common/graph/GraphNew.vue +4 -2
  34. package/components/common/layout/theHeader/helpMenu/About.vue +82 -82
  35. package/components/common/layout/theHeader/helpMenu/aboutNew/AboutNew.vue +103 -103
  36. package/components/common/layout/theHeader/userMenu/modals/preferences/view/ViewOld.vue +112 -112
  37. package/components/common/mainNavigationPanel/MainNavigationPanelNew.vue +335 -335
  38. package/components/common/mainNavigationPanel/MainNavigationPanelOld.vue +310 -310
  39. package/components/common/modals/unsavedChanges/UnsavedChanges.vue +56 -56
  40. package/components/common/monitor/advanced/Advanced.vue +2 -0
  41. package/components/common/monitor/advanced/AdvancedNew.vue +28 -16
  42. package/components/common/monitor/advanced/graphView/GraphView.vue +0 -1
  43. package/components/common/monitor/advanced/graphView/GraphViewNew.vue +5 -4
  44. package/components/common/monitor/advanced/table/tableNew/TableNew.vue +8 -1
  45. package/components/common/monitor/advanced/table/tableNew/lib/config/options.ts +2 -2
  46. package/components/common/monitor/advanced/tools/Tools.vue +123 -121
  47. package/components/common/monitor/advanced/tools/ToolsNew.vue +9 -0
  48. package/components/common/monitor/advanced/tools/chartOptionsModal/ChartOptionsModal.vue +34 -0
  49. package/components/common/monitor/advanced/tools/chartOptionsModal/ChartOptionsModalNew.vue +17 -5
  50. package/components/common/monitor/advanced/tools/chartOptionsModal/NotificationNew.vue +2 -0
  51. package/components/common/monitor/advanced/tools/chartOptionsModal/actions/ActionsNew.vue +38 -12
  52. package/components/common/monitor/advanced/tools/chartOptionsModal/actions/lib/utils/optionsActions.ts +1 -1
  53. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/Counters.vue +76 -66
  54. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/CountersNew.vue +43 -2
  55. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/table/lib/config/utils.ts +1040 -1040
  56. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/table/tableNew/TableNew.vue +2 -0
  57. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/Timespan.vue +10 -0
  58. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/TimespanNew.vue +43 -14
  59. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/object/objectNew/ObjectNew.vue +6 -0
  60. package/components/common/monitor/advanced/tools/chartOptionsModal/metrics/Metrics.vue +1 -1
  61. package/components/common/monitor/advanced/tools/chartOptionsModal/metrics/MetricsNew.vue +143 -0
  62. package/components/common/monitor/overview/OverviewNew.vue +142 -142
  63. package/components/common/monitor/overview/OverviewOld.vue +139 -139
  64. package/components/common/monitor/overview/filters/Filters.vue +166 -166
  65. package/components/common/monitor/overview/filters/FiltersNew.vue +172 -172
  66. package/components/common/monitor/overview/filters/FiltersOld.vue +151 -151
  67. package/components/common/monitor/overview/filters/customIntervalModal/CustomIntervalModal.vue +175 -175
  68. package/components/common/monitor/overview/filters/customIntervalModal/CustomIntervalModalOld.vue +161 -161
  69. package/components/common/pages/home/StatusContent.vue +49 -49
  70. package/components/common/pages/home/headline/Headline.vue +45 -45
  71. package/components/common/pages/home/headline/HeadlineOld.vue +42 -42
  72. package/components/common/pages/home/lib/models/interfaces.ts +48 -48
  73. package/components/common/pages/home/widgets/Widgets.vue +49 -49
  74. package/components/common/pages/home/widgets/WidgetsNew.vue +86 -86
  75. package/components/common/pages/home/widgets/WidgetsOld.vue +34 -34
  76. package/components/common/pages/home/widgets/hosts/Hosts.vue +27 -27
  77. package/components/common/pages/home/widgets/hosts/lib/config/items.ts +23 -23
  78. package/components/common/pages/home/widgets/vms/Vms.vue +26 -26
  79. package/components/common/pages/home/widgets/vms/VmsOld.vue +35 -35
  80. package/components/common/pages/home/widgets/vms/lib/config/items.ts +19 -19
  81. package/components/common/pages/packages/Packages.vue +208 -208
  82. package/components/common/pages/shortcuts/block/BlockNew.vue +96 -96
  83. package/components/common/pages/shortcuts/block/BlockOld.vue +68 -68
  84. package/components/common/portlets/customAttributes/Portlet.vue +667 -667
  85. package/components/common/portlets/tag/Portlet.vue +433 -433
  86. package/components/common/recursionTree/RecursionTree.vue +223 -223
  87. package/components/common/select/button/ButtonDropdown.vue +108 -108
  88. package/components/common/spiceConsole/Drawer.vue +370 -370
  89. package/components/common/spiceConsole/lib/models/interfaces.ts +5 -5
  90. package/components/common/split/horizontal/HorizontalNew.vue +376 -376
  91. package/components/common/split/horizontal/HorizontalOld.vue +337 -337
  92. package/components/common/split/vertical/Vertical.vue +160 -160
  93. package/components/common/vm/actions/add/Add.vue +622 -622
  94. package/components/common/vm/actions/clone/Clone.vue +639 -639
  95. package/components/common/vm/actions/clone/lib/config/steps.ts +129 -129
  96. package/components/common/vm/actions/clone/toTemplate/ToTemplate.vue +634 -634
  97. package/components/common/vm/actions/clone/toTemplate/lib/config/steps.ts +116 -116
  98. package/components/common/vm/actions/common/customizeHardware/CustomizeHardware.vue +275 -275
  99. package/components/common/vm/actions/common/customizeHardware/CustomizeHardwareNew.vue +274 -274
  100. package/components/common/vm/actions/common/customizeHardware/CustomizeHardwareOld.vue +177 -177
  101. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardware.vue +698 -698
  102. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardwareNew.vue +410 -410
  103. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardwareOld.vue +319 -319
  104. package/components/common/vm/actions/common/customizeHardware/virtualHardware/browseView/BrowseView.vue +219 -219
  105. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/Bus.vue +99 -99
  106. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/BusNew.vue +117 -117
  107. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDrive.vue +232 -232
  108. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDriveNew.vue +164 -164
  109. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDriveOld.vue +168 -168
  110. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Media.vue +25 -25
  111. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaNew.vue +70 -70
  112. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaOld.vue +50 -50
  113. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Cpu.vue +338 -338
  114. package/components/common/vm/actions/common/customizeHardware/virtualHardware/limit/Limit.vue +220 -220
  115. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +368 -368
  116. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDiskNew.vue +232 -232
  117. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDiskOld.vue +250 -250
  118. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/mode/ModeOld.vue +56 -56
  119. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/sharing/SharingNew.vue +44 -44
  120. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetwork.vue +286 -286
  121. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetworkNew.vue +124 -124
  122. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/LocationOld.vue +134 -134
  123. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/New.vue +63 -63
  124. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/table/lib/config/config.ts +95 -95
  125. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddress.vue +119 -119
  126. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddressNew.vue +69 -69
  127. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddressOld.vue +83 -83
  128. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/NewPciDevice.vue +205 -205
  129. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoNew.vue +66 -66
  130. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoOld.vue +62 -62
  131. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIo.vue +31 -31
  132. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIoNew.vue +84 -84
  133. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIoOld.vue +76 -76
  134. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/Note.vue +15 -15
  135. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteNew.vue +42 -42
  136. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteOld.vue +30 -30
  137. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGrid.vue +41 -41
  138. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGridNew.vue +81 -81
  139. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGridOld.vue +84 -84
  140. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newUsbController/NewUsbControllerNew.vue +56 -56
  141. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/Other.vue +16 -16
  142. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/OtherNew.vue +30 -30
  143. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCardNew.vue +104 -104
  144. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCardOld.vue +112 -112
  145. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/totalVideoMemory/TotalVideoMemoryNew.vue +54 -54
  146. package/components/common/vm/actions/common/customizeHardware/vmoptions/Vmoptions.vue +145 -145
  147. package/components/common/vm/actions/common/customizeHardware/vmoptions/VmoptionsNew.vue +102 -102
  148. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/BootOptionsNew.vue +75 -75
  149. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/delay/Delay.vue +26 -26
  150. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/Firmware.vue +57 -57
  151. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/FirmwareNew.vue +42 -42
  152. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/menu/MenuNew.vue +25 -25
  153. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +171 -171
  154. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/OrderNew.vue +50 -50
  155. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptionsNew.vue +141 -141
  156. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/New.vue +140 -140
  157. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/copyPaste/CopyPasteNew.vue +30 -30
  158. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/fileTransfer/FileTransferNew.vue +30 -30
  159. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/folderSharing/FolderSharingNew.vue +30 -30
  160. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/Keymap.vue +32 -32
  161. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/KeymapNew.vue +39 -39
  162. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/Password.vue +103 -103
  163. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/PasswordNew.vue +102 -102
  164. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/PasswordOld.vue +94 -94
  165. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirection.vue +28 -28
  166. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionNew.vue +38 -38
  167. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionOld.vue +44 -44
  168. package/components/common/vm/actions/common/select/storage/Storage.vue +130 -130
  169. package/components/common/vm/actions/common/select/storage/StorageOld.vue +129 -129
  170. package/components/common/vm/actions/editSettings/new/Skeleton.vue +88 -88
  171. package/components/common/wizards/datastore/add/lib/config/steps.ts +138 -138
  172. package/components/common/wizards/vm/migrate/Migrate.vue +302 -302
  173. package/components/common/wizards/vm/migrate/lib/config/constructDataReady.ts +220 -220
  174. package/components/common/wizards/vm/migrate/select/network/Network.vue +103 -103
  175. package/components/common/wizards/vm/migrate/select/network/table/network/Network.vue +150 -150
  176. package/components/common/wizards/vm/migrate/select/network/table/network/lib/config/advancedTable.ts +91 -91
  177. package/components/common/wizards/vm/migrate/select/priority/Priority.vue +43 -43
  178. package/composables/productNameLocal.ts +30 -30
  179. package/composables/useAppVersion.ts +21 -21
  180. package/lib/models/interfaces.ts +1 -1
  181. package/package.json +2 -2
  182. package/plugins/date.ts +233 -233
  183. package/plugins/directives.ts +24 -24
  184. package/plugins/recursion.ts +311 -311
  185. package/public/spice-console/lib/images/bitmap.js +203 -203
  186. package/public/spice-console/network/spicechannel.js +383 -383
  187. package/store/main/mutations.ts +7 -7
  188. package/store/main/state.ts +7 -7
  189. package/store/tasks/mappers/recentTasks.ts +64 -64
  190. package/components/common/monitor/advanced/tools/chartOptionsModal/metrics/metricsNew/MetricsNew.vue +0 -101
  191. package/components/common/monitor/advanced/tools/chartOptionsModal/metrics/metricsNew/lib/utils/constructAccordion.ts +0 -32
@@ -1,7 +1,7 @@
1
- import type { UI_I_MainState } from '~/store/main/lib/interfaces'
2
-
3
- export default {
4
- M_MENU_PINED(state: UI_I_MainState, payload: boolean): void {
5
- state.isMenuPined = payload
6
- },
7
- }
1
+ import type { UI_I_MainState } from '~/store/main/lib/interfaces'
2
+
3
+ export default {
4
+ M_MENU_PINED(state: UI_I_MainState, payload: boolean): void {
5
+ state.isMenuPined = payload
6
+ },
7
+ }
@@ -1,7 +1,7 @@
1
- import type {UI_I_MainState} from "~/store/main/lib/interfaces";
2
-
3
- const state: UI_I_MainState = {
4
- isMenuPined: false,
5
- }
6
-
7
- export default state
1
+ import type {UI_I_MainState} from "~/store/main/lib/interfaces";
2
+
3
+ const state: UI_I_MainState = {
4
+ isMenuPined: false,
5
+ }
6
+
7
+ export default state
@@ -1,64 +1,64 @@
1
- import {
2
- UI_E_RecentTaskStatus,
3
- UI_E_IconNameByRecentTaskStatus,
4
- } from '~/lib/models/store/tasks/enums'
5
- import type {
6
- API_UI_I_RecentTask,
7
- UI_I_RecentTask,
8
- } from '~/lib/models/store/tasks/interfaces'
9
- import { base64 } from '~/lib/utils/base64'
10
-
11
- export const recentTasks = (
12
- data: API_UI_I_RecentTask<string>
13
- ): UI_I_RecentTask<string> => {
14
- const items =
15
- data.items
16
- ?.sort((a, b) => {
17
- return b.start_time - a.start_time
18
- })
19
- .map((task) => {
20
- let args: any = {}
21
- try {
22
- args = base64.decode(task.args)
23
- } catch (error) {
24
- args = {}
25
- }
26
-
27
- let completion: string = task.completion + '' || '--'
28
- let execution: string | number = Math.abs(task.start_time - task.completion)
29
- let queuedFor: number = task.start_time - task.creation_time
30
- let startTime: string = task.start_time + '' || '--'
31
- // Обрабатываем данные когда задачка в ожидании
32
- if (task.status === 0) {
33
- completion = '--'
34
- execution = '--'
35
- queuedFor = 0
36
- startTime = (Date.now() / 1000) + ''
37
- }
38
-
39
- return {
40
- args,
41
- completion,
42
- execution,
43
- queuedFor,
44
- startTime,
45
- details: task.details,
46
- error: task.error,
47
- initiator: task.initiator,
48
- server: task.server,
49
- statusIcon: UI_E_IconNameByRecentTaskStatus[task.status],
50
- statusText: task.error || UI_E_RecentTaskStatus[task.status],
51
- status: task.status,
52
- target: task.target,
53
- targetType: task.target_type,
54
- taskName: task.task_name,
55
- id: task.id,
56
- zone: task.zone,
57
- extra: task.extra,
58
- }
59
- }) || []
60
- return {
61
- items,
62
- last: data.last,
63
- }
64
- }
1
+ import {
2
+ UI_E_RecentTaskStatus,
3
+ UI_E_IconNameByRecentTaskStatus,
4
+ } from '~/lib/models/store/tasks/enums'
5
+ import type {
6
+ API_UI_I_RecentTask,
7
+ UI_I_RecentTask,
8
+ } from '~/lib/models/store/tasks/interfaces'
9
+ import { base64 } from '~/lib/utils/base64'
10
+
11
+ export const recentTasks = (
12
+ data: API_UI_I_RecentTask<string>
13
+ ): UI_I_RecentTask<string> => {
14
+ const items =
15
+ data.items
16
+ ?.sort((a, b) => {
17
+ return b.start_time - a.start_time
18
+ })
19
+ .map((task) => {
20
+ let args: any = {}
21
+ try {
22
+ args = base64.decode(task.args)
23
+ } catch (error) {
24
+ args = {}
25
+ }
26
+
27
+ let completion: string = task.completion + '' || '--'
28
+ let execution: string | number = Math.abs(task.start_time - task.completion)
29
+ let queuedFor: number = task.start_time - task.creation_time
30
+ let startTime: string = task.start_time + '' || '--'
31
+ // Обрабатываем данные когда задачка в ожидании
32
+ if (task.status === 0) {
33
+ completion = '--'
34
+ execution = '--'
35
+ queuedFor = 0
36
+ startTime = (Date.now() / 1000) + ''
37
+ }
38
+
39
+ return {
40
+ args,
41
+ completion,
42
+ execution,
43
+ queuedFor,
44
+ startTime,
45
+ details: task.details,
46
+ error: task.error,
47
+ initiator: task.initiator,
48
+ server: task.server,
49
+ statusIcon: UI_E_IconNameByRecentTaskStatus[task.status],
50
+ statusText: task.error || UI_E_RecentTaskStatus[task.status],
51
+ status: task.status,
52
+ target: task.target,
53
+ targetType: task.target_type,
54
+ taskName: task.task_name,
55
+ id: task.id,
56
+ zone: task.zone,
57
+ extra: task.extra,
58
+ }
59
+ }) || []
60
+ return {
61
+ items,
62
+ last: data.last,
63
+ }
64
+ }
@@ -1,101 +0,0 @@
1
- <template>
2
- <ui-accordion-recursion
3
- v-for="(item, key) in accordionItems"
4
- id="metrics-accordion-recursion"
5
- :key="item.id"
6
- :test-id="`${item.testId}-${key}`"
7
- :accordion="item"
8
- >
9
- <template #header="{ data }">
10
- <span class="main-headline">{{ data.headline }}</span>
11
- </template>
12
- <template #body="{ data }">
13
- <div
14
- v-for="(item2, key2) in data.children"
15
- :key="key2"
16
- class="accordion-main-text-content"
17
- @click="selectedMetricLocal = item2.data.value"
18
- >
19
- <span
20
- :class="[
21
- 'accordion-toggle-item',
22
- { active: selectedMetricLocal === item2.data.value },
23
- ]"
24
- >
25
- <span
26
- :title="item2.headline"
27
- class="accordion-toggle-item-text metrics-accordion-toggle-item-text text-ellipsis"
28
- >{{ item2.headline }}</span
29
- >
30
- </span>
31
- <div v-if="data.children.length - 1 > key2" class="divider"></div>
32
- </div>
33
- </template>
34
- </ui-accordion-recursion>
35
- </template>
36
-
37
- <script setup lang="ts">
38
- import type { UI_I_Accordion } from '~/node_modules/bfg-uikit/components/ui/accordion/models/interfaces'
39
- import type { UI_I_VerticalTabs } from '~/components/atoms/tabs/lib/models/interfaces'
40
- import { constructAccordion } from '~/components/common/monitor/advanced/tools/chartOptionsModal/metrics/metricsNew/lib/utils/constructAccordion'
41
- import { updateElementShowWithId } from 'bfg-uikit/components/ui/accordion/utils/recursion'
42
-
43
- const selectedMetricLocal = defineModel<string>('selectedMetric', {
44
- required: true,
45
- })
46
-
47
- const props = defineProps<{
48
- metricsItems: UI_I_VerticalTabs[]
49
- }>()
50
-
51
- const accordionItems = ref<UI_I_Accordion[]>(
52
- constructAccordion(props.metricsItems)
53
- )
54
-
55
- const onToggle = (id: number): void => {
56
- accordionItems.value = updateElementShowWithId(accordionItems.value, id)
57
- }
58
-
59
- onMounted(() => {
60
- onToggle(0)
61
- })
62
- </script>
63
-
64
- <style>
65
- :root {
66
- --metrics-accordion-bg-color: #ffffff;
67
- --metrics-accordion-item-color: #4d5d69;
68
- }
69
- :root.dark-theme {
70
- --metrics-accordion-bg-color: #334453;
71
- --metrics-accordion-item-color: #e9eaec;
72
- }
73
- </style>
74
- <style scoped lang="scss">
75
- #metrics-accordion-recursion {
76
- padding: 12px;
77
- background: var(--metrics-accordion-bg-color);
78
- box-shadow: 0 1px 4px 0 #00000014;
79
- border-radius: 8px;
80
-
81
- .main-headline {
82
- font-size: 14px;
83
- font-weight: 500;
84
- color: var(--metrics-accordion-item-color);
85
- }
86
- :deep(.accordion-toggle-item-icon) {
87
- display: none;
88
- }
89
- .accordion-toggle-item {
90
- padding-left: 24px;
91
-
92
- &:not(.active) {
93
- color: var(--metrics-accordion-item-color);
94
- }
95
- .metrics-accordion-toggle-item-text {
96
- font-size: 13px;
97
- font-weight: 500;
98
- }
99
- }
100
- }
101
- </style>
@@ -1,32 +0,0 @@
1
- import type { UI_I_Accordion } from '~/node_modules/bfg-uikit/components/ui/accordion/models/interfaces'
2
- import type { UI_I_VerticalTabs } from '~/components/atoms/tabs/lib/models/interfaces'
3
-
4
- export const constructAccordion = (
5
- items: UI_I_VerticalTabs[]
6
- ): UI_I_Accordion[] => {
7
- const localization = useLocal()
8
- return [
9
- {
10
- id: 0,
11
- testId: 'metrics-headline',
12
- headline: `${localization.zabbix.metrics} (${items.length})`,
13
- expended: false,
14
- disabled: false,
15
- hasChild: true,
16
- children: items.map((item: UI_I_VerticalTabs, key) => {
17
- return {
18
- id: key + 1,
19
- testId: `accordion-item-${item.value}`,
20
- headline: item.text,
21
- expended: false,
22
- disabled: false,
23
- hasChild: false,
24
- children: [],
25
- data: {
26
- value: item.value,
27
- },
28
- }
29
- }),
30
- },
31
- ]
32
- }