bfg-common 1.5.706 → 1.5.708

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 (192) hide show
  1. package/CODE_STYLE.md +109 -109
  2. package/assets/img/icons/icons-sprite-dark-1.svg +3 -2
  3. package/assets/img/icons/icons-sprite-dark-3.svg +227 -227
  4. package/assets/img/icons/icons-sprite-dark-5.svg +488 -488
  5. package/assets/img/icons/icons-sprite-light-1.svg +4 -3
  6. package/assets/img/icons/icons-sprite-light-3.svg +227 -227
  7. package/assets/img/icons/icons-sprite-light-5.svg +488 -488
  8. package/assets/localization/local_be.json +3 -46
  9. package/assets/localization/local_en.json +3 -46
  10. package/assets/localization/local_hy.json +3 -46
  11. package/assets/localization/local_kk.json +3 -46
  12. package/assets/localization/local_ru.json +5 -48
  13. package/assets/localization/local_zh.json +3 -46
  14. package/assets/scss/common/icons/icons-1.scss +1 -1
  15. package/assets/scss/common/icons/icons-2.scss +0 -18
  16. package/assets/scss/common/theme.scss +0 -2
  17. package/assets/scss/components/auth.scss +5 -32
  18. package/components/atoms/TheIcon3.vue +50 -50
  19. package/components/atoms/collapse/CollapseNav.vue +170 -170
  20. package/components/atoms/dropdown/tree/Tree.vue +0 -2
  21. package/components/atoms/perPage/PerPage.vue +58 -58
  22. package/components/atoms/switch/Switch.vue +1 -7
  23. package/components/atoms/table/dataGrid/DataGrid.vue +1718 -1718
  24. package/components/atoms/table/dataGrid/DataGridPagination.vue +97 -97
  25. package/components/atoms/table/dataGrid/lib/config/settingsTable.ts +94 -94
  26. package/components/atoms/table/dataGrid/lib/utils/export.ts +16 -16
  27. package/components/atoms/wizard/Wizard.vue +1 -1
  28. package/components/common/backup/storage/actions/add/lib/utils.ts +51 -51
  29. package/components/common/browse/blocks/contents/filesNew/Skeleton.vue +18 -18
  30. package/components/common/diagramMain/modals/lib/config/vCenterModal.ts +48 -48
  31. package/components/common/diagramMain/port/Port.vue +580 -580
  32. package/components/common/help/navbar/left/lib/utils/constructAccordion.ts +1 -2
  33. package/components/common/help/navbar/right/Right.vue +1 -1
  34. package/components/common/layout/theHeader/TheHeaderNew.vue +315 -315
  35. package/components/common/layout/theHeader/TheHeaderOld.vue +262 -262
  36. package/components/common/layout/theHeader/helpMenu/About.vue +79 -79
  37. package/components/common/layout/theHeader/helpMenu/aboutOld/AboutOld.vue +79 -79
  38. package/components/common/layout/theHeader/modals/reconnect/ReconnectOld.vue +0 -2
  39. package/components/common/layout/theHeader/userMenu/modals/changePassword/ChangePassword.vue +21 -12
  40. package/components/common/layout/theHeader/userMenu/modals/changePassword/New.vue +43 -36
  41. package/components/common/layout/theHeader/userMenu/modals/changePassword/Old.vue +2 -0
  42. package/components/common/layout/theHeader/userMenu/modals/changePassword/lib/utils.ts +1 -1
  43. package/components/common/layout/theHeader/userMenu/modals/preferences/PreferencesNew.vue +0 -13
  44. package/components/common/layout/theHeader/userMenu/modals/preferences/PreferencesOld.vue +144 -144
  45. package/components/common/layout/theHeader/userMenu/modals/preferences/changeLanguage/ChangeLanguage.vue +15 -8
  46. package/components/common/layout/theHeader/userMenu/modals/preferences/changeLanguage/{New.vue → ChangeLanguageNew.vue} +2 -1
  47. package/components/common/layout/theHeader/userMenu/modals/preferences/changeLanguage/{Old.vue → ChangeLanguageOld.vue} +2 -0
  48. package/components/common/layout/theHeader/userMenu/modals/preferences/defaultConsole/DefaultConsole.vue +7 -8
  49. package/components/common/layout/theHeader/userMenu/modals/preferences/defaultConsole/{New.vue → DefaultConsoleNew.vue} +3 -3
  50. package/components/common/layout/theHeader/userMenu/modals/preferences/defaultConsole/{Old.vue → DefaultConsoleOld.vue} +2 -2
  51. package/components/common/layout/theHeader/userMenu/modals/preferences/inventory/Inventory.vue +8 -7
  52. package/components/common/layout/theHeader/userMenu/modals/preferences/inventory/{New.vue → InventoryNew.vue} +2 -3
  53. package/components/common/layout/theHeader/userMenu/modals/preferences/inventory/{Old.vue → InventoryOld.vue} +2 -2
  54. package/components/common/layout/theHeader/userMenu/modals/preferences/lib/models/types.ts +7 -7
  55. package/components/common/layout/theHeader/userMenu/modals/preferences/security/New.vue +12 -277
  56. package/components/common/layout/theHeader/userMenu/modals/preferences/security/Old.vue +56 -30
  57. package/components/common/layout/theHeader/userMenu/modals/preferences/security/Security.vue +6 -65
  58. package/components/common/layout/theHeader/userMenu/modals/preferences/timeFormat/TimeFormat.vue +8 -8
  59. package/components/common/layout/theHeader/userMenu/modals/preferences/timeFormat/{New.vue → TimeFormatNew.vue} +3 -3
  60. package/components/common/layout/theHeader/userMenu/modals/preferences/timeFormat/{Old.vue → TimeFormatOld.vue} +2 -2
  61. package/components/common/layout/theHeader/userMenu/modals/preferences/view/View.vue +7 -8
  62. package/components/common/layout/theHeader/userMenu/modals/preferences/view/{New.vue → ViewNew.vue} +3 -12
  63. package/components/common/layout/theHeader/userMenu/modals/preferences/view/{Old.vue → ViewOld.vue} +2 -2
  64. package/components/common/monitor/advanced/graphView/GraphView.vue +0 -8
  65. package/components/common/monitor/advanced/tools/Tools.vue +1 -5
  66. package/components/common/pages/backups/DetailView.vue +52 -52
  67. package/components/common/pages/backups/lib/models/interfaces.ts +36 -36
  68. package/components/common/pages/backups/modals/Modals.vue +243 -243
  69. package/components/common/pages/backups/modals/createBackup/configuration/maxBandwidth/lib/config/options.ts +6 -6
  70. package/components/common/pages/backups/modals/createBackup/lib/config/readyToCompleteOptions.ts +69 -69
  71. package/components/common/pages/backups/modals/lib/config/restore.ts +115 -115
  72. package/components/common/pages/backups/modals/lib/models/interfaces.ts +186 -186
  73. package/components/common/pages/backups/modals/restore/name/lib/models/interfaces.ts +6 -6
  74. package/components/common/pages/hardwareHealth/historyTestimony/tools/Tools.vue +2 -7
  75. package/components/common/pages/hardwareHealth/tableView/TableView.vue +0 -8
  76. package/components/common/pages/hardwareHealth/tableView/lib/config/sensorTable.ts +1 -13
  77. package/components/common/pages/hardwareHealth/toolsPanel/lib/config/actionsPanel.ts +4 -4
  78. package/components/common/pages/home/lib/models/interfaces.ts +48 -48
  79. package/components/common/pages/home/widgets/hosts/Hosts.vue +27 -27
  80. package/components/common/pages/home/widgets/hosts/lib/config/items.ts +23 -23
  81. package/components/common/pages/home/widgets/vms/VmsOld.vue +35 -35
  82. package/components/common/pages/home/widgets/vms/lib/config/items.ts +19 -19
  83. package/components/common/pages/scheduledTasks/lib/utils/utils.ts +84 -84
  84. package/components/common/qrcode/Qrcode.vue +56 -0
  85. package/components/common/readyToComplete/ReadyToComplete.vue +17 -17
  86. package/components/common/select/radio/RadioGroup.vue +137 -137
  87. package/components/common/spiceConsole/Drawer.vue +420 -420
  88. package/components/common/spiceConsole/SpiceConsole.vue +184 -184
  89. package/components/common/spiceConsole/lib/models/interfaces.ts +5 -5
  90. package/components/common/split/horizontal/New.vue +2 -0
  91. package/components/common/split/vertical/New.vue +1 -2
  92. package/components/common/tools/Actions.vue +207 -207
  93. package/components/common/treeView/TreeView.vue +52 -52
  94. package/components/common/vm/actions/add/New.vue +1 -1
  95. package/components/common/vm/actions/add/Old.vue +1 -1
  96. package/components/common/vm/actions/clone/lib/config/steps.ts +295 -295
  97. package/components/common/vm/actions/clone/new/New.vue +438 -438
  98. package/components/common/vm/actions/clone/old/Old.vue +0 -1
  99. package/components/common/vm/actions/common/customizeHardware/virtualHardware/New.vue +34 -10
  100. package/components/common/vm/actions/common/customizeHardware/virtualHardware/Old.vue +37 -15
  101. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardware.vue +50 -49
  102. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/coresPerSocket/CoresPerSocket.vue +3 -3
  103. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/lib/config/options.ts +28 -28
  104. package/components/common/vm/actions/common/customizeHardware/virtualHardware/lib/models/interfaces.ts +1 -3
  105. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/Memory.vue +283 -283
  106. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +7 -13
  107. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/New.vue +4 -7
  108. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/NewPciDevice.vue +45 -52
  109. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/Old.vue +8 -5
  110. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIo.vue +3 -1
  111. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/New.vue +2 -2
  112. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/Old.vue +2 -2
  113. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIo.vue +1 -1
  114. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/New.vue +2 -1
  115. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/Old.vue +2 -1
  116. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/New.vue +1 -1
  117. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGrid.vue +1 -1
  118. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/Old.vue +1 -1
  119. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +156 -156
  120. package/components/common/vm/actions/common/select/compatibility/Old.vue +107 -107
  121. package/components/common/vm/actions/common/select/createType/lib/models/interfaces.ts +5 -5
  122. package/components/common/vm/actions/common/select/options/New.vue +264 -264
  123. package/components/common/vm/actions/common/select/options/Old.vue +2 -1
  124. package/components/common/vm/actions/common/select/options/Options.vue +58 -58
  125. package/components/common/vm/actions/common/select/storage/Old.vue +125 -125
  126. package/components/common/vm/actions/common/select/storage/new/New.vue +311 -311
  127. package/components/common/vm/actions/common/select/storage/new/lib/models/interfaces.ts +5 -5
  128. package/components/common/vm/actions/common/select/storage/new/lib/utils/utils.ts +21 -21
  129. package/components/common/vm/actions/common/select/template/old/Old.vue +50 -50
  130. package/components/common/vm/actions/editSettings/new/Skeleton.vue +88 -88
  131. package/components/common/wizards/common/compatibility/Compatibility.vue +35 -35
  132. package/components/common/wizards/common/compatibility/New.vue +1 -1
  133. package/components/common/wizards/common/compatibility/Old.vue +1 -1
  134. package/components/common/wizards/common/steps/computeResource/New.vue +93 -93
  135. package/components/common/wizards/common/steps/name/Name.vue +178 -178
  136. package/components/common/wizards/common/steps/name/New.vue +221 -221
  137. package/components/common/wizards/common/steps/name/Old.vue +121 -121
  138. package/components/common/wizards/common/steps/name/lib/models/interfaces.ts +4 -4
  139. package/components/common/wizards/common/steps/name/location/New.vue +40 -40
  140. package/components/common/wizards/datastore/add/Add.vue +228 -228
  141. package/components/common/wizards/datastore/add/lib/config/createDatastore.ts +0 -1
  142. package/components/common/wizards/datastore/add/lib/models/interfaces.ts +0 -1
  143. package/components/common/wizards/datastore/add/lib/utils.ts +85 -85
  144. package/components/common/wizards/datastore/add/steps/nameAndDevice/NameAndDeviceNew.vue +0 -5
  145. package/components/common/wizards/datastore/add/steps/nameAndDevice/NameAndDeviceOld.vue +0 -5
  146. package/components/common/wizards/datastore/add/steps/nameAndDevice/table/old/Old.vue +3 -2
  147. package/components/common/wizards/datastore/add/steps/readyComplete/lib/config/propertiesDetails.ts +1 -8
  148. package/components/common/wizards/datastore/add/steps/typeMode/lib/config/typeOptions.ts +43 -43
  149. package/components/common/wizards/vm/migrate/lib/models/enums.ts +2 -2
  150. package/components/common/wizards/vm/migrate/steps/selectStorage/SelectStorage.vue +4 -4
  151. package/components/common/wizards/vm/migrate/steps/selectStorage/configure/disk/table/new/lib/config/diskTable.ts +2 -6
  152. package/components/common/wizards/vm/migrate/steps/selectStorage/configure/disk/table/old/lib/config/diskTable.ts +12 -18
  153. package/composables/useAppVersion.ts +21 -21
  154. package/composables/useEnvLanguage.ts +8 -7
  155. package/composables/useLocal.ts +6 -6
  156. package/composables/useLocalCommon.ts +39 -39
  157. package/lib/models/interfaces.ts +0 -1
  158. package/package.json +4 -3
  159. package/plugins/console.ts +21 -21
  160. package/plugins/date.ts +37 -14
  161. package/plugins/mouse.ts +21 -21
  162. package/plugins/panelStates.ts +70 -70
  163. package/plugins/text.ts +59 -59
  164. package/public/spice-console/application/clientgui.js +854 -854
  165. package/public/spice-console/application/packetfactory.js +211 -211
  166. package/public/spice-console/application/virtualmouse.js +147 -147
  167. package/public/spice-console/lib/images/bitmap.js +203 -203
  168. package/public/spice-console/network/spicechannel.js +440 -440
  169. package/public/spice-console/process/cursorprocess.js +128 -128
  170. package/public/spice-console/process/inputprocess.js +227 -227
  171. package/public/spice-console/process/mainprocess.js +212 -212
  172. package/public/spice-console/run.js +210 -210
  173. package/store/main/getters.ts +2 -2
  174. package/store/main/mutations.ts +7 -7
  175. package/store/main/state.ts +7 -7
  176. package/store/tasks/mappers/recentTasks.ts +123 -123
  177. package/store/tasks/mutations.ts +82 -82
  178. package/components/common/certificate/Certificate.vue +0 -27
  179. package/components/common/certificate/CertificateInfo.vue +0 -139
  180. package/components/common/certificate/Tools.vue +0 -59
  181. package/components/common/certificate/lib/config/tabsPannel.ts +0 -22
  182. package/components/common/certificate/lib/models/interfaces.ts +0 -9
  183. package/components/common/certificate/lib/models/types.ts +0 -1
  184. package/components/common/certificate/modals/renew/New.vue +0 -64
  185. package/components/common/certificate/modals/renew/Old.vue +0 -122
  186. package/components/common/certificate/modals/renew/Renew.vue +0 -67
  187. package/components/common/pages/auth/TheFooter.vue +0 -104
  188. package/components/common/pages/files/lib/models/enums.ts +0 -10
  189. package/components/common/qr/Qr.vue +0 -69
  190. package/components/common/wizards/datastore/add/steps/nameAndDevice/advancedOptions/AdvancedOptions.vue +0 -43
  191. package/components/common/wizards/datastore/add/steps/nameAndDevice/advancedOptions/New.vue +0 -114
  192. package/components/common/wizards/datastore/add/steps/nameAndDevice/advancedOptions/Old.vue +0 -114
