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,9 +1,13 @@
1
+ import { ValueHelpContext, ValueHelpPage } from "trm-commons";
2
+ import { TrmManifestEngineTableCondition } from "../manifest";
1
3
  import { TADIR, TDEVC } from "../client/struct";
2
4
  import { TrmPackage } from "../trmPackage";
3
5
  import { InstallPackage } from "./InstallPackage";
6
+ import { InstallTransport } from "./InstallTransport";
4
7
  import * as components from "../client/components";
5
8
  import * as struct from "../client/struct";
6
9
  import { ISystemConnectorBase } from "./ISystemConnectorBase";
10
+ import type { TrmPackageUpdateData } from "./ISystemConnector";
7
11
  import { AbstractRegistry } from "../registry";
8
12
  import { ObjectDependencies, PackageDependencies } from "../dependencies";
9
13
  export declare const TRM_SERVER_PACKAGE_NAME: string;
@@ -13,6 +17,9 @@ export declare const TRM_REST_PACKAGE_NAME: string;
13
17
  export declare const SRC_TRKORR_TABL = "/ATRM/SRC_TRKORR";
14
18
  export declare const SKIP_TRKORR_TABL = "/ATRM/SKIPTRKORR";
15
19
  export declare const INSTALL_DEVCLASS_VIEW = "/ATRM/V_INSTDEVC";
20
+ export declare const INSTALL_TRANSPORTS_TABLE = "/ATRM/INSTALLTR";
21
+ export declare const POST_ACTIVITY_ATTRIBUTE = "TRM_PA";
22
+ export declare const POST_ACTIVITY_METHOD = "EXECUTE";
16
23
  export declare abstract class SystemConnectorBase implements ISystemConnectorBase {
17
24
  private _installedPackages;
18
25
  private _sourceTrkorr;
@@ -21,7 +28,10 @@ export declare abstract class SystemConnectorBase implements ISystemConnectorBas
21
28
  private _tableKeys;
22
29
  private _rootDevclass;
23
30
  private _timezone;
24
- protected abstract readTable(tableName: components.TABNAME, fields: struct.RFC_DB_FLD[], options?: string): Promise<any[]>;
31
+ protected abstract readTable(tableName: components.TABNAME, fields: struct.RFC_DB_FLD[], options?: string, paging?: {
32
+ offset: number;
33
+ limit: number;
34
+ }): Promise<any[]>;
25
35
  protected abstract getSysname(): string;
26
36
  protected abstract getLangu(c: boolean): string;
27
37
  protected abstract getTrmServerVersion(): Promise<string>;
@@ -39,17 +49,23 @@ export declare abstract class SystemConnectorBase implements ISystemConnectorBas
39
49
  getTransportStatus(trkorr: components.TRKORR): Promise<string>;
40
50
  getSourceTrkorr(refresh?: boolean): Promise<components.TRKORR[]>;
41
51
  getObject(pgmid: components.PGMID, object: components.TROBJTYPE, objName: components.SOBJ_NAME): Promise<TADIR>;
52
+ private escapeSearch;
53
+ getPostActivities(ctx: ValueHelpContext): Promise<ValueHelpPage>;
54
+ getPostActivityParameters(className: string, ctx: ValueHelpContext): Promise<ValueHelpPage>;
42
55
  getIgnoredTrkorr(refresh?: boolean): Promise<components.TRKORR[]>;
43
56
  getTrmServerPackage(): Promise<TrmPackage>;
44
57
  getTrmRestPackage(): Promise<TrmPackage>;
58
+ getTrmPackageData(packageName: components.ZTRM_PACKAGE_NAME, packageRegistry: components.ZTRM_PACKAGE_REGISTRY): Promise<TrmPackageUpdateData | undefined>;
45
59
  getInstalledPackages(refresh?: boolean, includeLocals?: boolean, filter?: {
46
60
  name: string;
47
61
  registry: string;
48
62
  }): Promise<TrmPackage[]>;
49
63
  getDevclass(devclass: components.DEVCLASS): Promise<TDEVC>;
64
+ getNamespacePackages(namespace: components.NAMESPACE): Promise<TDEVC[]>;
50
65
  getSubpackages(devclass: components.DEVCLASS): Promise<TDEVC[]>;
51
66
  getDevclassObjects(devclass: components.DEVCLASS, includeSubpackages?: boolean): Promise<TADIR[]>;
52
67
  getInstallPackages(packageName: string, registry: AbstractRegistry): Promise<InstallPackage[]>;
68
+ getInstallTransports(packageName: string, registry: AbstractRegistry): Promise<InstallTransport[]>;
53
69
  setPackageSuperpackage(devclass: components.DEVCLASS, superpackage: components.DEVCLASS): Promise<void>;
54
70
  clearPackageSuperpackage(devclass: components.DEVCLASS): Promise<void>;
55
71
  setPackageTransportLayer(devclass: components.DEVCLASS, devlayer: components.DEVLAYER): Promise<void>;
@@ -69,5 +85,12 @@ export declare abstract class SystemConnectorBase implements ISystemConnectorBas
69
85
  getObjectDependencies(object: components.TROBJTYPE, objName: components.SOBJ_NAME): Promise<ObjectDependencies>;
70
86
  getTableKeys(tabname: components.TABNAME): Promise<struct.DD03L[]>;
71
87
  getRootDevclass(devclass: components.DEVCLASS): Promise<components.DEVCLASS>;
88
+ getSoftwareComponents(): Promise<struct.CVERS[]>;
89
+ getInstalledProducts(): Promise<struct.PRDVERS[]>;
90
+ getNoteStatus(numm: components.CWBNTNUMM): Promise<{
91
+ prstatus?: components.CWBPRSTAT;
92
+ versno?: components.CWBNTVERS;
93
+ }>;
94
+ checkTableCondition(table: components.TABNAME, where: TrmManifestEngineTableCondition[]): Promise<boolean>;
72
95
  getTimezone(): Promise<string>;
73
96
  }
