bfg-common 1.6.64 → 1.6.66

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/assets/localization/local_ru.json +5 -5
  2. package/components/atoms/dropdown/dropdown/Dropdown.vue +10 -8
  3. package/components/atoms/dropdown/dropdown/lib/models/interfaces.ts +1 -0
  4. package/components/common/adapterManager/AdapterManager.vue +473 -473
  5. package/components/common/adapterManager/AdapterManagerOld.vue +498 -498
  6. package/components/common/adapterManager/addAdapterModal/AddAdapterModal.vue +70 -70
  7. package/components/common/adapterManager/addAdapterModal/AddAdapterModalNew.vue +110 -110
  8. package/components/common/adapterManager/addAdapterModal/AddAdapterModalOld.vue +531 -531
  9. package/components/common/adapterManager/addAdapterWarningModal/AddAdapterWarningModal.vue +32 -32
  10. package/components/common/adapterManager/addAdapterWarningModal/AddAdapterWarningModalNew.vue +37 -37
  11. package/components/common/adapterManager/addAdapterWarningModal/AddAdapterWarningModalOld.vue +73 -73
  12. package/components/common/adapterManager/lib/config/index.ts +19 -19
  13. package/components/common/adapterManager/noActiveAdaptersModal/NoActiveAdaptersModal.vue +31 -31
  14. package/components/common/adapterManager/noActiveAdaptersModal/NoActiveAdaptersModalNew.vue +34 -34
  15. package/components/common/adapterManager/noActiveAdaptersModal/NoActiveAdaptersModalOld.vue +57 -57
  16. package/components/common/adapterManager/noConnectedActiveAdaptersModal/NoConnectedActiveAdaptersModal.vue +31 -31
  17. package/components/common/adapterManager/noConnectedActiveAdaptersModal/NoConnectedActiveAdaptersModalNew.vue +34 -34
  18. package/components/common/adapterManager/noConnectedActiveAdaptersModal/NoConnectedActiveAdaptersModalOld.vue +57 -57
  19. package/components/common/adapterManager/ui/actions/AddAdapterButton.vue +34 -34
  20. package/components/common/adapterManager/ui/actions/RemoveAdapterButton.vue +41 -41
  21. package/components/common/adapterManager/ui/actions/VerticalSeparator.vue +10 -10
  22. package/components/common/adapterManager/ui/actions/bar/BarOld.vue +95 -95
  23. package/components/common/adapterManager/ui/actions/moveDownAdapterButton/MoveDownAdapterButton.vue +28 -28
  24. package/components/common/adapterManager/ui/actions/moveDownAdapterButton/MoveDownAdapterButtonNew.vue +76 -76
  25. package/components/common/adapterManager/ui/actions/moveDownAdapterButton/MoveDownAdapterButtonOld.vue +33 -33
  26. package/components/common/adapterManager/ui/actions/moveUpAdapterButton/MoveUpAdapterButton.vue +28 -28
  27. package/components/common/adapterManager/ui/actions/moveUpAdapterButton/MoveUpAdapterButtonNew.vue +77 -77
  28. package/components/common/adapterManager/ui/actions/moveUpAdapterButton/MoveUpAdapterButtonOld.vue +33 -33
  29. package/components/common/adapterManager/ui/noSelectedAdapter/NoSelectedAdapter.vue +24 -24
  30. package/components/common/adapterManager/ui/noSelectedAdapter/NoSelectedAdapterNew.vue +18 -18
  31. package/components/common/adapterManager/ui/noSelectedAdapter/NoSelectedAdapterOld.vue +38 -38
  32. package/components/common/adapterManager/ui/secondTitle/SecondTitle.vue +31 -31
  33. package/components/common/adapterManager/ui/secondTitle/SecondTitleNew.vue +51 -51
  34. package/components/common/adapterManager/ui/secondTitle/SecondTitleOld.vue +35 -35
  35. package/components/common/adapterManager/ui/table/Table.vue +88 -88
  36. package/components/common/adapterManager/ui/table/TableNew.vue +137 -137
  37. package/components/common/adapterManager/ui/table/TableOld.vue +141 -141
  38. package/components/common/adapterManager/ui/table/adapters/Adapters.vue +44 -44
  39. package/components/common/adapterManager/ui/table/adapters/AdaptersNew.vue +187 -187
  40. package/components/common/adapterManager/ui/table/adapters/AdaptersOld.vue +87 -87
  41. package/components/common/adapterManager/ui/table/header/Header.vue +57 -57
  42. package/components/common/adapterManager/ui/table/header/HeaderNew.vue +81 -81
  43. package/components/common/adapterManager/ui/table/header/HeaderOld.vue +79 -79
  44. package/components/common/adapterManager/ui/table/lib/models/types.ts +1 -1
  45. package/components/common/diagramMain/Diagram.vue +459 -459
  46. package/components/common/diagramMain/DiagramMain.vue +929 -929
  47. package/components/common/diagramMain/adapter/Adapter.vue +123 -123
  48. package/components/common/diagramMain/adapter/AdapterItem.vue +438 -438
  49. package/components/common/diagramMain/adapter/AdapterItems.vue +61 -61
  50. package/components/common/diagramMain/adapter/Contents.vue +212 -212
  51. package/components/common/diagramMain/adapter/Lines.vue +81 -81
  52. package/components/common/diagramMain/adapter/block/Block.vue +27 -27
  53. package/components/common/diagramMain/adapter/block/BlockNew.vue +58 -58
  54. package/components/common/diagramMain/adapter/block/BlockOld.vue +50 -50
  55. package/components/common/diagramMain/adapter/secondBlock/SecondBlock.vue +27 -27
  56. package/components/common/diagramMain/adapter/secondBlock/SecondBlockNew.vue +60 -60
  57. package/components/common/diagramMain/adapter/secondBlock/SecondBlockOld.vue +51 -51
  58. package/components/common/diagramMain/header/Header.vue +49 -49
  59. package/components/common/diagramMain/header/HeaderNew.vue +155 -155
  60. package/components/common/diagramMain/header/HeaderOld.vue +234 -234
  61. package/components/common/diagramMain/highlights/Highlights.vue +151 -151
  62. package/components/common/diagramMain/highlights/HighlightsNew.vue +124 -124
  63. package/components/common/diagramMain/highlights/HighlightsOld.vue +107 -107
  64. package/components/common/diagramMain/lib/config/index.ts +81 -81
  65. package/components/common/diagramMain/lib/config/initial.ts +50 -50
  66. package/components/common/diagramMain/lib/config/positions.ts +194 -194
  67. package/components/common/diagramMain/lib/models/enums.ts +44 -44
  68. package/components/common/diagramMain/lib/models/interfaces.ts +760 -760
  69. package/components/common/diagramMain/lib/models/types.ts +21 -21
  70. package/components/common/diagramMain/lib/utils/utils.ts +331 -331
  71. package/components/common/diagramMain/modals/ManagePhysicalAdaptersModal.vue +331 -331
  72. package/components/common/diagramMain/modals/Modals.vue +483 -483
  73. package/components/common/diagramMain/modals/lib/config/adapterModal.ts +147 -147
  74. package/components/common/diagramMain/modals/lib/config/diagramConfig.ts +66 -66
  75. package/components/common/diagramMain/modals/lib/config/index.ts +56 -56
  76. package/components/common/diagramMain/modals/lib/config/initial.ts +180 -180
  77. package/components/common/diagramMain/modals/lib/config/networkModal.ts +405 -405
  78. package/components/common/diagramMain/modals/lib/config/portModal.ts +253 -253
  79. package/components/common/diagramMain/modals/lib/config/switchModal.ts +245 -245
  80. package/components/common/diagramMain/modals/lib/config/vCenterModal.ts +48 -48
  81. package/components/common/diagramMain/modals/lib/config/vmKernelAdapter.ts +90 -90
  82. package/components/common/diagramMain/modals/lib/mappers/mappers.ts +88 -88
  83. package/components/common/diagramMain/modals/migrateVmkernelAdapter/MigrateVmkernelAdapter.vue +541 -541
  84. package/components/common/diagramMain/modals/migrateVmkernelAdapter/lib/config/steps.ts +114 -114
  85. package/components/common/diagramMain/modals/migrateVmkernelAdapter/steps/ConnectionSettings.vue +170 -170
  86. package/components/common/diagramMain/modals/migrateVmkernelAdapter/steps/SelectVmkernelAdapter.vue +159 -159
  87. package/components/common/diagramMain/modals/migrateVmkernelAdapter/steps/VmkernelAdapterReadyComplete.vue +49 -49
  88. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/common.ts +19 -19
  89. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/connectionSettings.ts +137 -137
  90. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/selectVmkernelAdapter.ts +52 -52
  91. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/validations.ts +19 -19
  92. package/components/common/diagramMain/modals/remove/RemoveModal.vue +82 -82
  93. package/components/common/diagramMain/modals/remove/RemoveModalNew.vue +106 -106
  94. package/components/common/diagramMain/modals/remove/RemoveModalOld.vue +241 -241
  95. package/components/common/diagramMain/modals/viewSettings/info/Info.vue +57 -57
  96. package/components/common/diagramMain/modals/viewSettings/info/InfoNew.vue +174 -174
  97. package/components/common/diagramMain/modals/viewSettings/info/InfoOld.vue +141 -141
  98. package/components/common/diagramMain/modals/viewSettings/viewSettings/ViewSettings.vue +45 -45
  99. package/components/common/diagramMain/modals/viewSettings/viewSettings/ViewSettingsNew.vue +323 -323
  100. package/components/common/diagramMain/modals/viewSettings/viewSettings/ViewSettingsOld.vue +203 -203
  101. package/components/common/diagramMain/modals/viewSettings/viewSettingsModal/ViewSettingsModal.vue +60 -60
  102. package/components/common/diagramMain/modals/viewSettings/viewSettingsModal/ViewSettingsModalNew.vue +50 -50
  103. package/components/common/diagramMain/modals/viewSettings/viewSettingsModal/ViewSettingsModalOld.vue +70 -70
  104. package/components/common/diagramMain/modals/viewSettings/viewSettingsModal/lib/models/interfaces.ts +48 -48
  105. package/components/common/diagramMain/network/Contents.vue +497 -497
  106. package/components/common/diagramMain/network/Lines.vue +107 -107
  107. package/components/common/diagramMain/network/Network.vue +141 -141
  108. package/components/common/diagramMain/network/block/Block.vue +37 -37
  109. package/components/common/diagramMain/network/block/BlockNew.vue +68 -68
  110. package/components/common/diagramMain/network/block/BlockOld.vue +64 -64
  111. package/components/common/diagramMain/network/noNetwork/NoNetwork.vue +12 -12
  112. package/components/common/diagramMain/network/noNetwork/NoNetworkNew.vue +89 -89
  113. package/components/common/diagramMain/network/noNetwork/NoNetworkOld.vue +61 -61
  114. package/components/common/diagramMain/network/secondBlock/SecondBlock.vue +41 -41
  115. package/components/common/diagramMain/network/secondBlock/SecondBlockNew.vue +64 -64
  116. package/components/common/diagramMain/network/secondBlock/SecondBlockOld.vue +60 -60
  117. package/components/common/diagramMain/port/Port.vue +580 -580
  118. package/components/common/diagramMain/port/Ports.vue +47 -47
  119. package/components/common/diagramMain/skeleton/Header.vue +31 -31
  120. package/components/common/diagramMain/skeleton/Switch.vue +75 -75
  121. package/components/common/diagramMain/switch/Switch.vue +180 -180
  122. package/components/common/diagramMain/switch/SwitchSelected.vue +111 -111
  123. package/components/common/modals/Rename.vue +3 -1
  124. package/components/common/monitor/advanced/table/tableOld/TableOld.vue +93 -93
  125. package/components/common/monitor/utilization/Old.vue +65 -24
  126. package/components/common/monitor/utilization/Utilization.vue +22 -14
  127. package/components/common/monitor/utilization/infoBlock/InfoBlock.vue +125 -2
  128. package/components/common/monitor/utilization/infoBlock/New.vue +183 -3
  129. package/components/common/monitor/utilization/infoBlock/Old.vue +71 -66
  130. package/components/common/monitor/utilization/infoBlock/progressBar/New.vue +64 -0
  131. package/components/common/monitor/utilization/infoBlock/progressBar/Old.vue +65 -0
  132. package/components/common/monitor/utilization/infoBlock/progressBar/ProgressBar.vue +84 -0
  133. package/components/common/monitor/utilization/infoBlock/progressBar/lib/models/interfaces.ts +10 -0
  134. package/components/common/monitor/utilization/lib/models/enums.ts +4 -4
  135. package/components/common/monitor/utilization/lib/models/interfaces.ts +14 -12
  136. package/components/common/monitor/utilization/lib/models/types.ts +1 -0
  137. package/components/common/monitor/utilization/lib/utils/index.ts +64 -6
  138. package/components/common/monitor/utilization/new/New.vue +195 -0
  139. package/components/common/monitor/utilization/new/Portlet.vue +42 -0
  140. package/components/common/monitor/utilization/new/Skeleton.vue +120 -0
  141. package/components/common/monitor/utilization/new/lib/utils/newPortlet.ts +7 -0
  142. package/components/common/vm/actions/rename/Old.vue +1 -0
  143. package/package.json +1 -1
  144. package/components/common/monitor/utilization/New.vue +0 -5
