@kontur.candy/tools 2.154.0 → 2.156.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 +11 -0
- package/distr/Common/AsyncUtils.js +1 -3
- package/distr/Common/CandyApiClient/CandyApiClient.js +25 -138
- package/distr/Common/CandyApiClient/CandyApiClientContext.js +1 -8
- package/distr/Common/CandyApiClient/ClientDraftInfo/ClientDraftInfoResponse.js +1 -1
- package/distr/Common/CandyApiClient/ClientDraftInfo/FnsFormInfo.js +1 -1
- package/distr/Common/CandyApiClient/ClientDraftInfo/GetClientDraftInfoUrl.js +1 -2
- package/distr/Common/CandyApiClient/ClientDraftInfo/PrintInfo.js +1 -1
- package/distr/Common/CandyApiClient/DigestApiClient/Decorators/DigestApiClientWithCache.js +1 -16
- package/distr/Common/CandyApiClient/DigestApiClient/Decorators/DigestApiClientWithDebouncedBatching.js +1 -12
- package/distr/Common/CandyApiClient/DigestApiClient/DigestApiClient.js +1 -12
- package/distr/Common/CandyApiClient/DigestApiClient/Fakes/Data/TaxRebate1152026.js +1 -1
- package/distr/Common/CandyApiClient/DigestApiClient/Fakes/FakeDigestApiClient.js +1 -13
- package/distr/Common/CandyApiClient/DigestApiClient/Fakes/FakePicklists.js +1 -3
- package/distr/Common/CandyApiClient/DigestApiClient/IDigestApiClient.js +1 -1
- package/distr/Common/CandyApiClient/DigestApiClient/React/DigestApiClientContext.js +1 -8
- package/distr/Common/CandyApiClient/DigestApiClient/TestDigestApiClient.js +1 -7
- package/distr/Common/CandyApiClient/DigestApiClient/Types/DigestQueryFilter.js +9 -12
- package/distr/Common/CandyApiClient/DigestApiClient/Types/DigestRequest.js +1 -1
- package/distr/Common/CandyApiClient/DigestApiClient/Types/DigestResponse.js +1 -1
- package/distr/Common/CandyApiClient/FakeCandyApiClient.js +4 -72
- package/distr/Common/CandyApiClient/ICandyApiClient.js +1 -1
- package/distr/Common/CandyApiClient/IsBuffer.js +1 -2
- package/distr/Common/CandyApiClient/Types/Attachments/Attacments.js +1 -1
- package/distr/Common/CandyApiClient/Types/Attachments/GetAttachmentsResponse.js +1 -1
- package/distr/Common/CandyApiClient/Types/ChangeSet/ServerChangeSet.js +1 -1
- package/distr/Common/CandyApiClient/Types/CreateDraft/CreateDraftResponse.js +1 -1
- package/distr/Common/CandyApiClient/Types/DiagResourcesResponse.js +1 -1
- package/distr/Common/CandyApiClient/Types/DraftActions/CombineFufResult.js +12 -7
- package/distr/Common/CandyApiClient/Types/DraftActions/ConvertDraftRequest.js +1 -1
- package/distr/Common/CandyApiClient/Types/DraftActions/FileProperties.js +1 -1
- package/distr/Common/CandyApiClient/Types/DraftActions/FufSizeTooLargeError.js +1 -3
- package/distr/Common/CandyApiClient/Types/DraftFullId.js +1 -1
- package/distr/Common/CandyApiClient/Types/ErrorLog/CandyPopdProtocol.js +5 -6
- package/distr/Common/CandyApiClient/Types/ErrorLog/ServerErrorLog.js +9 -12
- package/distr/Common/CandyApiClient/Types/ExplanatoryNote/CreateExplanatoryNoteResponse.js +5 -6
- package/distr/Common/CandyApiClient/Types/FeatureFlags/FeatureFlagsResponse.js +1 -1
- package/distr/Common/CandyApiClient/Types/Focus/FocusServerResponse.js +1 -1
- package/distr/Common/CandyApiClient/Types/Focus/FocusTypes.js +5 -6
- package/distr/Common/CandyApiClient/Types/GetInner/ServerInnerResponse.js +1 -1
- package/distr/Common/CandyApiClient/Types/GetInner/ServerRawResponse.js +1 -3
- package/distr/Common/CandyApiClient/Types/GetInner/ServerRequisitesResponse.js +1 -1
- package/distr/Common/CandyApiClient/Types/Guid.js +1 -1
- package/distr/Common/CandyApiClient/Types/InstancesDeleting/InstancesDeletingRule.js +1 -1
- package/distr/Common/CandyApiClient/Types/MassActions/MassActionParameters.js +1 -1
- package/distr/Common/CandyApiClient/Types/MassActions/ValueForInstancesSettingRule.js +6 -0
- package/distr/Common/CandyApiClient/Types/Presentations/DraftPresentationType.js +5 -6
- package/distr/Common/CandyApiClient/Types/Presentations/PresentationContent.js +1 -1
- package/distr/Common/CandyApiClient/Types/Print/PrintResponse.js +1 -1
- package/distr/Common/CandyApiClient/Types/Print/PrintType.js +5 -6
- package/distr/Common/CandyApiClient/Types/Staff/EmployeeInfo.js +1 -1
- package/distr/Common/CandyApiClient/Types/Staff/ImportEmployeesOptions.js +1 -1
- package/distr/Common/CandyApiClient/Types/Staff/ImportEmployeesRequest.js +1 -1
- package/distr/Common/CandyApiClient/Types/Staff/StaffInfo.js +1 -1
- package/distr/Common/CandyApiClient/Types/Tasks/GetTasksServerResponse.js +1 -1
- package/distr/Common/CandyApiClient/Types/Tasks/Tasks.js +5 -6
- package/distr/Common/CandyApiClient/Types/TestClassification.js +1 -1
- package/distr/Common/CollectionUtils.js +1 -3
- package/distr/Common/CommonConstants/SectionNames.js +1 -3
- package/distr/Common/Comparers.js +2 -16
- package/distr/Common/EmotionStorybookWorkaroundViaAliases.js +1 -5
- package/distr/Common/EndPoints.js +1 -2
- package/distr/Common/Enums/ButtonSettingsTypeEnum.js +5 -6
- package/distr/Common/Errors.js +1 -19
- package/distr/Common/FormActionHandlers/ContextualActionNames.js +1 -3
- package/distr/Common/FormActionHandlers/ControlNamedContextualAction.js +1 -1
- package/distr/Common/Funcs.js +1 -5
- package/distr/Common/GFV.js +1 -1
- package/distr/Common/Hooks/UseLocalStorage.js +3 -10
- package/distr/Common/HttpClient/AuthenticationMode.js +3 -7
- package/distr/Common/HttpClient/FetchImplementation/BrowserFetchWithOptionalPolyfill.js +1 -3
- package/distr/Common/HttpClient/FetchImplementation/BrowserFetchWithPolyfill.js +1 -3
- package/distr/Common/HttpClient/FetchImplementation/Fetch.js +1 -1
- package/distr/Common/HttpClient/FetchImplementation/NativeBrowserFetch.js +1 -1
- package/distr/Common/HttpClient/FetchImplementation/NodeFetch.js +6 -11
- package/distr/Common/HttpClient/HttpClient.js +9 -80
- package/distr/Common/HttpClient/HttpClientAuthenticationProvider.js +1 -1
- package/distr/Common/HttpClient/IHttpClient.js +1 -1
- package/distr/Common/IndentString.js +1 -3
- package/distr/Common/IntRangeUtils.js +3 -10
- package/distr/Common/IterableUtils.js +3 -76
- package/distr/Common/KCLangRuntimeUtils.js +1 -87
- package/distr/Common/ModelPath/BuildIterationSequence.js +1 -5
- package/distr/Common/ModelPath/EachCurrentCollision.js +5 -6
- package/distr/Common/ModelPath/IEquatable.js +1 -1
- package/distr/Common/ModelPath/Map/AbsoluteModelPathMap.js +1 -8
- package/distr/Common/ModelPath/Map/Map2.js +2 -24
- package/distr/Common/ModelPath/Map/ModelPathMap.js +1 -8
- package/distr/Common/ModelPath/ModelPath.js +16 -140
- package/distr/Common/ModelPath/ModelPathBuilder.js +1 -14
- package/distr/Common/ModelPath/ModelPathHelper.js +1 -2
- package/distr/Common/ModelPath/PathMatcher.js +5 -24
- package/distr/Common/ModelPath/PathSplitHelper.js +1 -6
- package/distr/Common/ModelPath/Set/AbsoluteModelPathSet.js +1 -10
- package/distr/Common/ModelPath/Set/AbsoluteResolvedModelPathSet.js +1 -10
- package/distr/Common/ModelPath/Set/ModelPathSet.js +1 -10
- package/distr/Common/ModelPath/Set/Set2.js +1 -16
- package/distr/Common/NidusClient/ContextualNidusClient/ContextualNidusClient.js +1 -9
- package/distr/Common/NidusClient/ContextualNidusClient/IContextualNidusClient.js +1 -1
- package/distr/Common/NidusClient/Fakes/CreateUniqueNidusEntryId.js +1 -3
- package/distr/Common/NidusClient/Fakes/FakeNidusClient.js +1 -17
- package/distr/Common/NidusClient/Fakes/LocalStorageBasedNidusClient.js +1 -30
- package/distr/Common/NidusClient/INidusClient.js +1 -3
- package/distr/Common/NidusClient/NidusClientContext.js +1 -14
- package/distr/Common/NidusClient/NidusClientImpl.js +1 -18
- package/distr/Common/PathConstants.js +1 -3
- package/distr/Common/StringArrayKey.js +1 -8
- package/distr/Common/TypingUtils.js +7 -26
- package/distr/Common/UUID.js +1 -4
- package/distr/Common/UseAsyncEffect.js +3 -7
- package/distr/Common/UseShowOnce.js +1 -17
- package/distr/Common/UseTypedSelector.js +1 -3
- package/distr/Common/getRngSchemaFilename.js +21 -0
- package/distr/Common/hashUtils.js +1 -4
- package/distr/Tools/src/BuildTasks/ClientJS/BuildClientJsTask.js +1 -23
- package/distr/Tools/src/BuildTasks/ClientJS/IsWebpack5.js +3 -10
- package/distr/Tools/src/BuildTasks/Engine/AcquireFormEngine.js +1 -10
- package/distr/Tools/src/BuildTasks/Engine/AcquirePublishedEngineTask.js +5 -23
- package/distr/Tools/src/BuildTasks/Engine/BuildLocalEngineTask.js +1 -27
- package/distr/Tools/src/BuildTasks/Engine/EngineSource.js +1 -2
- package/distr/Tools/src/BuildTasks/EngineStructureUtils.js +3 -10
- package/distr/Tools/src/BuildTasks/EngineVersionUtils.js +1 -9
- package/distr/Tools/src/BuildTasks/FSTask.js +1 -19
- package/distr/Tools/src/BuildTasks/Form/CompileForm.js +1 -19
- package/distr/Tools/src/BuildTasks/Form/GenerateForm.js +1 -16
- package/distr/Tools/src/BuildTasks/Form/NullFormGenerator.js +1 -11
- package/distr/Tools/src/BuildTasks/Form/WriteAttachmentPathFiles.js +1 -10
- package/distr/Tools/src/BuildTasks/Form/WriteFLangNormalizationFiles.js +1 -10
- package/distr/Tools/src/BuildTasks/Generator/AcquireFormGenerator.js +1 -10
- package/distr/Tools/src/BuildTasks/Generator/AcquirePublishedGeneratorTask.js +5 -26
- package/distr/Tools/src/BuildTasks/Generator/BuildGeneratorFromSourcesTask.js +1 -38
- package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/CreateAsyncGenerator.js +2 -42
- package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/GeneratorRequireUtils.js +4 -39
- package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/ProcessSugarWorker.js +4 -7
- package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/ReadSourcesAndProcessSugarWorker.js +4 -10
- package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/RequireUncached.js +9 -17
- package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/TypedProcessWorker.js +3 -5
- package/distr/Tools/src/BuildTasks/ProcessUtils/ProcessUtils.js +1 -13
- package/distr/Tools/src/BuildTasks/ProcessUtils/ShellProcessHandle.js +1 -20
- package/distr/Tools/src/BuildTasks/PublishedVersionUtils.js +3 -48
- package/distr/Tools/src/BuildTasks/ReadFormSource.js +7 -32
- package/distr/Tools/src/BuildTasks/ResolveFormInfo.js +5 -32
- package/distr/Tools/src/BuildTasks/Version.js +1 -10
- package/distr/Tools/src/BuildTasks/WriteFormMeta.js +1 -10
- package/distr/Tools/src/CLICommands/BuildForms/BuildCacheMode.js +5 -9
- package/distr/Tools/src/CLICommands/BuildForms/BuildFormsOptions.js +1 -5
- package/distr/Tools/src/CLICommands/BuildForms/RunBuildForms.js +34 -70
- package/distr/Tools/src/CLICommands/BuildServer/BuildLogsWebsocketController.js +1 -12
- package/distr/Tools/src/CLICommands/BuildServer/BuildServerServerOptions.js +1 -5
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerBackendResourcesController.js +1 -67
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerBackendResourcesUpdatesController.js +3 -28
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerBuildFormsController.js +3 -41
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerClientJsController.js +3 -23
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerClientJsFromResourcesController.js +3 -20
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerFormInfoController.js +1 -23
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerLocalSourcesEngineController.js +1 -37
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerPrebuiltResourcesController.js +1 -13
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerPublishedEngineController.js +1 -40
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/BuildFormDevServer.js +8 -49
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/ClientJsDevServer.js +1 -13
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/EngineDevServer.js +1 -17
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/ReportGeneratorErrorToPageBody.js +1 -4
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/RunFormCompilationViaWebpackDevServer.js +10 -19
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackDevServerWorker/WebpackDevServerWorker.js +12 -26
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackDevServerWorker/WebpackDevServerWorkerFactory.js +1 -5
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackInMemoryUtils/IInputFileSystem.js +1 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackInMemoryUtils/IWatchFileSystem.js +1 -1
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackInMemoryUtils/WebpackHybridFileSystem.js +10 -44
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/Directories/FarmDirectory.js +1 -17
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/GlobToRegexp.js +1 -5
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/IGeneratedServerSideSourcesProvider.js +1 -1
- package/distr/Tools/src/CLICommands/BuildServer/RunBuildServer.js +1 -27
- package/distr/Tools/src/CLICommands/BuildServer/StdStreamsIntercepter.js +11 -16
- package/distr/Tools/src/CLICommands/CommonOptions/BuildDebugOnlyOption.js +1 -1
- package/distr/Tools/src/CLICommands/CommonOptions/CommonOptionDefintions.js +1 -1
- package/distr/Tools/src/CLICommands/CommonOptions/CommonOptions.js +1 -1
- package/distr/Tools/src/CLICommands/DevBuild/DevBuildOptions.js +1 -4
- package/distr/Tools/src/CLICommands/DevBuild/RunDevBuild.js +23 -34
- package/distr/Tools/src/CLICommands/FormStats/FormStatsOptions.js +1 -4
- package/distr/Tools/src/CLICommands/FormStats/RunFormStats.js +1 -15
- package/distr/Tools/src/CLICommands/FormsHelper/FormsHelperController.js +3 -19
- package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/autocalc/{gfv}.calc.js +1 -2
- package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/helpers/setKppValue.js +1 -2
- package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/test/browser/Smoke.test.js +1 -6
- package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/test/ui/DemoTest.test.js +1 -11
- package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/validations/kppValue.js +3 -4
- package/distr/Tools/src/CLICommands/InitForm/InitFormOptions.js +1 -4
- package/distr/Tools/src/CLICommands/InitForm/RunInitForm.js +1 -23
- package/distr/Tools/src/CLICommands/Localization/LocalizationOptions.js +1 -4
- package/distr/Tools/src/CLICommands/Localization/RunLocalization.js +7 -23
- package/distr/Tools/src/CLICommands/RenameFiles/RenameFilesOptions.js +26 -0
- package/distr/Tools/src/CLICommands/RenameFiles/RunRenameFiles.js +48 -0
- package/distr/Tools/src/CLICommands/UpgradeForm/RunUpgradeForm.js +1 -37
- package/distr/Tools/src/CLICommands/UpgradeForm/UpgradeFormOptions.js +1 -4
- package/distr/Tools/src/CandyCLI.js +7 -56
- package/distr/Tools/src/CheckNodeJsVersion.js +3 -10
- package/distr/Tools/src/Commons/ApiClient/ToolsApiClient.js +1 -10
- package/distr/Tools/src/Commons/ConsoleApplication/ConsoleApplication.js +4 -29
- package/distr/Tools/src/Commons/ConsoleApplication/ConsoleApplicationContext.js +1 -6
- package/distr/Tools/src/Commons/ErrorUntyped.js +1 -1
- package/distr/Tools/src/Commons/EventObject.js +10 -20
- package/distr/Tools/src/Commons/ExecUtils.js +3 -9
- package/distr/Tools/src/Commons/ExtractGfvsFromFileName.js +1 -7
- package/distr/Tools/src/Commons/FormGlobsUtils.js +1 -33
- package/distr/Tools/src/Commons/FsUtils.js +1 -12
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Actions.js +1 -8
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Methods.js +4 -15
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/NotFoundWebError.js +1 -4
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/CookieParamParamBinder.js +1 -5
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/IParamBinder.js +1 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/JsonBodyParamBinder.js +1 -4
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/StringBodyParamBinder.js +1 -5
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/UrlParamBinder.js +2 -5
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/UrlQueryParamBinder.js +1 -5
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Params.js +1 -14
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/CustomActionResultHandler.js +1 -4
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/CustomContentResultHandler.js +1 -5
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/EmptyResultHandler.js +1 -4
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/HtmlResultHandler.js +1 -4
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/IResultHandler.js +1 -1
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/JsonResultHandler.js +1 -4
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/PlainTextResultHandler.js +1 -4
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/StreamResultHandler.js +1 -36
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results.js +1 -9
- package/distr/Tools/src/Commons/HttpServer/ExpressWrapper/ExpressServerWrapper.js +5 -35
- package/distr/Tools/src/Commons/HttpServer/ExpressWrapper/SingletonController.js +9 -11
- package/distr/Tools/src/Commons/Locks/Lock.js +1 -8
- package/distr/Tools/src/Commons/Locks/LockHandle.js +1 -5
- package/distr/Tools/src/Commons/Locks/ReadWriteLockCollection.js +1 -9
- package/distr/Tools/src/Commons/Logging/ELKLogger.js +17 -22
- package/distr/Tools/src/Commons/Logging/ILogger.js +1 -5
- package/distr/Tools/src/Commons/Logging/InMemoryLogger.js +3 -21
- package/distr/Tools/src/Commons/Logging/Logger.js +9 -29
- package/distr/Tools/src/Commons/Logging/StaticLogger.js +11 -15
- package/distr/Tools/src/Commons/Options/CommandBasedOptionsParser.d.js +1 -1
- package/distr/Tools/src/Commons/Options/CommandBasedOptionsParser.js +3 -37
- package/distr/Tools/src/Commons/PathPattern.js +1 -13
- package/distr/Tools/src/Commons/TasksCore/AggregatedError.js +1 -4
- package/distr/Tools/src/Commons/TasksCore/BuildTask.js +1 -1
- package/distr/Tools/src/Commons/TasksCore/ChainableValueProducer.js +13 -200
- package/distr/Tools/src/Commons/TasksCore/DirectoryEntriesProducer.js +1 -20
- package/distr/Tools/src/Commons/TasksCore/EmptyProducer.js +7 -10
- package/distr/Tools/src/Commons/TasksCore/FileSystemEntriesProducer.js +1 -15
- package/distr/Tools/src/Commons/TasksCore/FileValueProducer.js +1 -15
- package/distr/Tools/src/Commons/TasksCore/Observe.js +1 -13
- package/distr/Tools/src/Commons/TasksCore/SingleValueProducer.js +5 -11
- package/distr/Tools/src/Commons/TimingUtils.js +1 -2
- package/distr/Tools/src/FormWebpackConfiguration/CacheAssetsPlugin.js +13 -51
- package/distr/Tools/src/FormWebpackConfiguration/createFormWebpackConfiguration.js +4 -14
- package/distr/Tools/src/GenerateReadMe.js +1 -13
- package/distr/Tools/src/LocalServerFrontEndDist/enhancedClient.js +1 -1
- package/distr/Tools/src/LocalServerFrontEndDist/enhancedClient.js.LICENSE.txt +10 -1
- package/distr/Tools/src/LocalServerFrontEndDist/index.js +1 -1
- package/distr/Tools/src/LocalServerFrontEndDist/index.js.LICENSE.txt +10 -1
- package/distr/Tools/src/LocalServerFrontEndDist/index.js.map +1 -1
- package/distr/Tools/src/Options/CandyToolOptions.js +3 -11
- package/distr/Tools/src/ReadFarmConfig.js +1 -5
- package/distr/Tools/src/SelfUpdate.js +4 -28
- package/distr/Tools/src/StaticFilesForProductionResourcesDir/client.js +1506 -1257
- package/distr/Tools/src/StaticFilesForProductionResourcesDir/client.js.LICENSE.txt +1 -0
- package/distr/Tools/src/StaticFilesForProductionResourcesDir/client.js.map +1 -1
- package/distr/Tools/src/StaticFilesForProductionResourcesDir/client.min.js +843 -623
- package/distr/Tools/src/StaticFilesForProductionResourcesDir/client.min.js.LICENSE.txt +1 -0
- package/distr/Tools/src/StaticFilesForProductionResourcesDir/client.min.js.map +1 -1
- package/distr/Tools/src/StaticFilesForProductionResourcesDir/jquery-1.11.3.min.js +777 -1117
- package/distr/Tools/src/StaticFilesForProductionResourcesDir/polyfill.min.js +1665 -2015
- package/distr/Tools/src/StaticFilesForProductionResourcesDir/testing.min.js +9 -55
- package/distr/Tools/src/StaticFilesForResourcesDir/jquery-1.11.3.min.js +777 -1117
- package/distr/Tools/src/StaticFilesForResourcesDir/polyfill.min.js +1665 -2015
- package/distr/Tools/src/StaticFilesForResourcesDir/testing.min.js +9 -55
- package/package.json +10 -10
- /package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/schemas/{{gfv}.rng.xml → {gfv}.0.rng.xml} +0 -0
|
@@ -10,7 +10,6 @@
|
|
|
10
10
|
};
|
|
11
11
|
return t[r].call(i.exports, i, i.exports, n), i.l = !0, i.exports;
|
|
12
12
|
}
|
|
13
|
-
|
|
14
13
|
var e = {};
|
|
15
14
|
return n.m = t, n.c = e, n.i = function (t) {
|
|
16
15
|
return t;
|
|
@@ -25,17 +24,14 @@
|
|
|
25
24
|
}, n.p = "", n(n.s = 1);
|
|
26
25
|
}([function (t, n) {
|
|
27
26
|
var e;
|
|
28
|
-
|
|
29
27
|
e = function () {
|
|
30
28
|
return this;
|
|
31
29
|
}();
|
|
32
|
-
|
|
33
30
|
try {
|
|
34
31
|
e = e || Function("return this")() || (0, eval)("this");
|
|
35
32
|
} catch (r) {
|
|
36
33
|
"object" == typeof window && (e = window);
|
|
37
34
|
}
|
|
38
|
-
|
|
39
35
|
t.exports = e;
|
|
40
36
|
}, function (t, n, e) {
|
|
41
37
|
"use strict";
|
|
@@ -44,11 +40,9 @@
|
|
|
44
40
|
function n(t, n) {
|
|
45
41
|
if (t !== n) throw new TypeError("Cannot instantiate an arrow function");
|
|
46
42
|
}
|
|
47
|
-
|
|
48
43
|
function e(t, n) {
|
|
49
44
|
for (var e = Object.assign({}, t), r = Object.keys(n), i = Array.isArray(r), o = 0, r = i ? r : r[Symbol.iterator]();;) {
|
|
50
45
|
var u;
|
|
51
|
-
|
|
52
46
|
if (i) {
|
|
53
47
|
if (o >= r.length) break;
|
|
54
48
|
u = r[o++];
|
|
@@ -56,15 +50,12 @@
|
|
|
56
50
|
if (o = r.next(), o.done) break;
|
|
57
51
|
u = o.value;
|
|
58
52
|
}
|
|
59
|
-
|
|
60
53
|
var a = u;
|
|
61
54
|
t[a] = n[a](e);
|
|
62
55
|
}
|
|
63
56
|
}
|
|
64
|
-
|
|
65
57
|
function r(e) {
|
|
66
58
|
var r = this;
|
|
67
|
-
|
|
68
59
|
if (!t.__REACT_DEVTOOLS_GLOBAL_HOOK__) {
|
|
69
60
|
t.__REACT_DEVTOOLS_GLOBAL_HOOK__ = {
|
|
70
61
|
inject: () => {},
|
|
@@ -72,14 +63,11 @@
|
|
|
72
63
|
onCommitFiberRoot: () => {}
|
|
73
64
|
};
|
|
74
65
|
}
|
|
75
|
-
|
|
76
66
|
try {
|
|
77
67
|
t.__REACT_DEVTOOLS_GLOBAL_HOOK__ = t.parent.__REACT_DEVTOOLS_GLOBAL_HOOK__;
|
|
78
68
|
} catch (e) {}
|
|
79
|
-
|
|
80
69
|
if (t.__REACT_DEVTOOLS_GLOBAL_HOOK__) {
|
|
81
70
|
var i = t.__REACT_DEVTOOLS_GLOBAL_HOOK__.inject;
|
|
82
|
-
|
|
83
71
|
t.__REACT_DEVTOOLS_GLOBAL_HOOK__.inject = function (t) {
|
|
84
72
|
n(this, r);
|
|
85
73
|
t.Mount;
|
|
@@ -87,56 +75,46 @@
|
|
|
87
75
|
}.bind(this);
|
|
88
76
|
}
|
|
89
77
|
}
|
|
90
|
-
|
|
91
78
|
function i(t) {
|
|
92
79
|
var r = this,
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
80
|
+
i = t.Mount,
|
|
81
|
+
o = t.Reconciler,
|
|
82
|
+
c = i;
|
|
96
83
|
e(o, {
|
|
97
84
|
receiveComponent: function () {
|
|
98
85
|
function t(t) {
|
|
99
86
|
return n(this, r), function (e, i, o, u) {
|
|
100
87
|
n(this, r), t.receiveComponent(e, i, o, u);
|
|
101
88
|
var d = e._currentElement;
|
|
102
|
-
|
|
103
89
|
if ((i !== d || u !== e._context) && e._currentElement && e._currentElement.type) {
|
|
104
90
|
var s = a(e, c);
|
|
105
91
|
f(s, e, !1);
|
|
106
92
|
}
|
|
107
93
|
}.bind(this);
|
|
108
94
|
}
|
|
109
|
-
|
|
110
95
|
return t;
|
|
111
96
|
}().bind(this),
|
|
112
97
|
mountComponent: function () {
|
|
113
98
|
function t(t) {
|
|
114
99
|
return n(this, r), function (e, i, o, a, c, d) {
|
|
115
100
|
for (var s = arguments.length, l = Array(s > 6 ? s - 6 : 0), v = 6; v < s; v++) l[v - 6] = arguments[v];
|
|
116
|
-
|
|
117
101
|
n(this, r);
|
|
118
102
|
var p = t.mountComponent.apply(t, [e, i, o, a, c, d].concat(l));
|
|
119
|
-
|
|
120
103
|
if ("string" == typeof p) {
|
|
121
104
|
var _ = u(p);
|
|
122
|
-
|
|
123
105
|
return _ ? (f(_, e, !0), _.outerHTML) : p;
|
|
124
106
|
}
|
|
125
|
-
|
|
126
107
|
return p.node && f(p.node, e, !0), p;
|
|
127
108
|
}.bind(this);
|
|
128
109
|
}
|
|
129
|
-
|
|
130
110
|
return t;
|
|
131
111
|
}().bind(this)
|
|
132
112
|
});
|
|
133
113
|
}
|
|
134
|
-
|
|
135
114
|
function o(t) {
|
|
136
115
|
var e = this;
|
|
137
116
|
if ("string" == typeof t) return t;
|
|
138
117
|
if (void 0 === t || null === t) return "";
|
|
139
|
-
|
|
140
118
|
try {
|
|
141
119
|
return JSON.stringify(t);
|
|
142
120
|
} catch (r) {
|
|
@@ -147,19 +125,15 @@
|
|
|
147
125
|
} catch (r) {
|
|
148
126
|
return "";
|
|
149
127
|
}
|
|
150
|
-
|
|
151
128
|
return "";
|
|
152
129
|
}
|
|
153
130
|
}
|
|
154
|
-
|
|
155
131
|
function u(t) {
|
|
156
132
|
var n = void 0;
|
|
157
133
|
return n = t.startsWith("<tbody") || t.startsWith("<tfoot") || t.startsWith("<thead") ? document.createElement("table") : t.startsWith("<th") || t.startsWith("<td") ? document.createElement("tr") : t.startsWith("<tr") ? document.createElement("thead") : document.createElement("div"), n.innerHTML = t, n.childNodes[0];
|
|
158
134
|
}
|
|
159
|
-
|
|
160
135
|
function a(t, n) {
|
|
161
136
|
var e = _(t);
|
|
162
|
-
|
|
163
137
|
if (!e && "string" == typeof t._rootNodeID) try {
|
|
164
138
|
e = n.getNode(t._rootNodeID);
|
|
165
139
|
} catch (r) {
|
|
@@ -167,79 +141,61 @@
|
|
|
167
141
|
}
|
|
168
142
|
return e;
|
|
169
143
|
}
|
|
170
|
-
|
|
171
144
|
function c(t) {
|
|
172
145
|
return t._currentElement && t._currentElement.type ? t._currentElement.type.name : null;
|
|
173
146
|
}
|
|
174
|
-
|
|
175
147
|
function d(t, n, e) {
|
|
176
148
|
return !n.startsWith("$$") && !n.startsWith("on") && "children" !== n && "data-tid-auto" !== n && "function" != typeof e;
|
|
177
149
|
}
|
|
178
|
-
|
|
179
150
|
function f(t, n, e) {
|
|
180
151
|
if (t && "function" == typeof t.setAttribute) {
|
|
181
152
|
var r = l({}, n);
|
|
182
|
-
|
|
183
153
|
for (var i in r) t.setAttribute(i, r[i]);
|
|
184
154
|
}
|
|
185
155
|
}
|
|
186
|
-
|
|
187
156
|
function s(t, e, r) {
|
|
188
157
|
var i = this;
|
|
189
|
-
|
|
190
158
|
if (null !== r) {
|
|
191
159
|
var o = t[e],
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
160
|
+
u = (o || "").split(" ").filter(function (t) {
|
|
161
|
+
return n(this, i), "" !== t;
|
|
162
|
+
}.bind(this));
|
|
195
163
|
u.includes(r) || (t[e] = (o ? String(o) + " " : "") + r);
|
|
196
164
|
}
|
|
197
165
|
}
|
|
198
|
-
|
|
199
166
|
function l(t, n) {
|
|
200
167
|
t = v(t, n);
|
|
201
168
|
var e = n._currentElement && n._currentElement._owner;
|
|
202
169
|
return e && p(e, n) && (t = l(t, e)), t;
|
|
203
170
|
}
|
|
204
|
-
|
|
205
171
|
function v(t, n) {
|
|
206
172
|
var e = n._currentElement && n._currentElement.props;
|
|
207
|
-
|
|
208
173
|
if (c(n) && s(t, "data-comp-name", c(n)), e) {
|
|
209
174
|
e["data-tid-auto"] && s(t, "data-tid-auto", e["data-tid-auto"]);
|
|
210
|
-
|
|
211
175
|
for (var r in e) d(n, r, e[r]) && (t["data-prop-" + r] = o(e[r]));
|
|
212
176
|
}
|
|
213
|
-
|
|
214
177
|
return t;
|
|
215
178
|
}
|
|
216
|
-
|
|
217
179
|
function p(t, n) {
|
|
218
180
|
if ("string" == typeof t._rootNodeID || "string" == typeof n._rootNodeID) {
|
|
219
181
|
var e = t._rootNodeID,
|
|
220
|
-
|
|
182
|
+
r = n._rootNodeID;
|
|
221
183
|
if (null !== e && null !== r) return e === r;
|
|
222
184
|
}
|
|
223
|
-
|
|
224
185
|
var i = _(t),
|
|
225
|
-
|
|
226
|
-
|
|
186
|
+
o = _(n);
|
|
227
187
|
return null !== i && null !== o && i === o;
|
|
228
188
|
}
|
|
229
|
-
|
|
230
189
|
function _(t) {
|
|
231
190
|
return t._hostNode ? t._hostNode : t._renderedComponent ? _(t._renderedComponent) : null;
|
|
232
191
|
}
|
|
233
|
-
|
|
234
192
|
t.ReactTesting = {
|
|
235
193
|
addRenderContainer: function () {
|
|
236
194
|
function t() {}
|
|
237
|
-
|
|
238
195
|
return t;
|
|
239
196
|
}(),
|
|
240
197
|
removeRenderContainer: function () {
|
|
241
198
|
function t() {}
|
|
242
|
-
|
|
243
199
|
return t;
|
|
244
200
|
}()
|
|
245
201
|
}, r(i), document.addEventListener("keydown", function (t) {
|
|
@@ -254,15 +210,13 @@
|
|
|
254
210
|
var e = document.createElement("div");
|
|
255
211
|
e.classList.add("tid-wrapper"), e.innerHTML = "<div><div>" + t.getAttribute("data-tid-auto") + "</div></div>", e.addEventListener("click", function (t) {
|
|
256
212
|
n(void 0, void 0);
|
|
257
|
-
|
|
258
213
|
var e = function (r) {
|
|
259
214
|
n(void 0, void 0), r.clipboardData.setData("text/plain", t.target.innerText), r.preventDefault(), document.removeEventListener("copy", e);
|
|
260
215
|
}.bind(void 0);
|
|
261
|
-
|
|
262
216
|
document.addEventListener("copy", e), document.execCommand("copy");
|
|
263
217
|
}.bind(void 0)), t.appendChild(e);
|
|
264
218
|
}.bind(void 0)));
|
|
265
219
|
}.bind(void 0));
|
|
266
220
|
}).call(n, e(0));
|
|
267
221
|
}]);
|
|
268
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9TdGF0aWNGaWxlc0ZvclJlc291cmNlc0Rpci90ZXN0aW5nLm1pbi5qcyJdLCJuYW1lcyI6WyJ0IiwibiIsInIiLCJlIiwiZXhwb3J0cyIsImkiLCJsIiwiY2FsbCIsIm0iLCJjIiwiZCIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiY29uZmlndXJhYmxlIiwiZW51bWVyYWJsZSIsImdldCIsIm8iLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsInAiLCJzIiwiRnVuY3Rpb24iLCJldmFsIiwid2luZG93IiwiVHlwZUVycm9yIiwiYXNzaWduIiwia2V5cyIsIkFycmF5IiwiaXNBcnJheSIsIlN5bWJvbCIsIml0ZXJhdG9yIiwidSIsImxlbmd0aCIsIm5leHQiLCJkb25lIiwidmFsdWUiLCJhIiwiX19SRUFDVF9ERVZUT09MU19HTE9CQUxfSE9PS19fIiwiaW5qZWN0Iiwic3VwcG9ydHNGaWJlciIsIm9uQ29tbWl0RmliZXJSb290IiwicGFyZW50IiwiTW91bnQiLCJiaW5kIiwiUmVjb25jaWxlciIsInJlY2VpdmVDb21wb25lbnQiLCJfY3VycmVudEVsZW1lbnQiLCJfY29udGV4dCIsInR5cGUiLCJmIiwibW91bnRDb21wb25lbnQiLCJhcmd1bWVudHMiLCJ2IiwiYXBwbHkiLCJjb25jYXQiLCJfIiwib3V0ZXJIVE1MIiwibm9kZSIsIkpTT04iLCJzdHJpbmdpZnkiLCJtYXAiLCJzdGFydHNXaXRoIiwiZG9jdW1lbnQiLCJjcmVhdGVFbGVtZW50IiwiaW5uZXJIVE1MIiwiY2hpbGROb2RlcyIsIl9yb290Tm9kZUlEIiwiZ2V0Tm9kZSIsIm5hbWUiLCJzZXRBdHRyaWJ1dGUiLCJzcGxpdCIsImZpbHRlciIsImluY2x1ZGVzIiwiU3RyaW5nIiwiX293bmVyIiwicHJvcHMiLCJfaG9zdE5vZGUiLCJfcmVuZGVyZWRDb21wb25lbnQiLCJSZWFjdFRlc3RpbmciLCJhZGRSZW5kZXJDb250YWluZXIiLCJyZW1vdmVSZW5kZXJDb250YWluZXIiLCJhZGRFdmVudExpc3RlbmVyIiwiYWx0S2V5IiwiY3RybEtleSIsInNoaWZ0S2V5IiwiY29kZSIsInF1ZXJ5U2VsZWN0b3JBbGwiLCJmb3JFYWNoIiwicmVtb3ZlIiwiY2xhc3NMaXN0IiwiYWRkIiwiZ2V0QXR0cmlidXRlIiwiY2xpcGJvYXJkRGF0YSIsInNldERhdGEiLCJ0YXJnZXQiLCJpbm5lclRleHQiLCJwcmV2ZW50RGVmYXVsdCIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJleGVjQ29tbWFuZCIsImFwcGVuZENoaWxkIl0sIm1hcHBpbmdzIjoiQUFBQTs7QUFFQSxDQUFDLFVBQVVBLENBQVYsRUFBYTtBQUNaLFdBQVNDLENBQVQsQ0FBV0MsQ0FBWCxFQUFjO0FBQ1osUUFBSUMsQ0FBQyxDQUFDRCxDQUFELENBQUwsRUFBVSxPQUFPQyxDQUFDLENBQUNELENBQUQsQ0FBRCxDQUFLRSxPQUFaO0FBQ1YsUUFBSUMsQ0FBQyxHQUFHRixDQUFDLENBQUNELENBQUQsQ0FBRCxHQUFPO0FBQ2JHLE1BQUFBLENBQUMsRUFBRUgsQ0FEVTtBQUViSSxNQUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUZTO0FBR2JGLE1BQUFBLE9BQU8sRUFBRTtBQUhJLEtBQWY7QUFLQSxXQUFPSixDQUFDLENBQUNFLENBQUQsQ0FBRCxDQUFLSyxJQUFMLENBQVVGLENBQUMsQ0FBQ0QsT0FBWixFQUFxQkMsQ0FBckIsRUFBd0JBLENBQUMsQ0FBQ0QsT0FBMUIsRUFBbUNILENBQW5DLEdBQXVDSSxDQUFDLENBQUNDLENBQUYsR0FBTSxDQUFDLENBQTlDLEVBQWlERCxDQUFDLENBQUNELE9BQTFEO0FBQ0Q7O0FBRUQsTUFBSUQsQ0FBQyxHQUFHLEVBQVI7QUFDQSxTQUFPRixDQUFDLENBQUNPLENBQUYsR0FBTVIsQ0FBTixFQUFTQyxDQUFDLENBQUNRLENBQUYsR0FBTU4sQ0FBZixFQUFrQkYsQ0FBQyxDQUFDSSxDQUFGLEdBQU0sVUFBVUwsQ0FBVixFQUFhO0FBQzFDLFdBQU9BLENBQVA7QUFDRCxHQUZNLEVBRUpD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Q0FBQ29DLFdBQVQsQ0FBcUIsTUFBckIsQ0FBdEM7QUFDRCxTQVIwSSxDQVF6SXZELElBUnlJLENBUXBJLEtBQUssQ0FSK0gsQ0FBNUIsQ0FBL0csRUFRaUIzQyxDQUFDLENBQUNtRyxXQUFGLENBQWNoRyxDQUFkLENBUmpCO0FBU0QsT0FacUUsQ0FZcEV3QyxJQVpvRSxDQVkvRCxLQUFLLENBWjBELENBQXJELENBRkUsQ0FKbkI7QUFtQkQsS0FwQjZDLENBb0I1Q0EsSUFwQjRDLENBb0J2QyxLQUFLLENBcEJrQyxDQUFyQyxDQVhUO0FBZ0NELEdBOU5ELEVBOE5HcEMsSUE5TkgsQ0E4TlFOLENBOU5SLEVBOE5XRSxDQUFDLENBQUMsQ0FBRCxDQTlOWjtBQStORCxDQWhQQyxDQXZCRCxDQUFEIiwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbiFmdW5jdGlvbiAodCkge1xuICBmdW5jdGlvbiBuKHIpIHtcbiAgICBpZiAoZVtyXSkgcmV0dXJuIGVbcl0uZXhwb3J0cztcbiAgICB2YXIgaSA9IGVbcl0gPSB7XG4gICAgICBpOiByLFxuICAgICAgbDogITEsXG4gICAgICBleHBvcnRzOiB7fVxuICAgIH07XG4gICAgcmV0dXJuIHRbcl0uY2FsbChpLmV4cG9ydHMsIGksIGkuZXhwb3J0cywgbiksIGkubCA9ICEwLCBpLmV4cG9ydHM7XG4gIH1cblxuICB2YXIgZSA9IHt9O1xuICByZXR1cm4gbi5tID0gdCwgbi5jID0gZSwgbi5pID0gZnVuY3Rpb24gKHQpIHtcbiAgICByZXR1cm4gdDtcbiAgfSwgbi5kID0gZnVuY3Rpb24gKHQsIG4sIGUpIHtcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodCwgbiwge1xuICAgICAgY29uZmlndXJhYmxlOiAhMSxcbiAgICAgIGVudW1lcmFibGU6ICEwLFxuICAgICAgZ2V0OiBlXG4gICAgfSk7XG4gIH0sIG4ubyA9IGZ1bmN0aW9uICh0LCBuKSB7XG4gICAgcmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0LCBuKTtcbiAgfSwgbi5wID0gXCJcIiwgbihuLnMgPSAxKTtcbn0oW2Z1bmN0aW9uICh0LCBuKSB7XG4gIHZhciBlO1xuXG4gIGUgPSBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH0oKTtcblxuICB0cnkge1xuICAgIGUgPSBlIHx8IEZ1bmN0aW9uKFwicmV0dXJuIHRoaXNcIikoKSB8fCAoMCwgZXZhbCkoXCJ0aGlzXCIpO1xuICB9IGNhdGNoIChyKSB7XG4gICAgXCJvYmplY3RcIiA9PSB0eXBlb2Ygd2luZG93ICYmIChlID0gd2luZG93KTtcbiAgfVxuXG4gIHQuZXhwb3J0cyA9IGU7XG59LCBmdW5jdGlvbiAodCwgbiwgZSkge1xuICBcInVzZSBzdHJpY3RcIjtcblxuICAoZnVuY3Rpb24gKHQpIHtcbiAgICBmdW5jdGlvbiBuKHQsIG4pIHtcbiAgICAgIGlmICh0ICE9PSBuKSB0aHJvdyBuZXcgVHlwZUVycm9yKFwiQ2Fubm90IGluc3RhbnRpYXRlIGFuIGFycm93IGZ1bmN0aW9uXCIpO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIGUodCwgbikge1xuICAgICAgZm9yICh2YXIgZSA9IE9iamVjdC5hc3NpZ24oe30sIHQpLCByID0gT2JqZWN0LmtleXMobiksIGkgPSBBcnJheS5pc0FycmF5KHIpLCBvID0gMCwgciA9IGkgPyByIDogcltTeW1ib2wuaXRlcmF0b3JdKCk7Oykge1xuICAgICAgICB2YXIgdTtcblxuICAgICAgICBpZiAoaSkge1xuICAgICAgICAgIGlmIChvID49IHIubGVuZ3RoKSBicmVhaztcbiAgICAgICAgICB1ID0gcltvKytdO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGlmIChvID0gci5uZXh0KCksIG8uZG9uZSkgYnJlYWs7XG4gICAgICAgICAgdSA9IG8udmFsdWU7XG4gICAgICAgIH1cblxuICAgICAgICB2YXIgYSA9IHU7XG4gICAgICAgIHRbYV0gPSBuW2FdKGUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGZ1bmN0aW9uIHIoZSkge1xuICAgICAgdmFyIHIgPSB0aGlzO1xuICAgICAgXG4gICAgICBpZiAoIXQuX19SRUFDVF9ERVZUT09MU19HTE9CQUxfSE9PS19fKSB7XG4gICAgICAgIHQuX19SRUFDVF9ERVZUT09MU19HTE9CQUxfSE9PS19fID0ge1xuICAgICAgICAgICAgaW5qZWN0OiAoKSA9PiB7fSxcbiAgICAgICAgICAgIHN1cHBvcnRzRmliZXI6IHRydWUsXG4gICAgICAgICAgICBvbkNvbW1pdEZpYmVyUm9vdDogKCkgPT4ge30sXG4gICAgICAgIH07XG4gICAgICB9XG4gICAgICB0cnkge1xuICAgICAgICB0Ll9fUkVBQ1RfREVWVE9PTFNfR0xPQkFMX0hPT0tfXyA9IHQucGFyZW50Ll9fUkVBQ1RfREVWVE9PTFNfR0xPQkFMX0hPT0tfXztcbiAgICAgIH0gY2F0Y2ggKGUpIHt9XG5cbiAgICAgIGlmICh0Ll9fUkVBQ1RfREVWVE9PTFNfR0xPQkFMX0hPT0tfXykge1xuICAgICAgICB2YXIgaSA9IHQuX19SRUFDVF9ERVZUT09MU19HTE9CQUxfSE9PS19fLmluamVjdDtcblxuICAgICAgICB0Ll9fUkVBQ1RfREVWVE9PTFNfR0xPQkFMX0hPT0tfXy5pbmplY3QgPSBmdW5jdGlvbiAodCkge1xuICAgICAgICAgIG4odGhpcywgcik7XG4gICAgICAgICAgdC5Nb3VudDtcbiAgICAgICAgICBpICYmIGkodCksIGUodCk7XG4gICAgICAgIH0uYmluZCh0aGlzKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBmdW5jdGlvbiBpKHQpIHtcbiAgICAgIHZhciByID0gdGhpcyxcbiAgICAgICAgICBpID0gdC5Nb3VudCxcbiAgICAgICAgICBvID0gdC5SZWNvbmNpbGVyLFxuICAgICAgICAgIGMgPSBpO1xuICAgICAgZShvLCB7XG4gICAgICAgIHJlY2VpdmVDb21wb25lbnQ6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICBmdW5jdGlvbiB0KHQpIHtcbiAgICAgICAgICAgIHJldHVybiBuKHRoaXMsIHIpLCBmdW5jdGlvbiAoZSwgaSwgbywgdSkge1xuICAgICAgICAgICAgICBuKHRoaXMsIHIpLCB0LnJlY2VpdmVDb21wb25lbnQoZSwgaSwgbywgdSk7XG4gICAgICAgICAgICAgIHZhciBkID0gZS5fY3VycmVudEVsZW1lbnQ7XG5cbiAgICAgICAgICAgICAgaWYgKChpICE9PSBkIHx8IHUgIT09IGUuX2NvbnRleHQpICYmIGUuX2N1cnJlbnRFbGVtZW50ICYmIGUuX2N1cnJlbnRFbGVtZW50LnR5cGUpIHtcbiAgICAgICAgICAgICAgICB2YXIgcyA9IGEoZSwgYyk7XG4gICAgICAgICAgICAgICAgZihzLCBlLCAhMSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0uYmluZCh0aGlzKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4gdDtcbiAgICAgICAgfSgpLmJpbmQodGhpcyksXG4gICAgICAgIG1vdW50Q29tcG9uZW50OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgZnVuY3Rpb24gdCh0KSB7XG4gICAgICAgICAgICByZXR1cm4gbih0aGlzLCByKSwgZnVuY3Rpb24gKGUsIGksIG8sIGEsIGMsIGQpIHtcbiAgICAgICAgICAgICAgZm9yICh2YXIgcyA9IGFyZ3VtZW50cy5sZW5ndGgsIGwgPSBBcnJheShzID4gNiA/IHMgLSA2IDogMCksIHYgPSA2OyB2IDwgczsgdisrKSBsW3YgLSA2XSA9IGFyZ3VtZW50c1t2XTtcblxuICAgICAgICAgICAgICBuKHRoaXMsIHIpO1xuICAgICAgICAgICAgICB2YXIgcCA9IHQubW91bnRDb21wb25lbnQuYXBwbHkodCwgW2UsIGksIG8sIGEsIGMsIGRdLmNvbmNhdChsKSk7XG5cbiAgICAgICAgICAgICAgaWYgKFwic3RyaW5nXCIgPT0gdHlwZW9mIHApIHtcbiAgICAgICAgICAgICAgICB2YXIgXyA9IHUocCk7XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gXyA/IChmKF8sIGUsICEwKSwgXy5vdXRlckhUTUwpIDogcDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIHJldHVybiBwLm5vZGUgJiYgZihwLm5vZGUsIGUsICEwKSwgcDtcbiAgICAgICAgICAgIH0uYmluZCh0aGlzKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4gdDtcbiAgICAgICAgfSgpLmJpbmQodGhpcylcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIG8odCkge1xuICAgICAgdmFyIGUgPSB0aGlzO1xuICAgICAgaWYgKFwic3RyaW5nXCIgPT0gdHlwZW9mIHQpIHJldHVybiB0O1xuICAgICAgaWYgKHZvaWQgMCA9PT0gdCB8fCBudWxsID09PSB0KSByZXR1cm4gXCJcIjtcblxuICAgICAgdHJ5IHtcbiAgICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHQpO1xuICAgICAgfSBjYXRjaCAocikge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KHQpICYmIHQubGVuZ3RoID4gMCAmJiBBcnJheS5pc0FycmF5KHRbMF0pKSByZXR1cm4gSlNPTi5zdHJpbmdpZnkodC5tYXAoZnVuY3Rpb24gKHQpIHtcbiAgICAgICAgICAgIHJldHVybiBuKHRoaXMsIGUpLCB0WzBdO1xuICAgICAgICAgIH0uYmluZCh0aGlzKSkpO1xuICAgICAgICB9IGNhdGNoIChyKSB7XG4gICAgICAgICAgcmV0dXJuIFwiXCI7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gXCJcIjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBmdW5jdGlvbiB1KHQpIHtcbiAgICAgIHZhciBuID0gdm9pZCAwO1xuICAgICAgcmV0dXJuIG4gPSB0LnN0YXJ0c1dpdGgoXCI8dGJvZHlcIikgfHwgdC5zdGFydHNXaXRoKFwiPHRmb290XCIpIHx8IHQuc3RhcnRzV2l0aChcIjx0aGVhZFwiKSA/IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJ0YWJsZVwiKSA6IHQuc3RhcnRzV2l0aChcIjx0aFwiKSB8fCB0LnN0YXJ0c1dpdGgoXCI8dGRcIikgPyBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwidHJcIikgOiB0LnN0YXJ0c1dpdGgoXCI8dHJcIikgPyBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwidGhlYWRcIikgOiBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiZGl2XCIpLCBuLmlubmVySFRNTCA9IHQsIG4uY2hpbGROb2Rlc1swXTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBhKHQsIG4pIHtcbiAgICAgIHZhciBlID0gXyh0KTtcblxuICAgICAgaWYgKCFlICYmIFwic3RyaW5nXCIgPT0gdHlwZW9mIHQuX3Jvb3ROb2RlSUQpIHRyeSB7XG4gICAgICAgIGUgPSBuLmdldE5vZGUodC5fcm9vdE5vZGVJRCk7XG4gICAgICB9IGNhdGNoIChyKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGU7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gYyh0KSB7XG4gICAgICByZXR1cm4gdC5fY3VycmVudEVsZW1lbnQgJiYgdC5fY3VycmVudEVsZW1lbnQudHlwZSA/IHQuX2N1cnJlbnRFbGVtZW50LnR5cGUubmFtZSA6IG51bGw7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gZCh0LCBuLCBlKSB7XG4gICAgICByZXR1cm4gIW4uc3RhcnRzV2l0aChcIiQkXCIpICYmICFuLnN0YXJ0c1dpdGgoXCJvblwiKSAmJiBcImNoaWxkcmVuXCIgIT09IG4gJiYgXCJkYXRhLXRpZC1hdXRvXCIgIT09IG4gJiYgXCJmdW5jdGlvblwiICE9IHR5cGVvZiBlO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIGYodCwgbiwgZSkge1xuICAgICAgaWYgKHQgJiYgXCJmdW5jdGlvblwiID09IHR5cGVvZiB0LnNldEF0dHJpYnV0ZSkge1xuICAgICAgICB2YXIgciA9IGwoe30sIG4pO1xuXG4gICAgICAgIGZvciAodmFyIGkgaW4gcikgdC5zZXRBdHRyaWJ1dGUoaSwgcltpXSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gcyh0LCBlLCByKSB7XG4gICAgICB2YXIgaSA9IHRoaXM7XG5cbiAgICAgIGlmIChudWxsICE9PSByKSB7XG4gICAgICAgIHZhciBvID0gdFtlXSxcbiAgICAgICAgICAgIHUgPSAobyB8fCBcIlwiKS5zcGxpdChcIiBcIikuZmlsdGVyKGZ1bmN0aW9uICh0KSB7XG4gICAgICAgICAgcmV0dXJuIG4odGhpcywgaSksIFwiXCIgIT09IHQ7XG4gICAgICAgIH0uYmluZCh0aGlzKSk7XG4gICAgICAgIHUuaW5jbHVkZXMocikgfHwgKHRbZV0gPSAobyA/IFN0cmluZyhvKSArIFwiIFwiIDogXCJcIikgKyByKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBmdW5jdGlvbiBsKHQsIG4pIHtcbiAgICAgIHQgPSB2KHQsIG4pO1xuICAgICAgdmFyIGUgPSBuLl9jdXJyZW50RWxlbWVudCAmJiBuLl9jdXJyZW50RWxlbWVudC5fb3duZXI7XG4gICAgICByZXR1cm4gZSAmJiBwKGUsIG4pICYmICh0ID0gbCh0LCBlKSksIHQ7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gdih0LCBuKSB7XG4gICAgICB2YXIgZSA9IG4uX2N1cnJlbnRFbGVtZW50ICYmIG4uX2N1cnJlbnRFbGVtZW50LnByb3BzO1xuXG4gICAgICBpZiAoYyhuKSAmJiBzKHQsIFwiZGF0YS1jb21wLW5hbWVcIiwgYyhuKSksIGUpIHtcbiAgICAgICAgZVtcImRhdGEtdGlkLWF1dG9cIl0gJiYgcyh0LCBcImRhdGEtdGlkLWF1dG9cIiwgZVtcImRhdGEtdGlkLWF1dG9cIl0pO1xuXG4gICAgICAgIGZvciAodmFyIHIgaW4gZSkgZChuLCByLCBlW3JdKSAmJiAodFtcImRhdGEtcHJvcC1cIiArIHJdID0gbyhlW3JdKSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0O1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIHAodCwgbikge1xuICAgICAgaWYgKFwic3RyaW5nXCIgPT0gdHlwZW9mIHQuX3Jvb3ROb2RlSUQgfHwgXCJzdHJpbmdcIiA9PSB0eXBlb2Ygbi5fcm9vdE5vZGVJRCkge1xuICAgICAgICB2YXIgZSA9IHQuX3Jvb3ROb2RlSUQsXG4gICAgICAgICAgICByID0gbi5fcm9vdE5vZGVJRDtcbiAgICAgICAgaWYgKG51bGwgIT09IGUgJiYgbnVsbCAhPT0gcikgcmV0dXJuIGUgPT09IHI7XG4gICAgICB9XG5cbiAgICAgIHZhciBpID0gXyh0KSxcbiAgICAgICAgICBvID0gXyhuKTtcblxuICAgICAgcmV0dXJuIG51bGwgIT09IGkgJiYgbnVsbCAhPT0gbyAmJiBpID09PSBvO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIF8odCkge1xuICAgICAgcmV0dXJuIHQuX2hvc3ROb2RlID8gdC5faG9zdE5vZGUgOiB0Ll9yZW5kZXJlZENvbXBvbmVudCA/IF8odC5fcmVuZGVyZWRDb21wb25lbnQpIDogbnVsbDtcbiAgICB9XG5cbiAgICB0LlJlYWN0VGVzdGluZyA9IHtcbiAgICAgIGFkZFJlbmRlckNvbnRhaW5lcjogZnVuY3Rpb24gKCkge1xuICAgICAgICBmdW5jdGlvbiB0KCkge31cblxuICAgICAgICByZXR1cm4gdDtcbiAgICAgIH0oKSxcbiAgICAgIHJlbW92ZVJlbmRlckNvbnRhaW5lcjogZnVuY3Rpb24gKCkge1xuICAgICAgICBmdW5jdGlvbiB0KCkge31cblxuICAgICAgICByZXR1cm4gdDtcbiAgICAgIH0oKVxuICAgIH0sIHIoaSksIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoXCJrZXlkb3duXCIsIGZ1bmN0aW9uICh0KSB7XG4gICAgICBuKHZvaWQgMCwgdm9pZCAwKSwgdC5hbHRLZXkgJiYgdC5jdHJsS2V5ICYmIHQuc2hpZnRLZXkgJiYgXCJLZXlIXCIgPT0gdC5jb2RlID8gKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoXCIudGlkLXdyYXBwZXJcIikuZm9yRWFjaChmdW5jdGlvbiAodCkge1xuICAgICAgICByZXR1cm4gbih2b2lkIDAsIHZvaWQgMCksIHQucmVtb3ZlKCk7XG4gICAgICB9LmJpbmQodm9pZCAwKSksIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoXCJbZGF0YS10aWQtYXV0b11cIikuZm9yRWFjaChmdW5jdGlvbiAodCkge1xuICAgICAgICByZXR1cm4gbih2b2lkIDAsIHZvaWQgMCksIHQuY2xhc3NMaXN0LnJlbW92ZShcIndpdGgtdGlkLXdyYXBwZXJcIik7XG4gICAgICB9LmJpbmQodm9pZCAwKSkpIDogdC5hbHRLZXkgJiYgdC5jdHJsS2V5ICYmIFwiS2V5SFwiID09IHQuY29kZSAmJiAoZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChcIi50aWQtd3JhcHBlclwiKS5mb3JFYWNoKGZ1bmN0aW9uICh0KSB7XG4gICAgICAgIHJldHVybiBuKHZvaWQgMCwgdm9pZCAwKSwgdC5yZW1vdmUoKTtcbiAgICAgIH0uYmluZCh2b2lkIDApKSwgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChcIltkYXRhLXRpZC1hdXRvXVwiKS5mb3JFYWNoKGZ1bmN0aW9uICh0KSB7XG4gICAgICAgIG4odm9pZCAwLCB2b2lkIDApLCB0LmNsYXNzTGlzdC5hZGQoXCJ3aXRoLXRpZC13cmFwcGVyXCIpO1xuICAgICAgICB2YXIgZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJkaXZcIik7XG4gICAgICAgIGUuY2xhc3NMaXN0LmFkZChcInRpZC13cmFwcGVyXCIpLCBlLmlubmVySFRNTCA9IFwiPGRpdj48ZGl2PlwiICsgdC5nZXRBdHRyaWJ1dGUoXCJkYXRhLXRpZC1hdXRvXCIpICsgXCI8L2Rpdj48L2Rpdj5cIiwgZS5hZGRFdmVudExpc3RlbmVyKFwiY2xpY2tcIiwgZnVuY3Rpb24gKHQpIHtcbiAgICAgICAgICBuKHZvaWQgMCwgdm9pZCAwKTtcblxuICAgICAgICAgIHZhciBlID0gZnVuY3Rpb24gKHIpIHtcbiAgICAgICAgICAgIG4odm9pZCAwLCB2b2lkIDApLCByLmNsaXBib2FyZERhdGEuc2V0RGF0YShcInRleHQvcGxhaW5cIiwgdC50YXJnZXQuaW5uZXJUZXh0KSwgci5wcmV2ZW50RGVmYXVsdCgpLCBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKFwiY29weVwiLCBlKTtcbiAgICAgICAgICB9LmJpbmQodm9pZCAwKTtcblxuICAgICAgICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoXCJjb3B5XCIsIGUpLCBkb2N1bWVudC5leGVjQ29tbWFuZChcImNvcHlcIik7XG4gICAgICAgIH0uYmluZCh2b2lkIDApKSwgdC5hcHBlbmRDaGlsZChlKTtcbiAgICAgIH0uYmluZCh2b2lkIDApKSk7XG4gICAgfS5iaW5kKHZvaWQgMCkpO1xuICB9KS5jYWxsKG4sIGUoMCkpO1xufV0pOyJdfQ==
|
|
222
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ0IiwibiIsInIiLCJlIiwiZXhwb3J0cyIsImkiLCJsIiwiY2FsbCIsIm0iLCJjIiwiZCIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiY29uZmlndXJhYmxlIiwiZW51bWVyYWJsZSIsImdldCIsIm8iLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsInAiLCJzIiwiRnVuY3Rpb24iLCJldmFsIiwid2luZG93IiwiVHlwZUVycm9yIiwiYXNzaWduIiwia2V5cyIsIkFycmF5IiwiaXNBcnJheSIsIlN5bWJvbCIsIml0ZXJhdG9yIiwidSIsImxlbmd0aCIsIm5leHQiLCJkb25lIiwidmFsdWUiLCJhIiwiX19SRUFDVF9ERVZUT09MU19HTE9CQUxfSE9PS19fIiwiaW5qZWN0Iiwic3VwcG9ydHNGaWJlciIsIm9uQ29tbWl0RmliZXJSb290IiwicGFyZW50IiwiTW91bnQiLCJiaW5kIiwiUmVjb25jaWxlciIsInJlY2VpdmVDb21wb25lbnQiLCJfY3VycmVudEVsZW1lbnQiLCJfY29udGV4dCIsInR5cGUiLCJmIiwibW91bnRDb21wb25lbnQiLCJhcmd1bWVudHMiLCJ2IiwiYXBwbHkiLCJjb25jYXQiLCJfIiwib3V0ZXJIVE1MIiwibm9kZSIsIkpTT04iLCJzdHJpbmdpZnkiLCJtYXAiLCJzdGFydHNXaXRoIiwiZG9jdW1lbnQiLCJjcmVhdGVFbGVtZW50IiwiaW5uZXJIVE1MIiwiY2hpbGROb2RlcyIsIl9yb290Tm9kZUlEIiwiZ2V0Tm9kZSIsIm5hbWUiLCJzZXRBdHRyaWJ1dGUiLCJzcGxpdCIsImZpbHRlciIsImluY2x1ZGVzIiwiU3RyaW5nIiwiX293bmVyIiwicHJvcHMiLCJfaG9zdE5vZGUiLCJfcmVuZGVyZWRDb21wb25lbnQiLCJSZWFjdFRlc3RpbmciLCJhZGRSZW5kZXJDb250YWluZXIiLCJyZW1vdmVSZW5kZXJDb250YWluZXIiLCJhZGRFdmVudExpc3RlbmVyIiwiYWx0S2V5IiwiY3RybEtleSIsInNoaWZ0S2V5IiwiY29kZSIsInF1ZXJ5U2VsZWN0b3JBbGwiLCJmb3JFYWNoIiwicmVtb3ZlIiwiY2xhc3NMaXN0IiwiYWRkIiwiZ2V0QXR0cmlidXRlIiwiY2xpcGJvYXJkRGF0YSIsInNldERhdGEiLCJ0YXJnZXQiLCJpbm5lclRleHQiLCJwcmV2ZW50RGVmYXVsdCIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJleGVjQ29tbWFuZCIsImFwcGVuZENoaWxkIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL1N0YXRpY0ZpbGVzRm9yUmVzb3VyY2VzRGlyL3Rlc3RpbmcubWluLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG4hZnVuY3Rpb24gKHQpIHtcbiAgZnVuY3Rpb24gbihyKSB7XG4gICAgaWYgKGVbcl0pIHJldHVybiBlW3JdLmV4cG9ydHM7XG4gICAgdmFyIGkgPSBlW3JdID0ge1xuICAgICAgaTogcixcbiAgICAgIGw6ICExLFxuICAgICAgZXhwb3J0czoge31cbiAgICB9O1xuICAgIHJldHVybiB0W3JdLmNhbGwoaS5leHBvcnRzLCBpLCBpLmV4cG9ydHMsIG4pLCBpLmwgPSAhMCwgaS5leHBvcnRzO1xuICB9XG5cbiAgdmFyIGUgPSB7fTtcbiAgcmV0dXJuIG4ubSA9IHQsIG4uYyA9IGUsIG4uaSA9IGZ1bmN0aW9uICh0KSB7XG4gICAgcmV0dXJuIHQ7XG4gIH0sIG4uZCA9IGZ1bmN0aW9uICh0LCBuLCBlKSB7XG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsIG4sIHtcbiAgICAgIGNvbmZpZ3VyYWJsZTogITEsXG4gICAgICBlbnVtZXJhYmxlOiAhMCxcbiAgICAgIGdldDogZVxuICAgIH0pO1xuICB9LCBuLm8gPSBmdW5jdGlvbiAodCwgbikge1xuICAgIHJldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodCwgbik7XG4gIH0sIG4ucCA9IFwiXCIsIG4obi5zID0gMSk7XG59KFtmdW5jdGlvbiAodCwgbikge1xuICB2YXIgZTtcblxuICBlID0gZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiB0aGlzO1xuICB9KCk7XG5cbiAgdHJ5IHtcbiAgICBlID0gZSB8fCBGdW5jdGlvbihcInJldHVybiB0aGlzXCIpKCkgfHwgKDAsIGV2YWwpKFwidGhpc1wiKTtcbiAgfSBjYXRjaCAocikge1xuICAgIFwib2JqZWN0XCIgPT0gdHlwZW9mIHdpbmRvdyAmJiAoZSA9IHdpbmRvdyk7XG4gIH1cblxuICB0LmV4cG9ydHMgPSBlO1xufSwgZnVuY3Rpb24gKHQsIG4sIGUpIHtcbiAgXCJ1c2Ugc3RyaWN0XCI7XG5cbiAgKGZ1bmN0aW9uICh0KSB7XG4gICAgZnVuY3Rpb24gbih0LCBuKSB7XG4gICAgICBpZiAodCAhPT0gbikgdGhyb3cgbmV3IFR5cGVFcnJvcihcIkNhbm5vdCBpbnN0YW50aWF0ZSBhbiBhcnJvdyBmdW5jdGlvblwiKTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBlKHQsIG4pIHtcbiAgICAgIGZvciAodmFyIGUgPSBPYmplY3QuYXNzaWduKHt9LCB0KSwgciA9IE9iamVjdC5rZXlzKG4pLCBpID0gQXJyYXkuaXNBcnJheShyKSwgbyA9IDAsIHIgPSBpID8gciA6IHJbU3ltYm9sLml0ZXJhdG9yXSgpOzspIHtcbiAgICAgICAgdmFyIHU7XG5cbiAgICAgICAgaWYgKGkpIHtcbiAgICAgICAgICBpZiAobyA+PSByLmxlbmd0aCkgYnJlYWs7XG4gICAgICAgICAgdSA9IHJbbysrXTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBpZiAobyA9IHIubmV4dCgpLCBvLmRvbmUpIGJyZWFrO1xuICAgICAgICAgIHUgPSBvLnZhbHVlO1xuICAgICAgICB9XG5cbiAgICAgICAgdmFyIGEgPSB1O1xuICAgICAgICB0W2FdID0gblthXShlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBmdW5jdGlvbiByKGUpIHtcbiAgICAgIHZhciByID0gdGhpcztcbiAgICAgIFxuICAgICAgaWYgKCF0Ll9fUkVBQ1RfREVWVE9PTFNfR0xPQkFMX0hPT0tfXykge1xuICAgICAgICB0Ll9fUkVBQ1RfREVWVE9PTFNfR0xPQkFMX0hPT0tfXyA9IHtcbiAgICAgICAgICAgIGluamVjdDogKCkgPT4ge30sXG4gICAgICAgICAgICBzdXBwb3J0c0ZpYmVyOiB0cnVlLFxuICAgICAgICAgICAgb25Db21taXRGaWJlclJvb3Q6ICgpID0+IHt9LFxuICAgICAgICB9O1xuICAgICAgfVxuICAgICAgdHJ5IHtcbiAgICAgICAgdC5fX1JFQUNUX0RFVlRPT0xTX0dMT0JBTF9IT09LX18gPSB0LnBhcmVudC5fX1JFQUNUX0RFVlRPT0xTX0dMT0JBTF9IT09LX187XG4gICAgICB9IGNhdGNoIChlKSB7fVxuXG4gICAgICBpZiAodC5fX1JFQUNUX0RFVlRPT0xTX0dMT0JBTF9IT09LX18pIHtcbiAgICAgICAgdmFyIGkgPSB0Ll9fUkVBQ1RfREVWVE9PTFNfR0xPQkFMX0hPT0tfXy5pbmplY3Q7XG5cbiAgICAgICAgdC5fX1JFQUNUX0RFVlRPT0xTX0dMT0JBTF9IT09LX18uaW5qZWN0ID0gZnVuY3Rpb24gKHQpIHtcbiAgICAgICAgICBuKHRoaXMsIHIpO1xuICAgICAgICAgIHQuTW91bnQ7XG4gICAgICAgICAgaSAmJiBpKHQpLCBlKHQpO1xuICAgICAgICB9LmJpbmQodGhpcyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gaSh0KSB7XG4gICAgICB2YXIgciA9IHRoaXMsXG4gICAgICAgICAgaSA9IHQuTW91bnQsXG4gICAgICAgICAgbyA9IHQuUmVjb25jaWxlcixcbiAgICAgICAgICBjID0gaTtcbiAgICAgIGUobywge1xuICAgICAgICByZWNlaXZlQ29tcG9uZW50OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgZnVuY3Rpb24gdCh0KSB7XG4gICAgICAgICAgICByZXR1cm4gbih0aGlzLCByKSwgZnVuY3Rpb24gKGUsIGksIG8sIHUpIHtcbiAgICAgICAgICAgICAgbih0aGlzLCByKSwgdC5yZWNlaXZlQ29tcG9uZW50KGUsIGksIG8sIHUpO1xuICAgICAgICAgICAgICB2YXIgZCA9IGUuX2N1cnJlbnRFbGVtZW50O1xuXG4gICAgICAgICAgICAgIGlmICgoaSAhPT0gZCB8fCB1ICE9PSBlLl9jb250ZXh0KSAmJiBlLl9jdXJyZW50RWxlbWVudCAmJiBlLl9jdXJyZW50RWxlbWVudC50eXBlKSB7XG4gICAgICAgICAgICAgICAgdmFyIHMgPSBhKGUsIGMpO1xuICAgICAgICAgICAgICAgIGYocywgZSwgITEpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LmJpbmQodGhpcyk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIHQ7XG4gICAgICAgIH0oKS5iaW5kKHRoaXMpLFxuICAgICAgICBtb3VudENvbXBvbmVudDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgIGZ1bmN0aW9uIHQodCkge1xuICAgICAgICAgICAgcmV0dXJuIG4odGhpcywgciksIGZ1bmN0aW9uIChlLCBpLCBvLCBhLCBjLCBkKSB7XG4gICAgICAgICAgICAgIGZvciAodmFyIHMgPSBhcmd1bWVudHMubGVuZ3RoLCBsID0gQXJyYXkocyA+IDYgPyBzIC0gNiA6IDApLCB2ID0gNjsgdiA8IHM7IHYrKykgbFt2IC0gNl0gPSBhcmd1bWVudHNbdl07XG5cbiAgICAgICAgICAgICAgbih0aGlzLCByKTtcbiAgICAgICAgICAgICAgdmFyIHAgPSB0Lm1vdW50Q29tcG9uZW50LmFwcGx5KHQsIFtlLCBpLCBvLCBhLCBjLCBkXS5jb25jYXQobCkpO1xuXG4gICAgICAgICAgICAgIGlmIChcInN0cmluZ1wiID09IHR5cGVvZiBwKSB7XG4gICAgICAgICAgICAgICAgdmFyIF8gPSB1KHApO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIF8gPyAoZihfLCBlLCAhMCksIF8ub3V0ZXJIVE1MKSA6IHA7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICByZXR1cm4gcC5ub2RlICYmIGYocC5ub2RlLCBlLCAhMCksIHA7XG4gICAgICAgICAgICB9LmJpbmQodGhpcyk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIHQ7XG4gICAgICAgIH0oKS5iaW5kKHRoaXMpXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBvKHQpIHtcbiAgICAgIHZhciBlID0gdGhpcztcbiAgICAgIGlmIChcInN0cmluZ1wiID09IHR5cGVvZiB0KSByZXR1cm4gdDtcbiAgICAgIGlmICh2b2lkIDAgPT09IHQgfHwgbnVsbCA9PT0gdCkgcmV0dXJuIFwiXCI7XG5cbiAgICAgIHRyeSB7XG4gICAgICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh0KTtcbiAgICAgIH0gY2F0Y2ggKHIpIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheSh0KSAmJiB0Lmxlbmd0aCA+IDAgJiYgQXJyYXkuaXNBcnJheSh0WzBdKSkgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHQubWFwKGZ1bmN0aW9uICh0KSB7XG4gICAgICAgICAgICByZXR1cm4gbih0aGlzLCBlKSwgdFswXTtcbiAgICAgICAgICB9LmJpbmQodGhpcykpKTtcbiAgICAgICAgfSBjYXRjaCAocikge1xuICAgICAgICAgIHJldHVybiBcIlwiO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIFwiXCI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gdSh0KSB7XG4gICAgICB2YXIgbiA9IHZvaWQgMDtcbiAgICAgIHJldHVybiBuID0gdC5zdGFydHNXaXRoKFwiPHRib2R5XCIpIHx8IHQuc3RhcnRzV2l0aChcIjx0Zm9vdFwiKSB8fCB0LnN0YXJ0c1dpdGgoXCI8dGhlYWRcIikgPyBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwidGFibGVcIikgOiB0LnN0YXJ0c1dpdGgoXCI8dGhcIikgfHwgdC5zdGFydHNXaXRoKFwiPHRkXCIpID8gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcInRyXCIpIDogdC5zdGFydHNXaXRoKFwiPHRyXCIpID8gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcInRoZWFkXCIpIDogZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcImRpdlwiKSwgbi5pbm5lckhUTUwgPSB0LCBuLmNoaWxkTm9kZXNbMF07XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gYSh0LCBuKSB7XG4gICAgICB2YXIgZSA9IF8odCk7XG5cbiAgICAgIGlmICghZSAmJiBcInN0cmluZ1wiID09IHR5cGVvZiB0Ll9yb290Tm9kZUlEKSB0cnkge1xuICAgICAgICBlID0gbi5nZXROb2RlKHQuX3Jvb3ROb2RlSUQpO1xuICAgICAgfSBjYXRjaCAocikge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cbiAgICAgIHJldHVybiBlO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIGModCkge1xuICAgICAgcmV0dXJuIHQuX2N1cnJlbnRFbGVtZW50ICYmIHQuX2N1cnJlbnRFbGVtZW50LnR5cGUgPyB0Ll9jdXJyZW50RWxlbWVudC50eXBlLm5hbWUgOiBudWxsO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIGQodCwgbiwgZSkge1xuICAgICAgcmV0dXJuICFuLnN0YXJ0c1dpdGgoXCIkJFwiKSAmJiAhbi5zdGFydHNXaXRoKFwib25cIikgJiYgXCJjaGlsZHJlblwiICE9PSBuICYmIFwiZGF0YS10aWQtYXV0b1wiICE9PSBuICYmIFwiZnVuY3Rpb25cIiAhPSB0eXBlb2YgZTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBmKHQsIG4sIGUpIHtcbiAgICAgIGlmICh0ICYmIFwiZnVuY3Rpb25cIiA9PSB0eXBlb2YgdC5zZXRBdHRyaWJ1dGUpIHtcbiAgICAgICAgdmFyIHIgPSBsKHt9LCBuKTtcblxuICAgICAgICBmb3IgKHZhciBpIGluIHIpIHQuc2V0QXR0cmlidXRlKGksIHJbaV0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIGZ1bmN0aW9uIHModCwgZSwgcikge1xuICAgICAgdmFyIGkgPSB0aGlzO1xuXG4gICAgICBpZiAobnVsbCAhPT0gcikge1xuICAgICAgICB2YXIgbyA9IHRbZV0sXG4gICAgICAgICAgICB1ID0gKG8gfHwgXCJcIikuc3BsaXQoXCIgXCIpLmZpbHRlcihmdW5jdGlvbiAodCkge1xuICAgICAgICAgIHJldHVybiBuKHRoaXMsIGkpLCBcIlwiICE9PSB0O1xuICAgICAgICB9LmJpbmQodGhpcykpO1xuICAgICAgICB1LmluY2x1ZGVzKHIpIHx8ICh0W2VdID0gKG8gPyBTdHJpbmcobykgKyBcIiBcIiA6IFwiXCIpICsgcik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gbCh0LCBuKSB7XG4gICAgICB0ID0gdih0LCBuKTtcbiAgICAgIHZhciBlID0gbi5fY3VycmVudEVsZW1lbnQgJiYgbi5fY3VycmVudEVsZW1lbnQuX293bmVyO1xuICAgICAgcmV0dXJuIGUgJiYgcChlLCBuKSAmJiAodCA9IGwodCwgZSkpLCB0O1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIHYodCwgbikge1xuICAgICAgdmFyIGUgPSBuLl9jdXJyZW50RWxlbWVudCAmJiBuLl9jdXJyZW50RWxlbWVudC5wcm9wcztcblxuICAgICAgaWYgKGMobikgJiYgcyh0LCBcImRhdGEtY29tcC1uYW1lXCIsIGMobikpLCBlKSB7XG4gICAgICAgIGVbXCJkYXRhLXRpZC1hdXRvXCJdICYmIHModCwgXCJkYXRhLXRpZC1hdXRvXCIsIGVbXCJkYXRhLXRpZC1hdXRvXCJdKTtcblxuICAgICAgICBmb3IgKHZhciByIGluIGUpIGQobiwgciwgZVtyXSkgJiYgKHRbXCJkYXRhLXByb3AtXCIgKyByXSA9IG8oZVtyXSkpO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gdDtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBwKHQsIG4pIHtcbiAgICAgIGlmIChcInN0cmluZ1wiID09IHR5cGVvZiB0Ll9yb290Tm9kZUlEIHx8IFwic3RyaW5nXCIgPT0gdHlwZW9mIG4uX3Jvb3ROb2RlSUQpIHtcbiAgICAgICAgdmFyIGUgPSB0Ll9yb290Tm9kZUlELFxuICAgICAgICAgICAgciA9IG4uX3Jvb3ROb2RlSUQ7XG4gICAgICAgIGlmIChudWxsICE9PSBlICYmIG51bGwgIT09IHIpIHJldHVybiBlID09PSByO1xuICAgICAgfVxuXG4gICAgICB2YXIgaSA9IF8odCksXG4gICAgICAgICAgbyA9IF8obik7XG5cbiAgICAgIHJldHVybiBudWxsICE9PSBpICYmIG51bGwgIT09IG8gJiYgaSA9PT0gbztcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBfKHQpIHtcbiAgICAgIHJldHVybiB0Ll9ob3N0Tm9kZSA/IHQuX2hvc3ROb2RlIDogdC5fcmVuZGVyZWRDb21wb25lbnQgPyBfKHQuX3JlbmRlcmVkQ29tcG9uZW50KSA6IG51bGw7XG4gICAgfVxuXG4gICAgdC5SZWFjdFRlc3RpbmcgPSB7XG4gICAgICBhZGRSZW5kZXJDb250YWluZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgZnVuY3Rpb24gdCgpIHt9XG5cbiAgICAgICAgcmV0dXJuIHQ7XG4gICAgICB9KCksXG4gICAgICByZW1vdmVSZW5kZXJDb250YWluZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgZnVuY3Rpb24gdCgpIHt9XG5cbiAgICAgICAgcmV0dXJuIHQ7XG4gICAgICB9KClcbiAgICB9LCByKGkpLCBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKFwia2V5ZG93blwiLCBmdW5jdGlvbiAodCkge1xuICAgICAgbih2b2lkIDAsIHZvaWQgMCksIHQuYWx0S2V5ICYmIHQuY3RybEtleSAmJiB0LnNoaWZ0S2V5ICYmIFwiS2V5SFwiID09IHQuY29kZSA/IChkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKFwiLnRpZC13cmFwcGVyXCIpLmZvckVhY2goZnVuY3Rpb24gKHQpIHtcbiAgICAgICAgcmV0dXJuIG4odm9pZCAwLCB2b2lkIDApLCB0LnJlbW92ZSgpO1xuICAgICAgfS5iaW5kKHZvaWQgMCkpLCBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKFwiW2RhdGEtdGlkLWF1dG9dXCIpLmZvckVhY2goZnVuY3Rpb24gKHQpIHtcbiAgICAgICAgcmV0dXJuIG4odm9pZCAwLCB2b2lkIDApLCB0LmNsYXNzTGlzdC5yZW1vdmUoXCJ3aXRoLXRpZC13cmFwcGVyXCIpO1xuICAgICAgfS5iaW5kKHZvaWQgMCkpKSA6IHQuYWx0S2V5ICYmIHQuY3RybEtleSAmJiBcIktleUhcIiA9PSB0LmNvZGUgJiYgKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoXCIudGlkLXdyYXBwZXJcIikuZm9yRWFjaChmdW5jdGlvbiAodCkge1xuICAgICAgICByZXR1cm4gbih2b2lkIDAsIHZvaWQgMCksIHQucmVtb3ZlKCk7XG4gICAgICB9LmJpbmQodm9pZCAwKSksIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoXCJbZGF0YS10aWQtYXV0b11cIikuZm9yRWFjaChmdW5jdGlvbiAodCkge1xuICAgICAgICBuKHZvaWQgMCwgdm9pZCAwKSwgdC5jbGFzc0xpc3QuYWRkKFwid2l0aC10aWQtd3JhcHBlclwiKTtcbiAgICAgICAgdmFyIGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiZGl2XCIpO1xuICAgICAgICBlLmNsYXNzTGlzdC5hZGQoXCJ0aWQtd3JhcHBlclwiKSwgZS5pbm5lckhUTUwgPSBcIjxkaXY+PGRpdj5cIiArIHQuZ2V0QXR0cmlidXRlKFwiZGF0YS10aWQtYXV0b1wiKSArIFwiPC9kaXY+PC9kaXY+XCIsIGUuYWRkRXZlbnRMaXN0ZW5lcihcImNsaWNrXCIsIGZ1bmN0aW9uICh0KSB7XG4gICAgICAgICAgbih2b2lkIDAsIHZvaWQgMCk7XG5cbiAgICAgICAgICB2YXIgZSA9IGZ1bmN0aW9uIChyKSB7XG4gICAgICAgICAgICBuKHZvaWQgMCwgdm9pZCAwKSwgci5jbGlwYm9hcmREYXRhLnNldERhdGEoXCJ0ZXh0L3BsYWluXCIsIHQudGFyZ2V0LmlubmVyVGV4dCksIHIucHJldmVudERlZmF1bHQoKSwgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcihcImNvcHlcIiwgZSk7XG4gICAgICAgICAgfS5iaW5kKHZvaWQgMCk7XG5cbiAgICAgICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKFwiY29weVwiLCBlKSwgZG9jdW1lbnQuZXhlY0NvbW1hbmQoXCJjb3B5XCIpO1xuICAgICAgICB9LmJpbmQodm9pZCAwKSksIHQuYXBwZW5kQ2hpbGQoZSk7XG4gICAgICB9LmJpbmQodm9pZCAwKSkpO1xuICAgIH0uYmluZCh2b2lkIDApKTtcbiAgfSkuY2FsbChuLCBlKDApKTtcbn1dKTsiXSwibWFwcGluZ3MiOiJBQUFBLFlBQVk7O0FBRVosQ0FBQyxVQUFVQSxDQUFDLEVBQUU7RUFDWixTQUFTQyxDQUFDQSxDQUFDQyxDQUFDLEVBQUU7SUFDWixJQUFJQyxDQUFDLENBQUNELENBQUMsQ0FBQyxFQUFFLE9BQU9DLENBQUMsQ0FBQ0QsQ0FBQyxDQUFDLENBQUNFLE9BQU87SUFDN0IsSUFBSUMsQ0FBQyxHQUFHRixDQUFDLENBQUNELENBQUMsQ0FBQyxHQUFHO01BQ2JHLENBQUMsRUFBRUgsQ0FBQztNQUNKSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO01BQ0xGLE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUNELE9BQU9KLENBQUMsQ0FBQ0UsQ0FBQyxDQUFDLENBQUNLLElBQUksQ0FBQ0YsQ0FBQyxDQUFDRCxPQUFPLEVBQUVDLENBQUMsRUFBRUEsQ0FBQyxDQUFDRCxPQUFPLEVBQUVILENBQUMsQ0FBQyxFQUFFSSxDQUFDLENBQUNDLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRUQsQ0FBQyxDQUFDRCxPQUFPO0VBQ25FO0VBRUEsSUFBSUQsQ0FBQyxHQUFHLENBQUMsQ0FBQztFQUNWLE9BQU9GLENBQUMsQ0FBQ08sQ0FBQyxHQUFHUixDQUFDLEVBQUVDLENBQUMsQ0FBQ1EsQ0FBQyxHQUFHTixDQUFDLEVBQUVGLENBQUMsQ0FBQ0ksQ0FBQyxHQUFHLFVBQVVMLENBQUMsRUFBRTtJQUMxQyxPQUFPQSxDQUFDO0VBQ1YsQ0FBQyxFQUFFQyxDQUFDLENBQUNTLENBQUMsR0FBRyxVQUFVVixDQUFDLEVBQUVDLENBQUMsRUFBRUUsQ0FBQyxFQUFFO0lBQzFCUSxNQUFNLENBQUNDLGNBQWMsQ0FBQ1osQ0FBQyxFQUFF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
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kontur.candy/tools",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.156.0",
|
|
4
4
|
"description": "",
|
|
5
5
|
"files": [
|
|
6
6
|
"candy.js",
|
|
@@ -67,16 +67,16 @@
|
|
|
67
67
|
"conventional-changelog-cli": "^2.1.1"
|
|
68
68
|
},
|
|
69
69
|
"dependencies": {
|
|
70
|
-
"@babel/core": "7.
|
|
71
|
-
"@babel/plugin-proposal-class-properties": "^7.
|
|
72
|
-
"@babel/plugin-proposal-decorators": "^7.
|
|
73
|
-
"@babel/plugin-proposal-export-default-from": "^7.
|
|
70
|
+
"@babel/core": "7.21.8",
|
|
71
|
+
"@babel/plugin-proposal-class-properties": "^7.18.6",
|
|
72
|
+
"@babel/plugin-proposal-decorators": "^7.21.0",
|
|
73
|
+
"@babel/plugin-proposal-export-default-from": "^7.18.10",
|
|
74
74
|
"@babel/plugin-syntax-object-rest-spread": "^7.8.3",
|
|
75
|
-
"@babel/plugin-transform-flow-strip-types": "^7.
|
|
76
|
-
"@babel/preset-env": "^7.
|
|
77
|
-
"@babel/preset-react": "^7.
|
|
78
|
-
"@babel/preset-typescript": "^7.
|
|
79
|
-
"@babel/register": "7.
|
|
75
|
+
"@babel/plugin-transform-flow-strip-types": "^7.21.0",
|
|
76
|
+
"@babel/preset-env": "^7.21.5",
|
|
77
|
+
"@babel/preset-react": "^7.18.6",
|
|
78
|
+
"@babel/preset-typescript": "^7.21.5",
|
|
79
|
+
"@babel/register": "7.21.0",
|
|
80
80
|
"@skbkontur/logger": "0.0.3",
|
|
81
81
|
"ansi_up": "5.1.0",
|
|
82
82
|
"autoprefixer": "10.4.0",
|
|
File without changes
|