trm-core 9.10.6 → 10.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (384) hide show
  1. package/README.md +20 -0
  2. package/changelog.txt +11 -0
  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 -52
  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
@@ -1,5 +1,9 @@
1
1
  export * from "./RegistryV2";
2
+ export * from "./RegistryPackageNotFoundError";
3
+ export * from "./RegistryDeletionTransportUnavailableError";
4
+ export * from "./RegistryDeletionTransportUnauthorizedError";
2
5
  export * from "./RegistryType";
3
6
  export * from "./AbstractRegistry";
4
7
  export * from "./FileSystem";
5
8
  export * from "./RegistryProvider";
9
+ export * from "./registryKey";
@@ -15,7 +15,11 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./RegistryV2"), exports);
18
+ __exportStar(require("./RegistryPackageNotFoundError"), exports);
19
+ __exportStar(require("./RegistryDeletionTransportUnavailableError"), exports);
20
+ __exportStar(require("./RegistryDeletionTransportUnauthorizedError"), exports);
18
21
  __exportStar(require("./RegistryType"), exports);
19
22
  __exportStar(require("./AbstractRegistry"), exports);
20
23
  __exportStar(require("./FileSystem"), exports);
21
24
  __exportStar(require("./RegistryProvider"), exports);
25
+ __exportStar(require("./registryKey"), exports);
@@ -0,0 +1,7 @@
1
+ import { AbstractRegistry } from "./AbstractRegistry";
2
+ /**
3
+ * Registry value stored in the TRM package tables: the reserved keywords for the public registry and
4
+ * local (.trm) files, the endpoint for any other registry. A file path is never stored: it exceeds
5
+ * the table field and the read_table option length.
6
+ */
7
+ export declare function registryKey(registry: AbstractRegistry): string;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.registryKey = registryKey;
4
+ const FileSystem_1 = require("./FileSystem");
5
+ const RegistryType_1 = require("./RegistryType");
6
+ const RegistryV2_1 = require("./RegistryV2");
7
+ /**
8
+ * Registry value stored in the TRM package tables: the reserved keywords for the public registry and
9
+ * local (.trm) files, the endpoint for any other registry. A file path is never stored: it exceeds
10
+ * the table field and the read_table option length.
11
+ */
12
+ function registryKey(registry) {
13
+ switch (registry.getRegistryType()) {
14
+ case RegistryType_1.RegistryType.PUBLIC:
15
+ return RegistryV2_1.PUBLIC_RESERVED_KEYWORD;
16
+ case RegistryType_1.RegistryType.LOCAL:
17
+ return FileSystem_1.LOCAL_RESERVED_KEYWORD;
18
+ default:
19
+ return registry.endpoint;
20
+ }
21
+ }
@@ -0,0 +1 @@
1
+ export { ActionLockKey } from "../client/struct/ActionLockKey";
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,10 +1,11 @@
1
- import { ClientError, SapMessage } from "../client";
1
+ import { ClientError, SapMessage, TransportEntries } from "../client";
2
2
  import * as components from "../client/components";
3
3
  import * as struct from "../client/struct";
4
4
  import { ISystemConnectorBase } from "./ISystemConnectorBase";
5
5
  import { RESTConnection } from "./RESTConnection";
6
6
  import { RFCConnection } from "./RFCConnection";
7
7
  import { SystemConnectorSupportedBulk } from "./SystemConnectorSupportedBulk";
