@mcp-abap-adt/adt-backup 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (345) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +64 -0
  3. package/dist/bin/adt-backup.d.ts +3 -0
  4. package/dist/bin/adt-backup.d.ts.map +1 -0
  5. package/dist/bin/adt-backup.js +8 -0
  6. package/dist/lib/auth/NoopTokenProvider.d.ts +5 -0
  7. package/dist/lib/auth/NoopTokenProvider.d.ts.map +1 -0
  8. package/dist/lib/auth/NoopTokenProvider.js +9 -0
  9. package/dist/lib/auth/createTokenProvider.d.ts +4 -0
  10. package/dist/lib/auth/createTokenProvider.d.ts.map +1 -0
  11. package/dist/lib/auth/createTokenProvider.js +22 -0
  12. package/dist/lib/auth/getSapConfigFromBroker.d.ts +13 -0
  13. package/dist/lib/auth/getSapConfigFromBroker.d.ts.map +1 -0
  14. package/dist/lib/auth/getSapConfigFromBroker.js +184 -0
  15. package/dist/lib/auth/index.d.ts +4 -0
  16. package/dist/lib/auth/index.d.ts.map +1 -0
  17. package/dist/lib/auth/index.js +19 -0
  18. package/dist/lib/backup/backupObject.d.ts +4 -0
  19. package/dist/lib/backup/backupObject.d.ts.map +1 -0
  20. package/dist/lib/backup/backupObject.js +166 -0
  21. package/dist/lib/backup/index.d.ts +5 -0
  22. package/dist/lib/backup/index.d.ts.map +1 -0
  23. package/dist/lib/backup/index.js +20 -0
  24. package/dist/lib/backup/readBasicMetadata.d.ts +7 -0
  25. package/dist/lib/backup/readBasicMetadata.d.ts.map +1 -0
  26. package/dist/lib/backup/readBasicMetadata.js +64 -0
  27. package/dist/lib/backup/readMetadataXmlForType.d.ts +4 -0
  28. package/dist/lib/backup/readMetadataXmlForType.d.ts.map +1 -0
  29. package/dist/lib/backup/readMetadataXmlForType.js +100 -0
  30. package/dist/lib/backup/readSourceText.d.ts +4 -0
  31. package/dist/lib/backup/readSourceText.d.ts.map +1 -0
  32. package/dist/lib/backup/readSourceText.js +96 -0
  33. package/dist/lib/cli/applyLogEnv.d.ts +2 -0
  34. package/dist/lib/cli/applyLogEnv.d.ts.map +1 -0
  35. package/dist/lib/cli/applyLogEnv.js +50 -0
  36. package/dist/lib/cli/createLogger.d.ts +7 -0
  37. package/dist/lib/cli/createLogger.d.ts.map +1 -0
  38. package/dist/lib/cli/createLogger.js +30 -0
  39. package/dist/lib/cli/getVerbosity.d.ts +2 -0
  40. package/dist/lib/cli/getVerbosity.d.ts.map +1 -0
  41. package/dist/lib/cli/getVerbosity.js +27 -0
  42. package/dist/lib/cli/index.d.ts +13 -0
  43. package/dist/lib/cli/index.d.ts.map +1 -0
  44. package/dist/lib/cli/index.js +28 -0
  45. package/dist/lib/cli/isEnvEnabled.d.ts +2 -0
  46. package/dist/lib/cli/isEnvEnabled.d.ts.map +1 -0
  47. package/dist/lib/cli/isEnvEnabled.js +10 -0
  48. package/dist/lib/cli/logVerbose.d.ts +2 -0
  49. package/dist/lib/cli/logVerbose.d.ts.map +1 -0
  50. package/dist/lib/cli/logVerbose.js +9 -0
  51. package/dist/lib/cli/parseArgs.d.ts +2 -0
  52. package/dist/lib/cli/parseArgs.d.ts.map +1 -0
  53. package/dist/lib/cli/parseArgs.js +22 -0
  54. package/dist/lib/cli/redact.d.ts +4 -0
  55. package/dist/lib/cli/redact.d.ts.map +1 -0
  56. package/dist/lib/cli/redact.js +75 -0
  57. package/dist/lib/cli/shouldEnableAdtLogger.d.ts +2 -0
  58. package/dist/lib/cli/shouldEnableAdtLogger.d.ts.map +1 -0
  59. package/dist/lib/cli/shouldEnableAdtLogger.js +10 -0
  60. package/dist/lib/cli/shouldEnableBrokerLogger.d.ts +2 -0
  61. package/dist/lib/cli/shouldEnableBrokerLogger.d.ts.map +1 -0
  62. package/dist/lib/cli/shouldEnableBrokerLogger.js +9 -0
  63. package/dist/lib/cli/shouldEnableConnectionLogger.d.ts +2 -0
  64. package/dist/lib/cli/shouldEnableConnectionLogger.d.ts.map +1 -0
  65. package/dist/lib/cli/shouldEnableConnectionLogger.js +7 -0
  66. package/dist/lib/cli/shouldEnableProviderLogger.d.ts +2 -0
  67. package/dist/lib/cli/shouldEnableProviderLogger.d.ts.map +1 -0
  68. package/dist/lib/cli/shouldEnableProviderLogger.js +9 -0
  69. package/dist/lib/cli/shouldEnableStoreLogger.d.ts +2 -0
  70. package/dist/lib/cli/shouldEnableStoreLogger.d.ts.map +1 -0
  71. package/dist/lib/cli/shouldEnableStoreLogger.js +9 -0
  72. package/dist/lib/cli/usage.d.ts +2 -0
  73. package/dist/lib/cli/usage.d.ts.map +1 -0
  74. package/dist/lib/cli/usage.js +187 -0
  75. package/dist/lib/constants/index.d.ts +3 -0
  76. package/dist/lib/constants/index.d.ts.map +1 -0
  77. package/dist/lib/constants/index.js +18 -0
  78. package/dist/lib/constants/typeOrder.d.ts +3 -0
  79. package/dist/lib/constants/typeOrder.d.ts.map +1 -0
  80. package/dist/lib/constants/typeOrder.js +22 -0
  81. package/dist/lib/constants/xmlParser.d.ts +3 -0
  82. package/dist/lib/constants/xmlParser.d.ts.map +1 -0
  83. package/dist/lib/constants/xmlParser.js +8 -0
  84. package/dist/lib/crypto/computeBackupChecksum.d.ts +3 -0
  85. package/dist/lib/crypto/computeBackupChecksum.d.ts.map +1 -0
  86. package/dist/lib/crypto/computeBackupChecksum.js +14 -0
  87. package/dist/lib/crypto/computeCodeChecksum.d.ts +2 -0
  88. package/dist/lib/crypto/computeCodeChecksum.d.ts.map +1 -0
  89. package/dist/lib/crypto/computeCodeChecksum.js +8 -0
  90. package/dist/lib/crypto/decodeBase64.d.ts +2 -0
  91. package/dist/lib/crypto/decodeBase64.d.ts.map +1 -0
  92. package/dist/lib/crypto/decodeBase64.js +6 -0
  93. package/dist/lib/crypto/encodeBase64.d.ts +2 -0
  94. package/dist/lib/crypto/encodeBase64.d.ts.map +1 -0
  95. package/dist/lib/crypto/encodeBase64.js +6 -0
  96. package/dist/lib/crypto/hashText.d.ts +2 -0
  97. package/dist/lib/crypto/hashText.d.ts.map +1 -0
  98. package/dist/lib/crypto/hashText.js +7 -0
  99. package/dist/lib/crypto/index.d.ts +10 -0
  100. package/dist/lib/crypto/index.d.ts.map +1 -0
  101. package/dist/lib/crypto/index.js +25 -0
  102. package/dist/lib/crypto/stripBackupChecksum.d.ts +3 -0
  103. package/dist/lib/crypto/stripBackupChecksum.d.ts.map +1 -0
  104. package/dist/lib/crypto/stripBackupChecksum.js +8 -0
  105. package/dist/lib/crypto/updateTreeChecksums.d.ts +3 -0
  106. package/dist/lib/crypto/updateTreeChecksums.d.ts.map +1 -0
  107. package/dist/lib/crypto/updateTreeChecksums.js +17 -0
  108. package/dist/lib/crypto/verifyBackupChecksum.d.ts +3 -0
  109. package/dist/lib/crypto/verifyBackupChecksum.d.ts.map +1 -0
  110. package/dist/lib/crypto/verifyBackupChecksum.js +13 -0
  111. package/dist/lib/crypto/verifyTreeChecksums.d.ts +3 -0
  112. package/dist/lib/crypto/verifyTreeChecksums.d.ts.map +1 -0
  113. package/dist/lib/crypto/verifyTreeChecksums.js +22 -0
  114. package/dist/lib/dependencies/collectTreeDependencies.d.ts +4 -0
  115. package/dist/lib/dependencies/collectTreeDependencies.d.ts.map +1 -0
  116. package/dist/lib/dependencies/collectTreeDependencies.js +99 -0
  117. package/dist/lib/index.d.ts +14 -0
  118. package/dist/lib/index.d.ts.map +1 -0
  119. package/dist/lib/index.js +29 -0
  120. package/dist/lib/restore/applyTransportRequest.d.ts +2 -0
  121. package/dist/lib/restore/applyTransportRequest.d.ts.map +1 -0
  122. package/dist/lib/restore/applyTransportRequest.js +12 -0
  123. package/dist/lib/restore/buildRestorePlan.d.ts +12 -0
  124. package/dist/lib/restore/buildRestorePlan.d.ts.map +1 -0
  125. package/dist/lib/restore/buildRestorePlan.js +46 -0
  126. package/dist/lib/restore/collectDeletionTargets.d.ts +7 -0
  127. package/dist/lib/restore/collectDeletionTargets.d.ts.map +1 -0
  128. package/dist/lib/restore/collectDeletionTargets.js +23 -0
  129. package/dist/lib/restore/deleteBackupObjects.d.ts +4 -0
  130. package/dist/lib/restore/deleteBackupObjects.d.ts.map +1 -0
  131. package/dist/lib/restore/deleteBackupObjects.js +22 -0
  132. package/dist/lib/restore/index.d.ts +9 -0
  133. package/dist/lib/restore/index.d.ts.map +1 -0
  134. package/dist/lib/restore/index.js +24 -0
  135. package/dist/lib/restore/restoreObject.d.ts +4 -0
  136. package/dist/lib/restore/restoreObject.d.ts.map +1 -0
  137. package/dist/lib/restore/restoreObject.js +242 -0
  138. package/dist/lib/restore/restoreObjects.d.ts +4 -0
  139. package/dist/lib/restore/restoreObjects.d.ts.map +1 -0
  140. package/dist/lib/restore/restoreObjects.js +28 -0
  141. package/dist/lib/restore/restoreTreeBackup.d.ts +4 -0
  142. package/dist/lib/restore/restoreTreeBackup.d.ts.map +1 -0
  143. package/dist/lib/restore/restoreTreeBackup.js +69 -0
  144. package/dist/lib/restore/restoreTreeNode.d.ts +4 -0
  145. package/dist/lib/restore/restoreTreeNode.d.ts.map +1 -0
  146. package/dist/lib/restore/restoreTreeNode.js +276 -0
  147. package/dist/lib/restore/sortByDependencies.d.ts +3 -0
  148. package/dist/lib/restore/sortByDependencies.d.ts.map +1 -0
  149. package/dist/lib/restore/sortByDependencies.js +65 -0
  150. package/dist/lib/restore/sortTreeNodesByDependencies.d.ts +3 -0
  151. package/dist/lib/restore/sortTreeNodesByDependencies.d.ts.map +1 -0
  152. package/dist/lib/restore/sortTreeNodesByDependencies.js +101 -0
  153. package/dist/lib/run.d.ts +2 -0
  154. package/dist/lib/run.d.ts.map +1 -0
  155. package/dist/lib/run.js +748 -0
  156. package/dist/lib/state/index.d.ts +2 -0
  157. package/dist/lib/state/index.d.ts.map +1 -0
  158. package/dist/lib/state/index.js +17 -0
  159. package/dist/lib/state/verbosity.d.ts +4 -0
  160. package/dist/lib/state/verbosity.d.ts.map +1 -0
  161. package/dist/lib/state/verbosity.js +6 -0
  162. package/dist/lib/tree/buildConfigForNode.d.ts +3 -0
  163. package/dist/lib/tree/buildConfigForNode.d.ts.map +1 -0
  164. package/dist/lib/tree/buildConfigForNode.js +116 -0
  165. package/dist/lib/tree/buildPackageBackupTree.d.ts +4 -0
  166. package/dist/lib/tree/buildPackageBackupTree.d.ts.map +1 -0
  167. package/dist/lib/tree/buildPackageBackupTree.js +27 -0
  168. package/dist/lib/tree/buildTreeList.d.ts +13 -0
  169. package/dist/lib/tree/buildTreeList.d.ts.map +1 -0
  170. package/dist/lib/tree/buildTreeList.js +19 -0
  171. package/dist/lib/tree/collectTreeObjects.d.ts +3 -0
  172. package/dist/lib/tree/collectTreeObjects.d.ts.map +1 -0
  173. package/dist/lib/tree/collectTreeObjects.js +18 -0
  174. package/dist/lib/tree/enrichTreeNode.d.ts +4 -0
  175. package/dist/lib/tree/enrichTreeNode.d.ts.map +1 -0
  176. package/dist/lib/tree/enrichTreeNode.js +69 -0
  177. package/dist/lib/tree/findNodeInTree.d.ts +3 -0
  178. package/dist/lib/tree/findNodeInTree.d.ts.map +1 -0
  179. package/dist/lib/tree/findNodeInTree.js +30 -0
  180. package/dist/lib/tree/flattenTree.d.ts +3 -0
  181. package/dist/lib/tree/flattenTree.d.ts.map +1 -0
  182. package/dist/lib/tree/flattenTree.js +12 -0
  183. package/dist/lib/tree/formatTreeListText.d.ts +5 -0
  184. package/dist/lib/tree/formatTreeListText.d.ts.map +1 -0
  185. package/dist/lib/tree/formatTreeListText.js +26 -0
  186. package/dist/lib/tree/getNodeFunctionGroupName.d.ts +3 -0
  187. package/dist/lib/tree/getNodeFunctionGroupName.d.ts.map +1 -0
  188. package/dist/lib/tree/getNodeFunctionGroupName.js +12 -0
  189. package/dist/lib/tree/getNodeObjectId.d.ts +3 -0
  190. package/dist/lib/tree/getNodeObjectId.d.ts.map +1 -0
  191. package/dist/lib/tree/getNodeObjectId.js +9 -0
  192. package/dist/lib/tree/getNodeObjectSpec.d.ts +3 -0
  193. package/dist/lib/tree/getNodeObjectSpec.d.ts.map +1 -0
  194. package/dist/lib/tree/getNodeObjectSpec.js +21 -0
  195. package/dist/lib/tree/index.d.ts +13 -0
  196. package/dist/lib/tree/index.d.ts.map +1 -0
  197. package/dist/lib/tree/index.js +28 -0
  198. package/dist/lib/tree/isRestoreImplemented.d.ts +3 -0
  199. package/dist/lib/tree/isRestoreImplemented.d.ts.map +1 -0
  200. package/dist/lib/tree/isRestoreImplemented.js +27 -0
  201. package/dist/lib/tree/mapAdtTypeToSupported.d.ts +3 -0
  202. package/dist/lib/tree/mapAdtTypeToSupported.d.ts.map +1 -0
  203. package/dist/lib/tree/mapAdtTypeToSupported.js +75 -0
  204. package/dist/lib/tree/readPayloadForType.d.ts +7 -0
  205. package/dist/lib/tree/readPayloadForType.d.ts.map +1 -0
  206. package/dist/lib/tree/readPayloadForType.js +38 -0
  207. package/dist/lib/types.d.ts +60 -0
  208. package/dist/lib/types.d.ts.map +1 -0
  209. package/dist/lib/types.js +2 -0
  210. package/dist/lib/utils/applyConfigName.d.ts +3 -0
  211. package/dist/lib/utils/applyConfigName.d.ts.map +1 -0
  212. package/dist/lib/utils/applyConfigName.js +67 -0
  213. package/dist/lib/utils/asArray.d.ts +2 -0
  214. package/dist/lib/utils/asArray.d.ts.map +1 -0
  215. package/dist/lib/utils/asArray.js +9 -0
  216. package/dist/lib/utils/asConfig.d.ts +3 -0
  217. package/dist/lib/utils/asConfig.d.ts.map +1 -0
  218. package/dist/lib/utils/asConfig.js +6 -0
  219. package/dist/lib/utils/diffAttributes.d.ts +17 -0
  220. package/dist/lib/utils/diffAttributes.d.ts.map +1 -0
  221. package/dist/lib/utils/diffAttributes.js +27 -0
  222. package/dist/lib/utils/diffUnified.d.ts +4 -0
  223. package/dist/lib/utils/diffUnified.d.ts.map +1 -0
  224. package/dist/lib/utils/diffUnified.js +142 -0
  225. package/dist/lib/utils/ensureDescription.d.ts +3 -0
  226. package/dist/lib/utils/ensureDescription.d.ts.map +1 -0
  227. package/dist/lib/utils/ensureDescription.js +9 -0
  228. package/dist/lib/utils/formatObjectSpec.d.ts +3 -0
  229. package/dist/lib/utils/formatObjectSpec.d.ts.map +1 -0
  230. package/dist/lib/utils/formatObjectSpec.js +9 -0
  231. package/dist/lib/utils/index.d.ts +12 -0
  232. package/dist/lib/utils/index.d.ts.map +1 -0
  233. package/dist/lib/utils/index.js +27 -0
  234. package/dist/lib/utils/normalizeType.d.ts +3 -0
  235. package/dist/lib/utils/normalizeType.d.ts.map +1 -0
  236. package/dist/lib/utils/normalizeType.js +43 -0
  237. package/dist/lib/utils/objectId.d.ts +3 -0
  238. package/dist/lib/utils/objectId.d.ts.map +1 -0
  239. package/dist/lib/utils/objectId.js +9 -0
  240. package/dist/lib/utils/parseBehaviorDefinitionFromClass.d.ts +2 -0
  241. package/dist/lib/utils/parseBehaviorDefinitionFromClass.d.ts.map +1 -0
  242. package/dist/lib/utils/parseBehaviorDefinitionFromClass.js +10 -0
  243. package/dist/lib/utils/parseObjectSpec.d.ts +3 -0
  244. package/dist/lib/utils/parseObjectSpec.d.ts.map +1 -0
  245. package/dist/lib/utils/parseObjectSpec.js +27 -0
  246. package/dist/lib/utils/responseToText.d.ts +4 -0
  247. package/dist/lib/utils/responseToText.d.ts.map +1 -0
  248. package/dist/lib/utils/responseToText.js +11 -0
  249. package/dist/lib/utils/toBackupConfig.d.ts +3 -0
  250. package/dist/lib/utils/toBackupConfig.d.ts.map +1 -0
  251. package/dist/lib/utils/toBackupConfig.js +6 -0
  252. package/dist/lib/verify/collectBackupNodes.d.ts +3 -0
  253. package/dist/lib/verify/collectBackupNodes.d.ts.map +1 -0
  254. package/dist/lib/verify/collectBackupNodes.js +13 -0
  255. package/dist/lib/verify/findOtherType.d.ts +4 -0
  256. package/dist/lib/verify/findOtherType.d.ts.map +1 -0
  257. package/dist/lib/verify/findOtherType.js +41 -0
  258. package/dist/lib/verify/formatVerifyResultsText.d.ts +3 -0
  259. package/dist/lib/verify/formatVerifyResultsText.d.ts.map +1 -0
  260. package/dist/lib/verify/formatVerifyResultsText.js +30 -0
  261. package/dist/lib/verify/getExpectedPackage.d.ts +3 -0
  262. package/dist/lib/verify/getExpectedPackage.d.ts.map +1 -0
  263. package/dist/lib/verify/getExpectedPackage.js +14 -0
  264. package/dist/lib/verify/index.d.ts +8 -0
  265. package/dist/lib/verify/index.d.ts.map +1 -0
  266. package/dist/lib/verify/index.js +23 -0
  267. package/dist/lib/verify/types.d.ts +23 -0
  268. package/dist/lib/verify/types.d.ts.map +1 -0
  269. package/dist/lib/verify/types.js +2 -0
  270. package/dist/lib/verify/verifyBackup.d.ts +10 -0
  271. package/dist/lib/verify/verifyBackup.d.ts.map +1 -0
  272. package/dist/lib/verify/verifyBackup.js +54 -0
  273. package/dist/lib/verify/verifyObjectInSystem.d.ts +5 -0
  274. package/dist/lib/verify/verifyObjectInSystem.d.ts.map +1 -0
  275. package/dist/lib/verify/verifyObjectInSystem.js +136 -0
  276. package/dist/lib/xml/extractMetadata.d.ts +5 -0
  277. package/dist/lib/xml/extractMetadata.d.ts.map +1 -0
  278. package/dist/lib/xml/extractMetadata.js +13 -0
  279. package/dist/lib/xml/findAttribute.d.ts +3 -0
  280. package/dist/lib/xml/findAttribute.d.ts.map +1 -0
  281. package/dist/lib/xml/findAttribute.js +29 -0
  282. package/dist/lib/xml/findNode.d.ts +3 -0
  283. package/dist/lib/xml/findNode.d.ts.map +1 -0
  284. package/dist/lib/xml/findNode.js +30 -0
  285. package/dist/lib/xml/findNodeValue.d.ts +3 -0
  286. package/dist/lib/xml/findNodeValue.d.ts.map +1 -0
  287. package/dist/lib/xml/findNodeValue.js +11 -0
  288. package/dist/lib/xml/findPackageName.d.ts +3 -0
  289. package/dist/lib/xml/findPackageName.d.ts.map +1 -0
  290. package/dist/lib/xml/findPackageName.js +35 -0
  291. package/dist/lib/xml/flattenXmlAttributes.d.ts +2 -0
  292. package/dist/lib/xml/flattenXmlAttributes.d.ts.map +1 -0
  293. package/dist/lib/xml/flattenXmlAttributes.js +82 -0
  294. package/dist/lib/xml/getAttribute.d.ts +3 -0
  295. package/dist/lib/xml/getAttribute.d.ts.map +1 -0
  296. package/dist/lib/xml/getAttribute.js +12 -0
  297. package/dist/lib/xml/getNodeAttribute.d.ts +3 -0
  298. package/dist/lib/xml/getNodeAttribute.d.ts.map +1 -0
  299. package/dist/lib/xml/getNodeAttribute.js +11 -0
  300. package/dist/lib/xml/getNodeDescription.d.ts +3 -0
  301. package/dist/lib/xml/getNodeDescription.d.ts.map +1 -0
  302. package/dist/lib/xml/getNodeDescription.js +12 -0
  303. package/dist/lib/xml/getNodeName.d.ts +3 -0
  304. package/dist/lib/xml/getNodeName.d.ts.map +1 -0
  305. package/dist/lib/xml/getNodeName.js +12 -0
  306. package/dist/lib/xml/getNodeType.d.ts +3 -0
  307. package/dist/lib/xml/getNodeType.d.ts.map +1 -0
  308. package/dist/lib/xml/getNodeType.js +12 -0
  309. package/dist/lib/xml/index.d.ts +19 -0
  310. package/dist/lib/xml/index.d.ts.map +1 -0
  311. package/dist/lib/xml/index.js +34 -0
  312. package/dist/lib/xml/isNodeObject.d.ts +3 -0
  313. package/dist/lib/xml/isNodeObject.d.ts.map +1 -0
  314. package/dist/lib/xml/isNodeObject.js +12 -0
  315. package/dist/lib/xml/parseBehaviorDefinitionConfig.d.ts +3 -0
  316. package/dist/lib/xml/parseBehaviorDefinitionConfig.d.ts.map +1 -0
  317. package/dist/lib/xml/parseBehaviorDefinitionConfig.js +40 -0
  318. package/dist/lib/xml/parseClassConfig.d.ts +3 -0
  319. package/dist/lib/xml/parseClassConfig.d.ts.map +1 -0
  320. package/dist/lib/xml/parseClassConfig.js +59 -0
  321. package/dist/lib/xml/parseDataElementConfig.d.ts +3 -0
  322. package/dist/lib/xml/parseDataElementConfig.d.ts.map +1 -0
  323. package/dist/lib/xml/parseDataElementConfig.js +67 -0
  324. package/dist/lib/xml/parseDomainConfig.d.ts +3 -0
  325. package/dist/lib/xml/parseDomainConfig.d.ts.map +1 -0
  326. package/dist/lib/xml/parseDomainConfig.js +66 -0
  327. package/dist/lib/xml/parseEnhancementConfig.d.ts +3 -0
  328. package/dist/lib/xml/parseEnhancementConfig.d.ts.map +1 -0
  329. package/dist/lib/xml/parseEnhancementConfig.js +73 -0
  330. package/dist/lib/xml/parsePackageConfig.d.ts +3 -0
  331. package/dist/lib/xml/parsePackageConfig.d.ts.map +1 -0
  332. package/dist/lib/xml/parsePackageConfig.js +48 -0
  333. package/dist/lib/xml/parseTableTypeConfig.d.ts +3 -0
  334. package/dist/lib/xml/parseTableTypeConfig.d.ts.map +1 -0
  335. package/dist/lib/xml/parseTableTypeConfig.js +64 -0
  336. package/dist/lib/xml/readAttr.d.ts +3 -0
  337. package/dist/lib/xml/readAttr.d.ts.map +1 -0
  338. package/dist/lib/xml/readAttr.js +16 -0
  339. package/dist/lib/xml/toBoolean.d.ts +2 -0
  340. package/dist/lib/xml/toBoolean.d.ts.map +1 -0
  341. package/dist/lib/xml/toBoolean.js +15 -0
  342. package/dist/lib/xml/toNumber.d.ts +2 -0
  343. package/dist/lib/xml/toNumber.d.ts.map +1 -0
  344. package/dist/lib/xml/toNumber.js +10 -0
  345. package/package.json +64 -0
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.parseDomainConfig = parseDomainConfig;
4
+ const xmlParser_1 = require("../constants/xmlParser");
5
+ const findAttribute_1 = require("./findAttribute");
6
+ const findNode_1 = require("./findNode");
7
+ const findNodeValue_1 = require("./findNodeValue");
8
+ const getNodeAttribute_1 = require("./getNodeAttribute");
9
+ const toBoolean_1 = require("./toBoolean");
10
+ const toNumber_1 = require("./toNumber");
11
+ function parseDomainConfig(xml) {
12
+ const parsed = xmlParser_1.xmlParser.parse(xml);
13
+ const root = (0, findNode_1.findNode)(parsed, ['doma:domain', 'domain']) ?? parsed;
14
+ const domainName = (0, getNodeAttribute_1.getNodeAttribute)(root, 'adtcore:name') ||
15
+ (0, findAttribute_1.findAttribute)(root, 'adtcore:name');
16
+ const description = (0, getNodeAttribute_1.getNodeAttribute)(root, 'adtcore:description') ||
17
+ (0, findAttribute_1.findAttribute)(root, 'adtcore:description');
18
+ const packageRef = (0, findNode_1.findNode)(root, ['adtcore:packageRef', 'packageRef']);
19
+ const packageName = (0, getNodeAttribute_1.getNodeAttribute)(packageRef, 'adtcore:name') ||
20
+ (0, findAttribute_1.findAttribute)(packageRef, 'adtcore:name');
21
+ const datatype = (0, findNodeValue_1.findNodeValue)(root, ['doma:datatype', 'datatype']);
22
+ const length = (0, toNumber_1.toNumber)((0, findNodeValue_1.findNodeValue)(root, ['doma:length', 'length']));
23
+ const decimals = (0, toNumber_1.toNumber)((0, findNodeValue_1.findNodeValue)(root, ['doma:decimals', 'decimals']));
24
+ const conversion_exit = (0, findNodeValue_1.findNodeValue)(root, [
25
+ 'doma:conversionExit',
26
+ 'conversionExit',
27
+ ]);
28
+ const sign_exists = (0, toBoolean_1.toBoolean)((0, findNodeValue_1.findNodeValue)(root, ['doma:signExists', 'signExists']));
29
+ const lowercase = (0, toBoolean_1.toBoolean)((0, findNodeValue_1.findNodeValue)(root, ['doma:lowercase', 'lowercase']));
30
+ const valueTableRef = (0, findNode_1.findNode)(root, ['doma:valueTableRef', 'valueTableRef']);
31
+ const value_table = (0, getNodeAttribute_1.getNodeAttribute)(valueTableRef, 'adtcore:name') ||
32
+ (0, findAttribute_1.findAttribute)(valueTableRef, 'adtcore:name');
33
+ const fixedValuesNode = (0, findNode_1.findNode)(root, ['doma:fixValues', 'fixValues']);
34
+ const fixed_values = [];
35
+ if (fixedValuesNode) {
36
+ const fixValueEntries = (0, findNode_1.findNode)(fixedValuesNode, [
37
+ 'doma:fixValue',
38
+ 'fixValue',
39
+ ]);
40
+ const entries = Array.isArray(fixValueEntries)
41
+ ? fixValueEntries
42
+ : fixValueEntries
43
+ ? [fixValueEntries]
44
+ : [];
45
+ for (const entry of entries) {
46
+ const low = (0, findNodeValue_1.findNodeValue)(entry, ['doma:low', 'low']);
47
+ const text = (0, findNodeValue_1.findNodeValue)(entry, ['doma:text', 'text']);
48
+ if (low && text) {
49
+ fixed_values.push({ low, text });
50
+ }
51
+ }
52
+ }
53
+ return {
54
+ domainName,
55
+ description,
56
+ packageName,
57
+ datatype,
58
+ length,
59
+ decimals,
60
+ conversion_exit,
61
+ sign_exists,
62
+ lowercase,
63
+ value_table,
64
+ fixed_values: fixed_values.length > 0 ? fixed_values : undefined,
65
+ };
66
+ }
@@ -0,0 +1,3 @@
1
+ import type { IEnhancementConfig } from '@mcp-abap-adt/adt-clients';
2
+ export declare function parseEnhancementConfig(xml: string): Partial<IEnhancementConfig>;
3
+ //# sourceMappingURL=parseEnhancementConfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parseEnhancementConfig.d.ts","sourceRoot":"","sources":["../../../src/lib/xml/parseEnhancementConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAQpE,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,kBAAkB,CAAC,CA0E7B"}
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.parseEnhancementConfig = parseEnhancementConfig;
4
+ const xmlParser_1 = require("../constants/xmlParser");
5
+ const findAttribute_1 = require("./findAttribute");
6
+ const findNode_1 = require("./findNode");
7
+ const findNodeValue_1 = require("./findNodeValue");
8
+ const getNodeAttribute_1 = require("./getNodeAttribute");
9
+ function parseEnhancementConfig(xml) {
10
+ const parsed = xmlParser_1.xmlParser.parse(xml);
11
+ const root = (0, findNode_1.findNode)(parsed, [
12
+ 'enho:enhancement',
13
+ 'enhancement',
14
+ 'enho:enho',
15
+ 'enho',
16
+ 'enhs:enhancementSpot',
17
+ 'enhancementSpot',
18
+ ]) ?? parsed;
19
+ const enhancementName = (0, getNodeAttribute_1.getNodeAttribute)(root, 'adtcore:name') ||
20
+ (0, findAttribute_1.findAttribute)(root, 'adtcore:name');
21
+ const description = (0, getNodeAttribute_1.getNodeAttribute)(root, 'adtcore:description') ||
22
+ (0, findAttribute_1.findAttribute)(root, 'adtcore:description');
23
+ const packageRef = (0, findNode_1.findNode)(root, ['adtcore:packageRef', 'packageRef']);
24
+ const packageName = (0, getNodeAttribute_1.getNodeAttribute)(packageRef, 'adtcore:name') ||
25
+ (0, findAttribute_1.findAttribute)(packageRef, 'adtcore:name');
26
+ // Enhancement type is determined by ADT type attribute
27
+ const adtType = (0, getNodeAttribute_1.getNodeAttribute)(root, 'adtcore:type') ||
28
+ (0, findAttribute_1.findAttribute)(root, 'adtcore:type');
29
+ let enhancementType;
30
+ if (adtType) {
31
+ if (adtType.includes('ENHO') || adtType.includes('enhoxh')) {
32
+ enhancementType = 'enhoxh';
33
+ }
34
+ else if (adtType.includes('ENHB') || adtType.includes('enhoxhb')) {
35
+ enhancementType = 'enhoxhb';
36
+ }
37
+ else if (adtType.includes('ENHH') || adtType.includes('enhoxhh')) {
38
+ enhancementType = 'enhoxhh';
39
+ }
40
+ else if (adtType.includes('ENHS') || adtType.includes('enhsxs')) {
41
+ enhancementType = 'enhsxs';
42
+ }
43
+ else if (adtType.includes('ENHSB') || adtType.includes('enhsxsb')) {
44
+ enhancementType = 'enhsxsb';
45
+ }
46
+ }
47
+ const enhancementSpotRef = (0, findNode_1.findNode)(root, [
48
+ 'enho:enhancementSpotRef',
49
+ 'enhancementSpotRef',
50
+ 'enho:spot',
51
+ 'spot',
52
+ ]);
53
+ const enhancementSpot = (0, getNodeAttribute_1.getNodeAttribute)(enhancementSpotRef, 'adtcore:name') ||
54
+ (0, findAttribute_1.findAttribute)(enhancementSpotRef, 'adtcore:name') ||
55
+ (0, findNodeValue_1.findNodeValue)(root, ['enho:enhancementSpot', 'enhancementSpot']);
56
+ const badiDefinitionRef = (0, findNode_1.findNode)(root, [
57
+ 'enho:badiDefinitionRef',
58
+ 'badiDefinitionRef',
59
+ 'enho:badiDefinition',
60
+ 'badiDefinition',
61
+ ]);
62
+ const badiDefinition = (0, getNodeAttribute_1.getNodeAttribute)(badiDefinitionRef, 'adtcore:name') ||
63
+ (0, findAttribute_1.findAttribute)(badiDefinitionRef, 'adtcore:name') ||
64
+ (0, findNodeValue_1.findNodeValue)(root, ['enho:badiDefinition', 'badiDefinition']);
65
+ return {
66
+ enhancementName,
67
+ description,
68
+ packageName,
69
+ enhancementType,
70
+ enhancementSpot: enhancementSpot || undefined,
71
+ badiDefinition: badiDefinition || undefined,
72
+ };
73
+ }
@@ -0,0 +1,3 @@
1
+ import type { IPackageConfig } from '@mcp-abap-adt/adt-clients';
2
+ export declare function parsePackageConfig(xml: string): Partial<IPackageConfig>;
3
+ //# sourceMappingURL=parsePackageConfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parsePackageConfig.d.ts","sourceRoot":"","sources":["../../../src/lib/xml/parsePackageConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAQhE,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CA6CvE"}
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.parsePackageConfig = parsePackageConfig;
4
+ const xmlParser_1 = require("../constants/xmlParser");
5
+ const findAttribute_1 = require("./findAttribute");
6
+ const findNode_1 = require("./findNode");
7
+ const findNodeValue_1 = require("./findNodeValue");
8
+ const getNodeAttribute_1 = require("./getNodeAttribute");
9
+ function parsePackageConfig(xml) {
10
+ const parsed = xmlParser_1.xmlParser.parse(xml);
11
+ const root = (0, findNode_1.findNode)(parsed, ['pak:package', 'package']) ?? parsed;
12
+ const packageName = (0, getNodeAttribute_1.getNodeAttribute)(root, 'adtcore:name') ||
13
+ (0, findAttribute_1.findAttribute)(root, 'adtcore:name');
14
+ const description = (0, getNodeAttribute_1.getNodeAttribute)(root, 'adtcore:description') ||
15
+ (0, findAttribute_1.findAttribute)(root, 'adtcore:description');
16
+ const superPackageNode = (0, findNode_1.findNode)(root, ['pak:superPackage', 'superPackage']);
17
+ const softwareComponentNode = (0, findNode_1.findNode)(root, [
18
+ 'pak:softwareComponent',
19
+ 'softwareComponent',
20
+ ]);
21
+ const superPackage = (0, getNodeAttribute_1.getNodeAttribute)(superPackageNode, 'adtcore:name') ||
22
+ (0, findAttribute_1.findAttribute)(superPackageNode, 'adtcore:name');
23
+ const softwareComponent = (0, getNodeAttribute_1.getNodeAttribute)(softwareComponentNode, 'pak:name') ||
24
+ (0, getNodeAttribute_1.getNodeAttribute)(softwareComponentNode, 'name') ||
25
+ (0, findAttribute_1.findAttribute)(softwareComponentNode, 'pak:name') ||
26
+ (0, findAttribute_1.findAttribute)(softwareComponentNode, 'name');
27
+ const packageType = (0, findNodeValue_1.findNodeValue)(root, ['pak:packageType', 'packageType']);
28
+ const transportLayer = (0, findNodeValue_1.findNodeValue)(root, [
29
+ 'pak:transportLayer',
30
+ 'transportLayer',
31
+ ]);
32
+ const applicationComponent = (0, findNodeValue_1.findNodeValue)(root, [
33
+ 'pak:applicationComponent',
34
+ 'applicationComponent',
35
+ ]);
36
+ const responsible = (0, getNodeAttribute_1.getNodeAttribute)(root, 'adtcore:responsible') ||
37
+ (0, findAttribute_1.findAttribute)(root, 'adtcore:responsible');
38
+ return {
39
+ packageName,
40
+ description,
41
+ superPackage,
42
+ softwareComponent,
43
+ packageType,
44
+ transportLayer,
45
+ applicationComponent,
46
+ responsible,
47
+ };
48
+ }
@@ -0,0 +1,3 @@
1
+ import type { ITableTypeConfig } from '@mcp-abap-adt/adt-clients';
2
+ export declare function parseTableTypeConfig(xml: string): Partial<ITableTypeConfig>;
3
+ //# sourceMappingURL=parseTableTypeConfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parseTableTypeConfig.d.ts","sourceRoot":"","sources":["../../../src/lib/xml/parseTableTypeConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAQlE,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA4E3E"}
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.parseTableTypeConfig = parseTableTypeConfig;
4
+ const xmlParser_1 = require("../constants/xmlParser");
5
+ const findAttribute_1 = require("./findAttribute");
6
+ const findNode_1 = require("./findNode");
7
+ const findNodeValue_1 = require("./findNodeValue");
8
+ const getNodeAttribute_1 = require("./getNodeAttribute");
9
+ function parseTableTypeConfig(xml) {
10
+ const parsed = xmlParser_1.xmlParser.parse(xml);
11
+ const root = (0, findNode_1.findNode)(parsed, ['ttyp:tableType', 'tableType', 'blue:wbobj', 'wbobj']) ??
12
+ parsed;
13
+ const tableTypeName = (0, getNodeAttribute_1.getNodeAttribute)(root, 'adtcore:name') ||
14
+ (0, findAttribute_1.findAttribute)(root, 'adtcore:name');
15
+ const description = (0, getNodeAttribute_1.getNodeAttribute)(root, 'adtcore:description') ||
16
+ (0, findAttribute_1.findAttribute)(root, 'adtcore:description');
17
+ const packageRef = (0, findNode_1.findNode)(root, ['adtcore:packageRef', 'packageRef']);
18
+ const packageName = (0, getNodeAttribute_1.getNodeAttribute)(packageRef, 'adtcore:name') ||
19
+ (0, findAttribute_1.findAttribute)(packageRef, 'adtcore:name');
20
+ const rowTypeRef = (0, findNode_1.findNode)(root, [
21
+ 'ttyp:rowTypeRef',
22
+ 'rowTypeRef',
23
+ 'ttyp:rowType',
24
+ 'rowType',
25
+ ]);
26
+ const rowTypeName = (0, getNodeAttribute_1.getNodeAttribute)(rowTypeRef, 'adtcore:name') ||
27
+ (0, findAttribute_1.findAttribute)(rowTypeRef, 'adtcore:name') ||
28
+ (0, findNodeValue_1.findNodeValue)(root, ['ttyp:rowTypeName', 'rowTypeName']);
29
+ const rowTypeKind = ((0, findNodeValue_1.findNodeValue)(root, [
30
+ 'ttyp:rowTypeKind',
31
+ 'rowTypeKind',
32
+ ]) ||
33
+ (0, getNodeAttribute_1.getNodeAttribute)(root, 'ttyp:rowTypeKind') ||
34
+ (0, findAttribute_1.findAttribute)(root, 'ttyp:rowTypeKind'));
35
+ const accessType = ((0, findNodeValue_1.findNodeValue)(root, ['ttyp:accessType', 'accessType']) ||
36
+ (0, getNodeAttribute_1.getNodeAttribute)(root, 'ttyp:accessType') ||
37
+ (0, findAttribute_1.findAttribute)(root, 'ttyp:accessType'));
38
+ const primaryKeyDefinition = ((0, findNodeValue_1.findNodeValue)(root, [
39
+ 'ttyp:primaryKeyDefinition',
40
+ 'primaryKeyDefinition',
41
+ 'ttyp:keyDefinition',
42
+ 'keyDefinition',
43
+ ]) ||
44
+ (0, getNodeAttribute_1.getNodeAttribute)(root, 'ttyp:primaryKeyDefinition') ||
45
+ (0, findAttribute_1.findAttribute)(root, 'ttyp:primaryKeyDefinition'));
46
+ const primaryKeyKind = ((0, findNodeValue_1.findNodeValue)(root, [
47
+ 'ttyp:primaryKeyKind',
48
+ 'primaryKeyKind',
49
+ 'ttyp:keyKind',
50
+ 'keyKind',
51
+ ]) ||
52
+ (0, getNodeAttribute_1.getNodeAttribute)(root, 'ttyp:primaryKeyKind') ||
53
+ (0, findAttribute_1.findAttribute)(root, 'ttyp:primaryKeyKind'));
54
+ return {
55
+ tableTypeName,
56
+ description,
57
+ packageName,
58
+ rowTypeName: rowTypeName || undefined,
59
+ rowTypeKind: rowTypeKind || undefined,
60
+ accessType: accessType || undefined,
61
+ primaryKeyDefinition: primaryKeyDefinition || undefined,
62
+ primaryKeyKind: primaryKeyKind || undefined,
63
+ };
64
+ }
@@ -0,0 +1,3 @@
1
+ import type { NodeRecord } from '../types';
2
+ export declare function readAttr(node: NodeRecord, name: string): string | undefined;
3
+ //# sourceMappingURL=readAttr.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"readAttr.d.ts","sourceRoot":"","sources":["../../../src/lib/xml/readAttr.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAE3C,wBAAgB,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAY3E"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.readAttr = readAttr;
4
+ function readAttr(node, name) {
5
+ const value = node[`@_${name}`];
6
+ if (value === undefined || value === null) {
7
+ return undefined;
8
+ }
9
+ if (typeof value === 'string') {
10
+ return value;
11
+ }
12
+ if (typeof value === 'number' || typeof value === 'boolean') {
13
+ return String(value);
14
+ }
15
+ return undefined;
16
+ }
@@ -0,0 +1,2 @@
1
+ export declare function toBoolean(value?: string): boolean | undefined;
2
+ //# sourceMappingURL=toBoolean.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toBoolean.d.ts","sourceRoot":"","sources":["../../../src/lib/xml/toBoolean.ts"],"names":[],"mappings":"AAAA,wBAAgB,SAAS,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAW7D"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.toBoolean = toBoolean;
4
+ function toBoolean(value) {
5
+ if (value === undefined) {
6
+ return undefined;
7
+ }
8
+ if (value === 'true' || value === 'false') {
9
+ return value === 'true';
10
+ }
11
+ if (value === '1' || value === '0') {
12
+ return value === '1';
13
+ }
14
+ return undefined;
15
+ }
@@ -0,0 +1,2 @@
1
+ export declare function toNumber(value?: string): number | undefined;
2
+ //# sourceMappingURL=toNumber.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toNumber.d.ts","sourceRoot":"","sources":["../../../src/lib/xml/toNumber.ts"],"names":[],"mappings":"AAAA,wBAAgB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAM3D"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.toNumber = toNumber;
4
+ function toNumber(value) {
5
+ if (!value) {
6
+ return undefined;
7
+ }
8
+ const parsed = Number.parseInt(value, 10);
9
+ return Number.isNaN(parsed) ? undefined : parsed;
10
+ }
package/package.json ADDED
@@ -0,0 +1,64 @@
1
+ {
2
+ "name": "@mcp-abap-adt/adt-backup",
3
+ "version": "0.1.0",
4
+ "description": "ADT backup CLI for SAP ABAP objects (recursive package backups and restores)",
5
+ "main": "dist/bin/adt-backup.js",
6
+ "types": "dist/bin/adt-backup.d.ts",
7
+ "bin": {
8
+ "adt-backup": "dist/bin/adt-backup.js"
9
+ },
10
+ "files": [
11
+ "dist",
12
+ "README.md",
13
+ "LICENSE"
14
+ ],
15
+ "keywords": [
16
+ "abap",
17
+ "sap",
18
+ "adt",
19
+ "backup",
20
+ "cli",
21
+ "mcp"
22
+ ],
23
+ "author": "Oleksii Kyslytsia <oleksij.kyslytsja@gmail.com>",
24
+ "license": "MIT",
25
+ "homepage": "https://github.com/fr0ster/mcp-abap-adt-backup#readme",
26
+ "bugs": {
27
+ "url": "https://github.com/fr0ster/mcp-abap-adt-backup/issues"
28
+ },
29
+ "repository": {
30
+ "type": "git",
31
+ "url": "git+https://github.com/fr0ster/mcp-abap-adt-backup.git"
32
+ },
33
+ "publishConfig": {
34
+ "access": "public"
35
+ },
36
+ "scripts": {
37
+ "clean": "rm -rf dist tsconfig.tsbuildinfo",
38
+ "lint": "npx biome check --write src",
39
+ "lint:check": "npx biome check src",
40
+ "format": "npx biome format --write src",
41
+ "build": "npm run --silent clean && npx biome check src --diagnostic-level=error && npx tsc -p tsconfig.json",
42
+ "build:fast": "npx tsc -p tsconfig.json",
43
+ "test:integration": "node scripts/integration-test.mjs",
44
+ "delete:package": "npx ts-node scripts/delete-package.ts",
45
+ "debug:deps": "npx ts-node scripts/debug-where-used-list.ts"
46
+ },
47
+ "engines": {
48
+ "node": ">=18.0.0"
49
+ },
50
+ "dependencies": {
51
+ "@mcp-abap-adt/adt-clients": "0.3.14",
52
+ "@mcp-abap-adt/auth-broker": "^0.2.17",
53
+ "@mcp-abap-adt/auth-providers": "^0.2.10",
54
+ "@mcp-abap-adt/auth-stores": "^0.2.10",
55
+ "@mcp-abap-adt/connection": "^0.2.8",
56
+ "fast-xml-parser": "^5.3.3",
57
+ "yaml": "^2.3.4"
58
+ },
59
+ "devDependencies": {
60
+ "@biomejs/biome": "^2.3.10",
61
+ "@types/node": "^24.2.1",
62
+ "typescript": "^5.9.2"
63
+ }
64
+ }