@@ -9,14 +9,13 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.SystemConnectorBase = exports.INSTALL_DEVCLASS_VIEW = exports.SKIP_TRKORR_TABL = exports.SRC_TRKORR_TABL = exports.TRM_REST_PACKAGE_NAME = exports.TRM_REST_INTF = exports.TRM_SERVER_INTF = exports.TRM_SERVER_PACKAGE_NAME = void 0;
12
+ exports.SystemConnectorBase = exports.POST_ACTIVITY_METHOD = exports.POST_ACTIVITY_ATTRIBUTE = exports.INSTALL_TRANSPORTS_TABLE = exports.INSTALL_DEVCLASS_VIEW = exports.SKIP_TRKORR_TABL = exports.SRC_TRKORR_TABL = exports.TRM_REST_PACKAGE_NAME = exports.TRM_REST_INTF = exports.TRM_SERVER_INTF = exports.TRM_SERVER_PACKAGE_NAME = void 0;
13
13
  const semver_1 = require("semver");
14
14
  const trm_commons_1 = require("trm-commons");
15
15
  const manifest_1 = require("../manifest");
16
16
  const transport_1 = require("../transport");
17
17
  const trmPackage_1 = require("../trmPackage");
18
18
  const registry_1 = require("../registry");
19
- const node_r3trans_1 = require("node-r3trans");
20
19
  const dependencies_1 = require("../dependencies");
21
20
  const SystemConnector_1 = require("./SystemConnector");
22
21
  exports.TRM_SERVER_PACKAGE_NAME = 'trm-server';
@@ -26,6 +25,9 @@ exports.TRM_REST_PACKAGE_NAME = 'trm-rest';
26
25
  exports.SRC_TRKORR_TABL = '/ATRM/SRC_TRKORR';
27
26
  exports.SKIP_TRKORR_TABL = '/ATRM/SKIPTRKORR';
28
27
  exports.INSTALL_DEVCLASS_VIEW = '/ATRM/V_INSTDEVC';
28
+ exports.INSTALL_TRANSPORTS_TABLE = '/ATRM/INSTALLTR';
29
+ exports.POST_ACTIVITY_ATTRIBUTE = 'TRM_PA';
30
+ exports.POST_ACTIVITY_METHOD = 'EXECUTE';
29
31
  class SystemConnectorBase {
30
32
  constructor() {
31
33
  this._tableKeys = {};
@@ -68,6 +70,55 @@ class SystemConnectorBase {
68
70
  }
69
71
  });
70
72
  }