8
+ import { ActionLockKey } from "./ActionLock";
8
9
  export interface TrmPackageUpdateData {
9
10
  package_name: string;
10
11
  package_registry: string;
@@ -13,12 +14,20 @@ export interface TrmPackageUpdateData {
13
14
  integrity: string;
14
15
  devclass: string;
15
16
  }
17
+ /** Atomic rollback payload for the TRM package row, install mappings and install transports. */
18
+ export interface TrmPackageMetadataRestoreData {
19
+ package: TrmPackageUpdateData;
20
+ packageExists: boolean;
21
+ installDevc: struct.ZTRM_INSTALLDEVC[];
22
+ /** Install transports replacing the recorded ones; omitted or empty removes them. */
23
+ installTr?: struct.ZTRM_INSTALLTR[];
24
+ }
16
25
  export interface ISystemConnector extends ISystemConnectorBase {
17
26
  supportedBulk: SystemConnectorSupportedBulk;
18
27
  isStateless: boolean;
19
28
  getNewConnection(): ISystemConnector;
20
29
  getConnectionData: () => RFCConnection | RESTConnection;
21
- getDest: () => string;
30
+ getDest: () => components.SYSYSID;
22
31
  getLogonLanguage: (c: boolean) => string;
23
32
  getLogonUser: () => string;
24
33
  connect: (silent: boolean) => Promise<void>;
@@ -35,17 +44,22 @@ export interface ISystemConnector extends ISystemConnectorBase {
35
44
  setTransportDoc: (trkorr: components.TRKORR, doc: struct.TLINE[]) => Promise<void>;
36
45
  removeComments: (trkorr: components.TRKORR, object: components.TROBJTYPE) => Promise<void>;
37
46
  addToTransportRequest: (trkorr: components.TRKORR, content: struct.E071[], lock: boolean) => Promise<void>;
47
+ lockTransportObjs: (trkorr: components.TRKORR) => Promise<void>;
38
48
  repositoryEnvironment: (objectType: components.SEU_OBJ, objectName: components.SOBJ_NAME) => Promise<struct.SENVI[]>;
39
49
  deleteTrkorr: (trkorr: components.TRKORR) => Promise<void>;
40
50
  releaseTrkorr: (trkorr: components.TRKORR, lock: boolean, timeout?: number) => Promise<void>;
41
51
  readTmsQueue: (target: components.TMSSYSNAM) => Promise<struct.STMSIQREQ[]>;
52
+ deleteTemporaryPackage: (devclass: components.DEVCLASS) => Promise<void>;
42
53
  createPackage: (scompkdtln: struct.SCOMPKDTLN) => Promise<void>;
43
54
  getDefaultTransportLayer: () => Promise<components.DEVLAYER>;
44
55
  tadirInterface: (tadir: struct.TADIR) => Promise<void>;
45
- dequeueTransport: (trkorr: components.TRKORR) => Promise<void>;
46
56
  forwardTransport: (trkorr: components.TRKORR, target: components.TMSSYSNAM, source: components.TMSSYSNAM, importAgain: boolean) => Promise<void>;
47
- importTransport: (trkorr: components.TRKORR, system: components.TMSSYSNAM) => Promise<void>;
57
+ importTransport: (trkorr: components.TRKORR, system: components.TMSSYSNAM, test: boolean) => Promise<struct.STMS_TP_IMPORT | void>;
58
+ importTransportMultiple: (trkorr: components.TRKORR[], system: components.TMSSYSNAM, test: boolean) => Promise<struct.STMS_TP_IMPORT | void>;
48
59
  setInstallDevc: (installDevc: struct.ZTRM_INSTALLDEVC[]) => Promise<void>;
60
+ deleteInstallDevc: (installDevc: struct.ZTRM_INSTALLDEVC[]) => Promise<void>;
61
+ restoreInstallMetadata: (data: TrmPackageMetadataRestoreData) => Promise<void>;
62
+ setInstallTransports: (packageName: components.ZTRM_PACKAGE_NAME, packageRegistry: components.ZTRM_PACKAGE_REGISTRY, installTr: struct.ZTRM_INSTALLTR[]) => Promise<void>;
49
63
  getObjectsList: () => Promise<struct.KO100[]>;
50
64
  renameTransportRequest: (trkorr: components.TRKORR, as4text: components.AS4TEXT) => Promise<void>;
51
65
  addTranslationToTr: (trkorr: components.TRKORR, devclassFilter: struct.LXE_TT_PACKG_LINE[]) => Promise<void>;
@@ -61,6 +75,7 @@ export interface ISystemConnector extends ISystemConnectorBase {
61
75
  zip: Buffer;
62
76
  objects: struct.ZTY_SER_OBJ[];
63
77
  }>;
78
+ getTransportEntries: (trkorr: components.TRKORR) => Promise<TransportEntries>;
64
79
  executePostActivity: (data: Buffer, pre?: boolean) => Promise<{
65
80
  messages: struct.SYMSG[];
66
81
  execute?: boolean;
@@ -74,4 +89,6 @@ export interface ISystemConnector extends ISystemConnectorBase {
74
89
  getObjectsLocks: (objects: struct.TADIR_KEY[]) => Promise<struct.ZTRM_OBJ_LOCK[]>;
75
90
  updateTrmPackageData: (data: TrmPackageUpdateData) => Promise<void>;
76
91
  getTransportTargets: () => Promise<components.TARSYSTEM[]>;
92
+ acquireActionLocks: (keys: ActionLockKey[], ownerToken: string, actionName: string) => Promise<void>;
93
+ releaseActionLocks: (keys: ActionLockKey[], ownerToken: string) => Promise<void>;
77
94
  }
@@ -3,7 +3,11 @@ import * as components from "../client/components";
3
3
  import * as struct from "../client/struct";
4
4
  import { TrmPackage } from "../trmPackage";
5
5
  import { InstallPackage } from "./InstallPackage";
6
+ import { InstallTransport } from "./InstallTransport";
6
7
  import { ObjectDependencies, PackageDependencies } from "../dependencies";
8
+ import { ValueHelpContext, ValueHelpPage } from "trm-commons";
9
+ import { TrmManifestEngineTableCondition } from "../manifest";
10
+ import type { TrmPackageUpdateData } from "./ISystemConnector";
7
11
  export interface ISystemConnectorBase {
8
12
  getTransportStatus: (trkorr: components.TRKORR) => Promise<string>;
9
13
  getSourceTrkorr: () => Promise<components.TRKORR[]>;
@@ -13,10 +17,13 @@ export interface ISystemConnectorBase {
13
17
  name: string;
14
18
  registry: string;
15
19
  }) => Promise<TrmPackage[]>;
20
+ getTrmPackageData: (packageName: components.ZTRM_PACKAGE_NAME, packageRegistry: components.ZTRM_PACKAGE_REGISTRY) => Promise<TrmPackageUpdateData | undefined>;
16
21
  getDevclass: (devclass: components.DEVCLASS) => Promise<struct.TDEVC>;
17
22
  getSubpackages: (devclass: components.DEVCLASS) => Promise<struct.TDEVC[]>;
23
+ getNamespacePackages: (namespace: components.NAMESPACE) => Promise<struct.TDEVC[]>;
18
24
  getDevclassObjects: (devclass: components.DEVCLASS, includeSubpackages: boolean) => Promise<struct.TADIR[]>;
19
25
  getInstallPackages: (packageName: string, registry: AbstractRegistry) => Promise<InstallPackage[]>;
26
+ getInstallTransports: (packageName: string, registry: AbstractRegistry) => Promise<InstallTransport[]>;
20
27
  setPackageSuperpackage: (devclass: components.DEVCLASS, superpackage: components.DEVCLASS) => Promise<void>;
21
28
  clearPackageSuperpackage: (devclass: components.DEVCLASS) => Promise<void>;
22
29
  setPackageTransportLayer: (devclass: components.DEVCLASS, devlayer: components.DEVLAYER) => Promise<void>;
@@ -38,5 +45,14 @@ export interface ISystemConnectorBase {
38
45
  getObjectDependencies: (object: components.TROBJTYPE, objName: components.SOBJ_NAME) => Promise<ObjectDependencies>;
39
46
  getTableKeys: (tabname: components.TABNAME) => Promise<struct.DD03L[]>;
40
47
  getRootDevclass: (devclass: components.DEVCLASS) => Promise<components.DEVCLASS>;
48
+ getSoftwareComponents: () => Promise<struct.CVERS[]>;
49
+ getInstalledProducts: () => Promise<struct.PRDVERS[]>;
50
+ getNoteStatus: (numm: components.CWBNTNUMM) => Promise<{
51
+ prstatus?: components.CWBPRSTAT;
52
+ versno?: components.CWBNTVERS;
53
+ }>;
54
+ checkTableCondition: (table: components.TABNAME, where: TrmManifestEngineTableCondition[]) => Promise<boolean>;
41
55
  getTimezone: () => Promise<string>;
56
+ getPostActivities: (ctx: ValueHelpContext) => Promise<ValueHelpPage>;
57
+ getPostActivityParameters: (className: string, ctx: ValueHelpContext) => Promise<ValueHelpPage>;
42
58
  }
@@ -0,0 +1,6 @@
1
+ import { TRKORR, ZTRM_INSTALLTR_TYPE } from "../client";
2
+ /** Transport imported by an installation, as read from the install transports table. */
3
+ export type InstallTransport = {
4
+ trkorr: TRKORR;
5
+ trmType: ZTRM_INSTALLTR_TYPE;
6
+ };
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,12 @@
1
+ import { RFCClient } from "../client";
2
+ import { Login } from "../client/Login";
3
+ import { RFCConnection } from "./RFCConnection";
4
+ import { RFCSystemConnector } from "./RFCSystemConnector";
5
+ /**
6
+ * RFC system connector that uses open-rfc (SDK-free) instead of node-rfc.
7
+ * Currently not supported (crashes, open-rfc is not declared in package.json), needs more checks
8
+ * For internal use only.
9
+ */
10
+ export declare class OpenRFCSystemConnector extends RFCSystemConnector {
11
+ protected createClient(rfcClientArgs: RFCConnection & Login, cLangu: string, traceDir?: string): RFCClient;
12
+ }
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.OpenRFCSystemConnector = void 0;
37
+ const client_1 = require("../client");
38
+ const RFCSystemConnector_1 = require("./RFCSystemConnector");
39
+ /**
40
+ * RFC system connector that uses open-rfc (SDK-free) instead of node-rfc.
41
+ * Currently not supported (crashes, open-rfc is not declared in package.json), needs more checks
42
+ * For internal use only.
43
+ */
44
+ class OpenRFCSystemConnector extends RFCSystemConnector_1.RFCSystemConnector {
45
+ createClient(rfcClientArgs, cLangu, traceDir) {
46
+ // non-literal specifier: open-rfc is not installed, so TypeScript must not resolve it at build time
47
+ const openRfcModule = "open-rfc";
48
+ return new client_1.RFCClient(rfcClientArgs, cLangu, traceDir, undefined, () => Promise.resolve(`${openRfcModule}`).then(s => __importStar(require(s))));
49
+ }
50
+ }
51
+ exports.OpenRFCSystemConnector = OpenRFCSystemConnector;
@@ -1,31 +1,40 @@
1
1
  import { DEVCLASS } from "../client/components";
2
2
  import { TADIR } from "../client/struct";
3
3
  import { Login } from "../client/Login";
4
- import { ISystemConnector, TrmPackageUpdateData } from "./ISystemConnector";
4
+ import { ISystemConnector, TrmPackageMetadataRestoreData, TrmPackageUpdateData } from "./ISystemConnector";
5
5
  import * as components from "../client/components";
6
6
  import * as struct from "../client/struct";
7
7
  import { SystemConnectorBase } from "./SystemConnectorBase";
8
8
  import { RESTConnection } from "./RESTConnection";
9
- import { ClientError, RESTClient, SapMessage } from "../client";
9
+ import { ClientError, RESTClient, SapMessage, TransportEntries } from "../client";
10
10
  import { SystemConnectorSupportedBulk } from "./SystemConnectorSupportedBulk";
11
+ import { ActionLockKey } from "./ActionLock";
11
12
  export declare class RESTSystemConnector extends SystemConnectorBase implements ISystemConnector {
12
13
  private _connection;
13
14
  private _login;
14
15
  private _normalizeEndpoint;
16
+ acquireActionLocks(keys: ActionLockKey[], ownerToken: string, actionName: string): Promise<void>;
17
+ releaseActionLocks(keys: ActionLockKey[], ownerToken: string): Promise<void>;
15
18
  private _dest;
16
19
  private _lang;
17
20
  private _user;
18
21
  protected _client: RESTClient;
19
- private _isServerApisAllowed;
22
+ private _isServerApisAllowed?;
20
23
  supportedBulk: SystemConnectorSupportedBulk;
21
24
  isStateless: boolean;
22
25
  constructor(_connection: RESTConnection, _login: Login, _normalizeEndpoint?: boolean);
23
26
  getNewConnection(): ISystemConnector;
24
27
  protected getSysname(): string;
25
- getDest(): string;
28
+ /**
29
+ * System ID, read from the system on connect.
30
+ */
31
+ getDest(): components.SYSYSID;
26
32
  protected getLangu(c: boolean): string;
27
33
  getLogonLanguage(c?: boolean): string;
28
- protected readTable(tableName: components.TABNAME, fields: struct.RFC_DB_FLD[], options?: string): Promise<any[]>;
34
+ protected readTable(tableName: components.TABNAME, fields: struct.RFC_DB_FLD[], options?: string, paging?: {
35
+ offset: number;
36
+ limit: number;
37
+ }): Promise<any[]>;
29
38
  protected getTrmServerVersion(): Promise<string>;
30
39
  protected getTrmRestVersion(): Promise<string>;
31
40
  protected listDevclassObjects(devclass: DEVCLASS): Promise<TADIR[]>;
@@ -53,17 +62,22 @@ export declare class RESTSystemConnector extends SystemConnectorBase implements
53
62
  setTransportDoc(trkorr: components.TRKORR, doc: struct.TLINE[]): Promise<void>;
54
63
  removeComments(trkorr: components.TRKORR, object: components.TROBJTYPE): Promise<void>;
55
64
  addToTransportRequest(trkorr: components.TRKORR, content: struct.E071[], lock: boolean): Promise<void>;
65
+ lockTransportObjs(trkorr: components.TRKORR): Promise<void>;
56
66
  repositoryEnvironment(objectType: components.SEU_OBJ, objectName: components.SOBJ_NAME): Promise<struct.SENVI[]>;
57
67
  deleteTrkorr(trkorr: components.TRKORR): Promise<void>;
58
68
  releaseTrkorr(trkorr: components.TRKORR, lock: boolean, timeout?: number): Promise<void>;
59
69
  readTmsQueue(target: components.TMSSYSNAM): Promise<struct.STMSIQREQ[]>;
70
+ deleteTemporaryPackage(devclass: components.DEVCLASS): Promise<void>;
60
71
  createPackage(scompkdtln: struct.SCOMPKDTLN): Promise<void>;
61
72
  getDefaultTransportLayer(): Promise<components.DEVLAYER>;
62
73
  tadirInterface(tadir: struct.TADIR): Promise<void>;
63
- dequeueTransport(trkorr: components.TRKORR): Promise<void>;
64
74
  forwardTransport(trkorr: components.TRKORR, target: components.TMSSYSNAM, source: components.TMSSYSNAM, importAgain: boolean): Promise<void>;
65
- importTransport(trkorr: components.TRKORR, system: components.TMSSYSNAM): Promise<void>;
75
+ importTransport(trkorr: components.TRKORR, system: components.TMSSYSNAM, test: boolean): Promise<struct.STMS_TP_IMPORT | void>;
76
+ importTransportMultiple(trkorr: components.TRKORR[], system: components.TMSSYSNAM, test: boolean): Promise<struct.STMS_TP_IMPORT | void>;
66
77
  setInstallDevc(installDevc: struct.ZTRM_INSTALLDEVC[]): Promise<void>;
78
+ deleteInstallDevc(installDevc: struct.ZTRM_INSTALLDEVC[]): Promise<void>;
79
+ restoreInstallMetadata(data: TrmPackageMetadataRestoreData): Promise<void>;
80
+ setInstallTransports(packageName: components.ZTRM_PACKAGE_NAME, packageRegistry: components.ZTRM_PACKAGE_REGISTRY, installTr: struct.ZTRM_INSTALLTR[]): Promise<void>;
67
81
  getObjectsList(): Promise<struct.KO100[]>;
68
82
  renameTransportRequest(trkorr: components.TRKORR, as4text: components.AS4TEXT): Promise<void>;
69
83
  addTranslationToTr(trkorr: components.TRKORR, devclassFilter: struct.LXE_TT_PACKG_LINE[]): Promise<void>;
@@ -79,6 +93,7 @@ export declare class RESTSystemConnector extends SystemConnectorBase implements
79
93
  zip: Buffer;
80
94
  objects: struct.ZTY_SER_OBJ[];
81
95
  }>;
96
+ getTransportEntries(trkorr: components.TRKORR): Promise<TransportEntries>;
82
97
  executePostActivity(data: Buffer, pre?: boolean): Promise<{
83
98
  messages: struct.SYMSG[];
84
99
  execute?: boolean;
@@ -8,18 +8,49 @@ 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.RESTSystemConnector = void 0;
16
13
  const trm_commons_1 = require("trm-commons");
17
14
  const SystemConnectorBase_1 = require("./SystemConnectorBase");
18
15
  const client_1 = require("../client");
19
- const normalize_url_1 = __importDefault(require("@esm2cjs/normalize-url"));
16
+ const summarizeForLog_1 = require("../commons/summarizeForLog");
20
17
  const ENDPOINT_RESOURCE_BASE = '/ztrmserver';
21
18
  const NONE_DEST = 'NONE';
19
+ /**
20
+ * Reduces a user-provided REST endpoint to the base URL the TRM server resource is appended to.
21
+ *
22
+ * Users often paste a full SAP URL (e.g. with the ICF path, sap-client or other query
23
+ * parameters). A missing scheme defaults to http, credentials, query and hash are discarded.
24
+ * When the path contains the TRM server resource, the path before it is kept (e.g. a reverse
25
+ * proxy prefix) and everything after it is discarded; any other path is discarded.
26
+ *
27
+ * @param endpoint Endpoint as entered by the user.
28
+ * @returns The endpoint base URL, without trailing slash and without the TRM server resource.
29
+ */
30
+ function normalizeEndpointBase(endpoint) {
31
+ const sEndpoint = (endpoint || '').trim();
32
+ let url;
33
+ try {
34
+ url = new URL(/^[a-z][a-z\d+\-.]*:\/\//i.test(sEndpoint) ? sEndpoint : `http://${sEndpoint}`);
35
+ }
36
+ catch (_a) {
37
+ throw new Error(`Invalid REST endpoint "${sEndpoint}".`);
38
+ }
39
+ if (url.protocol !== 'http:' && url.protocol !== 'https:') {
40
+ throw new Error(`Invalid REST endpoint "${sEndpoint}": protocol must be http or https.`);
41
+ }
42
+ const segments = url.pathname.split('/').filter(segment => segment);
43
+ const resourceIndex = segments.findIndex(segment => `/${segment.toLowerCase()}` === ENDPOINT_RESOURCE_BASE);
44
+ const prefix = resourceIndex > 0 ? `/${segments.slice(0, resourceIndex).join('/')}` : '';
45
+ return `${url.protocol}//${url.host}${prefix}`;
46
+ }
22
47
  class RESTSystemConnector extends SystemConnectorBase_1.SystemConnectorBase {
48
+ acquireActionLocks(keys, ownerToken, actionName) {
49
+ return this._client.acquireActionLocks(keys, ownerToken, actionName);
50
+ }
51
+ releaseActionLocks(keys, ownerToken) {
52
+ return this._client.releaseActionLocks(keys, ownerToken);
53
+ }
23
54
  constructor(_connection, _login, _normalizeEndpoint = true) {
24
55
  super();
25
56
  this._connection = _connection;
@@ -34,10 +65,8 @@ class RESTSystemConnector extends SystemConnectorBase_1.SystemConnectorBase {
34
65
  this._lang = this._login.lang;
35
66
  this._user = this._login.user;
36
67
  if (this._normalizeEndpoint) {
37
- trm_commons_1.Logger.log(`REST connection data before normalize: ${JSON.stringify(this._connection)}`, true);
38
- this._connection.endpoint = (0, normalize_url_1.default)(this._connection.endpoint, {
39
- removeTrailingSlash: true
40
- });
68
+ trm_commons_1.Logger.log(`REST connection data before normalize: ${JSON.stringify((0, summarizeForLog_1.summarizeForLog)(this._connection))}`, true);
69
+ this._connection.endpoint = normalizeEndpointBase(this._connection.endpoint);
41
70
  }
42
71
  if (!new RegExp(`${ENDPOINT_RESOURCE_BASE}$`, 'gmi').test(this._connection.endpoint)) {
43
72
  this._connection.endpoint = `${this._connection.endpoint}${ENDPOINT_RESOURCE_BASE}`;
@@ -46,11 +75,12 @@ class RESTSystemConnector extends SystemConnectorBase_1.SystemConnectorBase {
46
75
  this._connection.rfcdest = NONE_DEST;
47
76
  }
48
77
  else {
78
+ //bulk not supported in remote calls
49
79
  this.supportedBulk.getTransportObjects = false;
50
80
  this.supportedBulk.getExistingObjects = false;
51
81
  }
52
82
  this._connection.rfcdest = this._connection.rfcdest.toUpperCase().trim();
53
- trm_commons_1.Logger.log(`REST connection data after normalize: ${JSON.stringify(this._connection)}`, true);
83
+ trm_commons_1.Logger.log(`REST connection data after normalize: ${JSON.stringify((0, summarizeForLog_1.summarizeForLog)(this._connection))}`, true);
54
84
  this._client = new client_1.RESTClient(this._connection.endpoint, this._connection.rfcdest, this._login, this._lang[0]);
55
85
  }
56
86
  getNewConnection() {
@@ -59,8 +89,14 @@ class RESTSystemConnector extends SystemConnectorBase_1.SystemConnectorBase {
59
89
  getSysname() {
60
90
  return this.getDest();
61
91
  }
92
+ /**
93
+ * System ID, read from the system on connect.
94
+ */
62
95
  getDest() {
63
- return this._dest || this._connection.endpoint;
96
+ if (!this._dest) {
97
+ throw new Error(`System ID not available: connect to the system first.`);
98
+ }
99
+ return this._dest;
64
100
  }
65
101
  getLangu(c) {
66
102
  return this.getLogonLanguage(c);
@@ -73,9 +109,9 @@ class RESTSystemConnector extends SystemConnectorBase_1.SystemConnectorBase {
73
109
  return this._lang;
74
110
  }
75
111
  }
76
- readTable(tableName, fields, options) {
112
+ readTable(tableName, fields, options, paging) {
77
113
  return __awaiter(this, void 0, void 0, function* () {
78
- return this._client.readTable(tableName, fields, options);
114
+ return this._client.readTable(tableName, fields, options, paging);
79
115
  });
80
116
  }
81
117
  getTrmServerVersion() {
@@ -120,20 +156,21 @@ class RESTSystemConnector extends SystemConnectorBase_1.SystemConnectorBase {
120
156
  }
121
157
  connect() {
122
158
  return __awaiter(this, arguments, void 0, function* (silent = false) {
123
- trm_commons_1.Logger.loading(`Connecting to ${this.getDest()}...`, silent);
159
+ trm_commons_1.Logger.loading(`Connecting to ${this._connection.endpoint}...`, silent);
124
160
  try {
125
161
  yield this._client.open();
126
162
  this._dest = yield this._client.getDest();
127
163
  trm_commons_1.Logger.success(`Connected to ${this.getDest()} as ${this._user}.`, silent);
128
164
  }
129
165
  catch (e) {
130
- trm_commons_1.Logger.error(`Connection to ${this.getDest()} as ${this._user} failed.`, silent);
166
+ trm_commons_1.Logger.error(`Connection to ${this._connection.endpoint} as ${this._user} failed.`, silent);
131
167
  throw e;
132
168
  }
133
169
  });
134
170
  }
135
171
  closeConnection() {
136
172
  return __awaiter(this, void 0, void 0, function* () {
173
+ //
137
174
  });
138
175
  }
139
176
  checkConnection() {
@@ -196,6 +233,11 @@ class RESTSystemConnector extends SystemConnectorBase_1.SystemConnectorBase {
196
233
  return this._client.addToTransportRequest(trkorr, content, lock);
197
234
  });
198
235
  }
236
+ lockTransportObjs(trkorr) {
237
+ return __awaiter(this, void 0, void 0, function* () {
238
+ return this._client.lockTransportObjs(trkorr);
239
+ });
240
+ }
199
241
  repositoryEnvironment(objectType, objectName) {
200
242
  return __awaiter(this, void 0, void 0, function* () {
201
243
  return this._client.repositoryEnvironment(objectType, objectName);
@@ -216,6 +258,11 @@ class RESTSystemConnector extends SystemConnectorBase_1.SystemConnectorBase {
216
258
  return this._client.readTmsQueue(target);
217
259
  });
218
260
  }
261
+ deleteTemporaryPackage(devclass) {
262
+ return __awaiter(this, void 0, void 0, function* () {
263
+ return this._client.deleteTemporaryPackage(devclass);
264
+ });
265
+ }
219
266
  createPackage(scompkdtln) {
220
267
  return __awaiter(this, void 0, void 0, function* () {
221
268
  return this._client.createPackage(scompkdtln);
@@ -231,19 +278,19 @@ class RESTSystemConnector extends SystemConnectorBase_1.SystemConnectorBase {
231
278
  return this._client.tadirInterface(tadir);
232
279
  });
233
280
  }
234
- dequeueTransport(trkorr) {
281
+ forwardTransport(trkorr, target, source, importAgain) {
235
282
  return __awaiter(this, void 0, void 0, function* () {
236
- return this._client.dequeueTransport(trkorr);
283
+ return this._client.forwardTransport(trkorr, target, source, importAgain);
237
284
  });
238
285
  }
239
- forwardTransport(trkorr, target, source, importAgain) {
286
+ importTransport(trkorr, system, test) {
240
287
  return __awaiter(this, void 0, void 0, function* () {
241
- return this._client.forwardTransport(trkorr, target, source, importAgain);
288
+ return this._client.importTransport(trkorr, system, test);
242
289
  });
243
290
  }
244
- importTransport(trkorr, system) {
291
+ importTransportMultiple(trkorr, system, test) {
245
292
  return __awaiter(this, void 0, void 0, function* () {
246
- return this._client.importTransport(trkorr, system);
293
+ return this._client.importTransportMultiple(trkorr, system, test);
247
294
  });
248
295
  }
249
296
  setInstallDevc(installDevc) {
@@ -251,6 +298,21 @@ class RESTSystemConnector extends SystemConnectorBase_1.SystemConnectorBase {
251
298
  return this._client.setInstallDevc(installDevc);
252
299
  });
253
300
  }
301
+ deleteInstallDevc(installDevc) {
302
+ return __awaiter(this, void 0, void 0, function* () {
303
+ return this._client.deleteInstallDevc(installDevc);
304
+ });
305
+ }
306
+ restoreInstallMetadata(data) {
307
+ return __awaiter(this, void 0, void 0, function* () {
308
+ return this._client.restoreInstallMetadata(data);
309
+ });
310
+ }
311
+ setInstallTransports(packageName, packageRegistry, installTr) {
312
+ return __awaiter(this, void 0, void 0, function* () {
313
+ return this._client.setInstallTransports(packageName, packageRegistry, installTr);
314
+ });
315
+ }
254
316
  getObjectsList() {
255
317
  return __awaiter(this, void 0, void 0, function* () {
256
318
  return this._client.getObjectsList();
@@ -311,6 +373,11 @@ class RESTSystemConnector extends SystemConnectorBase_1.SystemConnectorBase {
311
373
  return this._client.getAbapgitSource(devclass);
312
374
  });
313
375
  }
376
+ getTransportEntries(trkorr) {
377
+ return __awaiter(this, void 0, void 0, function* () {
378
+ return this._client.getTransportEntries(trkorr);
379
+ });
380
+ }
314
381
  executePostActivity(data, pre) {
315
382
  return __awaiter(this, void 0, void 0, function* () {
316
383
  return this._client.executePostActivity(data, pre);
@@ -318,10 +385,15 @@ class RESTSystemConnector extends SystemConnectorBase_1.SystemConnectorBase {
318
385
  }
319
386
  isServerApisAllowed() {
320
387
  return __awaiter(this, void 0, void 0, function* () {
321
- if (this._isServerApisAllowed === undefined) {
322
- this._isServerApisAllowed = yield this._client.isServerApisAllowed();
388
+ if (this._isServerApisAllowed) {
389
+ return this._isServerApisAllowed;
390
+ }
391
+ // Only a granted authorization is cached: a denial may be transient and is checked again.
392
+ const auth = yield this._client.isServerApisAllowed();
393
+ if (auth === true) {
394
+ this._isServerApisAllowed = auth;
323
395
  }
324
- return this._isServerApisAllowed;
396
+ return auth;
325
397
  });
326
398
  }
327
399
  changeTrOwner(trkorr, owner) {
@@ -1,5 +1,4 @@
1
1
  export type RFCConnection = {
2
- dest: string;
3
2
  ashost: string;
4
3
  sysnr: string;
5
4
  saprouter?: string;