trm-core 9.10.5 → 10.0.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 (384) hide show
  1. package/README.md +20 -0
  2. package/changelog.txt +3 -2
  3. package/dist/actions/cg3y/download.js +34 -4
  4. package/dist/actions/cg3y/index.d.ts +23 -0
  5. package/dist/actions/cg3y/index.js +13 -10
  6. package/dist/actions/cg3z/index.d.ts +67 -3
  7. package/dist/actions/cg3z/index.js +25 -14
  8. package/dist/actions/cg3z/upload.d.ts +20 -0
  9. package/dist/actions/cg3z/upload.js +165 -36
  10. package/dist/actions/checkEngines/analyze.d.ts +11 -0
  11. package/dist/actions/checkEngines/analyze.js +294 -0
  12. package/dist/actions/checkEngines/index.d.ts +87 -0
  13. package/dist/actions/checkEngines/index.js +38 -0
  14. package/dist/actions/checkEngines/init.d.ts +11 -0
  15. package/dist/actions/checkEngines/init.js +45 -0
  16. package/dist/actions/checkPackageDependencies/analyze.d.ts +10 -0
  17. package/dist/actions/checkPackageDependencies/analyze.js +37 -39
  18. package/dist/actions/checkPackageDependencies/index.d.ts +56 -0
  19. package/dist/actions/checkPackageDependencies/index.js +13 -10
  20. package/dist/actions/checkPackageDependencies/init.d.ts +8 -0
  21. package/dist/actions/checkPackageDependencies/init.js +24 -2
  22. package/dist/actions/checkSapEntries/analyze.d.ts +12 -0
  23. package/dist/actions/checkSapEntries/analyze.js +63 -47
  24. package/dist/actions/checkSapEntries/index.d.ts +35 -0
  25. package/dist/actions/checkSapEntries/index.js +12 -10
  26. package/dist/actions/checkSapEntries/init.d.ts +8 -0
  27. package/dist/actions/checkSapEntries/init.js +10 -2
  28. package/dist/actions/commons/IActionContext.d.ts +10 -0
  29. package/dist/actions/commons/checkServerAuth.d.ts +7 -0
  30. package/dist/actions/commons/checkServerAuth.js +10 -5
  31. package/dist/actions/commons/index.d.ts +1 -1
  32. package/dist/actions/commons/index.js +1 -1
  33. package/dist/actions/commons/prompts/index.d.ts +1 -0
  34. package/dist/actions/commons/prompts/index.js +1 -0
  35. package/dist/actions/commons/prompts/setLandscapeTarget.d.ts +14 -0
  36. package/dist/actions/commons/prompts/setLandscapeTarget.js +40 -0
  37. package/dist/actions/commons/prompts/setTransportTarget.d.ts +15 -0
  38. package/dist/actions/commons/prompts/setTransportTarget.js +20 -2
  39. package/dist/actions/commons/setSystemPackages.d.ts +7 -0
  40. package/dist/actions/commons/setSystemPackages.js +12 -2
  41. package/dist/actions/commons/utils/actionLocks.d.ts +32 -0
  42. package/dist/actions/commons/utils/actionLocks.js +135 -0
  43. package/dist/actions/commons/utils/dirtyEntries.d.ts +12 -0
  44. package/dist/actions/commons/utils/dirtyEntries.js +54 -0
  45. package/dist/actions/commons/utils/index.d.ts +10 -0
  46. package/dist/actions/commons/utils/index.js +26 -0
  47. package/dist/actions/commons/utils/installRegistry.d.ts +18 -0
  48. package/dist/actions/commons/utils/installRegistry.js +46 -0
  49. package/dist/actions/commons/utils/installedDependency.d.ts +15 -0
  50. package/dist/actions/commons/utils/installedDependency.js +30 -0
  51. package/dist/actions/commons/utils/owningInstallation.d.ts +6 -0
  52. package/dist/actions/commons/utils/owningInstallation.js +47 -0
  53. package/dist/actions/commons/utils/packageCleanup.d.ts +168 -0
  54. package/dist/actions/commons/utils/packageCleanup.js +1017 -0
  55. package/dist/actions/commons/utils/releaseDeletionTransport.d.ts +5 -0
  56. package/dist/actions/commons/utils/releaseDeletionTransport.js +67 -0
  57. package/dist/actions/commons/utils/restoreTransport.d.ts +6 -0
  58. package/dist/actions/commons/utils/restoreTransport.js +50 -0
  59. package/dist/actions/commons/utils/retainedWorkflow.d.ts +6 -0
  60. package/dist/actions/commons/utils/retainedWorkflow.js +49 -0
  61. package/dist/actions/commons/utils/withScopedPrefix.d.ts +5 -0
  62. package/dist/actions/commons/utils/withScopedPrefix.js +32 -0
  63. package/dist/actions/commons/workflowCallbacks.d.ts +21 -0
  64. package/dist/actions/commons/workflowCallbacks.js +157 -0
  65. package/dist/actions/index.d.ts +3 -0
  66. package/dist/actions/index.js +5 -0
  67. package/dist/actions/install/addNamespace.d.ts +18 -0
  68. package/dist/actions/install/addNamespace.js +121 -51
  69. package/dist/actions/install/checkDependants.d.ts +15 -0
  70. package/dist/actions/install/checkDependants.js +74 -0
  71. package/dist/actions/install/checkDependencies.d.ts +11 -0
  72. package/dist/actions/install/checkDependencies.js +32 -13
  73. package/dist/actions/install/checkDependencyCycles.d.ts +17 -0
  74. package/dist/actions/install/checkDependencyCycles.js +105 -0
  75. package/dist/actions/install/checkEngines.d.ts +11 -0
  76. package/dist/actions/install/checkEngines.js +100 -0
  77. package/dist/actions/install/checkInstallDevclass.d.ts +24 -0
  78. package/dist/actions/install/checkInstallDevclass.js +110 -0
  79. package/dist/actions/install/checkSapEntries.d.ts +9 -0
  80. package/dist/actions/install/checkSapEntries.js +20 -12
  81. package/dist/actions/install/checkTransports.d.ts +34 -0
  82. package/dist/actions/install/checkTransports.js +329 -170
  83. package/dist/actions/install/cleanupCheckpoint.d.ts +11 -0
  84. package/dist/actions/install/cleanupCheckpoint.js +62 -0
  85. package/dist/actions/install/defaultTransportLayer.d.ts +5 -0
  86. package/dist/actions/install/defaultTransportLayer.js +36 -0
  87. package/dist/actions/install/executePostActivities.d.ts +6 -0
  88. package/dist/actions/install/executePostActivities.js +28 -38
  89. package/dist/actions/install/generateDevclass.d.ts +10 -0
  90. package/dist/actions/install/generateDevclass.js +66 -20
  91. package/dist/actions/install/generateLandscapeTransport.d.ts +23 -0
  92. package/dist/actions/install/generateLandscapeTransport.js +136 -0
  93. package/dist/actions/install/generateUpdateTransport.d.ts +20 -0
  94. package/dist/actions/install/generateUpdateTransport.js +122 -0
  95. package/dist/actions/install/importBatch.d.ts +22 -0
  96. package/dist/actions/install/importBatch.js +0 -0
  97. package/dist/actions/install/index.d.ts +273 -44
  98. package/dist/actions/install/index.js +139 -59
  99. package/dist/actions/install/init.d.ts +14 -0
  100. package/dist/actions/install/init.js +215 -108
  101. package/dist/actions/install/installDependencies.d.ts +14 -0
  102. package/dist/actions/install/installDependencies.js +122 -45
  103. package/dist/actions/install/lockResources.d.ts +8 -0
  104. package/dist/actions/install/lockResources.js +100 -0
  105. package/dist/actions/install/prepareCust.d.ts +13 -0
  106. package/dist/actions/install/prepareCust.js +138 -0
  107. package/dist/actions/install/prepareDevc.d.ts +15 -0
  108. package/dist/actions/install/prepareDevc.js +113 -0
  109. package/dist/actions/install/prepareLang.d.ts +13 -0
  110. package/dist/actions/install/prepareLang.js +110 -0
  111. package/dist/actions/install/prepareTadir.d.ts +13 -0
  112. package/dist/actions/install/prepareTadir.js +95 -0
  113. package/dist/actions/install/releaseLandscapeTransport.d.ts +11 -0
  114. package/dist/actions/install/releaseLandscapeTransport.js +79 -0
  115. package/dist/actions/install/setInstallDevclass.d.ts +10 -0
  116. package/dist/actions/install/setInstallDevclass.js +140 -54
  117. package/dist/actions/install/updatePackageData.d.ts +9 -0
  118. package/dist/actions/install/updatePackageData.js +117 -13
  119. package/dist/actions/installDependency/checkInstalledRelease.d.ts +13 -0
  120. package/dist/actions/installDependency/checkInstalledRelease.js +50 -0
  121. package/dist/actions/installDependency/confirmDowngrade.d.ts +11 -0
  122. package/dist/actions/installDependency/confirmDowngrade.js +53 -0
  123. package/dist/actions/installDependency/findInstallRelease.d.ts +24 -0
  124. package/dist/actions/installDependency/findInstallRelease.js +42 -19
  125. package/dist/actions/installDependency/index.d.ts +64 -3
  126. package/dist/actions/installDependency/index.js +30 -13
  127. package/dist/actions/installDependency/init.d.ts +14 -0
  128. package/dist/actions/installDependency/init.js +24 -3
  129. package/dist/actions/installDependency/installRelease.d.ts +6 -0
  130. package/dist/actions/installDependency/installRelease.js +22 -12
  131. package/dist/actions/publish/enginesUi.d.ts +53 -0
  132. package/dist/actions/publish/enginesUi.js +289 -0
  133. package/dist/actions/publish/findDependencies.d.ts +19 -0
  134. package/dist/actions/publish/findDependencies.js +72 -37
  135. package/dist/actions/publish/generateCustTransport.d.ts +6 -0
  136. package/dist/actions/publish/generateCustTransport.js +42 -19
  137. package/dist/actions/publish/generateDevcTransport.d.ts +6 -0
  138. package/dist/actions/publish/generateDevcTransport.js +16 -18
  139. package/dist/actions/publish/generateLangTransport.d.ts +6 -0
  140. package/dist/actions/publish/generateLangTransport.js +20 -23
  141. package/dist/actions/publish/generateTadirTransport.d.ts +6 -0
  142. package/dist/actions/publish/generateTadirTransport.js +18 -17
  143. package/dist/actions/publish/getSystemEngines.d.ts +27 -0
  144. package/dist/actions/publish/getSystemEngines.js +112 -0
  145. package/dist/actions/publish/index.d.ts +162 -37
  146. package/dist/actions/publish/index.js +51 -34
  147. package/dist/actions/publish/init.d.ts +28 -0
  148. package/dist/actions/publish/init.js +304 -120
  149. package/dist/actions/publish/lockResources.d.ts +4 -0
  150. package/dist/actions/{install/refreshTmsTxt.js → publish/lockResources.js} +14 -17
  151. package/dist/actions/publish/publishToRegistry.d.ts +8 -0
  152. package/dist/actions/publish/publishToRegistry.js +18 -8
  153. package/dist/actions/publish/releaseTransports.d.ts +6 -0
  154. package/dist/actions/publish/releaseTransports.js +48 -20
  155. package/dist/actions/publish/setCustomizingTransports.d.ts +6 -0
  156. package/dist/actions/publish/setCustomizingTransports.js +227 -101
  157. package/dist/actions/publish/setManifestValues.d.ts +22 -0
  158. package/dist/actions/publish/setManifestValues.js +455 -119
  159. package/dist/actions/publish/setOptionalPublishData.d.ts +11 -0
  160. package/dist/actions/publish/setOptionalPublishData.js +133 -0
  161. package/dist/actions/publish/updatePackageData.d.ts +8 -0
  162. package/dist/actions/publish/updatePackageData.js +20 -7
  163. package/dist/actions/stopWarning.d.ts +5 -0
  164. package/dist/actions/stopWarning.js +5 -0
  165. package/dist/actions/uninstall/checkDependants.d.ts +7 -0
  166. package/dist/actions/uninstall/checkDependants.js +55 -0
  167. package/dist/actions/uninstall/forwardDeletionTransport.d.ts +10 -0
  168. package/dist/actions/uninstall/forwardDeletionTransport.js +51 -0
  169. package/dist/actions/uninstall/generateDeletionTransport.d.ts +10 -0
  170. package/dist/actions/uninstall/generateDeletionTransport.js +45 -0
  171. package/dist/actions/uninstall/index.d.ts +153 -0
  172. package/dist/actions/uninstall/index.js +141 -0
  173. package/dist/actions/uninstall/init.d.ts +17 -0
  174. package/dist/actions/uninstall/init.js +146 -0
  175. package/dist/actions/uninstall/lockResources.d.ts +4 -0
  176. package/dist/actions/{publish/setTransportTarget.js → uninstall/lockResources.js} +16 -7
  177. package/dist/actions/uninstall/removePackageData.d.ts +9 -0
  178. package/dist/actions/uninstall/removePackageData.js +64 -0
  179. package/dist/actions/uninstall/uninstallNestedPackages.d.ts +26 -0
  180. package/dist/actions/uninstall/uninstallNestedPackages.js +174 -0
  181. package/dist/client/ClientError.d.ts +3 -1
  182. package/dist/client/ClientError.js +2 -1
  183. package/dist/client/RESTClient.d.ts +18 -5
  184. package/dist/client/RESTClient.js +194 -56
  185. package/dist/client/RESTClientError.d.ts +1 -2
  186. package/dist/client/RESTClientError.js +3 -2
  187. package/dist/client/RFCClient.d.ts +28 -7
  188. package/dist/client/RFCClient.js +325 -77
  189. package/dist/client/RFCClientError.d.ts +1 -1
  190. package/dist/client/RFCClientError.js +2 -2
  191. package/dist/client/TransportEntries.d.ts +8 -0
  192. package/dist/client/TransportEntries.js +2 -0
  193. package/dist/client/components/BORM_ID.d.ts +1 -0
  194. package/dist/client/components/BORM_ID.js +2 -0
  195. package/dist/client/components/BORM_NAME.d.ts +1 -0
  196. package/dist/client/components/BORM_NAME.js +2 -0
  197. package/dist/client/components/BORM_NAMEL.d.ts +1 -0
  198. package/dist/client/components/BORM_NAMEL.js +2 -0
  199. package/dist/client/components/BORM_VEND.d.ts +1 -0
  200. package/dist/client/components/BORM_VEND.js +2 -0
  201. package/dist/client/components/BORM_VERS.d.ts +1 -0
  202. package/dist/client/components/BORM_VERS.js +2 -0
  203. package/dist/client/components/CWBNTNUMM.d.ts +1 -0
  204. package/dist/client/components/CWBNTNUMM.js +2 -0
  205. package/dist/client/components/CWBNTSTAT.d.ts +1 -0
  206. package/dist/client/components/CWBNTSTAT.js +2 -0
  207. package/dist/client/components/CWBNTVERS.d.ts +1 -0
  208. package/dist/client/components/CWBNTVERS.js +2 -0
  209. package/dist/client/components/CWBPRSTAT.d.ts +1 -0
  210. package/dist/client/components/CWBPRSTAT.js +2 -0
  211. package/dist/client/components/INSTSTATE.d.ts +1 -0
  212. package/dist/client/components/INSTSTATE.js +2 -0
  213. package/dist/client/components/RELC_TYPE.d.ts +1 -0
  214. package/dist/client/components/RELC_TYPE.js +2 -0
  215. package/dist/client/components/SAPPATCHLV.d.ts +1 -0
  216. package/dist/client/components/SAPPATCHLV.js +2 -0
  217. package/dist/client/components/SAPRELEASE.d.ts +1 -0
  218. package/dist/client/components/SAPRELEASE.js +2 -0
  219. package/dist/client/components/SYSYSID.d.ts +1 -0
  220. package/dist/client/components/SYSYSID.js +2 -0
  221. package/dist/client/components/ZTRM_INSTALLTR_TYPE.d.ts +1 -0
  222. package/dist/client/components/ZTRM_INSTALLTR_TYPE.js +2 -0
  223. package/dist/client/components/index.d.ts +15 -0
  224. package/dist/client/components/index.js +15 -0
  225. package/dist/client/index.d.ts +1 -0
  226. package/dist/client/index.js +1 -0
  227. package/dist/client/messageLog.d.ts +7 -0
  228. package/dist/client/messageLog.js +21 -0
  229. package/dist/client/struct/ActionLockKey.d.ts +6 -0
  230. package/dist/client/struct/ActionLockKey.js +2 -0
  231. package/dist/client/struct/CVERS.d.ts +7 -0
  232. package/dist/client/struct/CVERS.js +2 -0
  233. package/dist/client/struct/CWBNTCUST.d.ts +6 -0
  234. package/dist/client/struct/CWBNTCUST.js +2 -0
  235. package/dist/client/struct/CWBNTHEAD.d.ts +5 -0
  236. package/dist/client/struct/CWBNTHEAD.js +2 -0
  237. package/dist/client/struct/E070.d.ts +2 -1
  238. package/dist/client/struct/E071K.d.ts +9 -0
  239. package/dist/client/struct/E071K.js +2 -0
  240. package/dist/client/struct/PRDVERS.d.ts +9 -0
  241. package/dist/client/struct/PRDVERS.js +2 -0
  242. package/dist/client/struct/SCOMPKDTLN.d.ts +21 -0
  243. package/dist/client/struct/STMSCALERT.d.ts +21 -0
  244. package/dist/client/struct/STMSCALERT.js +2 -0
  245. package/dist/client/struct/STMS_TP_IMPORT.d.ts +14 -0
  246. package/dist/client/struct/STMS_TP_IMPORT.js +2 -0
  247. package/dist/client/struct/STMS_TR_REQUEST.d.ts +8 -0
  248. package/dist/client/struct/STMS_TR_REQUEST.js +2 -0
  249. package/dist/client/struct/TDEVC.d.ts +38 -0
  250. package/dist/client/struct/TPLOGPTR.d.ts +13 -0
  251. package/dist/client/struct/TPLOGPTR.js +2 -0
  252. package/dist/client/struct/TPSTDOUT.d.ts +3 -0
  253. package/dist/client/struct/TPSTDOUT.js +2 -0
  254. package/dist/client/struct/ZTRM_INSTALLTR.d.ts +8 -0
  255. package/dist/client/struct/ZTRM_INSTALLTR.js +2 -0
  256. package/dist/client/struct/index.d.ts +12 -0
  257. package/dist/client/struct/index.js +12 -0
  258. package/dist/commons/checkCoreTrmDependencies.js +1 -1
  259. package/dist/commons/getAxiosInstance.js +8 -17
  260. package/dist/commons/getNodePackage.js +7 -0
  261. package/dist/commons/getPackageHierarchy.js +2 -0
  262. package/dist/commons/getPackagesNamespace.d.ts +9 -0
  263. package/dist/commons/getPackagesNamespace.js +19 -0
  264. package/dist/commons/index.d.ts +4 -0
  265. package/dist/commons/index.js +4 -0
  266. package/dist/commons/packageDataFromTdevc.d.ts +12 -0
  267. package/dist/commons/packageDataFromTdevc.js +25 -0
  268. package/dist/commons/resolveCoreVersion.d.ts +10 -0
  269. package/dist/commons/resolveCoreVersion.js +24 -0
  270. package/dist/commons/summarizeForLog.d.ts +22 -0
  271. package/dist/commons/summarizeForLog.js +120 -0
  272. package/dist/connection/OpenRFCConnect.d.ts +13 -0
  273. package/dist/connection/OpenRFCConnect.js +23 -0
  274. package/dist/connection/index.d.ts +1 -0
  275. package/dist/connection/index.js +17 -0
  276. package/dist/dependencies/PackageDependencies.d.ts +2 -0
  277. package/dist/dependencies/PackageDependencies.js +24 -0
  278. package/dist/index.d.ts +1 -0
  279. package/dist/index.js +1 -0
  280. package/dist/lockfile/Lockfile.d.ts +23 -1
  281. package/dist/lockfile/Lockfile.js +45 -9
  282. package/dist/manifest/Manifest.d.ts +9 -5
  283. package/dist/manifest/Manifest.js +82 -29
  284. package/dist/manifest/PostActivity.js +3 -3
  285. package/dist/manifest/TrmManifest.d.ts +0 -2
  286. package/dist/manifest/TrmManifestBase.d.ts +2 -0
  287. package/dist/manifest/TrmManifestEngines.d.ts +64 -0
  288. package/dist/manifest/TrmManifestEngines.js +2 -0
  289. package/dist/manifest/engines/index.d.ts +2 -0
  290. package/dist/manifest/engines/index.js +18 -0
  291. package/dist/manifest/engines/sapRange.d.ts +38 -0
  292. package/dist/manifest/engines/sapRange.js +135 -0
  293. package/dist/manifest/engines/validateEngines.d.ts +44 -0
  294. package/dist/manifest/engines/validateEngines.js +282 -0
  295. package/dist/manifest/index.d.ts +3 -0
  296. package/dist/manifest/index.js +3 -0
  297. package/dist/manifest/sapEntries.d.ts +14 -0
  298. package/dist/manifest/sapEntries.js +63 -0
  299. package/dist/protocol/Protocol.js +7 -0
  300. package/dist/registry/AbstractRegistry.d.ts +18 -3
  301. package/dist/registry/FileSystem.d.ts +22 -13
  302. package/dist/registry/FileSystem.js +69 -18
  303. package/dist/registry/RegistryDeletionTransportUnauthorizedError.d.ts +4 -0
  304. package/dist/registry/RegistryDeletionTransportUnauthorizedError.js +12 -0
  305. package/dist/registry/RegistryDeletionTransportUnavailableError.d.ts +9 -0
  306. package/dist/registry/RegistryDeletionTransportUnavailableError.js +17 -0
  307. package/dist/registry/RegistryPackageNotFoundError.d.ts +7 -0
  308. package/dist/registry/RegistryPackageNotFoundError.js +14 -0
  309. package/dist/registry/RegistryV2.d.ts +15 -5
  310. package/dist/registry/RegistryV2.js +308 -48
  311. package/dist/registry/index.d.ts +4 -0
  312. package/dist/registry/index.js +4 -0
  313. package/dist/registry/registryKey.d.ts +7 -0
  314. package/dist/registry/registryKey.js +21 -0
  315. package/dist/systemConnector/ActionLock.d.ts +1 -0
  316. package/dist/systemConnector/ActionLock.js +2 -0
  317. package/dist/systemConnector/ISystemConnector.d.ts +21 -4
  318. package/dist/systemConnector/ISystemConnectorBase.d.ts +16 -0
  319. package/dist/systemConnector/InstallTransport.d.ts +6 -0
  320. package/dist/systemConnector/InstallTransport.js +2 -0
  321. package/dist/systemConnector/OpenRFCSystemConnector.d.ts +12 -0
  322. package/dist/systemConnector/OpenRFCSystemConnector.js +51 -0
  323. package/dist/systemConnector/RESTSystemConnector.d.ts +22 -7
  324. package/dist/systemConnector/RESTSystemConnector.js +95 -23
  325. package/dist/systemConnector/RFCConnection.d.ts +0 -1
  326. package/dist/systemConnector/RFCSystemConnector.d.ts +25 -7
  327. package/dist/systemConnector/RFCSystemConnector.js +75 -16
  328. package/dist/systemConnector/SystemConnector.d.ts +38 -6
  329. package/dist/systemConnector/SystemConnector.js +138 -12
  330. package/dist/systemConnector/SystemConnectorBase.d.ts +24 -1
  331. package/dist/systemConnector/SystemConnectorBase.js +174 -22
  332. package/dist/systemConnector/index.d.ts +3 -0
  333. package/dist/systemConnector/index.js +3 -0
  334. package/dist/transport/E071KOwner.d.ts +10 -0
  335. package/dist/transport/E071KOwner.js +15 -0
  336. package/dist/transport/R3transLogParser.d.ts +19 -0
  337. package/dist/transport/R3transLogParser.js +148 -0
  338. package/dist/transport/Transport.d.ts +36 -3
  339. package/dist/transport/Transport.js +304 -138
  340. package/dist/transport/index.d.ts +2 -0
  341. package/dist/transport/index.js +2 -0
  342. package/dist/trmPackage/TransportBinary.d.ts +4 -1
  343. package/dist/trmPackage/TrmArtifact.d.ts +12 -8
  344. package/dist/trmPackage/TrmArtifact.js +93 -74
  345. package/dist/trmPackage/TrmPackage.d.ts +20 -6
  346. package/dist/trmPackage/TrmPackage.js +27 -1
  347. package/dist/validators/validateDevclass.js +4 -0
  348. package/package.json +15 -7
  349. package/dist/actions/commons/trmServerPa.d.ts +0 -3
  350. package/dist/actions/commons/trmServerPa.js +0 -40
  351. package/dist/actions/install/checkAlreadyInstalled.d.ts +0 -3
  352. package/dist/actions/install/checkAlreadyInstalled.js +0 -71
  353. package/dist/actions/install/checkObjectTypes.d.ts +0 -3
  354. package/dist/actions/install/checkObjectTypes.js +0 -50
  355. package/dist/actions/install/checkObjectsLock.d.ts +0 -3
  356. package/dist/actions/install/checkObjectsLock.js +0 -52
  357. package/dist/actions/install/generateInstallTransports.d.ts +0 -3
  358. package/dist/actions/install/generateInstallTransports.js +0 -128
  359. package/dist/actions/install/importCustTransport.d.ts +0 -3
  360. package/dist/actions/install/importCustTransport.js +0 -73
  361. package/dist/actions/install/importDevcTransport.d.ts +0 -3
  362. package/dist/actions/install/importDevcTransport.js +0 -93
  363. package/dist/actions/install/importLangTransport.d.ts +0 -3
  364. package/dist/actions/install/importLangTransport.js +0 -72
  365. package/dist/actions/install/importTadirTransport.d.ts +0 -3
  366. package/dist/actions/install/importTadirTransport.js +0 -83
  367. package/dist/actions/install/readDevc.d.ts +0 -3
  368. package/dist/actions/install/readDevc.js +0 -33
  369. package/dist/actions/install/readTadir.d.ts +0 -3
  370. package/dist/actions/install/readTadir.js +0 -101
  371. package/dist/actions/install/refreshTmsTxt.d.ts +0 -3
  372. package/dist/actions/install/releaseInstallTransport.d.ts +0 -3
  373. package/dist/actions/install/releaseInstallTransport.js +0 -80
  374. package/dist/actions/publish/checkAllObjectsReleased.d.ts +0 -3
  375. package/dist/actions/publish/checkAllObjectsReleased.js +0 -46
  376. package/dist/actions/publish/getSourceCode.d.ts +0 -3
  377. package/dist/actions/publish/getSourceCode.js +0 -49
  378. package/dist/actions/publish/setChangelog.d.ts +0 -3
  379. package/dist/actions/publish/setChangelog.js +0 -69
  380. package/dist/actions/publish/setDevclass.d.ts +0 -3
  381. package/dist/actions/publish/setDevclass.js +0 -74
  382. package/dist/actions/publish/setReadme.d.ts +0 -3
  383. package/dist/actions/publish/setReadme.js +0 -52
  384. package/dist/actions/publish/setTransportTarget.d.ts +0 -3
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.confirmDowngrade = void 0;
13
+ const trm_commons_1 = require("trm-commons");
14
+ const semver_1 = require("semver");
15
+ /**
16
+ * Workflow step that requires explicit confirmation before a dependency install replaces a newer
17
+ * installed release. `installData.checks.allowDowngrade` confirms it in advance; otherwise the
18
+ * user is prompted, and without a prompt the install is aborted.
19
+ *
20
+ * 1- confirm downgrade
21
+ *
22
+ */
23
+ exports.confirmDowngrade = {
24
+ name: 'confirm-downgrade',
25
+ filter: (context) => __awaiter(void 0, void 0, void 0, function* () {
26
+ return !context.runtime.alreadyInstalled
27
+ && !!context.runtime.installedVersion
28
+ && (0, semver_1.lt)(context.runtime.installVersion, context.runtime.installedVersion);
29
+ }),
30
+ run: (context) => __awaiter(void 0, void 0, void 0, function* () {
31
+ //1- confirm downgrade
32
+ const dependencyName = context.rawInput.dependencyDataPackage.name;
33
+ const versionRange = context.rawInput.dependencyDataPackage.versionRange;
34
+ const installedVersion = context.runtime.installedVersion;
35
+ const installVersion = context.runtime.installVersion;
36
+ trm_commons_1.Logger.warning(`Dependency "${dependencyName}" v${installedVersion} is installed, but ${versionRange} requires a downgrade to v${installVersion}.`, { important: true });
37
+ if (context.rawInput.installData.checks.allowDowngrade) {
38
+ return;
39
+ }
40
+ let confirmDowngrade = false;
41
+ if (!context.rawInput.contextData.noInquirer) {
42
+ confirmDowngrade = (yield trm_commons_1.Inquirer.prompt({
43
+ type: 'confirm',
44
+ default: false,
45
+ message: `Downgrade "${dependencyName}" from v${installedVersion} to v${installVersion}?`,
46
+ name: 'confirmDowngrade'
47
+ })).confirmDowngrade;
48
+ }
49
+ if (!confirmDowngrade) {
50
+ throw new Error(`Install aborted. Dependency "${dependencyName}" v${installedVersion} would be downgraded to v${installVersion}. If you wish to downgrade, rerun install with downgrade allowed.`);
51
+ }
52
+ })
53
+ };
@@ -1,3 +1,27 @@
1
1
  import { Step } from "@simonegaffurini/sammarksworkflow";
