@magic-xpa/engine 4.1100.0-dev4110.23 → 4.1100.0-dev4110.236
Sign up to get free protection for your applications and to get access to all the features.
- package/{esm2020 → esm2022}/index.mjs +188 -188
- package/{esm2020 → esm2022}/magic-xpa-engine.mjs +1 -1
- package/esm2022/src/AccessHelper.mjs +15 -0
- package/esm2022/src/ClientManager.mjs +416 -0
- package/esm2022/src/CommandsProcessorBase.mjs +56 -0
- package/esm2022/src/CommandsProcessorManager.mjs +26 -0
- package/esm2022/src/CommandsTable.mjs +162 -0
- package/esm2022/src/ConstInterface.mjs +517 -0
- package/{esm2020 → esm2022}/src/CurrentClientVersion.mjs +2 -2
- package/esm2022/src/FlowMonitorInterface.mjs +16 -0
- package/esm2022/src/GUIManager.mjs +62 -0
- package/esm2022/src/GlobalCommandsManager.mjs +34 -0
- package/esm2022/src/GuiEventsProcessor.mjs +156 -0
- package/{esm2020 → esm2022}/src/ICommandsTable.mjs +1 -1
- package/esm2022/src/ServerConfig.mjs +122 -0
- package/{esm2020 → esm2022}/src/bridge/IGuiEvent.mjs +19 -19
- package/esm2022/src/bridge/MagicBridge.mjs +41 -0
- package/esm2022/src/commands/ClientOriginatedCommandTaskTag.mjs +12 -0
- package/{esm2020 → esm2022}/src/commands/ClientToServer/AddUserLocateDataViewCommand.mjs +8 -8
- package/{esm2020 → esm2022}/src/commands/ClientToServer/AddUserRangeDataviewCommand.mjs +9 -9
- package/{esm2020 → esm2022}/src/commands/ClientToServer/AddUserSortDataViewCommand.mjs +9 -9
- package/{esm2020 → esm2022}/src/commands/ClientToServer/BrowserEscEventCommand.mjs +23 -23
- package/{esm2020 → esm2022}/src/commands/ClientToServer/ClientOriginatedCommand.mjs +14 -14
- package/esm2022/src/commands/ClientToServer/ClientOriginatedCommandSerializer.mjs +60 -0
- package/{esm2020 → esm2022}/src/commands/ClientToServer/ColumnSortEventCommand.mjs +26 -26
- package/esm2022/src/commands/ClientToServer/CommandFactory.mjs +260 -0
- package/esm2022/src/commands/ClientToServer/CommandSerializationHelper.mjs +67 -0
- package/{esm2020 → esm2022}/src/commands/ClientToServer/ComputeEventCommand.mjs +23 -23
- package/{esm2020 → esm2022}/src/commands/ClientToServer/ContextTerminationEventCommand.mjs +20 -20
- package/{esm2020 → esm2022}/src/commands/ClientToServer/ContextTimeoutResetCommand.mjs +19 -19
- package/{esm2020 → esm2022}/src/commands/ClientToServer/ControlItemsRefreshCommand.mjs +8 -8
- package/esm2022/src/commands/ClientToServer/DataViewOutputCommand.mjs +13 -0
- package/{esm2020 → esm2022}/src/commands/ClientToServer/DataviewCommand.mjs +44 -44
- package/esm2022/src/commands/ClientToServer/EvaluateCommand.mjs +37 -0
- package/esm2022/src/commands/ClientToServer/EventCommand.mjs +40 -0
- package/esm2022/src/commands/ClientToServer/ExecOperCommand.mjs +67 -0
- package/esm2022/src/commands/ClientToServer/FetchDataControlValuesEventCommand.mjs +22 -0
- package/{esm2020 → esm2022}/src/commands/ClientToServer/GlobalParamsQueryCommand.mjs +10 -10
- package/{esm2020 → esm2022}/src/commands/ClientToServer/ICommandTaskTag.mjs +1 -1
- package/{esm2020 → esm2022}/src/commands/ClientToServer/IndexChangeEventCommand.mjs +21 -21
- package/esm2022/src/commands/ClientToServer/IniputForceWriteCommand.mjs +23 -0
- package/{esm2020 → esm2022}/src/commands/ClientToServer/NonReversibleExitEventCommand.mjs +23 -23
- package/{esm2020 → esm2022}/src/commands/ClientToServer/QueryCommand.mjs +20 -20
- package/esm2022/src/commands/ClientToServer/RecomputeCommand.mjs +27 -0
- package/esm2022/src/commands/ClientToServer/RefreshEventCommand.mjs +27 -0
- package/esm2022/src/commands/ClientToServer/RefreshScreenEventCommand.mjs +24 -0
- package/esm2022/src/commands/ClientToServer/RollbackEventCommand.mjs +40 -0
- package/{esm2020 → esm2022}/src/commands/ClientToServer/SelectProgramCommand.mjs +14 -14
- package/{esm2020 → esm2022}/src/commands/ClientToServer/SetTransactionStateDataviewCommand.mjs +9 -9
- package/{esm2020 → esm2022}/src/commands/ClientToServer/SubformOpenEventCommand.mjs +21 -21
- package/esm2022/src/commands/ClientToServer/SubformRefreshEventCommand.mjs +24 -0
- package/esm2022/src/commands/ClientToServer/TransactionCommand.mjs +30 -0
- package/{esm2020 → esm2022}/src/commands/ClientToServer/UnloadCommand.mjs +14 -14
- package/esm2022/src/commands/ClientToServer/WriteMessageToServerLogCommand.mjs +18 -0
- package/esm2022/src/commands/DataViewCommandBase.mjs +8 -0
- package/{esm2020 → esm2022}/src/commands/IClientCommand.mjs +1 -1
- package/esm2022/src/commands/IClientTargetedCommand.mjs +13 -0
- package/{esm2020 → esm2022}/src/commands/IClientToServerCommandInfo.mjs +1 -1
- package/esm2022/src/commands/ServerToClient/AbortCommand.mjs +65 -0
- package/{esm2020 → esm2022}/src/commands/ServerToClient/AddLocateCommand.mjs +21 -21
- package/esm2022/src/commands/ServerToClient/AddRangeCommand.mjs +62 -0
- package/esm2022/src/commands/ServerToClient/AddSortCommand.mjs +33 -0
- package/esm2022/src/commands/ServerToClient/ClientRefreshCommand.mjs +25 -0
- package/esm2022/src/commands/ServerToClient/ClientTargetedCommandBase.mjs +24 -0
- package/esm2022/src/commands/ServerToClient/EnhancedVerifyCommand.mjs +45 -0
- package/esm2022/src/commands/ServerToClient/OpenURLCommand.mjs +221 -0
- package/{esm2020 → esm2022}/src/commands/ServerToClient/ResetLocateCommand.mjs +14 -14
- package/{esm2020 → esm2022}/src/commands/ServerToClient/ResetRangeCommand.mjs +14 -14
- package/{esm2020 → esm2022}/src/commands/ServerToClient/ResetSortCommand.mjs +14 -14
- package/esm2022/src/commands/ServerToClient/ResultCommand.mjs +37 -0
- package/esm2022/src/commands/ServerToClient/VerifyCommand.mjs +83 -0
- package/esm2022/src/commands/ServerToClient/XMLBasedCommandBuilder.mjs +132 -0
- package/{esm2020 → esm2022}/src/communications/IConnectionStateManager.mjs +1 -1
- package/esm2022/src/communications/InteractiveCommunicationsFailureHandler.mjs +15 -0
- package/{esm2020 → esm2022}/src/data/DataSourceIdKey.mjs +2 -2
- package/esm2022/src/data/DataView.mjs +1613 -0
- package/{esm2020 → esm2022}/src/data/DataViewBase.mjs +3 -3
- package/esm2022/src/data/DataviewManager.mjs +28 -0
- package/esm2022/src/data/DataviewManagerBase.mjs +15 -0
- package/esm2022/src/data/DvCache.mjs +67 -0
- package/esm2022/src/data/Field.mjs +646 -0
- package/esm2022/src/data/FieldBase.mjs +15 -0
- package/esm2022/src/data/FieldsTable.mjs +103 -0
- package/{esm2020 → esm2022}/src/data/IRecordsTable.mjs +1 -1
- package/esm2022/src/data/Key.mjs +88 -0
- package/esm2022/src/data/Record.mjs +866 -0
- package/{esm2020 → esm2022}/src/data/RecordOutOfDataViewException.mjs +15 -15
- package/esm2022/src/data/RecordsTable.mjs +267 -0
- package/esm2022/src/data/TaskTransactionManager.mjs +103 -0
- package/esm2022/src/data/XMLBasedDcValuesBuilder.mjs +74 -0
- package/{esm2020 → esm2022}/src/enums.mjs +23 -23
- package/esm2022/src/env/EnvVariablesTable.mjs +340 -0
- package/esm2022/src/env/Environment.mjs +487 -0
- package/{esm2020 → esm2022}/src/env/ILanguageData.mjs +1 -1
- package/esm2022/src/env/LanguageData.mjs +227 -0
- package/esm2022/src/env/MirrorString.mjs +65 -0
- package/esm2022/src/event/ActionManager.mjs +91 -0
- package/esm2022/src/event/Event.mjs +1333 -0
- package/esm2022/src/event/EventHandler.mjs +766 -0
- package/esm2022/src/event/EventHandlerPosition.mjs +204 -0
- package/esm2022/src/event/EventsManager.mjs +2988 -0
- package/{esm2020 → esm2022}/src/event/IEventsManager.mjs +6 -6
- package/esm2022/src/event/RunTimeEvent.mjs +399 -0
- package/{esm2020 → esm2022}/src/event/RunTimeEventBase.mjs +3 -3
- package/esm2022/src/event/UserEventsTable.mjs +47 -0
- package/esm2022/src/exp/ExpTable.mjs +57 -0
- package/esm2022/src/exp/Expression.mjs +200 -0
- package/esm2022/src/exp/ExpressionDict.mjs +727 -0
- package/esm2022/src/exp/ExpressionEvaluator.mjs +4206 -0
- package/esm2022/src/exp/ExpressionLocalJpn.mjs +314 -0
- package/esm2022/src/exp/GlobalParamsTable.mjs +85 -0
- package/esm2022/src/exp/YesNoExp.mjs +36 -0
- package/esm2022/src/gui/CreatedFormVector.mjs +23 -0
- package/esm2022/src/gui/FormsTable.mjs +66 -0
- package/esm2022/src/gui/MgControl.mjs +363 -0
- package/esm2022/src/gui/MgForm.mjs +1224 -0
- package/esm2022/src/http/HttpManager.mjs +97 -0
- package/esm2022/src/http/client/HttpClientAsync.mjs +68 -0
- package/esm2022/src/http/client/HttpClientBase.mjs +132 -0
- package/esm2022/src/http/client/HttpClientEvents.mjs +39 -0
- package/esm2022/src/http/client/HttpClientSync.mjs +42 -0
- package/esm2022/src/http/client/HttpUtility.mjs +84 -0
- package/{esm2020 → esm2022}/src/http/client/ICommunicationsFailureHandler.mjs +1 -1
- package/esm2022/src/remote/AddUserLocateRemoteDataViewCommand.mjs +18 -0
- package/esm2022/src/remote/AddUserRangeRemoteDataViewCommand.mjs +18 -0
- package/esm2022/src/remote/AddUserSortRemoteDataViewCommand.mjs +18 -0
- package/esm2022/src/remote/RemoteCommandsProcessor.mjs +880 -0
- package/esm2022/src/remote/RemoteControlItemsRefreshCommand.mjs +25 -0
- package/esm2022/src/remote/RemoteDataViewCommandBase.mjs +24 -0
- package/esm2022/src/remote/RemoteDataViewCommandFactory.mjs +61 -0
- package/{esm2020 → esm2022}/src/remote/RemoteDataViewCommandUpdateNonModifiable.mjs +15 -15
- package/{esm2020 → esm2022}/src/remote/RemoteDataviewManager.mjs +17 -17
- package/{esm2020 → esm2022}/src/remote/RemoteInitDataViewCommand.mjs +10 -10
- package/esm2022/src/remote/ResetUserLocateRemoteDataviewCommand.mjs +17 -0
- package/{esm2020 → esm2022}/src/remote/ResetUserRangeRemoteDataviewCommand.mjs +12 -12
- package/esm2022/src/remote/ResetUserSortRemoteDataviewCommand.mjs +16 -0
- package/esm2022/src/remote/ServerError.mjs +40 -0
- package/esm2022/src/remote/SetTransactionStateRemoteDataViewCommand.mjs +20 -0
- package/esm2022/src/rt/Argument.mjs +265 -0
- package/esm2022/src/rt/ArgumentsList.mjs +103 -0
- package/esm2022/src/rt/Boundary.mjs +152 -0
- package/esm2022/src/rt/CompMainPrgTable.mjs +63 -0
- package/{esm2020 → esm2022}/src/rt/DataviewHeaderBase.mjs +98 -96
- package/{esm2020 → esm2022}/src/rt/DataviewHeaderFactory.mjs +6 -6
- package/esm2022/src/rt/DataviewHeaders.mjs +53 -0
- package/esm2022/src/rt/DataviewHeadersSaxHandler.mjs +38 -0
- package/esm2022/src/rt/ExecutionStack.mjs +94 -0
- package/{esm2020 → esm2022}/src/rt/ExecutionStackEntry.mjs +17 -17
- package/esm2022/src/rt/HandlersTable.mjs +96 -0
- package/{esm2020 → esm2022}/src/rt/IDataSourceViewDefinition.mjs +1 -1
- package/{esm2020 → esm2022}/src/rt/IDataviewHeader.mjs +1 -1
- package/{esm2020 → esm2022}/src/rt/IResultValue.mjs +1 -1
- package/esm2022/src/rt/LastFocusedManager.mjs +65 -0
- package/esm2022/src/rt/Operation.mjs +735 -0
- package/esm2022/src/rt/OperationTable.mjs +67 -0
- package/esm2022/src/rt/Recompute.mjs +355 -0
- package/esm2022/src/rt/RecomputeTable.mjs +63 -0
- package/esm2022/src/rt/RemoteDataviewHeader.mjs +108 -0
- package/esm2022/src/rt/ResultValue.mjs +10 -0
- package/esm2022/src/rt/TableCache.mjs +177 -0
- package/esm2022/src/rt/TableCacheManager.mjs +67 -0
- package/esm2022/src/rt/Transaction.mjs +53 -0
- package/esm2022/src/security/UserDetails.mjs +71 -0
- package/{esm2020 → esm2022}/src/tasks/IMGDataCollection.mjs +1 -1
- package/esm2022/src/tasks/MGData.mjs +552 -0
- package/esm2022/src/tasks/MGDataCollection.mjs +252 -0
- package/esm2022/src/tasks/RCTimer.mjs +63 -0
- package/esm2022/src/tasks/RemoteTaskService.mjs +45 -0
- package/esm2022/src/tasks/Task.mjs +2499 -0
- package/esm2022/src/tasks/TaskBase.mjs +83 -0
- package/esm2022/src/tasks/TaskServiceBase.mjs +25 -0
- package/esm2022/src/tasks/TasksTable.mjs +80 -0
- package/esm2022/src/tasks/sort/Sort.mjs +5 -0
- package/esm2022/src/tasks/sort/SortCollection.mjs +67 -0
- package/esm2022/src/util/ConstUtils.mjs +14 -0
- package/esm2022/src/util/FlowMonitorQueue.mjs +451 -0
- package/esm2022/src/util/HeapSort.mjs +70 -0
- package/{esm2020 → esm2022}/src/util/IMirrorXML.mjs +1 -1
- package/{esm2020 → esm2022}/src/util/IServerConfig.mjs +1 -1
- package/{esm2020 → esm2022}/src/util/MgBlockingQueue.mjs +1 -1
- package/esm2022/src/util/MgPriorityBlockingQueue.mjs +74 -0
- package/esm2022/src/util/MgPriorityQueue.mjs +66 -0
- package/{esm2020 → esm2022}/src/util/ParamParseResult.mjs +7 -7
- package/esm2022/src/util/PrmMap.mjs +152 -0
- package/esm2022/src/util/ReturnResult.mjs +46 -0
- package/esm2022/src/util/ReturnResultBase.mjs +18 -0
- package/esm2022/src/util/Scrambler.mjs +89 -0
- package/esm2022/src/util/UniqueIDUtils.mjs +13 -0
- package/esm2022/src/util/cookie.service.mjs +92 -0
- package/{fesm2020 → fesm2022}/magic-xpa-engine.mjs +29797 -29693
- package/fesm2022/magic-xpa-engine.mjs.map +1 -0
- package/index.d.ts +187 -187
- package/package.json +8 -14
- package/src/AccessHelper.d.ts +20 -20
- package/src/ClientManager.d.ts +35 -32
- package/src/CommandsProcessorBase.d.ts +23 -23
- package/src/CommandsProcessorManager.d.ts +6 -6
- package/src/CommandsTable.d.ts +22 -22
- package/src/ConstInterface.d.ts +516 -515
- package/src/CurrentClientVersion.d.ts +1 -1
- package/src/FlowMonitorInterface.d.ts +15 -15
- package/src/GUIManager.d.ts +17 -17
- package/src/GlobalCommandsManager.d.ts +17 -17
- package/src/GuiEventsProcessor.d.ts +24 -24
- package/src/ICommandsTable.d.ts +9 -9
- package/src/ServerConfig.d.ts +35 -34
- package/src/bridge/IGuiEvent.d.ts +19 -19
- package/src/bridge/MagicBridge.d.ts +16 -16
- package/src/commands/ClientOriginatedCommandTaskTag.d.ts +8 -8
- package/src/commands/ClientToServer/AddUserLocateDataViewCommand.d.ts +4 -4
- package/src/commands/ClientToServer/AddUserRangeDataviewCommand.d.ts +6 -6
- package/src/commands/ClientToServer/AddUserSortDataViewCommand.d.ts +6 -6
- package/src/commands/ClientToServer/BrowserEscEventCommand.d.ts +8 -8
- package/src/commands/ClientToServer/ClientOriginatedCommand.d.ts +8 -8
- package/src/commands/ClientToServer/ClientOriginatedCommandSerializer.d.ts +6 -6
- package/src/commands/ClientToServer/ColumnSortEventCommand.d.ts +10 -10
- package/src/commands/ClientToServer/CommandFactory.d.ts +64 -64
- package/src/commands/ClientToServer/CommandSerializationHelper.d.ts +20 -20
- package/src/commands/ClientToServer/ComputeEventCommand.d.ts +8 -8
- package/src/commands/ClientToServer/ContextTerminationEventCommand.d.ts +7 -7
- package/src/commands/ClientToServer/ContextTimeoutResetCommand.d.ts +7 -7
- package/src/commands/ClientToServer/ControlItemsRefreshCommand.d.ts +6 -6
- package/src/commands/ClientToServer/DataViewOutputCommand.d.ts +9 -9
- package/src/commands/ClientToServer/DataviewCommand.d.ts +32 -32
- package/src/commands/ClientToServer/EvaluateCommand.d.ts +15 -15
- package/src/commands/ClientToServer/EventCommand.d.ts +15 -15
- package/src/commands/ClientToServer/ExecOperCommand.d.ts +23 -23
- package/src/commands/ClientToServer/FetchDataControlValuesEventCommand.d.ts +8 -8
- package/src/commands/ClientToServer/GlobalParamsQueryCommand.d.ts +5 -5
- package/src/commands/ClientToServer/ICommandTaskTag.d.ts +3 -3
- package/src/commands/ClientToServer/IndexChangeEventCommand.d.ts +8 -8
- package/src/commands/ClientToServer/IniputForceWriteCommand.d.ts +10 -10
- package/src/commands/ClientToServer/NonReversibleExitEventCommand.d.ts +8 -8
- package/src/commands/ClientToServer/QueryCommand.d.ts +8 -8
- package/src/commands/ClientToServer/RecomputeCommand.d.ts +11 -11
- package/src/commands/ClientToServer/RefreshEventCommand.d.ts +12 -12
- package/src/commands/ClientToServer/RefreshScreenEventCommand.d.ts +10 -10
- package/src/commands/ClientToServer/RollbackEventCommand.d.ts +14 -14
- package/src/commands/ClientToServer/SelectProgramCommand.d.ts +6 -6
- package/src/commands/ClientToServer/SetTransactionStateDataviewCommand.d.ts +5 -5
- package/src/commands/ClientToServer/SubformOpenEventCommand.d.ts +8 -8
- package/src/commands/ClientToServer/SubformRefreshEventCommand.d.ts +9 -9
- package/src/commands/ClientToServer/TransactionCommand.d.ts +12 -12
- package/src/commands/ClientToServer/UnloadCommand.d.ts +7 -7
- package/src/commands/ClientToServer/WriteMessageToServerLogCommand.d.ts +6 -6
- package/src/commands/DataViewCommandBase.d.ts +6 -6
- package/src/commands/IClientCommand.d.ts +2 -2
- package/src/commands/IClientTargetedCommand.d.ts +12 -12
- package/src/commands/IClientToServerCommandInfo.d.ts +3 -3
- package/src/commands/ServerToClient/AbortCommand.d.ts +11 -11
- package/src/commands/ServerToClient/AddLocateCommand.d.ts +6 -6
- package/src/commands/ServerToClient/AddRangeCommand.d.ts +10 -10
- package/src/commands/ServerToClient/AddSortCommand.d.ts +9 -9
- package/src/commands/ServerToClient/ClientRefreshCommand.d.ts +7 -7
- package/src/commands/ServerToClient/ClientTargetedCommandBase.d.ts +12 -12
- package/src/commands/ServerToClient/EnhancedVerifyCommand.d.ts +13 -13
- package/src/commands/ServerToClient/OpenURLCommand.d.ts +21 -21
- package/src/commands/ServerToClient/ResetLocateCommand.d.ts +6 -6
- package/src/commands/ServerToClient/ResetRangeCommand.d.ts +6 -6
- package/src/commands/ServerToClient/ResetSortCommand.d.ts +6 -6
- package/src/commands/ServerToClient/ResultCommand.d.ts +10 -10
- package/src/commands/ServerToClient/VerifyCommand.d.ts +17 -17
- package/src/commands/ServerToClient/XMLBasedCommandBuilder.d.ts +11 -11
- package/src/communications/IConnectionStateManager.d.ts +4 -4
- package/src/communications/InteractiveCommunicationsFailureHandler.d.ts +6 -6
- package/src/data/DataSourceIdKey.d.ts +2 -2
- package/src/data/DataView.d.ts +162 -162
- package/src/data/DataViewBase.d.ts +12 -12
- package/src/data/DataviewManager.d.ts +14 -14
- package/src/data/DataviewManagerBase.d.ts +11 -11
- package/src/data/DvCache.d.ts +15 -15
- package/src/data/Field.d.ts +103 -103
- package/src/data/FieldBase.d.ts +23 -23
- package/src/data/FieldsTable.d.ts +27 -27
- package/src/data/IRecordsTable.d.ts +7 -7
- package/src/data/Key.d.ts +15 -15
- package/src/data/Record.d.ts +156 -156
- package/src/data/RecordOutOfDataViewException.d.ts +10 -10
- package/src/data/RecordsTable.d.ts +38 -38
- package/src/data/TaskTransactionManager.d.ts +17 -17
- package/src/data/XMLBasedDcValuesBuilder.d.ts +11 -11
- package/src/enums.d.ts +21 -21
- package/src/env/EnvVariablesTable.d.ts +17 -17
- package/src/env/Environment.d.ts +118 -118
- package/src/env/ILanguageData.d.ts +3 -3
- package/src/env/LanguageData.d.ts +20 -20
- package/src/env/MirrorString.d.ts +15 -15
- package/src/event/ActionManager.d.ts +14 -14
- package/src/event/Event.d.ts +79 -79
- package/src/event/EventHandler.d.ts +66 -66
- package/src/event/EventHandlerPosition.d.ts +25 -25
- package/src/event/EventsManager.d.ts +205 -204
- package/src/event/IEventsManager.d.ts +77 -77
- package/src/event/RunTimeEvent.d.ts +126 -123
- package/src/event/RunTimeEventBase.d.ts +5 -5
- package/src/event/UserEventsTable.d.ts +11 -11
- package/src/exp/ExpTable.d.ts +11 -11
- package/src/exp/Expression.d.ts +37 -37
- package/src/exp/ExpressionDict.d.ts +12 -12
- package/src/exp/ExpressionEvaluator.d.ts +198 -198
- package/src/exp/ExpressionLocalJpn.d.ts +18 -18
- package/src/exp/GlobalParamsTable.d.ts +19 -19
- package/src/exp/YesNoExp.d.ts +9 -9
- package/src/gui/CreatedFormVector.d.ts +10 -10
- package/src/gui/FormsTable.d.ts +15 -15
- package/src/gui/MgControl.d.ts +60 -60
- package/src/gui/MgForm.d.ts +96 -93
- package/src/http/HttpManager.d.ts +25 -25
- package/src/http/client/HttpClientAsync.d.ts +16 -16
- package/src/http/client/HttpClientBase.d.ts +30 -30
- package/src/http/client/HttpClientEvents.d.ts +18 -18
- package/src/http/client/HttpClientSync.d.ts +17 -17
- package/src/http/client/HttpUtility.d.ts +10 -10
- package/src/http/client/ICommunicationsFailureHandler.d.ts +5 -5
- package/src/remote/AddUserLocateRemoteDataViewCommand.d.ts +8 -8
- package/src/remote/AddUserRangeRemoteDataViewCommand.d.ts +8 -8
- package/src/remote/AddUserSortRemoteDataViewCommand.d.ts +8 -8
- package/src/remote/RemoteCommandsProcessor.d.ts +51 -51
- package/src/remote/RemoteControlItemsRefreshCommand.d.ts +8 -8
- package/src/remote/RemoteDataViewCommandBase.d.ts +10 -10
- package/src/remote/RemoteDataViewCommandFactory.d.ts +6 -6
- package/src/remote/RemoteDataViewCommandUpdateNonModifiable.d.ts +8 -8
- package/src/remote/RemoteDataviewManager.d.ts +9 -9
- package/src/remote/RemoteInitDataViewCommand.d.ts +7 -7
- package/src/remote/ResetUserLocateRemoteDataviewCommand.d.ts +7 -7
- package/src/remote/ResetUserRangeRemoteDataviewCommand.d.ts +7 -7
- package/src/remote/ResetUserSortRemoteDataviewCommand.d.ts +7 -7
- package/src/remote/ServerError.d.ts +16 -16
- package/src/remote/SetTransactionStateRemoteDataViewCommand.d.ts +8 -8
- package/src/rt/Argument.d.ts +36 -36
- package/src/rt/ArgumentsList.d.ts +24 -24
- package/src/rt/Boundary.d.ts +27 -27
- package/src/rt/CompMainPrgTable.d.ts +10 -10
- package/src/rt/DataviewHeaderBase.d.ts +34 -34
- package/src/rt/DataviewHeaderFactory.d.ts +5 -5
- package/src/rt/DataviewHeaders.d.ts +12 -12
- package/src/rt/DataviewHeadersSaxHandler.d.ts +10 -10
- package/src/rt/ExecutionStack.d.ts +22 -22
- package/src/rt/ExecutionStackEntry.d.ts +7 -7
- package/src/rt/HandlersTable.d.ts +19 -19
- package/src/rt/IDataSourceViewDefinition.d.ts +6 -6
- package/src/rt/IDataviewHeader.d.ts +10 -10
- package/src/rt/IResultValue.d.ts +4 -4
- package/src/rt/LastFocusedManager.d.ts +23 -23
- package/src/rt/Operation.d.ts +97 -97
- package/src/rt/OperationTable.d.ts +15 -15
- package/src/rt/Recompute.d.ts +41 -41
- package/src/rt/RecomputeTable.d.ts +9 -9
- package/src/rt/RemoteDataviewHeader.d.ts +14 -14
- package/src/rt/ResultValue.d.ts +7 -7
- package/src/rt/TableCache.d.ts +29 -29
- package/src/rt/TableCacheManager.d.ts +10 -10
- package/src/rt/Transaction.d.ts +23 -23
- package/src/security/UserDetails.d.ts +16 -16
- package/src/tasks/IMGDataCollection.d.ts +26 -26
- package/src/tasks/MGData.d.ts +63 -63
- package/src/tasks/MGDataCollection.d.ts +42 -42
- package/src/tasks/RCTimer.d.ts +13 -13
- package/src/tasks/RemoteTaskService.d.ts +16 -16
- package/src/tasks/Task.d.ts +312 -312
- package/src/tasks/TaskBase.d.ts +123 -123
- package/src/tasks/TaskServiceBase.d.ts +16 -16
- package/src/tasks/TasksTable.d.ts +21 -21
- package/src/tasks/sort/Sort.d.ts +4 -4
- package/src/tasks/sort/SortCollection.d.ts +11 -11
- package/src/util/ConstUtils.d.ts +3 -3
- package/src/util/FlowMonitorQueue.d.ts +70 -70
- package/src/util/HeapSort.d.ts +6 -6
- package/src/util/IMirrorXML.d.ts +6 -6
- package/src/util/IServerConfig.d.ts +11 -11
- package/src/util/MgBlockingQueue.d.ts +5 -5
- package/src/util/MgPriorityBlockingQueue.d.ts +17 -17
- package/src/util/MgPriorityQueue.d.ts +13 -13
- package/src/util/ParamParseResult.d.ts +6 -6
- package/src/util/PrmMap.d.ts +28 -28
- package/src/util/ReturnResult.d.ts +18 -18
- package/src/util/ReturnResultBase.d.ts +11 -11
- package/src/util/Scrambler.d.ts +10 -10
- package/src/util/UniqueIDUtils.d.ts +4 -4
- package/src/util/cookie.service.d.ts +8 -8
- package/esm2020/src/AccessHelper.mjs +0 -9
- package/esm2020/src/ClientManager.mjs +0 -399
- package/esm2020/src/CommandsProcessorBase.mjs +0 -58
- package/esm2020/src/CommandsProcessorManager.mjs +0 -26
- package/esm2020/src/CommandsTable.mjs +0 -162
- package/esm2020/src/ConstInterface.mjs +0 -516
- package/esm2020/src/FlowMonitorInterface.mjs +0 -16
- package/esm2020/src/GUIManager.mjs +0 -62
- package/esm2020/src/GlobalCommandsManager.mjs +0 -34
- package/esm2020/src/GuiEventsProcessor.mjs +0 -154
- package/esm2020/src/ServerConfig.mjs +0 -117
- package/esm2020/src/bridge/MagicBridge.mjs +0 -41
- package/esm2020/src/commands/ClientOriginatedCommandTaskTag.mjs +0 -11
- package/esm2020/src/commands/ClientToServer/ClientOriginatedCommandSerializer.mjs +0 -60
- package/esm2020/src/commands/ClientToServer/CommandFactory.mjs +0 -260
- package/esm2020/src/commands/ClientToServer/CommandSerializationHelper.mjs +0 -69
- package/esm2020/src/commands/ClientToServer/DataViewOutputCommand.mjs +0 -13
- package/esm2020/src/commands/ClientToServer/EvaluateCommand.mjs +0 -36
- package/esm2020/src/commands/ClientToServer/EventCommand.mjs +0 -40
- package/esm2020/src/commands/ClientToServer/ExecOperCommand.mjs +0 -67
- package/esm2020/src/commands/ClientToServer/FetchDataControlValuesEventCommand.mjs +0 -22
- package/esm2020/src/commands/ClientToServer/IniputForceWriteCommand.mjs +0 -23
- package/esm2020/src/commands/ClientToServer/RecomputeCommand.mjs +0 -27
- package/esm2020/src/commands/ClientToServer/RefreshEventCommand.mjs +0 -27
- package/esm2020/src/commands/ClientToServer/RefreshScreenEventCommand.mjs +0 -24
- package/esm2020/src/commands/ClientToServer/RollbackEventCommand.mjs +0 -39
- package/esm2020/src/commands/ClientToServer/SubformRefreshEventCommand.mjs +0 -24
- package/esm2020/src/commands/ClientToServer/TransactionCommand.mjs +0 -28
- package/esm2020/src/commands/ClientToServer/WriteMessageToServerLogCommand.mjs +0 -18
- package/esm2020/src/commands/DataViewCommandBase.mjs +0 -10
- package/esm2020/src/commands/IClientTargetedCommand.mjs +0 -9
- package/esm2020/src/commands/ServerToClient/AbortCommand.mjs +0 -65
- package/esm2020/src/commands/ServerToClient/AddRangeCommand.mjs +0 -62
- package/esm2020/src/commands/ServerToClient/AddSortCommand.mjs +0 -33
- package/esm2020/src/commands/ServerToClient/ClientRefreshCommand.mjs +0 -25
- package/esm2020/src/commands/ServerToClient/ClientTargetedCommandBase.mjs +0 -27
- package/esm2020/src/commands/ServerToClient/EnhancedVerifyCommand.mjs +0 -45
- package/esm2020/src/commands/ServerToClient/OpenURLCommand.mjs +0 -221
- package/esm2020/src/commands/ServerToClient/ResultCommand.mjs +0 -37
- package/esm2020/src/commands/ServerToClient/VerifyCommand.mjs +0 -83
- package/esm2020/src/commands/ServerToClient/XMLBasedCommandBuilder.mjs +0 -132
- package/esm2020/src/communications/InteractiveCommunicationsFailureHandler.mjs +0 -17
- package/esm2020/src/data/DataView.mjs +0 -1610
- package/esm2020/src/data/DataviewManager.mjs +0 -28
- package/esm2020/src/data/DataviewManagerBase.mjs +0 -15
- package/esm2020/src/data/DvCache.mjs +0 -67
- package/esm2020/src/data/Field.mjs +0 -646
- package/esm2020/src/data/FieldBase.mjs +0 -18
- package/esm2020/src/data/FieldsTable.mjs +0 -103
- package/esm2020/src/data/Key.mjs +0 -88
- package/esm2020/src/data/Record.mjs +0 -846
- package/esm2020/src/data/RecordsTable.mjs +0 -267
- package/esm2020/src/data/TaskTransactionManager.mjs +0 -103
- package/esm2020/src/data/XMLBasedDcValuesBuilder.mjs +0 -74
- package/esm2020/src/env/EnvVariablesTable.mjs +0 -340
- package/esm2020/src/env/Environment.mjs +0 -489
- package/esm2020/src/env/LanguageData.mjs +0 -226
- package/esm2020/src/env/MirrorString.mjs +0 -65
- package/esm2020/src/event/ActionManager.mjs +0 -91
- package/esm2020/src/event/Event.mjs +0 -1333
- package/esm2020/src/event/EventHandler.mjs +0 -766
- package/esm2020/src/event/EventHandlerPosition.mjs +0 -204
- package/esm2020/src/event/EventsManager.mjs +0 -2975
- package/esm2020/src/event/RunTimeEvent.mjs +0 -392
- package/esm2020/src/event/UserEventsTable.mjs +0 -47
- package/esm2020/src/exp/ExpTable.mjs +0 -59
- package/esm2020/src/exp/Expression.mjs +0 -200
- package/esm2020/src/exp/ExpressionDict.mjs +0 -727
- package/esm2020/src/exp/ExpressionEvaluator.mjs +0 -4212
- package/esm2020/src/exp/ExpressionLocalJpn.mjs +0 -314
- package/esm2020/src/exp/GlobalParamsTable.mjs +0 -85
- package/esm2020/src/exp/YesNoExp.mjs +0 -36
- package/esm2020/src/gui/CreatedFormVector.mjs +0 -23
- package/esm2020/src/gui/FormsTable.mjs +0 -66
- package/esm2020/src/gui/MgControl.mjs +0 -353
- package/esm2020/src/gui/MgForm.mjs +0 -1181
- package/esm2020/src/http/HttpManager.mjs +0 -97
- package/esm2020/src/http/client/HttpClientAsync.mjs +0 -67
- package/esm2020/src/http/client/HttpClientBase.mjs +0 -132
- package/esm2020/src/http/client/HttpClientEvents.mjs +0 -39
- package/esm2020/src/http/client/HttpClientSync.mjs +0 -42
- package/esm2020/src/http/client/HttpUtility.mjs +0 -84
- package/esm2020/src/remote/AddUserLocateRemoteDataViewCommand.mjs +0 -18
- package/esm2020/src/remote/AddUserRangeRemoteDataViewCommand.mjs +0 -18
- package/esm2020/src/remote/AddUserSortRemoteDataViewCommand.mjs +0 -18
- package/esm2020/src/remote/RemoteCommandsProcessor.mjs +0 -880
- package/esm2020/src/remote/RemoteControlItemsRefreshCommand.mjs +0 -25
- package/esm2020/src/remote/RemoteDataViewCommandBase.mjs +0 -24
- package/esm2020/src/remote/RemoteDataViewCommandFactory.mjs +0 -61
- package/esm2020/src/remote/ResetUserLocateRemoteDataviewCommand.mjs +0 -17
- package/esm2020/src/remote/ResetUserSortRemoteDataviewCommand.mjs +0 -16
- package/esm2020/src/remote/ServerError.mjs +0 -40
- package/esm2020/src/remote/SetTransactionStateRemoteDataViewCommand.mjs +0 -20
- package/esm2020/src/rt/Argument.mjs +0 -265
- package/esm2020/src/rt/ArgumentsList.mjs +0 -103
- package/esm2020/src/rt/Boundary.mjs +0 -152
- package/esm2020/src/rt/CompMainPrgTable.mjs +0 -65
- package/esm2020/src/rt/DataviewHeaders.mjs +0 -53
- package/esm2020/src/rt/DataviewHeadersSaxHandler.mjs +0 -38
- package/esm2020/src/rt/ExecutionStack.mjs +0 -94
- package/esm2020/src/rt/HandlersTable.mjs +0 -96
- package/esm2020/src/rt/LastFocusedManager.mjs +0 -67
- package/esm2020/src/rt/Operation.mjs +0 -735
- package/esm2020/src/rt/OperationTable.mjs +0 -67
- package/esm2020/src/rt/Recompute.mjs +0 -355
- package/esm2020/src/rt/RecomputeTable.mjs +0 -63
- package/esm2020/src/rt/RemoteDataviewHeader.mjs +0 -108
- package/esm2020/src/rt/ResultValue.mjs +0 -12
- package/esm2020/src/rt/TableCache.mjs +0 -177
- package/esm2020/src/rt/TableCacheManager.mjs +0 -67
- package/esm2020/src/rt/Transaction.mjs +0 -53
- package/esm2020/src/security/UserDetails.mjs +0 -71
- package/esm2020/src/tasks/MGData.mjs +0 -552
- package/esm2020/src/tasks/MGDataCollection.mjs +0 -252
- package/esm2020/src/tasks/RCTimer.mjs +0 -63
- package/esm2020/src/tasks/RemoteTaskService.mjs +0 -45
- package/esm2020/src/tasks/Task.mjs +0 -2495
- package/esm2020/src/tasks/TaskBase.mjs +0 -87
- package/esm2020/src/tasks/TaskServiceBase.mjs +0 -25
- package/esm2020/src/tasks/TasksTable.mjs +0 -80
- package/esm2020/src/tasks/sort/Sort.mjs +0 -7
- package/esm2020/src/tasks/sort/SortCollection.mjs +0 -67
- package/esm2020/src/util/ConstUtils.mjs +0 -14
- package/esm2020/src/util/FlowMonitorQueue.mjs +0 -453
- package/esm2020/src/util/HeapSort.mjs +0 -70
- package/esm2020/src/util/MgPriorityBlockingQueue.mjs +0 -74
- package/esm2020/src/util/MgPriorityQueue.mjs +0 -66
- package/esm2020/src/util/PrmMap.mjs +0 -151
- package/esm2020/src/util/ReturnResult.mjs +0 -46
- package/esm2020/src/util/ReturnResultBase.mjs +0 -18
- package/esm2020/src/util/Scrambler.mjs +0 -89
- package/esm2020/src/util/UniqueIDUtils.mjs +0 -12
- package/esm2020/src/util/cookie.service.mjs +0 -92
- package/fesm2015/magic-xpa-engine.mjs +0 -30835
- package/fesm2015/magic-xpa-engine.mjs.map +0 -1
- package/fesm2020/magic-xpa-engine.mjs.map +0 -1
@@ -0,0 +1,25 @@
|
|
1
|
+
import { ClientTargetedCommandBase } from "./ClientTargetedCommandBase";
|
2
|
+
import { Debug } from "@magic-xpa/mscorelib";
|
3
|
+
import { AccessHelper } from "../../AccessHelper";
|
4
|
+
export class ClientRefreshCommand extends ClientTargetedCommandBase {
|
5
|
+
static ClientIsInRollbackCommand = false;
|
6
|
+
constructor() {
|
7
|
+
super();
|
8
|
+
}
|
9
|
+
async Execute(res) {
|
10
|
+
let task = AccessHelper.mgDataTable.GetTaskByID(this.TaskTag);
|
11
|
+
Debug.Assert(task.IsSubForm);
|
12
|
+
if (ClientRefreshCommand.ClientIsInRollbackCommand)
|
13
|
+
return;
|
14
|
+
if (task.AfterFirstRecordPrefix && !task.InEndTask) {
|
15
|
+
if ((task.DataView.getCurrRec()).InRecompute)
|
16
|
+
task.ExecuteClientSubformRefresh = true;
|
17
|
+
else {
|
18
|
+
task.PerformParentRecordPrefix = false;
|
19
|
+
await task.getParent().SubformRefresh(task, true);
|
20
|
+
task.PerformParentRecordPrefix = true;
|
21
|
+
}
|
22
|
+
}
|
23
|
+
}
|
24
|
+
}
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2xpZW50UmVmcmVzaENvbW1hbmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbmdpbmUvc3JjL2NvbW1hbmRzL1NlcnZlclRvQ2xpZW50L0NsaWVudFJlZnJlc2hDb21tYW5kLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBR3RFLE9BQU8sRUFBQyxLQUFLLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUUzQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFbEQsTUFBTSxPQUFPLG9CQUFxQixTQUFRLHlCQUF5QjtJQUNqRSxNQUFNLENBQUMseUJBQXlCLEdBQVksS0FBSyxDQUFDO0lBRWxEO1FBQ0UsS0FBSyxFQUFFLENBQUM7SUFDVixDQUFDO0lBTUQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFpQjtRQUU3QixJQUFJLElBQUksR0FBZSxZQUFZLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDMUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFNN0IsSUFBSSxvQkFBb0IsQ0FBQyx5QkFBeUI7WUFDaEQsT0FBTztRQUVULElBQUksSUFBSSxDQUFDLHNCQUFzQixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBR25ELElBQUksQ0FBWSxJQUFJLENBQUMsUUFBUyxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsV0FBVztnQkFDdEQsSUFBSSxDQUFDLDJCQUEyQixHQUFHLElBQUksQ0FBQztpQkFDckMsQ0FBQztnQkFFSixJQUFJLENBQUMseUJBQXlCLEdBQUcsS0FBSyxDQUFDO2dCQUN2QyxNQUFNLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO2dCQUNsRCxJQUFJLENBQUMseUJBQXlCLEdBQUcsSUFBSSxDQUFDO1lBQ3hDLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2xpZW50VGFyZ2V0ZWRDb21tYW5kQmFzZX0gZnJvbSBcIi4vQ2xpZW50VGFyZ2V0ZWRDb21tYW5kQmFzZVwiO1xyXG5pbXBvcnQge0lSZXN1bHRWYWx1ZX0gZnJvbSBcIi4uLy4uL3J0L0lSZXN1bHRWYWx1ZVwiO1xyXG5pbXBvcnQge1Rhc2t9IGZyb20gXCIuLi8uLi90YXNrcy9UYXNrXCI7XHJcbmltcG9ydCB7RGVidWd9IGZyb20gXCJAbWFnaWMteHBhL21zY29yZWxpYlwiO1xyXG5pbXBvcnQge0RhdGFWaWV3fSBmcm9tIFwiLi4vLi4vZGF0YS9EYXRhVmlld1wiO1xyXG5pbXBvcnQgeyBBY2Nlc3NIZWxwZXIgfSBmcm9tIFwiLi4vLi4vQWNjZXNzSGVscGVyXCI7XHJcblxyXG5leHBvcnQgY2xhc3MgQ2xpZW50UmVmcmVzaENvbW1hbmQgZXh0ZW5kcyBDbGllbnRUYXJnZXRlZENvbW1hbmRCYXNlIHtcclxuICBzdGF0aWMgQ2xpZW50SXNJblJvbGxiYWNrQ29tbWFuZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJyZXNcIj48L3BhcmFtPlxyXG4gIGFzeW5jIEV4ZWN1dGUocmVzOiBJUmVzdWx0VmFsdWUpOiBQcm9taXNlPHZvaWQ+IHtcclxuXHJcbiAgICBsZXQgdGFzazogVGFzayA9IDxUYXNrPkFjY2Vzc0hlbHBlci5tZ0RhdGFUYWJsZS5HZXRUYXNrQnlJRCh0aGlzLlRhc2tUYWcpO1xyXG4gICAgRGVidWcuQXNzZXJ0KHRhc2suSXNTdWJGb3JtKTtcclxuXHJcbiAgICAvLyBGaXhlZCBEZWZlY3QjOjc3MTQ5XHJcbiAgICAvLyBpZiB3ZSBpbiByb2xsYmFjayBjb21tYW5kIGFuZCB3ZSBnZXQgY2xpZW50UmVmcmVzaCBjb21tYW5kIGZyb20gc2VydmVyICxcclxuICAgIC8vIGZpcnN0IHdlIG5lZWQgdG8gcm9sbGJhY2sgdGhlIGxvY2FsIHRyYW5zYWN0aW9uIGFuZCB0aGVuIHdlIG5lZWQgdG8gZG8gcmVmcmVzaCB0byB0aGUgdmlldyAuXHJcbiAgICAvLyB0aGUgcmVmcmVzaCB0byB0aGUgdmlldyB3aWxsIGJlIGhhbmRsZWQgaW4gcm9sbGJhY2sgY29tbWFuZFxyXG4gICAgaWYgKENsaWVudFJlZnJlc2hDb21tYW5kLkNsaWVudElzSW5Sb2xsYmFja0NvbW1hbmQpXHJcbiAgICAgIHJldHVybjtcclxuXHJcbiAgICBpZiAodGFzay5BZnRlckZpcnN0UmVjb3JkUHJlZml4ICYmICF0YXNrLkluRW5kVGFzaykge1xyXG4gICAgICAvLyBRQ1IgIzI4NDc4OS4gV2hlbiB0aGUgc3ViZm9ybSBleGVjdXRlIGl0J3MgcmVjb21wdXRlLCB3ZSBkbyBub3QgbmVlZGVkIHRvIGV4ZWN1dGUgaXQncyB2aWV3IHJlZnJlc2gsXHJcbiAgICAgIC8vIHdlIG5lZWQgZXhlY3V0ZSBvbmx5IGl0J3Mgc3ViZm9ybXMgcmVmcmVzaC4gSXQgd2lsbCBiZSBkb25lIGluIHJlY29tcHV0ZS5cclxuICAgICAgaWYgKCgoPERhdGFWaWV3PnRhc2suRGF0YVZpZXcpLmdldEN1cnJSZWMoKSkuSW5SZWNvbXB1dGUpXHJcbiAgICAgICAgdGFzay5FeGVjdXRlQ2xpZW50U3ViZm9ybVJlZnJlc2ggPSB0cnVlO1xyXG4gICAgICBlbHNlIHtcclxuICAgICAgICAvLyBEbyBub3QgZXhlY3V0ZSBSUCAmIFJTIG9mIHRoZSBwYXJlbnQsIGJlY2F1c2UgaXQgd2FzIGRvbmUgYWxyZWFkeS5cclxuICAgICAgICB0YXNrLlBlcmZvcm1QYXJlbnRSZWNvcmRQcmVmaXggPSBmYWxzZTtcclxuICAgICAgICBhd2FpdCB0YXNrLmdldFBhcmVudCgpLlN1YmZvcm1SZWZyZXNoKHRhc2ssIHRydWUpO1xyXG4gICAgICAgIHRhc2suUGVyZm9ybVBhcmVudFJlY29yZFByZWZpeCA9IHRydWU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
|
@@ -0,0 +1,24 @@
|
|
1
|
+
import { IClientTargetedCommand } from "../IClientTargetedCommand";
|
2
|
+
import { XMLConstants } from "@magic-xpa/utils";
|
3
|
+
export class ClientTargetedCommandBase extends IClientTargetedCommand {
|
4
|
+
get IsBlocking() {
|
5
|
+
return false;
|
6
|
+
}
|
7
|
+
Frame = 0;
|
8
|
+
TaskTag = null;
|
9
|
+
Obj = null;
|
10
|
+
get ShouldExecute() {
|
11
|
+
return true;
|
12
|
+
}
|
13
|
+
async Execute(res) {
|
14
|
+
return Promise.resolve();
|
15
|
+
}
|
16
|
+
HandleAttribute(attribute, value) {
|
17
|
+
switch (attribute) {
|
18
|
+
case XMLConstants.MG_ATTR_TASKID:
|
19
|
+
this.TaskTag = value;
|
20
|
+
break;
|
21
|
+
}
|
22
|
+
}
|
23
|
+
}
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2xpZW50VGFyZ2V0ZWRDb21tYW5kQmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VuZ2luZS9zcmMvY29tbWFuZHMvU2VydmVyVG9DbGllbnQvQ2xpZW50VGFyZ2V0ZWRDb21tYW5kQmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUdqRSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sa0JBQWtCLENBQUM7QUFPOUMsTUFBTSxPQUFnQix5QkFBMEIsU0FBUSxzQkFBc0I7SUFFNUUsSUFBSSxVQUFVO1FBQ1osT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsS0FBSyxHQUFXLENBQUMsQ0FBQztJQUVsQixPQUFPLEdBQVcsSUFBSSxDQUFDO0lBRXZCLEdBQUcsR0FBVyxJQUFJLENBQUM7SUFFbkIsSUFBSSxhQUFhO1FBQ2YsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFpQjtRQUM3QixPQUFPLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRUQsZUFBZSxDQUFDLFNBQWlCLEVBQUUsS0FBYTtRQUM5QyxRQUFRLFNBQVMsRUFBRSxDQUFDO1lBQ2xCLEtBQUssWUFBWSxDQUFDLGNBQWM7Z0JBQzlCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO2dCQUNyQixNQUFNO1FBQ1YsQ0FBQztJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SUNsaWVudFRhcmdldGVkQ29tbWFuZH0gZnJvbSBcIi4uL0lDbGllbnRUYXJnZXRlZENvbW1hbmRcIjtcclxuaW1wb3J0IHtJQ2xpZW50Q29tbWFuZH0gZnJvbSBcIi4uL0lDbGllbnRDb21tYW5kXCI7XHJcbmltcG9ydCB7SVJlc3VsdFZhbHVlfSBmcm9tIFwiLi4vLi4vcnQvSVJlc3VsdFZhbHVlXCI7XHJcbmltcG9ydCB7WE1MQ29uc3RhbnRzfSBmcm9tIFwiQG1hZ2ljLXhwYS91dGlsc1wiO1xyXG5cclxuXHJcbi8vLyA8c3VtbWFyeT5cclxuLy8vIEJhc2UgY2xhc3MgZm9yIENsaWVudFRhcmdldGVkQ29tbWFuZHMuIFRoaXMgY2xhc3MgaW1wbGVtZW50c1xyXG4vLy8gY29tbW9uIHByb3BlcnRpZXMgYW5kIG1ldGhvZHMgc2hhcmVkIGJ5IGFsbCBpbmhlcml0aW5nIGNvbW1hbmQgY2xhc3Nlcy5cclxuLy8vIDwvc3VtbWFyeT5cclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIENsaWVudFRhcmdldGVkQ29tbWFuZEJhc2UgZXh0ZW5kcyBJQ2xpZW50VGFyZ2V0ZWRDb21tYW5kIGltcGxlbWVudHMgSUNsaWVudENvbW1hbmQge1xyXG5cclxuICBnZXQgSXNCbG9ja2luZygpOiBib29sZWFuIHtcclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG4gIEZyYW1lOiBudW1iZXIgPSAwO1xyXG5cclxuICBUYXNrVGFnOiBzdHJpbmcgPSBudWxsO1xyXG5cclxuICBPYmo6IHN0cmluZyA9IG51bGw7XHJcblxyXG4gIGdldCBTaG91bGRFeGVjdXRlKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBhc3luYyBFeGVjdXRlKHJlczogSVJlc3VsdFZhbHVlKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XHJcbiAgfVxyXG5cclxuICBIYW5kbGVBdHRyaWJ1dGUoYXR0cmlidXRlOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHN3aXRjaCAoYXR0cmlidXRlKSB7XHJcbiAgICAgIGNhc2UgWE1MQ29uc3RhbnRzLk1HX0FUVFJfVEFTS0lEOlxyXG4gICAgICAgIHRoaXMuVGFza1RhZyA9IHZhbHVlO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
|
@@ -0,0 +1,45 @@
|
|
1
|
+
import { VerifyCommand } from "./VerifyCommand";
|
2
|
+
import { Operation } from "../../rt/Operation";
|
3
|
+
import { Task } from "../../tasks/Task";
|
4
|
+
import { ConstInterface } from "../../ConstInterface";
|
5
|
+
import { LanguageData } from "../../env/LanguageData";
|
6
|
+
export class EnhancedVerifyCommand extends VerifyCommand {
|
7
|
+
_buttonsID = '\0';
|
8
|
+
_image = '\0';
|
9
|
+
_returnValStr = null;
|
10
|
+
_returnVal = null;
|
11
|
+
async ProcessMessageBoxResponse(task, returnValue) {
|
12
|
+
if (task !== null)
|
13
|
+
await Operation.setoperVerifyReturnValue(returnValue, this._returnVal);
|
14
|
+
}
|
15
|
+
PrepareMessageBoxForDisplay(task, mlsTransTitle, style) {
|
16
|
+
mlsTransTitle.value = LanguageData.Instance.translate(this._title);
|
17
|
+
style.value = Operation.getButtons(this._buttonsID);
|
18
|
+
style.value |= Operation.getImage(this._image);
|
19
|
+
if (task !== null) {
|
20
|
+
if (Task.isMainProgramField(this._returnValStr)) {
|
21
|
+
this._returnVal = Operation.InitField(this._returnValStr, task);
|
22
|
+
}
|
23
|
+
}
|
24
|
+
}
|
25
|
+
HandleAttribute(attribute, value) {
|
26
|
+
switch (attribute) {
|
27
|
+
case ConstInterface.MG_ATTR_IMAGE:
|
28
|
+
this._image = value[0];
|
29
|
+
break;
|
30
|
+
case ConstInterface.MG_ATTR_BUTTONS:
|
31
|
+
this._buttonsID = value[0];
|
32
|
+
break;
|
33
|
+
case ConstInterface.MG_ATTR_RETURN_VAL:
|
34
|
+
this._returnValStr = value;
|
35
|
+
break;
|
36
|
+
default:
|
37
|
+
super.HandleAttribute(attribute, value);
|
38
|
+
break;
|
39
|
+
}
|
40
|
+
}
|
41
|
+
constructor() {
|
42
|
+
super();
|
43
|
+
}
|
44
|
+
}
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRW5oYW5jZWRWZXJpZnlDb21tYW5kLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZW5naW5lL3NyYy9jb21tYW5kcy9TZXJ2ZXJUb0NsaWVudC9FbmhhbmNlZFZlcmlmeUNvbW1hbmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzlDLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQUM3QyxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sa0JBQWtCLENBQUM7QUFDdEMsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBRXBELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUd0RCxNQUFNLE9BQU8scUJBQXNCLFNBQVEsYUFBYTtJQUM5QyxVQUFVLEdBQVcsSUFBSSxDQUFDO0lBQzFCLE1BQU0sR0FBVyxJQUFJLENBQUM7SUFDdEIsYUFBYSxHQUFXLElBQUksQ0FBQztJQUM3QixVQUFVLEdBQVUsSUFBSSxDQUFDO0lBRWpDLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxJQUFVLEVBQUUsV0FBbUI7UUFDN0QsSUFBSSxJQUFJLEtBQUssSUFBSTtZQUNmLE1BQU0sU0FBUyxDQUFDLHdCQUF3QixDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDM0UsQ0FBQztJQUVELDJCQUEyQixDQUFDLElBQVUsRUFBRSxhQUErQixFQUFFLEtBQXVCO1FBQzlGLGFBQWEsQ0FBQyxLQUFLLEdBQUcsWUFBWSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ25FLEtBQUssQ0FBQyxLQUFLLEdBQUcsU0FBUyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDcEQsS0FBSyxDQUFDLEtBQUssSUFBSSxTQUFTLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUUvQyxJQUFJLElBQUksS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUVsQixJQUFJLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQztnQkFDaEQsSUFBSSxDQUFDLFVBQVUsR0FBRyxTQUFTLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDbEUsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRU0sZUFBZSxDQUFDLFNBQWlCLEVBQUUsS0FBYTtRQUNyRCxRQUFRLFNBQVMsRUFBRSxDQUFDO1lBQ2xCLEtBQUssY0FBYyxDQUFDLGFBQWE7Z0JBQy9CLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUN2QixNQUFNO1lBQ1IsS0FBSyxjQUFjLENBQUMsZUFBZTtnQkFDakMsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQzNCLE1BQU07WUFDUixLQUFLLGNBQWMsQ0FBQyxrQkFBa0I7Z0JBQ3BDLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDO2dCQUMzQixNQUFNO1lBQ1I7Z0JBQ0UsS0FBSyxDQUFDLGVBQWUsQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUM7Z0JBQ3hDLE1BQU07UUFDVixDQUFDO0lBQ0gsQ0FBQztJQUVEO1FBQ0UsS0FBSyxFQUFFLENBQUM7SUFDVixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1JlZlBhcmFtfSBmcm9tIFwiQG1hZ2ljLXhwYS9tc2NvcmVsaWJcIjtcclxuaW1wb3J0IHtWZXJpZnlDb21tYW5kfSBmcm9tIFwiLi9WZXJpZnlDb21tYW5kXCI7XHJcbmltcG9ydCB7T3BlcmF0aW9ufSBmcm9tIFwiLi4vLi4vcnQvT3BlcmF0aW9uXCI7XHJcbmltcG9ydCB7VGFza30gZnJvbSBcIi4uLy4uL3Rhc2tzL1Rhc2tcIjtcclxuaW1wb3J0IHtDb25zdEludGVyZmFjZX0gZnJvbSBcIi4uLy4uL0NvbnN0SW50ZXJmYWNlXCI7XHJcbmltcG9ydCB7RmllbGR9IGZyb20gXCIuLi8uLi9kYXRhL0ZpZWxkXCI7XHJcbmltcG9ydCB7IExhbmd1YWdlRGF0YSB9IGZyb20gXCIuLi8uLi9lbnYvTGFuZ3VhZ2VEYXRhXCI7XHJcblxyXG5cclxuZXhwb3J0IGNsYXNzIEVuaGFuY2VkVmVyaWZ5Q29tbWFuZCBleHRlbmRzIFZlcmlmeUNvbW1hbmQge1xyXG4gIHByaXZhdGUgX2J1dHRvbnNJRDogc3RyaW5nID0gJ1xcMCc7IC8vIGJ1dHRvbnMgb2YgdmVyaWZ5IG9wclxyXG4gIHByaXZhdGUgX2ltYWdlOiBzdHJpbmcgPSAnXFwwJzsgLy8gaW1hZ2Ugb2YgdmVyaWZ5IG9wclxyXG4gIHByaXZhdGUgX3JldHVyblZhbFN0cjogc3RyaW5nID0gbnVsbDtcclxuICBwcml2YXRlIF9yZXR1cm5WYWw6IEZpZWxkID0gbnVsbDsgLy8gcmV0dXJuIHZhbHVlIG9mIHZlcmlmeSBvcHJcclxuXHJcbiAgYXN5bmMgUHJvY2Vzc01lc3NhZ2VCb3hSZXNwb25zZSh0YXNrOiBUYXNrLCByZXR1cm5WYWx1ZTogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBpZiAodGFzayAhPT0gbnVsbClcclxuICAgICAgYXdhaXQgT3BlcmF0aW9uLnNldG9wZXJWZXJpZnlSZXR1cm5WYWx1ZShyZXR1cm5WYWx1ZSwgdGhpcy5fcmV0dXJuVmFsKTtcclxuICB9XHJcblxyXG4gIFByZXBhcmVNZXNzYWdlQm94Rm9yRGlzcGxheSh0YXNrOiBUYXNrLCBtbHNUcmFuc1RpdGxlOiBSZWZQYXJhbTxzdHJpbmc+LCBzdHlsZTogUmVmUGFyYW08bnVtYmVyPik6IHZvaWQge1xyXG4gICAgbWxzVHJhbnNUaXRsZS52YWx1ZSA9IExhbmd1YWdlRGF0YS5JbnN0YW5jZS50cmFuc2xhdGUodGhpcy5fdGl0bGUpO1xyXG4gICAgc3R5bGUudmFsdWUgPSBPcGVyYXRpb24uZ2V0QnV0dG9ucyh0aGlzLl9idXR0b25zSUQpO1xyXG4gICAgc3R5bGUudmFsdWUgfD0gT3BlcmF0aW9uLmdldEltYWdlKHRoaXMuX2ltYWdlKTtcclxuXHJcbiAgICBpZiAodGFzayAhPT0gbnVsbCkge1xyXG4gICAgICAvLyBWZXJpZnkgY29tbWFuZCByZXR1cm4gdmFsdWUgY2FuIG9ubHkgYmUgdXNlZCB3aXRoIG1haW4gcHJvZ3JhbSBmaWVsZHNcclxuICAgICAgaWYgKFRhc2suaXNNYWluUHJvZ3JhbUZpZWxkKHRoaXMuX3JldHVyblZhbFN0cikpIHtcclxuICAgICAgICB0aGlzLl9yZXR1cm5WYWwgPSBPcGVyYXRpb24uSW5pdEZpZWxkKHRoaXMuX3JldHVyblZhbFN0ciwgdGFzayk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBIYW5kbGVBdHRyaWJ1dGUoYXR0cmlidXRlOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHN3aXRjaCAoYXR0cmlidXRlKSB7XHJcbiAgICAgIGNhc2UgQ29uc3RJbnRlcmZhY2UuTUdfQVRUUl9JTUFHRTpcclxuICAgICAgICB0aGlzLl9pbWFnZSA9IHZhbHVlWzBdO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIENvbnN0SW50ZXJmYWNlLk1HX0FUVFJfQlVUVE9OUzpcclxuICAgICAgICB0aGlzLl9idXR0b25zSUQgPSB2YWx1ZVswXTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBDb25zdEludGVyZmFjZS5NR19BVFRSX1JFVFVSTl9WQUw6XHJcbiAgICAgICAgdGhpcy5fcmV0dXJuVmFsU3RyID0gdmFsdWU7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgc3VwZXIuSGFuZGxlQXR0cmlidXRlKGF0dHJpYnV0ZSwgdmFsdWUpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
@@ -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=
|