@@ -1,47 +1,47 @@
1
- <template>
2
- <g>
3
- <template v-if="props.network.toggle">
4
- <template v-for="port in props.network.ports" :key="port.id">
5
- <common-diagram-main-port
6
- :network="props.network"
7
- :port="port"
8
- :is-dark-mode="props.isDarkMode"
9
- :selected-port="props.selectedPort"
10
- :selected-adapter="props.selectedAdapter"
11
- @select-port="onSelectPort"
12
- @show-modal="onShowModal"
13
- />
14
- </template>
15
- </template>
16
- </g>
17
- </template>
18
-
19
- <script setup lang="ts">
20
- import type {
21
- UI_I_ModalsInitialData,
22
- UI_I_NetworkFullWithPositions,
23
- UI_I_SelectedAdapter,
24
- UI_I_SelectedPort,
25
- } from '~/components/common/diagramMain/lib/models/interfaces'
26
-
27
- const props = defineProps<{
28
- network: UI_I_NetworkFullWithPositions
29
- selectedPort: UI_I_SelectedPort
30
- selectedAdapter: UI_I_SelectedAdapter
31
- isDarkMode: boolean
32
- }>()
33
-
34
- const emits = defineEmits<{
35
- (event: 'select-port', networkId: string, portId: string): void
36
- (
37
- event: 'show-modal',
38
- value: string,
39
- properties?: UI_I_ModalsInitialData
40
- ): void
41
- }>()
42
-
43
- const onSelectPort = (networkId: string, portId: string) =>
44
- emits('select-port', networkId, portId)
45
- const onShowModal = (value: string, properties?: UI_I_ModalsInitialData) =>
46
- emits('show-modal', value, properties)
47
- </script>
1
+ <template>
2
+ <g>
3
+ <template v-if="props.network.toggle">
4
+ <template v-for="port in props.network.ports" :key="port.id">
5
+ <common-diagram-main-port
6
+ :network="props.network"
7
+ :port="port"
8
+ :is-dark-mode="props.isDarkMode"
9
+ :selected-port="props.selectedPort"
10
+ :selected-adapter="props.selectedAdapter"
11
+ @select-port="onSelectPort"
12
+ @show-modal="onShowModal"
13
+ />
14
+ </template>
15
+ </template>
16
+ </g>
17
+ </template>
18
+
19
+ <script setup lang="ts">
20
+ import type {
21
+ UI_I_ModalsInitialData,
22
+ UI_I_NetworkFullWithPositions,
23
+ UI_I_SelectedAdapter,
24
+ UI_I_SelectedPort,
25
+ } from '~/components/common/diagramMain/lib/models/interfaces'
26
+
27
+ const props = defineProps<{
28
+ network: UI_I_NetworkFullWithPositions
29
+ selectedPort: UI_I_SelectedPort
30
+ selectedAdapter: UI_I_SelectedAdapter
31
+ isDarkMode: boolean
32
+ }>()
33
+
34
+ const emits = defineEmits<{
35
+ (event: 'select-port', networkId: string, portId: string): void
36
+ (
37
+ event: 'show-modal',
38
+ value: string,
39
+ properties?: UI_I_ModalsInitialData
40
+ ): void
41
+ }>()
42
+
43
+ const onSelectPort = (networkId: string, portId: string) =>
44
+ emits('select-port', networkId, portId)
45
+ const onShowModal = (value: string, properties?: UI_I_ModalsInitialData) =>
46
+ emits('show-modal', value, properties)
47
+ </script>
@@ -1,31 +1,31 @@
1
- <template>
2
- <div class="diagram-header-skeleton">
3
- <div class="diagram-header-skeleton-title">
4
- <ui-skeleton-item width="160" height="22" />
5
- </div>
6
- <div class="diagram-header-skeleton-buttons">
7
- <ui-skeleton-item width="112" height="36" border-radius="8" />
8
- <ui-skeleton-item width="160" height="36" border-radius="8" />
9
- </div>
10
- </div>
11
- </template>
12
-
13
- <script setup lang="ts"></script>
14
-
15
- <style scoped lang="scss">
16
- .diagram-header-skeleton {
17
- padding: 16px;
18
- display: flex;
19
- align-items: flex-start;
20
- justify-content: space-between;
21
- flex-wrap: wrap;
22
- row-gap: 24px;
23
- column-gap: 24px;
24
-
25
- &-buttons {
26
- display: flex;
27
- column-gap: 16px;
28
- margin-left: auto;
29
- }
30
- }
31
- </style>
1
+ <template>
2
+ <div class="diagram-header-skeleton">
3
+ <div class="diagram-header-skeleton-title">
4
+ <ui-skeleton-item width="160" height="22" />
5
+ </div>
6
+ <div class="diagram-header-skeleton-buttons">
7
+ <ui-skeleton-item width="112" height="36" border-radius="8" />
8
+ <ui-skeleton-item width="160" height="36" border-radius="8" />
9
+ </div>
10
+ </div>
11
+ </template>
12
+
13
+ <script setup lang="ts"></script>
14
+
15
+ <style scoped lang="scss">
16
+ .diagram-header-skeleton {
17
+ padding: 16px;
18
+ display: flex;
19
+ align-items: flex-start;
20
+ justify-content: space-between;
21
+ flex-wrap: wrap;
22
+ row-gap: 24px;
23
+ column-gap: 24px;
24
+
25
+ &-buttons {
26
+ display: flex;
27
+ column-gap: 16px;
28
+ margin-left: auto;
29
+ }
30
+ }
31
+ </style>
@@ -1,75 +1,75 @@
1
- <template>
2
- <div class="diagram-skeleton">
3
- <div class="diagram-skeleton-item-header">
4
- <div class="diagram-skeleton-item-header-icon">
5
- <ui-icon
6
- class="diagram-skeleton-item-header-icon-arrow"
7
- name="arrow"
8
- width="20"
9
- height="20"
10
- />
11
- </div>
12
- <ui-skeleton-item width="160" height="20" />
13
- <div class="diagram-skeleton-item-header-line"></div>
14
- <ui-skeleton-item width="400" height="20" />
15
- </div>
16
- <div class="diagram-skeleton-container">
17
- <ui-skeleton-switch width="712" />
18
- </div>
19
- <div class="diagram-skeleton-footer">
20
- <ui-skeleton-item width="80" height="20" />
21
- </div>
22
- </div>
23
- </template>
24
-
25
- <script setup lang="ts"></script>
26
-
27
- <style scoped lang="scss">
28
- .diagram-skeleton {
29
- margin: 0 16px 16px;
30
- border-radius: 8px;
31
- background: var(--diagram-container-bg);
32
- box-shadow: 0 1px 4px 0 #00000014;
33
- padding: 16px;
34
- overflow-clip-margin: content-box;
35
- overflow: clip;
36
-
37
- &-item-header {
38
- display: flex;
39
- column-gap: 16px;
40
-
41
- &-icon {
42
- width: 20px;
43
- height: 20px;
44
- color: var(--select-arrow);
45
-
46
- &-arrow {
47
- transform: rotate(180deg);
48
- margin-right: -4px;
49
- }
50
- }
51
-
52
- &-line {
53
- height: 20px;
54
- border-left: 1px solid var(--horizontal-line);
55
- }
56
- }
57
-
58
- &-container {
59
- display: flex;
60
- justify-content: center;
61
- min-width: 759px;
62
- padding: 48px 23.5px 24px 23.5px;
63
-
64
- //:deep(svg) {
65
- // padding: 22px 14.5px;
66
- //}
67
- }
68
-
69
- &-footer {
70
- padding-top: 16px;
71
- display: flex;
72
- justify-content: flex-end;
73
- }
74
- }
75
- </style>
1
+ <template>
2
+ <div class="diagram-skeleton">
3
+ <div class="diagram-skeleton-item-header">
4
+ <div class="diagram-skeleton-item-header-icon">
5
+ <ui-icon
6
+ class="diagram-skeleton-item-header-icon-arrow"
7
+ name="arrow"
8
+ width="20"
9
+ height="20"
10
+ />
11
+ </div>
12
+ <ui-skeleton-item width="160" height="20" />
13
+ <div class="diagram-skeleton-item-header-line"></div>
14
+ <ui-skeleton-item width="400" height="20" />
15
+ </div>
16
+ <div class="diagram-skeleton-container">
17
+ <ui-skeleton-switch width="712" />
18
+ </div>
19
+ <div class="diagram-skeleton-footer">
20
+ <ui-skeleton-item width="80" height="20" />
21
+ </div>
22
+ </div>
23
+ </template>
24
+
25
+ <script setup lang="ts"></script>
26
+
27
+ <style scoped lang="scss">
28
+ .diagram-skeleton {
29
+ margin: 0 16px 16px;
30
+ border-radius: 8px;
31
+ background: var(--diagram-container-bg);
32
+ box-shadow: 0 1px 4px 0 #00000014;
33
+ padding: 16px;
34
+ overflow-clip-margin: content-box;
35
+ overflow: clip;
36
+
37
+ &-item-header {
38
+ display: flex;
39
+ column-gap: 16px;
40
+
41
+ &-icon {
42
+ width: 20px;
43
+ height: 20px;
44
+ color: var(--select-arrow);
45
+
46
+ &-arrow {
47
+ transform: rotate(180deg);
48
+ margin-right: -4px;
49
+ }
50
+ }
51
+
52
+ &-line {
53
+ height: 20px;
54
+ border-left: 1px solid var(--horizontal-line);
55
+ }
56
+ }
57
+
58
+ &-container {
59
+ display: flex;
60
+ justify-content: center;
61
+ min-width: 759px;
62
+ padding: 48px 23.5px 24px 23.5px;
63
+
64
+ //:deep(svg) {
65
+ // padding: 22px 14.5px;
66
+ //}
67
+ }
68
+
69
+ &-footer {
70
+ padding-top: 16px;
71
+ display: flex;
72
+ justify-content: flex-end;
73
+ }
74
+ }
75
+ </style>
@@ -1,180 +1,180 @@
1
- <template>
2
- <g>
3
- <rect
4
- :width="positions.rw"
5
- :height="props.mainRectHeight"
6
- :x="positions.rx"
7
- :y="UI_E_PositionsY.DIAGRAM_TOP"
8
- :rx="positions.radius"
9
- :ry="positions.radius"
10
- shape-rendering="geometricprecision"
11
- class="central-panel"
12
- />
13
- <g
14
- v-if="props.isVisibleLine && !!props.networksCount"
15
- data-title="switch-main-lines"
16
- >
17
- <g v-if="isNewView">
18
- <path :d="d1" class="connection-line" />
19
- <path :d="d2" class="connection-line" />
20
- </g>
21
- <line
22
- v-else
23
- :x1="positions.lx"
24
- :y1="props.mainSwitchLine.y1"
25
- :x2="positions.lx"
26
- :y2="props.mainSwitchLine.y2"
27
- shape-rendering="geometricprecision"
28
- class="connection-line"
29
- />
30
- <common-diagram-main-highlights
31
- data-title="switch-selected-main-line"
32
- type="line-vertical-orange"
33
- :d1="d1"
34
- :d2="d2"
35
- :x="positions.lx"
36
- :y="props.mainSwitchLine.y1"
37
- :x2="positions.lx"
38
- :y2="props.mainSwitchLine.y2"
39
- :hide="!props.selectedMainLine"
40
- />
41
- <g v-if="isNewView">
42
- <path :d="d1" class="invisible-line main-line__handler" />
43
- <path :d="d2" class="invisible-line main-line__handler" />
44
- </g>
45
- <line
46
- v-else
47
- :x1="positions.lx"
48
- :y1="props.mainSwitchLine.y1"
49
- :x2="positions.lx"
50
- :y2="props.mainSwitchLine.y2"
51
- shape-rendering="geometricprecision"
52
- class="invisible-line main-line__handler"
53
- />
54
- </g>
55
- </g>
56
- </template>
57
-
58
- <script setup lang="ts">
59
- import type { UI_I_ArbitraryObject } from '~/lib/models/interfaces'
60
- import type {
61
- UI_I_SwitchLine,
62
- UI_I_NetworksWithPositions,
63
- UI_I_FirstAndLastNetworkLinesY,
64
- } from '~/components/common/diagramMain/lib/models/interfaces'
65
- import { UI_E_PositionsY } from '~/components/common/diagramMain/lib/models/enums'
66
- import { switchPositionsFunc } from '~/components/common/diagramMain/lib/config'
67
-
68
- const props = defineProps<{
69
- mainRectHeight: number
70
- mainSwitchLine: UI_I_SwitchLine
71
- selectedMainLine: boolean
72
- isVisibleLine: boolean
73
- networksCount: number
74
- firstAndLastNetworkLinesY: UI_I_FirstAndLastNetworkLinesY
75
- adapterLineY: number
76
- networksWithPositions: UI_I_NetworksWithPositions[]
77
- }>()
78
-
79
- const { $store }: any = useNuxtApp()
80
-
81
- const isNewView = computed<boolean>(() => $store.getters['main/getIsNewView'])
82
-
83
- const positions = computed<UI_I_ArbitraryObject<number>>(() =>
84
- switchPositionsFunc(isNewView.value)
85
- )
86
-
87
- const height = computed<number>(() =>
88
- Math.abs(
89
- Math.abs(props.mainSwitchLine.y1) - Math.abs(props.mainSwitchLine.y2)
90
- )
91
- )
92
-
93
- const difference1 = computed<number>(() =>
94
- Math.abs(props.firstAndLastNetworkLinesY.lastNetworkY - props.adapterLineY)
95
- )
96
-
97
- const difference2 = computed<number>(() =>
98
- Math.abs(props.adapterLineY - props.firstAndLastNetworkLinesY.firstNetworkY)
99
- )
100
-
101
- const radius1 = computed<number>(() =>
102
- difference1.value < 4 ? difference1.value / 2 : 2
103
- )
104
- const radius2 = computed<number>(() =>
105
- difference2.value < 4 ? difference2.value / 2 : 2
106
- )
107
- const radius = computed<number>(() =>
108
- firstLineIsNetwork.value ? radius2.value : radius1.value
109
- )
110
-
111
- const firstLineIsNetwork = computed<boolean>(
112
- () => props.firstAndLastNetworkLinesY.firstNetworkY < props.adapterLineY
113
- )
114
-
115
- const isNetworkHigherThenAdapter = computed<boolean>(
116
- () =>
117
- props.firstAndLastNetworkLinesY.firstNetworkY ===
118
- props.firstAndLastNetworkLinesY.lastNetworkY && firstLineIsNetwork.value
119
- )
120
-
121
- const d1 = computed<string>(
122
- () =>
123
- `M ${positions.value.lx} ${props.mainSwitchLine.y2 - radius.value} l 0 -${
124
- height.value - 2 * radius.value
125
- } q 0,-${radius.value} ${firstLineIsNetwork.value ? '-2' : '2'},-${
126
- radius.value
127
- }`
128
- )
129
-
130
- const d2 = computed<string>(
131
- () =>
132
- `M ${positions.value.lx} ${props.mainSwitchLine.y1 + radius1.value} l 0 ${
133
- height.value - 2 * radius1.value
134
- } q 0,${radius1.value} ${isNetworkHigherThenAdapter.value ? '2' : '-2'},${
135
- radius1.value
136
- }`
137
- )
138
- </script>
139
-
140
- <style scoped lang="scss">
141
- :root.dark-theme {
142
- .central-panel {
143
- fill: #314351;
144
- stroke: #adbbc4;
145
- }
146
-
147
- .connection-line {
148
- stroke: #adbbc4;
149
- fill: none;
150
- }
151
- }
152
-
153
- :root.is-new-view {
154
- .connection-line {
155
- stroke: var(--diagram-connect-line);
156
- }
157
-
158
- .central-panel {
159
- fill: var(--diagram-central-panel-bg);
160
- stroke: var(--diagram-block-stroke);
161
- }
162
- }
163
-
164
- .central-panel {
165
- fill: #f2f2f2;
166
- stroke: #888;
167
- }
168
-
169
- .invisible-line {
170
- cursor: pointer;
171
- stroke: #000;
172
- stroke-opacity: 0;
173
- stroke-width: 10px;
174
- fill: none;
175
- }
176
- .connection-line {
177
- stroke: #888;
178
- fill: none;
179
- }
180
- </style>
1
+ <template>
2
+ <g>
3
+ <rect
4
+ :width="positions.rw"
5
+ :height="props.mainRectHeight"
6
+ :x="positions.rx"
7
+ :y="UI_E_PositionsY.DIAGRAM_TOP"
8
+ :rx="positions.radius"
9
+ :ry="positions.radius"
10
+ shape-rendering="geometricprecision"
11
+ class="central-panel"
12
+ />
13
+ <g
14
+ v-if="props.isVisibleLine && !!props.networksCount"
15
+ data-title="switch-main-lines"
16
+ >
17
+ <g v-if="isNewView">
18
+ <path :d="d1" class="connection-line" />
19
+ <path :d="d2" class="connection-line" />
20
+ </g>
21
+ <line
22
+ v-else
23
+ :x1="positions.lx"
24
+ :y1="props.mainSwitchLine.y1"
25
+ :x2="positions.lx"
26
+ :y2="props.mainSwitchLine.y2"
27
+ shape-rendering="geometricprecision"
28
+ class="connection-line"
29
+ />
30
+ <common-diagram-main-highlights
31
+ data-title="switch-selected-main-line"
32
+ type="line-vertical-orange"
33
+ :d1="d1"
34
+ :d2="d2"
35
+ :x="positions.lx"
36
+ :y="props.mainSwitchLine.y1"
37
+ :x2="positions.lx"
38
+ :y2="props.mainSwitchLine.y2"
39
+ :hide="!props.selectedMainLine"
40
+ />
41
+ <g v-if="isNewView">
42
+ <path :d="d1" class="invisible-line main-line__handler" />
43
+ <path :d="d2" class="invisible-line main-line__handler" />
44
+ </g>
45
+ <line
46
+ v-else
47
+ :x1="positions.lx"
48
+ :y1="props.mainSwitchLine.y1"
49
+ :x2="positions.lx"
50
+ :y2="props.mainSwitchLine.y2"
51
+ shape-rendering="geometricprecision"
52
+ class="invisible-line main-line__handler"
53
+ />
54
+ </g>
55
+ </g>
56
+ </template>
57
+
58
+ <script setup lang="ts">
59
+ import type { UI_I_ArbitraryObject } from '~/lib/models/interfaces'
60
+ import type {
61
+ UI_I_SwitchLine,
62
+ UI_I_NetworksWithPositions,
63
+ UI_I_FirstAndLastNetworkLinesY,
64
+ } from '~/components/common/diagramMain/lib/models/interfaces'
65
+ import { UI_E_PositionsY } from '~/components/common/diagramMain/lib/models/enums'
66
+ import { switchPositionsFunc } from '~/components/common/diagramMain/lib/config'
67
+
68
+ const props = defineProps<{
69
+ mainRectHeight: number
70
+ mainSwitchLine: UI_I_SwitchLine
71
+ selectedMainLine: boolean
72
+ isVisibleLine: boolean
73
+ networksCount: number
74
+ firstAndLastNetworkLinesY: UI_I_FirstAndLastNetworkLinesY
75
+ adapterLineY: number
76
+ networksWithPositions: UI_I_NetworksWithPositions[]
77
+ }>()
78
+
79
+ const { $store }: any = useNuxtApp()
80
+
81
+ const isNewView = computed<boolean>(() => $store.getters['main/getIsNewView'])
82
+
83
+ const positions = computed<UI_I_ArbitraryObject<number>>(() =>
84
+ switchPositionsFunc(isNewView.value)
85
+ )
86
+
87
+ const height = computed<number>(() =>
88
+ Math.abs(
89
+ Math.abs(props.mainSwitchLine.y1) - Math.abs(props.mainSwitchLine.y2)
90
+ )
91
+ )
92
+
93
+ const difference1 = computed<number>(() =>
94
+ Math.abs(props.firstAndLastNetworkLinesY.lastNetworkY - props.adapterLineY)
95
+ )
96
+
97
+ const difference2 = computed<number>(() =>
98
+ Math.abs(props.adapterLineY - props.firstAndLastNetworkLinesY.firstNetworkY)
99
+ )
100
+
101
+ const radius1 = computed<number>(() =>
102
+ difference1.value < 4 ? difference1.value / 2 : 2
103
+ )
104
+ const radius2 = computed<number>(() =>
105
+ difference2.value < 4 ? difference2.value / 2 : 2
106
+ )
107
+ const radius = computed<number>(() =>
108
+ firstLineIsNetwork.value ? radius2.value : radius1.value
109
+ )
110
+
111
+ const firstLineIsNetwork = computed<boolean>(
112
+ () => props.firstAndLastNetworkLinesY.firstNetworkY < props.adapterLineY
113
+ )
114
+
115
+ const isNetworkHigherThenAdapter = computed<boolean>(
116
+ () =>
117
+ props.firstAndLastNetworkLinesY.firstNetworkY ===
118
+ props.firstAndLastNetworkLinesY.lastNetworkY && firstLineIsNetwork.value
119
+ )
120
+
121
+ const d1 = computed<string>(
122
+ () =>
123
+ `M ${positions.value.lx} ${props.mainSwitchLine.y2 - radius.value} l 0 -${
124
+ height.value - 2 * radius.value
125
+ } q 0,-${radius.value} ${firstLineIsNetwork.value ? '-2' : '2'},-${
126
+ radius.value
127
+ }`
128
+ )
129
+
130
+ const d2 = computed<string>(
131
+ () =>
132
+ `M ${positions.value.lx} ${props.mainSwitchLine.y1 + radius1.value} l 0 ${
133
+ height.value - 2 * radius1.value
134
+ } q 0,${radius1.value} ${isNetworkHigherThenAdapter.value ? '2' : '-2'},${
135
+ radius1.value
136
+ }`
137
+ )
138
+ </script>
139
+
140
+ <style scoped lang="scss">
141
+ :root.dark-theme {
142
+ .central-panel {
143
+ fill: #314351;
144
+ stroke: #adbbc4;
145
+ }
146
+
147
+ .connection-line {
148
+ stroke: #adbbc4;
149
+ fill: none;
150
+ }
151
+ }
152
+
153
+ :root.is-new-view {
154
+ .connection-line {
155
+ stroke: var(--diagram-connect-line);
156
+ }
157
+
158
+ .central-panel {
159
+ fill: var(--diagram-central-panel-bg);
160
+ stroke: var(--diagram-block-stroke);
161
+ }
162
+ }
163
+
164
+ .central-panel {
165
+ fill: #f2f2f2;
166
+ stroke: #888;
167
+ }
168
+
169
+ .invisible-line {
170
+ cursor: pointer;
171
+ stroke: #000;
172
+ stroke-opacity: 0;
173
+ stroke-width: 10px;
174
+ fill: none;
175
+ }
176
+ .connection-line {
177
+ stroke: #888;
178
+ fill: none;
179
+ }
180
+ </style>