@magic-xpa/engine 4.1100.0-dev4110.25 → 4.1100.0-dev4110.250

Sign up to get free protection for your applications and to get access to all the features.
Files changed (521) hide show
  1. package/{esm2020 → esm2022}/index.mjs +188 -188
  2. package/{esm2020 → esm2022}/magic-xpa-engine.mjs +1 -1
  3. package/esm2022/src/AccessHelper.mjs +15 -0
  4. package/esm2022/src/ClientManager.mjs +416 -0
  5. package/esm2022/src/CommandsProcessorBase.mjs +56 -0
  6. package/esm2022/src/CommandsProcessorManager.mjs +26 -0
  7. package/esm2022/src/CommandsTable.mjs +162 -0
  8. package/esm2022/src/ConstInterface.mjs +517 -0
  9. package/{esm2020 → esm2022}/src/CurrentClientVersion.mjs +2 -2
  10. package/esm2022/src/FlowMonitorInterface.mjs +16 -0
  11. package/esm2022/src/GUIManager.mjs +62 -0
  12. package/esm2022/src/GlobalCommandsManager.mjs +34 -0
  13. package/esm2022/src/GuiEventsProcessor.mjs +156 -0
  14. package/{esm2020 → esm2022}/src/ICommandsTable.mjs +1 -1
  15. package/esm2022/src/ServerConfig.mjs +122 -0
  16. package/{esm2020 → esm2022}/src/bridge/IGuiEvent.mjs +19 -19
  17. package/esm2022/src/bridge/MagicBridge.mjs +41 -0
  18. package/esm2022/src/commands/ClientOriginatedCommandTaskTag.mjs +12 -0
  19. package/{esm2020 → esm2022}/src/commands/ClientToServer/AddUserLocateDataViewCommand.mjs +8 -8
  20. package/{esm2020 → esm2022}/src/commands/ClientToServer/AddUserRangeDataviewCommand.mjs +9 -9
  21. package/{esm2020 → esm2022}/src/commands/ClientToServer/AddUserSortDataViewCommand.mjs +9 -9
  22. package/esm2022/src/commands/ClientToServer/BrowserEscEventCommand.mjs +26 -0
  23. package/{esm2020 → esm2022}/src/commands/ClientToServer/ClientOriginatedCommand.mjs +14 -14
  24. package/esm2022/src/commands/ClientToServer/ClientOriginatedCommandSerializer.mjs +60 -0
  25. package/esm2022/src/commands/ClientToServer/ColumnSortEventCommand.mjs +29 -0
  26. package/esm2022/src/commands/ClientToServer/CommandFactory.mjs +261 -0
  27. package/esm2022/src/commands/ClientToServer/CommandSerializationHelper.mjs +67 -0
  28. package/esm2022/src/commands/ClientToServer/ComputeEventCommand.mjs +26 -0
  29. package/{esm2020 → esm2022}/src/commands/ClientToServer/ContextTerminationEventCommand.mjs +24 -21
  30. package/{esm2020 → esm2022}/src/commands/ClientToServer/ContextTimeoutResetCommand.mjs +23 -20
  31. package/{esm2020 → esm2022}/src/commands/ClientToServer/ControlItemsRefreshCommand.mjs +8 -8
  32. package/esm2022/src/commands/ClientToServer/DataViewOutputCommand.mjs +13 -0
  33. package/{esm2020 → esm2022}/src/commands/ClientToServer/DataviewCommand.mjs +44 -44
  34. package/esm2022/src/commands/ClientToServer/EvaluateCommand.mjs +40 -0
  35. package/{esm2020 → esm2022}/src/commands/ClientToServer/EventCommand.mjs +43 -40
  36. package/esm2022/src/commands/ClientToServer/ExecOperCommand.mjs +70 -0
  37. package/esm2022/src/commands/ClientToServer/FetchDataControlValuesEventCommand.mjs +25 -0
  38. package/{esm2020 → esm2022}/src/commands/ClientToServer/GlobalParamsQueryCommand.mjs +10 -10
  39. package/{esm2020 → esm2022}/src/commands/ClientToServer/ICommandTaskTag.mjs +1 -1
  40. package/esm2022/src/commands/ClientToServer/IndexChangeEventCommand.mjs +24 -0
  41. package/esm2022/src/commands/ClientToServer/IniputForceWriteCommand.mjs +26 -0
  42. package/{esm2020 → esm2022}/src/commands/ClientToServer/NonReversibleExitEventCommand.mjs +26 -23
  43. package/{esm2020 → esm2022}/src/commands/ClientToServer/QueryCommand.mjs +20 -20
  44. package/esm2022/src/commands/ClientToServer/RecomputeCommand.mjs +30 -0
  45. package/esm2022/src/commands/ClientToServer/RefreshEventCommand.mjs +30 -0
  46. package/esm2022/src/commands/ClientToServer/RefreshScreenEventCommand.mjs +27 -0
  47. package/esm2022/src/commands/ClientToServer/RollbackEventCommand.mjs +43 -0
  48. package/esm2022/src/commands/ClientToServer/SelectProgramCommand.mjs +19 -0
  49. package/{esm2020 → esm2022}/src/commands/ClientToServer/SetTransactionStateDataviewCommand.mjs +9 -9
  50. package/esm2022/src/commands/ClientToServer/SubformOpenEventCommand.mjs +24 -0
  51. package/esm2022/src/commands/ClientToServer/SubformRefreshEventCommand.mjs +27 -0
  52. package/esm2022/src/commands/ClientToServer/TransactionCommand.mjs +34 -0
  53. package/{esm2020 → esm2022}/src/commands/ClientToServer/UnloadCommand.mjs +18 -15
  54. package/esm2022/src/commands/ClientToServer/WriteMessageToServerLogCommand.mjs +18 -0
  55. package/esm2022/src/commands/DataViewCommandBase.mjs +8 -0
  56. package/{esm2020 → esm2022}/src/commands/IClientCommand.mjs +1 -1
  57. package/esm2022/src/commands/IClientTargetedCommand.mjs +13 -0
  58. package/{esm2020 → esm2022}/src/commands/IClientToServerCommandInfo.mjs +2 -2
  59. package/esm2022/src/commands/ServerToClient/AbortCommand.mjs +65 -0
  60. package/{esm2020 → esm2022}/src/commands/ServerToClient/AddLocateCommand.mjs +21 -21
  61. package/esm2022/src/commands/ServerToClient/AddRangeCommand.mjs +62 -0
  62. package/esm2022/src/commands/ServerToClient/AddSortCommand.mjs +33 -0
  63. package/esm2022/src/commands/ServerToClient/ClientRefreshCommand.mjs +25 -0
  64. package/esm2022/src/commands/ServerToClient/ClientTargetedCommandBase.mjs +24 -0
  65. package/esm2022/src/commands/ServerToClient/EnhancedVerifyCommand.mjs +45 -0
  66. package/esm2022/src/commands/ServerToClient/OpenURLCommand.mjs +221 -0
  67. package/{esm2020 → esm2022}/src/commands/ServerToClient/ResetLocateCommand.mjs +14 -14
  68. package/{esm2020 → esm2022}/src/commands/ServerToClient/ResetRangeCommand.mjs +14 -14
  69. package/{esm2020 → esm2022}/src/commands/ServerToClient/ResetSortCommand.mjs +14 -14
  70. package/esm2022/src/commands/ServerToClient/ResultCommand.mjs +37 -0
  71. package/esm2022/src/commands/ServerToClient/VerifyCommand.mjs +83 -0
  72. package/esm2022/src/commands/ServerToClient/XMLBasedCommandBuilder.mjs +132 -0
  73. package/{esm2020 → esm2022}/src/communications/IConnectionStateManager.mjs +1 -1
  74. package/esm2022/src/communications/InteractiveCommunicationsFailureHandler.mjs +15 -0
  75. package/{esm2020 → esm2022}/src/data/DataSourceIdKey.mjs +2 -2
  76. package/esm2022/src/data/DataView.mjs +1613 -0
  77. package/{esm2020 → esm2022}/src/data/DataViewBase.mjs +3 -3
  78. package/esm2022/src/data/DataviewManager.mjs +28 -0
  79. package/esm2022/src/data/DataviewManagerBase.mjs +15 -0
  80. package/esm2022/src/data/DvCache.mjs +67 -0
  81. package/esm2022/src/data/Field.mjs +646 -0
  82. package/esm2022/src/data/FieldBase.mjs +15 -0
  83. package/esm2022/src/data/FieldsTable.mjs +103 -0
  84. package/{esm2020 → esm2022}/src/data/IRecordsTable.mjs +1 -1
  85. package/esm2022/src/data/Key.mjs +88 -0
  86. package/esm2022/src/data/Record.mjs +880 -0
  87. package/{esm2020 → esm2022}/src/data/RecordOutOfDataViewException.mjs +15 -15
  88. package/esm2022/src/data/RecordsTable.mjs +267 -0
  89. package/esm2022/src/data/TaskTransactionManager.mjs +107 -0
  90. package/esm2022/src/data/XMLBasedDcValuesBuilder.mjs +74 -0
  91. package/{esm2020 → esm2022}/src/enums.mjs +23 -23
  92. package/esm2022/src/env/EnvVariablesTable.mjs +340 -0
  93. package/esm2022/src/env/Environment.mjs +487 -0
  94. package/{esm2020 → esm2022}/src/env/ILanguageData.mjs +1 -1
  95. package/esm2022/src/env/LanguageData.mjs +227 -0
  96. package/esm2022/src/env/MirrorString.mjs +65 -0
  97. package/esm2022/src/event/ActionManager.mjs +91 -0
  98. package/esm2022/src/event/Event.mjs +1333 -0
  99. package/esm2022/src/event/EventHandler.mjs +766 -0
  100. package/esm2022/src/event/EventHandlerPosition.mjs +204 -0
  101. package/esm2022/src/event/EventsManager.mjs +2988 -0
  102. package/{esm2020 → esm2022}/src/event/IEventsManager.mjs +6 -6
  103. package/esm2022/src/event/RunTimeEvent.mjs +399 -0
  104. package/{esm2020 → esm2022}/src/event/RunTimeEventBase.mjs +3 -3
  105. package/esm2022/src/event/UserEventsTable.mjs +47 -0
  106. package/esm2022/src/exp/ExpTable.mjs +57 -0
  107. package/esm2022/src/exp/Expression.mjs +200 -0
  108. package/esm2022/src/exp/ExpressionDict.mjs +727 -0
  109. package/esm2022/src/exp/ExpressionEvaluator.mjs +4206 -0
  110. package/esm2022/src/exp/ExpressionLocalJpn.mjs +314 -0
  111. package/esm2022/src/exp/GlobalParamsTable.mjs +85 -0
  112. package/esm2022/src/exp/YesNoExp.mjs +36 -0
  113. package/esm2022/src/gui/CreatedFormVector.mjs +23 -0
  114. package/esm2022/src/gui/FormsTable.mjs +66 -0
  115. package/esm2022/src/gui/MgControl.mjs +363 -0
  116. package/esm2022/src/gui/MgForm.mjs +1224 -0
  117. package/esm2022/src/http/HttpManager.mjs +97 -0
  118. package/esm2022/src/http/client/HttpClientAsync.mjs +68 -0
  119. package/esm2022/src/http/client/HttpClientBase.mjs +132 -0
  120. package/esm2022/src/http/client/HttpClientEvents.mjs +39 -0
  121. package/esm2022/src/http/client/HttpClientSync.mjs +42 -0
  122. package/esm2022/src/http/client/HttpUtility.mjs +84 -0
  123. package/{esm2020 → esm2022}/src/http/client/ICommunicationsFailureHandler.mjs +1 -1
  124. package/esm2022/src/remote/AddUserLocateRemoteDataViewCommand.mjs +18 -0
  125. package/esm2022/src/remote/AddUserRangeRemoteDataViewCommand.mjs +18 -0
  126. package/esm2022/src/remote/AddUserSortRemoteDataViewCommand.mjs +18 -0
  127. package/esm2022/src/remote/RemoteCommandsProcessor.mjs +883 -0
  128. package/esm2022/src/remote/RemoteControlItemsRefreshCommand.mjs +25 -0
  129. package/esm2022/src/remote/RemoteDataViewCommandBase.mjs +24 -0
  130. package/esm2022/src/remote/RemoteDataViewCommandFactory.mjs +61 -0
  131. package/{esm2020 → esm2022}/src/remote/RemoteDataViewCommandUpdateNonModifiable.mjs +15 -15
  132. package/{esm2020 → esm2022}/src/remote/RemoteDataviewManager.mjs +17 -17
  133. package/{esm2020 → esm2022}/src/remote/RemoteInitDataViewCommand.mjs +10 -10
  134. package/esm2022/src/remote/ResetUserLocateRemoteDataviewCommand.mjs +17 -0
  135. package/{esm2020 → esm2022}/src/remote/ResetUserRangeRemoteDataviewCommand.mjs +12 -12
  136. package/esm2022/src/remote/ResetUserSortRemoteDataviewCommand.mjs +16 -0
  137. package/esm2022/src/remote/ServerError.mjs +40 -0
  138. package/esm2022/src/remote/SetTransactionStateRemoteDataViewCommand.mjs +20 -0
  139. package/esm2022/src/rt/Argument.mjs +265 -0
  140. package/esm2022/src/rt/ArgumentsList.mjs +103 -0
  141. package/esm2022/src/rt/Boundary.mjs +152 -0
  142. package/esm2022/src/rt/CompMainPrgTable.mjs +63 -0
  143. package/{esm2020 → esm2022}/src/rt/DataviewHeaderBase.mjs +98 -96
  144. package/{esm2020 → esm2022}/src/rt/DataviewHeaderFactory.mjs +6 -6
  145. package/esm2022/src/rt/DataviewHeaders.mjs +53 -0
  146. package/esm2022/src/rt/DataviewHeadersSaxHandler.mjs +38 -0
  147. package/esm2022/src/rt/ExecutionStack.mjs +94 -0
  148. package/{esm2020 → esm2022}/src/rt/ExecutionStackEntry.mjs +17 -17
  149. package/esm2022/src/rt/HandlersTable.mjs +96 -0
  150. package/{esm2020 → esm2022}/src/rt/IDataSourceViewDefinition.mjs +1 -1
  151. package/{esm2020 → esm2022}/src/rt/IDataviewHeader.mjs +1 -1
  152. package/{esm2020 → esm2022}/src/rt/IResultValue.mjs +1 -1
  153. package/esm2022/src/rt/LastFocusedManager.mjs +65 -0
  154. package/esm2022/src/rt/Operation.mjs +735 -0
  155. package/esm2022/src/rt/OperationTable.mjs +67 -0
  156. package/esm2022/src/rt/Recompute.mjs +355 -0
  157. package/esm2022/src/rt/RecomputeTable.mjs +63 -0
  158. package/esm2022/src/rt/RemoteDataviewHeader.mjs +108 -0
  159. package/esm2022/src/rt/ResultValue.mjs +10 -0
  160. package/esm2022/src/rt/TableCache.mjs +177 -0
  161. package/esm2022/src/rt/TableCacheManager.mjs +67 -0
  162. package/esm2022/src/rt/Transaction.mjs +53 -0
  163. package/esm2022/src/security/UserDetails.mjs +71 -0
  164. package/{esm2020 → esm2022}/src/tasks/IMGDataCollection.mjs +1 -1
  165. package/esm2022/src/tasks/MGData.mjs +552 -0
  166. package/esm2022/src/tasks/MGDataCollection.mjs +252 -0
  167. package/esm2022/src/tasks/RCTimer.mjs +63 -0
  168. package/esm2022/src/tasks/RemoteTaskService.mjs +45 -0
  169. package/esm2022/src/tasks/Task.mjs +2499 -0
  170. package/esm2022/src/tasks/TaskBase.mjs +83 -0
  171. package/esm2022/src/tasks/TaskServiceBase.mjs +25 -0
  172. package/esm2022/src/tasks/TasksTable.mjs +80 -0
  173. package/esm2022/src/tasks/sort/Sort.mjs +5 -0
  174. package/esm2022/src/tasks/sort/SortCollection.mjs +67 -0
  175. package/esm2022/src/util/ConstUtils.mjs +14 -0
  176. package/esm2022/src/util/FlowMonitorQueue.mjs +451 -0
  177. package/esm2022/src/util/HeapSort.mjs +70 -0
  178. package/{esm2020 → esm2022}/src/util/IMirrorXML.mjs +1 -1
  179. package/{esm2020 → esm2022}/src/util/IServerConfig.mjs +1 -1
  180. package/{esm2020 → esm2022}/src/util/MgBlockingQueue.mjs +1 -1
  181. package/esm2022/src/util/MgPriorityBlockingQueue.mjs +74 -0
  182. package/esm2022/src/util/MgPriorityQueue.mjs +66 -0
  183. package/{esm2020 → esm2022}/src/util/ParamParseResult.mjs +7 -7
  184. package/esm2022/src/util/PrmMap.mjs +152 -0
  185. package/esm2022/src/util/ReturnResult.mjs +46 -0
  186. package/esm2022/src/util/ReturnResultBase.mjs +18 -0
  187. package/esm2022/src/util/Scrambler.mjs +89 -0
  188. package/esm2022/src/util/UniqueIDUtils.mjs +13 -0
  189. package/esm2022/src/util/cookie.service.mjs +92 -0
  190. package/{fesm2020 → fesm2022}/magic-xpa-engine.mjs +29883 -29693
  191. package/fesm2022/magic-xpa-engine.mjs.map +1 -0
  192. package/index.d.ts +187 -187
  193. package/package.json +8 -14
  194. package/src/AccessHelper.d.ts +20 -20
  195. package/src/ClientManager.d.ts +35 -32
  196. package/src/CommandsProcessorBase.d.ts +23 -23
  197. package/src/CommandsProcessorManager.d.ts +6 -6
  198. package/src/CommandsTable.d.ts +22 -22
  199. package/src/ConstInterface.d.ts +516 -515
  200. package/src/CurrentClientVersion.d.ts +1 -1
  201. package/src/FlowMonitorInterface.d.ts +15 -15
  202. package/src/GUIManager.d.ts +17 -17
  203. package/src/GlobalCommandsManager.d.ts +17 -17
  204. package/src/GuiEventsProcessor.d.ts +24 -24
  205. package/src/ICommandsTable.d.ts +9 -9
  206. package/src/ServerConfig.d.ts +35 -34
  207. package/src/bridge/IGuiEvent.d.ts +19 -19
  208. package/src/bridge/MagicBridge.d.ts +16 -16
  209. package/src/commands/ClientOriginatedCommandTaskTag.d.ts +8 -8
  210. package/src/commands/ClientToServer/AddUserLocateDataViewCommand.d.ts +4 -4
  211. package/src/commands/ClientToServer/AddUserRangeDataviewCommand.d.ts +6 -6
  212. package/src/commands/ClientToServer/AddUserSortDataViewCommand.d.ts +6 -6
  213. package/src/commands/ClientToServer/BrowserEscEventCommand.d.ts +9 -8
  214. package/src/commands/ClientToServer/ClientOriginatedCommand.d.ts +8 -8
  215. package/src/commands/ClientToServer/ClientOriginatedCommandSerializer.d.ts +6 -6
  216. package/src/commands/ClientToServer/ColumnSortEventCommand.d.ts +11 -10
  217. package/src/commands/ClientToServer/CommandFactory.d.ts +64 -64
  218. package/src/commands/ClientToServer/CommandSerializationHelper.d.ts +20 -20
  219. package/src/commands/ClientToServer/ComputeEventCommand.d.ts +9 -8
  220. package/src/commands/ClientToServer/ContextTerminationEventCommand.d.ts +8 -7
  221. package/src/commands/ClientToServer/ContextTimeoutResetCommand.d.ts +8 -7
  222. package/src/commands/ClientToServer/ControlItemsRefreshCommand.d.ts +6 -6
  223. package/src/commands/ClientToServer/DataViewOutputCommand.d.ts +9 -9
  224. package/src/commands/ClientToServer/DataviewCommand.d.ts +32 -32
  225. package/src/commands/ClientToServer/EvaluateCommand.d.ts +16 -15
  226. package/src/commands/ClientToServer/EventCommand.d.ts +16 -15
  227. package/src/commands/ClientToServer/ExecOperCommand.d.ts +24 -23
  228. package/src/commands/ClientToServer/FetchDataControlValuesEventCommand.d.ts +9 -8
  229. package/src/commands/ClientToServer/GlobalParamsQueryCommand.d.ts +5 -5
  230. package/src/commands/ClientToServer/ICommandTaskTag.d.ts +3 -3
  231. package/src/commands/ClientToServer/IndexChangeEventCommand.d.ts +9 -8
  232. package/src/commands/ClientToServer/IniputForceWriteCommand.d.ts +11 -10
  233. package/src/commands/ClientToServer/NonReversibleExitEventCommand.d.ts +9 -8
  234. package/src/commands/ClientToServer/QueryCommand.d.ts +8 -8
  235. package/src/commands/ClientToServer/RecomputeCommand.d.ts +12 -11
  236. package/src/commands/ClientToServer/RefreshEventCommand.d.ts +13 -12
  237. package/src/commands/ClientToServer/RefreshScreenEventCommand.d.ts +11 -10
  238. package/src/commands/ClientToServer/RollbackEventCommand.d.ts +15 -14
  239. package/src/commands/ClientToServer/SelectProgramCommand.d.ts +7 -6
  240. package/src/commands/ClientToServer/SetTransactionStateDataviewCommand.d.ts +5 -5
  241. package/src/commands/ClientToServer/SubformOpenEventCommand.d.ts +9 -8
  242. package/src/commands/ClientToServer/SubformRefreshEventCommand.d.ts +10 -9
  243. package/src/commands/ClientToServer/TransactionCommand.d.ts +14 -12
  244. package/src/commands/ClientToServer/UnloadCommand.d.ts +8 -7
  245. package/src/commands/ClientToServer/WriteMessageToServerLogCommand.d.ts +6 -6
  246. package/src/commands/DataViewCommandBase.d.ts +6 -6
  247. package/src/commands/IClientCommand.d.ts +2 -2
  248. package/src/commands/IClientTargetedCommand.d.ts +12 -12
  249. package/src/commands/IClientToServerCommandInfo.d.ts +4 -3
  250. package/src/commands/ServerToClient/AbortCommand.d.ts +11 -11
  251. package/src/commands/ServerToClient/AddLocateCommand.d.ts +6 -6
  252. package/src/commands/ServerToClient/AddRangeCommand.d.ts +10 -10
  253. package/src/commands/ServerToClient/AddSortCommand.d.ts +9 -9
  254. package/src/commands/ServerToClient/ClientRefreshCommand.d.ts +7 -7
  255. package/src/commands/ServerToClient/ClientTargetedCommandBase.d.ts +12 -12
  256. package/src/commands/ServerToClient/EnhancedVerifyCommand.d.ts +13 -13
  257. package/src/commands/ServerToClient/OpenURLCommand.d.ts +21 -21
  258. package/src/commands/ServerToClient/ResetLocateCommand.d.ts +6 -6
  259. package/src/commands/ServerToClient/ResetRangeCommand.d.ts +6 -6
  260. package/src/commands/ServerToClient/ResetSortCommand.d.ts +6 -6
  261. package/src/commands/ServerToClient/ResultCommand.d.ts +10 -10
  262. package/src/commands/ServerToClient/VerifyCommand.d.ts +17 -17
  263. package/src/commands/ServerToClient/XMLBasedCommandBuilder.d.ts +11 -11
  264. package/src/communications/IConnectionStateManager.d.ts +4 -4
  265. package/src/communications/InteractiveCommunicationsFailureHandler.d.ts +6 -6
  266. package/src/data/DataSourceIdKey.d.ts +2 -2
  267. package/src/data/DataView.d.ts +162 -162
  268. package/src/data/DataViewBase.d.ts +12 -12
  269. package/src/data/DataviewManager.d.ts +14 -14
  270. package/src/data/DataviewManagerBase.d.ts +11 -11
  271. package/src/data/DvCache.d.ts +15 -15
  272. package/src/data/Field.d.ts +103 -103
  273. package/src/data/FieldBase.d.ts +23 -23
  274. package/src/data/FieldsTable.d.ts +27 -27
  275. package/src/data/IRecordsTable.d.ts +7 -7
  276. package/src/data/Key.d.ts +15 -15
  277. package/src/data/Record.d.ts +157 -156
  278. package/src/data/RecordOutOfDataViewException.d.ts +10 -10
  279. package/src/data/RecordsTable.d.ts +38 -38
  280. package/src/data/TaskTransactionManager.d.ts +17 -17
  281. package/src/data/XMLBasedDcValuesBuilder.d.ts +11 -11
  282. package/src/enums.d.ts +21 -21
  283. package/src/env/EnvVariablesTable.d.ts +17 -17
  284. package/src/env/Environment.d.ts +118 -118
  285. package/src/env/ILanguageData.d.ts +3 -3
  286. package/src/env/LanguageData.d.ts +20 -20
  287. package/src/env/MirrorString.d.ts +15 -15
  288. package/src/event/ActionManager.d.ts +14 -14
  289. package/src/event/Event.d.ts +79 -79
  290. package/src/event/EventHandler.d.ts +66 -66
  291. package/src/event/EventHandlerPosition.d.ts +25 -25
  292. package/src/event/EventsManager.d.ts +205 -204
  293. package/src/event/IEventsManager.d.ts +77 -77
  294. package/src/event/RunTimeEvent.d.ts +126 -123
  295. package/src/event/RunTimeEventBase.d.ts +5 -5
  296. package/src/event/UserEventsTable.d.ts +11 -11
  297. package/src/exp/ExpTable.d.ts +11 -11
  298. package/src/exp/Expression.d.ts +37 -37
  299. package/src/exp/ExpressionDict.d.ts +12 -12
  300. package/src/exp/ExpressionEvaluator.d.ts +198 -198
  301. package/src/exp/ExpressionLocalJpn.d.ts +18 -18
  302. package/src/exp/GlobalParamsTable.d.ts +19 -19
  303. package/src/exp/YesNoExp.d.ts +9 -9
  304. package/src/gui/CreatedFormVector.d.ts +10 -10
  305. package/src/gui/FormsTable.d.ts +15 -15
  306. package/src/gui/MgControl.d.ts +60 -60
  307. package/src/gui/MgForm.d.ts +96 -93
  308. package/src/http/HttpManager.d.ts +25 -25
  309. package/src/http/client/HttpClientAsync.d.ts +16 -16
  310. package/src/http/client/HttpClientBase.d.ts +30 -30
  311. package/src/http/client/HttpClientEvents.d.ts +18 -18
  312. package/src/http/client/HttpClientSync.d.ts +17 -17
  313. package/src/http/client/HttpUtility.d.ts +10 -10
  314. package/src/http/client/ICommunicationsFailureHandler.d.ts +5 -5
  315. package/src/remote/AddUserLocateRemoteDataViewCommand.d.ts +8 -8
  316. package/src/remote/AddUserRangeRemoteDataViewCommand.d.ts +8 -8
  317. package/src/remote/AddUserSortRemoteDataViewCommand.d.ts +8 -8
  318. package/src/remote/RemoteCommandsProcessor.d.ts +51 -51
  319. package/src/remote/RemoteControlItemsRefreshCommand.d.ts +8 -8
  320. package/src/remote/RemoteDataViewCommandBase.d.ts +10 -10
  321. package/src/remote/RemoteDataViewCommandFactory.d.ts +6 -6
  322. package/src/remote/RemoteDataViewCommandUpdateNonModifiable.d.ts +8 -8
  323. package/src/remote/RemoteDataviewManager.d.ts +9 -9
  324. package/src/remote/RemoteInitDataViewCommand.d.ts +7 -7
  325. package/src/remote/ResetUserLocateRemoteDataviewCommand.d.ts +7 -7
  326. package/src/remote/ResetUserRangeRemoteDataviewCommand.d.ts +7 -7
  327. package/src/remote/ResetUserSortRemoteDataviewCommand.d.ts +7 -7
  328. package/src/remote/ServerError.d.ts +16 -16
  329. package/src/remote/SetTransactionStateRemoteDataViewCommand.d.ts +8 -8
  330. package/src/rt/Argument.d.ts +36 -36
  331. package/src/rt/ArgumentsList.d.ts +24 -24
  332. package/src/rt/Boundary.d.ts +27 -27
  333. package/src/rt/CompMainPrgTable.d.ts +10 -10
  334. package/src/rt/DataviewHeaderBase.d.ts +34 -34
  335. package/src/rt/DataviewHeaderFactory.d.ts +5 -5
  336. package/src/rt/DataviewHeaders.d.ts +12 -12
  337. package/src/rt/DataviewHeadersSaxHandler.d.ts +10 -10
  338. package/src/rt/ExecutionStack.d.ts +22 -22
  339. package/src/rt/ExecutionStackEntry.d.ts +7 -7
  340. package/src/rt/HandlersTable.d.ts +19 -19
  341. package/src/rt/IDataSourceViewDefinition.d.ts +6 -6
  342. package/src/rt/IDataviewHeader.d.ts +10 -10
  343. package/src/rt/IResultValue.d.ts +4 -4
  344. package/src/rt/LastFocusedManager.d.ts +23 -23
  345. package/src/rt/Operation.d.ts +97 -97
  346. package/src/rt/OperationTable.d.ts +15 -15
  347. package/src/rt/Recompute.d.ts +41 -41
  348. package/src/rt/RecomputeTable.d.ts +9 -9
  349. package/src/rt/RemoteDataviewHeader.d.ts +14 -14
  350. package/src/rt/ResultValue.d.ts +7 -7
  351. package/src/rt/TableCache.d.ts +29 -29
  352. package/src/rt/TableCacheManager.d.ts +10 -10
  353. package/src/rt/Transaction.d.ts +23 -23
  354. package/src/security/UserDetails.d.ts +16 -16
  355. package/src/tasks/IMGDataCollection.d.ts +26 -26
  356. package/src/tasks/MGData.d.ts +63 -63
  357. package/src/tasks/MGDataCollection.d.ts +42 -42
  358. package/src/tasks/RCTimer.d.ts +13 -13
  359. package/src/tasks/RemoteTaskService.d.ts +16 -16
  360. package/src/tasks/Task.d.ts +312 -312
  361. package/src/tasks/TaskBase.d.ts +123 -123
  362. package/src/tasks/TaskServiceBase.d.ts +16 -16
  363. package/src/tasks/TasksTable.d.ts +21 -21
  364. package/src/tasks/sort/Sort.d.ts +4 -4
  365. package/src/tasks/sort/SortCollection.d.ts +11 -11
  366. package/src/util/ConstUtils.d.ts +3 -3
  367. package/src/util/FlowMonitorQueue.d.ts +70 -70
  368. package/src/util/HeapSort.d.ts +6 -6
  369. package/src/util/IMirrorXML.d.ts +6 -6
  370. package/src/util/IServerConfig.d.ts +11 -11
  371. package/src/util/MgBlockingQueue.d.ts +5 -5
  372. package/src/util/MgPriorityBlockingQueue.d.ts +17 -17
  373. package/src/util/MgPriorityQueue.d.ts +13 -13
  374. package/src/util/ParamParseResult.d.ts +6 -6
  375. package/src/util/PrmMap.d.ts +28 -28
  376. package/src/util/ReturnResult.d.ts +18 -18
  377. package/src/util/ReturnResultBase.d.ts +11 -11
  378. package/src/util/Scrambler.d.ts +10 -10
  379. package/src/util/UniqueIDUtils.d.ts +4 -4
  380. package/src/util/cookie.service.d.ts +8 -8
  381. package/esm2020/src/AccessHelper.mjs +0 -9
  382. package/esm2020/src/ClientManager.mjs +0 -399
  383. package/esm2020/src/CommandsProcessorBase.mjs +0 -58
  384. package/esm2020/src/CommandsProcessorManager.mjs +0 -26
  385. package/esm2020/src/CommandsTable.mjs +0 -162
  386. package/esm2020/src/ConstInterface.mjs +0 -516
  387. package/esm2020/src/FlowMonitorInterface.mjs +0 -16
  388. package/esm2020/src/GUIManager.mjs +0 -62
  389. package/esm2020/src/GlobalCommandsManager.mjs +0 -34
  390. package/esm2020/src/GuiEventsProcessor.mjs +0 -154
  391. package/esm2020/src/ServerConfig.mjs +0 -117
  392. package/esm2020/src/bridge/MagicBridge.mjs +0 -41
  393. package/esm2020/src/commands/ClientOriginatedCommandTaskTag.mjs +0 -11
  394. package/esm2020/src/commands/ClientToServer/BrowserEscEventCommand.mjs +0 -23
  395. package/esm2020/src/commands/ClientToServer/ClientOriginatedCommandSerializer.mjs +0 -60
  396. package/esm2020/src/commands/ClientToServer/ColumnSortEventCommand.mjs +0 -26
  397. package/esm2020/src/commands/ClientToServer/CommandFactory.mjs +0 -260
  398. package/esm2020/src/commands/ClientToServer/CommandSerializationHelper.mjs +0 -69
  399. package/esm2020/src/commands/ClientToServer/ComputeEventCommand.mjs +0 -23
  400. package/esm2020/src/commands/ClientToServer/DataViewOutputCommand.mjs +0 -13
  401. package/esm2020/src/commands/ClientToServer/EvaluateCommand.mjs +0 -36
  402. package/esm2020/src/commands/ClientToServer/ExecOperCommand.mjs +0 -67
  403. package/esm2020/src/commands/ClientToServer/FetchDataControlValuesEventCommand.mjs +0 -22
  404. package/esm2020/src/commands/ClientToServer/IndexChangeEventCommand.mjs +0 -21
  405. package/esm2020/src/commands/ClientToServer/IniputForceWriteCommand.mjs +0 -23
  406. package/esm2020/src/commands/ClientToServer/RecomputeCommand.mjs +0 -27
  407. package/esm2020/src/commands/ClientToServer/RefreshEventCommand.mjs +0 -27
  408. package/esm2020/src/commands/ClientToServer/RefreshScreenEventCommand.mjs +0 -24
  409. package/esm2020/src/commands/ClientToServer/RollbackEventCommand.mjs +0 -39
  410. package/esm2020/src/commands/ClientToServer/SelectProgramCommand.mjs +0 -15
  411. package/esm2020/src/commands/ClientToServer/SubformOpenEventCommand.mjs +0 -21
  412. package/esm2020/src/commands/ClientToServer/SubformRefreshEventCommand.mjs +0 -24
  413. package/esm2020/src/commands/ClientToServer/TransactionCommand.mjs +0 -28
  414. package/esm2020/src/commands/ClientToServer/WriteMessageToServerLogCommand.mjs +0 -18
  415. package/esm2020/src/commands/DataViewCommandBase.mjs +0 -10
  416. package/esm2020/src/commands/IClientTargetedCommand.mjs +0 -9
  417. package/esm2020/src/commands/ServerToClient/AbortCommand.mjs +0 -65
  418. package/esm2020/src/commands/ServerToClient/AddRangeCommand.mjs +0 -62
  419. package/esm2020/src/commands/ServerToClient/AddSortCommand.mjs +0 -33
  420. package/esm2020/src/commands/ServerToClient/ClientRefreshCommand.mjs +0 -25
  421. package/esm2020/src/commands/ServerToClient/ClientTargetedCommandBase.mjs +0 -27
  422. package/esm2020/src/commands/ServerToClient/EnhancedVerifyCommand.mjs +0 -45
  423. package/esm2020/src/commands/ServerToClient/OpenURLCommand.mjs +0 -221
  424. package/esm2020/src/commands/ServerToClient/ResultCommand.mjs +0 -37
  425. package/esm2020/src/commands/ServerToClient/VerifyCommand.mjs +0 -83
  426. package/esm2020/src/commands/ServerToClient/XMLBasedCommandBuilder.mjs +0 -132
  427. package/esm2020/src/communications/InteractiveCommunicationsFailureHandler.mjs +0 -17
  428. package/esm2020/src/data/DataView.mjs +0 -1610
  429. package/esm2020/src/data/DataviewManager.mjs +0 -28
  430. package/esm2020/src/data/DataviewManagerBase.mjs +0 -15
  431. package/esm2020/src/data/DvCache.mjs +0 -67
  432. package/esm2020/src/data/Field.mjs +0 -646
  433. package/esm2020/src/data/FieldBase.mjs +0 -18
  434. package/esm2020/src/data/FieldsTable.mjs +0 -103
  435. package/esm2020/src/data/Key.mjs +0 -88
  436. package/esm2020/src/data/Record.mjs +0 -846
  437. package/esm2020/src/data/RecordsTable.mjs +0 -267
  438. package/esm2020/src/data/TaskTransactionManager.mjs +0 -103
  439. package/esm2020/src/data/XMLBasedDcValuesBuilder.mjs +0 -74
  440. package/esm2020/src/env/EnvVariablesTable.mjs +0 -340
  441. package/esm2020/src/env/Environment.mjs +0 -489
  442. package/esm2020/src/env/LanguageData.mjs +0 -226
  443. package/esm2020/src/env/MirrorString.mjs +0 -65
  444. package/esm2020/src/event/ActionManager.mjs +0 -91
  445. package/esm2020/src/event/Event.mjs +0 -1333
  446. package/esm2020/src/event/EventHandler.mjs +0 -766
  447. package/esm2020/src/event/EventHandlerPosition.mjs +0 -204
  448. package/esm2020/src/event/EventsManager.mjs +0 -2975
  449. package/esm2020/src/event/RunTimeEvent.mjs +0 -392
  450. package/esm2020/src/event/UserEventsTable.mjs +0 -47
  451. package/esm2020/src/exp/ExpTable.mjs +0 -59
  452. package/esm2020/src/exp/Expression.mjs +0 -200
  453. package/esm2020/src/exp/ExpressionDict.mjs +0 -727
  454. package/esm2020/src/exp/ExpressionEvaluator.mjs +0 -4212
  455. package/esm2020/src/exp/ExpressionLocalJpn.mjs +0 -314
  456. package/esm2020/src/exp/GlobalParamsTable.mjs +0 -85
  457. package/esm2020/src/exp/YesNoExp.mjs +0 -36
  458. package/esm2020/src/gui/CreatedFormVector.mjs +0 -23
  459. package/esm2020/src/gui/FormsTable.mjs +0 -66
  460. package/esm2020/src/gui/MgControl.mjs +0 -353
  461. package/esm2020/src/gui/MgForm.mjs +0 -1181
  462. package/esm2020/src/http/HttpManager.mjs +0 -97
  463. package/esm2020/src/http/client/HttpClientAsync.mjs +0 -67
  464. package/esm2020/src/http/client/HttpClientBase.mjs +0 -132
  465. package/esm2020/src/http/client/HttpClientEvents.mjs +0 -39
  466. package/esm2020/src/http/client/HttpClientSync.mjs +0 -42
  467. package/esm2020/src/http/client/HttpUtility.mjs +0 -84
  468. package/esm2020/src/remote/AddUserLocateRemoteDataViewCommand.mjs +0 -18
  469. package/esm2020/src/remote/AddUserRangeRemoteDataViewCommand.mjs +0 -18
  470. package/esm2020/src/remote/AddUserSortRemoteDataViewCommand.mjs +0 -18
  471. package/esm2020/src/remote/RemoteCommandsProcessor.mjs +0 -880
  472. package/esm2020/src/remote/RemoteControlItemsRefreshCommand.mjs +0 -25
  473. package/esm2020/src/remote/RemoteDataViewCommandBase.mjs +0 -24
  474. package/esm2020/src/remote/RemoteDataViewCommandFactory.mjs +0 -61
  475. package/esm2020/src/remote/ResetUserLocateRemoteDataviewCommand.mjs +0 -17
  476. package/esm2020/src/remote/ResetUserSortRemoteDataviewCommand.mjs +0 -16
  477. package/esm2020/src/remote/ServerError.mjs +0 -40
  478. package/esm2020/src/remote/SetTransactionStateRemoteDataViewCommand.mjs +0 -20
  479. package/esm2020/src/rt/Argument.mjs +0 -265
  480. package/esm2020/src/rt/ArgumentsList.mjs +0 -103
  481. package/esm2020/src/rt/Boundary.mjs +0 -152
  482. package/esm2020/src/rt/CompMainPrgTable.mjs +0 -65
  483. package/esm2020/src/rt/DataviewHeaders.mjs +0 -53
  484. package/esm2020/src/rt/DataviewHeadersSaxHandler.mjs +0 -38
  485. package/esm2020/src/rt/ExecutionStack.mjs +0 -94
  486. package/esm2020/src/rt/HandlersTable.mjs +0 -96
  487. package/esm2020/src/rt/LastFocusedManager.mjs +0 -67
  488. package/esm2020/src/rt/Operation.mjs +0 -735
  489. package/esm2020/src/rt/OperationTable.mjs +0 -67
  490. package/esm2020/src/rt/Recompute.mjs +0 -355
  491. package/esm2020/src/rt/RecomputeTable.mjs +0 -63
  492. package/esm2020/src/rt/RemoteDataviewHeader.mjs +0 -108
  493. package/esm2020/src/rt/ResultValue.mjs +0 -12
  494. package/esm2020/src/rt/TableCache.mjs +0 -177
  495. package/esm2020/src/rt/TableCacheManager.mjs +0 -67
  496. package/esm2020/src/rt/Transaction.mjs +0 -53
  497. package/esm2020/src/security/UserDetails.mjs +0 -71
  498. package/esm2020/src/tasks/MGData.mjs +0 -552
  499. package/esm2020/src/tasks/MGDataCollection.mjs +0 -252
  500. package/esm2020/src/tasks/RCTimer.mjs +0 -63
  501. package/esm2020/src/tasks/RemoteTaskService.mjs +0 -45
  502. package/esm2020/src/tasks/Task.mjs +0 -2495
  503. package/esm2020/src/tasks/TaskBase.mjs +0 -87
  504. package/esm2020/src/tasks/TaskServiceBase.mjs +0 -25
  505. package/esm2020/src/tasks/TasksTable.mjs +0 -80
  506. package/esm2020/src/tasks/sort/Sort.mjs +0 -7
  507. package/esm2020/src/tasks/sort/SortCollection.mjs +0 -67
  508. package/esm2020/src/util/ConstUtils.mjs +0 -14
  509. package/esm2020/src/util/FlowMonitorQueue.mjs +0 -453
  510. package/esm2020/src/util/HeapSort.mjs +0 -70
  511. package/esm2020/src/util/MgPriorityBlockingQueue.mjs +0 -74
  512. package/esm2020/src/util/MgPriorityQueue.mjs +0 -66
  513. package/esm2020/src/util/PrmMap.mjs +0 -151
  514. package/esm2020/src/util/ReturnResult.mjs +0 -46
  515. package/esm2020/src/util/ReturnResultBase.mjs +0 -18
  516. package/esm2020/src/util/Scrambler.mjs +0 -89
  517. package/esm2020/src/util/UniqueIDUtils.mjs +0 -12
  518. package/esm2020/src/util/cookie.service.mjs +0 -92
  519. package/fesm2015/magic-xpa-engine.mjs +0 -30835
  520. package/fesm2015/magic-xpa-engine.mjs.map +0 -1
  521. package/fesm2020/magic-xpa-engine.mjs.map +0 -1
