bfg-common 1.6.63 → 1.6.65

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 (188) hide show
  1. package/assets/localization/local_be.json +5 -1
  2. package/assets/localization/local_en.json +15 -11
  3. package/assets/localization/local_hy.json +5 -1
  4. package/assets/localization/local_kk.json +5 -1
  5. package/assets/localization/local_ru.json +10 -6
  6. package/assets/localization/local_zh.json +5 -1
  7. package/components/atoms/dropdown/dropdown/Dropdown.vue +8 -10
  8. package/components/atoms/dropdown/dropdown/lib/models/interfaces.ts +0 -1
  9. package/components/common/adapterManager/AdapterManager.vue +473 -473
  10. package/components/common/adapterManager/AdapterManagerNew.vue +86 -0
  11. package/components/common/adapterManager/AdapterManagerOld.vue +498 -498
  12. package/components/common/adapterManager/addAdapterModal/AddAdapterModal.vue +70 -70
  13. package/components/common/adapterManager/addAdapterModal/AddAdapterModalNew.vue +110 -110
  14. package/components/common/adapterManager/addAdapterModal/AddAdapterModalOld.vue +531 -531
  15. package/components/common/adapterManager/addAdapterWarningModal/AddAdapterWarningModal.vue +32 -32
  16. package/components/common/adapterManager/addAdapterWarningModal/AddAdapterWarningModalNew.vue +37 -37
  17. package/components/common/adapterManager/addAdapterWarningModal/AddAdapterWarningModalOld.vue +73 -73
  18. package/components/common/adapterManager/lib/config/index.ts +19 -19
  19. package/components/common/adapterManager/noActiveAdaptersModal/NoActiveAdaptersModal.vue +31 -31
  20. package/components/common/adapterManager/noActiveAdaptersModal/NoActiveAdaptersModalNew.vue +34 -34
  21. package/components/common/adapterManager/noActiveAdaptersModal/NoActiveAdaptersModalOld.vue +57 -57
  22. package/components/common/adapterManager/noConnectedActiveAdaptersModal/NoConnectedActiveAdaptersModal.vue +31 -31
  23. package/components/common/adapterManager/noConnectedActiveAdaptersModal/NoConnectedActiveAdaptersModalNew.vue +34 -34
  24. package/components/common/adapterManager/noConnectedActiveAdaptersModal/NoConnectedActiveAdaptersModalOld.vue +57 -57
  25. package/components/common/adapterManager/ui/actions/AddAdapterButton.vue +34 -34
  26. package/components/common/adapterManager/ui/actions/RemoveAdapterButton.vue +41 -41
  27. package/components/common/adapterManager/ui/actions/VerticalSeparator.vue +10 -10
  28. package/components/common/adapterManager/ui/actions/bar/Bar.vue +2 -0
  29. package/components/common/adapterManager/ui/actions/bar/BarNew.vue +3 -2
  30. package/components/common/adapterManager/ui/actions/bar/BarOld.vue +95 -95
  31. package/components/common/adapterManager/ui/actions/moveDownAdapterButton/MoveDownAdapterButton.vue +28 -28
  32. package/components/common/adapterManager/ui/actions/moveDownAdapterButton/MoveDownAdapterButtonNew.vue +76 -76
  33. package/components/common/adapterManager/ui/actions/moveDownAdapterButton/MoveDownAdapterButtonOld.vue +33 -33
  34. package/components/common/adapterManager/ui/actions/moveUpAdapterButton/MoveUpAdapterButton.vue +28 -28
  35. package/components/common/adapterManager/ui/actions/moveUpAdapterButton/MoveUpAdapterButtonNew.vue +77 -77
  36. package/components/common/adapterManager/ui/actions/moveUpAdapterButton/MoveUpAdapterButtonOld.vue +33 -33
  37. package/components/common/adapterManager/ui/noSelectedAdapter/NoSelectedAdapter.vue +24 -24
  38. package/components/common/adapterManager/ui/noSelectedAdapter/NoSelectedAdapterNew.vue +18 -18
  39. package/components/common/adapterManager/ui/noSelectedAdapter/NoSelectedAdapterOld.vue +38 -38
  40. package/components/common/adapterManager/ui/secondTitle/SecondTitle.vue +31 -31
  41. package/components/common/adapterManager/ui/secondTitle/SecondTitleNew.vue +51 -51
  42. package/components/common/adapterManager/ui/secondTitle/SecondTitleOld.vue +35 -35
  43. package/components/common/adapterManager/ui/table/Table.vue +88 -88
  44. package/components/common/adapterManager/ui/table/TableNew.vue +137 -137
  45. package/components/common/adapterManager/ui/table/TableOld.vue +141 -141
  46. package/components/common/adapterManager/ui/table/adapters/Adapters.vue +44 -44
  47. package/components/common/adapterManager/ui/table/adapters/AdaptersNew.vue +187 -187
  48. package/components/common/adapterManager/ui/table/adapters/AdaptersOld.vue +87 -87
  49. package/components/common/adapterManager/ui/table/header/Header.vue +57 -57
  50. package/components/common/adapterManager/ui/table/header/HeaderNew.vue +81 -81
  51. package/components/common/adapterManager/ui/table/header/HeaderOld.vue +79 -79
  52. package/components/common/adapterManager/ui/table/lib/models/types.ts +1 -1
  53. package/components/common/diagramMain/Diagram.vue +459 -459
  54. package/components/common/diagramMain/DiagramMain.vue +929 -929
  55. package/components/common/diagramMain/adapter/Adapter.vue +123 -123
  56. package/components/common/diagramMain/adapter/AdapterItem.vue +438 -438
  57. package/components/common/diagramMain/adapter/AdapterItems.vue +61 -61
  58. package/components/common/diagramMain/adapter/Contents.vue +212 -212
  59. package/components/common/diagramMain/adapter/Lines.vue +81 -81
  60. package/components/common/diagramMain/adapter/block/Block.vue +27 -27
  61. package/components/common/diagramMain/adapter/block/BlockNew.vue +58 -58
  62. package/components/common/diagramMain/adapter/block/BlockOld.vue +50 -50
  63. package/components/common/diagramMain/adapter/secondBlock/SecondBlock.vue +27 -27
  64. package/components/common/diagramMain/adapter/secondBlock/SecondBlockNew.vue +60 -60
  65. package/components/common/diagramMain/adapter/secondBlock/SecondBlockOld.vue +51 -51
  66. package/components/common/diagramMain/header/Header.vue +49 -49
  67. package/components/common/diagramMain/header/HeaderNew.vue +155 -155
  68. package/components/common/diagramMain/header/HeaderOld.vue +234 -234
  69. package/components/common/diagramMain/highlights/Highlights.vue +151 -151
  70. package/components/common/diagramMain/highlights/HighlightsNew.vue +124 -124
  71. package/components/common/diagramMain/highlights/HighlightsOld.vue +107 -107
  72. package/components/common/diagramMain/lib/config/index.ts +81 -81
  73. package/components/common/diagramMain/lib/config/initial.ts +50 -50
  74. package/components/common/diagramMain/lib/config/positions.ts +194 -194
  75. package/components/common/diagramMain/lib/models/enums.ts +44 -44
  76. package/components/common/diagramMain/lib/models/interfaces.ts +760 -760
  77. package/components/common/diagramMain/lib/models/types.ts +21 -21
  78. package/components/common/diagramMain/lib/utils/utils.ts +331 -331
  79. package/components/common/diagramMain/modals/ManagePhysicalAdaptersModal.vue +331 -331
  80. package/components/common/diagramMain/modals/Modals.vue +483 -483
  81. package/components/common/diagramMain/modals/UnsavedChangesModal.vue +32 -0
  82. package/components/common/diagramMain/modals/editSettings/EditSettings.vue +104 -102
  83. package/components/common/diagramMain/modals/editSettings/EditSettingsNew.vue +285 -0
  84. package/components/common/diagramMain/modals/editSettings/EditSettingsOld.vue +254 -0
  85. package/components/common/diagramMain/modals/editSettings/confirmTeamingSettingsModal/ConfirmTeamingSettingsModal.vue +31 -0
  86. package/components/common/diagramMain/modals/editSettings/confirmTeamingSettingsModal/ConfirmTeamingSettingsModalNew.vue +82 -0
  87. package/components/common/diagramMain/modals/editSettings/{ConfirmTeamingSettingsModal.vue → confirmTeamingSettingsModal/ConfirmTeamingSettingsModalOld.vue} +2 -5
  88. package/components/common/diagramMain/modals/editSettings/lib/config/config.ts +15 -0
  89. package/components/common/diagramMain/modals/editSettings/lib/models/interfaces.ts +6 -0
  90. package/components/common/diagramMain/modals/editSettings/lib/utils/utils.ts +177 -0
  91. package/components/common/diagramMain/modals/editSettings/modal/EditSettingsModal.vue +137 -0
  92. package/components/common/diagramMain/modals/editSettings/modal/EditSettingsModalNew.vue +91 -0
  93. package/components/common/diagramMain/modals/editSettings/{EditSettingsModal.vue → modal/EditSettingsModalOld.vue} +12 -51
  94. package/components/common/diagramMain/modals/editSettings/tabs/networkProperties/NetworkProperties.vue +158 -0
  95. package/components/common/diagramMain/modals/editSettings/tabs/networkProperties/NetworkPropertiesNew.vue +262 -0
  96. package/components/common/diagramMain/modals/editSettings/tabs/{NetworkProperties.vue → networkProperties/NetworkPropertiesOld.vue} +12 -113
  97. package/components/common/diagramMain/modals/editSettings/tabs/port/ipvFourSettings/IpvFourSettings.vue +192 -0
  98. package/components/common/diagramMain/modals/editSettings/tabs/port/ipvFourSettings/IpvFourSettingsNew.vue +388 -0
  99. package/components/common/diagramMain/modals/editSettings/tabs/port/{IpvFourSettings.vue → ipvFourSettings/IpvFourSettingsOld.vue} +11 -152
  100. package/components/common/diagramMain/modals/editSettings/tabs/port/portProperties/PortProperties.vue +139 -0
  101. package/components/common/diagramMain/modals/editSettings/tabs/port/portProperties/PortPropertiesNew.vue +286 -0
  102. package/components/common/diagramMain/modals/editSettings/tabs/port/{PortProperties.vue → portProperties/PortPropertiesOld.vue} +12 -103
  103. package/components/common/diagramMain/modals/editSettings/tabs/security/Security.vue +209 -0
  104. package/components/common/diagramMain/modals/editSettings/tabs/security/SecurityNew.vue +233 -0
  105. package/components/common/diagramMain/modals/editSettings/tabs/{Security.vue → security/SecurityOld.vue} +25 -48
  106. package/components/common/diagramMain/modals/editSettings/tabs/switchProperties/SwitchProperties.vue +128 -0
  107. package/components/common/diagramMain/modals/editSettings/tabs/switchProperties/SwitchPropertiesNew.vue +235 -0
  108. package/components/common/diagramMain/modals/editSettings/tabs/switchProperties/SwitchPropertiesOld.vue +87 -0
  109. package/components/common/diagramMain/modals/editSettings/tabs/teamingFailover/TeamingFailover.vue +99 -0
  110. package/components/common/diagramMain/modals/editSettings/tabs/teamingFailover/TeamingFailoverNew.vue +319 -0
  111. package/components/common/diagramMain/modals/editSettings/tabs/{TeamingFailover.vue → teamingFailover/TeamingFailoverOld.vue} +11 -48
  112. package/components/common/diagramMain/modals/editSettings/tabs/trafficShaping/TrafficShaping.vue +173 -0
  113. package/components/common/diagramMain/modals/editSettings/tabs/trafficShaping/TrafficShapingNew.vue +348 -0
  114. package/components/common/diagramMain/modals/editSettings/tabs/{TrafficShaping.vue → trafficShaping/TrafficShapingOld.vue} +12 -134
  115. package/components/common/diagramMain/modals/lib/config/adapterModal.ts +147 -147
  116. package/components/common/diagramMain/modals/lib/config/diagramConfig.ts +66 -66
  117. package/components/common/diagramMain/modals/lib/config/index.ts +56 -56
  118. package/components/common/diagramMain/modals/lib/config/initial.ts +180 -180
  119. package/components/common/diagramMain/modals/lib/config/networkModal.ts +405 -405
  120. package/components/common/diagramMain/modals/lib/config/portModal.ts +253 -253
  121. package/components/common/diagramMain/modals/lib/config/switchModal.ts +245 -245
  122. package/components/common/diagramMain/modals/lib/config/vCenterModal.ts +48 -48
  123. package/components/common/diagramMain/modals/lib/config/vmKernelAdapter.ts +90 -90
  124. package/components/common/diagramMain/modals/lib/mappers/mappers.ts +88 -88
  125. package/components/common/diagramMain/modals/lib/utils/index.ts +34 -4
  126. package/components/common/diagramMain/modals/migrateVmkernelAdapter/MigrateVmkernelAdapter.vue +541 -541
  127. package/components/common/diagramMain/modals/migrateVmkernelAdapter/lib/config/steps.ts +114 -114
  128. package/components/common/diagramMain/modals/migrateVmkernelAdapter/steps/ConnectionSettings.vue +170 -170
  129. package/components/common/diagramMain/modals/migrateVmkernelAdapter/steps/SelectVmkernelAdapter.vue +159 -159
  130. package/components/common/diagramMain/modals/migrateVmkernelAdapter/steps/VmkernelAdapterReadyComplete.vue +49 -49
  131. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/common.ts +19 -19
  132. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/connectionSettings.ts +137 -137
  133. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/selectVmkernelAdapter.ts +52 -52
  134. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/validations.ts +19 -19
  135. package/components/common/diagramMain/modals/remove/RemoveModal.vue +82 -82
  136. package/components/common/diagramMain/modals/remove/RemoveModalNew.vue +106 -106
  137. package/components/common/diagramMain/modals/remove/RemoveModalOld.vue +241 -241
  138. package/components/common/diagramMain/modals/viewSettings/info/Info.vue +57 -57
  139. package/components/common/diagramMain/modals/viewSettings/info/InfoNew.vue +174 -174
  140. package/components/common/diagramMain/modals/viewSettings/info/InfoOld.vue +141 -141
  141. package/components/common/diagramMain/modals/viewSettings/viewSettings/ViewSettings.vue +45 -45
  142. package/components/common/diagramMain/modals/viewSettings/viewSettings/ViewSettingsNew.vue +323 -323
  143. package/components/common/diagramMain/modals/viewSettings/viewSettings/ViewSettingsOld.vue +203 -203
  144. package/components/common/diagramMain/modals/viewSettings/viewSettingsModal/ViewSettingsModal.vue +60 -60
  145. package/components/common/diagramMain/modals/viewSettings/viewSettingsModal/ViewSettingsModalNew.vue +50 -50
  146. package/components/common/diagramMain/modals/viewSettings/viewSettingsModal/ViewSettingsModalOld.vue +70 -70
  147. package/components/common/diagramMain/modals/viewSettings/viewSettingsModal/lib/models/interfaces.ts +48 -48
  148. package/components/common/diagramMain/network/Contents.vue +497 -497
  149. package/components/common/diagramMain/network/Lines.vue +107 -107
  150. package/components/common/diagramMain/network/Network.vue +141 -141
  151. package/components/common/diagramMain/network/block/Block.vue +37 -37
  152. package/components/common/diagramMain/network/block/BlockNew.vue +68 -68
  153. package/components/common/diagramMain/network/block/BlockOld.vue +64 -64
  154. package/components/common/diagramMain/network/noNetwork/NoNetwork.vue +12 -12
  155. package/components/common/diagramMain/network/noNetwork/NoNetworkNew.vue +89 -89
  156. package/components/common/diagramMain/network/noNetwork/NoNetworkOld.vue +61 -61
  157. package/components/common/diagramMain/network/secondBlock/SecondBlock.vue +41 -41
  158. package/components/common/diagramMain/network/secondBlock/SecondBlockNew.vue +64 -64
  159. package/components/common/diagramMain/network/secondBlock/SecondBlockOld.vue +60 -60
  160. package/components/common/diagramMain/port/Port.vue +580 -580
  161. package/components/common/diagramMain/port/Ports.vue +47 -47
  162. package/components/common/diagramMain/skeleton/Header.vue +31 -31
  163. package/components/common/diagramMain/skeleton/Switch.vue +75 -75
  164. package/components/common/diagramMain/switch/Switch.vue +180 -180
  165. package/components/common/diagramMain/switch/SwitchSelected.vue +111 -111
  166. package/components/common/modals/Rename.vue +3 -1
  167. package/components/common/monitor/advanced/table/tableOld/TableOld.vue +93 -93
  168. package/components/common/monitor/utilization/New.vue +5 -0
  169. package/components/common/monitor/utilization/Old.vue +24 -65
  170. package/components/common/monitor/utilization/Utilization.vue +14 -22
  171. package/components/common/monitor/utilization/infoBlock/InfoBlock.vue +2 -125
  172. package/components/common/monitor/utilization/infoBlock/New.vue +3 -183
  173. package/components/common/monitor/utilization/infoBlock/Old.vue +66 -71
  174. package/components/common/monitor/utilization/lib/models/enums.ts +4 -4
  175. package/components/common/monitor/utilization/lib/models/interfaces.ts +12 -14
  176. package/components/common/monitor/utilization/lib/utils/index.ts +6 -64
  177. package/components/common/vm/actions/rename/Old.vue +1 -0
  178. package/package.json +2 -2
  179. package/components/common/diagramMain/modals/editSettings/tabs/SwitchProperties.vue +0 -164
  180. package/components/common/monitor/utilization/infoBlock/progressBar/New.vue +0 -64
  181. package/components/common/monitor/utilization/infoBlock/progressBar/Old.vue +0 -65
  182. package/components/common/monitor/utilization/infoBlock/progressBar/ProgressBar.vue +0 -84
  183. package/components/common/monitor/utilization/infoBlock/progressBar/lib/models/interfaces.ts +0 -10
  184. package/components/common/monitor/utilization/lib/models/types.ts +0 -1
  185. package/components/common/monitor/utilization/new/New.vue +0 -167
  186. package/components/common/monitor/utilization/new/Portlet.vue +0 -42
  187. package/components/common/monitor/utilization/new/Skeleton.vue +0 -120
  188. package/components/common/monitor/utilization/new/lib/utils/newPortlet.ts +0 -7
