bfg-common 1.4.582 → 1.4.583

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 (118) hide show
  1. package/assets/img/icons/icons-sprite-dark-1.svg +23 -53
  2. package/assets/img/icons/icons-sprite-dark-2.svg +1 -5
  3. package/assets/img/icons/icons-sprite-dark-4.svg +3 -7
  4. package/assets/img/icons/icons-sprite-dark-6.svg +92 -92
  5. package/assets/img/icons/icons-sprite-light-1.svg +23 -53
  6. package/assets/img/icons/icons-sprite-light-2.svg +1 -5
  7. package/assets/img/icons/icons-sprite-light-4.svg +3 -7
  8. package/assets/img/icons/icons-sprite-light-6.svg +92 -92
  9. package/assets/scss/common/icons/icons-6.scss +156 -156
  10. package/assets/scss/common/theme.scss +9 -1
  11. package/components/atoms/TheIcon3.vue +50 -50
  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 +1633 -1633
  15. package/components/atoms/table/dataGrid/DataGridColumnSwitch.vue +222 -222
  16. package/components/common/browse/BrowseNew.vue +237 -237
  17. package/components/common/browse/BrowseOld.vue +217 -217
  18. package/components/common/browse/blocks/contents/Files.vue +35 -35
  19. package/components/common/browse/blocks/contents/FilesOld.vue +70 -70
  20. package/components/common/browse/blocks/contents/filesNew/FilesNew.vue +92 -92
  21. package/components/common/browse/blocks/contents/filesNew/Skeleton.vue +18 -18
  22. package/components/common/context/lib/models/interfaces.ts +30 -30
  23. package/components/common/context/recursion/Recursion.vue +86 -86
  24. package/components/common/context/recursion/RecursionNew.vue +199 -199
  25. package/components/common/context/recursion/RecursionOld.vue +213 -213
  26. package/components/common/diagramMain/Diagram.vue +95 -82
  27. package/components/common/diagramMain/DiagramMain.vue +22 -1
  28. package/components/common/diagramMain/adapter/AdapterItem.vue +2 -0
  29. package/components/common/diagramMain/adapter/Contents.vue +21 -3
  30. package/components/common/diagramMain/lib/config/positions.ts +1 -1
  31. package/components/common/diagramMain/lib/models/enums.ts +1 -1
  32. package/components/common/diagramMain/modals/viewSettings/info/InfoNew.vue +3 -2
  33. package/components/common/diagramMain/modals/viewSettings/viewSettingsModal/ViewSettingsModalNew.vue +6 -1
  34. package/components/common/diagramMain/network/Contents.vue +4 -1
  35. package/components/common/diagramMain/network/noNetwork/NoNetworkNew.vue +1 -1
  36. package/components/common/diagramMain/port/Port.vue +2 -0
  37. package/components/common/layout/theHeader/helpMenu/About.vue +85 -85
  38. package/components/common/layout/theHeader/helpMenu/aboutNew/AboutNew.vue +103 -103
  39. package/components/common/mainNavigationPanel/MainNavigationPanel.vue +152 -152
  40. package/components/common/pages/home/headline/HeadlineNew.vue +48 -71
  41. package/components/common/pages/home/resource/ResourceNew.vue +58 -63
  42. package/components/common/pages/home/widgets/WidgetsNew.vue +74 -79
  43. package/components/common/pages/shortcuts/block/BlockNew.vue +71 -80
  44. package/components/common/spiceConsole/Drawer.vue +370 -370
  45. package/components/common/spiceConsole/lib/models/interfaces.ts +5 -5
  46. package/components/common/split/horizontal/HorizontalNew.vue +354 -354
  47. package/components/common/split/vertical/Vertical.vue +160 -223
  48. package/components/common/split/vertical/VerticalNew.vue +123 -0
  49. package/components/common/split/vertical/VerticalOld.vue +108 -0
  50. package/components/common/vm/actions/add/Add.vue +617 -617
  51. package/components/common/vm/actions/clone/lib/config/steps.ts +129 -129
  52. package/components/common/vm/actions/common/customizeHardware/CustomizeHardware.vue +267 -267
  53. package/components/common/vm/actions/common/customizeHardware/CustomizeHardwareNew.vue +264 -264
  54. package/components/common/vm/actions/common/customizeHardware/virtualHardware/browseView/BrowseView.vue +219 -219
  55. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/BusNew.vue +118 -118
  56. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDriveNew.vue +161 -161
  57. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDriveOld.vue +165 -165
  58. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Media.vue +25 -25
  59. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaNew.vue +55 -55
  60. package/components/common/vm/actions/common/customizeHardware/virtualHardware/lib/config/dropdownItems.ts +147 -147
  61. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/mode/ModeOld.vue +55 -55
  62. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/sharing/SharingNew.vue +44 -44
  63. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetworkNew.vue +124 -124
  64. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/LocationOld.vue +134 -134
  65. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/New.vue +63 -63
  66. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/table/Table.vue +74 -74
  67. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/table/lib/config/config.ts +95 -95
  68. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddress.vue +119 -119
  69. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddressNew.vue +69 -69
  70. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddressOld.vue +83 -83
  71. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/NewPciDeviceNew.vue +85 -85
  72. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/NewPciDeviceOld.vue +91 -91
  73. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoNew.vue +35 -35
  74. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIoNew.vue +48 -48
  75. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/Note.vue +15 -15
  76. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteNew.vue +42 -42
  77. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteOld.vue +30 -30
  78. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGridNew.vue +30 -30
  79. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/typeSelection/TypeSelectionNew.vue +46 -46
  80. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newUsbController/NewUsbControllerNew.vue +56 -56
  81. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/Other.vue +16 -16
  82. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/OtherNew.vue +27 -27
  83. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/totalVideoMemory/TotalVideoMemoryNew.vue +54 -54
  84. package/components/common/vm/actions/common/customizeHardware/vmoptions/Vmoptions.vue +145 -145
  85. package/components/common/vm/actions/common/customizeHardware/vmoptions/VmoptionsNew.vue +102 -102
  86. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/BootOptionsNew.vue +75 -75
  87. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/delay/Delay.vue +26 -26
  88. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/Firmware.vue +57 -57
  89. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/FirmwareNew.vue +42 -42
  90. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/menu/MenuNew.vue +25 -25
  91. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +171 -171
  92. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/OrderNew.vue +50 -50
  93. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptionsNew.vue +141 -141
  94. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/New.vue +140 -140
  95. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/copyPaste/CopyPasteNew.vue +30 -30
  96. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/fileTransfer/FileTransferNew.vue +30 -30
  97. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/folderSharing/FolderSharingNew.vue +30 -30
  98. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/Keymap.vue +32 -32
  99. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/KeymapNew.vue +39 -39
  100. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/PasswordNew.vue +100 -100
  101. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionNew.vue +38 -38
  102. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionOld.vue +44 -44
  103. package/components/common/vm/actions/common/select/storage/Storage.vue +130 -130
  104. package/components/common/vm/actions/common/select/storage/StorageOld.vue +129 -129
  105. package/components/common/vm/actions/common/select/storage/new/New.vue +159 -159
  106. package/components/common/vm/actions/editSettings/EditSettings.vue +214 -214
  107. package/components/common/vm/actions/editSettings/EditSettingsOld.vue +182 -182
  108. package/components/common/vm/actions/editSettings/new/New.vue +176 -176
  109. package/components/common/vm/actions/editSettings/new/Skeleton.vue +88 -88
  110. package/composables/productNameLocal.ts +30 -30
  111. package/package.json +2 -2
  112. package/plugins/date.ts +233 -233
  113. package/plugins/recursion.ts +311 -311
  114. package/public/spice-console/lib/images/bitmap.js +203 -203
  115. package/public/spice-console/network/spicechannel.js +383 -383
  116. package/store/main/mutations.ts +7 -7
  117. package/store/main/state.ts +7 -7
  118. package/store/tasks/mappers/recentTasks.ts +2 -2
