@kontur.candy/tools 2.184.3 → 2.185.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.
Files changed (599) hide show
  1. package/CHANGELOG.md +1659 -0
  2. package/candy.js +0 -0
  3. package/distr/Common/AsyncUtils.js +1 -1
  4. package/distr/Common/AutoValidationUtils.js +3 -2
  5. package/distr/Common/CandyApiClient/CandyApiClient.js +3 -2
  6. package/distr/Common/CandyApiClient/CandyApiClientContext.js +5 -4
  7. package/distr/Common/CandyApiClient/ClientDraftInfo/ClientDraftInfoResponse.js +1 -1
  8. package/distr/Common/CandyApiClient/ClientDraftInfo/FnsFormInfo.js +1 -1
  9. package/distr/Common/CandyApiClient/ClientDraftInfo/GetClientDraftInfoUrl.js +1 -1
  10. package/distr/Common/CandyApiClient/ClientDraftInfo/PrintInfo.js +1 -1
  11. package/distr/Common/CandyApiClient/DigestApiClient/Decorators/DigestApiClientWithCache.js +1 -1
  12. package/distr/Common/CandyApiClient/DigestApiClient/Decorators/DigestApiClientWithDebouncedBatching.js +1 -1
  13. package/distr/Common/CandyApiClient/DigestApiClient/DigestApiClient.js +1 -1
  14. package/distr/Common/CandyApiClient/DigestApiClient/Fakes/Data/TaxRebate1152026.js +3 -2
  15. package/distr/Common/CandyApiClient/DigestApiClient/Fakes/FakeDigestApiClient.js +1 -1
  16. package/distr/Common/CandyApiClient/DigestApiClient/Fakes/FakePicklists.js +3 -2
  17. package/distr/Common/CandyApiClient/DigestApiClient/IDigestApiClient.js +1 -1
  18. package/distr/Common/CandyApiClient/DigestApiClient/React/DigestApiClientContext.js +5 -4
  19. package/distr/Common/CandyApiClient/DigestApiClient/TestDigestApiClient.js +1 -1
  20. package/distr/Common/CandyApiClient/DigestApiClient/Types/DigestQueryFilter.js +5 -3
  21. package/distr/Common/CandyApiClient/DigestApiClient/Types/DigestRequest.js +1 -1
  22. package/distr/Common/CandyApiClient/FakeCandyApiClient.js +1 -1
  23. package/distr/Common/CandyApiClient/ICandyApiClient.js +1 -1
  24. package/distr/Common/CandyApiClient/IsBuffer.js +1 -1
  25. package/distr/Common/CandyApiClient/Types/Attachments/Attacments.js +1 -1
  26. package/distr/Common/CandyApiClient/Types/Attachments/GetAttachmentsResponse.js +1 -1
  27. package/distr/Common/CandyApiClient/Types/ChangeSet/ServerChangeSet.js +1 -1
  28. package/distr/Common/CandyApiClient/Types/CreateDraft/CreateDraftResponse.js +1 -1
  29. package/distr/Common/CandyApiClient/Types/DiagResourcesResponse.js +1 -1
  30. package/distr/Common/CandyApiClient/Types/DraftActions/CombineFufResult.js +5 -3
  31. package/distr/Common/CandyApiClient/Types/DraftActions/ConvertDraftRequest.js +1 -1
  32. package/distr/Common/CandyApiClient/Types/DraftActions/FileProperties.js +1 -1
  33. package/distr/Common/CandyApiClient/Types/DraftActions/FufSizeTooLargeError.js +1 -1
  34. package/distr/Common/CandyApiClient/Types/DraftFullId.js +1 -1
  35. package/distr/Common/CandyApiClient/Types/ErrorLog/CandyPopdProtocol.js +3 -2
  36. package/distr/Common/CandyApiClient/Types/ErrorLog/ServerErrorLog.js +5 -3
  37. package/distr/Common/CandyApiClient/Types/ExplanatoryNote/CreateExplanatoryNoteResponse.js +3 -2
  38. package/distr/Common/CandyApiClient/Types/FeatureFlags/FeatureFlagsResponse.js +1 -1
  39. package/distr/Common/CandyApiClient/Types/Focus/FocusServerResponse.js +1 -1
  40. package/distr/Common/CandyApiClient/Types/Focus/FocusTypes.js +3 -2
  41. package/distr/Common/CandyApiClient/Types/GetInner/ServerInnerResponse.js +1 -1
  42. package/distr/Common/CandyApiClient/Types/GetInner/ServerRawResponse.js +1 -1
  43. package/distr/Common/CandyApiClient/Types/GetInner/ServerRequisitesResponse.js +1 -1
  44. package/distr/Common/CandyApiClient/Types/Guid.js +1 -1
  45. package/distr/Common/CandyApiClient/Types/InstancesDeleting/InstancesDeletingRule.js +1 -1
  46. package/distr/Common/CandyApiClient/Types/MassActions/MassActionParameters.js +1 -1
  47. package/distr/Common/CandyApiClient/Types/MassActions/ValueForInstancesSettingRule.js +1 -1
  48. package/distr/Common/CandyApiClient/Types/Presentations/DraftPresentationType.js +3 -2
  49. package/distr/Common/CandyApiClient/Types/Presentations/PresentationContent.js +1 -1
  50. package/distr/Common/CandyApiClient/Types/Print/PrintResponse.js +1 -1
  51. package/distr/Common/CandyApiClient/Types/Print/PrintType.js +3 -2
  52. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/AndExpression.js +1 -1
  53. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/CompareExpression.js +1 -1
  54. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/CountCallExpression.js +1 -1
  55. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/DecimalConstantExpression.js +1 -1
  56. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/InstanceIdCallExpression.js +1 -1
  57. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/NotExpression.js +1 -1
  58. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/OrExpression.js +1 -1
  59. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/StringConstantExpression.js +1 -1
  60. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/StringMatchExpression.js +1 -1
  61. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/SumCallExpression.js +1 -1
  62. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/TernaryExpression.js +1 -1
  63. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/ValueReferenceExpression.js +1 -1
  64. package/distr/Common/CandyApiClient/Types/QueryCollecton/InnerQueryExpression.js +1 -1
  65. package/distr/Common/CandyApiClient/Types/QueryCollecton/InnerQueryRequest.js +1 -1
  66. package/distr/Common/CandyApiClient/Types/QueryCollecton/InnerQueryResponse.js +1 -1
  67. package/distr/Common/CandyApiClient/Types/QueryCollecton/SelectClause.js +1 -1
  68. package/distr/Common/CandyApiClient/Types/QueryCollecton/SortingRule.js +1 -1
  69. package/distr/Common/CandyApiClient/Types/Staff/EmployeeInfo.js +1 -1
  70. package/distr/Common/CandyApiClient/Types/Staff/ImportEmployeesOptions.js +1 -1
  71. package/distr/Common/CandyApiClient/Types/Staff/ImportEmployeesRequest.js +1 -1
  72. package/distr/Common/CandyApiClient/Types/Staff/StaffInfo.js +1 -1
  73. package/distr/Common/CandyApiClient/Types/Tasks/GetTasksServerResponse.js +1 -1
  74. package/distr/Common/CandyApiClient/Types/Tasks/Tasks.js +3 -2
  75. package/distr/Common/CandyApiClient/Types/TestClassification.js +1 -1
  76. package/distr/Common/CollectionUtils.js +1 -1
  77. package/distr/Common/CommonConstants/SectionNames.js +1 -1
  78. package/distr/Common/Comparers.js +1 -1
  79. package/distr/Common/EmotionStorybookWorkaroundViaAliases.js +3 -3
  80. package/distr/Common/EndPoints.js +11 -6
  81. package/distr/Common/Enums/ButtonSettingsTypeEnum.js +3 -2
  82. package/distr/Common/Errors.js +1 -1
  83. package/distr/Common/ExtractGFVPath/ExtractGFVPath.js +1 -1
  84. package/distr/Common/FSPrinterClient/FSPrinterClient.js +2 -2
  85. package/distr/Common/FSPrinterClient/FakeFSPrinterClient.js +1 -1
  86. package/distr/Common/FSPrinterClient/IFSPrinterClient.js +11 -6
  87. package/distr/Common/FormActionHandlers/ContextualActionNames.js +1 -1
  88. package/distr/Common/FormActionHandlers/ControlNamedContextualAction.js +1 -1
  89. package/distr/Common/FormPathUtils.js +2 -2
  90. package/distr/Common/Funcs.js +1 -1
  91. package/distr/Common/GFV.js +1 -1
  92. package/distr/Common/Hooks/UseLocalStorage.js +3 -3
  93. package/distr/Common/HttpClient/AuthenticationMode.js +1 -1
  94. package/distr/Common/HttpClient/FetchImplementation/BrowserFetchWithOptionalPolyfill.js +3 -2
  95. package/distr/Common/HttpClient/FetchImplementation/BrowserFetchWithPolyfill.js +3 -2
  96. package/distr/Common/HttpClient/FetchImplementation/Fetch.js +1 -1
  97. package/distr/Common/HttpClient/FetchImplementation/NativeBrowserFetch.js +3 -2
  98. package/distr/Common/HttpClient/FetchImplementation/NodeFetch.js +1 -1
  99. package/distr/Common/HttpClient/HttpClient.js +2 -2
  100. package/distr/Common/HttpClient/HttpClientAuthenticationProvider.js +1 -1
  101. package/distr/Common/HttpClient/IHttpClient.js +1 -1
  102. package/distr/Common/IndentString.js +1 -1
  103. package/distr/Common/IntRangeUtils.js +1 -1
  104. package/distr/Common/IterableUtils.js +1 -1
  105. package/distr/Common/KCLangRuntimeUtils.js +1 -1
  106. package/distr/Common/ModelPath/AbsoluteModelFieldPath.js +2 -4
  107. package/distr/Common/ModelPath/BuildIterationSequence.js +1 -1
  108. package/distr/Common/ModelPath/EachCurrentCollision.js +3 -2
  109. package/distr/Common/ModelPath/IEquatable.js +1 -1
  110. package/distr/Common/ModelPath/Map/AbsoluteModelPathMap.js +1 -1
  111. package/distr/Common/ModelPath/Map/Map2.js +1 -1
  112. package/distr/Common/ModelPath/Map/ModelPathMap.js +1 -1
  113. package/distr/Common/ModelPath/ModelPath.js +1 -1
  114. package/distr/Common/ModelPath/ModelPathBuilder.js +1 -1
  115. package/distr/Common/ModelPath/ModelPathHelper.js +1 -1
  116. package/distr/Common/ModelPath/PathMatcher.js +3 -2
  117. package/distr/Common/ModelPath/PathSplitHelper.js +1 -1
  118. package/distr/Common/ModelPath/Set/AbsoluteModelPathSet.js +1 -1
  119. package/distr/Common/ModelPath/Set/AbsoluteResolvedModelPathSet.js +1 -1
  120. package/distr/Common/ModelPath/Set/ModelPathSet.js +1 -1
  121. package/distr/Common/ModelPath/Set/Set2.js +1 -1
  122. package/distr/Common/NidusClient/ContextualNidusClient/ContextualNidusClient.js +1 -1
  123. package/distr/Common/NidusClient/ContextualNidusClient/IContextualNidusClient.js +1 -1
  124. package/distr/Common/NidusClient/Fakes/CreateUniqueNidusEntryId.js +1 -1
  125. package/distr/Common/NidusClient/Fakes/FakeNidusClient.js +1 -1
  126. package/distr/Common/NidusClient/Fakes/LocalStorageBasedNidusClient.js +1 -1
  127. package/distr/Common/NidusClient/INidusClient.js +1 -1
  128. package/distr/Common/NidusClient/NidusClientContext.js +3 -3
  129. package/distr/Common/NidusClient/NidusClientImpl.js +3 -3
  130. package/distr/Common/PathConstants.js +7 -4
  131. package/distr/Common/PicklistApiClient/IPicklistApiClient.js +1 -1
  132. package/distr/Common/PicklistApiClient/PicklistApiClient.js +1 -1
  133. package/distr/Common/PicklistApiClient/PicklistRequestV2Builder.js +1 -1
  134. package/distr/Common/PicklistApiClient/Serializers/DigestFilterColumnSerializer.js +1 -1
  135. package/distr/Common/PicklistApiClient/Serializers/DigestLogicalFilterSerializer.js +1 -1
  136. package/distr/Common/PicklistApiClient/Types/PicklistRequestV2.js +1 -1
  137. package/distr/Common/PicklistApiClient/Types/PicklistResultV2.js +1 -1
  138. package/distr/Common/RngSchemeTypes/types.js +1 -1
  139. package/distr/Common/StringArrayKey.js +1 -1
  140. package/distr/Common/TextExtractor/TextExtractorTypes.js +1 -1
  141. package/distr/Common/TypingUtils.js +1 -1
  142. package/distr/Common/UUID.js +1 -1
  143. package/distr/Common/UseAsyncEffect.js +3 -3
  144. package/distr/Common/UseShowOnce.js +1 -1
  145. package/distr/Common/UseTypedSelector.js +3 -2
  146. package/distr/Common/WellKnownDirectories.js +1 -1
  147. package/distr/Common/getRngSchemaFilename.js +1 -1
  148. package/distr/Common/hashUtils.js +1 -1
  149. package/distr/Tools/src/BuildTasks/ClientJS/BuildClientJsTask.js +4 -9
  150. package/distr/Tools/src/BuildTasks/ClientJS/IsWebpack5.js +12 -6
  151. package/distr/Tools/src/BuildTasks/Engine/AcquireFormEngine.js +1 -1
  152. package/distr/Tools/src/BuildTasks/Engine/AcquirePublishedEngineTask.js +3 -3
  153. package/distr/Tools/src/BuildTasks/Engine/BuildLocalEngineTask.js +3 -4
  154. package/distr/Tools/src/BuildTasks/Engine/EngineSource.js +1 -1
  155. package/distr/Tools/src/BuildTasks/EngineStructureUtils.js +1 -1
  156. package/distr/Tools/src/BuildTasks/EngineVersionUtils.js +1 -1
  157. package/distr/Tools/src/BuildTasks/FSTask.js +1 -1
  158. package/distr/Tools/src/BuildTasks/Form/CompileForm.js +3 -3
  159. package/distr/Tools/src/BuildTasks/Form/GenerateForm.js +3 -3
  160. package/distr/Tools/src/BuildTasks/Form/NullFormGenerator.js +1 -1
  161. package/distr/Tools/src/BuildTasks/Form/WriteAttachmentPathFiles.js +1 -1
  162. package/distr/Tools/src/BuildTasks/Form/WriteFLangNormalizationFiles.js +3 -3
  163. package/distr/Tools/src/BuildTasks/Generator/AcquireFormGenerator.js +1 -1
  164. package/distr/Tools/src/BuildTasks/Generator/AcquirePublishedGeneratorTask.js +3 -3
  165. package/distr/Tools/src/BuildTasks/Generator/BuildGeneratorFromSourcesTask.js +3 -4
  166. package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/CreateAsyncGenerator.js +1 -1
  167. package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/GeneratorRequireUtils.js +4 -4
  168. package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/ProcessSugarWorker.js +1 -1
  169. package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/ReadSourcesAndProcessSugarWorker.js +1 -1
  170. package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/RequireUncached.js +1 -1
  171. package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/TypedProcessWorker.js +1 -1
  172. package/distr/Tools/src/BuildTasks/ProcessUtils/ProcessUtils.js +1 -1
  173. package/distr/Tools/src/BuildTasks/ProcessUtils/ShellProcessHandle.js +5 -5
  174. package/distr/Tools/src/BuildTasks/PublishedVersionUtils.js +3 -3
  175. package/distr/Tools/src/BuildTasks/ReadFormSource.js +1 -1
  176. package/distr/Tools/src/BuildTasks/ResolveFormInfo.js +3 -2
  177. package/distr/Tools/src/BuildTasks/Version.js +3 -3
  178. package/distr/Tools/src/BuildTasks/WriteFormMeta.js +1 -1
  179. package/distr/Tools/src/CLICommands/BuildForms/BuildCacheMode.js +3 -2
  180. package/distr/Tools/src/CLICommands/BuildForms/BuildFormsOptions.js +3 -2
  181. package/distr/Tools/src/CLICommands/BuildForms/RunBuildForms.js +1 -1
  182. package/distr/Tools/src/CLICommands/BuildServer/BuildLogsWebsocketController.js +3 -3
  183. package/distr/Tools/src/CLICommands/BuildServer/BuildServerServerOptions.js +5 -3
  184. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerBackendResourcesController.js +5 -4
  185. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerBackendResourcesUpdatesController.js +6 -5
  186. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerBuildFormsController.js +5 -4
  187. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerClientJsController.js +3 -2
  188. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerClientJsFromResourcesController.js +5 -4
  189. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerFormInfoController.js +5 -4
  190. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerLocalSourcesEngineController.js +3 -2
  191. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerPrebuiltResourcesController.js +5 -4
  192. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerPublishedEngineController.js +5 -4
  193. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/BuildFormDevServer.js +4 -4
  194. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/ClientJsDevServer.js +1 -1
  195. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/EngineDevServer.js +1 -1
  196. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/ReportGeneratorErrorToPageBody.js +1 -1
  197. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/RunFormCompilationViaWebpackDevServer.js +1 -1
  198. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackDevServerWorker/WebpackDevServerWorker.js +1 -1
  199. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackDevServerWorker/WebpackDevServerWorkerFactory.js +1 -1
  200. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackInMemoryUtils/IInputFileSystem.js +1 -1
  201. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackInMemoryUtils/IWatchFileSystem.js +1 -1
  202. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackInMemoryUtils/WebpackHybridFileSystem.js +3 -3
  203. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/Directories/FarmDirectory.js +1 -1
  204. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/GlobToRegexp.js +1 -1
  205. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/IGeneratedServerSideSourcesProvider.js +1 -1
  206. package/distr/Tools/src/CLICommands/BuildServer/RunBuildServer.js +1 -1
  207. package/distr/Tools/src/CLICommands/BuildServer/StdStreamsIntercepter.js +1 -1
  208. package/distr/Tools/src/CLICommands/CommonOptions/BuildDebugOnlyOption.js +3 -2
  209. package/distr/Tools/src/CLICommands/CommonOptions/CommonOptionDefintions.js +5 -3
  210. package/distr/Tools/src/CLICommands/CommonOptions/CommonOptions.js +1 -1
  211. package/distr/Tools/src/CLICommands/DevBuild/DevBuildOptions.js +3 -2
  212. package/distr/Tools/src/CLICommands/DevBuild/RunDevBuild.js +1 -1
  213. package/distr/Tools/src/CLICommands/FormStats/FormStatsOptions.js +3 -2
  214. package/distr/Tools/src/CLICommands/FormStats/RunFormStats.js +2 -2
  215. package/distr/Tools/src/CLICommands/FormsHelper/FormsHelperController.js +5 -4
  216. package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/fetchfunctions/{gfv}.fetchfunctions.js +1 -1
  217. package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/test/browser/Smoke.test.js +3 -2
  218. package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/test/ui/DemoTest.test.js +3 -2
  219. package/distr/Tools/src/CLICommands/InitForm/InitFormOptions.js +3 -2
  220. package/distr/Tools/src/CLICommands/InitForm/RunInitForm.js +3 -3
  221. package/distr/Tools/src/CLICommands/Localization/LocalizationOptions.js +3 -2
  222. package/distr/Tools/src/CLICommands/Localization/RunLocalization.js +1 -1
  223. package/distr/Tools/src/CLICommands/RenameFiles/RenameFilesOptions.js +3 -2
  224. package/distr/Tools/src/CLICommands/RenameFiles/RunRenameFiles.js +3 -3
  225. package/distr/Tools/src/CLICommands/SugarExtractor/ExtractTextsFromSugarController.js +3 -2
  226. package/distr/Tools/src/CLICommands/SugarExtractor/Utils.js +1 -1
  227. package/distr/Tools/src/CLICommands/UpgradeForm/RunUpgradeForm.js +3 -3
  228. package/distr/Tools/src/CLICommands/UpgradeForm/UpgradeFormOptions.js +3 -2
  229. package/distr/Tools/src/CandyCLI.js +1 -1
  230. package/distr/Tools/src/CheckNodeJsVersion.js +3 -2
  231. package/distr/Tools/src/Commons/ApiClient/ToolsApiClient.js +1 -1
  232. package/distr/Tools/src/Commons/ConsoleApplication/ConsoleApplication.js +3 -3
  233. package/distr/Tools/src/Commons/ConsoleApplication/ConsoleApplicationContext.js +1 -1
  234. package/distr/Tools/src/Commons/ErrorUntyped.js +1 -1
  235. package/distr/Tools/src/Commons/EventObject.js +1 -1
  236. package/distr/Tools/src/Commons/ExecUtils.js +1 -1
  237. package/distr/Tools/src/Commons/ExtractGfvsFromFileName.js +1 -1
  238. package/distr/Tools/src/Commons/FormGlobsUtils.js +1 -1
  239. package/distr/Tools/src/Commons/FormLocationInfo.js +1 -1
  240. package/distr/Tools/src/Commons/FsUtils.js +7 -5
  241. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Actions.js +1 -1
  242. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Methods.js +1 -1
  243. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/NotFoundWebError.js +1 -1
  244. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/CookieParamParamBinder.js +1 -1
  245. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/IParamBinder.js +1 -1
  246. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/JsonBodyParamBinder.js +1 -1
  247. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/StringBodyParamBinder.js +1 -1
  248. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/UrlParamBinder.js +1 -1
  249. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/UrlQueryParamBinder.js +1 -1
  250. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Params.js +3 -2
  251. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/CustomActionResultHandler.js +1 -1
  252. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/CustomContentResultHandler.js +1 -1
  253. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/EmptyResultHandler.js +1 -1
  254. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/HtmlResultHandler.js +1 -1
  255. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/IResultHandler.js +1 -1
  256. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/JsonResultHandler.js +1 -1
  257. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/PlainTextResultHandler.js +1 -1
  258. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/StreamResultHandler.js +3 -3
  259. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results.js +3 -2
  260. package/distr/Tools/src/Commons/HttpServer/ExpressWrapper/ExpressServerWrapper.js +6 -6
  261. package/distr/Tools/src/Commons/HttpServer/ExpressWrapper/SingletonController.js +1 -1
  262. package/distr/Tools/src/Commons/Locks/Lock.js +1 -1
  263. package/distr/Tools/src/Commons/Locks/LockHandle.js +1 -1
  264. package/distr/Tools/src/Commons/Locks/ReadWriteLockCollection.js +1 -1
  265. package/distr/Tools/src/Commons/Logging/ELKLogger.js +3 -2
  266. package/distr/Tools/src/Commons/Logging/ILogger.js +1 -1
  267. package/distr/Tools/src/Commons/Logging/InMemoryLogger.js +1 -1
  268. package/distr/Tools/src/Commons/Logging/Logger.js +1 -1
  269. package/distr/Tools/src/Commons/Logging/StaticLogger.js +1 -1
  270. package/distr/Tools/src/Commons/Options/CommandBasedOptionsParser.d.js +1 -1
  271. package/distr/Tools/src/Commons/Options/CommandBasedOptionsParser.js +3 -3
  272. package/distr/Tools/src/Commons/PathPattern.js +1 -1
  273. package/distr/Tools/src/Commons/TasksCore/AggregatedError.js +1 -1
  274. package/distr/Tools/src/Commons/TasksCore/BuildTask.js +1 -1
  275. package/distr/Tools/src/Commons/TasksCore/ChainableValueProducer.js +5 -5
  276. package/distr/Tools/src/Commons/TasksCore/DirectoryEntriesProducer.js +3 -3
  277. package/distr/Tools/src/Commons/TasksCore/EmptyProducer.js +1 -1
  278. package/distr/Tools/src/Commons/TasksCore/FileSystemEntriesProducer.js +1 -1
  279. package/distr/Tools/src/Commons/TasksCore/FileValueProducer.js +1 -1
  280. package/distr/Tools/src/Commons/TasksCore/FixedDirectoryEntriesProducer.js +1 -1
  281. package/distr/Tools/src/Commons/TasksCore/Observe.js +1 -1
  282. package/distr/Tools/src/Commons/TasksCore/SingleValueProducer.js +1 -1
  283. package/distr/Tools/src/Commons/TimingUtils.js +1 -1
  284. package/distr/Tools/src/FormWebpackConfiguration/CacheAssetsPlugin.js +3 -3
  285. package/distr/Tools/src/FormWebpackConfiguration/createFormWebpackConfiguration.js +1 -1
  286. package/distr/Tools/src/GenerateReadMe.js +1 -1
  287. package/distr/Tools/src/LocalServerFrontEndDist/enhancedClient.js +1 -1
  288. package/distr/Tools/src/LocalServerFrontEndDist/enhancedClient.js.LICENSE.txt +3 -5
  289. package/distr/Tools/src/LocalServerFrontEndDist/index.js +1 -1
  290. package/distr/Tools/src/LocalServerFrontEndDist/index.js.LICENSE.txt +3 -5
  291. package/distr/Tools/src/LocalServerFrontEndDist/index.js.map +1 -1
  292. package/distr/Tools/src/Options/CandyToolOptions.js +3 -2
  293. package/distr/Tools/src/ReadFarmConfig.js +1 -1
  294. package/distr/Tools/src/SelfUpdate.js +3 -3
  295. package/distr/Tools/src/StaticFilesForProductionResourcesDir/client.js +686 -681
  296. package/distr/Tools/src/StaticFilesForProductionResourcesDir/client.js.map +1 -1
  297. package/distr/Tools/src/StaticFilesForProductionResourcesDir/client.min.js +866 -581
  298. package/distr/Tools/src/StaticFilesForProductionResourcesDir/client.min.js.LICENSE.txt +1 -1
  299. package/distr/Tools/src/StaticFilesForProductionResourcesDir/client.min.js.map +1 -1
  300. package/distr/Tools/src/StaticFilesForProductionResourcesDir/jquery-1.11.3.min.js +1 -1
  301. package/distr/Tools/src/StaticFilesForProductionResourcesDir/polyfill.min.js +1 -1
  302. package/distr/Tools/src/StaticFilesForProductionResourcesDir/testing.min.js +1 -1
  303. package/distr/Tools/src/StaticFilesForResourcesDir/jquery-1.11.3.min.js +1 -1
  304. package/distr/Tools/src/StaticFilesForResourcesDir/polyfill.min.js +1 -1
  305. package/distr/Tools/src/StaticFilesForResourcesDir/testing.min.js +1 -1
  306. package/package.json +24 -24
  307. package/distr/Common/AsyncUtils.js.map +0 -1
  308. package/distr/Common/AutoValidationUtils.js.map +0 -1
  309. package/distr/Common/CandyApiClient/CandyApiClient.js.map +0 -1
  310. package/distr/Common/CandyApiClient/CandyApiClientContext.js.map +0 -1
  311. package/distr/Common/CandyApiClient/ClientDraftInfo/ClientDraftInfoResponse.js.map +0 -1
  312. package/distr/Common/CandyApiClient/ClientDraftInfo/FnsFormInfo.js.map +0 -1
  313. package/distr/Common/CandyApiClient/ClientDraftInfo/GetClientDraftInfoUrl.js.map +0 -1
  314. package/distr/Common/CandyApiClient/ClientDraftInfo/PrintInfo.js.map +0 -1
  315. package/distr/Common/CandyApiClient/DigestApiClient/Decorators/DigestApiClientWithCache.js.map +0 -1
  316. package/distr/Common/CandyApiClient/DigestApiClient/Decorators/DigestApiClientWithDebouncedBatching.js.map +0 -1
  317. package/distr/Common/CandyApiClient/DigestApiClient/DigestApiClient.js.map +0 -1
  318. package/distr/Common/CandyApiClient/DigestApiClient/Fakes/Data/TaxRebate1152026.js.map +0 -1
  319. package/distr/Common/CandyApiClient/DigestApiClient/Fakes/FakeDigestApiClient.js.map +0 -1
  320. package/distr/Common/CandyApiClient/DigestApiClient/Fakes/FakePicklists.js.map +0 -1
  321. package/distr/Common/CandyApiClient/DigestApiClient/IDigestApiClient.js.map +0 -1
  322. package/distr/Common/CandyApiClient/DigestApiClient/React/DigestApiClientContext.js.map +0 -1
  323. package/distr/Common/CandyApiClient/DigestApiClient/TestDigestApiClient.js.map +0 -1
  324. package/distr/Common/CandyApiClient/DigestApiClient/Types/DigestQueryFilter.js.map +0 -1
  325. package/distr/Common/CandyApiClient/DigestApiClient/Types/DigestRequest.js.map +0 -1
  326. package/distr/Common/CandyApiClient/FakeCandyApiClient.js.map +0 -1
  327. package/distr/Common/CandyApiClient/ICandyApiClient.js.map +0 -1
  328. package/distr/Common/CandyApiClient/IsBuffer.js.map +0 -1
  329. package/distr/Common/CandyApiClient/Types/Attachments/Attacments.js.map +0 -1
  330. package/distr/Common/CandyApiClient/Types/Attachments/GetAttachmentsResponse.js.map +0 -1
  331. package/distr/Common/CandyApiClient/Types/ChangeSet/ServerChangeSet.js.map +0 -1
  332. package/distr/Common/CandyApiClient/Types/CreateDraft/CreateDraftResponse.js.map +0 -1
  333. package/distr/Common/CandyApiClient/Types/DiagResourcesResponse.js.map +0 -1
  334. package/distr/Common/CandyApiClient/Types/DraftActions/CombineFufResult.js.map +0 -1
  335. package/distr/Common/CandyApiClient/Types/DraftActions/ConvertDraftRequest.js.map +0 -1
  336. package/distr/Common/CandyApiClient/Types/DraftActions/FileProperties.js.map +0 -1
  337. package/distr/Common/CandyApiClient/Types/DraftActions/FufSizeTooLargeError.js.map +0 -1
  338. package/distr/Common/CandyApiClient/Types/DraftFullId.js.map +0 -1
  339. package/distr/Common/CandyApiClient/Types/ErrorLog/CandyPopdProtocol.js.map +0 -1
  340. package/distr/Common/CandyApiClient/Types/ErrorLog/ServerErrorLog.js.map +0 -1
  341. package/distr/Common/CandyApiClient/Types/ExplanatoryNote/CreateExplanatoryNoteResponse.js.map +0 -1
  342. package/distr/Common/CandyApiClient/Types/FeatureFlags/FeatureFlagsResponse.js.map +0 -1
  343. package/distr/Common/CandyApiClient/Types/Focus/FocusServerResponse.js.map +0 -1
  344. package/distr/Common/CandyApiClient/Types/Focus/FocusTypes.js.map +0 -1
  345. package/distr/Common/CandyApiClient/Types/GetInner/ServerInnerResponse.js.map +0 -1
  346. package/distr/Common/CandyApiClient/Types/GetInner/ServerRawResponse.js.map +0 -1
  347. package/distr/Common/CandyApiClient/Types/GetInner/ServerRequisitesResponse.js.map +0 -1
  348. package/distr/Common/CandyApiClient/Types/Guid.js.map +0 -1
  349. package/distr/Common/CandyApiClient/Types/InstancesDeleting/InstancesDeletingRule.js.map +0 -1
  350. package/distr/Common/CandyApiClient/Types/MassActions/MassActionParameters.js.map +0 -1
  351. package/distr/Common/CandyApiClient/Types/MassActions/ValueForInstancesSettingRule.js.map +0 -1
  352. package/distr/Common/CandyApiClient/Types/Presentations/DraftPresentationType.js.map +0 -1
  353. package/distr/Common/CandyApiClient/Types/Presentations/PresentationContent.js.map +0 -1
  354. package/distr/Common/CandyApiClient/Types/Print/PrintResponse.js.map +0 -1
  355. package/distr/Common/CandyApiClient/Types/Print/PrintType.js.map +0 -1
  356. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/AndExpression.js.map +0 -1
  357. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/CompareExpression.js.map +0 -1
  358. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/CountCallExpression.js.map +0 -1
  359. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/DecimalConstantExpression.js.map +0 -1
  360. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/InstanceIdCallExpression.js.map +0 -1
  361. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/NotExpression.js.map +0 -1
  362. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/OrExpression.js.map +0 -1
  363. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/StringConstantExpression.js.map +0 -1
  364. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/StringMatchExpression.js.map +0 -1
  365. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/SumCallExpression.js.map +0 -1
  366. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/TernaryExpression.js.map +0 -1
  367. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/ValueReferenceExpression.js.map +0 -1
  368. package/distr/Common/CandyApiClient/Types/QueryCollecton/InnerQueryExpression.js.map +0 -1
  369. package/distr/Common/CandyApiClient/Types/QueryCollecton/InnerQueryRequest.js.map +0 -1
  370. package/distr/Common/CandyApiClient/Types/QueryCollecton/InnerQueryResponse.js.map +0 -1
  371. package/distr/Common/CandyApiClient/Types/QueryCollecton/SelectClause.js.map +0 -1
  372. package/distr/Common/CandyApiClient/Types/QueryCollecton/SortingRule.js.map +0 -1
  373. package/distr/Common/CandyApiClient/Types/Staff/EmployeeInfo.js.map +0 -1
  374. package/distr/Common/CandyApiClient/Types/Staff/ImportEmployeesOptions.js.map +0 -1
  375. package/distr/Common/CandyApiClient/Types/Staff/ImportEmployeesRequest.js.map +0 -1
  376. package/distr/Common/CandyApiClient/Types/Staff/StaffInfo.js.map +0 -1
  377. package/distr/Common/CandyApiClient/Types/Tasks/GetTasksServerResponse.js.map +0 -1
  378. package/distr/Common/CandyApiClient/Types/Tasks/Tasks.js.map +0 -1
  379. package/distr/Common/CandyApiClient/Types/TestClassification.js.map +0 -1
  380. package/distr/Common/CollectionUtils.js.map +0 -1
  381. package/distr/Common/CommonConstants/SectionNames.js.map +0 -1
  382. package/distr/Common/Comparers.js.map +0 -1
  383. package/distr/Common/EmotionStorybookWorkaroundViaAliases.js.map +0 -1
  384. package/distr/Common/EndPoints.js.map +0 -1
  385. package/distr/Common/Enums/ButtonSettingsTypeEnum.js.map +0 -1
  386. package/distr/Common/Errors.js.map +0 -1
  387. package/distr/Common/ExtractGFVPath/ExtractGFVPath.js.map +0 -1
  388. package/distr/Common/FSPrinterClient/FSPrinterClient.js.map +0 -1
  389. package/distr/Common/FSPrinterClient/FakeFSPrinterClient.js.map +0 -1
  390. package/distr/Common/FSPrinterClient/IFSPrinterClient.js.map +0 -1
  391. package/distr/Common/FormActionHandlers/ContextualActionNames.js.map +0 -1
  392. package/distr/Common/FormActionHandlers/ControlNamedContextualAction.js.map +0 -1
  393. package/distr/Common/FormPathUtils.js.map +0 -1
  394. package/distr/Common/Funcs.js.map +0 -1
  395. package/distr/Common/GFV.js.map +0 -1
  396. package/distr/Common/Hooks/UseLocalStorage.js.map +0 -1
  397. package/distr/Common/HttpClient/AuthenticationMode.js.map +0 -1
  398. package/distr/Common/HttpClient/FetchImplementation/BrowserFetchWithOptionalPolyfill.js.map +0 -1
  399. package/distr/Common/HttpClient/FetchImplementation/BrowserFetchWithPolyfill.js.map +0 -1
  400. package/distr/Common/HttpClient/FetchImplementation/Fetch.js.map +0 -1
  401. package/distr/Common/HttpClient/FetchImplementation/NativeBrowserFetch.js.map +0 -1
  402. package/distr/Common/HttpClient/FetchImplementation/NodeFetch.js.map +0 -1
  403. package/distr/Common/HttpClient/HttpClient.js.map +0 -1
  404. package/distr/Common/HttpClient/HttpClientAuthenticationProvider.js.map +0 -1
  405. package/distr/Common/HttpClient/IHttpClient.js.map +0 -1
  406. package/distr/Common/IndentString.js.map +0 -1
  407. package/distr/Common/IntRangeUtils.js.map +0 -1
  408. package/distr/Common/IterableUtils.js.map +0 -1
  409. package/distr/Common/KCLangRuntimeUtils.js.map +0 -1
  410. package/distr/Common/ModelPath/AbsoluteModelFieldPath.js.map +0 -1
  411. package/distr/Common/ModelPath/BuildIterationSequence.js.map +0 -1
  412. package/distr/Common/ModelPath/EachCurrentCollision.js.map +0 -1
  413. package/distr/Common/ModelPath/IEquatable.js.map +0 -1
  414. package/distr/Common/ModelPath/Map/AbsoluteModelPathMap.js.map +0 -1
  415. package/distr/Common/ModelPath/Map/Map2.js.map +0 -1
  416. package/distr/Common/ModelPath/Map/ModelPathMap.js.map +0 -1
  417. package/distr/Common/ModelPath/ModelPath.js.map +0 -1
  418. package/distr/Common/ModelPath/ModelPathBuilder.js.map +0 -1
  419. package/distr/Common/ModelPath/ModelPathHelper.js.map +0 -1
  420. package/distr/Common/ModelPath/PathMatcher.js.map +0 -1
  421. package/distr/Common/ModelPath/PathSplitHelper.js.map +0 -1
  422. package/distr/Common/ModelPath/Set/AbsoluteModelPathSet.js.map +0 -1
  423. package/distr/Common/ModelPath/Set/AbsoluteResolvedModelPathSet.js.map +0 -1
  424. package/distr/Common/ModelPath/Set/ModelPathSet.js.map +0 -1
  425. package/distr/Common/ModelPath/Set/Set2.js.map +0 -1
  426. package/distr/Common/NidusClient/ContextualNidusClient/ContextualNidusClient.js.map +0 -1
  427. package/distr/Common/NidusClient/ContextualNidusClient/IContextualNidusClient.js.map +0 -1
  428. package/distr/Common/NidusClient/Fakes/CreateUniqueNidusEntryId.js.map +0 -1
  429. package/distr/Common/NidusClient/Fakes/FakeNidusClient.js.map +0 -1
  430. package/distr/Common/NidusClient/Fakes/LocalStorageBasedNidusClient.js.map +0 -1
  431. package/distr/Common/NidusClient/INidusClient.js.map +0 -1
  432. package/distr/Common/NidusClient/NidusClientContext.js.map +0 -1
  433. package/distr/Common/NidusClient/NidusClientImpl.js.map +0 -1
  434. package/distr/Common/PathConstants.js.map +0 -1
  435. package/distr/Common/PicklistApiClient/IPicklistApiClient.js.map +0 -1
  436. package/distr/Common/PicklistApiClient/PicklistApiClient.js.map +0 -1
  437. package/distr/Common/PicklistApiClient/PicklistRequestV2Builder.js.map +0 -1
  438. package/distr/Common/PicklistApiClient/Serializers/DigestFilterColumnSerializer.js.map +0 -1
  439. package/distr/Common/PicklistApiClient/Serializers/DigestLogicalFilterSerializer.js.map +0 -1
  440. package/distr/Common/PicklistApiClient/Types/PicklistRequestV2.js.map +0 -1
  441. package/distr/Common/PicklistApiClient/Types/PicklistResultV2.js.map +0 -1
  442. package/distr/Common/RngSchemeTypes/types.js.map +0 -1
  443. package/distr/Common/StringArrayKey.js.map +0 -1
  444. package/distr/Common/TextExtractor/TextExtractorTypes.js.map +0 -1
  445. package/distr/Common/TypingUtils.js.map +0 -1
  446. package/distr/Common/UUID.js.map +0 -1
  447. package/distr/Common/UseAsyncEffect.js.map +0 -1
  448. package/distr/Common/UseShowOnce.js.map +0 -1
  449. package/distr/Common/UseTypedSelector.js.map +0 -1
  450. package/distr/Common/WellKnownDirectories.js.map +0 -1
  451. package/distr/Common/getRngSchemaFilename.js.map +0 -1
  452. package/distr/Common/hashUtils.js.map +0 -1
  453. package/distr/Tools/src/BuildTasks/ClientJS/BuildClientJsTask.js.map +0 -1
  454. package/distr/Tools/src/BuildTasks/ClientJS/IsWebpack5.js.map +0 -1
  455. package/distr/Tools/src/BuildTasks/Engine/AcquireFormEngine.js.map +0 -1
  456. package/distr/Tools/src/BuildTasks/Engine/AcquirePublishedEngineTask.js.map +0 -1
  457. package/distr/Tools/src/BuildTasks/Engine/BuildLocalEngineTask.js.map +0 -1
  458. package/distr/Tools/src/BuildTasks/Engine/EngineSource.js.map +0 -1
  459. package/distr/Tools/src/BuildTasks/EngineStructureUtils.js.map +0 -1
  460. package/distr/Tools/src/BuildTasks/EngineVersionUtils.js.map +0 -1
  461. package/distr/Tools/src/BuildTasks/FSTask.js.map +0 -1
  462. package/distr/Tools/src/BuildTasks/Form/CompileForm.js.map +0 -1
  463. package/distr/Tools/src/BuildTasks/Form/GenerateForm.js.map +0 -1
  464. package/distr/Tools/src/BuildTasks/Form/NullFormGenerator.js.map +0 -1
  465. package/distr/Tools/src/BuildTasks/Form/WriteAttachmentPathFiles.js.map +0 -1
  466. package/distr/Tools/src/BuildTasks/Form/WriteFLangNormalizationFiles.js.map +0 -1
  467. package/distr/Tools/src/BuildTasks/Generator/AcquireFormGenerator.js.map +0 -1
  468. package/distr/Tools/src/BuildTasks/Generator/AcquirePublishedGeneratorTask.js.map +0 -1
  469. package/distr/Tools/src/BuildTasks/Generator/BuildGeneratorFromSourcesTask.js.map +0 -1
  470. package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/CreateAsyncGenerator.js.map +0 -1
  471. package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/GeneratorRequireUtils.js.map +0 -1
  472. package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/ProcessSugarWorker.js.map +0 -1
  473. package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/ReadSourcesAndProcessSugarWorker.js.map +0 -1
  474. package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/RequireUncached.js.map +0 -1
  475. package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/TypedProcessWorker.js.map +0 -1
  476. package/distr/Tools/src/BuildTasks/ProcessUtils/ProcessUtils.js.map +0 -1
  477. package/distr/Tools/src/BuildTasks/ProcessUtils/ShellProcessHandle.js.map +0 -1
  478. package/distr/Tools/src/BuildTasks/PublishedVersionUtils.js.map +0 -1
  479. package/distr/Tools/src/BuildTasks/ReadFormSource.js.map +0 -1
  480. package/distr/Tools/src/BuildTasks/ResolveFormInfo.js.map +0 -1
  481. package/distr/Tools/src/BuildTasks/Version.js.map +0 -1
  482. package/distr/Tools/src/BuildTasks/WriteFormMeta.js.map +0 -1
  483. package/distr/Tools/src/CLICommands/BuildForms/BuildCacheMode.js.map +0 -1
  484. package/distr/Tools/src/CLICommands/BuildForms/BuildFormsOptions.js.map +0 -1
  485. package/distr/Tools/src/CLICommands/BuildForms/RunBuildForms.js.map +0 -1
  486. package/distr/Tools/src/CLICommands/BuildServer/BuildLogsWebsocketController.js.map +0 -1
  487. package/distr/Tools/src/CLICommands/BuildServer/BuildServerServerOptions.js.map +0 -1
  488. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerBackendResourcesController.js.map +0 -1
  489. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerBackendResourcesUpdatesController.js.map +0 -1
  490. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerBuildFormsController.js.map +0 -1
  491. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerClientJsController.js.map +0 -1
  492. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerClientJsFromResourcesController.js.map +0 -1
  493. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerFormInfoController.js.map +0 -1
  494. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerLocalSourcesEngineController.js.map +0 -1
  495. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerPrebuiltResourcesController.js.map +0 -1
  496. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerPublishedEngineController.js.map +0 -1
  497. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/BuildFormDevServer.js.map +0 -1
  498. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/ClientJsDevServer.js.map +0 -1
  499. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/EngineDevServer.js.map +0 -1
  500. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/ReportGeneratorErrorToPageBody.js.map +0 -1
  501. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/RunFormCompilationViaWebpackDevServer.js.map +0 -1
  502. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackDevServerWorker/WebpackDevServerWorker.js.map +0 -1
  503. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackDevServerWorker/WebpackDevServerWorkerFactory.js.map +0 -1
  504. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackInMemoryUtils/IInputFileSystem.js.map +0 -1
  505. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackInMemoryUtils/IWatchFileSystem.js.map +0 -1
  506. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackInMemoryUtils/WebpackHybridFileSystem.js.map +0 -1
  507. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/Directories/FarmDirectory.js.map +0 -1
  508. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/GlobToRegexp.js.map +0 -1
  509. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/IGeneratedServerSideSourcesProvider.js.map +0 -1
  510. package/distr/Tools/src/CLICommands/BuildServer/RunBuildServer.js.map +0 -1
  511. package/distr/Tools/src/CLICommands/BuildServer/StdStreamsIntercepter.js.map +0 -1
  512. package/distr/Tools/src/CLICommands/CommonOptions/BuildDebugOnlyOption.js.map +0 -1
  513. package/distr/Tools/src/CLICommands/CommonOptions/CommonOptionDefintions.js.map +0 -1
  514. package/distr/Tools/src/CLICommands/CommonOptions/CommonOptions.js.map +0 -1
  515. package/distr/Tools/src/CLICommands/DevBuild/DevBuildOptions.js.map +0 -1
  516. package/distr/Tools/src/CLICommands/DevBuild/RunDevBuild.js.map +0 -1
  517. package/distr/Tools/src/CLICommands/FormStats/FormStatsOptions.js.map +0 -1
  518. package/distr/Tools/src/CLICommands/FormStats/RunFormStats.js.map +0 -1
  519. package/distr/Tools/src/CLICommands/FormsHelper/FormsHelperController.js.map +0 -1
  520. package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/fetchfunctions/{gfv}.fetchfunctions.js.map +0 -1
  521. package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/test/browser/Smoke.test.js.map +0 -1
  522. package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/test/ui/DemoTest.test.js.map +0 -1
  523. package/distr/Tools/src/CLICommands/InitForm/InitFormOptions.js.map +0 -1
  524. package/distr/Tools/src/CLICommands/InitForm/RunInitForm.js.map +0 -1
  525. package/distr/Tools/src/CLICommands/Localization/LocalizationOptions.js.map +0 -1
  526. package/distr/Tools/src/CLICommands/Localization/RunLocalization.js.map +0 -1
  527. package/distr/Tools/src/CLICommands/RenameFiles/RenameFilesOptions.js.map +0 -1
  528. package/distr/Tools/src/CLICommands/RenameFiles/RunRenameFiles.js.map +0 -1
  529. package/distr/Tools/src/CLICommands/SugarExtractor/ExtractTextsFromSugarController.js.map +0 -1
  530. package/distr/Tools/src/CLICommands/SugarExtractor/Utils.js.map +0 -1
  531. package/distr/Tools/src/CLICommands/UpgradeForm/RunUpgradeForm.js.map +0 -1
  532. package/distr/Tools/src/CLICommands/UpgradeForm/UpgradeFormOptions.js.map +0 -1
  533. package/distr/Tools/src/CandyCLI.js.map +0 -1
  534. package/distr/Tools/src/CheckNodeJsVersion.js.map +0 -1
  535. package/distr/Tools/src/Commons/ApiClient/ToolsApiClient.js.map +0 -1
  536. package/distr/Tools/src/Commons/ConsoleApplication/ConsoleApplication.js.map +0 -1
  537. package/distr/Tools/src/Commons/ConsoleApplication/ConsoleApplicationContext.js.map +0 -1
  538. package/distr/Tools/src/Commons/ErrorUntyped.js.map +0 -1
  539. package/distr/Tools/src/Commons/EventObject.js.map +0 -1
  540. package/distr/Tools/src/Commons/ExecUtils.js.map +0 -1
  541. package/distr/Tools/src/Commons/ExtractGfvsFromFileName.js.map +0 -1
  542. package/distr/Tools/src/Commons/FormGlobsUtils.js.map +0 -1
  543. package/distr/Tools/src/Commons/FormLocationInfo.js.map +0 -1
  544. package/distr/Tools/src/Commons/FsUtils.js.map +0 -1
  545. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Actions.js.map +0 -1
  546. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Methods.js.map +0 -1
  547. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/NotFoundWebError.js.map +0 -1
  548. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/CookieParamParamBinder.js.map +0 -1
  549. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/IParamBinder.js.map +0 -1
  550. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/JsonBodyParamBinder.js.map +0 -1
  551. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/StringBodyParamBinder.js.map +0 -1
  552. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/UrlParamBinder.js.map +0 -1
  553. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/UrlQueryParamBinder.js.map +0 -1
  554. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Params.js.map +0 -1
  555. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/CustomActionResultHandler.js.map +0 -1
  556. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/CustomContentResultHandler.js.map +0 -1
  557. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/EmptyResultHandler.js.map +0 -1
  558. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/HtmlResultHandler.js.map +0 -1
  559. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/IResultHandler.js.map +0 -1
  560. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/JsonResultHandler.js.map +0 -1
  561. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/PlainTextResultHandler.js.map +0 -1
  562. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/StreamResultHandler.js.map +0 -1
  563. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results.js.map +0 -1
  564. package/distr/Tools/src/Commons/HttpServer/ExpressWrapper/ExpressServerWrapper.js.map +0 -1
  565. package/distr/Tools/src/Commons/HttpServer/ExpressWrapper/SingletonController.js.map +0 -1
  566. package/distr/Tools/src/Commons/Locks/Lock.js.map +0 -1
  567. package/distr/Tools/src/Commons/Locks/LockHandle.js.map +0 -1
  568. package/distr/Tools/src/Commons/Locks/ReadWriteLockCollection.js.map +0 -1
  569. package/distr/Tools/src/Commons/Logging/ELKLogger.js.map +0 -1
  570. package/distr/Tools/src/Commons/Logging/ILogger.js.map +0 -1
  571. package/distr/Tools/src/Commons/Logging/InMemoryLogger.js.map +0 -1
  572. package/distr/Tools/src/Commons/Logging/Logger.js.map +0 -1
  573. package/distr/Tools/src/Commons/Logging/StaticLogger.js.map +0 -1
  574. package/distr/Tools/src/Commons/Options/CommandBasedOptionsParser.d.js.map +0 -1
  575. package/distr/Tools/src/Commons/Options/CommandBasedOptionsParser.js.map +0 -1
  576. package/distr/Tools/src/Commons/PathPattern.js.map +0 -1
  577. package/distr/Tools/src/Commons/TasksCore/AggregatedError.js.map +0 -1
  578. package/distr/Tools/src/Commons/TasksCore/BuildTask.js.map +0 -1
  579. package/distr/Tools/src/Commons/TasksCore/ChainableValueProducer.js.map +0 -1
  580. package/distr/Tools/src/Commons/TasksCore/DirectoryEntriesProducer.js.map +0 -1
  581. package/distr/Tools/src/Commons/TasksCore/EmptyProducer.js.map +0 -1
  582. package/distr/Tools/src/Commons/TasksCore/FileSystemEntriesProducer.js.map +0 -1
  583. package/distr/Tools/src/Commons/TasksCore/FileValueProducer.js.map +0 -1
  584. package/distr/Tools/src/Commons/TasksCore/FixedDirectoryEntriesProducer.js.map +0 -1
  585. package/distr/Tools/src/Commons/TasksCore/Observe.js.map +0 -1
  586. package/distr/Tools/src/Commons/TasksCore/SingleValueProducer.js.map +0 -1
  587. package/distr/Tools/src/Commons/TimingUtils.js.map +0 -1
  588. package/distr/Tools/src/FormWebpackConfiguration/CacheAssetsPlugin.js.map +0 -1
  589. package/distr/Tools/src/FormWebpackConfiguration/createFormWebpackConfiguration.js.map +0 -1
  590. package/distr/Tools/src/GenerateReadMe.js.map +0 -1
  591. package/distr/Tools/src/Options/CandyToolOptions.js.map +0 -1
  592. package/distr/Tools/src/ReadFarmConfig.js.map +0 -1
  593. package/distr/Tools/src/SelfUpdate.js.map +0 -1
  594. package/distr/Tools/src/StaticFilesForProductionResourcesDir/jquery-1.11.3.min.js.map +0 -1
  595. package/distr/Tools/src/StaticFilesForProductionResourcesDir/polyfill.min.js.map +0 -1
  596. package/distr/Tools/src/StaticFilesForProductionResourcesDir/testing.min.js.map +0 -1
  597. package/distr/Tools/src/StaticFilesForResourcesDir/jquery-1.11.3.min.js.map +0 -1
  598. package/distr/Tools/src/StaticFilesForResourcesDir/polyfill.min.js.map +0 -1
  599. package/distr/Tools/src/StaticFilesForResourcesDir/testing.min.js.map +0 -1
