bfg-common 1.4.730 → 1.4.732

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 (153) hide show
  1. package/assets/localization/local_be.json +1 -0
  2. package/assets/localization/local_en.json +1 -0
  3. package/assets/localization/local_hy.json +1 -0
  4. package/assets/localization/local_kk.json +1 -0
  5. package/assets/localization/local_ru.json +1 -0
  6. package/assets/localization/local_zh.json +1 -0
  7. package/assets/scss/common/normalize.scss +361 -361
  8. package/components/atoms/TheIcon3.vue +50 -50
  9. package/components/atoms/modal/bySteps/BySteps.vue +253 -253
  10. package/components/atoms/select/TheSelect.vue +1 -10
  11. package/components/atoms/stack/StackBlock.vue +185 -185
  12. package/components/atoms/table/dataGrid/DataGrid.vue +1696 -1696
  13. package/components/atoms/table/dataGrid/DataGridColumnSwitch.vue +222 -222
  14. package/components/atoms/table/dataGrid/lib/config/settingsTable.ts +91 -91
  15. package/components/common/browse/BrowseNew.vue +237 -237
  16. package/components/common/browse/BrowseOld.vue +217 -217
  17. package/components/common/browse/blocks/contents/Files.vue +37 -37
  18. package/components/common/browse/blocks/contents/FilesOld.vue +72 -72
  19. package/components/common/browse/blocks/contents/filesNew/FilesNew.vue +96 -96
  20. package/components/common/browse/blocks/contents/filesNew/Skeleton.vue +18 -18
  21. package/components/common/{monitor/advanced/tools/chartOptionsModal → chartOptionsModal}/counters/timespan/form/Form.vue +544 -539
  22. package/components/common/{pages/hardwareHealth/historyTestimony/tools/chartOptionsModal → chartOptionsModal}/counters/timespan/form/lib/config/dateForm.ts +116 -115
  23. package/components/common/context/lib/models/interfaces.ts +30 -30
  24. package/components/common/context/recursion/Recursion.vue +86 -86
  25. package/components/common/context/recursion/RecursionOld.vue +213 -213
  26. package/components/common/layout/theHeader/helpMenu/About.vue +82 -82
  27. package/components/common/layout/theHeader/helpMenu/aboutNew/AboutNew.vue +103 -103
  28. package/components/common/mainNavigationPanel/MainNavigationPanel.vue +150 -150
  29. package/components/common/mainNavigationPanel/MainNavigationPanelOld.vue +300 -300
  30. package/components/common/modals/confirmByInput/ConfirmByInput.vue +206 -206
  31. package/components/common/modals/unsavedChanges/UnsavedChanges.vue +56 -56
  32. package/components/common/monitor/advanced/Advanced.vue +5 -0
  33. package/components/common/monitor/advanced/tools/Tools.vue +9 -2
  34. package/components/common/monitor/advanced/tools/chartOptionsModal/ChartOptionsModal.vue +9 -2
  35. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/Counters.vue +2 -0
  36. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/Timespan.vue +95 -93
  37. package/components/common/monitor/overview/filters/Filters.vue +3 -0
  38. package/components/common/monitor/overview/filters/customIntervalModal/CustomIntervalModal.vue +15 -5
  39. package/components/common/monitor/overview/filters/customIntervalModal/lib/config/dateChecker.ts +24 -14
  40. package/components/common/pages/hardwareHealth/HardwareHealth.vue +12 -5
  41. package/components/common/pages/hardwareHealth/historyTestimony/Graph.vue +456 -451
  42. package/components/common/pages/hardwareHealth/historyTestimony/tools/Tools.vue +387 -380
  43. package/components/common/pages/hardwareHealth/historyTestimony/tools/chartOptionsModal/ChartOptionsModal.vue +13 -6
  44. package/components/common/pages/hardwareHealth/historyTestimony/tools/chartOptionsModal/counters/Counters.vue +94 -94
  45. package/components/common/pages/hardwareHealth/historyTestimony/tools/chartOptionsModal/counters/timespan/Timespan.vue +66 -66
  46. package/components/common/pages/home/StatusContent.vue +49 -49
  47. package/components/common/pages/home/headline/Headline.vue +44 -44
  48. package/components/common/pages/home/headline/HeadlineNew.vue +71 -71
  49. package/components/common/pages/home/lib/models/interfaces.ts +48 -48
  50. package/components/common/pages/home/widgets/Widgets.vue +49 -49
  51. package/components/common/pages/home/widgets/WidgetsNew.vue +86 -86
  52. package/components/common/pages/home/widgets/WidgetsOld.vue +34 -34
  53. package/components/common/pages/home/widgets/hosts/Hosts.vue +27 -27
  54. package/components/common/pages/home/widgets/hosts/HostsNew.vue +100 -100
  55. package/components/common/pages/home/widgets/hosts/lib/config/items.ts +23 -23
  56. package/components/common/pages/home/widgets/services/lib/config/config.ts +108 -108
  57. package/components/common/pages/home/widgets/vms/Vms.vue +26 -26
  58. package/components/common/pages/home/widgets/vms/VmsNew.vue +101 -101
  59. package/components/common/pages/home/widgets/vms/VmsOld.vue +35 -35
  60. package/components/common/pages/home/widgets/vms/lib/config/items.ts +19 -19
  61. package/components/common/recursionTree/RecursionTree.vue +223 -223
  62. package/components/common/select/button/ButtonDropdown.vue +108 -108
  63. package/components/common/spiceConsole/Drawer.vue +370 -370
  64. package/components/common/spiceConsole/lib/models/interfaces.ts +5 -5
  65. package/components/common/split/vertical/Vertical.vue +160 -160
  66. package/components/common/vm/actions/add/Add.vue +0 -2
  67. package/components/common/vm/actions/clone/Clone.vue +0 -2
  68. package/components/common/vm/actions/clone/lib/config/steps.ts +129 -129
  69. package/components/common/vm/actions/common/customizeHardware/CustomizeHardware.vue +0 -3
  70. package/components/common/vm/actions/common/customizeHardware/CustomizeHardwareNew.vue +0 -2
  71. package/components/common/vm/actions/common/customizeHardware/CustomizeHardwareOld.vue +0 -2
  72. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardware.vue +1 -9
  73. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardwareNew.vue +2 -5
  74. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardwareOld.vue +1 -3
  75. package/components/common/vm/actions/common/customizeHardware/virtualHardware/browseView/BrowseView.vue +219 -219
  76. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/BusNew.vue +117 -117
  77. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDriveNew.vue +161 -161
  78. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDriveOld.vue +165 -165
  79. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Media.vue +25 -25
  80. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaNew.vue +70 -70
  81. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaOld.vue +50 -50
  82. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Cpu.vue +338 -338
  83. package/components/common/vm/actions/common/customizeHardware/virtualHardware/lib/config/dropdownItems.ts +4 -6
  84. package/components/common/vm/actions/common/customizeHardware/virtualHardware/limit/Limit.vue +220 -220
  85. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/mode/ModeOld.vue +56 -56
  86. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/sharing/SharingNew.vue +44 -44
  87. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetwork.vue +281 -281
  88. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetworkNew.vue +124 -124
  89. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/LocationOld.vue +134 -134
  90. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/New.vue +63 -63
  91. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/table/lib/config/config.ts +95 -95
  92. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddress.vue +119 -119
  93. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddressNew.vue +69 -69
  94. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddressOld.vue +83 -83
  95. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/NewPciDevice.vue +6 -38
  96. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/NewPciDeviceNew.vue +5 -31
  97. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/NewPciDeviceOld.vue +5 -31
  98. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoNew.vue +35 -35
  99. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIo.vue +2 -9
  100. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIoNew.vue +48 -48
  101. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/lib/config/options.ts +4 -11
  102. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/Note.vue +15 -15
  103. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteNew.vue +42 -42
  104. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteOld.vue +30 -30
  105. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGridNew.vue +30 -30
  106. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/typeSelection/TypeSelectionNew.vue +1 -1
  107. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/typeSelection/TypeSelectionOld.vue +1 -1
  108. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newUsbController/NewUsbControllerNew.vue +56 -56
  109. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/Other.vue +16 -16
  110. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/OtherNew.vue +30 -30
  111. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCardNew.vue +104 -104
  112. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCardOld.vue +112 -112
  113. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/totalVideoMemory/TotalVideoMemoryNew.vue +54 -54
  114. package/components/common/vm/actions/common/customizeHardware/vmoptions/Vmoptions.vue +145 -145
  115. package/components/common/vm/actions/common/customizeHardware/vmoptions/VmoptionsNew.vue +102 -102
  116. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/BootOptionsNew.vue +75 -75
  117. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/delay/Delay.vue +26 -26
  118. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/Firmware.vue +57 -57
  119. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/FirmwareNew.vue +42 -42
  120. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/menu/MenuNew.vue +25 -25
  121. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +171 -171
  122. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/OrderNew.vue +50 -50
  123. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptionsNew.vue +141 -141
  124. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/New.vue +140 -140
  125. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/copyPaste/CopyPasteNew.vue +30 -30
  126. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/fileTransfer/FileTransferNew.vue +30 -30
  127. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/folderSharing/FolderSharingNew.vue +30 -30
  128. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/Keymap.vue +32 -32
  129. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/KeymapNew.vue +39 -39
  130. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/Password.vue +103 -103
  131. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/PasswordNew.vue +102 -102
  132. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/PasswordOld.vue +94 -94
  133. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirection.vue +28 -28
  134. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionNew.vue +38 -38
  135. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionOld.vue +44 -44
  136. package/components/common/vm/actions/common/select/storage/Storage.vue +130 -130
  137. package/components/common/vm/actions/common/select/storage/StorageOld.vue +129 -129
  138. package/components/common/vm/actions/editSettings/EditSettings.vue +0 -3
  139. package/components/common/vm/actions/editSettings/EditSettingsOld.vue +0 -2
  140. package/components/common/vm/actions/editSettings/new/New.vue +0 -2
  141. package/components/common/vm/actions/editSettings/new/Skeleton.vue +88 -88
  142. package/composables/productNameLocal.ts +30 -30
  143. package/composables/useAppVersion.ts +21 -21
  144. package/package.json +1 -1
  145. package/plugins/date.ts +233 -233
  146. package/plugins/recursion.ts +311 -311
  147. package/public/spice-console/lib/images/bitmap.js +203 -203
  148. package/public/spice-console/network/spicechannel.js +383 -383
  149. package/store/main/mutations.ts +7 -7
  150. package/store/main/state.ts +7 -7
  151. package/store/tasks/mappers/recentTasks.ts +64 -64
  152. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/form/lib/config/dateForm.ts +0 -114
  153. package/components/common/pages/hardwareHealth/historyTestimony/tools/chartOptionsModal/counters/timespan/form/Form.vue +0 -539