2
2
  import { InstallDependencyWorkflowContext } from ".";
3
+ import { Lock, Lockfile } from "../../lockfile";
4
+ import { AbstractRegistry } from "../../registry";
5
+ import { TrmPackage } from "../../trmPackage";
6
+ /**
7
+ * Selects the dependency release a dependency install would use: the lockfile entry when the
8
+ * lockfile has one, otherwise the newest registry release satisfying the range.
9
+ * The lock integrity is not verified here.
10
+ * @throws When the lockfile entry is outside the range, or no registry release satisfies it.
11
+ */
12
+ export declare function selectDependencyRelease(trmPackage: TrmPackage, registry: AbstractRegistry, versionRange: string, lockfile?: Lockfile): Promise<{
13
+ version: string;
14
+ lock?: Lock;
15
+ }>;
16
+ /**
17
+ * Workflow step that selects the dependency release to install.
18
+ * If a lockfile entry exists, its integrity is verified and its version is used; otherwise,
19
+ * including when the lockfile has no entry for the dependency, the newest registry release
20
+ * satisfying the requested semantic-version range is selected.
21
+ * Registry prereleases are selected only when the range opts in (semver default); installed and
22
+ * locked prereleases are matched with `includePrerelease`.
23
+ *
24
+ * 1- find version
25
+ *
26
+ */
3
27
  export declare const findInstallRelease: Step<InstallDependencyWorkflowContext>;