@@ -1,234 +1,234 @@
1
- <template>
2
- <div class="diagram-header">
3
- <div class="diagram-header-left">
4
- <atoms-the-icon
5
- :class="[
6
- 'diagram-header__arrow-icon',
7
- {
8
- open: props.isShowDiagram,
9
- },
10
- ]"
11
- :data-id="`${props.testId}-toggle-icon`"
12
- name="angle"
13
- @click="emits('toggle-diagram')"
14
- />
15
- <a>
16
- <span>
17
- {{ localization.common.standardSwitch }}:
18
- {{ props.diagramName }}
19
- </span>
20
- </a>
21
- </div>
22
- <div v-if="props.isShowDiagram" class="diagram-header__btn-container">
23
- <span class="vertical-separator"></span>
24
- <button
25
- id="add-networking-button"
26
- v-permission="
27
- 'Networks.CreateSysx Networks.CreatePortGroup Networks.UpdateSwitch Networks.CreateSwitch'
28
- "
29
- :data-id="`${props.testId}-add-networking-button`"
30
- type="button"
31
- @click="onShowModal('add-networking', props.diagramName)"
32
- >
33
- {{ localization.common.addNetworking }}
34
- </button>
35
- <button
36
- id="switch-edit-button"
37
- v-permission="'Networks.UpdateSwitch'"
38
- :data-id="`${props.testId}-edit-button`"
39
- type="button"
40
- @click="onShowModal('switch-edit')"
41
- >
42
- {{ localization.common.edit }}
43
- </button>
44
- <button
45
- id="switch-manage-physical-adapters-button"
46
- v-permission="'Networks.UpdateSwitch'"
47
- :data-id="`${props.testId}-manage-physical-adapters-button`"
48
- type="button"
49
- @click="onShowModal('switch-manage-physical-adapters')"
50
- >
51
- {{ localization.common.managePhysicalAdapters }}
52
- </button>
53
- <div class="diagram-main-actions-dots">
54
- <atoms-collapse-nav
55
- :close-after-click="true"
56
- :items="switchMainNavigation"
57
- :test-id="`${props.testId}-actions`"
58
- popup-class="diagram-main-actions__popup"
59
- @change="onShowModal"
60
- />
61
- </div>
62
- </div>
63
- </div>
64
- <hr class="horizontal-separator" />
65
- </template>
66
-
67
- <script setup lang="ts">
68
- import type { UI_I_Localization } from '~/lib/models/interfaces'
69
- import type {
70
- UI_I_NavigationItem,
71
- UI_I_ModalsInitialData,
72
- } from '~/components/common/diagramMain/lib/models/interfaces'
73
- import type { UI_T_Project } from '~/lib/models/types'
74
- import { switchMainNavigationFunc } from '~/components/common/diagramMain/modals/lib/config'
75
-
76
- const props = withDefaults(
77
- defineProps<{
78
- isShowDiagram: boolean
79
- diagramName: string
80
- testId: string
81
- project?: UI_T_Project
82
- }>(),
83
- {
84
- project: undefined,
85
- }
86
- )
87
-
88
- const emits = defineEmits<{
89
- (event: 'toggle-diagram'): void
90
- (
91
- event: 'show-modal',
92
- modalName: string,
93
- properties?: UI_I_ModalsInitialData
94
- ): void
95
- }>()
96
-
97
- const localization = computed<UI_I_Localization>(() => useLocal())
98
-
99
- const switchMainNavigation = computed<UI_I_NavigationItem[]>(() =>
100
- switchMainNavigationFunc(localization.value, props.testId)
101
- )
102
-
103
- const onShowModal = (modalName: string, diagramName?: string) => {
104
- diagramName
105
- ? emits('show-modal', modalName, { switch_name: diagramName })
106
- : emits('show-modal', modalName)
107
- }
108
- </script>
109
-
110
- <style scoped lang="scss">
111
- :root.dark-theme {
112
- .diagram-header {
113
- &-left {
114
- a {
115
- span {
116
- color: #79c6e6;
117
-
118
- &:hover {
119
- color: #49afd9;
120
- }
121
- }
122
- }
123
- }
124
-
125
- &__btn-container {
126
- button {
127
- color: #89cbdf;
128
-
129
- &:hover {
130
- color: #57c8ea;
131
- }
132
- }
133
- }
134
- }
135
- }
136
-
137
- .diagram-header {
138
- display: flex;
139
- justify-self: flex-start;
140
- width: 100%;
141
- padding: 24px 16px 0;
142
- overflow-x: auto;
143
- overflow-y: hidden;
144
- scrollbar-width: none;
145
- -ms-overflow-style: none;
146
-
147
- &::-webkit-scrollbar {
148
- display: none;
149
- }
150
-
151
- a {
152
- color: #0072a3;
153
- cursor: pointer;
154
- font-weight: 700;
155
- user-select: none;
156
- line-height: 20px;
157
- span {
158
- font-weight: 700;
159
- white-space: nowrap;
160
- }
161
- }
162
-
163
- &-left {
164
- display: flex;
165
- flex-wrap: nowrap;
166
- color: #49afd9;
167
- }
168
-
169
- &__arrow-icon {
170
- width: 16px;
171
- min-width: 16px;
172
- height: 16px;
173
- min-height: 16px;
174
- margin-right: 4px;
175
- transform: rotate(90deg);
176
- align-self: center;
177
- fill: var(--triger-icon-color);
178
- cursor: pointer;
179
- &.open {
180
- transform: rotate(180deg);
181
- }
182
- }
183
-
184
- &__btn-container {
185
- display: flex;
186
-
187
- button {
188
- font-size: 11px;
189
- height: 24px;
190
- border: none;
191
- background: none;
192
- margin-right: 0;
193
- cursor: pointer;
194
- display: inline-block;
195
- white-space: nowrap;
196
- text-align: center;
197
- text-transform: uppercase;
198
- color: #49afd9;
199
- line-height: 20px;
200
- max-height: 16.8px;
201
- padding: 0 14px;
202
- font-weight: 500;
203
- letter-spacing: 1px;
204
-
205
- &:hover {
206
- color: #004d8a;
207
- }
208
- }
209
- }
210
- }
211
-
212
- .diagram-main-actions-dots {
213
- position: relative;
214
- transform: translate(62px, -11px);
215
- }
216
-
217
- .horizontal-separator {
218
- margin: 5px 10px 10px;
219
- border-left: 0;
220
- border-right: 0;
221
- border-color: #ddd;
222
- box-sizing: content-box;
223
- height: 0;
224
- overflow: visible;
225
- border-top: 0px solid #eee;
226
- width: 100%;
227
- }
228
-
229
- .vertical-separator {
230
- border: 1px solid #ddd;
231
- border-left: none;
232
- margin: 0 3px 0 14px;
233
- }
234
- </style>
1
+ <template>
2
+ <div class="diagram-header">
3
+ <div class="diagram-header-left">
4
+ <atoms-the-icon
5
+ :class="[
6
+ 'diagram-header__arrow-icon',
7
+ {
8
+ open: props.isShowDiagram,
9
+ },
10
+ ]"
11
+ :data-id="`${props.testId}-toggle-icon`"
12
+ name="angle"
13
+ @click="emits('toggle-diagram')"
14
+ />
15
+ <a>
16
+ <span>
17
+ {{ localization.common.standardSwitch }}:
18
+ {{ props.diagramName }}
19
+ </span>
20
+ </a>
21
+ </div>
22
+ <div v-if="props.isShowDiagram" class="diagram-header__btn-container">
23
+ <span class="vertical-separator"></span>
24
+ <button
25
+ id="add-networking-button"
26
+ v-permission="
27
+ 'Networks.CreateSysx Networks.CreatePortGroup Networks.UpdateSwitch Networks.CreateSwitch'
28
+ "
29
+ :data-id="`${props.testId}-add-networking-button`"
30
+ type="button"
31
+ @click="onShowModal('add-networking', props.diagramName)"
32
+ >
33
+ {{ localization.common.addNetworking }}
34
+ </button>
35
+ <button
36
+ id="switch-edit-button"
37
+ v-permission="'Networks.UpdateSwitch'"
38
+ :data-id="`${props.testId}-edit-button`"
39
+ type="button"
40
+ @click="onShowModal('switch-edit')"
41
+ >
42
+ {{ localization.common.edit }}
43
+ </button>
44
+ <button
45
+ id="switch-manage-physical-adapters-button"
46
+ v-permission="'Networks.UpdateSwitch'"
47
+ :data-id="`${props.testId}-manage-physical-adapters-button`"
48
+ type="button"
49
+ @click="onShowModal('switch-manage-physical-adapters')"
50
+ >
51
+ {{ localization.common.managePhysicalAdapters }}
52
+ </button>
53
+ <div class="diagram-main-actions-dots">
54
+ <atoms-collapse-nav
55
+ :close-after-click="true"
56
+ :items="switchMainNavigation"
57
+ :test-id="`${props.testId}-actions`"
58
+ popup-class="diagram-main-actions__popup"
59
+ @change="onShowModal"
60
+ />
61
+ </div>
62
+ </div>
63
+ </div>
64
+ <hr class="horizontal-separator" />
65
+ </template>
66
+
67
+ <script setup lang="ts">
68
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
69
+ import type {
70
+ UI_I_NavigationItem,
71
+ UI_I_ModalsInitialData,
72
+ } from '~/components/common/diagramMain/lib/models/interfaces'
73
+ import type { UI_T_Project } from '~/lib/models/types'
74
+ import { switchMainNavigationFunc } from '~/components/common/diagramMain/modals/lib/config'
75
+
76
+ const props = withDefaults(
77
+ defineProps<{
78
+ isShowDiagram: boolean
79
+ diagramName: string
80
+ testId: string
81
+ project?: UI_T_Project
82
+ }>(),
83
+ {
84
+ project: undefined,
85
+ }
86
+ )
87
+
88
+ const emits = defineEmits<{
89
+ (event: 'toggle-diagram'): void
90
+ (
91
+ event: 'show-modal',
92
+ modalName: string,
93
+ properties?: UI_I_ModalsInitialData
94
+ ): void
95
+ }>()
96
+
97
+ const localization = computed<UI_I_Localization>(() => useLocal())
98
+
99
+ const switchMainNavigation = computed<UI_I_NavigationItem[]>(() =>
100
+ switchMainNavigationFunc(localization.value, props.testId)
101
+ )
102
+
103
+ const onShowModal = (modalName: string, diagramName?: string) => {
104
+ diagramName
105
+ ? emits('show-modal', modalName, { switch_name: diagramName })
106
+ : emits('show-modal', modalName)
107
+ }
108
+ </script>
109
+
110
+ <style scoped lang="scss">
111
+ :root.dark-theme {
112
+ .diagram-header {
113
+ &-left {
114
+ a {
115
+ span {
116
+ color: #79c6e6;
117
+
118
+ &:hover {
119
+ color: #49afd9;
120
+ }
121
+ }
122
+ }
123
+ }
124
+
125
+ &__btn-container {
126
+ button {
127
+ color: #89cbdf;
128
+
129
+ &:hover {
130
+ color: #57c8ea;
131
+ }
132
+ }
133
+ }
134
+ }
135
+ }
136
+
137
+ .diagram-header {
138
+ display: flex;
139
+ justify-self: flex-start;
140
+ width: 100%;
141
+ padding: 24px 16px 0;
142
+ overflow-x: auto;
143
+ overflow-y: hidden;
144
+ scrollbar-width: none;
145
+ -ms-overflow-style: none;
146
+
147
+ &::-webkit-scrollbar {
148
+ display: none;
149
+ }
150
+
151
+ a {
152
+ color: #0072a3;
153
+ cursor: pointer;
154
+ font-weight: 700;
155
+ user-select: none;
156
+ line-height: 20px;
157
+ span {
158
+ font-weight: 700;
159
+ white-space: nowrap;
160
+ }
161
+ }
162
+
163
+ &-left {
164
+ display: flex;
165
+ flex-wrap: nowrap;
166
+ color: #49afd9;
167
+ }
168
+
169
+ &__arrow-icon {
170
+ width: 16px;
171
+ min-width: 16px;
172
+ height: 16px;
173
+ min-height: 16px;
174
+ margin-right: 4px;
175
+ transform: rotate(90deg);
176
+ align-self: center;
177
+ fill: var(--triger-icon-color);
178
+ cursor: pointer;
179
+ &.open {
180
+ transform: rotate(180deg);
181
+ }
182
+ }
183
+
184
+ &__btn-container {
185
+ display: flex;
186
+
187
+ button {
188
+ font-size: 11px;
189
+ height: 24px;
190
+ border: none;
191
+ background: none;
192
+ margin-right: 0;
193
+ cursor: pointer;
194
+ display: inline-block;
195
+ white-space: nowrap;
196
+ text-align: center;
197
+ text-transform: uppercase;
198
+ color: #49afd9;
199
+ line-height: 20px;
200
+ max-height: 16.8px;
201
+ padding: 0 14px;
202
+ font-weight: 500;
203
+ letter-spacing: 1px;
204
+
205
+ &:hover {
206
+ color: #004d8a;
207
+ }
208
+ }
209
+ }
210
+ }
211
+
212
+ .diagram-main-actions-dots {
213
+ position: relative;
214
+ transform: translate(62px, -11px);
215
+ }
216
+
217
+ .horizontal-separator {
218
+ margin: 5px 10px 10px;
219
+ border-left: 0;
220
+ border-right: 0;
221
+ border-color: #ddd;
222
+ box-sizing: content-box;
223
+ height: 0;
224
+ overflow: visible;
225
+ border-top: 0px solid #eee;
226
+ width: 100%;
227
+ }
228
+
229
+ .vertical-separator {
230
+ border: 1px solid #ddd;
231
+ border-left: none;
232
+ margin: 0 3px 0 14px;
233
+ }
234
+ </style>