@@ -1,210 +1,210 @@
1
- const getURLParameter = (parameter) => {
2
- const regex = new RegExp(`${parameter}=([^&]+)`)
3
- const match = regex.exec(window.location.pathname)
4
- return match && match[1]
5
- }
6
-
7
- let vmHost = window.location.hostname
8
- if (vmHost === 'localhost') {
9
- vmHost = '10.10.101.107' // Для разработки
10
- }
11
- const vmId = getURLParameter('id')
12
- const vmPort = window.config.public.PORT
13
-
14
- window.app = new Application({
15
- supportHighDPI: false,
16
- })
17
-
18
- // Custom code
19
- let vmWidth = -1
20
- let vmHeight = -1
21
- window.addEventListener('resize', () => {
22
- if (vmWidth !== -1 && vmHeight !== -1) setVmPosition(vmWidth, vmHeight)
23
- })
24
- const setVmPosition = (width, height) => {
25
- // Делаем выравнивание по центру
26
- vmWidth = width
27
- vmHeight = height
28
- const left = Math.max((window.innerWidth - width) / 2, 0)
29
- const top = Math.max((window.innerHeight - height) / 2, 0)
30
- document.getElementById('canvas_0').style.left = left + 'px'
31
- document.getElementById('eventLayer').style.left = left + 'px'
32
- document.getElementById('canvas_0').style.top = top + 'px'
33
- document.getElementById('eventLayer').style.top = top + 'px'
34
- }
35
- // Custom code end
36
-
37
- function start() {
38
- wdi.graphicDebug = new wdi.GraphicDebug({ debugMode: false })
39
- let cancelReconnection = false
40
- let cancelFreezeTimer, cancelReconnectionTimer
41
-
42
- const handleWindowAction = function (action, params) {
43
- if (action === 'windowClosed') {
44
- $(params.canvas).remove()
45
- $(params.eventLayer).remove()
46
- } else if (action === 'windowMoved') {
47
- $(params.canvas).css({
48
- top: params.info.top + 'px',
49
- left: params.info.left + 'px',
50
- })
51
- $(params.eventLayer).css({
52
- top: params.info.top + 'px',
53
- left: params.info.left + 'px',
54
- })
55
- } else if (action === 'init' || action === 'windowCreated') {
56
- let item = null
57
- let canvas = null
58
- let eventlayer = null
59
- const body = $('body')
60
-
61
- for (let i in params) {
62
- item = params[i]
63
- const position = item.position * 2
64
- canvas = $(item.canvas).css({
65
- zIndex: 10000 - position - 1,
66
- position: 'absolute',
67
- top: item.info.top + 'px',
68
- left: item.info.left + 'px',
69
- })
70
- eventlayer = $(item.eventLayer).css({
71
- top: item.info.top + 'px',
72
- left: item.info.left + 'px',
73
- zIndex: 10000 - position,
74
- })
75
- body.append(canvas)
76
- body.append(eventlayer)
77
- }
78
- } else if (action === 'ready') {
79
- app.setReconnecting(false)
80
- if (cancelReconnectionTimer?.clearTimeout) {
81
- cancelReconnectionTimer()
82
- cancelReconnectionTimer = false
83
- }
84
- const width = $(window).width()
85
- const height = $(window).height()
86
-
87
- app.sendCommand(
88
- 'setResolution',
89
- app.toSpiceResolution({
90
- width: width,
91
- height: height,
92
- })
93
- )
94
- if (wdi.IntegrationBenchmarkEnabled) {
95
- $('#integrationBenchmark').css({ display: 'inline' })
96
- $('#launchWordButton').prop('disabled', false)
97
- }
98
- } else if (action === 'resolution') {
99
- // Делаем выравнивание по центру
100
- const { 0: width, 1: height } = params
101
- setVmPosition(width, height)
102
- } else if (action === 'windowResized') {
103
- // Делаем выравнивание по центру
104
- const { 0: width } = params
105
- const left = (window.innerWidth - width) / 2
106
- if (left >= 0) {
107
- document.getElementById('canvas_0').style.left = left + 'px'
108
- document.getElementById('eventLayer').style.left = left + 'px'
109
- }
110
- } else if (action === 'windowMinimized') {
111
- $(params.canvas).css({ display: 'none' })
112
- $(params.eventLayer).css({ display: 'none' })
113
- } else if (action === 'windowMaximized') {
114
- $(params.canvas).css({
115
- top: params.info.top + 'px',
116
- left: params.info.left + 'px',
117
- })
118
- $(params.eventLayer).css({
119
- top: params.info.top + 'px',
120
- left: params.info.left + 'px',
121
- })
122
- } else if (action === 'windowRestored') {
123
- $(params.canvas).css({ display: 'block' })
124
- $(params.eventLayer).css({ display: 'block' })
125
- $(params.canvas).css({
126
- top: params.info.top + 'px',
127
- left: params.info.left + 'px',
128
- })
129
- $(params.eventLayer).css({
130
- top: params.info.top + 'px',
131
- left: params.info.left + 'px',
132
- })
133
- } else if (action === 'windowFocused') {
134
- //debugger; //eyeos should move the window to front!
135
- } else if (action === 'timeLapseDetected') {
136
- wdi.Debug.log('Detected time lapse of ', params, 'seconds')
137
- } else if (action === 'error') {
138
- if (!app.getReconnecting()) {
139
- if (!cancelFreezeTimer) {
140
- cancelFreezeTimer = setTimeout(function () {
141
- console.log('cancelFreeze')
142
- app.cancelFreeze()
143
- }, 10000)
144
- }
145
- if (!cancelReconnectionTimer) {
146
- cancelReconnectionTimer = setTimeout(function () {
147
- console.log('cancel reconnection')
148
- cancelReconnection = true
149
- }, 60000)
150
- }
151
- }
152
-
153
- setTimeout(function () {
154
- if (!cancelReconnection) {
155
- console.log('Trying reconnect ', Date.now())
156
- app.reconnect({
157
- freeze: true,
158
- })
159
- }
160
- }, 1000)
161
- }
162
- }
163
-
164
- $(window)['resize'](function () {
165
- app.sendCommand(
166
- 'setResolution',
167
- app.toSpiceResolution({
168
- width: $(window).width(),
169
- height: $(window).height(),
170
- })
171
- )
172
- })
173
-
174
- const runParams = {
175
- callback: handleWindowAction,
176
- context: this,
177
- host: vmHost,
178
- port: vmPort,
179
- protocol: 'wss',
180
- // 'vmToken': getURLParameter('vmtoken') || '',
181
- token: 'password',
182
- vmHost: vmHost,
183
- vmPort: vmPort,
184
- vmid: vmId,
185
- useBus: false,
186
- busHost: 'localhost',
187
- busPort: 61613,
188
- busSubscriptions: ['/topic/00000000-0000-0000-0000-000000000000'],
189
- busUser: '00000000-0000-0000-0000-000000000000',
190
- busPass: 'potato',
191
- layout: 'es',
192
- useWorkers: true,
193
- seamlessDesktopIntegration: false,
194
- connectionControl: false,
195
- heartbeatToken: 'heartbeat',
196
- heartbeatTimeout: 4000, //miliseconds
197
- externalClipboardHandling: false,
198
- disableClipboard: false,
199
- layer: document.getElementById('vmw'),
200
- // vmInfoToken: getURLParameter('vmInfoToken'),
201
- disableMessageBuffering: true,
202
- clientOffset: {
203
- x: 0,
204
- y: 0,
205
- },
206
- }
207
- app.run(runParams)
208
- }
209
-
210
- $(document).ready(start)
1
+ const getURLParameter = (parameter) => {
2
+ const regex = new RegExp(`${parameter}=([^&]+)`)
3
+ const match = regex.exec(window.location.pathname)
4
+ return match && match[1]
5
+ }
6
+
7
+ let vmHost = window.location.hostname
8
+ if (vmHost === 'localhost') {
9
+ vmHost = '10.10.101.107' // Для разработки
10
+ }
11
+ const vmId = getURLParameter('id')
12
+ const vmPort = window.config.public.PORT
13
+
14
+ window.app = new Application({
15
+ supportHighDPI: false,
16
+ })
17
+
18
+ // Custom code
19
+ let vmWidth = -1
20
+ let vmHeight = -1
21
+ window.addEventListener('resize', () => {
22
+ if (vmWidth !== -1 && vmHeight !== -1) setVmPosition(vmWidth, vmHeight)
23
+ })
24
+ const setVmPosition = (width, height) => {
25
+ // Делаем выравнивание по центру
26
+ vmWidth = width
27
+ vmHeight = height
28
+ const left = Math.max((window.innerWidth - width) / 2, 0)
29
+ const top = Math.max((window.innerHeight - height) / 2, 0)
30
+ document.getElementById('canvas_0').style.left = left + 'px'
31
+ document.getElementById('eventLayer').style.left = left + 'px'
32
+ document.getElementById('canvas_0').style.top = top + 'px'
33
+ document.getElementById('eventLayer').style.top = top + 'px'
34
+ }
35
+ // Custom code end
36
+
37
+ function start() {
38
+ wdi.graphicDebug = new wdi.GraphicDebug({ debugMode: false })
39
+ let cancelReconnection = false
40
+ let cancelFreezeTimer, cancelReconnectionTimer
41
+
42
+ const handleWindowAction = function (action, params) {
43
+ if (action === 'windowClosed') {
44
+ $(params.canvas).remove()
45
+ $(params.eventLayer).remove()
46
+ } else if (action === 'windowMoved') {
47
+ $(params.canvas).css({
48
+ top: params.info.top + 'px',
49
+ left: params.info.left + 'px',
50
+ })
51
+ $(params.eventLayer).css({
52
+ top: params.info.top + 'px',
53
+ left: params.info.left + 'px',
54
+ })
55
+ } else if (action === 'init' || action === 'windowCreated') {
56
+ let item = null
57
+ let canvas = null
58
+ let eventlayer = null
59
+ const body = $('body')
60
+
61
+ for (let i in params) {
62
+ item = params[i]
63
+ const position = item.position * 2
64
+ canvas = $(item.canvas).css({
65
+ zIndex: 10000 - position - 1,
66
+ position: 'absolute',
67
+ top: item.info.top + 'px',
68
+ left: item.info.left + 'px',
69
+ })
70
+ eventlayer = $(item.eventLayer).css({
71
+ top: item.info.top + 'px',
72
+ left: item.info.left + 'px',
73
+ zIndex: 10000 - position,
74
+ })
75
+ body.append(canvas)
76
+ body.append(eventlayer)
77
+ }
78
+ } else if (action === 'ready') {
79
+ app.setReconnecting(false)
80
+ if (cancelReconnectionTimer?.clearTimeout) {
81
+ cancelReconnectionTimer()
82
+ cancelReconnectionTimer = false
83
+ }
84
+ const width = $(window).width()
85
+ const height = $(window).height()
86
+
87
+ app.sendCommand(
88
+ 'setResolution',
89
+ app.toSpiceResolution({
90
+ width: width,
91
+ height: height,
92
+ })
93
+ )
94
+ if (wdi.IntegrationBenchmarkEnabled) {
95
+ $('#integrationBenchmark').css({ display: 'inline' })
96
+ $('#launchWordButton').prop('disabled', false)
97
+ }
98
+ } else if (action === 'resolution') {
99
+ // Делаем выравнивание по центру
100
+ const { 0: width, 1: height } = params
101
+ setVmPosition(width, height)
102
+ } else if (action === 'windowResized') {
103
+ // Делаем выравнивание по центру
104
+ const { 0: width } = params
105
+ const left = (window.innerWidth - width) / 2
106
+ if (left >= 0) {
107
+ document.getElementById('canvas_0').style.left = left + 'px'
108
+ document.getElementById('eventLayer').style.left = left + 'px'
109
+ }
110
+ } else if (action === 'windowMinimized') {
111
+ $(params.canvas).css({ display: 'none' })
112
+ $(params.eventLayer).css({ display: 'none' })
113
+ } else if (action === 'windowMaximized') {
114
+ $(params.canvas).css({
115
+ top: params.info.top + 'px',
116
+ left: params.info.left + 'px',
117
+ })
118
+ $(params.eventLayer).css({
119
+ top: params.info.top + 'px',
120
+ left: params.info.left + 'px',
121
+ })
122
+ } else if (action === 'windowRestored') {
123
+ $(params.canvas).css({ display: 'block' })
124
+ $(params.eventLayer).css({ display: 'block' })
125
+ $(params.canvas).css({
126
+ top: params.info.top + 'px',
127
+ left: params.info.left + 'px',
128
+ })
129
+ $(params.eventLayer).css({
130
+ top: params.info.top + 'px',
131
+ left: params.info.left + 'px',
132
+ })
133
+ } else if (action === 'windowFocused') {
134
+ //debugger; //eyeos should move the window to front!
135
+ } else if (action === 'timeLapseDetected') {
136
+ wdi.Debug.log('Detected time lapse of ', params, 'seconds')
137
+ } else if (action === 'error') {
138
+ if (!app.getReconnecting()) {
139
+ if (!cancelFreezeTimer) {
140
+ cancelFreezeTimer = setTimeout(function () {
141
+ console.log('cancelFreeze')
142
+ app.cancelFreeze()
143
+ }, 10000)
144
+ }
145
+ if (!cancelReconnectionTimer) {
146
+ cancelReconnectionTimer = setTimeout(function () {
147
+ console.log('cancel reconnection')
148
+ cancelReconnection = true
149
+ }, 60000)
150
+ }
151
+ }
152
+
153
+ setTimeout(function () {
154
+ if (!cancelReconnection) {
155
+ console.log('Trying reconnect ', Date.now())
156
+ app.reconnect({
157
+ freeze: true,
158
+ })
159
+ }
160
+ }, 1000)
161
+ }
162
+ }
163
+
164
+ $(window)['resize'](function () {
165
+ app.sendCommand(
166
+ 'setResolution',
167
+ app.toSpiceResolution({
168
+ width: $(window).width(),
169
+ height: $(window).height(),
170
+ })
171
+ )
172
+ })
173
+
174
+ const runParams = {
175
+ callback: handleWindowAction,
176
+ context: this,
177
+ host: vmHost,
178
+ port: vmPort,
179
+ protocol: 'wss',
180
+ // 'vmToken': getURLParameter('vmtoken') || '',
181
+ token: 'password',
182
+ vmHost: vmHost,
183
+ vmPort: vmPort,
184
+ vmid: vmId,
185
+ useBus: false,
186
+ busHost: 'localhost',
187
+ busPort: 61613,
188
+ busSubscriptions: ['/topic/00000000-0000-0000-0000-000000000000'],
189
+ busUser: '00000000-0000-0000-0000-000000000000',
190
+ busPass: 'potato',
191
+ layout: 'es',
192
+ useWorkers: true,
193
+ seamlessDesktopIntegration: false,
194
+ connectionControl: false,
195
+ heartbeatToken: 'heartbeat',
196
+ heartbeatTimeout: 4000, //miliseconds
197
+ externalClipboardHandling: false,
198
+ disableClipboard: false,
199
+ layer: document.getElementById('vmw'),
200
+ // vmInfoToken: getURLParameter('vmInfoToken'),
201
+ disableMessageBuffering: true,
202
+ clientOffset: {
203
+ x: 0,
204
+ y: 0,
205
+ },
206
+ }
207
+ app.run(runParams)
208
+ }
209
+
210
+ $(document).ready(start)
@@ -1,7 +1,7 @@
1
- import type { UI_I_MainState } from '~/store/main/lib/interfaces'
1
+ import type {UI_I_MainState} from "~/store/main/lib/interfaces";
2
2
 
3
3
  export default {
4
4
  getIsMenuPined: (state: UI_I_MainState): boolean => {
5
5
  return state.isMenuPined
6
- },
6
+ }
7
7
  }
@@ -1,7 +1,7 @@
1
- import type { UI_I_MainState } from '~/store/main/lib/interfaces'
2
-
3
- export default {
4
- M_MENU_PINED(state: UI_I_MainState, payload: boolean): void {
5
- state.isMenuPined = payload
6
- },
7
- }
1
+ import type { UI_I_MainState } from '~/store/main/lib/interfaces'
2
+
3
+ export default {
4
+ M_MENU_PINED(state: UI_I_MainState, payload: boolean): void {
5
+ state.isMenuPined = payload
6
+ },
7
+ }
@@ -1,7 +1,7 @@
1
- import type {UI_I_MainState} from "~/store/main/lib/interfaces";
2
-
3
- const state: UI_I_MainState = {
4
- isMenuPined: false,
5
- }
6
-
7
- export default state
1
+ import type {UI_I_MainState} from "~/store/main/lib/interfaces";
2
+
3
+ const state: UI_I_MainState = {
4
+ isMenuPined: false,
5
+ }
6
+
7
+ export default state