@kontur.candy/tools 2.124.0 → 2.128.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +25 -0
- package/distr/Common/AsyncUtils.js +30 -1
- package/distr/Common/CandyApiClient/CandyApiClient.js +42 -1
- package/distr/Common/CandyApiClient/CandyApiClientContext.js +33 -1
- package/distr/Common/CandyApiClient/ClientDraftInfo/ClientDraftInfoResponse.js +4 -0
- package/distr/Common/CandyApiClient/ClientDraftInfo/FnsFormInfo.js +4 -0
- package/distr/Common/CandyApiClient/ClientDraftInfo/GetClientDraftInfoUrl.js +29 -1
- package/distr/Common/CandyApiClient/ClientDraftInfo/PrintInfo.js +4 -0
- package/distr/Common/CandyApiClient/DigestApiClient/Decorators/DigestApiClientWithCache.js +35 -1
- package/distr/Common/CandyApiClient/DigestApiClient/Decorators/DigestApiClientWithDebouncedBatching.js +35 -1
- package/distr/Common/CandyApiClient/DigestApiClient/DigestApiClient.js +37 -1
- package/distr/Common/CandyApiClient/DigestApiClient/Fakes/Data/TaxRebate1152026.js +29 -1
- package/distr/Common/CandyApiClient/DigestApiClient/Fakes/FakeDigestApiClient.js +34 -1
- package/distr/Common/CandyApiClient/DigestApiClient/Fakes/FakePicklists.js +28 -1
- package/distr/Common/CandyApiClient/DigestApiClient/IDigestApiClient.js +4 -0
- package/distr/Common/CandyApiClient/DigestApiClient/React/DigestApiClientContext.js +33 -1
- package/distr/Common/CandyApiClient/DigestApiClient/TestDigestApiClient.js +29 -1
- package/distr/Common/CandyApiClient/DigestApiClient/Types/DigestQueryFilter.js +6 -1
- package/distr/Common/CandyApiClient/DigestApiClient/Types/DigestRequest.js +4 -0
- package/distr/Common/CandyApiClient/DigestApiClient/Types/DigestResponse.js +4 -0
- package/distr/Common/CandyApiClient/FakeCandyApiClient.js +41 -1
- package/distr/Common/CandyApiClient/ICandyApiClient.js +5 -1
- package/distr/Common/CandyApiClient/IsBuffer.js +29 -1
- package/distr/Common/CandyApiClient/Types/Attachments/Attacments.js +4 -0
- package/distr/Common/CandyApiClient/Types/Attachments/GetAttachmentsResponse.js +4 -0
- package/distr/Common/CandyApiClient/Types/ChangeSet/ServerChangeSet.js +4 -0
- package/distr/Common/CandyApiClient/Types/CreateDraft/CreateDraftResponse.js +4 -0
- package/distr/Common/CandyApiClient/Types/DiagResourcesResponse.js +4 -0
- package/distr/Common/CandyApiClient/Types/DraftActions/CombineFufResult.js +6 -1
- package/distr/Common/CandyApiClient/Types/DraftActions/ConvertDraftRequest.js +4 -0
- package/distr/Common/CandyApiClient/Types/DraftActions/FileProperties.js +4 -0
- package/distr/Common/CandyApiClient/Types/DraftFullId.js +4 -0
- package/distr/Common/CandyApiClient/Types/ErrorLog/ServerErrorLog.js +4 -0
- package/distr/Common/CandyApiClient/Types/ExplanatoryNote/CreateExplanatoryNoteResponse.js +6 -1
- package/distr/Common/CandyApiClient/Types/FeatureFlags/FeatureFlagsResponse.js +4 -0
- package/distr/Common/CandyApiClient/Types/Focus/FocusServerResponse.js +4 -0
- package/distr/Common/CandyApiClient/Types/Focus/FocusTypes.js +6 -1
- package/distr/Common/CandyApiClient/Types/GetInner/ServerInnerResponse.js +4 -0
- package/distr/Common/CandyApiClient/Types/GetInner/ServerRequisitesResponse.js +4 -0
- package/distr/Common/CandyApiClient/Types/Guid.js +4 -0
- package/distr/Common/CandyApiClient/Types/Presentations/DraftPresentationType.js +6 -1
- package/distr/Common/CandyApiClient/Types/Presentations/PresentationContent.js +4 -0
- package/distr/Common/CandyApiClient/Types/Tasks/GetTasksServerResponse.js +4 -0
- package/distr/Common/CandyApiClient/Types/Tasks/Tasks.js +6 -1
- package/distr/Common/CommonConstants/SectionNames.js +28 -1
- package/distr/Common/Comparers.js +30 -8
- package/distr/Common/EmotionStorybookWorkaroundViaAliases.js +29 -1
- package/distr/Common/EndPoints.js +34 -1
- package/distr/Common/Errors.js +69 -1
- package/distr/Common/FormActionHandlers/ContextualActionNames.js +30 -1
- package/distr/Common/FormActionHandlers/ControlNamedContextualAction.js +4 -0
- package/distr/Common/Funcs.js +29 -1
- package/distr/Common/GFV.js +4 -0
- package/distr/Common/HttpClient/AuthenticationMode.js +32 -1
- package/distr/Common/HttpClient/FetchImplementation/BrowserFetchWithPolyfill.js +28 -1
- package/distr/Common/HttpClient/FetchImplementation/Fetch.js +4 -0
- package/distr/Common/HttpClient/FetchImplementation/NativeBrowserFetch.js +29 -1
- package/distr/Common/HttpClient/FetchImplementation/NodeFetch.js +31 -1
- package/distr/Common/HttpClient/HttpClient.js +62 -4
- package/distr/Common/HttpClient/HttpClientAuthenticationProvider.js +4 -0
- package/distr/Common/HttpClient/IHttpClient.js +4 -0
- package/distr/Common/IntRangeUtils.js +31 -1
- package/distr/Common/IterableUtils.js +38 -1
- package/distr/Common/KCLangRuntimeUtils.js +36 -1
- package/distr/Common/ModelPath/AbsoluteModelPathSet.js +34 -1
- package/distr/Common/ModelPath/BuildIterationSequence.js +29 -1
- package/distr/Common/ModelPath/EachCurrentCollision.js +6 -1
- package/distr/Common/ModelPath/IEquatable.js +4 -0
- package/distr/Common/ModelPath/ModelPath.js +54 -1
- package/distr/Common/ModelPath/ModelPathBuilder.js +34 -1
- package/distr/Common/ModelPath/ModelPathMap.js +41 -1
- package/distr/Common/ModelPath/ModelPathSet.js +34 -1
- package/distr/Common/ModelPath/PathMatcher.js +28 -1
- package/distr/Common/NidusClient/ContextualNidusClient/ContextualNidusClient.js +34 -1
- package/distr/Common/NidusClient/ContextualNidusClient/IContextualNidusClient.js +4 -0
- package/distr/Common/NidusClient/Fakes/CreateUniqueNidusEntryId.js +29 -1
- package/distr/Common/NidusClient/Fakes/FakeNidusClient.js +34 -1
- package/distr/Common/NidusClient/Fakes/LocalStorageBasedNidusClient.js +38 -1
- package/distr/Common/NidusClient/INidusClient.js +30 -1
- package/distr/Common/NidusClient/NidusClientContext.js +38 -1
- package/distr/Common/NidusClient/NidusClientImpl.js +34 -1
- package/distr/Common/PathConstants.js +29 -1
- package/distr/Common/TypingUtils.js +55 -1
- package/distr/Common/UUID.js +30 -1
- package/distr/Common/UseAsyncEffect.js +31 -1
- package/distr/Tools/src/BuildTasks/ClientJS/BuildClientJsTask.js +34 -1
- package/distr/Tools/src/BuildTasks/ClientJS/IsWebpack5.js +29 -1
- package/distr/Tools/src/BuildTasks/Engine/AcquireFormEngine.js +30 -1
- package/distr/Tools/src/BuildTasks/Engine/AcquirePublishedEngineTask.js +34 -1
- package/distr/Tools/src/BuildTasks/Engine/BuildLocalEngineTask.js +34 -1
- package/distr/Tools/src/BuildTasks/Engine/EngineSource.js +29 -1
- package/distr/Tools/src/BuildTasks/EngineStructureUtils.js +32 -1
- package/distr/Tools/src/BuildTasks/EngineVersionUtils.js +28 -1
- package/distr/Tools/src/BuildTasks/FSTask.js +28 -1
- package/distr/Tools/src/BuildTasks/Form/CompileForm.js +30 -1
- package/distr/Tools/src/BuildTasks/Form/GenerateForm.js +37 -1
- package/distr/Tools/src/BuildTasks/Form/NullFormGenerator.js +34 -1
- package/distr/Tools/src/BuildTasks/Form/WriteAttachmentPathFiles.js +29 -1
- package/distr/Tools/src/BuildTasks/Form/WriteFLangNormalizationFiles.js +29 -1
- package/distr/Tools/src/BuildTasks/Generator/AcquireFormGenerator.js +31 -1
- package/distr/Tools/src/BuildTasks/Generator/AcquirePublishedGeneratorTask.js +34 -1
- package/distr/Tools/src/BuildTasks/Generator/BuildGeneratorFromSourcesTask.js +35 -1
- package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/CreateAsyncGenerator.js +37 -2
- package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/GeneratorRequireUtils.js +34 -2
- package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/ProcessSugarWorker.js +5 -1
- package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/ReadSourcesAndProcessSugarWorker.js +5 -1
- package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/RequireUncached.js +33 -3
- package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/TypedProcessWorker.js +29 -2
- package/distr/Tools/src/BuildTasks/ProcessUtils/ProcessUtils.js +28 -1
- package/distr/Tools/src/BuildTasks/ProcessUtils/ShellProcessHandle.js +34 -1
- package/distr/Tools/src/BuildTasks/PublishedVersionUtils.js +45 -1
- package/distr/Tools/src/BuildTasks/ReadFormSource.js +37 -1
- package/distr/Tools/src/BuildTasks/ResolveFormInfo.js +31 -1
- package/distr/Tools/src/BuildTasks/Version.js +32 -1
- package/distr/Tools/src/BuildTasks/WriteFormMeta.js +29 -1
- package/distr/Tools/src/CLICommands/BuildForms/BuildCacheMode.js +30 -1
- package/distr/Tools/src/CLICommands/BuildForms/BuildFormsOptions.js +28 -1
- package/distr/Tools/src/CLICommands/BuildForms/RunBuildForms.js +31 -1
- package/distr/Tools/src/CLICommands/BuildServer/BuildLogsWebsocketController.js +48 -6
- package/distr/Tools/src/CLICommands/BuildServer/BuildServerServerOptions.js +29 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerBackendResourcesController.js +34 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerBackendResourcesUpdatesController.js +42 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerBuildFormsController.js +34 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerClientJsController.js +36 -2
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerClientJsFromResourcesController.js +35 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerFormInfoController.js +34 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerLocalSourcesEngineController.js +45 -4
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerPrebuiltResourcesController.js +34 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerPublishedEngineController.js +34 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/BuildFormDevServer.js +41 -3
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/ClientJsDevServer.js +41 -3
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/EngineDevServer.js +39 -21
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/ReportGeneratorErrorToPageBody.js +29 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/RunFormCompilationViaWebpackDevServer.js +43 -3
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackDevServerWorker/WebpackDevServerWorker.js +48 -4
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackDevServerWorker/WebpackDevServerWorkerFactory.js +29 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackInMemoryUtils/IInputFileSystem.js +4 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackInMemoryUtils/IWatchFileSystem.js +4 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackInMemoryUtils/WebpackHybridFileSystem.js +42 -2
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/Directories/FarmDirectory.js +34 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/GlobToRegexp.js +29 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/IGeneratedServerSideSourcesProvider.js +4 -0
- package/distr/Tools/src/CLICommands/BuildServer/RunBuildServer.js +34 -15
- package/distr/Tools/src/CLICommands/BuildServer/StdStreamsIntercepter.js +29 -1
- package/distr/Tools/src/CLICommands/CommonOptions/BuildDebugOnlyOption.js +25 -13
- package/distr/Tools/src/CLICommands/CommonOptions/CommonOptionDefintions.js +30 -1
- package/distr/Tools/src/CLICommands/CommonOptions/CommonOptions.js +4 -0
- package/distr/Tools/src/CLICommands/DevBuild/DevBuildOptions.js +28 -1
- package/distr/Tools/src/CLICommands/DevBuild/RunDevBuild.js +29 -8
- package/distr/Tools/src/CLICommands/FormStats/FormStatsOptions.js +28 -1
- package/distr/Tools/src/CLICommands/FormStats/RunFormStats.js +29 -1
- package/distr/Tools/src/CLICommands/FormsHelper/FormsHelperController.js +43 -4
- package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/autocalc/{gfv}.calc.js +30 -1
- package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/helpers/setKppValue.js +29 -1
- package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/test/browser/Smoke.test.js +34 -1
- package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/test/ui/DemoTest.test.js +34 -1
- package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/validations/kppValue.js +29 -1
- package/distr/Tools/src/CLICommands/InitForm/InitFormOptions.js +28 -1
- package/distr/Tools/src/CLICommands/InitForm/RunInitForm.js +30 -1
- package/distr/Tools/src/CLICommands/Localization/LocalizationOptions.js +28 -1
- package/distr/Tools/src/CLICommands/Localization/RunLocalization.js +30 -1
- package/distr/Tools/src/CLICommands/UpgradeForm/RunUpgradeForm.js +33 -2
- package/distr/Tools/src/CLICommands/UpgradeForm/UpgradeFormOptions.js +29 -1
- package/distr/Tools/src/CandyCLI.js +29 -1
- package/distr/Tools/src/CheckNodeJsVersion.js +31 -1
- package/distr/Tools/src/Commons/ConsoleApplication/ConsoleApplication.js +33 -2
- package/distr/Tools/src/Commons/ConsoleApplication/ConsoleApplicationContext.js +34 -1
- package/distr/Tools/src/Commons/ErrorUntyped.js +4 -0
- package/distr/Tools/src/Commons/EventObject.js +44 -2
- package/distr/Tools/src/Commons/ExecUtils.js +29 -1
- package/distr/Tools/src/Commons/ExtractGfvsFromFileName.js +29 -1
- package/distr/Tools/src/Commons/FormGlobsUtils.js +34 -1
- package/distr/Tools/src/Commons/FsUtils.js +32 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Actions.js +32 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Methods.js +33 -2
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/NotFoundWebError.js +34 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/CookieParamParamBinder.js +34 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/IParamBinder.js +4 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/JsonBodyParamBinder.js +34 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/StringBodyParamBinder.js +34 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/UrlParamBinder.js +34 -2
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/UrlQueryParamBinder.js +34 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Params.js +37 -2
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/CustomActionResultHandler.js +34 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/CustomContentResultHandler.js +34 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/EmptyResultHandler.js +34 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/HtmlResultHandler.js +34 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/IResultHandler.js +4 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/JsonResultHandler.js +34 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/PlainTextResultHandler.js +34 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/StreamResultHandler.js +71 -5
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results.js +28 -1
- package/distr/Tools/src/Commons/HttpServer/ExpressWrapper/ExpressServerWrapper.js +83 -12
- package/distr/Tools/src/Commons/HttpServer/ExpressWrapper/SingletonController.js +35 -2
- package/distr/Tools/src/Commons/Locks/Lock.js +34 -1
- package/distr/Tools/src/Commons/Locks/LockHandle.js +34 -1
- package/distr/Tools/src/Commons/Locks/ReadWriteLockCollection.js +34 -1
- package/distr/Tools/src/Commons/Logging/ELKLogger.js +31 -1
- package/distr/Tools/src/Commons/Logging/ILogger.js +36 -1
- package/distr/Tools/src/Commons/Logging/InMemoryLogger.js +41 -1
- package/distr/Tools/src/Commons/Logging/Logger.js +35 -2
- package/distr/Tools/src/Commons/Logging/StaticLogger.js +38 -1
- package/distr/Tools/src/Commons/Options/CommandBasedOptionsParser.d.js +30 -1
- package/distr/Tools/src/Commons/Options/CommandBasedOptionsParser.js +48 -1
- package/distr/Tools/src/Commons/PathPattern.js +34 -1
- package/distr/Tools/src/Commons/TasksCore/AggregatedError.js +34 -1
- package/distr/Tools/src/Commons/TasksCore/BuildTask.js +4 -0
- package/distr/Tools/src/Commons/TasksCore/ChainableValueProducer.js +89 -1
- package/distr/Tools/src/Commons/TasksCore/DirectoryEntriesProducer.js +34 -1
- package/distr/Tools/src/Commons/TasksCore/EmptyProducer.js +34 -1
- package/distr/Tools/src/Commons/TasksCore/FileSystemEntriesProducer.js +34 -1
- package/distr/Tools/src/Commons/TasksCore/FileValueProducer.js +34 -1
- package/distr/Tools/src/Commons/TasksCore/Observe.js +28 -1
- package/distr/Tools/src/Commons/TasksCore/SingleValueProducer.js +34 -1
- package/distr/Tools/src/Commons/TimingUtils.js +29 -1
- package/distr/Tools/src/FormWebpackConfiguration/CacheAssetsPlugin.js +42 -1
- package/distr/Tools/src/FormWebpackConfiguration/createFormWebpackConfiguration.js +32 -2
- package/distr/Tools/src/GenerateReadMe.js +31 -1
- package/distr/Tools/src/Keys/localhost-key.pem +35 -0
- package/distr/Tools/src/Keys/localhost.pem +80 -0
- package/distr/Tools/src/LocalServerFrontEndDist/enhancedClient.js +2 -46786
- package/distr/Tools/src/LocalServerFrontEndDist/enhancedClient.js.LICENSE.txt +38 -0
- package/distr/Tools/src/LocalServerFrontEndDist/index.html +1 -9
- package/distr/Tools/src/LocalServerFrontEndDist/index.js +1 -99398
- package/distr/Tools/src/LocalServerFrontEndDist/index.js.LICENSE.txt +49 -0
- package/distr/Tools/src/LocalServerFrontEndDist/index.js.map +1 -1
- package/distr/Tools/src/Options/CandyToolOptions.js +28 -1
- package/distr/Tools/src/ReadFarmConfig.js +29 -1
- package/distr/Tools/src/SelfUpdate.js +44 -10
- package/distr/Tools/src/StaticFilesForProductionResourcesDir/client.js +5 -1
- package/distr/Tools/src/StaticFilesForProductionResourcesDir/client.min.js +5 -1
- package/distr/Tools/src/StaticFilesForProductionResourcesDir/jquery-1.11.3.min.js +5 -1
- package/distr/Tools/src/StaticFilesForProductionResourcesDir/polyfill.min.js +5 -1
- package/distr/Tools/src/StaticFilesForProductionResourcesDir/testing.min.js +5 -1
- package/distr/Tools/src/StaticFilesForResourcesDir/jquery-1.11.3.min.js +5 -1
- package/distr/Tools/src/StaticFilesForResourcesDir/polyfill.min.js +5 -1
- package/distr/Tools/src/StaticFilesForResourcesDir/testing.min.js +5 -1
- package/package.json +1 -3
- package/distr/Tools/src/LocalServerFrontEndDist/enhancedClient.js.map +0 -1
|
@@ -3,10 +3,19 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.HttpClientResponse = exports.HttpClientRequestWrapper = exports.HttpClient = void 0;
|
|
6
|
+
exports.HttpError = exports.HttpClientResponse = exports.HttpClientRequestWrapper = exports.HttpClient = void 0;
|
|
7
7
|
|
|
8
8
|
var _Errors = require("../Errors");
|
|
9
9
|
|
|
10
|
+
(function () {
|
|
11
|
+
var enterModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.enterModule : undefined;
|
|
12
|
+
enterModule && enterModule(module);
|
|
13
|
+
})();
|
|
14
|
+
|
|
15
|
+
var __signature__ = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default.signature : function (a) {
|
|
16
|
+
return a;
|
|
17
|
+
};
|
|
18
|
+
|
|
10
19
|
function trimTrailingSlash(url) {
|
|
11
20
|
return url.slice(-1) === "/" ? url.slice(0, -1) : url;
|
|
12
21
|
}
|
|
@@ -31,6 +40,12 @@ class HttpClientResponse {
|
|
|
31
40
|
return responseData;
|
|
32
41
|
}
|
|
33
42
|
|
|
43
|
+
// @ts-ignore
|
|
44
|
+
__reactstandin__regenerateByEval(key, code) {
|
|
45
|
+
// @ts-ignore
|
|
46
|
+
this[key] = eval(code);
|
|
47
|
+
}
|
|
48
|
+
|
|
34
49
|
}
|
|
35
50
|
|
|
36
51
|
exports.HttpClientResponse = HttpClientResponse;
|
|
@@ -131,6 +146,12 @@ class HttpClientRequestWrapper {
|
|
|
131
146
|
return new HttpClientRequestWrapper(fn);
|
|
132
147
|
}
|
|
133
148
|
|
|
149
|
+
// @ts-ignore
|
|
150
|
+
__reactstandin__regenerateByEval(key, code) {
|
|
151
|
+
// @ts-ignore
|
|
152
|
+
this[key] = eval(code);
|
|
153
|
+
}
|
|
154
|
+
|
|
134
155
|
}
|
|
135
156
|
|
|
136
157
|
exports.HttpClientRequestWrapper = HttpClientRequestWrapper;
|
|
@@ -237,8 +258,8 @@ class HttpClient {
|
|
|
237
258
|
if (serverResponse != undefined) {
|
|
238
259
|
var _ref, _serverResponse$Messa;
|
|
239
260
|
|
|
240
|
-
//
|
|
241
|
-
|
|
261
|
+
throw new HttpError( // eslint-disable-next-line @typescript-eslint/no-unsafe-argument
|
|
262
|
+
(_ref = (_serverResponse$Messa = serverResponse.Message) !== null && _serverResponse$Messa !== void 0 ? _serverResponse$Messa : serverResponse.message) !== null && _ref !== void 0 ? _ref : serverResponse.Error, response.status);
|
|
242
263
|
}
|
|
243
264
|
|
|
244
265
|
throw new HttpError(errorText, response.status);
|
|
@@ -336,6 +357,12 @@ class HttpClient {
|
|
|
336
357
|
return fetchWithOptions;
|
|
337
358
|
}
|
|
338
359
|
|
|
360
|
+
// @ts-ignore
|
|
361
|
+
__reactstandin__regenerateByEval(key, code) {
|
|
362
|
+
// @ts-ignore
|
|
363
|
+
this[key] = eval(code);
|
|
364
|
+
}
|
|
365
|
+
|
|
339
366
|
}
|
|
340
367
|
|
|
341
368
|
exports.HttpClient = HttpClient;
|
|
@@ -348,5 +375,36 @@ class HttpError extends Error {
|
|
|
348
375
|
this.statusCode = statusCode;
|
|
349
376
|
}
|
|
350
377
|
|
|
378
|
+
// @ts-ignore
|
|
379
|
+
__reactstandin__regenerateByEval(key, code) {
|
|
380
|
+
// @ts-ignore
|
|
381
|
+
this[key] = eval(code);
|
|
382
|
+
}
|
|
383
|
+
|
|
351
384
|
}
|
|
352
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL0NvbW1vbi9IdHRwQ2xpZW50L0h0dHBDbGllbnQudHMiXSwibmFtZXMiOlsidHJpbVRyYWlsaW5nU2xhc2giLCJ1cmwiLCJzbGljZSIsInRyaW1MZWFkaW5nU2xhc2giLCJIdHRwQ2xpZW50UmVzcG9uc2UiLCJjb25zdHJ1Y3RvciIsImZldGNoUmVzcG9uc2UiLCJzdGF0dXMiLCJqc29uIiwicmVzcG9uc2VEYXRhIiwiSHR0cENsaWVudFJlcXVlc3RXcmFwcGVyIiwiZXhlY3V0ZSIsImV4ZWN1dGVSZXF1ZXN0IiwiYWNjZXB0Q29kZXMiLCJxdWVyeVBhcmFtcyIsInNpZ25hbCIsImJvZHlGYWN0b3J5IiwiY29udGVudFR5cGUiLCJ0aGVuIiwiYXJncyIsInJlc3VsdFByb21pc2UiLCJyZXN1bHQiLCJjcmVhdGVDb25maWciLCJ3aXRoQWJvcnRTaWduYWwiLCJ3aXRoQ29udGVudFR5cGUiLCJ3aXRoQm9keUZyb21CdWZmZXIiLCJib2R5IiwidW5kZWZpbmVkIiwid2l0aEpzb25Cb2R5Iiwic2VyaWFsaXphYmxlQm9keSIsIkpTT04iLCJzdHJpbmdpZnkiLCJ3aXRoUXVlcnlQYXJhbXMiLCJ3aXRoUmF3Qm9keSIsImFjY2VwdENvZGUiLCJjb2RlIiwicHVzaCIsImNyZWF0ZSIsImZuIiwiSHR0cENsaWVudCIsImZldGNoSW1wbCIsImJhc2VVcmwiLCJhdXRoZW50aWNhdGlvblByb3ZpZGVyIiwiZGVmYXVsdFF1ZXJ5UGFyYW1zIiwiZGVmYXVsdFBhcmFtcyIsImdldCIsIm1ldGhvZCIsInBvc3QiLCJwdXQiLCJwYXRjaCIsImRlbGV0ZSIsImNvbmZpZyIsImZldGNoVXJsIiwicmVxdWVzdCIsImFwcGVuZERlZmF1bHRSZXF1ZXN0SGVhZGVycyIsIkludmFsaWRBcmd1bWVudEVycm9yIiwicmVzcG9uc2UiLCJjaGVja1N0YXR1cyIsIm9wdGlvbnMiLCJoZWFkZXJzIiwicGF0aCIsInBhcmFtcyIsInJlc3VsdFBhcmFtcyIsImluY2x1ZGVzIiwiT2JqZWN0Iiwia2V5cyIsImxlbmd0aCIsIk5vdFN1cHBvcnRlZEVycm9yIiwiY3JlYXRlUXVlcnlTdHJpbmciLCJlcnJvclRleHQiLCJ0ZXh0Iiwic2VydmVyUmVzcG9uc2UiLCJwYXJzZSIsImUiLCJIdHRwRXJyb3IiLCJNZXNzYWdlIiwibWVzc2FnZSIsIkVycm9yIiwicG9zdFN5bmMiLCJkYXRhIiwiWE1MSHR0cFJlcXVlc3QiLCJvcGVuIiwid2l0aENyZWRlbnRpYWxzIiwic2V0UmVxdWVzdEhlYWRlciIsInNlbmQiLCJtYWtlUGFyYW1WYWx1ZVN0cmluZyIsInBhcmFtIiwidmFsdWUiLCJlbmNvZGVVUklDb21wb25lbnQiLCJwYXJhbXMyIiwibWFwIiwia2V5IiwidG9TdHJpbmciLCJBcnJheSIsImlzQXJyYXkiLCJpdGVtIiwiZmlsdGVyIiwieCIsImpvaW4iLCJjcmVhdGVGZXRjaEltcGwiLCJmZXRjaFdpdGhPcHRpb25zIiwiaW5wdXQiLCJpbml0IiwicmVxdWVzdEluaXQiLCJjYWNoZSIsImNyZWRlbnRpYWxzIiwiaW50ZWdyaXR5Iiwia2VlcGFsaXZlIiwibW9kZSIsInJlZGlyZWN0IiwicmVmZXJyZXIiLCJyZWZlcnJlclBvbGljeSIsInN0YXR1c0NvZGUiLCJuYW1lIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7O0FBWUEsU0FBU0EsaUJBQVQsQ0FBMkJDLEdBQTNCLEVBQWdEO0FBQzVDLFNBQU9BLEdBQUcsQ0FBQ0MsS0FBSixDQUFVLENBQUMsQ0FBWCxNQUFrQixHQUFsQixHQUF3QkQsR0FBRyxDQUFDQyxLQUFKLENBQVUsQ0FBVixFQUFhLENBQUMsQ0FBZCxDQUF4QixHQUEyQ0QsR0FBbEQ7QUFDSDs7QUFFRCxTQUFTRSxnQkFBVCxDQUEwQkYsR0FBMUIsRUFBK0M7QUFDM0MsU0FBT0EsR0FBRyxDQUFDLENBQUQsQ0FBSCxLQUFXLEdBQVgsR0FBaUJBLEdBQUcsQ0FBQ0MsS0FBSixDQUFVLENBQVYsQ0FBakIsR0FBZ0NELEdBQXZDO0FBQ0g7O0FBWU0sTUFBTUcsa0JBQU4s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dUQsS0FBSyxDQUFDdkQsTUFaYTtBQWEzQjhELFVBQUFBLElBQUksRUFBRVAsS0FBSyxDQUFDTyxJQWJlO0FBYzNCQyxVQUFBQSxRQUFRLEVBQUVSLEtBQUssQ0FBQ1EsUUFkVztBQWUzQkMsVUFBQUEsUUFBUSxFQUFFVCxLQUFLLENBQUNTLFFBZlc7QUFnQjNCQyxVQUFBQSxjQUFjLEVBQUVWLEtBQUssQ0FBQ1U7QUFoQkssU0FBL0I7QUFrQkFSLFFBQUFBLFdBQVcsR0FBRyxLQUFLN0Qsc0JBQUwsQ0FBNEI2RCxXQUE1QixDQUFkO0FBQ0EsZUFBTyxLQUFLL0QsU0FBTCxDQUFlWSxRQUFmLEVBQXlCbUQsV0FBekIsQ0FBUDtBQUNIO0FBQ0osS0FqQ0Q7O0FBa0NBLFdBQU9ILGdCQUFQO0FBQ0g7O0FBMUwwQzs7OztBQTZML0MsTUFBTTFCLFNBQU4sU0FBd0JHLEtBQXhCLENBQThCO0FBR25CeEUsRUFBQUEsV0FBVyxDQUFDdUUsT0FBRCxFQUFrQm9DLFVBQWxCLEVBQXNDO0FBQ3BELFVBQU1wQyxPQUFOO0FBRG9ELFNBRnhDb0MsVUFFd0M7QUFFcEQsU0FBS0MsSUFBTCxHQUFZLFdBQVo7QUFDQSxTQUFLRCxVQUFMLEdBQWtCQSxVQUFsQjtBQUNIOztBQVB5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEludmFsaWRBcmd1bWVudEVycm9yLCBOb3RTdXBwb3J0ZWRFcnJvciB9IGZyb20gXCIuLi9FcnJvcnNcIjtcblxuaW1wb3J0IHsgRmV0Y2ggfSBmcm9tIFwiLi9GZXRjaEltcGxlbWVudGF0aW9uL0ZldGNoXCI7XG5pbXBvcnQge1xuICAgIEh0dHBTdGF0dXNDb2RlLFxuICAgIElIdHRwQ2xpZW50LFxuICAgIElIdHRwQ2xpZW50UmVxdWVzdFdyYXBwZXIsXG4gICAgSUh0dHBDbGllbnRSZXNwb25zZSxcbiAgICBRdWVyeVBhcmFtc09iamVjdCxcbn0gZnJvbSBcIi4vSUh0dHBDbGllbnRcIjtcbmltcG9ydCB7IEh0dHBDbGllbnRBdXRoZW50aWNhdGlvblByb3ZpZGVyIH0gZnJvbSBcIi4vSHR0cENsaWVudEF1dGhlbnRpY2F0aW9uUHJvdmlkZXJcIjtcblxuZnVuY3Rpb24gdHJpbVRyYWlsaW5nU2xhc2godXJsOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiB1cmwuc2xpY2UoLTEpID09PSBcIi9cIiA/IHVybC5zbGljZSgwLCAtMSkgOiB1cmw7XG59XG5cbmZ1bmN0aW9uIHRyaW1MZWFkaW5nU2xhc2godXJsOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiB1cmxbMF0gPT09IFwiL1wiID8gdXJsLnNsaWNlKDEpIDogdXJsO1xufVxuXG50eXBlIEJvZHlGYWN0b3J5ID0gKCkgPT4gQm9keUluaXQgfCBudWxsO1xuXG5pbnRlcmZhY2UgSUh0dHBDbGllbnRSZXF1ZXN0Q29uZmlnIHtcbiAgICBzaWduYWw/OiBBYm9ydFNpZ25hbDtcbiAgICBib2R5RmFjdG9yeT86IEJvZHlGYWN0b3J5O1xuICAgIGFjY2VwdENvZGVzOiBIdHRwU3RhdHVzQ29kZVtdO1xuICAgIHF1ZXJ5UGFyYW1zOiBRdWVyeVBhcmFtc09iamVjdDtcbiAgICBjb250ZW50VHlwZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGNsYXNzIEh0dHBDbGllbnRSZXNwb25zZSBpbXBsZW1lbnRzIElIdHRwQ2xpZW50UmVzcG9uc2Uge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZmV0Y2hSZXNwb25zZTogUmVzcG9uc2U7XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IoZmV0Y2hSZXNwb25zZTogUmVzcG9uc2UpIHtcbiAgICAgICAgdGhpcy5mZXRjaFJlc3BvbnNlID0gZmV0Y2hSZXNwb25zZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHN0YXR1cygpOiBIdHRwU3RhdHVzQ29kZSB7XG4gICAgICAgIHJldHVybiB0aGlzLmZldGNoUmVzcG9uc2Uuc3RhdHVzO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBqc29uPFQ+KCk6IFByb21pc2U8VD4ge1xuICAgICAgICBjb25zdCByZXNwb25zZURhdGEgPSBhd2FpdCB0aGlzLmZldGNoUmVzcG9uc2UuanNvbigpO1xuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVuc2FmZS1yZXR1cm5cbiAgICAgICAgcmV0dXJuIHJlc3BvbnNlRGF0YTtcbiAgICB9XG59XG5cbnR5cGUgUmVxdWVzdEV4ZWN1dGlvbkZ1bmN0aW9uID0gKGNvbmZpZzogSUh0dHBDbGllbnRSZXF1ZXN0Q29uZmlnKSA9PiBQcm9taXNlPEh0dHBDbGllbnRSZXNwb25zZSB8IFJlc3BvbnNlPjtcblxuZXhwb3J0IGNsYXNzIEh0dHBDbGllbnRSZXF1ZXN0V3JhcHBlciBpbXBsZW1lbnRzIElIdHRwQ2xpZW50UmVxdWVzdFdyYXBwZXIge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZXhlY3V0ZVJlcXVlc3Q6IFJlcXVlc3RFeGVjdXRpb25GdW5jdGlvbjtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGFjY2VwdENvZGVzOiBIdHRwU3RhdHVzQ29kZVtdID0gW107XG4gICAgcHJpdmF0ZSBxdWVyeVBhcmFtczogUXVlcnlQYXJhbXNPYmplY3QgPSB7fTtcbiAgICBwcml2YXRlIHNpZ25hbDogdW5kZWZpbmVkIHwgQWJvcnRTaWduYWw7XG4gICAgcHJpdmF0ZSBib2R5RmFjdG9yeT86IEJvZHlGYWN0b3J5O1xuICAgIHByaXZhdGUgY29udGVudFR5cGU/OiBzdHJpbmc7XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IoZXhlY3V0ZTogUmVxdWVzdEV4ZWN1dGlvbkZ1bmN0aW9uKSB7XG4gICAgICAgIHRoaXMuZXhlY3V0ZVJlcXVlc3QgPSBleGVjdXRlO1xuICAgIH1cblxuICAgIHB1YmxpYyB3aXRoQWJvcnRTaWduYWwoc2lnbmFsOiB1bmRlZmluZWQgfCBBYm9ydFNpZ25hbCk6IHRoaXMge1xuICAgICAgICB0aGlzLnNpZ25hbCA9IHNpZ25hbDtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcHVibGljIHdpdGhDb250ZW50VHlwZShjb250ZW50VHlwZTogc3RyaW5nKTogdGhpcyB7XG4gICAgICAgIHRoaXMuY29udGVudFR5cGUgPSBjb250ZW50VHlwZTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcHVibGljIHdpdGhCb2R5RnJvbUJ1ZmZlcihib2R5OiBmYWxzZSB8IEJ1ZmZlciB8IHVuZGVmaW5lZCk6IHRoaXMge1xuICAgICAgICBpZiAoYm9keSA9PT0gZmFsc2UgfHwgYm9keSA9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuYm9keUZhY3RvcnkgPSAoKSA9PiBib2R5O1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aEpzb25Cb2R5KHNlcmlhbGl6YWJsZUJvZHk6IHVua25vd24gfCB7fSB8IHVua25vd25bXSB8IHVuZGVmaW5lZCk6IHRoaXMge1xuICAgICAgICBpZiAoc2VyaWFsaXphYmxlQm9keSAhPT0gZmFsc2UgJiYgc2VyaWFsaXphYmxlQm9keSAhPSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRoaXMuYm9keUZhY3RvcnkgPSAoKSA9PiBKU09OLnN0cmluZ2lmeShzZXJpYWxpemFibGVCb2R5KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aFF1ZXJ5UGFyYW1zKHF1ZXJ5UGFyYW1zOiBRdWVyeVBhcmFtc09iamVjdCB8IGZhbHNlIHwgdW5kZWZpbmVkKTogdGhpcyB7XG4gICAgICAgIGlmIChxdWVyeVBhcmFtcykge1xuICAgICAgICAgICAgdGhpcy5xdWVyeVBhcmFtcyA9IHtcbiAgICAgICAgICAgICAgICAuLi50aGlzLnF1ZXJ5UGFyYW1zLFxuICAgICAgICAgICAgICAgIC4uLnF1ZXJ5UGFyYW1zLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aFJhd0JvZHkoYm9keTogQnVmZmVyIHwgc3RyaW5nIHwgZmFsc2UgfCB1bmRlZmluZWQpOiB0aGlzIHtcbiAgICAgICAgaWYgKGJvZHkgIT09IGZhbHNlICYmIGJvZHkgIT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB0aGlzLmJvZHlGYWN0b3J5ID0gKCkgPT4gYm9keTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMganNvbjxUPigpOiBQcm9taXNlPFQ+IHtcbiAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcztcbiAgICAgICAgcmV0dXJuIHJlc3VsdC5qc29uPFQ+KCk7XG4gICAgfVxuXG4gICAgcHVibGljIGFjY2VwdENvZGUoY29kZTogSHR0cFN0YXR1c0NvZGUpOiB0aGlzIHtcbiAgICAgICAgdGhpcy5hY2NlcHRDb2Rlcy5wdXNoKGNvZGUpO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVhZG9ubHkgdGhlbjogUHJvbWlzZTxIdHRwQ2xpZW50UmVzcG9uc2U+W1widGhlblwiXSA9ICguLi5hcmdzKSA9PiB7XG4gICAgICAgIGNvbnN0IHJlc3VsdFByb21pc2UgPSAoYXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5leGVjdXRlUmVxdWVzdCh0aGlzLmNyZWF0ZUNvbmZpZygpKTtcbiAgICAgICAgICAgIGlmIChyZXN1bHQgaW5zdGFuY2VvZiBIdHRwQ2xpZW50UmVzcG9uc2UpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IEh0dHBDbGllbnRSZXNwb25zZShyZXN1bHQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KSgpO1xuICAgICAgICByZXR1cm4gcmVzdWx0UHJvbWlzZS50aGVuKC4uLmFyZ3MpO1xuICAgIH07XG5cbiAgICBwcml2YXRlIGNyZWF0ZUNvbmZpZygpOiBJSHR0cENsaWVudFJlcXVlc3RDb25maWcge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgc2lnbmFsOiB0aGlzLnNpZ25hbCxcbiAgICAgICAgICAgIGJvZHlGYWN0b3J5OiB0aGlzLmJvZHlGYWN0b3J5LFxuICAgICAgICAgICAgYWNjZXB0Q29kZXM6IHRoaXMuYWNjZXB0Q29kZXMsXG4gICAgICAgICAgICBxdWVyeVBhcmFtczogdGhpcy5xdWVyeVBhcmFtcyxcbiAgICAgICAgICAgIGNvbnRlbnRUeXBlOiB0aGlzLmNvbnRlbnRUeXBlLFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgY3JlYXRlKGZuOiBSZXF1ZXN0RXhlY3V0aW9uRnVuY3Rpb24pOiBIdHRwQ2xpZW50UmVxdWVzdFdyYXBwZXIge1xuICAgICAgICByZXR1cm4gbmV3IEh0dHBDbGllbnRSZXF1ZXN0V3JhcHBlcihmbik7XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgSHR0cENsaWVudCBpbXBsZW1lbnRzIElIdHRwQ2xpZW50IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGZldGNoSW1wbDogRmV0Y2g7XG4gICAgcHJpdmF0ZSByZWFkb25seSBiYXNlVXJsOiB1bmRlZmluZWQgfCBzdHJpbmc7XG4gICAgcHJpdmF0ZSByZWFkb25seSBhdXRoZW50aWNhdGlvblByb3ZpZGVyOiBIdHRwQ2xpZW50QXV0aGVudGljYXRpb25Qcm92aWRlcjtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRlZmF1bHRQYXJhbXM/OiBRdWVyeVBhcmFtc09iamVjdCA9IHt9O1xuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgICAgICBmZXRjaEltcGw6IEZldGNoLFxuICAgICAgICBiYXNlVXJsOiB1bmRlZmluZWQgfCBzdHJpbmcsXG4gICAgICAgIGF1dGhlbnRpY2F0aW9uUHJvdmlkZXI6IEh0dHBDbGllbnRBdXRoZW50aWNhdGlvblByb3ZpZGVyLFxuICAgICAgICBkZWZhdWx0UXVlcnlQYXJhbXM/OiBRdWVyeVBhcmFtc09iamVjdFxuICAgICkge1xuICAgICAgICB0aGlzLmZldGNoSW1wbCA9IGZldGNoSW1wbDtcbiAgICAgICAgdGhpcy5iYXNlVXJsID0gYmFzZVVybCA9PSB1bmRlZmluZWQgPyBiYXNlVXJsIDogdHJpbVRyYWlsaW5nU2xhc2goYmFzZVVybCk7XG4gICAgICAgIHRoaXMuZGVmYXVsdFBhcmFtcyA9IGRlZmF1bHRRdWVyeVBhcmFtcztcbiAgICAgICAgdGhpcy5hdXRoZW50aWNhdGlvblByb3ZpZGVyID0gYXV0aGVudGljYXRpb25Qcm92aWRlcjtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0KHVybDogc3RyaW5nKTogSUh0dHBDbGllbnRSZXF1ZXN0V3JhcHBlciB7XG4gICAgICAgIHJldHVybiB0aGlzLm1ldGhvZChcIkdFVFwiKSh1cmwpO1xuICAgIH1cblxuICAgIHB1YmxpYyBwb3N0KHVybDogc3RyaW5nKTogSUh0dHBDbGllbnRSZXF1ZXN0V3JhcHBlciB7XG4gICAgICAgIHJldHVybiB0aGlzLm1ldGhvZChcIlBPU1RcIikodXJsKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcHV0KHVybDogc3RyaW5nKTogSUh0dHBDbGllbnRSZXF1ZXN0V3JhcHBlciB7XG4gICAgICAgIHJldHVybiB0aGlzLm1ldGhvZChcIlBVVFwiKSh1cmwpO1xuICAgIH1cblxuICAgIHB1YmxpYyBwYXRjaCh1cmw6IHN0cmluZyk6IElIdHRwQ2xpZW50UmVxdWVzdFdyYXBwZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5tZXRob2QoXCJQQVRDSFwiKSh1cmwpO1xuICAgIH1cblxuICAgIHB1YmxpYyBkZWxldGUodXJsOiBzdHJpbmcpOiBJSHR0cENsaWVudFJlcXVlc3RXcmFwcGVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubWV0aG9kKFwiREVMRVRFXCIpKHVybCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBtZXRob2QobWV0aG9kOiBcIkdFVFwiIHwgXCJQT1NUXCIgfCBcIlBVVFwiIHwgXCJQQVRDSFwiIHwgXCJERUxFVEVcIik6ICh1cmw6IHN0cmluZykgPT4gSUh0dHBDbGllbnRSZXF1ZXN0V3JhcHBlciB7XG4gICAgICAgIHJldHVybiAodXJsOiBzdHJpbmcpID0+XG4gICAgICAgICAgICBIdHRwQ2xpZW50UmVxdWVzdFdyYXBwZXIuY3JlYXRlKGFzeW5jIGNvbmZpZyA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgZmV0Y2hVcmwgPSB0aGlzLnVybCh1cmwsIGNvbmZpZy5xdWVyeVBhcmFtcyk7XG4gICAgICAgICAgICAgICAgbGV0IHJlcXVlc3QgPSB0aGlzLmFwcGVuZERlZmF1bHRSZXF1ZXN0SGVhZGVycyh7IG1ldGhvZDogbWV0aG9kIH0sIGNvbmZpZy5jb250ZW50VHlwZSk7XG4gICAgICAgICAgICAgICAgcmVxdWVzdCA9IHRoaXMuYXV0aGVudGljYXRpb25Qcm92aWRlcihyZXF1ZXN0KTtcbiAgICAgICAgICAgICAgICBpZiAoY29uZmlnLnNpZ25hbCkge1xuICAgICAgICAgICAgICAgICAgICByZXF1ZXN0LnNpZ25hbCA9IGNvbmZpZy5zaWduYWw7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChjb25maWcuYm9keUZhY3RvcnkpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKG1ldGhvZCA9PT0gXCJHRVRcIikge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKFwibWV0aG9kXCIsIFwiQm9keSBpcyBub3QgYWxsb3dlZCBmb3IgR0VUIHJlcXVlc3RzXCIpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJlcXVlc3QuYm9keSA9IGNvbmZpZy5ib2R5RmFjdG9yeSgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuZmV0Y2hJbXBsKGZldGNoVXJsLCByZXF1ZXN0KTtcbiAgICAgICAgICAgICAgICBhd2FpdCB0aGlzLmNoZWNrU3RhdHVzKHJlc3BvbnNlLCBjb25maWcuYWNjZXB0Q29kZXMpO1xuICAgICAgICAgICAgICAgIHJldHVybiByZXNwb25zZTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgYXBwZW5kRGVmYXVsdFJlcXVlc3RIZWFkZXJzKG9wdGlvbnM6IFJlcXVlc3RJbml0LCBjb250ZW50VHlwZT86IHVuZGVmaW5lZCB8IHN0cmluZyk6IFJlcXVlc3RJbml0IHtcbiAgICAgICAgb3B0aW9ucy5oZWFkZXJzID0gb3B0aW9ucy5oZWFkZXJzID8/IHt9O1xuICAgICAgICBvcHRpb25zLmhlYWRlcnNbXCJDb250ZW50LVR5cGVcIl0gPSBjb250ZW50VHlwZSA/PyBcImFwcGxpY2F0aW9uL2pzb25cIjtcbiAgICAgICAgb3B0aW9ucy5oZWFkZXJzW1wiQ2FjaGUtQ29udHJvbFwiXSA9IFwibm8tY2FjaGUsIG5vLXN0b3JlXCI7XG4gICAgICAgIG9wdGlvbnMuaGVhZGVyc1tcIlByYWdtYVwiXSA9IFwibm8tY2FjaGVcIjtcbiAgICAgICAgb3B0aW9ucy5oZWFkZXJzW1wiRXhwaXJlc1wiXSA9IFwiMFwiO1xuICAgICAgICByZXR1cm4gb3B0aW9ucztcbiAgICB9XG5cbiAgICBwdWJsaWMgdXJsKHBhdGg6IHN0cmluZywgcGFyYW1zOiB1bmRlZmluZWQgfCBRdWVyeVBhcmFtc09iamVjdCk6IHN0cmluZyB7XG4gICAgICAgIGxldCByZXN1bHQgPSBwYXRoO1xuICAgICAgICBpZiAodGhpcy5iYXNlVXJsICE9IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgcmVzdWx0ID0gdGhpcy5iYXNlVXJsICsgXCIvXCIgKyB0cmltTGVhZGluZ1NsYXNoKHJlc3VsdCk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgcmVzdWx0UGFyYW1zID0geyAuLi50aGlzLmRlZmF1bHRQYXJhbXMsIC4uLnBhcmFtcyB9O1xuICAgICAgICBpZiAocGF0aC5pbmNsdWRlcyhcIj9cIikgJiYgcGFyYW1zICE9IHVuZGVmaW5lZCAmJiBPYmplY3Qua2V5cyhyZXN1bHRQYXJhbXMpLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBOb3RTdXBwb3J0ZWRFcnJvcihgUGFzc2luZyBzZWFyY2ggcGFyYW1zIGluIHVybCBhbmQgdmlhIHBhcmFtcyBvYmplY3QgaXMgbm90IHN1cHBvcnRlZGApO1xuICAgICAgICB9XG4gICAgICAgIHJlc3VsdCA9IHJlc3VsdCArIHRoaXMuY3JlYXRlUXVlcnlTdHJpbmcocmVzdWx0UGFyYW1zKTtcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFzeW5jIGNoZWNrU3RhdHVzKHJlc3BvbnNlOiBSZXNwb25zZSwgYWNjZXB0Q29kZXM/OiBIdHRwU3RhdHVzQ29kZVtdKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGlmICghKHJlc3BvbnNlLnN0YXR1cyA+PSAyMDAgJiYgcmVzcG9uc2Uuc3RhdHVzIDwgMzAwKSB8fCAoYWNjZXB0Q29kZXMgPz8gW10pLmluY2x1ZGVzKHJlc3BvbnNlLnN0YXR1cykpIHtcbiAgICAgICAgICAgIGNvbnN0IGVycm9yVGV4dCA9IGF3YWl0IHJlc3BvbnNlLnRleHQoKTtcbiAgICAgICAgICAgIGxldCBzZXJ2ZXJSZXNwb25zZTtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgc2VydmVyUmVzcG9uc2UgPSBKU09OLnBhcnNlKGVycm9yVGV4dCk7XG4gICAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICAgICAgc2VydmVyUmVzcG9uc2UgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoc2VydmVyUmVzcG9uc2UgIT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lIG5vLXVuc2FmZS1hbnlcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgSHR0cEVycm9yKFxuICAgICAgICAgICAgICAgICAgICBzZXJ2ZXJSZXNwb25zZS5NZXNzYWdlID8/IHNlcnZlclJlc3BvbnNlLm1lc3NhZ2UgPz8gc2VydmVyUmVzcG9uc2UuRXJyb3IsXG4gICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlLnN0YXR1c1xuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aHJvdyBuZXcgSHR0cEVycm9yKGVycm9yVGV4dCwgcmVzcG9uc2Uuc3RhdHVzKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBwb3N0U3luYyh1cmw6IHN0cmluZywgcGFyYW1zOiB1bmRlZmluZWQgfCBRdWVyeVBhcmFtc09iamVjdCwgZGF0YToge30pOiBIdHRwU3RhdHVzQ29kZSB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTtcbiAgICAgICAgcmVxdWVzdC5vcGVuKFwiUE9TVFwiLCB0aGlzLnVybCh1cmwsIHBhcmFtcyksIGZhbHNlKTtcbiAgICAgICAgcmVxdWVzdC53aXRoQ3JlZGVudGlhbHMgPSB0cnVlO1xuICAgICAgICByZXF1ZXN0LnNldFJlcXVlc3RIZWFkZXIoXCJDb250ZW50LVR5cGVcIiwgXCJhcHBsaWNhdGlvbi9qc29uOyBjaGFyc2V0PVVURi04XCIpO1xuICAgICAgICByZXF1ZXN0LnNlbmQoSlNPTi5zdHJpbmdpZnkoZGF0YSkpO1xuICAgICAgICByZXR1cm4gcmVxdWVzdC5zdGF0dXM7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBtYWtlUGFyYW1WYWx1ZVN0cmluZyhwYXJhbTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGAke2VuY29kZVVSSUNvbXBvbmVudChwYXJhbSl9PSR7ZW5jb2RlVVJJQ29tcG9uZW50KHZhbHVlKX1gO1xuICAgIH1cblxuICAgIHByaXZhdGUgY3JlYXRlUXVlcnlTdHJpbmcocGFyYW1zPzogUXVlcnlQYXJhbXNPYmplY3QpOiBzdHJpbmcge1xuICAgICAgICBpZiAocGFyYW1zID09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgcmV0dXJuIFwiXCI7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgcGFyYW1zMiA9IHBhcmFtcztcbiAgICAgICAgbGV0IHJlc3VsdCA9IE9iamVjdC5rZXlzKHBhcmFtcylcbiAgICAgICAgICAgIC5tYXAoa2V5ID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCB2YWx1ZSA9IHBhcmFtczJba2V5XTtcbiAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHZhbHVlID09PSBcInN0cmluZ1wiKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLm1ha2VQYXJhbVZhbHVlU3RyaW5nKGtleSwgdmFsdWUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHZhbHVlID09PSBcIm51bWJlclwiIHx8IHR5cGVvZiB2YWx1ZSA9PT0gXCJib29sZWFuXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMubWFrZVBhcmFtVmFsdWVTdHJpbmcoa2V5LCB2YWx1ZS50b1N0cmluZygpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB2YWx1ZVxuICAgICAgICAgICAgICAgICAgICAgICAgLm1hcChpdGVtID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodHlwZW9mIGl0ZW0gPT09IFwic3RyaW5nXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMubWFrZVBhcmFtVmFsdWVTdHJpbmcoa2V5LCBpdGVtKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBpdGVtID09PSBcIm51bWJlclwiKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLm1ha2VQYXJhbVZhbHVlU3RyaW5nKGtleSwgaXRlbS50b1N0cmluZygpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICAgICAuZmlsdGVyKHggPT4geCAhPSB1bmRlZmluZWQpXG4gICAgICAgICAgICAgICAgICAgICAgICAuam9pbihcIiZcIik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLmZpbHRlcih4ID0+IHggIT0gdW5kZWZpbmVkKVxuICAgICAgICAgICAgLmpvaW4oXCImXCIpO1xuICAgICAgICByZXN1bHQgPSByZXN1bHQgPyBcIj9cIiArIHJlc3VsdCA6IFwiXCI7XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfVxuXG4gICAgcHVibGljIGNyZWF0ZUZldGNoSW1wbCgpOiBGZXRjaCB7XG4gICAgICAgIGNvbnN0IGZldGNoV2l0aE9wdGlvbnMgPSAoaW5wdXQ6IFJlcXVlc3RJbmZvLCBpbml0PzogUmVxdWVzdEluaXQpOiBQcm9taXNlPFJlc3BvbnNlPiA9PiB7XG4gICAgICAgICAgICBpZiAodHlwZW9mIGlucHV0ID09PSBcInN0cmluZ1wiKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZmV0Y2hVcmwgPSB0aGlzLnVybChpbnB1dCwgdW5kZWZpbmVkKTtcbiAgICAgICAgICAgICAgICBpbml0ID0gaW5pdCA/PyB7fTtcbiAgICAgICAgICAgICAgICBpbml0LmhlYWRlcnMgPSBpbml0LmhlYWRlcnMgPz8ge307XG4gICAgICAgICAgICAgICAgaW5pdC5oZWFkZXJzW1wiQ2FjaGUtQ29udHJvbFwiXSA9IFwibm8tY2FjaGUsIG5vLXN0b3JlXCI7XG4gICAgICAgICAgICAgICAgaW5pdC5oZWFkZXJzW1wiUHJhZ21hXCJdID0gXCJuby1jYWNoZVwiO1xuICAgICAgICAgICAgICAgIGluaXQuaGVhZGVyc1tcIkV4cGlyZXNcIl0gPSBcIjBcIjtcbiAgICAgICAgICAgICAgICBpbml0ID0gdGhpcy5hdXRoZW50aWNhdGlvblByb3ZpZGVyKGluaXQpO1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmZldGNoSW1wbChmZXRjaFVybCwgaW5pdCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGNvbnN0IGZldGNoVXJsID0gdGhpcy51cmwoaW5wdXQudXJsLCB1bmRlZmluZWQpO1xuICAgICAgICAgICAgICAgIGxldCByZXF1ZXN0SW5pdDogUmVxdWVzdEluaXQgPSB7XG4gICAgICAgICAgICAgICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIFtcIkNhY2hlLUNvbnRyb2xcIl06IFwibm8tY2FjaGUsIG5vLXN0b3JlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICBbXCJQcmFnbWFcIl06IFwibm8tY2FjaGVcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIFtcIkV4cGlyZXNcIl06IFwiMFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgLi4uaW5wdXQuaGVhZGVycyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgc2lnbmFsOiBpbnB1dC5zaWduYWwsXG4gICAgICAgICAgICAgICAgICAgIGNhY2hlOiBpbnB1dC5jYWNoZSxcbiAgICAgICAgICAgICAgICAgICAgY3JlZGVudGlhbHM6IGlucHV0LmNyZWRlbnRpYWxzLFxuICAgICAgICAgICAgICAgICAgICBpbnRlZ3JpdHk6IGlucHV0LmludGVncml0eSxcbiAgICAgICAgICAgICAgICAgICAga2VlcGFsaXZlOiBpbnB1dC5rZWVwYWxpdmUsXG4gICAgICAgICAgICAgICAgICAgIG1ldGhvZDogaW5wdXQubWV0aG9kLFxuICAgICAgICAgICAgICAgICAgICBtb2RlOiBpbnB1dC5tb2RlLFxuICAgICAgICAgICAgICAgICAgICByZWRpcmVjdDogaW5wdXQucmVkaXJlY3QsXG4gICAgICAgICAgICAgICAgICAgIHJlZmVycmVyOiBpbnB1dC5yZWZlcnJlcixcbiAgICAgICAgICAgICAgICAgICAgcmVmZXJyZXJQb2xpY3k6IGlucHV0LnJlZmVycmVyUG9saWN5LFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgcmVxdWVzdEluaXQgPSB0aGlzLmF1dGhlbnRpY2F0aW9uUHJvdmlkZXIocmVxdWVzdEluaXQpO1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmZldGNoSW1wbChmZXRjaFVybCwgcmVxdWVzdEluaXQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgICAgICByZXR1cm4gZmV0Y2hXaXRoT3B0aW9ucztcbiAgICB9XG59XG5cbmNsYXNzIEh0dHBFcnJvciBleHRlbmRzIEVycm9yIHtcbiAgICBwdWJsaWMgcmVhZG9ubHkgc3RhdHVzQ29kZTogbnVtYmVyO1xuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKG1lc3NhZ2U6IHN0cmluZywgc3RhdHVzQ29kZTogbnVtYmVyKSB7XG4gICAgICAgIHN1cGVyKG1lc3NhZ2UpO1xuICAgICAgICB0aGlzLm5hbWUgPSBcIkh0dHBFcnJvclwiO1xuICAgICAgICB0aGlzLnN0YXR1c0NvZGUgPSBzdGF0dXNDb2RlO1xuICAgIH1cbn1cbiJdfQ==
|
|
385
|
+
|
|
386
|
+
exports.HttpError = HttpError;
|
|
387
|
+
;
|
|
388
|
+
|
|
389
|
+
(function () {
|
|
390
|
+
var reactHotLoader = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default : undefined;
|
|
391
|
+
|
|
392
|
+
if (!reactHotLoader) {
|
|
393
|
+
return;
|
|
394
|
+
}
|
|
395
|
+
|
|
396
|
+
reactHotLoader.register(trimTrailingSlash, "trimTrailingSlash", "C:\\buildAgent\\work\\8df8f1edd755969c\\Common\\HttpClient\\HttpClient.ts");
|
|
397
|
+
reactHotLoader.register(trimLeadingSlash, "trimLeadingSlash", "C:\\buildAgent\\work\\8df8f1edd755969c\\Common\\HttpClient\\HttpClient.ts");
|
|
398
|
+
reactHotLoader.register(HttpClientResponse, "HttpClientResponse", "C:\\buildAgent\\work\\8df8f1edd755969c\\Common\\HttpClient\\HttpClient.ts");
|
|
399
|
+
reactHotLoader.register(HttpClientRequestWrapper, "HttpClientRequestWrapper", "C:\\buildAgent\\work\\8df8f1edd755969c\\Common\\HttpClient\\HttpClient.ts");
|
|
400
|
+
reactHotLoader.register(HttpClient, "HttpClient", "C:\\buildAgent\\work\\8df8f1edd755969c\\Common\\HttpClient\\HttpClient.ts");
|
|
401
|
+
reactHotLoader.register(HttpError, "HttpError", "C:\\buildAgent\\work\\8df8f1edd755969c\\Common\\HttpClient\\HttpClient.ts");
|
|
402
|
+
})();
|
|
403
|
+
|
|
404
|
+
;
|
|
405
|
+
|
|
406
|
+
(function () {
|
|
407
|
+
var leaveModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.leaveModule : undefined;
|
|
408
|
+
leaveModule && leaveModule(module);
|
|
409
|
+
})();
|
|
410
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL0NvbW1vbi9IdHRwQ2xpZW50L0h0dHBDbGllbnQudHMiXSwibmFtZXMiOlsidHJpbVRyYWlsaW5nU2xhc2giLCJ1cmwiLCJzbGljZSIsInRyaW1MZWFkaW5nU2xhc2giLCJIdHRwQ2xpZW50UmVzcG9uc2UiLCJjb25zdHJ1Y3RvciIsImZldGNoUmVzcG9uc2UiLCJzdGF0dXMiLCJqc29uIiwicmVzcG9uc2VEYXRhIiwiSHR0cENsaWVudFJlcXVlc3RXcmFwcGVyIiwiZXhlY3V0ZSIsImV4ZWN1dGVSZXF1ZXN0IiwiYWNjZXB0Q29kZXMiLCJxdWVyeVBhcmFtcyIsInNpZ25hbCIsImJvZHlGYWN0b3J5IiwiY29udGVudFR5cGUiLCJ0aGVuIiwiYXJncyIsInJlc3VsdFByb21pc2UiLCJyZXN1bHQiLCJjcmVhdGVDb25maWciLCJ3aXRoQWJvcnRTaWduYWwiLCJ3aXRoQ29udGVudFR5cGUiLCJ3aXRoQm9keUZyb21CdWZmZXIiLCJib2R5IiwidW5kZWZpbmVkIiwid2l0aEpzb25Cb2R5Iiwic2VyaWFsaXphYmxlQm9keSIsIkpTT04iLCJzdHJpbmdpZnkiLCJ3aXRoUXVlcnlQYXJhbXMiLCJ3aXRoUmF3Qm9keSIsImFjY2VwdENvZGUiLCJjb2RlIiwicHVzaCIsImNyZWF0ZSIsImZuIiwiSHR0cENsaWVudCIsImZldGNoSW1wbCIsImJhc2VVcmwiLCJhdXRoZW50aWNhdGlvblByb3ZpZGVyIiwiZGVmYXVsdFF1ZXJ5UGFyYW1zIiwiZGVmYXVsdFBhcmFtcyIsImdldCIsIm1ldGhvZCIsInBvc3QiLCJwdXQiLCJwYXRjaCIsImRlbGV0ZSIsImNvbmZpZyIsImZldGNoVXJsIiwicmVxdWVzdCIsImFwcGVuZERlZmF1bHRSZXF1ZXN0SGVhZGVycyIsIkludmFsaWRBcmd1bWVudEVycm9yIiwicmVzcG9uc2UiLCJjaGVja1N0YXR1cyIsIm9wdGlvbnMiLCJoZWFkZXJzIiwicGF0aCIsInBhcmFtcyIsInJlc3VsdFBhcmFtcyIsImluY2x1ZGVzIiwiT2JqZWN0Iiwia2V5cyIsImxlbmd0aCIsIk5vdFN1cHBvcnRlZEVycm9yIiwiY3JlYXRlUXVlcnlTdHJpbmciLCJlcnJvclRleHQiLCJ0ZXh0Iiwic2VydmVyUmVzcG9uc2UiLCJwYXJzZSIsImUiLCJIdHRwRXJyb3IiLCJNZXNzYWdlIiwibWVzc2FnZSIsIkVycm9yIiwicG9zdFN5bmMiLCJkYXRhIiwiWE1MSHR0cFJlcXVlc3QiLCJvcGVuIiwid2l0aENyZWRlbnRpYWxzIiwic2V0UmVxdWVzdEhlYWRlciIsInNlbmQiLCJtYWtlUGFyYW1WYWx1ZVN0cmluZyIsInBhcmFtIiwidmFsdWUiLCJlbmNvZGVVUklDb21wb25lbnQiLCJwYXJhbXMyIiwibWFwIiwia2V5IiwidG9TdHJpbmciLCJBcnJheSIsImlzQXJyYXkiLCJpdGVtIiwiZmlsdGVyIiwieCIsImpvaW4iLCJjcmVhdGVGZXRjaEltcGwiLCJmZXRjaFdpdGhPcHRpb25zIiwiaW5wdXQiLCJpbml0IiwicmVxdWVzdEluaXQiLCJjYWNoZSIsImNyZWRlbnRpYWxzIiwiaW50ZWdyaXR5Iiwia2VlcGFsaXZlIiwibW9kZSIsInJlZGlyZWN0IiwicmVmZXJyZXIiLCJyZWZlcnJlclBvbGljeSIsInN0YXR1c0NvZGUiLCJuYW1lIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7Ozs7Ozs7Ozs7O0FBWUEsU0FBU0EsaUJBQVQsQ0FBMkJDLEdBQTNCLEVBQWdEO0FBQzVDLFNBQU9BLEdBQUcsQ0FBQ0MsS0FBSixDQUFVLENBQUMsQ0FBWCxNQUFrQixHQUFsQixHQUF3QkQsR0FBRyxDQUFDQyxLQUFKLENBQVUsQ0FBVixFQUFhLENBQUMsQ0FBZCxDQUF4QixHQUEyQ0QsR0FBbEQ7QUFDSDs7QUFFRCxTQUFTRSxnQkFBVCxDQUEwQkYsR0FBMUIsRUFBK0M7QUFDM0MsU0FBT0EsR0FBRyxDQUFDLENBQUQsQ0FBSCxLQUFXLEdBQVgsR0FBaUJBLEdBQUcsQ0FBQ0MsS0FBSixDQUFVLENBQVYsQ0FBakIsR0FBZ0NELEdBQXZDO0FBQ0g7O0FBWU0sTUFB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VlU7QUFXM0JDLFVBQUFBLFNBQVMsRUFBRU4sS0FBSyxDQUFDTSxTQVhVO0FBWTNCN0QsVUFBQUEsTUFBTSxFQUFFdUQsS0FBSyxDQUFDdkQsTUFaYTtBQWEzQjhELFVBQUFBLElBQUksRUFBRVAsS0FBSyxDQUFDTyxJQWJlO0FBYzNCQyxVQUFBQSxRQUFRLEVBQUVSLEtBQUssQ0FBQ1EsUUFkVztBQWUzQkMsVUFBQUEsUUFBUSxFQUFFVCxLQUFLLENBQUNTLFFBZlc7QUFnQjNCQyxVQUFBQSxjQUFjLEVBQUVWLEtBQUssQ0FBQ1U7QUFoQkssU0FBL0I7QUFrQkFSLFFBQUFBLFdBQVcsR0FBRyxLQUFLN0Qsc0JBQUwsQ0FBNEI2RCxXQUE1QixDQUFkO0FBQ0EsZUFBTyxLQUFLL0QsU0FBTCxDQUFlWSxRQUFmLEVBQXlCbUQsV0FBekIsQ0FBUDtBQUNIO0FBQ0osS0FqQ0Q7O0FBa0NBLFdBQU9ILGdCQUFQO0FBQ0g7O0FBMUwwQztBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBOzs7O0FBNkx4QyxNQUFNMUIsU0FBTixTQUF3QkcsS0FBeEIsQ0FBOEI7QUFHMUJ4RSxFQUFBQSxXQUFXLENBQUN1RSxPQUFELEVBQWtCb0MsVUFBbEIsRUFBc0M7QUFDcEQsVUFBTXBDLE9BQU47QUFEb0QsU0FGeENvQyxVQUV3QztBQUVwRCxTQUFLQyxJQUFMLEdBQVksV0FBWjtBQUNBLFNBQUtELFVBQUwsR0FBa0JBLFVBQWxCO0FBQ0g7O0FBUGdDO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQUE7Ozs7Ozs7Ozs7OzswQkE5VDVCaEgsaUI7MEJBSUFHLGdCOzBCQWNJQyxrQjswQkFvQkFNLHdCOzBCQTJGQTZCLFU7MEJBNkxBbUMsUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEludmFsaWRBcmd1bWVudEVycm9yLCBOb3RTdXBwb3J0ZWRFcnJvciB9IGZyb20gXCIuLi9FcnJvcnNcIjtcblxuaW1wb3J0IHsgRmV0Y2ggfSBmcm9tIFwiLi9GZXRjaEltcGxlbWVudGF0aW9uL0ZldGNoXCI7XG5pbXBvcnQge1xuICAgIEh0dHBTdGF0dXNDb2RlLFxuICAgIElIdHRwQ2xpZW50LFxuICAgIElIdHRwQ2xpZW50UmVxdWVzdFdyYXBwZXIsXG4gICAgSUh0dHBDbGllbnRSZXNwb25zZSxcbiAgICBRdWVyeVBhcmFtc09iamVjdCxcbn0gZnJvbSBcIi4vSUh0dHBDbGllbnRcIjtcbmltcG9ydCB7IEh0dHBDbGllbnRBdXRoZW50aWNhdGlvblByb3ZpZGVyIH0gZnJvbSBcIi4vSHR0cENsaWVudEF1dGhlbnRpY2F0aW9uUHJvdmlkZXJcIjtcblxuZnVuY3Rpb24gdHJpbVRyYWlsaW5nU2xhc2godXJsOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiB1cmwuc2xpY2UoLTEpID09PSBcIi9cIiA/IHVybC5zbGljZSgwLCAtMSkgOiB1cmw7XG59XG5cbmZ1bmN0aW9uIHRyaW1MZWFkaW5nU2xhc2godXJsOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiB1cmxbMF0gPT09IFwiL1wiID8gdXJsLnNsaWNlKDEpIDogdXJsO1xufVxuXG50eXBlIEJvZHlGYWN0b3J5ID0gKCkgPT4gQm9keUluaXQgfCBudWxsO1xuXG5pbnRlcmZhY2UgSUh0dHBDbGllbnRSZXF1ZXN0Q29uZmlnIHtcbiAgICBzaWduYWw/OiBBYm9ydFNpZ25hbDtcbiAgICBib2R5RmFjdG9yeT86IEJvZHlGYWN0b3J5O1xuICAgIGFjY2VwdENvZGVzOiBIdHRwU3RhdHVzQ29kZVtdO1xuICAgIHF1ZXJ5UGFyYW1zOiBRdWVyeVBhcmFtc09iamVjdDtcbiAgICBjb250ZW50VHlwZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGNsYXNzIEh0dHBDbGllbnRSZXNwb25zZSBpbXBsZW1lbnRzIElIdHRwQ2xpZW50UmVzcG9uc2Uge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZmV0Y2hSZXNwb25zZTogUmVzcG9uc2U7XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IoZmV0Y2hSZXNwb25zZTogUmVzcG9uc2UpIHtcbiAgICAgICAgdGhpcy5mZXRjaFJlc3BvbnNlID0gZmV0Y2hSZXNwb25zZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHN0YXR1cygpOiBIdHRwU3RhdHVzQ29kZSB7XG4gICAgICAgIHJldHVybiB0aGlzLmZldGNoUmVzcG9uc2Uuc3RhdHVzO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBqc29uPFQ+KCk6IFByb21pc2U8VD4ge1xuICAgICAgICBjb25zdCByZXNwb25zZURhdGEgPSBhd2FpdCB0aGlzLmZldGNoUmVzcG9uc2UuanNvbigpO1xuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVuc2FmZS1yZXR1cm5cbiAgICAgICAgcmV0dXJuIHJlc3BvbnNlRGF0YTtcbiAgICB9XG59XG5cbnR5cGUgUmVxdWVzdEV4ZWN1dGlvbkZ1bmN0aW9uID0gKGNvbmZpZzogSUh0dHBDbGllbnRSZXF1ZXN0Q29uZmlnKSA9PiBQcm9taXNlPEh0dHBDbGllbnRSZXNwb25zZSB8IFJlc3BvbnNlPjtcblxuZXhwb3J0IGNsYXNzIEh0dHBDbGllbnRSZXF1ZXN0V3JhcHBlciBpbXBsZW1lbnRzIElIdHRwQ2xpZW50UmVxdWVzdFdyYXBwZXIge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZXhlY3V0ZVJlcXVlc3Q6IFJlcXVlc3RFeGVjdXRpb25GdW5jdGlvbjtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGFjY2VwdENvZGVzOiBIdHRwU3RhdHVzQ29kZVtdID0gW107XG4gICAgcHJpdmF0ZSBxdWVyeVBhcmFtczogUXVlcnlQYXJhbXNPYmplY3QgPSB7fTtcbiAgICBwcml2YXRlIHNpZ25hbDogdW5kZWZpbmVkIHwgQWJvcnRTaWduYWw7XG4gICAgcHJpdmF0ZSBib2R5RmFjdG9yeT86IEJvZHlGYWN0b3J5O1xuICAgIHByaXZhdGUgY29udGVudFR5cGU/OiBzdHJpbmc7XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IoZXhlY3V0ZTogUmVxdWVzdEV4ZWN1dGlvbkZ1bmN0aW9uKSB7XG4gICAgICAgIHRoaXMuZXhlY3V0ZVJlcXVlc3QgPSBleGVjdXRlO1xuICAgIH1cblxuICAgIHB1YmxpYyB3aXRoQWJvcnRTaWduYWwoc2lnbmFsOiB1bmRlZmluZWQgfCBBYm9ydFNpZ25hbCk6IHRoaXMge1xuICAgICAgICB0aGlzLnNpZ25hbCA9IHNpZ25hbDtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcHVibGljIHdpdGhDb250ZW50VHlwZShjb250ZW50VHlwZTogc3RyaW5nKTogdGhpcyB7XG4gICAgICAgIHRoaXMuY29udGVudFR5cGUgPSBjb250ZW50VHlwZTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcHVibGljIHdpdGhCb2R5RnJvbUJ1ZmZlcihib2R5OiBmYWxzZSB8IEJ1ZmZlciB8IHVuZGVmaW5lZCk6IHRoaXMge1xuICAgICAgICBpZiAoYm9keSA9PT0gZmFsc2UgfHwgYm9keSA9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuYm9keUZhY3RvcnkgPSAoKSA9PiBib2R5O1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aEpzb25Cb2R5KHNlcmlhbGl6YWJsZUJvZHk6IHVua25vd24gfCB7fSB8IHVua25vd25bXSB8IHVuZGVmaW5lZCk6IHRoaXMge1xuICAgICAgICBpZiAoc2VyaWFsaXphYmxlQm9keSAhPT0gZmFsc2UgJiYgc2VyaWFsaXphYmxlQm9keSAhPSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRoaXMuYm9keUZhY3RvcnkgPSAoKSA9PiBKU09OLnN0cmluZ2lmeShzZXJpYWxpemFibGVCb2R5KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aFF1ZXJ5UGFyYW1zKHF1ZXJ5UGFyYW1zOiBRdWVyeVBhcmFtc09iamVjdCB8IGZhbHNlIHwgdW5kZWZpbmVkKTogdGhpcyB7XG4gICAgICAgIGlmIChxdWVyeVBhcmFtcykge1xuICAgICAgICAgICAgdGhpcy5xdWVyeVBhcmFtcyA9IHtcbiAgICAgICAgICAgICAgICAuLi50aGlzLnF1ZXJ5UGFyYW1zLFxuICAgICAgICAgICAgICAgIC4uLnF1ZXJ5UGFyYW1zLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aFJhd0JvZHkoYm9keTogQnVmZmVyIHwgc3RyaW5nIHwgZmFsc2UgfCB1bmRlZmluZWQpOiB0aGlzIHtcbiAgICAgICAgaWYgKGJvZHkgIT09IGZhbHNlICYmIGJvZHkgIT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB0aGlzLmJvZHlGYWN0b3J5ID0gKCkgPT4gYm9keTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMganNvbjxUPigpOiBQcm9taXNlPFQ+IHtcbiAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcztcbiAgICAgICAgcmV0dXJuIHJlc3VsdC5qc29uPFQ+KCk7XG4gICAgfVxuXG4gICAgcHVibGljIGFjY2VwdENvZGUoY29kZTogSHR0cFN0YXR1c0NvZGUpOiB0aGlzIHtcbiAgICAgICAgdGhpcy5hY2NlcHRDb2Rlcy5wdXNoKGNvZGUpO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVhZG9ubHkgdGhlbjogUHJvbWlzZTxIdHRwQ2xpZW50UmVzcG9uc2U+W1widGhlblwiXSA9ICguLi5hcmdzKSA9PiB7XG4gICAgICAgIGNvbnN0IHJlc3VsdFByb21pc2UgPSAoYXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5leGVjdXRlUmVxdWVzdCh0aGlzLmNyZWF0ZUNvbmZpZygpKTtcbiAgICAgICAgICAgIGlmIChyZXN1bHQgaW5zdGFuY2VvZiBIdHRwQ2xpZW50UmVzcG9uc2UpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IEh0dHBDbGllbnRSZXNwb25zZShyZXN1bHQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KSgpO1xuICAgICAgICByZXR1cm4gcmVzdWx0UHJvbWlzZS50aGVuKC4uLmFyZ3MpO1xuICAgIH07XG5cbiAgICBwcml2YXRlIGNyZWF0ZUNvbmZpZygpOiBJSHR0cENsaWVudFJlcXVlc3RDb25maWcge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgc2lnbmFsOiB0aGlzLnNpZ25hbCxcbiAgICAgICAgICAgIGJvZHlGYWN0b3J5OiB0aGlzLmJvZHlGYWN0b3J5LFxuICAgICAgICAgICAgYWNjZXB0Q29kZXM6IHRoaXMuYWNjZXB0Q29kZXMsXG4gICAgICAgICAgICBxdWVyeVBhcmFtczogdGhpcy5xdWVyeVBhcmFtcyxcbiAgICAgICAgICAgIGNvbnRlbnRUeXBlOiB0aGlzLmNvbnRlbnRUeXBlLFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgY3JlYXRlKGZuOiBSZXF1ZXN0RXhlY3V0aW9uRnVuY3Rpb24pOiBIdHRwQ2xpZW50UmVxdWVzdFdyYXBwZXIge1xuICAgICAgICByZXR1cm4gbmV3IEh0dHBDbGllbnRSZXF1ZXN0V3JhcHBlcihmbik7XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgSHR0cENsaWVudCBpbXBsZW1lbnRzIElIdHRwQ2xpZW50IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGZldGNoSW1wbDogRmV0Y2g7XG4gICAgcHJpdmF0ZSByZWFkb25seSBiYXNlVXJsOiB1bmRlZmluZWQgfCBzdHJpbmc7XG4gICAgcHJpdmF0ZSByZWFkb25seSBhdXRoZW50aWNhdGlvblByb3ZpZGVyOiBIdHRwQ2xpZW50QXV0aGVudGljYXRpb25Qcm92aWRlcjtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRlZmF1bHRQYXJhbXM/OiBRdWVyeVBhcmFtc09iamVjdCA9IHt9O1xuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgICAgICBmZXRjaEltcGw6IEZldGNoLFxuICAgICAgICBiYXNlVXJsOiB1bmRlZmluZWQgfCBzdHJpbmcsXG4gICAgICAgIGF1dGhlbnRpY2F0aW9uUHJvdmlkZXI6IEh0dHBDbGllbnRBdXRoZW50aWNhdGlvblByb3ZpZGVyLFxuICAgICAgICBkZWZhdWx0UXVlcnlQYXJhbXM/OiBRdWVyeVBhcmFtc09iamVjdFxuICAgICkge1xuICAgICAgICB0aGlzLmZldGNoSW1wbCA9IGZldGNoSW1wbDtcbiAgICAgICAgdGhpcy5iYXNlVXJsID0gYmFzZVVybCA9PSB1bmRlZmluZWQgPyBiYXNlVXJsIDogdHJpbVRyYWlsaW5nU2xhc2goYmFzZVVybCk7XG4gICAgICAgIHRoaXMuZGVmYXVsdFBhcmFtcyA9IGRlZmF1bHRRdWVyeVBhcmFtcztcbiAgICAgICAgdGhpcy5hdXRoZW50aWNhdGlvblByb3ZpZGVyID0gYXV0aGVudGljYXRpb25Qcm92aWRlcjtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0KHVybDogc3RyaW5nKTogSUh0dHBDbGllbnRSZXF1ZXN0V3JhcHBlciB7XG4gICAgICAgIHJldHVybiB0aGlzLm1ldGhvZChcIkdFVFwiKSh1cmwpO1xuICAgIH1cblxuICAgIHB1YmxpYyBwb3N0KHVybDogc3RyaW5nKTogSUh0dHBDbGllbnRSZXF1ZXN0V3JhcHBlciB7XG4gICAgICAgIHJldHVybiB0aGlzLm1ldGhvZChcIlBPU1RcIikodXJsKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcHV0KHVybDogc3RyaW5nKTogSUh0dHBDbGllbnRSZXF1ZXN0V3JhcHBlciB7XG4gICAgICAgIHJldHVybiB0aGlzLm1ldGhvZChcIlBVVFwiKSh1cmwpO1xuICAgIH1cblxuICAgIHB1YmxpYyBwYXRjaCh1cmw6IHN0cmluZyk6IElIdHRwQ2xpZW50UmVxdWVzdFdyYXBwZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5tZXRob2QoXCJQQVRDSFwiKSh1cmwpO1xuICAgIH1cblxuICAgIHB1YmxpYyBkZWxldGUodXJsOiBzdHJpbmcpOiBJSHR0cENsaWVudFJlcXVlc3RXcmFwcGVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubWV0aG9kKFwiREVMRVRFXCIpKHVybCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBtZXRob2QobWV0aG9kOiBcIkdFVFwiIHwgXCJQT1NUXCIgfCBcIlBVVFwiIHwgXCJQQVRDSFwiIHwgXCJERUxFVEVcIik6ICh1cmw6IHN0cmluZykgPT4gSUh0dHBDbGllbnRSZXF1ZXN0V3JhcHBlciB7XG4gICAgICAgIHJldHVybiAodXJsOiBzdHJpbmcpID0+XG4gICAgICAgICAgICBIdHRwQ2xpZW50UmVxdWVzdFdyYXBwZXIuY3JlYXRlKGFzeW5jIGNvbmZpZyA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgZmV0Y2hVcmwgPSB0aGlzLnVybCh1cmwsIGNvbmZpZy5xdWVyeVBhcmFtcyk7XG4gICAgICAgICAgICAgICAgbGV0IHJlcXVlc3QgPSB0aGlzLmFwcGVuZERlZmF1bHRSZXF1ZXN0SGVhZGVycyh7IG1ldGhvZDogbWV0aG9kIH0sIGNvbmZpZy5jb250ZW50VHlwZSk7XG4gICAgICAgICAgICAgICAgcmVxdWVzdCA9IHRoaXMuYXV0aGVudGljYXRpb25Qcm92aWRlcihyZXF1ZXN0KTtcbiAgICAgICAgICAgICAgICBpZiAoY29uZmlnLnNpZ25hbCkge1xuICAgICAgICAgICAgICAgICAgICByZXF1ZXN0LnNpZ25hbCA9IGNvbmZpZy5zaWduYWw7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChjb25maWcuYm9keUZhY3RvcnkpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKG1ldGhvZCA9PT0gXCJHRVRcIikge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKFwibWV0aG9kXCIsIFwiQm9keSBpcyBub3QgYWxsb3dlZCBmb3IgR0VUIHJlcXVlc3RzXCIpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJlcXVlc3QuYm9keSA9IGNvbmZpZy5ib2R5RmFjdG9yeSgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuZmV0Y2hJbXBsKGZldGNoVXJsLCByZXF1ZXN0KTtcbiAgICAgICAgICAgICAgICBhd2FpdCB0aGlzLmNoZWNrU3RhdHVzKHJlc3BvbnNlLCBjb25maWcuYWNjZXB0Q29kZXMpO1xuICAgICAgICAgICAgICAgIHJldHVybiByZXNwb25zZTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgYXBwZW5kRGVmYXVsdFJlcXVlc3RIZWFkZXJzKG9wdGlvbnM6IFJlcXVlc3RJbml0LCBjb250ZW50VHlwZT86IHVuZGVmaW5lZCB8IHN0cmluZyk6IFJlcXVlc3RJbml0IHtcbiAgICAgICAgb3B0aW9ucy5oZWFkZXJzID0gb3B0aW9ucy5oZWFkZXJzID8/IHt9O1xuICAgICAgICBvcHRpb25zLmhlYWRlcnNbXCJDb250ZW50LVR5cGVcIl0gPSBjb250ZW50VHlwZSA/PyBcImFwcGxpY2F0aW9uL2pzb25cIjtcbiAgICAgICAgb3B0aW9ucy5oZWFkZXJzW1wiQ2FjaGUtQ29udHJvbFwiXSA9IFwibm8tY2FjaGUsIG5vLXN0b3JlXCI7XG4gICAgICAgIG9wdGlvbnMuaGVhZGVyc1tcIlByYWdtYVwiXSA9IFwibm8tY2FjaGVcIjtcbiAgICAgICAgb3B0aW9ucy5oZWFkZXJzW1wiRXhwaXJlc1wiXSA9IFwiMFwiO1xuICAgICAgICByZXR1cm4gb3B0aW9ucztcbiAgICB9XG5cbiAgICBwdWJsaWMgdXJsKHBhdGg6IHN0cmluZywgcGFyYW1zOiB1bmRlZmluZWQgfCBRdWVyeVBhcmFtc09iamVjdCk6IHN0cmluZyB7XG4gICAgICAgIGxldCByZXN1bHQgPSBwYXRoO1xuICAgICAgICBpZiAodGhpcy5iYXNlVXJsICE9IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgcmVzdWx0ID0gdGhpcy5iYXNlVXJsICsgXCIvXCIgKyB0cmltTGVhZGluZ1NsYXNoKHJlc3VsdCk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgcmVzdWx0UGFyYW1zID0geyAuLi50aGlzLmRlZmF1bHRQYXJhbXMsIC4uLnBhcmFtcyB9O1xuICAgICAgICBpZiAocGF0aC5pbmNsdWRlcyhcIj9cIikgJiYgcGFyYW1zICE9IHVuZGVmaW5lZCAmJiBPYmplY3Qua2V5cyhyZXN1bHRQYXJhbXMpLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBOb3RTdXBwb3J0ZWRFcnJvcihgUGFzc2luZyBzZWFyY2ggcGFyYW1zIGluIHVybCBhbmQgdmlhIHBhcmFtcyBvYmplY3QgaXMgbm90IHN1cHBvcnRlZGApO1xuICAgICAgICB9XG4gICAgICAgIHJlc3VsdCA9IHJlc3VsdCArIHRoaXMuY3JlYXRlUXVlcnlTdHJpbmcocmVzdWx0UGFyYW1zKTtcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFzeW5jIGNoZWNrU3RhdHVzKHJlc3BvbnNlOiBSZXNwb25zZSwgYWNjZXB0Q29kZXM/OiBIdHRwU3RhdHVzQ29kZVtdKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGlmICghKHJlc3BvbnNlLnN0YXR1cyA+PSAyMDAgJiYgcmVzcG9uc2Uuc3RhdHVzIDwgMzAwKSB8fCAoYWNjZXB0Q29kZXMgPz8gW10pLmluY2x1ZGVzKHJlc3BvbnNlLnN0YXR1cykpIHtcbiAgICAgICAgICAgIGNvbnN0IGVycm9yVGV4dCA9IGF3YWl0IHJlc3BvbnNlLnRleHQoKTtcbiAgICAgICAgICAgIGxldCBzZXJ2ZXJSZXNwb25zZTtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgc2VydmVyUmVzcG9uc2UgPSBKU09OLnBhcnNlKGVycm9yVGV4dCk7XG4gICAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICAgICAgc2VydmVyUmVzcG9uc2UgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoc2VydmVyUmVzcG9uc2UgIT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEh0dHBFcnJvcihcbiAgICAgICAgICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnNhZmUtYXJndW1lbnRcbiAgICAgICAgICAgICAgICAgICAgc2VydmVyUmVzcG9uc2UuTWVzc2FnZSA/PyBzZXJ2ZXJSZXNwb25zZS5tZXNzYWdlID8/IHNlcnZlclJlc3BvbnNlLkVycm9yLFxuICAgICAgICAgICAgICAgICAgICByZXNwb25zZS5zdGF0dXNcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhyb3cgbmV3IEh0dHBFcnJvcihlcnJvclRleHQsIHJlc3BvbnNlLnN0YXR1cyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgcG9zdFN5bmModXJsOiBzdHJpbmcsIHBhcmFtczogdW5kZWZpbmVkIHwgUXVlcnlQYXJhbXNPYmplY3QsIGRhdGE6IHt9KTogSHR0cFN0YXR1c0NvZGUge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7XG4gICAgICAgIHJlcXVlc3Qub3BlbihcIlBPU1RcIiwgdGhpcy51cmwodXJsLCBwYXJhbXMpLCBmYWxzZSk7XG4gICAgICAgIHJlcXVlc3Qud2l0aENyZWRlbnRpYWxzID0gdHJ1ZTtcbiAgICAgICAgcmVxdWVzdC5zZXRSZXF1ZXN0SGVhZGVyKFwiQ29udGVudC1UeXBlXCIsIFwiYXBwbGljYXRpb24vanNvbjsgY2hhcnNldD1VVEYtOFwiKTtcbiAgICAgICAgcmVxdWVzdC5zZW5kKEpTT04uc3RyaW5naWZ5KGRhdGEpKTtcbiAgICAgICAgcmV0dXJuIHJlcXVlc3Quc3RhdHVzO1xuICAgIH1cblxuICAgIHByaXZhdGUgbWFrZVBhcmFtVmFsdWVTdHJpbmcocGFyYW06IHN0cmluZywgdmFsdWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBgJHtlbmNvZGVVUklDb21wb25lbnQocGFyYW0pfT0ke2VuY29kZVVSSUNvbXBvbmVudCh2YWx1ZSl9YDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNyZWF0ZVF1ZXJ5U3RyaW5nKHBhcmFtcz86IFF1ZXJ5UGFyYW1zT2JqZWN0KTogc3RyaW5nIHtcbiAgICAgICAgaWYgKHBhcmFtcyA9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHJldHVybiBcIlwiO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHBhcmFtczIgPSBwYXJhbXM7XG4gICAgICAgIGxldCByZXN1bHQgPSBPYmplY3Qua2V5cyhwYXJhbXMpXG4gICAgICAgICAgICAubWFwKGtleSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgdmFsdWUgPSBwYXJhbXMyW2tleV07XG4gICAgICAgICAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gXCJzdHJpbmdcIikge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5tYWtlUGFyYW1WYWx1ZVN0cmluZyhrZXksIHZhbHVlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gXCJudW1iZXJcIiB8fCB0eXBlb2YgdmFsdWUgPT09IFwiYm9vbGVhblwiKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLm1ha2VQYXJhbVZhbHVlU3RyaW5nKGtleSwgdmFsdWUudG9TdHJpbmcoKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdmFsdWVcbiAgICAgICAgICAgICAgICAgICAgICAgIC5tYXAoaXRlbSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBpdGVtID09PSBcInN0cmluZ1wiKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLm1ha2VQYXJhbVZhbHVlU3RyaW5nKGtleSwgaXRlbSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgaXRlbSA9PT0gXCJudW1iZXJcIikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5tYWtlUGFyYW1WYWx1ZVN0cmluZyhrZXksIGl0ZW0udG9TdHJpbmcoKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgLmZpbHRlcih4ID0+IHggIT0gdW5kZWZpbmVkKVxuICAgICAgICAgICAgICAgICAgICAgICAgLmpvaW4oXCImXCIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5maWx0ZXIoeCA9PiB4ICE9IHVuZGVmaW5lZClcbiAgICAgICAgICAgIC5qb2luKFwiJlwiKTtcbiAgICAgICAgcmVzdWx0ID0gcmVzdWx0ID8gXCI/XCIgKyByZXN1bHQgOiBcIlwiO1xuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cblxuICAgIHB1YmxpYyBjcmVhdGVGZXRjaEltcGwoKTogRmV0Y2gge1xuICAgICAgICBjb25zdCBmZXRjaFdpdGhPcHRpb25zID0gKGlucHV0OiBSZXF1ZXN0SW5mbywgaW5pdD86IFJlcXVlc3RJbml0KTogUHJvbWlzZTxSZXNwb25zZT4gPT4ge1xuICAgICAgICAgICAgaWYgKHR5cGVvZiBpbnB1dCA9PT0gXCJzdHJpbmdcIikge1xuICAgICAgICAgICAgICAgIGNvbnN0IGZldGNoVXJsID0gdGhpcy51cmwoaW5wdXQsIHVuZGVmaW5lZCk7XG4gICAgICAgICAgICAgICAgaW5pdCA9IGluaXQgPz8ge307XG4gICAgICAgICAgICAgICAgaW5pdC5oZWFkZXJzID0gaW5pdC5oZWFkZXJzID8/IHt9O1xuICAgICAgICAgICAgICAgIGluaXQuaGVhZGVyc1tcIkNhY2hlLUNvbnRyb2xcIl0gPSBcIm5vLWNhY2hlLCBuby1zdG9yZVwiO1xuICAgICAgICAgICAgICAgIGluaXQuaGVhZGVyc1tcIlByYWdtYVwiXSA9IFwibm8tY2FjaGVcIjtcbiAgICAgICAgICAgICAgICBpbml0LmhlYWRlcnNbXCJFeHBpcmVzXCJdID0gXCIwXCI7XG4gICAgICAgICAgICAgICAgaW5pdCA9IHRoaXMuYXV0aGVudGljYXRpb25Qcm92aWRlcihpbml0KTtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5mZXRjaEltcGwoZmV0Y2hVcmwsIGluaXQpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBjb25zdCBmZXRjaFVybCA9IHRoaXMudXJsKGlucHV0LnVybCwgdW5kZWZpbmVkKTtcbiAgICAgICAgICAgICAgICBsZXQgcmVxdWVzdEluaXQ6IFJlcXVlc3RJbml0ID0ge1xuICAgICAgICAgICAgICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBbXCJDYWNoZS1Db250cm9sXCJdOiBcIm5vLWNhY2hlLCBuby1zdG9yZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgW1wiUHJhZ21hXCJdOiBcIm5vLWNhY2hlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICBbXCJFeHBpcmVzXCJdOiBcIjBcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIC4uLmlucHV0LmhlYWRlcnMsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHNpZ25hbDogaW5wdXQuc2lnbmFsLFxuICAgICAgICAgICAgICAgICAgICBjYWNoZTogaW5wdXQuY2FjaGUsXG4gICAgICAgICAgICAgICAgICAgIGNyZWRlbnRpYWxzOiBpbnB1dC5jcmVkZW50aWFscyxcbiAgICAgICAgICAgICAgICAgICAgaW50ZWdyaXR5OiBpbnB1dC5pbnRlZ3JpdHksXG4gICAgICAgICAgICAgICAgICAgIGtlZXBhbGl2ZTogaW5wdXQua2VlcGFsaXZlLFxuICAgICAgICAgICAgICAgICAgICBtZXRob2Q6IGlucHV0Lm1ldGhvZCxcbiAgICAgICAgICAgICAgICAgICAgbW9kZTogaW5wdXQubW9kZSxcbiAgICAgICAgICAgICAgICAgICAgcmVkaXJlY3Q6IGlucHV0LnJlZGlyZWN0LFxuICAgICAgICAgICAgICAgICAgICByZWZlcnJlcjogaW5wdXQucmVmZXJyZXIsXG4gICAgICAgICAgICAgICAgICAgIHJlZmVycmVyUG9saWN5OiBpbnB1dC5yZWZlcnJlclBvbGljeSxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIHJlcXVlc3RJbml0ID0gdGhpcy5hdXRoZW50aWNhdGlvblByb3ZpZGVyKHJlcXVlc3RJbml0KTtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5mZXRjaEltcGwoZmV0Y2hVcmwsIHJlcXVlc3RJbml0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICAgICAgcmV0dXJuIGZldGNoV2l0aE9wdGlvbnM7XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgSHR0cEVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICAgIHB1YmxpYyByZWFkb25seSBzdGF0dXNDb2RlOiBudW1iZXI7XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nLCBzdGF0dXNDb2RlOiBudW1iZXIpIHtcbiAgICAgICAgc3VwZXIobWVzc2FnZSk7XG4gICAgICAgIHRoaXMubmFtZSA9IFwiSHR0cEVycm9yXCI7XG4gICAgICAgIHRoaXMuc3RhdHVzQ29kZSA9IHN0YXR1c0NvZGU7XG4gICAgfVxufVxuIl19
|
|
@@ -3,4 +3,8 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
+
|
|
7
|
+
var __signature__ = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default.signature : function (a) {
|
|
8
|
+
return a;
|
|
9
|
+
};
|
|
6
10
|
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbXX0=
|
|
@@ -3,4 +3,8 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
+
|
|
7
|
+
var __signature__ = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default.signature : function (a) {
|
|
8
|
+
return a;
|
|
9
|
+
};
|
|
6
10
|
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbXX0=
|
|
@@ -7,6 +7,15 @@ exports.clamp = clamp;
|
|
|
7
7
|
exports.clampUInt = clampUInt;
|
|
8
8
|
exports.sign = sign;
|
|
9
9
|
|
|
10
|
+
(function () {
|
|
11
|
+
var enterModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.enterModule : undefined;
|
|
12
|
+
enterModule && enterModule(module);
|
|
13
|
+
})();
|
|
14
|
+
|
|
15
|
+
var __signature__ = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default.signature : function (a) {
|
|
16
|
+
return a;
|
|
17
|
+
};
|
|
18
|
+
|
|
10
19
|
function clamp(value, min, max) {
|
|
11
20
|
if (value > max) {
|
|
12
21
|
return max;
|
|
@@ -36,4 +45,25 @@ function sign(value) {
|
|
|
36
45
|
|
|
37
46
|
return 0;
|
|
38
47
|
}
|
|
39
|
-
|
|
48
|
+
|
|
49
|
+
;
|
|
50
|
+
|
|
51
|
+
(function () {
|
|
52
|
+
var reactHotLoader = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default : undefined;
|
|
53
|
+
|
|
54
|
+
if (!reactHotLoader) {
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
reactHotLoader.register(clamp, "clamp", "C:\\buildAgent\\work\\8df8f1edd755969c\\Common\\IntRangeUtils.ts");
|
|
59
|
+
reactHotLoader.register(clampUInt, "clampUInt", "C:\\buildAgent\\work\\8df8f1edd755969c\\Common\\IntRangeUtils.ts");
|
|
60
|
+
reactHotLoader.register(sign, "sign", "C:\\buildAgent\\work\\8df8f1edd755969c\\Common\\IntRangeUtils.ts");
|
|
61
|
+
})();
|
|
62
|
+
|
|
63
|
+
;
|
|
64
|
+
|
|
65
|
+
(function () {
|
|
66
|
+
var leaveModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.leaveModule : undefined;
|
|
67
|
+
leaveModule && leaveModule(module);
|
|
68
|
+
})();
|
|
69
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL0NvbW1vbi9JbnRSYW5nZVV0aWxzLnRzIl0sIm5hbWVzIjpbImNsYW1wIiwidmFsdWUiLCJtaW4iLCJtYXgiLCJjbGFtcFVJbnQiLCJyZXN1bHQiLCJzaWduIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFZTyxTQUFTQSxLQUFULENBQWVDLEtBQWYsRUFBOEJDLEdBQTlCLEVBQTJDQyxHQUEzQyxFQUFnRTtBQUNuRSxNQUFJRixLQUFLLEdBQUdFLEdBQVosRUFBaUI7QUFDYixXQUFPQSxHQUFQO0FBQ0g7O0FBQ0QsTUFBSUYsS0FBSyxHQUFHQyxHQUFaLEVBQWlCO0FBQ2IsV0FBT0EsR0FBUDtBQUNIOztBQUNELFNBQU9ELEtBQVA7QUFDSDs7QUFFTSxTQUFTRyxTQUFULENBQ0hILEtBREcsRUFFSEMsR0FGRyxFQUdIQyxHQUhHLEVBSW9CO0FBQ3ZCLFFBQU1FLE1BQWMsR0FBR0wsS0FBSyxDQUFDQyxLQUFELEVBQVFDLEdBQVIsRUFBYUMsR0FBYixDQUE1QixDQUR1QixDQUV2Qjs7QUFDQSxTQUFPRSxNQUFQO0FBQ0g7O0FBRU0sU0FBU0MsSUFBVCxDQUFjTCxLQUFkLEVBQXlDO0FBQzVDLE1BQUlBLEtBQUssR0FBRyxDQUFaLEVBQWU7QUFDWCxXQUFPLENBQUMsQ0FBUjtBQUNIOztBQUNELE1BQUlBLEtBQUssR0FBRyxDQUFaLEVBQWU7QUFDWCxXQUFPLENBQVA7QUFDSDs7QUFDRCxTQUFPLENBQVA7QUFDSDs7Ozs7Ozs7Ozs7MEJBNUJlRCxLOzBCQVVBSSxTOzBCQVVBRSxJIiwic291cmNlc0NvbnRlbnQiOlsidHlwZSBMZW5ndGg8VCBleHRlbmRzIHVua25vd25bXT4gPSBUIGV4dGVuZHMgeyBsZW5ndGg6IGluZmVyIEwgfSA/IChMIGV4dGVuZHMgbnVtYmVyID8gTCA6IG5ldmVyKSA6IG5ldmVyO1xuXG50eXBlIEJ1aWxkVHVwbGU8TCBleHRlbmRzIG51bWJlciwgVCBleHRlbmRzIHVua25vd25bXSA9IFtdPiA9IFQgZXh0ZW5kcyB7IGxlbmd0aDogTCB9XG4gICAgPyBUXG4gICAgOiBCdWlsZFR1cGxlPEwsIFsuLi5ULCB1bmtub3duXT47XG5cbnR5cGUgQWRkPEEgZXh0ZW5kcyBudW1iZXIsIEIgZXh0ZW5kcyBudW1iZXI+ID0gTGVuZ3RoPFsuLi5CdWlsZFR1cGxlPEE+LCAuLi5CdWlsZFR1cGxlPEI+XT47XG5cbmV4cG9ydCB0eXBlIEludFJhbmdlPFRNaW4gZXh0ZW5kcyBudW1iZXIsIFRNYXggZXh0ZW5kcyBudW1iZXI+ID0gVE1pbiBleHRlbmRzIFRNYXhcbiAgICA/IFRNaW5cbiAgICA6IFRNaW4gfCBJbnRSYW5nZTxBZGQ8VE1pbiwgMT4sIFRNYXg+O1xuXG5leHBvcnQgZnVuY3Rpb24gY2xhbXAodmFsdWU6IG51bWJlciwgbWluOiBudW1iZXIsIG1heDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICBpZiAodmFsdWUgPiBtYXgpIHtcbiAgICAgICAgcmV0dXJuIG1heDtcbiAgICB9XG4gICAgaWYgKHZhbHVlIDwgbWluKSB7XG4gICAgICAgIHJldHVybiBtaW47XG4gICAgfVxuICAgIHJldHVybiB2YWx1ZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNsYW1wVUludDxUTGVmdCBleHRlbmRzIG51bWJlciwgVFJpZ2h0IGV4dGVuZHMgbnVtYmVyPihcbiAgICB2YWx1ZTogbnVtYmVyLFxuICAgIG1pbjogVExlZnQsXG4gICAgbWF4OiBUUmlnaHRcbik6IEludFJhbmdlPFRMZWZ0LCBUUmlnaHQ+IHtcbiAgICBjb25zdCByZXN1bHQ6IG51bWJlciA9IGNsYW1wKHZhbHVlLCBtaW4sIG1heCk7XG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIHJldHVybiByZXN1bHQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzaWduKHZhbHVlOiBudW1iZXIpOiAtMSB8IDAgfCAxIHtcbiAgICBpZiAodmFsdWUgPCAwKSB7XG4gICAgICAgIHJldHVybiAtMTtcbiAgICB9XG4gICAgaWYgKHZhbHVlID4gMCkge1xuICAgICAgICByZXR1cm4gMTtcbiAgICB9XG4gICAgcmV0dXJuIDA7XG59XG4iXX0=
|
|
@@ -17,6 +17,15 @@ var _TypingUtils = require("./TypingUtils");
|
|
|
17
17
|
|
|
18
18
|
var _Errors = require("./Errors");
|
|
19
19
|
|
|
20
|
+
(function () {
|
|
21
|
+
var enterModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.enterModule : undefined;
|
|
22
|
+
enterModule && enterModule(module);
|
|
23
|
+
})();
|
|
24
|
+
|
|
25
|
+
var __signature__ = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default.signature : function (a) {
|
|
26
|
+
return a;
|
|
27
|
+
};
|
|
28
|
+
|
|
20
29
|
function* reverseArray(array) {
|
|
21
30
|
for (let i = array.length - 1; i >= 0; i--) {
|
|
22
31
|
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
@@ -311,4 +320,32 @@ class IterUtils {
|
|
|
311
320
|
exports.IterUtils = IterUtils;
|
|
312
321
|
IterUtils.count = count;
|
|
313
322
|
IterUtils.concat = concat;
|
|
314
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL0NvbW1vbi9JdGVyYWJsZVV0aWxzLnRzIl0sIm5hbWVzIjpbInJldmVyc2VBcnJheSIsImFycmF5IiwiaSIsImxlbmd0aCIsInRvQXN5bmNJdGVyYXRvciIsImdlbmVyYXRvciIsIkFzeW5jSXRlcmF0b3IiLCJmcm9tIiwiZmluZExhc3QiLCJpdGVtcyIsImNvbmRpdGlvbiIsInJlc3VsdCIsIml0ZW0iLCJjb25jYXQiLCJpdGVyYWJsZXMiLCJpdGVyYWJsZUl0ZW0iLCJpdGVyYXRlVmFsdWVzIiwib2JqIiwia2V5IiwiT2JqZWN0IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiaXRlcmF0ZUtleXMiLCJpdGVyYXRlRW50cmllcyIsImNvdW50IiwiX2l0ZW0iLCJFbXB0eVNpbmdsZUVsZW1lbnQiLCJTeW1ib2wiLCJmb3IiLCJOb1ZhbHVlTWFya2VyIiwiSXRlclV0aWxzIiwiaXNFbXB0eSIsIml0ZXJhYmxlIiwic29ydEJ5Iiwic2VsZWN0b3IiLCJzb3J0IiwiYUl0ZW0iLCJiSXRlbSIsImxlZnRWYWx1ZSIsInJpZ2h0VmFsdWUiLCJsYXN0IiwiQXJyYXkiLCJpc0FycmF5IiwibGFzdEl0ZW0iLCJmaXJzdCIsImZpcnN0SXRlbSIsInNpbmdsZSIsInNpbmdsZUFzc2VydE1lc3NhZ2UiLCJFcnJvciIsInNpbmdsZUVsZW1lbnQiLCJpbmRleCIsInNraXBMYXN0Iiwic2tpcENvdW50IiwicHJldkl0ZW1zIiwiZmlsbCIsInJlc3VsdEl0ZW0iLCJjdXJyZW50SW5kZXgiLCJtaW5CeSIsImNvbXBhcmVGdW5jIiwibWluVmFsdWUiLCJJbnZhbGlkQXJndW1lbnRFcnJvciIsIm1pbkJ5T3JVbmRlZmluZWQiLCJ1bmRlZmluZWQiLCJyYW5nZSIsImluU3RhcnRPckNvdW50IiwiaW5JdGVtQ291bnQiLCJzdGFydCIsIml0ZW1Db3VudCIsImludGVyc3BlcnNlIiwiaW50ZXJzcGVyc2VGbiIsImZsYXRNYXAiLCJ4IiwiemlwIiwiaXRlcmF0b3JzIiwibWFwIiwiaXQiLCJJdGVyYXRvciIsImhhc1VuZG9uZUl0ZXJhdG9ycyIsInJlc3VsdEVudHJ5IiwiaXRlcmF0b3IiLCJwdXNoIiwicmVzdWx0VmFsdWUiLCJuZXh0IiwiZG9uZSIsInZhbHVlIiwiZGlzdGluY3RCeSIsImlkU2VsZWN0b3IiLCJzZXQiLCJTZXQiLCJpZCIsImhhcyIsImFkZCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7O0FBRUE7O0FBRU8sVUFBVUEsWUFBVixDQUEwQkMsS0FBMUIsRUFBb0U7QUFDdkUsT0FBSyxJQUFJQyxDQUFDLEdBQUdELEtBQUssQ0FBQ0UsTUFBTixHQUFlLENBQTVCLEVBQStCRCxDQUFDLElBQUksQ0FBcEMsRUFBdUNBLENBQUMsRUFBeEMsRUFBNEM7QUFDeEM7QUFDQSxVQUFNRCxLQUFLLENBQUNDLENBQUQsQ0FBWDtBQUNIO0FBQ0o7O0FBRU0sU0FBU0UsZUFBVCxDQUE0QkMsU0FBNUIsRUFBMEY7QUFDN0YsU0FBT0MsYUFBYSxDQUFDQyxJQUFkLENBQW1CRixTQUFTLEVBQTVCLENBQVA7QUFDSDs7QUFFTSxTQUFTRyxRQUFULENBQXFCQyxLQUFyQixFQUF5Q0MsU0FBekMsRUFBeUY7QUFDNUYsTUFBSUMsTUFBSjs7QUFDQSxPQUFLLE1BQU1DLElBQVgsSUFBbUJILEtBQW5CLEVBQTBCO0FBQ3RCLFFBQUlDLFNBQVMsQ0FBQ0UsSUFBRCxDQUFiLEVBQXFCO0FBQ2pCRCxNQUFBQSxNQUFNLEdBQUdDLElBQVQ7QUFDSDtBQUNKOztBQUNELFNBQU9ELE1BQVA7QUFDSDs7QUFFTSxVQUFVRSxNQUFWLENBQW9CLEdBQUdDLFNBQXZCLEVBQTJFO0FBQzlFLE9BQUssTUFBTUMsWUFBWCxJQUEyQkQsU0FBM0IsRUFBc0M7QUFDbEMsV0FBT0MsWUFBUDtBQUNIO0FBQ0o7O0FBRU0sVUFBVUMsYUFBVixDQUFpRUMsR0FBakUsRUFBeUc7QUFDNUcsT0FBSyxNQUFNQyxHQUFYLElBQWtCRCxHQUFsQixFQUF1QjtBQUNuQixRQUFJRSxNQUFNLENBQUNDLFNBQVAsQ0FBaUJDLGNBQWpCLENBQWdDQyxJQUFoQyxDQUFxQ0wsR0FBckMsRUFBMENDLEdBQTFDLENBQUosRUFBb0Q7QUFDaEQsWUFBTUQsR0FBRyxDQUFDQyxHQUFELENBQVQ7QUFDSDtBQUNKO0FBQ0o7O0FBS00sVUFBVUssV0FBVixDQUEyRE4sR0FBM0QsRUFBd0c7QUFDM0csT0FBSyxNQUFNQyxHQUFYLElBQWtCRCxHQUFsQixFQUF1QjtBQUNuQixRQUFJRSxNQUFNLENBQUNDLFNBQVAsQ0FBaUJDLGNBQWpCLENBQWdDQyxJQUFoQyxDQUFxQ0wsR0FBckMsRUFBMENDLEdBQTFDLENBQUosRUFBb0Q7QUFDaEQsWUFBTUEsR0FBTjtBQUNIO0FBQ0o7QUFDSjs7QUFLTSxVQUFVTSxjQUFWLENBQTZCUCxHQUE3QixFQUEyRjtBQUM5RixPQUFLLE1BQU1DLEdBQVgsSUFBa0JELEdBQWxCLEVBQXVCO0FBQ25CLFFBQUlFLE1BQU0sQ0FBQ0MsU0FBUCxDQUFpQkMsY0FBakIsQ0FBZ0NDLElBQWhDLENBQXFDTCxHQUFyQyxFQUEwQ0MsR0FBMUMsQ0FBSixFQUFvRDtBQUNoRDtBQUNBLFlBQU0sQ0FBQ0EsR0FBRCxFQUFNRCxHQUFHLENBQUNDLEdBQUQsQ0FBVCxDQUFOO0FBQ0g7QUFDSjtBQUNKOztBQUVNLFNBQVNPLEtBQVQsQ0FBa0JoQixLQUFsQixFQUE4QztBQUNqRCxNQUFJRSxNQUFNLEdBQUcsQ0FBYjs7QUFDQSxPQUFLLE1BQU1lLEtBQVgsSUFBb0JqQixLQUFwQixFQUEyQjtBQUN2QkUsSUFBQUEsTUFBTTtBQUNUOztBQUNELFNBQU9BLE1BQVA7QUFDSDs7QUFFRCxNQUFNZ0Isa0JBQWtCLEdBQUdDLE1BQU0sQ0FBQ0MsR0FBUCxDQUFXLG9CQUFYLENBQTNCO0FBQ0EsTUFBTUMsYUFBYSxHQUFHRixNQUFNLENBQUNDLEdBQVAsQ0FBVyxlQUFYLENBQXRCOztBQUVPLE1BQU1FLFNBQU4sQ0FBZ0I7QUFJRSxTQUFQQyxPQUFPLENBQUlDLFFBQUosRUFBb0M7QUFDckQsU0FBSyxNQUFNUCxLQUFYLElBQW9CTyxRQUFwQixFQUE4QjtBQUMxQixhQUFPLEtBQVA7QUFDSDs7QUFDRCxXQUFPLElBQVA7QUFDSDs7QUFFbUIsU0FBTkMsTUFBTSxDQUFJekIsS0FBSixFQUF5QjBCLFFBQXpCLEVBQTZEO0FBQzdFLFVBQU14QixNQUFNLEdBQUcsQ0FBQyxHQUFHRixLQUFKLENBQWY7QUFDQUUsSUFBQUEsTUFBTSxDQUFDeUIsSUFBUCxDQUFZLENBQUNDLEtBQUQsRUFBUUMsS0FBUixLQUFrQjtBQUMxQixZQUFNQyxTQUFTLEdBQUdKLFFBQVEsQ0FBQ0UsS0FBRCxDQUExQjtBQUNBLFlBQU1HLFVBQVUsR0FBR0wsUUFBUSxDQUFDRyxLQUFELENBQTNCOztBQUNBLFVBQUlDLFNBQVMsS0FBS0MsVUFBbEIsRUFBOEI7QUFDMUIsZUFBTyxDQUFQO0FBQ0gsT0FGRCxNQUVPLElBQUlELFNBQVMsR0FBR0MsVUFBaEIsRUFBNEI7QUFDL0IsZUFBTyxDQUFDLENBQVI7QUFDSCxPQUZNLE1BRUE7QUFDSCxlQUFPLENBQVA7QUFDSDtBQUNKLEtBVkQ7QUFXQSxXQUFPN0IsTUFBUDtBQUNIOztBQUlpQixTQUFKOEIsSUFBSSxDQUFJaEMsS0FBSixFQUFzRDtBQUNwRSxRQUFJaUMsS0FBSyxDQUFDQyxPQUFOLENBQWNsQyxLQUFkLENBQUosRUFBMEI7QUFDdEIsYUFBT0EsS0FBSyxDQUFDQSxLQUFLLENBQUNOLE1BQU4sR0FBZSxDQUFoQixDQUFaO0FBQ0g7O0FBQ0QsUUFBSXlDLFFBQUo7O0FBQ0EsU0FBSyxNQUFNaEMsSUFBWCxJQUFtQkgsS0FBbkIsRUFBMEI7QUFDdEJtQyxNQUFBQSxRQUFRLEdBQUdoQyxJQUFYO0FBQ0g7O0FBQ0QsV0FBT2dDLFFBQVA7QUFDSDs7QUFJa0IsU0FBTEMsS0FBSyxDQUFJcEMsS0FBSixFQUFzRDtBQUNyRSxRQUFJaUMsS0FBSyxDQUFDQyxPQUFOLENBQWNsQyxLQUFkLENBQUosRUFBMEI7QUFDdEIsYUFBT0EsS0FBSyxDQUFDLENBQUQsQ0FBWjtBQUNIOztBQUNELFFBQUlxQyxTQUFKOztBQUNBLFNBQUssTUFBTWxDLElBQVgsSUFBbUJILEtBQW5CLEVBQTBCO0FBQ3RCcUMsTUFBQUEsU0FBUyxHQUFHbEMsSUFBWjtBQUNBO0FBQ0g7O0FBQ0QsV0FBT2tDLFNBQVA7QUFDSDs7QUFFbUIsU0FBTkMsTUFBTSxDQUFJdEMsS0FBSixFQUF1Q3VDLG1CQUF2QyxFQUF3RTtBQUN4RixRQUFJTixLQUFLLENBQUNDLE9BQU4sQ0FBY2xDLEtBQWQsQ0FBSixFQUEwQjtBQUFBOztBQUN0QixVQUFJQSxLQUFLLENBQUNOLE1BQU4sS0FBaUIsQ0FBckIsRUFBd0I7QUFDcEIsY0FBTSxJQUFJOEMsS0FBSixDQUNGRCxtQkFERSxhQUNGQSxtQkFERSxjQUNGQSxtQkFERSxHQUNzQix5REFBd0R2QyxLQUFLLENBQUNOLE1BQU8sRUFEM0YsQ0FBTjtBQUdIOztBQUNELHdCQUFPTSxLQUFLLENBQUMsQ0FBRCxDQUFaLDZDQUFtQiwwQkFBbkI7QUFDSCxLQVBELE1BT087QUFDSCxVQUFJeUMsYUFBNEMsR0FBR3ZCLGtCQUFuRDs7QUFDQSxXQUFLLE1BQU1mLElBQVgsSUFBbUJILEtBQW5CLEVBQTBCO0FBQ3RCLFlBQUl5QyxhQUFhLEtBQUt2QixrQkFBdEIsRUFBMEM7QUFDdEMsZ0JBQU0sSUFBSXNCLEtBQUosQ0FDRkQsbUJBREUsYUFDRkEsbUJBREUsY0FDRkEsbUJBREUsR0FDc0Isa0VBRHRCLENBQU47QUFHSDs7QUFDREUsUUFBQUEsYUFBYSxHQUFHdEMsSUFBaEI7QUFDSDs7QUFDRCxVQUFJc0MsYUFBYSxLQUFLdkIsa0JBQXRCLEVBQTBDO0FBQ3RDLGNBQU0sSUFBSXNCLEtBQUosQ0FBVUQsbUJBQVYsYUFBVUEsbUJBQVYsY0FBVUEsbUJBQVYsR0FBaUMseURBQWpDLENBQU47QUFDSDs7QUFDRCxhQUFPRSxhQUFQO0FBQ0g7QUFDSjs7QUFFNEIsVUFBZDFCLGNBQWMsQ0FBSWYsS0FBSixFQUFvRTtBQUM3RixRQUFJMEMsS0FBSyxHQUFHLENBQVo7O0FBQ0EsU0FBSyxNQUFNdkMsSUFBWCxJQUFtQkgsS0FBbkIsRUFBMEI7QUFDdEIsWUFBTSxDQUFDMEMsS0FBRCxFQUFRdkMsSUFBUixDQUFOO0FBQ0F1QyxNQUFBQSxLQUFLO0FBQ1I7QUFDSjs7QUFFc0IsVUFBUkMsUUFBUSxDQUFJM0MsS0FBSixFQUF3QjRDLFNBQXhCLEVBQXdEO0FBQzNFLFFBQUlBLFNBQVMsS0FBSyxDQUFsQixFQUFxQjtBQUNqQixhQUFPNUMsS0FBUDtBQUNBO0FBQ0g7O0FBQ0QsVUFBTTZDLFNBQStDLEdBQUcsSUFBSVosS0FBSixDQUFVVyxTQUFWLEVBQXFCRSxJQUFyQixDQUEwQjVCLGtCQUExQixDQUF4RDtBQUNBLFFBQUk2QixVQUF5QyxHQUFHN0Isa0JBQWhEO0FBQ0EsUUFBSThCLFlBQVksR0FBRyxDQUFuQjs7QUFDQSxTQUFLLE1BQU03QyxJQUFYLElBQW1CSCxLQUFuQixFQUEwQjtBQUN0QjtBQUNBK0MsTUFBQUEsVUFBVSxHQUFHRixTQUFTLENBQUNHLFlBQUQsQ0FBdEI7QUFDQUgsTUFBQUEsU0FBUyxDQUFDRyxZQUFELENBQVQsR0FBMEI3QyxJQUExQjtBQUNBNkMsTUFBQUEsWUFBWSxHQUFHLENBQUNBLFlBQVksR0FBRyxDQUFoQixJQUFxQkosU0FBcEM7O0FBQ0EsVUFBSUcsVUFBVSxJQUFJN0Isa0JBQWxCLEVBQXNDO0FBQ2xDLGNBQU02QixVQUFOO0FBQ0g7QUFDSjtBQUNKOztBQUVrQixTQUFMRSxLQUFLLENBQUlqRCxLQUFKLEVBQTZDa0QsV0FBN0MsRUFBNkU7QUFDNUYsUUFBSUMsUUFBa0MsR0FBRzlCLGFBQXpDOztBQUNBLFNBQUssTUFBTWxCLElBQVgsSUFBbUJILEtBQW5CLEVBQTBCO0FBQ3RCLFVBQUltRCxRQUFRLEtBQUs5QixhQUFqQixFQUFnQztBQUM1QjhCLFFBQUFBLFFBQVEsR0FBR2hELElBQVg7QUFDSCxPQUZELE1BRU8sSUFBSStDLFdBQVcsQ0FBQy9DLElBQUQsRUFBT2dELFFBQVAsQ0FBWCxLQUFnQyxDQUFDLENBQXJDLEVBQXdDO0FBQzNDQSxRQUFBQSxRQUFRLEdBQUdoRCxJQUFYO0FBQ0g7QUFDSjs7QUFDRCxRQUFJZ0QsUUFBUSxLQUFLOUIsYUFBakIsRUFBZ0M7QUFDNUIsWUFBTSxJQUFJK0IsNEJBQUosQ0FBeUIsT0FBekIsRUFBa0MsZ0NBQWxDLENBQU47QUFDSDs7QUFDRCxXQUFPRCxRQUFQO0FBQ0g7O0FBRTZCLFNBQWhCRSxnQkFBZ0IsQ0FDMUJyRCxLQUQwQixFQUUxQmtELFdBRjBCLEVBR2I7QUFDYixRQUFJQyxRQUFrQyxHQUFHOUIsYUFBekM7O0FBQ0EsU0FBSyxNQUFNbEIsSUFBWCxJQUFtQkgsS0FBbkIsRUFBMEI7QUFDdEIsVUFBSW1ELFFBQVEsS0FBSzlCLGFBQWpCLEVBQWdDO0FBQzVCOEIsUUFBQUEsUUFBUSxHQUFHaEQsSUFBWDtBQUNILE9BRkQsTUFFTyxJQUFJK0MsV0FBVyxDQUFDL0MsSUFBRCxFQUFPZ0QsUUFBUCxDQUFYLEtBQWdDLENBQUMsQ0FBckMsRUFBd0M7QUFDM0NBLFFBQUFBLFFBQVEsR0FBR2hELElBQVg7QUFDSDtBQUNKOztBQUNELFFBQUlnRCxRQUFRLEtBQUs5QixhQUFqQixFQUFnQztBQUM1QixhQUFPaUMsU0FBUDtBQUNIOztBQUNELFdBQU9ILFFBQVA7QUFDSDs7QUFJbUIsVUFBTEksS0FBSyxDQUFDQyxjQUFELEVBQXlCQyxXQUF6QixFQUFpRTtBQUNqRixVQUFNQyxLQUFLLEdBQUdELFdBQVcsS0FBS0gsU0FBaEIsR0FBNEIsQ0FBNUIsR0FBZ0NFLGNBQTlDO0FBQ0EsVUFBTUcsU0FBUyxHQUFHRixXQUFXLEtBQUtILFNBQWhCLEdBQTRCRSxjQUE1QixHQUE2Q0MsV0FBL0Q7O0FBQ0EsUUFBSUUsU0FBUyxHQUFHLENBQWhCLEVBQW1CO0FBQ2YsWUFBTSxJQUFJUCw0QkFBSixDQUF5QixXQUF6QixFQUFzQyx5Q0FBdEMsQ0FBTjtBQUNIOztBQUNELFNBQUssSUFBSTNELENBQUMsR0FBR2lFLEtBQWIsRUFBb0JqRSxDQUFDLEdBQUdpRSxLQUFLLEdBQUdDLFNBQWhDLEVBQTJDbEUsQ0FBQyxFQUE1QyxFQUFnRDtBQUM1QyxZQUFNQSxDQUFOO0FBQ0g7QUFDSjtBQUVEO0FBQ0o7QUFDQTs7O0FBQzZCLFNBQVhtRSxXQUFXLENBQVM1RCxLQUFULEVBQXNCRyxJQUF0QixFQUFnRDtBQUNyRSxXQUFPLEtBQUswRCxhQUFMLENBQW1CN0QsS0FBbkIsRUFBMEIsTUFBTUcsSUFBaEMsQ0FBUDtBQUNIO0FBRUQ7QUFDSjtBQUNBOzs7QUFDK0IsU0FBYjBELGFBQWEsQ0FBUzdELEtBQVQsRUFBc0JHLElBQXRCLEVBQWlGO0FBQ3hHLFdBQU9ILEtBQUssQ0FBQzhELE9BQU4sQ0FBYyxDQUFDQyxDQUFELEVBQUlyQixLQUFKLEtBQWVBLEtBQUssS0FBSyxDQUFWLEdBQWMsQ0FBQ3FCLENBQUQsQ0FBZCxHQUFvQixDQUFDNUQsSUFBSSxDQUFDNEQsQ0FBRCxFQUFJckIsS0FBSixDQUFMLEVBQWlCcUIsQ0FBakIsQ0FBakQsQ0FBUDtBQUNIOztBQUdpQixVQUFIQyxHQUFHLENBQUMsR0FBRzNELFNBQUosRUFBOEQ7QUFDNUUsVUFBTTRELFNBQTBELEdBQUc1RCxTQUFTLENBQUM2RCxHQUFWLENBQWNDLEVBQUUsSUFBSUMsUUFBUSxDQUFDdEUsSUFBVCxDQUFjcUUsRUFBZCxDQUFwQixDQUFuRTtBQUNBLFFBQUlFLGtCQUFrQixHQUFHLElBQXpCOztBQUNBLFdBQU9BLGtCQUFQLEVBQTJCO0FBQ3ZCLFlBQU1DLFdBQVcsR0FBRyxFQUFwQjtBQUNBRCxNQUFBQSxrQkFBa0IsR0FBRyxLQUFyQjs7QUFDQSxXQUFLLE1BQU0sQ0FBQzVFLENBQUQsRUFBSThFLFFBQUosQ0FBWCxJQUE0QixLQUFLeEQsY0FBTCxDQUFvQmtELFNBQXBCLENBQTVCLEVBQTREO0FBQ3hELFlBQUlNLFFBQVEsS0FBS2xELGFBQWpCLEVBQWdDO0FBQzVCaUQsVUFBQUEsV0FBVyxDQUFDRSxJQUFaLENBQWlCbEIsU0FBakI7QUFDSCxTQUZELE1BRU87QUFDSCxnQkFBTW1CLFdBQVcsR0FBR0YsUUFBUSxDQUFDRyxJQUFULEVBQXBCOztBQUNBLGNBQUlELFdBQVcsQ0FBQ0UsSUFBaEIsRUFBc0I7QUFDbEJMLFlBQUFBLFdBQVcsQ0FBQ0UsSUFBWixDQUFpQmxCLFNBQWpCO0FBQ0FXLFlBQUFBLFNBQVMsQ0FBQ3hFLENBQUQsQ0FBVCxHQUFlNEIsYUFBZjtBQUNILFdBSEQsTUFHTztBQUNIaUQsWUFBQUEsV0FBVyxDQUFDRSxJQUFaLENBQWlCQyxXQUFXLENBQUNHLEtBQTdCO0FBQ0FQLFlBQUFBLGtCQUFrQixHQUFHLElBQXJCO0FBQ0g7QUFDSjtBQUNKOztBQUNELFVBQUlBLGtCQUFKLEVBQXdCO0FBQ3BCLGNBQU1DLFdBQU47QUFDSDtBQUNKO0FBQ0o7O0FBRXdCLFVBQVZPLFVBQVUsQ0FBSTdFLEtBQUosRUFBd0I4RSxVQUF4QixFQUFzRTtBQUMzRixVQUFNQyxHQUFHLEdBQUcsSUFBSUMsR0FBSixFQUFaOztBQUNBLFNBQUssTUFBTTdFLElBQVgsSUFBbUJILEtBQW5CLEVBQTBCO0FBQ3RCLFlBQU1pRixFQUFFLEdBQUdILFVBQVUsQ0FBQzNFLElBQUQsQ0FBckI7O0FBQ0EsVUFBSSxDQUFDNEUsR0FBRyxDQUFDRyxHQUFKLENBQVFELEVBQVIsQ0FBTCxFQUFrQjtBQUNkRixRQUFBQSxHQUFHLENBQUNJLEdBQUosQ0FBUUYsRUFBUjtBQUNBLGNBQU05RSxJQUFOO0FBQ0g7QUFDSjtBQUNKOztBQTFNa0I7OztBQUFWbUIsUyxDQUNLTixLLEdBQVFBLEs7QUFEYk0sUyxDQUVLbEIsTSxHQUFTQSxNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWluTGVuZ3RoQXJyYXksIHJlamVjdCB9IGZyb20gXCIuL1R5cGluZ1V0aWxzXCI7XG5pbXBvcnQgeyBDb21wYXJlRnVuYyB9IGZyb20gXCIuL0NvbXBhcmVyc1wiO1xuaW1wb3J0IHsgSW52YWxpZEFyZ3VtZW50RXJyb3IgfSBmcm9tIFwiLi9FcnJvcnNcIjtcblxuZXhwb3J0IGZ1bmN0aW9uKiByZXZlcnNlQXJyYXk8VD4oYXJyYXk6IHJlYWRvbmx5IFRbXSk6IEl0ZXJhYmxlSXRlcmF0b3I8VD4ge1xuICAgIGZvciAobGV0IGkgPSBhcnJheS5sZW5ndGggLSAxOyBpID49IDA7IGktLSkge1xuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLW5vbi1udWxsLWFzc2VydGlvblxuICAgICAgICB5aWVsZCBhcnJheVtpXSE7XG4gICAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdG9Bc3luY0l0ZXJhdG9yPFQ+KGdlbmVyYXRvcjogKCkgPT4gQXN5bmNHZW5lcmF0b3I8VD4pOiBBc3luY0l0ZXJhYmxlSXRlcmF0b3I8VD4ge1xuICAgIHJldHVybiBBc3luY0l0ZXJhdG9yLmZyb20oZ2VuZXJhdG9yKCkpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZmluZExhc3Q8VD4oaXRlbXM6IEl0ZXJhYmxlPFQ+LCBjb25kaXRpb246IChpdGVtOiBUKSA9PiBib29sZWFuKTogVCB8IHVuZGVmaW5lZCB7XG4gICAgbGV0IHJlc3VsdDogVCB8IHVuZGVmaW5lZDtcbiAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgaXRlbXMpIHtcbiAgICAgICAgaWYgKGNvbmRpdGlvbihpdGVtKSkge1xuICAgICAgICAgICAgcmVzdWx0ID0gaXRlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xufVxuXG5leHBvcnQgZnVuY3Rpb24qIGNvbmNhdDxUPiguLi5pdGVyYWJsZXM6IEFycmF5PEl0ZXJhYmxlPFQ+Pik6IEl0ZXJhYmxlSXRlcmF0b3I8VD4ge1xuICAgIGZvciAoY29uc3QgaXRlcmFibGVJdGVtIG9mIGl0ZXJhYmxlcykge1xuICAgICAgICB5aWVsZCogaXRlcmFibGVJdGVtO1xuICAgIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uKiBpdGVyYXRlVmFsdWVzPFRLIGV4dGVuZHMgc3RyaW5nIHwgc3ltYm9sIHwgbnVtYmVyLCBUVj4ob2JqOiB7IFtrZXkgaW4gVEtdOiBUViB9KTogSXRlcmFibGU8VFY+IHtcbiAgICBmb3IgKGNvbnN0IGtleSBpbiBvYmopIHtcbiAgICAgICAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvYmosIGtleSkpIHtcbiAgICAgICAgICAgIHlpZWxkIG9ialtrZXldO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gaXRlcmF0ZUtleXM8VE8+KG9iajogUmVhZG9ubHk8VE8+KTogSXRlcmFibGU8RXh0cmFjdDxrZXlvZiBUTywgc3RyaW5nPj47XG5leHBvcnQgZnVuY3Rpb24gaXRlcmF0ZUtleXM8VFY+KG9iajogUmVhZG9ubHk8eyBba2V5OiBzdHJpbmddOiBUViB9Pik6IEl0ZXJhYmxlPHN0cmluZz47XG5leHBvcnQgZnVuY3Rpb24gaXRlcmF0ZUtleXMob2JqOiBSZWFkb25seTx7fT4pOiBJdGVyYWJsZTxzdHJpbmc+O1xuZXhwb3J0IGZ1bmN0aW9uKiBpdGVyYXRlS2V5czxUSyBleHRlbmRzIHN0cmluZyB8IHN5bWJvbCB8IG51bWJlcj4ob2JqOiB7IFtrZXkgaW4gVEtdOiB1bmtub3duIH0pOiBJdGVyYWJsZTxUSz4ge1xuICAgIGZvciAoY29uc3Qga2V5IGluIG9iaikge1xuICAgICAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iaiwga2V5KSkge1xuICAgICAgICAgICAgeWllbGQga2V5O1xuICAgICAgICB9XG4gICAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gaXRlcmF0ZUVudHJpZXM8VE8+KG9iajogUmVhZG9ubHk8VE8+KTogSXRlcmFibGU8W0V4dHJhY3Q8a2V5b2YgVE8sIHN0cmluZz4sIFRPW2tleW9mIFRPXV0+O1xuZXhwb3J0IGZ1bmN0aW9uIGl0ZXJhdGVFbnRyaWVzPFRWPihvYmo6IFJlYWRvbmx5PHsgW2tleTogc3RyaW5nXTogVFYgfT4pOiBJdGVyYWJsZTxbc3RyaW5nLCBUVl0+O1xuZXhwb3J0IGZ1bmN0aW9uIGl0ZXJhdGVFbnRyaWVzKG9iajogUmVhZG9ubHk8e30+KTogSXRlcmFibGU8W3N0cmluZywgdW5rbm93bl0+O1xuZXhwb3J0IGZ1bmN0aW9uKiBpdGVyYXRlRW50cmllczxUVj4ob2JqOiBSZWFkb25seTx7IFtrZXk6IHN0cmluZ106IFRWIH0+KTogSXRlcmFibGU8W3N0cmluZywgVFZdPiB7XG4gICAgZm9yIChjb25zdCBrZXkgaW4gb2JqKSB7XG4gICAgICAgIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwob2JqLCBrZXkpKSB7XG4gICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLW5vbi1udWxsLWFzc2VydGlvblxuICAgICAgICAgICAgeWllbGQgW2tleSwgb2JqW2tleV0hXTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNvdW50PFQ+KGl0ZW1zOiBJdGVyYWJsZTxUPik6IG51bWJlciB7XG4gICAgbGV0IHJlc3VsdCA9IDA7XG4gICAgZm9yIChjb25zdCBfaXRlbSBvZiBpdGVtcykge1xuICAgICAgICByZXN1bHQrKztcbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdDtcbn1cblxuY29uc3QgRW1wdHlTaW5nbGVFbGVtZW50ID0gU3ltYm9sLmZvcihcIkVtcHR5U2luZ2xlRWxlbWVudFwiKTtcbmNvbnN0IE5vVmFsdWVNYXJrZXIgPSBTeW1ib2wuZm9yKFwiTm9WYWx1ZU1hcmtlclwiKTtcblxuZXhwb3J0IGNsYXNzIEl0ZXJVdGlscyB7XG4gICAgcHVibGljIHN0YXRpYyBjb3VudCA9IGNvdW50O1xuICAgIHB1YmxpYyBzdGF0aWMgY29uY2F0ID0gY29uY2F0O1xuXG4gICAgcHVibGljIHN0YXRpYyBpc0VtcHR5PFQ+KGl0ZXJhYmxlOiBJdGVyYWJsZTxUPik6IGJvb2xlYW4ge1xuICAgICAgICBmb3IgKGNvbnN0IF9pdGVtIG9mIGl0ZXJhYmxlKSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBzb3J0Qnk8VD4oaXRlbXM6IHJlYWRvbmx5IFRbXSwgc2VsZWN0b3I6IChpdGVtOiBUKSA9PiBzdHJpbmcpOiBUW10ge1xuICAgICAgICBjb25zdCByZXN1bHQgPSBbLi4uaXRlbXNdO1xuICAgICAgICByZXN1bHQuc29ydCgoYUl0ZW0sIGJJdGVtKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBsZWZ0VmFsdWUgPSBzZWxlY3RvcihhSXRlbSk7XG4gICAgICAgICAgICBjb25zdCByaWdodFZhbHVlID0gc2VsZWN0b3IoYkl0ZW0pO1xuICAgICAgICAgICAgaWYgKGxlZnRWYWx1ZSA9PT0gcmlnaHRWYWx1ZSkge1xuICAgICAgICAgICAgICAgIHJldHVybiAwO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChsZWZ0VmFsdWUgPCByaWdodFZhbHVlKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIC0xO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBsYXN0PFQ+KGl0ZW1zOiBNaW5MZW5ndGhBcnJheTxULCAxPik6IFQ7XG4gICAgcHVibGljIHN0YXRpYyBsYXN0PFQ+KGl0ZW1zOiBJdGVyYWJsZTxUPiB8IHJlYWRvbmx5IFRbXSk6IHVuZGVmaW5lZCB8IFQ7XG4gICAgcHVibGljIHN0YXRpYyBsYXN0PFQ+KGl0ZW1zOiBJdGVyYWJsZTxUPiB8IHJlYWRvbmx5IFRbXSk6IHVuZGVmaW5lZCB8IFQge1xuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShpdGVtcykpIHtcbiAgICAgICAgICAgIHJldHVybiBpdGVtc1tpdGVtcy5sZW5ndGggLSAxXTtcbiAgICAgICAgfVxuICAgICAgICBsZXQgbGFzdEl0ZW06IFQgfCB1bmRlZmluZWQ7XG4gICAgICAgIGZvciAoY29uc3QgaXRlbSBvZiBpdGVtcykge1xuICAgICAgICAgICAgbGFzdEl0ZW0gPSBpdGVtO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBsYXN0SXRlbTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGZpcnN0PFQ+KGl0ZW1zOiBNaW5MZW5ndGhBcnJheTxULCAxPik6IFQ7XG4gICAgcHVibGljIHN0YXRpYyBmaXJzdDxUPihpdGVtczogSXRlcmFibGU8VD4gfCByZWFkb25seSBUW10pOiB1bmRlZmluZWQgfCBUO1xuICAgIHB1YmxpYyBzdGF0aWMgZmlyc3Q8VD4oaXRlbXM6IEl0ZXJhYmxlPFQ+IHwgcmVhZG9ubHkgVFtdKTogdW5kZWZpbmVkIHwgVCB7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KGl0ZW1zKSkge1xuICAgICAgICAgICAgcmV0dXJuIGl0ZW1zWzBdO1xuICAgICAgICB9XG4gICAgICAgIGxldCBmaXJzdEl0ZW06IFQgfCB1bmRlZmluZWQ7XG4gICAgICAgIGZvciAoY29uc3QgaXRlbSBvZiBpdGVtcykge1xuICAgICAgICAgICAgZmlyc3RJdGVtID0gaXRlbTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmaXJzdEl0ZW07XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBzaW5nbGU8VD4oaXRlbXM6IHJlYWRvbmx5IFRbXSB8IEl0ZXJhYmxlPFQ+LCBzaW5nbGVBc3NlcnRNZXNzYWdlPzogc3RyaW5nKTogVCB7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KGl0ZW1zKSkge1xuICAgICAgICAgICAgaWYgKGl0ZW1zLmxlbmd0aCAhPT0gMSkge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAgICAgICAgICAgc2luZ2xlQXNzZXJ0TWVzc2FnZSA/PyBgU2VxdWVuY2UgbXVzdCBjb250YWluIGV4YWN0bHkgc2luZ2xlIGVsZW1lbnQsIGJ1dCBnb3QgJHtpdGVtcy5sZW5ndGh9YFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gaXRlbXNbMF0gPz8gcmVqZWN0KCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBsZXQgc2luZ2xlRWxlbWVudDogVCB8IHR5cGVvZiBFbXB0eVNpbmdsZUVsZW1lbnQgPSBFbXB0eVNpbmdsZUVsZW1lbnQ7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgaXRlbXMpIHtcbiAgICAgICAgICAgICAgICBpZiAoc2luZ2xlRWxlbWVudCAhPT0gRW1wdHlTaW5nbGVFbGVtZW50KSB7XG4gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAgICAgICAgICAgICAgIHNpbmdsZUFzc2VydE1lc3NhZ2UgPz8gYFNlcXVlbmNlIG11c3QgY29udGFpbiBleGFjdGx5IHNpbmdsZSBlbGVtZW50LCBidXQgZ290IGF0IGxlYXN0IDJgXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHNpbmdsZUVsZW1lbnQgPSBpdGVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHNpbmdsZUVsZW1lbnQgPT09IEVtcHR5U2luZ2xlRWxlbWVudCkge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihzaW5nbGVBc3NlcnRNZXNzYWdlID8/IFwiU2VxdWVuY2UgbXVzdCBjb250YWluIGV4YWN0bHkgc2luZ2xlIGVsZW1lbnQsIGJ1dCBnb3QgMFwiKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBzaW5nbGVFbGVtZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyAqaXRlcmF0ZUVudHJpZXM8VD4oaXRlbXM6IHJlYWRvbmx5IFRbXSB8IFRbXSB8IEl0ZXJhYmxlPFQ+KTogSXRlcmFibGU8W251bWJlciwgVF0+IHtcbiAgICAgICAgbGV0IGluZGV4ID0gMDtcbiAgICAgICAgZm9yIChjb25zdCBpdGVtIG9mIGl0ZW1zKSB7XG4gICAgICAgICAgICB5aWVsZCBbaW5kZXgsIGl0ZW1dO1xuICAgICAgICAgICAgaW5kZXgrKztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgKnNraXBMYXN0PFQ+KGl0ZW1zOiBJdGVyYWJsZTxUPiwgc2tpcENvdW50OiBudW1iZXIpOiBJdGVyYWJsZTxUPiB7XG4gICAgICAgIGlmIChza2lwQ291bnQgPT09IDApIHtcbiAgICAgICAgICAgIHlpZWxkKiBpdGVtcztcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBwcmV2SXRlbXM6IEFycmF5PFQgfCB0eXBlb2YgRW1wdHlTaW5nbGVFbGVtZW50PiA9IG5ldyBBcnJheShza2lwQ291bnQpLmZpbGwoRW1wdHlTaW5nbGVFbGVtZW50KTtcbiAgICAgICAgbGV0IHJlc3VsdEl0ZW06IFQgfCB0eXBlb2YgRW1wdHlTaW5nbGVFbGVtZW50ID0gRW1wdHlTaW5nbGVFbGVtZW50O1xuICAgICAgICBsZXQgY3VycmVudEluZGV4ID0gMDtcbiAgICAgICAgZm9yIChjb25zdCBpdGVtIG9mIGl0ZW1zKSB7XG4gICAgICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yINCSINC+0LHRidC10LwsINGB0YLRgNC+0LrQsCDQstGL0YjQtSDQs9Cw0YDQsNC90YLQuNGA0YPQtdGCINC00LvQuNC90YMg0LzQsNGB0YHQuNCy0LBcbiAgICAgICAgICAgIHJlc3VsdEl0ZW0gPSBwcmV2SXRlbXNbY3VycmVudEluZGV4XTtcbiAgICAgICAgICAgIHByZXZJdGVtc1tjdXJyZW50SW5kZXhdID0gaXRlbTtcbiAgICAgICAgICAgIGN1cnJlbnRJbmRleCA9IChjdXJyZW50SW5kZXggKyAxKSAlIHNraXBDb3VudDtcbiAgICAgICAgICAgIGlmIChyZXN1bHRJdGVtICE9IEVtcHR5U2luZ2xlRWxlbWVudCkge1xuICAgICAgICAgICAgICAgIHlpZWxkIHJlc3VsdEl0ZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIG1pbkJ5PFQ+KGl0ZW1zOiByZWFkb25seSBUW10gfCBUW10gfCBJdGVyYWJsZTxUPiwgY29tcGFyZUZ1bmM6IENvbXBhcmVGdW5jPFQ+KTogVCB7XG4gICAgICAgIGxldCBtaW5WYWx1ZTogdHlwZW9mIE5vVmFsdWVNYXJrZXIgfCBUID0gTm9WYWx1ZU1hcmtlcjtcbiAgICAgICAgZm9yIChjb25zdCBpdGVtIG9mIGl0ZW1zKSB7XG4gICAgICAgICAgICBpZiAobWluVmFsdWUgPT09IE5vVmFsdWVNYXJrZXIpIHtcbiAgICAgICAgICAgICAgICBtaW5WYWx1ZSA9IGl0ZW07XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGNvbXBhcmVGdW5jKGl0ZW0sIG1pblZhbHVlKSA9PT0gLTEpIHtcbiAgICAgICAgICAgICAgICBtaW5WYWx1ZSA9IGl0ZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG1pblZhbHVlID09PSBOb1ZhbHVlTWFya2VyKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoXCJpdGVtc1wiLCBcIkl0ZW1zIHNob3VsZCBiZSBub3QgZW1wdHkgbGlzdFwiKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbWluVmFsdWU7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBtaW5CeU9yVW5kZWZpbmVkPFQ+KFxuICAgICAgICBpdGVtczogcmVhZG9ubHkgVFtdIHwgVFtdIHwgSXRlcmFibGU8VD4sXG4gICAgICAgIGNvbXBhcmVGdW5jOiBDb21wYXJlRnVuYzxUPlxuICAgICk6IFQgfCB1bmRlZmluZWQge1xuICAgICAgICBsZXQgbWluVmFsdWU6IHR5cGVvZiBOb1ZhbHVlTWFya2VyIHwgVCA9IE5vVmFsdWVNYXJrZXI7XG4gICAgICAgIGZvciAoY29uc3QgaXRlbSBvZiBpdGVtcykge1xuICAgICAgICAgICAgaWYgKG1pblZhbHVlID09PSBOb1ZhbHVlTWFya2VyKSB7XG4gICAgICAgICAgICAgICAgbWluVmFsdWUgPSBpdGVtO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChjb21wYXJlRnVuYyhpdGVtLCBtaW5WYWx1ZSkgPT09IC0xKSB7XG4gICAgICAgICAgICAgICAgbWluVmFsdWUgPSBpdGVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmIChtaW5WYWx1ZSA9PT0gTm9WYWx1ZU1hcmtlcikge1xuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbWluVmFsdWU7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyByYW5nZShpdGVtQ291bnQ6IG51bWJlcik6IEl0ZXJhYmxlPG51bWJlcj47XG4gICAgcHVibGljIHN0YXRpYyByYW5nZShzdGFydDogbnVtYmVyLCBpdGVtQ291bnQ6IG51bWJlcik6IEl0ZXJhYmxlPG51bWJlcj47XG4gICAgcHVibGljIHN0YXRpYyAqcmFuZ2UoaW5TdGFydE9yQ291bnQ6IG51bWJlciwgaW5JdGVtQ291bnQ/OiBudW1iZXIpOiBJdGVyYWJsZTxudW1iZXI+IHtcbiAgICAgICAgY29uc3Qgc3RhcnQgPSBpbkl0ZW1Db3VudCA9PT0gdW5kZWZpbmVkID8gMCA6IGluU3RhcnRPckNvdW50O1xuICAgICAgICBjb25zdCBpdGVtQ291bnQgPSBpbkl0ZW1Db3VudCA9PT0gdW5kZWZpbmVkID8gaW5TdGFydE9yQ291bnQgOiBpbkl0ZW1Db3VudDtcbiAgICAgICAgaWYgKGl0ZW1Db3VudCA8IDApIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcihcIml0ZW1Db3VudFwiLCBcIml0ZW1Db3VudCBtdXN0IGJlIGEgbm9uIG5lZ2F0aXZlIG51bWJlclwiKTtcbiAgICAgICAgfVxuICAgICAgICBmb3IgKGxldCBpID0gc3RhcnQ7IGkgPCBzdGFydCArIGl0ZW1Db3VudDsgaSsrKSB7XG4gICAgICAgICAgICB5aWVsZCBpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQHN1bW1hcnkg0JLRgdGC0LDQstC70Y/QtdGCINC80LXQttC00YMg0Y3Qu9C10LzQtdC90YLQsNC80Lgg0LzQsNGB0YHQuNCy0LAg0LfQsNC00LDQvdC90YvQuSDRjdC70LXQvNC10L3RgiDQuCDQstC+0LfQstGA0LDRidCw0LXRgiDQvdC+0LLRi9C5INC80LDRgdGB0LjQslxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgaW50ZXJzcGVyc2U8VEksIFRTPihpdGVtczogVElbXSwgaXRlbTogVFMpOiBBcnJheTxUSSB8IFRTPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmludGVyc3BlcnNlRm4oaXRlbXMsICgpID0+IGl0ZW0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBzdW1tYXJ5INCS0YHRgtCw0LLQu9GP0LXRgiDQvNC10LbQtNGDINGN0LvQtdC80LXQvdGC0LDQvNC4INC80LDRgdGB0LjQstCwINGN0LvQtdC80LXQvdGCLCDRgdC+0LfQtNCw0LLQsNC10LzRi9C5INGE0YPQvdC60YbQuNC10LksINC4INCy0L7Qt9Cy0YDQsNGJ0LDQtdGCINC90L7QstGL0Lkg0LzQsNGB0YHQuNCyXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBpbnRlcnNwZXJzZUZuPFRJLCBUUz4oaXRlbXM6IFRJW10sIGl0ZW06IChuZXh0SXRlbTogVEksIGluZGV4OiBudW1iZXIpID0+IFRTKTogQXJyYXk8VEkgfCBUUz4ge1xuICAgICAgICByZXR1cm4gaXRlbXMuZmxhdE1hcCgoeCwgaW5kZXgpID0+IChpbmRleCA9PT0gMCA/IFt4XSA6IFtpdGVtKHgsIGluZGV4KSwgeF0pKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIHppcDxUMSwgVDI+KGl0ZW1zMTogSXRlcmFibGU8VDE+LCBpdGVtczI6IEl0ZXJhYmxlPFQyPik6IEl0ZXJhYmxlPFtUMSB8IHVuZGVmaW5lZCwgVDIgfCB1bmRlZmluZWRdPjtcbiAgICBwdWJsaWMgc3RhdGljICp6aXAoLi4uaXRlcmFibGVzOiBBcnJheTxJdGVyYWJsZTx1bmtub3duPj4pOiBJdGVyYWJsZTx1bmtub3duW10+IHtcbiAgICAgICAgY29uc3QgaXRlcmF0b3JzOiBBcnJheTxJdGVyYXRvcjx1bmtub3duPiB8IHR5cGVvZiBOb1ZhbHVlTWFya2VyPiA9IGl0ZXJhYmxlcy5tYXAoaXQgPT4gSXRlcmF0b3IuZnJvbShpdCkpO1xuICAgICAgICBsZXQgaGFzVW5kb25lSXRlcmF0b3JzID0gdHJ1ZTtcbiAgICAgICAgd2hpbGUgKGhhc1VuZG9uZUl0ZXJhdG9ycykge1xuICAgICAgICAgICAgY29uc3QgcmVzdWx0RW50cnkgPSBbXTtcbiAgICAgICAgICAgIGhhc1VuZG9uZUl0ZXJhdG9ycyA9IGZhbHNlO1xuICAgICAgICAgICAgZm9yIChjb25zdCBbaSwgaXRlcmF0b3JdIG9mIHRoaXMuaXRlcmF0ZUVudHJpZXMoaXRlcmF0b3JzKSkge1xuICAgICAgICAgICAgICAgIGlmIChpdGVyYXRvciA9PT0gTm9WYWx1ZU1hcmtlcikge1xuICAgICAgICAgICAgICAgICAgICByZXN1bHRFbnRyeS5wdXNoKHVuZGVmaW5lZCk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVzdWx0VmFsdWUgPSBpdGVyYXRvci5uZXh0KCk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChyZXN1bHRWYWx1ZS5kb25lKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXN1bHRFbnRyeS5wdXNoKHVuZGVmaW5lZCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVyYXRvcnNbaV0gPSBOb1ZhbHVlTWFya2VyO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmVzdWx0RW50cnkucHVzaChyZXN1bHRWYWx1ZS52YWx1ZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBoYXNVbmRvbmVJdGVyYXRvcnMgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGhhc1VuZG9uZUl0ZXJhdG9ycykge1xuICAgICAgICAgICAgICAgIHlpZWxkIHJlc3VsdEVudHJ5O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyAqZGlzdGluY3RCeTxUPihpdGVtczogSXRlcmFibGU8VD4sIGlkU2VsZWN0b3I6IChpdGVtOiBUKSA9PiBzdHJpbmcpOiBJdGVyYWJsZTxUPiB7XG4gICAgICAgIGNvbnN0IHNldCA9IG5ldyBTZXQ8c3RyaW5nPigpO1xuICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgaXRlbXMpIHtcbiAgICAgICAgICAgIGNvbnN0IGlkID0gaWRTZWxlY3RvcihpdGVtKTtcbiAgICAgICAgICAgIGlmICghc2V0LmhhcyhpZCkpIHtcbiAgICAgICAgICAgICAgICBzZXQuYWRkKGlkKTtcbiAgICAgICAgICAgICAgICB5aWVsZCBpdGVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIl19
|
|
323
|
+
;
|
|
324
|
+
|
|
325
|
+
(function () {
|
|
326
|
+
var reactHotLoader = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default : undefined;
|
|
327
|
+
|
|
328
|
+
if (!reactHotLoader) {
|
|
329
|
+
return;
|
|
330
|
+
}
|
|
331
|
+
|
|
332
|
+
reactHotLoader.register(reverseArray, "reverseArray", "C:\\buildAgent\\work\\8df8f1edd755969c\\Common\\IterableUtils.ts");
|
|
333
|
+
reactHotLoader.register(toAsyncIterator, "toAsyncIterator", "C:\\buildAgent\\work\\8df8f1edd755969c\\Common\\IterableUtils.ts");
|
|
334
|
+
reactHotLoader.register(findLast, "findLast", "C:\\buildAgent\\work\\8df8f1edd755969c\\Common\\IterableUtils.ts");
|
|
335
|
+
reactHotLoader.register(concat, "concat", "C:\\buildAgent\\work\\8df8f1edd755969c\\Common\\IterableUtils.ts");
|
|
336
|
+
reactHotLoader.register(iterateValues, "iterateValues", "C:\\buildAgent\\work\\8df8f1edd755969c\\Common\\IterableUtils.ts");
|
|
337
|
+
reactHotLoader.register(iterateKeys, "iterateKeys", "C:\\buildAgent\\work\\8df8f1edd755969c\\Common\\IterableUtils.ts");
|
|
338
|
+
reactHotLoader.register(iterateEntries, "iterateEntries", "C:\\buildAgent\\work\\8df8f1edd755969c\\Common\\IterableUtils.ts");
|
|
339
|
+
reactHotLoader.register(count, "count", "C:\\buildAgent\\work\\8df8f1edd755969c\\Common\\IterableUtils.ts");
|
|
340
|
+
reactHotLoader.register(EmptySingleElement, "EmptySingleElement", "C:\\buildAgent\\work\\8df8f1edd755969c\\Common\\IterableUtils.ts");
|
|
341
|
+
reactHotLoader.register(NoValueMarker, "NoValueMarker", "C:\\buildAgent\\work\\8df8f1edd755969c\\Common\\IterableUtils.ts");
|
|
342
|
+
reactHotLoader.register(IterUtils, "IterUtils", "C:\\buildAgent\\work\\8df8f1edd755969c\\Common\\IterableUtils.ts");
|
|
343
|
+
})();
|
|
344
|
+
|
|
345
|
+
;
|
|
346
|
+
|
|
347
|
+
(function () {
|
|
348
|
+
var leaveModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.leaveModule : undefined;
|
|
349
|
+
leaveModule && leaveModule(module);
|
|
350
|
+
})();
|
|
351
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL0NvbW1vbi9JdGVyYWJsZVV0aWxzLnRzIl0sIm5hbWVzIjpbInJldmVyc2VBcnJheSIsImFycmF5IiwiaSIsImxlbmd0aCIsInRvQXN5bmNJdGVyYXRvciIsImdlbmVyYXRvciIsIkFzeW5jSXRlcmF0b3IiLCJmcm9tIiwiZmluZExhc3QiLCJpdGVtcyIsImNvbmRpdGlvbiIsInJlc3VsdCIsIml0ZW0iLCJjb25jYXQiLCJpdGVyYWJsZXMiLCJpdGVyYWJsZUl0ZW0iLCJpdGVyYXRlVmFsdWVzIiwib2JqIiwia2V5IiwiT2JqZWN0IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiaXRlcmF0ZUtleXMiLCJpdGVyYXRlRW50cmllcyIsImNvdW50IiwiX2l0ZW0iLCJFbXB0eVNpbmdsZUVsZW1lbnQiLCJTeW1ib2wiLCJmb3IiLCJOb1ZhbHVlTWFya2VyIiwiSXRlclV0aWxzIiwiaXNFbXB0eSIsIml0ZXJhYmxlIiwic29ydEJ5Iiwic2VsZWN0b3IiLCJzb3J0IiwiYUl0ZW0iLCJiSXRlbSIsImxlZnRWYWx1ZSIsInJpZ2h0VmFsdWUiLCJsYXN0IiwiQXJyYXkiLCJpc0FycmF5IiwibGFzdEl0ZW0iLCJmaXJzdCIsImZpcnN0SXRlbSIsInNpbmdsZSIsInNpbmdsZUFzc2VydE1lc3NhZ2UiLCJFcnJvciIsInNpbmdsZUVsZW1lbnQiLCJpbmRleCIsInNraXBMYXN0Iiwic2tpcENvdW50IiwicHJldkl0ZW1zIiwiZmlsbCIsInJlc3VsdEl0ZW0iLCJjdXJyZW50SW5kZXgiLCJtaW5CeSIsImNvbXBhcmVGdW5jIiwibWluVmFsdWUiLCJJbnZhbGlkQXJndW1lbnRFcnJvciIsIm1pbkJ5T3JVbmRlZmluZWQiLCJ1bmRlZmluZWQiLCJyYW5nZSIsImluU3RhcnRPckNvdW50IiwiaW5JdGVtQ291bnQiLCJzdGFydCIsIml0ZW1Db3VudCIsImludGVyc3BlcnNlIiwiaW50ZXJzcGVyc2VGbiIsImZsYXRNYXAiLCJ4IiwiemlwIiwiaXRlcmF0b3JzIiwibWFwIiwiaXQiLCJJdGVyYXRvciIsImhhc1VuZG9uZUl0ZXJhdG9ycyIsInJlc3VsdEVudHJ5IiwiaXRlcmF0b3IiLCJwdXNoIiwicmVzdWx0VmFsdWUiLCJuZXh0IiwiZG9uZSIsInZhbHVlIiwiZGlzdGluY3RCeSIsImlkU2VsZWN0b3IiLCJzZXQiLCJTZXQiLCJpZCIsImhhcyIsImFkZCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7O0FBRUE7Ozs7Ozs7Ozs7O0FBRU8sVUFBVUEsWUFBVixDQUEwQkMsS0FBMUIsRUFBb0U7QUFDdkUsT0FBSyxJQUFJQyxDQUFDLEdBQUdELEtBQUssQ0FBQ0UsTUFBTixHQUFlLENBQTVCLEVBQStCRCxDQUFDLElBQUksQ0FBcEMsRUFBdUNBLENBQUMsRUFBeEMsRUFBNEM7QUFDeEM7QUFDQSxVQUFNRCxLQUFLLENBQUNDLENBQUQsQ0FBWDtBQUNIO0FBQ0o7O0FBRU0sU0FBU0UsZUFBVCxDQUE0QkMsU0FBNUIsRUFBMEY7QUFDN0YsU0FBT0MsYUFBYSxDQUFDQyxJQUFkLENBQW1CRixTQUFTLEVBQTVCLENBQVA7QUFDSDs7QUFFTSxTQUFTRyxRQUFULENBQXFCQyxLQUFyQixFQUF5Q0MsU0FBekMsRUFBeUY7QUFDNUYsTUFBSUMsTUFBSjs7QUFDQSxPQUFLLE1BQU1DLElBQVgsSUFBbUJILEtBQW5CLEVBQTBCO0FBQ3RCLFFBQUlDLFNBQVMsQ0FBQ0UsSUFBRCxDQUFiLEVBQXFCO0FBQ2pCRCxNQUFBQSxNQUFNLEdBQUdDLElBQVQ7QUFDSDtBQUNKOztBQUNELFNBQU9ELE1BQVA7QUFDSDs7QUFFTSxVQUFVRSxNQUFWLENBQW9CLEdBQUdDLFNBQXZCLEVBQTJFO0FBQzlFLE9BQUssTUFBTUMsWUFBWCxJQUEyQkQsU0FBM0IsRUFBc0M7QUFDbEMsV0FBT0MsWUFBUDtBQUNIO0FBQ0o7O0FBRU0sVUFBVUMsYUFBVixDQUFpRUMsR0FBakUsRUFBeUc7QUFDNUcsT0FBSyxNQUFNQyxHQUFYLElBQWtCRCxHQUFsQixFQUF1QjtBQUNu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QUlELFdBQVcsQ0FBQ0UsSUFBaEIsRUFBc0I7QUFDbEJMLFlBQUFBLFdBQVcsQ0FBQ0UsSUFBWixDQUFpQmxCLFNBQWpCO0FBQ0FXLFlBQUFBLFNBQVMsQ0FBQ3hFLENBQUQsQ0FBVCxHQUFlNEIsYUFBZjtBQUNILFdBSEQsTUFHTztBQUNIaUQsWUFBQUEsV0FBVyxDQUFDRSxJQUFaLENBQWlCQyxXQUFXLENBQUNHLEtBQTdCO0FBQ0FQLFlBQUFBLGtCQUFrQixHQUFHLElBQXJCO0FBQ0g7QUFDSjtBQUNKOztBQUNELFVBQUlBLGtCQUFKLEVBQXdCO0FBQ3BCLGNBQU1DLFdBQU47QUFDSDtBQUNKO0FBQ0o7O0FBRXdCLFVBQVZPLFVBQVUsQ0FBSTdFLEtBQUosRUFBd0I4RSxVQUF4QixFQUFzRTtBQUMzRixVQUFNQyxHQUFHLEdBQUcsSUFBSUMsR0FBSixFQUFaOztBQUNBLFNBQUssTUFBTTdFLElBQVgsSUFBbUJILEtBQW5CLEVBQTBCO0FBQ3RCLFlBQU1pRixFQUFFLEdBQUdILFVBQVUsQ0FBQzNFLElBQUQsQ0FBckI7O0FBQ0EsVUFBSSxDQUFDNEUsR0FBRyxDQUFDRyxHQUFKLENBQVFELEVBQVIsQ0FBTCxFQUFrQjtBQUNkRixRQUFBQSxHQUFHLENBQUNJLEdBQUosQ0FBUUYsRUFBUjtBQUNBLGNBQU05RSxJQUFOO0FBQ0g7QUFDSjtBQUNKOztBQTFNa0I7OztBQUFWbUIsUyxDQUNLTixLLEdBQVFBLEs7QUFEYk0sUyxDQUVLbEIsTSxHQUFTQSxNOzs7Ozs7Ozs7OzBCQXZFVmIsWTswQkFPREksZTswQkFJQUksUTswQkFVQ0ssTTswQkFNQUcsYTswQkFXQU8sVzswQkFXQUMsYzswQkFTREMsSzswQkFRVkUsa0I7MEJBQ0FHLGE7MEJBRU9DLFMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNaW5MZW5ndGhBcnJheSwgcmVqZWN0IH0gZnJvbSBcIi4vVHlwaW5nVXRpbHNcIjtcbmltcG9ydCB7IENvbXBhcmVGdW5jIH0gZnJvbSBcIi4vQ29tcGFyZXJzXCI7XG5pbXBvcnQgeyBJbnZhbGlkQXJndW1lbnRFcnJvciB9IGZyb20gXCIuL0Vycm9yc1wiO1xuXG5leHBvcnQgZnVuY3Rpb24qIHJldmVyc2VBcnJheTxUPihhcnJheTogcmVhZG9ubHkgVFtdKTogSXRlcmFibGVJdGVyYXRvcjxUPiB7XG4gICAgZm9yIChsZXQgaSA9IGFycmF5Lmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tbm9uLW51bGwtYXNzZXJ0aW9uXG4gICAgICAgIHlpZWxkIGFycmF5W2ldITtcbiAgICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0b0FzeW5jSXRlcmF0b3I8VD4oZ2VuZXJhdG9yOiAoKSA9PiBBc3luY0dlbmVyYXRvcjxUPik6IEFzeW5jSXRlcmFibGVJdGVyYXRvcjxUPiB7XG4gICAgcmV0dXJuIEFzeW5jSXRlcmF0b3IuZnJvbShnZW5lcmF0b3IoKSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmaW5kTGFzdDxUPihpdGVtczogSXRlcmFibGU8VD4sIGNvbmRpdGlvbjogKGl0ZW06IFQpID0+IGJvb2xlYW4pOiBUIHwgdW5kZWZpbmVkIHtcbiAgICBsZXQgcmVzdWx0OiBUIHwgdW5kZWZpbmVkO1xuICAgIGZvciAoY29uc3QgaXRlbSBvZiBpdGVtcykge1xuICAgICAgICBpZiAoY29uZGl0aW9uKGl0ZW0pKSB7XG4gICAgICAgICAgICByZXN1bHQgPSBpdGVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiogY29uY2F0PFQ+KC4uLml0ZXJhYmxlczogQXJyYXk8SXRlcmFibGU8VD4+KTogSXRlcmFibGVJdGVyYXRvcjxUPiB7XG4gICAgZm9yIChjb25zdCBpdGVyYWJsZUl0ZW0gb2YgaXRlcmFibGVzKSB7XG4gICAgICAgIHlpZWxkKiBpdGVyYWJsZUl0ZW07XG4gICAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24qIGl0ZXJhdGVWYWx1ZXM8VEsgZXh0ZW5kcyBzdHJpbmcgfCBzeW1ib2wgfCBudW1iZXIsIFRWPihvYmo6IHsgW2tleSBpbiBUS106IFRWIH0pOiBJdGVyYWJsZTxUVj4ge1xuICAgIGZvciAoY29uc3Qga2V5IGluIG9iaikge1xuICAgICAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iaiwga2V5KSkge1xuICAgICAgICAgICAgeWllbGQgb2JqW2tleV07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpdGVyYXRlS2V5czxUTz4ob2JqOiBSZWFkb25seTxUTz4pOiBJdGVyYWJsZTxFeHRyYWN0PGtleW9mIFRPLCBzdHJpbmc+PjtcbmV4cG9ydCBmdW5jdGlvbiBpdGVyYXRlS2V5czxUVj4ob2JqOiBSZWFkb25seTx7IFtrZXk6IHN0cmluZ106IFRWIH0+KTogSXRlcmFibGU8c3RyaW5nPjtcbmV4cG9ydCBmdW5jdGlvbiBpdGVyYXRlS2V5cyhvYmo6IFJlYWRvbmx5PHt9Pik6IEl0ZXJhYmxlPHN0cmluZz47XG5leHBvcnQgZnVuY3Rpb24qIGl0ZXJhdGVLZXlzPFRLIGV4dGVuZHMgc3RyaW5nIHwgc3ltYm9sIHwgbnVtYmVyPihvYmo6IHsgW2tleSBpbiBUS106IHVua25vd24gfSk6IEl0ZXJhYmxlPFRLPiB7XG4gICAgZm9yIChjb25zdCBrZXkgaW4gb2JqKSB7XG4gICAgICAgIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwob2JqLCBrZXkpKSB7XG4gICAgICAgICAgICB5aWVsZCBrZXk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpdGVyYXRlRW50cmllczxUTz4ob2JqOiBSZWFkb25seTxUTz4pOiBJdGVyYWJsZTxbRXh0cmFjdDxrZXlvZiBUTywgc3RyaW5nPiwgVE9ba2V5b2YgVE9dXT47XG5leHBvcnQgZnVuY3Rpb24gaXRlcmF0ZUVudHJpZXM8VFY+KG9iajogUmVhZG9ubHk8eyBba2V5OiBzdHJpbmddOiBUViB9Pik6IEl0ZXJhYmxlPFtzdHJpbmcsIFRWXT47XG5leHBvcnQgZnVuY3Rpb24gaXRlcmF0ZUVudHJpZXMob2JqOiBSZWFkb25seTx7fT4pOiBJdGVyYWJsZTxbc3RyaW5nLCB1bmtub3duXT47XG5leHBvcnQgZnVuY3Rpb24qIGl0ZXJhdGVFbnRyaWVzPFRWPihvYmo6IFJlYWRvbmx5PHsgW2tleTogc3RyaW5nXTogVFYgfT4pOiBJdGVyYWJsZTxbc3RyaW5nLCBUVl0+IHtcbiAgICBmb3IgKGNvbnN0IGtleSBpbiBvYmopIHtcbiAgICAgICAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvYmosIGtleSkpIHtcbiAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tbm9uLW51bGwtYXNzZXJ0aW9uXG4gICAgICAgICAgICB5aWVsZCBba2V5LCBvYmpba2V5XSFdO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gY291bnQ8VD4oaXRlbXM6IEl0ZXJhYmxlPFQ+KTogbnVtYmVyIHtcbiAgICBsZXQgcmVzdWx0ID0gMDtcbiAgICBmb3IgKGNvbnN0IF9pdGVtIG9mIGl0ZW1zKSB7XG4gICAgICAgIHJlc3VsdCsrO1xuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xufVxuXG5jb25zdCBFbXB0eVNpbmdsZUVsZW1lbnQgPSBTeW1ib2wuZm9yKFwiRW1wdHlTaW5nbGVFbGVtZW50XCIpO1xuY29uc3QgTm9WYWx1ZU1hcmtlciA9IFN5bWJvbC5mb3IoXCJOb1ZhbHVlTWFya2VyXCIpO1xuXG5leHBvcnQgY2xhc3MgSXRlclV0aWxzIHtcbiAgICBwdWJsaWMgc3RhdGljIGNvdW50ID0gY291bnQ7XG4gICAgcHVibGljIHN0YXRpYyBjb25jYXQgPSBjb25jYXQ7XG5cbiAgICBwdWJsaWMgc3RhdGljIGlzRW1wdHk8VD4oaXRlcmFibGU6IEl0ZXJhYmxlPFQ+KTogYm9vbGVhbiB7XG4gICAgICAgIGZvciAoY29uc3QgX2l0ZW0gb2YgaXRlcmFibGUpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIHNvcnRCeTxUPihpdGVtczogcmVhZG9ubHkgVFtdLCBzZWxlY3RvcjogKGl0ZW06IFQpID0+IHN0cmluZyk6IFRbXSB7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IFsuLi5pdGVtc107XG4gICAgICAgIHJlc3VsdC5zb3J0KChhSXRlbSwgYkl0ZW0pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGxlZnRWYWx1ZSA9IHNlbGVjdG9yKGFJdGVtKTtcbiAgICAgICAgICAgIGNvbnN0IHJpZ2h0VmFsdWUgPSBzZWxlY3RvcihiSXRlbSk7XG4gICAgICAgICAgICBpZiAobGVmdFZhbHVlID09PSByaWdodFZhbHVlKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIDA7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGxlZnRWYWx1ZSA8IHJpZ2h0VmFsdWUpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gLTE7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHJldHVybiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGxhc3Q8VD4oaXRlbXM6IE1pbkxlbmd0aEFycmF5PFQsIDE+KTogVDtcbiAgICBwdWJsaWMgc3RhdGljIGxhc3Q8VD4oaXRlbXM6IEl0ZXJhYmxlPFQ+IHwgcmVhZG9ubHkgVFtdKTogdW5kZWZpbmVkIHwgVDtcbiAgICBwdWJsaWMgc3RhdGljIGxhc3Q8VD4oaXRlbXM6IEl0ZXJhYmxlPFQ+IHwgcmVhZG9ubHkgVFtdKTogdW5kZWZpbmVkIHwgVCB7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KGl0ZW1zKSkge1xuICAgICAgICAgICAgcmV0dXJuIGl0ZW1zW2l0ZW1zLmxlbmd0aCAtIDFdO1xuICAgICAgICB9XG4gICAgICAgIGxldCBsYXN0SXRlbTogVCB8IHVuZGVmaW5lZDtcbiAgICAgICAgZm9yIChjb25zdCBpdGVtIG9mIGl0ZW1zKSB7XG4gICAgICAgICAgICBsYXN0SXRlbSA9IGl0ZW07XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGxhc3RJdGVtO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgZmlyc3Q8VD4oaXRlbXM6IE1pbkxlbmd0aEFycmF5PFQsIDE+KTogVDtcbiAgICBwdWJsaWMgc3RhdGljIGZpcnN0PFQ+KGl0ZW1zOiBJdGVyYWJsZTxUPiB8IHJlYWRvbmx5IFRbXSk6IHVuZGVmaW5lZCB8IFQ7XG4gICAgcHVibGljIHN0YXRpYyBmaXJzdDxUPihpdGVtczogSXRlcmFibGU8VD4gfCByZWFkb25seSBUW10pOiB1bmRlZmluZWQgfCBUIHtcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoaXRlbXMpKSB7XG4gICAgICAgICAgICByZXR1cm4gaXRlbXNbMF07XG4gICAgICAgIH1cbiAgICAgICAgbGV0IGZpcnN0SXRlbTogVCB8IHVuZGVmaW5lZDtcbiAgICAgICAgZm9yIChjb25zdCBpdGVtIG9mIGl0ZW1zKSB7XG4gICAgICAgICAgICBmaXJzdEl0ZW0gPSBpdGVtO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZpcnN0SXRlbTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIHNpbmdsZTxUPihpdGVtczogcmVhZG9ubHkgVFtdIHwgSXRlcmFibGU8VD4sIHNpbmdsZUFzc2VydE1lc3NhZ2U/OiBzdHJpbmcpOiBUIHtcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoaXRlbXMpKSB7XG4gICAgICAgICAgICBpZiAoaXRlbXMubGVuZ3RoICE9PSAxKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgICAgICAgICAgICBzaW5nbGVBc3NlcnRNZXNzYWdlID8/IGBTZXF1ZW5jZSBtdXN0IGNvbnRhaW4gZXhhY3RseSBzaW5nbGUgZWxlbWVudCwgYnV0IGdvdCAke2l0ZW1zLmxlbmd0aH1gXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBpdGVtc1swXSA/PyByZWplY3QoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGxldCBzaW5nbGVFbGVtZW50OiBUIHwgdHlwZW9mIEVtcHR5U2luZ2xlRWxlbWVudCA9IEVtcHR5U2luZ2xlRWxlbWVudDtcbiAgICAgICAgICAgIGZvciAoY29uc3QgaXRlbSBvZiBpdGVtcykge1xuICAgICAgICAgICAgICAgIGlmIChzaW5nbGVFbGVtZW50ICE9PSBFbXB0eVNpbmdsZUVsZW1lbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgICAgICAgICAgICAgICAgc2luZ2xlQXNzZXJ0TWVzc2FnZSA/PyBgU2VxdWVuY2UgbXVzdCBjb250YWluIGV4YWN0bHkgc2luZ2xlIGVsZW1lbnQsIGJ1dCBnb3QgYXQgbGVhc3QgMmBcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgc2luZ2xlRWxlbWVudCA9IGl0ZW07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoc2luZ2xlRWxlbWVudCA9PT0gRW1wdHlTaW5nbGVFbGVtZW50KSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKHNpbmdsZUFzc2VydE1lc3NhZ2UgPz8gXCJTZXF1ZW5jZSBtdXN0IGNvbnRhaW4gZXhhY3RseSBzaW5nbGUgZWxlbWVudCwgYnV0IGdvdCAwXCIpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHNpbmdsZUVsZW1lbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljICppdGVyYXRlRW50cmllczxUPihpdGVtczogcmVhZG9ubHkgVFtdIHwgVFtdIHwgSXRlcmFibGU8VD4pOiBJdGVyYWJsZTxbbnVtYmVyLCBUXT4ge1xuICAgICAgICBsZXQgaW5kZXggPSAwO1xuICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgaXRlbXMpIHtcbiAgICAgICAgICAgIHlpZWxkIFtpbmRleCwgaXRlbV07XG4gICAgICAgICAgICBpbmRleCsrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyAqc2tpcExhc3Q8VD4oaXRlbXM6IEl0ZXJhYmxlPFQ+LCBza2lwQ291bnQ6IG51bWJlcik6IEl0ZXJhYmxlPFQ+IHtcbiAgICAgICAgaWYgKHNraXBDb3VudCA9PT0gMCkge1xuICAgICAgICAgICAgeWllbGQqIGl0ZW1zO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHByZXZJdGVtczogQXJyYXk8VCB8IHR5cGVvZiBFbXB0eVNpbmdsZUVsZW1lbnQ+ID0gbmV3IEFycmF5KHNraXBDb3VudCkuZmlsbChFbXB0eVNpbmdsZUVsZW1lbnQpO1xuICAgICAgICBsZXQgcmVzdWx0SXRlbTogVCB8IHR5cGVvZiBFbXB0eVNpbmdsZUVsZW1lbnQgPSBFbXB0eVNpbmdsZUVsZW1lbnQ7XG4gICAgICAgIGxldCBjdXJyZW50SW5kZXggPSAwO1xuICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgaXRlbXMpIHtcbiAgICAgICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3Ig0JIg0L7QsdGJ0LXQvCwg0YHRgtGA0L7QutCwINCy0YvRiNC1INCz0LDRgNCw0L3RgtC40YDRg9C10YIg0LTQu9C40L3RgyDQvNCw0YHRgdC40LLQsFxuICAgICAgICAgICAgcmVzdWx0SXRlbSA9IHByZXZJdGVtc1tjdXJyZW50SW5kZXhdO1xuICAgICAgICAgICAgcHJldkl0ZW1zW2N1cnJlbnRJbmRleF0gPSBpdGVtO1xuICAgICAgICAgICAgY3VycmVudEluZGV4ID0gKGN1cnJlbnRJbmRleCArIDEpICUgc2tpcENvdW50O1xuICAgICAgICAgICAgaWYgKHJlc3VsdEl0ZW0gIT0gRW1wdHlTaW5nbGVFbGVtZW50KSB7XG4gICAgICAgICAgICAgICAgeWllbGQgcmVzdWx0SXRlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgbWluQnk8VD4oaXRlbXM6IHJlYWRvbmx5IFRbXSB8IFRbXSB8IEl0ZXJhYmxlPFQ+LCBjb21wYXJlRnVuYzogQ29tcGFyZUZ1bmM8VD4pOiBUIHtcbiAgICAgICAgbGV0IG1pblZhbHVlOiB0eXBlb2YgTm9WYWx1ZU1hcmtlciB8IFQgPSBOb1ZhbHVlTWFya2VyO1xuICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgaXRlbXMpIHtcbiAgICAgICAgICAgIGlmIChtaW5WYWx1ZSA9PT0gTm9WYWx1ZU1hcmtlcikge1xuICAgICAgICAgICAgICAgIG1pblZhbHVlID0gaXRlbTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoY29tcGFyZUZ1bmMoaXRlbSwgbWluVmFsdWUpID09PSAtMSkge1xuICAgICAgICAgICAgICAgIG1pblZhbHVlID0gaXRlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAobWluVmFsdWUgPT09IE5vVmFsdWVNYXJrZXIpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcihcIml0ZW1zXCIsIFwiSXRlbXMgc2hvdWxkIGJlIG5vdCBlbXB0eSBsaXN0XCIpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBtaW5WYWx1ZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIG1pbkJ5T3JVbmRlZmluZWQ8VD4oXG4gICAgICAgIGl0ZW1zOiByZWFkb25seSBUW10gfCBUW10gfCBJdGVyYWJsZTxUPixcbiAgICAgICAgY29tcGFyZUZ1bmM6IENvbXBhcmVGdW5jPFQ+XG4gICAgKTogVCB8IHVuZGVmaW5lZCB7XG4gICAgICAgIGxldCBtaW5WYWx1ZTogdHlwZW9mIE5vVmFsdWVNYXJrZXIgfCBUID0gTm9WYWx1ZU1hcmtlcjtcbiAgICAgICAgZm9yIChjb25zdCBpdGVtIG9mIGl0ZW1zKSB7XG4gICAgICAgICAgICBpZiAobWluVmFsdWUgPT09IE5vVmFsdWVNYXJrZXIpIHtcbiAgICAgICAgICAgICAgICBtaW5WYWx1ZSA9IGl0ZW07XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGNvbXBhcmVGdW5jKGl0ZW0sIG1pblZhbHVlKSA9PT0gLTEpIHtcbiAgICAgICAgICAgICAgICBtaW5WYWx1ZSA9IGl0ZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG1pblZhbHVlID09PSBOb1ZhbHVlTWFya2VyKSB7XG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBtaW5WYWx1ZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIHJhbmdlKGl0ZW1Db3VudDogbnVtYmVyKTogSXRlcmFibGU8bnVtYmVyPjtcbiAgICBwdWJsaWMgc3RhdGljIHJhbmdlKHN0YXJ0OiBudW1iZXIsIGl0ZW1Db3VudDogbnVtYmVyKTogSXRlcmFibGU8bnVtYmVyPjtcbiAgICBwdWJsaWMgc3RhdGljICpyYW5nZShpblN0YXJ0T3JDb3VudDogbnVtYmVyLCBpbkl0ZW1Db3VudD86IG51bWJlcik6IEl0ZXJhYmxlPG51bWJlcj4ge1xuICAgICAgICBjb25zdCBzdGFydCA9IGluSXRlbUNvdW50ID09PSB1bmRlZmluZWQgPyAwIDogaW5TdGFydE9yQ291bnQ7XG4gICAgICAgIGNvbnN0IGl0ZW1Db3VudCA9IGluSXRlbUNvdW50ID09PSB1bmRlZmluZWQgPyBpblN0YXJ0T3JDb3VudCA6IGluSXRlbUNvdW50O1xuICAgICAgICBpZiAoaXRlbUNvdW50IDwgMCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKFwiaXRlbUNvdW50XCIsIFwiaXRlbUNvdW50IG11c3QgYmUgYSBub24gbmVnYXRpdmUgbnVtYmVyXCIpO1xuICAgICAgICB9XG4gICAgICAgIGZvciAobGV0IGkgPSBzdGFydDsgaSA8IHN0YXJ0ICsgaXRlbUNvdW50OyBpKyspIHtcbiAgICAgICAgICAgIHlpZWxkIGk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAc3VtbWFyeSDQktGB0YLQsNCy0LvRj9C10YIg0LzQtdC20LTRgyDRjdC70LXQvNC10L3RgtCw0LzQuCDQvNCw0YHRgdC40LLQsCDQt9Cw0LTQsNC90L3Ri9C5INGN0LvQtdC80LXQvdGCINC4INCy0L7Qt9Cy0YDQsNGJ0LDQtdGCINC90L7QstGL0Lkg0LzQsNGB0YHQuNCyXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBpbnRlcnNwZXJzZTxUSSwgVFM+KGl0ZW1zOiBUSVtdLCBpdGVtOiBUUyk6IEFycmF5PFRJIHwgVFM+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaW50ZXJzcGVyc2VGbihpdGVtcywgKCkgPT4gaXRlbSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQHN1bW1hcnkg0JLRgdGC0LDQstC70Y/QtdGCINC80LXQttC00YMg0Y3Qu9C10LzQtdC90YLQsNC80Lgg0LzQsNGB0YHQuNCy0LAg0Y3Qu9C10LzQtdC90YIsINGB0L7Qt9C00LDQstCw0LXQvNGL0Lkg0YTRg9C90LrRhtC40LXQuSwg0Lgg0LLQvtC30LLRgNCw0YnQsNC10YIg0L3QvtCy0YvQuSDQvNCw0YHRgdC40LJcbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGludGVyc3BlcnNlRm48VEksIFRTPihpdGVtczogVElbXSwgaXRlbTogKG5leHRJdGVtOiBUSSwgaW5kZXg6IG51bWJlcikgPT4gVFMpOiBBcnJheTxUSSB8IFRTPiB7XG4gICAgICAgIHJldHVybiBpdGVtcy5mbGF0TWFwKCh4LCBpbmRleCkgPT4gKGluZGV4ID09PSAwID8gW3hdIDogW2l0ZW0oeCwgaW5kZXgpLCB4XSkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgemlwPFQxLCBUMj4oaXRlbXMxOiBJdGVyYWJsZTxUMT4sIGl0ZW1zMjogSXRlcmFibGU8VDI+KTogSXRlcmFibGU8W1QxIHwgdW5kZWZpbmVkLCBUMiB8IHVuZGVmaW5lZF0+O1xuICAgIHB1YmxpYyBzdGF0aWMgKnppcCguLi5pdGVyYWJsZXM6IEFycmF5PEl0ZXJhYmxlPHVua25vd24+Pik6IEl0ZXJhYmxlPHVua25vd25bXT4ge1xuICAgICAgICBjb25zdCBpdGVyYXRvcnM6IEFycmF5PEl0ZXJhdG9yPHVua25vd24+IHwgdHlwZW9mIE5vVmFsdWVNYXJrZXI+ID0gaXRlcmFibGVzLm1hcChpdCA9PiBJdGVyYXRvci5mcm9tKGl0KSk7XG4gICAgICAgIGxldCBoYXNVbmRvbmVJdGVyYXRvcnMgPSB0cnVlO1xuICAgICAgICB3aGlsZSAoaGFzVW5kb25lSXRlcmF0b3JzKSB7XG4gICAgICAgICAgICBjb25zdCByZXN1bHRFbnRyeSA9IFtdO1xuICAgICAgICAgICAgaGFzVW5kb25lSXRlcmF0b3JzID0gZmFsc2U7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IFtpLCBpdGVyYXRvcl0gb2YgdGhpcy5pdGVyYXRlRW50cmllcyhpdGVyYXRvcnMpKSB7XG4gICAgICAgICAgICAgICAgaWYgKGl0ZXJhdG9yID09PSBOb1ZhbHVlTWFya2VyKSB7XG4gICAgICAgICAgICAgICAgICAgIHJlc3VsdEVudHJ5LnB1c2godW5kZWZpbmVkKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCByZXN1bHRWYWx1ZSA9IGl0ZXJhdG9yLm5leHQoKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHJlc3VsdFZhbHVlLmRvbmUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdEVudHJ5LnB1c2godW5kZWZpbmVkKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZXJhdG9yc1tpXSA9IE5vVmFsdWVNYXJrZXI7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXN1bHRFbnRyeS5wdXNoKHJlc3VsdFZhbHVlLnZhbHVlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhhc1VuZG9uZUl0ZXJhdG9ycyA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoaGFzVW5kb25lSXRlcmF0b3JzKSB7XG4gICAgICAgICAgICAgICAgeWllbGQgcmVzdWx0RW50cnk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljICpkaXN0aW5jdEJ5PFQ+KGl0ZW1zOiBJdGVyYWJsZTxUPiwgaWRTZWxlY3RvcjogKGl0ZW06IFQpID0+IHN0cmluZyk6IEl0ZXJhYmxlPFQ+IHtcbiAgICAgICAgY29uc3Qgc2V0ID0gbmV3IFNldDxzdHJpbmc+KCk7XG4gICAgICAgIGZvciAoY29uc3QgaXRlbSBvZiBpdGVtcykge1xuICAgICAgICAgICAgY29uc3QgaWQgPSBpZFNlbGVjdG9yKGl0ZW0pO1xuICAgICAgICAgICAgaWYgKCFzZXQuaGFzKGlkKSkge1xuICAgICAgICAgICAgICAgIHNldC5hZGQoaWQpO1xuICAgICAgICAgICAgICAgIHlpZWxkIGl0ZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
|
|
@@ -11,6 +11,15 @@ var _AutocalcCommonFunctions = require("../Engine/src/Helpers/AutocalcCommonFunc
|
|
|
11
11
|
|
|
12
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
13
|
|
|
14
|
+
(function () {
|
|
15
|
+
var enterModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.enterModule : undefined;
|
|
16
|
+
enterModule && enterModule(module);
|
|
17
|
+
})();
|
|
18
|
+
|
|
19
|
+
var __signature__ = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default.signature : function (a) {
|
|
20
|
+
return a;
|
|
21
|
+
};
|
|
22
|
+
|
|
14
23
|
const isBigSource = value => {
|
|
15
24
|
if (typeof value === "number" || typeof value === "string" || value instanceof _big.default) {
|
|
16
25
|
return true;
|
|
@@ -238,8 +247,34 @@ class KCLangRuntimeUtils {
|
|
|
238
247
|
return str.substring(start, end);
|
|
239
248
|
}
|
|
240
249
|
|
|
250
|
+
// @ts-ignore
|
|
251
|
+
__reactstandin__regenerateByEval(key, code) {
|
|
252
|
+
// @ts-ignore
|
|
253
|
+
this[key] = eval(code);
|
|
254
|
+
}
|
|
255
|
+
|
|
241
256
|
}
|
|
242
257
|
|
|
243
258
|
exports.KCLangRuntimeUtils = KCLangRuntimeUtils;
|
|
244
259
|
KCLangRuntimeUtils.kcLangUtilsName = "kcLangUtils";
|
|
245
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL0NvbW1vbi9LQ0xhbmdSdW50aW1lVXRpbHMudHMiXSwibmFtZXMiOlsiaXNCaWdTb3VyY2UiLCJ2YWx1ZSIsIkJpZyIsImlzQmlnT3JOdW1iZXIiLCJLQ0xhbmdSdW50aW1lVXRpbHMiLCJhbmQiLCJsZWZ0IiwicmlnaHQiLCJ1bmRlZmluZWQiLCJkaXZpc2lvbiIsImRpdiIsImVxIiwiY21wIiwiZ2UiLCJndGUiLCJndCIsImxlIiwibHRlIiwibHQiLCJtaW51cyIsImFyZ3VtZW50IiwibXVsIiwibXVsdGlwbHkiLCJub3QiLCJub3RlcSIsIm9yIiwicm91bmQiLCJmcmFjdGlvbkRpZ2l0cyIsInN1bSIsImFkZCIsImFicyIsInhhYnMiLCJsZW5ndGgiLCJleGlzdHMiLCJ2YWx1ZVNlbGVjdG9yIiwicGF0aCIsImNvbnZlcnRUb0RlY2ltYWwiLCJjb252ZXJ0VG9TdHJpbmciLCJ0b1N0cmluZyIsInJlZ2V4TWF0Y2giLCJwYXR0ZXJuIiwiUmVnRXhwIiwidGVzdCIsIm9uZW9mIiwidmFsdWVzIiwiaW5kZXhPZiIsInZhbHVlQXNCaWciLCJzb21lIiwiaXRlbSIsInN1YnN0cmluZyIsInN0ciIsInN0YXJ0IiwiZW5kIiwia2NMYW5nVXRpbHNOYW1lIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7O0FBRUE7Ozs7QUFFQSxNQUFNQSxXQUFXLEdBQUlDLEtBQUQsSUFBK0I7QUFDL0MsTUFBSSxPQUFPQSxLQUFQLEtBQWlCLFFBQWpCLElBQTZCLE9BQU9BLEtBQVAsS0FBaUIsUUFBOUMsSUFBMERBLEtBQUssWUFBWUMsWUFBL0UsRUFBb0Y7QUFDaEYsV0FBTyxJQUFQO0FBQ0g7O0FBQ0QsU0FBTyxLQUFQO0FBQ0gsQ0FMRDs7QUFPQSxNQUFNQyxhQUFhLEdBQUlGLEtBQUQsSUFDbEIsT0FBT0EsS0FBUCxLQUFpQixRQUFqQixJQUE2QkEsS0FBSyxZQUFZQyxZQURsRDs7QUFHTyxNQUFNRSxrQkFBTixDQUF5QjtBQUdyQkMsRUFBQUEsR0FBRyxD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QUFhLENBQUM2QyxJQUFELENBQWIsSUFBdUJGLFVBQVUsQ0FBQ25DLEVBQVgsQ0FBY3FDLElBQWQsQ0FBM0MsQ0FBUDtBQUNIOztBQUVELFdBQU8sS0FBUDtBQUNIOztBQUVNQyxFQUFBQSxTQUFTLENBQ1pDLEdBRFksRUFFWkMsS0FGWSxFQUdabkIsTUFIWSxFQUlNO0FBQ2xCLFFBQUlrQixHQUFHLElBQUkxQyxTQUFQLElBQW9CMkMsS0FBSyxJQUFJM0MsU0FBN0IsSUFBMEN3QixNQUFNLElBQUl4QixTQUF4RCxFQUFtRTtBQUMvRCxhQUFPQSxTQUFQO0FBQ0g7O0FBQ0QsUUFBSXdCLE1BQU0sSUFBSSxDQUFkLEVBQWlCO0FBQ2IsYUFBTyxFQUFQO0FBQ0g7O0FBQ0QsVUFBTW9CLEdBQUcsR0FBR0QsS0FBSyxHQUFHbkIsTUFBcEI7QUFFQSxXQUFPa0IsR0FBRyxDQUFDRCxTQUFKLENBQWNFLEtBQWQsRUFBcUJDLEdBQXJCLENBQVA7QUFDSDs7QUF6TTJCOzs7QUFBbkJoRCxrQixDQUNLaUQsZSxHQUFrQixhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEJpZywgeyBCaWdTb3VyY2UgfSBmcm9tIFwiYmlnLmpzXCI7XG5cbmltcG9ydCB7IHdyYXBEZWNpbWFsT3BlcmFuZCB9IGZyb20gXCIuLi9FbmdpbmUvc3JjL0hlbHBlcnMvQXV0b2NhbGNDb21tb25GdW5jdGlvbnNcIjtcblxuY29uc3QgaXNCaWdTb3VyY2UgPSAodmFsdWU6IEJpZ1NvdXJjZSk6IGJvb2xlYW4gPT4ge1xuICAgIGlmICh0eXBlb2YgdmFsdWUgPT09IFwibnVtYmVyXCIgfHwgdHlwZW9mIHZhbHVlID09PSBcInN0cmluZ1wiIHx8IHZhbHVlIGluc3RhbmNlb2YgQmlnKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG59O1xuXG5jb25zdCBpc0JpZ09yTnVtYmVyID0gKHZhbHVlOiBCaWcgfCBudW1iZXIgfCB1bmRlZmluZWQgfCBudWxsIHwgdW5rbm93bikgPT5cbiAgICB0eXBlb2YgdmFsdWUgPT09IFwibnVtYmVyXCIgfHwgdmFsdWUgaW5zdGFuY2VvZiBCaWc7XG5cbmV4cG9ydCBjbGFzcyBLQ0xhbmdSdW50aW1lVXRpbHMge1xuICAgIHB1YmxpYyBzdGF0aWMga2NMYW5nVXRpbHNOYW1lID0gXCJrY0xhbmdVdGlsc1wiO1xuXG4gICAgcHVibGljIGFuZChsZWZ0OiBib29sZWFuIHwgdW5kZWZpbmVkLCByaWdodDogYm9vbGVhbiB8IHVuZGVmaW5lZCk6IGJvb2xlYW4gfCB1bmRlZmluZWQge1xuICAgICAgICBpZiAobGVmdCA9PSB1bmRlZmluZWQgfHwgcmlnaHQgPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBsZWZ0ICYmIHJpZ2h0O1xuICAgIH1cblxuICAgIHB1YmxpYyBkaXZpc2lvbihsZWZ0OiBCaWdTb3VyY2UsIHJpZ2h0OiBCaWdTb3VyY2UpOiBCaWcgfCB1bmRlZmluZWQge1xuICAgICAgICBpZiAoaXNCaWdTb3VyY2UobGVmdCkgJiYgaXNCaWdTb3VyY2UocmlnaHQpKSB7XG4gICAgICAgICAgICByZXR1cm4gd3JhcERlY2ltYWxPcGVyYW5kKGxlZnQpLmRpdihyaWdodCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZXEobGVmdDogQmlnU291cmNlLCByaWdodDogQmlnU291cmNlKTogYm9vbGVhbiB7XG4gICAgICAgIGlmICh0eXBlb2YgbGVmdCA9PT0gXCJzdHJpbmdcIiAmJiB0eXBlb2YgcmlnaHQgPT09IFwic3RyaW5nXCIpIHtcbiAgICAgICAgICAgIHJldHVybiBsZWZ0ID09PSByaWdodDtcbiAgICAgICAgfVxuICAgICAgICBpZiAoaXNCaWdTb3VyY2UobGVmdCkgJiYgaXNCaWdTb3VyY2UocmlnaHQpKSB7XG4gICAgICAgICAgICByZXR1cm4gd3JhcERlY2ltYWxPcGVyYW5kKGxlZnQpLmNtcChyaWdodCkgPT09IDA7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZShsZWZ0OiBCaWdTb3VyY2UsIHJpZ2h0OiBCaWdTb3VyY2UpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKGlzQmlnU291cmNlKGxlZnQpICYmIGlzQmlnU291cmNlKHJpZ2h0KSkge1xuICAgICAgICAgICAgcmV0dXJuIHdyYXBEZWNpbWFsT3BlcmFuZChsZWZ0KS5ndGUocmlnaHQpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ3QobGVmdDogQmlnU291cmNlLCByaWdodDogQmlnU291cmNlKTogYm9vbGVhbiB7XG4gICAgICAgIGlmIChpc0JpZ1NvdXJjZShsZWZ0KSAmJiBpc0JpZ1NvdXJjZShyaWdodCkpIHtcbiAgICAgICAgICAgIHJldHVybiB3cmFwRGVjaW1hbE9wZXJhbmQobGVmdCkuZ3QocmlnaHQpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbGUobGVmdDogQmlnU291cmNlLCByaWdodDogQmlnU291cmNlKTogYm9vbGVhbiB7XG4gICAgICAgIGlmIChpc0JpZ1NvdXJjZShsZWZ0KSAmJiBpc0JpZ1NvdXJjZShyaWdodCkpIHtcbiAgICAgICAgICAgIHJldHVybiB3cmFwRGVjaW1hbE9wZXJhbmQobGVmdCkubHRlKHJpZ2h0KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcHVibGljIGx0KGxlZnQ6IEJpZ1NvdXJjZSwgcmlnaHQ6IEJpZ1NvdXJjZSk6IGJvb2xlYW4ge1xuICAgICAgICBpZiAoaXNCaWdTb3VyY2UobGVmdCkgJiYgaXNCaWdTb3VyY2UocmlnaHQpKSB7XG4gICAgICAgICAgICByZXR1cm4gd3JhcERlY2ltYWxPcGVyYW5kKGxlZnQpLmx0KHJpZ2h0KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcHVibGljIG1pbnVzKGFyZ3VtZW50OiBCaWdTb3VyY2UpOiB1bmtub3duIHtcbiAgICAgICAgaWYgKGlzQmlnU291cmNlKGFyZ3VtZW50KSkge1xuICAgICAgICAgICAgcmV0dXJuIHdyYXBEZWNpbWFsT3BlcmFuZChhcmd1bWVudCkubXVsKC0xKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIHB1YmxpYyBtdWx0aXBseShsZWZ0OiBCaWdTb3VyY2UsIHJpZ2h0OiBCaWdTb3VyY2UpOiB1bmtub3duIHtcbiAgICAgICAgaWYgKGlzQmlnU291cmNlKGxlZnQpICYmIGlzQmlnU291cmNlKHJpZ2h0KSkge1xuICAgICAgICAgICAgcmV0dXJuIHdyYXBEZWNpbWFsT3BlcmFuZChsZWZ0KS5tdWwocmlnaHQpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcHVibGljIG5vdChsZWZ0PzogYm9vbGVhbik6IGJvb2xlYW4gfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gbGVmdCAhPSB1bmRlZmluZWQgPyAhbGVmdCA6IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBwdWJsaWMgbm90ZXEobGVmdDogQmlnU291cmNlLCByaWdodDogQmlnU291cmNlKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhdGhpcy5lcShsZWZ0LCByaWdodCk7XG4gICAgfVxuXG4gICAgcHVibGljIG9yKGxlZnQ6IGJvb2xlYW4gfCB1bmRlZmluZWQsIHJpZ2h0OiBib29sZWFuIHwgdW5kZWZpbmVkKTogYm9vbGVhbiB8IHVuZGVmaW5lZCB7XG4gICAgICAgIGlmICh0eXBlb2YgbGVmdCA9PSBcImJvb2xlYW5cIiB8fCB0eXBlb2YgcmlnaHQgPT0gXCJib29sZWFuXCIpIHtcbiAgICAgICAgICAgIHJldHVybiBsZWZ0IHx8IHJpZ2h0O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcHVibGljIHJvdW5kKHZhbHVlOiBCaWdTb3VyY2UsIGZyYWN0aW9uRGlnaXRzPzogbnVtYmVyKTogQmlnIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgaWYgKGlzQmlnU291cmNlKHZhbHVlKSkge1xuICAgICAgICAgICAgcmV0dXJuIHdyYXBEZWNpbWFsT3BlcmFuZCh2YWx1ZSkucm91bmQoZnJhY3Rpb25EaWdpdHMpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcHVibGljIHN1bShsZWZ0OiBCaWdTb3VyY2UsIHJpZ2h0OiBCaWdTb3VyY2UpOiBCaWcgfCB1bmRlZmluZWQge1xuICAgICAgICBpZiAoIWlzQmlnT3JOdW1iZXIobGVmdCkgJiYgIWlzQmlnT3JOdW1iZXIocmlnaHQpKSB7XG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGlzQmlnU291cmNlKGxlZnQpICYmIGlzQmlnU291cmNlKHJpZ2h0KSkge1xuICAgICAgICAgICAgcmV0dXJuIHdyYXBEZWNpbWFsT3BlcmFuZChsZWZ0KS5hZGQocmlnaHQpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGlzQmlnU291cmNlKGxlZnQpKSB7XG4gICAgICAgICAgICByZXR1cm4gd3JhcERlY2ltYWxPcGVyYW5kKGxlZnQpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGlzQmlnU291cmNlKHJpZ2h0KSkge1xuICAgICAgICAgICAgcmV0dXJuIHdyYXBEZWNpbWFsT3BlcmFuZChyaWdodCk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIHB1YmxpYyBhYnMoYXJndW1lbnQ6IEJpZ1NvdXJjZSk6IEJpZyB8IHVuZGVmaW5lZCB7XG4gICAgICAgIGlmIChpc0JpZ1NvdXJjZShhcmd1bWVudCkpIHtcbiAgICAgICAgICAgIHJldHVybiB3cmFwRGVjaW1hbE9wZXJhbmQoYXJndW1lbnQpLmFicygpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcHVibGljIHhhYnMoYXJndW1lbnQ6IEJpZ1NvdXJjZSk6IEJpZyB8IHVuZGVmaW5lZCB7XG4gICAgICAgIGlmIChpc0JpZ1NvdXJjZShhcmd1bWVudCkpIHtcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gd3JhcERlY2ltYWxPcGVyYW5kKGFyZ3VtZW50KTtcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZS5sdCgwKSA/IG5ldyBCaWcoMCkgOiB2YWx1ZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIHB1YmxpYyBsZW5ndGgoYXJndW1lbnQ6IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGwpOiBudW1iZXIgfCB1bmRlZmluZWQge1xuICAgICAgICBpZiAodHlwZW9mIGFyZ3VtZW50ID09PSBcInN0cmluZ1wiKSB7XG4gICAgICAgICAgICByZXR1cm4gYXJndW1lbnQubGVuZ3RoO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcHVibGljIGV4aXN0cyh2YWx1ZVNlbGVjdG9yOiAocGF0aDogc3RyaW5nKSA9PiB1bmtub3duLCBwYXRoOiBzdHJpbmcpOiBib29sZWFuIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgaWYgKHZhbHVlU2VsZWN0b3IgPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHZhbHVlID0gdmFsdWVTZWxlY3RvcihwYXRoKTtcbiAgICAgICAgcmV0dXJuIHZhbHVlICE9IHVuZGVmaW5lZCAmJiB2YWx1ZSAhPSBcIlwiO1xuICAgIH1cblxuICAgIHB1YmxpYyBjb252ZXJ0VG9EZWNpbWFsKGFyZ3VtZW50OiBCaWdTb3VyY2UgfCBzdHJpbmcgfCB1bmRlZmluZWQpOiBCaWcgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gd3JhcERlY2ltYWxPcGVyYW5kKGFyZ3VtZW50KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgY29udmVydFRvU3RyaW5nKGFyZ3VtZW50OiBCaWdTb3VyY2UgfCB1bmRlZmluZWQgfCBudWxsKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgaWYgKHR5cGVvZiBhcmd1bWVudCA9PT0gXCJzdHJpbmdcIikge1xuICAgICAgICAgICAgcmV0dXJuIGFyZ3VtZW50O1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHR5cGVvZiBhcmd1bWVudCA9PT0gXCJudW1iZXJcIikge1xuICAgICAgICAgICAgcmV0dXJuIGFyZ3VtZW50LnRvU3RyaW5nKCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoYXJndW1lbnQgaW5zdGFuY2VvZiBCaWcpIHtcbiAgICAgICAgICAgIHJldHVybiBhcmd1bWVudC50b1N0cmluZygpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVnZXhNYXRjaChwYXR0ZXJuOiBzdHJpbmcgfCB1bmRlZmluZWQsIHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQpOiBib29sZWFuIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgaWYgKHBhdHRlcm4gPT0gdW5kZWZpbmVkIHx8IHZhbHVlID09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZW9mIHZhbHVlID09PSBcInN0cmluZ1wiKSB7XG4gICAgICAgICAgICByZXR1cm4gbmV3IFJlZ0V4cChwYXR0ZXJuKS50ZXN0KHZhbHVlKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIHB1YmxpYyBvbmVvZih2YWx1ZXM6IEFycmF5PHN0cmluZyB8IG51bWJlciB8IEJpZz4sIHZhbHVlOiBzdHJpbmcgfCBudW1iZXIgfCBCaWcpOiBib29sZWFuIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgaWYgKHZhbHVlcyA9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gXCJzdHJpbmdcIikge1xuICAgICAgICAgICAgcmV0dXJuIHZhbHVlcy5pbmRleE9mKHZhbHVlKSAhPT0gLTE7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoaXNCaWdPck51bWJlcih2YWx1ZSkpIHtcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlQXNCaWcgPSBuZXcgQmlnKHZhbHVlKTtcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZXMuc29tZShpdGVtID0+IGlzQmlnT3JOdW1iZXIoaXRlbSkgJiYgdmFsdWVBc0JpZy5lcShpdGVtKSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcHVibGljIHN1YnN0cmluZyhcbiAgICAgICAgc3RyOiBzdHJpbmcgfCB1bmRlZmluZWQsXG4gICAgICAgIHN0YXJ0OiBudW1iZXIgfCB1bmRlZmluZWQsXG4gICAgICAgIGxlbmd0aDogbnVtYmVyIHwgdW5kZWZpbmVkXG4gICAgKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgaWYgKHN0ciA9PSB1bmRlZmluZWQgfHwgc3RhcnQgPT0gdW5kZWZpbmVkIHx8IGxlbmd0aCA9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGxlbmd0aCA8PSAwKSB7XG4gICAgICAgICAgICByZXR1cm4gXCJcIjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBlbmQgPSBzdGFydCArIGxlbmd0aDtcblxuICAgICAgICByZXR1cm4gc3RyLnN1YnN0cmluZyhzdGFydCwgZW5kKTtcbiAgICB9XG59XG4iXX0=
|
|
260
|
+
;
|
|
261
|
+
|
|
262
|
+
(function () {
|
|
263
|
+
var reactHotLoader = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default : undefined;
|
|
264
|
+
|
|
265
|
+
if (!reactHotLoader) {
|
|
266
|
+
return;
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
reactHotLoader.register(isBigSource, "isBigSource", "C:\\buildAgent\\work\\8df8f1edd755969c\\Common\\KCLangRuntimeUtils.ts");
|
|
270
|
+
reactHotLoader.register(isBigOrNumber, "isBigOrNumber", "C:\\buildAgent\\work\\8df8f1edd755969c\\Common\\KCLangRuntimeUtils.ts");
|
|
271
|
+
reactHotLoader.register(KCLangRuntimeUtils, "KCLangRuntimeUtils", "C:\\buildAgent\\work\\8df8f1edd755969c\\Common\\KCLangRuntimeUtils.ts");
|
|
272
|
+
})();
|
|
273
|
+
|
|
274
|
+
;
|
|
275
|
+
|
|
276
|
+
(function () {
|
|
277
|
+
var leaveModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.leaveModule : undefined;
|
|
278
|
+
leaveModule && leaveModule(module);
|
|
279
|
+
})();
|
|
280
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL0NvbW1vbi9LQ0xhbmdSdW50aW1lVXRpbHMudHMiXSwibmFtZXMiOlsiaXNCaWdTb3VyY2UiLCJ2YWx1ZSIsIkJpZyIsImlzQmlnT3JOdW1iZXIiLCJLQ0xhbmdSdW50aW1lVXRpbHMiLCJhbmQiLCJsZWZ0IiwicmlnaHQiLCJ1bmRlZmluZWQiLCJkaXZpc2lvbiIsImRpdiIsImVxIiwiY21wIiwiZ2UiLCJndGUiLCJndCIsImxlIiwibHRlIiwibHQiLCJtaW51cyIsImFyZ3VtZW50IiwibXVsIiwibXVsdGlwbHkiLCJub3QiLCJub3RlcSIsIm9yIiwicm91bmQiLCJmcmFjdGlvbkRpZ2l0cyIsInN1bSIsImFkZCIsImFicyIsInhhYnMiLCJsZW5ndGgiLCJleGlzdHMiLCJ2YWx1ZVNlbGVjdG9yIiwicGF0aCIsImNvbnZlcnRUb0RlY2ltYWwiLCJjb252ZXJ0VG9TdHJpbmciLCJ0b1N0cmluZyIsInJlZ2V4TWF0Y2giLCJwYXR0ZXJuIiwiUmVnRXhwIiwidGVzdCIsIm9uZW9mIiwidmFsdWVzIiwiaW5kZXhPZiIsInZhbHVlQXNCaWciLCJzb21lIiwiaXRlbSIsInN1YnN0cmluZyIsInN0ciIsInN0YXJ0IiwiZW5kIiwia2NMYW5nVXRpbHNOYW1lIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7O0FBRUE7Ozs7Ozs7Ozs7Ozs7QUFFQSxNQUFNQSxXQUFXLEdBQUlDLEtBQUQsSUFBK0I7QUFDL0MsTUFBSSxPQUFPQSxLQUFQLEtBQWlCLFFBQWpCLElBQTZCLE9BQU9BLEtBQVAsS0FBaUIsUUFBOUMsSUFBMERBLEtBQUssWUFBWUMsWUFBL0UsRUFBb0Y7QUFDaEYsV0FBTyxJQUFQO0FBQ0g7O0FBQ0QsU0FBTyxLQUFQO0FBQ0gsQ0FMRDs7QUFPQSxNQUFNQyxhQUFhLEdBQUlGLEtBQUQsSUFDbEIsT0FBT0EsS0FBUCxLQUFpQixRQUFqQixJQUE2QkEsS0FBSyxZQUFZQyxZQURsRDs7QUFHTyxNQUFNRSxrQkFBTixDQUF5QjtBQUdyQkMsRUFB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LElBQUk3QyxhQUFhLENBQUM2QyxJQUFELENBQWIsSUFBdUJGLFVBQVUsQ0FBQ25DLEVBQVgsQ0FBY3FDLElBQWQsQ0FBM0MsQ0FBUDtBQUNIOztBQUVELFdBQU8sS0FBUDtBQUNIOztBQUVNQyxFQUFBQSxTQUFTLENBQ1pDLEdBRFksRUFFWkMsS0FGWSxFQUdabkIsTUFIWSxFQUlNO0FBQ2xCLFFBQUlrQixHQUFHLElBQUkxQyxTQUFQLElBQW9CMkMsS0FBSyxJQUFJM0MsU0FBN0IsSUFBMEN3QixNQUFNLElBQUl4QixTQUF4RCxFQUFtRTtBQUMvRCxhQUFPQSxTQUFQO0FBQ0g7O0FBQ0QsUUFBSXdCLE1BQU0sSUFBSSxDQUFkLEVBQWlCO0FBQ2IsYUFBTyxFQUFQO0FBQ0g7O0FBQ0QsVUFBTW9CLEdBQUcsR0FBR0QsS0FBSyxHQUFHbkIsTUFBcEI7QUFFQSxXQUFPa0IsR0FBRyxDQUFDRCxTQUFKLENBQWNFLEtBQWQsRUFBcUJDLEdBQXJCLENBQVA7QUFDSDs7QUF6TTJCO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQUE7OztBQUFuQmhELGtCLENBQ0tpRCxlLEdBQWtCLGE7Ozs7Ozs7Ozs7MEJBWDlCckQsVzswQkFPQUcsYTswQkFHT0Msa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQmlnLCB7IEJpZ1NvdXJjZSB9IGZyb20gXCJiaWcuanNcIjtcblxuaW1wb3J0IHsgd3JhcERlY2ltYWxPcGVyYW5kIH0gZnJvbSBcIi4uL0VuZ2luZS9zcmMvSGVscGVycy9BdXRvY2FsY0NvbW1vbkZ1bmN0aW9uc1wiO1xuXG5jb25zdCBpc0JpZ1NvdXJjZSA9ICh2YWx1ZTogQmlnU291cmNlKTogYm9vbGVhbiA9PiB7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gXCJudW1iZXJcIiB8fCB0eXBlb2YgdmFsdWUgPT09IFwic3RyaW5nXCIgfHwgdmFsdWUgaW5zdGFuY2VvZiBCaWcpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbn07XG5cbmNvbnN0IGlzQmlnT3JOdW1iZXIgPSAodmFsdWU6IEJpZyB8IG51bWJlciB8IHVuZGVmaW5lZCB8IG51bGwgfCB1bmtub3duKSA9PlxuICAgIHR5cGVvZiB2YWx1ZSA9PT0gXCJudW1iZXJcIiB8fCB2YWx1ZSBpbnN0YW5jZW9mIEJpZztcblxuZXhwb3J0IGNsYXNzIEtDTGFuZ1J1bnRpbWVVdGlscyB7XG4gICAgcHVibGljIHN0YXRpYyBrY0xhbmdVdGlsc05hbWUgPSBcImtjTGFuZ1V0aWxzXCI7XG5cbiAgICBwdWJsaWMgYW5kKGxlZnQ6IGJvb2xlYW4gfCB1bmRlZmluZWQsIHJpZ2h0OiBib29sZWFuIHwgdW5kZWZpbmVkKTogYm9vbGVhbiB8IHVuZGVmaW5lZCB7XG4gICAgICAgIGlmIChsZWZ0ID09IHVuZGVmaW5lZCB8fCByaWdodCA9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGxlZnQgJiYgcmlnaHQ7XG4gICAgfVxuXG4gICAgcHVibGljIGRpdmlzaW9uKGxlZnQ6IEJpZ1NvdXJjZSwgcmlnaHQ6IEJpZ1NvdXJjZSk6IEJpZyB8IHVuZGVmaW5lZCB7XG4gICAgICAgIGlmIChpc0JpZ1NvdXJjZShsZWZ0KSAmJiBpc0JpZ1NvdXJjZShyaWdodCkpIHtcbiAgICAgICAgICAgIHJldHVybiB3cmFwRGVjaW1hbE9wZXJhbmQobGVmdCkuZGl2KHJpZ2h0KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIHB1YmxpYyBlcShsZWZ0OiBCaWdTb3VyY2UsIHJpZ2h0OiBCaWdTb3VyY2UpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKHR5cGVvZiBsZWZ0ID09PSBcInN0cmluZ1wiICYmIHR5cGVvZiByaWdodCA9PT0gXCJzdHJpbmdcIikge1xuICAgICAgICAgICAgcmV0dXJuIGxlZnQgPT09IHJpZ2h0O1xuICAgICAgICB9XG4gICAgICAgIGlmIChpc0JpZ1NvdXJjZShsZWZ0KSAmJiBpc0JpZ1NvdXJjZShyaWdodCkpIHtcbiAgICAgICAgICAgIHJldHVybiB3cmFwRGVjaW1hbE9wZXJhbmQobGVmdCkuY21wKHJpZ2h0KSA9PT0gMDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcHVibGljIGdlKGxlZnQ6IEJpZ1NvdXJjZSwgcmlnaHQ6IEJpZ1NvdXJjZSk6IGJvb2xlYW4ge1xuICAgICAgICBpZiAoaXNCaWdTb3VyY2UobGVmdCkgJiYgaXNCaWdTb3VyY2UocmlnaHQpKSB7XG4gICAgICAgICAgICByZXR1cm4gd3JhcERlY2ltYWxPcGVyYW5kKGxlZnQpLmd0ZShyaWdodCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHB1YmxpYyBndChsZWZ0OiBCaWdTb3VyY2UsIHJpZ2h0OiBCaWdTb3VyY2UpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKGlzQmlnU291cmNlKGxlZnQpICYmIGlzQmlnU291cmNlKHJpZ2h0KSkge1xuICAgICAgICAgICAgcmV0dXJuIHdyYXBEZWNpbWFsT3BlcmFuZChsZWZ0KS5ndChyaWdodCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHB1YmxpYyBsZShsZWZ0OiBCaWdTb3VyY2UsIHJpZ2h0OiBCaWdTb3VyY2UpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKGlzQmlnU291cmNlKGxlZnQpICYmIGlzQmlnU291cmNlKHJpZ2h0KSkge1xuICAgICAgICAgICAgcmV0dXJuIHdyYXBEZWNpbWFsT3BlcmFuZChsZWZ0KS5sdGUocmlnaHQpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbHQobGVmdDogQmlnU291cmNlLCByaWdodDogQmlnU291cmNlKTogYm9vbGVhbiB7XG4gICAgICAgIGlmIChpc0JpZ1NvdXJjZShsZWZ0KSAmJiBpc0JpZ1NvdXJjZShyaWdodCkpIHtcbiAgICAgICAgICAgIHJldHVybiB3cmFwRGVjaW1hbE9wZXJhbmQobGVmdCkubHQocmlnaHQpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbWludXMoYXJndW1lbnQ6IEJpZ1NvdXJjZSk6IHVua25vd24ge1xuICAgICAgICBpZiAoaXNCaWdTb3VyY2UoYXJndW1lbnQpKSB7XG4gICAgICAgICAgICByZXR1cm4gd3JhcERlY2ltYWxPcGVyYW5kKGFyZ3VtZW50KS5tdWwoLTEpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcHVibGljIG11bHRpcGx5KGxlZnQ6IEJpZ1NvdXJjZSwgcmlnaHQ6IEJpZ1NvdXJjZSk6IHVua25vd24ge1xuICAgICAgICBpZiAoaXNCaWdTb3VyY2UobGVmdCkgJiYgaXNCaWdTb3VyY2UocmlnaHQpKSB7XG4gICAgICAgICAgICByZXR1cm4gd3JhcERlY2ltYWxPcGVyYW5kKGxlZnQpLm11bChyaWdodCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBwdWJsaWMgbm90KGxlZnQ/OiBib29sZWFuKTogYm9vbGVhbiB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiBsZWZ0ICE9IHVuZGVmaW5lZCA/ICFsZWZ0IDogdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIHB1YmxpYyBub3RlcShsZWZ0OiBCaWdTb3VyY2UsIHJpZ2h0OiBCaWdTb3VyY2UpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICF0aGlzLmVxKGxlZnQsIHJpZ2h0KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb3IobGVmdDogYm9vbGVhbiB8IHVuZGVmaW5lZCwgcmlnaHQ6IGJvb2xlYW4gfCB1bmRlZmluZWQpOiBib29sZWFuIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgaWYgKHR5cGVvZiBsZWZ0ID09IFwiYm9vbGVhblwiIHx8IHR5cGVvZiByaWdodCA9PSBcImJvb2xlYW5cIikge1xuICAgICAgICAgICAgcmV0dXJuIGxlZnQgfHwgcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBwdWJsaWMgcm91bmQodmFsdWU6IEJpZ1NvdXJjZSwgZnJhY3Rpb25EaWdpdHM/OiBudW1iZXIpOiBCaWcgfCB1bmRlZmluZWQge1xuICAgICAgICBpZiAoaXNCaWdTb3VyY2UodmFsdWUpKSB7XG4gICAgICAgICAgICByZXR1cm4gd3JhcERlY2ltYWxPcGVyYW5kKHZhbHVlKS5yb3VuZChmcmFjdGlvbkRpZ2l0cyk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3VtKGxlZnQ6IEJpZ1NvdXJjZSwgcmlnaHQ6IEJpZ1NvdXJjZSk6IEJpZyB8IHVuZGVmaW5lZCB7XG4gICAgICAgIGlmICghaXNCaWdPck51bWJlcihsZWZ0KSAmJiAhaXNCaWdPck51bWJlcihyaWdodCkpIHtcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoaXNCaWdTb3VyY2UobGVmdCkgJiYgaXNCaWdTb3VyY2UocmlnaHQpKSB7XG4gICAgICAgICAgICByZXR1cm4gd3JhcERlY2ltYWxPcGVyYW5kKGxlZnQpLmFkZChyaWdodCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoaXNCaWdTb3VyY2UobGVmdCkpIHtcbiAgICAgICAgICAgIHJldHVybiB3cmFwRGVjaW1hbE9wZXJhbmQobGVmdCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoaXNCaWdTb3VyY2UocmlnaHQpKSB7XG4gICAgICAgICAgICByZXR1cm4gd3JhcERlY2ltYWxPcGVyYW5kKHJpZ2h0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcHVibGljIGFicyhhcmd1bWVudDogQmlnU291cmNlKTogQmlnIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgaWYgKGlzQmlnU291cmNlKGFyZ3VtZW50KSkge1xuICAgICAgICAgICAgcmV0dXJuIHdyYXBEZWNpbWFsT3BlcmFuZChhcmd1bWVudCkuYWJzKCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBwdWJsaWMgeGFicyhhcmd1bWVudDogQmlnU291cmNlKTogQmlnIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgaWYgKGlzQmlnU291cmNlKGFyZ3VtZW50KSkge1xuICAgICAgICAgICAgY29uc3QgdmFsdWUgPSB3cmFwRGVjaW1hbE9wZXJhbmQoYXJndW1lbnQpO1xuICAgICAgICAgICAgcmV0dXJuIHZhbHVlLmx0KDApID8gbmV3IEJpZygwKSA6IHZhbHVlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcHVibGljIGxlbmd0aChhcmd1bWVudDogc3RyaW5nIHwgdW5kZWZpbmVkIHwgbnVsbCk6IG51bWJlciB8IHVuZGVmaW5lZCB7XG4gICAgICAgIGlmICh0eXBlb2YgYXJndW1lbnQgPT09IFwic3RyaW5nXCIpIHtcbiAgICAgICAgICAgIHJldHVybiBhcmd1bWVudC5sZW5ndGg7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZXhpc3RzKHZhbHVlU2VsZWN0b3I6IChwYXRoOiBzdHJpbmcpID0+IHVua25vd24sIHBhdGg6IHN0cmluZyk6IGJvb2xlYW4gfCB1bmRlZmluZWQge1xuICAgICAgICBpZiAodmFsdWVTZWxlY3RvciA9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgdmFsdWUgPSB2YWx1ZVNlbGVjdG9yKHBhdGgpO1xuICAgICAgICByZXR1cm4gdmFsdWUgIT0gdW5kZWZpbmVkICYmIHZhbHVlICE9IFwiXCI7XG4gICAgfVxuXG4gICAgcHVibGljIGNvbnZlcnRUb0RlY2ltYWwoYXJndW1lbnQ6IEJpZ1NvdXJjZSB8IHN0cmluZyB8IHVuZGVmaW5lZCk6IEJpZyB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB3cmFwRGVjaW1hbE9wZXJhbmQoYXJndW1lbnQpO1xuICAgIH1cblxuICAgIHB1YmxpYyBjb252ZXJ0VG9TdHJpbmcoYXJndW1lbnQ6IEJpZ1NvdXJjZSB8IHVuZGVmaW5lZCB8IG51bGwpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgICAgICBpZiAodHlwZW9mIGFyZ3VtZW50ID09PSBcInN0cmluZ1wiKSB7XG4gICAgICAgICAgICByZXR1cm4gYXJndW1lbnQ7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodHlwZW9mIGFyZ3VtZW50ID09PSBcIm51bWJlclwiKSB7XG4gICAgICAgICAgICByZXR1cm4gYXJndW1lbnQudG9TdHJpbmcoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChhcmd1bWVudCBpbnN0YW5jZW9mIEJpZykge1xuICAgICAgICAgICAgcmV0dXJuIGFyZ3VtZW50LnRvU3RyaW5nKCk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIHB1YmxpYyByZWdleE1hdGNoKHBhdHRlcm46IHN0cmluZyB8IHVuZGVmaW5lZCwgdmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCk6IGJvb2xlYW4gfCB1bmRlZmluZWQge1xuICAgICAgICBpZiAocGF0dGVybiA9PSB1bmRlZmluZWQgfHwgdmFsdWUgPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09IFwic3RyaW5nXCIpIHtcbiAgICAgICAgICAgIHJldHVybiBuZXcgUmVnRXhwKHBhdHRlcm4pLnRlc3QodmFsdWUpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcHVibGljIG9uZW9mKHZhbHVlczogQXJyYXk8c3RyaW5nIHwgbnVtYmVyIHwgQmlnPiwgdmFsdWU6IHN0cmluZyB8IG51bWJlciB8IEJpZyk6IGJvb2xlYW4gfCB1bmRlZmluZWQge1xuICAgICAgICBpZiAodmFsdWVzID09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZW9mIHZhbHVlID09PSBcInN0cmluZ1wiKSB7XG4gICAgICAgICAgICByZXR1cm4gdmFsdWVzLmluZGV4T2YodmFsdWUpICE9PSAtMTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChpc0JpZ09yTnVtYmVyKHZhbHVlKSkge1xuICAgICAgICAgICAgY29uc3QgdmFsdWVBc0JpZyA9IG5ldyBCaWcodmFsdWUpO1xuICAgICAgICAgICAgcmV0dXJuIHZhbHVlcy5zb21lKGl0ZW0gPT4gaXNCaWdPck51bWJlcihpdGVtKSAmJiB2YWx1ZUFzQmlnLmVxKGl0ZW0pKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3Vic3RyaW5nKFxuICAgICAgICBzdHI6IHN0cmluZyB8IHVuZGVmaW5lZCxcbiAgICAgICAgc3RhcnQ6IG51bWJlciB8IHVuZGVmaW5lZCxcbiAgICAgICAgbGVuZ3RoOiBudW1iZXIgfCB1bmRlZmluZWRcbiAgICApOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgICAgICBpZiAoc3RyID09IHVuZGVmaW5lZCB8fCBzdGFydCA9PSB1bmRlZmluZWQgfHwgbGVuZ3RoID09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgfVxuICAgICAgICBpZiAobGVuZ3RoIDw9IDApIHtcbiAgICAgICAgICAgIHJldHVybiBcIlwiO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGVuZCA9IHN0YXJ0ICsgbGVuZ3RoO1xuXG4gICAgICAgIHJldHVybiBzdHIuc3Vic3RyaW5nKHN0YXJ0LCBlbmQpO1xuICAgIH1cbn1cbiJdfQ==
|