@@ -10,33 +10,56 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.findInstallRelease = void 0;
13
+ exports.selectDependencyRelease = selectDependencyRelease;
13
14
  const trm_commons_1 = require("trm-commons");
14
15
  const semver_sort_1 = require("semver-sort");
15
16
  const semver_1 = require("semver");
16
17
  const lockfile_1 = require("../../lockfile");
18
+ /**
19
+ * Selects the dependency release a dependency install would use: the lockfile entry when the
20
+ * lockfile has one, otherwise the newest registry release satisfying the range.
21
+ * The lock integrity is not verified here.
22
+ * @throws When the lockfile entry is outside the range, or no registry release satisfies it.
23
+ */
24
+ function selectDependencyRelease(trmPackage, registry, versionRange, lockfile) {
25
+ return __awaiter(this, void 0, void 0, function* () {
26
+ const lock = lockfile === null || lockfile === void 0 ? void 0 : lockfile.getLock(trmPackage, versionRange);
27
+ if (lock) {
28
+ return { version: lock.version, lock };
29
+ }
30
+ const packageData = yield registry.getPackage(trmPackage.packageName, 'latest');
31
+ const versions = packageData.versions.filter(v => (0, semver_1.satisfies)(v, versionRange));
32
+ if (versions.length === 0) {
33
+ throw new Error(`Dependency "${trmPackage.packageName}": releases not found in range ${versionRange}.`);
34
+ }
35
+ return { version: (0, semver_sort_1.desc)(versions)[0] };
36
+ });
37
+ }
38
+ /**
39
+ * Workflow step that selects the dependency release to install.
40
+ * If a lockfile entry exists, its integrity is verified and its version is used; otherwise,
41
+ * including when the lockfile has no entry for the dependency, the newest registry release
42
+ * satisfying the requested semantic-version range is selected.
43
+ * Registry prereleases are selected only when the range opts in (semver default); installed and
44
+ * locked prereleases are matched with `includePrerelease`.
45
+ *
46
+ * 1- find version
47
+ *
48
+ */
17
49
  exports.findInstallRelease = {
18
50
  name: 'find-install-release',
51
+ filter: (context) => __awaiter(void 0, void 0, void 0, function* () { return !context.runtime.alreadyInstalled; }),
19
52
  run: (context) => __awaiter(void 0, void 0, void 0, function* () {
20
- trm_commons_1.Logger.log('Find install release step', true);
21
- const lock = context.rawInput.installData.checks.lockfile ? context.rawInput.installData.checks.lockfile.getLock(context.runtime.trmPackage, context.rawInput.dependencyDataPackage.versionRange) : null;
22
- if (lock) {
23
- const testLock = yield lockfile_1.Lockfile.testReleaseByLock(lock);
24
- if (!testLock) {
25
- throw new Error(`Cannot continue due to security issues.`);
26
- }
27
- else {
28
- context.runtime.installVersion = lock.version;
29
- }
53
+ var _a;
54
+ //1- find version
55
+ const release = yield selectDependencyRelease(context.runtime.trmPackage, context.rawInput.dependencyDataPackage.registry, context.rawInput.dependencyDataPackage.versionRange, context.rawInput.installData.checks.lockfile);
56
+ if (context.rawInput.installData.checks.lockfile && !release.lock) {
57
+ trm_commons_1.Logger.info(`Dependency "${context.rawInput.dependencyDataPackage.name}" not in lockfile, using v${release.version} (${context.rawInput.dependencyDataPackage.versionRange}).`);
30
58
  }
31
- else {
32
- const packageData = yield context.rawInput.dependencyDataPackage.registry.getPackage(context.rawInput.dependencyDataPackage.name, 'latest');
33
- const versions = packageData.versions.filter(v => (0, semver_1.satisfies)(v, context.rawInput.dependencyDataPackage.versionRange));
34
- if (versions.length === 0) {
35
- throw new Error(`Dependency "${context.rawInput.dependencyDataPackage.name}": releases not found in range ${context.rawInput.dependencyDataPackage.versionRange}.`);
36
- }
37
- else {
38
- context.runtime.installVersion = (0, semver_sort_1.desc)(versions)[0];
39
- }
59
+ if (release.lock && !(yield lockfile_1.Lockfile.testReleaseByLock(release.lock))) {
60
+ throw new Error(`Cannot continue due to security issues.`);
40
61
  }
62
+ context.runtime.installVersion = release.version;
63
+ context.runtime.installIntegrity = (_a = release.lock) === null || _a === void 0 ? void 0 : _a.integrity;
41
64
  })
42
65
  };
@@ -1,27 +1,88 @@
1
1
  import { AbstractRegistry } from "../../registry";
2
- import { IActionContext, InstallActionInputContextData, InstallActionInputInstallData, InstallActionOutput } from "..";
2
+ import { IActionContext, InstallActionInput, InstallActionInputContextData, InstallActionInputInstallData, InstallActionOutput } from "..";
3
3
  import { TrmPackage } from "../../trmPackage";
4
+ /** Input used to resolve and install one TRM package dependency. */
4
5
  export interface InstallDependencyActionInput {
6
+ /** Shared install context, including optional package snapshot and prompt behavior. */
5
7
  contextData?: InstallActionInputContextData;
8
+ /**
9
+ * Data related to the dependency package being installed.
10
+ */
6
11
  dependencyDataPackage: {
12
+ /**
13
+ * Dependency package name.
14
+ */
7
15
  name: string;
16
+ /**
17
+ * Semantic-version range the installed release must satisfy.
18
+ */
8
19
  versionRange: string;
20
+ /**
21
+ * Registry from which releases and artifacts are fetched.
22
+ */
9
23
  registry: AbstractRegistry;
10
24
  };
25
+ /** Options forwarded to the underlying {@link install} action. */
11
26
  installData?: InstallActionInputInstallData;
12
27
  }
13
28
  type WorkflowRuntime = {
14
29
  trmPackage: TrmPackage;
15
30
  installVersion: string;
31
+ /** Integrity of the locked release; the nested install verifies the release it fetches against it. */
32
+ installIntegrity?: string;
33
+ /** Version on the system before the install, if the dependency is installed. */
34
+ installedVersion?: string;
35
+ /** True when the installed release is kept and nothing is installed. */
36
+ alreadyInstalled: boolean;
16
37
  installOutput: InstallActionOutput;
38
+ /** Packages installed by the nested install's dependency installs, transitive ones included. */
39
+ installedPackages?: TrmPackage[];
40
+ rollback?: () => Promise<void>;
41
+ release?: () => Promise<void>;
17
42
  };
43
+ /** Result returned after a dependency release has been selected and installed, or kept. */
18
44
  export type InstallDependencyActionOutput = {
19
- installOutput: InstallActionOutput;
45
+ /** Full result produced by the underlying package installation; unset when `alreadyInstalled`. */
46
+ installOutput?: InstallActionOutput;
47
+ /** True when a compatible release was already installed and nothing was installed. */
48
+ alreadyInstalled: boolean;
49
+ /** Version on the system before the install, if the dependency was installed. */
50
+ installedVersion?: string;
20
51
  };
52
+ /** Internal state shared by the dependency-install workflow steps. */
21
53
  export interface InstallDependencyWorkflowContext extends IActionContext {
54
+ /** Original action input. */
22
55
  rawInput: InstallDependencyActionInput;
56
+ /** Resolved package, selected version, and nested installation result. */
23
57
  runtime?: WorkflowRuntime;
58
+ /** Dependency-install result. */
24
59
  output?: InstallDependencyActionOutput;
60
+ /** Optional transactional install runner supplied by a parent workflow. */
61
+ installRunner?: (input: InstallActionInput) => Promise<{
62
+ output: InstallActionOutput;
63
+ installedPackages?: TrmPackage[];
64
+ rollback: () => Promise<void>;
65
+ release: () => Promise<void>;
66
+ }>;
25
67
  }
26
- export declare function installDependency(inputData: InstallDependencyActionInput): Promise<InstallDependencyActionOutput>;
68
+ /**
69
+ * Resolves the highest suitable dependency release and installs it on the target SAP system.
70
+ *
71
+ * A release already installed that satisfies `versionRange` is kept and nothing is installed,
72
+ * unless a lockfile pins the dependency to a different version. Otherwise, a lockfile entry takes
73
+ * precedence when present and its integrity is verified, or the newest registry release
74
+ * satisfying `versionRange` is selected. Replacing a newer installed release requires
75
+ * confirmation (or `installData.checks.allowDowngrade`). Installation is then delegated to
76
+ * {@link install} with the supplied options.
77
+ *
78
+ * @param inputData Dependency identity, version range, registry, and install options.
79
+ * @returns The nested installation result, or `alreadyInstalled` when nothing was installed.
80
+ * @throws When no compatible release can be found, a downgrade is not confirmed, or the nested
81
+ * install fails.
82
+ */
83
+ export declare function installDependency(inputData: InstallDependencyActionInput, installRunner?: InstallDependencyWorkflowContext['installRunner']): Promise<InstallDependencyActionOutput & {
84
+ installedPackages?: TrmPackage[];
85
+ rollback?: () => Promise<void>;
86
+ release?: () => Promise<void>;
87
+ }>;
27
88
  export {};
@@ -8,36 +8,53 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  step((generator = generator.apply(thisArg, _arguments || [])).next());
9
9
  });