@@ -7,7 +7,7 @@ exports.devBuildServerCommandDefinition = exports.buildServerCommandDefinition =
7
7
  var _CommandBasedOptionsParser = require("../../Commons/Options/CommandBasedOptionsParser");
8
8
  var _BuildDebugOnlyOption = require("../CommonOptions/BuildDebugOnlyOption");
9
9
  var _CommonOptionDefintions = require("../CommonOptions/CommonOptionDefintions");
10
- const buildServerCommandDefinition = exports.buildServerCommandDefinition = (0, _CommandBasedOptionsParser.commandDefinition)("build-server", "build-server", (0, _CommandBasedOptionsParser.optionsDefinition)({
10
+ const buildServerCommandDefinition = (0, _CommandBasedOptionsParser.commandDefinition)("build-server", "build-server", (0, _CommandBasedOptionsParser.optionsDefinition)({
11
11
  alias: "g",
12
12
  name: "gfvs",
13
13
  defaultValue: {},
@@ -61,7 +61,8 @@ const buildServerCommandDefinition = exports.buildServerCommandDefinition = (0,
61
61
  }, _BuildDebugOnlyOption.debugOnlyOptionDefinition, _CommonOptionDefintions.devModeOption, _CommonOptionDefintions.logVerbosityOption), {
62
62
  description: "Magic"
63
63
  });
64
- const devBuildServerCommandDefinition = exports.devBuildServerCommandDefinition = (0, _CommandBasedOptionsParser.commandDefinition)("dev-build-server", "dev-build-server", (0, _CommandBasedOptionsParser.optionsDefinition)({
64
+ exports.buildServerCommandDefinition = buildServerCommandDefinition;
65
+ const devBuildServerCommandDefinition = (0, _CommandBasedOptionsParser.commandDefinition)("dev-build-server", "dev-build-server", (0, _CommandBasedOptionsParser.optionsDefinition)({
65
66
  alias: "g",
66
67
  name: "gfvs",
67
68
  defaultValue: {
@@ -109,4 +110,5 @@ const devBuildServerCommandDefinition = exports.devBuildServerCommandDefinition
109
110
  }, _BuildDebugOnlyOption.debugOnlyOptionDefinition, _CommonOptionDefintions.devModeOption, _CommonOptionDefintions.logVerbosityOption), {
110
111
  description: "Magic"
111
112
  });
112
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfQ29tbWFuZEJhc2VkT3B0aW9uc1BhcnNlciIsInJlcXVpcmUiLCJfQnVpbGREZWJ1Z09ubHlPcHRpb24iLCJfQ29tbW9uT3B0aW9uRGVmaW50aW9ucyIsImJ1aWxkU2VydmVyQ29tbWFuZERlZmluaXRpb24iLCJleHBvcnRzIiwiY29tbWFuZERlZmluaXRpb24iLCJvcHRpb25zRGVmaW5pdGlvbiIsImFsaWFzIiwibmFtZSIsImRlZmF1bHRWYWx1ZSIsInBhcnNlIiwiaW5wdXQiLCJkZWZhdWx0T3B0aW9uIiwibXVsdGlwbGUiLCJkZXNjcmlwdGlvbiIsImFsbEZhcm1zRGlyIiwibmlnaHRseSIsImRvZXNOb3RSZXF1aXJlVmFsdWUiLCJkaXNhYmxlQ2xpZW50T3ZlcnJpZGUiLCJza2lwR2VuZXJhdGVkQ29kZVJlZm9ybWF0dGluZyIsImRlYnVnT25seU9wdGlvbkRlZmluaXRpb24iLCJkZXZNb2RlT3B0aW9uIiwibG9nVmVyYm9zaXR5T3B0aW9uIiwiZGV2QnVpbGRTZXJ2ZXJDb21tYW5kRGVmaW5pdGlvbiIsImZvcm1HbG9icyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9DTElDb21tYW5kcy9CdWlsZFNlcnZlci9CdWlsZFNlcnZlclNlcnZlck9wdGlvbnMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29tbWFuZERlZmluaXRpb24sIG9wdGlvbnNEZWZpbml0aW9uIH0gZnJvbSBcIi4uLy4uL0NvbW1vbnMvT3B0aW9ucy9Db21tYW5kQmFzZWRPcHRpb25zUGFyc2VyXCI7XG5pbXBvcnQgeyBCdWlsZERlYnVnT25seU9wdGlvbiwgZGVidWdPbmx5T3B0aW9uRGVmaW5pdGlvbiB9IGZyb20gXCIuLi9Db21tb25PcHRpb25zL0J1aWxkRGVidWdPbmx5T3B0aW9uXCI7XG5pbXBvcnQgeyBDb21tb25PcHRpb25zIH0gZnJvbSBcIi4uL0NvbW1vbk9wdGlvbnMvQ29tbW9uT3B0aW9uc1wiO1xuaW1wb3J0IHsgZGV2TW9kZU9wdGlvbiwgbG9nVmVyYm9zaXR5T3B0aW9uIH0gZnJvbSBcIi4uL0NvbW1vbk9wdGlvbnMvQ29tbW9uT3B0aW9uRGVmaW50aW9uc1wiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEJ1aWxkU2VydmVyT3B0aW9ucyBleHRlbmRzIENvbW1vbk9wdGlvbnMsIEJ1aWxkRGVidWdPbmx5T3B0aW9uIHtcbiAgICBkaXNhYmxlQ2xpZW50T3ZlcnJpZGU6IGJvb2xlYW47XG4gICAgc2tpcEdlbmVyYXRlZENvZGVSZWZvcm1hdHRpbmc6IGJvb2xlYW47XG4gICAgbmlnaHRseTogYm9vbGVhbjtcbiAgICBhbGxGYXJtc0Rpcjogc3RyaW5nW10gfCBbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEZXZCdWlsZFNlcnZlck9wdGlvbnMgZXh0ZW5kcyBDb21tb25PcHRpb25zLCBCdWlsZERlYnVnT25seU9wdGlvbiB7XG4gICAgZm9ybUdsb2JzOiBzdHJpbmdbXTtcbiAgICBkaXNhYmxlQ2xpZW50T3ZlcnJpZGU6IGJvb2xlYW47XG4gICAgc2tpcEdlbmVyYXRlZENvZGVSZWZvcm1hdHRpbmc6IGJvb2xlYW47XG4gICAgYWxsRmFybXNEaXI6IHN0cmluZ1tdIHwgW107XG59XG5cbmV4cG9ydCBjb25zdCBidWlsZFNlcnZlckNvbW1hbmREZWZpbml0aW9uID0gY29tbWFuZERlZmluaXRpb248XCJidWlsZC1zZXJ2ZXJcIiwgQnVpbGRTZXJ2ZXJPcHRpb25zPihcbiAgICBcImJ1aWxkLXNlcnZlclwiLFxuICAgIFwiYnVpbGQtc2VydmVyXCIsXG4gICAgb3B0aW9uc0RlZmluaXRpb24oXG4gICAgICAgIHtcbiAgICAgICAgICAgIGFsaWFzOiBcImdcIixcbiAgICAgICAgICAgIG5hbWU6IFwiZ2Z2c1wiLFxuICAgICAgICAgICAgZGVmYXVsdFZhbHVlOiB7fSxcbiAgICAgICAgICAgIHBhcnNlOiAoaW5wdXQ6IHN0cmluZ1tdKSA9PiAoe30pLFxuICAgICAgICAgICAgZGVmYXVsdE9wdGlvbjogdHJ1ZSxcbiAgICAgICAgICAgIG11bHRpcGxlOiB0cnVlLFxuICAgICAgICAgICAgZGVzY3JpcHRpb246IFwi0J7Qv9GG0LjRjyDRg9GB0YLQsNGA0LXQu9CwLiDQntGB0YLQsNCy0LvQtdC90LAg0LTQu9GPINC+0LHRgNCw0YLQvdC+0Lkg0YHQvtCy0LzQtdGB0YLQuNC80L7RgdGC0LguXCIsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIGFsaWFzOiBcImFcIixcbiAgICAgICAgICAgIG5hbWU6IFwiYWxsLWZhcm0tZGlyXCIsXG4gICAgICAgICAgICBkZWZhdWx0VmFsdWU6IHsgYWxsRmFybXNEaXI6IFtdIH0sXG4gICAgICAgICAgICBwYXJzZTogKGlucHV0OiBzdHJpbmdbXSkgPT4gKHsgYWxsRmFybXNEaXI6IGlucHV0IH0pLFxuICAgICAgICAgICAgZGVmYXVsdE9wdGlvbjogZmFsc2UsXG4gICAgICAgICAgICBtdWx0aXBsZTogdHJ1ZSxcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOlxuICAgICAgICAgICAgICAgIFwi0J/QvtC30LLQvtC70Y/QtdGCINC/0LXRgNC10LTQsNGC0Ywg0LzQsNGB0YHQuNCyINC/0YPRgtC10Lkg0LTQviDQstGB0LXRhSDRhNCw0YDQvNC+0LIgY2FuZHksINGH0YLQvtCx0Ysg0L7RgtC60YDRi9Cy0LDRgtGMINC40Lcg0LLRgdC10YUg0L3QuNGFINGE0L7RgNC80YsuINCf0YPRgtGMINC/0LXRgNC10LTQsNCy0LDRgtGMINC+0YLQvdC+0YHQuNGC0LXQu9GM0L3QviBrZWZvcm1zLmVuZ2luZVwiLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiBcIm5pZ2h0bHlcIixcbiAgICAgICAgICAgIGRlZmF1bHRWYWx1ZTogeyBuaWdodGx5OiBmYWxzZSB9LFxuICAgICAgICAgICAgcGFyc2U6IGlucHV0ID0+ICh7IG5pZ2h0bHk6IGlucHV0IH0pLFxuICAgICAgICAgICAgZG9lc05vdFJlcXVpcmVWYWx1ZTogdHJ1ZSxcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBcItCS0LrQu9GO0YfQsNC10YIg0YHQsdC+0YDQutGDINGE0L7RgNC8INC90LAg0LTQstC40LbQutC1IG5pZ2h0bHkuXCIsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6IFwibm8tY2xpZW50LW92ZXJyaWRlXCIsXG4gICAgICAgICAgICBkZWZhdWx0VmFsdWU6IHsgZGlzYWJsZUNsaWVudE92ZXJyaWRlOiBmYWxzZSB9LFxuICAgICAgICAgICAgcGFyc2U6IGlucHV0ID0+ICh7IGRpc2FibGVDbGllbnRPdmVycmlkZTogaW5wdXQgfSksXG4gICAgICAgICAgICBkb2VzTm90UmVxdWlyZVZhbHVlOiB0cnVlLFxuICAgICAgICAgICAgZGVzY3JpcHRpb246XG4gICAgICAgICAgICAgICAgXCLQntGC0LrQu9GO0YfQsNC10YIg0L/QtdGA0LXRhdCy0LDRgiBjbGllbnQuanMuINCSINGN0YLQvtC8INGB0LvRg9GH0LDQtSDQvdC1INCx0YPQtNC10YIg0YDQsNCx0L7RgtCw0YLRjCDQvtGC0L7QsdGA0LDQttC10L3QuNC1INC70L7Qs9C+0LIg0YHQsdC+0YDQutC4INC4INC+0LbQuNC00LDQvdC40Y8g0YHQsdC+0YDQutC4INGE0L7RgNC80YsuXCIsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6IFwicmVmb3JtYXRcIixcbiAgICAgICAgICAgIGFsaWFzOiBcInJcIixcbiAgICAgICAgICAgIGRvZXNOb3RSZXF1aXJlVmFsdWU6IHRydWUsXG4gICAgICAgICAgICBkZWZhdWx0VmFsdWU6IHsgc2tpcEdlbmVyYXRlZENvZGVSZWZvcm1hdHRpbmc6IHRydWUgfSxcbiAgICAgICAgICAgIHBhcnNlOiAoaW5wdXQ6IGJvb2xlYW4pID0+ICh7IHNraXBHZW5lcmF0ZWRDb2RlUmVmb3JtYXR0aW5nOiAhaW5wdXQgfSksXG4gICAgICAgICAgICBkZXNjcmlwdGlvbjpcbiAgICAgICAgICAgICAgICBcItCS0LrQu9GO0YfQsNC10YIg0YTQvtGA0LzQsNGC0LjRgNC+0LLQsNC90LjQtSDQs9C10L3QtdGA0LjRgNGD0LXQvNC+0LPQviDQutC+0LTQsC4g0KDQsNCx0L7RgtCw0LXRgiwg0YLQvtC70YzQutC+INC10YHQu9C4INCy0LXRgNGB0LjRjyDQs9C10L3QtdGA0LDRgtC+0YDQsCDQv9C+0LTQtNC10YDQttC40LLQsNC10YIg0Y3RgtGDINC+0L/RhtC40Y4uINCY0YHQv9C+0LvRjNC30YPQtdGC0YHRjyDQtNC70Y8g0L7RgtC70LDQtNC60Lgg0Lgg0L/RgNC+0YHQvNC+0YLRgNCwINGB0LPQtdC90LXRgNC40YDQvtCy0LDQvdC90YvRhSDRhNC+0YDQvCDQsiDQvtGC0LTQsNC00YfQuNC60LUuIChkZWZhdWx0OiBmYWxzZSlcIixcbiAgICAgICAgfSxcbiAgICAgICAgZGVidWdPbmx5T3B0aW9uRGVmaW5pdGlvbixcbiAgICAgICAgZGV2TW9kZU9wdGlvbixcbiAgICAgICAgbG9nVmVyYm9zaXR5T3B0aW9uXG4gICAgKSxcbiAgICB7XG4gICAgICAgIGRlc2NyaXB0aW9uOiBcIk1hZ2ljXCIsXG4gICAgfVxuKTtcblxuZXhwb3J0IGNvbnN0IGRldkJ1aWxkU2VydmVyQ29tbWFuZERlZmluaXRpb24gPSBjb21tYW5kRGVmaW5pdGlvbjxcImRldi1idWlsZC1zZXJ2ZXJcIiwgRGV2QnVpbGRTZXJ2ZXJPcHRpb25zPihcbiAgICBcImRldi1idWlsZC1zZXJ2ZXJcIixcbiAgICBcImRldi1idWlsZC1zZXJ2ZXJcIixcbiAgICBvcHRpb25zRGVmaW5pdGlvbihcbiAgICAgICAge1xuICAgICAgICAgICAgYWxpYXM6IFwiZ1wiLFxuICAgICAgICAgICAgbmFtZTogXCJnZnZzXCIsXG4gICAgICAgICAgICBkZWZhdWx0VmFsdWU6IHsgZm9ybUdsb2JzOiBbXCIqXCJdIH0sXG4gICAgICAgICAgICBwYXJzZTogKGlucHV0OiBzdHJpbmdbXSkgPT4gKHsgZm9ybUdsb2JzOiBpbnB1dCB9KSxcbiAgICAgICAgICAgIGRlZmF1bHRPcHRpb246IHRydWUsXG4gICAgICAgICAgICBtdWx0aXBsZTogdHJ1ZSxcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBcItCe0LTQvdCwINC40LvQuCDQvdC10YHQutC+0LvRjNC60L4gR0ZWINC40LvQuCBHRlYt0LzQsNGB0L7QuiDQtNC70Y8g0L/QtdGA0LXRgdC+0LHRgNC60LguXCIsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIGFsaWFzOiBcImFcIixcbiAgICAgICAgICAgIG5hbWU6IFwiYWxsLWZhcm0tZGlyXCIsXG4gICAgICAgICAgICBkZWZhdWx0VmFsdWU6IHsgYWxsRmFybXNEaXI6IFtdIH0sXG4gICAgICAgICAgICBwYXJzZTogKGlucHV0OiBzdHJpbmdbXSkgPT4gKHsgYWxsRmFybXNEaXI6IGlucHV0IH0pLFxuICAgICAgICAgICAgZGVmYXVsdE9wdGlvbjogZmFsc2UsXG4gICAgICAgICAgICBtdWx0aXBsZTogdHJ1ZSxcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOlxuICAgICAgICAgICAgICAgIFwi0J/QvtC30LLQvtC70Y/QtdGCINC/0LXRgNC10LTQsNGC0Ywg0LzQsNGB0YHQuNCyINC/0YPRgtC10Lkg0LTQviDQstGB0LXRhSDRhNCw0YDQvNC+0LIgY2FuZHksINGH0YLQvtCx0Ysg0L7RgtC60YDRi9Cy0LDRgtGMINC40Lcg0LLRgdC10YUg0L3QuNGFINGE0L7RgNC80YsuINCf0YPRgtGMINC/0LXRgNC10LTQsNCy0LDRgtGMINC+0YLQvdC+0YHQuNGC0LXQu9GM0L3QviBrZWZvcm1zLmVuZ2luZVwiLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiBcIm5vLWNsaWVudC1vdmVycmlkZVwiLFxuICAgICAgICAgICAgZGVmYXVsdFZhbHVlOiB7IGRpc2FibGVDbGllbnRPdmVycmlkZTogZmFsc2UgfSxcbiAgICAgICAgICAgIHBhcnNlOiBpbnB1dCA9PiAoeyBkaXNhYmxlQ2xpZW50T3ZlcnJpZGU6IGlucHV0IH0pLFxuICAgICAgICAgICAgZG9lc05vdFJlcXVpcmVWYWx1ZTogdHJ1ZSxcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOlxuICAgICAgICAgICAgICAgIFwi0J7RgtC60LvRjtGH0LDQtdGCINC/0LXRgNC10YXQstCw0YIgY2xpZW50LmpzLiDQkiDRjdGC0L7QvCDRgdC70YPRh9Cw0LUg0L3QtSDQsdGD0LTQtdGCINGA0LDQsdC+0YLQsNGC0Ywg0L7RgtC+0LHRgNCw0LbQtdC90LjQtSDQu9C+0LPQvtCyINGB0LHQvtGA0LrQuCDQuCDQvtC20LjQtNCw0L3QuNGPINGB0LHQvtGA0LrQuCDRhNC+0YDQvNGLLlwiLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiBcInJlZm9ybWF0XCIsXG4gICAgICAgICAgICBhbGlhczogXCJyXCIsXG4gICAgICAgICAgICBkb2VzTm90UmVxdWlyZVZhbHVlOiB0cnVlLFxuICAgICAgICAgICAgZGVmYXVsdFZhbHVlOiB7IHNraXBHZW5lcmF0ZWRDb2RlUmVmb3JtYXR0aW5nOiB0cnVlIH0sXG4gICAgICAgICAgICBwYXJzZTogKGlucHV0OiBib29sZWFuKSA9PiAoeyBza2lwR2VuZXJhdGVkQ29kZVJlZm9ybWF0dGluZzogIWlucHV0IH0pLFxuICAgICAgICAgICAgZGVzY3JpcHRpb246XG4gICAgICAgICAgICAgICAgXCLQktC60LvRjtGH0LDQtdGCINGE0L7RgNC80LDRgtC40YDQvtCy0LDQvdC40LUg0LPQtdC90LXRgNC40YDRg9C10LzQvtCz0L4g0LrQvtC00LAuINCg0LDQsdC+0YLQsNC10YIsINGC0L7Qu9GM0LrQviDQtdGB0LvQuCDQstC10YDRgdC40Y8g0LPQtdC90LXRgNCw0YLQvtGA0LAg0L/QvtC00LTQtdGA0LbQuNCy0LDQtdGCINGN0YLRgyDQvtC/0YbQuNGOLiDQmNGB0L/QvtC70YzQt9GD0LXRgtGB0Y8g0LTQu9GPINC+0YLQu9Cw0LTQutC4INC4INC/0YDQvtGB0LzQvtGC0YDQsCDRgdCz0LXQvdC10YDQuNGA0L7QstCw0L3QvdGL0YUg0YTQvtGA0Lwg0LIg0L7RgtC00LDQtNGH0LjQutC1LiAoZGVmYXVsdDogZmFsc2UpXCIsXG4gICAgICAgIH0sXG4gICAgICAgIGRlYnVnT25seU9wdGlvbkRlZmluaXRpb24sXG4gICAgICAgIGRldk1vZGVPcHRpb24sXG4gICAgICAgIGxvZ1ZlcmJvc2l0eU9wdGlvblxuICAgICksXG4gICAge1xuICAgICAgICBkZXNjcmlwdGlvbjogXCJNYWdpY1wiLFxuICAgIH1cbik7XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLElBQUFBLDBCQUFBLEdBQUFDLE9BQUE7QUFDQSxJQUFBQyxxQkFBQSxHQUFBRCxPQUFBO0FBRUEsSUFBQUUsdUJBQUEsR0FBQUYsT0FBQTtBQWdCTyxNQUFNRyw0QkFBNEIsR0FBQUMsT0FBQSxDQUFBRCw0QkFBQSxHQUFHLElBQUFFLDRDQUFpQixFQUN6RCxjQUFjLEVBQ2QsY0FBYyxFQUNkLElBQUFDLDRDQUFpQixFQUNiO0VBQ0lDLEtBQUssRUFBRSxHQUFHO0VBQ1ZDLElBQUksRUFBRSxNQUFNO0VBQ1pDLFlBQVksRUFBRSxDQUFDLENBQUM7RUFDaEJDLEtBQUssRUFBR0MsS0FBZSxLQUFNLENBQUMsQ0FBQyxDQUFDO0VBQ2hDQyxhQUFhLEVBQUUsSUFBSTtFQUNuQkMsUUFBUSxFQUFFLElBQUk7RUFDZEMsV0FBVyxFQUFFO0FBQ2pCLENBQUMsRUFDRDtFQUNJUCxLQUFLLEVBQUUsR0FBRztFQUNWQyxJQUFJLEVBQUUsY0FBYztFQUNwQkMsWUFBWSxFQUFFO0lBQUVNLFdBQVcsRUFBRTtFQUFHLENBQUM7RUFDakNMLEtBQUssRUFBR0MsS0FBZSxLQUFNO0lBQUVJLFdBQVcsRUFBRUo7RUFBTSxDQUFDLENBQUM7RUFDcERDLGFBQWEsRUFBRSxLQUFLO0VBQ3BCQyxRQUFRLEVBQUUsSUFBSTtFQUNkQyxXQUFXLEVBQ1A7QUFDUixDQUFDLEVBQ0Q7RUFDSU4sSUFBSSxFQUFFLFNBQVM7RUFDZkMsWUFBWSxFQUFFO0lBQUVPLE9BQU8sRUFBRTtFQUFNLENBQUM7RUFDaENOLEtBQUssRUFBRUMsS0FBSyxLQUFLO0lBQUVLLE9BQU8sRUFBRUw7RUFBTSxDQUFDLENBQUM7RUFDcENNLG1CQUFtQixFQUFFLElBQUk7RUFDekJILFdBQVcsRUFBRTtBQUNqQixDQUFDLEVBQ0Q7RUFDSU4sSUFBSSxFQUFFLG9CQUFvQjtFQUMxQkMsWUFBWSxFQUFFO0lBQUVTLHFCQUFxQixFQUFFO0VBQU0sQ0FBQztFQUM5Q1IsS0FBSyxFQUFFQyxLQUFLLEtBQUs7SUFBRU8scUJBQXFCLEVBQUVQO0VBQU0sQ0FBQyxDQUFDO0VBQ2xETSxtQkFBbUIsRUFBRSxJQUFJO0VBQ3pCSCxXQUFXLEVBQ1A7QUFDUixDQUFDLEVBQ0Q7RUFDSU4sSUFBSSxFQUFFLFVBQVU7RUFDaEJELEtBQUssRUFBRSxHQUFHO0VBQ1ZVLG1CQUFtQixFQUFFLElBQUk7RUFDekJSLFlBQVksRUFBRTtJQUFFVSw2QkFBNkIsRUFBRTtFQUFLLENBQUM7RUFDckRULEtBQUssRUFBR0MsS0FBYyxLQUFNO0lBQUVRLDZCQUE2QixFQUFFLENBQUNSO0VBQU0sQ0FBQyxDQUFDO0VBQ3RFRyxXQUFXLEVBQ1A7QUFDUixDQUFDLEVBQ0RNLCtDQUF5QixFQUN6QkMscUNBQWEsRUFDYkMsMENBQ0osQ0FBQyxFQUNEO0VBQ0lSLFdBQVcsRUFBRTtBQUNqQixDQUNKLENBQUM7QUFFTSxNQUFNUywrQkFBK0IsR0FBQW5CLE9BQUEsQ0FBQW1CLCtCQUFBLEdBQUcsSUFBQWxCLDRDQUFpQixFQUM1RCxrQkFBa0IsRUFDbEIsa0JBQWtCLEVBQ2xCLElBQUFDLDRDQUFpQixFQUNiO0VBQ0lDLEtBQUssRUFBRSxHQUFHO0VBQ1ZDLElBQUksRUFBRSxNQUFNO0VBQ1pDLFlBQVksRUFBRTtJQUFFZSxTQUFTLEVBQUUsQ0FBQyxHQUFHO0VBQUUsQ0FBQztFQUNsQ2QsS0FBSyxFQUFHQyxLQUFlLEtBQU07SUFBRWEsU0FBUyxFQUFFYjtFQUFNLENBQUMsQ0FBQztFQUNsREMsYUFBYSxFQUFFLElBQUk7RUFDbkJDLFFBQVEsRUFBRSxJQUFJO0VBQ2RDLFdBQVcsRUFBRTtBQUNqQixDQUFDLEVBQ0Q7RUFDSVAsS0FBSyxFQUFFLEdBQUc7RUFDVkMsSUFBSSxFQUFFLGNBQWM7RUFDcEJDLFlBQVksRUFBRTtJQUFFTSxXQUFXLEVBQUU7RUFBRyxDQUFDO0VBQ2pDTCxLQUFLLEVBQUdDLEtBQWUsS0FBTTtJQUFFSSxXQUFXLEVBQUVKO0VBQU0sQ0FBQyxDQUFDO0VBQ3BEQyxhQUFhLEVBQUUsS0FBSztFQUNwQkMsUUFBUSxFQUFFLElBQUk7RUFDZEMsV0FBVyxFQUNQO0FBQ1IsQ0FBQyxFQUNEO0VBQ0lOLElBQUksRUFBRSxvQkFBb0I7RUFDMUJDLFlBQVksRUFBRTtJQUFFUyxxQkFBcUIsRUFBRTtFQUFNLENBQUM7RUFDOUNSLEtBQUssRUFBRUMsS0FBSyxLQUFLO0lBQUVPLHFCQUFxQixFQUFFUDtFQUFNLENBQUMsQ0FBQztFQUNsRE0sbUJBQW1CLEVBQUUsSUFBSTtFQUN6QkgsV0FBVyxFQUNQO0FBQ1IsQ0FBQyxFQUNEO0VBQ0lOLElBQUksRUFBRSxVQUFVO0VBQ2hCRCxLQUFLLEVBQUUsR0FBRztFQUNWVSxtQkFBbUIsRUFBRSxJQUFJO0VBQ3pCUixZQUFZLEVBQUU7SUFBRVUsNkJBQTZCLEVBQUU7RUFBSyxDQUFDO0VBQ3JEVCxLQUFLLEVBQUdDLEtBQWMsS0FBTTtJQUFFUSw2QkFBNkIsRUFBRSxDQUFDUjtFQUFNLENBQUMsQ0FBQztFQUN0RUcsV0FBVyxFQUNQO0FBQ1IsQ0FBQyxFQUNETSwrQ0FBeUIsRUFDekJDLHFDQUFhLEVBQ2JDLDBDQUNKLENBQUMsRUFDRDtFQUNJUixXQUFXLEVBQUU7QUFDakIsQ0FDSixDQUFDIiwiaWdub3JlTGlzdCI6W119
113
+ exports.devBuildServerCommandDefinition = devBuildServerCommandDefinition;
114
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfQ29tbWFuZEJhc2VkT3B0aW9uc1BhcnNlciIsInJlcXVpcmUiLCJfQnVpbGREZWJ1Z09ubHlPcHRpb24iLCJfQ29tbW9uT3B0aW9uRGVmaW50aW9ucyIsImJ1aWxkU2VydmVyQ29tbWFuZERlZmluaXRpb24iLCJjb21tYW5kRGVmaW5pdGlvbiIsIm9wdGlvbnNEZWZpbml0aW9uIiwiYWxpYXMiLCJuYW1lIiwiZGVmYXVsdFZhbHVlIiwicGFyc2UiLCJpbnB1dCIsImRlZmF1bHRPcHRpb24iLCJtdWx0aXBsZSIsImRlc2NyaXB0aW9uIiwiYWxsRmFybXNEaXIiLCJuaWdodGx5IiwiZG9lc05vdFJlcXVpcmVWYWx1ZSIsImRpc2FibGVDbGllbnRPdmVycmlkZSIsInNraXBHZW5lcmF0ZWRDb2RlUmVmb3JtYXR0aW5nIiwiZGVidWdPbmx5T3B0aW9uRGVmaW5pdGlvbiIsImRldk1vZGVPcHRpb24iLCJsb2dWZXJib3NpdHlPcHRpb24iLCJleHBvcnRzIiwiZGV2QnVpbGRTZXJ2ZXJDb21tYW5kRGVmaW5pdGlvbiIsImZvcm1HbG9icyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9DTElDb21tYW5kcy9CdWlsZFNlcnZlci9CdWlsZFNlcnZlclNlcnZlck9wdGlvbnMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29tbWFuZERlZmluaXRpb24sIG9wdGlvbnNEZWZpbml0aW9uIH0gZnJvbSBcIi4uLy4uL0NvbW1vbnMvT3B0aW9ucy9Db21tYW5kQmFzZWRPcHRpb25zUGFyc2VyXCI7XG5pbXBvcnQgeyBCdWlsZERlYnVnT25seU9wdGlvbiwgZGVidWdPbmx5T3B0aW9uRGVmaW5pdGlvbiB9IGZyb20gXCIuLi9Db21tb25PcHRpb25zL0J1aWxkRGVidWdPbmx5T3B0aW9uXCI7XG5pbXBvcnQgeyBDb21tb25PcHRpb25zIH0gZnJvbSBcIi4uL0NvbW1vbk9wdGlvbnMvQ29tbW9uT3B0aW9uc1wiO1xuaW1wb3J0IHsgZGV2TW9kZU9wdGlvbiwgbG9nVmVyYm9zaXR5T3B0aW9uIH0gZnJvbSBcIi4uL0NvbW1vbk9wdGlvbnMvQ29tbW9uT3B0aW9uRGVmaW50aW9uc1wiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEJ1aWxkU2VydmVyT3B0aW9ucyBleHRlbmRzIENvbW1vbk9wdGlvbnMsIEJ1aWxkRGVidWdPbmx5T3B0aW9uIHtcbiAgICBkaXNhYmxlQ2xpZW50T3ZlcnJpZGU6IGJvb2xlYW47XG4gICAgc2tpcEdlbmVyYXRlZENvZGVSZWZvcm1hdHRpbmc6IGJvb2xlYW47XG4gICAgbmlnaHRseTogYm9vbGVhbjtcbiAgICBhbGxGYXJtc0Rpcjogc3RyaW5nW10gfCBbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEZXZCdWlsZFNlcnZlck9wdGlvbnMgZXh0ZW5kcyBDb21tb25PcHRpb25zLCBCdWlsZERlYnVnT25seU9wdGlvbiB7XG4gICAgZm9ybUdsb2JzOiBzdHJpbmdbXTtcbiAgICBkaXNhYmxlQ2xpZW50T3ZlcnJpZGU6IGJvb2xlYW47XG4gICAgc2tpcEdlbmVyYXRlZENvZGVSZWZvcm1hdHRpbmc6IGJvb2xlYW47XG4gICAgYWxsRmFybXNEaXI6IHN0cmluZ1tdIHwgW107XG59XG5cbmV4cG9ydCBjb25zdCBidWlsZFNlcnZlckNvbW1hbmREZWZpbml0aW9uID0gY29tbWFuZERlZmluaXRpb248XCJidWlsZC1zZXJ2ZXJcIiwgQnVpbGRTZXJ2ZXJPcHRpb25zPihcbiAgICBcImJ1aWxkLXNlcnZlclwiLFxuICAgIFwiYnVpbGQtc2VydmVyXCIsXG4gICAgb3B0aW9uc0RlZmluaXRpb24oXG4gICAgICAgIHtcbiAgICAgICAgICAgIGFsaWFzOiBcImdcIixcbiAgICAgICAgICAgIG5hbWU6IFwiZ2Z2c1wiLFxuICAgICAgICAgICAgZGVmYXVsdFZhbHVlOiB7fSxcbiAgICAgICAgICAgIHBhcnNlOiAoaW5wdXQ6IHN0cmluZ1tdKSA9PiAoe30pLFxuICAgICAgICAgICAgZGVmYXVsdE9wdGlvbjogdHJ1ZSxcbiAgICAgICAgICAgIG11bHRpcGxlOiB0cnVlLFxuICAgICAgICAgICAgZGVzY3JpcHRpb246IFwi0J7Qv9GG0LjRjyDRg9GB0YLQsNGA0LXQu9CwLiDQntGB0YLQsNCy0LvQtdC90LAg0LTQu9GPINC+0LHRgNCw0YLQvdC+0Lkg0YHQvtCy0LzQtdGB0YLQuNC80L7RgdGC0LguXCIsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIGFsaWFzOiBcImFcIixcbiAgICAgICAgICAgIG5hbWU6IFwiYWxsLWZhcm0tZGlyXCIsXG4gICAgICAgICAgICBkZWZhdWx0VmFsdWU6IHsgYWxsRmFybXNEaXI6IFtdIH0sXG4gICAgICAgICAgICBwYXJzZTogKGlucHV0OiBzdHJpbmdbXSkgPT4gKHsgYWxsRmFybXNEaXI6IGlucHV0IH0pLFxuICAgICAgICAgICAgZGVmYXVsdE9wdGlvbjogZmFsc2UsXG4gICAgICAgICAgICBtdWx0aXBsZTogdHJ1ZSxcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOlxuICAgICAgICAgICAgICAgIFwi0J/QvtC30LLQvtC70Y/QtdGCINC/0LXRgNC10LTQsNGC0Ywg0LzQsNGB0YHQuNCyINC/0YPRgtC10Lkg0LTQviDQstGB0LXRhSDRhNCw0YDQvNC+0LIgY2FuZHksINGH0YLQvtCx0Ysg0L7RgtC60YDRi9Cy0LDRgtGMINC40Lcg0LLRgdC10YUg0L3QuNGFINGE0L7RgNC80YsuINCf0YPRgtGMINC/0LXRgNC10LTQsNCy0LDRgtGMINC+0YLQvdC+0YHQuNGC0LXQu9GM0L3QviBrZWZvcm1zLmVuZ2luZVwiLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiBcIm5pZ2h0bHlcIixcbiAgICAgICAgICAgIGRlZmF1bHRWYWx1ZTogeyBuaWdodGx5OiBmYWxzZSB9LFxuICAgICAgICAgICAgcGFyc2U6IGlucHV0ID0+ICh7IG5pZ2h0bHk6IGlucHV0IH0pLFxuICAgICAgICAgICAgZG9lc05vdFJlcXVpcmVWYWx1ZTogdHJ1ZSxcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBcItCS0LrQu9GO0YfQsNC10YIg0YHQsdC+0YDQutGDINGE0L7RgNC8INC90LAg0LTQstC40LbQutC1IG5pZ2h0bHkuXCIsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6IFwibm8tY2xpZW50LW92ZXJyaWRlXCIsXG4gICAgICAgICAgICBkZWZhdWx0VmFsdWU6IHsgZGlzYWJsZUNsaWVudE92ZXJyaWRlOiBmYWxzZSB9LFxuICAgICAgICAgICAgcGFyc2U6IGlucHV0ID0+ICh7IGRpc2FibGVDbGllbnRPdmVycmlkZTogaW5wdXQgfSksXG4gICAgICAgICAgICBkb2VzTm90UmVxdWlyZVZhbHVlOiB0cnVlLFxuICAgICAgICAgICAgZGVzY3JpcHRpb246XG4gICAgICAgICAgICAgICAgXCLQntGC0LrQu9GO0YfQsNC10YIg0L/QtdGA0LXRhdCy0LDRgiBjbGllbnQuanMuINCSINGN0YLQvtC8INGB0LvRg9GH0LDQtSDQvdC1INCx0YPQtNC10YIg0YDQsNCx0L7RgtCw0YLRjCDQvtGC0L7QsdGA0LDQttC10L3QuNC1INC70L7Qs9C+0LIg0YHQsdC+0YDQutC4INC4INC+0LbQuNC00LDQvdC40Y8g0YHQsdC+0YDQutC4INGE0L7RgNC80YsuXCIsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6IFwicmVmb3JtYXRcIixcbiAgICAgICAgICAgIGFsaWFzOiBcInJcIixcbiAgICAgICAgICAgIGRvZXNOb3RSZXF1aXJlVmFsdWU6IHRydWUsXG4gICAgICAgICAgICBkZWZhdWx0VmFsdWU6IHsgc2tpcEdlbmVyYXRlZENvZGVSZWZvcm1hdHRpbmc6IHRydWUgfSxcbiAgICAgICAgICAgIHBhcnNlOiAoaW5wdXQ6IGJvb2xlYW4pID0+ICh7IHNraXBHZW5lcmF0ZWRDb2RlUmVmb3JtYXR0aW5nOiAhaW5wdXQgfSksXG4gICAgICAgICAgICBkZXNjcmlwdGlvbjpcbiAgICAgICAgICAgICAgICBcItCS0LrQu9GO0YfQsNC10YIg0YTQvtGA0LzQsNGC0LjRgNC+0LLQsNC90LjQtSDQs9C10L3QtdGA0LjRgNGD0LXQvNC+0LPQviDQutC+0LTQsC4g0KDQsNCx0L7RgtCw0LXRgiwg0YLQvtC70YzQutC+INC10YHQu9C4INCy0LXRgNGB0LjRjyDQs9C10L3QtdGA0LDRgtC+0YDQsCDQv9C+0LTQtNC10YDQttC40LLQsNC10YIg0Y3RgtGDINC+0L/RhtC40Y4uINCY0YHQv9C+0LvRjNC30YPQtdGC0YHRjyDQtNC70Y8g0L7RgtC70LDQtNC60Lgg0Lgg0L/RgNC+0YHQvNC+0YLRgNCwINGB0LPQtdC90LXRgNC40YDQvtCy0LDQvdC90YvRhSDRhNC+0YDQvCDQsiDQvtGC0LTQsNC00YfQuNC60LUuIChkZWZhdWx0OiBmYWxzZSlcIixcbiAgICAgICAgfSxcbiAgICAgICAgZGVidWdPbmx5T3B0aW9uRGVmaW5pdGlvbixcbiAgICAgICAgZGV2TW9kZU9wdGlvbixcbiAgICAgICAgbG9nVmVyYm9zaXR5T3B0aW9uXG4gICAgKSxcbiAgICB7XG4gICAgICAgIGRlc2NyaXB0aW9uOiBcIk1hZ2ljXCIsXG4gICAgfVxuKTtcblxuZXhwb3J0IGNvbnN0IGRldkJ1aWxkU2VydmVyQ29tbWFuZERlZmluaXRpb24gPSBjb21tYW5kRGVmaW5pdGlvbjxcImRldi1idWlsZC1zZXJ2ZXJcIiwgRGV2QnVpbGRTZXJ2ZXJPcHRpb25zPihcbiAgICBcImRldi1idWlsZC1zZXJ2ZXJcIixcbiAgICBcImRldi1idWlsZC1zZXJ2ZXJcIixcbiAgICBvcHRpb25zRGVmaW5pdGlvbihcbiAgICAgICAge1xuICAgICAgICAgICAgYWxpYXM6IFwiZ1wiLFxuICAgICAgICAgICAgbmFtZTogXCJnZnZzXCIsXG4gICAgICAgICAgICBkZWZhdWx0VmFsdWU6IHsgZm9ybUdsb2JzOiBbXCIqXCJdIH0sXG4gICAgICAgICAgICBwYXJzZTogKGlucHV0OiBzdHJpbmdbXSkgPT4gKHsgZm9ybUdsb2JzOiBpbnB1dCB9KSxcbiAgICAgICAgICAgIGRlZmF1bHRPcHRpb246IHRydWUsXG4gICAgICAgICAgICBtdWx0aXBsZTogdHJ1ZSxcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBcItCe0LTQvdCwINC40LvQuCDQvdC10YHQutC+0LvRjNC60L4gR0ZWINC40LvQuCBHRlYt0LzQsNGB0L7QuiDQtNC70Y8g0L/QtdGA0LXRgdC+0LHRgNC60LguXCIsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIGFsaWFzOiBcImFcIixcbiAgICAgICAgICAgIG5hbWU6IFwiYWxsLWZhcm0tZGlyXCIsXG4gICAgICAgICAgICBkZWZhdWx0VmFsdWU6IHsgYWxsRmFybXNEaXI6IFtdIH0sXG4gICAgICAgICAgICBwYXJzZTogKGlucHV0OiBzdHJpbmdbXSkgPT4gKHsgYWxsRmFybXNEaXI6IGlucHV0IH0pLFxuICAgICAgICAgICAgZGVmYXVsdE9wdGlvbjogZmFsc2UsXG4gICAgICAgICAgICBtdWx0aXBsZTogdHJ1ZSxcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOlxuICAgICAgICAgICAgICAgIFwi0J/QvtC30LLQvtC70Y/QtdGCINC/0LXRgNC10LTQsNGC0Ywg0LzQsNGB0YHQuNCyINC/0YPRgtC10Lkg0LTQviDQstGB0LXRhSDRhNCw0YDQvNC+0LIgY2FuZHksINGH0YLQvtCx0Ysg0L7RgtC60YDRi9Cy0LDRgtGMINC40Lcg0LLRgdC10YUg0L3QuNGFINGE0L7RgNC80YsuINCf0YPRgtGMINC/0LXRgNC10LTQsNCy0LDRgtGMINC+0YLQvdC+0YHQuNGC0LXQu9GM0L3QviBrZWZvcm1zLmVuZ2luZVwiLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiBcIm5vLWNsaWVudC1vdmVycmlkZVwiLFxuICAgICAgICAgICAgZGVmYXVsdFZhbHVlOiB7IGRpc2FibGVDbGllbnRPdmVycmlkZTogZmFsc2UgfSxcbiAgICAgICAgICAgIHBhcnNlOiBpbnB1dCA9PiAoeyBkaXNhYmxlQ2xpZW50T3ZlcnJpZGU6IGlucHV0IH0pLFxuICAgICAgICAgICAgZG9lc05vdFJlcXVpcmVWYWx1ZTogdHJ1ZSxcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOlxuICAgICAgICAgICAgICAgIFwi0J7RgtC60LvRjtGH0LDQtdGCINC/0LXRgNC10YXQstCw0YIgY2xpZW50LmpzLiDQkiDRjdGC0L7QvCDRgdC70YPRh9Cw0LUg0L3QtSDQsdGD0LTQtdGCINGA0LDQsdC+0YLQsNGC0Ywg0L7RgtC+0LHRgNCw0LbQtdC90LjQtSDQu9C+0LPQvtCyINGB0LHQvtGA0LrQuCDQuCDQvtC20LjQtNCw0L3QuNGPINGB0LHQvtGA0LrQuCDRhNC+0YDQvNGLLlwiLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiBcInJlZm9ybWF0XCIsXG4gICAgICAgICAgICBhbGlhczogXCJyXCIsXG4gICAgICAgICAgICBkb2VzTm90UmVxdWlyZVZhbHVlOiB0cnVlLFxuICAgICAgICAgICAgZGVmYXVsdFZhbHVlOiB7IHNraXBHZW5lcmF0ZWRDb2RlUmVmb3JtYXR0aW5nOiB0cnVlIH0sXG4gICAgICAgICAgICBwYXJzZTogKGlucHV0OiBib29sZWFuKSA9PiAoeyBza2lwR2VuZXJhdGVkQ29kZVJlZm9ybWF0dGluZzogIWlucHV0IH0pLFxuICAgICAgICAgICAgZGVzY3JpcHRpb246XG4gICAgICAgICAgICAgICAgXCLQktC60LvRjtGH0LDQtdGCINGE0L7RgNC80LDRgtC40YDQvtCy0LDQvdC40LUg0LPQtdC90LXRgNC40YDRg9C10LzQvtCz0L4g0LrQvtC00LAuINCg0LDQsdC+0YLQsNC10YIsINGC0L7Qu9GM0LrQviDQtdGB0LvQuCDQstC10YDRgdC40Y8g0LPQtdC90LXRgNCw0YLQvtGA0LAg0L/QvtC00LTQtdGA0LbQuNCy0LDQtdGCINGN0YLRgyDQvtC/0YbQuNGOLiDQmNGB0L/QvtC70YzQt9GD0LXRgtGB0Y8g0LTQu9GPINC+0YLQu9Cw0LTQutC4INC4INC/0YDQvtGB0LzQvtGC0YDQsCDRgdCz0LXQvdC10YDQuNGA0L7QstCw0L3QvdGL0YUg0YTQvtGA0Lwg0LIg0L7RgtC00LDQtNGH0LjQutC1LiAoZGVmYXVsdDogZmFsc2UpXCIsXG4gICAgICAgIH0sXG4gICAgICAgIGRlYnVnT25seU9wdGlvbkRlZmluaXRpb24sXG4gICAgICAgIGRldk1vZGVPcHRpb24sXG4gICAgICAgIGxvZ1ZlcmJvc2l0eU9wdGlvblxuICAgICksXG4gICAge1xuICAgICAgICBkZXNjcmlwdGlvbjogXCJNYWdpY1wiLFxuICAgIH1cbik7XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLElBQUFBLDBCQUFBLEdBQUFDLE9BQUE7QUFDQSxJQUFBQyxxQkFBQSxHQUFBRCxPQUFBO0FBRUEsSUFBQUUsdUJBQUEsR0FBQUYsT0FBQTtBQWdCTyxNQUFNRyw0QkFBNEIsR0FBRyxJQUFBQyw0Q0FBaUIsRUFDekQsY0FBYyxFQUNkLGNBQWMsRUFDZCxJQUFBQyw0Q0FBaUIsRUFDYjtFQUNJQyxLQUFLLEVBQUUsR0FBRztFQUNWQyxJQUFJLEVBQUUsTUFBTTtFQUNaQyxZQUFZLEVBQUUsQ0FBQyxDQUFDO0VBQ2hCQyxLQUFLLEVBQUdDLEtBQWUsS0FBTSxDQUFDLENBQUMsQ0FBQztFQUNoQ0MsYUFBYSxFQUFFLElBQUk7RUFDbkJDLFFBQVEsRUFBRSxJQUFJO0VBQ2RDLFdBQVcsRUFBRTtBQUNqQixDQUFDLEVBQ0Q7RUFDSVAsS0FBSyxFQUFFLEdBQUc7RUFDVkMsSUFBSSxFQUFFLGNBQWM7RUFDcEJDLFlBQVksRUFBRTtJQUFFTSxXQUFXLEVBQUU7RUFBRyxDQUFDO0VBQ2pDTCxLQUFLLEVBQUdDLEtBQWUsS0FBTTtJQUFFSSxXQUFXLEVBQUVKO0VBQU0sQ0FBQyxDQUFDO0VBQ3BEQyxhQUFhLEVBQUUsS0FBSztFQUNwQkMsUUFBUSxFQUFFLElBQUk7RUFDZEMsV0FBVyxFQUNQO0FBQ1IsQ0FBQyxFQUNEO0VBQ0lOLElBQUksRUFBRSxTQUFTO0VBQ2ZDLFlBQVksRUFBRTtJQUFFTyxPQUFPLEVBQUU7RUFBTSxDQUFDO0VBQ2hDTixLQUFLLEVBQUVDLEtBQUssS0FBSztJQUFFSyxPQUFPLEVBQUVMO0VB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
@@ -18,9 +18,9 @@ var _StreamResultHandler = require("../../../Commons/HttpServer/AttributeRouting
18
18
  var _SingletonController = require("../../../Commons/HttpServer/ExpressWrapper/SingletonController");
19
19
  var _FarmDirectory = require("./Directories/FarmDirectory");
20
20
  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _dec12, _dec13, _dec14, _dec15, _dec16, _dec17, _dec18, _dec19, _dec20, _dec21, _dec22, _class;
21
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
22
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
23
- let BuildServerBackendResourcesController = exports.BuildServerBackendResourcesController = (_dec = (0, _Methods.httpGet)("/gfvs", _Results.httpReturn.Json), _dec2 = (0, _Methods.httpGet)("/picklists", _Results.httpReturn.PlainText), _dec3 = (0, _Methods.httpGet)("/picklists/:picklistFilename", _Results.httpReturn.StreamWithMime("application/json"), (0, _Params.httpUrlParam)("picklistFilename", _Params.httpType.String)), _dec4 = (0, _Methods.httpGet)("/converters", _Results.httpReturn.PlainText), _dec5 = (0, _Methods.httpGet)("/converters/:filename", _Results.httpReturn.Stream, (0, _Params.httpUrlParam)("filename", _Params.httpType.String)), _dec6 = (0, _Methods.httpGet)("/mergers", _Results.httpReturn.PlainText), _dec7 = (0, _Methods.httpGet)("/mergers/:filename", _Results.httpReturn.Stream, (0, _Params.httpUrlParam)("filename", _Params.httpType.String)), _dec8 = (0, _Methods.httpGet)("/schemas", _Results.httpReturn.PlainText), _dec9 = (0, _Methods.httpGet)("/schemas/:filename", _Results.httpReturn.Stream, (0, _Params.httpUrlParam)("filename", _Params.httpType.String)), _dec10 = (0, _Methods.httpGet)("/presentations", _Results.httpReturn.PlainText), _dec11 = (0, _Methods.httpGet)("/presentations/:gfv.presentations.json", _Results.httpReturn.Stream, (0, _Params.httpUrlParam)("gfv", _Params.httpType.String)), _dec12 = (0, _Methods.httpGet)("/normalize", _Results.httpReturn.PlainText), _dec13 = (0, _Methods.httpGet)("/normalize/:gfv.xml", _Results.httpReturn.Stream, (0, _Params.httpUrlParam)("gfv", _Params.httpType.String)), _dec14 = (0, _Methods.httpGet)("/normalize/:gfv.normalize", _Results.httpReturn.Stream, (0, _Params.httpUrlParam)("gfv", _Params.httpType.String)), _dec15 = (0, _Methods.httpGet)("/attachmentpaths", _Results.httpReturn.PlainText), _dec16 = (0, _Methods.httpGet)("/attachmentpaths/:gfv.json", _Results.httpReturn.Stream, (0, _Params.httpUrlParam)("gfv", _Params.httpType.String)), _dec17 = (0, _Methods.httpGet)("/unmap", _Results.httpReturn.PlainText), _dec18 = (0, _Methods.httpGet)("/unmap/:filename", _Results.httpReturn.Stream, (0, _Params.httpUrlParam)("filename", _Params.httpType.String)), _dec19 = (0, _Methods.httpGet)("/map", _Results.httpReturn.PlainText), _dec20 = (0, _Methods.httpGet)("/map/:filename", _Results.httpReturn.Stream, (0, _Params.httpUrlParam)("filename", _Params.httpType.String)), _dec21 = (0, _Methods.httpGet)("/patch", _Results.httpReturn.PlainText), _dec22 = (0, _Methods.httpGet)("/patch/:filename", _Results.httpReturn.Stream, (0, _Params.httpUrlParam)("gfv", _Params.httpType.String)), (_class = class BuildServerBackendResourcesController extends _SingletonController.SingletonController {
21
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
22
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
23
+ let BuildServerBackendResourcesController = (_dec = (0, _Methods.httpGet)("/gfvs", _Results.httpReturn.Json), _dec2 = (0, _Methods.httpGet)("/picklists", _Results.httpReturn.PlainText), _dec3 = (0, _Methods.httpGet)("/picklists/:picklistFilename", _Results.httpReturn.StreamWithMime("application/json"), (0, _Params.httpUrlParam)("picklistFilename", _Params.httpType.String)), _dec4 = (0, _Methods.httpGet)("/converters", _Results.httpReturn.PlainText), _dec5 = (0, _Methods.httpGet)("/converters/:filename", _Results.httpReturn.Stream, (0, _Params.httpUrlParam)("filename", _Params.httpType.String)), _dec6 = (0, _Methods.httpGet)("/mergers", _Results.httpReturn.PlainText), _dec7 = (0, _Methods.httpGet)("/mergers/:filename", _Results.httpReturn.Stream, (0, _Params.httpUrlParam)("filename", _Params.httpType.String)), _dec8 = (0, _Methods.httpGet)("/schemas", _Results.httpReturn.PlainText), _dec9 = (0, _Methods.httpGet)("/schemas/:filename", _Results.httpReturn.Stream, (0, _Params.httpUrlParam)("filename", _Params.httpType.String)), _dec10 = (0, _Methods.httpGet)("/presentations", _Results.httpReturn.PlainText), _dec11 = (0, _Methods.httpGet)("/presentations/:gfv.presentations.json", _Results.httpReturn.Stream, (0, _Params.httpUrlParam)("gfv", _Params.httpType.String)), _dec12 = (0, _Methods.httpGet)("/normalize", _Results.httpReturn.PlainText), _dec13 = (0, _Methods.httpGet)("/normalize/:gfv.xml", _Results.httpReturn.Stream, (0, _Params.httpUrlParam)("gfv", _Params.httpType.String)), _dec14 = (0, _Methods.httpGet)("/normalize/:gfv.normalize", _Results.httpReturn.Stream, (0, _Params.httpUrlParam)("gfv", _Params.httpType.String)), _dec15 = (0, _Methods.httpGet)("/attachmentpaths", _Results.httpReturn.PlainText), _dec16 = (0, _Methods.httpGet)("/attachmentpaths/:gfv.json", _Results.httpReturn.Stream, (0, _Params.httpUrlParam)("gfv", _Params.httpType.String)), _dec17 = (0, _Methods.httpGet)("/unmap", _Results.httpReturn.PlainText), _dec18 = (0, _Methods.httpGet)("/unmap/:filename", _Results.httpReturn.Stream, (0, _Params.httpUrlParam)("filename", _Params.httpType.String)), _dec19 = (0, _Methods.httpGet)("/map", _Results.httpReturn.PlainText), _dec20 = (0, _Methods.httpGet)("/map/:filename", _Results.httpReturn.Stream, (0, _Params.httpUrlParam)("filename", _Params.httpType.String)), _dec21 = (0, _Methods.httpGet)("/patch", _Results.httpReturn.PlainText), _dec22 = (0, _Methods.httpGet)("/patch/:filename", _Results.httpReturn.Stream, (0, _Params.httpUrlParam)("gfv", _Params.httpType.String)), (_class = class BuildServerBackendResourcesController extends _SingletonController.SingletonController {
24
24
  constructor(allFarmConfig, flangNormalizationSourcesProvider) {
25
25
  super();
26
26
  this.generatedServerSideSourcesProvider = void 0;
@@ -163,4 +163,5 @@ let BuildServerBackendResourcesController = exports.BuildServerBackendResourcesC
163
163
  throw new _NotFoundWebError.NotFoundWebError("File not found", false);
164
164
  }
165
165
  }, ((0, _applyDecoratedDescriptor2.default)(_class.prototype, "getAllGfvs", [_dec], Object.getOwnPropertyDescriptor(_class.prototype, "getAllGfvs"), _class.prototype), (0, _applyDecoratedDescriptor2.default)(_class.prototype, "getAllPicklists", [_dec2], Object.getOwnPropertyDescriptor(_class.prototype, "getAllPicklists"), _class.prototype), (0, _applyDecoratedDescriptor2.default)(_class.prototype, "getPicklists", [_dec3], Object.getOwnPropertyDescriptor(_class.prototype, "getPicklists"), _class.prototype), (0, _applyDecoratedDescriptor2.default)(_class.prototype, "getAllConvertersFiles", [_dec4], Object.getOwnPropertyDescriptor(_class.prototype, "getAllConvertersFiles"), _class.prototype), (0, _applyDecoratedDescriptor2.default)(_class.prototype, "getConverterFile", [_dec5], Object.getOwnPropertyDescriptor(_class.prototype, "getConverterFile"), _class.prototype), (0, _applyDecoratedDescriptor2.default)(_class.prototype, "getAllMergersFiles", [_dec6], Object.getOwnPropertyDescriptor(_class.prototype, "getAllMergersFiles"), _class.prototype), (0, _applyDecoratedDescriptor2.default)(_class.prototype, "getMergerFile", [_dec7], Object.getOwnPropertyDescriptor(_class.prototype, "getMergerFile"), _class.prototype), (0, _applyDecoratedDescriptor2.default)(_class.prototype, "getAllSchemasFiles", [_dec8], Object.getOwnPropertyDescriptor(_class.prototype, "getAllSchemasFiles"), _class.prototype), (0, _applyDecoratedDescriptor2.default)(_class.prototype, "getFormSchemas", [_dec9], Object.getOwnPropertyDescriptor(_class.prototype, "getFormSchemas"), _class.prototype), (0, _applyDecoratedDescriptor2.default)(_class.prototype, "getAllFormPresentations", [_dec10], Object.getOwnPropertyDescriptor(_class.prototype, "getAllFormPresentations"), _class.prototype), (0, _applyDecoratedDescriptor2.default)(_class.prototype, "getFormPresentations", [_dec11], Object.getOwnPropertyDescriptor(_class.prototype, "getFormPresentations"), _class.prototype), (0, _applyDecoratedDescriptor2.default)(_class.prototype, "getAllNormalizeFiles", [_dec12], Object.getOwnPropertyDescriptor(_class.prototype, "getAllNormalizeFiles"), _class.prototype), (0, _applyDecoratedDescriptor2.default)(_class.prototype, "getNormalizeFile", [_dec13], Object.getOwnPropertyDescriptor(_class.prototype, "getNormalizeFile"), _class.prototype), (0, _applyDecoratedDescriptor2.default)(_class.prototype, "getFLangNormalizeFile", [_dec14], Object.getOwnPropertyDescriptor(_class.prototype, "getFLangNormalizeFile"), _class.prototype), (0, _applyDecoratedDescriptor2.default)(_class.prototype, "getAllAttachmentPathsFileNames", [_dec15], Object.getOwnPropertyDescriptor(_class.prototype, "getAllAttachmentPathsFileNames"), _class.prototype), (0, _applyDecoratedDescriptor2.default)(_class.prototype, "getAttachmentPathFile", [_dec16], Object.getOwnPropertyDescriptor(_class.prototype, "getAttachmentPathFile"), _class.prototype), (0, _applyDecoratedDescriptor2.default)(_class.prototype, "getAllUnmapFiles", [_dec17], Object.getOwnPropertyDescriptor(_class.prototype, "getAllUnmapFiles"), _class.prototype), (0, _applyDecoratedDescriptor2.default)(_class.prototype, "getUnmapFile", [_dec18], Object.getOwnPropertyDescriptor(_class.prototype, "getUnmapFile"), _class.prototype), (0, _applyDecoratedDescriptor2.default)(_class.prototype, "getAllMapFiles", [_dec19], Object.getOwnPropertyDescriptor(_class.prototype, "getAllMapFiles"), _class.prototype), (0, _applyDecoratedDescriptor2.default)(_class.prototype, "getMapFile", [_dec20], Object.getOwnPropertyDescriptor(_class.prototype, "getMapFile"), _class.prototype), (0, _applyDecoratedDescriptor2.default)(_class.prototype, "getAllPatchFiles", [_dec21], Object.getOwnPropertyDescriptor(_class.prototype, "getAllPatchFiles"), _class.prototype), (0, _applyDecoratedDescriptor2.default)(_class.prototype, "getPatchFile", [_dec22], Object.getOwnPropertyDescriptor(_class.prototype, "getPatchFile"), _class.prototype)), _class));
166
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZnMiLCJyZXF1aXJlIiwicGF0aCIsIl9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkIiwiX2ZzRXh0cmEiLCJfbG9kYXNoIiwiX01ldGhvZHMiLCJfTm90Rm91bmRXZWJFcnJvciIsIl9QYXJhbXMiLCJfUmVzdWx0cyIsIl9TdHJlYW1SZXN1bHRIYW5kbGVyIiwiX1NpbmdsZXRvbkNvbnRyb2xsZXIiLCJfRmFybURpcmVjdG9yeSIsIl9kZWMiLCJfZGVjMiIsIl9kZWMzIiwiX2RlYzQiLCJfZGVjNSIsIl9kZWM2IiwiX2RlYzciLCJfZGVjOCIsIl9kZWM5IiwiX2RlYzEwIiwiX2RlYzExIiwiX2RlYzEyIiwiX2RlYzEzIiwiX2RlYzE0IiwiX2RlYzE1IiwiX2RlYzE2IiwiX2RlYzE3IiwiX2RlYzE4IiwiX2RlYzE5IiwiX2RlYzIwIiwiX2RlYzIxIiwiX2RlYzIyIiwiX2NsYXNzIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0IiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0IiwiQnVpbGRTZXJ2ZXJCYWNrZW5kUmVzb3VyY2VzQ29udHJvbGxlciIsImV4cG9ydHMiLCJodHRwR2V0IiwiaHR0cFJldHVybiIsIkpzb24iLCJQbGFpblRleHQiLCJTdHJlYW1XaXRoTWltZSIsImh0dHBVcmxQYXJhbSIsImh0dHBUeXBlIiwiU3RyaW5nIiwiU3RyZWFtIiwiU2luZ2xldG9uQ29udHJvbGxlciIsImNvbnN0cnVjdG9yIiwiYWxsRmFybUNvbmZpZyIsImZsYW5nTm9ybWFsaXphdGlvblNvdXJjZXNQcm92aWRlciIsImdlbmVyYXRlZFNlcnZlclNpZGVTb3VyY2VzUHJvdmlkZXIiLCJhbGxTY2hlbWFzRmlsZXMiLCJyZXNldEFsbFNjaGVtYUZpbGVzRGVib3VuY2VkIiwiYWxsRmFybURpcmVjdG9yaWVzIiwibWFwIiwiRmFybURpcmVjdG9yeSIsImZhcm1EaXJlY3RvcnkiLCJkZWJvdW5jZSIsInVuZGVmaW5lZCIsImdldEFsbEdmdnMiLCJQcm9taXNlIiwiYWxsIiwieCIsImZsYXQiLCJnZXRBbGxQaWNrbGlzdHMiLCJqb2luIiwiZ2V0UGlja2xpc3RzIiwicGlja2xpc3RGaWxlbmFtZSIsImFsbEZpbGVQYXRoIiwicGF0aEZpbGUiLCJwYXRoRXhpc3RzIiwiY3JlYXRlUmVhZFN0cmVhbSIsIkVycm9yIiwiZ2V0QWxsQ29udmVydGVyc0ZpbGVzIiwiZmxhdE1hcCIsImdldEFsbENvbnZlcnRlckZpbGVQYXRocyIsImJhc2VuYW1lIiwiZ2V0Q29udmVydGVyRmlsZSIsImZpbGVuYW1lIiwiZmlsZVBhdGgiLCJnZXRDb252ZXJ0ZXJGaWxlUGF0aEJ5RmlsZU5hbWVPclVuZGVmaW5lZCIsIkZpbGVTdHJlYW1SZXN1bHQiLCJOb3RGb3VuZFdlYkVycm9yIiwiZ2V0QWxsTWVyZ2Vyc0ZpbGVzIiwiZ2V0QWxsTWVyZ2Vyc0ZpbGVQYXRocyIsImdldE1lcmdlckZpbGUiLCJnZXRNZXJnZXJzRmlsZVBhdGhCeUZpbGVOYW1lT3JVbmRlZmluZWQiLCJnZXRBbGxTY2hlbWFzRmlsZXMiLCJnZXRBbGxTY2hlbWFzRmlsZVBhdGhzIiwiZ2V0Rm9ybVNjaGVtYXMiLCJnZXRTY2hlbWFGaWxlUGF0aEJ5RmlsZU5hbWVPclVuZGVmaW5lZCIsImdldEFsbEZvcm1QcmVzZW50YXRpb25zIiwiZ2V0QWxsUHJlc2VudGF0aW9uc0ZpbGVOYW1lcyIsImdldEZvcm1QcmVzZW50YXRpb25zIiwiZ2Z2IiwiZ2V0UHJlc2VudGF0aW9uc0ZpbGVQYXRoQnlHZnZPclVuZGVmaW5lZCIsImdldEFsbE5vcm1hbGl6ZUZpbGVzIiwiZmlsZXMiLCJnZXRBbGxOb3JtYWxpemVGaWxlUGF0aHMiLCJmbGFuZ0ZpbGVzIiwiZ2V0QWxsTm9ybWFsaXphdGlvbkZpbGVOYW1lcyIsImdldE5vcm1hbGl6ZUZpbGUiLCJnZXROb3JtYWxpemVGaWxlUGF0aEJ5RmlsZU5hbWVPclVuZGVmaW5lZCIsImdldEZMYW5nTm9ybWFsaXplRmlsZSIsIlN0cmVhbVJlc3VsdCIsImdldE5vcm1hbGl6YXRpb25GaWxlQ29udGVudCIsImdldEFsbEF0dGFjaG1lbnRQYXRoc0ZpbGVOYW1lcyIsImdldEFsbEF0dGFjaG1lbnRQYXRoRmlsZU5hbWVzIiwiZ2V0QXR0YWNobWVudFBhdGhGaWxlIiwiZ2V0QXR0YWNobWVudFBhdGhzRmlsZUNvbnRlbnQiLCJnZXRBbGxVbm1hcEZpbGVzIiwiZ2V0QWxsVW5tYXBGaWxlUGF0aHMiLCJnZXRVbm1hcEZpbGUiLCJnZXRVbm1hcEZpbGVQYXRoQnlGaWxlTmFtZU9yVW5kZWZpbmVkIiwiZ2V0QWxsTWFwRmlsZXMiLCJnZXRBbGxNYXBGaWxlUGF0aHMiLCJnZXRNYXBGaWxlIiwiZ2V0TWFwRmlsZVBhdGhCeUZpbGVOYW1lT3JVbmRlZmluZWQiLCJnZXRBbGxQYXRjaEZpbGVzIiwiZ2V0QWxsUGF0Y2hGaWxlUGF0aHMiLCJnZXRQYXRjaEZpbGUiLCJnZXRQYXRjaEZpbGVQYXRoQnlGaWxlTmFtZU9yVW5kZWZpbmVkIiwiX2FwcGx5RGVjb3JhdGVkRGVzY3JpcHRvcjIiLCJwcm90b3R5cGUiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvQ0xJQ29tbWFuZHMvQnVpbGRTZXJ2ZXIvUmVzb3VyY2VzQ29udHJvbGxlcnMvQnVpbGRTZXJ2ZXJCYWNrZW5kUmVzb3VyY2VzQ29udHJvbGxlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVSZWFkU3RyZWFtLCBSZWFkU3RyZWFtIH0gZnJvbSBcImZzXCI7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gXCJwYXRoXCI7XG5cbmltcG9ydCB7IHBhdGhFeGlzdHMgfSBmcm9tIFwiZnMtZXh0cmFcIjtcbmltcG9ydCBfLCB7IGRlYm91bmNlIH0gZnJvbSBcImxvZGFzaFwiO1xuaW1wb3J0IHsgRmFybUNvbmZpZyB9IGZyb20gXCJUb29scy9zcmMvQ2FuZHlDTElcIjtcblxuaW1wb3J0IHsgaHR0cEdldCB9IGZyb20gXCIuLi8uLi8uLi9Db21tb25zL0h0dHBTZXJ2ZXIvQXR0cmlidXRlUm91dGluZy9NZXRob2RzXCI7XG5pbXBvcnQgeyBOb3RGb3VuZFdlYkVycm9yIH0gZnJvbSBcIi4uLy4uLy4uL0NvbW1vbnMvSHR0cFNlcnZlci9BdHRyaWJ1dGVSb3V0aW5nL05vdEZvdW5kV2ViRXJyb3JcIjtcbmltcG9ydCB7IGh0dHBUeXBlLCBodHRwVXJsUGFyYW0gfSBmcm9tIFwiLi4vLi4vLi4vQ29tbW9ucy9IdHRwU2VydmVyL0F0dHJpYnV0ZVJvdXRpbmcvUGFyYW1zXCI7XG5pbXBvcnQgeyBodHRwUmV0dXJuIH0gZnJvbSBcIi4uLy4uLy4uL0NvbW1vbnMvSHR0cFNlcnZlci9BdHRyaWJ1dGVSb3V0aW5nL1Jlc3VsdHNcIjtcbmltcG9ydCB7XG4gICAgRmlsZVN0cmVhbVJlc3VsdCxcbiAgICBTdHJlYW1SZXN1bHQsXG59IGZyb20gXCIuLi8uLi8uLi9Db21tb25zL0h0dHBTZXJ2ZXIvQXR0cmlidXRlUm91dGluZy9SZXN1bHRzL1N0cmVhbVJlc3VsdEhhbmRsZXJcIjtcbmltcG9ydCB7IFNpbmdsZXRvbkNvbnRyb2xsZXIgfSBmcm9tIFwiLi4vLi4vLi4vQ29tbW9ucy9IdHRwU2VydmVyL0V4cHJlc3NXcmFwcGVyL1NpbmdsZXRvbkNvbnRyb2xsZXJcIjtcblxuaW1wb3J0IHsgSUdlbmVyYXRlZFNlcnZlclNpZGVTb3VyY2VzUHJvdmlkZXIgfSBmcm9tIFwiLi9JR2VuZXJhdGVkU2VydmVyU2lkZVNvdXJjZXNQcm92aWRlclwiO1xuaW1wb3J0IHsgRmFybURpcmVjdG9yeSB9IGZyb20gXCIuL0RpcmVjdG9yaWVzL0Zhcm1EaXJlY3RvcnlcIjtcblxuZXhwb3J0IGNsYXNzIEJ1aWxkU2VydmVyQmFja2VuZFJlc291cmNlc0NvbnRyb2xsZXIgZXh0ZW5kcyBTaW5nbGV0b25Db250cm9sbGVyIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGdlbmVyYXRlZFNlcnZlclNpZGVTb3VyY2VzUHJvdmlkZXI6IElHZW5lcmF0ZWRTZXJ2ZXJTaWRlU291cmNlc1Byb3ZpZGVyO1xuICAgIHByaXZhdGUgYWxsU2NoZW1hc0ZpbGVzOiB1bmRlZmluZWQgfCBzdHJpbmc7XG4gICAgcHJpdmF0ZSByZWFkb25seSByZXNldEFsbFNjaGVtYUZpbGVzRGVib3VuY2VkOiAoKSA9PiB2b2lkO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgYWxsRmFybURpcmVjdG9yaWVzOiBGYXJtRGlyZWN0b3J5W107XG4gICAgcHJpdmF0ZSByZWFkb25seSBhbGxGYXJtQ29uZmlnOiBGYXJtQ29uZmlnW107XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgICAgIGFsbEZhcm1Db25maWc6IEZhcm1Db25maWdbXSxcbiAgICAgICAgZmxhbmdOb3JtYWxpemF0aW9uU291cmNlc1Byb3ZpZGVyOiBJR2VuZXJhdGVkU2VydmVyU2lkZVNvdXJjZXNQcm92aWRlclxuICAgICkge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLmdlbmVyYXRlZFNlcnZlclNpZGVTb3VyY2VzUHJvdmlkZXIgPSBmbGFuZ05vcm1hbGl6YXRpb25Tb3VyY2VzUHJvdmlkZXI7XG4gICAgICAgIHRoaXMuYWxsRmFybUNvbmZpZyA9IGFsbEZhcm1Db25maWc7XG4gICAgICAgIHRoaXMuYWxsRmFybURpcmVjdG9yaWVzID0gYWxsRmFybUNvbmZpZy5tYXAoaSA9PiBuZXcgRmFybURpcmVjdG9yeShpLmZhcm1EaXJlY3RvcnkpKTtcbiAgICAgICAgdGhpcy5yZXNldEFsbFNjaGVtYUZpbGVzRGVib3VuY2VkID0gZGVib3VuY2UoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5hbGxTY2hlbWFzRmlsZXMgPSB1bmRlZmluZWQ7XG4gICAgICAgIH0sIDUwMDApO1xuICAgIH1cblxuICAgIEBodHRwR2V0KFwiL2dmdnNcIiwgaHR0cFJldHVybi5Kc29uKVxuICAgIHB1YmxpYyBhc3luYyBnZXRBbGxHZnZzKCk6IFByb21pc2U8c3RyaW5nW10+IHtcbiAgICAgICAgcmV0dXJuIChhd2FpdCBQcm9taXNlLmFsbCh0aGlzLmFsbEZhcm1EaXJlY3Rvcmllcy5tYXAoeCA9PiB4LmdldEFsbEdmdnMoKSkpKS5mbGF0KCk7XG4gICAgfVxuXG4gICAgQGh0dHBHZXQoXCIvcGlja2xpc3RzXCIsIGh0dHBSZXR1cm4uUGxhaW5UZXh0KVxuICAgIHB1YmxpYyBhc3luYyBnZXRBbGxQaWNrbGlzdHMoKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICAgICAgcmV0dXJuIChhd2FpdCBQcm9taXNlLmFsbCh0aGlzLmFsbEZhcm1EaXJlY3Rvcmllcy5tYXAoeCA9PiB4LmdldEFsbFBpY2tsaXN0cygpKSkpLmZsYXQoKS5qb2luKFwiXFxuXCIpO1xuICAgIH1cblxuICAgIEBodHRwR2V0KFxuICAgICAgICBcIi9waWNrbGlzdHMvOnBpY2tsaXN0RmlsZW5hbWVcIixcbiAgICAgICAgaHR0cFJldHVybi5TdHJlYW1XaXRoTWltZShcImFwcGxpY2F0aW9uL2pzb25cIiksXG4gICAgICAgIGh0dHBVcmxQYXJhbShcInBpY2tsaXN0RmlsZW5hbWVcIiwgaHR0cFR5cGUuU3RyaW5nKVxuICAgIClcbiAgICBwdWJsaWMgYXN5bmMgZ2V0UGlja2xpc3RzKHBpY2tsaXN0RmlsZW5hbWU6IHN0cmluZyk6IFByb21pc2U8UmVhZFN0cmVhbT4ge1xuICAgICAgICBjb25zdCBhbGxGaWxlUGF0aCA9IHRoaXMuYWxsRmFybUNvbmZpZy5tYXAoaSA9PiBwYXRoLmpvaW4oaS5mYXJtRGlyZWN0b3J5LCBcInBpY2tsaXN0c1wiLCBwaWNrbGlzdEZpbGVuYW1lKSk7XG4gICAgICAgIGZvciAoY29uc3QgcGF0aEZpbGUgb2YgYWxsRmlsZVBhdGgpIHtcbiAgICAgICAgICAgIGlmIChhd2FpdCBwYXRoRXhpc3RzKHBhdGhGaWxlKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBjcmVhdGVSZWFkU3RyZWFtKHBhdGhGaWxlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0aHJvdyBFcnJvcihgbm90IGZvdW5kIHBpY2tsaXN0RmlsZW5hbWUgJHtwaWNrbGlzdEZpbGVuYW1lfWApO1xuICAgIH1cblxuICAgIEBodHRwR2V0KFwiL2NvbnZlcnRlcnNcIiwgaHR0cFJldHVybi5QbGFpblRleHQpXG4gICAgcHVibGljIGFzeW5jIGdldEFsbENvbnZlcnRlcnNGaWxlcygpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgICAgICByZXR1cm4gKGF3YWl0IFByb21pc2UuYWxsKHRoaXMuYWxsRmFybURpcmVjdG9yaWVzLmZsYXRNYXAoeCA9PiB4LmdldEFsbENvbnZlcnRlckZpbGVQYXRocygpKSkpXG4gICAgICAgICAgICAuZmxhdCgpXG4gICAgICAgICAgICAubWFwKHggPT4gcGF0aC5iYXNlbmFtZSh4KSlcbiAgICAgICAgICAgIC5qb2luKFwiXFxuXCIpO1xuICAgIH1cblxuICAgIEBodHRwR2V0KFwiL2NvbnZlcnRlcnMvOmZpbGVuYW1lXCIsIGh0dHBSZXR1cm4uU3RyZWFtLCBodHRwVXJsUGFyYW0oXCJmaWxlbmFtZVwiLCBodHRwVHlwZS5TdHJpbmcpKVxuICAgIHB1YmxpYyBhc3luYyBnZXRDb252ZXJ0ZXJGaWxlKGZpbGVuYW1lOiBzdHJpbmcpOiBQcm9taXNlPEZpbGVTdHJlYW1SZXN1bHQ+IHtcbiAgICAgICAgZm9yIChjb25zdCBmYXJtRGlyZWN0b3J5IG9mIHRoaXMuYWxsRmFybURpcmVjdG9yaWVzKSB7XG4gICAgICAgICAgICBjb25zdCBmaWxlUGF0aCA9IGF3YWl0IGZhcm1EaXJlY3RvcnkuZ2V0Q29udmVydGVyRmlsZVBhdGhCeUZpbGVOYW1lT3JVbmRlZmluZWQoZmlsZW5hbWUpO1xuICAgICAgICAgICAgaWYgKGZpbGVQYXRoICE9IG51bGwgJiYgKGF3YWl0IHBhdGhFeGlzdHMoZmlsZVBhdGgpKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBuZXcgRmlsZVN0cmVhbVJlc3VsdChmaWxlUGF0aCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0aHJvdyBuZXcgTm90Rm91bmRXZWJFcnJvcihcIkZpbGUgbm90IGZvdW5kXCIsIGZhbHNlKTtcbiAgICB9XG5cbiAgICBAaHR0cEdldChcIi9tZXJnZXJzXCIsIGh0dHBSZXR1cm4uUGxhaW5UZXh0KVxuICAgIHB1YmxpYyBhc3luYyBnZXRBbGxNZXJnZXJzRmlsZXMoKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICAgICAgcmV0dXJuIChhd2FpdCBQcm9taXNlLmFsbCh0aGlzLmFsbEZhcm1EaXJlY3Rvcmllcy5mbGF0TWFwKHggPT4geC5nZXRBbGxNZXJnZXJzRmlsZVBhdGhzKCkpKSlcbiAgICAgICAgICAgIC5mbGF0KClcbiAgICAgICAgICAgIC5tYXAoeCA9PiBwYXRoLmJhc2VuYW1lKHgpKVxuICAgICAgICAgICAgLmpvaW4oXCJcXG5cIik7XG4gICAgfVxuXG4gICAgQGh0dHBHZXQoXCIvbWVyZ2Vycy86ZmlsZW5hbWVcIiwgaHR0cFJldHVybi5TdHJlYW0sIGh0dHBVcmxQYXJhbShcImZpbGVuYW1lXCIsIGh0dHBUeXBlLlN0cmluZykpXG4gICAgcHVibGljIGFzeW5jIGdldE1lcmdlckZpbGUoZmlsZW5hbWU6IHN0cmluZyk6IFByb21pc2U8RmlsZVN0cmVhbVJlc3VsdD4ge1xuICAgICAgICBmb3IgKGNvbnN0IGZhcm1EaXJlY3Rvcnkgb2YgdGhpcy5hbGxGYXJtRGlyZWN0b3JpZXMpIHtcbiAgICAgICAgICAgIGNvbnN0IGZpbGVQYXRoID0gYXdhaXQgZmFybURpcmVjdG9yeS5nZXRNZXJnZXJzRmlsZVBhdGhCeUZpbGVOYW1lT3JVbmRlZmluZWQoZmlsZW5hbWUpO1xuICAgICAgICAgICAgaWYgKGZpbGVQYXRoICE9IG51bGwgJiYgKGF3YWl0IHBhdGhFeGlzdHMoZmlsZVBhdGgpKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBuZXcgRmlsZVN0cmVhbVJlc3VsdChmaWxlUGF0aCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0aHJvdyBuZXcgTm90Rm91bmRXZWJFcnJvcihcIkZpbGUgbm90IGZvdW5kXCIsIGZhbHNlKTtcbiAgICB9XG5cbiAgICBAaHR0cEdldChcIi9zY2hlbWFzXCIsIGh0dHBSZXR1cm4uUGxhaW5UZXh0KVxuICAgIHB1YmxpYyBhc3luYyBnZXRBbGxTY2hlbWFzRmlsZXMoKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICAgICAgaWYgKHRoaXMuYWxsU2NoZW1hc0ZpbGVzID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRoaXMuYWxsU2NoZW1hc0ZpbGVzID0gKGF3YWl0IFByb21pc2UuYWxsKHRoaXMuYWxsRmFybURpcmVjdG9yaWVzLmZsYXRNYXAoeCA9PiB4LmdldEFsbFNjaGVtYXNGaWxlUGF0aHMoKSkpKVxuICAgICAgICAgICAgICAgIC5mbGF0KClcbiAgICAgICAgICAgICAgICAubWFwKHggPT4gcGF0aC5iYXNlbmFtZSh4KSlcbiAgICAgICAgICAgICAgICAuam9pbihcIlxcblwiKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnJlc2V0QWxsU2NoZW1hRmlsZXNEZWJvdW5jZWQoKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuYWxsU2NoZW1hc0ZpbGVzO1xuICAgIH1cblxuICAgIEBodHRwR2V0KFwiL3NjaGVtYXMvOmZpbGVuYW1lXCIsIGh0dHBSZXR1cm4uU3RyZWFtLCBodHRwVXJsUGFyYW0oXCJmaWxlbmFtZVwiLCBodHRwVHlwZS5TdHJpbmcpKVxuICAgIHB1YmxpYyBhc3luYyBnZXRGb3JtU2NoZW1hcyhmaWxlbmFtZTogc3RyaW5nKTogUHJvbWlzZTxGaWxlU3RyZWFtUmVzdWx0PiB7XG4gICAgICAgIGZvciAoY29uc3QgZmFybURpcmVjdG9yeSBvZiB0aGlzLmFsbEZhcm1EaXJlY3Rvcmllcykge1xuICAgICAgICAgICAgY29uc3QgZmlsZVBhdGggPSBhd2FpdCBmYXJtRGlyZWN0b3J5LmdldFNjaGVtYUZpbGVQYXRoQnlGaWxlTmFtZU9yVW5kZWZpbmVkKGZpbGVuYW1lKTtcbiAgICAgICAgICAgIGlmIChmaWxlUGF0aCAhPSBudWxsICYmIChhd2FpdCBwYXRoRXhpc3RzKGZpbGVQYXRoKSkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IEZpbGVTdHJlYW1SZXN1bHQoZmlsZVBhdGgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGhyb3cgbmV3IE5vdEZvdW5kV2ViRXJyb3IoXCJGaWxlIG5vdCBmb3VuZFwiLCBmYWxzZSk7XG4gICAgfVxuXG4gICAgQGh0dHBHZXQoXCIvcHJlc2VudGF0aW9uc1wiLCBodHRwUmV0dXJuLlBsYWluVGV4dClcbiAgICBwdWJsaWMgYXN5bmMgZ2V0QWxsRm9ybVByZXNlbnRhdGlvbnMoKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICAgICAgcmV0dXJuIChhd2FpdCBQcm9taXNlLmFsbCh0aGlzLmFsbEZhcm1EaXJlY3Rvcmllcy5mbGF0TWFwKHggPT4geC5nZXRBbGxQcmVzZW50YXRpb25zRmlsZU5hbWVzKCkpKSlcbiAgICAgICAgICAgIC5mbGF0KClcbiAgICAgICAgICAgIC5tYXAoeCA9PiBwYXRoLmJhc2VuYW1lKHgpKVxuICAgICAgICAgICAgLmpvaW4oXCJcXG5cIik7XG4gICAgfVxuXG4gICAgQGh0dHBHZXQoXCIvcHJlc2VudGF0aW9ucy86Z2Z2LnByZXNlbnRhdGlvbnMuanNvblwiLCBodHRwUmV0dXJuLlN0cmVhbSwgaHR0cFVybFBhcmFtKFwiZ2Z2XCIsIGh0dHBUeXBlLlN0cmluZykpXG4gICAgcHVibGljIGFzeW5jIGdldEZvcm1QcmVzZW50YXRpb25zKGdmdjogc3RyaW5nKTogUHJvbWlzZTxGaWxlU3RyZWFtUmVzdWx0PiB7XG4gICAgICAgIGZvciAoY29uc3QgZmFybURpcmVjdG9yeSBvZiB0aGlzLmFsbEZhcm1EaXJlY3Rvcmllcykge1xuICAgICAgICAgICAgY29uc3QgZmlsZVBhdGggPSBhd2FpdCBmYXJtRGlyZWN0b3J5LmdldFByZXNlbnRhdGlvbnNGaWxlUGF0aEJ5R2Z2T3JVbmRlZmluZWQoZ2Z2KTtcbiAgICAgICAgICAgIGlmIChmaWxlUGF0aCAhPSBudWxsICYmIChhd2FpdCBwYXRoRXhpc3RzKGZpbGVQYXRoKSkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IEZpbGVTdHJlYW1SZXN1bHQoZmlsZVBhdGgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGhyb3cgbmV3IE5vdEZvdW5kV2ViRXJyb3IoXCJGaWxlIG5vdCBmb3VuZFwiLCBmYWxzZSk7XG4gICAgfVxuXG4gICAgQGh0dHBHZXQoXCIvbm9ybWFsaXplXCIsIGh0dHBSZXR1cm4uUGxhaW5UZXh0KVxuICAgIHB1YmxpYyBhc3luYyBnZXRBbGxOb3JtYWxpemVGaWxlcygpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgICAgICBjb25zdCBmaWxlcyA9IChhd2FpdCBQcm9taXNlLmFsbCh0aGlzLmFsbEZhcm1EaXJlY3Rvcmllcy5mbGF0TWFwKHggPT4geC5nZXRBbGxOb3JtYWxpemVGaWxlUGF0aHMoKSkpKS5mbGF0KCk7XG4gICAgICAgIGNvbnN0IGZsYW5nRmlsZXMgPSBhd2FpdCB0aGlzLmdlbmVyYXRlZFNlcnZlclNpZGVTb3VyY2VzUHJvdmlkZXIuZ2V0QWxsTm9ybWFsaXphdGlvbkZpbGVOYW1lcygpO1xuICAgICAgICByZXR1cm4gWy4uLmZpbGVzLm1hcCh4ID0+IHBhdGguYmFzZW5hbWUoeCkpLCAuLi5mbGFuZ0ZpbGVzXS5qb2luKFwiXFxuXCIpO1xuICAgIH1cblxuICAgIEBodHRwR2V0KFwiL25vcm1hbGl6ZS86Z2Z2LnhtbFwiLCBodHRwUmV0dXJuLlN0cmVhbSwgaHR0cFVybFBhcmFtKFwiZ2Z2XCIsIGh0dHBUeXBlLlN0cmluZykpXG4gICAgcHVibGljIGFzeW5jIGdldE5vcm1hbGl6ZUZpbGUoZ2Z2OiBzdHJpbmcpOiBQcm9taXNlPEZpbGVTdHJlYW1SZXN1bHQ+IHtcbiAgICAgICAgZm9yIChjb25zdCBmYXJtRGlyZWN0b3J5IG9mIHRoaXMuYWxsRmFybURpcmVjdG9yaWVzKSB7XG4gICAgICAgICAgICBjb25zdCBmaWxlUGF0aCA9IGF3YWl0IGZhcm1EaXJlY3RvcnkuZ2V0Tm9ybWFsaXplRmlsZVBhdGhCeUZpbGVOYW1lT3JVbmRlZmluZWQoYCR7Z2Z2fS54bWxgKTtcbiAgICAgICAgICAgIGlmIChmaWxlUGF0aCAhPSBudWxsICYmIChhd2FpdCBwYXRoRXhpc3RzKGZpbGVQYXRoKSkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IEZpbGVTdHJlYW1SZXN1bHQoZmlsZVBhdGgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGhyb3cgbmV3IE5vdEZvdW5kV2ViRXJyb3IoXCJGaWxlIG5vdCBmb3VuZFwiLCBmYWxzZSk7XG4gICAgfVxuXG4gICAgQGh0dHBHZXQoXCIvbm9ybWFsaXplLzpnZnYubm9ybWFsaXplXCIsIGh0dHBSZXR1cm4uU3RyZWFtLCBodHRwVXJsUGFyYW0oXCJnZnZcIiwgaHR0cFR5cGUuU3RyaW5nKSlcbiAgICBwdWJsaWMgYXN5bmMgZ2V0RkxhbmdOb3JtYWxpemVGaWxlKGdmdjogc3RyaW5nKTogUHJvbWlzZTxTdHJlYW1SZXN1bHQ+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBTdHJlYW1SZXN1bHQoYXdhaXQgdGhpcy5nZW5lcmF0ZWRTZXJ2ZXJTaWRlU291cmNlc1Byb3ZpZGVyLmdldE5vcm1hbGl6YXRpb25GaWxlQ29udGVudChnZnYpKTtcbiAgICB9XG5cbiAgICBAaHR0cEdldChcIi9hdHRhY2htZW50cGF0aHNcIiwgaHR0cFJldHVybi5QbGFpblRleHQpXG4gICAgcHVibGljIGFzeW5jIGdldEFsbEF0dGFjaG1lbnRQYXRoc0ZpbGVOYW1lcygpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgICAgICBjb25zdCBmbGFuZ0ZpbGVzID0gYXdhaXQgdGhpcy5nZW5lcmF0ZWRTZXJ2ZXJTaWRlU291cmNlc1Byb3ZpZGVyLmdldEFsbEF0dGFjaG1lbnRQYXRoRmlsZU5hbWVzKCk7XG4gICAgICAgIHJldHVybiBmbGFuZ0ZpbGVzLmpvaW4oXCJcXG5cIik7XG4gICAgfVxuXG4gICAgQGh0dHBHZXQoXCIvYXR0YWNobWVudHBhdGhzLzpnZnYuanNvblwiLCBodHRwUmV0dXJuLlN0cmVhbSwgaHR0cFVybFBhcmFtKFwiZ2Z2XCIsIGh0dHBUeXBlLlN0cmluZykpXG4gICAgcHVibGljIGFzeW5jIGdldEF0dGFjaG1lbnRQYXRoRmlsZShnZnY6IHN0cmluZyk6IFByb21pc2U8U3RyZWFtUmVzdWx0PiB7XG4gICAgICAgIHJldHVybiBuZXcgU3RyZWFtUmVzdWx0KGF3YWl0IHRoaXMuZ2VuZXJhdGVkU2VydmVyU2lkZVNvdXJjZXNQcm92aWRlci5nZXRBdHRhY2htZW50UGF0aHNGaWxlQ29udGVudChnZnYpKTtcbiAgICB9XG5cbiAgICBAaHR0cEdldChcIi91bm1hcFwiLCBodHRwUmV0dXJuLlBsYWluVGV4dClcbiAgICBwdWJsaWMgYXN5bmMgZ2V0QWxsVW5tYXBGaWxlcygpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgICAgICByZXR1cm4gKGF3YWl0IFByb21pc2UuYWxsKHRoaXMuYWxsRmFybURpcmVjdG9yaWVzLmZsYXRNYXAoeCA9PiB4LmdldEFsbFVubWFwRmlsZVBhdGhzKCkpKSlcbiAgICAgICAgICAgIC5mbGF0KClcbiAgICAgICAgICAgIC5tYXAoeCA9PiBwYXRoLmJhc2VuYW1lKHgpKVxuICAgICAgICAgICAgLmpvaW4oXCJcXG5cIik7XG4gICAgfVxuXG4gICAgQGh0dHBHZXQoXCIvdW5tYXAvOmZpbGVuYW1lXCIsIGh0dHBSZXR1cm4uU3RyZWFtLCBodHRwVXJsUGFyYW0oXCJmaWxlbmFtZVwiLCBodHRwVHlwZS5TdHJpbmcpKVxuICAgIHB1YmxpYyBhc3luYyBnZXRVbm1hcEZpbGUoZmlsZW5hbWU6IHN0cmluZyk6IFByb21pc2U8RmlsZVN0cmVhbVJlc3VsdD4ge1xuICAgICAgICBmb3IgKGNvbnN0IGZhcm1EaXJlY3Rvcnkgb2YgdGhpcy5hbGxGYXJtRGlyZWN0b3JpZXMpIHtcbiAgICAgICAgICAgIGNvbnN0IGZpbGVQYXRoID0gYXdhaXQgZmFybURpcmVjdG9yeS5nZXRVbm1hcEZpbGVQYXRoQnlGaWxlTmFtZU9yVW5kZWZpbmVkKGZpbGVuYW1lKTtcbiAgICAgICAgICAgIGlmIChmaWxlUGF0aCAhPSBudWxsICYmIChhd2FpdCBwYXRoRXhpc3RzKGZpbGVQYXRoKSkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IEZpbGVTdHJlYW1SZXN1bHQoZmlsZVBhdGgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGhyb3cgbmV3IE5vdEZvdW5kV2ViRXJyb3IoXCJGaWxlIG5vdCBmb3VuZFwiLCBmYWxzZSk7XG4gICAgfVxuXG4gICAgQGh0dHBHZXQoXCIvbWFwXCIsIGh0dHBSZXR1cm4uUGxhaW5UZXh0KVxuICAgIHB1YmxpYyBhc3luYyBnZXRBbGxNYXBGaWxlcygpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgICAgICByZXR1cm4gKGF3YWl0IFByb21pc2UuYWxsKHRoaXMuYWxsRmFybURpcmVjdG9yaWVzLmZsYXRNYXAoeCA9PiB4LmdldEFsbE1hcEZpbGVQYXRocygpKSkpXG4gICAgICAgICAgICAuZmxhdCgpXG4gICAgICAgICAgICAubWFwKHggPT4gcGF0aC5iYXNlbmFtZSh4KSlcbiAgICAgICAgICAgIC5qb2luKFwiXFxuXCIpO1xuICAgIH1cblxuICAgIEBodHRwR2V0KFwiL21hcC86ZmlsZW5hbWVcIiwgaHR0cFJldHVybi5TdHJlYW0sIGh0dHBVcmxQYXJhbShcImZpbGVuYW1lXCIsIGh0dHBUeXBlLlN0cmluZykpXG4gICAgcHVibGljIGFzeW5jIGdldE1hcEZpbGUoZmlsZW5hbWU6IHN0cmluZyk6IFByb21pc2U8RmlsZVN0cmVhbVJlc3VsdD4ge1xuICAgICAgICBmb3IgKGNvbnN0IGZhcm1EaXJlY3Rvcnkgb2YgdGhpcy5hbGxGYXJtRGlyZWN0b3JpZXMpIHtcbiAgICAgICAgICAgIGNvbnN0IGZpbGVQYXRoID0gYXdhaXQgZmFybURpcmVjdG9yeS5nZXRNYXBGaWxlUGF0aEJ5RmlsZU5hbWVPclVuZGVmaW5lZChmaWxlbmFtZSk7XG4gICAgICAgICAgICBpZiAoZmlsZVBhdGggIT0gbnVsbCAmJiAoYXdhaXQgcGF0aEV4aXN0cyhmaWxlUGF0aCkpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBGaWxlU3RyZWFtUmVzdWx0KGZpbGVQYXRoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRocm93IG5ldyBOb3RGb3VuZFdlYkVycm9yKFwiRmlsZSBub3QgZm91bmRcIiwgZmFsc2UpO1xuICAgIH1cblxuICAgIEBodHRwR2V0KFwiL3BhdGNoXCIsIGh0dHBSZXR1cm4uUGxhaW5UZXh0KVxuICAgIHB1YmxpYyBhc3luYyBnZXRBbGxQYXRjaEZpbGVzKCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgICAgIHJldHVybiAoYXdhaXQgUHJvbWlzZS5hbGwodGhpcy5hbGxGYXJtRGlyZWN0b3JpZXMuZmxhdE1hcCh4ID0+IHguZ2V0QWxsUGF0Y2hGaWxlUGF0aHMoKSkpKVxuICAgICAgICAgICAgLmZsYXQoKVxuICAgICAgICAgICAgLm1hcCh4ID0+IHBhdGguYmFzZW5hbWUoeCkpXG4gICAgICAgICAgICAuam9pbihcIlxcblwiKTtcbiAgICB9XG5cbiAgICBAaHR0cEdldChcIi9wYXRjaC86ZmlsZW5hbWVcIiwgaHR0cFJldHVybi5TdHJlYW0sIGh0dHBVcmxQYXJhbShcImdmdlwiLCBodHRwVHlwZS5TdHJpbmcpKVxuICAgIHB1YmxpYyBhc3luYyBnZXRQYXRjaEZpbGUoZmlsZW5hbWU6IHN0cmluZyk6IFByb21pc2U8RmlsZVN0cmVhbVJlc3VsdD4ge1xuICAgICAgICBmb3IgKGNvbnN0IGZhcm1EaXJlY3Rvcnkgb2YgdGhpcy5hbGxGYXJtRGlyZWN0b3JpZXMpIHtcbiAgICAgICAgICAgIGNvbnN0IGZpbGVQYXRoID0gYXdhaXQgZmFybURpcmVjdG9yeS5nZXRQYXRjaEZpbGVQYXRoQnlGaWxlTmFtZU9yVW5kZWZpbmVkKGZpbGVuYW1lKTtcbiAgICAgICAgICAgIGlmIChmaWxlUGF0aCAhPSBudWxsICYmIChhd2FpdCBwYXRoRXhpc3RzKGZpbGVQYXRoKSkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IEZpbGVTdHJlYW1SZXN1bHQoZmlsZVBhdGgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGhyb3cgbmV3IE5vdEZvdW5kV2ViRXJyb3IoXCJGaWxlIG5vdCBmb3VuZFwiLCBmYWxzZSk7XG4gICAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBLElBQUFBLEdBQUEsR0FBQUMsT0FBQTtBQUNBLElBQUFDLElBQUEsR0FBQUMsdUJBQUEsQ0FBQUYsT0FBQTtBQUVBLElBQUFHLFFBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLE9BQUEsR0FBQUosT0FBQTtBQUdBLElBQUFLLFFBQUEsR0FBQUwsT0FBQTtBQUNBLElBQUFNLGlCQUFBLEdBQUFOLE9BQUE7QUFDQSxJQUFBTyxPQUFBLEdBQUFQLE9BQUE7QUFDQSxJQUFBUSxRQUFBLEdBQUFSLE9BQUE7QUFDQSxJQUFBUyxvQkFBQSxHQUFBVCxPQUFBO0FBSUEsSUFBQVUsb0JBQUEsR0FBQVYsT0FBQTtBQUdBLElBQUFXLGNBQUEsR0FBQVgsT0FBQTtBQUE0RCxJQUFBWSxJQUFBLEVBQUFDLEtBQUEsRUFBQUMsS0FBQSxFQUFBQyxLQUFBLEVBQUFDLEtBQUEsRUFBQUMsS0FBQSxFQUFBQyxLQUFBLEVBQUFDLEtBQUEsRUFBQUMsS0FBQSxFQUFBQyxNQUFBLEVBQUFDLE1BQUEsRUFBQUMsTUFBQSxFQUFBQyxNQUFBLEVBQUFDLE1BQUEsRUFBQUMsTUFBQSxFQUFBQyxNQUFBLEVBQUFDLE1BQUEsRUFBQUMsTUFBQSxFQUFBQyxNQUFBLEVBQUFDLE1BQUEsRUFBQUMsTUFBQSxFQUFBQyxNQUFBLEVBQUFDLE1BQUE7QUFBQSxTQUFBQyx5QkFBQUMsQ0FBQSw2QkFBQUMsT0FB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SCxLQUFBLEdBQUE2QixNQUFBLENBQUFFLHdCQUFBLENBQUFmLE1BQUEsQ0FBQTZHLFNBQUEsb0JBQUE3RyxNQUFBLENBQUE2RyxTQUFBLE9BQUFELDBCQUFBLENBQUFyRyxPQUFBLEVBQUFQLE1BQUEsQ0FBQTZHLFNBQUEseUJBQUE1SCxLQUFBLEdBQUE0QixNQUFBLENBQUFFLHdCQUFBLENBQUFmLE1BQUEsQ0FBQTZHLFNBQUEseUJBQUE3RyxNQUFBLENBQUE2RyxTQUFBLE9BQUFELDBCQUFBLENBQUFyRyxPQUFBLEVBQUFQLE1BQUEsQ0FBQTZHLFNBQUEscUJBQUEzSCxLQUFBLEdBQUEyQixNQUFBLENBQUFFLHdCQUFBLENBQUFmLE1BQUEsQ0FBQTZHLFNBQUEscUJBQUE3RyxNQUFBLENBQUE2RyxTQUFBLE9BQUFELDBCQUFBLENBQUFyRyxPQUFBLEVBQUFQLE1BQUEsQ0FBQTZHLFNBQUEsOEJBQUExSCxNQUFBLEdBQUEwQixNQUFBLENBQUFFLHdCQUFBLENBQUFmLE1BQUEsQ0FBQTZHLFNBQUEsOEJBQUE3RyxNQUFBLENBQUE2RyxTQUFBLE9BQUFELDBCQUFBLENBQUFyRyxPQUFBLEVBQUFQLE1BQUEsQ0FBQTZHLFNBQUEsMkJBQUF6SCxNQUFBLEdBQUF5QixNQUFBLENBQUFFLHdCQUFBLENBQUFmLE1BQUEsQ0FBQTZHLFNBQUEsMkJBQUE3RyxNQUFBLENBQUE2RyxTQUFBLE9BQUFELDBCQUFBLENBQUFyRyxPQUFBLEVBQUFQLE1BQUEsQ0FBQTZHLFNBQUEsMkJBQUF4SCxNQUFBLEdBQUF3QixNQUFBLENBQUFFLHdCQUFBLENBQUFmLE1BQUEsQ0FBQTZHLFNBQUEsMkJBQUE3RyxNQUFBLENBQUE2RyxTQUFBLE9BQUFELDBCQUFBLENBQUFyRyxPQUFBLEVBQUFQLE1BQUEsQ0FBQTZHLFNBQUEsdUJBQUF2SCxNQUFBLEdBQUF1QixNQUFBLENBQUFFLHdCQUFBLENBQUFmLE1BQUEsQ0FBQTZHLFNBQUEsdUJBQUE3RyxNQUFBLENBQUE2RyxTQUFBLE9BQUFELDBCQUFBLENBQUFyRyxPQUFBLEVBQUFQLE1BQUEsQ0FBQTZHLFNBQUEsNEJBQUF0SCxNQUFBLEdBQUFzQixNQUFBLENBQUFFLHdCQUFBLENBQUFmLE1BQUEsQ0FBQTZHLFNBQUEsNEJBQUE3RyxNQUFBLENBQUE2RyxTQUFBLE9BQUFELDBCQUFBLENBQUFyRyxPQUFBLEVBQUFQLE1BQUEsQ0FBQTZHLFNBQUEscUNBQUFySCxNQUFBLEdBQUFxQixNQUFBLENBQUFFLHdCQUFBLENBQUFmLE1BQUEsQ0FBQTZHLFNBQUEscUNBQUE3RyxNQUFBLENBQUE2RyxTQUFBLE9BQUFELDBCQUFBLENBQUFyRyxPQUFBLEVBQUFQLE1BQUEsQ0FBQTZHLFNBQUEsNEJBQUFwSCxNQUFBLEdBQUFvQixNQUFBLENBQUFFLHdCQUFBLENBQUFmLE1BQUEsQ0FBQTZHLFNBQUEsNEJBQUE3RyxNQUFBLENBQUE2RyxTQUFBLE9BQUFELDBCQUFBLENBQUFyRyxPQUFBLEVBQUFQLE1BQUEsQ0FBQTZHLFNBQUEsdUJBQUFuSCxNQUFBLEdBQUFtQixNQUFBLENBQUFFLHdCQUFBLENBQUFmLE1BQUEsQ0FBQTZHLFNBQUEsdUJBQUE3RyxNQUFBLENBQUE2RyxTQUFBLE9BQUFELDBCQUFBLENBQUFyRyxPQUFBLEVBQUFQLE1BQUEsQ0FBQTZHLFNBQUEsbUJBQUFsSCxNQUFBLEdBQUFrQixNQUFBLENBQUFFLHdCQUFBLENBQUFmLE1BQUEsQ0FBQTZHLFNBQUEsbUJBQUE3RyxNQUFBLENBQUE2RyxTQUFBLE9BQUFELDBCQUFBLENBQUFyRyxPQUFBLEVBQUFQLE1BQUEsQ0FBQTZHLFNBQUEscUJBQUFqSCxNQUFBLEdBQUFpQixNQUFBLENBQUFFLHdCQUFBLENBQUFmLE1BQUEsQ0FBQTZHLFNBQUEscUJBQUE3RyxNQUFBLENBQUE2RyxTQUFBLE9BQUFELDBCQUFBLENBQUFyRyxPQUFBLEVBQUFQLE1BQUEsQ0FBQTZHLFNBQUEsaUJBQUFoSCxNQUFBLEdBQUFnQixNQUFBLENBQUFFLHdCQUFBLENBQUFmLE1BQUEsQ0FBQTZHLFNBQUEsaUJBQUE3RyxNQUFBLENBQUE2RyxTQUFBLE9BQUFELDBCQUFBLENBQUFyRyxPQUFBLEVBQUFQLE1BQUEsQ0FBQTZHLFNBQUEsdUJBQUEvRyxNQUFBLEdBQUFlLE1BQUEsQ0FBQUUsd0JBQUEsQ0FBQWYsTUFBQSxDQUFBNkcsU0FBQSx1QkFBQTdHLE1BQUEsQ0FBQTZHLFNBQUEsT0FBQUQsMEJBQUEsQ0FBQXJHLE9BQUEsRUFBQVAsTUFBQSxDQUFBNkcsU0FBQSxtQkFBQTlHLE1BQUEsR0FBQWMsTUFBQSxDQUFBRSx3QkFBQSxDQUFBZixNQUFBLENBQUE2RyxTQUFBLG1CQUFBN0csTUFBQSxDQUFBNkcsU0FBQSxJQUFBN0csTUFBQSIsImlnbm9yZUxpc3QiOltdfQ==
166
+ exports.BuildServerBackendResourcesController = BuildServerBackendResourcesController;
167
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZnMiLCJyZXF1aXJlIiwicGF0aCIsIl9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkIiwiX2ZzRXh0cmEiLCJfbG9kYXNoIiwiX01ldGhvZHMiLCJfTm90Rm91bmRXZWJFcnJvciIsIl9QYXJhbXMiLCJfUmVzdWx0cyIsIl9TdHJlYW1SZXN1bHRIYW5kbGVyIiwiX1NpbmdsZXRvbkNvbnRyb2xsZXIiLCJfRmFybURpcmVjdG9yeSIsIl9kZWMiLCJfZGVjMiIsIl9kZWMzIiwiX2RlYzQiLCJfZGVjNSIsIl9kZWM2IiwiX2RlYzciLCJfZGVjOCIsIl9kZWM5IiwiX2RlYzEwIiwiX2RlYzExIiwiX2RlYzEyIiwiX2RlYzEzIiwiX2RlYzE0IiwiX2RlYzE1IiwiX2RlYzE2IiwiX2RlYzE3IiwiX2RlYzE4IiwiX2RlYzE5IiwiX2RlYzIwIiwiX2RlYzIxIiwiX2RlYzIyIiwiX2NsYXNzIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsIkJ1aWxkU2VydmVyQmFja2VuZFJlc291cmNlc0NvbnRyb2xsZXIiLCJodHRwR2V0IiwiaHR0cFJldHVybiIsIkpzb24iLCJQbGFpblRleHQiLCJTdHJlYW1XaXRoTWltZSIsImh0dHBVcmxQYXJhbSIsImh0dHBUeXBlIiwiU3RyaW5nIiwiU3RyZWFtIiwiU2luZ2xldG9uQ29udHJvbGxlciIsImNvbnN0cnVjdG9yIiwiYWxsRmFybUNvbmZpZyIsImZsYW5nTm9ybWFsaXphdGlvblNvdXJjZXNQcm92aWRlciIsImdlbmVyYXRlZFNlcnZlclNpZGVTb3VyY2VzUHJvdmlkZXIiLCJhbGxTY2hlbWFzRmlsZXMiLCJyZXNldEFsbFNjaGVtYUZpbGVzRGVib3VuY2VkIiwiYWxsRmFybURpcmVjdG9yaWVzIiwibWFwIiwiaSIsIkZhcm1EaXJlY3RvcnkiLCJmYXJtRGlyZWN0b3J5IiwiZGVib3VuY2UiLCJ1bmRlZmluZWQiLCJnZXRBbGxHZnZzIiwiUHJvbWlzZSIsImFsbCIsIngiLCJmbGF0IiwiZ2V0QWxsUGlja2xpc3RzIiwiam9pbiIsImdldFBpY2tsaXN0cyIsInBpY2tsaXN0RmlsZW5hbWUiLCJhbGxGaWxlUGF0aCIsInBhdGhGaWxlIiwicGF0aEV4aXN0cyIsImNyZWF0ZVJlYWRTdHJlYW0iLCJFcnJvciIsImdldEFsbENvbnZlcnRlcnNGaWxlcyIsImZsYXRNYXAiLCJnZXRBbGxDb252ZXJ0ZXJGaWxlUGF0aHMiLCJiYXNlbmFtZSIsImdldENvbnZlcnRlckZpbGUiLCJmaWxlbmFtZSIsImZpbGVQYXRoIiwiZ2V0Q29udmVydGVyRmlsZVBhdGhCeUZpbGVOYW1lT3JVbmRlZmluZWQiLCJGaWxlU3RyZWFtUmVzdWx0IiwiTm90Rm91bmRXZWJFcnJvciIsImdldEFsbE1lcmdlcnNGaWxlcyIsImdldEFsbE1lcmdlcnNGaWxlUGF0aHMiLCJnZXRNZXJnZXJGaWxlIiwiZ2V0TWVyZ2Vyc0ZpbGVQYXRoQnlGaWxlTmFtZU9yVW5kZWZpbmVkIiwiZ2V0QWxsU2NoZW1hc0ZpbGVzIiwiZ2V0QWxsU2NoZW1hc0ZpbGVQYXRocyIsImdldEZvcm1TY2hlbWFzIiwiZ2V0U2NoZW1hRmlsZVBhdGhCeUZpbGVOYW1lT3JVbmRlZmluZWQiLCJnZXRBbGxGb3JtUHJlc2VudGF0aW9ucyIsImdldEFsbFByZXNlbnRhdGlvbnNGaWxlTmFtZXMiLCJnZXRGb3JtUHJlc2VudGF0aW9ucyIsImdmdiIsImdldFByZXNlbnRhdGlvbnNGaWxlUGF0aEJ5R2Z2T3JVbmRlZmluZWQiLCJnZXRBbGxOb3JtYWxpemVGaWxlcyIsImZpbGVzIiwiZ2V0QWxsTm9ybWFsaXplRmlsZVBhdGhzIiwiZmxhbmdGaWxlcyIsImdldEFsbE5vcm1hbGl6YXRpb25GaWxlTmFtZXMiLCJnZXROb3JtYWxpemVGaWxlIiwiZ2V0Tm9ybWFsaXplRmlsZVBhdGhCeUZpbGVOYW1lT3JVbmRlZmluZWQiLCJnZXRGTGFuZ05vcm1hbGl6ZUZpbGUiLCJTdHJlYW1SZXN1bHQiLCJnZXROb3JtYWxpemF0aW9uRmlsZUNvbnRlbnQiLCJnZXRBbGxBdHRhY2htZW50UGF0aHNGaWxlTmFtZXMiLCJnZXRBbGxBdHRhY2htZW50UGF0aEZpbGVOYW1lcyIsImdldEF0dGFjaG1lbnRQYXRoRmlsZSIsImdldEF0dGFjaG1lbnRQYXRoc0ZpbGVDb250ZW50IiwiZ2V0QWxsVW5tYXBGaWxlcyIsImdldEFsbFVubWFwRmlsZVBhdGhzIiwiZ2V0VW5tYXBGaWxlIiwiZ2V0VW5tYXBGaWxlUGF0aEJ5RmlsZU5hbWVPclVuZGVmaW5lZCIsImdldEFsbE1hcEZpbGVzIiwiZ2V0QWxsTWFwRmlsZVBhdGhzIiwiZ2V0TWFwRmlsZSIsImdldE1hcEZpbGVQYXRoQnlGaWxlTmFtZU9yVW5kZWZpbmVkIiwiZ2V0QWxsUGF0Y2hGaWxlcyIsImdldEFsbFBhdGNoRmlsZVBhdGhzIiwiZ2V0UGF0Y2hGaWxlIiwiZ2V0UGF0Y2hGaWxlUGF0aEJ5RmlsZU5hbWVPclVuZGVmaW5lZCIsIl9hcHBseURlY29yYXRlZERlc2NyaXB0b3IyIiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9DTElDb21tYW5kcy9CdWlsZFNlcnZlci9SZXNvdXJjZXNDb250cm9sbGVycy9CdWlsZFNlcnZlckJhY2tlbmRSZXNvdXJjZXNDb250cm9sbGVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZVJlYWRTdHJlYW0sIFJlYWRTdHJlYW0gfSBmcm9tIFwiZnNcIjtcbmltcG9ydCAqIGFzIHBhdGggZnJvbSBcInBhdGhcIjtcblxuaW1wb3J0IHsgcGF0aEV4aXN0cyB9IGZyb20gXCJmcy1leHRyYVwiO1xuaW1wb3J0IF8sIHsgZGVib3VuY2UgfSBmcm9tIFwibG9kYXNoXCI7XG5pbXBvcnQgeyBGYXJtQ29uZmlnIH0gZnJvbSBcIlRvb2xzL3NyYy9DYW5keUNMSVwiO1xuXG5pbXBvcnQgeyBodHRwR2V0IH0gZnJvbSBcIi4uLy4uLy4uL0NvbW1vbnMvSHR0cFNlcnZlci9BdHRyaWJ1dGVSb3V0aW5nL01ldGhvZHNcIjtcbmltcG9ydCB7IE5vdEZvdW5kV2ViRXJyb3IgfSBmcm9tIFwiLi4vLi4vLi4vQ29tbW9ucy9IdHRwU2VydmVyL0F0dHJpYnV0ZVJvdXRpbmcvTm90Rm91bmRXZWJFcnJvclwiO1xuaW1wb3J0IHsgaHR0cFR5cGUsIGh0dHBVcmxQYXJhbSB9IGZyb20gXCIuLi8uLi8uLi9Db21tb25zL0h0dHBTZXJ2ZXIvQXR0cmlidXRlUm91dGluZy9QYXJhbXNcIjtcbmltcG9ydCB7IGh0dHBSZXR1cm4gfSBmcm9tIFwiLi4vLi4vLi4vQ29tbW9ucy9IdHRwU2VydmVyL0F0dHJpYnV0ZVJvdXRpbmcvUmVzdWx0c1wiO1xuaW1wb3J0IHtcbiAgICBGaWxlU3RyZWFtUmVzdWx0LFxuICAgIFN0cmVhbVJlc3VsdCxcbn0gZnJvbSBcIi4uLy4uLy4uL0NvbW1vbnMvSHR0cFNlcnZlci9BdHRyaWJ1dGVSb3V0aW5nL1Jlc3VsdHMvU3RyZWFtUmVzdWx0SGFuZGxlclwiO1xuaW1wb3J0IHsgU2luZ2xldG9uQ29udHJvbGxlciB9IGZyb20gXCIuLi8uLi8uLi9Db21tb25zL0h0dHBTZXJ2ZXIvRXhwcmVzc1dyYXBwZXIvU2luZ2xldG9uQ29udHJvbGxlclwiO1xuXG5pbXBvcnQgeyBJR2VuZXJhdGVkU2VydmVyU2lkZVNvdXJjZXNQcm92aWRlciB9IGZyb20gXCIuL0lHZW5lcmF0ZWRTZXJ2ZXJTaWRlU291cmNlc1Byb3ZpZGVyXCI7XG5pbXBvcnQgeyBGYXJtRGlyZWN0b3J5IH0gZnJvbSBcIi4vRGlyZWN0b3JpZXMvRmFybURpcmVjdG9yeVwiO1xuXG5leHBvcnQgY2xhc3MgQnVpbGRTZXJ2ZXJCYWNrZW5kUmVzb3VyY2VzQ29udHJvbGxlciBleHRlbmRzIFNpbmdsZXRvbkNvbnRyb2xsZXIge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZ2VuZXJhdGVkU2VydmVyU2lkZVNvdXJjZXNQcm92aWRlcjogSUdlbmVyYXRlZFNlcnZlclNpZGVTb3VyY2VzUHJvdmlkZXI7XG4gICAgcHJpdmF0ZSBhbGxTY2hlbWFzRmlsZXM6IHVuZGVmaW5lZCB8IHN0cmluZztcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlc2V0QWxsU2NoZW1hRmlsZXNEZWJvdW5jZWQ6ICgpID0+IHZvaWQ7XG4gICAgcHJpdmF0ZSByZWFkb25seSBhbGxGYXJtRGlyZWN0b3JpZXM6IEZhcm1EaXJlY3RvcnlbXTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGFsbEZhcm1Db25maWc6IEZhcm1Db25maWdbXTtcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICAgICAgYWxsRmFybUNvbmZpZzogRmFybUNvbmZpZ1tdLFxuICAgICAgICBmbGFuZ05vcm1hbGl6YXRpb25Tb3VyY2VzUHJvdmlkZXI6IElHZW5lcmF0ZWRTZXJ2ZXJTaWRlU291cmNlc1Byb3ZpZGVyXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIHRoaXMuZ2VuZXJhdGVkU2VydmVyU2lkZVNvdXJjZXNQcm92aWRlciA9IGZsYW5nTm9ybWFsaXphdGlvblNvdXJjZXNQcm92aWRlcjtcbiAgICAgICAgdGhpcy5hbGxGYXJtQ29uZmlnID0gYWxsRmFybUNvbmZpZztcbiAgICAgICAgdGhpcy5hbGxGYXJtRGlyZWN0b3JpZXMgPSBhbGxGYXJtQ29uZmlnLm1hcChpID0+IG5ldyBGYXJtRGlyZWN0b3J5KGkuZmFybURpcmVjdG9yeSkpO1xuICAgICAgICB0aGlzLnJlc2V0QWxsU2NoZW1hRmlsZXNEZWJvdW5jZWQgPSBkZWJvdW5jZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmFsbFNjaGVtYXNGaWxlcyA9IHVuZGVmaW5lZDtcbiAgICAgICAgfSwgNTAwMCk7XG4gICAgfVxuXG4gICAgQGh0dHBHZXQoXCIvZ2Z2c1wiLCBodHRwUmV0dXJuLkpzb24pXG4gICAgcHVibGljIGFzeW5jIGdldEFsbEdmdnMoKTogUHJvbWlzZTxzdHJpbmdbXT4ge1xuICAgICAgICByZXR1cm4gKGF3YWl0IFByb21pc2UuYWxsKHRoaXMuYWxsRmFybURpcmVjdG9yaWVzLm1hcCh4ID0+IHguZ2V0QWxsR2Z2cygpKSkpLmZsYXQoKTtcbiAgICB9XG5cbiAgICBAaHR0cEdldChcIi9waWNrbGlzdHNcIiwgaHR0cFJldHVybi5QbGFpblRleHQpXG4gICAgcHVibGljIGFzeW5jIGdldEFsbFBpY2tsaXN0cygpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgICAgICByZXR1cm4gKGF3YWl0IFByb21pc2UuYWxsKHRoaXMuYWxsRmFybURpcmVjdG9yaWVzLm1hcCh4ID0+IHguZ2V0QWxsUGlja2xpc3RzKCkpKSkuZmxhdCgpLmpvaW4oXCJcXG5cIik7XG4gICAgfVxuXG4gICAgQGh0dHBHZXQoXG4gICAgICAgIFwiL3BpY2tsaXN0cy86cGlja2xpc3RGaWxlbmFtZVwiLFxuICAgICAgICBodHRwUmV0dXJuLlN0cmVhbVdpdGhNaW1lKFwiYXBwbGljYXRpb24vanNvblwiKSxcbiAgICAgICAgaHR0cFVybFBhcmFtKFwicGlja2xpc3RGaWxlbmFtZVwiLCBodHRwVHlwZS5TdHJpbmcpXG4gICAgKVxuICAgIHB1YmxpYyBhc3luYyBnZXRQaWNrbGlzdHMocGlja2xpc3RGaWxlbmFtZTogc3RyaW5nKTogUHJvbWlzZTxSZWFkU3RyZWFtPiB7XG4gICAgICAgIGNvbnN0IGFsbEZpbGVQYXRoID0gdGhpcy5hbGxGYXJtQ29uZmlnLm1hcChpID0+IHBhdGguam9pbihpLmZhcm1EaXJlY3RvcnksIFwicGlja2xpc3RzXCIsIHBpY2tsaXN0RmlsZW5hbWUpKTtcbiAgICAgICAgZm9yIChjb25zdCBwYXRoRmlsZSBvZiBhbGxGaWxlUGF0aCkge1xuICAgICAgICAgICAgaWYgKGF3YWl0IHBhdGhFeGlzdHMocGF0aEZpbGUpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGNyZWF0ZVJlYWRTdHJlYW0ocGF0aEZpbGUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHRocm93IEVycm9yKGBub3QgZm91bmQgcGlja2xpc3RGaWxlbmFtZSAke3BpY2tsaXN0RmlsZW5hbWV9YCk7XG4gICAgfVxuXG4gICAgQGh0dHBHZXQoXCIvY29udmVydGVyc1wiLCBodHRwUmV0dXJuLlBsYWluVGV4dClcbiAgICBwdWJsaWMgYXN5bmMgZ2V0QWxsQ29udmVydGVyc0ZpbGVzKCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgICAgIHJldHVybiAoYXdhaXQgUHJvbWlzZS5hbGwodGhpcy5hbGxGYXJtRGlyZWN0b3JpZXMuZmxhdE1hcCh4ID0+IHguZ2V0QWxsQ29udmVydGVyRmlsZVBhdGhzKCkpKSlcbiAgICAgICAgICAgIC5mbGF0KClcbiAgICAgICAgICAgIC5tYXAoeCA9PiBwYXRoLmJhc2VuYW1lKHgpKVxuICAgICAgICAgICAgLmpvaW4oXCJcXG5cIik7XG4gICAgfVxuXG4gICAgQGh0dHBHZXQoXCIvY29udmVydGVycy86ZmlsZW5hbWVcIiwgaHR0cFJldHVybi5TdHJlYW0sIGh0dHBVcmxQYXJhbShcImZpbGVuYW1lXCIsIGh0dHBUeXBlLlN0cmluZykpXG4gICAgcHVibGljIGFzeW5jIGdldENvbnZlcnRlckZpbGUoZmlsZW5hbWU6IHN0cmluZyk6IFByb21pc2U8RmlsZVN0cmVhbVJlc3VsdD4ge1xuICAgICAgICBmb3IgKGNvbnN0IGZhcm1EaXJlY3Rvcnkgb2YgdGhpcy5hbGxGYXJtRGlyZWN0b3JpZXMpIHtcbiAgICAgICAgICAgIGNvbnN0IGZpbGVQYXRoID0gYXdhaXQgZmFybURpcmVjdG9yeS5nZXRDb252ZXJ0ZXJGaWxlUGF0aEJ5RmlsZU5hbWVPclVuZGVmaW5lZChmaWxlbmFtZSk7XG4gICAgICAgICAgICBpZiAoZmlsZVBhdGggIT0gbnVsbCAmJiAoYXdhaXQgcGF0aEV4aXN0cyhmaWxlUGF0aCkpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBGaWxlU3RyZWFtUmVzdWx0KGZpbGVQYXRoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRocm93IG5ldyBOb3RGb3VuZFdlYkVycm9yKFwiRmlsZSBub3QgZm91bmRcIiwgZmFsc2UpO1xuICAgIH1cblxuICAgIEBodHRwR2V0KFwiL21lcmdlcnNcIiwgaHR0cFJldHVybi5QbGFpblRleHQpXG4gICAgcHVibGljIGFzeW5jIGdldEFsbE1lcmdlcnNGaWxlcygpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgICAgICByZXR1cm4gKGF3YWl0IFByb21pc2UuYWxsKHRoaXMuYWxsRmFybURpcmVjdG9yaWVzLmZsYXRNYXAoeCA9PiB4LmdldEFsbE1lcmdlcnNGaWxlUGF0aHMoKSkpKVxuICAgICAgICAgICAgLmZsYXQoKVxuICAgICAgICAgICAgLm1hcCh4ID0+IHBhdGguYmFzZW5hbWUoeCkpXG4gICAgICAgICAgICAuam9pbihcIlxcblwiKTtcbiAgICB9XG5cbiAgICBAaHR0cEdldChcIi9tZXJnZXJzLzpmaWxlbmFtZVwiLCBodHRwUmV0dXJuLlN0cmVhbSwgaHR0cFVybFBhcmFtKFwiZmlsZW5hbWVcIiwgaHR0cFR5cGUuU3RyaW5nKSlcbiAgICBwdWJsaWMgYXN5bmMgZ2V0TWVyZ2VyRmlsZShmaWxlbmFtZTogc3RyaW5nKTogUHJvbWlzZTxGaWxlU3RyZWFtUmVzdWx0PiB7XG4gICAgICAgIGZvciAoY29uc3QgZmFybURpcmVjdG9yeSBvZiB0aGlzLmFsbEZhcm1EaXJlY3Rvcmllcykge1xuICAgICAgICAgICAgY29uc3QgZmlsZVBhdGggPSBhd2FpdCBmYXJtRGlyZWN0b3J5LmdldE1lcmdlcnNGaWxlUGF0aEJ5RmlsZU5hbWVPclVuZGVmaW5lZChmaWxlbmFtZSk7XG4gICAgICAgICAgICBpZiAoZmlsZVBhdGggIT0gbnVsbCAmJiAoYXdhaXQgcGF0aEV4aXN0cyhmaWxlUGF0aCkpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBGaWxlU3RyZWFtUmVzdWx0KGZpbGVQYXRoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRocm93IG5ldyBOb3RGb3VuZFdlYkVycm9yKFwiRmlsZSBub3QgZm91bmRcIiwgZmFsc2UpO1xuICAgIH1cblxuICAgIEBodHRwR2V0KFwiL3NjaGVtYXNcIiwgaHR0cFJldHVybi5QbGFpblRleHQpXG4gICAgcHVibGljIGFzeW5jIGdldEFsbFNjaGVtYXNGaWxlcygpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgICAgICBpZiAodGhpcy5hbGxTY2hlbWFzRmlsZXMgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdGhpcy5hbGxTY2hlbWFzRmlsZXMgPSAoYXdhaXQgUHJvbWlzZS5hbGwodGhpcy5hbGxGYXJtRGlyZWN0b3JpZXMuZmxhdE1hcCh4ID0+IHguZ2V0QWxsU2NoZW1hc0ZpbGVQYXRocygpKSkpXG4gICAgICAgICAgICAgICAgLmZsYXQoKVxuICAgICAgICAgICAgICAgIC5tYXAoeCA9PiBwYXRoLmJhc2VuYW1lKHgpKVxuICAgICAgICAgICAgICAgIC5qb2luKFwiXFxuXCIpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMucmVzZXRBbGxTY2hlbWFGaWxlc0RlYm91bmNlZCgpO1xuICAgICAgICByZXR1cm4gdGhpcy5hbGxTY2hlbWFzRmlsZXM7XG4gICAgfVxuXG4gICAgQGh0dHBHZXQoXCIvc2NoZW1hcy86ZmlsZW5hbWVcIiwgaHR0cFJldHVybi5TdHJlYW0sIGh0dHBVcmxQYXJhbShcImZpbGVuYW1lXCIsIGh0dHBUeXBlLlN0cmluZykpXG4gICAgcHVibGljIGFzeW5jIGdldEZvcm1TY2hlbWFzKGZpbGVuYW1lOiBzdHJpbmcpOiBQcm9taXNlPEZpbGVTdHJlYW1SZXN1bHQ+IHtcbiAgICAgICAgZm9yIChjb25zdCBmYXJtRGlyZWN0b3J5IG9mIHRoaXMuYWxsRmFybURpcmVjdG9yaWVzKSB7XG4gICAgICAgICAgICBjb25zdCBmaWxlUGF0aCA9IGF3YWl0IGZhcm1EaXJlY3RvcnkuZ2V0U2NoZW1hRmlsZVBhdGhCeUZpbGVOYW1lT3JVbmRlZmluZWQoZmlsZW5hbWUpO1xuICAgICAgICAgICAgaWYgKGZpbGVQYXRoICE9IG51bGwgJiYgKGF3YWl0IHBhdGhFeGlzdHMoZmlsZVBhdGgpKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBuZXcgRmlsZVN0cmVhbVJlc3VsdChmaWxlUGF0aCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0aHJvdyBuZXcgTm90Rm91bmRXZWJFcnJvcihcIkZpbGUgbm90IGZvdW5kXCIsIGZhbHNlKTtcbiAgICB9XG5cbiAgICBAaHR0cEdldChcIi9wcmVzZW50YXRpb25zXCIsIGh0dHBSZXR1cm4uUGxhaW5UZXh0KVxuICAgIHB1YmxpYyBhc3luYyBnZXRBbGxGb3JtUHJlc2VudGF0aW9ucygpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgICAgICByZXR1cm4gKGF3YWl0IFByb21pc2UuYWxsKHRoaXMuYWxsRmFybURpcmVjdG9yaWVzLmZsYXRNYXAoeCA9PiB4LmdldEFsbFByZXNlbnRhdGlvbnNGaWxlTmFtZXMoKSkpKVxuICAgICAgICAgICAgLmZsYXQoKVxuICAgICAgICAgICAgLm1hcCh4ID0+IHBhdGguYmFzZW5hbWUoeCkpXG4gICAgICAgICAgICAuam9pbihcIlxcblwiKTtcbiAgICB9XG5cbiAgICBAaHR0cEdldChcIi9wcmVzZW50YXRpb25zLzpnZnYucHJlc2VudGF0aW9ucy5qc29uXCIsIGh0dHBSZXR1cm4uU3RyZWFtLCBodHRwVXJsUGFyYW0oXCJnZnZcIiwgaHR0cFR5cGUuU3RyaW5nKSlcbiAgICBwdWJsaWMgYXN5bmMgZ2V0Rm9ybVByZXNlbnRhdGlvbnMoZ2Z2OiBzdHJpbmcpOiBQcm9taXNlPEZpbGVTdHJlYW1SZXN1bHQ+IHtcbiAgICAgICAgZm9yIChjb25zdCBmYXJtRGlyZWN0b3J5IG9mIHRoaXMuYWxsRmFybURpcmVjdG9yaWVzKSB7XG4gICAgICAgICAgICBjb25zdCBmaWxlUGF0aCA9IGF3YWl0IGZhcm1EaXJlY3RvcnkuZ2V0UHJlc2VudGF0aW9uc0ZpbGVQYXRoQnlHZnZPclVuZGVmaW5lZChnZnYpO1xuICAgICAgICAgICAgaWYgKGZpbGVQYXRoICE9IG51bGwgJiYgKGF3YWl0IHBhdGhFeGlzdHMoZmlsZVBhdGgpKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBuZXcgRmlsZVN0cmVhbVJlc3VsdChmaWxlUGF0aCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0aHJvdyBuZXcgTm90Rm91bmRXZWJFcnJvcihcIkZpbGUgbm90IGZvdW5kXCIsIGZhbHNlKTtcbiAgICB9XG5cbiAgICBAaHR0cEdldChcIi9ub3JtYWxpemVcIiwgaHR0cFJldHVybi5QbGFpblRleHQpXG4gICAgcHVibGljIGFzeW5jIGdldEFsbE5vcm1hbGl6ZUZpbGVzKCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgICAgIGNvbnN0IGZpbGVzID0gKGF3YWl0IFByb21pc2UuYWxsKHRoaXMuYWxsRmFybURpcmVjdG9yaWVzLmZsYXRNYXAoeCA9PiB4LmdldEFsbE5vcm1hbGl6ZUZpbGVQYXRocygpKSkpLmZsYXQoKTtcbiAgICAgICAgY29uc3QgZmxhbmdGaWxlcyA9IGF3YWl0IHRoaXMuZ2VuZXJhdGVkU2VydmVyU2lkZVNvdXJjZXNQcm92aWRlci5nZXRBbGxOb3JtYWxpemF0aW9uRmlsZU5hbWVzKCk7XG4gICAgICAgIHJldHVybiBbLi4uZmlsZXMubWFwKHggPT4gcGF0aC5iYXNlbmFtZSh4KSksIC4uLmZsYW5nRmlsZXNdLmpvaW4oXCJcXG5cIik7XG4gICAgfVxuXG4gICAgQGh0dHBHZXQoXCIvbm9ybWFsaXplLzpnZnYueG1sXCIsIGh0dHBSZXR1cm4uU3RyZWFtLCBodHRwVXJsUGFyYW0oXCJnZnZcIiwgaHR0cFR5cGUuU3RyaW5nKSlcbiAgICBwdWJsaWMgYXN5bmMgZ2V0Tm9ybWFsaXplRmlsZShnZnY6IHN0cmluZyk6IFByb21pc2U8RmlsZVN0cmVhbVJlc3VsdD4ge1xuICAgICAgICBmb3IgKGNvbnN0IGZhcm1EaXJlY3Rvcnkgb2YgdGhpcy5hbGxGYXJtRGlyZWN0b3JpZXMpIHtcbiAgICAgICAgICAgIGNvbnN0IGZpbGVQYXRoID0gYXdhaXQgZmFybURpcmVjdG9yeS5nZXROb3JtYWxpemVGaWxlUGF0aEJ5RmlsZU5hbWVPclVuZGVmaW5lZChgJHtnZnZ9LnhtbGApO1xuICAgICAgICAgICAgaWYgKGZpbGVQYXRoICE9IG51bGwgJiYgKGF3YWl0IHBhdGhFeGlzdHMoZmlsZVBhdGgpKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBuZXcgRmlsZVN0cmVhbVJlc3VsdChmaWxlUGF0aCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0aHJvdyBuZXcgTm90Rm91bmRXZWJFcnJvcihcIkZpbGUgbm90IGZvdW5kXCIsIGZhbHNlKTtcbiAgICB9XG5cbiAgICBAaHR0cEdldChcIi9ub3JtYWxpemUvOmdmdi5ub3JtYWxpemVcIiwgaHR0cFJldHVybi5TdHJlYW0sIGh0dHBVcmxQYXJhbShcImdmdlwiLCBodHRwVHlwZS5TdHJpbmcpKVxuICAgIHB1YmxpYyBhc3luYyBnZXRGTGFuZ05vcm1hbGl6ZUZpbGUoZ2Z2OiBzdHJpbmcpOiBQcm9taXNlPFN0cmVhbVJlc3VsdD4ge1xuICAgICAgICByZXR1cm4gbmV3IFN0cmVhbVJlc3VsdChhd2FpdCB0aGlzLmdlbmVyYXRlZFNlcnZlclNpZGVTb3VyY2VzUHJvdmlkZXIuZ2V0Tm9ybWFsaXphdGlvbkZpbGVDb250ZW50KGdmdikpO1xuICAgIH1cblxuICAgIEBodHRwR2V0KFwiL2F0dGFjaG1lbnRwYXRoc1wiLCBodHRwUmV0dXJuLlBsYWluVGV4dClcbiAgICBwdWJsaWMgYXN5bmMgZ2V0QWxsQXR0YWNobWVudFBhdGhzRmlsZU5hbWVzKCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgICAgIGNvbnN0IGZsYW5nRmlsZXMgPSBhd2FpdCB0aGlzLmdlbmVyYXRlZFNlcnZlclNpZGVTb3VyY2VzUHJvdmlkZXIuZ2V0QWxsQXR0YWNobWVudFBhdGhGaWxlTmFtZXMoKTtcbiAgICAgICAgcmV0dXJuIGZsYW5nRmlsZXMuam9pbihcIlxcblwiKTtcbiAgICB9XG5cbiAgICBAaHR0cEdldChcIi9hdHRhY2htZW50cGF0aHMvOmdmdi5qc29uXCIsIGh0dHBSZXR1cm4uU3RyZWFtLCBodHRwVXJsUGFyYW0oXCJnZnZcIiwgaHR0cFR5cGUuU3RyaW5nKSlcbiAgICBwdWJsaWMgYXN5bmMgZ2V0QXR0YWNobWVudFBhdGhGaWxlKGdmdjogc3RyaW5nKTogUHJvbWlzZTxTdHJlYW1SZXN1bHQ+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBTdHJlYW1SZXN1bHQoYXdhaXQgdGhpcy5nZW5lcmF0ZWRTZXJ2ZXJTaWRlU291cmNlc1Byb3ZpZGVyLmdldEF0dGFjaG1lbnRQYXRoc0ZpbGVDb250ZW50KGdmdikpO1xuICAgIH1cblxuICAgIEBodHRwR2V0KFwiL3VubWFwXCIsIGh0dHBSZXR1cm4uUGxhaW5UZXh0KVxuICAgIHB1YmxpYyBhc3luYyBnZXRBbGxVbm1hcEZpbGVzKCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgICAgIHJldHVybiAoYXdhaXQgUHJvbWlzZS5hbGwodGhpcy5hbGxGYXJtRGlyZWN0b3JpZXMuZmxhdE1hcCh4ID0+IHguZ2V0QWxsVW5tYXBGaWxlUGF0aHMoKSkpKVxuICAgICAgICAgICAgLmZsYXQoKVxuICAgICAgICAgICAgLm1hcCh4ID0+IHBhdGguYmFzZW5hbWUoeCkpXG4gICAgICAgICAgICAuam9pbihcIlxcblwiKTtcbiAgICB9XG5cbiAgICBAaHR0cEdldChcIi91bm1hcC86ZmlsZW5hbWVcIiwgaHR0cFJldHVybi5TdHJlYW0sIGh0dHBVcmxQYXJhbShcImZpbGVuYW1lXCIsIGh0dHBUeXBlLlN0cmluZykpXG4gICAgcHVibGljIGFzeW5jIGdldFVubWFwRmlsZShmaWxlbmFtZTogc3RyaW5nKTogUHJvbWlzZTxGaWxlU3RyZWFtUmVzdWx0PiB7XG4gICAgICAgIGZvciAoY29uc3QgZmFybURpcmVjdG9yeSBvZiB0aGlzLmFsbEZhcm1EaXJlY3Rvcmllcykge1xuICAgICAgICAgICAgY29uc3QgZmlsZVBhdGggPSBhd2FpdCBmYXJtRGlyZWN0b3J5LmdldFVubWFwRmlsZVBhdGhCeUZpbGVOYW1lT3JVbmRlZmluZWQoZmlsZW5hbWUpO1xuICAgICAgICAgICAgaWYgKGZpbGVQYXRoICE9IG51bGwgJiYgKGF3YWl0IHBhdGhFeGlzdHMoZmlsZVBhdGgpKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBuZXcgRmlsZVN0cmVhbVJlc3VsdChmaWxlUGF0aCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0aHJvdyBuZXcgTm90Rm91bmRXZWJFcnJvcihcIkZpbGUgbm90IGZvdW5kXCIsIGZhbHNlKTtcbiAgICB9XG5cbiAgICBAaHR0cEdldChcIi9tYXBcIiwgaHR0cFJldHVybi5QbGFpblRleHQpXG4gICAgcHVibGljIGFzeW5jIGdldEFsbE1hcEZpbGVzKCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgICAgIHJldHVybiAoYXdhaXQgUHJvbWlzZS5hbGwodGhpcy5hbGxGYXJtRGlyZWN0b3JpZXMuZmxhdE1hcCh4ID0+IHguZ2V0QWxsTWFwRmlsZVBhdGhzKCkpKSlcbiAgICAgICAgICAgIC5mbGF0KClcbiAgICAgICAgICAgIC5tYXAoeCA9PiBwYXRoLmJhc2VuYW1lKHgpKVxuICAgICAgICAgICAgLmpvaW4oXCJcXG5cIik7XG4gICAgfVxuXG4gICAgQGh0dHBHZXQoXCIvbWFwLzpmaWxlbmFtZVwiLCBodHRwUmV0dXJuLlN0cmVhbSwgaHR0cFVybFBhcmFtKFwiZmlsZW5hbWVcIiwgaHR0cFR5cGUuU3RyaW5nKSlcbiAgICBwdWJsaWMgYXN5bmMgZ2V0TWFwRmlsZShmaWxlbmFtZTogc3RyaW5nKTogUHJvbWlzZTxGaWxlU3RyZWFtUmVzdWx0PiB7XG4gICAgICAgIGZvciAoY29uc3QgZmFybURpcmVjdG9yeSBvZiB0aGlzLmFsbEZhcm1EaXJlY3Rvcmllcykge1xuICAgICAgICAgICAgY29uc3QgZmlsZVBhdGggPSBhd2FpdCBmYXJtRGlyZWN0b3J5LmdldE1hcEZpbGVQYXRoQnlGaWxlTmFtZU9yVW5kZWZpbmVkKGZpbGVuYW1lKTtcbiAgICAgICAgICAgIGlmIChmaWxlUGF0aCAhPSBudWxsICYmIChhd2FpdCBwYXRoRXhpc3RzKGZpbGVQYXRoKSkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IEZpbGVTdHJlYW1SZXN1bHQoZmlsZVBhdGgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGhyb3cgbmV3IE5vdEZvdW5kV2ViRXJyb3IoXCJGaWxlIG5vdCBmb3VuZFwiLCBmYWxzZSk7XG4gICAgfVxuXG4gICAgQGh0dHBHZXQoXCIvcGF0Y2hcIiwgaHR0cFJldHVybi5QbGFpblRleHQpXG4gICAgcHVibGljIGFzeW5jIGdldEFsbFBhdGNoRmlsZXMoKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICAgICAgcmV0dXJuIChhd2FpdCBQcm9taXNlLmFsbCh0aGlzLmFsbEZhcm1EaXJlY3Rvcmllcy5mbGF0TWFwKHggPT4geC5nZXRBbGxQYXRjaEZpbGVQYXRocygpKSkpXG4gICAgICAgICAgICAuZmxhdCgpXG4gICAgICAgICAgICAubWFwKHggPT4gcGF0aC5iYXNlbmFtZSh4KSlcbiAgICAgICAgICAgIC5qb2luKFwiXFxuXCIpO1xuICAgIH1cblxuICAgIEBodHRwR2V0KFwiL3BhdGNoLzpmaWxlbmFtZVwiLCBodHRwUmV0dXJuLlN0cmVhbSwgaHR0cFVybFBhcmFtKFwiZ2Z2XCIsIGh0dHBUeXBlLlN0cmluZykpXG4gICAgcHVibGljIGFzeW5jIGdldFBhdGNoRmlsZShmaWxlbmFtZTogc3RyaW5nKTogUHJvbWlzZTxGaWxlU3RyZWFtUmVzdWx0PiB7XG4gICAgICAgIGZvciAoY29uc3QgZmFybURpcmVjdG9yeSBvZiB0aGlzLmFsbEZhcm1EaXJlY3Rvcmllcykge1xuICAgICAgICAgICAgY29uc3QgZmlsZVBhdGggPSBhd2FpdCBmYXJtRGlyZWN0b3J5LmdldFBhdGNoRmlsZVBhdGhCeUZpbGVOYW1lT3JVbmRlZmluZWQoZmlsZW5hbWUpO1xuICAgICAgICAgICAgaWYgKGZpbGVQYXRoICE9IG51bGwgJiYgKGF3YWl0IHBhdGhFeGlzdHMoZmlsZVBhdGgpKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBuZXcgRmlsZVN0cmVhbVJlc3VsdChmaWxlUGF0aCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0aHJvdyBuZXcgTm90Rm91bmRXZWJFcnJvcihcIkZpbGUgbm90IGZvdW5kXCIsIGZhbHNlKTtcbiAgICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsSUFBQUEsR0FBQSxHQUFBQyxPQUFBO0FBQ0EsSUFBQUMsSUFBQSxHQUFBQyx1QkFBQSxDQUFBRixPQUFBO0FBRUEsSUFBQUcsUUFBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksT0FBQSxHQUFBSixPQUFBO0FBR0EsSUFBQUssUUFBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0saUJBQUEsR0FBQU4sT0FBQTtBQUNBLElBQUFPLE9BQUEsR0FBQVAsT0FBQTtBQUNBLElBQUFRLFFBQUEsR0FBQVIsT0FBQTtBQUNBLElBQUFTLG9CQUFBLEdBQUFULE9BQUE7QUFJQSxJQUFBVSxvQkFBQSxHQUFBVixPQUFBO0FBR0EsSUFBQVcsY0FBQSxHQUFBWCxPQUFBO0FBQTRELElBQUFZLElBQUEsRUFBQUMsS0FBQSxFQUFBQyxLQUFBLEVBQUFDLEtBQUEsRUFBQUMsS0FBQSxFQUFBQyxLQUFBLEVBQUFDLEtBQUEsRUFBQUMsS0FBQSxFQUFBQyxLQUFBLEVBQUFDLE1BQUEsRUFBQUMsTUFBQSxFQUFBQyxNQUFBLEVBQUFDLE1BQUEsRUFBQUMsTUFBQSxFQUFBQyxNQUFBLEVBQUFDLE1BQUEsRUFBQUMsTUFBQSxFQUFBQyxNQUFBLEVBQUFDLE1BQUEs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
@@ -17,7 +17,7 @@ var _SingletonController = require("../../../Commons/HttpServer/ExpressWrapper/S
17
17
  var _WellKnownDirectories = require("../../../../../Common/WellKnownDirectories");
18
18
  var _GlobToRegexp = require("./GlobToRegexp");
19
19
  var _dec, _class;
20
- let BuildServerBackendResourcesUpdatesController = exports.BuildServerBackendResourcesUpdatesController = (_dec = (0, _Methods.httpGet)("/updates-observer/check-last-update-long-poll", _Results.httpReturn.PlainText, (0, _Params.httpQueryParam)("prevLastUpdate", _Params.httpType.Number)), (_class = class BuildServerBackendResourcesUpdatesController extends _SingletonController.SingletonController {
20
+ let BuildServerBackendResourcesUpdatesController = (_dec = (0, _Methods.httpGet)("/updates-observer/check-last-update-long-poll", _Results.httpReturn.PlainText, (0, _Params.httpQueryParam)("prevLastUpdate", _Params.httpType.Number)), (_class = class BuildServerBackendResourcesUpdatesController extends _SingletonController.SingletonController {
21
21
  constructor(allFarmConfig) {
22
22
  super();
23
23
  this.lastUpdateTime = 0;
@@ -78,11 +78,12 @@ let BuildServerBackendResourcesUpdatesController = exports.BuildServerBackendRes
78
78
  }
79
79
  async afterStop() {
80
80
  var _this$farmWatchers, _this$formWatchers, _this$resourcesWatche;
81
- (_this$farmWatchers = this.farmWatchers) === null || _this$farmWatchers === void 0 || _this$farmWatchers.map(i => i.close());
82
- (_this$formWatchers = this.formWatchers) === null || _this$formWatchers === void 0 || _this$formWatchers.map(i => i.close());
83
- (_this$resourcesWatche = this.resourcesWatcher) === null || _this$resourcesWatche === void 0 || _this$resourcesWatche.close();
81
+ (_this$farmWatchers = this.farmWatchers) === null || _this$farmWatchers === void 0 ? void 0 : _this$farmWatchers.map(i => i.close());
82
+ (_this$formWatchers = this.formWatchers) === null || _this$formWatchers === void 0 ? void 0 : _this$formWatchers.map(i => i.close());
83
+ (_this$resourcesWatche = this.resourcesWatcher) === null || _this$resourcesWatche === void 0 ? void 0 : _this$resourcesWatche.close();
84
84
  }
85
85
  }, ((0, _applyDecoratedDescriptor2.default)(_class.prototype, "getLastUpdateTime", [_dec], Object.getOwnPropertyDescriptor(_class.prototype, "getLastUpdateTime"), _class.prototype)), _class));
86
+ exports.BuildServerBackendResourcesUpdatesController = BuildServerBackendResourcesUpdatesController;
86
87
  class Monitor {
87
88
  constructor() {
88
89
  this.awaiters = [];
@@ -101,4 +102,4 @@ class Monitor {
101
102
  }
102
103
  }
103
104
  }
104
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZnMiLCJyZXF1aXJlIiwiX3BhdGgiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX2xvZGFzaCIsIl9Bc3luY1V0aWxzIiwiX01ldGhvZHMiLCJfUGFyYW1zIiwiX1Jlc3VsdHMiLCJfU2luZ2xldG9uQ29udHJvbGxlciIsIl9XZWxsS25vd25EaXJlY3RvcmllcyIsIl9HbG9iVG9SZWdleHAiLCJfZGVjIiwiX2NsYXNzIiwiQnVpbGRTZXJ2ZXJCYWNrZW5kUmVzb3VyY2VzVXBkYXRlc0NvbnRyb2xsZXIiLCJleHBvcnRzIiwiaHR0cEdldCIsImh0dHBSZXR1cm4iLCJQbGFpblRleHQiLCJodHRwUXVlcnlQYXJhbSIsImh0dHBUeXBlIiwiTnVtYmVyIiwiU2luZ2xldG9uQ29udHJvbGxlciIsImNvbnN0cnVjdG9yIiwiYWxsRmFybUNvbmZpZyIsImxhc3RVcGRhdGVUaW1lIiwidXBkYXRlTW9uaXRvciIsIk1vbml0b3IiLCJmYXJtV2F0Y2hlcnMiLCJmb3JtV2F0Y2hlcnMiLCJyZXNvdXJjZXNXYXRjaGVyIiwiZmFybVdhdGNoaW5nUmVnZXhwcyIsIldlbGxLbm93bkRpcmVjdG9yaWVzIiwiRm9ybUpzb25GaWxlTmFtZSIsIm1hcCIsImdsb2JUb1JlZ2V4cCIsImZvcm1zV2F0Y2hpbmdSZWdleHBzIiwiQ2FuZHlTdWJkaXJlY3RvcnlOYW1lIiwiaGFuZGxlRmFybUZTVXBkYXRlIiwiZXZlbnRUeXBlIiwiZmlsZVBhdGgiLCJyb290RGlyIiwic29tZSIsIngiLCJ0ZXN0Iiwic3RhdCIsInBhdGgiLCJqb2luIiwiZXJyIiwiZmlsZVN0YXQiLCJmaWxlVGlja3MiLCJNYXRoIiwibWF4IiwibXRpbWVNcyIsImN0aW1lTXMiLCJEYXRlIiwibm93IiwicHVsc2VBbGwiLCJoYW5kbGVGb3JtRlNVcGRhdGUiLCJiZWZvcmVTdGFydCIsImNvbmZpZyIsIndhdGNoIiwiZmFybURpcmVjdG9yeSIsInJlY3Vyc2l2ZSIsIl8iLCJkZWJvdW5jZSIsInkiLCJmb3JtUm9vdERpcmVjdG9yeSIsIm5vcm1hbGl6ZSIsImdldExhc3RVcGRhdGVUaW1lIiwicHJldkxhc3RVcGRhdGVUaW1lIiwidW5kZWZpbmVkIiwidG9TdHJpbmciLCJQcm9taXNlIiwicmFjZSIsIndhaXQiLCJkZWxheSIsImFmdGVyU3RvcCIsIl90aGlzJGZhcm1XYXRjaGVycyIsIl90aGlzJGZvcm1XYXRjaGVycyIsIl90aGlzJHJlc291cmNlc1dhdGNoZSIsImkiLCJjbG9zZSIsIl9hcHBseURlY29yYXRlZERlc2NyaXB0b3IyIiwiZGVmYXVsdCIsInByb3RvdHlwZSIsIk9iamVjdCIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImF3YWl0ZXJzIiwid2FpdFByb21pc2VIYW5kbGVyIiwicmVzb2x2ZSIsInB1c2giLCJhd2FpdGVyIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL0NMSUNvbW1hbmRzL0J1aWxkU2VydmVyL1Jlc291cmNlc0NvbnRyb2xsZXJzL0J1aWxkU2VydmVyQmFja2VuZFJlc291cmNlc1VwZGF0ZXNDb250cm9sbGVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZTV2F0Y2hlciwgd2F0Y2gsIHN0YXQgfSBmcm9tIFwiZnNcIjtcbmltcG9ydCBwYXRoIGZyb20gXCJwYXRoXCI7XG5cbmltcG9ydCBfIGZyb20gXCJsb2Rhc2hcIjtcbmltcG9ydCB7IEZhcm1Db25maWcgfSBmcm9tIFwiVG9vbHMvc3JjL0NhbmR5Q0xJXCI7XG5cbmltcG9ydCB7IGRlbGF5IH0gZnJvbSBcIi4uLy4uLy4uLy4uLy4uL0NvbW1vbi9Bc3luY1V0aWxzXCI7XG5pbXBvcnQgeyBodHRwR2V0IH0gZnJvbSBcIi4uLy4uLy4uL0NvbW1vbnMvSHR0cFNlcnZlci9BdHRyaWJ1dGVSb3V0aW5nL01ldGhvZHNcIjtcbmltcG9ydCB7IGh0dHBRdWVyeVBhcmFtLCBodHRwVHlwZSB9IGZyb20gXCIuLi8uLi8uLi9Db21tb25zL0h0dHBTZXJ2ZXIvQXR0cmlidXRlUm91dGluZy9QYXJhbXNcIjtcbmltcG9ydCB7IGh0dHBSZXR1cm4gfSBmcm9tIFwiLi4vLi4vLi4vQ29tbW9ucy9IdHRwU2VydmVyL0F0dHJpYnV0ZVJvdXRpbmcvUmVzdWx0c1wiO1xuaW1wb3J0IHsgU2luZ2xldG9uQ29udHJvbGxlciB9IGZyb20gXCIuLi8uLi8uLi9Db21tb25zL0h0dHBTZXJ2ZXIvRXhwcmVzc1dyYXBwZXIvU2luZ2xldG9uQ29udHJvbGxlclwiO1xuaW1wb3J0IHsgV2VsbEtub3duRGlyZWN0b3JpZXMgfSBmcm9tIFwiLi4vLi4vLi4vLi4vLi4vQ29tbW9uL1dlbGxLbm93bkRpcmVjdG9yaWVzXCI7XG5cbmltcG9ydCB7IGdsb2JUb1JlZ2V4cCB9IGZyb20gXCIuL0dsb2JUb1JlZ2V4cFwiO1xuXG5leHBvcnQgY2xhc3MgQnVpbGRTZXJ2ZXJCYWNrZW5kUmVzb3VyY2VzVXBkYXRlc0NvbnRyb2xsZXIgZXh0ZW5kcyBTaW5nbGV0b25Db250cm9sbGVyIHtcbiAgICBwcml2YXRlIGxhc3RVcGRhdGVUaW1lID0gMDtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHVwZGF0ZU1vbml0b3I6IE1vbml0b3IgPSBuZXcgTW9uaXRvcigpO1xuICAgIHByaXZhdGUgZmFybVdhdGNoZXJzPzogRlNXYXRjaGVyW107XG4gICAgcHJpdmF0ZSBmb3JtV2F0Y2hlcnM/OiBGU1dhdGNoZXJbXTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlc291cmNlc1dhdGNoZXI/OiBGU1dhdGNoZXI7XG4gICAgcHJpdmF0ZSByZWFkb25seSBhbGxGYXJtQ29uZmlnOiBGYXJtQ29uZmlnW107XG4gICAgcHJpdmF0ZSByZWFkb25seSBmYXJtV2F0Y2hpbmdSZWdleHBzID0gW1xuICAgICAgICBcImZvcm1zLyovc2NoZW1hcy8qLnJuZy54bWxcIixcbiAgICAgICAgXCJmb3Jtcy8qL2NvbnZlcnRlcnMvKlwiLFxuICAgICAgICBcImZvcm1zLyovbWVyZ2Vycy8qXCIsXG4gICAgICAgIC8vIE5PVEUg0KLRg9GCINGC0LDQutC+0LUg0LTQtdC70L46INC/0L7Rh9C10LzRgy3RgtC+INC40L3QvtCz0LTQsCAo0LjQvdC+0LPQtNCwLCDRgtC+INC10YHRgtGMINC90LUg0LLRgdC10LPQtNCwISksINC60L7Qs9C00LAg0L3QsNC8INC/0YDQuNGF0L7QtNC40YIg0LfQsNC/0YDQvtGBINC90LBcbiAgICAgICAgLy8gZm9ybXMvKi9wcmVzZW50YXRpb25zLmpzb24g0LIg0Y3RgtC+0Lwg0LrQu9Cw0YHRgdC1INCy0L7Qt9C90LjQutCw0LXRgiDRgdC+0LHRi9GC0LjQtSDQvtCxINC40LfQvNC10L3QuNC4INGN0YLQvtCz0L4g0YTQsNC50LvQsCDQuCDQvNGLINCz0LXQvdC10YDQuNC8INC+0YfQtdC90Ywg0LzQvdC+0LPQvlxuICAgICAgICAvLyDQu9C40YjQvdC40YUg0YHQvtCx0YvRgtC40Lkg0L7QsSDQuNC30LzQtdC90LjQuCDRgNC10YHRg9GA0YHQvtCyINC4IENhbmR5QXBpINC30LDQstC40YHQsNC10YIuINCvINC/0L7QutCwINC90LUg0YHQvNC+0LMg0YDQsNC30L7QsdGA0LDRgtGM0YHRjyDQv9C+0YfQtdC80YMg0Y3RgtC+INGC0LDQui5cbiAgICAgICAgLy8gXCJmb3Jtcy8qL3ByZXNlbnRhdGlvbnMuanNvblwiLFxuICAgICAgICBgZm9ybXMvKi8ke1dlbGxLbm93bkRpcmVjdG9yaWVzLkZvcm1Kc29uRmlsZU5hbWV9YCxcbiAgICAgICAgXCJmb3Jtcy8qL3N1Z2FyLyoueG1sXCIsXG4gICAgICAgIFwiZm9ybXMvKi9ub3JtYWxpemUvKi54bWxcIixcbiAgICAgICAgXCJmb3Jtcy8qL3VubWFwLyoueG1sXCIsXG4gICAgICAgIFwiZm9ybXMvKi9tYXAvKi54bWxcIixcbiAgICAgICAgXCJmb3Jtcy8qL3BhdGNoLyoueHNsdFwiLFxuICAgICAgICBcInBpY2tsaXN0cy8qXCIsXG4gICAgXS5tYXAoZ2xvYlRvUmVnZXhwKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGZvcm1zV2F0Y2hpbmdSZWdleHBzID0gW1xuICAgICAgICBgZm9ybXMvKiovJHtXZWxsS25vd25EaXJlY3Rvcmllcy5DYW5keVN1YmRpcmVjdG9yeU5hbWV9L3NjaGVtYXMvKi5ybmcueG1sYCxcbiAgICAgICAgYGZvcm1zLyoqLyR7V2VsbEtub3duRGlyZWN0b3JpZXMuQ2FuZHlTdWJkaXJlY3RvcnlOYW1lfS9jb252ZXJ0ZXJzLypgLFxuICAgICAgICBgZm9ybXMvKiovJHtXZWxsS25vd25EaXJlY3Rvcmllcy5DYW5keVN1YmRpcmVjdG9yeU5hbWV9L21lcmdlcnMvKmAsXG4gICAgICAgIGBmb3Jtcy8qKi8ke1dlbGxLbm93bkRpcmVjdG9yaWVzLkNhbmR5U3ViZGlyZWN0b3J5TmFtZX0vcHJlc2VudGF0aW9ucy5qc29uYCxcbiAgICAgICAgYGZvcm1zLyoqLyR7V2VsbEtub3duRGlyZWN0b3JpZXMuQ2FuZHlTdWJkaXJlY3RvcnlOYW1lfS8ke1dlbGxLbm93bkRpcmVjdG9yaWVzLkZvcm1Kc29uRmlsZU5hbWV9YCxcbiAgICAgICAgYGZvcm1zLyoqLyR7V2VsbEtub3duRGlyZWN0b3JpZXMuQ2FuZHlTdWJkaXJlY3RvcnlOYW1lfS9zdWdhci8qLnhtbGAsXG4gICAgICAgIGBmb3Jtcy8qKi8ke1dlbGxLbm93bkRpcmVjdG9yaWVzLkNhbmR5U3ViZGlyZWN0b3J5TmFtZX0vbm9ybWFsaXplLyoueG1sYCxcbiAgICAgICAgYGZvcm1zLyoqLyR7V2VsbEtub3duRGlyZWN0b3JpZXMuQ2FuZHlTdWJkaXJlY3RvcnlOYW1lfS91bm1hcC8qLnhtbGAsXG4gICAgICAgIGBmb3Jtcy8qKi8ke1dlbGxLbm93bkRpcmVjdG9yaWVzLkNhbmR5U3ViZGlyZWN0b3J5TmFtZX0vbWFwLyoueG1sYCxcbiAgICAgICAgYGZvcm1zLyoqLyR7V2VsbEtub3duRGlyZWN0b3JpZXMuQ2FuZHlTdWJkaXJlY3RvcnlOYW1lfS9wYXRjaC8qLnhzbHRgLFxuICAgIF0ubWFwKGdsb2JUb1JlZ2V4cCk7XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IoYWxsRmFybUNvbmZpZzogRmFybUNvbmZpZ1tdKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIHRoaXMuYWxsRmFybUNvbmZpZyA9IGFsbEZhcm1Db25maWc7XG4gICAgICAgIHRoaXMubGFzdFVwZGF0ZVRpbWUgPSBEYXRlLm5vdygpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBiZWZvcmVTdGFydCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgdGhpcy5mYXJtV2F0Y2hlcnMgPSB0aGlzLmFsbEZhcm1Db25maWcubWFwKGNvbmZpZyA9PlxuICAgICAgICAgICAgd2F0Y2goXG4gICAgICAgICAgICAgICAgY29uZmlnLmZhcm1EaXJlY3RvcnksXG4gICAgICAgICAgICAgICAgeyByZWN1cnNpdmU6IHRydWUgfSxcbiAgICAgICAgICAgICAgICBfLmRlYm91bmNlKCh4OiBzdHJpbmcsIHk6IHN0cmluZykgPT4gdGhpcy5oYW5kbGVGYXJtRlNVcGRhdGUoeCwgeSwgY29uZmlnLmZhcm1EaXJlY3RvcnkpLCAyMDApXG4gICAgICAgICAgICApXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuZm9ybVdhdGNoZXJzID0gdGhpcy5hbGxGYXJtQ29uZmlnLm1hcChjb25maWcgPT4ge1xuICAgICAgICAgICAgY29uc3QgZm9ybVJvb3REaXJlY3RvcnkgPSBwYXRoLm5vcm1hbGl6ZShwYXRoLmpvaW4oY29uZmlnLmZhcm1EaXJlY3RvcnksIFwiLi5cIikpO1xuICAgICAgICAgICAgcmV0dXJuIHdhdGNoKFxuICAgICAgICAgICAgICAgIHBhdGgubm9ybWFsaXplKHBhdGguam9pbihjb25maWcuZmFybURpcmVjdG9yeSwgXCIuLlwiKSksXG4gICAgICAgICAgICAgICAgeyByZWN1cnNpdmU6IHRydWUgfSxcbiAgICAgICAgICAgICAgICBfLmRlYm91bmNlKCh4OiBzdHJpbmcsIHk6IHN0cmluZykgPT4gdGhpcy5oYW5kbGVGb3JtRlNVcGRhdGUoeCwgeSwgZm9ybVJvb3REaXJlY3RvcnkpLCAyMDApXG4gICAgICAgICAgICApO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBAaHR0cEdldChcbiAgICAgICAgXCIvdXBkYXRlcy1vYnNlcnZlci9jaGVjay1sYXN0LXVwZGF0ZS1sb25nLXBvbGxcIixcbiAgICAgICAgaHR0cFJldHVybi5QbGFpblRleHQsXG4gICAgICAgIGh0dHBRdWVyeVBhcmFtKFwicHJldkxhc3RVcGRhdGVcIiwgaHR0cFR5cGUuTnVtYmVyKVxuICAgIClcbiAgICBwdWJsaWMgYXN5bmMgZ2V0TGFzdFVwZGF0ZVRpbWUocHJldkxhc3RVcGRhdGVUaW1lPzogbnVtYmVyKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICAgICAgaWYgKHByZXZMYXN0VXBkYXRlVGltZSA9PSB1bmRlZmluZWQgfHwgcHJldkxhc3RVcGRhdGVUaW1lIDwgdGhpcy5sYXN0VXBkYXRlVGltZSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMubGFzdFVwZGF0ZVRpbWUudG9TdHJpbmcoKTtcbiAgICAgICAgfVxuICAgICAgICBhd2FpdCBQcm9taXNlLnJhY2UoW3RoaXMudXBkYXRlTW9uaXRvci53YWl0KCksIGRlbGF5KDYwMDAwKV0pO1xuICAgICAgICByZXR1cm4gdGhpcy5sYXN0VXBkYXRlVGltZS50b1N0cmluZygpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBhZnRlclN0b3AoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIHRoaXMuZmFybVdhdGNoZXJzPy5tYXAoaSA9PiBpLmNsb3NlKCkpO1xuICAgICAgICB0aGlzLmZvcm1XYXRjaGVycz8ubWFwKGkgPT4gaS5jbG9zZSgpKTtcbiAgICAgICAgdGhpcy5yZXNvdXJjZXNXYXRjaGVyPy5jbG9zZSgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgcmVhZG9ubHkgaGFuZGxlRmFybUZTVXBkYXRlID0gKGV2ZW50VHlwZTogc3RyaW5nLCBmaWxlUGF0aDogc3RyaW5nLCByb290RGlyOiBzdHJpbmcpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuZmFybVdhdGNoaW5nUmVnZXhwcy5zb21lKHggPT4geC50ZXN0KGZpbGVQYXRoKSkpIHtcbiAgICAgICAgICAgIHN0YXQocGF0aC5qb2luKHJvb3REaXIsIGZpbGVQYXRoKSwgKGVyciwgZmlsZVN0YXQpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBmaWxlVGlja3MgPSBNYXRoLm1heChmaWxlU3RhdC5tdGltZU1zLCBmaWxlU3RhdC5jdGltZU1zKTtcbiAgICAgICAgICAgICAgICBpZiAoZmlsZVRpY2tzID4gdGhpcy5sYXN0VXBkYXRlVGltZSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmxhc3RVcGRhdGVUaW1lID0gRGF0ZS5ub3coKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy51cGRhdGVNb25pdG9yLnB1bHNlQWxsKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBoYW5kbGVGb3JtRlNVcGRhdGUgPSAoZXZlbnRUeXBlOiBzdHJpbmcsIGZpbGVQYXRoOiBzdHJpbmcsIHJvb3REaXI6IHN0cmluZykgPT4ge1xuICAgICAgICBpZiAodGhpcy5mb3Jtc1dhdGNoaW5nUmVnZXhwcy5zb21lKHggPT4geC50ZXN0KGZpbGVQYXRoKSkpIHtcbiAgICAgICAgICAgIHN0YXQocGF0aC5qb2luKHJvb3REaXIsIGZpbGVQYXRoKSwgKGVyciwgZmlsZVN0YXQpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBmaWxlVGlja3MgPSBNYXRoLm1heChmaWxlU3RhdC5tdGltZU1zLCBmaWxlU3RhdC5jdGltZU1zKTtcbiAgICAgICAgICAgICAgICBpZiAoZmlsZVRpY2tzID4gdGhpcy5sYXN0VXBkYXRlVGltZSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmxhc3RVcGRhdGVUaW1lID0gRGF0ZS5ub3coKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy51cGRhdGVNb25pdG9yLnB1bHNlQWxsKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9O1xufVxuXG5jbGFzcyBNb25pdG9yIHtcbiAgICBwcml2YXRlIGF3YWl0ZXJzOiBBcnJheTwoKSA9PiB2b2lkPiA9IFtdO1xuXG4gICAgcHVibGljIHdhaXQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSh0aGlzLndhaXRQcm9taXNlSGFuZGxlcik7XG4gICAgfVxuXG4gICAgcHVibGljIHB1bHNlQWxsKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBhd2FpdGVycyA9IFsuLi50aGlzLmF3YWl0ZXJzXTtcbiAgICAgICAgdGhpcy5hd2FpdGVycyA9IFtdO1xuICAgICAgICBmb3IgKGNvbnN0IGF3YWl0ZXIgb2YgYXdhaXRlcnMpIHtcbiAgICAgICAgICAgIGF3YWl0ZXIoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgcmVhZG9ubHkgd2FpdFByb21pc2VIYW5kbGVyID0gKHJlc29sdmU6ICgpID0+IHZvaWQpID0+IHtcbiAgICAgICAgdGhpcy5hd2FpdGVycy5wdXNoKHJlc29sdmUpO1xuICAgIH07XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsSUFBQUEsR0FBQSxHQUFBQyxPQUFBO0FBQ0EsSUFBQUMsS0FBQSxHQUFBQyxzQkFBQSxDQUFBRixPQUFBO0FBRUEsSUFBQUcsT0FBQSxHQUFBRCxzQkFBQSxDQUFBRixPQUFBO0FBR0EsSUFBQUksV0FBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssUUFBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sT0FBQSxHQUFBTixPQUFBO0FBQ0EsSUFBQU8sUUFBQSxHQUFBUCxPQUFBO0FBQ0EsSUFBQVEsb0JBQUEsR0FBQVIsT0FBQTtBQUNBLElBQUFTLHFCQUFBLEdBQUFULE9BQUE7QUFFQSxJQUFBVSxhQUFBLEdBQUFWLE9BQUE7QUFBOEMsSUFBQVcsSUFBQSxFQUFBQyxNQUFBO0FBQUEsSUFFakNDLDRDQUE0QyxHQUFBQyxPQUFBLENBQUFELDRDQUFBLElB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
105
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZnMiLCJyZXF1aXJlIiwiX3BhdGgiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX2xvZGFzaCIsIl9Bc3luY1V0aWxzIiwiX01ldGhvZHMiLCJfUGFyYW1zIiwiX1Jlc3VsdHMiLCJfU2luZ2xldG9uQ29udHJvbGxlciIsIl9XZWxsS25vd25EaXJlY3RvcmllcyIsIl9HbG9iVG9SZWdleHAiLCJfZGVjIiwiX2NsYXNzIiwiQnVpbGRTZXJ2ZXJCYWNrZW5kUmVzb3VyY2VzVXBkYXRlc0NvbnRyb2xsZXIiLCJodHRwR2V0IiwiaHR0cFJldHVybiIsIlBsYWluVGV4dCIsImh0dHBRdWVyeVBhcmFtIiwiaHR0cFR5cGUiLCJOdW1iZXIiLCJTaW5nbGV0b25Db250cm9sbGVyIiwiY29uc3RydWN0b3IiLCJhbGxGYXJtQ29uZmlnIiwibGFzdFVwZGF0ZVRpbWUiLCJ1cGRhdGVNb25pdG9yIiwiTW9uaXRvciIsImZhcm1XYXRjaGVycyIsImZvcm1XYXRjaGVycyIsInJlc291cmNlc1dhdGNoZXIiLCJmYXJtV2F0Y2hpbmdSZWdleHBzIiwiV2VsbEtub3duRGlyZWN0b3JpZXMiLCJGb3JtSnNvbkZpbGVOYW1lIiwibWFwIiwiZ2xvYlRvUmVnZXhwIiwiZm9ybXNXYXRjaGluZ1JlZ2V4cHMiLCJDYW5keVN1YmRpcmVjdG9yeU5hbWUiLCJoYW5kbGVGYXJtRlNVcGRhdGUiLCJldmVudFR5cGUiLCJmaWxlUGF0aCIsInJvb3REaXIiLCJzb21lIiwieCIsInRlc3QiLCJzdGF0IiwicGF0aCIsImpvaW4iLCJlcnIiLCJmaWxlU3RhdCIsImZpbGVUaWNrcyIsIk1hdGgiLCJtYXgiLCJtdGltZU1zIiwiY3RpbWVNcyIsIkRhdGUiLCJub3ciLCJwdWxzZUFsbCIsImhhbmRsZUZvcm1GU1VwZGF0ZSIsImJlZm9yZVN0YXJ0IiwiY29uZmlnIiwid2F0Y2giLCJmYXJtRGlyZWN0b3J5IiwicmVjdXJzaXZlIiwiXyIsImRlYm91bmNlIiwieSIsImZvcm1Sb290RGlyZWN0b3J5Iiwibm9ybWFsaXplIiwiZ2V0TGFzdFVwZGF0ZVRpbWUiLCJwcmV2TGFzdFVwZGF0ZVRpbWUiLCJ1bmRlZmluZWQiLCJ0b1N0cmluZyIsIlByb21pc2UiLCJyYWNlIiwid2FpdCIsImRlbGF5IiwiYWZ0ZXJTdG9wIiwiX3RoaXMkZmFybVdhdGNoZXJzIiwiX3RoaXMkZm9ybVdhdGNoZXJzIiwiX3RoaXMkcmVzb3VyY2VzV2F0Y2hlIiwiaSIsImNsb3NlIiwiX2FwcGx5RGVjb3JhdGVkRGVzY3JpcHRvcjIiLCJkZWZhdWx0IiwicHJvdG90eXBlIiwiT2JqZWN0IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZXhwb3J0cyIsImF3YWl0ZXJzIiwid2FpdFByb21pc2VIYW5kbGVyIiwicmVzb2x2ZSIsInB1c2giLCJhd2FpdGVyIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL0NMSUNvbW1hbmRzL0J1aWxkU2VydmVyL1Jlc291cmNlc0NvbnRyb2xsZXJzL0J1aWxkU2VydmVyQmFja2VuZFJlc291cmNlc1VwZGF0ZXNDb250cm9sbGVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZTV2F0Y2hlciwgd2F0Y2gsIHN0YXQgfSBmcm9tIFwiZnNcIjtcbmltcG9ydCBwYXRoIGZyb20gXCJwYXRoXCI7XG5cbmltcG9ydCBfIGZyb20gXCJsb2Rhc2hcIjtcbmltcG9ydCB7IEZhcm1Db25maWcgfSBmcm9tIFwiVG9vbHMvc3JjL0NhbmR5Q0xJXCI7XG5cbmltcG9ydCB7IGRlbGF5IH0gZnJvbSBcIi4uLy4uLy4uLy4uLy4uL0NvbW1vbi9Bc3luY1V0aWxzXCI7XG5pbXBvcnQgeyBodHRwR2V0IH0gZnJvbSBcIi4uLy4uLy4uL0NvbW1vbnMvSHR0cFNlcnZlci9BdHRyaWJ1dGVSb3V0aW5nL01ldGhvZHNcIjtcbmltcG9ydCB7IGh0dHBRdWVyeVBhcmFtLCBodHRwVHlwZSB9IGZyb20gXCIuLi8uLi8uLi9Db21tb25zL0h0dHBTZXJ2ZXIvQXR0cmlidXRlUm91dGluZy9QYXJhbXNcIjtcbmltcG9ydCB7IGh0dHBSZXR1cm4gfSBmcm9tIFwiLi4vLi4vLi4vQ29tbW9ucy9IdHRwU2VydmVyL0F0dHJpYnV0ZVJvdXRpbmcvUmVzdWx0c1wiO1xuaW1wb3J0IHsgU2luZ2xldG9uQ29udHJvbGxlciB9IGZyb20gXCIuLi8uLi8uLi9Db21tb25zL0h0dHBTZXJ2ZXIvRXhwcmVzc1dyYXBwZXIvU2luZ2xldG9uQ29udHJvbGxlclwiO1xuaW1wb3J0IHsgV2VsbEtub3duRGlyZWN0b3JpZXMgfSBmcm9tIFwiLi4vLi4vLi4vLi4vLi4vQ29tbW9uL1dlbGxLbm93bkRpcmVjdG9yaWVzXCI7XG5cbmltcG9ydCB7IGdsb2JUb1JlZ2V4cCB9IGZyb20gXCIuL0dsb2JUb1JlZ2V4cFwiO1xuXG5leHBvcnQgY2xhc3MgQnVpbGRTZXJ2ZXJCYWNrZW5kUmVzb3VyY2VzVXBkYXRlc0NvbnRyb2xsZXIgZXh0ZW5kcyBTaW5nbGV0b25Db250cm9sbGVyIHtcbiAgICBwcml2YXRlIGxhc3RVcGRhdGVUaW1lID0gMDtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHVwZGF0ZU1vbml0b3I6IE1vbml0b3IgPSBuZXcgTW9uaXRvcigpO1xuICAgIHByaXZhdGUgZmFybVdhdGNoZXJzPzogRlNXYXRjaGVyW107XG4gICAgcHJpdmF0ZSBmb3JtV2F0Y2hlcnM/OiBGU1dhdGNoZXJbXTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlc291cmNlc1dhdGNoZXI/OiBGU1dhdGNoZXI7XG4gICAgcHJpdmF0ZSByZWFkb25seSBhbGxGYXJtQ29uZmlnOiBGYXJtQ29uZmlnW107XG4gICAgcHJpdmF0ZSByZWFkb25seSBmYXJtV2F0Y2hpbmdSZWdleHBzID0gW1xuICAgICAgICBcImZvcm1zLyovc2NoZW1hcy8qLnJuZy54bWxcIixcbiAgICAgICAgXCJmb3Jtcy8qL2NvbnZlcnRlcnMvKlwiLFxuICAgICAgICBcImZvcm1zLyovbWVyZ2Vycy8qXCIsXG4gICAgICAgIC8vIE5PVEUg0KLRg9GCINGC0LDQutC+0LUg0LTQtdC70L46INC/0L7Rh9C10LzRgy3RgtC+INC40L3QvtCz0LTQsCAo0LjQvdC+0LPQtNCwLCDRgtC+INC10YHRgtGMINC90LUg0LLRgdC10LPQtNCwISksINC60L7Qs9C00LAg0L3QsNC8INC/0YDQuNGF0L7QtNC40YIg0LfQsNC/0YDQvtGBINC90LBcbiAgICAgICAgLy8gZm9ybXMvKi9wcmVzZW50YXRpb25zLmpzb24g0LIg0Y3RgtC+0Lwg0LrQu9Cw0YHRgdC1INCy0L7Qt9C90LjQutCw0LXRgiDRgdC+0LHRi9GC0LjQtSDQvtCxINC40LfQvNC10L3QuNC4INGN0YLQvtCz0L4g0YTQsNC50LvQsCDQuCDQvNGLINCz0LXQvdC10YDQuNC8INC+0YfQtdC90Ywg0LzQvdC+0LPQvlxuICAgICAgICAvLyDQu9C40YjQvdC40YUg0YHQvtCx0YvRgtC40Lkg0L7QsSDQuNC30LzQtdC90LjQuCDRgNC10YHRg9GA0YHQvtCyINC4IENhbmR5QXBpINC30LDQstC40YHQsNC10YIuINCvINC/0L7QutCwINC90LUg0YHQvNC+0LMg0YDQsNC30L7QsdGA0LDRgtGM0YHRjyDQv9C+0YfQtdC80YMg0Y3RgtC+INGC0LDQui5cbiAgICAgICAgLy8gXCJmb3Jtcy8qL3ByZXNlbnRhdGlvbnMuanNvblwiLFxuICAgICAgICBgZm9ybXMvKi8ke1dlbGxLbm93bkRpcmVjdG9yaWVzLkZvcm1Kc29uRmlsZU5hbWV9YCxcbiAgICAgICAgXCJmb3Jtcy8qL3N1Z2FyLyoueG1sXCIsXG4gICAgICAgIFwiZm9ybXMvKi9ub3JtYWxpemUvKi54bWxcIixcbiAgICAgICAgXCJmb3Jtcy8qL3VubWFwLyoueG1sXCIsXG4gICAgICAgIFwiZm9ybXMvKi9tYXAvKi54bWxcIixcbiAgICAgICAgXCJmb3Jtcy8qL3BhdGNoLyoueHNsdFwiLFxuICAgICAgICBcInBpY2tsaXN0cy8qXCIsXG4gICAgXS5tYXAoZ2xvYlRvUmVnZXhwKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGZvcm1zV2F0Y2hpbmdSZWdleHBzID0gW1xuICAgICAgICBgZm9ybXMvKiovJHtXZWxsS25vd25EaXJlY3Rvcmllcy5DYW5keVN1YmRpcmVjdG9yeU5hbWV9L3NjaGVtYXMvKi5ybmcueG1sYCxcbiAgICAgICAgYGZvcm1zLyoqLyR7V2VsbEtub3duRGlyZWN0b3JpZXMuQ2FuZHlTdWJkaXJlY3RvcnlOYW1lfS9jb252ZXJ0ZXJzLypgLFxuICAgICAgICBgZm9ybXMvKiovJHtXZWxsS25vd25EaXJlY3Rvcmllcy5DYW5keVN1YmRpcmVjdG9yeU5hbWV9L21lcmdlcnMvKmAsXG4gICAgICAgIGBmb3Jtcy8qKi8ke1dlbGxLbm93bkRpcmVjdG9yaWVzLkNhbmR5U3ViZGlyZWN0b3J5TmFtZX0vcHJlc2VudGF0aW9ucy5qc29uYCxcbiAgICAgICAgYGZvcm1zLyoqLyR7V2VsbEtub3duRGlyZWN0b3JpZXMuQ2FuZHlTdWJkaXJlY3RvcnlOYW1lfS8ke1dlbGxLbm93bkRpcmVjdG9yaWVzLkZvcm1Kc29uRmlsZU5hbWV9YCxcbiAgICAgICAgYGZvcm1zLyoqLyR7V2VsbEtub3duRGlyZWN0b3JpZXMuQ2FuZHlTdWJkaXJlY3RvcnlOYW1lfS9zdWdhci8qLnhtbGAsXG4gICAgICAgIGBmb3Jtcy8qKi8ke1dlbGxLbm93bkRpcmVjdG9yaWVzLkNhbmR5U3ViZGlyZWN0b3J5TmFtZX0vbm9ybWFsaXplLyoueG1sYCxcbiAgICAgICAgYGZvcm1zLyoqLyR7V2VsbEtub3duRGlyZWN0b3JpZXMuQ2FuZHlTdWJkaXJlY3RvcnlOYW1lfS91bm1hcC8qLnhtbGAsXG4gICAgICAgIGBmb3Jtcy8qKi8ke1dlbGxLbm93bkRpcmVjdG9yaWVzLkNhbmR5U3ViZGlyZWN0b3J5TmFtZX0vbWFwLyoueG1sYCxcbiAgICAgICAgYGZvcm1zLyoqLyR7V2VsbEtub3duRGlyZWN0b3JpZXMuQ2FuZHlTdWJkaXJlY3RvcnlOYW1lfS9wYXRjaC8qLnhzbHRgLFxuICAgIF0ubWFwKGdsb2JUb1JlZ2V4cCk7XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IoYWxsRmFybUNvbmZpZzogRmFybUNvbmZpZ1tdKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIHRoaXMuYWxsRmFybUNvbmZpZyA9IGFsbEZhcm1Db25maWc7XG4gICAgICAgIHRoaXMubGFzdFVwZGF0ZVRpbWUgPSBEYXRlLm5vdygpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBiZWZvcmVTdGFydCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgdGhpcy5mYXJtV2F0Y2hlcnMgPSB0aGlzLmFsbEZhcm1Db25maWcubWFwKGNvbmZpZyA9PlxuICAgICAgICAgICAgd2F0Y2goXG4gICAgICAgICAgICAgICAgY29uZmlnLmZhcm1EaXJlY3RvcnksXG4gICAgICAgICAgICAgICAgeyByZWN1cnNpdmU6IHRydWUgfSxcbiAgICAgICAgICAgICAgICBfLmRlYm91bmNlKCh4OiBzdHJpbmcsIHk6IHN0cmluZykgPT4gdGhpcy5oYW5kbGVGYXJtRlNVcGRhdGUoeCwgeSwgY29uZmlnLmZhcm1EaXJlY3RvcnkpLCAyMDApXG4gICAgICAgICAgICApXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuZm9ybVdhdGNoZXJzID0gdGhpcy5hbGxGYXJtQ29uZmlnLm1hcChjb25maWcgPT4ge1xuICAgICAgICAgICAgY29uc3QgZm9ybVJvb3REaXJlY3RvcnkgPSBwYXRoLm5vcm1hbGl6ZShwYXRoLmpvaW4oY29uZmlnLmZhcm1EaXJlY3RvcnksIFwiLi5cIikpO1xuICAgICAgICAgICAgcmV0dXJuIHdhdGNoKFxuICAgICAgICAgICAgICAgIHBhdGgubm9ybWFsaXplKHBhdGguam9pbihjb25maWcuZmFybURpcmVjdG9yeSwgXCIuLlwiKSksXG4gICAgICAgICAgICAgICAgeyByZWN1cnNpdmU6IHRydWUgfSxcbiAgICAgICAgICAgICAgICBfLmRlYm91bmNlKCh4OiBzdHJpbmcsIHk6IHN0cmluZykgPT4gdGhpcy5oYW5kbGVGb3JtRlNVcGRhdGUoeCwgeSwgZm9ybVJvb3REaXJlY3RvcnkpLCAyMDApXG4gICAgICAgICAgICApO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBAaHR0cEdldChcbiAgICAgICAgXCIvdXBkYXRlcy1vYnNlcnZlci9jaGVjay1sYXN0LXVwZGF0ZS1sb25nLXBvbGxcIixcbiAgICAgICAgaHR0cFJldHVybi5QbGFpblRleHQsXG4gICAgICAgIGh0dHBRdWVyeVBhcmFtKFwicHJldkxhc3RVcGRhdGVcIiwgaHR0cFR5cGUuTnVtYmVyKVxuICAgIClcbiAgICBwdWJsaWMgYXN5bmMgZ2V0TGFzdFVwZGF0ZVRpbWUocHJldkxhc3RVcGRhdGVUaW1lPzogbnVtYmVyKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICAgICAgaWYgKHByZXZMYXN0VXBkYXRlVGltZSA9PSB1bmRlZmluZWQgfHwgcHJldkxhc3RVcGRhdGVUaW1lIDwgdGhpcy5sYXN0VXBkYXRlVGltZSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMubGFzdFVwZGF0ZVRpbWUudG9TdHJpbmcoKTtcbiAgICAgICAgfVxuICAgICAgICBhd2FpdCBQcm9taXNlLnJhY2UoW3RoaXMudXBkYXRlTW9uaXRvci53YWl0KCksIGRlbGF5KDYwMDAwKV0pO1xuICAgICAgICByZXR1cm4gdGhpcy5sYXN0VXBkYXRlVGltZS50b1N0cmluZygpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBhZnRlclN0b3AoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIHRoaXMuZmFybVdhdGNoZXJzPy5tYXAoaSA9PiBpLmNsb3NlKCkpO1xuICAgICAgICB0aGlzLmZvcm1XYXRjaGVycz8ubWFwKGkgPT4gaS5jbG9zZSgpKTtcbiAgICAgICAgdGhpcy5yZXNvdXJjZXNXYXRjaGVyPy5jbG9zZSgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgcmVhZG9ubHkgaGFuZGxlRmFybUZTVXBkYXRlID0gKGV2ZW50VHlwZTogc3RyaW5nLCBmaWxlUGF0aDogc3RyaW5nLCByb290RGlyOiBzdHJpbmcpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuZmFybVdhdGNoaW5nUmVnZXhwcy5zb21lKHggPT4geC50ZXN0KGZpbGVQYXRoKSkpIHtcbiAgICAgICAgICAgIHN0YXQocGF0aC5qb2luKHJvb3REaXIsIGZpbGVQYXRoKSwgKGVyciwgZmlsZVN0YXQpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBmaWxlVGlja3MgPSBNYXRoLm1heChmaWxlU3RhdC5tdGltZU1zLCBmaWxlU3RhdC5jdGltZU1zKTtcbiAgICAgICAgICAgICAgICBpZiAoZmlsZVRpY2tzID4gdGhpcy5sYXN0VXBkYXRlVGltZSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmxhc3RVcGRhdGVUaW1lID0gRGF0ZS5ub3coKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy51cGRhdGVNb25pdG9yLnB1bHNlQWxsKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBoYW5kbGVGb3JtRlNVcGRhdGUgPSAoZXZlbnRUeXBlOiBzdHJpbmcsIGZpbGVQYXRoOiBzdHJpbmcsIHJvb3REaXI6IHN0cmluZykgPT4ge1xuICAgICAgICBpZiAodGhpcy5mb3Jtc1dhdGNoaW5nUmVnZXhwcy5zb21lKHggPT4geC50ZXN0KGZpbGVQYXRoKSkpIHtcbiAgICAgICAgICAgIHN0YXQocGF0aC5qb2luKHJvb3REaXIsIGZpbGVQYXRoKSwgKGVyciwgZmlsZVN0YXQpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBmaWxlVGlja3MgPSBNYXRoLm1heChmaWxlU3RhdC5tdGltZU1zLCBmaWxlU3RhdC5jdGltZU1zKTtcbiAgICAgICAgICAgICAgICBpZiAoZmlsZVRpY2tzID4gdGhpcy5sYXN0VXBkYXRlVGltZSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmxhc3RVcGRhdGVUaW1lID0gRGF0ZS5ub3coKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy51cGRhdGVNb25pdG9yLnB1bHNlQWxsKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9O1xufVxuXG5jbGFzcyBNb25pdG9yIHtcbiAgICBwcml2YXRlIGF3YWl0ZXJzOiBBcnJheTwoKSA9PiB2b2lkPiA9IFtdO1xuXG4gICAgcHVibGljIHdhaXQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSh0aGlzLndhaXRQcm9taXNlSGFuZGxlcik7XG4gICAgfVxuXG4gICAgcHVibGljIHB1bHNlQWxsKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBhd2FpdGVycyA9IFsuLi50aGlzLmF3YWl0ZXJzXTtcbiAgICAgICAgdGhpcy5hd2FpdGVycyA9IFtdO1xuICAgICAgICBmb3IgKGNvbnN0IGF3YWl0ZXIgb2YgYXdhaXRlcnMpIHtcbiAgICAgICAgICAgIGF3YWl0ZXIoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgcmVhZG9ubHkgd2FpdFByb21pc2VIYW5kbGVyID0gKHJlc29sdmU6ICgpID0+IHZvaWQpID0+IHtcbiAgICAgICAgdGhpcy5hd2FpdGVycy5wdXNoKHJlc29sdmUpO1xuICAgIH07XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsSUFBQUEsR0FBQSxHQUFBQyxPQUFBO0FBQ0EsSUFBQUMsS0FBQSxHQUFBQyxzQkFBQSxDQUFBRixPQUFBO0FBRUEsSUFBQUcsT0FBQSxHQUFBRCxzQkFBQSxDQUFBRixPQUFBO0FBR0EsSUFBQUksV0FBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssUUFBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sT0FBQSxHQUFBTixPQUFBO0FBQ0EsSUFBQU8sUUFBQSxHQUFBUCxPQUFBO0FBQ0EsSUFBQVEsb0JBQUEsR0FBQVIsT0FBQTtBQUNBLElBQUFTLHFCQUFBLEdBQUFULE9BQUE7QUFFQSxJQUFBVSxhQUFBLEdBQUFWLE9BQUE7QUFBOEMsSUFBQVcsSUFBQSxFQUFBQyxNQUFBO0FBQUEsSUFFakNDLDRDQUE0QyxJQUFBRixJQUFBLEdBNERwRCxJQUFBRyxn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
@@ -20,9 +20,9 @@ var _WellKnownDirectories = require("../../../../../Common/WellKnownDirectories"
20
20
  var _BuildFormDevServer = require("./DevServers/BuildFormDevServer");
21
21
  var _FarmDirectory = require("./Directories/FarmDirectory");
22
22
  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _class;
23
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
24
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
25
- let BuildServerBuildFormsController = exports.BuildServerBuildFormsController = (_dec = (0, _Methods.httpGet)("/:update.hot-update.json", _Results.httpReturn.StreamWithMime("application/json"), (0, _Params.httpUrlParam)("update", _Params.httpType.String)), _dec2 = (0, _Methods.httpGet)("/:update.hot-update.js", _Results.httpReturn.StreamWithMime("application/javascript"), (0, _Params.httpUrlParam)("update", _Params.httpType.String)), _dec3 = (0, _Methods.httpGet)("/:update.hot-update.js.map", _Results.httpReturn.StreamWithMime("application/json"), (0, _Params.httpUrlParam)("update", _Params.httpType.String)), _dec4 = (0, _Methods.httpGet)(/^\/public\/scripts\/(((\d{6,7})(.[\w\-]*)?(.min)?).js)$/i, _Results.httpReturn.StreamWithMime("application/javascript"), (0, _Params.httpUrlParam)("0", _Params.httpType.String), (0, _Params.httpUrlParam)("1", _Params.httpType.String), (0, _Params.httpUrlParam)("2", _Params.httpType.String)), _dec5 = (0, _Methods.httpGet)(/^\/public\/styles\/(((\d{6,7})(.[\w\-]*)?(.min)?).css)$/i, _Results.httpReturn.StreamWithMime("text/css"), (0, _Params.httpUrlParam)("0", _Params.httpType.String), (0, _Params.httpUrlParam)("1", _Params.httpType.String), (0, _Params.httpUrlParam)("2", _Params.httpType.String), (0, _Params.httpUrlParam)("3", _Params.httpType.String)), _dec6 = (0, _Methods.httpGet)("/public/images/:filename", _Results.httpReturn.Stream, (0, _Params.httpUrlParam)("filename", _Params.httpType.String)), (_class = class BuildServerBuildFormsController extends _SingletonController.SingletonController {
23
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
24
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
25
+ let BuildServerBuildFormsController = (_dec = (0, _Methods.httpGet)("/:update.hot-update.json", _Results.httpReturn.StreamWithMime("application/json"), (0, _Params.httpUrlParam)("update", _Params.httpType.String)), _dec2 = (0, _Methods.httpGet)("/:update.hot-update.js", _Results.httpReturn.StreamWithMime("application/javascript"), (0, _Params.httpUrlParam)("update", _Params.httpType.String)), _dec3 = (0, _Methods.httpGet)("/:update.hot-update.js.map", _Results.httpReturn.StreamWithMime("application/json"), (0, _Params.httpUrlParam)("update", _Params.httpType.String)), _dec4 = (0, _Methods.httpGet)(/^\/public\/scripts\/(((\d{6,7})(.[\w\-]*)?(.min)?).js)$/i, _Results.httpReturn.StreamWithMime("application/javascript"), (0, _Params.httpUrlParam)("0", _Params.httpType.String), (0, _Params.httpUrlParam)("1", _Params.httpType.String), (0, _Params.httpUrlParam)("2", _Params.httpType.String)), _dec5 = (0, _Methods.httpGet)(/^\/public\/styles\/(((\d{6,7})(.[\w\-]*)?(.min)?).css)$/i, _Results.httpReturn.StreamWithMime("text/css"), (0, _Params.httpUrlParam)("0", _Params.httpType.String), (0, _Params.httpUrlParam)("1", _Params.httpType.String), (0, _Params.httpUrlParam)("2", _Params.httpType.String), (0, _Params.httpUrlParam)("3", _Params.httpType.String)), _dec6 = (0, _Methods.httpGet)("/public/images/:filename", _Results.httpReturn.Stream, (0, _Params.httpUrlParam)("filename", _Params.httpType.String)), (_class = class BuildServerBuildFormsController extends _SingletonController.SingletonController {
26
26
  constructor(allFarmConfig, candyModulesDirectory, useGeneratorFromLocalSources, engineDirectory, buildDebugOnly, nightly = false) {
27
27
  super();
28
28
  this.allFarmDirectory = void 0;
@@ -115,4 +115,5 @@ let BuildServerBuildFormsController = exports.BuildServerBuildFormsController =
115
115
  return devServer;
116
116
  }
117
117
  }, ((0, _applyDecoratedDescriptor2.default)(_class.prototype, "getDevServerUpdateJson", [_dec], Object.getOwnPropertyDescriptor(_class.prototype, "getDevServerUpdateJson"), _class.prototype), (0, _applyDecoratedDescriptor2.default)(_class.prototype, "getDevServerUpdateJs", [_dec2], Object.getOwnPropertyDescriptor(_class.prototype, "getDevServerUpdateJs"), _class.prototype), (0, _applyDecoratedDescriptor2.default)(_class.prototype, "getDevServerUpdateJsMap", [_dec3], Object.getOwnPropertyDescriptor(_class.prototype, "getDevServerUpdateJsMap"), _class.prototype), (0, _applyDecoratedDescriptor2.default)(_class.prototype, "getFormScript", [_dec4], Object.getOwnPropertyDescriptor(_class.prototype, "getFormScript"), _class.prototype), (0, _applyDecoratedDescriptor2.default)(_class.prototype, "getFormStyle", [_dec5], Object.getOwnPropertyDescriptor(_class.prototype, "getFormStyle"), _class.prototype), (0, _applyDecoratedDescriptor2.default)(_class.prototype, "getFormImages", [_dec6], Object.getOwnPropertyDescriptor(_class.prototype, "getFormImages"), _class.prototype)), _class));
118
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJwYXRoIiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJyZXF1aXJlIiwiX21pbWVUeXBlcyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfUmVzb2x2ZUZvcm1JbmZvIiwiX01ldGhvZHMiLCJfTm90Rm91bmRXZWJFcnJvciIsIl9QYXJhbXMiLCJfUmVzdWx0cyIsIl9TdHJlYW1SZXN1bHRIYW5kbGVyIiwiX1NpbmdsZXRvbkNvbnRyb2xsZXIiLCJfU3RhdGljTG9nZ2VyIiwiX1dlbGxLbm93bkRpcmVjdG9yaWVzIiwiX0J1aWxkRm9ybURldlNlcnZlciIsIl9GYXJtRGlyZWN0b3J5IiwiX2RlYyIsIl9kZWMyIiwiX2RlYzMiLCJfZGVjNCIsIl9kZWM1IiwiX2RlYzYiLCJfY2xhc3MiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJlIiwiV2Vha01hcCIsInIiLCJ0IiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJoYXMiLCJnZXQiLCJuIiwiX19wcm90b19fIiwiYSIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwidSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImkiLCJzZXQiLCJCdWlsZFNlcnZlckJ1aWxkRm9ybXNDb250cm9sbGVyIiwiZXhwb3J0cyIsImh0dHBHZXQiLCJodHRwUmV0dXJuIiwiU3RyZWFtV2l0aE1pbWUiLCJodHRwVXJsUGFyYW0iLCJodHRwVHlwZSIsIlN0cmluZyIsIlN0cmVhbSIsIlNpbmdsZXRvbkNvbnRyb2xsZXIiLCJjb25zdHJ1Y3RvciIsImFsbEZhcm1Db25maWciLCJjYW5keU1vZHVsZXNEaXJlY3RvcnkiLCJ1c2VHZW5lcmF0b3JGcm9tTG9jYWxTb3VyY2VzIiwiZW5naW5lRGlyZWN0b3J5IiwiYnVpbGREZWJ1Z09ubHkiLCJuaWdodGx5IiwiYWxsRmFybURpcmVjdG9yeSIsImFsbEZhcm1EaXJlY3RvcnlQYXRoIiwibmV4dEZyZWVQb3J0IiwiZGV2U2VydmVycyIsIm1hcCIsImZhcm0iLCJGYXJtRGlyZWN0b3J5IiwiZmFybURpcmVjdG9yeSIsImdldERldlNlcnZlclVwZGF0ZUpzb24iLCJ1cGRhdGVOYW1lIiwiZ2V0Rmlyc3RFeGlzdHNGaWxlQXNTdHJlYW1Gcm9tRGV2U2VydmVyIiwiZ2V0RGV2U2VydmVyVXBkYXRlSnMiLCJnZXREZXZTZXJ2ZXJVcGRhdGVKc01hcCIsImdldEZvcm1TY3JpcHQiLCJmaWxlTmFtZSIsImZpbGVOYW1lV2l0aG91dEV4dCIsImdmdiIsImJ1aWxkRm9ybURldlNlcnZlciIsImdldE9yQ3JlYXRlQnVpbGRGb3JtRGV2U2VydmVyIiwiU3RyZWFtUmVzdWx0IiwiZ2V0RmlsZUFzU3RyZWFtIiwiZ2V0Rm9ybVN0eWxlIiwidGhlbWUiLCJyZXBsYWNlIiwiZ2V0Rm9ybUltYWdlcyIsIm1pbWUiLCJsb29rdXAiLCJmaWxlbmFtZSIsIm1pbWVUeXBlIiwiZGV2U2VydmVyIiwidmFsdWVzIiwidW5kZWZpbmVkIiwiTm90Rm91bmRXZWJFcnJvciIsImdldEFsbEF0dGFjaG1lbnRQYXRoRmlsZU5hbWVzIiwiUHJvbWlzZSIsImFsbCIsImdldEFsbEdmdnMiLCJmbGF0IiwiZ2V0QXR0YWNobWVudFBhdGhzRmlsZUNvbnRlbnQiLCJyZXN1bHRTdHJlYW0iLCJnZXRHZW5lcmF0ZWRGaWxlQXNTdHJlYW0iLCJnZXRBbGxOb3JtYWxpemF0aW9uRmlsZU5hbWVzIiwicmVzdWx0IiwiZ2Z2SW5mb3MiLCJnZXRBbGxHZnZXaXRoTG9jYXRpb25zIiwiZm9ybVBhdGgiLCJfZm9ybUNvbmZpZyRzZXR0aW5ncyQiLCJfZm9ybUNvbmZpZyRzZXR0aW5ncyIsImZvcm1Db25maWciLCJyZWFkRm9ybUNvbmZpZyIsImpvaW4iLCJXZWxsS25vd25EaXJlY3RvcmllcyIsIkZvcm1Kc29uRmlsZU5hbWUiLCJnZXRMb2dnZXIiLCJ1c2VTZXJ2ZXJTaWRlRkxhbmdOb3JtYWxpemF0aW9uIiwic2V0dGluZ3MiLCJwdXNoIiwiZ2V0Tm9ybWFsaXphdGlvbkZpbGVDb250ZW50IiwiQnVpbGRGb3JtRGV2U2VydmVyIiwic3RhcnQiLCJfYXBwbHlEZWNvcmF0ZWREZXNjcmlwdG9yMiIsInByb3RvdHlwZSJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9DTElDb21tYW5kcy9CdWlsZFNlcnZlci9SZXNvdXJjZXNDb250cm9sbGVycy9CdWlsZFNlcnZlckJ1aWxkRm9ybXNDb250cm9sbGVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIHBhdGggZnJvbSBcInBhdGhcIjtcblxuaW1wb3J0IG1pbWUgZnJvbSBcIm1pbWUtdHlwZXNcIjtcbmltcG9ydCB7IEZhcm1Db25maWcgfSBmcm9tIFwiVG9vbHMvc3JjL0NhbmR5Q0xJXCI7XG5cbmltcG9ydCB7IHJlYWRGb3JtQ29uZmlnIH0gZnJvbSBcIi4uLy4uLy4uL0J1aWxkVGFza3MvUmVzb2x2ZUZvcm1JbmZvXCI7XG5pbXBvcnQgeyBodHRwR2V0IH0gZnJvbSBcIi4uLy4uLy4uL0NvbW1vbnMvSHR0cFNlcnZlci9BdHRyaWJ1dGVSb3V0aW5nL01ldGhvZHNcIjtcbmltcG9ydCB7IE5vdEZvdW5kV2ViRXJyb3IgfSBmcm9tIFwiLi4vLi4vLi4vQ29tbW9ucy9IdHRwU2VydmVyL0F0dHJpYnV0ZVJvdXRpbmcvTm90Rm91bmRXZWJFcnJvclwiO1xuaW1wb3J0IHsgaHR0cFR5cGUsIGh0dHBVcmxQYXJhbSB9IGZyb20gXCIuLi8uLi8uLi9Db21tb25zL0h0dHBTZXJ2ZXIvQXR0cmlidXRlUm91dGluZy9QYXJhbXNcIjtcbmltcG9ydCB7IGh0dHBSZXR1cm4gfSBmcm9tIFwiLi4vLi4vLi4vQ29tbW9ucy9IdHRwU2VydmVyL0F0dHJpYnV0ZVJvdXRpbmcvUmVzdWx0c1wiO1xuaW1wb3J0IHsgU3RyZWFtUmVzdWx0IH0gZnJvbSBcIi4uLy4uLy4uL0NvbW1vbnMvSHR0cFNlcnZlci9BdHRyaWJ1dGVSb3V0aW5nL1Jlc3VsdHMvU3RyZWFtUmVzdWx0SGFuZGxlclwiO1xuaW1wb3J0IHsgU2luZ2xldG9uQ29udHJvbGxlciB9IGZyb20gXCIuLi8uLi8uLi9Db21tb25zL0h0dHBTZXJ2ZXIvRXhwcmVzc1dyYXBwZXIvU2luZ2xldG9uQ29udHJvbGxlclwiO1xuaW1wb3J0IHsgZ2V0TG9nZ2VyIH0gZnJvbSBcIi4uLy4uLy4uL0NvbW1vbnMvTG9nZ2luZy9TdGF0aWNMb2dnZXJcIjtcbmltcG9ydCB7IFdlbGxLbm93bkRpcmVjdG9yaWVzIH0gZnJvbSBcIi4uLy4uLy4uLy4uLy4uL0NvbW1vbi9XZWxsS25vd25EaXJlY3Rvcmllc1wiO1xuXG5pbXBvcnQgeyBCdWlsZEZvcm1EZXZTZXJ2ZXIgfSBmcm9tIFwiLi9EZXZTZXJ2ZXJzL0J1aWxkRm9ybURldlNlcnZlclwiO1xuaW1wb3J0IHsgRmFybURpcmVjdG9yeSB9IGZyb20gXCIuL0RpcmVjdG9yaWVzL0Zhcm1EaXJlY3RvcnlcIjtcbmltcG9ydCB7IElHZW5lcmF0ZWRTZXJ2ZXJTaWRlU291cmNlc1Byb3ZpZGVyIH0gZnJvbSBcIi4vSUdlbmVyYXRlZFNlcnZlclNpZGVTb3VyY2VzUHJvdmlkZXJcIjtcblxuZXhwb3J0IGNsYXNzIEJ1aWxkU2VydmVyQnVpbGRGb3Jtc0NvbnRyb2xsZXJcbiAgICBleHRlbmRzIFNpbmdsZXRvbkNvbnRyb2xsZXJcbiAgICBpbXBsZW1lbnRzIElHZW5lcmF0ZWRTZXJ2ZXJTaWRlU291cmNlc1Byb3ZpZGVyXG57XG4gICAgcHJpdmF0ZSByZWFkb25seSBhbGxGYXJtRGlyZWN0b3J5OiBGYXJtRGlyZWN0b3J5W107XG4gICAgcHJpdmF0ZSByZWFkb25seSBhbGxGYXJtRGlyZWN0b3J5UGF0aDogc3RyaW5nW107XG4gICAgcHJpdmF0ZSBuZXh0RnJlZVBvcnQgPSAxMjAwMTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRldlNlcnZlcnM6IHsgW2dmdjogc3RyaW5nXTogdW5kZWZpbmVkIHwgQnVpbGRGb3JtRGV2U2VydmVyIH0gPSB7fTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNhbmR5TW9kdWxlc0RpcmVjdG9yeTogc3RyaW5nO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgYWxsRmFybUNvbmZpZzogRmFybUNvbmZpZ1tdO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgdXNlR2VuZXJhdG9yRnJvbUxvY2FsU291cmNlczogYm9vbGVhbjtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGVuZ2luZURpcmVjdG9yeTogc3RyaW5nO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgbmlnaHRseTogYm9vbGVhbjtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGJ1aWxkRGVidWdPbmx5OiBib29sZWFuO1xuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgICAgICBhbGxGYXJtQ29uZmlnOiBGYXJtQ29uZmlnW10sXG4gICAgICAgIGNhbmR5TW9kdWxlc0RpcmVjdG9yeTogc3RyaW5nLFxuICAgICAgICB1c2VHZW5lcmF0b3JGcm9tTG9jYWxTb3VyY2VzOiBib29sZWFuLFxuICAgICAgICBlbmdpbmVEaXJlY3Rvcnk6IHN0cmluZyxcbiAgICAgICAgYnVpbGREZWJ1Z09ubHk6IGJvb2xlYW4sXG4gICAgICAgIG5pZ2h0bHk6IGJvb2xlYW4gPSBmYWxzZVxuICAgICkge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLm5pZ2h0bHkgPSBuaWdodGx5O1xuICAgICAgICB0aGlzLmFsbEZhcm1EaXJlY3RvcnkgPSBhbGxGYXJtQ29uZmlnLm1hcChmYXJtID0+IG5ldyBGYXJtRGlyZWN0b3J5KGZhcm0uZmFybURpcmVjdG9yeSkpO1xuICAgICAgICB0aGlzLmFsbEZhcm1EaXJlY3RvcnlQYXRoID0gYWxsRmFybUNvbmZpZy5tYXAoZmFybSA9PiBmYXJtLmZhcm1EaXJlY3RvcnkpO1xuICAgICAgICB0aGlzLmNhbmR5TW9kdWxlc0RpcmVjdG9yeSA9IGNhbmR5TW9kdWxlc0RpcmVjdG9yeTtcbiAgICAgICAgdGhpcy5hbGxGYXJtQ29uZmlnID0gYWxsRmFybUNvbmZpZztcbiAgICAgICAgdGhpcy51c2VHZW5lcmF0b3JGcm9tTG9jYWxTb3VyY2VzID0gdXNlR2VuZXJhdG9yRnJvbUxvY2FsU291cmNlcztcbiAgICAgICAgdGhpcy5lbmdpbmVEaXJlY3RvcnkgPSBlbmdpbmVEaXJlY3Rvcnk7XG4gICAgICAgIHRoaXMuYnVpbGREZWJ1Z09ubHkgPSBidWlsZERlYnVnT25seTtcbiAgICB9XG5cbiAgICBAaHR0cEdldChcbiAgICAgICAgXCIvOnVwZGF0ZS5ob3QtdXBkYXRlLmpzb25cIixcbiAgICAgICAgaHR0cFJldHVybi5TdHJlYW1XaXRoTWltZShcImFwcGxpY2F0aW9uL2pzb25cIiksXG4gICAgICAgIGh0dHBVcmxQYXJhbShcInVwZGF0ZVwiLCBodHRwVHlwZS5TdHJpbmcpXG4gICAgKVxuICAgIHB1YmxpYyBhc3luYyBnZXREZXZTZXJ2ZXJVcGRhdGVKc29uKHVwZGF0ZU5hbWU6IHN0cmluZyk6IFByb21pc2U8U3RyZWFtUmVzdWx0PiB7XG4gICAgICAgIHJldHVybiBhd2FpdCB0aGlzLmdldEZpcnN0RXhpc3RzRmlsZUFzU3RyZWFtRnJvbURldlNlcnZlcihgc3RhdGljLyR7dXBkYXRlTmFtZX0uaG90LXVwZGF0ZS5qc29uYCk7XG4gICAgfVxuXG4gICAgQGh0dHBHZXQoXG4gICAgICAgIFwiLzp1cGRhdGUuaG90LXVwZGF0ZS5qc1wiLFxuICAgICAgICBodHRwUmV0dXJuLlN0cmVhbVdpdGhNaW1lKFwiYXBwbGljYXRpb24vamF2YXNjcmlwdFwiKSxcbiAgICAgICAgaHR0cFVybFBhcmFtKFwidXBkYXRlXCIsIGh0dHBUeXBlLlN0cmluZylcbiAgICApXG4gICAgcHVibGljIGFzeW5jIGdldERldlNlcnZlclVwZGF0ZUpzKHVwZGF0ZU5hbWU6IHN0cmluZyk6IFByb21pc2U8U3RyZWFtUmVzdWx0PiB7XG4gICAgICAgIHJldHVybiBhd2FpdCB0aGlzLmdldEZpcnN0RXhpc3RzRmlsZUFzU3RyZWFtRnJvbURldlNlcnZlcihgc3RhdGljLyR7dXBkYXRlTmFtZX0uaG90LXVwZGF0ZS5qc2ApO1xuICAgIH1cblxuICAgIEBodHRwR2V0KFxuICAgICAgICBcIi86dXBkYXRlLmhvdC11cGRhdGUuanMubWFwXCIsXG4gICAgICAgIGh0dHBSZXR1cm4uU3RyZWFtV2l0aE1pbWUoXCJhcHBsaWNhdGlvbi9qc29uXCIpLFxuICAgICAgICBodHRwVXJsUGFyYW0oXCJ1cGRhdGVcIiwgaHR0cFR5cGUuU3RyaW5nKVxuICAgIClcbiAgICBwdWJsaWMgYXN5bmMgZ2V0RGV2U2VydmVyVXBkYXRlSnNNYXAodXBkYXRlTmFtZTogc3RyaW5nKTogUHJvbWlzZTxTdHJlYW1SZXN1bHQ+IHtcbiAgICAgICAgcmV0dXJuIGF3YWl0IHRoaXMuZ2V0Rmlyc3RFeGlzdHNGaWxlQXNTdHJlYW1Gcm9tRGV2U2VydmVyKGBzdGF0aWMvJHt1cGRhdGVOYW1lfS5ob3QtdXBkYXRlLmpzLm1hcGApO1xuICAgIH1cblxuICAgIEBodHRwR2V0KFxuICAgICAgICAvXlxcL3B1YmxpY1xcL3NjcmlwdHNcXC8oKChcXGR7Niw3fSkoLltcXHdcXC1dKik/KC5taW4pPykuanMpJC9pLFxuICAgICAgICBodHRwUmV0dXJuLlN0cmVhbVdpdGhNaW1lKFwiYXBwbGljYXRpb24vamF2YXNjcmlwdFwiKSxcbiAgICAgICAgaHR0cFVybFBhcmFtKFwiMFwiLCBodHRwVHlwZS5TdHJpbmcpLFxuICAgICAgICBodHRwVXJsUGFyYW0oXCIxXCIsIGh0dHBUeXBlLlN0cmluZyksXG4gICAgICAgIGh0dHBVcmxQYXJhbShcIjJcIiwgaHR0cFR5cGUuU3RyaW5nKVxuICAgIClcbiAgICBwdWJsaWMgYXN5bmMgZ2V0Rm9ybVNjcmlwdChmaWxlTmFtZTogc3RyaW5nLCBmaWxlTmFtZVdpdGhvdXRFeHQ6IHN0cmluZywgZ2Z2OiBzdHJpbmcpOiBQcm9taXNlPFN0cmVhbVJlc3VsdD4ge1xuICAgICAgICBjb25zdCBidWlsZEZvcm1EZXZTZXJ2ZXIgPSBhd2FpdCB0aGlzLmdldE9yQ3JlYXRlQnVpbGRGb3JtRGV2U2VydmVyKGdmdik7XG4gICAgICAgIHJldHVybiBuZXcgU3RyZWFtUmVzdWx0KGF3YWl0IGJ1aWxkRm9ybURldlNlcnZlci5nZXRGaWxlQXNTdHJlYW0oYHN0YXRpYy9wdWJsaWMvc2NyaXB0cy8ke2ZpbGVOYW1lfWApKTtcbiAgICB9XG5cbiAgICBAaHR0cEdldChcbiAgICAgICAgL15cXC9wdWJsaWNcXC9zdHlsZXNcXC8oKChcXGR7Niw3fSkoLltcXHdcXC1dKik/KC5taW4pPykuY3NzKSQvaSxcbiAgICAgICAgaHR0cFJldHVybi5TdHJlYW1XaXRoTWltZShcInRleHQvY3NzXCIpLFxuICAgICAgICBodHRwVXJsUGFyYW0oXCIwXCIsIGh0dHBUeXBlLlN0cmluZyksXG4gICAgICAgIGh0dHBVcmxQYXJhbShcIjFcIiwgaHR0cFR5cGUuU3RyaW5nKSxcbiAgICAgICAgaHR0cFVybFBhcmFtKFwiMlwiLCBodHRwVHlwZS5TdHJpbmcpLFxuICAgICAgICBodHRwVXJsUGFyYW0oXCIzXCIsIGh0dHBUeXBlLlN0cmluZylcbiAgICApXG4gICAgcHVibGljIGFzeW5jIGdldEZvcm1TdHlsZShcbiAgICAgICAgZmlsZU5hbWU6IHN0cmluZyxcbiAgICAgICAgZmlsZU5hbWVXaXRob3V0RXh0OiBzdHJpbmcsXG4gICAgICAgIGdmdjogc3RyaW5nLFxuICAgICAgICB0aGVtZTogdW5kZWZpbmVkIHwgc3RyaW5nXG4gICAgKTogUHJvbWlzZTxTdHJlYW1SZXN1bHQ+IHtcbiAgICAgICAgY29uc3QgYnVpbGRGb3JtRGV2U2VydmVyID0gYXdhaXQgdGhpcy5nZXRPckNyZWF0ZUJ1aWxkRm9ybURldlNlcnZlcihnZnYpO1xuICAgICAgICByZXR1cm4gbmV3IFN0cmVhbVJlc3VsdChcbiAgICAgICAgICAgIGF3YWl0IGJ1aWxkRm9ybURldlNlcnZlci5nZXRGaWxlQXNTdHJlYW0oYHN0YXRpYy9wdWJsaWMvc3R5bGVzLyR7ZmlsZU5hbWUucmVwbGFjZSh0aGVtZSA/PyBcIlwiLCBcIlwiKX1gKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIEBodHRwR2V0KFwiL3B1YmxpYy9pbWFnZXMvOmZpbGVuYW1lXCIsIGh0dHBSZXR1cm4uU3RyZWFtLCBodHRwVXJsUGFyYW0oXCJmaWxlbmFtZVwiLCBodHRwVHlwZS5TdHJpbmcpKVxuICAgIHB1YmxpYyBhc3luYyBnZXRGb3JtSW1hZ2VzKGZpbGVOYW1lOiBzdHJpbmcpOiBQcm9taXNlPFN0cmVhbVJlc3VsdD4ge1xuICAgICAgICByZXR1cm4gYXdhaXQgdGhpcy5nZXRGaXJzdEV4aXN0c0ZpbGVBc1N0cmVhbUZyb21EZXZTZXJ2ZXIoXG4gICAgICAgICAgICBgc3RhdGljL3B1YmxpYy9pbWFnZXMvJHtmaWxlTmFtZX1gLFxuICAgICAgICAgICAgbWltZS5sb29rdXAoZmlsZU5hbWUpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhc3luYyBnZXRGaXJzdEV4aXN0c0ZpbGVBc1N0cmVhbUZyb21EZXZTZXJ2ZXIoZmlsZW5hbWU6IHN0cmluZywgbWltZVR5cGU/OiBzdHJpbmcgfCBmYWxzZSkge1xuICAgICAgICBmb3IgKGNvbnN0IGRldlNlcnZlciBvZiBPYmplY3QudmFsdWVzKHRoaXMuZGV2U2VydmVycykpIHtcbiAgICAgICAgICAgIGlmIChkZXZTZXJ2ZXIgIT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBTdHJlYW1SZXN1bHQoYXdhaXQgZGV2U2VydmVyLmdldEZpbGVBc1N0cmVhbShmaWxlbmFtZSksIG1pbWVUeXBlKTtcbiAgICAgICAgICAgICAgICB9IGNhdGNoIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gdHJ5IG5leHQgc2VydmVyXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHRocm93IG5ldyBOb3RGb3VuZFdlYkVycm9yKFwiRmlsZSBub3QgZm91bmRcIiwgdHJ1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIGdldEFsbEF0dGFjaG1lbnRQYXRoRmlsZU5hbWVzKCk6IFByb21pc2U8c3RyaW5nW10+IHtcbiAgICAgICAgcmV0dXJuIChhd2FpdCBQcm9taXNlLmFsbCh0aGlzLmFsbEZhcm1EaXJlY3RvcnkubWFwKGkgPT4gaS5nZXRBbGxHZnZzKCkpKSkuZmxhdCgpLm1hcChnZnYgPT4gYCR7Z2Z2fS5qc29uYCk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIGdldEF0dGFjaG1lbnRQYXRoc0ZpbGVDb250ZW50KGdmdjogc3RyaW5nKTogUHJvbWlzZTxOb2RlSlMuUmVhZGFibGVTdHJlYW0+IHtcbiAgICAgICAgY29uc3QgYnVpbGRGb3JtRGV2U2VydmVyID0gYXdhaXQgdGhpcy5nZXRPckNyZWF0ZUJ1aWxkRm9ybURldlNlcnZlcihnZnYpO1xuICAgICAgICBjb25zdCByZXN1bHRTdHJlYW0gPSBhd2FpdCBidWlsZEZvcm1EZXZTZXJ2ZXIuZ2V0R2VuZXJhdGVkRmlsZUFzU3RyZWFtKGBBdHRhY2htZW50UGF0aHMuanNvbmApO1xuICAgICAgICByZXR1cm4gcmVzdWx0U3RyZWFtO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBnZXRBbGxOb3JtYWxpemF0aW9uRmlsZU5hbWVzKCk6IFByb21pc2U8c3RyaW5nW10+IHtcbiAgICAgICAgY29uc3QgcmVzdWx0OiBzdHJpbmdbXSA9IFtdO1xuICAgICAgICBjb25zdCBnZnZJbmZvcyA9IChhd2FpdCBQcm9taXNlLmFsbCh0aGlzLmFsbEZhcm1EaXJlY3RvcnkubWFwKGkgPT4gaS5nZXRBbGxHZnZXaXRoTG9jYXRpb25zKCkpKSkuZmxhdCgpO1xuICAgICAgICBmb3IgKGNvbnN0IHsgZ2Z2LCBmb3JtUGF0aCB9IG9mIGdmdkluZm9zKSB7XG4gICAgICAgICAgICBjb25zdCBmb3JtQ29uZmlnID0gYXdhaXQgcmVhZEZvcm1Db25maWcoXG4gICAgICAgICAgICAgICAgcGF0aC5qb2luKGZvcm1QYXRoLCBXZWxsS25vd25EaXJlY3Rvcmllcy5Gb3JtSnNvbkZpbGVOYW1lKSxcbiAgICAgICAgICAgICAgICBnZXRMb2dnZXIoKVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGNvbnN0IHVzZVNlcnZlclNpZGVGTGFuZ05vcm1hbGl6YXRpb24gPSBmb3JtQ29uZmlnLnNldHRpbmdzPy51c2VTZXJ2ZXJTaWRlRkxhbmdOb3JtYWxpemF0aW9uID8/IGZhbHNlO1xuICAgICAgICAgICAgaWYgKHVzZVNlcnZlclNpZGVGTGFuZ05vcm1hbGl6YXRpb24pIHtcbiAgICAgICAgICAgICAgICByZXN1bHQucHVzaChgJHtnZnZ9Lm5vcm1hbGl6ZWApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIGdldE5vcm1hbGl6YXRpb25GaWxlQ29udGVudChnZnY6IHN0cmluZyk6IFByb21pc2U8Tm9kZUpTLlJlYWRhYmxlU3RyZWFtPiB7XG4gICAgICAgIGNvbnN0IGJ1aWxkRm9ybURldlNlcnZlciA9IGF3YWl0IHRoaXMuZ2V0T3JDcmVhdGVCdWlsZEZvcm1EZXZTZXJ2ZXIoZ2Z2KTtcbiAgICAgICAgY29uc3QgcmVzdWx0U3RyZWFtID0gYXdhaXQgYnVpbGRGb3JtRGV2U2VydmVyLmdldEdlbmVyYXRlZEZpbGVBc1N0cmVhbShgU2VydmVyU2lkZS5ub3JtYWxpemVgKTtcbiAgICAgICAgcmV0dXJuIHJlc3VsdFN0cmVhbTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFzeW5jIGdldE9yQ3JlYXRlQnVpbGRGb3JtRGV2U2VydmVyKGdmdjogc3RyaW5nKTogUHJvbWlzZTxCdWlsZEZvcm1EZXZTZXJ2ZXI+IHtcbiAgICAgICAgbGV0IGRldlNlcnZlciA9IHRoaXMuZGV2U2VydmVyc1tnZnZdO1xuICAgICAgICBpZiAoZGV2U2VydmVyID09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgZGV2U2VydmVyID0gbmV3IEJ1aWxkRm9ybURldlNlcnZlcihcbiAgICAgICAgICAgICAgICB0aGlzLm5leHRGcmVlUG9ydCsrLFxuICAgICAgICAgICAgICAgIHRoaXMuYWxsRmFybURpcmVjdG9yeVBhdGgsXG4gICAgICAgICAgICAgICAgZ2Z2LFxuICAgICAgICAgICAgICAgIHRoaXMuY2FuZHlNb2R1bGVzRGlyZWN0b3J5LFxuICAgICAgICAgICAgICAgIHRoaXMuYWxsRmFybUNvbmZpZyxcbiAgICAgICAgICAgICAgICB0aGlzLnVzZUdlbmVyYXRvckZyb21Mb2NhbFNvdXJjZXMsXG4gICAgICAgICAgICAgICAgdGhpcy5lbmdpbmVEaXJlY3RvcnksXG4gICAgICAgICAgICAgICAgdGhpcy5idWlsZERlYnVnT25seSxcbiAgICAgICAgICAgICAgICBmYWxzZSxcbiAgICAgICAgICAgICAgICB0aGlzLm5pZ2h0bHlcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICB0aGlzLmRldlNlcnZlcnNbZ2Z2XSA9IGRldlNlcnZlcjtcbiAgICAgICAgICAgIGF3YWl0IGRldlNlcnZlci5zdGFydCgpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBkZXZTZXJ2ZXI7XG4gICAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBLElBQUFBLElBQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUVBLElBQUFDLFVBQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUdBLElBQUFHLGdCQUFBLEdBQUFILE9BQUE7QUFDQSxJQUFBSSxRQUFBLEdBQUFKLE9BQUE7QUFDQSxJQUFBSyxpQkFBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sT0FBQSxHQUFBTixPQUFBO0FBQ0EsSUFBQU8sUUFBQSxHQUFBUCxPQUFBO0FBQ0EsSUFBQVEsb0JBQUEsR0FBQVIsT0FBQTtBQUNBLElBQUFTLG9CQUFBLEdBQUFULE9BQUE7QUFDQSxJQUFBVSxhQUFBLEdBQUFWLE9BQUE7QUFDQSxJQUFBVyxxQkFBQSxHQUFBWCxPQUFBO0FBRUEsSUFBQVksbUJBQUEsR0FBQVosT0FBQTtBQUNBLElBQUFhLGNBQUEsR0FBQWIsT0FBQTtBQUE0RCxJQUFBYyxJQUFBLEVBQUFDLEtBQUEsRUFBQUMsS0FBQSxFQUFBQyxLQUFBLEVB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
118
+ exports.BuildServerBuildFormsController = BuildServerBuildFormsController;
119
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJwYXRoIiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJyZXF1aXJlIiwiX21pbWVUeXBlcyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfUmVzb2x2ZUZvcm1JbmZvIiwiX01ldGhvZHMiLCJfTm90Rm91bmRXZWJFcnJvciIsIl9QYXJhbXMiLCJfUmVzdWx0cyIsIl9TdHJlYW1SZXN1bHRIYW5kbGVyIiwiX1NpbmdsZXRvbkNvbnRyb2xsZXIiLCJfU3RhdGljTG9nZ2VyIiwiX1dlbGxLbm93bkRpcmVjdG9yaWVzIiwiX0J1aWxkRm9ybURldlNlcnZlciIsIl9GYXJtRGlyZWN0b3J5IiwiX2RlYyIsIl9kZWMyIiwiX2RlYzMiLCJfZGVjNCIsIl9kZWM1IiwiX2RlYzYiLCJfY2xhc3MiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiQnVpbGRTZXJ2ZXJCdWlsZEZvcm1zQ29udHJvbGxlciIsImh0dHBHZXQiLCJodHRwUmV0dXJuIiwiU3RyZWFtV2l0aE1pbWUiLCJodHRwVXJsUGFyYW0iLCJodHRwVHlwZSIsIlN0cmluZyIsIlN0cmVhbSIsIlNpbmdsZXRvbkNvbnRyb2xsZXIiLCJjb25zdHJ1Y3RvciIsImFsbEZhcm1Db25maWciLCJjYW5keU1vZHVsZXNEaXJlY3RvcnkiLCJ1c2VHZW5lcmF0b3JGcm9tTG9jYWxTb3VyY2VzIiwiZW5naW5lRGlyZWN0b3J5IiwiYnVpbGREZWJ1Z09ubHkiLCJuaWdodGx5IiwiYWxsRmFybURpcmVjdG9yeSIsImFsbEZhcm1EaXJlY3RvcnlQYXRoIiwibmV4dEZyZWVQb3J0IiwiZGV2U2VydmVycyIsIm1hcCIsImZhcm0iLCJGYXJtRGlyZWN0b3J5IiwiZmFybURpcmVjdG9yeSIsImdldERldlNlcnZlclVwZGF0ZUpzb24iLCJ1cGRhdGVOYW1lIiwiZ2V0Rmlyc3RFeGlzdHNGaWxlQXNTdHJlYW1Gcm9tRGV2U2VydmVyIiwiZ2V0RGV2U2VydmVyVXBkYXRlSnMiLCJnZXREZXZTZXJ2ZXJVcGRhdGVKc01hcCIsImdldEZvcm1TY3JpcHQiLCJmaWxlTmFtZSIsImZpbGVOYW1lV2l0aG91dEV4dCIsImdmdiIsImJ1aWxkRm9ybURldlNlcnZlciIsImdldE9yQ3JlYXRlQnVpbGRGb3JtRGV2U2VydmVyIiwiU3RyZWFtUmVzdWx0IiwiZ2V0RmlsZUFzU3RyZWFtIiwiZ2V0Rm9ybVN0eWxlIiwidGhlbWUiLCJyZXBsYWNlIiwiZ2V0Rm9ybUltYWdlcyIsIm1pbWUiLCJsb29rdXAiLCJmaWxlbmFtZSIsIm1pbWVUeXBlIiwiZGV2U2VydmVyIiwidmFsdWVzIiwidW5kZWZpbmVkIiwiTm90Rm91bmRXZWJFcnJvciIsImdldEFsbEF0dGFjaG1lbnRQYXRoRmlsZU5hbWVzIiwiUHJvbWlzZSIsImFsbCIsImkiLCJnZXRBbGxHZnZzIiwiZmxhdCIsImdldEF0dGFjaG1lbnRQYXRoc0ZpbGVDb250ZW50IiwicmVzdWx0U3RyZWFtIiwiZ2V0R2VuZXJhdGVkRmlsZUFzU3RyZWFtIiwiZ2V0QWxsTm9ybWFsaXphdGlvbkZpbGVOYW1lcyIsInJlc3VsdCIsImdmdkluZm9zIiwiZ2V0QWxsR2Z2V2l0aExvY2F0aW9ucyIsImZvcm1QYXRoIiwiX2Zvcm1Db25maWckc2V0dGluZ3MkIiwiX2Zvcm1Db25maWckc2V0dGluZ3MiLCJmb3JtQ29uZmlnIiwicmVhZEZvcm1Db25maWciLCJqb2luIiwiV2VsbEtub3duRGlyZWN0b3JpZXMiLCJGb3JtSnNvbkZpbGVOYW1lIiwiZ2V0TG9nZ2VyIiwidXNlU2VydmVyU2lkZUZMYW5nTm9ybWFsaXphdGlvbiIsInNldHRpbmdzIiwicHVzaCIsImdldE5vcm1hbGl6YXRpb25GaWxlQ29udGVudCIsIkJ1aWxkRm9ybURldlNlcnZlciIsInN0YXJ0IiwiX2FwcGx5RGVjb3JhdGVkRGVzY3JpcHRvcjIiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL0NMSUNvbW1hbmRzL0J1aWxkU2VydmVyL1Jlc291cmNlc0NvbnRyb2xsZXJzL0J1aWxkU2VydmVyQnVpbGRGb3Jtc0NvbnRyb2xsZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgcGF0aCBmcm9tIFwicGF0aFwiO1xuXG5pbXBvcnQgbWltZSBmcm9tIFwibWltZS10eXBlc1wiO1xuaW1wb3J0IHsgRmFybUNvbmZpZyB9IGZyb20gXCJUb29scy9zcmMvQ2FuZHlDTElcIjtcblxuaW1wb3J0IHsgcmVhZEZvcm1Db25maWcgfSBmcm9tIFwiLi4vLi4vLi4vQnVpbGRUYXNrcy9SZXNvbHZlRm9ybUluZm9cIjtcbmltcG9ydCB7IGh0dHBHZXQgfSBmcm9tIFwiLi4vLi4vLi4vQ29tbW9ucy9IdHRwU2VydmVyL0F0dHJpYnV0ZVJvdXRpbmcvTWV0aG9kc1wiO1xuaW1wb3J0IHsgTm90Rm91bmRXZWJFcnJvciB9IGZyb20gXCIuLi8uLi8uLi9Db21tb25zL0h0dHBTZXJ2ZXIvQXR0cmlidXRlUm91dGluZy9Ob3RGb3VuZFdlYkVycm9yXCI7XG5pbXBvcnQgeyBodHRwVHlwZSwgaHR0cFVybFBhcmFtIH0gZnJvbSBcIi4uLy4uLy4uL0NvbW1vbnMvSHR0cFNlcnZlci9BdHRyaWJ1dGVSb3V0aW5nL1BhcmFtc1wiO1xuaW1wb3J0IHsgaHR0cFJldHVybiB9IGZyb20gXCIuLi8uLi8uLi9Db21tb25zL0h0dHBTZXJ2ZXIvQXR0cmlidXRlUm91dGluZy9SZXN1bHRzXCI7XG5pbXBvcnQgeyBTdHJlYW1SZXN1bHQgfSBmcm9tIFwiLi4vLi4vLi4vQ29tbW9ucy9IdHRwU2VydmVyL0F0dHJpYnV0ZVJvdXRpbmcvUmVzdWx0cy9TdHJlYW1SZXN1bHRIYW5kbGVyXCI7XG5pbXBvcnQgeyBTaW5nbGV0b25Db250cm9sbGVyIH0gZnJvbSBcIi4uLy4uLy4uL0NvbW1vbnMvSHR0cFNlcnZlci9FeHByZXNzV3JhcHBlci9TaW5nbGV0b25Db250cm9sbGVyXCI7XG5pbXBvcnQgeyBnZXRMb2dnZXIgfSBmcm9tIFwiLi4vLi4vLi4vQ29tbW9ucy9Mb2dnaW5nL1N0YXRpY0xvZ2dlclwiO1xuaW1wb3J0IHsgV2VsbEtub3duRGlyZWN0b3JpZXMgfSBmcm9tIFwiLi4vLi4vLi4vLi4vLi4vQ29tbW9uL1dlbGxLbm93bkRpcmVjdG9yaWVzXCI7XG5cbmltcG9ydCB7IEJ1aWxkRm9ybURldlNlcnZlciB9IGZyb20gXCIuL0RldlNlcnZlcnMvQnVpbGRGb3JtRGV2U2VydmVyXCI7XG5pbXBvcnQgeyBGYXJtRGlyZWN0b3J5IH0gZnJvbSBcIi4vRGlyZWN0b3JpZXMvRmFybURpcmVjdG9yeVwiO1xuaW1wb3J0IHsgSUdlbmVyYXRlZFNlcnZlclNpZGVTb3VyY2VzUHJvdmlkZXIgfSBmcm9tIFwiLi9JR2VuZXJhdGVkU2VydmVyU2lkZVNvdXJjZXNQcm92aWRlclwiO1xuXG5leHBvcnQgY2xhc3MgQnVpbGRTZXJ2ZXJCdWlsZEZvcm1zQ29udHJvbGxlclxuICAgIGV4dGVuZHMgU2luZ2xldG9uQ29udHJvbGxlclxuICAgIGltcGxlbWVudHMgSUdlbmVyYXRlZFNlcnZlclNpZGVTb3VyY2VzUHJvdmlkZXJcbntcbiAgICBwcml2YXRlIHJlYWRvbmx5IGFsbEZhcm1EaXJlY3Rvcnk6IEZhcm1EaXJlY3RvcnlbXTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGFsbEZhcm1EaXJlY3RvcnlQYXRoOiBzdHJpbmdbXTtcbiAgICBwcml2YXRlIG5leHRGcmVlUG9ydCA9IDEyMDAxO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZGV2U2VydmVyczogeyBbZ2Z2OiBzdHJpbmddOiB1bmRlZmluZWQgfCBCdWlsZEZvcm1EZXZTZXJ2ZXIgfSA9IHt9O1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY2FuZHlNb2R1bGVzRGlyZWN0b3J5OiBzdHJpbmc7XG4gICAgcHJpdmF0ZSByZWFkb25seSBhbGxGYXJtQ29uZmlnOiBGYXJtQ29uZmlnW107XG4gICAgcHJpdmF0ZSByZWFkb25seSB1c2VHZW5lcmF0b3JGcm9tTG9jYWxTb3VyY2VzOiBib29sZWFuO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZW5naW5lRGlyZWN0b3J5OiBzdHJpbmc7XG4gICAgcHJpdmF0ZSByZWFkb25seSBuaWdodGx5OiBib29sZWFuO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgYnVpbGREZWJ1Z09ubHk6IGJvb2xlYW47XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgICAgIGFsbEZhcm1Db25maWc6IEZhcm1Db25maWdbXSxcbiAgICAgICAgY2FuZHlNb2R1bGVzRGlyZWN0b3J5OiBzdHJpbmcsXG4gICAgICAgIHVzZUdlbmVyYXRvckZyb21Mb2NhbFNvdXJjZXM6IGJvb2xlYW4sXG4gICAgICAgIGVuZ2luZURpcmVjdG9yeTogc3RyaW5nLFxuICAgICAgICBidWlsZERlYnVnT25seTogYm9vbGVhbixcbiAgICAgICAgbmlnaHRseTogYm9vbGVhbiA9IGZhbHNlXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIHRoaXMubmlnaHRseSA9IG5pZ2h0bHk7XG4gICAgICAgIHRoaXMuYWxsRmFybURpcmVjdG9yeSA9IGFsbEZhcm1Db25maWcubWFwKGZhcm0gPT4gbmV3IEZhcm1EaXJlY3RvcnkoZmFybS5mYXJtRGlyZWN0b3J5KSk7XG4gICAgICAgIHRoaXMuYWxsRmFybURpcmVjdG9yeVBhdGggPSBhbGxGYXJtQ29uZmlnLm1hcChmYXJtID0+IGZhcm0uZmFybURpcmVjdG9yeSk7XG4gICAgICAgIHRoaXMuY2FuZHlNb2R1bGVzRGlyZWN0b3J5ID0gY2FuZHlNb2R1bGVzRGlyZWN0b3J5O1xuICAgICAgICB0aGlzLmFsbEZhcm1Db25maWcgPSBhbGxGYXJtQ29uZmlnO1xuICAgICAgICB0aGlzLnVzZUdlbmVyYXRvckZyb21Mb2NhbFNvdXJjZXMgPSB1c2VHZW5lcmF0b3JGcm9tTG9jYWxTb3VyY2VzO1xuICAgICAgICB0aGlzLmVuZ2luZURpcmVjdG9yeSA9IGVuZ2luZURpcmVjdG9yeTtcbiAgICAgICAgdGhpcy5idWlsZERlYnVnT25seSA9IGJ1aWxkRGVidWdPbmx5O1xuICAgIH1cblxuICAgIEBodHRwR2V0KFxuICAgICAgICBcIi86dXBkYXRlLmhvdC11cGRhdGUuanNvblwiLFxuICAgICAgICBodHRwUmV0dXJuLlN0cmVhbVdpdGhNaW1lKFwiYXBwbGljYXRpb24vanNvblwiKSxcbiAgICAgICAgaHR0cFVybFBhcmFtKFwidXBkYXRlXCIsIGh0dHBUeXBlLlN0cmluZylcbiAgICApXG4gICAgcHVibGljIGFzeW5jIGdldERldlNlcnZlclVwZGF0ZUpzb24odXBkYXRlTmFtZTogc3RyaW5nKTogUHJvbWlzZTxTdHJlYW1SZXN1bHQ+IHtcbiAgICAgICAgcmV0dXJuIGF3YWl0IHRoaXMuZ2V0Rmlyc3RFeGlzdHNGaWxlQXNTdHJlYW1Gcm9tRGV2U2VydmVyKGBzdGF0aWMvJHt1cGRhdGVOYW1lfS5ob3QtdXBkYXRlLmpzb25gKTtcbiAgICB9XG5cbiAgICBAaHR0cEdldChcbiAgICAgICAgXCIvOnVwZGF0ZS5ob3QtdXBkYXRlLmpzXCIsXG4gICAgICAgIGh0dHBSZXR1cm4uU3RyZWFtV2l0aE1pbWUoXCJhcHBsaWNhdGlvbi9qYXZhc2NyaXB0XCIpLFxuICAgICAgICBodHRwVXJsUGFyYW0oXCJ1cGRhdGVcIiwgaHR0cFR5cGUuU3RyaW5nKVxuICAgIClcbiAgICBwdWJsaWMgYXN5bmMgZ2V0RGV2U2VydmVyVXBkYXRlSnModXBkYXRlTmFtZTogc3RyaW5nKTogUHJvbWlzZTxTdHJlYW1SZXN1bHQ+IHtcbiAgICAgICAgcmV0dXJuIGF3YWl0IHRoaXMuZ2V0Rmlyc3RFeGlzdHNGaWxlQXNTdHJlYW1Gcm9tRGV2U2VydmVyKGBzdGF0aWMvJHt1cGRhdGVOYW1lfS5ob3QtdXBkYXRlLmpzYCk7XG4gICAgfVxuXG4gICAgQGh0dHBHZXQoXG4gICAgICAgIFwiLzp1cGRhdGUuaG90LXVwZGF0ZS5qcy5tYXBcIixcbiAgICAgICAgaHR0cFJldHVybi5TdHJlYW1XaXRoTWltZShcImFwcGxpY2F0aW9uL2pzb25cIiksXG4gICAgICAgIGh0dHBVcmxQYXJhbShcInVwZGF0ZVwiLCBodHRwVHlwZS5TdHJpbmcpXG4gICAgKVxuICAgIHB1YmxpYyBhc3luYyBnZXREZXZTZXJ2ZXJVcGRhdGVKc01hcCh1cGRhdGVOYW1lOiBzdHJpbmcpOiBQcm9taXNlPFN0cmVhbVJlc3VsdD4ge1xuICAgICAgICByZXR1cm4gYXdhaXQgdGhpcy5nZXRGaXJzdEV4aXN0c0ZpbGVBc1N0cmVhbUZyb21EZXZTZXJ2ZXIoYHN0YXRpYy8ke3VwZGF0ZU5hbWV9LmhvdC11cGRhdGUuanMubWFwYCk7XG4gICAgfVxuXG4gICAgQGh0dHBHZXQoXG4gICAgICAgIC9eXFwvcHVibGljXFwvc2NyaXB0c1xcLygoKFxcZHs2LDd9KSguW1xcd1xcLV0qKT8oLm1pbik/KS5qcykkL2ksXG4gICAgICAgIGh0dHBSZXR1cm4uU3RyZWFtV2l0aE1pbWUoXCJhcHBsaWNhdGlvbi9qYXZhc2NyaXB0XCIpLFxuICAgICAgICBodHRwVXJsUGFyYW0oXCIwXCIsIGh0dHBUeXBlLlN0cmluZyksXG4gICAgICAgIGh0dHBVcmxQYXJhbShcIjFcIiwgaHR0cFR5cGUuU3RyaW5nKSxcbiAgICAgICAgaHR0cFVybFBhcmFtKFwiMlwiLCBodHRwVHlwZS5TdHJpbmcpXG4gICAgKVxuICAgIHB1YmxpYyBhc3luYyBnZXRGb3JtU2NyaXB0KGZpbGVOYW1lOiBzdHJpbmcsIGZpbGVOYW1lV2l0aG91dEV4dDogc3RyaW5nLCBnZnY6IHN0cmluZyk6IFByb21pc2U8U3RyZWFtUmVzdWx0PiB7XG4gICAgICAgIGNvbnN0IGJ1aWxkRm9ybURldlNlcnZlciA9IGF3YWl0IHRoaXMuZ2V0T3JDcmVhdGVCdWlsZEZvcm1EZXZTZXJ2ZXIoZ2Z2KTtcbiAgICAgICAgcmV0dXJuIG5ldyBTdHJlYW1SZXN1bHQoYXdhaXQgYnVpbGRGb3JtRGV2U2VydmVyLmdldEZpbGVBc1N0cmVhbShgc3RhdGljL3B1YmxpYy9zY3JpcHRzLyR7ZmlsZU5hbWV9YCkpO1xuICAgIH1cblxuICAgIEBodHRwR2V0KFxuICAgICAgICAvXlxcL3B1YmxpY1xcL3N0eWxlc1xcLygoKFxcZHs2LDd9KSguW1xcd1xcLV0qKT8oLm1pbik/KS5jc3MpJC9pLFxuICAgICAgICBodHRwUmV0dXJuLlN0cmVhbVdpdGhNaW1lKFwidGV4dC9jc3NcIiksXG4gICAgICAgIGh0dHBVcmxQYXJhbShcIjBcIiwgaHR0cFR5cGUuU3RyaW5nKSxcbiAgICAgICAgaHR0cFVybFBhcmFtKFwiMVwiLCBodHRwVHlwZS5TdHJpbmcpLFxuICAgICAgICBodHRwVXJsUGFyYW0oXCIyXCIsIGh0dHBUeXBlLlN0cmluZyksXG4gICAgICAgIGh0dHBVcmxQYXJhbShcIjNcIiwgaHR0cFR5cGUuU3RyaW5nKVxuICAgIClcbiAgICBwdWJsaWMgYXN5bmMgZ2V0Rm9ybVN0eWxlKFxuICAgICAgICBmaWxlTmFtZTogc3RyaW5nLFxuICAgICAgICBmaWxlTmFtZVdpdGhvdXRFeHQ6IHN0cmluZyxcbiAgICAgICAgZ2Z2OiBzdHJpbmcsXG4gICAgICAgIHRoZW1lOiB1bmRlZmluZWQgfCBzdHJpbmdcbiAgICApOiBQcm9taXNlPFN0cmVhbVJlc3VsdD4ge1xuICAgICAgICBjb25zdCBidWlsZEZvcm1EZXZTZXJ2ZXIgPSBhd2FpdCB0aGlzLmdldE9yQ3JlYXRlQnVpbGRGb3JtRGV2U2VydmVyKGdmdik7XG4gICAgICAgIHJldHVybiBuZXcgU3RyZWFtUmVzdWx0KFxuICAgICAgICAgICAgYXdhaXQgYnVpbGRGb3JtRGV2U2VydmVyLmdldEZpbGVBc1N0cmVhbShgc3RhdGljL3B1YmxpYy9zdHlsZXMvJHtmaWxlTmFtZS5yZXBsYWNlKHRoZW1lID8/IFwiXCIsIFwiXCIpfWApXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgQGh0dHBHZXQoXCIvcHVibGljL2ltYWdlcy86ZmlsZW5hbWVcIiwgaHR0cFJldHVybi5TdHJlYW0sIGh0dHBVcmxQYXJhbShcImZpbGVuYW1lXCIsIGh0dHBUeXBlLlN0cmluZykpXG4gICAgcHVibGljIGFzeW5jIGdldEZvcm1JbWFnZXMoZmlsZU5hbWU6IHN0cmluZyk6IFByb21pc2U8U3RyZWFtUmVzdWx0PiB7XG4gICAgICAgIHJldHVybiBhd2FpdCB0aGlzLmdldEZpcnN0RXhpc3RzRmlsZUFzU3RyZWFtRnJvbURldlNlcnZlcihcbiAgICAgICAgICAgIGBzdGF0aWMvcHVibGljL2ltYWdlcy8ke2ZpbGVOYW1lfWAsXG4gICAgICAgICAgICBtaW1lLmxvb2t1cChmaWxlTmFtZSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFzeW5jIGdldEZpcnN0RXhpc3RzRmlsZUFzU3RyZWFtRnJvbURldlNlcnZlcihmaWxlbmFtZTogc3RyaW5nLCBtaW1lVHlwZT86IHN0cmluZyB8IGZhbHNlKSB7XG4gICAgICAgIGZvciAoY29uc3QgZGV2U2VydmVyIG9mIE9iamVjdC52YWx1ZXModGhpcy5kZXZTZXJ2ZXJzKSkge1xuICAgICAgICAgICAgaWYgKGRldlNlcnZlciAhPSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gbmV3IFN0cmVhbVJlc3VsdChhd2FpdCBkZXZTZXJ2ZXIuZ2V0RmlsZUFzU3RyZWFtKGZpbGVuYW1lKSwgbWltZVR5cGUpO1xuICAgICAgICAgICAgICAgIH0gY2F0Y2gge1xuICAgICAgICAgICAgICAgICAgICAvLyB0cnkgbmV4dCBzZXJ2ZXJcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdGhyb3cgbmV3IE5vdEZvdW5kV2ViRXJyb3IoXCJGaWxlIG5vdCBmb3VuZFwiLCB0cnVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgZ2V0QWxsQXR0YWNobWVudFBhdGhGaWxlTmFtZXMoKTogUHJvbWlzZTxzdHJpbmdbXT4ge1xuICAgICAgICByZXR1cm4gKGF3YWl0IFByb21pc2UuYWxsKHRoaXMuYWxsRmFybURpcmVjdG9yeS5tYXAoaSA9PiBpLmdldEFsbEdmdnMoKSkpKS5mbGF0KCkubWFwKGdmdiA9PiBgJHtnZnZ9Lmpzb25gKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgZ2V0QXR0YWNobWVudFBhdGhzRmlsZUNvbnRlbnQoZ2Z2OiBzdHJpbmcpOiBQcm9taXNlPE5vZGVKUy5SZWFkYWJsZVN0cmVhbT4ge1xuICAgICAgICBjb25zdCBidWlsZEZvcm1EZXZTZXJ2ZXIgPSBhd2FpdCB0aGlzLmdldE9yQ3JlYXRlQnVpbGRGb3JtRGV2U2VydmVyKGdmdik7XG4gICAgICAgIGNvbnN0IHJlc3VsdFN0cmVhbSA9IGF3YWl0IGJ1aWxkRm9ybURldlNlcnZlci5nZXRHZW5lcmF0ZWRGaWxlQXNTdHJlYW0oYEF0dGFjaG1lbnRQYXRocy5qc29uYCk7XG4gICAgICAgIHJldHVybiByZXN1bHRTdHJlYW07XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIGdldEFsbE5vcm1hbGl6YXRpb25GaWxlTmFtZXMoKTogUHJvbWlzZTxzdHJpbmdbXT4ge1xuICAgICAgICBjb25zdCByZXN1bHQ6IHN0cmluZ1tdID0gW107XG4gICAgICAgIGNvbnN0IGdmdkluZm9zID0gKGF3YWl0IFByb21pc2UuYWxsKHRoaXMuYWxsRmFybURpcmVjdG9yeS5tYXAoaSA9PiBpLmdldEFsbEdmdldpdGhMb2NhdGlvbnMoKSkpKS5mbGF0KCk7XG4gICAgICAgIGZvciAoY29uc3QgeyBnZnYsIGZvcm1QYXRoIH0gb2YgZ2Z2SW5mb3MpIHtcbiAgICAgICAgICAgIGNvbnN0IGZvcm1Db25maWcgPSBhd2FpdCByZWFkRm9ybUNvbmZpZyhcbiAgICAgICAgICAgICAgICBwYXRoLmpvaW4oZm9ybVBhdGgsIFdlbGxLbm93bkRpcmVjdG9yaWVzLkZvcm1Kc29uRmlsZU5hbWUpLFxuICAgICAgICAgICAgICAgIGdldExvZ2dlcigpXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgY29uc3QgdXNlU2VydmVyU2lkZUZMYW5nTm9ybWFsaXphdGlvbiA9IGZvcm1Db25maWcuc2V0dGluZ3M/LnVzZVNlcnZlclNpZGVGTGFuZ05vcm1hbGl6YXRpb24gPz8gZmFsc2U7XG4gICAgICAgICAgICBpZiAodXNlU2VydmVyU2lkZUZMYW5nTm9ybWFsaXphdGlvbikge1xuICAgICAgICAgICAgICAgIHJlc3VsdC5wdXNoKGAke2dmdn0ubm9ybWFsaXplYCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgZ2V0Tm9ybWFsaXphdGlvbkZpbGVDb250ZW50KGdmdjogc3RyaW5nKTogUHJvbWlzZTxOb2RlSlMuUmVhZGFibGVTdHJlYW0+IHtcbiAgICAgICAgY29uc3QgYnVpbGRGb3JtRGV2U2VydmVyID0gYXdhaXQgdGhpcy5nZXRPckNyZWF0ZUJ1aWxkRm9ybURldlNlcnZlcihnZnYpO1xuICAgICAgICBjb25zdCByZXN1bHRTdHJlYW0gPSBhd2FpdCBidWlsZEZvcm1EZXZTZXJ2ZXIuZ2V0R2VuZXJhdGVkRmlsZUFzU3RyZWFtKGBTZXJ2ZXJTaWRlLm5vcm1hbGl6ZWApO1xuICAgICAgICByZXR1cm4gcmVzdWx0U3RyZWFtO1xuICAgIH1cblxuICAgIHByaXZhdGUgYXN5bmMgZ2V0T3JDcmVhdGVCdWlsZEZvcm1EZXZTZXJ2ZXIoZ2Z2OiBzdHJpbmcpOiBQcm9taXNlPEJ1aWxkRm9ybURldlNlcnZlcj4ge1xuICAgICAgICBsZXQgZGV2U2VydmVyID0gdGhpcy5kZXZTZXJ2ZXJzW2dmdl07XG4gICAgICAgIGlmIChkZXZTZXJ2ZXIgPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBkZXZTZXJ2ZXIgPSBuZXcgQnVpbGRGb3JtRGV2U2VydmVyKFxuICAgICAgICAgICAgICAgIHRoaXMubmV4dEZyZWVQb3J0KyssXG4gICAgICAgICAgICAgICAgdGhpcy5hbGxGYXJtRGlyZWN0b3J5UGF0aCxcbiAgICAgICAgICAgICAgICBnZnYsXG4gICAgICAgICAgICAgICAgdGhpcy5jYW5keU1vZHVsZXNEaXJlY3RvcnksXG4gICAgICAgICAgICAgICAgdGhpcy5hbGxGYXJtQ29uZmlnLFxuICAgICAgICAgICAgICAgIHRoaXMudXNlR2VuZXJhdG9yRnJvbUxvY2FsU291cmNlcyxcbiAgICAgICAgICAgICAgICB0aGlzLmVuZ2luZURpcmVjdG9yeSxcbiAgICAgICAgICAgICAgICB0aGlzLmJ1aWxkRGVidWdPbmx5LFxuICAgICAgICAgICAgICAgIGZhbHNlLFxuICAgICAgICAgICAgICAgIHRoaXMubmlnaHRseVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIHRoaXMuZGV2U2VydmVyc1tnZnZdID0gZGV2U2VydmVyO1xuICAgICAgICAgICAgYXdhaXQgZGV2U2VydmVyLnN0YXJ0KCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGRldlNlcnZlcjtcbiAgICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsSUFBQUEsSUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUMsVUFBQSxHQUFBQyxzQkFBQSxDQUFBRixPQUFBO0FBR0EsSUFBQUcsZ0JBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLFFBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLGlCQUFBLEdBQUFMLE9BQUE7QUFDQSxJQUFBTSxPQUFBLEdBQUFOLE9BQUE7QUFDQSxJQUFBTyxRQUFBLEdBQUFQLE9BQUE7QUFDQSxJQUFBUSxvQkFBQSxHQUFBUixPQUFBO0FBQ0EsSUFBQVMsb0JBQUEsR0FBQVQsT0FBQTtBQUNBLElBQUFVLGFBQUEsR0FBQVYsT0FBQTtBQUNBLElBQUFXLHFCQUFBLEdBQUFYLE9BQUE7QUFFQSxJQUFBWSxtQkFBQSxHQUFBWixPQUFBO0FB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