73
+ escapeSearch(search) {
74
+ return (search || '').trim().toUpperCase().replace(/['%_]/g, '');
75
+ }
76
+ getPostActivities(ctx) {
77
+ return __awaiter(this, void 0, void 0, function* () {
78
+ //post activities are classes with constant TRM_PA
79
+ var options = `CMPNAME EQ '${exports.POST_ACTIVITY_ATTRIBUTE}'`;
80
+ const search = this.escapeSearch(ctx.search);
81
+ if (search) {
82
+ options += ` AND CLSNAME LIKE '%${search}%'`;
83
+ }
84
+ const classes = yield this.readTable('SEOCOMPO', [{ fieldName: 'CLSNAME' }], options, { offset: ctx.offset, limit: ctx.limit + 1 });
85
+ const hasMore = classes.length > ctx.limit;
86
+ const rows = classes.slice(0, ctx.limit).map(o => ({ name: o.clsname }));
87
+ if (rows.length > 0) {
88
+ const texts = yield this.readTable('SEOCLASSTX', [{ fieldName: 'CLSNAME' }, { fieldName: 'DESCRIPT' }], `LANGU EQ '${this.getLangu(true)}' AND ( ${rows.map(o => `CLSNAME EQ '${o.name}'`).join(' OR ')} )`);
89
+ rows.forEach(o => {
90
+ var _a;
91
+ o.description = (_a = texts.find(t => t.clsname === o.name)) === null || _a === void 0 ? void 0 : _a.descript;
92
+ });
93
+ }
94
+ return { rows, hasMore };
95
+ });
96
+ }
97
+ getPostActivityParameters(className, ctx) {
98
+ return __awaiter(this, void 0, void 0, function* () {
99
+ //post activity parameters are the importing parameters of method EXECUTE
100
+ const clsname = this.escapeSearch(className);
101
+ if (!clsname) {
102
+ return { rows: [], hasMore: false };
103
+ }
104
+ var options = `CLSNAME EQ '${clsname}' AND CMPNAME EQ '${exports.POST_ACTIVITY_METHOD}' AND PARDECLTYP EQ '0' AND VERSION EQ '1'`;
105
+ const search = this.escapeSearch(ctx.search);
106
+ if (search) {
107
+ options += ` AND SCONAME LIKE '%${search}%'`;
108
+ }
109
+ const parameters = yield this.readTable('SEOSUBCODF', [{ fieldName: 'SCONAME' }], options, { offset: ctx.offset, limit: ctx.limit + 1 });
110
+ const hasMore = parameters.length > ctx.limit;
111
+ const rows = parameters.slice(0, ctx.limit).map(o => ({ name: o.sconame }));
112
+ if (rows.length > 0) {
113
+ const texts = yield this.readTable('SEOSUBCOTX', [{ fieldName: 'SCONAME' }, { fieldName: 'DESCRIPT' }], `CLSNAME EQ '${clsname}' AND CMPNAME EQ '${exports.POST_ACTIVITY_METHOD}' AND LANGU EQ '${this.getLangu(true)}'`);
114
+ rows.forEach(o => {
115
+ var _a;
116
+ o.description = (_a = texts.find(t => t.sconame === o.name)) === null || _a === void 0 ? void 0 : _a.descript;
117
+ });
118
+ }
119
+ return { rows, hasMore };
120
+ });
121
+ }
71
122
  getIgnoredTrkorr(refresh) {
72
123
  return __awaiter(this, void 0, void 0, function* () {
73
124
  if (!this._ignoredTrkorr || refresh) {
@@ -134,6 +185,26 @@ class SystemConnectorBase {
134
185
  return oPackage;
135
186
  });
136
187
  }
188
+ getTrmPackageData(packageName, packageRegistry) {
189
+ return __awaiter(this, void 0, void 0, function* () {
190
+ // The backend filter keeps rows matching either the name or the registry: match both here.
191
+ // trm-server and trm-rest installed through abapGit are listed with a dummy 10000101
192
+ // timestamp, but no row is stored for them.
193
+ const row = (yield this.getInstalledPackagesBackend({ name: packageName, registry: packageRegistry }))
194
+ .find(o => o.packageName === packageName && o.packageRegistry === packageRegistry && o.as4Date !== '10000101');
195
+ if (!row) {
196
+ return undefined;
197
+ }
198
+ return {
199
+ package_name: row.packageName,
200
+ package_registry: row.packageRegistry,
201
+ manifest: Buffer.from(row.manifest, 'utf8'),
202
+ trkorr: row.trkorr,
203
+ integrity: row.integrity,
204
+ devclass: row.devclass
205
+ };
206
+ });
207
+ }
137
208
  getInstalledPackages(refresh, includeLocals, filter) {
138
209
  return __awaiter(this, void 0, void 0, function* () {
139
210
  var trmPackages = [];
@@ -142,6 +213,7 @@ class SystemConnectorBase {
142
213
  trm_commons_1.Logger.log(`Reading cached version of installed packages`, true);
143
214
  return this._installedPackages;
144
215
  }
216
+ //if system has trm-server we can fetch with backend api
145
217
  const serverExists = yield this.readTable('TADIR', [{ fieldName: 'OBJ_NAME' }], `PGMID EQ 'R3TR' AND OBJECT EQ 'INTF' AND OBJ_NAME EQ '${exports.TRM_SERVER_INTF}'`);
146
218
  if (serverExists.length === 1) {
147
219
  trm_commons_1.Logger.log(`INTF ${exports.TRM_SERVER_INTF} exists, reading packages from backend API`, true);
@@ -153,10 +225,20 @@ class SystemConnectorBase {
153
225
  }
154
226
  for (const o of installedPackagesBackend) {
155
227
  const manifest = manifest_1.Manifest.fromAbapXml(o.manifest);
228
+ const trmPackage = new trmPackage_1.TrmPackage(o.packageName, registry_1.RegistryProvider.getRegistry(o.packageRegistry), manifest)
229
+ .setDevclass(o.devclass)
230
+ .setDirtyEntries(o.dirty)
231
+ .setMetadataSnapshot({
232
+ package_name: o.packageName,
233
+ package_registry: o.packageRegistry,
234
+ manifest: Buffer.from(o.manifest, 'utf8'),
235
+ trkorr: o.trkorr,
236
+ integrity: o.integrity,
237
+ devclass: o.devclass
238
+ });
156
239
  if (o.trkorr) {
157
- manifest.setLinkedTransport(new transport_1.Transport(o.trkorr, null));
240
+ trmPackage.setTransport(new transport_1.Transport(o.trkorr, null));
158
241
  }
159
- const trmPackage = new trmPackage_1.TrmPackage(o.packageName, registry_1.RegistryProvider.getRegistry(o.packageRegistry), manifest).setDevclass(o.devclass).setDirtyEntries(o.dirty);
160
242
  trmPackages.push(trmPackage);
161
243
  }
162
244
  fromBackend = true;
@@ -177,12 +259,18 @@ class SystemConnectorBase {
177
259
  var packageTransports = [];
178
260
  trm_commons_1.Logger.log(`Ready to read installed packages`, true);
179
261
  var allTransports = (yield this.readTable('E071', [{ fieldName: 'TRKORR' }], `PGMID EQ '*' AND OBJECT EQ '${transport_1.COMMENT_OBJ}'`)).map(o => o.trkorr);
262
+ //because we're extracting from e071, there will be multiple records with the same trkorr
263
+ //unique array
180
264
  allTransports = Array.from(new Set(allTransports));
265
+ //read tms of current system and with maxrc > 0 and impsing != X
266
+ //if there's no match, ignore
181
267
  for (const trkorr of allTransports) {
182
268
  var aTrkorrStatusCheck;
183
269
  try {
184
270
  trm_commons_1.Logger.log(`Checking ${trkorr} TMS import result`, true);
185
- aTrkorrStatusCheck = (yield this.readTable('TMSBUFFER', [{ fieldName: 'TRKORR' }, { fieldName: 'MAXRC' }], `SYSNAM EQ '${this.getSysname()}' AND TRKORR EQ '${trkorr}' AND IMPSING NE 'X'`));
271
+ aTrkorrStatusCheck = (yield this.readTable('TMSBUFFER', [{ fieldName: 'TRKORR' }, { fieldName: 'MAXRC' }],
272
+ //is the condition (IMPFLG EQ 't' OR IMPFLG EQ 'k') necessary?
273
+ `SYSNAM EQ '${this.getSysname()}' AND TRKORR EQ '${trkorr}' AND IMPSING NE 'X'`));
186
274
  aTrkorrStatusCheck = aTrkorrStatusCheck.filter(o => parseInt(o.maxrc) >= 0);
187
275
  }
188
276
  catch (e) {
@@ -203,6 +291,7 @@ class SystemConnectorBase {
203
291
  trm_commons_1.Logger.log(`Package is local, skipping`, true);
204
292
  continue;
205
293
  }
294
+ //only compares package name and registry
206
295
  var arrayIndex = packageTransports.findIndex(o => trmPackage_1.TrmPackage.compare(o.package, trmPackage));
207
296
  if (arrayIndex < 0) {
208
297
  arrayIndex = packageTransports.push({
@@ -240,6 +329,11 @@ class SystemConnectorBase {
240
329
  }
241
330
  });
242
331
  }
332
+ getNamespacePackages(namespace) {
333
+ return __awaiter(this, void 0, void 0, function* () {
334
+ return yield this.readTable('TDEVC', [{ fieldName: 'DEVCLASS' }, { fieldName: 'PARENTCL' }, { fieldName: 'TPCLASS' }, { fieldName: 'DLVUNIT' }, { fieldName: 'NAMESPACE' }], `NAMESPACE EQ '${namespace.trim().toUpperCase()}'`);
335
+ });
336
+ }
243
337
  getSubpackages(devclass) {
244
338
  return __awaiter(this, void 0, void 0, function* () {
245
339
  const queryFields = [{ fieldName: 'DEVCLASS' }, { fieldName: 'PARENTCL' }];
@@ -280,10 +374,16 @@ class SystemConnectorBase {
280
374
  }
281
375
  getInstallPackages(packageName, registry) {
282
376
  return __awaiter(this, void 0, void 0, function* () {
283
- const registryEndpoint = registry.getRegistryType() === registry_1.RegistryType.PUBLIC ? registry_1.PUBLIC_RESERVED_KEYWORD : registry.endpoint;
377
+ const registryEndpoint = (0, registry_1.registryKey)(registry);
284
378
  return yield this.readTable(exports.INSTALL_DEVCLASS_VIEW, [{ fieldName: 'ORIGINAL_DEVCLASS' }, { fieldName: 'INSTALL_DEVCLASS' }], `PACKAGE_NAME EQ '${packageName}' AND PACKAGE_REGISTRY EQ '${registryEndpoint}'`);
285
379
  });
286
380
  }
381
+ getInstallTransports(packageName, registry) {
382
+ return __awaiter(this, void 0, void 0, function* () {
383
+ const registryEndpoint = (0, registry_1.registryKey)(registry);
384
+ return yield this.readTable(exports.INSTALL_TRANSPORTS_TABLE, [{ fieldName: 'TRKORR' }, { fieldName: 'TRM_TYPE' }], `PACKAGE_NAME EQ '${packageName}' AND PACKAGE_REGISTRY EQ '${registryEndpoint}'`);
385
+ });
386
+ }
287
387
  setPackageSuperpackage(devclass, superpackage) {
288
388
  return __awaiter(this, void 0, void 0, function* () {
289
389
  return yield this.tdevcInterface(devclass, superpackage);
@@ -301,29 +401,22 @@ class SystemConnectorBase {
301
401
  }
302
402
  checkSapEntryExists(table, sapEntry) {
303
403
  return __awaiter(this, void 0, void 0, function* () {
304
- try {
305
- var aQuery = [];
306
- Object.keys(sapEntry).forEach(k => {
307
- aQuery.push(`${k.trim().toUpperCase()} EQ '${sapEntry[k]}'`);
308
- });
309
- const entry = yield this.readTable(table.trim().toUpperCase(), [{ fieldName: Object.keys(sapEntry)[0].trim().toUpperCase() }], aQuery.join(' AND '));
310
- return entry.length > 0;
311
- }
312
- catch (e) {
313
- return false;
314
- }
404
+ //invalid entries and read errors (authorization, connection) are thrown, not reported as missing
405
+ const aQuery = (0, manifest_1.getSapEntryConditions)(sapEntry);
406
+ const entry = yield this.readTable(table.trim().toUpperCase(), [{ fieldName: Object.keys(sapEntry)[0].trim().toUpperCase() }], aQuery.join(' AND '));
407
+ return entry.length > 0;
315
408
  });
316
409
  }
317
410
  getPackageIntegrity(oPackage) {
318
411
  return __awaiter(this, void 0, void 0, function* () {
319
412
  const packageName = oPackage.packageName;
320
- const registryEndpoint = oPackage.registry.getRegistryType() === registry_1.RegistryType.PUBLIC ? registry_1.PUBLIC_RESERVED_KEYWORD : oPackage.registry.endpoint;
413
+ const registryEndpoint = (0, registry_1.registryKey)(oPackage.registry);
321
414
  const aIntegrity = yield this.readTable('ZTRM_INTEGRITY', [{ fieldName: 'INTEGRITY' }], `PACKAGE_NAME EQ '${packageName}' AND PACKAGE_REGISTRY EQ '${registryEndpoint}'`);
322
415
  if (aIntegrity.length === 1) {
323
416
  return aIntegrity[0].integrity;
324
417
  }
325
418
  else {
326
- return '';
419
+ return ''; //avoid returning undefined
327
420
  }
328
421
  });
329
422
  }
@@ -364,7 +457,12 @@ class SystemConnectorBase {
364
457
  if (!this._r3transInfoLog) {
365
458
  this._r3transInfoLog = yield this.getR3transInfo();
366
459
  }
367
- return node_r3trans_1.R3trans.getVersion(this._r3transInfoLog);
460
+ try {
461
+ return this._r3transInfoLog.split(/\r?\n|\r|\n/g)[0];
462
+ }
463
+ catch (e) {
464
+ return undefined;
465
+ }
368
466
  });
369
467
  }
370
468
  getR3transUnicode() {
@@ -372,12 +470,19 @@ class SystemConnectorBase {
372
470
  if (!this._r3transInfoLog) {
373
471
  this._r3transInfoLog = yield this.getR3transInfo();
374
472
  }
375
- return node_r3trans_1.R3trans.isUnicode(this._r3transInfoLog);
473
+ try {
474
+ const outputLine = this._r3transInfoLog.split(/\r?\n|\r|\n/g)[1];
475
+ return !outputLine.startsWith('non-unicode');
476
+ }
477
+ catch (e) {
478
+ return undefined;
479
+ }
376
480
  });
377
481
  }
378
482
  isTransportLayerExist(devlayer) {
379
483
  return __awaiter(this, void 0, void 0, function* () {
380
484
  const aTransportLayer = (yield this.readTable('TCETRAL', [{ fieldName: 'VERSION' }, { fieldName: 'TRANSLAYER' }], `TRANSLAYER EQ '${devlayer}'`));
485
+ //it's sufficient one version exists with tranSLAYER = devlayer (RAINING BLOOOOODDD!!!)
381
486
  return aTransportLayer.length > 0;
382
487
  });
383
488
  }
@@ -391,6 +496,7 @@ class SystemConnectorBase {
391
496
  var packageDependencies;
392
497
  const logProgress = trm_commons_1.Logger.progressbar('Finding dependencies [{bar}] {percentage}%', '>');
393
498
  logProgress.start(100, 0);
499
+ // create logging poll
394
500
  const isStateless = SystemConnector_1.SystemConnector.isStateless();
395
501
  const newConnection = isStateless ? SystemConnector_1.SystemConnector.systemConnector : SystemConnector_1.SystemConnector.getNewConnection();
396
502
  if (!isStateless) {
@@ -481,10 +587,45 @@ class SystemConnectorBase {
481
587
  return this._rootDevclass[devclass];
482
588
  });
483
589
  }
590
+ getSoftwareComponents() {
591
+ return __awaiter(this, void 0, void 0, function* () {
592
+ return yield this.readTable('CVERS', [{ fieldName: 'COMPONENT' }, { fieldName: 'RELEASE' }, { fieldName: 'EXTRELEASE' }, { fieldName: 'COMP_TYPE' }]);
593
+ });
594
+ }
595
+ getInstalledProducts() {
596
+ return __awaiter(this, void 0, void 0, function* () {
597
+ return yield this.readTable('PRDVERS', [{ fieldName: 'ID' }, { fieldName: 'NAME' }, { fieldName: 'VERSION' }, { fieldName: 'VENDOR' }, { fieldName: 'DESCRIPT' }, { fieldName: 'INSTSTATUS' }], `INSTSTATUS EQ '+'`);
598
+ });
599
+ }
600
+ getNoteStatus(numm) {
601
+ return __awaiter(this, void 0, void 0, function* () {
602
+ const note = numm.trim().padStart(10, '0');
603
+ const cust = yield this.readTable('CWBNTCUST', [{ fieldName: 'NUMM' }, { fieldName: 'NTSTATUS' }, { fieldName: 'PRSTATUS' }], `NUMM EQ '${note}'`);
604
+ if (cust.length === 0) {
605
+ return {};
606
+ }
607
+ const head = yield this.readTable('CWBNTHEAD', [{ fieldName: 'NUMM' }, { fieldName: 'VERSNO' }], `NUMM EQ '${note}'`);
608
+ //the implemented version is the latest downloaded one (older implemented versions have status V)
609
+ const versno = head.map(o => o.versno).sort((a, b) => parseInt(b, 10) - parseInt(a, 10))[0];
610
+ return {
611
+ prstatus: cust[0].prstatus,
612
+ versno
613
+ };
614
+ });
615
+ }
616
+ checkTableCondition(table, where) {
617
+ return __awaiter(this, void 0, void 0, function* () {
618
+ //read errors (missing table, authorization) are thrown
619
+ const aQuery = where.map(condition => `${condition.field.trim().toUpperCase()} ${(condition.op || 'EQ').trim().toUpperCase()} '${condition.value.toString().replace(/'/g, "''")}'`);
620
+ const rows = yield this.readTable(table.trim().toUpperCase(), [{ fieldName: where[0].field.trim().toUpperCase() }], aQuery.join(' AND '), { offset: 0, limit: 1 });
621
+ return rows.length > 0;
622
+ });
623
+ }
484
624
  getTimezone() {
485
625
  return __awaiter(this, void 0, void 0, function* () {
486
626
  if (!this._timezone) {
487
627
  const map = {
628
+ // Europe
488
629
  CET: "Europe/Berlin",
489
630
  EET: "Europe/Helsinki",
490
631
  GMTUK: "Europe/London",
@@ -492,15 +633,18 @@ class SystemConnectorBase {
492
633
  CYPRUS: "Asia/Nicosia",
493
634
  MOLDVA: "Europe/Chisinau",
494
635
  TURKEY: "Europe/Istanbul",
636
+ // Africa
495
637
  CAT: "Africa/Harare",
496
638
  EGYPT: "Africa/Cairo",
497
639
  MOROCC: "Africa/Casablanca",
640
+ // Middle East
498
641
  ISRAEL: "Asia/Jerusalem",
499
642
  IRAN: "Asia/Tehran",
500
643
  IRAQ: "Asia/Baghdad",
501
644
  JORDAN: "Asia/Amman",
502
645
  LBANON: "Asia/Beirut",
503
646
  SYRIA: "Asia/Damascus",
647
+ // Asia
504
648
  AFGHAN: "Asia/Kabul",
505
649
  AZT: "Asia/Baku",
506
650
  BDT: "Asia/Dhaka",
@@ -508,6 +652,7 @@ class SystemConnectorBase {
508
652
  JAPAN: "Asia/Tokyo",
509
653
  NEPAL: "Asia/Kathmandu",
510
654
  PKT: "Asia/Karachi",
655
+ // Russia zones
511
656
  RUS02: "Europe/Kaliningrad",
512
657
  RUS03: "Europe/Moscow",
513
658
  RUS04: "Europe/Samara",
@@ -519,6 +664,7 @@ class SystemConnectorBase {
519
664
  RUS10: "Asia/Vladivostok",
520
665
  RUS11: "Asia/Magadan",
521
666
  RUS12: "Asia/Kamchatka",
667
+ // Australia
522
668
  AUSEUC: "Australia/Eucla",
523
669
  AUSLHI: "Australia/Lord_Howe",
524
670
  AUSNSW: "Australia/Sydney",
@@ -529,8 +675,10 @@ class SystemConnectorBase {
529
675
  AUSVIC: "Australia/Melbourne",
530
676
  AUSWA: "Australia/Perth",
531
677
  NORFLK: "Pacific/Norfolk",
678
+ // New Zealand
532
679
  NZST: "Pacific/Auckland",
533
680
  NZCHA: "Pacific/Chatham",
681
+ // Americas - North
534
682
  ALA: "America/Anchorage",
535
683
  ALAW: "America/Adak",
536
684
  EST: "America/New_York",
@@ -547,6 +695,7 @@ class SystemConnectorBase {
547
695
  HAW: "Pacific/Honolulu",
548
696
  NST: "America/St_Johns",
549
697
  PIERRE: "America/Miquelon",
698
+ // Americas - South
550
699
  ART: "America/Argentina/Buenos_Aires",
551
700
  BRAZIL: "America/Sao_Paulo",
552
701
  BRZLAN: "America/Manaus",
@@ -560,12 +709,15 @@ class SystemConnectorBase {
560
709
  GSTE: "America/Scoresbysund",
561
710
  GSTW: "America/Godthab",
562
711
  FLKLND: "Atlantic/Stanley",
712
+ // Other
563
713
  FIJI: "Pacific/Fiji",
564
714
  MAU: "Indian/Mauritius",
715
+ // UTC
565
716
  UTC: "UTC",
566
717
  };
567
718
  try {
568
719
  const sapTimezone = (yield this.readTable('TTZCU', [{ fieldName: 'TZONESYS' }]))[0].tzonesys;
720
+ // Handle UTC dynamically (UTC+1, UTC+10, UTC-3, etc.)
569
721
  const m = sapTimezone.match(/^UTC([+-])(\d{1,2})$/);
570
722
  if (m) {
571
723
  const sign = m[1];
@@ -581,7 +733,7 @@ class SystemConnectorBase {
581
733
  catch (e) {
582
734
  trm_commons_1.Logger.error(`Cannot read/parse system timezone!`, true);
583
735
  trm_commons_1.Logger.error(e.toString(), true);
584
- this._timezone = 'UTC';
736
+ this._timezone = 'UTC'; //default
585
737
  }
586
738
  }
587
739
  return this._timezone;
@@ -1,8 +1,10 @@
1
1
  export * from "./RFCConnection";
2
2
  export * from "../client/Login";
3
3
  export * from "./InstallPackage";
4
+ export * from "./InstallTransport";
4
5
  export * from "../client/SapMessage";
5
6
  export * from "./ISystemConnector";
7
+ export * from "./ActionLock";
6
8
  export * from "./SystemConnector";
7
9
  export * from "./ISystemConnectorBase";
8
10
  export * from "./SystemConnectorBase";
@@ -11,3 +13,4 @@ export * from "./RESTSystemConnector";
11
13
  export * from "./RESTConnection";
12
14
  export * from "./SystemConnectorSupportedBulk";
13
15
  export * from "./RFCSystemConnector";
16
+ export * from "./OpenRFCSystemConnector";
@@ -17,8 +17,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./RFCConnection"), exports);
18
18
  __exportStar(require("../client/Login"), exports);
19
19
  __exportStar(require("./InstallPackage"), exports);
20
+ __exportStar(require("./InstallTransport"), exports);
20
21
  __exportStar(require("../client/SapMessage"), exports);
21
22
  __exportStar(require("./ISystemConnector"), exports);
23
+ __exportStar(require("./ActionLock"), exports);
22
24
  __exportStar(require("./SystemConnector"), exports);
23
25
  __exportStar(require("./ISystemConnectorBase"), exports);
24
26
  __exportStar(require("./SystemConnectorBase"), exports);
@@ -27,3 +29,4 @@ __exportStar(require("./RESTSystemConnector"), exports);
27
29
  __exportStar(require("./RESTConnection"), exports);
28
30
  __exportStar(require("./SystemConnectorSupportedBulk"), exports);
29
31
  __exportStar(require("./RFCSystemConnector"), exports);
32
+ __exportStar(require("./OpenRFCSystemConnector"), exports);
@@ -0,0 +1,10 @@
1
+ import type { E071K, PGMID, TROBJTYPE, TROBJ_NAME } from "../client";
2
+ /**
3
+ * The E071 object a table key belongs to: its master object (e.g. table content or a view
4
+ * maintenance entry), or the keyed table itself when no master is recorded.
5
+ */
6
+ export declare function getE071KOwner(key: E071K): {
7
+ pgmid: PGMID;
8
+ object: TROBJTYPE;
9
+ objName: TROBJ_NAME;
10
+ };
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getE071KOwner = getE071KOwner;
4
+ /**
5
+ * The E071 object a table key belongs to: its master object (e.g. table content or a view
6
+ * maintenance entry), or the keyed table itself when no master is recorded.
7
+ */
8
+ function getE071KOwner(key) {
9
+ var _a, _b;
10
+ return {
11
+ pgmid: key.pgmid,
12
+ object: ((_a = key.mastertype) === null || _a === void 0 ? void 0 : _a.trim()) ? key.mastertype : key.object,
13
+ objName: ((_b = key.mastername) === null || _b === void 0 ? void 0 : _b.trim()) ? key.mastername : key.objname
14
+ };
15
+ }
@@ -0,0 +1,19 @@
1
+ export type ReleaseLogStep = {
2
+ id: string;
3
+ name: string;
4
+ endDateTime?: number;
5
+ exitCode?: number;
6
+ log?: string;
7
+ };
8
+ export declare class R3transLogParser {
9
+ private _log;
10
+ constructor(_log: string);
11
+ private _getStream;
12
+ private _parseStepHeader;
13
+ private _appendStepDetails;
14
+ getReleaseLog(): Promise<ReleaseLogStep[]>;
15
+ static parseExitCode(exitCode?: number): {
16
+ type: 'SUCCESS' | 'ERROR' | 'WARNING' | 'UNKNOWN';
17
+ value: string;
18
+ };
19
+ }