@@ -0,0 +1,221 @@
1
+ import { Debug, Int32, List, NString } from "@magic-xpa/mscorelib";
2
+ import { InternalInterface, XMLConstants, XmlParser } from "@magic-xpa/utils";
3
+ import { ClientTargetedCommandBase } from "./ClientTargetedCommandBase";
4
+ import { ArgumentsList } from "../../rt/ArgumentsList";
5
+ import { MGData } from "../../tasks/MGData";
6
+ import { MgControl } from "../../gui/MgControl";
7
+ import { OpeningTaskDetails } from "../../tasks/TaskBase";
8
+ import { ConstInterface } from "../../ConstInterface";
9
+ import { LastFocusedManager } from "../../rt/LastFocusedManager";
10
+ import { RemoteCommandsProcessor } from "../../remote/RemoteCommandsProcessor";
11
+ import { Task } from "../../tasks/Task";
12
+ import { AccessHelper } from "../../AccessHelper";
13
+ import { MgControlType } from "@magic-xpa/utils";
14
+ import { RunTimeEvent } from '../../event/RunTimeEvent';
15
+ export class OpenURLCommand extends ClientTargetedCommandBase {
16
+ _callingTaskTag = null;
17
+ _pathParentTaskTag = null;
18
+ _subformCtrlName = null;
19
+ _ditIdx = Int32.MinValue;
20
+ _isModal = true;
21
+ _transOwner = null;
22
+ _newId = null;
23
+ _forceModal = false;
24
+ _key = null;
25
+ _varList = null;
26
+ _isRoute = false;
27
+ NewTaskXML = null;
28
+ static createNewCommandsTable = null;
29
+ constructor() {
30
+ super();
31
+ }
32
+ get IsBlocking() {
33
+ return this._isModal && this._subformCtrlName === null;
34
+ }
35
+ async Execute(res) {
36
+ let mgd = null;
37
+ let destinationSubformSucceeded = false;
38
+ let refreshWhenHidden = true;
39
+ let mgdID = 0;
40
+ let subformCtrl = null;
41
+ let oldTimers = new List(), newTimers = new List();
42
+ let moveToFirstControl = true;
43
+ let guiParentTask;
44
+ let guiParentMgData = null;
45
+ let callingTask = (this._callingTaskTag != null ? AccessHelper.mgDataTable.GetTaskByID(this._callingTaskTag) : null);
46
+ let pathParentTask = (this._pathParentTaskTag != null ? AccessHelper.mgDataTable.GetTaskByID(this._pathParentTaskTag) : null);
47
+ guiParentTask = callingTask = AccessHelper.mgDataTable.GetTaskByID(this._callingTaskTag);
48
+ if ((!NString.IsNullOrEmpty(this._subformCtrlName)) || (this._ditIdx !== Int32.MinValue) || this._isRoute) {
49
+ if (this._isRoute && NString.IsNullOrEmpty(this._subformCtrlName.trim())) {
50
+ subformCtrl = callingTask.getForm().DefaultRouterOutlet;
51
+ }
52
+ else {
53
+ if (!callingTask.IsInteractive) {
54
+ for (let parentTask = callingTask; parentTask.getForm() != null; parentTask = parentTask.getParent()) {
55
+ subformCtrl = parentTask.getForm().getCtrlByName(this._subformCtrlName, MgControlType.CTRL_TYPE_SUBFORM);
56
+ if (subformCtrl != null) {
57
+ callingTask = guiParentTask = parentTask;
58
+ break;
59
+ }
60
+ }
61
+ }
62
+ else
63
+ subformCtrl = (this._ditIdx !== Int32.MinValue ? callingTask.getForm().getCtrl(this._ditIdx) : callingTask.getForm().getSubFormCtrlByName(this._subformCtrlName));
64
+ }
65
+ }
66
+ if (callingTask != null)
67
+ mgd = callingTask.getMGData();
68
+ if (subformCtrl != null) {
69
+ let subformTask = subformCtrl.getSubformTask();
70
+ guiParentTask = subformCtrl.getForm().getTask();
71
+ mgdID = guiParentTask.getMgdID();
72
+ guiParentMgData = guiParentTask.getMGData();
73
+ if (guiParentMgData.getTimerHandlers() != null)
74
+ oldTimers = guiParentMgData.getTimerHandlers().getTimersVector();
75
+ if (this._ditIdx !== Int32.MinValue) {
76
+ refreshWhenHidden = false;
77
+ moveToFirstControl = false;
78
+ }
79
+ else {
80
+ destinationSubformSucceeded = true;
81
+ if (this._transOwner != null) {
82
+ let newTransOwnerTask = AccessHelper.mgDataTable.GetTaskByID(this._transOwner);
83
+ if (newTransOwnerTask != null)
84
+ newTransOwnerTask.setTransOwnerTask();
85
+ }
86
+ if (subformTask != null) {
87
+ subformTask.setDestinationSubform(true);
88
+ await subformTask.stop();
89
+ }
90
+ if (!MgControl.validReturnToCtrl())
91
+ MgControl.ReturnToCtrl = LastFocusedManager.getLastFocusedControl();
92
+ }
93
+ subformCtrl.setSubformTaskId(this._newId);
94
+ }
95
+ let parentMgData;
96
+ if (callingTask == null)
97
+ parentMgData = AccessHelper.mgDataTable.getMGData(0);
98
+ else
99
+ parentMgData = callingTask.getMGData();
100
+ if (!destinationSubformSucceeded && refreshWhenHidden) {
101
+ mgdID = AccessHelper.mgDataTable.getAvailableIdx();
102
+ Debug.Assert(mgdID > 0);
103
+ mgd = new MGData(OpenURLCommand.createNewCommandsTable(), OpenURLCommand.createNewCommandsTable(), mgdID, parentMgData, this._isModal, this._forceModal);
104
+ mgd.copyUnframedCmds();
105
+ await AccessHelper.mgDataTable.addMGData(mgd, mgdID, false);
106
+ AccessHelper.mgDataTable.currMgdID = mgdID;
107
+ }
108
+ this.Obj = this._key;
109
+ this._key = null;
110
+ try {
111
+ await RemoteCommandsProcessor.GetInstance().ProcessResponse(this.NewTaskXML, mgdID, new OpeningTaskDetails(callingTask, pathParentTask), null);
112
+ }
113
+ finally {
114
+ AccessHelper.eventsManager.setIgnoreUnknownAbort(false);
115
+ }
116
+ if (destinationSubformSucceeded || !refreshWhenHidden) {
117
+ subformCtrl.initSubformTask();
118
+ if (destinationSubformSucceeded) {
119
+ let subformTask = subformCtrl.getSubformTask();
120
+ moveToFirstControl = !callingTask.RetainFocus;
121
+ subformTask.setIsDestinationCall(true);
122
+ }
123
+ }
124
+ let isSubformModal = false;
125
+ let prevMgDataIsModal = mgd.IsModal;
126
+ if (subformCtrl != null) {
127
+ if (guiParentMgData.getTimerHandlers() != null)
128
+ newTimers = guiParentMgData.getTimerHandlers().getTimersVector();
129
+ guiParentMgData.changeTimers(oldTimers, newTimers);
130
+ if (subformCtrl.IsModal())
131
+ this._isModal = isSubformModal = mgd.IsModal = true;
132
+ }
133
+ let nonInteractiveTask = await Task.StartProgram(destinationSubformSucceeded, moveToFirstControl);
134
+ if (!isSubformModal)
135
+ this._isModal = mgd.IsModal;
136
+ if (nonInteractiveTask == null) {
137
+ if (callingTask != null && ((this._isModal && (isSubformModal || !destinationSubformSucceeded) && refreshWhenHidden) || (!callingTask.IsInteractive && (!callingTask.isMainProg() || callingTask.getForm() == null)))) {
138
+ if (this._isModal) {
139
+ AccessHelper.mgDataTable.startTasksIteration();
140
+ let task;
141
+ while ((task = AccessHelper.mgDataTable.getNextTask()) !== null) {
142
+ let dataViewWasRetrieved = task.DataViewWasRetrieved;
143
+ if (dataViewWasRetrieved) {
144
+ await task.RefreshDisplay();
145
+ }
146
+ }
147
+ }
148
+ await AccessHelper.eventsManager.EventsLoop(mgd);
149
+ if (isSubformModal) {
150
+ mgd.IsAborting = false;
151
+ mgd.IsModal = prevMgDataIsModal;
152
+ }
153
+ }
154
+ }
155
+ else
156
+ await AccessHelper.eventsManager.NonInteractiveEventsLoop(mgd, nonInteractiveTask);
157
+ if (AccessHelper.eventsManager.getPendingGuiEvent() != null && (isSubformModal || nonInteractiveTask != null)) {
158
+ let guiEvent = AccessHelper.eventsManager.getPendingGuiEvent();
159
+ if (guiEvent.getTask() != callingTask || this._callingTaskTag !== callingTask.getTaskTag()) {
160
+ callingTask = AccessHelper.mgDataTable.GetTaskByID(this._callingTaskTag);
161
+ if (callingTask.getIsDestinationCall()) {
162
+ let subformCtrl = callingTask.getForm().getSubFormCtrl();
163
+ await AccessHelper.eventsManager.performSubformClose(subformCtrl);
164
+ }
165
+ else {
166
+ let rtEvt = new RunTimeEvent(callingTask);
167
+ rtEvt.setInternal(InternalInterface.MG_ACT_CLOSE);
168
+ rtEvt.setCtrl(null);
169
+ rtEvt.setArgList(null);
170
+ AccessHelper.eventsManager.addToTail(rtEvt);
171
+ }
172
+ }
173
+ else {
174
+ AccessHelper.eventsManager.addToTail(guiEvent);
175
+ AccessHelper.eventsManager.setPendingGuiEvent(null);
176
+ }
177
+ }
178
+ }
179
+ HandleAttribute(attribute, value) {
180
+ switch (attribute) {
181
+ case ConstInterface.MG_ATTR_CALLINGTASK:
182
+ this._callingTaskTag = value;
183
+ break;
184
+ case ConstInterface.MG_ATTR_PATH_PARENT_TASK:
185
+ this._pathParentTaskTag = value;
186
+ break;
187
+ case ConstInterface.MG_ATTR_SUBFORM_CTRL:
188
+ this._subformCtrlName = value;
189
+ break;
190
+ case XMLConstants.MG_ATTR_DITIDX:
191
+ this._ditIdx = XmlParser.getInt(value);
192
+ break;
193
+ case ConstInterface.MG_ATTR_MODAL:
194
+ this._isModal = (value[0] === '1');
195
+ break;
196
+ case ConstInterface.MG_ATTR_TRANS_OWNER:
197
+ this._transOwner = value;
198
+ break;
199
+ case ConstInterface.MG_ATTR_NEWID:
200
+ this._newId = NString.TrimEnd(value);
201
+ break;
202
+ case ConstInterface.MG_ATTR_KEY:
203
+ this._key = value;
204
+ break;
205
+ case ConstInterface.MG_ATTR_ARGLIST:
206
+ this._varList = new ArgumentsList();
207
+ this._varList.fillList(value, AccessHelper.mgDataTable.GetTaskByID(this.TaskTag));
208
+ break;
209
+ case ConstInterface.MG_ATTR_OBJECT:
210
+ this.Obj = value;
211
+ break;
212
+ case ConstInterface.MG_ATTR_IS_ROUTE:
213
+ this._isRoute = (value[0] === '1');
214
+ break;
215
+ default:
216
+ super.HandleAttribute(attribute, value);
217
+ break;
218
+ }
219
+ }
220
+ }
221
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3BlblVSTENvbW1hbmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbmdpbmUvc3JjL2NvbW1hbmRzL1NlcnZlclRvQ2xpZW50L09wZW5VUkxDb21tYW5kLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNqRSxPQUFPLEVBQUMsaUJBQWlCLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBQzVFLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQ3RFLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDMUMsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBRTlDLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBRXhELE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUVwRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMvRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDeEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2xELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUMvQyxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFHdEQsTUFBTSxPQUFPLGNBQWUsU0FBUSx5QkFBeUI7SUFDbkQsZUFBZSxHQUFXLElBQUksQ0FBQztJQUMv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LENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztnQkFDekIsTUFBTTtZQUNSLEtBQUssY0FBYyxDQUFDLGFBQWE7Z0JBQy9CLElBQUksQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDckMsTUFBTTtZQUNSLEtBQUssY0FBYyxDQUFDLFdBQVc7Z0JBQzdCLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO2dCQUNsQixNQUFNO1lBQ1IsS0FBSyxjQUFjLENBQUMsZUFBZTtnQkFDakMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLGFBQWEsRUFBRSxDQUFDO2dCQUNwQyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQVksWUFBWSxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7Z0JBQzVGLE1BQU07WUFDUixLQUFLLGNBQWMsQ0FBQyxjQUFjO2dCQUNoQyxJQUFJLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQztnQkFDakIsTUFBTTtZQUNSLEtBQUssY0FBYyxDQUFDLGdCQUFnQjtnQkFDbEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQztnQkFDbkMsTUFBTTtZQUNSO2dCQUNFLEtBQUssQ0FBQyxlQUFlLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO2dCQUN4QyxNQUFNO1FBQ1YsQ0FBQztJQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RlYnVnLCBJbnQzMiwgTGlzdCwgTlN0cmluZ30gZnJvbSBcIkBtYWdpYy14cGEvbXNjb3JlbGliXCI7XHJcbmltcG9ydCB7SW50ZXJuYWxJbnRlcmZhY2UsIFhNTENvbnN0YW50cywgWG1sUGFyc2VyfSBmcm9tIFwiQG1hZ2ljLXhwYS91dGlsc1wiO1xyXG5pbXBvcnQge0NsaWVudFRhcmdldGVkQ29tbWFuZEJhc2V9IGZyb20gXCIuL0NsaWVudFRhcmdldGVkQ29tbWFuZEJhc2VcIjtcclxuaW1wb3J0IHtBcmd1bWVudHNMaXN0fSBmcm9tIFwiLi4vLi4vcnQvQXJndW1lbnRzTGlzdFwiO1xyXG5pbXBvcnQge01HRGF0YX0gZnJvbSBcIi4uLy4uL3Rhc2tzL01HRGF0YVwiO1xyXG5pbXBvcnQge01nQ29udHJvbH0gZnJvbSBcIi4uLy4uL2d1aS9NZ0NvbnRyb2xcIjtcclxuaW1wb3J0IHtNZ0Zvcm19IGZyb20gXCIuLi8uLi9ndWkvTWdGb3JtXCI7XHJcbmltcG9ydCB7T3BlbmluZ1Rhc2tEZXRhaWxzfSBmcm9tIFwiLi4vLi4vdGFza3MvVGFza0Jhc2VcIjtcclxuaW1wb3J0IHsgVGFza0Jhc2V9IGZyb20gXCIuLi8uLi90YXNrcy9UYXNrQmFzZVwiO1xyXG5pbXBvcnQge0NvbnN0SW50ZXJmYWNlfSBmcm9tIFwiLi4vLi4vQ29uc3RJbnRlcmZhY2VcIjtcclxuaW1wb3J0IHtJUmVzdWx0VmFsdWV9IGZyb20gXCIuLi8uLi9ydC9JUmVzdWx0VmFsdWVcIjtcclxuaW1wb3J0IHsgTGFzdEZvY3VzZWRNYW5hZ2VyIH0gZnJvbSBcIi4uLy4uL3J0L0xhc3RGb2N1c2VkTWFuYWdlclwiO1xyXG5pbXBvcnQgeyBSZW1vdGVDb21tYW5kc1Byb2Nlc3NvciB9IGZyb20gXCIuLi8uLi9yZW1vdGUvUmVtb3RlQ29tbWFuZHNQcm9jZXNzb3JcIjtcclxuaW1wb3J0IHsgVGFzayB9IGZyb20gXCIuLi8uLi90YXNrcy9UYXNrXCI7XHJcbmltcG9ydCB7IEFjY2Vzc0hlbHBlciB9IGZyb20gXCIuLi8uLi9BY2Nlc3NIZWxwZXJcIjtcclxuaW1wb3J0IHtNZ0NvbnRyb2xUeXBlfSBmcm9tIFwiQG1hZ2ljLXhwYS91dGlsc1wiO1xyXG5pbXBvcnQge1J1blRpbWVFdmVudH0gZnJvbSAnLi4vLi4vZXZlbnQvUnVuVGltZUV2ZW50JztcclxuXHJcblxyXG5leHBvcnQgY2xhc3MgT3BlblVSTENvbW1hbmQgZXh0ZW5kcyBDbGllbnRUYXJnZXRlZENvbW1hbmRCYXNlIHtcclxuICBwcml2YXRlIF9jYWxsaW5nVGFza1RhZzogc3RyaW5nID0gbnVsbDsgIC8vIGlzIHRoZSBpZCBvZiB0aGUgdGFzayB0aGF0IGNhbGxlZCB0aGUgbmV3IHdpbmRvd1xyXG4gIHByaXZhdGUgX3BhdGhQYXJlbnRUYXNrVGFnOiBzdHJpbmcgPSBudWxsOyAvLyBpcyB0aGUgaWQgb2YgcGF0aCBwYXJlbnQgdGFzayB0YWdcclxuICBwcml2YXRlIF9zdWJmb3JtQ3RybE5hbWU6IHN0cmluZyA9IG51bGw7IC8vIFN1YmZvcm0gY29udHJvbCBuYW1lIGZvciBEZXN0aW5hdGlvbiBTdWJmb3JtXHJcbiAgcHJpdmF0ZSBfZGl0SWR4OiBudW1iZXIgPSBJbnQzMi5NaW5WYWx1ZTtcclxuICBwcml2YXRlIF9pc01vZGFsOiBib29sZWFuID0gdHJ1ZTsgLy8gWXxOXHJcbiAgcHJpdmF0ZSBfdHJhbnNPd25lcjogc3RyaW5nID0gbnVsbDtcclxuICBwcml2YXRlIF9uZXdJZDogc3RyaW5nID0gbnVsbDtcclxuICBwcml2YXRlIF9mb3JjZU1vZGFsOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHJpdmF0ZSBfa2V5OiBzdHJpbmcgPSBudWxsO1xyXG4gIHByaXZhdGUgX3Zhckxpc3Q6IEFyZ3VtZW50c0xpc3QgPSBudWxsO1xyXG4gIHByaXZhdGUgX2lzUm91dGU6IGJvb2xlYW4gPSBmYWxzZTsgLy8gWXxOXHJcbiAgTmV3VGFza1hNTDogc3RyaW5nID0gbnVsbDtcclxuICBzdGF0aWMgY3JlYXRlTmV3Q29tbWFuZHNUYWJsZSA9IG51bGw7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcblxyXG4gIGdldCBJc0Jsb2NraW5nKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2lzTW9kYWwgJiYgdGhpcy5fc3ViZm9ybUN0cmxOYW1lID09PSBudWxsO1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgRXhlY3V0ZShyZXM6IElSZXN1bHRWYWx1ZSk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgbGV0IG1nZDogTUdEYXRhID0gbnVsbDtcclxuICAgIGxldCBkZXN0aW5hdGlvblN1YmZvcm1TdWNjZWVkZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIGxldCByZWZyZXNoV2hlbkhpZGRlbjogYm9vbGVhbiA9IHRydWU7XHJcbiAgICBsZXQgbWdkSUQ6IG51bWJlciA9IDA7XHJcbiAgICBsZXQgc3ViZm9ybUN0cmw6IE1nQ29udHJvbCA9IG51bGw7XHJcbiAgICBsZXQgb2xkVGltZXJzOiBMaXN0PG51bWJlcj4gPSBuZXcgTGlzdDxudW1iZXI+KCksIG5ld1RpbWVycyA9IG5ldyBMaXN0PG51bWJlcj4oKTtcclxuICAgIGxldCBtb3ZlVG9GaXJzdENvbnRyb2w6IGJvb2xlYW4gPSB0cnVlO1xyXG4gICAgbGV0IGd1aVBhcmVudFRhc2s6IFRhc2tCYXNlO1xyXG4gICAgbGV0IGd1aVBhcmVudE1nRGF0YTogTUdEYXRhID0gbnVsbDtcclxuICAgIGxldCBjYWxsaW5nVGFzazogVGFza0Jhc2UgPSAodGhpcy5fY2FsbGluZ1Rhc2tUYWcgIT0gbnVsbCA/IDxUYXNrQmFzZT5BY2Nlc3NIZWxwZXIubWdEYXRhVGFibGUuR2V0VGFza0J5SUQodGhpcy5fY2FsbGluZ1Rhc2tUYWcpIDogbnVsbCk7XHJcbiAgICBsZXQgcGF0aFBhcmVudFRhc2s6IFRhc2tCYXNlID0gKHRoaXMuX3BhdGhQYXJlbnRUYXNrVGFnICE9IG51bGwgPyA8VGFza0Jhc2U+QWNjZXNzSGVscGVyLm1nRGF0YVRhYmxlLkdldFRhc2tCeUlEKHRoaXMuX3BhdGhQYXJlbnRUYXNrVGFnKSA6IG51bGwpO1xyXG5cclxuICAgIC8vIFdoZW4gYSBub25PZmZsaW5lIHRhc2sgd2FzIGNhbGxlZCBmcm9tIGFuIE9mZmxpbmUgdGFzayAob2YgY291cnNlIHZpYSBNUCBldmVudCksXHJcbiAgICAvLyB0aGUgY2FsbGluZyB0YXNrIGlkIHdhcyBub3Qgc2VudCB0byB0aGUgc2VydmVyIGJlY2F1c2UgdGhlIHNlcnZlciBpcyB1bmF3YXJlIG9mIHRoZVxyXG4gICAgLy8gb2ZmbGluZSB0YXNrLiBTbywgd2hlbiBjb21pbmcgYmFjayBmcm9tIHRoZSBzZXJ2ZXIsIGFzc2lnbiB0aGUgY29ycmVjdCBjYWxsaW5nIHRhc2suXHJcbiAgICAvLyBUYXNrQmFzZSBsYXN0Rm9jdXNlZFRhc2sgPSBDbGllbnRNYW5hZ2VyLkluc3RhbmNlLmdldExhc3RGb2N1c2VkVGFzaygpO1xyXG4gICAgLy8gaWYgKGxhc3RGb2N1c2VkVGFzayAhPSBudWxsICYmIGxhc3RGb2N1c2VkVGFzay5Jc09mZmxpbmUpXHJcbiAgICAvLyAgIF9jYWxsaW5nVGFza1RhZyA9IGxhc3RGb2N1c2VkVGFzay5nZXRUYXNrVGFnKCk7XHJcblxyXG4gICAgZ3VpUGFyZW50VGFzayA9IGNhbGxpbmdUYXNrID0gPFRhc2tCYXNlPkFjY2Vzc0hlbHBlci5tZ0RhdGFUYWJsZS5HZXRUYXNrQnlJRCh0aGlzLl9jYWxsaW5nVGFza1RhZyk7XHJcblxyXG4gICAgLy8gZGl0SWR4IGlzIHNlbmQgYnkgc2VydmVyIG9ubHkgZm9yIHN1YmZvcm0gb3BlbmluZyBmb3IgcmVmcmVzaFdoZW5IaWRkZW5cclxuICAgIGlmICgoIU5TdHJpbmcuSXNOdWxsT3JFbXB0eSh0aGlzLl9zdWJmb3JtQ3RybE5hbWUpKSB8fCAodGhpcy5fZGl0SWR4ICE9PSBJbnQzMi5NaW5WYWx1ZSkgfHwgdGhpcy5faXNSb3V0ZSkge1xyXG4gICAgICBpZiAodGhpcy5faXNSb3V0ZSAmJiBOU3RyaW5nLklzTnVsbE9yRW1wdHkodGhpcy5fc3ViZm9ybUN0cmxOYW1lLnRyaW0oKSkpIHtcclxuICAgICAgICBzdWJmb3JtQ3RybCA9IDxNZ0NvbnRyb2w+Y2FsbGluZ1Rhc2suZ2V0Rm9ybSgpLkRlZmF1bHRSb3V0ZXJPdXRsZXQ7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSB7XHJcbiAgICAgICAgaWYgKCFjYWxsaW5nVGFzay5Jc0ludGVyYWN0aXZlKSB7XHJcbiAgICAgICAgICBmb3IgKGxldCBwYXJlbnRUYXNrOiBUYXNrQmFzZSA9IGNhbGxpbmdUYXNrOyBwYXJlbnRUYXNrLmdldEZvcm0oKSAhPSBudWxsOyBwYXJlbnRUYXNrID0gcGFyZW50VGFzay5nZXRQYXJlbnQoKSkge1xyXG4gICAgICAgICAgICBzdWJmb3JtQ3RybCA9IDxNZ0NvbnRyb2w+cGFyZW50VGFzay5nZXRGb3JtKCkuZ2V0Q3RybEJ5TmFtZSh0aGlzLl9zdWJmb3JtQ3RybE5hbWUsIE1nQ29udHJvbFR5cGUuQ1RSTF9UWVBFX1NVQkZPUk0pO1xyXG4gICAgICAgICAgICBpZiAoc3ViZm9ybUN0cmwgIT0gbnVsbCkge1xyXG4gICAgICAgICAgICAgICAgY2FsbGluZ1Rhc2sgPSBndWlQYXJlbnRUYXNrID0gcGFyZW50VGFzaztcclxuICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlXHJcbiAgICAgICAgICBzdWJmb3JtQ3RybCA9ICh0aGlzLl9kaXRJZHggIT09IEludDMyLk1pblZhbHVlID8gPE1nQ29udHJvbD5jYWxsaW5nVGFzay5nZXRGb3JtKCkuZ2V0Q3RybCh0aGlzLl9kaXRJZHgpIDogKDxNZ0Zvcm0+Y2FsbGluZ1Rhc2suZ2V0Rm9ybSgpKS5nZXRTdWJGb3JtQ3RybEJ5TmFtZSh0aGlzLl9zdWJmb3JtQ3RybE5hbWUpKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGlmIChjYWxsaW5nVGFzayAhPSBudWxsKVxyXG4gICAgICBtZ2QgPSBjYWxsaW5nVGFzay5nZXRNR0RhdGEoKTtcclxuXHJcbiAgICBpZiAoc3ViZm9ybUN0cmwgIT0gbnVsbCkge1xyXG4gICAgICBsZXQgc3ViZm9ybVRhc2s6IFRhc2tCYXNlID0gPFRhc2tCYXNlPnN1YmZvcm1DdHJsLmdldFN1YmZvcm1UYXNrKCk7XHJcbiAgICAgIGd1aVBhcmVudFRhc2sgPSA8VGFza0Jhc2U+c3ViZm9ybUN0cmwuZ2V0Rm9ybSgpLmdldFRhc2soKTtcclxuICAgICAgbWdkSUQgPSBndWlQYXJlbnRUYXNrLmdldE1nZElEKCk7XHJcbiAgICAgIGd1aVBhcmVudE1nRGF0YSA9IGd1aVBhcmVudFRhc2suZ2V0TUdEYXRhKCk7XHJcbiAgICAgIGlmIChndWlQYXJlbnRNZ0RhdGEuZ2V0VGltZXJIYW5kbGVycygpICE9IG51bGwpXHJcbiAgICAgICAgb2xkVGltZXJzID0gZ3VpUGFyZW50TWdEYXRhLmdldFRpbWVySGFuZGxlcnMoKS5nZXRUaW1lcnNWZWN0b3IoKTtcclxuXHJcbiAgICAgIGlmICh0aGlzLl9kaXRJZHggIT09IEludDMyLk1pblZhbHVlKSB7IC8vIGZvciByZWZyZXNoIHdoZW4gaGlkZGVuXHJcbiAgICAgICAgcmVmcmVzaFdoZW5IaWRkZW4gPSBmYWxzZTtcclxuICAgICAgICBtb3ZlVG9GaXJzdENvbnRyb2wgPSBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIHsgLy8gZm9yIGRlc3RpbmF0aW9uXHJcbiAgICAgICAgZGVzdGluYXRpb25TdWJmb3JtU3VjY2VlZGVkID0gdHJ1ZTtcclxuICAgICAgICAvLyBQYXNzIHRyYW5zYWN0aW9uIG93bmVyc2hpcFxyXG4gICAgICAgIGlmICh0aGlzLl90cmFuc093bmVyICE9IG51bGwpIHtcclxuICAgICAgICAgIGxldCBuZXdUcmFuc093bmVyVGFzayA9IDxUYXNrQmFzZT5BY2Nlc3NIZWxwZXIubWdEYXRhVGFibGUuR2V0VGFza0J5SUQodGhpcy5fdHJhbnNPd25lcik7XHJcbiAgICAgICAgICBpZiAobmV3VHJhbnNPd25lclRhc2sgIT0gbnVsbClcclxuICAgICAgICAgICAgbmV3VHJhbnNPd25lclRhc2suc2V0VHJhbnNPd25lclRhc2soKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHN1YmZvcm1UYXNrICE9IG51bGwpIHtcclxuICAgICAgICAgIHN1YmZvcm1UYXNrLnNldERlc3RpbmF0aW9uU3ViZm9ybSh0cnVlKTtcclxuICAgICAgICAgIGF3YWl0IHN1YmZvcm1UYXNrLnN0b3AoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKCFNZ0NvbnRyb2wudmFsaWRSZXR1cm5Ub0N0cmwoKSlcclxuICAgICAgICAgICBNZ0NvbnRyb2wuUmV0dXJuVG9DdHJsID0gTGFzdEZvY3VzZWRNYW5hZ2VyLmdldExhc3RGb2N1c2VkQ29udHJvbCgpO1xyXG4gICAgICB9XHJcbiAgICAgIHN1YmZvcm1DdHJsLnNldFN1YmZvcm1UYXNrSWQodGhpcy5fbmV3SWQpO1xyXG4gICAgfVxyXG5cclxuICAgIGxldCBwYXJlbnRNZ0RhdGE6IE1HRGF0YTtcclxuICAgIGlmIChjYWxsaW5nVGFzayA9PSBudWxsKVxyXG4gICAgICBwYXJlbnRNZ0RhdGEgPSBBY2Nlc3NIZWxwZXIubWdEYXRhVGFibGUuZ2V0TUdEYXRhKDApO1xyXG4gICAgZWxzZVxyXG4gICAgICBwYXJlbnRNZ0RhdGEgPSBjYWxsaW5nVGFzay5nZXRNR0RhdGEoKTtcclxuXHJcbiAgICBpZiAoIWRlc3RpbmF0aW9uU3ViZm9ybVN1Y2NlZWRlZCAmJiByZWZyZXNoV2hlbkhpZGRlbikge1xyXG4gICAgICBtZ2RJRCA9IEFjY2Vzc0hlbHBlci5tZ0RhdGFUYWJsZS5nZXRBdmFpbGFibGVJZHgoKTtcclxuICAgICAgRGVidWcuQXNzZXJ0KG1nZElEID4gMCk7XHJcbiAgICAgIG1nZCA9IG5ldyBNR0RhdGEoIE9wZW5VUkxDb21tYW5kLmNyZWF0ZU5ld0NvbW1hbmRzVGFibGUoKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgT3BlblVSTENvbW1hbmQuY3JlYXRlTmV3Q29tbWFuZHNUYWJsZSgpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBtZ2RJRCwgcGFyZW50TWdEYXRhLCB0aGlzLl9pc01vZGFsLCB0aGlzLl9mb3JjZU1vZGFsKTtcclxuICAgICAgbWdkLmNvcHlVbmZyYW1lZENtZHMoKTtcclxuICAgICAgYXdhaXQgQWNjZXNzSGVscGVyLm1nRGF0YVRhYmxlLmFkZE1HRGF0YShtZ2QsIG1nZElELCBmYWxzZSk7XHJcblxyXG4gICAgICBBY2Nlc3NIZWxwZXIubWdEYXRhVGFibGUuY3Vyck1nZElEID0gbWdkSUQ7XHJcbiAgICB9XHJcbiAgICB0aGlzLk9iaiA9IHRoaXMuX2tleTtcclxuICAgIHRoaXMuX2tleSA9IG51bGw7XHJcbiAgICB0cnkge1xyXG5cclxuICAgICAgLy8gVE9ETyA6IGNoZWNrIGlmIHdlIG5lZWQgdG8gZm9yY2UgR2FyYmFnZUNvbGxlY3Rpb25cclxuICAgICAgLy8gVE9ETyA6IGNoZWNrIHRoaXMgb3V0IDogIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzI3MzIxOTk3L2hvdy10by1yZXF1ZXN0LXRoZS1nYXJiYWdlLWNvbGxlY3Rvci1pbi1ub2RlLWpzLXRvLXJ1blxyXG4gICAgICAvLyBpZiAoR0MuR2V0VG90YWxNZW1vcnkoZmFsc2UpID4gMzAwMDAwMDApXHJcbiAgICAgIC8vICAgR0MuQ29sbGVjdCgpO1xyXG4gICAgICBhd2FpdCBSZW1vdGVDb21tYW5kc1Byb2Nlc3Nvci5HZXRJbnN0YW5jZSgpLlByb2Nlc3NSZXNwb25zZSh0aGlzLk5ld1Rhc2tYTUwsIG1nZElELCBuZXcgT3BlbmluZ1Rhc2tEZXRhaWxzKGNhbGxpbmdUYXNrLCBwYXRoUGFyZW50VGFzayksIG51bGwpO1xyXG4gICAgfVxyXG5cclxuICAgIGZpbmFsbHkge1xyXG4gICAgICBBY2Nlc3NIZWxwZXIuZXZlbnRzTWFuYWdlci5zZXRJZ25vcmVVbmtub3duQWJvcnQoZmFsc2UpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChkZXN0aW5hdGlvblN1YmZvcm1TdWNjZWVkZWQgfHwgIXJlZnJlc2hXaGVuSGlkZGVuKSB7XHJcbiAgICAgIHN1YmZvcm1DdHJsLmluaXRTdWJmb3JtVGFzaygpO1xyXG5cclxuICAgICAgaWYgKGRlc3RpbmF0aW9uU3ViZm9ybVN1Y2NlZWRlZCkge1xyXG4gICAgICAgIGxldCBzdWJmb3JtVGFzazogVGFza0Jhc2UgPSA8VGFza0Jhc2U+c3ViZm9ybUN0cmwuZ2V0U3ViZm9ybVRhc2soKTtcclxuICAgICAgICBtb3ZlVG9GaXJzdENvbnRyb2wgPSAhY2FsbGluZ1Rhc2suUmV0YWluRm9jdXM7XHJcbiAgICAgICAgc3ViZm9ybVRhc2suc2V0SXNEZXN0aW5hdGlvbkNhbGwodHJ1ZSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBsZXQgaXNTdWJmb3JtTW9kYWw6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHQgIGxldCBwcmV2TWdEYXRhSXNNb2RhbCA9IG1nZC5Jc01vZGFsO1xyXG5cclxuICAgIGlmIChzdWJmb3JtQ3RybCAhPSBudWxsKSB7XHJcbiAgICAgIGlmIChndWlQYXJlbnRNZ0RhdGEuZ2V0VGltZXJIYW5kbGVycygpICE9IG51bGwpXHJcbiAgICAgICAgbmV3VGltZXJzID0gZ3VpUGFyZW50TWdEYXRhLmdldFRpbWVySGFuZGxlcnMoKS5nZXRUaW1lcnNWZWN0b3IoKTtcclxuICAgICAgZ3VpUGFyZW50TWdEYXRhLmNoYW5nZVRpbWVycyhvbGRUaW1lcnMsIG5ld1RpbWVycyk7XHJcblx0ICBpZiAoc3ViZm9ybUN0cmwuSXNNb2RhbCgpKVxyXG5cdFx0dGhpcy5faXNNb2RhbCA9IGlzU3ViZm9ybU1vZGFsID0gbWdkLklzTW9kYWwgPSB0cnVlO1xyXG4gICAgfVxyXG4gICAgbGV0IG5vbkludGVyYWN0aXZlVGFzazogVGFza0Jhc2UgPSBhd2FpdCBUYXNrLlN0YXJ0UHJvZ3JhbShkZXN0aW5hdGlvblN1YmZvcm1TdWNjZWVkZWQsIG1vdmVUb0ZpcnN0Q29udHJvbCk7XHJcbiAgICAvLyBpbiBsb2NhbCB0YXNrcywgaXNtb2RhbCBpcyBjYWxjdWxhdGVkIGFmdGVyIHRoZSBtYWluIGRpc3BsYXksIHNvIHdlIG5lZWQgdG8gdXBkYXRlIHRoZSBjb21tYW5kIG1lbWJlclxyXG4gICAgaWYgKCFpc1N1YmZvcm1Nb2RhbClcclxuICAgICAgdGhpcy5faXNNb2RhbCA9IG1nZC5Jc01vZGFsO1xyXG5cclxuICAgIC8vIFRoaXMgaXMgYmVjYXVzZSB3ZSBjYW5ub3QgYWxsb3cgdGhlIHRhc2tzIGFib3ZlIGl0IHRvIGNhdGNoIGV2ZW50cy5cclxuICAgIGlmIChub25JbnRlcmFjdGl2ZVRhc2sgPT0gbnVsbCkge1xyXG4gICAgICAvLyBhIG5vbiBpbnRlcmFjdGl2ZSBwYXJlbnQgd2lsbCBjYXVzZSB0aGUgY2FsbGVkIHRhc2sgdG8gYmVoYXZlIGxpa2UgbW9kYWwgYnkgaGF2aW5nIGl0cyBvd24gZXZlbnRzIGxvb3AuXHJcbiAgICAgIC8vIEluIGNhc2Ugb2YgbWFpbiBwcm9ncmFtIGNhbGxlciAod2hpY2ggaXMgZmxhZ2dlZCBhcyBub24gaW50ZXJhY3RpdmUpIHdlIHdpbGwgaGF2ZSBhIG5ldyBldmVudHMgbG9vcCBmb3IgdGhlIGNhbGxlZCBwcm9ncmFtXHJcbiAgICAgIC8vIGlmIHRoZSBtYWluIHByb2dyYW0gaXMgd2l0aG91dCBhIGZvcm0uIElmIHRoZSBtYWluIHByb2cgaGFzIGEgZm9ybSAsIHRoZW4gdGhlIGNhbGxlZSBjYW4gYmUgaW5jbHVkZWQgaW4gdGhlIG1haW4gcHJvZyBsb29wLlxyXG4gICAgICAvLyBpZiBzdWJmb3JtIGlzIE1vZGFsLCBlbnRlciBpbiBzZXBhcmF0ZSBldmVudGxvb3AgdG8gZ2V0IE1vZGFsaXR5IGJlaGF2aW9yXHJcbiAgICAgIGlmIChjYWxsaW5nVGFzayAhPSBudWxsICYmICgodGhpcy5faXNNb2RhbCAmJiAoaXNTdWJmb3JtTW9kYWwgfHwgIWRlc3RpbmF0aW9uU3ViZm9ybVN1Y2NlZWRlZCkgJiYgcmVmcmVzaFdoZW5IaWRkZW4pIHx8ICghY2FsbGluZ1Rhc2suSXNJbnRlcmFjdGl2ZSAmJiAoIWNhbGxpbmdUYXNrLmlzTWFpblByb2coKSB8fCBjYWxsaW5nVGFzay5nZXRGb3JtKCkgPT0gbnVsbCkpKSkge1xyXG4gICAgICAgIGlmICh0aGlzLl9pc01vZGFsKSB7XHJcbiAgICAgICAgICAvLyByZWZyZXNoIGFsbCB0YXNrcyBkYXRhIGJlZm9yZSBvcGVuaW5nIG1vZGFsIHdpbmRvdy4gQmVjYXVzZSBvbmNlIHRoZSB3aW5kb3cgaXMgb3BlbmVkLCBwYXJlbnQgdGFzaydzXHJcbiAgICAgICAgICAvLyBkYXRhIHdpbGwgbm90IGJlIHJlZnJlc2hlZCB1bnRpbCB0aGUgbW9kYWwgd2luZG93IGlzIGNsb3NlZCBhbmQgbW9kYWwgd2luZG93IHRhc2sgd2lsbCBub3QgZ2V0IHRoZSBsYXRlc3RcclxuICAgICAgICAgIC8vIHBhcmVudCBkYXRhLlxyXG5cclxuICAgICAgICAgIEFjY2Vzc0hlbHBlci5tZ0RhdGFUYWJsZS5zdGFydFRhc2tzSXRlcmF0aW9uKCk7XHJcbiAgICAgICAgICAgIGxldCB0YXNrOiBUYXNrQmFzZTtcclxuICAgICAgICAgICAgd2hpbGUgKCh0YXNrID0gPFRhc2tCYXNlPkFjY2Vzc0hlbHBlci5tZ0RhdGFUYWJsZS5nZXROZXh0VGFzaygpKSAhPT0gbnVsbCkge1xyXG4gICAgICAgICAgICAgIGxldCBkYXRhVmlld1dhc1JldHJpZXZlZDogYm9vbGVhbiA9IHRhc2suRGF0YVZpZXdXYXNSZXRyaWV2ZWQ7XHJcbiAgICAgICAgICAgICAgaWYgKGRhdGFWaWV3V2FzUmV0cmlldmVkKSB7XHJcbiAgICAgICAgICAgICAgICBhd2FpdCB0YXNrLlJlZnJlc2hEaXNwbGF5KCk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBhd2FpdCBBY2Nlc3NIZWxwZXIuZXZlbnRzTWFuYWdlci5FdmVudHNMb29wKG1nZCk7XHJcblxyXG4gICAgICAgICAgLy9hZnRlciBjbG9zaW5nIG1vZGFsIHN1YmZvcm0gYXRzaywgaXQgY29tZXMgb3V0IG9mIGV2ZW50IGxvb3AgLCBzZXQgbWdkLklzQWJvcnRpbmc9IGZhbHNlLlxyXG4gICAgICAgICAgLy9yZS1zdG9yZSBtZ2QuSXNNb2RhbCBiYWNrIHRvIGl0J3Mgb3JpZ2luYWwgdmFsdWUuXHJcbiAgICAgICAgICBpZiAoaXNTdWJmb3JtTW9kYWwpXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIG1nZC5Jc0Fib3J0aW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIG1nZC5Jc01vZGFsID0gcHJldk1nRGF0YUlzTW9kYWw7XHJcbiAgICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGVsc2VcclxuICAgICAgYXdhaXQgQWNjZXNzSGVscGVyLmV2ZW50c01hbmFnZXIuTm9uSW50ZXJhY3RpdmVFdmVudHNMb29wKG1nZCwgbm9uSW50ZXJhY3RpdmVUYXNrKTtcclxuXHJcbiAgICAvLyBpZiB0aGVyZSBpcyBwZW5kaW5nIGV2ZW50IHdoaWNoIGNhdXNlZCBjbG9zdXJlIG9mIG1vZGFsIHN1YmZvcm0sIGFkZCBpdCBpbiBxdWV1ZSBub3cuXHJcbiAgICBpZiAoQWNjZXNzSGVscGVyLmV2ZW50c01hbmFnZXIuZ2V0UGVuZGluZ0d1aUV2ZW50KCkhPSBudWxsICYmIChpc1N1YmZvcm1Nb2RhbCB8fCBub25JbnRlcmFjdGl2ZVRhc2sgIT0gbnVsbCkpXHJcbiAgICB7XHJcbiAgICAgIGxldCBndWlFdmVudCA9IEFjY2Vzc0hlbHBlci5ldmVudHNNYW5hZ2VyLmdldFBlbmRpbmdHdWlFdmVudCgpO1xyXG4gICAgICAvLyBjaGVjayBpZiB0cnVlIGNhbGxlciBpcyBub24taW50ZXJhY3RpdmUgdGFzayA/IGlmIHNvIC4uLk1HX0FDVF9DTE9TRSBzaG91bGQgYmUgYWRkZWRcclxuICAgICAgaWYgKGd1aUV2ZW50LmdldFRhc2soKSAhPSBjYWxsaW5nVGFzayB8fCB0aGlzLl9jYWxsaW5nVGFza1RhZyAhPT0gY2FsbGluZ1Rhc2suZ2V0VGFza1RhZygpKSB7XHJcblxyXG4gICAgICAgIGNhbGxpbmdUYXNrID0gPFRhc2s+QWNjZXNzSGVscGVyLm1nRGF0YVRhYmxlLkdldFRhc2tCeUlEKHRoaXMuX2NhbGxpbmdUYXNrVGFnKTtcclxuICAgICAgICAvLyBJZiBjYWxsaW5nIHRhc2sgaXMgY2FsbGVkIGJ5IGNhbGwgZGVzdGluYXRpb24gdGhlbiBjbG9zZSBpdCBieSBwZXJmb3JtU3ViZm9ybUNsb3NlKCkuXHJcbiAgICAgICAgaWYgKCg8VGFzaz5jYWxsaW5nVGFzaykuZ2V0SXNEZXN0aW5hdGlvbkNhbGwoKSkge1xyXG4gICAgICAgICAgbGV0IHN1YmZvcm1DdHJsOiBNZ0NvbnRyb2wgPSA8TWdDb250cm9sPmNhbGxpbmdUYXNrLmdldEZvcm0oKS5nZXRTdWJGb3JtQ3RybCgpO1xyXG4gICAgICAgICAgYXdhaXQgQWNjZXNzSGVscGVyLmV2ZW50c01hbmFnZXIucGVyZm9ybVN1YmZvcm1DbG9zZSg8TWdDb250cm9sPnN1YmZvcm1DdHJsKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICBsZXQgcnRFdnQgPSBuZXcgUnVuVGltZUV2ZW50KGNhbGxpbmdUYXNrKTtcclxuICAgICAgICAgIHJ0RXZ0LnNldEludGVybmFsKEludGVybmFsSW50ZXJmYWNlLk1HX0FDVF9DTE9TRSk7XHJcbiAgICAgICAgICBydEV2dC5zZXRDdHJsKG51bGwpO1xyXG4gICAgICAgICAgcnRFdnQuc2V0QXJnTGlzdChudWxsKTtcclxuICAgICAgICAgIEFjY2Vzc0hlbHBlci5ldmVudHNNYW5hZ2VyLmFkZFRvVGFpbChydEV2dCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIEFjY2Vzc0hlbHBlci5ldmVudHNNYW5hZ2VyLmFkZFRvVGFpbChndWlFdmVudCk7XHJcbiAgICAgICAgQWNjZXNzSGVscGVyLmV2ZW50c01hbmFnZXIuc2V0UGVuZGluZ0d1aUV2ZW50KG51bGwpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgSGFuZGxlQXR0cmlidXRlKGF0dHJpYnV0ZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBzd2l0Y2ggKGF0dHJpYnV0ZSkge1xyXG4gICAgICBjYXNlIENvbnN0SW50ZXJmYWNlLk1HX0FUVFJfQ0FMTElOR1RBU0s6XHJcbiAgICAgICAgdGhpcy5fY2FsbGluZ1Rhc2tUYWcgPSB2YWx1ZTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBDb25zdEludGVyZmFjZS5NR19BVFRSX1BBVEhfUEFSRU5UX1RBU0s6XHJcbiAgICAgICAgdGhpcy5fcGF0aFBhcmVudFRhc2tUYWcgPSB2YWx1ZTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBDb25zdEludGVyZmFjZS5NR19BVFRSX1NVQkZPUk1fQ1RSTDpcclxuICAgICAgICB0aGlzLl9zdWJmb3JtQ3RybE5hbWUgPSB2YWx1ZTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBYTUxDb25zdGFudHMuTUdfQVRUUl9ESVRJRFg6XHJcbiAgICAgICAgdGhpcy5fZGl0SWR4ID0gWG1sUGFyc2VyLmdldEludCh2YWx1ZSk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgQ29uc3RJbnRlcmZhY2UuTUdfQVRUUl9NT0RBTDpcclxuICAgICAgICB0aGlzLl9pc01vZGFsID0gKHZhbHVlWzBdID09PSAnMScpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIENvbnN0SW50ZXJmYWNlLk1HX0FUVFJfVFJBTlNfT1dORVI6XHJcbiAgICAgICAgdGhpcy5fdHJhbnNPd25lciA9IHZhbHVlO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIENvbnN0SW50ZXJmYWNlLk1HX0FUVFJfTkVXSUQ6XHJcbiAgICAgICAgdGhpcy5fbmV3SWQgPSBOU3RyaW5nLlRyaW1FbmQodmFsdWUpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIENvbnN0SW50ZXJmYWNlLk1HX0FUVFJfS0VZOlxyXG4gICAgICAgIHRoaXMuX2tleSA9IHZhbHVlO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIENvbnN0SW50ZXJmYWNlLk1HX0FUVFJfQVJHTElTVDpcclxuICAgICAgICB0aGlzLl92YXJMaXN0ID0gbmV3IEFyZ3VtZW50c0xpc3QoKTtcclxuICAgICAgICB0aGlzLl92YXJMaXN0LmZpbGxMaXN0KHZhbHVlLCA8VGFza0Jhc2U+QWNjZXNzSGVscGVyLm1nRGF0YVRhYmxlLkdldFRhc2tCeUlEKHRoaXMuVGFza1RhZykpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIENvbnN0SW50ZXJmYWNlLk1HX0FUVFJfT0JKRUNUOlxyXG4gICAgICAgIHRoaXMuT2JqID0gdmFsdWU7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgQ29uc3RJbnRlcmZhY2UuTUdfQVRUUl9JU19ST1VURTpcclxuICAgICAgICB0aGlzLl9pc1JvdXRlID0gKHZhbHVlWzBdID09PSAnMScpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHN1cGVyLkhhbmRsZUF0dHJpYnV0ZShhdHRyaWJ1dGUsIHZhbHVlKTtcclxuICAgICAgICBicmVhaztcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
@@ -1,15 +1,15 @@
1
- import { ClientTargetedCommandBase } from './ClientTargetedCommandBase';
2
- import { DataViewCommandType } from '../ClientToServer/DataviewCommand';
3
- import { CommandFactory } from '../ClientToServer/CommandFactory';
4
- import { AccessHelper } from '../../AccessHelper';
5
- export class ResetLocateCommand extends ClientTargetedCommandBase {
6
- constructor() {
7
- super();
8
- }
9
- async Execute(res) {
10
- let task = AccessHelper.mgDataTable.GetTaskByID(this.TaskTag);
11
- let command = CommandFactory.CreateDataViewCommand(this.TaskTag, DataViewCommandType.ResetUserLocate);
12
- await task.DataviewManager.Execute(command);
13
- }
14
- }
1
+ import { ClientTargetedCommandBase } from './ClientTargetedCommandBase';
2
+ import { DataViewCommandType } from '../ClientToServer/DataviewCommand';
3
+ import { CommandFactory } from '../ClientToServer/CommandFactory';
4
+ import { AccessHelper } from '../../AccessHelper';
5
+ export class ResetLocateCommand extends ClientTargetedCommandBase {
6
+ constructor() {
7
+ super();
8
+ }
9
+ async Execute(res) {
10
+ let task = AccessHelper.mgDataTable.GetTaskByID(this.TaskTag);
11
+ let command = CommandFactory.CreateDataViewCommand(this.TaskTag, DataViewCommandType.ResetUserLocate);
12
+ await task.DataviewManager.Execute(command);
13
+ }
14
+ }
15
15
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVzZXRMb2NhdGVDb21tYW5kLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZW5naW5lL3NyYy9jb21tYW5kcy9TZXJ2ZXJUb0NsaWVudC9SZXNldExvY2F0ZUNvbW1hbmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFHdEUsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDdEUsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBRWhFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUtsRCxNQUFNLE9BQU8sa0JBQW1CLFNBQVEseUJBQXlCO0lBRS9EO1FBQ0UsS0FBSyxFQUFFLENBQUM7SUFDVixDQUFDO0lBTUQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFpQjtRQUM3QixJQUFJLElBQUksR0FBZSxZQUFZLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFMUUsSUFBSSxPQUFPLEdBQW1CLGNBQWMsQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLG1CQUFtQixDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ3RILE1BQU0sSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDOUMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDbGllbnRUYXJnZXRlZENvbW1hbmRCYXNlfSBmcm9tICcuL0NsaWVudFRhcmdldGVkQ29tbWFuZEJhc2UnO1xyXG5pbXBvcnQge1Rhc2t9IGZyb20gJy4uLy4uL3Rhc2tzL1Rhc2snO1xyXG5pbXBvcnQge0lSZXN1bHRWYWx1ZX0gZnJvbSAnLi4vLi4vcnQvSVJlc3VsdFZhbHVlJztcclxuaW1wb3J0IHtEYXRhVmlld0NvbW1hbmRUeXBlfSBmcm9tICcuLi9DbGllbnRUb1NlcnZlci9EYXRhdmlld0NvbW1hbmQnO1xyXG5pbXBvcnQge0NvbW1hbmRGYWN0b3J5fSBmcm9tICcuLi9DbGllbnRUb1NlcnZlci9Db21tYW5kRmFjdG9yeSc7XHJcbmltcG9ydCB7SUNsaWVudENvbW1hbmR9IGZyb20gJy4uL0lDbGllbnRDb21tYW5kJztcclxuaW1wb3J0IHsgQWNjZXNzSGVscGVyIH0gZnJvbSAnLi4vLi4vQWNjZXNzSGVscGVyJztcclxuXHJcbi8vLyA8c3VtbWFyeT5cclxuLy8vIFJlc2V0TG9jYXRlQ29tbWFuZFxyXG4vLy8gPC9zdW1tYXJ5PlxyXG5leHBvcnQgY2xhc3MgUmVzZXRMb2NhdGVDb21tYW5kIGV4dGVuZHMgQ2xpZW50VGFyZ2V0ZWRDb21tYW5kQmFzZSB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gRXhlY3V0ZSBSZXNldExvY2F0ZSBjb21tYW5kLlxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwicmVzXCI+PC9wYXJhbT5cclxuICBhc3luYyBFeGVjdXRlKHJlczogSVJlc3VsdFZhbHVlKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBsZXQgdGFzazogVGFzayA9IDxUYXNrPkFjY2Vzc0hlbHBlci5tZ0RhdGFUYWJsZS5HZXRUYXNrQnlJRCh0aGlzLlRhc2tUYWcpO1xyXG5cclxuICAgIGxldCBjb21tYW5kOiBJQ2xpZW50Q29tbWFuZCA9IENvbW1hbmRGYWN0b3J5LkNyZWF0ZURhdGFWaWV3Q29tbWFuZCh0aGlzLlRhc2tUYWcsIERhdGFWaWV3Q29tbWFuZFR5cGUuUmVzZXRVc2VyTG9jYXRlKTtcclxuICAgIGF3YWl0IHRhc2suRGF0YXZpZXdNYW5hZ2VyLkV4ZWN1dGUoY29tbWFuZCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1,15 +1,15 @@
1
- import { ClientTargetedCommandBase } from './ClientTargetedCommandBase';
2
- import { CommandFactory } from '../ClientToServer/CommandFactory';
3
- import { DataViewCommandType } from '../ClientToServer/DataviewCommand';
4
- import { AccessHelper } from '../../AccessHelper';
5
- export class ResetRangeCommand extends ClientTargetedCommandBase {
6
- constructor() {
7
- super();
8
- }
9
- async Execute(res) {
10
- let task = AccessHelper.mgDataTable.GetTaskByID(this.TaskTag);
11
- let command = CommandFactory.CreateDataViewCommand(this.TaskTag, DataViewCommandType.ResetUserRange);
12
- await task.DataviewManager.Execute(command);
13
- }
14
- }
1
+ import { ClientTargetedCommandBase } from './ClientTargetedCommandBase';
2
+ import { CommandFactory } from '../ClientToServer/CommandFactory';
3
+ import { DataViewCommandType } from '../ClientToServer/DataviewCommand';
4
+ import { AccessHelper } from '../../AccessHelper';
5
+ export class ResetRangeCommand extends ClientTargetedCommandBase {
6
+ constructor() {
7
+ super();
8
+ }
9
+ async Execute(res) {
10
+ let task = AccessHelper.mgDataTable.GetTaskByID(this.TaskTag);
11
+ let command = CommandFactory.CreateDataViewCommand(this.TaskTag, DataViewCommandType.ResetUserRange);
12
+ await task.DataviewManager.Execute(command);
13
+ }
14
+ }
15
15
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVzZXRSYW5nZUNvbW1hbmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbmdpbmUvc3JjL2NvbW1hbmRzL1NlcnZlclRvQ2xpZW50L1Jlc2V0UmFuZ2VDb21tYW5kLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBSXhFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFLbEQsTUFBTSxPQUFPLGlCQUFrQixTQUFRLHlCQUF5QjtJQUU5RDtRQUNFLEtBQUssRUFBRSxDQUFDO0lBQ1YsQ0FBQztJQU1ELEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBaUI7UUFFN0IsSUFBSSxJQUFJLEdBQWUsWUFBWSxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRTFFLElBQUksT0FBTyxHQUFtQixjQUFjLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxtQkFBbUIsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNySCxNQUFNLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzlDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENsaWVudFRhcmdldGVkQ29tbWFuZEJhc2UgfSBmcm9tICcuL0NsaWVudFRhcmdldGVkQ29tbWFuZEJhc2UnO1xyXG5pbXBvcnQgeyBJUmVzdWx0VmFsdWUgfSBmcm9tICcuLi8uLi9ydC9JUmVzdWx0VmFsdWUnO1xyXG5pbXBvcnQgeyBUYXNrIH0gZnJvbSAnLi4vLi4vdGFza3MvVGFzayc7XHJcbmltcG9ydCB7IElDbGllbnRDb21tYW5kIH0gZnJvbSAnLi4vSUNsaWVudENvbW1hbmQnO1xyXG5pbXBvcnQgeyBDb21tYW5kRmFjdG9yeSB9IGZyb20gJy4uL0NsaWVudFRvU2VydmVyL0NvbW1hbmRGYWN0b3J5JztcclxuaW1wb3J0IHsgRGF0YVZpZXdDb21tYW5kVHlwZSB9IGZyb20gJy4uL0NsaWVudFRvU2VydmVyL0RhdGF2aWV3Q29tbWFuZCc7XHJcbmltcG9ydCB7IEFjY2Vzc0hlbHBlciB9IGZyb20gJy4uLy4uL0FjY2Vzc0hlbHBlcic7XHJcblxyXG4vLy8gPHN1bW1hcnk+XHJcbi8vLyBSZXNldFJhbmdlQ29tbWFuZFxyXG4vLy8gPC9zdW1tYXJ5PlxyXG5leHBvcnQgY2xhc3MgUmVzZXRSYW5nZUNvbW1hbmQgZXh0ZW5kcyBDbGllbnRUYXJnZXRlZENvbW1hbmRCYXNlIHtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyBFeGVjdXRlIFJlc2V0UmFuZ2UgY29tbWFuZC5cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cInJlc1wiPjwvcGFyYW0+XHJcbiAgYXN5bmMgRXhlY3V0ZShyZXM6IElSZXN1bHRWYWx1ZSk6IFByb21pc2U8dm9pZD4ge1xyXG5cclxuICAgIGxldCB0YXNrOiBUYXNrID0gPFRhc2s+QWNjZXNzSGVscGVyLm1nRGF0YVRhYmxlLkdldFRhc2tCeUlEKHRoaXMuVGFza1RhZyk7XHJcblxyXG4gICAgbGV0IGNvbW1hbmQ6IElDbGllbnRDb21tYW5kID0gQ29tbWFuZEZhY3RvcnkuQ3JlYXRlRGF0YVZpZXdDb21tYW5kKHRoaXMuVGFza1RhZywgRGF0YVZpZXdDb21tYW5kVHlwZS5SZXNldFVzZXJSYW5nZSk7XHJcbiAgICBhd2FpdCB0YXNrLkRhdGF2aWV3TWFuYWdlci5FeGVjdXRlKGNvbW1hbmQpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,15 +1,15 @@
1
- import { ClientTargetedCommandBase } from './ClientTargetedCommandBase';
2
- import { CommandFactory } from '../ClientToServer/CommandFactory';
3
- import { DataViewCommandType } from '../ClientToServer/DataviewCommand';
4
- import { AccessHelper } from '../../AccessHelper';
5
- export class ResetSortCommand extends ClientTargetedCommandBase {
6
- constructor() {
7
- super();
8
- }
9
- async Execute(res) {
10
- let task = AccessHelper.mgDataTable.GetTaskByID(this.TaskTag);
11
- let command = CommandFactory.CreateDataViewCommand(this.TaskTag, DataViewCommandType.ResetUserSort);
12
- await task.DataviewManager.Execute(command);
13
- }
14
- }
1
+ import { ClientTargetedCommandBase } from './ClientTargetedCommandBase';
2
+ import { CommandFactory } from '../ClientToServer/CommandFactory';
3
+ import { DataViewCommandType } from '../ClientToServer/DataviewCommand';
4
+ import { AccessHelper } from '../../AccessHelper';
5
+ export class ResetSortCommand extends ClientTargetedCommandBase {
6
+ constructor() {
7
+ super();
8
+ }
9
+ async Execute(res) {
10
+ let task = AccessHelper.mgDataTable.GetTaskByID(this.TaskTag);
11
+ let command = CommandFactory.CreateDataViewCommand(this.TaskTag, DataViewCommandType.ResetUserSort);
12
+ await task.DataviewManager.Execute(command);
13
+ }
14
+ }
15
15
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVzZXRTb3J0Q29tbWFuZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VuZ2luZS9zcmMvY29tbWFuZHMvU2VydmVyVG9DbGllbnQvUmVzZXRTb3J0Q29tbWFuZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUd4RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFFeEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRWxELE1BQU0sT0FBTyxnQkFBaUIsU0FBUSx5QkFBeUI7SUFFN0Q7UUFDRSxLQUFLLEVBQUUsQ0FBQztJQUNWLENBQUM7SUFFRCxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQWlCO1FBQzdCLElBQUksSUFBSSxHQUFlLFlBQVksQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUUxRSxJQUFJLE9BQU8sR0FBbUIsY0FBYyxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsbUJBQW1CLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDcEgsTUFBTSxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM5QyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDbGllbnRUYXJnZXRlZENvbW1hbmRCYXNlIH0gZnJvbSAnLi9DbGllbnRUYXJnZXRlZENvbW1hbmRCYXNlJztcclxuaW1wb3J0IHsgSVJlc3VsdFZhbHVlIH0gZnJvbSAnLi4vLi4vcnQvSVJlc3VsdFZhbHVlJztcclxuaW1wb3J0IHsgSUNsaWVudENvbW1hbmQgfSBmcm9tICcuLi9JQ2xpZW50Q29tbWFuZCc7XHJcbmltcG9ydCB7IENvbW1hbmRGYWN0b3J5IH0gZnJvbSAnLi4vQ2xpZW50VG9TZXJ2ZXIvQ29tbWFuZEZhY3RvcnknO1xyXG5pbXBvcnQgeyBEYXRhVmlld0NvbW1hbmRUeXBlIH0gZnJvbSAnLi4vQ2xpZW50VG9TZXJ2ZXIvRGF0YXZpZXdDb21tYW5kJztcclxuaW1wb3J0IHsgVGFzayB9IGZyb20gJy4uLy4uL3Rhc2tzL1Rhc2snO1xyXG5pbXBvcnQgeyBBY2Nlc3NIZWxwZXIgfSBmcm9tICcuLi8uLi9BY2Nlc3NIZWxwZXInO1xyXG5cclxuZXhwb3J0IGNsYXNzIFJlc2V0U29ydENvbW1hbmQgZXh0ZW5kcyBDbGllbnRUYXJnZXRlZENvbW1hbmRCYXNlIHtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgRXhlY3V0ZShyZXM6IElSZXN1bHRWYWx1ZSk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgbGV0IHRhc2s6IFRhc2sgPSA8VGFzaz5BY2Nlc3NIZWxwZXIubWdEYXRhVGFibGUuR2V0VGFza0J5SUQodGhpcy5UYXNrVGFnKTtcclxuXHJcbiAgICBsZXQgY29tbWFuZDogSUNsaWVudENvbW1hbmQgPSBDb21tYW5kRmFjdG9yeS5DcmVhdGVEYXRhVmlld0NvbW1hbmQodGhpcy5UYXNrVGFnLCBEYXRhVmlld0NvbW1hbmRUeXBlLlJlc2V0VXNlclNvcnQpO1xyXG4gICAgYXdhaXQgdGFzay5EYXRhdmlld01hbmFnZXIuRXhlY3V0ZShjb21tYW5kKTtcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,37 @@
1
+ import { ClientTargetedCommandBase } from "./ClientTargetedCommandBase";
2
+ import { StorageAttribute, XMLConstants, XmlParser } from "@magic-xpa/utils";
3
+ import { ConstInterface } from "../../ConstInterface";
4
+ export class ResultCommand extends ClientTargetedCommandBase {
5
+ _isNull = false;
6
+ _attr = StorageAttribute.NONE;
7
+ _val = null;
8
+ async Execute(res) {
9
+ if (this._isNull)
10
+ res.SetResultValue(null, StorageAttribute.NONE);
11
+ else {
12
+ if (this._val == null)
13
+ this._val = "";
14
+ res.SetResultValue(this._val, this._attr);
15
+ }
16
+ }
17
+ HandleAttribute(attribute, value) {
18
+ switch (attribute) {
19
+ case ConstInterface.MG_ATTR_NULL:
20
+ this._isNull = (XmlParser.getInt(value) === 1);
21
+ break;
22
+ case ConstInterface.MG_ATTR_PAR_ATTRS:
23
+ this._attr = value[0];
24
+ break;
25
+ case XMLConstants.MG_ATTR_VALUE:
26
+ this._val = XmlParser.unescape(value);
27
+ break;
28
+ default:
29
+ super.HandleAttribute(attribute, value);
30
+ break;
31
+ }
32
+ }
33
+ constructor() {
34
+ super();
35
+ }
36
+ }
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVzdWx0Q29tbWFuZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VuZ2luZS9zcmMvY29tbWFuZHMvU2VydmVyVG9DbGllbnQvUmVzdWx0Q29tbWFuZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMseUJBQXlCLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUN0RSxPQUFPLEVBQUMsZ0JBQWdCLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBRTNFLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUVwRCxNQUFNLE9BQU8sYUFBYyxTQUFRLHlCQUF5QjtJQUNsRCxPQUFPLEdBQVksS0FBSyxDQUFDO0lBQ3pCLEtBQUssR0FBcUIsZ0JBQWdCLENBQUMsSUFBSSxDQUFDO0lBQ2hELElBQUksR0FBVyxJQUFJLENBQUM7SUFNNUIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFpQjtRQUU3QixJQUFJLElBQUksQ0FBQyxPQUFPO1lBQ2QsR0FBRyxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDN0MsQ0FBQztZQUNKLElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJO2dCQUNuQixJQUFJLENBQUMsSUFBSSxHQUFHLEVBQUUsQ0FBQztZQUNqQixHQUFHLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzVDLENBQUM7SUFDSCxDQUFDO0lBT00sZUFBZSxDQUFDLFNBQWlCLEVBQUUsS0FBYTtRQUNyRCxRQUFRLFNBQVMsRUFBRSxDQUFDO1lBQ2xCLEtBQUssY0FBYyxDQUFDLFlBQVk7Z0JBQzlCLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO2dCQUMvQyxNQUFNO1lBRVIsS0FBSyxjQUFjLENBQUMsaUJBQWlCO2dCQUNuQyxJQUFJLENBQUMsS0FBSyxHQUFxQixLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ3hDLE1BQU07WUFFUixLQUFLLFlBQVksQ0FBQyxhQUFhO2dCQUM3QixJQUFJLENBQUMsSUFBSSxHQUFHLFNBQVMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ3RDLE1BQU07WUFFUjtnQkFDRSxLQUFLLENBQUMsZUFBZSxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQztnQkFDeEMsTUFBTTtRQUNWLENBQUM7SUFDSCxDQUFDO0lBRUQ7UUFDRSxLQUFLLEVBQUUsQ0FBQztJQUNWLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2xpZW50VGFyZ2V0ZWRDb21tYW5kQmFzZX0gZnJvbSBcIi4vQ2xpZW50VGFyZ2V0ZWRDb21tYW5kQmFzZVwiO1xyXG5pbXBvcnQge1N0b3JhZ2VBdHRyaWJ1dGUsIFhNTENvbnN0YW50cywgWG1sUGFyc2VyfSBmcm9tIFwiQG1hZ2ljLXhwYS91dGlsc1wiO1xyXG5pbXBvcnQge0lSZXN1bHRWYWx1ZX0gZnJvbSBcIi4uLy4uL3J0L0lSZXN1bHRWYWx1ZVwiO1xyXG5pbXBvcnQge0NvbnN0SW50ZXJmYWNlfSBmcm9tIFwiLi4vLi4vQ29uc3RJbnRlcmZhY2VcIjtcclxuXHJcbmV4cG9ydCBjbGFzcyBSZXN1bHRDb21tYW5kIGV4dGVuZHMgQ2xpZW50VGFyZ2V0ZWRDb21tYW5kQmFzZSB7XHJcbiAgcHJpdmF0ZSBfaXNOdWxsOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHJpdmF0ZSBfYXR0cjogU3RvcmFnZUF0dHJpYnV0ZSA9IFN0b3JhZ2VBdHRyaWJ1dGUuTk9ORTtcclxuICBwcml2YXRlIF92YWw6IHN0cmluZyA9IG51bGw7XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy9cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImV4cFwiPjwvcGFyYW0+XHJcbiAgYXN5bmMgRXhlY3V0ZShyZXM6IElSZXN1bHRWYWx1ZSk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgLy8gc2V0IHZhbHVlIHRvICdnbG9iYWwnIEV4cHJlc3Npb24gdmFyaWFibGVcclxuICAgIGlmICh0aGlzLl9pc051bGwpXHJcbiAgICAgIHJlcy5TZXRSZXN1bHRWYWx1ZShudWxsLCBTdG9yYWdlQXR0cmlidXRlLk5PTkUpO1xyXG4gICAgZWxzZSB7XHJcbiAgICAgIGlmICh0aGlzLl92YWwgPT0gbnVsbClcclxuICAgICAgICB0aGlzLl92YWwgPSBcIlwiO1xyXG4gICAgICByZXMuU2V0UmVzdWx0VmFsdWUodGhpcy5fdmFsLCB0aGlzLl9hdHRyKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy9cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImF0dHJpYnV0ZVwiPjwvcGFyYW0+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwidmFsdWVcIj48L3BhcmFtPlxyXG4gIHB1YmxpYyBIYW5kbGVBdHRyaWJ1dGUoYXR0cmlidXRlOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHN3aXRjaCAoYXR0cmlidXRlKSB7XHJcbiAgICAgIGNhc2UgQ29uc3RJbnRlcmZhY2UuTUdfQVRUUl9OVUxMOlxyXG4gICAgICAgIHRoaXMuX2lzTnVsbCA9IChYbWxQYXJzZXIuZ2V0SW50KHZhbHVlKSA9PT0gMSk7XHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICBjYXNlIENvbnN0SW50ZXJmYWNlLk1HX0FUVFJfUEFSX0FUVFJTOlxyXG4gICAgICAgIHRoaXMuX2F0dHIgPSA8U3RvcmFnZUF0dHJpYnV0ZT52YWx1ZVswXTtcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIGNhc2UgWE1MQ29uc3RhbnRzLk1HX0FUVFJfVkFMVUU6XHJcbiAgICAgICAgdGhpcy5fdmFsID0gWG1sUGFyc2VyLnVuZXNjYXBlKHZhbHVlKTtcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgc3VwZXIuSGFuZGxlQXR0cmlidXRlKGF0dHJpYnV0ZSwgdmFsdWUpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,83 @@
1
+ import { ClientTargetedCommandBase } from './ClientTargetedCommandBase';
2
+ import { NString, RefParam } from '@magic-xpa/mscorelib';
3
+ import { Styles } from '@magic-xpa/gui';
4
+ import { Logger, MsgInterface, StrUtil, XmlParser } from '@magic-xpa/utils';
5
+ import { ConstUtils } from '../../util/ConstUtils';
6
+ import { ConstInterface } from '../../ConstInterface';
7
+ import { LanguageData } from '../../env/LanguageData';
8
+ import { LastFocusedManager } from '../../rt/LastFocusedManager';
9
+ import { AccessHelper } from '../../AccessHelper';
10
+ import { GUIManager } from "../../GUIManager";
11
+ export class VerifyCommand extends ClientTargetedCommandBase {
12
+ _callingTaskTag = null;
13
+ _title = null;
14
+ _errLogAppend = false;
15
+ _text = null;
16
+ _display = '\0';
17
+ _mode = '\0';
18
+ constructor() {
19
+ super();
20
+ }
21
+ async Execute(res) {
22
+ let errForConsole = StrUtil.getConsoleErorString(this._text);
23
+ let task = (AccessHelper.mgDataTable.GetTaskByID(this.TaskTag) || AccessHelper.mgDataTable.GetTaskByID(this._callingTaskTag));
24
+ if (task === null)
25
+ task = LastFocusedManager.Instance.getLastFocusedTask();
26
+ let errLogAppend = this._errLogAppend;
27
+ if (errLogAppend)
28
+ Logger.Instance.WriteExceptionToLogWithMsg(errForConsole);
29
+ if (!NString.IsNullOrEmpty(this._text)) {
30
+ if (this._display === ConstInterface.DISPLAY_BOX) {
31
+ let style = new RefParam(0);
32
+ let errForMsgBox = StrUtil.getMsgBoxErorString(this._text);
33
+ let mlsTransText = LanguageData.Instance.translate(errForMsgBox);
34
+ let mlsTransTitle = new RefParam(NString.Empty);
35
+ this.PrepareMessageBoxForDisplay(task, mlsTransTitle, style);
36
+ let returnValue = await GUIManager.Instance.MessageBox(mlsTransTitle.value, mlsTransText, style.value);
37
+ await this.ProcessMessageBoxResponse(task, returnValue);
38
+ }
39
+ else if (this._display === ConstInterface.DISPLAY_STATUS && task != null) {
40
+ task.DisplayMessageToStatusBar(errForConsole);
41
+ }
42
+ }
43
+ }
44
+ PrepareMessageBoxForDisplay(task, mlsTransTitle, style) {
45
+ let options = LanguageData.Instance.getConstMessage(MsgInterface.BRKTAB_STOP_MODE_TITLE);
46
+ this._title = ConstUtils.getStringOfOption(options, "EW", this._mode);
47
+ mlsTransTitle.value = LanguageData.Instance.translate(this._title);
48
+ style.value = Styles.MSGBOX_BUTTON_OK |
49
+ ((this._mode === 'E')
50
+ ? Styles.MSGBOX_ICON_ERROR
51
+ : Styles.MSGBOX_ICON_WARNING);
52
+ }
53
+ ProcessMessageBoxResponse(task, returnValue) {
54
+ }
55
+ HandleAttribute(attribute, value) {
56
+ switch (attribute) {
57
+ case ConstInterface.MG_ATTR_TITLE:
58
+ this._title = value;
59
+ break;
60
+ case ConstInterface.MG_ATTR_CALLINGTASK:
61
+ this._callingTaskTag = value;
62
+ break;
63
+ case ConstInterface.MG_ATTR_ERR_LOG_APPEND:
64
+ this._errLogAppend = XmlParser.getBoolean(value);
65
+ break;
66
+ case ConstInterface.MG_ATTR_TEXT:
67
+ this._text = XmlParser.unescape(value);
68
+ break;
69
+ case ConstInterface.MG_ATTR_DISPLAY:
70
+ this._display = value[0];
71
+ break;
72
+ case ConstInterface.MG_ATTR_MODE:
73
+ this._mode = value[0];
74
+ break;
75
+ case ConstInterface.MG_ATTR_ACK:
76
+ break;
77
+ default:
78
+ super.HandleAttribute(attribute, value);
79
+ break;
80
+ }
81
+ }
82
+ }
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVmVyaWZ5Q29tbWFuZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VuZ2luZS9zcmMvY29tbWFuZHMvU2VydmVyVG9DbGllbnQvVmVyaWZ5Q29tbWFuZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUV4RSxPQUFPLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRXpELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QyxPQUFPLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDNUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ25ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDakUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2xELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUU1QyxNQUFNLE9BQU8sYUFBYyxTQUFRLHlCQUF5QjtJQUNsRCxlQUFlLEdBQVcsSUFBSSxDQUFDO0lBQ3ZDLE1BQU0sR0FBVyxJQUFJLENBQUM7SUFDZCxhQUFhLEdBQVksS0FBSyxDQUFDO0lBQy9CLEtBQUssR0FBVyxJQUFJLENBQUM7SUFDckIsUUFBUSxHQUFXLElBQUksQ0FBQztJQUN4QixLQUFLLEdBQVcsSUFBSSxDQUFDO0lBRzdCO1FBQ0UsS0FBSyxFQUFFLENBQUM7SUFDVixDQUFDO0lBTUQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFp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QUFLLENBQUM7Z0JBQ3BCLE1BQU07WUFFUixLQUFLLGNBQWMsQ0FBQyxtQkFBbUI7Z0JBQ3JDLElBQUksQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDO2dCQUM3QixNQUFNO1lBRVIsS0FBSyxjQUFjLENBQUMsc0JBQXNCO2dCQUN4QyxJQUFJLENBQUMsYUFBYSxHQUFHLFNBQVMsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ2pELE1BQU07WUFFUixLQUFLLGNBQWMsQ0FBQyxZQUFZO2dCQUM5QixJQUFJLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ3ZDLE1BQU07WUFFUixLQUFLLGNBQWMsQ0FBQyxlQUFlO2dCQUNqQyxJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDekIsTUFBTTtZQUVSLEtBQUssY0FBYyxDQUFDLFlBQVk7Z0JBQzlCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUN0QixNQUFNO1lBRVIsS0FBSyxjQUFjLENBQUMsV0FBVztnQkFDN0IsTUFBTTtZQUVSO2dCQUNFLEtBQUssQ0FBQyxlQUFlLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO2dCQUN4QyxNQUFNO1FBQ1YsQ0FBQztJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENsaWVudFRhcmdldGVkQ29tbWFuZEJhc2UgfSBmcm9tICcuL0NsaWVudFRhcmdldGVkQ29tbWFuZEJhc2UnO1xyXG5pbXBvcnQgeyBJUmVzdWx0VmFsdWUgfSBmcm9tICcuLi8uLi9ydC9JUmVzdWx0VmFsdWUnO1xyXG5pbXBvcnQgeyBOU3RyaW5nLCBSZWZQYXJhbSB9IGZyb20gJ0BtYWdpYy14cGEvbXNjb3JlbGliJztcclxuaW1wb3J0IHsgVGFzayB9IGZyb20gJy4uLy4uL3Rhc2tzL1Rhc2snO1xyXG5pbXBvcnQgeyBTdHlsZXMgfSBmcm9tICdAbWFnaWMteHBhL2d1aSc7XHJcbmltcG9ydCB7IExvZ2dlciwgTXNnSW50ZXJmYWNlLCBTdHJVdGlsLCBYbWxQYXJzZXIgfSBmcm9tICdAbWFnaWMteHBhL3V0aWxzJztcclxuaW1wb3J0IHsgQ29uc3RVdGlscyB9IGZyb20gJy4uLy4uL3V0aWwvQ29uc3RVdGlscyc7XHJcbmltcG9ydCB7IENvbnN0SW50ZXJmYWNlIH0gZnJvbSAnLi4vLi4vQ29uc3RJbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBMYW5ndWFnZURhdGEgfSBmcm9tICcuLi8uLi9lbnYvTGFuZ3VhZ2VEYXRhJztcclxuaW1wb3J0IHsgTGFzdEZvY3VzZWRNYW5hZ2VyIH0gZnJvbSAnLi4vLi4vcnQvTGFzdEZvY3VzZWRNYW5hZ2VyJztcclxuaW1wb3J0IHsgQWNjZXNzSGVscGVyIH0gZnJvbSAnLi4vLi4vQWNjZXNzSGVscGVyJztcclxuaW1wb3J0IHtHVUlNYW5hZ2VyfSBmcm9tIFwiLi4vLi4vR1VJTWFuYWdlclwiO1xyXG5cclxuZXhwb3J0IGNsYXNzIFZlcmlmeUNvbW1hbmQgZXh0ZW5kcyBDbGllbnRUYXJnZXRlZENvbW1hbmRCYXNlIHtcclxuICBwcml2YXRlIF9jYWxsaW5nVGFza1RhZzogc3RyaW5nID0gbnVsbDsgLy8gaXMgdGhlIGlkIG9mIHRoZSB0YXNrIHRoYXQgY2FsbGVkIHRoZSBuZXcgd2luZG93XHJcbiAgX3RpdGxlOiBzdHJpbmcgPSBudWxsOyAvLyB0aXRsZSBvZiB2ZXJpZnkgb3ByXHJcbiAgcHJpdmF0ZSBfZXJyTG9nQXBwZW5kOiBib29sZWFuID0gZmFsc2U7IC8vIGFwcGVuZCB0byBlcnJvciBsb2cgZm9yIHZlcmlmeSBvcHJcclxuICBwcml2YXRlIF90ZXh0OiBzdHJpbmcgPSBudWxsOyAvLyB0aGUgdmVyaWZ5IG1lc3NhZ2VcclxuICBwcml2YXRlIF9kaXNwbGF5OiBzdHJpbmcgPSAnXFwwJztcclxuICBwcml2YXRlIF9tb2RlOiBzdHJpbmcgPSAnXFwwJztcclxuXHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy9cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImV4cFwiPjwvcGFyYW0+XHJcbiAgYXN5bmMgRXhlY3V0ZShyZXM6IElSZXN1bHRWYWx1ZSk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgbGV0IGVyckZvckNvbnNvbGUgPSBTdHJVdGlsLmdldENvbnNvbGVFcm9yU3RyaW5nKHRoaXMuX3RleHQpO1xyXG4gICAgbGV0IHRhc2s6IFRhc2sgPSA8VGFzaz4oQWNjZXNzSGVscGVyLm1nRGF0YVRhYmxlLkdldFRhc2tCeUlEKHRoaXMuVGFza1RhZykgfHwgQWNjZXNzSGVscGVyLm1nRGF0YVRhYmxlLkdldFRhc2tCeUlEKHRoaXMuX2NhbGxpbmdUYXNrVGFnKSk7XHJcbiAgICBpZiAodGFzayA9PT0gbnVsbClcclxuICAgICAgdGFzayA9IExhc3RGb2N1c2VkTWFuYWdlci5JbnN0YW5jZS5nZXRMYXN0Rm9jdXNlZFRhc2soKTtcclxuXHJcbiAgICAvLyBJbiBvcmRlciB0byBrZWVwIHRoZSBiZWhhdmlvciBzYW1lIGFzIGluIE9ubGluZSwgdmVyaWZ5IG9wZXJhdGlvbiB3YXJuaW5nIG1lc3NhZ2VzXHJcbiAgICAvLyB3aWxsIGJlIHdyaXR0ZW4gYXMgZXJyb3IgbWVzc2FnZXMgaW4gQ2xpZW50IGxvZyAoUUNSICM5MTUxMjIpXHJcbiAgICBsZXQgZXJyTG9nQXBwZW5kOiBib29sZWFuID0gdGhpcy5fZXJyTG9nQXBwZW5kO1xyXG4gICAgaWYgKGVyckxvZ0FwcGVuZClcclxuICAgICAgTG9nZ2VyLkluc3RhbmNlLldyaXRlRXhjZXB0aW9uVG9Mb2dXaXRoTXNnKGVyckZvckNvbnNvbGUpO1xyXG5cclxuICAgIC8vIEJsYW5rIE1lc3NhZ2Ugd2lsbCBub3QgYmUgc2hvd24sIHNhbWUgYXMgaW4gT25saW5lXHJcbiAgICBpZiAoIU5TdHJpbmcuSXNOdWxsT3JFbXB0eSh0aGlzLl90ZXh0KSkge1xyXG4gICAgICBpZiAodGhpcy5fZGlzcGxheSA9PT0gQ29uc3RJbnRlcmZhY2UuRElTUExBWV9CT1gpIHtcclxuICAgICAgICBsZXQgc3R5bGU6IFJlZlBhcmFtPG51bWJlcj4gPSBuZXcgUmVmUGFyYW0oMCk7XHJcblxyXG4gICAgICAgIC8vIG9uIHZlcmlmeSBib3gsIHNob3cgdHJhbnNsYXRlZCB2YWx1ZS4gKHN0YXR1cyBpcyBoYW5kbGVkIGluIHByb3BlcnR5KS5cclxuICAgICAgICBsZXQgZXJyRm9yTXNnQm94OiBzdHJpbmcgPSBTdHJVdGlsLmdldE1zZ0JveEVyb3JTdHJpbmcodGhpcy5fdGV4dCk7XHJcbiAgICAgICAgbGV0IG1sc1RyYW5zVGV4dDogc3RyaW5nID0gTGFuZ3VhZ2VEYXRhLkluc3RhbmNlLnRyYW5zbGF0ZShlcnJGb3JNc2dCb3gpO1xyXG4gICAgICAgIGxldCBtbHNUcmFuc1RpdGxlOiBSZWZQYXJhbTxzdHJpbmc+ID0gbmV3IFJlZlBhcmFtKE5TdHJpbmcuRW1wdHkpO1xyXG5cclxuICAgICAgICB0aGlzLlByZXBhcmVNZXNzYWdlQm94Rm9yRGlzcGxheSh0YXNrLCBtbHNUcmFuc1RpdGxlLCBzdHlsZSk7XHJcbiAgICAgICAgbGV0IHJldHVyblZhbHVlOiBudW1iZXIgPSBhd2FpdCBHVUlNYW5hZ2VyLkluc3RhbmNlLk1lc3NhZ2VCb3gobWxzVHJhbnNUaXRsZS52YWx1ZSwgbWxzVHJhbnNUZXh0LCBzdHlsZS52YWx1ZSk7XHJcbiAgICAgICAgYXdhaXQgdGhpcy5Qcm9jZXNzTWVzc2FnZUJveFJlc3BvbnNlKHRhc2ssIHJldHVyblZhbHVlKTtcclxuICAgICAgfVxyXG4gICAgICAvLyBkaXNwbGF5IG1lc3NhZ2Ugb24gc3RhdHVzIG9ubHkgaWYgd2UgaGF2ZSBhIHRhc2tcclxuICAgICAgLy8gQmxhbmsgTWVzc2FnZSB3aWxsIG5vdCBiZSBzaG93biwgc2FtZSBhcyBpbiBPbmxpbmVcclxuICAgICAgZWxzZSBpZiAodGhpcy5fZGlzcGxheSA9PT0gQ29uc3RJbnRlcmZhY2UuRElTUExBWV9TVEFUVVMgJiYgdGFzayAhPSBudWxsKSB7XHJcbiAgICAgICAgdGFzay5EaXNwbGF5TWVzc2FnZVRvU3RhdHVzQmFyKGVyckZvckNvbnNvbGUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIFByZXBhcmVzIHRoZSBtZXNzYWdlIGJveCdzIHN0eWxlIGFuZCB0aXRsZSBmb3IgZGlzcGxheS5cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cInRhc2tcIj48L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cIm1sc1RyYW5zVGl0bGVcIj48L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cInN0eWxlXCI+PC9wYXJhbT5cclxuICBQcmVwYXJlTWVzc2FnZUJveEZvckRpc3BsYXkodGFzazogVGFzaywgbWxzVHJhbnNUaXRsZTogUmVmUGFyYW08c3RyaW5nPiwgc3R5bGU6IFJlZlBhcmFtPG51bWJlcj4pOiB2b2lkIHtcclxuICAgIGxldCBvcHRpb25zOiBzdHJpbmcgPSBMYW5ndWFnZURhdGEuSW5zdGFuY2UuZ2V0Q29uc3RNZXNzYWdlKE1zZ0ludGVyZmFjZS5CUktUQUJfU1RPUF9NT0RFX1RJVExFKTtcclxuICAgIHRoaXMuX3RpdGxlID0gQ29uc3RVdGlscy5nZXRTdHJpbmdPZk9wdGlvbihvcHRpb25zLCBcIkVXXCIsIHRoaXMuX21vZGUpO1xyXG4gICAgbWxzVHJhbnNUaXRsZS52YWx1ZSA9IExhbmd1YWdlRGF0YS5JbnN0YW5jZS50cmFuc2xhdGUodGhpcy5fdGl0bGUpO1xyXG5cclxuICAgIC8vIGFkZCB0aGUgaWNvbiBhY2NvcmRpbmcgdG8gdGhlIG1vZGUgOmlzIEVycm9yIFxcIFdhcm5pbmdcclxuICAgIHN0eWxlLnZhbHVlID0gU3R5bGVzLk1TR0JPWF9CVVRUT05fT0sgfFxyXG4gICAgICAoKHRoaXMuX21vZGUgPT09ICdFJylcclxuICAgICAgICA/IFN0eWxlcy5NU0dCT1hfSUNPTl9FUlJPUlxyXG4gICAgICAgIDogU3R5bGVzLk1TR0JPWF9JQ09OX1dBUk5JTkcpO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyBIYW5kbGVzIHRoZSByZXNwb25zZSByZWNlaXZlZCBmcm9tIHRoZSBtZXNzYWdlIGJveC5cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cInRhc2tcIj48L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cInJldHVyblZhbHVlXCI+PC9wYXJhbT5cclxuICBQcm9jZXNzTWVzc2FnZUJveFJlc3BvbnNlKHRhc2s6IFRhc2ssIHJldHVyblZhbHVlOiBudW1iZXIpOiB2b2lkIHtcclxuICAgIC8vIGludGVudGlvbmFsbHkgbGVmdCBlbXB0eS5cclxuICB9XHJcblxyXG4gIHB1YmxpYyBIYW5kbGVBdHRyaWJ1dGUoYXR0cmlidXRlOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHN3aXRjaCAoYXR0cmlidXRlKSB7XHJcbiAgICAgIGNhc2UgQ29uc3RJbnRlcmZhY2UuTUdfQVRUUl9USVRMRTpcclxuICAgICAgICB0aGlzLl90aXRsZSA9IHZhbHVlO1xyXG4gICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgY2FzZSBDb25zdEludGVyZmFjZS5NR19BVFRSX0NBTExJTkdUQVNLOlxyXG4gICAgICAgIHRoaXMuX2NhbGxpbmdUYXNrVGFnID0gdmFsdWU7XHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICBjYXNlIENvbnN0SW50ZXJmYWNlLk1HX0FUVFJfRVJSX0xPR19BUFBFTkQ6XHJcbiAgICAgICAgdGhpcy5fZXJyTG9nQXBwZW5kID0gWG1sUGFyc2VyLmdldEJvb2xlYW4odmFsdWUpO1xyXG4gICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgY2FzZSBDb25zdEludGVyZmFjZS5NR19BVFRSX1RFWFQ6XHJcbiAgICAgICAgdGhpcy5fdGV4dCA9IFhtbFBhcnNlci51bmVzY2FwZSh2YWx1ZSk7XHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICBjYXNlIENvbnN0SW50ZXJmYWNlLk1HX0FUVFJfRElTUExBWTpcclxuICAgICAgICB0aGlzLl9kaXNwbGF5ID0gdmFsdWVbMF07XHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICBjYXNlIENvbnN0SW50ZXJmYWNlLk1HX0FUVFJfTU9ERTpcclxuICAgICAgICB0aGlzLl9tb2RlID0gdmFsdWVbMF07XHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICBjYXNlIENvbnN0SW50ZXJmYWNlLk1HX0FUVFJfQUNLOlxyXG4gICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICBzdXBlci5IYW5kbGVBdHRyaWJ1dGUoYXR0cmlidXRlLCB2YWx1ZSk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==