@kontur.candy/tools 2.223.3 → 2.224.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (149) hide show
  1. package/distr/Common/ArrayUtils.js +4 -0
  2. package/distr/Common/ArrayUtils.js.map +1 -1
  3. package/distr/Common/CandyApiClient/CandyApiClient.js +10 -8
  4. package/distr/Common/CandyApiClient/CandyApiClient.js.map +1 -1
  5. package/distr/Common/CandyApiClient/FakeCandyApiClient.js +51 -51
  6. package/distr/Common/CandyApiClient/FakeCandyApiClient.js.map +1 -1
  7. package/distr/Common/CandyApiClient/ICandyApiClient.js.map +1 -1
  8. package/distr/Common/CandyApiClient/Types/QueryCollecton/InnerQueryResponse.js.map +1 -1
  9. package/distr/Common/CollectionUtils.js +1 -1
  10. package/distr/Common/CollectionUtils.js.map +1 -1
  11. package/distr/Common/Errors.js +4 -0
  12. package/distr/Common/Errors.js.map +1 -1
  13. package/distr/Common/FSPrinterClient/FSPrinterClient.js +1 -1
  14. package/distr/Common/FSPrinterClient/FSPrinterClient.js.map +1 -1
  15. package/distr/Common/FSPrinterClient/FakeFSPrinterClient.js +3 -3
  16. package/distr/Common/FSPrinterClient/FakeFSPrinterClient.js.map +1 -1
  17. package/distr/Common/FormActionHandlers/ContextualActionNames.js +1 -1
  18. package/distr/Common/FormActionHandlers/ContextualActionNames.js.map +1 -1
  19. package/distr/Common/Funcs.js.map +1 -1
  20. package/distr/Common/GetRngSchemaFileExtension.js +1 -1
  21. package/distr/Common/GetRngSchemaFileExtension.js.map +1 -1
  22. package/distr/Common/HttpClient/FetchImplementation/BrowserFetchWithOptionalPolyfill.js +2 -1
  23. package/distr/Common/HttpClient/FetchImplementation/BrowserFetchWithOptionalPolyfill.js.map +1 -1
  24. package/distr/Common/HttpClient/HttpClient.js +1 -1
  25. package/distr/Common/HttpClient/HttpClient.js.map +1 -1
  26. package/distr/Common/KCLangRuntimeUtils.js +6 -3
  27. package/distr/Common/KCLangRuntimeUtils.js.map +1 -1
  28. package/distr/Common/ModelPath/Map/Map2.js +2 -2
  29. package/distr/Common/ModelPath/Map/Map2.js.map +1 -1
  30. package/distr/Common/NdsPlusApiClient/INdsPlusApiClient.js +6 -0
  31. package/distr/Common/NdsPlusApiClient/INdsPlusApiClient.js.map +1 -0
  32. package/distr/Common/NdsPlusApiClient/NdsPlusApiClient.js +67 -0
  33. package/distr/Common/NdsPlusApiClient/NdsPlusApiClient.js.map +1 -0
  34. package/distr/Common/NidusClient/Fakes/FakeNidusClient.js +5 -5
  35. package/distr/Common/NidusClient/Fakes/FakeNidusClient.js.map +1 -1
  36. package/distr/Common/NidusClient/Fakes/LocalStorageBasedNidusClient.js +1 -1
  37. package/distr/Common/NidusClient/Fakes/LocalStorageBasedNidusClient.js.map +1 -1
  38. package/distr/Common/NidusClient/NidusClientImpl.js +1 -1
  39. package/distr/Common/NidusClient/NidusClientImpl.js.map +1 -1
  40. package/distr/Common/PathConstants.js +2 -1
  41. package/distr/Common/PathConstants.js.map +1 -1
  42. package/distr/Common/TypingUtils.js +2 -2
  43. package/distr/Common/TypingUtils.js.map +1 -1
  44. package/distr/Tools/src/BuildTasks/Engine/AcquirePublishedEngineTask.js +1 -1
  45. package/distr/Tools/src/BuildTasks/Engine/AcquirePublishedEngineTask.js.map +1 -1
  46. package/distr/Tools/src/BuildTasks/Form/NullFormGenerator.js +8 -8
  47. package/distr/Tools/src/BuildTasks/Form/NullFormGenerator.js.map +1 -1
  48. package/distr/Tools/src/BuildTasks/Form/WriteAttachmentPathByGfvFiles.js +2 -2
  49. package/distr/Tools/src/BuildTasks/Form/WriteAttachmentPathByGfvFiles.js.map +1 -1
  50. package/distr/Tools/src/BuildTasks/Form/WriteAttachmentPathFiles.js +2 -2
  51. package/distr/Tools/src/BuildTasks/Form/WriteAttachmentPathFiles.js.map +1 -1
  52. package/distr/Tools/src/BuildTasks/Form/WriteFLangNormalizationFiles.js +2 -2
  53. package/distr/Tools/src/BuildTasks/Form/WriteFLangNormalizationFiles.js.map +1 -1
  54. package/distr/Tools/src/BuildTasks/Generator/AcquirePublishedGeneratorTask.js +1 -1
  55. package/distr/Tools/src/BuildTasks/Generator/AcquirePublishedGeneratorTask.js.map +1 -1
  56. package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/CreateAsyncGenerator.js +1 -2
  57. package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/CreateAsyncGenerator.js.map +1 -1
  58. package/distr/Tools/src/BuildTasks/PublishedVersionUtils.js +1 -1
  59. package/distr/Tools/src/BuildTasks/PublishedVersionUtils.js.map +1 -1
  60. package/distr/Tools/src/BuildTasks/ReadFormSource.js +3 -3
  61. package/distr/Tools/src/BuildTasks/ReadFormSource.js.map +1 -1
  62. package/distr/Tools/src/BuildTasks/ResolveFormInfo.js +4 -4
  63. package/distr/Tools/src/BuildTasks/ResolveFormInfo.js.map +1 -1
  64. package/distr/Tools/src/BuildTasks/WriteFormMeta.js +1 -1
  65. package/distr/Tools/src/BuildTasks/WriteFormMeta.js.map +1 -1
  66. package/distr/Tools/src/BuildTasks/copyStaticFiles.js +17 -0
  67. package/distr/Tools/src/BuildTasks/copyStaticFiles.js.map +1 -0
  68. package/distr/Tools/src/CLICommands/BuildForms/RunBuildForms.js +4 -4
  69. package/distr/Tools/src/CLICommands/BuildForms/RunBuildForms.js.map +1 -1
  70. package/distr/Tools/src/CLICommands/BuildServer/BuildServerServerOptions.js +1 -1
  71. package/distr/Tools/src/CLICommands/BuildServer/BuildServerServerOptions.js.map +1 -1
  72. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerBackendResourcesController.js.map +1 -1
  73. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerBackendResourcesUpdatesController.js +3 -3
  74. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerBackendResourcesUpdatesController.js.map +1 -1
  75. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerBuildFormsController.js +5 -6
  76. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerBuildFormsController.js.map +1 -1
  77. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerClientJsFromResourcesController.js +2 -2
  78. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerClientJsFromResourcesController.js.map +1 -1
  79. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerFormInfoController.js +1 -1
  80. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerFormInfoController.js.map +1 -1
  81. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerLocalSourcesEngineController.js +3 -3
  82. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerLocalSourcesEngineController.js.map +1 -1
  83. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/BuildFormDevServer.js +2 -2
  84. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/BuildFormDevServer.js.map +1 -1
  85. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/CandyWidgetDevServer.js +1 -1
  86. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/CandyWidgetDevServer.js.map +1 -1
  87. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/RunFormCompilationViaWebpackDevServer.js +1 -1
  88. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/RunFormCompilationViaWebpackDevServer.js.map +1 -1
  89. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackInMemoryUtils/WebpackHybridFileSystem.js +1 -1
  90. package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackInMemoryUtils/WebpackHybridFileSystem.js.map +1 -1
  91. package/distr/Tools/src/CLICommands/DevBuild/RunDevBuild.js +2 -2
  92. package/distr/Tools/src/CLICommands/DevBuild/RunDevBuild.js.map +1 -1
  93. package/distr/Tools/src/CLICommands/FormStats/RunFormStats.js +2 -2
  94. package/distr/Tools/src/CLICommands/FormStats/RunFormStats.js.map +1 -1
  95. package/distr/Tools/src/CLICommands/InitForm/RunInitForm.js +1 -1
  96. package/distr/Tools/src/CLICommands/InitForm/RunInitForm.js.map +1 -1
  97. package/distr/Tools/src/CLICommands/RenameFiles/RunRenameFiles.js +3 -3
  98. package/distr/Tools/src/CLICommands/RenameFiles/RunRenameFiles.js.map +1 -1
  99. package/distr/Tools/src/CLICommands/SugarExtractor/ExtractTextsFromSugarController.js +1 -1
  100. package/distr/Tools/src/CLICommands/SugarExtractor/ExtractTextsFromSugarController.js.map +1 -1
  101. package/distr/Tools/src/CLICommands/UpgradeForm/RunUpgradeForm.js +12 -13
  102. package/distr/Tools/src/CLICommands/UpgradeForm/RunUpgradeForm.js.map +1 -1
  103. package/distr/Tools/src/CandyCLI.js +2 -2
  104. package/distr/Tools/src/CandyCLI.js.map +1 -1
  105. package/distr/Tools/src/Commons/EventObject.js +1 -1
  106. package/distr/Tools/src/Commons/EventObject.js.map +1 -1
  107. package/distr/Tools/src/Commons/FormGlobsUtils.js +1 -2
  108. package/distr/Tools/src/Commons/FormGlobsUtils.js.map +1 -1
  109. package/distr/Tools/src/Commons/FsUtils.js +2 -2
  110. package/distr/Tools/src/Commons/FsUtils.js.map +1 -1
  111. package/distr/Tools/src/Commons/GitUtils.js +2 -1
  112. package/distr/Tools/src/Commons/GitUtils.js.map +1 -1
  113. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Actions.js +3 -3
  114. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Actions.js.map +1 -1
  115. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Methods.js +2 -2
  116. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Methods.js.map +1 -1
  117. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/CustomContentResultHandler.js +1 -1
  118. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/CustomContentResultHandler.js.map +1 -1
  119. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/EmptyResultHandler.js +1 -1
  120. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/EmptyResultHandler.js.map +1 -1
  121. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/HtmlResultHandler.js +1 -1
  122. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/HtmlResultHandler.js.map +1 -1
  123. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/JsonResultHandler.js +1 -1
  124. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/JsonResultHandler.js.map +1 -1
  125. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/PlainTextResultHandler.js +1 -1
  126. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/PlainTextResultHandler.js.map +1 -1
  127. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/StreamResultHandler.js +1 -1
  128. package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/StreamResultHandler.js.map +1 -1
  129. package/distr/Tools/src/Commons/HttpServer/ExpressWrapper/ExpressServerWrapper.js +1 -1
  130. package/distr/Tools/src/Commons/HttpServer/ExpressWrapper/ExpressServerWrapper.js.map +1 -1
  131. package/distr/Tools/src/Commons/HttpServer/ExpressWrapper/SingletonController.js +2 -2
  132. package/distr/Tools/src/Commons/HttpServer/ExpressWrapper/SingletonController.js.map +1 -1
  133. package/distr/Tools/src/Commons/Logging/StaticLogger.js +5 -7
  134. package/distr/Tools/src/Commons/Logging/StaticLogger.js.map +1 -1
  135. package/distr/Tools/src/Commons/Options/CommandBasedOptionsParser.d.js.map +1 -1
  136. package/distr/Tools/src/Commons/TasksCore/ChainableValueProducer.js +0 -3
  137. package/distr/Tools/src/Commons/TasksCore/ChainableValueProducer.js.map +1 -1
  138. package/distr/Tools/src/FormWebpackConfiguration/CacheAssetsPlugin.js +1 -1
  139. package/distr/Tools/src/FormWebpackConfiguration/CacheAssetsPlugin.js.map +1 -1
  140. package/distr/Tools/src/LocalServerFrontEndDist/enhancedClient.js +1 -1
  141. package/distr/Tools/src/LocalServerFrontEndDist/index.js +1 -1
  142. package/distr/Tools/src/LocalServerFrontEndDist/index.js.map +1 -1
  143. package/distr/Tools/src/SelfUpdate.js +1 -1
  144. package/distr/Tools/src/SelfUpdate.js.map +1 -1
  145. package/distr/Tools/src/StaticFilesForProductionResourcesDir/client.js +239 -207
  146. package/distr/Tools/src/StaticFilesForProductionResourcesDir/client.js.map +1 -1
  147. package/distr/Tools/src/StaticFilesForProductionResourcesDir/client.min.js +101 -72
  148. package/distr/Tools/src/StaticFilesForProductionResourcesDir/client.min.js.map +1 -1
  149. package/package.json +2 -2
@@ -9,12 +9,11 @@ var _fsExtra = require("fs-extra");
9
9
  var _PublishedVersionUtils = require("../../BuildTasks/PublishedVersionUtils");
10
10
  var _ResolveFormInfo = require("../../BuildTasks/ResolveFormInfo");
11
11
  var _FormGlobsUtils = require("../../Commons/FormGlobsUtils");
12
- var _StaticLogger = require("../../Commons/Logging/StaticLogger");
13
12
  var _Version = require("../../BuildTasks/Version");
14
13
  var _WellKnownDirectories = require("../../../../Common/WellKnownDirectories");
15
14
  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); }
16
15
  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; }
17
- async function runUpgradeForm(context, options, resourcesDirectory, farmDirectory) {
16
+ async function runUpgradeForm(context, options, farmDirectory) {
18
17
  await _FormGlobsUtils.FormGlobs.ensureEachGlobResolvesIntoExistingForm(options.formGlobs, farmDirectory);
19
18
  const formGlobs = await _FormGlobsUtils.FormGlobs.resolveSpecifiers(options.formGlobs, farmDirectory);
20
19
  for (const {
@@ -24,28 +23,28 @@ async function runUpgradeForm(context, options, resourcesDirectory, farmDirector
24
23
  const logger = context.logger.withPrefix(`FORM:${gfv}`);
25
24
  if (options.useCiBuild) {
26
25
  logger.log("Begin upgrading build mode");
27
- await upgradeFormToCiBuildMode(resourcesDirectory, farmDirectory, gfv, formPath, logger);
26
+ await upgradeFormToCiBuildMode(formPath, logger);
28
27
  logger.log("Finish upgrading build mode");
29
28
  }
30
29
  if (options.engine != undefined) {
31
30
  logger.log("Begin upgrading engine version");
32
- await upgradeFormEngine(farmDirectory, gfv, formPath, options.engine, options.skipPreVersions, logger);
31
+ await upgradeFormEngine(formPath, options.engine, options.skipPreVersions, logger);
33
32
  logger.log("Finish upgrading engine version");
34
33
  }
35
34
  if (options.preid != undefined) {
36
35
  logger.log("Begin upgrading engine version");
37
- await upgradeFormPrerelease(farmDirectory, gfv, formPath, options.preid, logger);
36
+ await upgradeFormPrerelease(formPath, options.preid, logger);
38
37
  logger.log("Finish upgrading engine version");
39
38
  }
40
39
  }
41
40
  }
42
- async function upgradeFormEngine(farmDirectory, gfv, formPath, engineVersion, skipPreVersions, logger) {
41
+ async function upgradeFormEngine(formPath, engineVersion, skipPreVersions, logger) {
43
42
  const formJsonPath = path.join(formPath, _WellKnownDirectories.WellKnownDirectories.FormJsonFileName);
44
43
  if (!(await (0, _fsExtra.pathExists)(formJsonPath))) {
45
44
  logger.warning("Form does not have form.json: Upgrade skipped");
46
45
  return;
47
46
  }
48
- const formConfig = await (0, _ResolveFormInfo.readFormConfig)(formJsonPath, logger);
47
+ const formConfig = await (0, _ResolveFormInfo.readFormConfig)(formJsonPath);
49
48
  if (skipPreVersions) {
50
49
  var _formConfig$dependenc, _formConfig$dependenc2;
51
50
  if (((_formConfig$dependenc = formConfig.dependencies) === null || _formConfig$dependenc === void 0 ? void 0 : _formConfig$dependenc.engine) != undefined && ((_formConfig$dependenc2 = formConfig.dependencies) === null || _formConfig$dependenc2 === void 0 ? void 0 : _formConfig$dependenc2.generator) != undefined) {
@@ -90,17 +89,17 @@ async function upgradeFormEngine(farmDirectory, gfv, formPath, engineVersion, sk
90
89
  }
91
90
  }
92
91
  }
93
- async function upgradeFormToCiBuildMode(resourcesDirectory, farmDirectory, gfv, formPath, logger) {
92
+ async function upgradeFormToCiBuildMode(formPath, logger) {
94
93
  const formJsonPath = path.join(formPath, _WellKnownDirectories.WellKnownDirectories.FormJsonFileName);
95
94
  if (!(await (0, _fsExtra.pathExists)(formJsonPath))) {
96
95
  logger.warning("form.json does not exists. Upgrade skipped.");
97
96
  return;
98
97
  }
99
98
  const generatedFormDirectory = path.join(formPath, "form");
100
- if (!(0, _ResolveFormInfo.isNewFormJsonFormat)(formJsonPath)) {
101
- throw new Error("Файл form.json формы должен иметь новый формат зависимости. Обратитесь к расзработчикам за разъяснениями.");
99
+ if (!(await (0, _ResolveFormInfo.isNewFormJsonFormat)(formJsonPath))) {
100
+ throw new Error("Файл form.json формы должен иметь новый формат зависимости. Обратитесь к разработчикам за разъяснениями.");
102
101
  }
103
- const formConfig = await (0, _ResolveFormInfo.readFormConfig)(formJsonPath, (0, _StaticLogger.getLogger)());
102
+ const formConfig = await (0, _ResolveFormInfo.readFormConfig)(formJsonPath);
104
103
  if (formConfig.build !== "ci") {
105
104
  formConfig.build = "ci";
106
105
  await (0, _fsExtra.writeJson)(formJsonPath, formConfig, {
@@ -124,9 +123,9 @@ async function upgradeFormToCiBuildMode(resourcesDirectory, farmDirectory, gfv,
124
123
  logger.log("Created .gitignore");
125
124
  }
126
125
  }
127
- async function upgradeFormPrerelease(farmDirectory, gfv, formPath, preid, logger) {
126
+ async function upgradeFormPrerelease(formPath, preid, logger) {
128
127
  const formJsonPath = path.join(formPath, _WellKnownDirectories.WellKnownDirectories.FormJsonFileName);
129
- const formConfig = await (0, _ResolveFormInfo.readFormConfig)(formJsonPath, logger);
128
+ const formConfig = await (0, _ResolveFormInfo.readFormConfig)(formJsonPath);
130
129
  const prereleaseVersionFormJson = await (0, _PublishedVersionUtils.getPrereleaseVersionFormJson)(preid);
131
130
  if (prereleaseVersionFormJson != undefined) {
132
131
  formConfig.dependencies = {
@@ -1 +1 @@
1
- {"version":3,"file":"RunUpgradeForm.js","names":["path","_interopRequireWildcard","require","_fsExtra","_PublishedVersionUtils","_ResolveFormInfo","_FormGlobsUtils","_StaticLogger","_Version","_WellKnownDirectories","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","runUpgradeForm","context","options","resourcesDirectory","farmDirectory","FormGlobs","ensureEachGlobResolvesIntoExistingForm","formGlobs","resolveSpecifiers","gfv","formPath","resolveGfvGlobs","logger","withPrefix","useCiBuild","log","upgradeFormToCiBuildMode","engine","undefined","upgradeFormEngine","skipPreVersions","preid","upgradeFormPrerelease","engineVersion","formJsonPath","join","WellKnownDirectories","FormJsonFileName","pathExists","warning","formConfig","readFormConfig","_formConfig$dependenc","_formConfig$dependenc2","dependencies","generator","_formConfig$dependenc3","_formConfig$dependenc4","engineVersionSpec","parseCandyVersionSpec","generatorVersionSpec","type","test","version","mode","getLastStableEngineVersion","getLastStableGeneratorVersion","writeJson","spaces","isEngineVersionExists","Error","generatedFormDirectory","isNewFormJsonFormat","getLogger","build","remove","formGitIgnorePath","gitIgnoreContent","readFile","split","includes","writeFile","trimRight","prereleaseVersionFormJson","getPrereleaseVersionFormJson"],"sources":["../../../../../src/CLICommands/UpgradeForm/RunUpgradeForm.ts"],"sourcesContent":["import * as path from \"path\";\n\nimport { pathExists, readFile, remove, writeFile, writeJson } from \"fs-extra\";\n\nimport {\n getLastStableEngineVersion,\n getLastStableGeneratorVersion,\n getPrereleaseVersionFormJson,\n isEngineVersionExists,\n} from \"../../BuildTasks/PublishedVersionUtils\";\nimport { isNewFormJsonFormat, readFormConfig } from \"../../BuildTasks/ResolveFormInfo\";\nimport { ConsoleApplicationContext } from \"../../Commons/ConsoleApplication/ConsoleApplicationContext\";\nimport { FormGlobs } from \"../../Commons/FormGlobsUtils\";\nimport { ILogger } from \"../../Commons/Logging/ILogger\";\nimport { getLogger } from \"../../Commons/Logging/StaticLogger\";\nimport { parseCandyVersionSpec } from \"../../BuildTasks/Version\";\nimport { WellKnownDirectories } from \"../../../../Common/WellKnownDirectories\";\n\nimport { UpgradeFormOptions } from \"./UpgradeFormOptions\";\n\nexport async function runUpgradeForm(\n context: ConsoleApplicationContext,\n options: UpgradeFormOptions,\n resourcesDirectory: string,\n farmDirectory: string\n): Promise<void> {\n await FormGlobs.ensureEachGlobResolvesIntoExistingForm(options.formGlobs, farmDirectory);\n const formGlobs = await FormGlobs.resolveSpecifiers(options.formGlobs, farmDirectory);\n for (const { gfv, formPath } of await FormGlobs.resolveGfvGlobs(formGlobs, farmDirectory)) {\n const logger = context.logger.withPrefix(`FORM:${gfv}`);\n if (options.useCiBuild) {\n logger.log(\"Begin upgrading build mode\");\n await upgradeFormToCiBuildMode(resourcesDirectory, farmDirectory, gfv, formPath, logger);\n logger.log(\"Finish upgrading build mode\");\n }\n if (options.engine != undefined) {\n logger.log(\"Begin upgrading engine version\");\n await upgradeFormEngine(farmDirectory, gfv, formPath, options.engine, options.skipPreVersions, logger);\n logger.log(\"Finish upgrading engine version\");\n }\n if (options.preid != undefined) {\n logger.log(\"Begin upgrading engine version\");\n await upgradeFormPrerelease(farmDirectory, gfv, formPath, options.preid, logger);\n logger.log(\"Finish upgrading engine version\");\n }\n }\n}\n\nasync function upgradeFormEngine(\n farmDirectory: string,\n gfv: string,\n formPath: string,\n engineVersion: string,\n skipPreVersions: boolean,\n logger: ILogger\n): Promise<void> {\n const formJsonPath = path.join(formPath, WellKnownDirectories.FormJsonFileName);\n if (!(await pathExists(formJsonPath))) {\n logger.warning(\"Form does not have form.json: Upgrade skipped\");\n return;\n }\n const formConfig = await readFormConfig(formJsonPath, logger);\n if (skipPreVersions) {\n if (formConfig.dependencies?.engine != undefined && formConfig.dependencies?.generator != undefined) {\n const engineVersionSpec = parseCandyVersionSpec(formConfig.dependencies?.engine);\n const generatorVersionSpec = parseCandyVersionSpec(formConfig.dependencies?.generator);\n if (\n engineVersionSpec.type === \"pre\" ||\n generatorVersionSpec.type === \"pre\" ||\n (engineVersionSpec.type === \"version\" && /[a-zA-Z]/.test(engineVersionSpec.version)) ||\n (generatorVersionSpec.type === \"version\" && /[a-zA-Z]/.test(generatorVersionSpec.version))\n ) {\n logger.log(\n \"Form version has prerelease version: Upgrade skipped due to flag skipPreVersions (--skip-pre-versions) specified\"\n );\n return;\n }\n }\n }\n if (formConfig.mode === \"no-editor\") {\n logger.log(\"Form does not have editor: Upgrade skipped\");\n return;\n }\n if (formConfig.mode === \"copy-legacy-prebuilt-resources\") {\n logger.log(\"Form does not have editor: Upgrade skipped\");\n return;\n }\n if (engineVersion === \"latest\") {\n formConfig.dependencies = {\n engine: await getLastStableEngineVersion(),\n generator: await getLastStableGeneratorVersion(),\n };\n logger.log(`Updated to last stable version ${formConfig.dependencies.engine}`);\n await writeJson(formJsonPath, formConfig, { spaces: 2 });\n } else {\n if (await isEngineVersionExists(engineVersion)) {\n formConfig.dependencies = { engine: engineVersion, generator: engineVersion };\n logger.log(`Updated to version ${formConfig.dependencies.engine}`);\n await writeJson(formJsonPath, formConfig, { spaces: 2 });\n } else {\n throw new Error(`Версии ${engineVersion} не существует.`);\n }\n }\n}\n\nasync function upgradeFormToCiBuildMode(\n resourcesDirectory: string,\n farmDirectory: string,\n gfv: string,\n formPath: string,\n logger: ILogger\n): Promise<void> {\n const formJsonPath = path.join(formPath, WellKnownDirectories.FormJsonFileName);\n if (!(await pathExists(formJsonPath))) {\n logger.warning(\"form.json does not exists. Upgrade skipped.\");\n return;\n }\n const generatedFormDirectory = path.join(formPath, \"form\");\n if (!isNewFormJsonFormat(formJsonPath)) {\n throw new Error(\n \"Файл form.json формы должен иметь новый формат зависимости. Обратитесь к расзработчикам за разъяснениями.\"\n );\n }\n const formConfig = await readFormConfig(formJsonPath, getLogger());\n if (formConfig.build !== \"ci\") {\n formConfig.build = \"ci\";\n await writeJson(formJsonPath, formConfig, { spaces: 2 });\n logger.log(\"Updated form.json\");\n }\n if (await pathExists(generatedFormDirectory)) {\n await remove(generatedFormDirectory);\n logger.log(\"Removed form directory\");\n }\n const formGitIgnorePath = path.join(formPath, \".gitignore\");\n if (await pathExists(formGitIgnorePath)) {\n const gitIgnoreContent = await readFile(formGitIgnorePath, \"utf8\");\n if (!gitIgnoreContent.split(\"\\n\").includes(\"form\")) {\n await writeFile(formGitIgnorePath, gitIgnoreContent.trimRight() + \"\\n\" + \"form\\n\");\n logger.log(\"Updated .gitignore\");\n }\n } else {\n await writeFile(formGitIgnorePath, \"form\\n\");\n logger.log(\"Created .gitignore\");\n }\n}\n\nasync function upgradeFormPrerelease(\n farmDirectory: string,\n gfv: string,\n formPath: string,\n preid: string,\n logger: ILogger\n): Promise<void> {\n const formJsonPath = path.join(formPath, WellKnownDirectories.FormJsonFileName);\n const formConfig = await readFormConfig(formJsonPath, logger);\n const prereleaseVersionFormJson = await getPrereleaseVersionFormJson(preid);\n\n if (prereleaseVersionFormJson != undefined) {\n formConfig.dependencies = { engine: prereleaseVersionFormJson, generator: prereleaseVersionFormJson };\n logger.log(`Updated to prerelease version ${formConfig.dependencies.engine}`);\n await writeJson(formJsonPath, formConfig, { spaces: 2 });\n } else {\n throw new Error(`Версии ${preid} не существует.`);\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"RunUpgradeForm.js","names":["path","_interopRequireWildcard","require","_fsExtra","_PublishedVersionUtils","_ResolveFormInfo","_FormGlobsUtils","_Version","_WellKnownDirectories","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","runUpgradeForm","context","options","farmDirectory","FormGlobs","ensureEachGlobResolvesIntoExistingForm","formGlobs","resolveSpecifiers","gfv","formPath","resolveGfvGlobs","logger","withPrefix","useCiBuild","log","upgradeFormToCiBuildMode","engine","undefined","upgradeFormEngine","skipPreVersions","preid","upgradeFormPrerelease","engineVersion","formJsonPath","join","WellKnownDirectories","FormJsonFileName","pathExists","warning","formConfig","readFormConfig","_formConfig$dependenc","_formConfig$dependenc2","dependencies","generator","_formConfig$dependenc3","_formConfig$dependenc4","engineVersionSpec","parseCandyVersionSpec","generatorVersionSpec","type","test","version","mode","getLastStableEngineVersion","getLastStableGeneratorVersion","writeJson","spaces","isEngineVersionExists","Error","generatedFormDirectory","isNewFormJsonFormat","build","remove","formGitIgnorePath","gitIgnoreContent","readFile","split","includes","writeFile","trimRight","prereleaseVersionFormJson","getPrereleaseVersionFormJson"],"sources":["../../../../../src/CLICommands/UpgradeForm/RunUpgradeForm.ts"],"sourcesContent":["import * as path from \"path\";\n\nimport { pathExists, readFile, remove, writeFile, writeJson } from \"fs-extra\";\n\nimport {\n getLastStableEngineVersion,\n getLastStableGeneratorVersion,\n getPrereleaseVersionFormJson,\n isEngineVersionExists,\n} from \"../../BuildTasks/PublishedVersionUtils\";\nimport { isNewFormJsonFormat, readFormConfig } from \"../../BuildTasks/ResolveFormInfo\";\nimport { ConsoleApplicationContext } from \"../../Commons/ConsoleApplication/ConsoleApplicationContext\";\nimport { FormGlobs } from \"../../Commons/FormGlobsUtils\";\nimport { ILogger } from \"../../Commons/Logging/ILogger\";\nimport { parseCandyVersionSpec } from \"../../BuildTasks/Version\";\nimport { WellKnownDirectories } from \"../../../../Common/WellKnownDirectories\";\n\nimport { UpgradeFormOptions } from \"./UpgradeFormOptions\";\n\nexport async function runUpgradeForm(\n context: ConsoleApplicationContext,\n options: UpgradeFormOptions,\n farmDirectory: string\n): Promise<void> {\n await FormGlobs.ensureEachGlobResolvesIntoExistingForm(options.formGlobs, farmDirectory);\n const formGlobs = await FormGlobs.resolveSpecifiers(options.formGlobs, farmDirectory);\n for (const { gfv, formPath } of await FormGlobs.resolveGfvGlobs(formGlobs, farmDirectory)) {\n const logger = context.logger.withPrefix(`FORM:${gfv}`);\n if (options.useCiBuild) {\n logger.log(\"Begin upgrading build mode\");\n await upgradeFormToCiBuildMode(formPath, logger);\n logger.log(\"Finish upgrading build mode\");\n }\n if (options.engine != undefined) {\n logger.log(\"Begin upgrading engine version\");\n await upgradeFormEngine(formPath, options.engine, options.skipPreVersions, logger);\n logger.log(\"Finish upgrading engine version\");\n }\n if (options.preid != undefined) {\n logger.log(\"Begin upgrading engine version\");\n await upgradeFormPrerelease(formPath, options.preid, logger);\n logger.log(\"Finish upgrading engine version\");\n }\n }\n}\n\nasync function upgradeFormEngine(\n formPath: string,\n engineVersion: string,\n skipPreVersions: boolean,\n logger: ILogger\n): Promise<void> {\n const formJsonPath = path.join(formPath, WellKnownDirectories.FormJsonFileName);\n if (!(await pathExists(formJsonPath))) {\n logger.warning(\"Form does not have form.json: Upgrade skipped\");\n return;\n }\n const formConfig = await readFormConfig(formJsonPath);\n if (skipPreVersions) {\n if (formConfig.dependencies?.engine != undefined && formConfig.dependencies?.generator != undefined) {\n const engineVersionSpec = parseCandyVersionSpec(formConfig.dependencies?.engine);\n const generatorVersionSpec = parseCandyVersionSpec(formConfig.dependencies?.generator);\n if (\n engineVersionSpec.type === \"pre\" ||\n generatorVersionSpec.type === \"pre\" ||\n (engineVersionSpec.type === \"version\" && /[a-zA-Z]/.test(engineVersionSpec.version)) ||\n (generatorVersionSpec.type === \"version\" && /[a-zA-Z]/.test(generatorVersionSpec.version))\n ) {\n logger.log(\n \"Form version has prerelease version: Upgrade skipped due to flag skipPreVersions (--skip-pre-versions) specified\"\n );\n return;\n }\n }\n }\n if (formConfig.mode === \"no-editor\") {\n logger.log(\"Form does not have editor: Upgrade skipped\");\n return;\n }\n if (formConfig.mode === \"copy-legacy-prebuilt-resources\") {\n logger.log(\"Form does not have editor: Upgrade skipped\");\n return;\n }\n if (engineVersion === \"latest\") {\n formConfig.dependencies = {\n engine: await getLastStableEngineVersion(),\n generator: await getLastStableGeneratorVersion(),\n };\n logger.log(`Updated to last stable version ${formConfig.dependencies.engine}`);\n await writeJson(formJsonPath, formConfig, { spaces: 2 });\n } else {\n if (await isEngineVersionExists(engineVersion)) {\n formConfig.dependencies = { engine: engineVersion, generator: engineVersion };\n logger.log(`Updated to version ${formConfig.dependencies.engine}`);\n await writeJson(formJsonPath, formConfig, { spaces: 2 });\n } else {\n throw new Error(`Версии ${engineVersion} не существует.`);\n }\n }\n}\n\nasync function upgradeFormToCiBuildMode(formPath: string, logger: ILogger): Promise<void> {\n const formJsonPath = path.join(formPath, WellKnownDirectories.FormJsonFileName);\n if (!(await pathExists(formJsonPath))) {\n logger.warning(\"form.json does not exists. Upgrade skipped.\");\n return;\n }\n const generatedFormDirectory = path.join(formPath, \"form\");\n if (!(await isNewFormJsonFormat(formJsonPath))) {\n throw new Error(\n \"Файл form.json формы должен иметь новый формат зависимости. Обратитесь к разработчикам за разъяснениями.\"\n );\n }\n const formConfig = await readFormConfig(formJsonPath);\n if (formConfig.build !== \"ci\") {\n formConfig.build = \"ci\";\n await writeJson(formJsonPath, formConfig, { spaces: 2 });\n logger.log(\"Updated form.json\");\n }\n if (await pathExists(generatedFormDirectory)) {\n await remove(generatedFormDirectory);\n logger.log(\"Removed form directory\");\n }\n const formGitIgnorePath = path.join(formPath, \".gitignore\");\n if (await pathExists(formGitIgnorePath)) {\n const gitIgnoreContent = await readFile(formGitIgnorePath, \"utf8\");\n if (!gitIgnoreContent.split(\"\\n\").includes(\"form\")) {\n await writeFile(formGitIgnorePath, gitIgnoreContent.trimRight() + \"\\n\" + \"form\\n\");\n logger.log(\"Updated .gitignore\");\n }\n } else {\n await writeFile(formGitIgnorePath, \"form\\n\");\n logger.log(\"Created .gitignore\");\n }\n}\n\nasync function upgradeFormPrerelease(formPath: string, preid: string, logger: ILogger): Promise<void> {\n const formJsonPath = path.join(formPath, WellKnownDirectories.FormJsonFileName);\n const formConfig = await readFormConfig(formJsonPath);\n const prereleaseVersionFormJson = await getPrereleaseVersionFormJson(preid);\n\n if (prereleaseVersionFormJson != undefined) {\n formConfig.dependencies = { engine: prereleaseVersionFormJson, generator: prereleaseVersionFormJson };\n logger.log(`Updated to prerelease version ${formConfig.dependencies.engine}`);\n await writeJson(formJsonPath, formConfig, { spaces: 2 });\n } else {\n throw new Error(`Версии ${preid} не существует.`);\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -132,10 +132,10 @@ const validateAndPrepareFarmDirectoriesPath = async (allFarmDirectories, current
132
132
  await (0, _RunFormStats.runFormStats)(context, parsedArgs.options, farmDirectory);
133
133
  }
134
134
  if (parsedArgs.type === "upgrade") {
135
- await (0, _RunUpgradeForm.runUpgradeForm)(context, parsedArgs.options, resourcesDirectory, farmDirectory);
135
+ await (0, _RunUpgradeForm.runUpgradeForm)(context, parsedArgs.options, farmDirectory);
136
136
  }
137
137
  if (parsedArgs.type === "rename") {
138
- await (0, _RunRenameFiles.runRenameFiles)(context, parsedArgs.options, resourcesDirectory, farmDirectory);
138
+ await (0, _RunRenameFiles.runRenameFiles)(context, parsedArgs.options, farmDirectory);
139
139
  }
140
140
  if (parsedArgs.type === "localize") {
141
141
  await (0, _RunLocalization.runLocalization)(context, parsedArgs.options, farmDirectory, engineDirectory, candyModulesDirectory, farmConfig.hlFarmDirectoryPath);
@@ -1 +1 @@
1
- {"version":3,"file":"CandyCLI.js","names":["require","_path","_interopRequireDefault","_fsExtra","_shelljs","_RunBuildForms","_RunBuildServer","_RunDevBuild","_RunFormStats","_RunInitForm","_RunLocalization","_RunUpgradeForm","_ConsoleApplication","_StaticLogger","_CandyToolOptions","_ReadFarmConfig","_SelfUpdate","_RunRenameFiles","_ClearSourceMapForProduction","config","fatal","remoteInspectFlagToDisableDebuggerInChildProcess","debugArgIdx","process","execArgv","indexOf","splice","debugArg2Idx","removeTemporaryWebpackConfigFiles","farmDirectory","logger","files","readdir","oldTempFileNames","filter","x","endsWith","length","log","fileName","unlink","path","join","validateFarmConfig","farmConfig","readFarmConfig","engineDirectory","undefined","Error","resourcesDirectory","candyModulesDirectory","resolve","validateAndPrepareFarmDirectoriesPath","allFarmDirectories","currentDir","context","result","pth","pathExists","push","pathToFarm","runConsoleApplication","argv","getCurrentVersion","parsedArgs","parseOptions","setConsoleLoggingVerbosity","options","logVerbosity","setLogger","verbose","type","runInitForm","cwd","allFarmsDir","warning","allFarmConfig","Array","isArray","runDevBuildServer","runBuildServer","runBuildForms","hlFarmDirectoryPath","mode","clearSourceMapForProduction","runDevBuild","runFormStats","runUpgradeForm","runRenameFiles","runLocalization"],"sources":["../../../src/CandyCLI.ts"],"sourcesContent":["import \"core-js/features/array/flat\";\nimport \"core-js/proposals/iterator-helpers\";\nimport \"core-js/stable\";\nimport path from \"path\";\n\nimport { pathExists, readdir, unlink } from \"fs-extra\";\nimport \"reflect-metadata\";\nimport \"regenerator-runtime/runtime\";\nimport { config } from \"shelljs\";\n\nimport { runBuildForms } from \"./CLICommands/BuildForms/RunBuildForms\";\nimport { runBuildServer, runDevBuildServer } from \"./CLICommands/BuildServer/RunBuildServer\";\nimport { runDevBuild } from \"./CLICommands/DevBuild/RunDevBuild\";\nimport { runFormStats } from \"./CLICommands/FormStats/RunFormStats\";\nimport { runInitForm } from \"./CLICommands/InitForm/RunInitForm\";\nimport { runLocalization } from \"./CLICommands/Localization/RunLocalization\";\nimport { runUpgradeForm } from \"./CLICommands/UpgradeForm/RunUpgradeForm\";\nimport { runConsoleApplication } from \"./Commons/ConsoleApplication/ConsoleApplication\";\nimport { ILogger } from \"./Commons/Logging/ILogger\";\nimport { setLogger } from \"./Commons/Logging/StaticLogger\";\nimport { parseOptions } from \"./Options/CandyToolOptions\";\nimport { readFarmConfig } from \"./ReadFarmConfig\";\nimport { getCurrentVersion } from \"./SelfUpdate\";\nimport { ConsoleApplicationContext } from \"./Commons/ConsoleApplication/ConsoleApplicationContext\";\nimport { runRenameFiles } from \"./CLICommands/RenameFiles/RunRenameFiles\";\nimport { clearSourceMapForProduction } from \"./CLICommands/BuildForms/ClearSourceMapForProduction\";\n\nconfig.fatal = true;\n\nexport interface FarmConfig {\n candyModulesDirectory: string;\n farmDirectory: string;\n engineDirectory?: string | undefined;\n resourcesDirectory?: string | undefined;\n hlFarmDirectoryPath: string;\n}\n\nfunction remoteInspectFlagToDisableDebuggerInChildProcess(): void {\n const debugArgIdx = process.execArgv.indexOf(\"--inspect-brk\");\n if (debugArgIdx !== -1) {\n process.execArgv.splice(debugArgIdx, 1);\n }\n const debugArg2Idx = process.execArgv.indexOf(\"--inspect\");\n if (debugArg2Idx !== -1) {\n process.execArgv.splice(debugArg2Idx, 1);\n }\n}\n\nasync function removeTemporaryWebpackConfigFiles(farmDirectory: string, logger: ILogger): Promise<void> {\n const files = await readdir(farmDirectory);\n const oldTempFileNames = files.filter(x => x.endsWith(\".candy-tmp.webpack.config.js\"));\n if (oldTempFileNames.length > 0) {\n logger.log(\"Removing old webpack.config.js files\");\n for (const fileName of oldTempFileNames) {\n await unlink(path.join(farmDirectory, fileName));\n }\n logger.log(\"Removed old webpack.config.js files\");\n }\n}\n\nfunction validateFarmConfig(farmDirectory: string): FarmConfig {\n const farmConfig = readFarmConfig(farmDirectory);\n\n if (farmConfig.engineDirectory == undefined) {\n throw new Error(\"EngineDirectory is not specified\");\n }\n if (farmConfig.resourcesDirectory == undefined) {\n throw new Error(\"ResourcesDirectory is not specified\");\n }\n\n const candyModulesDirectory = path.resolve(farmDirectory, \"..\", \".candy_modules\");\n return {\n ...farmConfig,\n farmDirectory: farmDirectory,\n candyModulesDirectory: candyModulesDirectory,\n };\n}\n\nconst validateAndPrepareFarmDirectoriesPath = async (\n allFarmDirectories: string[],\n currentDir: string,\n context: ConsoleApplicationContext\n): Promise<FarmConfig[]> => {\n const result: FarmConfig[] = [];\n for (const pth of allFarmDirectories) {\n if (await pathExists(path.join(pth, \"config.js\"))) {\n await removeTemporaryWebpackConfigFiles(pth, context.logger);\n result.push(validateFarmConfig(pth));\n } else {\n // Все дело в том, что связка service-runner-2 + tools корректно работает только в папке с формой\n // из за чего, внутри раннера напилен хитрый механизм поиска путей формы. Перепиливать все механики\n // совсем не хочется, поэтому для нас, считаю поднятие до уровня engine вполне приемлемым решением\n const pathToFarm = path.join(currentDir, \"..\", \"..\", \"..\", pth);\n if (!(await pathExists(pathToFarm))) {\n throw Error(`allFarmDirectories path = ${pathToFarm} not exist`);\n }\n await removeTemporaryWebpackConfigFiles(pathToFarm, context.logger);\n result.push(validateFarmConfig(pathToFarm));\n }\n }\n return result;\n};\n\nrunConsoleApplication(async (argv, context) => {\n remoteInspectFlagToDisableDebuggerInChildProcess();\n\n context.logger.log(\"@kontur.candy/tools: \" + (await getCurrentVersion()));\n const parsedArgs = parseOptions(argv);\n\n context.setConsoleLoggingVerbosity(parsedArgs.options.logVerbosity);\n setLogger(context.logger);\n context.logger.verbose(`Verbose level: ${parsedArgs.options.logVerbosity}`);\n\n if (parsedArgs.type === \"init-form\") {\n await runInitForm(context, parsedArgs.options);\n return;\n }\n\n const farmDirectory = process.cwd();\n await removeTemporaryWebpackConfigFiles(farmDirectory, context.logger);\n const farmConfig = readFarmConfig(farmDirectory);\n\n if (farmConfig.engineDirectory == undefined) {\n throw new Error(\"EngineDirectory is not specified\");\n }\n if (farmConfig.resourcesDirectory == undefined) {\n throw new Error(\"ResourcesDirectory is not specified\");\n }\n\n const engineDirectory = path.resolve(farmConfig.engineDirectory);\n const resourcesDirectory = path.resolve(farmConfig.resourcesDirectory);\n const candyModulesDirectory = path.resolve(farmDirectory, \"..\", \".candy_modules\");\n\n if (parsedArgs.type === \"build-server\" || parsedArgs.type === \"dev-build-server\") {\n const allFarmDirectories = parsedArgs.options.allFarmsDir;\n context.logger.warning(`allFarmDirectories = ${parsedArgs.options.allFarmsDir}`);\n let allFarmConfig;\n if (Array.isArray(allFarmDirectories) && allFarmDirectories.length > 0) {\n allFarmConfig = await validateAndPrepareFarmDirectoriesPath(allFarmDirectories, farmDirectory, context);\n } else {\n context.logger.warning(`Use default candyFarm path dir = ${farmDirectory}`);\n allFarmConfig = await validateAndPrepareFarmDirectoriesPath([farmDirectory], farmDirectory, context);\n }\n\n if (parsedArgs.type === \"dev-build-server\") {\n await runDevBuildServer(context, parsedArgs.options, allFarmConfig);\n } else {\n await runBuildServer(context, parsedArgs.options, allFarmConfig);\n }\n }\n\n if (parsedArgs.type === \"build\") {\n await runBuildForms(\n context,\n parsedArgs.options,\n farmDirectory,\n resourcesDirectory,\n engineDirectory,\n candyModulesDirectory,\n farmConfig.hlFarmDirectoryPath\n );\n if (parsedArgs.options.mode === \"production\") {\n await clearSourceMapForProduction(resourcesDirectory);\n }\n }\n\n if (parsedArgs.type === \"dev-build\") {\n await runDevBuild(\n context,\n parsedArgs.options,\n engineDirectory,\n resourcesDirectory,\n farmDirectory,\n candyModulesDirectory,\n farmConfig.hlFarmDirectoryPath\n );\n }\n\n if (parsedArgs.type === \"form-stats\") {\n await runFormStats(context, parsedArgs.options, farmDirectory);\n }\n if (parsedArgs.type === \"upgrade\") {\n await runUpgradeForm(context, parsedArgs.options, resourcesDirectory, farmDirectory);\n }\n if (parsedArgs.type === \"rename\") {\n await runRenameFiles(context, parsedArgs.options, resourcesDirectory, farmDirectory);\n }\n if (parsedArgs.type === \"localize\") {\n await runLocalization(\n context,\n parsedArgs.options,\n farmDirectory,\n engineDirectory,\n candyModulesDirectory,\n farmConfig.hlFarmDirectoryPath\n );\n }\n});\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"CandyCLI.js","names":["require","_path","_interopRequireDefault","_fsExtra","_shelljs","_RunBuildForms","_RunBuildServer","_RunDevBuild","_RunFormStats","_RunInitForm","_RunLocalization","_RunUpgradeForm","_ConsoleApplication","_StaticLogger","_CandyToolOptions","_ReadFarmConfig","_SelfUpdate","_RunRenameFiles","_ClearSourceMapForProduction","config","fatal","remoteInspectFlagToDisableDebuggerInChildProcess","debugArgIdx","process","execArgv","indexOf","splice","debugArg2Idx","removeTemporaryWebpackConfigFiles","farmDirectory","logger","files","readdir","oldTempFileNames","filter","x","endsWith","length","log","fileName","unlink","path","join","validateFarmConfig","farmConfig","readFarmConfig","engineDirectory","undefined","Error","resourcesDirectory","candyModulesDirectory","resolve","validateAndPrepareFarmDirectoriesPath","allFarmDirectories","currentDir","context","result","pth","pathExists","push","pathToFarm","runConsoleApplication","argv","getCurrentVersion","parsedArgs","parseOptions","setConsoleLoggingVerbosity","options","logVerbosity","setLogger","verbose","type","runInitForm","cwd","allFarmsDir","warning","allFarmConfig","Array","isArray","runDevBuildServer","runBuildServer","runBuildForms","hlFarmDirectoryPath","mode","clearSourceMapForProduction","runDevBuild","runFormStats","runUpgradeForm","runRenameFiles","runLocalization"],"sources":["../../../src/CandyCLI.ts"],"sourcesContent":["import \"core-js/features/array/flat\";\nimport \"core-js/proposals/iterator-helpers\";\nimport \"core-js/stable\";\nimport path from \"path\";\n\nimport { pathExists, readdir, unlink } from \"fs-extra\";\nimport \"reflect-metadata\";\nimport \"regenerator-runtime/runtime\";\nimport { config } from \"shelljs\";\n\nimport { runBuildForms } from \"./CLICommands/BuildForms/RunBuildForms\";\nimport { runBuildServer, runDevBuildServer } from \"./CLICommands/BuildServer/RunBuildServer\";\nimport { runDevBuild } from \"./CLICommands/DevBuild/RunDevBuild\";\nimport { runFormStats } from \"./CLICommands/FormStats/RunFormStats\";\nimport { runInitForm } from \"./CLICommands/InitForm/RunInitForm\";\nimport { runLocalization } from \"./CLICommands/Localization/RunLocalization\";\nimport { runUpgradeForm } from \"./CLICommands/UpgradeForm/RunUpgradeForm\";\nimport { runConsoleApplication } from \"./Commons/ConsoleApplication/ConsoleApplication\";\nimport { ILogger } from \"./Commons/Logging/ILogger\";\nimport { setLogger } from \"./Commons/Logging/StaticLogger\";\nimport { parseOptions } from \"./Options/CandyToolOptions\";\nimport { readFarmConfig } from \"./ReadFarmConfig\";\nimport { getCurrentVersion } from \"./SelfUpdate\";\nimport { ConsoleApplicationContext } from \"./Commons/ConsoleApplication/ConsoleApplicationContext\";\nimport { runRenameFiles } from \"./CLICommands/RenameFiles/RunRenameFiles\";\nimport { clearSourceMapForProduction } from \"./CLICommands/BuildForms/ClearSourceMapForProduction\";\n\nconfig.fatal = true;\n\nexport interface FarmConfig {\n candyModulesDirectory: string;\n farmDirectory: string;\n engineDirectory?: string | undefined;\n resourcesDirectory?: string | undefined;\n hlFarmDirectoryPath: string;\n}\n\nfunction remoteInspectFlagToDisableDebuggerInChildProcess(): void {\n const debugArgIdx = process.execArgv.indexOf(\"--inspect-brk\");\n if (debugArgIdx !== -1) {\n process.execArgv.splice(debugArgIdx, 1);\n }\n const debugArg2Idx = process.execArgv.indexOf(\"--inspect\");\n if (debugArg2Idx !== -1) {\n process.execArgv.splice(debugArg2Idx, 1);\n }\n}\n\nasync function removeTemporaryWebpackConfigFiles(farmDirectory: string, logger: ILogger): Promise<void> {\n const files = await readdir(farmDirectory);\n const oldTempFileNames = files.filter(x => x.endsWith(\".candy-tmp.webpack.config.js\"));\n if (oldTempFileNames.length > 0) {\n logger.log(\"Removing old webpack.config.js files\");\n for (const fileName of oldTempFileNames) {\n await unlink(path.join(farmDirectory, fileName));\n }\n logger.log(\"Removed old webpack.config.js files\");\n }\n}\n\nfunction validateFarmConfig(farmDirectory: string): FarmConfig {\n const farmConfig = readFarmConfig(farmDirectory);\n\n if (farmConfig.engineDirectory == undefined) {\n throw new Error(\"EngineDirectory is not specified\");\n }\n if (farmConfig.resourcesDirectory == undefined) {\n throw new Error(\"ResourcesDirectory is not specified\");\n }\n\n const candyModulesDirectory = path.resolve(farmDirectory, \"..\", \".candy_modules\");\n return {\n ...farmConfig,\n farmDirectory: farmDirectory,\n candyModulesDirectory: candyModulesDirectory,\n };\n}\n\nconst validateAndPrepareFarmDirectoriesPath = async (\n allFarmDirectories: string[],\n currentDir: string,\n context: ConsoleApplicationContext\n): Promise<FarmConfig[]> => {\n const result: FarmConfig[] = [];\n for (const pth of allFarmDirectories) {\n if (await pathExists(path.join(pth, \"config.js\"))) {\n await removeTemporaryWebpackConfigFiles(pth, context.logger);\n result.push(validateFarmConfig(pth));\n } else {\n // Все дело в том, что связка service-runner-2 + tools корректно работает только в папке с формой\n // из за чего, внутри раннера напилен хитрый механизм поиска путей формы. Перепиливать все механики\n // совсем не хочется, поэтому для нас, считаю поднятие до уровня engine вполне приемлемым решением\n const pathToFarm = path.join(currentDir, \"..\", \"..\", \"..\", pth);\n if (!(await pathExists(pathToFarm))) {\n throw Error(`allFarmDirectories path = ${pathToFarm} not exist`);\n }\n await removeTemporaryWebpackConfigFiles(pathToFarm, context.logger);\n result.push(validateFarmConfig(pathToFarm));\n }\n }\n return result;\n};\n\nrunConsoleApplication(async (argv, context) => {\n remoteInspectFlagToDisableDebuggerInChildProcess();\n\n context.logger.log(\"@kontur.candy/tools: \" + (await getCurrentVersion()));\n const parsedArgs = parseOptions(argv);\n\n context.setConsoleLoggingVerbosity(parsedArgs.options.logVerbosity);\n setLogger(context.logger);\n context.logger.verbose(`Verbose level: ${parsedArgs.options.logVerbosity}`);\n\n if (parsedArgs.type === \"init-form\") {\n await runInitForm(context, parsedArgs.options);\n return;\n }\n\n const farmDirectory = process.cwd();\n await removeTemporaryWebpackConfigFiles(farmDirectory, context.logger);\n const farmConfig = readFarmConfig(farmDirectory);\n\n if (farmConfig.engineDirectory == undefined) {\n throw new Error(\"EngineDirectory is not specified\");\n }\n if (farmConfig.resourcesDirectory == undefined) {\n throw new Error(\"ResourcesDirectory is not specified\");\n }\n\n const engineDirectory = path.resolve(farmConfig.engineDirectory);\n const resourcesDirectory = path.resolve(farmConfig.resourcesDirectory);\n const candyModulesDirectory = path.resolve(farmDirectory, \"..\", \".candy_modules\");\n\n if (parsedArgs.type === \"build-server\" || parsedArgs.type === \"dev-build-server\") {\n const allFarmDirectories = parsedArgs.options.allFarmsDir;\n context.logger.warning(`allFarmDirectories = ${parsedArgs.options.allFarmsDir}`);\n let allFarmConfig;\n if (Array.isArray(allFarmDirectories) && allFarmDirectories.length > 0) {\n allFarmConfig = await validateAndPrepareFarmDirectoriesPath(allFarmDirectories, farmDirectory, context);\n } else {\n context.logger.warning(`Use default candyFarm path dir = ${farmDirectory}`);\n allFarmConfig = await validateAndPrepareFarmDirectoriesPath([farmDirectory], farmDirectory, context);\n }\n\n if (parsedArgs.type === \"dev-build-server\") {\n await runDevBuildServer(context, parsedArgs.options, allFarmConfig);\n } else {\n await runBuildServer(context, parsedArgs.options, allFarmConfig);\n }\n }\n\n if (parsedArgs.type === \"build\") {\n await runBuildForms(\n context,\n parsedArgs.options,\n farmDirectory,\n resourcesDirectory,\n engineDirectory,\n candyModulesDirectory,\n farmConfig.hlFarmDirectoryPath\n );\n if (parsedArgs.options.mode === \"production\") {\n await clearSourceMapForProduction(resourcesDirectory);\n }\n }\n\n if (parsedArgs.type === \"dev-build\") {\n await runDevBuild(\n context,\n parsedArgs.options,\n engineDirectory,\n resourcesDirectory,\n farmDirectory,\n candyModulesDirectory,\n farmConfig.hlFarmDirectoryPath\n );\n }\n\n if (parsedArgs.type === \"form-stats\") {\n await runFormStats(context, parsedArgs.options, farmDirectory);\n }\n if (parsedArgs.type === \"upgrade\") {\n await runUpgradeForm(context, parsedArgs.options, farmDirectory);\n }\n if (parsedArgs.type === \"rename\") {\n await runRenameFiles(context, parsedArgs.options, farmDirectory);\n }\n if (parsedArgs.type === \"localize\") {\n await runLocalization(\n context,\n parsedArgs.options,\n farmDirectory,\n engineDirectory,\n candyModulesDirectory,\n farmConfig.hlFarmDirectoryPath\n );\n }\n});\n"],"mappings":";;;AAAAA,OAAA;AACAA,OAAA;AACAA,OAAA;AACA,IAAAC,KAAA,GAAAC,sBAAA,CAAAF,OAAA;AAEA,IAAAG,QAAA,GAAAH,OAAA;AACAA,OAAA;AACAA,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AAEA,IAAAK,cAAA,GAAAL,OAAA;AACA,IAAAM,eAAA,GAAAN,OAAA;AACA,IAAAO,YAAA,GAAAP,OAAA;AACA,IAAAQ,aAAA,GAAAR,OAAA;AACA,IAAAS,YAAA,GAAAT,OAAA;AACA,IAAAU,gBAAA,GAAAV,OAAA;AACA,IAAAW,eAAA,GAAAX,OAAA;AACA,IAAAY,mBAAA,GAAAZ,OAAA;AAEA,IAAAa,aAAA,GAAAb,OAAA;AACA,IAAAc,iBAAA,GAAAd,OAAA;AACA,IAAAe,eAAA,GAAAf,OAAA;AACA,IAAAgB,WAAA,GAAAhB,OAAA;AAEA,IAAAiB,eAAA,GAAAjB,OAAA;AACA,IAAAkB,4BAAA,GAAAlB,OAAA;AAEAmB,eAAM,CAACC,KAAK,GAAG,IAAI;AAUnB,SAASC,gDAAgDA,CAAA,EAAS;EAC9D,MAAMC,WAAW,GAAGC,OAAO,CAACC,QAAQ,CAACC,OAAO,CAAC,eAAe,CAAC;EAC7D,IAAIH,WAAW,KAAK,CAAC,CAAC,EAAE;IACpBC,OAAO,CAACC,QAAQ,CAACE,MAAM,CAACJ,WAAW,EAAE,CAAC,CAAC;EAC3C;EACA,MAAMK,YAAY,GAAGJ,OAAO,CAACC,QAAQ,CAACC,OAAO,CAAC,WAAW,CAAC;EAC1D,IAAIE,YAAY,KAAK,CAAC,CAAC,EAAE;IACrBJ,OAAO,CAACC,QAAQ,CAACE,MAAM,CAACC,YAAY,EAAE,CAAC,CAAC;EAC5C;AACJ;AAEA,eAAeC,iCAAiCA,CAACC,aAAqB,EAAEC,MAAe,EAAiB;EACpG,MAAMC,KAAK,GAAG,MAAM,IAAAC,gBAAO,EAACH,aAAa,CAAC;EAC1C,MAAMI,gBAAgB,GAAGF,KAAK,CAACG,MAAM,CAACC,CAAC,IAAIA,CAAC,CAACC,QAAQ,CAAC,8BAA8B,CAAC,CAAC;EACtF,IAAIH,gBAAgB,CAACI,MAAM,GAAG,CAAC,EAAE;IAC7BP,MAAM,CAACQ,GAAG,CAAC,sCAAsC,CAAC;IAClD,KAAK,MAAMC,QAAQ,IAAIN,gBAAgB,EAAE;MACrC,MAAM,IAAAO,eAAM,EAACC,aAAI,CAACC,IAAI,CAACb,aAAa,EAAEU,QAAQ,CAAC,CAAC;IACpD;IACAT,MAAM,CAACQ,GAAG,CAAC,qCAAqC,CAAC;EACrD;AACJ;AAEA,SAASK,kBAAkBA,CAACd,aAAqB,EAAc;EAC3D,MAAMe,UAAU,GAAG,IAAAC,8BAAc,EAAChB,aAAa,CAAC;EAEhD,IAAIe,UAAU,CAACE,eAAe,IAAIC,SAAS,EAAE;IACzC,MAAM,IAAIC,KAAK,CAAC,kCAAkC,CAAC;EACvD;EACA,IAAIJ,UAAU,CAACK,kBAAkB,IAAIF,SAAS,EAAE;IAC5C,MAAM,IAAIC,KAAK,CAAC,qCAAqC,CAAC;EAC1D;EAEA,MAAME,qBAAqB,GAAGT,aAAI,CAACU,OAAO,CAACtB,aAAa,EAAE,IAAI,EAAE,gBAAgB,CAAC;EACjF,OAAO;IACH,GAAGe,UAAU;IACbf,aAAa,EAAEA,aAAa;IAC5BqB,qBAAqB,EAAEA;EAC3B,CAAC;AACL;AAEA,MAAME,qCAAqC,GAAG,MAAAA,CAC1CC,kBAA4B,EAC5BC,UAAkB,EAClBC,OAAkC,KACV;EACxB,MAAMC,MAAoB,GAAG,EAAE;EAC/B,KAAK,MAAMC,GAAG,IAAIJ,kBAAkB,EAAE;IAClC,IAAI,MAAM,IAAAK,mBAAU,EAACjB,aAAI,CAACC,IAAI,CAACe,GAAG,EAAE,WAAW,CAAC,CAAC,EAAE;MAC/C,MAAM7B,iCAAiC,CAAC6B,GAAG,EAAEF,OAAO,CAACzB,MAAM,CAAC;MAC5D0B,MAAM,CAACG,IAAI,CAAChB,kBAAkB,CAACc,GAAG,CAAC,CAAC;IACxC,CAAC,MAAM;MACH;MACA;MACA;MACA,MAAMG,UAAU,GAAGnB,aAAI,CAACC,IAAI,CAACY,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAEG,GAAG,CAAC;MAC/D,IAAI,EAAE,MAAM,IAAAC,mBAAU,EAACE,UAAU,CAAC,CAAC,EAAE;QACjC,MAAMZ,KAAK,CAAC,6BAA6BY,UAAU,YAAY,CAAC;MACpE;MACA,MAAMhC,iCAAiC,CAACgC,UAAU,EAAEL,OAAO,CAACzB,MAAM,CAAC;MACnE0B,MAAM,CAACG,IAAI,CAAChB,kBAAkB,CAACiB,UAAU,CAAC,CAAC;IAC/C;EACJ;EACA,OAAOJ,MAAM;AACjB,CAAC;AAED,IAAAK,yCAAqB,EAAC,OAAOC,IAAI,EAAEP,OAAO,KAAK;EAC3ClC,gDAAgD,CAAC,CAAC;EAElDkC,OAAO,CAACzB,MAAM,CAACQ,GAAG,CAAC,uBAAuB,IAAI,MAAM,IAAAyB,6BAAiB,EAAC,CAAC,CAAC,CAAC;EACzE,MAAMC,UAAU,GAAG,IAAAC,8BAAY,EAACH,IAAI,CAAC;EAErCP,OAAO,CAACW,0BAA0B,CAACF,UAAU,CAACG,OAAO,CAACC,YAAY,CAAC;EACnE,IAAAC,uBAAS,EAACd,OAAO,CAACzB,MAAM,CAAC;EACzByB,OAAO,CAACzB,MAAM,CAACwC,OAAO,CAAC,kBAAkBN,UAAU,CAACG,OAAO,CAACC,YAAY,EAAE,CAAC;EAE3E,IAAIJ,UAAU,CAACO,IAAI,KAAK,WAAW,EAAE;IACjC,MAAM,IAAAC,wBAAW,EAACjB,OAAO,EAAES,UAAU,CAACG,OAAO,CAAC;IAC9C;EACJ;EAEA,MAAMtC,aAAa,GAAGN,OAAO,CAACkD,GAAG,CAAC,CAAC;EACnC,MAAM7C,iCAAiC,CAACC,aAAa,EAAE0B,OAAO,CAACzB,MAAM,CAAC;EACtE,MAAMc,UAAU,GAAG,IAAAC,8BAAc,EAAChB,aAAa,CAAC;EAEhD,IAAIe,UAAU,CAACE,eAAe,IAAIC,SAAS,EAAE;IACzC,MAAM,IAAIC,KAAK,CAAC,kCAAkC,CAAC;EACvD;EACA,IAAIJ,UAAU,CAACK,kBAAkB,IAAIF,SAAS,EAAE;IAC5C,MAAM,IAAIC,KAAK,CAAC,qCAAqC,CAAC;EAC1D;EAEA,MAAMF,eAAe,GAAGL,aAAI,CAACU,OAAO,CAACP,UAAU,CAACE,eAAe,CAAC;EAChE,MAAMG,kBAAkB,GAAGR,aAAI,CAACU,OAAO,CAACP,UAAU,CAACK,kBAAkB,CAAC;EACtE,MAAMC,qBAAqB,GAAGT,aAAI,CAACU,OAAO,CAACtB,aAAa,EAAE,IAAI,EAAE,gBAAgB,CAAC;EAEjF,IAAImC,UAAU,CAACO,IAAI,KAAK,cAAc,IAAIP,UAAU,CAACO,IAAI,KAAK,kBAAkB,EAAE;IAC9E,MAAMlB,kBAAkB,GAAGW,UAAU,CAACG,OAAO,CAACO,WAAW;IACzDnB,OAAO,CAACzB,MAAM,CAAC6C,OAAO,CAAC,wBAAwBX,UAAU,CAACG,OAAO,CAACO,WAAW,EAAE,CAAC;IAChF,IAAIE,aAAa;IACjB,IAAIC,KAAK,CAACC,OAAO,CAACzB,kBAAkB,CAAC,IAAIA,kBAAkB,CAAChB,MAAM,GAAG,CAAC,EAAE;MACpEuC,aAAa,GAAG,MAAMxB,qCAAqC,CAACC,kBAAkB,EAAExB,aAAa,EAAE0B,OAAO,CAAC;IAC3G,CAAC,MAAM;MACHA,OAAO,CAACzB,MAAM,CAAC6C,OAAO,CAAC,oCAAoC9C,aAAa,EAAE,CAAC;MAC3E+C,aAAa,GAAG,MAAMxB,qCAAqC,CAAC,CAACvB,aAAa,CAAC,EAAEA,aAAa,EAAE0B,OAAO,CAAC;IACxG;IAEA,IAAIS,UAAU,CAACO,IAAI,KAAK,kBAAkB,EAAE;MACxC,MAAM,IAAAQ,iCAAiB,EAACxB,OAAO,EAAES,UAAU,CAACG,OAAO,EAAES,aAAa,CAAC;IACvE,CAAC,MAAM;MACH,MAAM,IAAAI,8BAAc,EAACzB,OAAO,EAAES,UAAU,CAACG,OAAO,EAAES,aAAa,CAAC;IACpE;EACJ;EAEA,IAAIZ,UAAU,CAACO,IAAI,KAAK,OAAO,EAAE;IAC7B,MAAM,IAAAU,4BAAa,EACf1B,OAAO,EACPS,UAAU,CAACG,OAAO,EAClBtC,aAAa,EACboB,kBAAkB,EAClBH,eAAe,EACfI,qBAAqB,EACrBN,UAAU,CAACsC,mBACf,CAAC;IACD,IAAIlB,UAAU,CAACG,OAAO,CAACgB,IAAI,KAAK,YAAY,EAAE;MAC1C,MAAM,IAAAC,wDAA2B,EAACnC,kBAAkB,CAAC;IACzD;EACJ;EAEA,IAAIe,UAAU,CAACO,IAAI,KAAK,WAAW,EAAE;IACjC,MAAM,IAAAc,wBAAW,EACb9B,OAAO,EACPS,UAAU,CAACG,OAAO,EAClBrB,eAAe,EACfG,kBAAkB,EAClBpB,aAAa,EACbqB,qBAAqB,EACrBN,UAAU,CAACsC,mBACf,CAAC;EACL;EAEA,IAAIlB,UAAU,CAACO,IAAI,KAAK,YAAY,EAAE;IAClC,MAAM,IAAAe,0BAAY,EAAC/B,OAAO,EAAES,UAAU,CAACG,OAAO,EAAEtC,aAAa,CAAC;EAClE;EACA,IAAImC,UAAU,CAACO,IAAI,KAAK,SAAS,EAAE;IAC/B,MAAM,IAAAgB,8BAAc,EAAChC,OAAO,EAAES,UAAU,CAACG,OAAO,EAAEtC,aAAa,CAAC;EACpE;EACA,IAAImC,UAAU,CAACO,IAAI,KAAK,QAAQ,EAAE;IAC9B,MAAM,IAAAiB,8BAAc,EAACjC,OAAO,EAAES,UAAU,CAACG,OAAO,EAAEtC,aAAa,CAAC;EACpE;EACA,IAAImC,UAAU,CAACO,IAAI,KAAK,UAAU,EAAE;IAChC,MAAM,IAAAkB,gCAAe,EACjBlC,OAAO,EACPS,UAAU,CAACG,OAAO,EAClBtC,aAAa,EACbiB,eAAe,EACfI,qBAAqB,EACrBN,UAAU,CAACsC,mBACf,CAAC;EACL;AACJ,CAAC,CAAC","ignoreList":[]}
@@ -43,7 +43,7 @@ class AsyncEventObject {
43
43
  for (const listener of l) {
44
44
  try {
45
45
  await listener(...args);
46
- } catch (e) {
46
+ } catch {
47
47
  // ignore error
48
48
  }
49
49
  }
@@ -1 +1 @@
1
- {"version":3,"file":"EventObject.js","names":["EventObject","constructor","listeners","emit","args","listener","subscribe","push","unsubscribe","index","indexOf","splice","exports","AsyncEventObject","l","e","createEvent","createAsyncEvent"],"sources":["../../../../src/Commons/EventObject.ts"],"sourcesContent":["export interface IEventSubscription {\n unsubscribe(): void;\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype Listener<TArgs extends any[]> = (...args: TArgs) => void;\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport class EventObject<TArgs extends any[]> {\n private readonly listeners: Array<Listener<TArgs>> = [];\n\n public emit(...args: TArgs): void {\n for (const listener of this.listeners) {\n listener(...args);\n }\n }\n\n public subscribe(listener: Listener<TArgs>): IEventSubscription {\n this.listeners.push(listener);\n return {\n unsubscribe: () => {\n const index = this.listeners.indexOf(listener);\n if (index >= 0) {\n this.listeners.splice(index, 1);\n }\n },\n };\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype AsyncListener<TArgs extends any[]> = (...args: TArgs) => Promise<void>;\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport class AsyncEventObject<TArgs extends any[]> {\n private readonly listeners: Array<AsyncListener<TArgs>> = [];\n\n public async emit(...args: TArgs): Promise<void> {\n const l = [...this.listeners];\n for (const listener of l) {\n try {\n await listener(...args);\n } catch (e) {\n // ignore error\n }\n }\n }\n\n public subscribe(listener: AsyncListener<TArgs>): IEventSubscription {\n this.listeners.push(listener);\n return {\n unsubscribe: () => {\n const index = this.listeners.indexOf(listener);\n if (index >= 0) {\n this.listeners.splice(index, 1);\n }\n },\n };\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function createEvent<TArgs extends any[]>(): EventObject<TArgs> {\n return new EventObject<TArgs>();\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function createAsyncEvent<TArgs extends any[]>(): AsyncEventObject<TArgs> {\n return new AsyncEventObject<TArgs>();\n}\n"],"mappings":";;;;;;;;AAIA;;AAGA;AACO,MAAMA,WAAW,CAAsB;EAAAC,YAAA;IAAA,KACzBC,SAAS,GAA2B,EAAE;EAAA;EAEhDC,IAAIA,CAAC,GAAGC,IAAW,EAAQ;IAC9B,KAAK,MAAMC,QAAQ,IAAI,IAAI,CAACH,SAAS,EAAE;MACnCG,QAAQ,CAAC,GAAGD,IAAI,CAAC;IACrB;EACJ;EAEOE,SAASA,CAACD,QAAyB,EAAsB;IAC5D,IAAI,CAACH,SAAS,CAACK,IAAI,CAACF,QAAQ,CAAC;IAC7B,OAAO;MACHG,WAAW,EAAEA,CAAA,KAAM;QACf,MAAMC,KAAK,GAAG,IAAI,CAACP,SAAS,CAACQ,OAAO,CAACL,QAAQ,CAAC;QAC9C,IAAII,KAAK,IAAI,CAAC,EAAE;UACZ,IAAI,CAACP,SAAS,CAACS,MAAM,CAACF,KAAK,EAAE,CAAC,CAAC;QACnC;MACJ;IACJ,CAAC;EACL;AACJ;;AAEA;AAAAG,OAAA,CAAAZ,WAAA,GAAAA,WAAA;AAGA;AACO,MAAMa,gBAAgB,CAAsB;EAAAZ,YAAA;IAAA,KAC9BC,SAAS,GAAgC,EAAE;EAAA;EAE5D,MAAaC,IAAIA,CAAC,GAAGC,IAAW,EAAiB;IAC7C,MAAMU,CAAC,GAAG,CAAC,GAAG,IAAI,CAACZ,SAAS,CAAC;IAC7B,KAAK,MAAMG,QAAQ,IAAIS,CAAC,EAAE;MACtB,IAAI;QACA,MAAMT,QAAQ,CAAC,GAAGD,IAAI,CAAC;MAC3B,CAAC,CAAC,OAAOW,CAAC,EAAE;QACR;MAAA;IAER;EACJ;EAEOT,SAASA,CAACD,QAA8B,EAAsB;IACjE,IAAI,CAACH,SAAS,CAACK,IAAI,CAACF,QAAQ,CAAC;IAC7B,OAAO;MACHG,WAAW,EAAEA,CAAA,KAAM;QACf,MAAMC,KAAK,GAAG,IAAI,CAACP,SAAS,CAACQ,OAAO,CAACL,QAAQ,CAAC;QAC9C,IAAII,KAAK,IAAI,CAAC,EAAE;UACZ,IAAI,CAACP,SAAS,CAACS,MAAM,CAACF,KAAK,EAAE,CAAC,CAAC;QACnC;MACJ;IACJ,CAAC;EACL;AACJ;;AAEA;AAAAG,OAAA,CAAAC,gBAAA,GAAAA,gBAAA;AACO,SAASG,WAAWA,CAAA,EAA4C;EACnE,OAAO,IAAIhB,WAAW,CAAQ,CAAC;AACnC;;AAEA;AACO,SAASiB,gBAAgBA,CAAA,EAAiD;EAC7E,OAAO,IAAIJ,gBAAgB,CAAQ,CAAC;AACxC","ignoreList":[]}
1
+ {"version":3,"file":"EventObject.js","names":["EventObject","constructor","listeners","emit","args","listener","subscribe","push","unsubscribe","index","indexOf","splice","exports","AsyncEventObject","l","createEvent","createAsyncEvent"],"sources":["../../../../src/Commons/EventObject.ts"],"sourcesContent":["export interface IEventSubscription {\n unsubscribe(): void;\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype Listener<TArgs extends any[]> = (...args: TArgs) => void;\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport class EventObject<TArgs extends any[]> {\n private readonly listeners: Array<Listener<TArgs>> = [];\n\n public emit(...args: TArgs): void {\n for (const listener of this.listeners) {\n listener(...args);\n }\n }\n\n public subscribe(listener: Listener<TArgs>): IEventSubscription {\n this.listeners.push(listener);\n return {\n unsubscribe: () => {\n const index = this.listeners.indexOf(listener);\n if (index >= 0) {\n this.listeners.splice(index, 1);\n }\n },\n };\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype AsyncListener<TArgs extends any[]> = (...args: TArgs) => Promise<void>;\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport class AsyncEventObject<TArgs extends any[]> {\n private readonly listeners: Array<AsyncListener<TArgs>> = [];\n\n public async emit(...args: TArgs): Promise<void> {\n const l = [...this.listeners];\n for (const listener of l) {\n try {\n await listener(...args);\n } catch {\n // ignore error\n }\n }\n }\n\n public subscribe(listener: AsyncListener<TArgs>): IEventSubscription {\n this.listeners.push(listener);\n return {\n unsubscribe: () => {\n const index = this.listeners.indexOf(listener);\n if (index >= 0) {\n this.listeners.splice(index, 1);\n }\n },\n };\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function createEvent<TArgs extends any[]>(): EventObject<TArgs> {\n return new EventObject<TArgs>();\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function createAsyncEvent<TArgs extends any[]>(): AsyncEventObject<TArgs> {\n return new AsyncEventObject<TArgs>();\n}\n"],"mappings":";;;;;;;;AAIA;;AAGA;AACO,MAAMA,WAAW,CAAsB;EAAAC,YAAA;IAAA,KACzBC,SAAS,GAA2B,EAAE;EAAA;EAEhDC,IAAIA,CAAC,GAAGC,IAAW,EAAQ;IAC9B,KAAK,MAAMC,QAAQ,IAAI,IAAI,CAACH,SAAS,EAAE;MACnCG,QAAQ,CAAC,GAAGD,IAAI,CAAC;IACrB;EACJ;EAEOE,SAASA,CAACD,QAAyB,EAAsB;IAC5D,IAAI,CAACH,SAAS,CAACK,IAAI,CAACF,QAAQ,CAAC;IAC7B,OAAO;MACHG,WAAW,EAAEA,CAAA,KAAM;QACf,MAAMC,KAAK,GAAG,IAAI,CAACP,SAAS,CAACQ,OAAO,CAACL,QAAQ,CAAC;QAC9C,IAAII,KAAK,IAAI,CAAC,EAAE;UACZ,IAAI,CAACP,SAAS,CAACS,MAAM,CAACF,KAAK,EAAE,CAAC,CAAC;QACnC;MACJ;IACJ,CAAC;EACL;AACJ;;AAEA;AAAAG,OAAA,CAAAZ,WAAA,GAAAA,WAAA;AAGA;AACO,MAAMa,gBAAgB,CAAsB;EAAAZ,YAAA;IAAA,KAC9BC,SAAS,GAAgC,EAAE;EAAA;EAE5D,MAAaC,IAAIA,CAAC,GAAGC,IAAW,EAAiB;IAC7C,MAAMU,CAAC,GAAG,CAAC,GAAG,IAAI,CAACZ,SAAS,CAAC;IAC7B,KAAK,MAAMG,QAAQ,IAAIS,CAAC,EAAE;MACtB,IAAI;QACA,MAAMT,QAAQ,CAAC,GAAGD,IAAI,CAAC;MAC3B,CAAC,CAAC,MAAM;QACJ;MAAA;IAER;EACJ;EAEOE,SAASA,CAACD,QAA8B,EAAsB;IACjE,IAAI,CAACH,SAAS,CAACK,IAAI,CAACF,QAAQ,CAAC;IAC7B,OAAO;MACHG,WAAW,EAAEA,CAAA,KAAM;QACf,MAAMC,KAAK,GAAG,IAAI,CAACP,SAAS,CAACQ,OAAO,CAACL,QAAQ,CAAC;QAC9C,IAAII,KAAK,IAAI,CAAC,EAAE;UACZ,IAAI,CAACP,SAAS,CAACS,MAAM,CAACF,KAAK,EAAE,CAAC,CAAC;QACnC;MACJ;IACJ,CAAC;EACL;AACJ;;AAEA;AAAAG,OAAA,CAAAC,gBAAA,GAAAA,gBAAA;AACO,SAASE,WAAWA,CAAA,EAA4C;EACnE,OAAO,IAAIf,WAAW,CAAQ,CAAC;AACnC;;AAEA;AACO,SAASgB,gBAAgBA,CAAA,EAAiD;EAC7E,OAAO,IAAIH,gBAAgB,CAAQ,CAAC;AACxC","ignoreList":[]}
@@ -11,7 +11,6 @@ var _ResolveFormInfo = require("../BuildTasks/ResolveFormInfo");
11
11
  var _FormPathUtils = require("../../../Common/FormPathUtils");
12
12
  var _WellKnownDirectories = require("../../../Common/WellKnownDirectories");
13
13
  var _FsUtils = require("./FsUtils");
14
- var _StaticLogger = require("./Logging/StaticLogger");
15
14
  class FormGlobs {
16
15
  static async enumerateFormsInRepository(...repositoryRoots) {
17
16
  const result = [];
@@ -114,7 +113,7 @@ class FormGlobs {
114
113
  }
115
114
  if (formGlob.includes(":with-ci-build")) {
116
115
  const formJsonPath = _path.default.join(formPath, _WellKnownDirectories.WellKnownDirectories.FormJsonFileName);
117
- const formConfig = await (0, _ResolveFormInfo.readFormConfig)(formJsonPath, new _StaticLogger.NullLogger());
116
+ const formConfig = await (0, _ResolveFormInfo.readFormConfig)(formJsonPath);
118
117
  if (formConfig.build !== "ci") {
119
118
  return false;
120
119
  }
@@ -1 +1 @@
1
- {"version":3,"file":"FormGlobsUtils.js","names":["_path","_interopRequireDefault","require","_fsExtra","_ResolveFormInfo","_FormPathUtils","_WellKnownDirectories","_FsUtils","_StaticLogger","FormGlobs","enumerateFormsInRepository","repositoryRoots","result","repositoryRoot","formJsonPath","globAsync","WellKnownDirectories","FormJsonFileName","cwd","formPath","path","dirname","gfv","extractGfvFromFormPath","push","join","formRelativePath","TestFarmDir","CandySubdirectoryName","ensureEachGlobResolvesIntoExistingForm","formGlobs","farmDirectory","formGlob","resolvedGfvs","resolveGfvGlobs","length","Error","Map","normalize","isFormMatchToGlob","set","entries","map","resolveSpecifiers","formGlobsWithSpecifiers","results","Promise","all","x","resolveOnlyFormGlobSpecifiers","flat","gfvRegexp","RegExp","replace","test","includes","pathExists","formConfig","readFormConfig","NullLogger","build","endsWith","exports"],"sources":["../../../../src/Commons/FormGlobsUtils.ts"],"sourcesContent":["import path from \"path\";\n\nimport { pathExists } from \"fs-extra\";\nimport _ from \"lodash\";\n\nimport { readFormConfig } from \"../BuildTasks/ResolveFormInfo\";\nimport { extractGfvFromFormPath } from \"../../../Common/FormPathUtils\";\nimport { WellKnownDirectories } from \"../../../Common/WellKnownDirectories\";\n\nimport { globAsync } from \"./FsUtils\";\nimport { NullLogger } from \"./Logging/StaticLogger\";\nimport { FormLocationInfo } from \"./FormLocationInfo\";\n\nexport class FormGlobs {\n public static async enumerateFormsInRepository(\n ...repositoryRoots: string[]\n ): Promise<Array<{ gfv: string; formPath: string; formRelativePath: string }>> {\n const result: Array<{ gfv: string; formPath: string; formRelativePath: string }> = [];\n\n for (const repositoryRoot of repositoryRoots) {\n for (const formJsonPath of await globAsync(`candy.farm/forms/*/${WellKnownDirectories.FormJsonFileName}`, {\n cwd: repositoryRoot,\n })) {\n const formPath = path.dirname(formJsonPath);\n const gfv = extractGfvFromFormPath(formPath);\n result.push({\n gfv: gfv,\n formPath: path.join(repositoryRoot, formPath),\n formRelativePath: formPath,\n });\n }\n for (const formJsonPath of await globAsync(\n `${WellKnownDirectories.TestFarmDir}/forms/*/${WellKnownDirectories.FormJsonFileName}`,\n {\n cwd: repositoryRoot,\n }\n )) {\n const formPath = path.dirname(formJsonPath);\n const gfv = extractGfvFromFormPath(formPath);\n result.push({\n gfv: gfv,\n formPath: path.join(repositoryRoot, formPath),\n formRelativePath: formPath,\n });\n }\n for (const formJsonPath of await globAsync(\n `candy.rpn.farm/forms/*/${WellKnownDirectories.FormJsonFileName}`,\n {\n cwd: repositoryRoot,\n }\n )) {\n const formPath = path.dirname(formJsonPath);\n const gfv = extractGfvFromFormPath(formPath);\n result.push({\n gfv: gfv,\n formPath: path.join(repositoryRoot, formPath),\n formRelativePath: formPath,\n });\n }\n for (const formJsonPath of await globAsync(\n `candy.diadoc.farm/forms/*/${WellKnownDirectories.FormJsonFileName}`,\n {\n cwd: repositoryRoot,\n }\n )) {\n const formPath = path.dirname(formJsonPath);\n const gfv = extractGfvFromFormPath(formPath);\n result.push({\n gfv: gfv,\n formPath: path.join(repositoryRoot, formPath),\n formRelativePath: formPath,\n });\n }\n for (const formJsonPath of await globAsync(\n `**/${WellKnownDirectories.CandySubdirectoryName}/${WellKnownDirectories.FormJsonFileName}`,\n { cwd: path.join(repositoryRoot, \"forms\") }\n )) {\n const formPath = path.dirname(formJsonPath);\n const gfv = extractGfvFromFormPath(formPath);\n result.push({\n gfv: gfv,\n formPath: path.join(repositoryRoot, \"forms\", formPath),\n formRelativePath: formPath,\n });\n }\n }\n return result;\n }\n\n public static async ensureEachGlobResolvesIntoExistingForm(\n formGlobs: string[],\n farmDirectory: string\n ): Promise<string[]> {\n for (const formGlob of formGlobs) {\n const resolvedGfvs = await this.resolveGfvGlobs([formGlob], farmDirectory);\n if (resolvedGfvs.length === 0) {\n throw new Error(`Форм соответствующих ${formGlob} не найдено.`);\n }\n }\n return formGlobs;\n }\n\n public static async resolveGfvGlobs(formGlobs: string[], farmDirectory: string): Promise<FormLocationInfo[]> {\n const result: Map<string, string> = new Map();\n\n for (const { gfv, formPath } of await FormGlobs.enumerateFormsInRepository(\n path.normalize(path.join(farmDirectory, \"..\"))\n )) {\n for (const formGlob of formGlobs) {\n if (await FormGlobs.isFormMatchToGlob(formGlob, gfv, formPath)) {\n result.set(gfv, formPath);\n }\n }\n }\n\n return [...result.entries()].map(([gfv, formPath]) => ({ gfv: gfv, formPath: formPath }));\n }\n\n public static async resolveSpecifiers(formGlobsWithSpecifiers: string[], farmDirectory: string): Promise<string[]> {\n const results = await Promise.all(\n formGlobsWithSpecifiers.map(x => this.resolveOnlyFormGlobSpecifiers(x, farmDirectory))\n );\n return results.flat();\n }\n\n private static async isFormMatchToGlob(formGlob: string, gfv: string, formPath: string) {\n const gfvRegexp = new RegExp(\n \"^\" +\n formGlob\n .replace(\":with-ui-tests\", \"\")\n .replace(\":with-ci-build\", \"\")\n .replace(/\\*/gi, \"\\\\d*\")\n .replace(/\\?/gi, \"\\\\d\") +\n \"$\"\n );\n if (gfvRegexp.test(gfv)) {\n if (formGlob.includes(\":with-ui-tests\")) {\n if (!(await pathExists(path.join(formPath, \"test\")))) {\n return false;\n }\n }\n if (formGlob.includes(\":with-ci-build\")) {\n const formJsonPath = path.join(formPath, WellKnownDirectories.FormJsonFileName);\n const formConfig = await readFormConfig(formJsonPath, new NullLogger());\n if (formConfig.build !== \"ci\") {\n return false;\n }\n }\n return true;\n }\n return false;\n }\n\n private static async resolveOnlyFormGlobSpecifiers(formGlob: string, farmDirectory: string): Promise<string[]> {\n if (formGlob.endsWith(\":with-ui-tests\")) {\n return (await this.resolveGfvGlobs([formGlob], farmDirectory)).map(x => x.gfv);\n }\n if (formGlob.endsWith(\":with-ci-build\")) {\n return (await this.resolveGfvGlobs([formGlob], farmDirectory)).map(x => x.gfv);\n }\n return [formGlob];\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"FormGlobsUtils.js","names":["_path","_interopRequireDefault","require","_fsExtra","_ResolveFormInfo","_FormPathUtils","_WellKnownDirectories","_FsUtils","FormGlobs","enumerateFormsInRepository","repositoryRoots","result","repositoryRoot","formJsonPath","globAsync","WellKnownDirectories","FormJsonFileName","cwd","formPath","path","dirname","gfv","extractGfvFromFormPath","push","join","formRelativePath","TestFarmDir","CandySubdirectoryName","ensureEachGlobResolvesIntoExistingForm","formGlobs","farmDirectory","formGlob","resolvedGfvs","resolveGfvGlobs","length","Error","Map","normalize","isFormMatchToGlob","set","entries","map","resolveSpecifiers","formGlobsWithSpecifiers","results","Promise","all","x","resolveOnlyFormGlobSpecifiers","flat","gfvRegexp","RegExp","replace","test","includes","pathExists","formConfig","readFormConfig","build","endsWith","exports"],"sources":["../../../../src/Commons/FormGlobsUtils.ts"],"sourcesContent":["import path from \"path\";\n\nimport { pathExists } from \"fs-extra\";\n\nimport { readFormConfig } from \"../BuildTasks/ResolveFormInfo\";\nimport { extractGfvFromFormPath } from \"../../../Common/FormPathUtils\";\nimport { WellKnownDirectories } from \"../../../Common/WellKnownDirectories\";\n\nimport { globAsync } from \"./FsUtils\";\nimport { FormLocationInfo } from \"./FormLocationInfo\";\n\nexport class FormGlobs {\n public static async enumerateFormsInRepository(\n ...repositoryRoots: string[]\n ): Promise<Array<{ gfv: string; formPath: string; formRelativePath: string }>> {\n const result: Array<{ gfv: string; formPath: string; formRelativePath: string }> = [];\n\n for (const repositoryRoot of repositoryRoots) {\n for (const formJsonPath of await globAsync(`candy.farm/forms/*/${WellKnownDirectories.FormJsonFileName}`, {\n cwd: repositoryRoot,\n })) {\n const formPath = path.dirname(formJsonPath);\n const gfv = extractGfvFromFormPath(formPath);\n result.push({\n gfv: gfv,\n formPath: path.join(repositoryRoot, formPath),\n formRelativePath: formPath,\n });\n }\n for (const formJsonPath of await globAsync(\n `${WellKnownDirectories.TestFarmDir}/forms/*/${WellKnownDirectories.FormJsonFileName}`,\n {\n cwd: repositoryRoot,\n }\n )) {\n const formPath = path.dirname(formJsonPath);\n const gfv = extractGfvFromFormPath(formPath);\n result.push({\n gfv: gfv,\n formPath: path.join(repositoryRoot, formPath),\n formRelativePath: formPath,\n });\n }\n for (const formJsonPath of await globAsync(\n `candy.rpn.farm/forms/*/${WellKnownDirectories.FormJsonFileName}`,\n {\n cwd: repositoryRoot,\n }\n )) {\n const formPath = path.dirname(formJsonPath);\n const gfv = extractGfvFromFormPath(formPath);\n result.push({\n gfv: gfv,\n formPath: path.join(repositoryRoot, formPath),\n formRelativePath: formPath,\n });\n }\n for (const formJsonPath of await globAsync(\n `candy.diadoc.farm/forms/*/${WellKnownDirectories.FormJsonFileName}`,\n {\n cwd: repositoryRoot,\n }\n )) {\n const formPath = path.dirname(formJsonPath);\n const gfv = extractGfvFromFormPath(formPath);\n result.push({\n gfv: gfv,\n formPath: path.join(repositoryRoot, formPath),\n formRelativePath: formPath,\n });\n }\n for (const formJsonPath of await globAsync(\n `**/${WellKnownDirectories.CandySubdirectoryName}/${WellKnownDirectories.FormJsonFileName}`,\n { cwd: path.join(repositoryRoot, \"forms\") }\n )) {\n const formPath = path.dirname(formJsonPath);\n const gfv = extractGfvFromFormPath(formPath);\n result.push({\n gfv: gfv,\n formPath: path.join(repositoryRoot, \"forms\", formPath),\n formRelativePath: formPath,\n });\n }\n }\n return result;\n }\n\n public static async ensureEachGlobResolvesIntoExistingForm(\n formGlobs: string[],\n farmDirectory: string\n ): Promise<string[]> {\n for (const formGlob of formGlobs) {\n const resolvedGfvs = await this.resolveGfvGlobs([formGlob], farmDirectory);\n if (resolvedGfvs.length === 0) {\n throw new Error(`Форм соответствующих ${formGlob} не найдено.`);\n }\n }\n return formGlobs;\n }\n\n public static async resolveGfvGlobs(formGlobs: string[], farmDirectory: string): Promise<FormLocationInfo[]> {\n const result: Map<string, string> = new Map();\n\n for (const { gfv, formPath } of await FormGlobs.enumerateFormsInRepository(\n path.normalize(path.join(farmDirectory, \"..\"))\n )) {\n for (const formGlob of formGlobs) {\n if (await FormGlobs.isFormMatchToGlob(formGlob, gfv, formPath)) {\n result.set(gfv, formPath);\n }\n }\n }\n\n return [...result.entries()].map(([gfv, formPath]) => ({ gfv: gfv, formPath: formPath }));\n }\n\n public static async resolveSpecifiers(formGlobsWithSpecifiers: string[], farmDirectory: string): Promise<string[]> {\n const results = await Promise.all(\n formGlobsWithSpecifiers.map(x => this.resolveOnlyFormGlobSpecifiers(x, farmDirectory))\n );\n return results.flat();\n }\n\n private static async isFormMatchToGlob(formGlob: string, gfv: string, formPath: string) {\n const gfvRegexp = new RegExp(\n \"^\" +\n formGlob\n .replace(\":with-ui-tests\", \"\")\n .replace(\":with-ci-build\", \"\")\n .replace(/\\*/gi, \"\\\\d*\")\n .replace(/\\?/gi, \"\\\\d\") +\n \"$\"\n );\n if (gfvRegexp.test(gfv)) {\n if (formGlob.includes(\":with-ui-tests\")) {\n if (!(await pathExists(path.join(formPath, \"test\")))) {\n return false;\n }\n }\n if (formGlob.includes(\":with-ci-build\")) {\n const formJsonPath = path.join(formPath, WellKnownDirectories.FormJsonFileName);\n const formConfig = await readFormConfig(formJsonPath);\n if (formConfig.build !== \"ci\") {\n return false;\n }\n }\n return true;\n }\n return false;\n }\n\n private static async resolveOnlyFormGlobSpecifiers(formGlob: string, farmDirectory: string): Promise<string[]> {\n if (formGlob.endsWith(\":with-ui-tests\")) {\n return (await this.resolveGfvGlobs([formGlob], farmDirectory)).map(x => x.gfv);\n }\n if (formGlob.endsWith(\":with-ci-build\")) {\n return (await this.resolveGfvGlobs([formGlob], farmDirectory)).map(x => x.gfv);\n }\n return [formGlob];\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -16,7 +16,7 @@ async function isDirectoryExists(directoryPath) {
16
16
  try {
17
17
  const dirStat = await statAsync(directoryPath);
18
18
  return dirStat.isDirectory();
19
- } catch (ignoreError) {
19
+ } catch {
20
20
  return false;
21
21
  }
22
22
  }
@@ -24,7 +24,7 @@ async function isFileExists(directoryPath) {
24
24
  try {
25
25
  const dirStat = await statAsync(directoryPath);
26
26
  return dirStat.isFile();
27
- } catch (ignoreError) {
27
+ } catch {
28
28
  return false;
29
29
  }
30
30
  }
@@ -1 +1 @@
1
- {"version":3,"file":"FsUtils.js","names":["fs","_interopRequireWildcard","require","_util","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","statAsync","promisify","stat","isDirectoryExists","directoryPath","dirStat","isDirectory","ignoreError","isFileExists","isFile","writeFileAsync","exports","util","writeFile","globAsync","glob"],"sources":["../../../../src/Commons/FsUtils.ts"],"sourcesContent":["import * as fs from \"fs\";\nimport util, { promisify } from \"util\";\n\nconst statAsync = promisify(fs.stat);\n\nexport async function isDirectoryExists(directoryPath: string): Promise<boolean> {\n try {\n const dirStat = await statAsync(directoryPath);\n return dirStat.isDirectory();\n } catch (ignoreError) {\n return false;\n }\n}\n\nexport async function isFileExists(directoryPath: string): Promise<boolean> {\n try {\n const dirStat = await statAsync(directoryPath);\n return dirStat.isFile();\n } catch (ignoreError) {\n return false;\n }\n}\n\nexport const writeFileAsync = util.promisify(fs.writeFile);\n\nexport type GlobAsyncWithoutFileTypes = (\n pattern: string | string[],\n options?: fs.GlobOptionsWithoutFileTypes\n) => Promise<string[]>;\nexport const globAsync: GlobAsyncWithoutFileTypes = promisify(fs.glob);\n"],"mappings":";;;;;;;;;AAAA,IAAAA,EAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,KAAA,GAAAF,uBAAA,CAAAC,OAAA;AAAuC,SAAAE,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAJ,wBAAAI,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAEvC,MAAMW,SAAS,GAAG,IAAAC,eAAS,EAACzB,EAAE,CAAC0B,IAAI,CAAC;AAE7B,eAAeC,iBAAiBA,CAACC,aAAqB,EAAoB;EAC7E,IAAI;IACA,MAAMC,OAAO,GAAG,MAAML,SAAS,CAACI,aAAa,CAAC;IAC9C,OAAOC,OAAO,CAACC,WAAW,CAAC,CAAC;EAChC,CAAC,CAAC,OAAOC,WAAW,EAAE;IAClB,OAAO,KAAK;EAChB;AACJ;AAEO,eAAeC,YAAYA,CAACJ,aAAqB,EAAoB;EACxE,IAAI;IACA,MAAMC,OAAO,GAAG,MAAML,SAAS,CAACI,aAAa,CAAC;IAC9C,OAAOC,OAAO,CAACI,MAAM,CAAC,CAAC;EAC3B,CAAC,CAAC,OAAOF,WAAW,EAAE;IAClB,OAAO,KAAK;EAChB;AACJ;AAEO,MAAMG,cAAc,GAAAC,OAAA,CAAAD,cAAA,GAAGE,aAAI,CAACX,SAAS,CAACzB,EAAE,CAACqC,SAAS,CAAC;AAMnD,MAAMC,SAAoC,GAAAH,OAAA,CAAAG,SAAA,GAAG,IAAAb,eAAS,EAACzB,EAAE,CAACuC,IAAI,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"FsUtils.js","names":["fs","_interopRequireWildcard","require","_util","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","statAsync","promisify","stat","isDirectoryExists","directoryPath","dirStat","isDirectory","isFileExists","isFile","writeFileAsync","exports","util","writeFile","globAsync","glob"],"sources":["../../../../src/Commons/FsUtils.ts"],"sourcesContent":["import * as fs from \"fs\";\nimport util, { promisify } from \"util\";\n\nconst statAsync = promisify(fs.stat);\n\nexport async function isDirectoryExists(directoryPath: string): Promise<boolean> {\n try {\n const dirStat = await statAsync(directoryPath);\n return dirStat.isDirectory();\n } catch {\n return false;\n }\n}\n\nexport async function isFileExists(directoryPath: string): Promise<boolean> {\n try {\n const dirStat = await statAsync(directoryPath);\n return dirStat.isFile();\n } catch {\n return false;\n }\n}\n\nexport const writeFileAsync = util.promisify(fs.writeFile);\n\nexport type GlobAsyncWithoutFileTypes = (\n pattern: string | string[],\n options?: fs.GlobOptionsWithoutFileTypes\n) => Promise<string[]>;\nexport const globAsync: GlobAsyncWithoutFileTypes = promisify(fs.glob);\n"],"mappings":";;;;;;;;;AAAA,IAAAA,EAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,KAAA,GAAAF,uBAAA,CAAAC,OAAA;AAAuC,SAAAE,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAJ,wBAAAI,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAEvC,MAAMW,SAAS,GAAG,IAAAC,eAAS,EAACzB,EAAE,CAAC0B,IAAI,CAAC;AAE7B,eAAeC,iBAAiBA,CAACC,aAAqB,EAAoB;EAC7E,IAAI;IACA,MAAMC,OAAO,GAAG,MAAML,SAAS,CAACI,aAAa,CAAC;IAC9C,OAAOC,OAAO,CAACC,WAAW,CAAC,CAAC;EAChC,CAAC,CAAC,MAAM;IACJ,OAAO,KAAK;EAChB;AACJ;AAEO,eAAeC,YAAYA,CAACH,aAAqB,EAAoB;EACxE,IAAI;IACA,MAAMC,OAAO,GAAG,MAAML,SAAS,CAACI,aAAa,CAAC;IAC9C,OAAOC,OAAO,CAACG,MAAM,CAAC,CAAC;EAC3B,CAAC,CAAC,MAAM;IACJ,OAAO,KAAK;EAChB;AACJ;AAEO,MAAMC,cAAc,GAAAC,OAAA,CAAAD,cAAA,GAAGE,aAAI,CAACV,SAAS,CAACzB,EAAE,CAACoC,SAAS,CAAC;AAMnD,MAAMC,SAAoC,GAAAH,OAAA,CAAAG,SAAA,GAAG,IAAAZ,eAAS,EAACzB,EAAE,CAACsC,IAAI,CAAC","ignoreList":[]}
@@ -6,11 +6,12 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.getGitBranch = void 0;
7
7
  var _shelljs = require("shelljs");
8
8
  const getGitBranch = directoryPath => {
9
+ const startDir = process.cwd();
9
10
  (0, _shelljs.cd)(directoryPath);
10
11
  const currentBranch = (0, _shelljs.exec)("git rev-parse --abbrev-ref HEAD", {
11
12
  silent: true
12
13
  });
13
- (0, _shelljs.cd)(__dirname);
14
+ (0, _shelljs.cd)(startDir);
14
15
  return currentBranch.toString();
15
16
  };
16
17
  exports.getGitBranch = getGitBranch;
@@ -1 +1 @@
1
- {"version":3,"file":"GitUtils.js","names":["_shelljs","require","getGitBranch","directoryPath","cd","currentBranch","exec","silent","__dirname","toString","exports"],"sources":["../../../../src/Commons/GitUtils.ts"],"sourcesContent":["import { exec, cd } from \"shelljs\";\n\nexport const getGitBranch = (directoryPath: string): string => {\n cd(directoryPath);\n const currentBranch = exec(\"git rev-parse --abbrev-ref HEAD\", { silent: true });\n cd(__dirname);\n\n return currentBranch.toString();\n};\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAEO,MAAMC,YAAY,GAAIC,aAAqB,IAAa;EAC3D,IAAAC,WAAE,EAACD,aAAa,CAAC;EACjB,MAAME,aAAa,GAAG,IAAAC,aAAI,EAAC,iCAAiC,EAAE;IAAEC,MAAM,EAAE;EAAK,CAAC,CAAC;EAC/E,IAAAH,WAAE,EAACI,SAAS,CAAC;EAEb,OAAOH,aAAa,CAACI,QAAQ,CAAC,CAAC;AACnC,CAAC;AAACC,OAAA,CAAAR,YAAA,GAAAA,YAAA","ignoreList":[]}
1
+ {"version":3,"file":"GitUtils.js","names":["_shelljs","require","getGitBranch","directoryPath","startDir","process","cwd","cd","currentBranch","exec","silent","toString","exports"],"sources":["../../../../src/Commons/GitUtils.ts"],"sourcesContent":["import { exec, cd } from \"shelljs\";\n\nexport const getGitBranch = (directoryPath: string): string => {\n const startDir = process.cwd();\n cd(directoryPath);\n const currentBranch = exec(\"git rev-parse --abbrev-ref HEAD\", { silent: true });\n cd(startDir);\n\n return currentBranch.toString();\n};\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAEO,MAAMC,YAAY,GAAIC,aAAqB,IAAa;EAC3D,MAAMC,QAAQ,GAAGC,OAAO,CAACC,GAAG,CAAC,CAAC;EAC9B,IAAAC,WAAE,EAACJ,aAAa,CAAC;EACjB,MAAMK,aAAa,GAAG,IAAAC,aAAI,EAAC,iCAAiC,EAAE;IAAEC,MAAM,EAAE;EAAK,CAAC,CAAC;EAC/E,IAAAH,WAAE,EAACH,QAAQ,CAAC;EAEZ,OAAOI,aAAa,CAACG,QAAQ,CAAC,CAAC;AACnC,CAAC;AAACC,OAAA,CAAAV,YAAA,GAAAA,YAAA","ignoreList":[]}
@@ -9,7 +9,7 @@ exports.httpRedirect = httpRedirect;
9
9
  exports.httpStreamResult = httpStreamResult;
10
10
  var _HtmlResultHandler = require("./Results/HtmlResultHandler");
11
11
  function httpRedirect(target) {
12
- return async (req, res) => {
12
+ return async (_, res) => {
13
13
  res.redirect(target);
14
14
  };
15
15
  }
@@ -20,7 +20,7 @@ function httpHtmlResult(content) {
20
20
  };
21
21
  }
22
22
  function httpContentResult(content, contentType) {
23
- return async (req, res) => {
23
+ return async (_, res) => {
24
24
  if (contentType) {
25
25
  res.contentType(contentType);
26
26
  }
@@ -28,7 +28,7 @@ function httpContentResult(content, contentType) {
28
28
  };
29
29
  }
30
30
  function httpStreamResult(result, contentType) {
31
- return async (req, res) => {
31
+ return async (_, res) => {
32
32
  if (contentType) {
33
33
  res.header("Content-Type", contentType);
34
34
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Actions.js","names":["_HtmlResultHandler","require","httpRedirect","target","req","res","redirect","httpHtmlResult","content","resultHandler","HtmlResultHandler","processResult","httpContentResult","contentType","send","httpStreamResult","result","header","pipe"],"sources":["../../../../../../src/Commons/HttpServer/AttributeRouting/Actions.ts"],"sourcesContent":["import { ReadStream } from \"fs\";\n\nimport { IActionResult } from \"./Results/CustomActionResultHandler\";\nimport { HtmlResultHandler } from \"./Results/HtmlResultHandler\";\n\nexport function httpRedirect(target: string): IActionResult {\n return async (req, res) => {\n res.redirect(target);\n };\n}\n\nexport function httpHtmlResult(content: string): IActionResult {\n const resultHandler = new HtmlResultHandler();\n return async (req, res) => {\n await resultHandler.processResult(content, req, res);\n };\n}\n\nexport function httpContentResult(content: Buffer | string, contentType: string | false): IActionResult {\n return async (req, res) => {\n if (contentType) {\n res.contentType(contentType);\n }\n res.send(content);\n };\n}\n\nexport function httpStreamResult(result: ReadStream, contentType: string | false): IActionResult {\n return async (req, res): Promise<void> => {\n if (contentType) {\n res.header(\"Content-Type\", contentType);\n }\n result.pipe(res);\n };\n}\n"],"mappings":";;;;;;;;;AAGA,IAAAA,kBAAA,GAAAC,OAAA;AAEO,SAASC,YAAYA,CAACC,MAAc,EAAiB;EACxD,OAAO,OAAOC,GAAG,EAAEC,GAAG,KAAK;IACvBA,GAAG,CAACC,QAAQ,CAACH,MAAM,CAAC;EACxB,CAAC;AACL;AAEO,SAASI,cAAcA,CAACC,OAAe,EAAiB;EAC3D,MAAMC,aAAa,GAAG,IAAIC,oCAAiB,CAAC,CAAC;EAC7C,OAAO,OAAON,GAAG,EAAEC,GAAG,KAAK;IACvB,MAAMI,aAAa,CAACE,aAAa,CAACH,OAAO,EAAEJ,GAAG,EAAEC,GAAG,CAAC;EACxD,CAAC;AACL;AAEO,SAASO,iBAAiBA,CAACJ,OAAwB,EAAEK,WAA2B,EAAiB;EACpG,OAAO,OAAOT,GAAG,EAAEC,GAAG,KAAK;IACvB,IAAIQ,WAAW,EAAE;MACbR,GAAG,CAACQ,WAAW,CAACA,WAAW,CAAC;IAChC;IACAR,GAAG,CAACS,IAAI,CAACN,OAAO,CAAC;EACrB,CAAC;AACL;AAEO,SAASO,gBAAgBA,CAACC,MAAkB,EAAEH,WAA2B,EAAiB;EAC7F,OAAO,OAAOT,GAAG,EAAEC,GAAG,KAAoB;IACtC,IAAIQ,WAAW,EAAE;MACbR,GAAG,CAACY,MAAM,CAAC,cAAc,EAAEJ,WAAW,CAAC;IAC3C;IACAG,MAAM,CAACE,IAAI,CAACb,GAAG,CAAC;EACpB,CAAC;AACL","ignoreList":[]}
1
+ {"version":3,"file":"Actions.js","names":["_HtmlResultHandler","require","httpRedirect","target","_","res","redirect","httpHtmlResult","content","resultHandler","HtmlResultHandler","req","processResult","httpContentResult","contentType","send","httpStreamResult","result","header","pipe"],"sources":["../../../../../../src/Commons/HttpServer/AttributeRouting/Actions.ts"],"sourcesContent":["import { ReadStream } from \"fs\";\n\nimport { IActionResult } from \"./Results/CustomActionResultHandler\";\nimport { HtmlResultHandler } from \"./Results/HtmlResultHandler\";\n\nexport function httpRedirect(target: string): IActionResult {\n return async (_, res) => {\n res.redirect(target);\n };\n}\n\nexport function httpHtmlResult(content: string): IActionResult {\n const resultHandler = new HtmlResultHandler();\n return async (req, res) => {\n await resultHandler.processResult(content, req, res);\n };\n}\n\nexport function httpContentResult(content: Buffer | string, contentType: string | false): IActionResult {\n return async (_, res) => {\n if (contentType) {\n res.contentType(contentType);\n }\n res.send(content);\n };\n}\n\nexport function httpStreamResult(result: ReadStream, contentType: string | false): IActionResult {\n return async (_, res): Promise<void> => {\n if (contentType) {\n res.header(\"Content-Type\", contentType);\n }\n result.pipe(res);\n };\n}\n"],"mappings":";;;;;;;;;AAGA,IAAAA,kBAAA,GAAAC,OAAA;AAEO,SAASC,YAAYA,CAACC,MAAc,EAAiB;EACxD,OAAO,OAAOC,CAAC,EAAEC,GAAG,KAAK;IACrBA,GAAG,CAACC,QAAQ,CAACH,MAAM,CAAC;EACxB,CAAC;AACL;AAEO,SAASI,cAAcA,CAACC,OAAe,EAAiB;EAC3D,MAAMC,aAAa,GAAG,IAAIC,oCAAiB,CAAC,CAAC;EAC7C,OAAO,OAAOC,GAAG,EAAEN,GAAG,KAAK;IACvB,MAAMI,aAAa,CAACG,aAAa,CAACJ,OAAO,EAAEG,GAAG,EAAEN,GAAG,CAAC;EACxD,CAAC;AACL;AAEO,SAASQ,iBAAiBA,CAACL,OAAwB,EAAEM,WAA2B,EAAiB;EACpG,OAAO,OAAOV,CAAC,EAAEC,GAAG,KAAK;IACrB,IAAIS,WAAW,EAAE;MACbT,GAAG,CAACS,WAAW,CAACA,WAAW,CAAC;IAChC;IACAT,GAAG,CAACU,IAAI,CAACP,OAAO,CAAC;EACrB,CAAC;AACL;AAEO,SAASQ,gBAAgBA,CAACC,MAAkB,EAAEH,WAA2B,EAAiB;EAC7F,OAAO,OAAOV,CAAC,EAAEC,GAAG,KAAoB;IACpC,IAAIS,WAAW,EAAE;MACbT,GAAG,CAACa,MAAM,CAAC,cAAc,EAAEJ,WAAW,CAAC;IAC3C;IACAG,MAAM,CAACE,IAAI,CAACd,GAAG,CAAC;EACpB,CAAC;AACL","ignoreList":[]}
@@ -11,7 +11,7 @@ var _NotFoundWebError = require("./NotFoundWebError");
11
11
 
12
12
  const routesProperty = "__http_routes__";
13
13
  function httpGet(urlPattern, resultHandler, ...paramConfigs) {
14
- return (instanceClass, propertyKey, descriptor) => {
14
+ return (instanceClass, propertyKey) => {
15
15
  // @ts-ignore
16
16
  instanceClass[routesProperty] = instanceClass[routesProperty] || [];
17
17
  function setupBinding(instance, expressApp) {
@@ -23,7 +23,7 @@ function httpGet(urlPattern, resultHandler, ...paramConfigs) {
23
23
  };
24
24
  }
25
25
  function httpPost(urlPattern, resultHandler, ...paramConfigs) {
26
- return (instanceClass, propertyKey, descriptor) => {
26
+ return (instanceClass, propertyKey) => {
27
27
  // @ts-ignore
28
28
  instanceClass[routesProperty] = instanceClass[routesProperty] || [];
29
29
  function setupBinding(instance, expressApp) {
@@ -1 +1 @@
1
- {"version":3,"file":"Methods.js","names":["_NotFoundWebError","require","routesProperty","httpGet","urlPattern","resultHandler","paramConfigs","instanceClass","propertyKey","descriptor","setupBinding","instance","expressApp","get","buildHandler","push","httpPost","post","httpSetupAttributeRouting","route","methodName","req","res","next","params","map","x","extractValue","result","apply","then","processResult","e","NotFoundWebError","Error","status","send","message","stack"],"sources":["../../../../../../src/Commons/HttpServer/AttributeRouting/Methods.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { Express } from \"express\";\nimport { RequestHandler } from \"express-serve-static-core\";\n\nimport { NotFoundWebError } from \"./NotFoundWebError\";\nimport { IParamBinder } from \"./ParamBinders/IParamBinder\";\nimport { IResultHandler } from \"./Results/IResultHandler\";\n\nconst routesProperty = \"__http_routes__\";\n\nexport function httpGet(\n urlPattern: string | RegExp,\n resultHandler: IResultHandler,\n ...paramConfigs: IParamBinder[]\n): MethodDecorator {\n return (instanceClass, propertyKey, descriptor) => {\n // @ts-ignore\n instanceClass[routesProperty] = instanceClass[routesProperty] || [];\n\n function setupBinding(instance: any, expressApp: Express): void {\n expressApp.get(urlPattern, buildHandler(instance, propertyKey, paramConfigs, resultHandler));\n }\n\n // @ts-ignore\n instanceClass[routesProperty].push(setupBinding);\n };\n}\n\nexport function httpPost(\n urlPattern: string,\n resultHandler: IResultHandler,\n ...paramConfigs: IParamBinder[]\n): MethodDecorator {\n return (instanceClass, propertyKey, descriptor) => {\n // @ts-ignore\n instanceClass[routesProperty] = instanceClass[routesProperty] || [];\n\n function setupBinding(instance: any, expressApp: Express): void {\n expressApp.post(urlPattern, buildHandler(instance, propertyKey, paramConfigs, resultHandler));\n }\n\n // @ts-ignore\n instanceClass[routesProperty].push(setupBinding);\n };\n}\n\nexport function httpSetupAttributeRouting<T>(instance: T, expressApp: Express): void {\n // @ts-ignore\n for (const route of instance[routesProperty] || []) {\n route(instance, expressApp);\n }\n}\n\nfunction buildHandler(\n instance: any,\n methodName: string | symbol,\n paramConfigs: IParamBinder[],\n resultHandler: IResultHandler\n): RequestHandler {\n return async (req, res, next) => {\n try {\n const params = paramConfigs.map(x => x.extractValue(req));\n // eslint-disable-next-line prefer-spread\n let result = instance[methodName].apply(instance, params);\n if (typeof result.then === \"function\") {\n result = await result;\n }\n await resultHandler.processResult(result, req, res);\n } catch (e) {\n if (e instanceof NotFoundWebError) {\n next();\n } else if (e instanceof Error) {\n res.status(500).send(`${e.message}\\n${e.stack}`);\n } else {\n res.status(500).send(`${e}`);\n }\n }\n };\n}\n"],"mappings":";;;;;;;;AAIA,IAAAA,iBAAA,GAAAC,OAAA;AAJA;;AAQA,MAAMC,cAAc,GAAG,iBAAiB;AAEjC,SAASC,OAAOA,CACnBC,UAA2B,EAC3BC,aAA6B,EAC7B,GAAGC,YAA4B,EAChB;EACf,OAAO,CAACC,aAAa,EAAEC,WAAW,EAAEC,UAAU,KAAK;IAC/C;IACAF,aAAa,CAACL,cAAc,CAAC,GAAGK,aAAa,CAACL,cAAc,CAAC,IAAI,EAAE;IAEnE,SAASQ,YAAYA,CAACC,QAAa,EAAEC,UAAmB,EAAQ;MAC5DA,UAAU,CAACC,GAAG,CAACT,UAAU,EAAEU,YAAY,CAACH,QAAQ,EAAEH,WAAW,EAAEF,YAAY,EAAED,aAAa,CAAC,CAAC;IAChG;;IAEA;IACAE,aAAa,CAACL,cAAc,CAAC,CAACa,IAAI,CAACL,YAAY,CAAC;EACpD,CAAC;AACL;AAEO,SAASM,QAAQA,CACpBZ,UAAkB,EAClBC,aAA6B,EAC7B,GAAGC,YAA4B,EAChB;EACf,OAAO,CAACC,aAAa,EAAEC,WAAW,EAAEC,UAAU,KAAK;IAC/C;IACAF,aAAa,CAACL,cAAc,CAAC,GAAGK,aAAa,CAACL,cAAc,CAAC,IAAI,EAAE;IAEnE,SAASQ,YAAYA,CAACC,QAAa,EAAEC,UAAmB,EAAQ;MAC5DA,UAAU,CAACK,IAAI,CAACb,UAAU,EAAEU,YAAY,CAACH,QAAQ,EAAEH,WAAW,EAAEF,YAAY,EAAED,aAAa,CAAC,CAAC;IACjG;;IAEA;IACAE,aAAa,CAACL,cAAc,CAAC,CAACa,IAAI,CAACL,YAAY,CAAC;EACpD,CAAC;AACL;AAEO,SAASQ,yBAAyBA,CAAIP,QAAW,EAAEC,UAAmB,EAAQ;EACjF;EACA,KAAK,MAAMO,KAAK,IAAIR,QAAQ,CAACT,cAAc,CAAC,IAAI,EAAE,EAAE;IAChDiB,KAAK,CAACR,QAAQ,EAAEC,UAAU,CAAC;EAC/B;AACJ;AAEA,SAASE,YAAYA,CACjBH,QAAa,EACbS,UAA2B,EAC3Bd,YAA4B,EAC5BD,aAA6B,EACf;EACd,OAAO,OAAOgB,GAAG,EAAEC,GAAG,EAAEC,IAAI,KAAK;IAC7B,IAAI;MACA,MAAMC,MAAM,GAAGlB,YAAY,CAACmB,GAAG,CAACC,CAAC,IAAIA,CAAC,CAACC,YAAY,CAACN,GAAG,CAAC,CAAC;MACzD;MACA,IAAIO,MAAM,GAAGjB,QAAQ,CAACS,UAAU,CAAC,CAACS,KAAK,CAAClB,QAAQ,EAAEa,MAAM,CAAC;MACzD,IAAI,OAAOI,MAAM,CAACE,IAAI,KAAK,UAAU,EAAE;QACnCF,MAAM,GAAG,MAAMA,MAAM;MACzB;MACA,MAAMvB,aAAa,CAAC0B,aAAa,CAACH,MAAM,EAAEP,GAAG,EAAEC,GAAG,CAAC;IACvD,CAAC,CAAC,OAAOU,CAAC,EAAE;MACR,IAAIA,CAAC,YAAYC,kCAAgB,EAAE;QAC/BV,IAAI,CAAC,CAAC;MACV,CAAC,MAAM,IAAIS,CAAC,YAAYE,KAAK,EAAE;QAC3BZ,GAAG,CAACa,MAAM,CAAC,GAAG,CAAC,CAACC,IAAI,CAAC,GAAGJ,CAAC,CAACK,OAAO,KAAKL,CAAC,CAACM,KAAK,EAAE,CAAC;MACpD,CAAC,MAAM;QACHhB,GAAG,CAACa,MAAM,CAAC,GAAG,CAAC,CAACC,IAAI,CAAC,GAAGJ,CAAC,EAAE,CAAC;MAChC;IACJ;EACJ,CAAC;AACL","ignoreList":[]}
1
+ {"version":3,"file":"Methods.js","names":["_NotFoundWebError","require","routesProperty","httpGet","urlPattern","resultHandler","paramConfigs","instanceClass","propertyKey","setupBinding","instance","expressApp","get","buildHandler","push","httpPost","post","httpSetupAttributeRouting","route","methodName","req","res","next","params","map","x","extractValue","result","apply","then","processResult","e","NotFoundWebError","Error","status","send","message","stack"],"sources":["../../../../../../src/Commons/HttpServer/AttributeRouting/Methods.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { Express } from \"express\";\nimport { RequestHandler } from \"express-serve-static-core\";\n\nimport { NotFoundWebError } from \"./NotFoundWebError\";\nimport { IParamBinder } from \"./ParamBinders/IParamBinder\";\nimport { IResultHandler } from \"./Results/IResultHandler\";\n\nconst routesProperty = \"__http_routes__\";\n\nexport function httpGet(\n urlPattern: string | RegExp,\n resultHandler: IResultHandler,\n ...paramConfigs: IParamBinder[]\n): MethodDecorator {\n return (instanceClass, propertyKey) => {\n // @ts-ignore\n instanceClass[routesProperty] = instanceClass[routesProperty] || [];\n\n function setupBinding(instance: any, expressApp: Express): void {\n expressApp.get(urlPattern, buildHandler(instance, propertyKey, paramConfigs, resultHandler));\n }\n\n // @ts-ignore\n instanceClass[routesProperty].push(setupBinding);\n };\n}\n\nexport function httpPost(\n urlPattern: string,\n resultHandler: IResultHandler,\n ...paramConfigs: IParamBinder[]\n): MethodDecorator {\n return (instanceClass, propertyKey) => {\n // @ts-ignore\n instanceClass[routesProperty] = instanceClass[routesProperty] || [];\n\n function setupBinding(instance: any, expressApp: Express): void {\n expressApp.post(urlPattern, buildHandler(instance, propertyKey, paramConfigs, resultHandler));\n }\n\n // @ts-ignore\n instanceClass[routesProperty].push(setupBinding);\n };\n}\n\nexport function httpSetupAttributeRouting<T>(instance: T, expressApp: Express): void {\n // @ts-ignore\n for (const route of instance[routesProperty] || []) {\n route(instance, expressApp);\n }\n}\n\nfunction buildHandler(\n instance: any,\n methodName: string | symbol,\n paramConfigs: IParamBinder[],\n resultHandler: IResultHandler\n): RequestHandler {\n return async (req, res, next) => {\n try {\n const params = paramConfigs.map(x => x.extractValue(req));\n // eslint-disable-next-line prefer-spread\n let result = instance[methodName].apply(instance, params);\n if (typeof result.then === \"function\") {\n result = await result;\n }\n await resultHandler.processResult(result, req, res);\n } catch (e) {\n if (e instanceof NotFoundWebError) {\n next();\n } else if (e instanceof Error) {\n res.status(500).send(`${e.message}\\n${e.stack}`);\n } else {\n res.status(500).send(`${e}`);\n }\n }\n };\n}\n"],"mappings":";;;;;;;;AAIA,IAAAA,iBAAA,GAAAC,OAAA;AAJA;;AAQA,MAAMC,cAAc,GAAG,iBAAiB;AAEjC,SAASC,OAAOA,CACnBC,UAA2B,EAC3BC,aAA6B,EAC7B,GAAGC,YAA4B,EAChB;EACf,OAAO,CAACC,aAAa,EAAEC,WAAW,KAAK;IACnC;IACAD,aAAa,CAACL,cAAc,CAAC,GAAGK,aAAa,CAACL,cAAc,CAAC,IAAI,EAAE;IAEnE,SAASO,YAAYA,CAACC,QAAa,EAAEC,UAAmB,EAAQ;MAC5DA,UAAU,CAACC,GAAG,CAACR,UAAU,EAAES,YAAY,CAACH,QAAQ,EAAEF,WAAW,EAAEF,YAAY,EAAED,aAAa,CAAC,CAAC;IAChG;;IAEA;IACAE,aAAa,CAACL,cAAc,CAAC,CAACY,IAAI,CAACL,YAAY,CAAC;EACpD,CAAC;AACL;AAEO,SAASM,QAAQA,CACpBX,UAAkB,EAClBC,aAA6B,EAC7B,GAAGC,YAA4B,EAChB;EACf,OAAO,CAACC,aAAa,EAAEC,WAAW,KAAK;IACnC;IACAD,aAAa,CAACL,cAAc,CAAC,GAAGK,aAAa,CAACL,cAAc,CAAC,IAAI,EAAE;IAEnE,SAASO,YAAYA,CAACC,QAAa,EAAEC,UAAmB,EAAQ;MAC5DA,UAAU,CAACK,IAAI,CAACZ,UAAU,EAAES,YAAY,CAACH,QAAQ,EAAEF,WAAW,EAAEF,YAAY,EAAED,aAAa,CAAC,CAAC;IACjG;;IAEA;IACAE,aAAa,CAACL,cAAc,CAAC,CAACY,IAAI,CAACL,YAAY,CAAC;EACpD,CAAC;AACL;AAEO,SAASQ,yBAAyBA,CAAIP,QAAW,EAAEC,UAAmB,EAAQ;EACjF;EACA,KAAK,MAAMO,KAAK,IAAIR,QAAQ,CAACR,cAAc,CAAC,IAAI,EAAE,EAAE;IAChDgB,KAAK,CAACR,QAAQ,EAAEC,UAAU,CAAC;EAC/B;AACJ;AAEA,SAASE,YAAYA,CACjBH,QAAa,EACbS,UAA2B,EAC3Bb,YAA4B,EAC5BD,aAA6B,EACf;EACd,OAAO,OAAOe,GAAG,EAAEC,GAAG,EAAEC,IAAI,KAAK;IAC7B,IAAI;MACA,MAAMC,MAAM,GAAGjB,YAAY,CAACkB,GAAG,CAACC,CAAC,IAAIA,CAAC,CAACC,YAAY,CAACN,GAAG,CAAC,CAAC;MACzD;MACA,IAAIO,MAAM,GAAGjB,QAAQ,CAACS,UAAU,CAAC,CAACS,KAAK,CAAClB,QAAQ,EAAEa,MAAM,CAAC;MACzD,IAAI,OAAOI,MAAM,CAACE,IAAI,KAAK,UAAU,EAAE;QACnCF,MAAM,GAAG,MAAMA,MAAM;MACzB;MACA,MAAMtB,aAAa,CAACyB,aAAa,CAACH,MAAM,EAAEP,GAAG,EAAEC,GAAG,CAAC;IACvD,CAAC,CAAC,OAAOU,CAAC,EAAE;MACR,IAAIA,CAAC,YAAYC,kCAAgB,EAAE;QAC/BV,IAAI,CAAC,CAAC;MACV,CAAC,MAAM,IAAIS,CAAC,YAAYE,KAAK,EAAE;QAC3BZ,GAAG,CAACa,MAAM,CAAC,GAAG,CAAC,CAACC,IAAI,CAAC,GAAGJ,CAAC,CAACK,OAAO,KAAKL,CAAC,CAACM,KAAK,EAAE,CAAC;MACpD,CAAC,MAAM;QACHhB,GAAG,CAACa,MAAM,CAAC,GAAG,CAAC,CAACC,IAAI,CAAC,GAAGJ,CAAC,EAAE,CAAC;MAChC;IACJ;EACJ,CAAC;AACL","ignoreList":[]}
@@ -9,7 +9,7 @@ class CustomContentResultHandler {
9
9
  this.mimeType = void 0;
10
10
  this.mimeType = mimeType;
11
11
  }
12
- async processResult(result, req, res) {
12
+ async processResult(result, _req, res) {
13
13
  res.header("Content-Type", this.mimeType);
14
14
  res.send(result.trim());
15
15
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CustomContentResultHandler.js","names":["CustomContentResultHandler","constructor","mimeType","processResult","result","req","res","header","send","trim","exports"],"sources":["../../../../../../../src/Commons/HttpServer/AttributeRouting/Results/CustomContentResultHandler.ts"],"sourcesContent":["import { Response } from \"express\";\n\nimport { IResultHandler } from \"./IResultHandler\";\n\nexport class CustomContentResultHandler implements IResultHandler {\n private readonly mimeType: string;\n\n public constructor(mimeType: string) {\n this.mimeType = mimeType;\n }\n\n public async processResult(result: string, req: Express.Request, res: Response): Promise<void> {\n res.header(\"Content-Type\", this.mimeType);\n res.send(result.trim());\n }\n}\n"],"mappings":";;;;;;AAIO,MAAMA,0BAA0B,CAA2B;EAGvDC,WAAWA,CAACC,QAAgB,EAAE;IAAA,KAFpBA,QAAQ;IAGrB,IAAI,CAACA,QAAQ,GAAGA,QAAQ;EAC5B;EAEA,MAAaC,aAAaA,CAACC,MAAc,EAAEC,GAAoB,EAAEC,GAAa,EAAiB;IAC3FA,GAAG,CAACC,MAAM,CAAC,cAAc,EAAE,IAAI,CAACL,QAAQ,CAAC;IACzCI,GAAG,CAACE,IAAI,CAACJ,MAAM,CAACK,IAAI,CAAC,CAAC,CAAC;EAC3B;AACJ;AAACC,OAAA,CAAAV,0BAAA,GAAAA,0BAAA","ignoreList":[]}
1
+ {"version":3,"file":"CustomContentResultHandler.js","names":["CustomContentResultHandler","constructor","mimeType","processResult","result","_req","res","header","send","trim","exports"],"sources":["../../../../../../../src/Commons/HttpServer/AttributeRouting/Results/CustomContentResultHandler.ts"],"sourcesContent":["import { Response } from \"express\";\n\nimport { IResultHandler } from \"./IResultHandler\";\n\nexport class CustomContentResultHandler implements IResultHandler {\n private readonly mimeType: string;\n\n public constructor(mimeType: string) {\n this.mimeType = mimeType;\n }\n\n public async processResult(result: string, _req: Express.Request, res: Response): Promise<void> {\n res.header(\"Content-Type\", this.mimeType);\n res.send(result.trim());\n }\n}\n"],"mappings":";;;;;;AAIO,MAAMA,0BAA0B,CAA2B;EAGvDC,WAAWA,CAACC,QAAgB,EAAE;IAAA,KAFpBA,QAAQ;IAGrB,IAAI,CAACA,QAAQ,GAAGA,QAAQ;EAC5B;EAEA,MAAaC,aAAaA,CAACC,MAAc,EAAEC,IAAqB,EAAEC,GAAa,EAAiB;IAC5FA,GAAG,CAACC,MAAM,CAAC,cAAc,EAAE,IAAI,CAACL,QAAQ,CAAC;IACzCI,GAAG,CAACE,IAAI,CAACJ,MAAM,CAACK,IAAI,CAAC,CAAC,CAAC;EAC3B;AACJ;AAACC,OAAA,CAAAV,0BAAA,GAAAA,0BAAA","ignoreList":[]}
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.EmptyResultHandler = void 0;
7
7
  class EmptyResultHandler {
8
- async processResult(result, req, res) {
8
+ async processResult(_result, _req, res) {
9
9
  res.end();
10
10
  }
11
11
  }
@@ -1 +1 @@
1
- {"version":3,"file":"EmptyResultHandler.js","names":["EmptyResultHandler","processResult","result","req","res","end","exports"],"sources":["../../../../../../../src/Commons/HttpServer/AttributeRouting/Results/EmptyResultHandler.ts"],"sourcesContent":["import { Response } from \"express\";\n\nimport { IResultHandler } from \"./IResultHandler\";\n\nexport class EmptyResultHandler implements IResultHandler {\n public async processResult(result: unknown, req: Express.Request, res: Response): Promise<void> {\n res.end();\n }\n}\n"],"mappings":";;;;;;AAIO,MAAMA,kBAAkB,CAA2B;EACtD,MAAaC,aAAaA,CAACC,MAAe,EAAEC,GAAoB,EAAEC,GAAa,EAAiB;IAC5FA,GAAG,CAACC,GAAG,CAAC,CAAC;EACb;AACJ;AAACC,OAAA,CAAAN,kBAAA,GAAAA,kBAAA","ignoreList":[]}
1
+ {"version":3,"file":"EmptyResultHandler.js","names":["EmptyResultHandler","processResult","_result","_req","res","end","exports"],"sources":["../../../../../../../src/Commons/HttpServer/AttributeRouting/Results/EmptyResultHandler.ts"],"sourcesContent":["import { Response } from \"express\";\n\nimport { IResultHandler } from \"./IResultHandler\";\n\nexport class EmptyResultHandler implements IResultHandler {\n public async processResult(_result: unknown, _req: Express.Request, res: Response): Promise<void> {\n res.end();\n }\n}\n"],"mappings":";;;;;;AAIO,MAAMA,kBAAkB,CAA2B;EACtD,MAAaC,aAAaA,CAACC,OAAgB,EAAEC,IAAqB,EAAEC,GAAa,EAAiB;IAC9FA,GAAG,CAACC,GAAG,CAAC,CAAC;EACb;AACJ;AAACC,OAAA,CAAAN,kBAAA,GAAAA,kBAAA","ignoreList":[]}
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.HtmlResultHandler = void 0;
7
7
  class HtmlResultHandler {
8
- async processResult(result, req, res) {
8
+ async processResult(result, _req, res) {
9
9
  res.send(result.trim());
10
10
  }
11
11
  }
@@ -1 +1 @@
1
- {"version":3,"file":"HtmlResultHandler.js","names":["HtmlResultHandler","processResult","result","req","res","send","trim","exports"],"sources":["../../../../../../../src/Commons/HttpServer/AttributeRouting/Results/HtmlResultHandler.ts"],"sourcesContent":["import { Response } from \"express\";\n\nimport { IResultHandler } from \"./IResultHandler\";\n\nexport class HtmlResultHandler implements IResultHandler {\n public async processResult(result: string, req: Express.Request, res: Response): Promise<void> {\n res.send(result.trim());\n }\n}\n"],"mappings":";;;;;;AAIO,MAAMA,iBAAiB,CAA2B;EACrD,MAAaC,aAAaA,CAACC,MAAc,EAAEC,GAAoB,EAAEC,GAAa,EAAiB;IAC3FA,GAAG,CAACC,IAAI,CAACH,MAAM,CAACI,IAAI,CAAC,CAAC,CAAC;EAC3B;AACJ;AAACC,OAAA,CAAAP,iBAAA,GAAAA,iBAAA","ignoreList":[]}
1
+ {"version":3,"file":"HtmlResultHandler.js","names":["HtmlResultHandler","processResult","result","_req","res","send","trim","exports"],"sources":["../../../../../../../src/Commons/HttpServer/AttributeRouting/Results/HtmlResultHandler.ts"],"sourcesContent":["import { Response } from \"express\";\n\nimport { IResultHandler } from \"./IResultHandler\";\n\nexport class HtmlResultHandler implements IResultHandler {\n public async processResult(result: string, _req: Express.Request, res: Response): Promise<void> {\n res.send(result.trim());\n }\n}\n"],"mappings":";;;;;;AAIO,MAAMA,iBAAiB,CAA2B;EACrD,MAAaC,aAAaA,CAACC,MAAc,EAAEC,IAAqB,EAAEC,GAAa,EAAiB;IAC5FA,GAAG,CAACC,IAAI,CAACH,MAAM,CAACI,IAAI,CAAC,CAAC,CAAC;EAC3B;AACJ;AAACC,OAAA,CAAAP,iBAAA,GAAAA,iBAAA","ignoreList":[]}