@@ -645,6 +645,7 @@ watch(
645
645
  }
646
646
 
647
647
  if (selectedNetwork.value !== '-1') {
648
+ cashedNetworkId.value = '-1'
648
649
  onSelectNetwork(selectedNetwork.value)
649
650
  return
650
651
  }
@@ -675,7 +676,15 @@ const onSelectPort = (networkId: string, portId: string): void => {
675
676
  selectedPort.value = selectPortData.selectedPort
676
677
  }
677
678
 
679
+ const cashedNetworkId = ref<string>('-1')
680
+
678
681
  const onSelectNetwork = (networkId: string): void => {
682
+ if (cashedNetworkId.value === networkId) {
683
+ resetSelection()
684
+ cashedNetworkId.value = '-1'
685
+ return
686
+ }
687
+
679
688
  selectedNetwork.value = networkId
680
689
 
681
690
  const selectNetworkData = getSelectNetworkDataFunc(
@@ -684,6 +693,8 @@ const onSelectNetwork = (networkId: string): void => {
684
693
  adaptersWithPositions.value
685
694
  )
686
695
 
696
+ cashedNetworkId.value = networkId
697
+
687
698
  if (!selectNetworkData) return
688
699
 
689
700
  selectedSwitchLineY.value = selectNetworkData.selectedSwitchLineY
@@ -798,6 +809,8 @@ const onTogglePorts = (
798
809
  }
799
810
 
800
811
  const handlePortToggle = () => {
812
+ cashedNetworkId.value = '-1'
813
+
801
814
  selectedPort.value.portId !== '-1' &&
802
815
  onSelectPort(selectedPort.value.networkId, selectedPort.value.portId)
803
816
  selectedAdapter.value.adapterId !== '-1' &&
@@ -813,6 +826,8 @@ const handlePortToggle = () => {
813
826
  }
814
827
 
815
828
  const onToggleAdapters = (): void => {
829
+ cashedNetworkId.value = '-1'
830
+
816
831
  const newState = !adaptersWithPositions.value.toggle
817
832
  const payload: Omit<UI_I_ToggleDiagramAdaptersPayload, 'paths'> = {
818
833
  isToggle: newState,
@@ -830,6 +845,11 @@ const onToggleAdapters = (): void => {
830
845
  const onClickDiagram = (ev: MouseEvent): void => {
831
846
  const target = ev.target as HTMLElement
832
847
  const targetClassList = target.classList
848
+
849
+ if (!targetClassList.contains('network-title')) {
850
+ cashedNetworkId.value = '-1'
851
+ }
852
+
833
853
  if (targetClassList.contains('main-line__handler')) {
834
854
  resetSelection()
835
855
  selectedMainLine.value = true
@@ -846,7 +866,8 @@ const onClickDiagram = (ev: MouseEvent): void => {
846
866
  <style scoped lang="scss">
847
867
  .diagram {
848
868
  &-min-width {
849
- min-width: 745px;
869
+ //min-width: 745px;
870
+ //min-width: 764px;
850
871
  }
851
872
  &-main-container {
852
873
  padding-top: 5px;
@@ -402,6 +402,8 @@ const onHide = (): void => {
402
402
 
403
403
  :root.is-new-view {
404
404
  .adapter-name {
405
+ user-select: none;
406
+ -webkit-user-select: none;
405
407
  color: var(--diagram-content-text);
406
408
 
407
409
  &:hover {
@@ -46,7 +46,7 @@
46
46
  font-weight="500"
47
47
  :x="positions.adapterTextX"
48
48
  :y="props.adaptersWithPositions.titlePosition"
49
- class="diagram__heading"
49
+ :class="['diagram__heading', { 'is-new': isNewView }]"
50
50
  >
51
51
  {{ headerText }}
52
52
  </text>
@@ -100,7 +100,9 @@ const hasAdapters = computed<boolean>(
100
100
  () => props.adaptersWithPositions.adaptersCount > 0
101
101
  )
102
102
 
103
- const isShowArrow = computed<boolean>(() => (isNewView.value ? true : hasAdapters.value))
103
+ const isShowArrow = computed<boolean>(() =>
104
+ isNewView.value ? true : hasAdapters.value
105
+ )
104
106
 
105
107
  const headerText = computed<string>(() =>
106
108
  isNewView.value
@@ -111,7 +113,7 @@ const headerText = computed<string>(() =>
111
113
  )
112
114
 
113
115
  const arrawIconPosition = computed<number>(
114
- () => props.adaptersWithPositions.titlePosition + 1
116
+ () => props.adaptersWithPositions.titlePosition - 0.5
115
117
  )
116
118
 
117
119
  const onToggleAdapters = (networkId: string, portId: string): void => {
@@ -125,6 +127,9 @@ const onToggleAdapters = (networkId: string, portId: string): void => {
125
127
  :root.dark-theme {
126
128
  .diagram__heading {
127
129
  fill: #c1cdd4;
130
+ &.is-new {
131
+ fill: var(--diagram-content-text);
132
+ }
128
133
  }
129
134
  .no-physical-adapters {
130
135
  fill: #c1cdd4;
@@ -154,6 +159,8 @@ const onToggleAdapters = (networkId: string, portId: string): void => {
154
159
  fill: var(--triger-icon-color);
155
160
 
156
161
  &.is-new {
162
+ width: 20px;
163
+ height: 20px;
157
164
  fill: none;
158
165
  color: var(--diagram-content-second-text);
159
166
  }
@@ -173,6 +180,11 @@ const onToggleAdapters = (networkId: string, portId: string): void => {
173
180
  fill: #565656;
174
181
  letter-spacing: normal;
175
182
  line-height: 1.2rem;
183
+
184
+ &.is-new {
185
+ line-height: 16.94px;
186
+ fill: var(--diagram-content-text);
187
+ }
176
188
  }
177
189
  .no-physical-adapters {
178
190
  fill: #565656;
@@ -186,4 +198,10 @@ const onToggleAdapters = (networkId: string, portId: string): void => {
186
198
  color: var(--diagram-content-text);
187
199
  }
188
200
  }
201
+
202
+ :root.is-new-view.dark-theme {
203
+ .text-ellipsis {
204
+ color: var(--diagram-content-text);
205
+ }
206
+ }
189
207
  </style>
@@ -103,7 +103,7 @@ export const networkContentPositionsFunc = (
103
103
  portX: 68,
104
104
  actionY: networkTitlePosition + 1.5,
105
105
  actionX: 266.5,
106
- portsArrowPosition: networkPortsPosition - 2,
106
+ portsArrowPosition: networkPortsPosition - 0.5,
107
107
  }
108
108
  : {
109
109
  blockX: 18.5,
@@ -6,7 +6,7 @@ export const enum UI_E_NetworkType {
6
6
 
7
7
  export const enum UI_E_PositionsY {
8
8
  DIAGRAM_TOP = 1.5,
9
- DIAGRAM_BOTTOM = 30,
9
+ DIAGRAM_BOTTOM = 1.5,
10
10
  BETWEEN_RECTS = 16,
11
11
  TITLE_FROM_RECT_TOP = 9.5,
12
12
  VLAN_FROM_RECT_TOP = 35.5,
@@ -107,9 +107,10 @@ const viewSettingsTabContent = (tab: number): UI_I_ViewSettingsFields[] =>
107
107
  }
108
108
 
109
109
  .table-fixed-height {
110
- min-height: 400px;
111
- max-height: 400px;
110
+ min-height: min(calc(100vh - 270px), 400px);
111
+ max-height: min(calc(100vh - 270px), 400px);
112
112
  overflow-y: auto;
113
+ overflow-x: hidden;
113
114
  padding-right: 32px;
114
115
  padding-top: 16px;
115
116
 
@@ -60,4 +60,9 @@ const emits = defineEmits<{
60
60
  }>()
61
61
  </script>
62
62
 
63
- <style scoped lang="scss"></style>
63
+ <style scoped lang="scss">
64
+ :deep(.modal-body) {
65
+ max-height: unset;
66
+ overflow-y: unset;
67
+ }
68
+ </style>
@@ -16,6 +16,7 @@
16
16
  style="text-decoration: none"
17
17
  cursor="pointer"
18
18
  data-title="network-name-link"
19
+ class="network-title-link"
19
20
  @click="onSelectNetwork(props.network.id)"
20
21
  >
21
22
  <foreignObject
@@ -430,6 +431,8 @@ const onTogglePorts = (
430
431
 
431
432
  :root.is-new-view {
432
433
  .network-title {
434
+ user-select: none;
435
+ -webkit-user-select: none;
433
436
  line-height: 26px;
434
437
  color: var(--diagram-content-text);
435
438
 
@@ -440,7 +443,7 @@ const onTogglePorts = (
440
443
  &.is-selected {
441
444
  color: var(--diagram-content-text-selected);
442
445
  &:hover {
443
- color: var(--diagram-content-text-selected);
446
+ color: var(--diagram-content-text-selected-hover);
444
447
  text-decoration: unset;
445
448
  }
446
449
  }
@@ -81,7 +81,7 @@ const localization = computed<UI_I_Localization>(() => useLocal())
81
81
 
82
82
  .no-associated-port-groups {
83
83
  font-size: 14px;
84
- font-weight: 400;
84
+ font-weight: 300;
85
85
  line-height: 16.94px;
86
86
  text-align: center;
87
87
  }
@@ -532,6 +532,8 @@ const onSelectPort = (networkId: string, portId: string): void => {
532
532
 
533
533
  :root.is-new-view {
534
534
  .port-text.text-ellipsis {
535
+ user-select: none;
536
+ -webkit-user-select: none;
535
537
  line-height: 25px;
536
538
  padding-left: 18px;
537
539
  color: var(--diagram-content-text);
@@ -1,85 +1,85 @@
1
- <template>
2
- <Teleport to="body">
3
- <common-layout-the-header-help-menu-about-new
4
- v-if="isNewView"
5
- :title="title"
6
- :subtitle="subtitle"
7
- :about-heading-text="aboutHeadingText"
8
- :about-desc-one="aboutDesc1"
9
- :about-desc-second="aboutDesc2"
10
- :is-beta-version="props.isBeta"
11
- :is-dev="props.isDev"
12
- :project-name="props.projectName"
13
- :url="companyWebSitePath"
14
- @hide="emits('hide')"
15
- />
16
-
17
- <common-layout-the-header-help-menu-about-old
18
- v-else
19
- :title="title"
20
- :subtitle="subtitle"
21
- :about-heading-text="aboutHeadingText"
22
- :about-desc-one="aboutDesc1"
23
- :about-desc-second="aboutDesc2"
24
- :is-beta-version="props.isBeta"
25
- :is-dev="props.isDev"
26
- :project-name="props.projectName"
27
- :url="companyWebSitePath"
28
- @hide="emits('hide')"
29
- />
30
- </Teleport>
31
- </template>
32
-
33
- <script lang="ts" setup>
34
- import type { UI_I_Localization } from '~/lib/models/interfaces'
35
-
36
- const props = defineProps<{
37
- version: string
38
- isBeta: boolean
39
- isDev: boolean
40
- projectName: string
41
- }>()
42
- const emits = defineEmits<{
43
- (event: 'hide'): void
44
- }>()
45
-
46
- const localization = computed<UI_I_Localization>(() => useLocal())
47
- const { $store }: any = useNuxtApp()
48
- const config = useRuntimeConfig()
49
-
50
- const companyName = computed<string>(
51
- () => config.public[`COMPANY_NAME_${useEnvLanguage()}`]
52
- )
53
- const brandName = computed<string>(
54
- () => config.public[`TRADEMARK_${useEnvLanguage()}`]
55
- )
56
-
57
- const companyWebSitePath = ref<string>('https://iridium-soft.com/')
58
-
59
- const title = computed<string>(() => `${brandName.value}® ${props.projectName}`)
60
- const subtitle = computed<string>(() =>
61
- localization.value.layout.aboutWebClientVersion
62
- .replace('{0}', props.projectName)
63
- .replace('{1}', props.version)
64
- )
65
-
66
- const aboutHeadingText = computed<string>(() =>
67
- localization.value.layout.aboutHeading.replaceAll(
68
- '{companyName}',
69
- companyName.value
70
- )
71
- )
72
-
73
- const aboutDesc1 = computed<string>(() =>
74
- localization.value.layout.aboutDesc1
75
- .replaceAll('{companyName}', companyName.value)
76
- .replaceAll('{trademark}', brandName.value)
77
- )
78
- const aboutDesc2 = computed<string>(() =>
79
- localization.value.layout.aboutDesc2
80
- .replaceAll('{companyName}', companyName.value)
81
- .replaceAll('{trademark}', brandName.value)
82
- )
83
-
84
- const isNewView = computed<boolean>(() => $store.getters['main/getIsNewView'])
85
- </script>
1
+ <template>
2
+ <Teleport to="body">
3
+ <common-layout-the-header-help-menu-about-new
4
+ v-if="isNewView"
5
+ :title="title"
6
+ :subtitle="subtitle"
7
+ :about-heading-text="aboutHeadingText"
8
+ :about-desc-one="aboutDesc1"
9
+ :about-desc-second="aboutDesc2"
10
+ :is-beta-version="props.isBeta"
11
+ :is-dev="props.isDev"
12
+ :project-name="props.projectName"
13
+ :url="companyWebSitePath"
14
+ @hide="emits('hide')"
15
+ />
16
+
17
+ <common-layout-the-header-help-menu-about-old
18
+ v-else
19
+ :title="title"
20
+ :subtitle="subtitle"
21
+ :about-heading-text="aboutHeadingText"
22
+ :about-desc-one="aboutDesc1"
23
+ :about-desc-second="aboutDesc2"
24
+ :is-beta-version="props.isBeta"
25
+ :is-dev="props.isDev"
26
+ :project-name="props.projectName"
27
+ :url="companyWebSitePath"
28
+ @hide="emits('hide')"
29
+ />
30
+ </Teleport>
31
+ </template>
32
+
33
+ <script lang="ts" setup>
34
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
35
+
36
+ const props = defineProps<{
37
+ version: string
38
+ isBeta: boolean
39
+ isDev: boolean
40
+ projectName: string
41
+ }>()
42
+ const emits = defineEmits<{
43
+ (event: 'hide'): void
44
+ }>()
45
+
46
+ const localization = computed<UI_I_Localization>(() => useLocal())
47
+ const { $store }: any = useNuxtApp()
48
+ const config = useRuntimeConfig()
49
+
50
+ const companyName = computed<string>(
51
+ () => config.public[`COMPANY_NAME_${useEnvLanguage()}`]
52
+ )
53
+ const brandName = computed<string>(
54
+ () => config.public[`TRADEMARK_${useEnvLanguage()}`]
55
+ )
56
+
57
+ const companyWebSitePath = ref<string>('https://iridium-soft.com/')
58
+
59
+ const title = computed<string>(() => `${brandName.value}® ${props.projectName}`)
60
+ const subtitle = computed<string>(() =>
61
+ localization.value.layout.aboutWebClientVersion
62
+ .replace('{0}', props.projectName)
63
+ .replace('{1}', props.version)
64
+ )
65
+
66
+ const aboutHeadingText = computed<string>(() =>
67
+ localization.value.layout.aboutHeading.replaceAll(
68
+ '{companyName}',
69
+ companyName.value
70
+ )
71
+ )
72
+
73
+ const aboutDesc1 = computed<string>(() =>
74
+ localization.value.layout.aboutDesc1
75
+ .replaceAll('{companyName}', companyName.value)
76
+ .replaceAll('{trademark}', brandName.value)
77
+ )
78
+ const aboutDesc2 = computed<string>(() =>
79
+ localization.value.layout.aboutDesc2
80
+ .replaceAll('{companyName}', companyName.value)
81
+ .replaceAll('{trademark}', brandName.value)
82
+ )
83
+
84
+ const isNewView = computed<boolean>(() => $store.getters['main/getIsNewView'])
85
+ </script>
@@ -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
- isBetaVersion: boolean
50
- isDev: boolean
51
- projectName: string
52
- url: string
53
- }>()
54
- const emits = defineEmits<{
55
- (event: 'hide'): void
56
- }>()
57
-
58
- const localization = computed<UI_I_Localization>(() => useLocal())
59
-
60
- const onHideModal = (): void => {
61
- emits('hide')
62
- }
63
- </script>
64
-
65
- <style>
66
- :root {
67
- --about-text-color: #4d5d69;
68
- }
69
- :root.dark-theme {
70
- --about-text-color: #9da6ad;
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: #0081c1;
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
+ isBetaVersion: boolean
50
+ isDev: boolean
51
+ projectName: string
52
+ url: string
53
+ }>()
54
+ const emits = defineEmits<{
55
+ (event: 'hide'): void
56
+ }>()
57
+
58
+ const localization = computed<UI_I_Localization>(() => useLocal())
59
+
60
+ const onHideModal = (): void => {
61
+ emits('hide')
62
+ }
63
+ </script>
64
+
65
+ <style>
66
+ :root {
67
+ --about-text-color: #4d5d69;
68
+ }
69
+ :root.dark-theme {
70
+ --about-text-color: #9da6ad;
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: #0081c1;
96
+ }
97
+ }
98
+ }
99
+ }
100
+ :deep(.title-wrapper__subtitle) {
101
+ max-width: 400px;
102
+ }
103
+ </style>