@@ -1,103 +1,103 @@
1
- <template>
2
- <ui-modal
3
- test-id="about-modal"
4
- width="720px"
5
- :title="props.title"
6
- :subtitle="props.subtitle"
7
- class="about-modal"
8
- @hide="onHideModal"
9
- >
10
- <template #content>
11
- <ui-modal-block-standard>
12
- <div class="about-modal__text">
13
- <p>{{ aboutHeadingText }}</p>
14
-
15
- <p>{{ localization.layout.aboutSubtitle }}</p>
16
- </div>
17
-
18
- <div class="about-modal__description">
19
- {{ props.aboutDescOne }}
20
-
21
- (<a
22
- id="about-description-link"
23
- data-id="about-description-link"
24
- :href="url"
25
- target="_blank"
26
- class="about-modal__description-link"
27
- >
28
- {{ props.url }} </a
29
- >)
30
-
31
- {{ props.aboutDescSecond }}
32
- </div>
33
- </ui-modal-block-standard>
34
- </template>
35
- <template #footerContent><span /></template>
36
- <template #footerLeftContent><span /></template>
37
- </ui-modal>
38
- </template>
39
-
40
- <script lang="ts" setup>
41
- import type { UI_I_Localization } from '~/lib/models/interfaces'
42
-
43
- const props = defineProps<{
44
- title: string
45
- subtitle: string
46
- aboutHeadingText: string
47
- aboutDescOne: string
48
- aboutDescSecond: string
49
- projectName: string
50
- url: string
51
- }>()
52
- const emits = defineEmits<{
53
- (event: 'hide'): void
54
- }>()
55
-
56
- const localization = computed<UI_I_Localization>(() => useLocal())
57
-
58
- const onHideModal = (): void => {
59
- emits('hide')
60
- }
61
- </script>
62
-
63
- <style>
64
- :root {
65
- --about-text-color: #4d5d69;
66
- --about-text-link-hover-color: #0081c1;
67
- }
68
- :root.dark-theme {
69
- --about-text-color: #9da6ad;
70
- --about-text-link-hover-color: #008fd6;
71
- }
72
- </style>
73
-
74
- <style lang="scss" scoped>
75
- .about-modal {
76
- &__text {
77
- color: var(--about-text-color);
78
- font-size: 13px;
79
- font-weight: 400;
80
- line-height: 15.73px;
81
-
82
- p:last-child {
83
- margin: 16px 0;
84
- }
85
- }
86
- &__description {
87
- color: var(--about-text-color);
88
- font-size: 13px;
89
- font-weight: 400;
90
- line-height: 15.73px;
91
-
92
- &-link {
93
- color: #0786d2;
94
- &:hover {
95
- color: var(--about-text-link-hover-color);
96
- }
97
- }
98
- }
99
- }
100
- :deep(.title-wrapper__subtitle) {
101
- max-width: 400px;
102
- }
103
- </style>
1
+ <template>
2
+ <ui-modal
3
+ test-id="about-modal"
4
+ width="720px"
5
+ :title="props.title"
6
+ :subtitle="props.subtitle"
7
+ class="about-modal"
8
+ @hide="onHideModal"
9
+ >
10
+ <template #content>
11
+ <ui-modal-block-standard>
12
+ <div class="about-modal__text">
13
+ <p>{{ aboutHeadingText }}</p>
14
+
15
+ <p>{{ localization.layout.aboutSubtitle }}</p>
16
+ </div>
17
+
18
+ <div class="about-modal__description">
19
+ {{ props.aboutDescOne }}
20
+
21
+ (<a
22
+ id="about-description-link"
23
+ data-id="about-description-link"
24
+ :href="url"
25
+ target="_blank"
26
+ class="about-modal__description-link"
27
+ >
28
+ {{ props.url }} </a
29
+ >)
30
+
31
+ {{ props.aboutDescSecond }}
32
+ </div>
33
+ </ui-modal-block-standard>
34
+ </template>
35
+ <template #footerContent><span /></template>
36
+ <template #footerLeftContent><span /></template>
37
+ </ui-modal>
38
+ </template>
39
+
40
+ <script lang="ts" setup>
41
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
42
+
43
+ const props = defineProps<{
44
+ title: string
45
+ subtitle: string
46
+ aboutHeadingText: string
47
+ aboutDescOne: string
48
+ aboutDescSecond: string
49
+ projectName: string
50
+ url: string
51
+ }>()
52
+ const emits = defineEmits<{
53
+ (event: 'hide'): void
54
+ }>()
55
+
56
+ const localization = computed<UI_I_Localization>(() => useLocal())
57
+
58
+ const onHideModal = (): void => {
59
+ emits('hide')
60
+ }
61
+ </script>
62
+
63
+ <style>
64
+ :root {
65
+ --about-text-color: #4d5d69;
66
+ --about-text-link-hover-color: #0081c1;
67
+ }
68
+ :root.dark-theme {
69
+ --about-text-color: #9da6ad;
70
+ --about-text-link-hover-color: #008fd6;
71
+ }
72
+ </style>
73
+
74
+ <style lang="scss" scoped>
75
+ .about-modal {
76
+ &__text {
77
+ color: var(--about-text-color);
78
+ font-size: 13px;
79
+ font-weight: 400;
80
+ line-height: 15.73px;
81
+
82
+ p:last-child {
83
+ margin: 16px 0;
84
+ }
85
+ }
86
+ &__description {
87
+ color: var(--about-text-color);
88
+ font-size: 13px;
89
+ font-weight: 400;
90
+ line-height: 15.73px;
91
+
92
+ &-link {
93
+ color: #0786d2;
94
+ &:hover {
95
+ color: var(--about-text-link-hover-color);
96
+ }
97
+ }
98
+ }
99
+ }
100
+ :deep(.title-wrapper__subtitle) {
101
+ max-width: 400px;
102
+ }
103
+ </style>
@@ -1,150 +1,150 @@
1
- <template>
2
- <common-main-navigation-panel-new
3
- v-if="props.isNewView"
4
- v-model:main-menu-hovered="mainMenuHovered"
5
- v-model:menu-pined="menuPined"
6
- :navigation-items="props.navigationItems"
7
- :disabled-pin="props.disabledPin"
8
- :menu-collapsed="menuCollapsed"
9
- :show-menu="showMenu"
10
- @collapse-menu="collapseMenu"
11
- @change-menu-pin="changeMenuPin"
12
- @hide-main-menu="hideMainMenu"
13
- />
14
- <common-main-navigation-panel-old
15
- v-else
16
- v-model:main-menu-hovered="mainMenuHovered"
17
- v-model:menu-pined="menuPined"
18
- :navigation-items="props.navigationItems"
19
- :disabled-pin="props.disabledPin"
20
- :menu-collapsed="menuCollapsed"
21
- :show-menu="showMenu"
22
- @collapse-menu="collapseMenu"
23
- @change-menu-pin="changeMenuPin"
24
- @hide-main-menu="hideMainMenu"
25
- />
26
- </template>
27
-
28
- <script setup lang="ts">
29
- import type { UI_I_NavigationItem } from '~/components/common/mainNavigationPanel/lib/models/interfaces'
30
- import type { UI_T_ParentStatus } from '~/components/common/mainNavigationPanel/lib/models/types'
31
-
32
- const props = withDefaults(
33
- defineProps<{
34
- mainMenuStatus: boolean
35
- navigationItems: UI_I_NavigationItem[][]
36
- parentStatus: UI_T_ParentStatus
37
- disabledPin: boolean
38
- isNewView?: boolean
39
- }>(),
40
- {
41
- isNewView: false,
42
- }
43
- )
44
-
45
- const emits = defineEmits<{
46
- (event: 'toggle', value: boolean): void
47
- }>()
48
-
49
- const { $store }: any = useNuxtApp()
50
-
51
- const route = useRoute()
52
-
53
- const showMenu = computed<boolean>(
54
- () => props.mainMenuStatus || menuPined.value
55
- )
56
-
57
- const menuPined = ref<boolean>(false)
58
- const changeMenuPin = (): void => {
59
- useLocalStorage('menuPined', menuPined.value)
60
- }
61
- const setMenuPined = (): void => {
62
- menuPined.value = props.disabledPin ? false : !!useLocalStorage('menuPined')
63
- }
64
- watch(
65
- () => props.disabledPin,
66
- () => {
67
- setMenuPined()
68
- },
69
- { immediate: true }
70
- )
71
-
72
- const menuCollapsed = ref<boolean>(false)
73
- const collapseMenu = (): void => {
74
- menuCollapsed.value = !menuCollapsed.value
75
- useLocalStorage('menuCollapsed', menuCollapsed.value)
76
- }
77
-
78
- const mainMenuHovered = ref<boolean>(false)
79
-
80
- const clickWindow = (event: Event): void => {
81
- const target = event.target as any
82
- if (
83
- menuPined.value ||
84
- mainMenuHovered.value ||
85
- target.className.baseVal?.includes('menu-icon') ||
86
- target.className.baseVal?.includes('clr-i-outline')
87
- ) {
88
- return
89
- }
90
-
91
- emits('toggle', false)
92
- }
93
-
94
- const mountedReady = ref<boolean>(false)
95
- onMounted(() => {
96
- mountedReady.value = true
97
- window.addEventListener('click', clickWindow)
98
- })
99
-
100
- onUnmounted(() => {
101
- window.removeEventListener('click', clickWindow)
102
- })
103
-
104
- const setSidebarOptions = (): void => {
105
- setMenuPined()
106
- menuCollapsed.value = !!useLocalStorage('menuCollapsed')
107
- // SC-594
108
- if (!showMenu.value) {
109
- menuCollapsed.value = false
110
- }
111
-
112
- if (menuPined.value) {
113
- emits('toggle', true)
114
- }
115
- }
116
-
117
- watch(
118
- [mountedReady, (): any => route.fullPath, (): any => props.parentStatus],
119
- ([newValue1, newValue2, newValue3]: [
120
- boolean,
121
- any,
122
- UI_T_ParentStatus
123
- ]): void => {
124
- if (newValue3 === 1) return
125
-
126
- const name = location.pathname.split('/')[1]
127
-
128
- if (!newValue1 || name === 'auth') return
129
-
130
- setSidebarOptions()
131
- useLocalStorage('navigationHistoryRoute', newValue2)
132
- },
133
- { immediate: true, deep: true }
134
- )
135
-
136
- const hideMainMenu = (): void => {
137
- if (menuPined.value) return
138
- emits('toggle', false)
139
- }
140
-
141
- watch(
142
- menuPined,
143
- (newValue) => {
144
- $store.dispatch('main/A_MENU_PINED', newValue)
145
- },
146
- { immediate: true }
147
- )
148
- </script>
149
-
150
- <style scoped lang="scss"></style>
1
+ <template>
2
+ <common-main-navigation-panel-new
3
+ v-if="props.isNewView"
4
+ v-model:main-menu-hovered="mainMenuHovered"
5
+ v-model:menu-pined="menuPined"
6
+ :navigation-items="props.navigationItems"
7
+ :disabled-pin="props.disabledPin"
8
+ :menu-collapsed="menuCollapsed"
9
+ :show-menu="showMenu"
10
+ @collapse-menu="collapseMenu"
11
+ @change-menu-pin="changeMenuPin"
12
+ @hide-main-menu="hideMainMenu"
13
+ />
14
+ <common-main-navigation-panel-old
15
+ v-else
16
+ v-model:main-menu-hovered="mainMenuHovered"
17
+ v-model:menu-pined="menuPined"
18
+ :navigation-items="props.navigationItems"
19
+ :disabled-pin="props.disabledPin"
20
+ :menu-collapsed="menuCollapsed"
21
+ :show-menu="showMenu"
22
+ @collapse-menu="collapseMenu"
23
+ @change-menu-pin="changeMenuPin"
24
+ @hide-main-menu="hideMainMenu"
25
+ />
26
+ </template>
27
+
28
+ <script setup lang="ts">
29
+ import type { UI_I_NavigationItem } from '~/components/common/mainNavigationPanel/lib/models/interfaces'
30
+ import type { UI_T_ParentStatus } from '~/components/common/mainNavigationPanel/lib/models/types'
31
+
32
+ const props = withDefaults(
33
+ defineProps<{
34
+ mainMenuStatus: boolean
35
+ navigationItems: UI_I_NavigationItem[][]
36
+ parentStatus: UI_T_ParentStatus
37
+ disabledPin: boolean
38
+ isNewView?: boolean
39
+ }>(),
40
+ {
41
+ isNewView: false,
42
+ }
43
+ )
44
+
45
+ const emits = defineEmits<{
46
+ (event: 'toggle', value: boolean): void
47
+ }>()
48
+
49
+ const { $store }: any = useNuxtApp()
50
+
51
+ const route = useRoute()
52
+
53
+ const showMenu = computed<boolean>(
54
+ () => props.mainMenuStatus || menuPined.value
55
+ )
56
+
57
+ const menuPined = ref<boolean>(false)
58
+ const changeMenuPin = (): void => {
59
+ useLocalStorage('menuPined', menuPined.value)
60
+ }
61
+ const setMenuPined = (): void => {
62
+ menuPined.value = props.disabledPin ? false : !!useLocalStorage('menuPined')
63
+ }
64
+ watch(
65
+ () => props.disabledPin,
66
+ () => {
67
+ setMenuPined()
68
+ },
69
+ { immediate: true }
70
+ )
71
+
72
+ const menuCollapsed = ref<boolean>(false)
73
+ const collapseMenu = (): void => {
74
+ menuCollapsed.value = !menuCollapsed.value
75
+ useLocalStorage('menuCollapsed', menuCollapsed.value)
76
+ }
77
+
78
+ const mainMenuHovered = ref<boolean>(false)
79
+
80
+ const clickWindow = (event: Event): void => {
81
+ const target = event.target as any
82
+ if (
83
+ menuPined.value ||
84
+ mainMenuHovered.value ||
85
+ target.className.baseVal?.includes('menu-icon') ||
86
+ target.className.baseVal?.includes('clr-i-outline')
87
+ ) {
88
+ return
89
+ }
90
+
91
+ emits('toggle', false)
92
+ }
93
+
94
+ const mountedReady = ref<boolean>(false)
95
+ onMounted(() => {
96
+ mountedReady.value = true
97
+ window.addEventListener('click', clickWindow)
98
+ })
99
+
100
+ onUnmounted(() => {
101
+ window.removeEventListener('click', clickWindow)
102
+ })
103
+
104
+ const setSidebarOptions = (): void => {
105
+ setMenuPined()
106
+ menuCollapsed.value = !!useLocalStorage('menuCollapsed')
107
+ // SC-594
108
+ if (!showMenu.value) {
109
+ menuCollapsed.value = false
110
+ }
111
+
112
+ if (menuPined.value) {
113
+ emits('toggle', true)
114
+ }
115
+ }
116
+
117
+ watch(
118
+ [mountedReady, (): any => route.fullPath, (): any => props.parentStatus],
119
+ ([newValue1, newValue2, newValue3]: [
120
+ boolean,
121
+ any,
122
+ UI_T_ParentStatus
123
+ ]): void => {
124
+ if (newValue3 === 1) return
125
+
126
+ const name = location.pathname.split('/')[1]
127
+
128
+ if (!newValue1 || name === 'auth') return
129
+
130
+ setSidebarOptions()
131
+ useLocalStorage('navigationHistoryRoute', newValue2)
132
+ },
133
+ { immediate: true, deep: true }
134
+ )
135
+
136
+ const hideMainMenu = (): void => {
137
+ if (menuPined.value) return
138
+ emits('toggle', false)
139
+ }
140
+
141
+ watch(
142
+ menuPined,
143
+ (newValue) => {
144
+ $store.dispatch('main/A_MENU_PINED', newValue)
145
+ },
146
+ { immediate: true }
147
+ )
148
+ </script>
149
+
150
+ <style scoped lang="scss"></style>