10
10
  };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
11
  Object.defineProperty(exports, "__esModule", { value: true });
15
12
  exports.installDependency = installDependency;
16
- const sammarksworkflow_1 = __importDefault(require("@simonegaffurini/sammarksworkflow"));
17
- const util_1 = require("util");
18
- const trm_commons_1 = require("trm-commons");
19
13
  const __1 = require("..");
20
14
  const init_1 = require("./init");
21
15
  const findInstallRelease_1 = require("./findInstallRelease");
22
16
  const installRelease_1 = require("./installRelease");
17
+ const checkInstalledRelease_1 = require("./checkInstalledRelease");
18
+ const confirmDowngrade_1 = require("./confirmDowngrade");
23
19
  ;
24
20
  const WORKFLOW_NAME = 'install-dependency';
25
- function installDependency(inputData) {
21
+ /**
22
+ * Resolves the highest suitable dependency release and installs it on the target SAP system.
23
+ *
24
+ * A release already installed that satisfies `versionRange` is kept and nothing is installed,
25
+ * unless a lockfile pins the dependency to a different version. Otherwise, a lockfile entry takes
26
+ * precedence when present and its integrity is verified, or the newest registry release
27
+ * satisfying `versionRange` is selected. Replacing a newer installed release requires
28
+ * confirmation (or `installData.checks.allowDowngrade`). Installation is then delegated to
29
+ * {@link install} with the supplied options.
30
+ *
31
+ * @param inputData Dependency identity, version range, registry, and install options.
32
+ * @returns The nested installation result, or `alreadyInstalled` when nothing was installed.
33
+ * @throws When no compatible release can be found, a downgrade is not confirmed, or the nested
34
+ * install fails.
35
+ */
36
+ function installDependency(inputData, installRunner) {
26
37
  return __awaiter(this, void 0, void 0, function* () {
27
38
  const workflow = [
28
39
  init_1.init,
29
40
  __1.setSystemPackages,
41
+ checkInstalledRelease_1.checkInstalledRelease,
30
42
  findInstallRelease_1.findInstallRelease,
43
+ confirmDowngrade_1.confirmDowngrade,
31
44
  installRelease_1.installRelease
32
45
  ];
33
- trm_commons_1.Logger.log(`Ready to execute workflow ${WORKFLOW_NAME}, input data: ${(0, util_1.inspect)(inputData, { breakLength: Infinity, compact: true })}`, true);
34
- const result = yield (0, sammarksworkflow_1.default)(WORKFLOW_NAME, workflow, {
35
- rawInput: inputData
36
- });
37
- trm_commons_1.Logger.log(`Workflow ${WORKFLOW_NAME} result: ${(0, util_1.inspect)(result, { breakLength: Infinity, compact: true })}`, true);
46
+ const result = yield (0, __1.executeWorkflow)(WORKFLOW_NAME, workflow, {
47
+ rawInput: inputData,
48
+ installRunner
49
+ }, __1.workflowCallbacks);
38
50
  const installOutput = result.runtime.installOutput;
39
51
  return {
40
- installOutput
52
+ installOutput,
53
+ alreadyInstalled: result.runtime.alreadyInstalled,
54
+ installedVersion: result.runtime.installedVersion,
55
+ installedPackages: result.runtime.installedPackages,
56
+ rollback: result.runtime.rollback,
57
+ release: result.runtime.release
41
58
  };
42
59
  });
43
60
  }
@@ -1,3 +1,17 @@
1
1
  import { Step } from "@simonegaffurini/sammarksworkflow";
2
2
  import { InstallDependencyWorkflowContext } from ".";
3
+ /**
4
+ * Workflow step that validates dependency identity/range and initializes resolution state.
5
+ *
6
+ * 1- check package name is compliant
7
+ *
8
+ * 2- check registry is not local
9
+ *
10
+ * 3- validate version range
11
+ *
12
+ * 4- fill runtime values
13
+ *
14
+ * 5- fill input values
15
+ *
16
+ */
3
17
  export declare const init: Step<InstallDependencyWorkflowContext>;
@@ -10,30 +10,48 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.init = void 0;
13
- const trm_commons_1 = require("trm-commons");
14
13
  const commons_1 = require("../../commons");
15
14
  const semver_1 = require("semver");
16
15
  const registry_1 = require("../../registry");
17
16
  const trmPackage_1 = require("../../trmPackage");
17
+ /**
18
+ * Workflow step that validates dependency identity/range and initializes resolution state.
19
+ *
20
+ * 1- check package name is compliant
21
+ *
22
+ * 2- check registry is not local
23
+ *
24
+ * 3- validate version range
25
+ *
26
+ * 4- fill runtime values
27
+ *
28
+ * 5- fill input values
29
+ *
30
+ */
18
31
  exports.init = {
19
32
  name: 'init',
20
33
  run: (context) => __awaiter(void 0, void 0, void 0, function* () {
21
- trm_commons_1.Logger.log('Init step', true);
34
+ //1- check package name is compliant
22
35
  context.rawInput.dependencyDataPackage.name = (0, commons_1.parsePackageName)({
23
36
  fullName: context.rawInput.dependencyDataPackage.name
24
37
  }).fullName;
38
+ //2- check registry is not local
25
39
  if (context.rawInput.dependencyDataPackage.registry.getRegistryType() === registry_1.RegistryType.LOCAL) {
26
40
  throw new Error(`Cannot install local package "${context.rawInput.dependencyDataPackage.name}": TRM package has to be installed manually.`);
27
41
  }
42
+ //3- validate version range
28
43
  context.rawInput.dependencyDataPackage.versionRange = (0, semver_1.validRange)(context.rawInput.dependencyDataPackage.versionRange);
29
44
  if (!context.rawInput.dependencyDataPackage.versionRange) {
30
45
  throw new Error(`Dependency "${context.rawInput.dependencyDataPackage.name}", invalid version range.`);
31
46
  }
47
+ //4- fill runtime values
32
48
  context.runtime = {
33
49
  trmPackage: new trmPackage_1.TrmPackage(context.rawInput.dependencyDataPackage.name, context.rawInput.dependencyDataPackage.registry),
34
50
  installOutput: undefined,
35
- installVersion: undefined
51
+ installVersion: undefined,
52
+ alreadyInstalled: false
36
53
  };
54
+ //5- fill input values
37
55
  if (!context.rawInput.contextData) {
38
56
  context.rawInput.contextData = {};
39
57
  }
@@ -46,5 +64,8 @@ exports.init = {
46
64
  if (!context.rawInput.installData.installDevclass) {
47
65
  context.rawInput.installData.installDevclass = {};
48
66
  }
67
+ if (!context.rawInput.installData.checks) {
68
+ context.rawInput.installData.checks = {};
69
+ }
49
70
  })
50
71
  };
@@ -1,3 +1,9 @@
1
1
  import { Step } from "@simonegaffurini/sammarksworkflow";
2
2
  import { InstallDependencyWorkflowContext } from ".";
3
+ /**
4
+ * Workflow step that delegates the selected dependency release to the package install action.
5
+ *
6
+ * 1- run install workflow
7
+ *
8
+ */
3
9
  export declare const installRelease: Step<InstallDependencyWorkflowContext>;
@@ -10,29 +10,39 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.installRelease = void 0;
13
- const trm_commons_1 = require("trm-commons");
14
13
  const __1 = require("..");
15
- const SUBWORKFLOW_NAME = 'install-sub-install-dependency';
14
+ /**
15
+ * Workflow step that delegates the selected dependency release to the package install action.
16
+ *
17
+ * 1- run install workflow
18
+ *
19
+ */
16
20
  exports.installRelease = {
17
21
  name: 'install-release',
22
+ filter: (context) => __awaiter(void 0, void 0, void 0, function* () { return !context.runtime.alreadyInstalled; }),
18
23
  run: (context) => __awaiter(void 0, void 0, void 0, function* () {
19
- trm_commons_1.Logger.log('Install release step', true);
20
- if (!context.runtime.installVersion) {
21
- throw new Error(`Couldn't find dependency "${context.rawInput.dependencyDataPackage.name}" on registry.`);
22
- }
24
+ //1- run install workflow
23
25
  const inputData = {
24
26
  packageData: {
25
27
  name: context.rawInput.dependencyDataPackage.name,
26
28
  registry: context.rawInput.dependencyDataPackage.registry,
27
29
  version: context.runtime.installVersion,
30
+ integrity: context.runtime.installIntegrity,
28
31
  overwrite: false
29
32
  },
30
- contextData: Object.assign(Object.assign({}, context.rawInput.contextData), { noStopWarning: true }),
31
- installData: context.rawInput.installData
33
+ contextData: context.rawInput.contextData,
34
+ installData: context.rawInput.installData,
35
+ dependency: true
32
36
  };
33
- trm_commons_1.Logger.log(`Ready to execute sub-workflow ${SUBWORKFLOW_NAME}, input data: ${(0, trm_commons_1.inspect)(inputData, { breakLength: Infinity, compact: true })}`, true);
34
- const result = yield (0, __1.install)(inputData);
35
- trm_commons_1.Logger.log(`Workflow ${SUBWORKFLOW_NAME} result: ${(0, trm_commons_1.inspect)(result, { breakLength: Infinity, compact: true })}`, true);
36
- context.runtime.installOutput = result;
37
+ if (context.installRunner) {
38
+ const result = yield context.installRunner(inputData);
39
+ context.runtime.installOutput = result.output;
40
+ context.runtime.installedPackages = result.installedPackages;
41
+ context.runtime.rollback = result.rollback;
42
+ context.runtime.release = result.release;
43
+ }
44
+ else {
45
+ context.runtime.installOutput = yield (0, __1.install)(inputData);
46
+ }
37
47
  })
38
48
  };
@@ -0,0 +1,53 @@
1
+ import { QuestionUiColumn } from "trm-commons";
2
+ import { TrmManifestEngines } from "../../manifest";
3
+ type Row = Record<string, any>;
4
+ /**
5
+ * Engines sections edited with a UI table.
6
+ */
7
+ export type EnginesUiSection = 'trm' | 'components' | 'products' | 'notes' | 'tables';
8
+ /**
9
+ * Engines split in UI table rows (see {@link enginesToUiRows}).
10
+ */
11
+ export type EnginesUiRows = {
12
+ trm: Row[];
13
+ components: Row[];
14
+ products: Row[];
15
+ notes: Row[];
16
+ tables: Row[];
17
+ /**
18
+ * edited as JSON
19
+ */
20
+ anyOf?: TrmManifestEngines[];
21
+ /**
22
+ * checks unknown to this version, kept untouched
23
+ */
24
+ other: Record<string, any>;
25
+ };
26
+ /**
27
+ * Splits an engines declaration in UI table rows.
28
+ * @param engines engines declaration
29
+ */
30
+ export declare function enginesToUiRows(engines?: TrmManifestEngines): EnginesUiRows;
31
+ /**
32
+ * Converts the rows of one UI table to its engines section.
33
+ * @param section engines section
34
+ * @param rows table rows
35
+ */
36
+ export declare function uiRowsToEnginesSection(section: EnginesUiSection, rows: Row[]): any;
37
+ /**
38
+ * Builds an engines declaration from UI table rows. Empty sections are omitted.
39
+ * @param rows table rows
40
+ */
41
+ export declare function uiRowsToEngines(rows: EnginesUiRows): TrmManifestEngines;
42
+ /**
43
+ * Validates the rows of one UI table: duplicate names and the strict engines validation of the section.
44
+ * @param section engines section
45
+ * @param rows normalized table rows
46
+ * @returns `true` if valid, otherwise the first error
47
+ */
48
+ export declare function validateEnginesUiSection(section: EnginesUiSection, rows: Row[]): true | string;
49
+ /**
50
+ * Columns of the UI table of each engines section.
51
+ */
52
+ export declare const ENGINES_UI_COLUMNS: Record<EnginesUiSection, QuestionUiColumn[]>;
53
+ export {};