@kontur.candy/tools 2.210.1-cgroupv2.0 → 2.210.1-cgroupv2.1

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 (625) hide show
  1. package/distr/Common/AsyncUtils.js +18 -0
  2. package/distr/Common/AsyncUtils.js.map +1 -0
  3. package/distr/Common/AutoValidationUtils.js +8 -0
  4. package/distr/Common/AutoValidationUtils.js.map +1 -0
  5. package/distr/Common/CandyApiClient/CandyApiClient.js +578 -0
  6. package/distr/Common/CandyApiClient/CandyApiClient.js.map +1 -0
  7. package/distr/Common/CandyApiClient/CandyApiClientContext.js +18 -0
  8. package/distr/Common/CandyApiClient/CandyApiClientContext.js.map +1 -0
  9. package/distr/Common/CandyApiClient/ClientDraftInfo/ClientDraftInfoResponse.js +6 -0
  10. package/distr/Common/CandyApiClient/ClientDraftInfo/ClientDraftInfoResponse.js.map +1 -0
  11. package/distr/Common/CandyApiClient/ClientDraftInfo/FnsFormInfo.js +6 -0
  12. package/distr/Common/CandyApiClient/ClientDraftInfo/FnsFormInfo.js.map +1 -0
  13. package/distr/Common/CandyApiClient/ClientDraftInfo/GetClientDraftInfoUrl.js +12 -0
  14. package/distr/Common/CandyApiClient/ClientDraftInfo/GetClientDraftInfoUrl.js.map +1 -0
  15. package/distr/Common/CandyApiClient/ClientDraftInfo/PrintInfo.js +6 -0
  16. package/distr/Common/CandyApiClient/ClientDraftInfo/PrintInfo.js.map +1 -0
  17. package/distr/Common/CandyApiClient/DigestApiClient/Decorators/DigestApiClientWithCache.js +33 -0
  18. package/distr/Common/CandyApiClient/DigestApiClient/Decorators/DigestApiClientWithCache.js.map +1 -0
  19. package/distr/Common/CandyApiClient/DigestApiClient/Decorators/DigestApiClientWithDebouncedBatching.js +35 -0
  20. package/distr/Common/CandyApiClient/DigestApiClient/Decorators/DigestApiClientWithDebouncedBatching.js.map +1 -0
  21. package/distr/Common/CandyApiClient/DigestApiClient/DigestApiClient.js +20 -0
  22. package/distr/Common/CandyApiClient/DigestApiClient/DigestApiClient.js.map +1 -0
  23. package/distr/Common/CandyApiClient/DigestApiClient/Fakes/Data/TaxRebate1152026.js +89 -0
  24. package/distr/Common/CandyApiClient/DigestApiClient/Fakes/Data/TaxRebate1152026.js.map +1 -0
  25. package/distr/Common/CandyApiClient/DigestApiClient/Fakes/FakeDigestApiClient.js +42 -0
  26. package/distr/Common/CandyApiClient/DigestApiClient/Fakes/FakeDigestApiClient.js.map +1 -0
  27. package/distr/Common/CandyApiClient/DigestApiClient/Fakes/FakePicklists.js +9 -0
  28. package/distr/Common/CandyApiClient/DigestApiClient/Fakes/FakePicklists.js.map +1 -0
  29. package/distr/Common/CandyApiClient/DigestApiClient/IDigestApiClient.js +6 -0
  30. package/distr/Common/CandyApiClient/DigestApiClient/IDigestApiClient.js.map +1 -0
  31. package/distr/Common/CandyApiClient/DigestApiClient/React/DigestApiClientContext.js +18 -0
  32. package/distr/Common/CandyApiClient/DigestApiClient/React/DigestApiClientContext.js.map +1 -0
  33. package/distr/Common/CandyApiClient/DigestApiClient/TestDigestApiClient.js +15 -0
  34. package/distr/Common/CandyApiClient/DigestApiClient/TestDigestApiClient.js.map +1 -0
  35. package/distr/Common/CandyApiClient/DigestApiClient/Types/DigestQueryFilter.js +19 -0
  36. package/distr/Common/CandyApiClient/DigestApiClient/Types/DigestQueryFilter.js.map +1 -0
  37. package/distr/Common/CandyApiClient/DigestApiClient/Types/DigestRequest.js +6 -0
  38. package/distr/Common/CandyApiClient/DigestApiClient/Types/DigestRequest.js.map +1 -0
  39. package/distr/Common/CandyApiClient/FakeCandyApiClient.js +248 -0
  40. package/distr/Common/CandyApiClient/FakeCandyApiClient.js.map +1 -0
  41. package/distr/Common/CandyApiClient/ICandyApiClient.js +6 -0
  42. package/distr/Common/CandyApiClient/ICandyApiClient.js.map +1 -0
  43. package/distr/Common/CandyApiClient/IsBuffer.js +15 -0
  44. package/distr/Common/CandyApiClient/IsBuffer.js.map +1 -0
  45. package/distr/Common/CandyApiClient/Types/Attachments/Attacments.js +6 -0
  46. package/distr/Common/CandyApiClient/Types/Attachments/Attacments.js.map +1 -0
  47. package/distr/Common/CandyApiClient/Types/Attachments/GetAttachmentsResponse.js +6 -0
  48. package/distr/Common/CandyApiClient/Types/Attachments/GetAttachmentsResponse.js.map +1 -0
  49. package/distr/Common/CandyApiClient/Types/ChangeSet/ServerChangeSet.js +6 -0
  50. package/distr/Common/CandyApiClient/Types/ChangeSet/ServerChangeSet.js.map +1 -0
  51. package/distr/Common/CandyApiClient/Types/CreateDraft/CreateDraftResponse.js +6 -0
  52. package/distr/Common/CandyApiClient/Types/CreateDraft/CreateDraftResponse.js.map +1 -0
  53. package/distr/Common/CandyApiClient/Types/DiagResourcesResponse.js +6 -0
  54. package/distr/Common/CandyApiClient/Types/DiagResourcesResponse.js.map +1 -0
  55. package/distr/Common/CandyApiClient/Types/DraftActions/CombineFufResult.js +24 -0
  56. package/distr/Common/CandyApiClient/Types/DraftActions/CombineFufResult.js.map +1 -0
  57. package/distr/Common/CandyApiClient/Types/DraftActions/ConvertDraftRequest.js +6 -0
  58. package/distr/Common/CandyApiClient/Types/DraftActions/ConvertDraftRequest.js.map +1 -0
  59. package/distr/Common/CandyApiClient/Types/DraftActions/FileProperties.js +6 -0
  60. package/distr/Common/CandyApiClient/Types/DraftActions/FileProperties.js.map +1 -0
  61. package/distr/Common/CandyApiClient/Types/DraftActions/FufSizeTooLargeError.js +9 -0
  62. package/distr/Common/CandyApiClient/Types/DraftActions/FufSizeTooLargeError.js.map +1 -0
  63. package/distr/Common/CandyApiClient/Types/DraftFullId.js +6 -0
  64. package/distr/Common/CandyApiClient/Types/DraftFullId.js.map +1 -0
  65. package/distr/Common/CandyApiClient/Types/ErrorLog/CandyPopdProtocol.js +12 -0
  66. package/distr/Common/CandyApiClient/Types/ErrorLog/CandyPopdProtocol.js.map +1 -0
  67. package/distr/Common/CandyApiClient/Types/ErrorLog/ResolveInnerPathRequest.js +6 -0
  68. package/distr/Common/CandyApiClient/Types/ErrorLog/ResolveInnerPathRequest.js.map +1 -0
  69. package/distr/Common/CandyApiClient/Types/ErrorLog/ResolvePathResponse.js +6 -0
  70. package/distr/Common/CandyApiClient/Types/ErrorLog/ResolvePathResponse.js.map +1 -0
  71. package/distr/Common/CandyApiClient/Types/ErrorLog/ServerErrorLog.js +17 -0
  72. package/distr/Common/CandyApiClient/Types/ErrorLog/ServerErrorLog.js.map +1 -0
  73. package/distr/Common/CandyApiClient/Types/ExplanatoryNote/CreateExplanatoryNoteResponse.js +13 -0
  74. package/distr/Common/CandyApiClient/Types/ExplanatoryNote/CreateExplanatoryNoteResponse.js.map +1 -0
  75. package/distr/Common/CandyApiClient/Types/FeatureFlags/FeatureFlagsResponse.js +6 -0
  76. package/distr/Common/CandyApiClient/Types/FeatureFlags/FeatureFlagsResponse.js.map +1 -0
  77. package/distr/Common/CandyApiClient/Types/Focus/FocusServerResponse.js +6 -0
  78. package/distr/Common/CandyApiClient/Types/Focus/FocusServerResponse.js.map +1 -0
  79. package/distr/Common/CandyApiClient/Types/Focus/FocusTypes.js +15 -0
  80. package/distr/Common/CandyApiClient/Types/Focus/FocusTypes.js.map +1 -0
  81. package/distr/Common/CandyApiClient/Types/GetInner/ServerInnerResponse.js +6 -0
  82. package/distr/Common/CandyApiClient/Types/GetInner/ServerInnerResponse.js.map +1 -0
  83. package/distr/Common/CandyApiClient/Types/GetInner/ServerRawResponse.js +9 -0
  84. package/distr/Common/CandyApiClient/Types/GetInner/ServerRawResponse.js.map +1 -0
  85. package/distr/Common/CandyApiClient/Types/GetInner/ServerRequisitesResponse.js +6 -0
  86. package/distr/Common/CandyApiClient/Types/GetInner/ServerRequisitesResponse.js.map +1 -0
  87. package/distr/Common/CandyApiClient/Types/Guid.js +6 -0
  88. package/distr/Common/CandyApiClient/Types/Guid.js.map +1 -0
  89. package/distr/Common/CandyApiClient/Types/InstancesDeleting/InstancesDeletingRule.js +6 -0
  90. package/distr/Common/CandyApiClient/Types/InstancesDeleting/InstancesDeletingRule.js.map +1 -0
  91. package/distr/Common/CandyApiClient/Types/MassActions/MassActionParameters.js +6 -0
  92. package/distr/Common/CandyApiClient/Types/MassActions/MassActionParameters.js.map +1 -0
  93. package/distr/Common/CandyApiClient/Types/MassActions/ValueForInstancesSettingRule.js +6 -0
  94. package/distr/Common/CandyApiClient/Types/MassActions/ValueForInstancesSettingRule.js.map +1 -0
  95. package/distr/Common/CandyApiClient/Types/Presentations/DraftPresentationType.js +24 -0
  96. package/distr/Common/CandyApiClient/Types/Presentations/DraftPresentationType.js.map +1 -0
  97. package/distr/Common/CandyApiClient/Types/Presentations/PresentationContent.js +6 -0
  98. package/distr/Common/CandyApiClient/Types/Presentations/PresentationContent.js.map +1 -0
  99. package/distr/Common/CandyApiClient/Types/Print/PrintResponse.js +6 -0
  100. package/distr/Common/CandyApiClient/Types/Print/PrintResponse.js.map +1 -0
  101. package/distr/Common/CandyApiClient/Types/Print/PrintType.js +12 -0
  102. package/distr/Common/CandyApiClient/Types/Print/PrintType.js.map +1 -0
  103. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/AndExpression.js +15 -0
  104. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/AndExpression.js.map +1 -0
  105. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/CompareExpression.js +19 -0
  106. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/CompareExpression.js.map +1 -0
  107. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/CountCallExpression.js +15 -0
  108. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/CountCallExpression.js.map +1 -0
  109. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/DecimalConstantExpression.js +15 -0
  110. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/DecimalConstantExpression.js.map +1 -0
  111. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/InstanceIdCallExpression.js +13 -0
  112. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/InstanceIdCallExpression.js.map +1 -0
  113. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/NotExpression.js +15 -0
  114. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/NotExpression.js.map +1 -0
  115. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/OrExpression.js +15 -0
  116. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/OrExpression.js.map +1 -0
  117. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/StringConstantExpression.js +15 -0
  118. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/StringConstantExpression.js.map +1 -0
  119. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/StringMatchExpression.js +21 -0
  120. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/StringMatchExpression.js.map +1 -0
  121. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/SumCallExpression.js +15 -0
  122. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/SumCallExpression.js.map +1 -0
  123. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/TernaryExpression.js +19 -0
  124. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/TernaryExpression.js.map +1 -0
  125. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/ValueReferenceExpression.js +15 -0
  126. package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/ValueReferenceExpression.js.map +1 -0
  127. package/distr/Common/CandyApiClient/Types/QueryCollecton/InnerQueryExpression.js +6 -0
  128. package/distr/Common/CandyApiClient/Types/QueryCollecton/InnerQueryExpression.js.map +1 -0
  129. package/distr/Common/CandyApiClient/Types/QueryCollecton/InnerQueryRequest.js +26 -0
  130. package/distr/Common/CandyApiClient/Types/QueryCollecton/InnerQueryRequest.js.map +1 -0
  131. package/distr/Common/CandyApiClient/Types/QueryCollecton/InnerQueryResponse.js +6 -0
  132. package/distr/Common/CandyApiClient/Types/QueryCollecton/InnerQueryResponse.js.map +1 -0
  133. package/distr/Common/CandyApiClient/Types/QueryCollecton/SelectClause.js +16 -0
  134. package/distr/Common/CandyApiClient/Types/QueryCollecton/SelectClause.js.map +1 -0
  135. package/distr/Common/CandyApiClient/Types/QueryCollecton/SortingRule.js +16 -0
  136. package/distr/Common/CandyApiClient/Types/QueryCollecton/SortingRule.js.map +1 -0
  137. package/distr/Common/CandyApiClient/Types/Staff/EmployeeInfo.js +6 -0
  138. package/distr/Common/CandyApiClient/Types/Staff/EmployeeInfo.js.map +1 -0
  139. package/distr/Common/CandyApiClient/Types/Staff/ImportEmployeesOptions.js +6 -0
  140. package/distr/Common/CandyApiClient/Types/Staff/ImportEmployeesOptions.js.map +1 -0
  141. package/distr/Common/CandyApiClient/Types/Staff/ImportEmployeesRequest.js +6 -0
  142. package/distr/Common/CandyApiClient/Types/Staff/ImportEmployeesRequest.js.map +1 -0
  143. package/distr/Common/CandyApiClient/Types/Staff/StaffInfo.js +6 -0
  144. package/distr/Common/CandyApiClient/Types/Staff/StaffInfo.js.map +1 -0
  145. package/distr/Common/CandyApiClient/Types/Tasks/GetTasksServerResponse.js +6 -0
  146. package/distr/Common/CandyApiClient/Types/Tasks/GetTasksServerResponse.js.map +1 -0
  147. package/distr/Common/CandyApiClient/Types/Tasks/Tasks.js +14 -0
  148. package/distr/Common/CandyApiClient/Types/Tasks/Tasks.js.map +1 -0
  149. package/distr/Common/CollectionUtils.js +15 -0
  150. package/distr/Common/CollectionUtils.js.map +1 -0
  151. package/distr/Common/CommonConstants/SectionNames.js +11 -0
  152. package/distr/Common/CommonConstants/SectionNames.js.map +1 -0
  153. package/distr/Common/Comparers.js +63 -0
  154. package/distr/Common/Comparers.js.map +1 -0
  155. package/distr/Common/EmotionStorybookWorkaroundViaAliases.js +22 -0
  156. package/distr/Common/EmotionStorybookWorkaroundViaAliases.js.map +1 -0
  157. package/distr/Common/EndPoints.js +16 -0
  158. package/distr/Common/EndPoints.js.map +1 -0
  159. package/distr/Common/Enums/ButtonSettingsTypeEnum.js +12 -0
  160. package/distr/Common/Enums/ButtonSettingsTypeEnum.js.map +1 -0
  161. package/distr/Common/Errors.js +44 -0
  162. package/distr/Common/Errors.js.map +1 -0
  163. package/distr/Common/ExtractGFVPath/ExtractGFVPath.js +31 -0
  164. package/distr/Common/ExtractGFVPath/ExtractGFVPath.js.map +1 -0
  165. package/distr/Common/FSPrinterClient/FSPrinterClient.js +153 -0
  166. package/distr/Common/FSPrinterClient/FSPrinterClient.js.map +1 -0
  167. package/distr/Common/FSPrinterClient/FakeFSPrinterClient.js +19 -0
  168. package/distr/Common/FSPrinterClient/FakeFSPrinterClient.js.map +1 -0
  169. package/distr/Common/FSPrinterClient/IFSPrinterClient.js +39 -0
  170. package/distr/Common/FSPrinterClient/IFSPrinterClient.js.map +1 -0
  171. package/distr/Common/FormActionHandlers/ContextualActionNames.js +14 -0
  172. package/distr/Common/FormActionHandlers/ContextualActionNames.js.map +1 -0
  173. package/distr/Common/FormActionHandlers/ControlNamedContextualAction.js +6 -0
  174. package/distr/Common/FormActionHandlers/ControlNamedContextualAction.js.map +1 -0
  175. package/distr/Common/FormPathUtils.js +21 -0
  176. package/distr/Common/FormPathUtils.js.map +1 -0
  177. package/distr/Common/Funcs.js +11 -0
  178. package/distr/Common/Funcs.js.map +1 -0
  179. package/distr/Common/GFV.js +6 -0
  180. package/distr/Common/GFV.js.map +1 -0
  181. package/distr/Common/GetRngSchemaFileExtension.js +26 -0
  182. package/distr/Common/GetRngSchemaFileExtension.js.map +1 -0
  183. package/distr/Common/Hooks/UseLocalStorage.js +35 -0
  184. package/distr/Common/Hooks/UseLocalStorage.js.map +1 -0
  185. package/distr/Common/HttpClient/AuthenticationMode.js +31 -0
  186. package/distr/Common/HttpClient/AuthenticationMode.js.map +1 -0
  187. package/distr/Common/HttpClient/FetchImplementation/BrowserFetchWithOptionalPolyfill.js +9 -0
  188. package/distr/Common/HttpClient/FetchImplementation/BrowserFetchWithOptionalPolyfill.js.map +1 -0
  189. package/distr/Common/HttpClient/FetchImplementation/BrowserFetchWithPolyfill.js +9 -0
  190. package/distr/Common/HttpClient/FetchImplementation/BrowserFetchWithPolyfill.js.map +1 -0
  191. package/distr/Common/HttpClient/FetchImplementation/Fetch.js +6 -0
  192. package/distr/Common/HttpClient/FetchImplementation/Fetch.js.map +1 -0
  193. package/distr/Common/HttpClient/FetchImplementation/NativeBrowserFetch.js +8 -0
  194. package/distr/Common/HttpClient/FetchImplementation/NativeBrowserFetch.js.map +1 -0
  195. package/distr/Common/HttpClient/FetchImplementation/NodeFetch.js +36 -0
  196. package/distr/Common/HttpClient/FetchImplementation/NodeFetch.js.map +1 -0
  197. package/distr/Common/HttpClient/HttpClient.js +313 -0
  198. package/distr/Common/HttpClient/HttpClient.js.map +1 -0
  199. package/distr/Common/HttpClient/HttpClientAuthenticationProvider.js +6 -0
  200. package/distr/Common/HttpClient/HttpClientAuthenticationProvider.js.map +1 -0
  201. package/distr/Common/HttpClient/IHttpClient.js +6 -0
  202. package/distr/Common/HttpClient/IHttpClient.js.map +1 -0
  203. package/distr/Common/IndentString.js +16 -0
  204. package/distr/Common/IndentString.js.map +1 -0
  205. package/distr/Common/IntRangeUtils.js +32 -0
  206. package/distr/Common/IntRangeUtils.js.map +1 -0
  207. package/distr/Common/IterableUtils.js +288 -0
  208. package/distr/Common/IterableUtils.js.map +1 -0
  209. package/distr/Common/KCLangRuntimeUtils.js +266 -0
  210. package/distr/Common/KCLangRuntimeUtils.js.map +1 -0
  211. package/distr/Common/ModelPath/AbsoluteModelFieldPath.js +55 -0
  212. package/distr/Common/ModelPath/AbsoluteModelFieldPath.js.map +1 -0
  213. package/distr/Common/ModelPath/BuildIterationSequence.js +41 -0
  214. package/distr/Common/ModelPath/BuildIterationSequence.js.map +1 -0
  215. package/distr/Common/ModelPath/EachCurrentCollision.js +12 -0
  216. package/distr/Common/ModelPath/EachCurrentCollision.js.map +1 -0
  217. package/distr/Common/ModelPath/IEquatable.js +6 -0
  218. package/distr/Common/ModelPath/IEquatable.js.map +1 -0
  219. package/distr/Common/ModelPath/Map/AbsoluteModelPathMap.js +23 -0
  220. package/distr/Common/ModelPath/Map/AbsoluteModelPathMap.js.map +1 -0
  221. package/distr/Common/ModelPath/Map/Map2.js +99 -0
  222. package/distr/Common/ModelPath/Map/Map2.js.map +1 -0
  223. package/distr/Common/ModelPath/Map/ModelPathMap.js +23 -0
  224. package/distr/Common/ModelPath/Map/ModelPathMap.js.map +1 -0
  225. package/distr/Common/ModelPath/ModelPath.js +476 -0
  226. package/distr/Common/ModelPath/ModelPath.js.map +1 -0
  227. package/distr/Common/ModelPath/ModelPathBuilder.js +42 -0
  228. package/distr/Common/ModelPath/ModelPathBuilder.js.map +1 -0
  229. package/distr/Common/ModelPath/ModelPathHelper.js +34 -0
  230. package/distr/Common/ModelPath/ModelPathHelper.js.map +1 -0
  231. package/distr/Common/ModelPath/PathMatcher.js +95 -0
  232. package/distr/Common/ModelPath/PathMatcher.js.map +1 -0
  233. package/distr/Common/ModelPath/PathSplitHelper.js +21 -0
  234. package/distr/Common/ModelPath/PathSplitHelper.js.map +1 -0
  235. package/distr/Common/ModelPath/Set/AbsoluteModelPathSet.js +31 -0
  236. package/distr/Common/ModelPath/Set/AbsoluteModelPathSet.js.map +1 -0
  237. package/distr/Common/ModelPath/Set/AbsoluteResolvedModelPathSet.js +31 -0
  238. package/distr/Common/ModelPath/Set/AbsoluteResolvedModelPathSet.js.map +1 -0
  239. package/distr/Common/ModelPath/Set/ModelPathSet.js +31 -0
  240. package/distr/Common/ModelPath/Set/ModelPathSet.js.map +1 -0
  241. package/distr/Common/ModelPath/Set/Set2.js +59 -0
  242. package/distr/Common/ModelPath/Set/Set2.js.map +1 -0
  243. package/distr/Common/NidusClient/ContextualNidusClient/ContextualNidusClient.js +33 -0
  244. package/distr/Common/NidusClient/ContextualNidusClient/ContextualNidusClient.js.map +1 -0
  245. package/distr/Common/NidusClient/ContextualNidusClient/IContextualNidusClient.js +6 -0
  246. package/distr/Common/NidusClient/ContextualNidusClient/IContextualNidusClient.js.map +1 -0
  247. package/distr/Common/NidusClient/Fakes/CreateUniqueNidusEntryId.js +11 -0
  248. package/distr/Common/NidusClient/Fakes/CreateUniqueNidusEntryId.js.map +1 -0
  249. package/distr/Common/NidusClient/Fakes/FakeNidusClient.js +66 -0
  250. package/distr/Common/NidusClient/Fakes/FakeNidusClient.js.map +1 -0
  251. package/distr/Common/NidusClient/Fakes/LocalStorageBasedNidusClient.js +108 -0
  252. package/distr/Common/NidusClient/Fakes/LocalStorageBasedNidusClient.js.map +1 -0
  253. package/distr/Common/NidusClient/INidusClient.js +14 -0
  254. package/distr/Common/NidusClient/INidusClient.js.map +1 -0
  255. package/distr/Common/NidusClient/NidusClientContext.js +34 -0
  256. package/distr/Common/NidusClient/NidusClientContext.js.map +1 -0
  257. package/distr/Common/NidusClient/NidusClientImpl.js +55 -0
  258. package/distr/Common/NidusClient/NidusClientImpl.js.map +1 -0
  259. package/distr/Common/PathConstants.js +11 -0
  260. package/distr/Common/PathConstants.js.map +1 -0
  261. package/distr/Common/PicklistApiClient/IPicklistApiClient.js +6 -0
  262. package/distr/Common/PicklistApiClient/IPicklistApiClient.js.map +1 -0
  263. package/distr/Common/PicklistApiClient/PicklistApiClient.js +31 -0
  264. package/distr/Common/PicklistApiClient/PicklistApiClient.js.map +1 -0
  265. package/distr/Common/PicklistApiClient/PicklistRequestV2Builder.js +36 -0
  266. package/distr/Common/PicklistApiClient/PicklistRequestV2Builder.js.map +1 -0
  267. package/distr/Common/PicklistApiClient/Serializers/DigestFilterColumnSerializer.js +53 -0
  268. package/distr/Common/PicklistApiClient/Serializers/DigestFilterColumnSerializer.js.map +1 -0
  269. package/distr/Common/PicklistApiClient/Serializers/DigestLogicalFilterSerializer.js +37 -0
  270. package/distr/Common/PicklistApiClient/Serializers/DigestLogicalFilterSerializer.js.map +1 -0
  271. package/distr/Common/PicklistApiClient/Types/PicklistRequestV2.js +6 -0
  272. package/distr/Common/PicklistApiClient/Types/PicklistRequestV2.js.map +1 -0
  273. package/distr/Common/PicklistApiClient/Types/PicklistResultV2.js +6 -0
  274. package/distr/Common/PicklistApiClient/Types/PicklistResultV2.js.map +1 -0
  275. package/distr/Common/RngSchemeTypes/types.js +6 -0
  276. package/distr/Common/RngSchemeTypes/types.js.map +1 -0
  277. package/distr/Common/StringArrayKey.js +26 -0
  278. package/distr/Common/StringArrayKey.js.map +1 -0
  279. package/distr/Common/TextExtractor/TextExtractorTypes.js +6 -0
  280. package/distr/Common/TextExtractor/TextExtractorTypes.js.map +1 -0
  281. package/distr/Common/TypingUtils.js +118 -0
  282. package/distr/Common/TypingUtils.js.map +1 -0
  283. package/distr/Common/UUID.js +14 -0
  284. package/distr/Common/UUID.js.map +1 -0
  285. package/distr/Common/UseAsyncEffect.js +20 -0
  286. package/distr/Common/UseAsyncEffect.js.map +1 -0
  287. package/distr/Common/UseShowOnce.js +60 -0
  288. package/distr/Common/UseShowOnce.js.map +1 -0
  289. package/distr/Common/UseTypedSelector.js +10 -0
  290. package/distr/Common/UseTypedSelector.js.map +1 -0
  291. package/distr/Common/WellKnownDirectories.js +14 -0
  292. package/distr/Common/WellKnownDirectories.js.map +1 -0
  293. package/distr/Common/hashUtils.js +14 -0
  294. package/distr/Common/hashUtils.js.map +1 -0
  295. package/distr/Tools/src/BuildTasks/ClientJS/BuildClientJsTask.js +77 -0
  296. package/distr/Tools/src/BuildTasks/ClientJS/BuildClientJsTask.js.map +1 -0
  297. package/distr/Tools/src/BuildTasks/ClientJS/IsWebpack5.js +14 -0
  298. package/distr/Tools/src/BuildTasks/ClientJS/IsWebpack5.js.map +1 -0
  299. package/distr/Tools/src/BuildTasks/Engine/AcquireFormEngine.js +22 -0
  300. package/distr/Tools/src/BuildTasks/Engine/AcquireFormEngine.js.map +1 -0
  301. package/distr/Tools/src/BuildTasks/Engine/AcquirePublishedEngineTask.js +88 -0
  302. package/distr/Tools/src/BuildTasks/Engine/AcquirePublishedEngineTask.js.map +1 -0
  303. package/distr/Tools/src/BuildTasks/Engine/BuildLocalEngineTask.js +82 -0
  304. package/distr/Tools/src/BuildTasks/Engine/BuildLocalEngineTask.js.map +1 -0
  305. package/distr/Tools/src/BuildTasks/Engine/EngineSource.js +10 -0
  306. package/distr/Tools/src/BuildTasks/Engine/EngineSource.js.map +1 -0
  307. package/distr/Tools/src/BuildTasks/EngineStructureUtils.js +42 -0
  308. package/distr/Tools/src/BuildTasks/EngineStructureUtils.js.map +1 -0
  309. package/distr/Tools/src/BuildTasks/EngineVersionUtils.js +30 -0
  310. package/distr/Tools/src/BuildTasks/EngineVersionUtils.js.map +1 -0
  311. package/distr/Tools/src/BuildTasks/FSTask.js +67 -0
  312. package/distr/Tools/src/BuildTasks/FSTask.js.map +1 -0
  313. package/distr/Tools/src/BuildTasks/Form/CompileForm.js +52 -0
  314. package/distr/Tools/src/BuildTasks/Form/CompileForm.js.map +1 -0
  315. package/distr/Tools/src/BuildTasks/Form/GenerateForm.js +44 -0
  316. package/distr/Tools/src/BuildTasks/Form/GenerateForm.js.map +1 -0
  317. package/distr/Tools/src/BuildTasks/Form/NullFormGenerator.js +37 -0
  318. package/distr/Tools/src/BuildTasks/Form/NullFormGenerator.js.map +1 -0
  319. package/distr/Tools/src/BuildTasks/Form/WriteAttachmentPathFiles.js +25 -0
  320. package/distr/Tools/src/BuildTasks/Form/WriteAttachmentPathFiles.js.map +1 -0
  321. package/distr/Tools/src/BuildTasks/Form/WriteFLangNormalizationFiles.js +31 -0
  322. package/distr/Tools/src/BuildTasks/Form/WriteFLangNormalizationFiles.js.map +1 -0
  323. package/distr/Tools/src/BuildTasks/Generator/AcquireFormGenerator.js +27 -0
  324. package/distr/Tools/src/BuildTasks/Generator/AcquireFormGenerator.js.map +1 -0
  325. package/distr/Tools/src/BuildTasks/Generator/AcquirePublishedGeneratorTask.js +95 -0
  326. package/distr/Tools/src/BuildTasks/Generator/AcquirePublishedGeneratorTask.js.map +1 -0
  327. package/distr/Tools/src/BuildTasks/Generator/BuildGeneratorFromSourcesTask.js +126 -0
  328. package/distr/Tools/src/BuildTasks/Generator/BuildGeneratorFromSourcesTask.js.map +1 -0
  329. package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/CreateAsyncGenerator.js +174 -0
  330. package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/CreateAsyncGenerator.js.map +1 -0
  331. package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/GeneratorRequireUtils.js +121 -0
  332. package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/GeneratorRequireUtils.js.map +1 -0
  333. package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/ProcessSugarWorker.js +45 -0
  334. package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/ProcessSugarWorker.js.map +1 -0
  335. package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/ReadSourcesAndProcessSugarWorker.js +52 -0
  336. package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/ReadSourcesAndProcessSugarWorker.js.map +1 -0
  337. package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/RequireUncached.js +49 -0
  338. package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/RequireUncached.js.map +1 -0
  339. package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/TypedProcessWorker.js +19 -0
  340. package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/TypedProcessWorker.js.map +1 -0
  341. package/distr/Tools/src/BuildTasks/ProcessUtils/ProcessUtils.js +64 -0
  342. package/distr/Tools/src/BuildTasks/ProcessUtils/ProcessUtils.js.map +1 -0
  343. package/distr/Tools/src/BuildTasks/ProcessUtils/ShellProcessHandle.js +84 -0
  344. package/distr/Tools/src/BuildTasks/ProcessUtils/ShellProcessHandle.js.map +1 -0
  345. package/distr/Tools/src/BuildTasks/PublishedVersionUtils.js +174 -0
  346. package/distr/Tools/src/BuildTasks/PublishedVersionUtils.js.map +1 -0
  347. package/distr/Tools/src/BuildTasks/ReadFormSource.js +112 -0
  348. package/distr/Tools/src/BuildTasks/ReadFormSource.js.map +1 -0
  349. package/distr/Tools/src/BuildTasks/ResolveFormInfo.js +107 -0
  350. package/distr/Tools/src/BuildTasks/ResolveFormInfo.js.map +1 -0
  351. package/distr/Tools/src/BuildTasks/Version.js +41 -0
  352. package/distr/Tools/src/BuildTasks/Version.js.map +1 -0
  353. package/distr/Tools/src/BuildTasks/WriteFormMeta.js +27 -0
  354. package/distr/Tools/src/BuildTasks/WriteFormMeta.js.map +1 -0
  355. package/distr/Tools/src/CLICommands/BuildForms/BuildCacheMode.js +28 -0
  356. package/distr/Tools/src/CLICommands/BuildForms/BuildCacheMode.js.map +1 -0
  357. package/distr/Tools/src/CLICommands/BuildForms/BuildFormsOptions.js +169 -0
  358. package/distr/Tools/src/CLICommands/BuildForms/BuildFormsOptions.js.map +1 -0
  359. package/distr/Tools/src/CLICommands/BuildForms/ClearSourceMapForProduction.js +24 -0
  360. package/distr/Tools/src/CLICommands/BuildForms/ClearSourceMapForProduction.js.map +1 -0
  361. package/distr/Tools/src/CLICommands/BuildForms/RunBuildForms.js +234 -0
  362. package/distr/Tools/src/CLICommands/BuildForms/RunBuildForms.js.map +1 -0
  363. package/distr/Tools/src/CLICommands/BuildServer/BuildLogsWebsocketController.js +36 -0
  364. package/distr/Tools/src/CLICommands/BuildServer/BuildLogsWebsocketController.js.map +1 -0
  365. package/distr/Tools/src/CLICommands/BuildServer/BuildServerServerOptions.js +112 -0
  366. package/distr/Tools/src/CLICommands/BuildServer/BuildServerServerOptions.js.map +1 -0
  367. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerBackendResourcesController.js +158 -0
  368. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerBackendResourcesController.js.map +1 -0
  369. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerBackendResourcesUpdatesController.js +94 -0
  370. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerBackendResourcesUpdatesController.js.map +1 -0
  371. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerBuildFormsController.js +129 -0
  372. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerBuildFormsController.js.map +1 -0
  373. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerCandyWidgetController.js +45 -0
  374. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerCandyWidgetController.js.map +1 -0
  375. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerClientJsController.js +76 -0
  376. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerClientJsController.js.map +1 -0
  377. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerClientJsFromResourcesController.js +67 -0
  378. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerClientJsFromResourcesController.js.map +1 -0
  379. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerFormInfoController.js +65 -0
  380. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerFormInfoController.js.map +1 -0
  381. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerLocalSourcesEngineController.js +117 -0
  382. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerLocalSourcesEngineController.js.map +1 -0
  383. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerPrebuiltResourcesController.js +22 -0
  384. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerPrebuiltResourcesController.js.map +1 -0
  385. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerPublishedEngineController.js +96 -0
  386. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerPublishedEngineController.js.map +1 -0
  387. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/BuildFormDevServer.js +231 -0
  388. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/BuildFormDevServer.js.map +1 -0
  389. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/CandyWidgetDevServer.js +70 -0
  390. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/CandyWidgetDevServer.js.map +1 -0
  391. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/ClientJsDevServer.js +57 -0
  392. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/ClientJsDevServer.js.map +1 -0
  393. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/EngineDevServer.js +67 -0
  394. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/EngineDevServer.js.map +1 -0
  395. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/ReportGeneratorErrorToPageBody.js +21 -0
  396. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/ReportGeneratorErrorToPageBody.js.map +1 -0
  397. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/RunFormCompilationViaWebpackDevServer.js +52 -0
  398. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/RunFormCompilationViaWebpackDevServer.js.map +1 -0
  399. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackDevServerWorker/WebpackDevServerWorker.js +80 -0
  400. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackDevServerWorker/WebpackDevServerWorker.js.map +1 -0
  401. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackDevServerWorker/WebpackDevServerWorkerFactory.js +31 -0
  402. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackDevServerWorker/WebpackDevServerWorkerFactory.js.map +1 -0
  403. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackInMemoryUtils/IInputFileSystem.js +6 -0
  404. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackInMemoryUtils/IInputFileSystem.js.map +1 -0
  405. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackInMemoryUtils/IWatchFileSystem.js +6 -0
  406. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackInMemoryUtils/IWatchFileSystem.js.map +1 -0
  407. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackInMemoryUtils/WebpackHybridFileSystem.js +184 -0
  408. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackInMemoryUtils/WebpackHybridFileSystem.js.map +1 -0
  409. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/Directories/FarmDirectory.js +213 -0
  410. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/Directories/FarmDirectory.js.map +1 -0
  411. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/GlobToRegexp.js +28 -0
  412. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/GlobToRegexp.js.map +1 -0
  413. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/IGeneratedServerSideSourcesProvider.js +6 -0
  414. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/IGeneratedServerSideSourcesProvider.js.map +1 -0
  415. package/distr/Tools/src/CLICommands/BuildServer/RunBuildServer.js +110 -0
  416. package/distr/Tools/src/CLICommands/BuildServer/RunBuildServer.js.map +1 -0
  417. package/distr/Tools/src/CLICommands/BuildServer/StdStreamsIntercepter.js +50 -0
  418. package/distr/Tools/src/CLICommands/BuildServer/StdStreamsIntercepter.js.map +1 -0
  419. package/distr/Tools/src/CLICommands/CommonOptions/BuildDebugOnlyOption.js +19 -0
  420. package/distr/Tools/src/CLICommands/CommonOptions/BuildDebugOnlyOption.js.map +1 -0
  421. package/distr/Tools/src/CLICommands/CommonOptions/CommonOptionDefintions.js +30 -0
  422. package/distr/Tools/src/CLICommands/CommonOptions/CommonOptionDefintions.js.map +1 -0
  423. package/distr/Tools/src/CLICommands/CommonOptions/CommonOptions.js +6 -0
  424. package/distr/Tools/src/CLICommands/CommonOptions/CommonOptions.js.map +1 -0
  425. package/distr/Tools/src/CLICommands/DevBuild/DevBuildOptions.js +163 -0
  426. package/distr/Tools/src/CLICommands/DevBuild/DevBuildOptions.js.map +1 -0
  427. package/distr/Tools/src/CLICommands/DevBuild/RunDevBuild.js +112 -0
  428. package/distr/Tools/src/CLICommands/DevBuild/RunDevBuild.js.map +1 -0
  429. package/distr/Tools/src/CLICommands/FormStats/FormStatsOptions.js +34 -0
  430. package/distr/Tools/src/CLICommands/FormStats/FormStatsOptions.js.map +1 -0
  431. package/distr/Tools/src/CLICommands/FormStats/RunFormStats.js +50 -0
  432. package/distr/Tools/src/CLICommands/FormStats/RunFormStats.js.map +1 -0
  433. package/distr/Tools/src/CLICommands/FormsHelper/FormsHelperController.js +54 -0
  434. package/distr/Tools/src/CLICommands/FormsHelper/FormsHelperController.js.map +1 -0
  435. package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/autocalc/{gfv}./320/232/320/241.candy.js.kclang +0 -0
  436. package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/converters/{gfv}.AfterMerge.xslt +11 -0
  437. package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/converters/{gfv}.BeforePreload.xslt +11 -0
  438. package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/converters/{gfv}.fufPatcher.xslt +11 -0
  439. package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/converters/{gfv}.outer.inner.json +1 -0
  440. package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/fetchfunctions/{gfv}.fetchfunctions.js +2 -0
  441. package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/fetchfunctions/{gfv}.fetchfunctions.js.map +1 -0
  442. package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/form.json +12 -0
  443. package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/helpers/addPril1.txt +6 -0
  444. package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/presentations.json +8 -0
  445. package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/schemas/{gfv}.0.rng.xml +20 -0
  446. package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/sugar/index.sugar.xml +10 -0
  447. package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/test/browser/Smoke.test.js +16 -0
  448. package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/test/browser/Smoke.test.js.map +1 -0
  449. package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/test/ui/DemoTest.test.js +23 -0
  450. package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/test/ui/DemoTest.test.js.map +1 -0
  451. package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/validations/validations.KC.kclang +0 -0
  452. package/distr/Tools/src/CLICommands/InitForm/InitFormOptions.js +34 -0
  453. package/distr/Tools/src/CLICommands/InitForm/InitFormOptions.js.map +1 -0
  454. package/distr/Tools/src/CLICommands/InitForm/RunInitForm.js +117 -0
  455. package/distr/Tools/src/CLICommands/InitForm/RunInitForm.js.map +1 -0
  456. package/distr/Tools/src/CLICommands/Localization/LocalizationOptions.js +44 -0
  457. package/distr/Tools/src/CLICommands/Localization/LocalizationOptions.js.map +1 -0
  458. package/distr/Tools/src/CLICommands/Localization/RunLocalization.js +73 -0
  459. package/distr/Tools/src/CLICommands/Localization/RunLocalization.js.map +1 -0
  460. package/distr/Tools/src/CLICommands/RenameFiles/RenameFilesOptions.js +25 -0
  461. package/distr/Tools/src/CLICommands/RenameFiles/RenameFilesOptions.js.map +1 -0
  462. package/distr/Tools/src/CLICommands/RenameFiles/RunRenameFiles.js +38 -0
  463. package/distr/Tools/src/CLICommands/RenameFiles/RunRenameFiles.js.map +1 -0
  464. package/distr/Tools/src/CLICommands/SugarExtractor/ExtractTextsFromSugarController.js +36 -0
  465. package/distr/Tools/src/CLICommands/SugarExtractor/ExtractTextsFromSugarController.js.map +1 -0
  466. package/distr/Tools/src/CLICommands/SugarExtractor/Utils.js +50 -0
  467. package/distr/Tools/src/CLICommands/SugarExtractor/Utils.js.map +1 -0
  468. package/distr/Tools/src/CLICommands/UpgradeForm/RunUpgradeForm.js +144 -0
  469. package/distr/Tools/src/CLICommands/UpgradeForm/RunUpgradeForm.js.map +1 -0
  470. package/distr/Tools/src/CLICommands/UpgradeForm/UpgradeFormOptions.js +78 -0
  471. package/distr/Tools/src/CLICommands/UpgradeForm/UpgradeFormOptions.js.map +1 -0
  472. package/distr/Tools/src/CandyCLI.js +144 -0
  473. package/distr/Tools/src/CandyCLI.js.map +1 -0
  474. package/distr/Tools/src/CheckNodeJsVersion.js +32 -0
  475. package/distr/Tools/src/CheckNodeJsVersion.js.map +1 -0
  476. package/distr/Tools/src/Commons/ApiClient/ToolsApiClient.js +28 -0
  477. package/distr/Tools/src/Commons/ApiClient/ToolsApiClient.js.map +1 -0
  478. package/distr/Tools/src/Commons/ConsoleApplication/ConsoleApplication.js +93 -0
  479. package/distr/Tools/src/Commons/ConsoleApplication/ConsoleApplication.js.map +1 -0
  480. package/distr/Tools/src/Commons/ConsoleApplication/ConsoleApplicationContext.js +24 -0
  481. package/distr/Tools/src/Commons/ConsoleApplication/ConsoleApplicationContext.js.map +1 -0
  482. package/distr/Tools/src/Commons/ErrorUntyped.js +6 -0
  483. package/distr/Tools/src/Commons/ErrorUntyped.js.map +1 -0
  484. package/distr/Tools/src/Commons/EventObject.js +74 -0
  485. package/distr/Tools/src/Commons/EventObject.js.map +1 -0
  486. package/distr/Tools/src/Commons/ExecUtils.js +38 -0
  487. package/distr/Tools/src/Commons/ExecUtils.js.map +1 -0
  488. package/distr/Tools/src/Commons/ExtractGfvsFromFileName.js +21 -0
  489. package/distr/Tools/src/Commons/ExtractGfvsFromFileName.js.map +1 -0
  490. package/distr/Tools/src/Commons/FormGlobsUtils.js +137 -0
  491. package/distr/Tools/src/Commons/FormGlobsUtils.js.map +1 -0
  492. package/distr/Tools/src/Commons/FormLocationInfo.js +6 -0
  493. package/distr/Tools/src/Commons/FormLocationInfo.js.map +1 -0
  494. package/distr/Tools/src/Commons/FsUtils.js +35 -0
  495. package/distr/Tools/src/Commons/FsUtils.js.map +1 -0
  496. package/distr/Tools/src/Commons/GetCpuLimits.js +64 -0
  497. package/distr/Tools/src/Commons/GetCpuLimits.js.map +1 -0
  498. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Actions.js +38 -0
  499. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Actions.js.map +1 -0
  500. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Methods.js +57 -0
  501. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Methods.js.map +1 -0
  502. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/NotFoundWebError.js +15 -0
  503. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/NotFoundWebError.js.map +1 -0
  504. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/CookieParamParamBinder.js +18 -0
  505. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/CookieParamParamBinder.js.map +1 -0
  506. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/IParamBinder.js +6 -0
  507. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/IParamBinder.js.map +1 -0
  508. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/JsonBodyParamBinder.js +14 -0
  509. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/JsonBodyParamBinder.js.map +1 -0
  510. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/StringBodyParamBinder.js +17 -0
  511. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/StringBodyParamBinder.js.map +1 -0
  512. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/UrlParamBinder.js +22 -0
  513. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/UrlParamBinder.js.map +1 -0
  514. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/UrlQueryParamBinder.js +20 -0
  515. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/UrlQueryParamBinder.js.map +1 -0
  516. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Params.js +46 -0
  517. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Params.js.map +1 -0
  518. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/CustomActionResultHandler.js +13 -0
  519. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/CustomActionResultHandler.js.map +1 -0
  520. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/CustomContentResultHandler.js +18 -0
  521. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/CustomContentResultHandler.js.map +1 -0
  522. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/EmptyResultHandler.js +13 -0
  523. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/EmptyResultHandler.js.map +1 -0
  524. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/HtmlResultHandler.js +13 -0
  525. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/HtmlResultHandler.js.map +1 -0
  526. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/IResultHandler.js +6 -0
  527. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/IResultHandler.js.map +1 -0
  528. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/JsonResultHandler.js +13 -0
  529. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/JsonResultHandler.js.map +1 -0
  530. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/PlainTextResultHandler.js +13 -0
  531. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/PlainTextResultHandler.js.map +1 -0
  532. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/StreamResultHandler.js +113 -0
  533. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/StreamResultHandler.js.map +1 -0
  534. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results.js +24 -0
  535. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results.js.map +1 -0
  536. package/distr/Tools/src/Commons/HttpServer/ExpressWrapper/ExpressServerWrapper.js +106 -0
  537. package/distr/Tools/src/Commons/HttpServer/ExpressWrapper/ExpressServerWrapper.js.map +1 -0
  538. package/distr/Tools/src/Commons/HttpServer/ExpressWrapper/SingletonController.js +22 -0
  539. package/distr/Tools/src/Commons/HttpServer/ExpressWrapper/SingletonController.js.map +1 -0
  540. package/distr/Tools/src/Commons/Locks/Lock.js +24 -0
  541. package/distr/Tools/src/Commons/Locks/Lock.js.map +1 -0
  542. package/distr/Tools/src/Commons/Locks/LockHandle.js +17 -0
  543. package/distr/Tools/src/Commons/Locks/LockHandle.js.map +1 -0
  544. package/distr/Tools/src/Commons/Locks/ReadWriteLockCollection.js +31 -0
  545. package/distr/Tools/src/Commons/Locks/ReadWriteLockCollection.js.map +1 -0
  546. package/distr/Tools/src/Commons/Logging/ELKLogger.js +56 -0
  547. package/distr/Tools/src/Commons/Logging/ELKLogger.js.map +1 -0
  548. package/distr/Tools/src/Commons/Logging/ILogger.js +25 -0
  549. package/distr/Tools/src/Commons/Logging/ILogger.js.map +1 -0
  550. package/distr/Tools/src/Commons/Logging/InMemoryLogger.js +61 -0
  551. package/distr/Tools/src/Commons/Logging/InMemoryLogger.js.map +1 -0
  552. package/distr/Tools/src/Commons/Logging/Logger.js +78 -0
  553. package/distr/Tools/src/Commons/Logging/Logger.js.map +1 -0
  554. package/distr/Tools/src/Commons/Logging/StaticLogger.js +37 -0
  555. package/distr/Tools/src/Commons/Logging/StaticLogger.js.map +1 -0
  556. package/distr/Tools/src/Commons/Options/CommandBasedOptionsParser.d.js +2 -0
  557. package/distr/Tools/src/Commons/Options/CommandBasedOptionsParser.d.js.map +1 -0
  558. package/distr/Tools/src/Commons/Options/CommandBasedOptionsParser.js +152 -0
  559. package/distr/Tools/src/Commons/Options/CommandBasedOptionsParser.js.map +1 -0
  560. package/distr/Tools/src/Commons/PathPattern.js +42 -0
  561. package/distr/Tools/src/Commons/PathPattern.js.map +1 -0
  562. package/distr/Tools/src/Commons/TasksCore/AggregatedError.js +16 -0
  563. package/distr/Tools/src/Commons/TasksCore/AggregatedError.js.map +1 -0
  564. package/distr/Tools/src/Commons/TasksCore/BuildTask.js +6 -0
  565. package/distr/Tools/src/Commons/TasksCore/BuildTask.js.map +1 -0
  566. package/distr/Tools/src/Commons/TasksCore/ChainableValueProducer.js +668 -0
  567. package/distr/Tools/src/Commons/TasksCore/ChainableValueProducer.js.map +1 -0
  568. package/distr/Tools/src/Commons/TasksCore/DirectoryEntriesProducer.js +77 -0
  569. package/distr/Tools/src/Commons/TasksCore/DirectoryEntriesProducer.js.map +1 -0
  570. package/distr/Tools/src/Commons/TasksCore/EmptyProducer.js +20 -0
  571. package/distr/Tools/src/Commons/TasksCore/EmptyProducer.js.map +1 -0
  572. package/distr/Tools/src/Commons/TasksCore/FileSystemEntriesProducer.js +48 -0
  573. package/distr/Tools/src/Commons/TasksCore/FileSystemEntriesProducer.js.map +1 -0
  574. package/distr/Tools/src/Commons/TasksCore/FileValueProducer.js +45 -0
  575. package/distr/Tools/src/Commons/TasksCore/FileValueProducer.js.map +1 -0
  576. package/distr/Tools/src/Commons/TasksCore/FixedDirectoryEntriesProducer.js +25 -0
  577. package/distr/Tools/src/Commons/TasksCore/FixedDirectoryEntriesProducer.js.map +1 -0
  578. package/distr/Tools/src/Commons/TasksCore/Observe.js +35 -0
  579. package/distr/Tools/src/Commons/TasksCore/Observe.js.map +1 -0
  580. package/distr/Tools/src/Commons/TasksCore/SingleValueProducer.js +29 -0
  581. package/distr/Tools/src/Commons/TasksCore/SingleValueProducer.js.map +1 -0
  582. package/distr/Tools/src/Commons/TimingUtils.js +13 -0
  583. package/distr/Tools/src/Commons/TimingUtils.js.map +1 -0
  584. package/distr/Tools/src/FormWebpackConfiguration/CacheAssetsPlugin.js +180 -0
  585. package/distr/Tools/src/FormWebpackConfiguration/CacheAssetsPlugin.js.map +1 -0
  586. package/distr/Tools/src/FormWebpackConfiguration/createFormWebpackConfiguration.js +145 -0
  587. package/distr/Tools/src/FormWebpackConfiguration/createFormWebpackConfiguration.js.map +1 -0
  588. package/distr/Tools/src/FormWebpackConfiguration/variables.less +132 -0
  589. package/distr/Tools/src/GenerateReadMe.js +54 -0
  590. package/distr/Tools/src/GenerateReadMe.js.map +1 -0
  591. package/distr/Tools/src/Keys/localhost-key.pem +116 -0
  592. package/distr/Tools/src/Keys/localhost.pem +35 -0
  593. package/distr/Tools/src/LocalServerFrontEndDist/enhancedClient.js +2 -0
  594. package/distr/Tools/src/LocalServerFrontEndDist/enhancedClient.js.LICENSE.txt +49 -0
  595. package/distr/Tools/src/LocalServerFrontEndDist/favicon-16x16.png +0 -0
  596. package/distr/Tools/src/LocalServerFrontEndDist/favicon-32x32.png +0 -0
  597. package/distr/Tools/src/LocalServerFrontEndDist/favicon.ico +0 -0
  598. package/distr/Tools/src/LocalServerFrontEndDist/index.html +1 -0
  599. package/distr/Tools/src/LocalServerFrontEndDist/index.js +3 -0
  600. package/distr/Tools/src/LocalServerFrontEndDist/index.js.LICENSE.txt +60 -0
  601. package/distr/Tools/src/LocalServerFrontEndDist/index.js.map +1 -0
  602. package/distr/Tools/src/Options/CandyToolOptions.js +20 -0
  603. package/distr/Tools/src/Options/CandyToolOptions.js.map +1 -0
  604. package/distr/Tools/src/ReadFarmConfig.js +18 -0
  605. package/distr/Tools/src/ReadFarmConfig.js.map +1 -0
  606. package/distr/Tools/src/SelfUpdate.js +121 -0
  607. package/distr/Tools/src/SelfUpdate.js.map +1 -0
  608. package/distr/Tools/src/StaticFilesForProductionResourcesDir/client.js +1722 -0
  609. package/distr/Tools/src/StaticFilesForProductionResourcesDir/client.js.LICENSE.txt +1 -0
  610. package/distr/Tools/src/StaticFilesForProductionResourcesDir/client.js.map +1 -0
  611. package/distr/Tools/src/StaticFilesForProductionResourcesDir/client.min.js +1076 -0
  612. package/distr/Tools/src/StaticFilesForProductionResourcesDir/client.min.js.map +1 -0
  613. package/distr/Tools/src/StaticFilesForProductionResourcesDir/jquery-1.11.3.min.js +3328 -0
  614. package/distr/Tools/src/StaticFilesForProductionResourcesDir/jquery-1.11.3.min.js.map +1 -0
  615. package/distr/Tools/src/StaticFilesForProductionResourcesDir/polyfill.min.js +6517 -0
  616. package/distr/Tools/src/StaticFilesForProductionResourcesDir/polyfill.min.js.map +1 -0
  617. package/distr/Tools/src/StaticFilesForProductionResourcesDir/testing.min.js +222 -0
  618. package/distr/Tools/src/StaticFilesForProductionResourcesDir/testing.min.js.map +1 -0
  619. package/distr/Tools/src/StaticFilesForResourcesDir/jquery-1.11.3.min.js +3328 -0
  620. package/distr/Tools/src/StaticFilesForResourcesDir/jquery-1.11.3.min.js.map +1 -0
  621. package/distr/Tools/src/StaticFilesForResourcesDir/polyfill.min.js +6517 -0
  622. package/distr/Tools/src/StaticFilesForResourcesDir/polyfill.min.js.map +1 -0
  623. package/distr/Tools/src/StaticFilesForResourcesDir/testing.min.js +222 -0
  624. package/distr/Tools/src/StaticFilesForResourcesDir/testing.min.js.map +1 -0
  625. package/package.json +1 -1
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.ShellProcessHandle = void 0;
7
+ var _child_process = require("child_process");
8
+ var _ConsoleApplication = require("../../Commons/ConsoleApplication/ConsoleApplication");
9
+ var _EventObject = require("../../Commons/EventObject");
10
+ var _ProcessUtils = require("./ProcessUtils");
11
+ class ShellProcessHandle {
12
+ constructor(startInfo) {
13
+ this.startInfo = void 0;
14
+ this.process = void 0;
15
+ this.onStdOut = (0, _EventObject.createEvent)();
16
+ this.onStdErr = (0, _EventObject.createEvent)();
17
+ this.subscription = void 0;
18
+ this.handleExit = async () => {
19
+ await this.kill();
20
+ };
21
+ this.startInfo = startInfo;
22
+ }
23
+ async kill() {
24
+ var _processToKill$stderr, _processToKill$stdout;
25
+ if (this.subscription != undefined) {
26
+ this.subscription.unsubscribe();
27
+ }
28
+ const processToKill = this.process;
29
+ if (processToKill == undefined) {
30
+ throw new Error("Process not started");
31
+ }
32
+ const pid = processToKill.pid;
33
+ this.process = undefined;
34
+ (_processToKill$stderr = processToKill.stderr) === null || _processToKill$stderr === void 0 || _processToKill$stderr.pause();
35
+ (_processToKill$stdout = processToKill.stdout) === null || _processToKill$stdout === void 0 || _processToKill$stdout.pause();
36
+ await _ProcessUtils.ProcessUtils.killTreeAsync(pid);
37
+ }
38
+ waitOutputIncludesString(expectedString) {
39
+ return new Promise(resolve => {
40
+ const subscription = this.onStdOut.subscribe(output => {
41
+ if (output.includes(expectedString)) {
42
+ subscription.unsubscribe();
43
+ resolve();
44
+ }
45
+ });
46
+ });
47
+ }
48
+ start() {
49
+ var _this$process$stdout, _this$process$stderr;
50
+ this.subscription = _ConsoleApplication.ConsoleApplication.onExit.subscribe(this.handleExit);
51
+ let shellExe, shellArg;
52
+ if (process.platform === "win32") {
53
+ shellExe = "cmd.exe";
54
+ shellArg = ["/c", this.startInfo.command, ...this.startInfo.args];
55
+ } else {
56
+ shellExe = "/bin/sh";
57
+ shellArg = ["-c", [this.startInfo.command, ...this.startInfo.args].join(" ")];
58
+ }
59
+ this.process = (0, _child_process.spawn)(shellExe, shellArg, {
60
+ cwd: this.startInfo.workingDirectory,
61
+ stdio: "pipe"
62
+ });
63
+ (_this$process$stdout = this.process.stdout) === null || _this$process$stdout === void 0 || _this$process$stdout.on("data", data => {
64
+ this.onStdOut.emit(data.toString());
65
+ });
66
+ (_this$process$stderr = this.process.stderr) === null || _this$process$stderr === void 0 || _this$process$stderr.on("data", data => {
67
+ this.onStdErr.emit(data.toString());
68
+ });
69
+ }
70
+ waitForExit() {
71
+ const currentProcess = this.process;
72
+ if (currentProcess != undefined) {
73
+ return new Promise(resolve => {
74
+ currentProcess.on("exit", code => {
75
+ resolve(code);
76
+ });
77
+ });
78
+ } else {
79
+ throw new Error("No process started");
80
+ }
81
+ }
82
+ }
83
+ exports.ShellProcessHandle = ShellProcessHandle;
84
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY2hpbGRfcHJvY2VzcyIsInJlcXVpcmUiLCJfQ29uc29sZUFwcGxpY2F0aW9uIiwiX0V2ZW50T2JqZWN0IiwiX1Byb2Nlc3NVdGlscyIsIlNoZWxsUHJvY2Vzc0hhbmRsZSIsImNvbnN0cnVjdG9yIiwic3RhcnRJbmZvIiwicHJvY2VzcyIsIm9uU3RkT3V0IiwiY3JlYXRlRXZlbnQiLCJvblN0ZEVyciIsInN1YnNjcmlwdGlvbiIsImhhbmRsZUV4aXQiLCJraWxsIiwiX3Byb2Nlc3NUb0tpbGwkc3RkZXJyIiwiX3Byb2Nlc3NUb0tpbGwkc3Rkb3V0IiwidW5kZWZpbmVkIiwidW5zdWJzY3JpYmUiLCJwcm9jZXNzVG9LaWxsIiwiRXJyb3IiLCJwaWQiLCJzdGRlcnIiLCJwYXVzZSIsInN0ZG91dCIsIlByb2Nlc3NVdGlscyIsImtpbGxUcmVlQXN5bmMiLCJ3YWl0T3V0cHV0SW5jbHVkZXNTdHJpbmciLCJleHBlY3RlZFN0cmluZyIsIlByb21pc2UiLCJyZXNvbHZlIiwic3Vic2NyaWJlIiwib3V0cHV0IiwiaW5jbHVkZXMiLCJzdGFydCIsIl90aGlzJHByb2Nlc3Mkc3Rkb3V0IiwiX3RoaXMkcHJvY2VzcyRzdGRlcnIiLCJDb25zb2xlQXBwbGljYXRpb24iLCJvbkV4aXQiLCJzaGVsbEV4ZSIsInNoZWxsQXJnIiwicGxhdGZvcm0iLCJjb21tYW5kIiwiYXJncyIsImpvaW4iLCJzcGF3biIsImN3ZCIsIndvcmtpbmdEaXJlY3RvcnkiLCJzdGRpbyIsIm9uIiwiZGF0YSIsImVtaXQiLCJ0b1N0cmluZyIsIndhaXRGb3JFeGl0IiwiY3VycmVudFByb2Nlc3MiLCJjb2RlIiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9CdWlsZFRhc2tzL1Byb2Nlc3NVdGlscy9TaGVsbFByb2Nlc3NIYW5kbGUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hpbGRQcm9jZXNzLCBzcGF3biB9IGZyb20gXCJjaGlsZF9wcm9jZXNzXCI7XG5cbmltcG9ydCB7IENvbnNvbGVBcHBsaWNhdGlvbiB9IGZyb20gXCIuLi8uLi9Db21tb25zL0NvbnNvbGVBcHBsaWNhdGlvbi9Db25zb2xlQXBwbGljYXRpb25cIjtcbmltcG9ydCB7IGNyZWF0ZUV2ZW50LCBJRXZlbnRTdWJzY3JpcHRpb24gfSBmcm9tIFwiLi4vLi4vQ29tbW9ucy9FdmVudE9iamVjdFwiO1xuXG5pbXBvcnQgeyBQcm9jZXNzVXRpbHMgfSBmcm9tIFwiLi9Qcm9jZXNzVXRpbHNcIjtcblxuZXhwb3J0IGludGVyZmFjZSBTaGVsbFByb2Nlc3NTdGFydEluZm8ge1xuICAgIGNvbW1hbmQ6IHN0cmluZztcbiAgICBhcmdzOiBzdHJpbmdbXTtcbiAgICB3b3JraW5nRGlyZWN0b3J5Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgU2hlbGxQcm9jZXNzSGFuZGxlIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHN0YXJ0SW5mbzogU2hlbGxQcm9jZXNzU3RhcnRJbmZvO1xuICAgIHByaXZhdGUgcHJvY2Vzcz86IENoaWxkUHJvY2VzcztcblxuICAgIHB1YmxpYyByZWFkb25seSBvblN0ZE91dCA9IGNyZWF0ZUV2ZW50PFtzdHJpbmddPigpO1xuICAgIHB1YmxpYyByZWFkb25seSBvblN0ZEVyciA9IGNyZWF0ZUV2ZW50PFtzdHJpbmddPigpO1xuICAgIHByaXZhdGUgc3Vic2NyaXB0aW9uPzogSUV2ZW50U3Vic2NyaXB0aW9uO1xuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKHN0YXJ0SW5mbzogU2hlbGxQcm9jZXNzU3RhcnRJbmZvKSB7XG4gICAgICAgIHRoaXMuc3RhcnRJbmZvID0gc3RhcnRJbmZvO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBraWxsKCk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBpZiAodGhpcy5zdWJzY3JpcHRpb24gIT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHByb2Nlc3NUb0tpbGwgPSB0aGlzLnByb2Nlc3M7XG4gICAgICAgIGlmIChwcm9jZXNzVG9LaWxsID09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiUHJvY2VzcyBub3Qgc3RhcnRlZFwiKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBwaWQgPSBwcm9jZXNzVG9LaWxsLnBpZDtcbiAgICAgICAgdGhpcy5wcm9jZXNzID0gdW5kZWZpbmVkO1xuICAgICAgICBwcm9jZXNzVG9LaWxsLnN0ZGVycj8ucGF1c2UoKTtcbiAgICAgICAgcHJvY2Vzc1RvS2lsbC5zdGRvdXQ/LnBhdXNlKCk7XG4gICAgICAgIGF3YWl0IFByb2Nlc3NVdGlscy5raWxsVHJlZUFzeW5jKHBpZCk7XG4gICAgfVxuXG4gICAgcHVibGljIHdhaXRPdXRwdXRJbmNsdWRlc1N0cmluZyhleHBlY3RlZFN0cmluZzogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZTx2b2lkPihyZXNvbHZlID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHN1YnNjcmlwdGlvbiA9IHRoaXMub25TdGRPdXQuc3Vic2NyaWJlKG91dHB1dCA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKG91dHB1dC5pbmNsdWRlcyhleHBlY3RlZFN0cmluZykpIHtcbiAgICAgICAgICAgICAgICAgICAgc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICAgICAgICAgIHJlc29sdmUoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXJ0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IENvbnNvbGVBcHBsaWNhdGlvbi5vbkV4aXQuc3Vic2NyaWJlKHRoaXMuaGFuZGxlRXhpdCk7XG4gICAgICAgIGxldCBzaGVsbEV4ZTogc3RyaW5nLCBzaGVsbEFyZzogc3RyaW5nW107XG4gICAgICAgIGlmIChwcm9jZXNzLnBsYXRmb3JtID09PSBcIndpbjMyXCIpIHtcbiAgICAgICAgICAgIHNoZWxsRXhlID0gXCJjbWQuZXhlXCI7XG4gICAgICAgICAgICBzaGVsbEFyZyA9IFtcIi9jXCIsIHRoaXMuc3RhcnRJbmZvLmNvbW1hbmQsIC4uLnRoaXMuc3RhcnRJbmZvLmFyZ3NdO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgc2hlbGxFeGUgPSBcIi9iaW4vc2hcIjtcbiAgICAgICAgICAgIHNoZWxsQXJnID0gW1wiLWNcIiwgW3RoaXMuc3RhcnRJbmZvLmNvbW1hbmQsIC4uLnRoaXMuc3RhcnRJbmZvLmFyZ3NdLmpvaW4oXCIgXCIpXTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnByb2Nlc3MgPSBzcGF3bihzaGVsbEV4ZSwgc2hlbGxBcmcsIHtcbiAgICAgICAgICAgIGN3ZDogdGhpcy5zdGFydEluZm8ud29ya2luZ0RpcmVjdG9yeSxcbiAgICAgICAgICAgIHN0ZGlvOiBcInBpcGVcIixcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMucHJvY2Vzcy5zdGRvdXQ/Lm9uKFwiZGF0YVwiLCAoZGF0YTogQnVmZmVyIHwgc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICB0aGlzLm9uU3RkT3V0LmVtaXQoZGF0YS50b1N0cmluZygpKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMucHJvY2Vzcy5zdGRlcnI/Lm9uKFwiZGF0YVwiLCAoZGF0YTogQnVmZmVyIHwgc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICB0aGlzLm9uU3RkRXJyLmVtaXQoZGF0YS50b1N0cmluZygpKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIHdhaXRGb3JFeGl0KCk6IFByb21pc2U8bnVsbCB8IG51bWJlcj4ge1xuICAgICAgICBjb25zdCBjdXJyZW50UHJvY2VzcyA9IHRoaXMucHJvY2VzcztcbiAgICAgICAgaWYgKGN1cnJlbnRQcm9jZXNzICE9IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlPG51bGwgfCBudW1iZXI+KHJlc29sdmUgPT4ge1xuICAgICAgICAgICAgICAgIGN1cnJlbnRQcm9jZXNzLm9uKFwiZXhpdFwiLCBjb2RlID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZShjb2RlKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiTm8gcHJvY2VzcyBzdGFydGVkXCIpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSByZWFkb25seSBoYW5kbGVFeGl0ID0gYXN5bmMgKCk6IFByb21pc2U8dm9pZD4gPT4ge1xuICAgICAgICBhd2FpdCB0aGlzLmtpbGwoKTtcbiAgICB9O1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxJQUFBQSxjQUFBLEdBQUFDLE9BQUE7QUFFQSxJQUFBQyxtQkFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsWUFBQSxHQUFBRixPQUFBO0FBRUEsSUFBQUcsYUFBQSxHQUFBSCxPQUFBO0FBUU8sTUFBTUksa0JBQWtCLENBQUM7RUFRckJDLFdBQVdBLENBQUNDLFNBQWdDLEVBQUU7SUFBQSxLQVBwQ0EsU0FBUztJQUFBLEtBQ2xCQyxPQUFPO0lBQUEsS0FFQ0MsUUFBUSxHQUFHLElBQUFDLHdCQUFXLEVBQVcsQ0FBQztJQUFBLEtBQ2xDQyxRQUFRLEdBQUcsSUFBQUQsd0JBQVcsRUFBVyxDQUFDO0lBQUEsS0FDMUNFLFlBQVk7SUFBQSxLQW1FSEMsVUFBVSxHQUFHLFlBQTJCO01BQ3JELE1BQU0sSUFBSSxDQUFDQyxJQUFJLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBbEVHLElBQUksQ0FBQ1AsU0FBUyxHQUFHQSxTQUFTO0VBQzlCO0VBRUEsTUFBYU8sSUFBSUEsQ0FBQSxFQUFrQjtJQUFBLElBQUFDLHFCQUFBLEVBQUFDLHFCQUFBO0lBQy9CLElBQUks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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ShellProcessHandle.js","names":["_child_process","require","_ConsoleApplication","_EventObject","_ProcessUtils","ShellProcessHandle","constructor","startInfo","process","onStdOut","createEvent","onStdErr","subscription","handleExit","kill","_processToKill$stderr","_processToKill$stdout","undefined","unsubscribe","processToKill","Error","pid","stderr","pause","stdout","ProcessUtils","killTreeAsync","waitOutputIncludesString","expectedString","Promise","resolve","subscribe","output","includes","start","_this$process$stdout","_this$process$stderr","ConsoleApplication","onExit","shellExe","shellArg","platform","command","args","join","spawn","cwd","workingDirectory","stdio","on","data","emit","toString","waitForExit","currentProcess","code","exports"],"sources":["../../../../../src/BuildTasks/ProcessUtils/ShellProcessHandle.ts"],"sourcesContent":["import { ChildProcess, spawn } from \"child_process\";\n\nimport { ConsoleApplication } from \"../../Commons/ConsoleApplication/ConsoleApplication\";\nimport { createEvent, IEventSubscription } from \"../../Commons/EventObject\";\n\nimport { ProcessUtils } from \"./ProcessUtils\";\n\nexport interface ShellProcessStartInfo {\n command: string;\n args: string[];\n workingDirectory?: string;\n}\n\nexport class ShellProcessHandle {\n private readonly startInfo: ShellProcessStartInfo;\n private process?: ChildProcess;\n\n public readonly onStdOut = createEvent<[string]>();\n public readonly onStdErr = createEvent<[string]>();\n private subscription?: IEventSubscription;\n\n public constructor(startInfo: ShellProcessStartInfo) {\n this.startInfo = startInfo;\n }\n\n public async kill(): Promise<void> {\n if (this.subscription != undefined) {\n this.subscription.unsubscribe();\n }\n const processToKill = this.process;\n if (processToKill == undefined) {\n throw new Error(\"Process not started\");\n }\n const pid = processToKill.pid;\n this.process = undefined;\n processToKill.stderr?.pause();\n processToKill.stdout?.pause();\n await ProcessUtils.killTreeAsync(pid);\n }\n\n public waitOutputIncludesString(expectedString: string): Promise<void> {\n return new Promise<void>(resolve => {\n const subscription = this.onStdOut.subscribe(output => {\n if (output.includes(expectedString)) {\n subscription.unsubscribe();\n resolve();\n }\n });\n });\n }\n\n public start(): void {\n this.subscription = ConsoleApplication.onExit.subscribe(this.handleExit);\n let shellExe: string, shellArg: string[];\n if (process.platform === \"win32\") {\n shellExe = \"cmd.exe\";\n shellArg = [\"/c\", this.startInfo.command, ...this.startInfo.args];\n } else {\n shellExe = \"/bin/sh\";\n shellArg = [\"-c\", [this.startInfo.command, ...this.startInfo.args].join(\" \")];\n }\n this.process = spawn(shellExe, shellArg, {\n cwd: this.startInfo.workingDirectory,\n stdio: \"pipe\",\n });\n this.process.stdout?.on(\"data\", (data: Buffer | string) => {\n this.onStdOut.emit(data.toString());\n });\n this.process.stderr?.on(\"data\", (data: Buffer | string) => {\n this.onStdErr.emit(data.toString());\n });\n }\n\n public waitForExit(): Promise<null | number> {\n const currentProcess = this.process;\n if (currentProcess != undefined) {\n return new Promise<null | number>(resolve => {\n currentProcess.on(\"exit\", code => {\n resolve(code);\n });\n });\n } else {\n throw new Error(\"No process started\");\n }\n }\n\n private readonly handleExit = async (): Promise<void> => {\n await this.kill();\n };\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,174 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getLastEnginePrereleaseVersion = getLastEnginePrereleaseVersion;
7
+ exports.getLastGeneratorPrereleaseVersion = getLastGeneratorPrereleaseVersion;
8
+ exports.getLastStableEngineVersion = getLastStableEngineVersion;
9
+ exports.getLastStableGeneratorVersion = getLastStableGeneratorVersion;
10
+ exports.getPrereleaseVersionFormJson = getPrereleaseVersionFormJson;
11
+ exports.getSuitableVersion = getSuitableVersion;
12
+ exports.isEngineVersionExists = isEngineVersionExists;
13
+ exports.resolveEngineVersion = resolveEngineVersion;
14
+ exports.resolveGeneratorVersion = resolveGeneratorVersion;
15
+ exports.resolveLocalEngineSource = resolveLocalEngineSource;
16
+ exports.resolveLocalGeneratorSource = resolveLocalGeneratorSource;
17
+ var semver = _interopRequireWildcard(require("semver"));
18
+ var _shelljs = require("shelljs");
19
+ var _StaticLogger = require("../Commons/Logging/StaticLogger");
20
+ var _Version = require("./Version");
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
+ const candyGeneratorPackageName = "@kontur.candy/generator";
24
+ const candyEnginePackageName = "@kontur.candy/engine";
25
+ function isStableVersion(version) {
26
+ const parsedVersion = semver.parse(version);
27
+ if (parsedVersion == undefined) {
28
+ return false;
29
+ }
30
+ const {
31
+ prerelease
32
+ } = parsedVersion;
33
+ return prerelease.length === 0;
34
+ }
35
+ function isPrereleaseVersionWithPreId(version, preid) {
36
+ const parsedVersion = semver.parse(version);
37
+ if (parsedVersion == undefined) {
38
+ return false;
39
+ }
40
+ const {
41
+ prerelease
42
+ } = parsedVersion;
43
+ return prerelease.length > 0 && prerelease[0] === preid;
44
+ }
45
+ async function isEngineVersionExists(version) {
46
+ return (await getPackageVersionsInReverseOrder(candyEnginePackageName)).includes(version);
47
+ }
48
+ async function getLastStableEngineVersion() {
49
+ const sortedVersions = await getPackageVersionsInReverseOrder(candyEnginePackageName);
50
+ for (const version of sortedVersions) {
51
+ if (isStableVersion(version)) {
52
+ return version;
53
+ }
54
+ }
55
+ throw new Error("Cannot find last stable engine version");
56
+ }
57
+ async function getLastStableGeneratorVersion() {
58
+ const sortedVersions = await getPackageVersionsInReverseOrder(candyGeneratorPackageName);
59
+ for (const version of sortedVersions) {
60
+ if (isStableVersion(version)) {
61
+ return version;
62
+ }
63
+ }
64
+ throw new Error("Cannot find last stable generator version");
65
+ }
66
+ async function getLastEnginePrereleaseVersion(preid) {
67
+ const sortedVersions = await getPackageVersionsInReverseOrder(candyEnginePackageName);
68
+ for (const version of sortedVersions) {
69
+ if (isPrereleaseVersionWithPreId(version, preid)) {
70
+ return version;
71
+ }
72
+ }
73
+ throw new Error(`Cannot find prerelease for pre:${preid} engine version`);
74
+ }
75
+ async function getLastGeneratorPrereleaseVersion(preid) {
76
+ const sortedVersions = await getPackageVersionsInReverseOrder(candyGeneratorPackageName);
77
+ for (const version of sortedVersions) {
78
+ if (isPrereleaseVersionWithPreId(version, preid)) {
79
+ return version;
80
+ }
81
+ }
82
+ throw new Error(`Cannot find prerelease for pre:${preid} generator version`);
83
+ }
84
+ async function resolveGeneratorVersion(versionSpec, logger = (0, _StaticLogger.getLogger)()) {
85
+ const version = await getSuitableVersion(versionSpec, candyGeneratorPackageName);
86
+ logger.withPrefix("GENERATOR").log(`Resolved version ${(0, _Version.candyVersionSpecToString)(versionSpec)} to ${version}`);
87
+ return {
88
+ type: "PublishedGenerator",
89
+ version: version
90
+ };
91
+ }
92
+ function resolveLocalGeneratorSource(engineDirectory, logger = (0, _StaticLogger.getLogger)()) {
93
+ logger.withPrefix("GENERATOR").log(`Resolved version 'local'`);
94
+ return {
95
+ type: "GeneratorSources",
96
+ path: engineDirectory
97
+ };
98
+ }
99
+ function resolveLocalEngineSource(engineDirectory, logger = (0, _StaticLogger.getLogger)()) {
100
+ logger.withPrefix("ENGINE").log(`Resolved version 'local'`);
101
+ return {
102
+ type: "LocalEngineSources",
103
+ path: engineDirectory
104
+ };
105
+ }
106
+ async function resolveEngineVersion(versionSpec, logger = (0, _StaticLogger.getLogger)()) {
107
+ const version = await getSuitableVersion(versionSpec, candyEnginePackageName);
108
+ logger.withPrefix("ENGINE").log(`Resolved version ${(0, _Version.candyVersionSpecToString)(versionSpec)} to ${version}`);
109
+ return {
110
+ type: "PublishedEngine",
111
+ version: version
112
+ };
113
+ }
114
+ async function getSuitableVersion(versionSpec, packageName) {
115
+ const sortedVersions = await getPackageVersionsInReverseOrder(packageName);
116
+ if (versionSpec.type === "pre") {
117
+ const expectedPrerelease = versionSpec.preId;
118
+ for (const version of sortedVersions) {
119
+ const parsedVersion = semver.parse(version);
120
+ if (parsedVersion == undefined) {
121
+ continue;
122
+ }
123
+ const {
124
+ prerelease
125
+ } = parsedVersion;
126
+ if (prerelease.length > 0) {
127
+ if (prerelease[0] === expectedPrerelease) {
128
+ return version;
129
+ }
130
+ }
131
+ }
132
+ throw new Error(`Package ${packageName} does not contains version satisfies pre:${versionSpec.preId}`);
133
+ }
134
+ const result = sortedVersions.find(x => semver.satisfies(x, versionSpec.version));
135
+ if (result == undefined) {
136
+ throw new Error(`Package ${packageName} does not contains version satisfies ${versionSpec.version}`);
137
+ }
138
+ return result;
139
+ }
140
+ async function getPrereleaseVersionFormJson(usePrereleaseVersion) {
141
+ const prereleaseVersion = await getLastEnginePrereleaseVersion(usePrereleaseVersion);
142
+ return prereleaseVersion != undefined ? `pre:${usePrereleaseVersion}` : undefined;
143
+ }
144
+ const packageVersionsCache = new Map();
145
+ async function getPackageVersionsInReverseOrder(packageName) {
146
+ const cachedResult = packageVersionsCache.get(packageName);
147
+ if (cachedResult != undefined) {
148
+ return cachedResult;
149
+ }
150
+ const output = await new Promise((resolve, reject) => {
151
+ const command = (process.platform === "linux" ? "unbuffer " : "") + `npm view ${packageName} versions --no-progress --json`;
152
+ const {
153
+ npm_config_registry,
154
+ ...env
155
+ } = process.env;
156
+ (0, _shelljs.exec)(command, {
157
+ async: true,
158
+ silent: true,
159
+ env: env
160
+ }, (code, stdout, stderr) => {
161
+ if (code !== 0) {
162
+ reject(new Error(stderr));
163
+ } else {
164
+ resolve(stdout);
165
+ }
166
+ });
167
+ });
168
+ // tslint:disable-next-line no-unsafe-any
169
+ const versions = JSON.parse(output.trim());
170
+ const sortedVersions = versions.sort(semver.compare).reverse();
171
+ packageVersionsCache.set(packageName, sortedVersions);
172
+ return sortedVersions;
173
+ }
174
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzZW12ZXIiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfc2hlbGxqcyIsIl9TdGF0aWNMb2dnZXIiLCJfVmVyc2lvbiIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsImUiLCJXZWFrTWFwIiwiciIsInQiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsImhhcyIsImdldCIsIm4iLCJfX3Byb3RvX18iLCJhIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJ1IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiaSIsInNldCIsImNhbmR5R2VuZXJhdG9yUGFja2FnZU5hbWUiLCJjYW5keUVuZ2luZVBhY2thZ2VOYW1lIiwiaXNTdGFibGVWZXJzaW9uIiwidmVyc2lvbiIsInBhcnNlZFZlcnNpb24iLCJwYXJzZSIsInVuZGVmaW5lZCIsInByZXJlbGVhc2UiLCJsZW5ndGgiLCJpc1ByZXJlbGVhc2VWZXJzaW9uV2l0aFByZUlkIiwicHJlaWQiLCJpc0VuZ2luZVZlcnNpb25FeGlzdHMiLCJnZXRQYWNrYWdlVmVyc2lvbnNJblJldmVyc2VPcmRlciIsImluY2x1ZGVzIiwiZ2V0TGFzdFN0YWJsZUVuZ2luZVZlcnNpb24iLCJzb3J0ZWRWZXJzaW9ucyIsIkVycm9yIiwiZ2V0TGFzdFN0YWJsZUdlbmVyYXRvclZlcnNpb24iLCJnZXRMYXN0RW5naW5lUHJlcmVsZWFzZVZlcnNpb24iLCJnZXRMYXN0R2VuZXJhdG9yUHJlcmVsZWFzZVZlcnNpb24iLCJyZXNvbHZlR2VuZXJhdG9yVmVyc2lvbiIsInZlcnNpb25TcGVjIiwibG9nZ2VyIiwiZ2V0TG9nZ2VyIiwiZ2V0U3VpdGFibGVWZXJzaW9uIiwid2l0aFByZWZpeCIsImxvZyIsImNhbmR5VmVyc2lvblNwZWNUb1N0cmluZyIsInR5cGUiLCJyZXNvbHZlTG9jYWxHZW5lcmF0b3JTb3VyY2UiLCJlbmdpbmVEaXJlY3RvcnkiLCJwYXRoIiwicmVzb2x2ZUxvY2FsRW5naW5lU291cmNlIiwicmVzb2x2ZUVuZ2luZVZlcnNpb24iLCJwYWNrYWdlTmFtZSIsImV4cGVjdGVkUHJlcmVsZWFzZSIsInByZUlkIiwicmVzdWx0IiwiZmluZCIsIngiLCJzYXRpc2ZpZXMiLCJnZXRQcmVyZWxlYXNlVmVyc2lvbkZvcm1Kc29uIiwidXNlUHJlcmVsZWFzZVZlcnNpb24iLCJwcmVyZWxlYXNlVmVyc2lvbiIsInBhY2thZ2VWZXJzaW9uc0NhY2hlIiwiTWFwIiwiY2FjaGVkUmVzdWx0Iiwib3V0cHV0IiwiUHJvbWlzZSIsInJlc29sdmUiLCJyZWplY3QiLCJjb21tYW5kIiwicHJvY2VzcyIsInBsYXRmb3JtIiwibnBtX2NvbmZpZ19yZWdpc3RyeSIsImVudiIsImV4ZWMiLCJhc3luYyIsInNpbGVudCIsImNvZGUiLCJzdGRvdXQiLCJzdGRlcnIiLCJ2ZXJzaW9ucyIsIkpTT04iLCJ0cmltIiwic29ydCIsImNvbXBhcmUiLCJyZXZlcnNlIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL0J1aWxkVGFza3MvUHVibGlzaGVkVmVyc2lvblV0aWxzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIHNlbXZlciBmcm9tIFwic2VtdmVyXCI7XG5pbXBvcnQgeyBleGVjIH0gZnJvbSBcInNoZWxsanNcIjtcblxuaW1wb3J0IHsgSUxvZ2dlciB9IGZyb20gXCIuLi9Db21tb25zL0xvZ2dpbmcvSUxvZ2dlclwiO1xuaW1wb3J0IHsgZ2V0TG9nZ2VyIH0gZnJvbSBcIi4uL0NvbW1vbnMvTG9nZ2luZy9TdGF0aWNMb2dnZXJcIjtcblxuaW1wb3J0IHsgRW5naW5lU291cmNlIH0gZnJvbSBcIi4vRW5naW5lL0VuZ2luZVNvdXJjZVwiO1xuaW1wb3J0IHsgR2VuZXJhdG9yU291cmNlIH0gZnJvbSBcIi4vR2VuZXJhdG9yL0FjcXVpcmVGb3JtR2VuZXJhdG9yXCI7XG5pbXBvcnQgeyBDYW5keVZlcnNpb25TcGVjLCBjYW5keVZlcnNpb25TcGVjVG9TdHJpbmcgfSBmcm9tIFwiLi9WZXJzaW9uXCI7XG5cbmNvbnN0IGNhbmR5R2VuZXJhdG9yUGFja2FnZU5hbWUgPSBcIkBrb250dXIuY2FuZHkvZ2VuZXJhdG9yXCI7XG5jb25zdCBjYW5keUVuZ2luZVBhY2thZ2VOYW1lID0gXCJAa29udHVyLmNhbmR5L2VuZ2luZVwiO1xuXG5mdW5jdGlvbiBpc1N0YWJsZVZlcnNpb24odmVyc2lvbjogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgY29uc3QgcGFyc2VkVmVyc2lvbiA9IHNlbXZlci5wYXJzZSh2ZXJzaW9uKTtcbiAgICBpZiAocGFyc2VkVmVyc2lvbiA9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICBjb25zdCB7IHByZXJlbGVhc2UgfSA9IHBhcnNlZFZlcnNpb247XG4gICAgcmV0dXJuIHByZXJlbGVhc2UubGVuZ3RoID09PSAwO1xufVxuXG5mdW5jdGlvbiBpc1ByZXJlbGVhc2VWZXJzaW9uV2l0aFByZUlkKHZlcnNpb246IHN0cmluZywgcHJlaWQ6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IHBhcnNlZFZlcnNpb24gPSBzZW12ZXIucGFyc2UodmVyc2lvbik7XG4gICAgaWYgKHBhcnNlZFZlcnNpb24gPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgY29uc3QgeyBwcmVyZWxlYXNlIH0gPSBwYXJzZWRWZXJzaW9uO1xuICAgIHJldHVybiBwcmVyZWxlYXNlLmxlbmd0aCA+IDAgJiYgcHJlcmVsZWFzZVswXSA9PT0gcHJlaWQ7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBpc0VuZ2luZVZlcnNpb25FeGlzdHModmVyc2lvbjogc3RyaW5nKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIChhd2FpdCBnZXRQYWNrYWdlVmVyc2lvbnNJblJldmVyc2VPcmRlcihjYW5keUVuZ2luZVBhY2thZ2VOYW1lKSkuaW5jbHVkZXModmVyc2lvbik7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRMYXN0U3RhYmxlRW5naW5lVmVyc2lvbigpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIGNvbnN0IHNvcnRlZFZlcnNpb25zID0gYXdhaXQgZ2V0UGFja2FnZVZlcnNpb25zSW5SZXZlcnNlT3JkZXIoY2FuZHlFbmdpbmVQYWNrYWdlTmFtZSk7XG4gICAgZm9yIChjb25zdCB2ZXJzaW9uIG9mIHNvcnRlZFZlcnNpb25zKSB7XG4gICAgICAgIGlmIChpc1N0YWJsZVZlcnNpb24odmVyc2lvbikpIHtcbiAgICAgICAgICAgIHJldHVybiB2ZXJzaW9uO1xuICAgICAgICB9XG4gICAgfVxuICAgIHRocm93IG5ldyBFcnJvcihcIkNhbm5vdCBmaW5kIGxhc3Qgc3RhYmxlIGVuZ2luZSB2ZXJzaW9uXCIpO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0TGFzdFN0YWJsZUdlbmVyYXRvclZlcnNpb24oKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICBjb25zdCBzb3J0ZWRWZXJzaW9ucyA9IGF3YWl0IGdldFBhY2thZ2VWZXJzaW9uc0luUmV2ZXJzZU9yZGVyKGNhbmR5R2VuZXJhdG9yUGFja2FnZU5hbWUpO1xuICAgIGZvciAoY29uc3QgdmVyc2lvbiBvZiBzb3J0ZWRWZXJzaW9ucykge1xuICAgICAgICBpZiAoaXNTdGFibGVWZXJzaW9uKHZlcnNpb24pKSB7XG4gICAgICAgICAgICByZXR1cm4gdmVyc2lvbjtcbiAgICAgICAgfVxuICAgIH1cbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJDYW5ub3QgZmluZCBsYXN0IHN0YWJsZSBnZW5lcmF0b3IgdmVyc2lvblwiKTtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldExhc3RFbmdpbmVQcmVyZWxlYXNlVmVyc2lvbihwcmVpZDogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICBjb25zdCBzb3J0ZWRWZXJzaW9ucyA9IGF3YWl0IGdldFBhY2thZ2VWZXJzaW9uc0luUmV2ZXJzZU9yZGVyKGNhbmR5RW5naW5lUGFja2FnZU5hbWUpO1xuICAgIGZvciAoY29uc3QgdmVyc2lvbiBvZiBzb3J0ZWRWZXJzaW9ucykge1xuICAgICAgICBpZiAoaXNQcmVyZWxlYXNlVmVyc2lvbldpdGhQcmVJZCh2ZXJzaW9uLCBwcmVpZCkpIHtcbiAgICAgICAgICAgIHJldHVybiB2ZXJzaW9uO1xuICAgICAgICB9XG4gICAgfVxuICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IGZpbmQgcHJlcmVsZWFzZSBmb3IgcHJlOiR7cHJlaWR9IGVuZ2luZSB2ZXJzaW9uYCk7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRMYXN0R2VuZXJhdG9yUHJlcmVsZWFzZVZlcnNpb24ocHJlaWQ6IHN0cmluZyk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgY29uc3Qgc29ydGVkVmVyc2lvbnMgPSBhd2FpdCBnZXRQYWNrYWdlVmVyc2lvbnNJblJldmVyc2VPcmRlcihjYW5keUdlbmVyYXRvclBhY2thZ2VOYW1lKTtcbiAgICBmb3IgKGNvbnN0IHZlcnNpb24gb2Ygc29ydGVkVmVyc2lvbnMpIHtcbiAgICAgICAgaWYgKGlzUHJlcmVsZWFzZVZlcnNpb25XaXRoUHJlSWQodmVyc2lvbiwgcHJlaWQpKSB7XG4gICAgICAgICAgICByZXR1cm4gdmVyc2lvbjtcbiAgICAgICAgfVxuICAgIH1cbiAgICB0aHJvdyBuZXcgRXJyb3IoYENhbm5vdCBmaW5kIHByZXJlbGVhc2UgZm9yIHByZToke3ByZWlkfSBnZW5lcmF0b3IgdmVyc2lvbmApO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcmVzb2x2ZUdlbmVyYXRvclZlcnNpb24oXG4gICAgdmVyc2lvblNwZWM6IENhbmR5VmVyc2lvblNwZWMsXG4gICAgbG9nZ2VyOiBJTG9nZ2VyID0gZ2V0TG9nZ2VyKClcbik6IFByb21pc2U8R2VuZXJhdG9yU291cmNlPiB7XG4gICAgY29uc3QgdmVyc2lvbiA9IGF3YWl0IGdldFN1aXRhYmxlVmVyc2lvbih2ZXJzaW9uU3BlYywgY2FuZHlHZW5lcmF0b3JQYWNrYWdlTmFtZSk7XG4gICAgbG9nZ2VyLndpdGhQcmVmaXgoXCJHRU5FUkFUT1JcIikubG9nKGBSZXNvbHZlZCB2ZXJzaW9uICR7Y2FuZHlWZXJzaW9uU3BlY1RvU3RyaW5nKHZlcnNpb25TcGVjKX0gdG8gJHt2ZXJzaW9ufWApO1xuICAgIHJldHVybiB7XG4gICAgICAgIHR5cGU6IFwiUHVibGlzaGVkR2VuZXJhdG9yXCIsXG4gICAgICAgIHZlcnNpb246IHZlcnNpb24sXG4gICAgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlc29sdmVMb2NhbEdlbmVyYXRvclNvdXJjZShlbmdpbmVEaXJlY3Rvcnk6IHN0cmluZywgbG9nZ2VyOiBJTG9nZ2VyID0gZ2V0TG9nZ2VyKCkpOiBHZW5lcmF0b3JTb3VyY2Uge1xuICAgIGxvZ2dlci53aXRoUHJlZml4KFwiR0VORVJBVE9SXCIpLmxvZyhgUmVzb2x2ZWQgdmVyc2lvbiAnbG9jYWwnYCk7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgdHlwZTogXCJHZW5lcmF0b3JTb3VyY2VzXCIsXG4gICAgICAgIHBhdGg6IGVuZ2luZURpcmVjdG9yeSxcbiAgICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVzb2x2ZUxvY2FsRW5naW5lU291cmNlKGVuZ2luZURpcmVjdG9yeTogc3RyaW5nLCBsb2dnZXI6IElMb2dnZXIgPSBnZXRMb2dnZXIoKSk6IEVuZ2luZVNvdXJjZSB7XG4gICAgbG9nZ2VyLndpdGhQcmVmaXgoXCJFTkdJTkVcIikubG9nKGBSZXNvbHZlZCB2ZXJzaW9uICdsb2NhbCdgKTtcbiAgICByZXR1cm4ge1xuICAgICAgICB0eXBlOiBcIkxvY2FsRW5naW5lU291cmNlc1wiLFxuICAgICAgICBwYXRoOiBlbmdpbmVEaXJlY3RvcnksXG4gICAgfTtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHJlc29sdmVFbmdpbmVWZXJzaW9uKFxuICAgIHZlcnNpb25TcGVjOiBDYW5keVZlcnNpb25TcGVjLFxuICAgIGxvZ2dlcjogSUxvZ2dlciA9IGdldExvZ2dlcigpXG4pOiBQcm9taXNlPEVuZ2luZVNvdXJjZT4ge1xuICAgIGNvbnN0IHZlcnNpb24gPSBhd2FpdCBnZXRTdWl0YWJsZVZlcnNpb24odmVyc2lvblNwZWMsIGNhbmR5RW5naW5lUGFja2FnZU5hbWUpO1xuICAgIGxvZ2dlci53aXRoUHJlZml4KFwiRU5HSU5FXCIpLmxvZyhgUmVzb2x2ZWQgdmVyc2lvbiAke2NhbmR5VmVyc2lvblNwZWNUb1N0cmluZyh2ZXJzaW9uU3BlYyl9IHRvICR7dmVyc2lvbn1gKTtcbiAgICByZXR1cm4ge1xuICAgICAgICB0eXBlOiBcIlB1Ymxpc2hlZEVuZ2luZVwiLFxuICAgICAgICB2ZXJzaW9uOiB2ZXJzaW9uLFxuICAgIH07XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRTdWl0YWJsZVZlcnNpb24odmVyc2lvblNwZWM6IENhbmR5VmVyc2lvblNwZWMsIHBhY2thZ2VOYW1lOiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIGNvbnN0IHNvcnRlZFZlcnNpb25zID0gYXdhaXQgZ2V0UGFja2FnZVZlcnNpb25zSW5SZXZlcnNlT3JkZXIocGFja2FnZU5hbWUpO1xuICAgIGlmICh2ZXJzaW9uU3BlYy50eXBlID09PSBcInByZVwiKSB7XG4gICAgICAgIGNvbnN0IGV4cGVjdGVkUHJlcmVsZWFzZSA9IHZlcnNpb25TcGVjLnByZUlkO1xuICAgICAgICBmb3IgKGNvbnN0IHZlcnNpb24gb2Ygc29ydGVkVmVyc2lvbnMpIHtcbiAgICAgICAgICAgIGNvbnN0IHBhcnNlZFZlcnNpb24gPSBzZW12ZXIucGFyc2UodmVyc2lvbik7XG4gICAgICAgICAgICBpZiAocGFyc2VkVmVyc2lvbiA9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IHsgcHJlcmVsZWFzZSB9ID0gcGFyc2VkVmVyc2lvbjtcbiAgICAgICAgICAgIGlmIChwcmVyZWxlYXNlLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICBpZiAocHJlcmVsZWFzZVswXSA9PT0gZXhwZWN0ZWRQcmVyZWxlYXNlKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB2ZXJzaW9uO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFBhY2thZ2UgJHtwYWNrYWdlTmFtZX0gZG9lcyBub3QgY29udGFpbnMgdmVyc2lvbiBzYXRpc2ZpZXMgcHJlOiR7dmVyc2lvblNwZWMucHJlSWR9YCk7XG4gICAgfVxuICAgIGNvbnN0IHJlc3VsdCA9IHNvcnRlZFZlcnNpb25zLmZpbmQoeCA9PiBzZW12ZXIuc2F0aXNmaWVzKHgsIHZlcnNpb25TcGVjLnZlcnNpb24pKTtcbiAgICBpZiAocmVzdWx0ID09IHVuZGVmaW5lZCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFBhY2thZ2UgJHtwYWNrYWdlTmFtZX0gZG9lcyBub3QgY29udGFpbnMgdmVyc2lvbiBzYXRpc2ZpZXMgJHt2ZXJzaW9uU3BlYy52ZXJzaW9ufWApO1xuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0UHJlcmVsZWFzZVZlcnNpb25Gb3JtSnNvbih1c2VQcmVyZWxlYXNlVmVyc2lvbjogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmcgfCB1bmRlZmluZWQ+IHtcbiAgICBjb25zdCBwcmVyZWxlYXNlVmVyc2lvbiA9IGF3YWl0IGdldExhc3RFbmdpbmVQcmVyZWxlYXNlVmVyc2lvbih1c2VQcmVyZWxlYXNlVmVyc2lvbik7XG5cbiAgICByZXR1cm4gcHJlcmVsZWFzZVZlcnNpb24gIT0gdW5kZWZpbmVkID8gYHByZToke3VzZVByZXJlbGVhc2VWZXJzaW9ufWAgOiB1bmRlZmluZWQ7XG59XG5cbmNvbnN0IHBhY2thZ2VWZXJzaW9uc0NhY2hlOiBNYXA8c3RyaW5nLCBzdHJpbmdbXT4gPSBuZXcgTWFwKCk7XG5cbmFzeW5jIGZ1bmN0aW9uIGdldFBhY2thZ2VWZXJzaW9uc0luUmV2ZXJzZU9yZGVyKHBhY2thZ2VOYW1lOiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZ1tdPiB7XG4gICAgY29uc3QgY2FjaGVkUmVzdWx0ID0gcGFja2FnZVZlcnNpb25zQ2FjaGUuZ2V0KHBhY2thZ2VOYW1lKTtcbiAgICBpZiAoY2FjaGVkUmVzdWx0ICE9IHVuZGVmaW5lZCkge1xuICAgICAgICByZXR1cm4gY2FjaGVkUmVzdWx0O1xuICAgIH1cbiAgICBjb25zdCBvdXRwdXQgPSBhd2FpdCBuZXcgUHJvbWlzZTxzdHJpbmc+KChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgY29uc3QgY29tbWFuZCA9XG4gICAgICAgICAgICAocHJvY2Vzcy5wbGF0Zm9ybSA9PT0gXCJsaW51eFwiID8gXCJ1bmJ1ZmZlciBcIiA6IFwiXCIpICsgYG5wbSB2aWV3ICR7cGFja2FnZU5hbWV9IHZlcnNpb25zIC0tbm8tcHJvZ3Jlc3MgLS1qc29uYDtcbiAgICAgICAgY29uc3QgeyBucG1fY29uZmlnX3JlZ2lzdHJ5LCAuLi5lbnYgfSA9IHByb2Nlc3MuZW52O1xuICAgICAgICBleGVjKGNvbW1hbmQsIHsgYXN5bmM6IHRydWUsIHNpbGVudDogdHJ1ZSwgZW52OiBlbnYgfSwgKGNvZGUsIHN0ZG91dCwgc3RkZXJyKSA9PiB7XG4gICAgICAgICAgICBpZiAoY29kZSAhPT0gMCkge1xuICAgICAgICAgICAgICAgIHJlamVjdChuZXcgRXJyb3Ioc3RkZXJyKSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHJlc29sdmUoc3Rkb3V0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfSk7XG4gICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lIG5vLXVuc2FmZS1hbnlcbiAgICBjb25zdCB2ZXJzaW9uczogc3RyaW5nW10gPSBKU09OLnBhcnNlKG91dHB1dC50cmltKCkpO1xuICAgIGNvbnN0IHNvcnRlZFZlcnNpb25zID0gdmVyc2lvbnMuc29ydChzZW12ZXIuY29tcGFyZSkucmV2ZXJzZSgpO1xuICAgIHBhY2thZ2VWZXJzaW9uc0NhY2hlLnNldChwYWNrYWdlTmFtZSwgc29ydGVkVmVyc2lvbnMpO1xuICAgIHJldHVybiBzb3J0ZWRWZXJzaW9ucztcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLFFBQUEsR0FBQUQsT0FBQTtBQUdBLElBQUFFLGFBQUEsR0FBQUYsT0FBQTtBQUlBLElBQUFHLFFBQUEsR0FBQUgsT0FBQTtBQUF1RSxTQUFBSSx5QkFBQUMsQ0FBQSw2QkFBQUMsT0FBQSxtQkFBQUMsQ0FBQSxPQUFBRCxPQUFBLElBQUFFLENBQUEsT0FBQUYsT0FBQSxZQUFBRix3QkFBQSxZQUFBQSxDQUFBQyxDQUFBLFdBQUFBLENBQUEsR0FBQUcsQ0FBQSxHQUFBRCxDQUFBLEtBQUFGLENBQUE7QUFBQSxTQUFBTix3QkFBQU0sQ0FBQSxFQUFBRSxDQUFBLFNBQUFBLENBQUEsSUFBQUYsQ0FBQSxJQUFBQSxDQUFBLENBQUFJLFVBQUEsU0FBQUosQ0FBQSxlQUFBQSxDQUFBLHVCQUFBQSxDQUFBLHlCQUFBQSxDQUFBLFdBQUFLLE9BQUEsRUFBQUwsQ0FBQSxRQUFBRyxDQUFBLEdBQUFKLHdCQUFBLENBQUFHLENBQUEsT0FBQUMsQ0FBQSxJQUFBQSxDQUFBLENBQUFHLEdBQUEsQ0FBQU4sQ0FBQSxVQUFBRyxDQUFBLENBQUFJLEdBQUEsQ0FBQVAsQ0FBQSxPQUFBUSxDQUFBLEtBQUFDLFNBQUEsVUFBQUMsQ0FBQSxHQUFBQyxNQUFBLENBQUFDLGNBQUEsSUFBQUQsTUFBQSxDQUFBRSx3QkFBQSxXQUFBQyxDQUFBLElBQUFkLENBQUEsb0JBQUFjLENBQUEsT0FBQUMsY0FBQSxDQUFBQyxJQUFBLENBQUFoQixDQUFBLEVBQUFjLENBQUEsU0FBQUcsQ0FBQSxHQUFBUCxDQUFBLEdBQUFDLE1BQUEsQ0FB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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PublishedVersionUtils.js","names":["semver","_interopRequireWildcard","require","_shelljs","_StaticLogger","_Version","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","candyGeneratorPackageName","candyEnginePackageName","isStableVersion","version","parsedVersion","parse","undefined","prerelease","length","isPrereleaseVersionWithPreId","preid","isEngineVersionExists","getPackageVersionsInReverseOrder","includes","getLastStableEngineVersion","sortedVersions","Error","getLastStableGeneratorVersion","getLastEnginePrereleaseVersion","getLastGeneratorPrereleaseVersion","resolveGeneratorVersion","versionSpec","logger","getLogger","getSuitableVersion","withPrefix","log","candyVersionSpecToString","type","resolveLocalGeneratorSource","engineDirectory","path","resolveLocalEngineSource","resolveEngineVersion","packageName","expectedPrerelease","preId","result","find","x","satisfies","getPrereleaseVersionFormJson","usePrereleaseVersion","prereleaseVersion","packageVersionsCache","Map","cachedResult","output","Promise","resolve","reject","command","process","platform","npm_config_registry","env","exec","async","silent","code","stdout","stderr","versions","JSON","trim","sort","compare","reverse"],"sources":["../../../../src/BuildTasks/PublishedVersionUtils.ts"],"sourcesContent":["import * as semver from \"semver\";\nimport { exec } from \"shelljs\";\n\nimport { ILogger } from \"../Commons/Logging/ILogger\";\nimport { getLogger } from \"../Commons/Logging/StaticLogger\";\n\nimport { EngineSource } from \"./Engine/EngineSource\";\nimport { GeneratorSource } from \"./Generator/AcquireFormGenerator\";\nimport { CandyVersionSpec, candyVersionSpecToString } from \"./Version\";\n\nconst candyGeneratorPackageName = \"@kontur.candy/generator\";\nconst candyEnginePackageName = \"@kontur.candy/engine\";\n\nfunction isStableVersion(version: string): boolean {\n const parsedVersion = semver.parse(version);\n if (parsedVersion == undefined) {\n return false;\n }\n const { prerelease } = parsedVersion;\n return prerelease.length === 0;\n}\n\nfunction isPrereleaseVersionWithPreId(version: string, preid: string): boolean {\n const parsedVersion = semver.parse(version);\n if (parsedVersion == undefined) {\n return false;\n }\n const { prerelease } = parsedVersion;\n return prerelease.length > 0 && prerelease[0] === preid;\n}\n\nexport async function isEngineVersionExists(version: string): Promise<boolean> {\n return (await getPackageVersionsInReverseOrder(candyEnginePackageName)).includes(version);\n}\n\nexport async function getLastStableEngineVersion(): Promise<string> {\n const sortedVersions = await getPackageVersionsInReverseOrder(candyEnginePackageName);\n for (const version of sortedVersions) {\n if (isStableVersion(version)) {\n return version;\n }\n }\n throw new Error(\"Cannot find last stable engine version\");\n}\n\nexport async function getLastStableGeneratorVersion(): Promise<string> {\n const sortedVersions = await getPackageVersionsInReverseOrder(candyGeneratorPackageName);\n for (const version of sortedVersions) {\n if (isStableVersion(version)) {\n return version;\n }\n }\n throw new Error(\"Cannot find last stable generator version\");\n}\n\nexport async function getLastEnginePrereleaseVersion(preid: string): Promise<string> {\n const sortedVersions = await getPackageVersionsInReverseOrder(candyEnginePackageName);\n for (const version of sortedVersions) {\n if (isPrereleaseVersionWithPreId(version, preid)) {\n return version;\n }\n }\n throw new Error(`Cannot find prerelease for pre:${preid} engine version`);\n}\n\nexport async function getLastGeneratorPrereleaseVersion(preid: string): Promise<string> {\n const sortedVersions = await getPackageVersionsInReverseOrder(candyGeneratorPackageName);\n for (const version of sortedVersions) {\n if (isPrereleaseVersionWithPreId(version, preid)) {\n return version;\n }\n }\n throw new Error(`Cannot find prerelease for pre:${preid} generator version`);\n}\n\nexport async function resolveGeneratorVersion(\n versionSpec: CandyVersionSpec,\n logger: ILogger = getLogger()\n): Promise<GeneratorSource> {\n const version = await getSuitableVersion(versionSpec, candyGeneratorPackageName);\n logger.withPrefix(\"GENERATOR\").log(`Resolved version ${candyVersionSpecToString(versionSpec)} to ${version}`);\n return {\n type: \"PublishedGenerator\",\n version: version,\n };\n}\n\nexport function resolveLocalGeneratorSource(engineDirectory: string, logger: ILogger = getLogger()): GeneratorSource {\n logger.withPrefix(\"GENERATOR\").log(`Resolved version 'local'`);\n return {\n type: \"GeneratorSources\",\n path: engineDirectory,\n };\n}\n\nexport function resolveLocalEngineSource(engineDirectory: string, logger: ILogger = getLogger()): EngineSource {\n logger.withPrefix(\"ENGINE\").log(`Resolved version 'local'`);\n return {\n type: \"LocalEngineSources\",\n path: engineDirectory,\n };\n}\n\nexport async function resolveEngineVersion(\n versionSpec: CandyVersionSpec,\n logger: ILogger = getLogger()\n): Promise<EngineSource> {\n const version = await getSuitableVersion(versionSpec, candyEnginePackageName);\n logger.withPrefix(\"ENGINE\").log(`Resolved version ${candyVersionSpecToString(versionSpec)} to ${version}`);\n return {\n type: \"PublishedEngine\",\n version: version,\n };\n}\n\nexport async function getSuitableVersion(versionSpec: CandyVersionSpec, packageName: string): Promise<string> {\n const sortedVersions = await getPackageVersionsInReverseOrder(packageName);\n if (versionSpec.type === \"pre\") {\n const expectedPrerelease = versionSpec.preId;\n for (const version of sortedVersions) {\n const parsedVersion = semver.parse(version);\n if (parsedVersion == undefined) {\n continue;\n }\n const { prerelease } = parsedVersion;\n if (prerelease.length > 0) {\n if (prerelease[0] === expectedPrerelease) {\n return version;\n }\n }\n }\n throw new Error(`Package ${packageName} does not contains version satisfies pre:${versionSpec.preId}`);\n }\n const result = sortedVersions.find(x => semver.satisfies(x, versionSpec.version));\n if (result == undefined) {\n throw new Error(`Package ${packageName} does not contains version satisfies ${versionSpec.version}`);\n }\n return result;\n}\n\nexport async function getPrereleaseVersionFormJson(usePrereleaseVersion: string): Promise<string | undefined> {\n const prereleaseVersion = await getLastEnginePrereleaseVersion(usePrereleaseVersion);\n\n return prereleaseVersion != undefined ? `pre:${usePrereleaseVersion}` : undefined;\n}\n\nconst packageVersionsCache: Map<string, string[]> = new Map();\n\nasync function getPackageVersionsInReverseOrder(packageName: string): Promise<string[]> {\n const cachedResult = packageVersionsCache.get(packageName);\n if (cachedResult != undefined) {\n return cachedResult;\n }\n const output = await new Promise<string>((resolve, reject) => {\n const command =\n (process.platform === \"linux\" ? \"unbuffer \" : \"\") + `npm view ${packageName} versions --no-progress --json`;\n const { npm_config_registry, ...env } = process.env;\n exec(command, { async: true, silent: true, env: env }, (code, stdout, stderr) => {\n if (code !== 0) {\n reject(new Error(stderr));\n } else {\n resolve(stdout);\n }\n });\n });\n // tslint:disable-next-line no-unsafe-any\n const versions: string[] = JSON.parse(output.trim());\n const sortedVersions = versions.sort(semver.compare).reverse();\n packageVersionsCache.set(packageName, sortedVersions);\n return sortedVersions;\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,112 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.readFormSource = readFormSource;
8
+ var _path = _interopRequireDefault(require("path"));
9
+ var _fsExtra = require("fs-extra");
10
+ var _recursiveReaddir = _interopRequireDefault(require("recursive-readdir"));
11
+ var _FsUtils = require("../Commons/FsUtils");
12
+ var _GetRngSchemaFileExtension = require("../../../Common/GetRngSchemaFileExtension");
13
+ var _FormPathUtils = require("../../../Common/FormPathUtils");
14
+ async function readFormSource(formSourcesPath, farmDirectory, hlFarmDirectoryPath) {
15
+ const rootPath = farmDirectory;
16
+ const formName = (0, _FormPathUtils.extractGfvFromFormPath)(formSourcesPath);
17
+ const sugarContent = await readSugarFiles(_path.default.join(formSourcesPath, "sugar"));
18
+ const result = {
19
+ sugarContent: sugarContent,
20
+ resources: {
21
+ gfv: _path.default.basename(formSourcesPath),
22
+ additionalSettings: await readFileWithDefault(formSourcesPath, "settings.json", "{}"),
23
+ autocalcsContent: await readAutoCalcFiles(_path.default.join(formSourcesPath, "autocalc")),
24
+ helpersContent: await readJavaScriptFilesWithNames(_path.default.join(formSourcesPath, "helpers")),
25
+ commonHelpersContent: await readJavaScriptFilesWithNames(_path.default.join(farmDirectory, "jsHelpers")),
26
+ validationsContent: await readJavaScriptFilesWithNames(_path.default.join(formSourcesPath, "validations")),
27
+ schemaRngContent: await readSchemaRngFile(_path.default.join(formSourcesPath, "schemas"), formName),
28
+ kcJsXmlContent: await readFileWithDefault(_path.default.join(formSourcesPath, "autocalc"), `${formName}.КС.candy.js.xml`, "<dummy/>"),
29
+ kcLangContent: await readFileWithDefault(_path.default.join(formSourcesPath, "autocalc"), `${formName}.КС.candy.js.kclang`, ""),
30
+ normativeHelpContent: await readNormativeHelpFile(hlFarmDirectoryPath),
31
+ tourSteps: await readFileWithDefault(_path.default.join(rootPath, "tour"), "tour.js", "{}"),
32
+ hooksContent: await readHooksFile(formSourcesPath),
33
+ customControlsContent: await readCustomControlsFiles(_path.default.join(formSourcesPath, "controls"))
34
+ }
35
+ };
36
+ if (formName.startsWith("4")) {
37
+ const commonResourcesPath = _path.default.join(formSourcesPath, "..", "..", "commonResources");
38
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
39
+ const {
40
+ elements
41
+ } = require(_path.default.join(commonResourcesPath, "statTitle.js"));
42
+ const hasRegionalForm = Object.values(sugarContent).find(sugar => sugar.includes('hasRegionalForms="true"'));
43
+ if (!result.resources.hooksContent && hasRegionalForm) {
44
+ result.resources.hooksContent = await readFileWithDefault(commonResourcesPath, "regionStatHooks.js");
45
+ }
46
+ result.resources.preprocessor = {
47
+ ...elements
48
+ };
49
+ }
50
+ return result;
51
+ }
52
+ async function readSugarFiles(formSugarDirectoryPath) {
53
+ const fileNames = await (0, _fsExtra.readdir)(formSugarDirectoryPath);
54
+ const result = {};
55
+ for (const fileName of fileNames) {
56
+ const sugarModuleName = fileName.replace(".sugar.xml", "");
57
+ const sugarModuleContent = await (0, _fsExtra.readFile)(_path.default.join(formSugarDirectoryPath, fileName), "utf-8");
58
+ result[sugarModuleName] = sugarModuleContent;
59
+ }
60
+ return result;
61
+ }
62
+ async function readCustomControlsFiles(formSugarDirectoryPath) {
63
+ if (!(await (0, _FsUtils.isDirectoryExists)(formSugarDirectoryPath))) {
64
+ return {};
65
+ }
66
+ const fileNames = await (0, _recursiveReaddir.default)(formSugarDirectoryPath);
67
+ const result = {};
68
+ for (const fileName of fileNames) {
69
+ const sugarModuleContent = await (0, _fsExtra.readFile)(fileName, "utf-8");
70
+ const relativeFileName = ("controls\\" + fileName.replace(formSugarDirectoryPath + "\\", "")).replace(/\\/g, "/");
71
+ result[relativeFileName] = sugarModuleContent;
72
+ }
73
+ return result;
74
+ }
75
+ async function readAutoCalcFiles(formAutoCalcPath) {
76
+ try {
77
+ const files = await (0, _fsExtra.readdir)(formAutoCalcPath);
78
+ const jsFiles = files.filter(filename => /\.js$/.test(filename));
79
+ return Promise.all(jsFiles.map(filename => (0, _fsExtra.readFile)(_path.default.join(formAutoCalcPath, filename), "utf-8")));
80
+ } catch (ignoreError) {
81
+ return [];
82
+ }
83
+ }
84
+ async function readJavaScriptFilesWithNames(formJavaScriptFilesPath) {
85
+ try {
86
+ const files = await (0, _fsExtra.readdir)(formJavaScriptFilesPath);
87
+ const jsFiles = files.filter(filename => /\.js$/.test(filename));
88
+ return Promise.all(jsFiles.map(async filename => ({
89
+ filename: _path.default.parse(filename).name,
90
+ content: await (0, _fsExtra.readFile)(_path.default.join(formJavaScriptFilesPath, filename), "utf-8")
91
+ })));
92
+ } catch (ignoreError) {
93
+ return [];
94
+ }
95
+ }
96
+ function readSchemaRngFile(formSchemasPath, gfv) {
97
+ return (0, _fsExtra.readFile)(_path.default.join(formSchemasPath, `${gfv}${(0, _GetRngSchemaFileExtension.getRngSchemaFileExtension)(formSchemasPath, gfv)}`), "utf-8");
98
+ }
99
+ function readNormativeHelpFile(hlFarmDirectoryPath) {
100
+ return (0, _fsExtra.readFile)(_path.default.join(hlFarmDirectoryPath, "Forms", "helpid_normativ.xml"), "utf-8");
101
+ }
102
+ function readHooksFile(formDirectoryPath) {
103
+ return (0, _fsExtra.readFile)(_path.default.join(formDirectoryPath, "hooks.js"), "utf-8").catch(() => "");
104
+ }
105
+ async function readFileWithDefault(filePath, filename, defaultValue) {
106
+ try {
107
+ return await (0, _fsExtra.readFile)(_path.default.join(filePath, filename), "utf-8");
108
+ } catch (ingoreError) {
109
+ return defaultValue;
110
+ }
111
+ }
112
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcGF0aCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX2ZzRXh0cmEiLCJfcmVjdXJzaXZlUmVhZGRpciIsIl9Gc1V0aWxzIiwiX0dldFJuZ1NjaGVtYUZpbGVFeHRlbnNpb24iLCJfRm9ybVBhdGhVdGlscyIsInJlYWRGb3JtU291cmNlIiwiZm9ybVNvdXJjZXNQYXRoIiwiZmFybURpcmVjdG9yeSIsImhsRmFybURpcmVjdG9yeVBhdGgiLCJyb290UGF0aCIsImZvcm1OYW1lIiwiZXh0cmFjdEdmdkZyb21Gb3JtUGF0aCIsInN1Z2FyQ29udGVudCIsInJlYWRTdWdhckZpbGVzIiwicGF0aCIsImpvaW4iLCJyZXN1bHQiLCJyZXNvdXJjZXMiLCJnZnYiLCJiYXNlbmFtZSIsImFkZGl0aW9uYWxTZXR0aW5ncyIsInJlYWRGaWxlV2l0aERlZmF1bHQiLCJhdXRvY2FsY3NDb250ZW50IiwicmVhZEF1dG9DYWxjRmlsZXMiLCJoZWxwZXJzQ29udGVudCIsInJlYWRKYXZhU2NyaXB0RmlsZXNXaXRoTmFtZXMiLCJjb21tb25IZWxwZXJzQ29udGVudCIsInZhbGlkYXRpb25zQ29udGVudCIsInNjaGVtYVJuZ0NvbnRlbnQiLCJyZWFkU2NoZW1hUm5nRmlsZSIsImtjSnNYbWxDb250ZW50Iiwia2NMYW5nQ29udGVudCIsIm5vcm1hdGl2ZUhlbHBDb250ZW50IiwicmVhZE5vcm1hdGl2ZUhlbHBGaWxlIiwidG91clN0ZXBzIiwiaG9va3NDb250ZW50IiwicmVhZEhvb2tzRmlsZSIsImN1c3RvbUNvbnRyb2xzQ29udGVudCIsInJlYWRDdXN0b21Db250cm9sc0ZpbGVzIiwic3RhcnRzV2l0aCIsImNvbW1vblJlc291cmNlc1BhdGgiLCJlbGVtZW50cyIsImhhc1JlZ2lvbmFsRm9ybSIsIk9iamVjdCIsInZhbHVlcyIsImZpbmQiLCJzdWdhciIsImluY2x1ZGVzIiwicHJlcHJvY2Vzc29yIiwiZm9ybVN1Z2FyRGlyZWN0b3J5UGF0aCIsImZpbGVOYW1lcyIsInJlYWRkaXIiLCJmaWxlTmFtZSIsInN1Z2FyTW9kdWxlTmFtZSIsInJlcGxhY2UiLCJzdWdhck1vZHVsZUNvbnRlbnQiLCJyZWFkRmlsZSIsImlzRGlyZWN0b3J5RXhpc3RzIiwicmVjdXJzaXZlUmVhZGRpciIsInJlbGF0aXZlRmlsZU5hbWUiLCJmb3JtQXV0b0NhbGNQYXRoIiwiZmlsZXMiLCJqc0ZpbGVzIiwiZmlsdGVyIiwiZmlsZW5hbWUiLCJ0ZXN0IiwiUHJvbWlzZSIsImFsbCIsIm1hcCIsImlnbm9yZUVycm9yIiwiZm9ybUphdmFTY3JpcHRGaWxlc1BhdGgiLCJwYXJzZSIsIm5hbWUiLCJjb250ZW50IiwiZm9ybVNjaGVtYXNQYXRoIiwiZ2V0Um5nU2NoZW1hRmlsZUV4dGVuc2lvbiIsImZvcm1EaXJlY3RvcnlQYXRoIiwiY2F0Y2giLCJmaWxlUGF0aCIsImRlZmF1bHRWYWx1ZSIsImluZ29yZUVycm9yIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL0J1aWxkVGFza3MvUmVhZEZvcm1Tb3VyY2UudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHBhdGggZnJvbSBcInBhdGhcIjtcblxuaW1wb3J0IHsgcmVhZGRpciwgcmVhZEZpbGUgfSBmcm9tIFwiZnMtZXh0cmFcIjtcbmltcG9ydCByZWN1cnNpdmVSZWFkZGlyIGZyb20gXCJyZWN1cnNpdmUtcmVhZGRpclwiO1xuXG5pbXBvcnQgeyBpc0RpcmVjdG9yeUV4aXN0cyB9IGZyb20gXCIuLi9Db21tb25zL0ZzVXRpbHNcIjtcbmltcG9ydCB7IGdldFJuZ1NjaGVtYUZpbGVFeHRlbnNpb24gfSBmcm9tIFwiLi4vLi4vLi4vQ29tbW9uL0dldFJuZ1NjaGVtYUZpbGVFeHRlbnNpb25cIjtcbmltcG9ydCB7IGV4dHJhY3RHZnZGcm9tRm9ybVBhdGggfSBmcm9tIFwiLi4vLi4vLi4vQ29tbW9uL0Zvcm1QYXRoVXRpbHNcIjtcblxuZXhwb3J0IGludGVyZmFjZSBTdWdhckNvbnRlbnQge1xuICAgIFtzdWdhckZpbGVOYW1lV2l0aG91dEV4dGVuc2lvbjogc3RyaW5nXTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEN1c3RvbUNvbnRyb2xzQ29udGVudCB7XG4gICAgW2tleTogc3RyaW5nXTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZvcm1SZXNvdXJjZXMge1xuICAgIGdmdjogc3RyaW5nO1xuICAgIGFkZGl0aW9uYWxTZXR0aW5nczogdW5kZWZpbmVkIHwgc3RyaW5nO1xuICAgIGF1dG9jYWxjc0NvbnRlbnQ6IHN0cmluZ1tdO1xuICAgIGhlbHBlcnNDb250ZW50OiBBcnJheTx7IGZpbGVuYW1lOiBzdHJpbmc7IGNvbnRlbnQ6IHN0cmluZyB9PjtcbiAgICBjb21tb25IZWxwZXJzQ29udGVudDogQXJyYXk8eyBmaWxlbmFtZTogc3RyaW5nOyBjb250ZW50OiBzdHJpbmcgfT47XG4gICAgdmFsaWRhdGlvbnNDb250ZW50OiBBcnJheTx7IGZpbGVuYW1lOiBzdHJpbmc7IGNvbnRlbnQ6IHN0cmluZyB9PjtcbiAgICBzY2hlbWFSbmdDb250ZW50OiBzdHJpbmc7XG4gICAga2NKc1htbENvbnRlbnQ6IHVuZGVmaW5lZCB8IHN0cmluZztcbiAgICBrY0xhbmdDb250ZW50OiB1bmRlZmluZWQgfCBzdHJpbmc7XG4gICAgbm9ybWF0aXZlSGVscENvbnRlbnQ6IHN0cmluZztcbiAgICB0b3VyU3RlcHM6IHVuZGVmaW5lZCB8IHN0cmluZztcbiAgICBob29rc0NvbnRlbnQ6IHVuZGVmaW5lZCB8IHN0cmluZztcbiAgICBjdXN0b21Db250cm9sc0NvbnRlbnQ6IEN1c3RvbUNvbnRyb2xzQ29udGVudDtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIHByZXByb2Nlc3Nvcj86IGFueVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZvcm1Tb3VyY2Uge1xuICAgIHN1Z2FyQ29udGVudDogU3VnYXJDb250ZW50O1xuICAgIHJlc291cmNlczogRm9ybVJlc291cmNlcztcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHJlYWRGb3JtU291cmNlKFxuICAgIGZvcm1Tb3VyY2VzUGF0aDogc3RyaW5nLFxuICAgIGZhcm1EaXJlY3Rvcnk6IHN0cmluZyxcbiAgICBobEZhcm1EaXJlY3RvcnlQYXRoOiBzdHJpbmdcbik6IFByb21pc2U8Rm9ybVNvdXJjZT4ge1xuICAgIGNvbnN0IHJvb3RQYXRoID0gZmFybURpcmVjdG9yeTtcbiAgICBjb25zdCBmb3JtTmFtZSA9IGV4dHJhY3RHZnZGcm9tRm9ybVBhdGgoZm9ybVNvdXJjZXNQYXRoKTtcbiAgICBjb25zdCBzdWdhckNvbnRlbnQgPSBhd2FpdCByZWFkU3VnYXJGaWxlcyhwYXRoLmpvaW4oZm9ybVNvdXJjZXNQYXRoLCBcInN1Z2FyXCIpKTtcbiAgICBjb25zdCByZXN1bHQ6IEZvcm1Tb3VyY2UgPSB7XG4gICAgICAgIHN1Z2FyQ29udGVudDogc3VnYXJDb250ZW50LFxuICAgICAgICByZXNvdXJjZXM6IHtcbiAgICAgICAgICAgIGdmdjogcGF0aC5iYXNlbmFtZShmb3JtU291cmNlc1BhdGgpLFxuICAgICAgICAgICAgYWRkaXRpb25hbFNldHRpbmdzOiBhd2FpdCByZWFkRmlsZVdpdGhEZWZhdWx0KGZvcm1Tb3VyY2VzUGF0aCwgXCJzZXR0aW5ncy5qc29uXCIsIFwie31cIiksXG4gICAgICAgICAgICBhdXRvY2FsY3NDb250ZW50OiBhd2FpdCByZWFkQXV0b0NhbGNGaWxlcyhwYXRoLmpvaW4oZm9ybVNvdXJjZXNQYXRoLCBcImF1dG9jYWxjXCIpKSxcbiAgICAgICAgICAgIGhlbHBlcnNDb250ZW50OiBhd2FpdCByZWFkSmF2YVNjcmlwdEZpbGVzV2l0aE5hbWVzKHBhdGguam9pbihmb3JtU291cmNlc1BhdGgsIFwiaGVscGVyc1wiKSksXG4gICAgICAgICAgICBjb21tb25IZWxwZXJzQ29udGVudDogYXdhaXQgcmVhZEphdmFTY3JpcHRGaWxlc1dpdGhOYW1lcyhwYXRoLmpvaW4oZmFybURpcmVjdG9yeSwgXCJqc0hlbHBlcnNcIikpLFxuICAgICAgICAgICAgdmFsaWRhdGlvbnNDb250ZW50OiBhd2FpdCByZWFkSmF2YVNjcmlwdEZpbGVzV2l0aE5hbWVzKHBhdGguam9pbihmb3JtU291cmNlc1BhdGgsIFwidmFsaWRhdGlvbnNcIikpLFxuICAgICAgICAgICAgc2NoZW1hUm5nQ29udGVudDogYXdhaXQgcmVhZFNjaGVtYVJuZ0ZpbGUocGF0aC5qb2luKGZvcm1Tb3VyY2VzUGF0aCwgXCJzY2hlbWFzXCIpLCBmb3JtTmFtZSksXG4gICAgICAgICAgICBrY0pzWG1sQ29udGVudDogYXdhaXQgcmVhZEZpbGVXaXRoRGVmYXVsdChcbiAgICAgICAgICAgICAgICBwYXRoLmpvaW4oZm9ybVNvdXJjZXNQYXRoLCBcImF1dG9jYWxjXCIpLFxuICAgICAgICAgICAgICAgIGAke2Zvcm1OYW1lfS7QmtChLmNhbmR5LmpzLnhtbGAsXG4gICAgICAgICAgICAgICAgXCI8ZHVtbXkvPlwiXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAga2NMYW5nQ29udGVudDogYXdhaXQgcmVhZEZpbGVXaXRoRGVmYXVsdChcbiAgICAgICAgICAgICAgICBwYXRoLmpvaW4oZm9ybVNvdXJjZXNQYXRoLCBcImF1dG9jYWxjXCIpLFxuICAgICAgICAgICAgICAgIGAke2Zvcm1OYW1lfS7QmtChLmNhbmR5LmpzLmtjbGFuZ2AsXG4gICAgICAgICAgICAgICAgXCJcIlxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIG5vcm1hdGl2ZUhlbHBDb250ZW50OiBhd2FpdCByZWFkTm9ybWF0aXZlSGVscEZpbGUoaGxGYXJtRGlyZWN0b3J5UGF0aCksXG4gICAgICAgICAgICB0b3VyU3RlcHM6IGF3YWl0IHJlYWRGaWxlV2l0aERlZmF1bHQocGF0aC5qb2luKHJvb3RQYXRoLCBcInRvdXJcIiksIFwidG91ci5qc1wiLCBcInt9XCIpLFxuICAgICAgICAgICAgaG9va3NDb250ZW50OiBhd2FpdCByZWFkSG9va3NGaWxlKGZvcm1Tb3VyY2VzUGF0aCksXG4gICAgICAgICAgICBjdXN0b21Db250cm9sc0NvbnRlbnQ6IGF3YWl0IHJlYWRDdXN0b21Db250cm9sc0ZpbGVzKHBhdGguam9pbihmb3JtU291cmNlc1BhdGgsIFwiY29udHJvbHNcIikpLFxuICAgICAgICB9LFxuICAgIH07XG4gICAgaWYgKGZvcm1OYW1lLnN0YXJ0c1dpdGgoXCI0XCIpKSB7XG4gICAgICAgIGNvbnN0IGNvbW1vblJlc291cmNlc1BhdGggPSBwYXRoLmpvaW4oZm9ybVNvdXJjZXNQYXRoLCBcIi4uXCIsIFwiLi5cIiwgXCJjb21tb25SZXNvdXJjZXNcIik7XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdmFyLXJlcXVpcmVzXG4gICAgICAgIGNvbnN0IHsgZWxlbWVudHMgfSA9IHJlcXVpcmUocGF0aC5qb2luKGNvbW1vblJlc291cmNlc1BhdGgsIFwic3RhdFRpdGxlLmpzXCIpKTtcbiAgICAgICAgY29uc3QgaGFzUmVnaW9uYWxGb3JtID0gT2JqZWN0LnZhbHVlcyhzdWdhckNvbnRlbnQpLmZpbmQoc3VnYXIgPT4gc3VnYXIuaW5jbHVkZXMoJ2hhc1JlZ2lvbmFsRm9ybXM9XCJ0cnVlXCInKSk7XG5cbiAgICAgICAgaWYgKCFyZXN1bHQucmVzb3VyY2VzLmhvb2tzQ29udGVudCAmJiBoYXNSZWdpb25hbEZvcm0pIHtcbiAgICAgICAgICAgIHJlc3VsdC5yZXNvdXJjZXMuaG9va3NDb250ZW50ID0gYXdhaXQgcmVhZEZpbGVXaXRoRGVmYXVsdChjb21tb25SZXNvdXJjZXNQYXRoLCBcInJlZ2lvblN0YXRIb29rcy5qc1wiKTtcbiAgICAgICAgfVxuICAgICAgICByZXN1bHQucmVzb3VyY2VzLnByZXByb2Nlc3NvciA9IHsgLi4uZWxlbWVudHMgfTtcbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdDtcbn1cblxuYXN5bmMgZnVuY3Rpb24gcmVhZFN1Z2FyRmlsZXMoZm9ybVN1Z2FyRGlyZWN0b3J5UGF0aDogc3RyaW5nKTogUHJvbWlzZTxTdWdhckNvbnRlbnQ+IHtcbiAgICBjb25zdCBmaWxlTmFtZXMgPSBhd2FpdCByZWFkZGlyKGZvcm1TdWdhckRpcmVjdG9yeVBhdGgpO1xuICAgIGNvbnN0IHJlc3VsdDogU3VnYXJDb250ZW50ID0ge307XG4gICAgZm9yIChjb25zdCBmaWxlTmFtZSBvZiBmaWxlTmFtZXMpIHtcbiAgICAgICAgY29uc3Qgc3VnYXJNb2R1bGVOYW1lID0gZmlsZU5hbWUucmVwbGFjZShcIi5zdWdhci54bWxcIiwgXCJcIik7XG4gICAgICAgIGNvbnN0IHN1Z2FyTW9kdWxlQ29udGVudCA9IGF3YWl0IHJlYWRGaWxlKHBhdGguam9pbihmb3JtU3VnYXJEaXJlY3RvcnlQYXRoLCBmaWxlTmFtZSksIFwidXRmLThcIik7XG4gICAgICAgIHJlc3VsdFtzdWdhck1vZHVsZU5hbWVdID0gc3VnYXJNb2R1bGVDb250ZW50O1xuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xufVxuXG5hc3luYyBmdW5jdGlvbiByZWFkQ3VzdG9tQ29udHJvbHNGaWxlcyhmb3JtU3VnYXJEaXJlY3RvcnlQYXRoOiBzdHJpbmcpOiBQcm9taXNlPEN1c3RvbUNvbnRyb2xzQ29udGVudD4ge1xuICAgIGlmICghKGF3YWl0IGlzRGlyZWN0b3J5RXhpc3RzKGZvcm1TdWdhckRpcmVjdG9yeVBhdGgpKSkge1xuICAgICAgICByZXR1cm4ge307XG4gICAgfVxuICAgIGNvbnN0IGZpbGVOYW1lcyA9IGF3YWl0IHJlY3Vyc2l2ZVJlYWRkaXIoZm9ybVN1Z2FyRGlyZWN0b3J5UGF0aCk7XG4gICAgY29uc3QgcmVzdWx0OiBDdXN0b21Db250cm9sc0NvbnRlbnQgPSB7fTtcbiAgICBmb3IgKGNvbnN0IGZpbGVOYW1lIG9mIGZpbGVOYW1lcykge1xuICAgICAgICBjb25zdCBzdWdhck1vZHVsZUNvbnRlbnQgPSBhd2FpdCByZWFkRmlsZShmaWxlTmFtZSwgXCJ1dGYtOFwiKTtcbiAgICAgICAgY29uc3QgcmVsYXRpdmVGaWxlTmFtZSA9IChcImNvbnRyb2xzXFxcXFwiICsgZmlsZU5hbWUucmVwbGFjZShmb3JtU3VnYXJEaXJlY3RvcnlQYXRoICsgXCJcXFxcXCIsIFwiXCIpKS5yZXBsYWNlKFxuICAgICAgICAgICAgL1xcXFwvZyxcbiAgICAgICAgICAgIFwiL1wiXG4gICAgICAgICk7XG4gICAgICAgIHJlc3VsdFtyZWxhdGl2ZUZpbGVOYW1lXSA9IHN1Z2FyTW9kdWxlQ29udGVudDtcbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdDtcbn1cblxuYXN5bmMgZnVuY3Rpb24gcmVhZEF1dG9DYWxjRmlsZXMoZm9ybUF1dG9DYWxjUGF0aDogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmdbXT4ge1xuICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IGZpbGVzID0gYXdhaXQgcmVhZGRpcihmb3JtQXV0b0NhbGNQYXRoKTtcbiAgICAgICAgY29uc3QganNGaWxlcyA9IGZpbGVzLmZpbHRlcihmaWxlbmFtZSA9PiAvXFwuanMkLy50ZXN0KGZpbGVuYW1lKSk7XG4gICAgICAgIHJldHVybiBQcm9taXNlLmFsbChqc0ZpbGVzLm1hcChmaWxlbmFtZSA9PiByZWFkRmlsZShwYXRoLmpvaW4oZm9ybUF1dG9DYWxjUGF0aCwgZmlsZW5hbWUpLCBcInV0Zi04XCIpKSk7XG4gICAgfSBjYXRjaCAoaWdub3JlRXJyb3IpIHtcbiAgICAgICAgcmV0dXJuIFtdO1xuICAgIH1cbn1cblxuYXN5bmMgZnVuY3Rpb24gcmVhZEphdmFTY3JpcHRGaWxlc1dpdGhOYW1lcyhcbiAgICBmb3JtSmF2YVNjcmlwdEZpbGVzUGF0aDogc3RyaW5nXG4pOiBQcm9taXNlPEFycmF5PHsgZmlsZW5hbWU6IHN0cmluZzsgY29udGVudDogc3RyaW5nIH0+PiB7XG4gICAgdHJ5IHtcbiAgICAgICAgY29uc3QgZmlsZXMgPSBhd2FpdCByZWFkZGlyKGZvcm1KYXZhU2NyaXB0RmlsZXNQYXRoKTtcbiAgICAgICAgY29uc3QganNGaWxlcyA9IGZpbGVzLmZpbHRlcihmaWxlbmFtZSA9PiAvXFwuanMkLy50ZXN0KGZpbGVuYW1lKSk7XG4gICAgICAgIHJldHVybiBQcm9taXNlLmFsbChcbiAgICAgICAgICAgIGpzRmlsZXMubWFwKGFzeW5jIGZpbGVuYW1lID0+ICh7XG4gICAgICAgICAgICAgICAgZmlsZW5hbWU6IHBhdGgucGFyc2UoZmlsZW5hbWUpLm5hbWUsXG4gICAgICAgICAgICAgICAgY29udGVudDogYXdhaXQgcmVhZEZpbGUocGF0aC5qb2luKGZvcm1KYXZhU2NyaXB0RmlsZXNQYXRoLCBmaWxlbmFtZSksIFwidXRmLThcIiksXG4gICAgICAgICAgICB9KSlcbiAgICAgICAgKTtcbiAgICB9IGNhdGNoIChpZ25vcmVFcnJvcikge1xuICAgICAgICByZXR1cm4gW107XG4gICAgfVxufVxuXG5mdW5jdGlvbiByZWFkU2NoZW1hUm5nRmlsZShmb3JtU2NoZW1hc1BhdGg6IHN0cmluZywgZ2Z2OiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIHJldHVybiByZWFkRmlsZShwYXRoLmpvaW4oZm9ybVNjaGVtYXNQYXRoLCBgJHtnZnZ9JHtnZXRSbmdTY2hlbWFGaWxlRXh0ZW5zaW9uKGZvcm1TY2hlbWFzUGF0aCwgZ2Z2KX1gKSwgXCJ1dGYtOFwiKTtcbn1cblxuZnVuY3Rpb24gcmVhZE5vcm1hdGl2ZUhlbHBGaWxlKGhsRmFybURpcmVjdG9yeVBhdGg6IHN0cmluZyk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHJlYWRGaWxlKHBhdGguam9pbihobEZhcm1EaXJlY3RvcnlQYXRoLCBcIkZvcm1zXCIsIFwiaGVscGlkX25vcm1hdGl2LnhtbFwiKSwgXCJ1dGYtOFwiKTtcbn1cblxuZnVuY3Rpb24gcmVhZEhvb2tzRmlsZShmb3JtRGlyZWN0b3J5UGF0aDogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gcmVhZEZpbGUocGF0aC5qb2luKGZvcm1EaXJlY3RvcnlQYXRoLCBcImhvb2tzLmpzXCIpLCBcInV0Zi04XCIpLmNhdGNoKCgpID0+IFwiXCIpO1xufVxuXG5hc3luYyBmdW5jdGlvbiByZWFkRmlsZVdpdGhEZWZhdWx0KFxuICAgIGZpbGVQYXRoOiBzdHJpbmcsXG4gICAgZmlsZW5hbWU6IHN0cmluZyxcbiAgICBkZWZhdWx0VmFsdWU/OiBzdHJpbmdcbik6IFByb21pc2U8dW5kZWZpbmVkIHwgc3RyaW5nPiB7XG4gICAgdHJ5IHtcbiAgICAgICAgcmV0dXJuIGF3YWl0IHJlYWRGaWxlKHBhdGguam9pbihmaWxlUGF0aCwgZmlsZW5hbWUpLCBcInV0Zi04XCIpO1xuICAgIH0gY2F0Y2ggKGluZ29yZUVycm9yKSB7XG4gICAgICAgIHJldHVybiBkZWZhdWx0VmFsdWU7XG4gICAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsSUFBQUEsS0FBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUMsUUFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsaUJBQUEsR0FBQUgsc0JBQUEsQ0FBQUMsT0FBQTtBQUVBLElBQUFHLFFBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLDBCQUFBLEdBQUFKLE9BQUE7QUFDQSxJQUFBSyxjQUFBLEdBQUFMLE9BQUE7QUFpQ08sZUFBZU0sY0FBY0EsQ0FDaENDLGVBQXVCLEVBQ3ZCQyxhQUFxQixFQUNyQkMsbUJBQTJCLEVBQ1I7RUFDbkIsTUFBTUMsUUFBUSxHQUFHRixhQUFhO0VBQzlCLE1BQU1HLFFBQVEsR0FBRyxJQUFBQyxxQ0FBc0IsRUFBQ0wsZUFBZSxDQUFDO0VBQ3hELE1BQU1NLFlBQVksR0FBRyxNQUFNQyxjQUFjLENBQUNDLGFBQUksQ0FBQ0MsSUFBSSxDQUFDVCxlQUFlLEVBQUUsT0FBTyxDQUFDLENBQUM7RUFDOUUsTUFBTVUsTUFBa0IsR0FBRztJQUN2QkosWUFBWSxFQUFFQSxZQUFZO0lBQzFCSyxTQUFTLEVBQUU7TUFDUEMsR0FBRyxFQUFFSixhQUFJLENBQUNLLFFBQVEsQ0FBQ2IsZUFBZSxDQUFDO01BQ25DYyxrQkFBa0IsRUFBRSxNQUFNQyxt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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ReadFormSource.js","names":["_path","_interopRequireDefault","require","_fsExtra","_recursiveReaddir","_FsUtils","_GetRngSchemaFileExtension","_FormPathUtils","readFormSource","formSourcesPath","farmDirectory","hlFarmDirectoryPath","rootPath","formName","extractGfvFromFormPath","sugarContent","readSugarFiles","path","join","result","resources","gfv","basename","additionalSettings","readFileWithDefault","autocalcsContent","readAutoCalcFiles","helpersContent","readJavaScriptFilesWithNames","commonHelpersContent","validationsContent","schemaRngContent","readSchemaRngFile","kcJsXmlContent","kcLangContent","normativeHelpContent","readNormativeHelpFile","tourSteps","hooksContent","readHooksFile","customControlsContent","readCustomControlsFiles","startsWith","commonResourcesPath","elements","hasRegionalForm","Object","values","find","sugar","includes","preprocessor","formSugarDirectoryPath","fileNames","readdir","fileName","sugarModuleName","replace","sugarModuleContent","readFile","isDirectoryExists","recursiveReaddir","relativeFileName","formAutoCalcPath","files","jsFiles","filter","filename","test","Promise","all","map","ignoreError","formJavaScriptFilesPath","parse","name","content","formSchemasPath","getRngSchemaFileExtension","formDirectoryPath","catch","filePath","defaultValue","ingoreError"],"sources":["../../../../src/BuildTasks/ReadFormSource.ts"],"sourcesContent":["import path from \"path\";\n\nimport { readdir, readFile } from \"fs-extra\";\nimport recursiveReaddir from \"recursive-readdir\";\n\nimport { isDirectoryExists } from \"../Commons/FsUtils\";\nimport { getRngSchemaFileExtension } from \"../../../Common/GetRngSchemaFileExtension\";\nimport { extractGfvFromFormPath } from \"../../../Common/FormPathUtils\";\n\nexport interface SugarContent {\n [sugarFileNameWithoutExtension: string]: string;\n}\n\nexport interface CustomControlsContent {\n [key: string]: string;\n}\n\nexport interface FormResources {\n gfv: string;\n additionalSettings: undefined | string;\n autocalcsContent: string[];\n helpersContent: Array<{ filename: string; content: string }>;\n commonHelpersContent: Array<{ filename: string; content: string }>;\n validationsContent: Array<{ filename: string; content: string }>;\n schemaRngContent: string;\n kcJsXmlContent: undefined | string;\n kcLangContent: undefined | string;\n normativeHelpContent: string;\n tourSteps: undefined | string;\n hooksContent: undefined | string;\n customControlsContent: CustomControlsContent;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n preprocessor?: any[];\n}\n\nexport interface FormSource {\n sugarContent: SugarContent;\n resources: FormResources;\n}\n\nexport async function readFormSource(\n formSourcesPath: string,\n farmDirectory: string,\n hlFarmDirectoryPath: string\n): Promise<FormSource> {\n const rootPath = farmDirectory;\n const formName = extractGfvFromFormPath(formSourcesPath);\n const sugarContent = await readSugarFiles(path.join(formSourcesPath, \"sugar\"));\n const result: FormSource = {\n sugarContent: sugarContent,\n resources: {\n gfv: path.basename(formSourcesPath),\n additionalSettings: await readFileWithDefault(formSourcesPath, \"settings.json\", \"{}\"),\n autocalcsContent: await readAutoCalcFiles(path.join(formSourcesPath, \"autocalc\")),\n helpersContent: await readJavaScriptFilesWithNames(path.join(formSourcesPath, \"helpers\")),\n commonHelpersContent: await readJavaScriptFilesWithNames(path.join(farmDirectory, \"jsHelpers\")),\n validationsContent: await readJavaScriptFilesWithNames(path.join(formSourcesPath, \"validations\")),\n schemaRngContent: await readSchemaRngFile(path.join(formSourcesPath, \"schemas\"), formName),\n kcJsXmlContent: await readFileWithDefault(\n path.join(formSourcesPath, \"autocalc\"),\n `${formName}.КС.candy.js.xml`,\n \"<dummy/>\"\n ),\n kcLangContent: await readFileWithDefault(\n path.join(formSourcesPath, \"autocalc\"),\n `${formName}.КС.candy.js.kclang`,\n \"\"\n ),\n normativeHelpContent: await readNormativeHelpFile(hlFarmDirectoryPath),\n tourSteps: await readFileWithDefault(path.join(rootPath, \"tour\"), \"tour.js\", \"{}\"),\n hooksContent: await readHooksFile(formSourcesPath),\n customControlsContent: await readCustomControlsFiles(path.join(formSourcesPath, \"controls\")),\n },\n };\n if (formName.startsWith(\"4\")) {\n const commonResourcesPath = path.join(formSourcesPath, \"..\", \"..\", \"commonResources\");\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n const { elements } = require(path.join(commonResourcesPath, \"statTitle.js\"));\n const hasRegionalForm = Object.values(sugarContent).find(sugar => sugar.includes('hasRegionalForms=\"true\"'));\n\n if (!result.resources.hooksContent && hasRegionalForm) {\n result.resources.hooksContent = await readFileWithDefault(commonResourcesPath, \"regionStatHooks.js\");\n }\n result.resources.preprocessor = { ...elements };\n }\n return result;\n}\n\nasync function readSugarFiles(formSugarDirectoryPath: string): Promise<SugarContent> {\n const fileNames = await readdir(formSugarDirectoryPath);\n const result: SugarContent = {};\n for (const fileName of fileNames) {\n const sugarModuleName = fileName.replace(\".sugar.xml\", \"\");\n const sugarModuleContent = await readFile(path.join(formSugarDirectoryPath, fileName), \"utf-8\");\n result[sugarModuleName] = sugarModuleContent;\n }\n return result;\n}\n\nasync function readCustomControlsFiles(formSugarDirectoryPath: string): Promise<CustomControlsContent> {\n if (!(await isDirectoryExists(formSugarDirectoryPath))) {\n return {};\n }\n const fileNames = await recursiveReaddir(formSugarDirectoryPath);\n const result: CustomControlsContent = {};\n for (const fileName of fileNames) {\n const sugarModuleContent = await readFile(fileName, \"utf-8\");\n const relativeFileName = (\"controls\\\\\" + fileName.replace(formSugarDirectoryPath + \"\\\\\", \"\")).replace(\n /\\\\/g,\n \"/\"\n );\n result[relativeFileName] = sugarModuleContent;\n }\n return result;\n}\n\nasync function readAutoCalcFiles(formAutoCalcPath: string): Promise<string[]> {\n try {\n const files = await readdir(formAutoCalcPath);\n const jsFiles = files.filter(filename => /\\.js$/.test(filename));\n return Promise.all(jsFiles.map(filename => readFile(path.join(formAutoCalcPath, filename), \"utf-8\")));\n } catch (ignoreError) {\n return [];\n }\n}\n\nasync function readJavaScriptFilesWithNames(\n formJavaScriptFilesPath: string\n): Promise<Array<{ filename: string; content: string }>> {\n try {\n const files = await readdir(formJavaScriptFilesPath);\n const jsFiles = files.filter(filename => /\\.js$/.test(filename));\n return Promise.all(\n jsFiles.map(async filename => ({\n filename: path.parse(filename).name,\n content: await readFile(path.join(formJavaScriptFilesPath, filename), \"utf-8\"),\n }))\n );\n } catch (ignoreError) {\n return [];\n }\n}\n\nfunction readSchemaRngFile(formSchemasPath: string, gfv: string): Promise<string> {\n return readFile(path.join(formSchemasPath, `${gfv}${getRngSchemaFileExtension(formSchemasPath, gfv)}`), \"utf-8\");\n}\n\nfunction readNormativeHelpFile(hlFarmDirectoryPath: string): Promise<string> {\n return readFile(path.join(hlFarmDirectoryPath, \"Forms\", \"helpid_normativ.xml\"), \"utf-8\");\n}\n\nfunction readHooksFile(formDirectoryPath: string): Promise<string> {\n return readFile(path.join(formDirectoryPath, \"hooks.js\"), \"utf-8\").catch(() => \"\");\n}\n\nasync function readFileWithDefault(\n filePath: string,\n filename: string,\n defaultValue?: string\n): Promise<undefined | string> {\n try {\n return await readFile(path.join(filePath, filename), \"utf-8\");\n } catch (ingoreError) {\n return defaultValue;\n }\n}\n"],"mappings":"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","ignoreList":[]}