bfg-common 1.1.85 → 1.1.87

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 (638) hide show
  1. package/.eslintrc.js +21 -21
  2. package/.idea/inspectionProfiles/Project_Default.xml +48 -48
  3. package/.idea/modules.xml +7 -7
  4. package/.idea/prettier.xml +5 -5
  5. package/.idea/uikit.iml +11 -11
  6. package/.idea/vcs.xml +5 -5
  7. package/.prettierrc +4 -4
  8. package/PROJECT_STRUCTURE.md +42 -42
  9. package/README.md +42 -42
  10. package/assets/img/icons/icon-hcs.svg +3 -3
  11. package/assets/img/icons/icon-life-m-dark.svg +3 -3
  12. package/assets/img/icons/icon-life-m-light.svg +3 -3
  13. package/assets/img/icons/icon-ro-dark.svg +1 -1
  14. package/assets/img/icons/icon-ro-light.svg +2 -2
  15. package/assets/img/icons/icons-sprite-dark-6.svg +1 -1
  16. package/assets/img/icons/icons-sprite-light-6.svg +1 -1
  17. package/assets/img/icons/info.svg +8 -8
  18. package/assets/img/icons/vc.svg +52 -52
  19. package/assets/img/logo copy.svg +50 -50
  20. package/assets/img/logo.svg +51 -51
  21. package/assets/localization/local_be.json +2072 -2072
  22. package/assets/localization/local_en.json +2075 -2075
  23. package/assets/localization/local_hy.json +2075 -2075
  24. package/assets/localization/local_kk.json +2075 -2075
  25. package/assets/localization/local_ru.json +2075 -2075
  26. package/assets/localization/local_zh.json +2075 -2075
  27. package/assets/scss/clarity/clr-ui.min.css +8 -8
  28. package/assets/scss/common/animations.scss +28 -28
  29. package/assets/scss/common/global.scss +172 -172
  30. package/assets/scss/common/icons/icons-1.scss +188 -188
  31. package/assets/scss/common/icons/icons-2.scss +208 -208
  32. package/assets/scss/common/icons/icons-3.scss +176 -176
  33. package/assets/scss/common/icons/icons-4.scss +179 -179
  34. package/assets/scss/common/icons/icons-5.scss +53 -53
  35. package/assets/scss/common/icons/icons-6.scss +29 -29
  36. package/assets/scss/common/icons/icons.scss +15 -15
  37. package/assets/scss/common/mixins.scss +39 -39
  38. package/assets/scss/common/normalize.scss +320 -320
  39. package/assets/scss/common/theme.scss +230 -230
  40. package/assets/scss/common/utilities.scss +18 -18
  41. package/assets/scss/common/variables.scss +43 -43
  42. package/assets/scss/main.scss +13 -13
  43. package/components/atoms/DiagramIcon.vue +334 -334
  44. package/components/atoms/TheIcon.vue +1687 -1687
  45. package/components/atoms/TheIcon2.vue +355 -355
  46. package/components/atoms/alert/Alert.spec.ts +38 -38
  47. package/components/atoms/alert/Alert.vue +84 -84
  48. package/components/atoms/alert/Notification.spec.ts +34 -34
  49. package/components/atoms/alert/models/enums.ts +12 -12
  50. package/components/atoms/alert/models/interfaces.ts +27 -27
  51. package/components/atoms/alert/models/types.ts +7 -7
  52. package/components/atoms/collapse/CollapseNav.vue +158 -158
  53. package/components/atoms/collapse/CollapseNavItem.vue +190 -190
  54. package/components/atoms/collapse/models/interfaces.ts +9 -9
  55. package/components/atoms/combobox/Combobox.vue +147 -147
  56. package/components/atoms/datepicker/config/allShortMonths.ts +103 -103
  57. package/components/atoms/datepicker/config/datapicker.ts +43 -43
  58. package/components/atoms/datepicker/models/interfaces.ts +8 -8
  59. package/components/atoms/dropdown/Portlet.spec.ts +26 -26
  60. package/components/atoms/dropdown/Portlet.vue +111 -111
  61. package/components/atoms/dropdown/dropdown/Dropdown.vue +148 -148
  62. package/components/atoms/dropdown/dropdown/models/interfaces.ts +8 -8
  63. package/components/atoms/dropdown/tree/Tree.vue +134 -134
  64. package/components/atoms/dropdown/tree/models/interfaces.ts +9 -9
  65. package/components/atoms/input/Search.vue +16 -16
  66. package/components/atoms/list/SimpleList.vue +29 -29
  67. package/components/atoms/list/dragDropList/DragDropList.vue +139 -139
  68. package/components/atoms/list/dragDropList/config/events.ts +4 -4
  69. package/components/atoms/loader/BarLoader.vue +21 -21
  70. package/components/atoms/loader/Loader.vue +26 -26
  71. package/components/atoms/loader/PreLoader.vue +34 -34
  72. package/components/atoms/loader/Preloader.spec.ts +24 -24
  73. package/components/atoms/modal/Modal.spec.ts +55 -55
  74. package/components/atoms/modal/Modal.vue +241 -241
  75. package/components/atoms/modal/bySteps/BySteps.spec.ts +66 -66
  76. package/components/atoms/modal/bySteps/BySteps.vue +241 -241
  77. package/components/atoms/modal/byStepsSecond/ByStepsSecond.vue +174 -174
  78. package/components/atoms/models/interfaces.ts +11 -11
  79. package/components/atoms/nav/NavBar.spec.ts +34 -34
  80. package/components/atoms/nav/models/interfaces.ts +5 -5
  81. package/components/atoms/notificationBar/models/enums.ts +13 -13
  82. package/components/atoms/notificationBar/models/interfaces.ts +6 -6
  83. package/components/atoms/notificationBar/models/types.ts +1 -1
  84. package/components/atoms/popover/Popover.vue +48 -48
  85. package/components/atoms/select/TheSelect.vue +175 -175
  86. package/components/atoms/select/models/interfaces.ts +4 -4
  87. package/components/atoms/stack/StackBlock.vue +171 -171
  88. package/components/atoms/stack/StackContent.vue +60 -60
  89. package/components/atoms/step/VerticalStep.spec.ts +68 -68
  90. package/components/atoms/step/models/verticalStepItem.ts +7 -7
  91. package/components/atoms/table/compact/Compact.vue +526 -526
  92. package/components/atoms/table/compact/models/interfaces.ts +10 -10
  93. package/components/atoms/table/dataGrid/DataGrid.spec.ts +61 -61
  94. package/components/atoms/table/dataGrid/DataGrid.vue +1471 -1471
  95. package/components/atoms/table/dataGrid/DataGridPagination.vue +89 -89
  96. package/components/atoms/table/dataGrid/config/itemsPerPage.ts +20 -20
  97. package/components/atoms/table/dataGrid/models/interfaces.ts +24 -24
  98. package/components/atoms/table/dataGrid/models/types.ts +5 -5
  99. package/components/atoms/table/dataGrid/utils/constructDataTable.ts +32 -32
  100. package/components/atoms/table/info/Info.vue +60 -60
  101. package/components/atoms/table/info/models/interfaces.ts +6 -6
  102. package/components/atoms/table/simpleEvent/SimpleEvent.vue +98 -98
  103. package/components/atoms/table/simpleEvent/models/interfaces.ts +9 -9
  104. package/components/atoms/table/simpleInfo/SimpleInfo.vue +68 -68
  105. package/components/atoms/table/simpleInfo/models/interfaces.ts +4 -4
  106. package/components/atoms/table/simpleTable/SimpleTable.vue +291 -291
  107. package/components/atoms/table/simpleTable/models/interfaces.ts +10 -10
  108. package/components/atoms/tabs/VerticalTabs.vue +81 -81
  109. package/components/atoms/tabs/models/interfaces.ts +4 -4
  110. package/components/atoms/tabs/models/types.ts +1 -1
  111. package/components/atoms/tooltip/Models/interfaces.ts +4 -4
  112. package/components/atoms/tooltip/Text.vue +39 -39
  113. package/components/atoms/tooltip/Tooltip.vue +57 -57
  114. package/components/atoms/tooltip/TooltipError.vue +113 -113
  115. package/components/common/accordion/Accordion.vue +183 -183
  116. package/components/common/accordion/Recursion.vue +216 -216
  117. package/components/common/accordion/models/enums.ts +5 -5
  118. package/components/common/accordion/models/interfaces.ts +15 -15
  119. package/components/common/accordion/models/types.ts +1 -1
  120. package/components/common/accordion/utils/accordion.ts +31 -31
  121. package/components/common/adapterManager/AdapterManager.vue +715 -715
  122. package/components/common/adapterManager/AddAdapterModal.vue +464 -464
  123. package/components/common/adapterManager/config/index.ts +19 -19
  124. package/components/common/adapterManager/ui/NoSelectedAdapter.vue +39 -39
  125. package/components/common/adapterManager/ui/SecondTitle.vue +37 -37
  126. package/components/common/adapterManager/ui/actions/ActionsBar.vue +93 -93
  127. package/components/common/adapterManager/ui/actions/AddAdapterButton.vue +28 -28
  128. package/components/common/adapterManager/ui/actions/MoveDownAdapterButton.vue +33 -33
  129. package/components/common/adapterManager/ui/actions/MoveUpAdapterButton.vue +33 -33
  130. package/components/common/adapterManager/ui/actions/RemoveAdapterButton.vue +34 -34
  131. package/components/common/adapterManager/ui/actions/VerticalSeparator.vue +10 -10
  132. package/components/common/adapterManager/ui/table/Adapters.vue +91 -91
  133. package/components/common/adapterManager/ui/table/Header.vue +89 -89
  134. package/components/common/adapterManager/ui/table/Table.vue +167 -167
  135. package/components/common/addNetworking/AddNetworking.vue +996 -996
  136. package/components/common/addNetworking/Wizard.vue +286 -286
  137. package/components/common/addNetworking/config/addNetworkingSteps.ts +438 -438
  138. package/components/common/addNetworking/config/index.ts +47 -47
  139. package/components/common/addNetworking/config/initialData.ts +78 -78
  140. package/components/common/addNetworking/config/portPropertiesStep.ts +19 -19
  141. package/components/common/addNetworking/config/selectSwitch.ts +19 -19
  142. package/components/common/addNetworking/config/sendData.ts +102 -102
  143. package/components/common/addNetworking/config/temporaryData.ts +7 -7
  144. package/components/common/addNetworking/config/validation.ts +23 -23
  145. package/components/common/addNetworking/mappers/mappers.ts +166 -166
  146. package/components/common/addNetworking/modals/SelectNetwork.vue +149 -149
  147. package/components/common/addNetworking/modals/SelectStandardSwitch.vue +125 -125
  148. package/components/common/addNetworking/modals/SelectSwitch.vue +114 -114
  149. package/components/common/addNetworking/models/enums.ts +6 -6
  150. package/components/common/addNetworking/models/interfaces.ts +208 -208
  151. package/components/common/addNetworking/models/types.ts +4 -4
  152. package/components/common/addNetworking/steps/ConnectionSettings.vue +269 -269
  153. package/components/common/addNetworking/steps/CreateStandardSwitch.vue +91 -91
  154. package/components/common/addNetworking/steps/Header.vue +52 -52
  155. package/components/common/addNetworking/steps/IpFourSettings.vue +361 -361
  156. package/components/common/addNetworking/steps/PhysicalAdapter.vue +24 -24
  157. package/components/common/addNetworking/steps/PortProperties.vue +481 -481
  158. package/components/common/addNetworking/steps/ReadyComplete.vue +29 -29
  159. package/components/common/addNetworking/steps/SelectConnectionType.vue +106 -106
  160. package/components/common/addNetworking/steps/SelectedTargetDevice.vue +558 -558
  161. package/components/common/addNetworking/utils/index.ts +212 -212
  162. package/components/common/browse/blocks/Container.vue +102 -102
  163. package/components/common/browse/blocks/contents/Files.vue +68 -68
  164. package/components/common/browse/blocks/info/Date.vue +21 -21
  165. package/components/common/browse/blocks/info/Size.vue +17 -17
  166. package/components/common/browse/blocks/info/Text.vue +16 -16
  167. package/components/common/browse/blocks/models/types.ts +1 -1
  168. package/components/common/browse/models/interfaces.ts +5 -5
  169. package/components/common/config/states.ts +67 -67
  170. package/components/common/context/Context.spec.ts +20 -20
  171. package/components/common/context/Context.vue +97 -97
  172. package/components/common/context/ContextRecursion.spec.ts +55 -55
  173. package/components/common/context/ContextRecursion.vue +251 -251
  174. package/components/common/context/models/interfaces.ts +26 -26
  175. package/components/common/details/DetailsItem.vue +106 -106
  176. package/components/common/details/DetailsList.vue +23 -23
  177. package/components/common/details/model/interfaces.ts +9 -9
  178. package/components/common/diagramMain/Header.vue +163 -163
  179. package/components/common/diagramMain/Highlights.vue +102 -102
  180. package/components/common/diagramMain/adapter/Adapter.vue +105 -105
  181. package/components/common/diagramMain/adapter/Block.vue +41 -41
  182. package/components/common/diagramMain/adapter/Contents.vue +96 -96
  183. package/components/common/diagramMain/adapter/Lines.vue +52 -52
  184. package/components/common/diagramMain/adapter/SecondBlock.vue +42 -42
  185. package/components/common/diagramMain/config/index.ts +51 -51
  186. package/components/common/diagramMain/config/initial.ts +37 -37
  187. package/components/common/diagramMain/modals/ManagePhysicalAdaptersModal.vue +236 -236
  188. package/components/common/diagramMain/modals/MigrateVmkernelAdapter.vue +535 -535
  189. package/components/common/diagramMain/modals/config/adapterModal.ts +110 -110
  190. package/components/common/diagramMain/modals/config/diagramConfig.ts +17 -17
  191. package/components/common/diagramMain/modals/config/index.ts +57 -57
  192. package/components/common/diagramMain/modals/config/initial.ts +181 -181
  193. package/components/common/diagramMain/modals/config/migrateVmkernelAdapterSteps.ts +81 -81
  194. package/components/common/diagramMain/modals/config/networkModal.ts +337 -337
  195. package/components/common/diagramMain/modals/config/portModal.ts +201 -201
  196. package/components/common/diagramMain/modals/config/switchModal.ts +172 -172
  197. package/components/common/diagramMain/modals/config/vCenterModal.ts +30 -30
  198. package/components/common/diagramMain/modals/config/validation.ts +2 -2
  199. package/components/common/diagramMain/modals/config/vmKernelAdapter.ts +90 -90
  200. package/components/common/diagramMain/modals/editSettings/ConfirmTeamingSettingsModal.vue +41 -41
  201. package/components/common/diagramMain/modals/editSettings/EditSettings.vue +491 -491
  202. package/components/common/diagramMain/modals/editSettings/EditSettingsModal.vue +714 -714
  203. package/components/common/diagramMain/modals/editSettings/tabs/NetworkProperties.vue +211 -211
  204. package/components/common/diagramMain/modals/editSettings/tabs/Security.vue +183 -183
  205. package/components/common/diagramMain/modals/editSettings/tabs/SwitchProperties.vue +161 -161
  206. package/components/common/diagramMain/modals/editSettings/tabs/TeamingFailover.vue +166 -166
  207. package/components/common/diagramMain/modals/editSettings/tabs/TrafficShaping.vue +393 -393
  208. package/components/common/diagramMain/modals/steps/ConnectionSettings.vue +206 -206
  209. package/components/common/diagramMain/modals/steps/SelectVmkernelAdapter.vue +221 -221
  210. package/components/common/diagramMain/modals/steps/VmkernelAdapterReadyComplete.vue +50 -50
  211. package/components/common/diagramMain/modals/utils/index.ts +9 -9
  212. package/components/common/diagramMain/modals/viewSettings/Info.vue +96 -96
  213. package/components/common/diagramMain/modals/viewSettings/ViewSettings.vue +171 -171
  214. package/components/common/diagramMain/modals/viewSettings/ViewSettingsModal.vue +93 -93
  215. package/components/common/diagramMain/models/enums.ts +26 -26
  216. package/components/common/diagramMain/models/interfaces.ts +565 -565
  217. package/components/common/diagramMain/models/types.ts +9 -9
  218. package/components/common/diagramMain/network/Block.vue +55 -55
  219. package/components/common/diagramMain/network/Lines.vue +65 -65
  220. package/components/common/diagramMain/network/Network.vue +117 -117
  221. package/components/common/diagramMain/network/NoNetwork.vue +47 -47
  222. package/components/common/diagramMain/network/SecondBlock.vue +51 -51
  223. package/components/common/diagramMain/port/Port.vue +301 -301
  224. package/components/common/diagramMain/port/Ports.vue +41 -41
  225. package/components/common/diagramMain/switch/Switch.vue +71 -71
  226. package/components/common/diagramMain/switch/SwitchSelected.vue +29 -29
  227. package/components/common/diagramMain/utils/utils.ts +218 -218
  228. package/components/common/feedback/Feedback.vue +236 -236
  229. package/components/common/feedback/config/drawingPanel.ts +31 -31
  230. package/components/common/feedback/config/feedbackTabs.ts +24 -24
  231. package/components/common/feedback/models/interfaces.ts +15 -15
  232. package/components/common/graph/Graph.vue +109 -109
  233. package/components/common/graph/utils/renderGraph.ts +389 -389
  234. package/components/common/headline/Headline.vue +32 -32
  235. package/components/common/help/navbar/left/models/interfaces.ts +6 -6
  236. package/components/common/help/navbar/right/Right.vue +139 -139
  237. package/components/common/help/navbar/right/models/interfaces.ts +4 -4
  238. package/components/common/home/Card.vue +63 -63
  239. package/components/common/home/ResourceBlock.vue +117 -117
  240. package/components/common/home/StatusContent.vue +47 -47
  241. package/components/common/home/alertsTable/AlertsTable.vue +105 -105
  242. package/components/common/home/alertsTable/config/config.ts +61 -61
  243. package/components/common/home/alertsTable/models/enums.ts +11 -11
  244. package/components/common/home/alertsTable/models/interfaces.ts +19 -19
  245. package/components/common/home/alertsTable/models/types.ts +18 -18
  246. package/components/common/home/config/configResourceMeterBlock.ts +25 -25
  247. package/components/common/home/models/interfaces.ts +59 -59
  248. package/components/common/home/models/types.ts +18 -18
  249. package/components/common/home/servicesTable/ServicesTable.vue +79 -79
  250. package/components/common/home/servicesTable/config/config.ts +62 -62
  251. package/components/common/mainNavigationPanel/models/interfaces.ts +6 -6
  252. package/components/common/mainNavigationPanel/models/types.ts +1 -1
  253. package/components/common/modals/Confirmation.vue +85 -85
  254. package/components/common/modals/config/defaultForm.ts +18 -18
  255. package/components/common/modals/config/renameLabelWidth.ts +3 -3
  256. package/components/common/modals/models/interfaces.ts +5 -5
  257. package/components/common/monitor/advanced/Advanced.vue +234 -234
  258. package/components/common/monitor/advanced/GraphView.vue +141 -141
  259. package/components/common/monitor/advanced/models/interfaces.ts +7 -7
  260. package/components/common/monitor/advanced/models/types.ts +1 -1
  261. package/components/common/monitor/advanced/table/Table.vue +90 -90
  262. package/components/common/monitor/advanced/table/config/performanceDatatable.ts +116 -116
  263. package/components/common/monitor/advanced/table/models/interfaces.ts +12 -12
  264. package/components/common/monitor/advanced/table/models/types.ts +10 -10
  265. package/components/common/monitor/advanced/tools/Tools.vue +428 -428
  266. package/components/common/monitor/advanced/tools/chartOptionsModal/ChartOptionsModal.vue +484 -484
  267. package/components/common/monitor/advanced/tools/chartOptionsModal/Notification.vue +33 -33
  268. package/components/common/monitor/advanced/tools/chartOptionsModal/actions/Actions.vue +150 -150
  269. package/components/common/monitor/advanced/tools/chartOptionsModal/actions/saveOptionsModal/SaveOptionsModal.vue +76 -76
  270. package/components/common/monitor/advanced/tools/chartOptionsModal/actions/utils/optionsActions.ts +25 -25
  271. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/Counters.vue +94 -94
  272. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/table/Table.vue +130 -130
  273. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/table/config/tableConfig.ts +71 -71
  274. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/table/config/utils.ts +689 -689
  275. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/table/models/interfaces.ts +28 -28
  276. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/table/models/types.ts +5 -5
  277. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/Timespan.vue +79 -79
  278. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/form/Form.vue +501 -501
  279. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/form/config/dateForm.ts +59 -59
  280. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/object/Object.vue +176 -176
  281. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/object/config/objectTable.ts +54 -54
  282. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/object/models/interfaces.ts +4 -4
  283. package/components/common/monitor/advanced/tools/chartOptionsModal/counters/timespan/object/models/types.ts +1 -1
  284. package/components/common/monitor/advanced/tools/chartOptionsModal/metrics/Metrics.vue +42 -42
  285. package/components/common/monitor/advanced/tools/chartOptionsModal/metrics/config/optionsMetrics.ts +116 -116
  286. package/components/common/monitor/advanced/tools/chartOptionsModal/models/models.ts +19 -19
  287. package/components/common/monitor/advanced/tools/chartOptionsModal/models/types.ts +3 -3
  288. package/components/common/monitor/advanced/tools/config/advancedToolbar.ts +117 -117
  289. package/components/common/monitor/advanced/tools/models/interfaces.ts +4 -4
  290. package/components/common/monitor/advanced/tools/utils/countCores.ts +7 -7
  291. package/components/common/monitor/config/getValidDateByOption.ts +113 -113
  292. package/components/common/monitor/models/interfaces.ts +20 -20
  293. package/components/common/monitor/overview/Overview.vue +412 -412
  294. package/components/common/monitor/overview/filters/Filters.vue +210 -210
  295. package/components/common/monitor/overview/filters/config/filterOptions.ts +70 -70
  296. package/components/common/monitor/overview/filters/customIntervalModal/CustomIntervalModal.vue +220 -220
  297. package/components/common/monitor/overview/filters/customIntervalModal/config/dateChecker.ts +35 -35
  298. package/components/common/monitor/overview/filters/models/interfaces.ts +7 -7
  299. package/components/common/monitor/overview/filters/models/types.ts +3 -3
  300. package/components/common/recursionTree/models/interfaces.ts +19 -19
  301. package/components/common/resource/models/interfaces.ts +9 -9
  302. package/components/common/resource/models/types.ts +1 -1
  303. package/components/common/resource/progressBlock/ProgressBlock.vue +105 -105
  304. package/components/common/resource/simple/Simple.vue +58 -58
  305. package/components/common/resource/simple/models/enums.ts +5 -5
  306. package/components/common/resource/utils.ts +33 -33
  307. package/components/common/select/button/ButtonDropdown.vue +100 -100
  308. package/components/common/select/button/models/interfaces.ts +6 -6
  309. package/components/common/select/radio/RadioGroup.vue +108 -108
  310. package/components/common/select/radio/models/interfaces.ts +8 -8
  311. package/components/common/shortcuts/Block.vue +83 -83
  312. package/components/common/shortcuts/Category.vue +40 -40
  313. package/components/common/shortcuts/Shortcuts.vue +44 -44
  314. package/components/common/shortcuts/models/interfaces.ts +10 -10
  315. package/components/common/spiceConsole/Drawer.vue +241 -241
  316. package/components/common/spiceConsole/SpiceConsole.vue +87 -87
  317. package/components/common/spiceConsole/keyboard/Keyboard.vue +402 -402
  318. package/components/common/spiceConsole/keyboard/config/keyboardRows.ts +891 -891
  319. package/components/common/spiceConsole/keyboard/models/interfaces.ts +17 -17
  320. package/components/common/spiceConsole/models/types.ts +1 -1
  321. package/components/common/split/horizontal/Horizontal.vue +306 -306
  322. package/components/common/split/horizontal/models/interfaces.ts +5 -5
  323. package/components/common/split/vertical/Vertical.vue +213 -213
  324. package/components/common/split/vertical/models/interfaces.ts +3 -3
  325. package/components/common/tools/Actions.vue +163 -163
  326. package/components/common/tools/models/interfaces.ts +6 -6
  327. package/components/common/vm/actions/add/Add.vue +687 -687
  328. package/components/common/vm/actions/add/FolderTreeView.vue +83 -83
  329. package/components/common/vm/actions/add/customizeHardware/CustomizeHardware.vue +264 -264
  330. package/components/common/vm/actions/add/customizeHardware/config/navItems.ts +19 -19
  331. package/components/common/vm/actions/add/customizeHardware/models/interfaces.ts +7 -7
  332. package/components/common/vm/actions/add/customizeHardware/virtualHardware/VirtualHardware.vue +1 -0
  333. package/components/common/vm/actions/add/customizeHardware/virtualHardware/browseView/BrowseView.vue +203 -203
  334. package/components/common/vm/actions/add/customizeHardware/virtualHardware/browseView/models/interfaces.ts +8 -8
  335. package/components/common/vm/actions/add/customizeHardware/virtualHardware/bus/Bus.vue +127 -127
  336. package/components/common/vm/actions/add/customizeHardware/virtualHardware/bus/config/options.ts +13 -13
  337. package/components/common/vm/actions/add/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDrive.vue +246 -246
  338. package/components/common/vm/actions/add/customizeHardware/virtualHardware/cdDvdDrive/config/fileTypes.ts +9 -9
  339. package/components/common/vm/actions/add/customizeHardware/virtualHardware/cdDvdDrive/config/options.ts +11 -11
  340. package/components/common/vm/actions/add/customizeHardware/virtualHardware/cdDvdDrive/media/Media.vue +55 -55
  341. package/components/common/vm/actions/add/customizeHardware/virtualHardware/cdDvdDrive/models/types.ts +1 -1
  342. package/components/common/vm/actions/add/customizeHardware/virtualHardware/config/binaryOptions.ts +12 -12
  343. package/components/common/vm/actions/add/customizeHardware/virtualHardware/config/dropdownItems.ts +52 -52
  344. package/components/common/vm/actions/add/customizeHardware/virtualHardware/cpu/Cpu.vue +7 -7
  345. package/components/common/vm/actions/add/customizeHardware/virtualHardware/cpu/CpuHotPlug.vue +49 -49
  346. package/components/common/vm/actions/add/customizeHardware/virtualHardware/cpu/CpuModel.vue +220 -220
  347. package/components/common/vm/actions/add/customizeHardware/virtualHardware/cpu/Hv.vue +93 -93
  348. package/components/common/vm/actions/add/customizeHardware/virtualHardware/cpu/Iommu.vue +52 -52
  349. package/components/common/vm/actions/add/customizeHardware/virtualHardware/cpu/MaxCpu.vue +105 -105
  350. package/components/common/vm/actions/add/customizeHardware/virtualHardware/cpu/Pc.vue +54 -54
  351. package/components/common/vm/actions/add/customizeHardware/virtualHardware/cpu/Sa.vue +102 -102
  352. package/components/common/vm/actions/add/customizeHardware/virtualHardware/cpu/config/cpuOptions.ts +19 -19
  353. package/components/common/vm/actions/add/customizeHardware/virtualHardware/cpu/shares/Shares.vue +155 -155
  354. package/components/common/vm/actions/add/customizeHardware/virtualHardware/cpu/shares/config/options.ts +28 -28
  355. package/components/common/vm/actions/add/customizeHardware/virtualHardware/cpu/tooltip/Tooltip.vue +58 -58
  356. package/components/common/vm/actions/add/customizeHardware/virtualHardware/memory/Memory.vue +1 -1
  357. package/components/common/vm/actions/add/customizeHardware/virtualHardware/memory/MemoryHotPlug.vue +53 -53
  358. package/components/common/vm/actions/add/customizeHardware/virtualHardware/models/interfaces.ts +125 -125
  359. package/components/common/vm/actions/add/customizeHardware/virtualHardware/models/types.ts +4 -4
  360. package/components/common/vm/actions/add/customizeHardware/virtualHardware/newHardDisk/DiskFile.vue +24 -24
  361. package/components/common/vm/actions/add/customizeHardware/virtualHardware/newHardDisk/Location.vue +171 -171
  362. package/components/common/vm/actions/add/customizeHardware/virtualHardware/newHardDisk/MaximumSize.vue +27 -27
  363. package/components/common/vm/actions/add/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +1 -1
  364. package/components/common/vm/actions/add/customizeHardware/virtualHardware/newHardDisk/cache/Cache.vue +80 -80
  365. package/components/common/vm/actions/add/customizeHardware/virtualHardware/newHardDisk/cache/config/options.ts +7 -7
  366. package/components/common/vm/actions/add/customizeHardware/virtualHardware/newHardDisk/limitIops/LimitIops.vue +151 -151
  367. package/components/common/vm/actions/add/customizeHardware/virtualHardware/newHardDisk/limitIops/config/options.ts +28 -28
  368. package/components/common/vm/actions/add/customizeHardware/virtualHardware/newHardDisk/mode/Mode.vue +87 -87
  369. package/components/common/vm/actions/add/customizeHardware/virtualHardware/newHardDisk/mode/config/options.ts +18 -18
  370. package/components/common/vm/actions/add/customizeHardware/virtualHardware/newHardDisk/provisioning/Provisioning.vue +87 -87
  371. package/components/common/vm/actions/add/customizeHardware/virtualHardware/newHardDisk/provisioning/config/options.ts +15 -15
  372. package/components/common/vm/actions/add/customizeHardware/virtualHardware/newHardDisk/sharing/Sharing.vue +85 -85
  373. package/components/common/vm/actions/add/customizeHardware/virtualHardware/newHardDisk/sharing/config/options.ts +12 -12
  374. package/components/common/vm/actions/add/customizeHardware/virtualHardware/newNetwork/Location.vue +141 -141
  375. package/components/common/vm/actions/add/customizeHardware/virtualHardware/newNetwork/NewNetwork.vue +33 -3
  376. package/components/common/vm/actions/add/customizeHardware/virtualHardware/newNetwork/adapterType/AdapterType.vue +86 -86
  377. package/components/common/vm/actions/add/customizeHardware/virtualHardware/newNetwork/adapterType/config/options.ts +9 -9
  378. package/components/common/vm/actions/add/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddress.vue +140 -140
  379. package/components/common/vm/actions/add/customizeHardware/virtualHardware/newNetwork/macAddress/config/options.ts +11 -11
  380. package/components/common/vm/actions/add/customizeHardware/virtualHardware/newPciDevice/NewPciDevice.vue +157 -157
  381. package/components/common/vm/actions/add/customizeHardware/virtualHardware/newPciDevice/config/options.ts +7 -7
  382. package/components/common/vm/actions/add/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIo.vue +44 -44
  383. package/components/common/vm/actions/add/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIo.vue +49 -49
  384. package/components/common/vm/actions/add/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/config/options.ts +10 -10
  385. package/components/common/vm/actions/add/customizeHardware/virtualHardware/newPciDevice/note/Note.vue +27 -27
  386. package/components/common/vm/actions/add/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGrid.vue +41 -41
  387. package/components/common/vm/actions/add/customizeHardware/virtualHardware/newPciDevice/typeSelection/TypeSelection.vue +56 -56
  388. package/components/common/vm/actions/add/customizeHardware/virtualHardware/newUsbController/NewUsbController.vue +67 -67
  389. package/components/common/vm/actions/add/customizeHardware/virtualHardware/newUsbController/config/options.ts +6 -6
  390. package/components/common/vm/actions/add/customizeHardware/virtualHardware/other/InputDevices.vue +21 -21
  391. package/components/common/vm/actions/add/customizeHardware/virtualHardware/other/Other.vue +27 -27
  392. package/components/common/vm/actions/add/customizeHardware/virtualHardware/reservation/config/options.ts +33 -33
  393. package/components/common/vm/actions/add/customizeHardware/virtualHardware/videoCard/Graphics.vue +45 -45
  394. package/components/common/vm/actions/add/customizeHardware/virtualHardware/videoCard/TotalVideoMemory.vue +120 -120
  395. package/components/common/vm/actions/add/customizeHardware/virtualHardware/videoCard/config/options.ts +11 -11
  396. package/components/common/vm/actions/add/customizeHardware/virtualHardware/videoCard/model/Model.vue +57 -57
  397. package/components/common/vm/actions/add/customizeHardware/virtualHardware/videoCard/model/config/options.ts +10 -10
  398. package/components/common/vm/actions/add/customizeHardware/virtualHardware/videoCard/numberDisplays/NumberDisplays.vue +82 -82
  399. package/components/common/vm/actions/add/customizeHardware/virtualHardware/videoCard/numberDisplays/config/options.ts +14 -14
  400. package/components/common/vm/actions/add/customizeHardware/vmoptions/Vmoptions.vue +176 -176
  401. package/components/common/vm/actions/add/customizeHardware/vmoptions/bootOptions/BootOptions.vue +111 -111
  402. package/components/common/vm/actions/add/customizeHardware/vmoptions/bootOptions/Menu.vue +45 -45
  403. package/components/common/vm/actions/add/customizeHardware/vmoptions/bootOptions/Secure.vue +45 -45
  404. package/components/common/vm/actions/add/customizeHardware/vmoptions/bootOptions/delay/Delay.vue +50 -50
  405. package/components/common/vm/actions/add/customizeHardware/vmoptions/bootOptions/delay/config/config.ts +14 -14
  406. package/components/common/vm/actions/add/customizeHardware/vmoptions/bootOptions/firmware/Firmware.vue +83 -83
  407. package/components/common/vm/actions/add/customizeHardware/vmoptions/bootOptions/firmware/config/config.ts +11 -11
  408. package/components/common/vm/actions/add/customizeHardware/vmoptions/bootOptions/order/models/interfaces.ts +8 -8
  409. package/components/common/vm/actions/add/customizeHardware/vmoptions/models/interfaces.ts +34 -34
  410. package/components/common/vm/actions/add/customizeHardware/vmoptions/remoteConsoleOptions/FileTransfer.vue +51 -51
  411. package/components/common/vm/actions/add/customizeHardware/vmoptions/remoteConsoleOptions/FolderSharing.vue +50 -50
  412. package/components/common/vm/actions/add/customizeHardware/vmoptions/remoteConsoleOptions/PlaybackCompression.vue +51 -51
  413. package/components/common/vm/actions/add/customizeHardware/vmoptions/remoteConsoleOptions/PowerControl.vue +49 -49
  414. package/components/common/vm/actions/add/customizeHardware/vmoptions/remoteConsoleOptions/RemoteConsoleOptions.vue +246 -246
  415. package/components/common/vm/actions/add/customizeHardware/vmoptions/remoteConsoleOptions/imgCompression/ImgCompression.vue +84 -84
  416. package/components/common/vm/actions/add/customizeHardware/vmoptions/remoteConsoleOptions/imgCompression/config/config.ts +14 -14
  417. package/components/common/vm/actions/add/customizeHardware/vmoptions/remoteConsoleOptions/jpegCompression/JpegCompression.vue +84 -84
  418. package/components/common/vm/actions/add/customizeHardware/vmoptions/remoteConsoleOptions/jpegCompression/config/config.ts +12 -12
  419. package/components/common/vm/actions/add/customizeHardware/vmoptions/remoteConsoleOptions/keymap/config/config.ts +6 -6
  420. package/components/common/vm/actions/add/customizeHardware/vmoptions/remoteConsoleOptions/mouseMode/MouseMode.vue +52 -52
  421. package/components/common/vm/actions/add/customizeHardware/vmoptions/remoteConsoleOptions/mouseMode/config/config.ts +11 -11
  422. package/components/common/vm/actions/add/customizeHardware/vmoptions/remoteConsoleOptions/password/Password.vue +136 -136
  423. package/components/common/vm/actions/add/customizeHardware/vmoptions/remoteConsoleOptions/password/models/interfaces.ts +5 -5
  424. package/components/common/vm/actions/add/customizeHardware/vmoptions/remoteConsoleOptions/password/utils.ts +12 -12
  425. package/components/common/vm/actions/add/customizeHardware/vmoptions/remoteConsoleOptions/sharePolicy/SharePolicy.vue +52 -52
  426. package/components/common/vm/actions/add/customizeHardware/vmoptions/remoteConsoleOptions/sharePolicy/config/config.ts +11 -11
  427. package/components/common/vm/actions/add/customizeHardware/vmoptions/remoteConsoleOptions/streamingMode/StreamingMode.vue +84 -84
  428. package/components/common/vm/actions/add/customizeHardware/vmoptions/remoteConsoleOptions/streamingMode/config/config.ts +12 -12
  429. package/components/common/vm/actions/add/customizeHardware/vmoptions/remoteConsoleOptions/type/Type.vue +84 -84
  430. package/components/common/vm/actions/add/customizeHardware/vmoptions/remoteConsoleOptions/type/config/config.ts +7 -7
  431. package/components/common/vm/actions/add/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirection.vue +56 -56
  432. package/components/common/vm/actions/add/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/config/config.ts +14 -14
  433. package/components/common/vm/actions/add/customizeHardware/vmoptions/remoteConsoleOptions/zlibCompression/ZlibCompression.vue +84 -84
  434. package/components/common/vm/actions/add/customizeHardware/vmoptions/remoteConsoleOptions/zlibCompression/config/config.ts +12 -12
  435. package/components/common/vm/actions/add/customizeHardware/vmoptions/tools/Tools.vue +63 -63
  436. package/components/common/vm/actions/add/models/enums.ts +89 -89
  437. package/components/common/vm/actions/add/models/interfaces.ts +126 -126
  438. package/components/common/vm/actions/add/models/types.ts +65 -65
  439. package/components/common/vm/actions/add/readyToComplete/ReadyToComplete.vue +15 -15
  440. package/components/common/vm/actions/add/select/compatibility/Compatibility.vue +151 -151
  441. package/components/common/vm/actions/add/select/computeResource/ComputeResource.spec.ts +479 -479
  442. package/components/common/vm/actions/add/select/computeResource/ComputeResource.vue +170 -170
  443. package/components/common/vm/actions/add/select/computeResource/TreeView.vue +126 -126
  444. package/components/common/vm/actions/add/select/createType/CreateType.vue +61 -61
  445. package/components/common/vm/actions/add/select/createType/config/items.ts +26 -26
  446. package/components/common/vm/actions/add/select/models/interfaces.ts +32 -32
  447. package/components/common/vm/actions/add/select/models/types.ts +44 -44
  448. package/components/common/vm/actions/add/select/name/Name.vue +215 -215
  449. package/components/common/vm/actions/add/select/os/os.vue +221 -221
  450. package/components/common/vm/actions/add/select/storage/Storage.vue +177 -177
  451. package/components/common/vm/actions/add/select/storage/models/types.ts +15 -15
  452. package/components/common/vm/actions/add/utils.ts +118 -118
  453. package/components/common/vm/actions/editSettings/EditSettings.vue +316 -316
  454. package/components/common/vm/actions/editSettings/models/types.ts +23 -23
  455. package/components/common/vm/actions/editSettings/utils.ts +48 -48
  456. package/components/common/vm/actions/models/interfaces.ts +6 -6
  457. package/components/common/vm/actions/models/types.ts +11 -11
  458. package/components/common/vm/actions/utils.ts +221 -221
  459. package/components/common/wizards/datastore/add/Add.vue +382 -382
  460. package/components/common/wizards/datastore/add/config/stepItems.ts +160 -160
  461. package/components/common/wizards/datastore/add/local/Local.vue +67 -67
  462. package/components/common/wizards/datastore/add/local/createName/CreateName.vue +159 -159
  463. package/components/common/wizards/datastore/add/local/createName/config/defaultForm.ts +15 -15
  464. package/components/common/wizards/datastore/add/models/interfaces.ts +35 -35
  465. package/components/common/wizards/datastore/add/models/types.ts +14 -14
  466. package/components/common/wizards/datastore/add/nfs/Nfs.vue +91 -91
  467. package/components/common/wizards/datastore/add/nfs/accessibility/Accessibility.vue +95 -95
  468. package/components/common/wizards/datastore/add/nfs/accessibility/config/tabsPannel.ts +24 -24
  469. package/components/common/wizards/datastore/add/nfs/accessibility/models/interfaces.ts +9 -9
  470. package/components/common/wizards/datastore/add/nfs/accessibility/models/types.ts +5 -5
  471. package/components/common/wizards/datastore/add/nfs/accessibility/tablesView/TablesView.vue +141 -141
  472. package/components/common/wizards/datastore/add/nfs/accessibility/tablesView/config/compatibleTable.ts +54 -54
  473. package/components/common/wizards/datastore/add/nfs/accessibility/tablesView/config/hostsTableItems.ts +75 -75
  474. package/components/common/wizards/datastore/add/nfs/accessibility/tablesView/config/incompatibleTable.ts +68 -68
  475. package/components/common/wizards/datastore/add/nfs/accessibility/tablesView/config/tableKeys.ts +15 -15
  476. package/components/common/wizards/datastore/add/nfs/configuration/config/defaultForm.ts +33 -33
  477. package/components/common/wizards/datastore/add/nfs/configuration/models/interfaces.ts +12 -12
  478. package/components/common/wizards/datastore/add/nfs/configuration/serversList/DeletePopover.vue +97 -97
  479. package/components/common/wizards/datastore/add/nfs/configuration/serversList/config/serversListConfig.ts +41 -41
  480. package/components/common/wizards/datastore/add/nfs/configuration/serversList/config/tableKeys.ts +3 -3
  481. package/components/common/wizards/datastore/add/nfs/configuration/serversList/models/interfaces.ts +11 -11
  482. package/components/common/wizards/datastore/add/nfs/configuration/serversList/models/types.ts +1 -1
  483. package/components/common/wizards/datastore/add/nfs/kerberosAuthentication/config/radioOptions.ts +24 -24
  484. package/components/common/wizards/datastore/add/nfs/version/Version.vue +42 -42
  485. package/components/common/wizards/datastore/add/nfs/version/config/versionOptions.ts +20 -20
  486. package/components/common/wizards/datastore/add/readyComplete/ReadyComplete.vue +77 -77
  487. package/components/common/wizards/datastore/add/readyComplete/config/propertiesDetails.ts +165 -165
  488. package/components/common/wizards/datastore/add/readyComplete/models/interfaces.ts +4 -4
  489. package/components/common/wizards/datastore/add/sharedStorm/SharedStorm.vue +85 -85
  490. package/components/common/wizards/datastore/add/sharedStorm/deviceSelection/DeviceSelection.vue +447 -447
  491. package/components/common/wizards/datastore/add/sharedStorm/deviceSelection/config/defaultForm.ts +18 -18
  492. package/components/common/wizards/datastore/add/sharedStorm/deviceSelection/config/selectOptions.ts +14 -14
  493. package/components/common/wizards/datastore/add/sharedStorm/deviceSelection/hostTable/config/hostsTable.ts +87 -87
  494. package/components/common/wizards/datastore/add/sharedStorm/deviceSelection/hostTable/config/tableKeys.ts +11 -11
  495. package/components/common/wizards/datastore/add/sharedStorm/deviceSelection/models/interfaces.ts +55 -55
  496. package/components/common/wizards/datastore/add/sharedStorm/deviceSelection/models/types.ts +14 -14
  497. package/components/common/wizards/datastore/add/sharedStorm/partitionConfiguration/config/selectOptions.ts +46 -46
  498. package/components/common/wizards/datastore/add/sharedStorm/partitionConfiguration/graphicTooltip/graphicTooltip.vue +64 -64
  499. package/components/common/wizards/datastore/add/sharedStorm/partitionConfiguration/sizeGraphic/sizeGraphic.vue +225 -225
  500. package/components/common/wizards/datastore/add/sharedStorm/version/Version.vue +39 -39
  501. package/components/common/wizards/datastore/add/sharedStorm/version/config/versionOptions.ts +21 -21
  502. package/components/common/wizards/datastore/add/types/Types.vue +77 -77
  503. package/components/common/wizards/datastore/add/types/config/typeOptions.ts +39 -39
  504. package/components/common/wizards/datastore/add/utils.ts +69 -69
  505. package/components/content/Hint.vue +24 -24
  506. package/components/models/interfaces.ts +14 -14
  507. package/composables/deepCopy.ts +21 -21
  508. package/composables/useDiff.ts +15 -15
  509. package/composables/useLocal.ts +36 -36
  510. package/composables/useLocalStorage.ts +45 -45
  511. package/composables/useThrottle.ts +32 -32
  512. package/composables/useUniqueId.ts +5 -5
  513. package/config/regExp.ts +13 -13
  514. package/eslint/index.js +15 -15
  515. package/eslint/no-import-type.js +17 -17
  516. package/eslint/no-invalid-type-prefix.js +32 -32
  517. package/minify.js +51 -51
  518. package/models/composables/useMyFetch/interfaces.ts +4 -4
  519. package/models/composables/useMyFetch/types.ts +1 -1
  520. package/models/enums.ts +21 -21
  521. package/models/interfaces.ts +29 -29
  522. package/models/plugins/date/interfaces.ts +5 -5
  523. package/models/plugins/date/types.ts +1 -1
  524. package/models/plugins/validation/interfaces.ts +21 -21
  525. package/models/plugins/validation/types.ts +1 -1
  526. package/models/store/host/interfaces.ts +38 -38
  527. package/models/store/network/interfaces.ts +13 -13
  528. package/models/store/vm/interfaces.ts +207 -207
  529. package/models/types.ts +6 -6
  530. package/modules/fixContentBuild/index.ts +92 -92
  531. package/modules/replaceEnv/index.ts +40 -40
  532. package/nuxt.config.ts +8 -8
  533. package/package.json +39 -39
  534. package/plugins/binary.ts +122 -122
  535. package/plugins/date.ts +179 -179
  536. package/plugins/recursion.ts +230 -230
  537. package/plugins/spice-console/spice.console.ts +128 -128
  538. package/plugins/text.ts +48 -48
  539. package/plugins/validation.ts +172 -172
  540. package/public/spice-console/application/WorkerProcess.js +3350 -3350
  541. package/public/spice-console/application/WorkerProcess_back.js +3144 -3144
  542. package/public/spice-console/application/WorkerProcess_meta.js +3102 -3102
  543. package/public/spice-console/application/WorkerProcess_reverse.js +3214 -3214
  544. package/public/spice-console/application/agent.js +175 -175
  545. package/public/spice-console/application/application.js +641 -641
  546. package/public/spice-console/application/checkActivity.js +50 -50
  547. package/public/spice-console/application/clientgui.js +842 -842
  548. package/public/spice-console/application/clipboard/clipboarddataparser.js +92 -92
  549. package/public/spice-console/application/clipboard/local/localClipboard.js +110 -110
  550. package/public/spice-console/application/clipboard.js +82 -82
  551. package/public/spice-console/application/imagecache.js +81 -81
  552. package/public/spice-console/application/inputmanager.js +270 -270
  553. package/public/spice-console/application/packetfactory.js +202 -202
  554. package/public/spice-console/application/packetfilter.js +103 -103
  555. package/public/spice-console/application/packetprocess.js +75 -75
  556. package/public/spice-console/application/rasteroperation.js +118 -118
  557. package/public/spice-console/application/spiceconnection.js +197 -197
  558. package/public/spice-console/application/stream.js +67 -67
  559. package/public/spice-console/application/virtualmouse.js +109 -109
  560. package/public/spice-console/keymaps/keyevent.js +36 -36
  561. package/public/spice-console/keymaps/keymap.js +229 -229
  562. package/public/spice-console/keymaps/keymapes.js +375 -375
  563. package/public/spice-console/keymaps/keymapesObj.js +316 -316
  564. package/public/spice-console/keymaps/keymapus.js +317 -317
  565. package/public/spice-console/keymaps/scanCodeObjModifier.js +65 -65
  566. package/public/spice-console/keymaps/scanCodeObjProvider.js +60 -60
  567. package/public/spice-console/lib/AsyncConsumer.js +204 -204
  568. package/public/spice-console/lib/AsyncWorker.js +60 -60
  569. package/public/spice-console/lib/CollisionDetector.js +27 -27
  570. package/public/spice-console/lib/DataLogger.js +197 -197
  571. package/public/spice-console/lib/GenericObjectPool.js +152 -152
  572. package/public/spice-console/lib/GlobalPool.js +114 -114
  573. package/public/spice-console/lib/ImageUncompressor.js +138 -138
  574. package/public/spice-console/lib/IntegrationBenchmark.js +64 -64
  575. package/public/spice-console/lib/PacketWorkerIdentifier.js +107 -107
  576. package/public/spice-console/lib/SyncAsyncHandler.js +46 -46
  577. package/public/spice-console/lib/base64.js +298 -298
  578. package/public/spice-console/lib/biginteger.js +1640 -1640
  579. package/public/spice-console/lib/bowser.js +276 -276
  580. package/public/spice-console/lib/decoder/dixie.js +7930 -7930
  581. package/public/spice-console/lib/decoder/jmuxer.js +2815 -2815
  582. package/public/spice-console/lib/displayRouter.js +83 -83
  583. package/public/spice-console/lib/encrypt.js +191 -191
  584. package/public/spice-console/lib/flipper.js +39 -39
  585. package/public/spice-console/lib/graphic.js +1230 -1230
  586. package/public/spice-console/lib/graphicdebug.js +223 -223
  587. package/public/spice-console/lib/images/bitmap.js +194 -194
  588. package/public/spice-console/lib/images/jsquic_family.js +83 -83
  589. package/public/spice-console/lib/images/jsquic_rgba.js +342 -342
  590. package/public/spice-console/lib/images/jsquic_uncompress.js +529 -529
  591. package/public/spice-console/lib/images/lz.js +717 -717
  592. package/public/spice-console/lib/images/png.js +275 -275
  593. package/public/spice-console/lib/jgestures.min.js +43 -43
  594. package/public/spice-console/lib/jquery-2.0.3.js +8829 -8829
  595. package/public/spice-console/lib/jquery-mousewheel.js +83 -83
  596. package/public/spice-console/lib/jquery-visibility.min.js +1 -1
  597. package/public/spice-console/lib/jsbn.js +578 -578
  598. package/public/spice-console/lib/jsbn2.js +675 -675
  599. package/public/spice-console/lib/lodash.4.0.0.min.js +136 -136
  600. package/public/spice-console/lib/modernizr.js +39 -39
  601. package/public/spice-console/lib/pixastic.js +3244 -3244
  602. package/public/spice-console/lib/prettyprint.js +794 -794
  603. package/public/spice-console/lib/prng4.js +64 -64
  604. package/public/spice-console/lib/queue.js +259 -259
  605. package/public/spice-console/lib/rng.js +87 -87
  606. package/public/spice-console/lib/runqueue.js +103 -103
  607. package/public/spice-console/lib/sha1.js +124 -124
  608. package/public/spice-console/lib/stuckkeyshandler.js +122 -122
  609. package/public/spice-console/lib/timelapsedetector.js +62 -62
  610. package/public/spice-console/lib/utils.js +327 -327
  611. package/public/spice-console/lib/virtualjoystick.js +370 -370
  612. package/public/spice-console/network/busconnection.js +195 -195
  613. package/public/spice-console/network/clusternodechooser.js +49 -49
  614. package/public/spice-console/network/connectioncontrol.js +60 -60
  615. package/public/spice-console/network/packetcontroller.js +62 -62
  616. package/public/spice-console/network/packetextractor.js +73 -73
  617. package/public/spice-console/network/packetlinkfactory.js +64 -64
  618. package/public/spice-console/network/packetreassembler.js +77 -77
  619. package/public/spice-console/network/reassemblerfactory.js +39 -39
  620. package/public/spice-console/network/sizedefiner.js +86 -86
  621. package/public/spice-console/network/socket.js +120 -120
  622. package/public/spice-console/network/socketqueue.js +95 -95
  623. package/public/spice-console/network/websocketwrapper.js +75 -75
  624. package/public/spice-console/process/busprocess.js +309 -309
  625. package/public/spice-console/process/cursorprocess.js +110 -110
  626. package/public/spice-console/process/displaypreprocess.js +152 -152
  627. package/public/spice-console/process/displayprocess.js +210 -210
  628. package/public/spice-console/process/inputprocess.js +204 -204
  629. package/public/spice-console/process/mainprocess.js +78 -78
  630. package/public/spice-console/process/playbackprocess.js +233 -233
  631. package/public/spice-console/run.js +181 -181
  632. package/public/spice-console/spiceobjects/generated/protocol.js +537 -537
  633. package/public/spice-console/spiceobjects/spiceobjects.js +3474 -3474
  634. package/public/spice-console/swcanvas/swcanvas.js +82 -82
  635. package/public/spice-console/tools/generate.php +269 -269
  636. package/public/spice-console/tools/generateKeyboardLayout.php +63 -63
  637. package/public/spice-console/tools/generateSpiceObject.php +81 -81
  638. package/tsconfig.json +4 -4
@@ -1,87 +1,87 @@
1
- /*
2
- Copyright (c) 2016 eyeOS
3
-
4
- This file is part of Open365.
5
-
6
- Open365 is free software: you can redistribute it and/or modify
7
- it under the terms of the GNU Affero General Public License as
8
- published by the Free Software Foundation, either version 3 of the
9
- License, or (at your option) any later version.
10
-
11
- This program is distributed in the hope that it will be useful,
12
- but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
- GNU Affero General Public License for more details.
15
-
16
- You should have received a copy of the GNU Affero General Public License
17
- along with this program. If not, see <http://www.gnu.org/licenses/>.
18
- */
19
-
20
- // Random number generator - requires a PRNG backend, e.g. prng4.js
21
-
22
- // For best results, put code like
23
- // <body onClick='rng_seed_time();' onKeyPress='rng_seed_time();'>
24
- // in your main HTML document.
25
-
26
- var rng_state;
27
- var rng_pool;
28
- var rng_pptr;
29
-
30
- // Mix in a 32-bit integer into the pool
31
- function rng_seed_int(x) {
32
- rng_pool[rng_pptr++] ^= x & 255;
33
- rng_pool[rng_pptr++] ^= (x >> 8) & 255;
34
- rng_pool[rng_pptr++] ^= (x >> 16) & 255;
35
- rng_pool[rng_pptr++] ^= (x >> 24) & 255;
36
- if(rng_pptr >= rng_psize) rng_pptr -= rng_psize;
37
- }
38
-
39
- // Mix in the current time (w/milliseconds) into the pool
40
- function rng_seed_time() {
41
- rng_seed_int(new Date().getTime());
42
- }
43
-
44
- // Initialize the pool with junk if needed.
45
- if(rng_pool == null) {
46
- rng_pool = new Array();
47
- rng_pptr = 0;
48
- var t;
49
- if(navigator.appName == "Netscape" && navigator.appVersion < "5" && window.crypto) {
50
- // Extract entropy (256 bits) from NS4 RNG if available
51
- var z = window.crypto.random(32);
52
- for(t = 0; t < z.length; ++t)
53
- rng_pool[rng_pptr++] = z.charCodeAt(t) & 255;
54
- }
55
- while(rng_pptr < rng_psize) { // extract some randomness from Math.random()
56
- t = Math.floor(65536 * Math.random());
57
- rng_pool[rng_pptr++] = t >>> 8;
58
- rng_pool[rng_pptr++] = t & 255;
59
- }
60
- rng_pptr = 0;
61
- rng_seed_time();
62
- //rng_seed_int(window.screenX);
63
- //rng_seed_int(window.screenY);
64
- }
65
-
66
- function rng_get_byte() {
67
- if(rng_state == null) {
68
- rng_seed_time();
69
- rng_state = prng_newstate();
70
- rng_state.init(rng_pool);
71
- for(rng_pptr = 0; rng_pptr < rng_pool.length; ++rng_pptr)
72
- rng_pool[rng_pptr] = 0;
73
- rng_pptr = 0;
74
- //rng_pool = null;
75
- }
76
- // TODO: allow reseeding after first request
77
- return rng_state.next();
78
- }
79
-
80
- function rng_get_bytes(ba) {
81
- var i;
82
- for(i = 0; i < ba.length; ++i) ba[i] = rng_get_byte();
83
- }
84
-
85
- function SecureRandom() {}
86
-
87
- SecureRandom.prototype.nextBytes = rng_get_bytes;
1
+ /*
2
+ Copyright (c) 2016 eyeOS
3
+
4
+ This file is part of Open365.
5
+
6
+ Open365 is free software: you can redistribute it and/or modify
7
+ it under the terms of the GNU Affero General Public License as
8
+ published by the Free Software Foundation, either version 3 of the
9
+ License, or (at your option) any later version.
10
+
11
+ This program is distributed in the hope that it will be useful,
12
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
+ GNU Affero General Public License for more details.
15
+
16
+ You should have received a copy of the GNU Affero General Public License
17
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
18
+ */
19
+
20
+ // Random number generator - requires a PRNG backend, e.g. prng4.js
21
+
22
+ // For best results, put code like
23
+ // <body onClick='rng_seed_time();' onKeyPress='rng_seed_time();'>
24
+ // in your main HTML document.
25
+
26
+ var rng_state;
27
+ var rng_pool;
28
+ var rng_pptr;
29
+
30
+ // Mix in a 32-bit integer into the pool
31
+ function rng_seed_int(x) {
32
+ rng_pool[rng_pptr++] ^= x & 255;
33
+ rng_pool[rng_pptr++] ^= (x >> 8) & 255;
34
+ rng_pool[rng_pptr++] ^= (x >> 16) & 255;
35
+ rng_pool[rng_pptr++] ^= (x >> 24) & 255;
36
+ if(rng_pptr >= rng_psize) rng_pptr -= rng_psize;
37
+ }
38
+
39
+ // Mix in the current time (w/milliseconds) into the pool
40
+ function rng_seed_time() {
41
+ rng_seed_int(new Date().getTime());
42
+ }
43
+
44
+ // Initialize the pool with junk if needed.
45
+ if(rng_pool == null) {
46
+ rng_pool = new Array();
47
+ rng_pptr = 0;
48
+ var t;
49
+ if(navigator.appName == "Netscape" && navigator.appVersion < "5" && window.crypto) {
50
+ // Extract entropy (256 bits) from NS4 RNG if available
51
+ var z = window.crypto.random(32);
52
+ for(t = 0; t < z.length; ++t)
53
+ rng_pool[rng_pptr++] = z.charCodeAt(t) & 255;
54
+ }
55
+ while(rng_pptr < rng_psize) { // extract some randomness from Math.random()
56
+ t = Math.floor(65536 * Math.random());
57
+ rng_pool[rng_pptr++] = t >>> 8;
58
+ rng_pool[rng_pptr++] = t & 255;
59
+ }
60
+ rng_pptr = 0;
61
+ rng_seed_time();
62
+ //rng_seed_int(window.screenX);
63
+ //rng_seed_int(window.screenY);
64
+ }
65
+
66
+ function rng_get_byte() {
67
+ if(rng_state == null) {
68
+ rng_seed_time();
69
+ rng_state = prng_newstate();
70
+ rng_state.init(rng_pool);
71
+ for(rng_pptr = 0; rng_pptr < rng_pool.length; ++rng_pptr)
72
+ rng_pool[rng_pptr] = 0;
73
+ rng_pptr = 0;
74
+ //rng_pool = null;
75
+ }
76
+ // TODO: allow reseeding after first request
77
+ return rng_state.next();
78
+ }
79
+
80
+ function rng_get_bytes(ba) {
81
+ var i;
82
+ for(i = 0; i < ba.length; ++i) ba[i] = rng_get_byte();
83
+ }
84
+
85
+ function SecureRandom() {}
86
+
87
+ SecureRandom.prototype.nextBytes = rng_get_bytes;
@@ -1,103 +1,103 @@
1
- /*
2
- Copyright (c) 2016 eyeOS
3
-
4
- This file is part of Open365.
5
-
6
- Open365 is free software: you can redistribute it and/or modify
7
- it under the terms of the GNU Affero General Public License as
8
- published by the Free Software Foundation, either version 3 of the
9
- License, or (at your option) any later version.
10
-
11
- This program is distributed in the hope that it will be useful,
12
- but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
- GNU Affero General Public License for more details.
15
-
16
- You should have received a copy of the GNU Affero General Public License
17
- along with this program. If not, see <http://www.gnu.org/licenses/>.
18
- */
19
-
20
- wdi.RunQueue = $.spcExtend(wdi.DomainObject, {
21
- tasks: null,
22
- isRunning: false,
23
-
24
- init: function() {
25
- this.tasks = [];
26
- },
27
-
28
- getTasksLength: function() {
29
- return this.tasks.length;
30
- },
31
-
32
- add: function(fn, scope, endCallback, params) {
33
- this.tasks.push({
34
- fn: fn,
35
- scope: scope,
36
- fnFinish: endCallback,
37
- params: params
38
- });
39
-
40
- return this;
41
- },
42
-
43
- clear: function() {
44
- wdi.Debug.log('runqueue clear');
45
- this.tasks = [];
46
-
47
- return this;
48
- },
49
-
50
- _process: function() {
51
- wdi.ExecutionControl.sync = true;
52
- var proxy, self = this;
53
- this.isRunning = true;
54
- var task = this.tasks.shift();
55
-
56
- if (!task) {
57
- this.isRunning = false;
58
- return;
59
- }
60
-
61
- proxy = {
62
- end: function() {
63
- if(task.fnFinish) {
64
- task.fnFinish.call(task.scope);
65
- }
66
- self._process();
67
- }
68
- };
69
-
70
- try {
71
- task.fn.call(task.scope, proxy, task.params);
72
- } catch(e) {
73
- wdi.Debug.error(e.message);
74
- proxy.end();
75
- }
76
-
77
- return this;
78
- },
79
-
80
- process: function() {
81
- if (!this.isRunning) {
82
- this._process();
83
- } else {
84
- return;
85
- }
86
- }
87
- });
88
-
89
- //wdi.ExecutionControl = $.spcExtend(wdi.DomainObject, {
90
- // currentProxy: null,
91
- // sync: true,
92
- // runQ: null,
93
- // init: function(c) {
94
- // this.runQ = c.runQ || new wdi.RunQueue();
95
- // }
96
- //});
97
-
98
- //TODO: make an instance of it on each channel
99
- wdi.ExecutionControl = {
100
- currentProxy: null,
101
- sync: true,
102
- runQ: new wdi.RunQueue()
103
- };
1
+ /*
2
+ Copyright (c) 2016 eyeOS
3
+
4
+ This file is part of Open365.
5
+
6
+ Open365 is free software: you can redistribute it and/or modify
7
+ it under the terms of the GNU Affero General Public License as
8
+ published by the Free Software Foundation, either version 3 of the
9
+ License, or (at your option) any later version.
10
+
11
+ This program is distributed in the hope that it will be useful,
12
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
+ GNU Affero General Public License for more details.
15
+
16
+ You should have received a copy of the GNU Affero General Public License
17
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
18
+ */
19
+
20
+ wdi.RunQueue = $.spcExtend(wdi.DomainObject, {
21
+ tasks: null,
22
+ isRunning: false,
23
+
24
+ init: function() {
25
+ this.tasks = [];
26
+ },
27
+
28
+ getTasksLength: function() {
29
+ return this.tasks.length;
30
+ },
31
+
32
+ add: function(fn, scope, endCallback, params) {
33
+ this.tasks.push({
34
+ fn: fn,
35
+ scope: scope,
36
+ fnFinish: endCallback,
37
+ params: params
38
+ });
39
+
40
+ return this;
41
+ },
42
+
43
+ clear: function() {
44
+ wdi.Debug.log('runqueue clear');
45
+ this.tasks = [];
46
+
47
+ return this;
48
+ },
49
+
50
+ _process: function() {
51
+ wdi.ExecutionControl.sync = true;
52
+ var proxy, self = this;
53
+ this.isRunning = true;
54
+ var task = this.tasks.shift();
55
+
56
+ if (!task) {
57
+ this.isRunning = false;
58
+ return;
59
+ }
60
+
61
+ proxy = {
62
+ end: function() {
63
+ if(task.fnFinish) {
64
+ task.fnFinish.call(task.scope);
65
+ }
66
+ self._process();
67
+ }
68
+ };
69
+
70
+ try {
71
+ task.fn.call(task.scope, proxy, task.params);
72
+ } catch(e) {
73
+ wdi.Debug.error(e.message);
74
+ proxy.end();
75
+ }
76
+
77
+ return this;
78
+ },
79
+
80
+ process: function() {
81
+ if (!this.isRunning) {
82
+ this._process();
83
+ } else {
84
+ return;
85
+ }
86
+ }
87
+ });
88
+
89
+ //wdi.ExecutionControl = $.spcExtend(wdi.DomainObject, {
90
+ // currentProxy: null,
91
+ // sync: true,
92
+ // runQ: null,
93
+ // init: function(c) {
94
+ // this.runQ = c.runQ || new wdi.RunQueue();
95
+ // }
96
+ //});
97
+
98
+ //TODO: make an instance of it on each channel
99
+ wdi.ExecutionControl = {
100
+ currentProxy: null,
101
+ sync: true,
102
+ runQ: new wdi.RunQueue()
103
+ };
@@ -1,124 +1,124 @@
1
- /*
2
- Copyright (c) 2016 eyeOS
3
-
4
- This file is part of Open365.
5
-
6
- Open365 is free software: you can redistribute it and/or modify
7
- it under the terms of the GNU Affero General Public License as
8
- published by the Free Software Foundation, either version 3 of the
9
- License, or (at your option) any later version.
10
-
11
- This program is distributed in the hope that it will be useful,
12
- but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
- GNU Affero General Public License for more details.
15
-
16
- You should have received a copy of the GNU Affero General Public License
17
- along with this program. If not, see <http://www.gnu.org/licenses/>.
18
- */
19
-
20
- /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
21
- /* SHA-1 implementation in JavaScript (c) Chris Veness 2002-2009 */
22
- /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
23
-
24
- function sha1Hash(msg)
25
- {
26
- // constants [�4.2.1]
27
- var K = [0x5a827999, 0x6ed9eba1, 0x8f1bbcdc, 0xca62c1d6];
28
-
29
-
30
- // PREPROCESSING
31
-
32
- msg += String.fromCharCode(0x80); // add trailing '1' bit (+ 0's padding) to string [�5.1.1]
33
-
34
- // convert string msg into 512-bit/16-integer blocks arrays of ints [�5.2.1]
35
- var l = msg.length/4 + 2; // length (in 32-bit integers) of msg + �1� + appended length
36
- var N = Math.ceil(l/16); // number of 16-integer-blocks required to hold 'l' ints
37
- var M = new Array(N);
38
- for (var i=0; i<N; i++) {
39
- M[i] = new Array(16);
40
- for (var j=0; j<16; j++) { // encode 4 chars per integer, big-endian encoding
41
- M[i][j] = (msg.charCodeAt(i*64+j*4)<<24) | (msg.charCodeAt(i*64+j*4+1)<<16) |
42
- (msg.charCodeAt(i*64+j*4+2)<<8) | (msg.charCodeAt(i*64+j*4+3));
43
- }
44
- }
45
- // add length (in bits) into final pair of 32-bit integers (big-endian) [5.1.1]
46
- // note: most significant word would be (len-1)*8 >>> 32, but since JS converts
47
- // bitwise-op args to 32 bits, we need to simulate this by arithmetic operators
48
- M[N-1][14] = ((msg.length-1)*8) / Math.pow(2, 32); M[N-1][14] = Math.floor(M[N-1][14])
49
- M[N-1][15] = ((msg.length-1)*8) & 0xffffffff;
50
-
51
- // set initial hash value [�5.3.1]
52
- var H0 = 0x67452301;
53
- var H1 = 0xefcdab89;
54
- var H2 = 0x98badcfe;
55
- var H3 = 0x10325476;
56
- var H4 = 0xc3d2e1f0;
57
-
58
- // HASH COMPUTATION [�6.1.2]
59
-
60
- var W = new Array(80); var a, b, c, d, e;
61
- for (var i=0; i<N; i++) {
62
-
63
- // 1 - prepare message schedule 'W'
64
- for (var t=0; t<16; t++) W[t] = M[i][t];
65
- for (var t=16; t<80; t++) W[t] = ROTL(W[t-3] ^ W[t-8] ^ W[t-14] ^ W[t-16], 1);
66
-
67
- // 2 - initialise five working variables a, b, c, d, e with previous hash value
68
- a = H0; b = H1; c = H2; d = H3; e = H4;
69
-
70
- // 3 - main loop
71
- for (var t=0; t<80; t++) {
72
- var s = Math.floor(t/20); // seq for blocks of 'f' functions and 'K' constants
73
- var T = (ROTL(a,5) + f(s,b,c,d) + e + K[s] + W[t]) & 0xffffffff;
74
- e = d;
75
- d = c;
76
- c = ROTL(b, 30);
77
- b = a;
78
- a = T;
79
- }
80
-
81
- // 4 - compute the new intermediate hash value
82
- H0 = (H0+a) & 0xffffffff; // note 'addition modulo 2^32'
83
- H1 = (H1+b) & 0xffffffff;
84
- H2 = (H2+c) & 0xffffffff;
85
- H3 = (H3+d) & 0xffffffff;
86
- H4 = (H4+e) & 0xffffffff;
87
- }
88
-
89
- return H0.toHexStr() + H1.toHexStr() + H2.toHexStr() + H3.toHexStr() + H4.toHexStr();
90
- }
91
-
92
- //
93
- // function 'f' [�4.1.1]
94
- //
95
- function f(s, x, y, z)
96
- {
97
- switch (s) {
98
- case 0: return (x & y) ^ (~x & z); // Ch()
99
- case 1: return x ^ y ^ z; // Parity()
100
- case 2: return (x & y) ^ (x & z) ^ (y & z); // Maj()
101
- case 3: return x ^ y ^ z; // Parity()
102
- }
103
- }
104
-
105
- //
106
- // rotate left (circular left shift) value x by n positions [�3.2.5]
107
- //
108
- function ROTL(x, n)
109
- {
110
- return (x<<n) | (x>>>(32-n));
111
- }
112
-
113
- //
114
- // extend Number class with a tailored hex-string method
115
- // (note toString(16) is implementation-dependant, and
116
- // in IE returns signed numbers when used on full words)
117
- //
118
- Number.prototype.toHexStr = function()
119
- {
120
- var s="", v;
121
- for (var i=7; i>=0; i--) { v = (this>>>(i*4)) & 0xf; s += v.toString(16); }
122
- return s;
123
- }
124
- /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
1
+ /*
2
+ Copyright (c) 2016 eyeOS
3
+
4
+ This file is part of Open365.
5
+
6
+ Open365 is free software: you can redistribute it and/or modify
7
+ it under the terms of the GNU Affero General Public License as
8
+ published by the Free Software Foundation, either version 3 of the
9
+ License, or (at your option) any later version.
10
+
11
+ This program is distributed in the hope that it will be useful,
12
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
+ GNU Affero General Public License for more details.
15
+
16
+ You should have received a copy of the GNU Affero General Public License
17
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
18
+ */
19
+
20
+ /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
21
+ /* SHA-1 implementation in JavaScript (c) Chris Veness 2002-2009 */
22
+ /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
23
+
24
+ function sha1Hash(msg)
25
+ {
26
+ // constants [�4.2.1]
27
+ var K = [0x5a827999, 0x6ed9eba1, 0x8f1bbcdc, 0xca62c1d6];
28
+
29
+
30
+ // PREPROCESSING
31
+
32
+ msg += String.fromCharCode(0x80); // add trailing '1' bit (+ 0's padding) to string [�5.1.1]
33
+
34
+ // convert string msg into 512-bit/16-integer blocks arrays of ints [�5.2.1]
35
+ var l = msg.length/4 + 2; // length (in 32-bit integers) of msg + �1� + appended length
36
+ var N = Math.ceil(l/16); // number of 16-integer-blocks required to hold 'l' ints
37
+ var M = new Array(N);
38
+ for (var i=0; i<N; i++) {
39
+ M[i] = new Array(16);
40
+ for (var j=0; j<16; j++) { // encode 4 chars per integer, big-endian encoding
41
+ M[i][j] = (msg.charCodeAt(i*64+j*4)<<24) | (msg.charCodeAt(i*64+j*4+1)<<16) |
42
+ (msg.charCodeAt(i*64+j*4+2)<<8) | (msg.charCodeAt(i*64+j*4+3));
43
+ }
44
+ }
45
+ // add length (in bits) into final pair of 32-bit integers (big-endian) [5.1.1]
46
+ // note: most significant word would be (len-1)*8 >>> 32, but since JS converts
47
+ // bitwise-op args to 32 bits, we need to simulate this by arithmetic operators
48
+ M[N-1][14] = ((msg.length-1)*8) / Math.pow(2, 32); M[N-1][14] = Math.floor(M[N-1][14])
49
+ M[N-1][15] = ((msg.length-1)*8) & 0xffffffff;
50
+
51
+ // set initial hash value [�5.3.1]
52
+ var H0 = 0x67452301;
53
+ var H1 = 0xefcdab89;
54
+ var H2 = 0x98badcfe;
55
+ var H3 = 0x10325476;
56
+ var H4 = 0xc3d2e1f0;
57
+
58
+ // HASH COMPUTATION [�6.1.2]
59
+
60
+ var W = new Array(80); var a, b, c, d, e;
61
+ for (var i=0; i<N; i++) {
62
+
63
+ // 1 - prepare message schedule 'W'
64
+ for (var t=0; t<16; t++) W[t] = M[i][t];
65
+ for (var t=16; t<80; t++) W[t] = ROTL(W[t-3] ^ W[t-8] ^ W[t-14] ^ W[t-16], 1);
66
+
67
+ // 2 - initialise five working variables a, b, c, d, e with previous hash value
68
+ a = H0; b = H1; c = H2; d = H3; e = H4;
69
+
70
+ // 3 - main loop
71
+ for (var t=0; t<80; t++) {
72
+ var s = Math.floor(t/20); // seq for blocks of 'f' functions and 'K' constants
73
+ var T = (ROTL(a,5) + f(s,b,c,d) + e + K[s] + W[t]) & 0xffffffff;
74
+ e = d;
75
+ d = c;
76
+ c = ROTL(b, 30);
77
+ b = a;
78
+ a = T;
79
+ }
80
+
81
+ // 4 - compute the new intermediate hash value
82
+ H0 = (H0+a) & 0xffffffff; // note 'addition modulo 2^32'
83
+ H1 = (H1+b) & 0xffffffff;
84
+ H2 = (H2+c) & 0xffffffff;
85
+ H3 = (H3+d) & 0xffffffff;
86
+ H4 = (H4+e) & 0xffffffff;
87
+ }
88
+
89
+ return H0.toHexStr() + H1.toHexStr() + H2.toHexStr() + H3.toHexStr() + H4.toHexStr();
90
+ }
91
+
92
+ //
93
+ // function 'f' [�4.1.1]
94
+ //
95
+ function f(s, x, y, z)
96
+ {
97
+ switch (s) {
98
+ case 0: return (x & y) ^ (~x & z); // Ch()
99
+ case 1: return x ^ y ^ z; // Parity()
100
+ case 2: return (x & y) ^ (x & z) ^ (y & z); // Maj()
101
+ case 3: return x ^ y ^ z; // Parity()
102
+ }
103
+ }
104
+
105
+ //
106
+ // rotate left (circular left shift) value x by n positions [�3.2.5]
107
+ //
108
+ function ROTL(x, n)
109
+ {
110
+ return (x<<n) | (x>>>(32-n));
111
+ }
112
+
113
+ //
114
+ // extend Number class with a tailored hex-string method
115
+ // (note toString(16) is implementation-dependant, and
116
+ // in IE returns signed numbers when used on full words)
117
+ //
118
+ Number.prototype.toHexStr = function()
119
+ {
120
+ var s="", v;
121
+ for (var i=7; i>=0; i--) { v = (this>>>(i*4)) & 0xf; s += v.toString(16); }
122
+ return s;
123
+ }
124
+ /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */