@mcp-abap-adt/core 2.5.0 → 2.5.2

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 (400) hide show
  1. package/CHANGELOG.md +49 -0
  2. package/README.md +3 -0
  3. package/dist/handlers/bdef/handleCreateBehaviorDefinition.d.ts +50 -0
  4. package/dist/handlers/bdef/handleCreateBehaviorDefinition.d.ts.map +1 -0
  5. package/dist/handlers/bdef/handleCreateBehaviorDefinition.js +101 -0
  6. package/dist/handlers/bdef/handleGetBdef.d.ts +54 -0
  7. package/dist/handlers/bdef/handleGetBdef.d.ts.map +1 -0
  8. package/dist/handlers/bdef/handleGetBdef.js +89 -0
  9. package/dist/handlers/bdef/handleUpdateBehaviorDefinition.d.ts +37 -0
  10. package/dist/handlers/bdef/handleUpdateBehaviorDefinition.d.ts.map +1 -0
  11. package/dist/handlers/bdef/handleUpdateBehaviorDefinition.js +85 -0
  12. package/dist/handlers/behavior_definition/readonly/handleGetBdef.d.ts +54 -0
  13. package/dist/handlers/behavior_definition/readonly/handleGetBdef.d.ts.map +1 -0
  14. package/dist/handlers/behavior_definition/readonly/handleGetBdef.js +89 -0
  15. package/dist/handlers/class/handleCheckClass.d.ts +59 -0
  16. package/dist/handlers/class/handleCheckClass.d.ts.map +1 -0
  17. package/dist/handlers/class/handleCheckClass.js +138 -0
  18. package/dist/handlers/class/handleCreateClass.d.ts +80 -0
  19. package/dist/handlers/class/handleCreateClass.d.ts.map +1 -0
  20. package/dist/handlers/class/handleCreateClass.js +192 -0
  21. package/dist/handlers/class/handleGetClass.d.ts +16 -0
  22. package/dist/handlers/class/handleGetClass.d.ts.map +1 -0
  23. package/dist/handlers/class/handleGetClass.js +159 -0
  24. package/dist/handlers/class/handleUpdateClassSource.d.ts +44 -0
  25. package/dist/handlers/class/handleUpdateClassSource.d.ts.map +1 -0
  26. package/dist/handlers/class/handleUpdateClassSource.js +131 -0
  27. package/dist/handlers/class/handleValidateClass.d.ts +62 -0
  28. package/dist/handlers/class/handleValidateClass.d.ts.map +1 -0
  29. package/dist/handlers/class/handleValidateClass.js +136 -0
  30. package/dist/handlers/class/readonly/handleGetClass.d.ts +20 -0
  31. package/dist/handlers/class/readonly/handleGetClass.d.ts.map +1 -0
  32. package/dist/handlers/class/readonly/handleGetClass.js +159 -0
  33. package/dist/handlers/common/handleActivateObject.d.ts +62 -0
  34. package/dist/handlers/common/handleActivateObject.d.ts.map +1 -0
  35. package/dist/handlers/common/handleActivateObject.js +137 -0
  36. package/dist/handlers/common/handleCheckObject.d.ts +63 -0
  37. package/dist/handlers/common/handleCheckObject.d.ts.map +1 -0
  38. package/dist/handlers/common/handleCheckObject.js +197 -0
  39. package/dist/handlers/common/handleDeleteObject.d.ts +46 -0
  40. package/dist/handlers/common/handleDeleteObject.d.ts.map +1 -0
  41. package/dist/handlers/common/handleDeleteObject.js +176 -0
  42. package/dist/handlers/common/handleLockObject.d.ts +57 -0
  43. package/dist/handlers/common/handleLockObject.d.ts.map +1 -0
  44. package/dist/handlers/common/handleLockObject.js +195 -0
  45. package/dist/handlers/common/handleUnlockObject.d.ts +61 -0
  46. package/dist/handlers/common/handleUnlockObject.d.ts.map +1 -0
  47. package/dist/handlers/common/handleUnlockObject.js +178 -0
  48. package/dist/handlers/common/handleValidateObject.d.ts +58 -0
  49. package/dist/handlers/common/handleValidateObject.d.ts.map +1 -0
  50. package/dist/handlers/common/handleValidateObject.js +177 -0
  51. package/dist/handlers/compact/high/compactSchemas.d.ts +218 -9
  52. package/dist/handlers/compact/high/compactSchemas.d.ts.map +1 -1
  53. package/dist/handlers/compact/high/compactSchemas.js +410 -134
  54. package/dist/handlers/compact/high/compactSchemas.js.map +1 -1
  55. package/dist/handlers/compact/high/handleHandlerActivate.d.ts +7 -1
  56. package/dist/handlers/compact/high/handleHandlerActivate.d.ts.map +1 -1
  57. package/dist/handlers/compact/high/handleHandlerActivate.js +1 -1
  58. package/dist/handlers/compact/high/handleHandlerActivate.js.map +1 -1
  59. package/dist/handlers/compact/high/handleHandlerCdsUnitTestResult.d.ts +4 -1
  60. package/dist/handlers/compact/high/handleHandlerCdsUnitTestResult.d.ts.map +1 -1
  61. package/dist/handlers/compact/high/handleHandlerCdsUnitTestResult.js +1 -1
  62. package/dist/handlers/compact/high/handleHandlerCdsUnitTestResult.js.map +1 -1
  63. package/dist/handlers/compact/high/handleHandlerCdsUnitTestStatus.d.ts +3 -1
  64. package/dist/handlers/compact/high/handleHandlerCdsUnitTestStatus.d.ts.map +1 -1
  65. package/dist/handlers/compact/high/handleHandlerCdsUnitTestStatus.js +1 -1
  66. package/dist/handlers/compact/high/handleHandlerCdsUnitTestStatus.js.map +1 -1
  67. package/dist/handlers/compact/high/handleHandlerCheckRun.d.ts +7 -1
  68. package/dist/handlers/compact/high/handleHandlerCheckRun.d.ts.map +1 -1
  69. package/dist/handlers/compact/high/handleHandlerCheckRun.js +1 -1
  70. package/dist/handlers/compact/high/handleHandlerCheckRun.js.map +1 -1
  71. package/dist/handlers/compact/high/handleHandlerCreate.d.ts +23 -1
  72. package/dist/handlers/compact/high/handleHandlerCreate.d.ts.map +1 -1
  73. package/dist/handlers/compact/high/handleHandlerCreate.js +1 -1
  74. package/dist/handlers/compact/high/handleHandlerCreate.js.map +1 -1
  75. package/dist/handlers/compact/high/handleHandlerDelete.d.ts +7 -1
  76. package/dist/handlers/compact/high/handleHandlerDelete.d.ts.map +1 -1
  77. package/dist/handlers/compact/high/handleHandlerDelete.js +1 -1
  78. package/dist/handlers/compact/high/handleHandlerDelete.js.map +1 -1
  79. package/dist/handlers/compact/high/handleHandlerDumpList.d.ts +6 -1
  80. package/dist/handlers/compact/high/handleHandlerDumpList.d.ts.map +1 -1
  81. package/dist/handlers/compact/high/handleHandlerDumpList.js +1 -1
  82. package/dist/handlers/compact/high/handleHandlerDumpList.js.map +1 -1
  83. package/dist/handlers/compact/high/handleHandlerDumpView.d.ts +3 -1
  84. package/dist/handlers/compact/high/handleHandlerDumpView.d.ts.map +1 -1
  85. package/dist/handlers/compact/high/handleHandlerDumpView.js +1 -1
  86. package/dist/handlers/compact/high/handleHandlerDumpView.js.map +1 -1
  87. package/dist/handlers/compact/high/handleHandlerGet.d.ts +60 -1
  88. package/dist/handlers/compact/high/handleHandlerGet.d.ts.map +1 -1
  89. package/dist/handlers/compact/high/handleHandlerGet.js +1 -1
  90. package/dist/handlers/compact/high/handleHandlerGet.js.map +1 -1
  91. package/dist/handlers/compact/high/handleHandlerLock.d.ts +7 -1
  92. package/dist/handlers/compact/high/handleHandlerLock.d.ts.map +1 -1
  93. package/dist/handlers/compact/high/handleHandlerLock.js +1 -1
  94. package/dist/handlers/compact/high/handleHandlerLock.js.map +1 -1
  95. package/dist/handlers/compact/high/handleHandlerProfileList.d.ts +1 -1
  96. package/dist/handlers/compact/high/handleHandlerProfileList.js +1 -1
  97. package/dist/handlers/compact/high/handleHandlerProfileList.js.map +1 -1
  98. package/dist/handlers/compact/high/handleHandlerProfileRun.d.ts +17 -1
  99. package/dist/handlers/compact/high/handleHandlerProfileRun.d.ts.map +1 -1
  100. package/dist/handlers/compact/high/handleHandlerProfileRun.js +1 -1
  101. package/dist/handlers/compact/high/handleHandlerProfileRun.js.map +1 -1
  102. package/dist/handlers/compact/high/handleHandlerProfileView.d.ts +7 -1
  103. package/dist/handlers/compact/high/handleHandlerProfileView.d.ts.map +1 -1
  104. package/dist/handlers/compact/high/handleHandlerProfileView.js +1 -1
  105. package/dist/handlers/compact/high/handleHandlerProfileView.js.map +1 -1
  106. package/dist/handlers/compact/high/handleHandlerServiceBindingListTypes.d.ts +2 -1
  107. package/dist/handlers/compact/high/handleHandlerServiceBindingListTypes.d.ts.map +1 -1
  108. package/dist/handlers/compact/high/handleHandlerServiceBindingListTypes.js +1 -1
  109. package/dist/handlers/compact/high/handleHandlerServiceBindingListTypes.js.map +1 -1
  110. package/dist/handlers/compact/high/handleHandlerServiceBindingValidate.d.ts +6 -1
  111. package/dist/handlers/compact/high/handleHandlerServiceBindingValidate.d.ts.map +1 -1
  112. package/dist/handlers/compact/high/handleHandlerServiceBindingValidate.js +1 -1
  113. package/dist/handlers/compact/high/handleHandlerServiceBindingValidate.js.map +1 -1
  114. package/dist/handlers/compact/high/handleHandlerTransportCreate.d.ts +5 -1
  115. package/dist/handlers/compact/high/handleHandlerTransportCreate.d.ts.map +1 -1
  116. package/dist/handlers/compact/high/handleHandlerTransportCreate.js +1 -1
  117. package/dist/handlers/compact/high/handleHandlerTransportCreate.js.map +1 -1
  118. package/dist/handlers/compact/high/handleHandlerUnitTestResult.d.ts +4 -1
  119. package/dist/handlers/compact/high/handleHandlerUnitTestResult.d.ts.map +1 -1
  120. package/dist/handlers/compact/high/handleHandlerUnitTestResult.js +1 -1
  121. package/dist/handlers/compact/high/handleHandlerUnitTestResult.js.map +1 -1
  122. package/dist/handlers/compact/high/handleHandlerUnitTestRun.d.ts +18 -1
  123. package/dist/handlers/compact/high/handleHandlerUnitTestRun.d.ts.map +1 -1
  124. package/dist/handlers/compact/high/handleHandlerUnitTestRun.js +1 -1
  125. package/dist/handlers/compact/high/handleHandlerUnitTestRun.js.map +1 -1
  126. package/dist/handlers/compact/high/handleHandlerUnitTestStatus.d.ts +3 -1
  127. package/dist/handlers/compact/high/handleHandlerUnitTestStatus.d.ts.map +1 -1
  128. package/dist/handlers/compact/high/handleHandlerUnitTestStatus.js +1 -1
  129. package/dist/handlers/compact/high/handleHandlerUnitTestStatus.js.map +1 -1
  130. package/dist/handlers/compact/high/handleHandlerUnlock.d.ts +7 -1
  131. package/dist/handlers/compact/high/handleHandlerUnlock.d.ts.map +1 -1
  132. package/dist/handlers/compact/high/handleHandlerUnlock.js +1 -1
  133. package/dist/handlers/compact/high/handleHandlerUnlock.js.map +1 -1
  134. package/dist/handlers/compact/high/handleHandlerUpdate.d.ts +21 -1
  135. package/dist/handlers/compact/high/handleHandlerUpdate.d.ts.map +1 -1
  136. package/dist/handlers/compact/high/handleHandlerUpdate.js +1 -1
  137. package/dist/handlers/compact/high/handleHandlerUpdate.js.map +1 -1
  138. package/dist/handlers/compact/high/handleHandlerValidate.d.ts +22 -10
  139. package/dist/handlers/compact/high/handleHandlerValidate.d.ts.map +1 -1
  140. package/dist/handlers/compact/high/handleHandlerValidate.js +1 -1
  141. package/dist/handlers/compact/high/handleHandlerValidate.js.map +1 -1
  142. package/dist/handlers/data_element/handleCreateDataElement.d.ts +83 -0
  143. package/dist/handlers/data_element/handleCreateDataElement.d.ts.map +1 -0
  144. package/dist/handlers/data_element/handleCreateDataElement.js +180 -0
  145. package/dist/handlers/data_element/handleGetDataElement.d.ts +29 -0
  146. package/dist/handlers/data_element/handleGetDataElement.d.ts.map +1 -0
  147. package/dist/handlers/data_element/handleGetDataElement.js +173 -0
  148. package/dist/handlers/data_element/handleUpdateDataElement.d.ts +131 -0
  149. package/dist/handlers/data_element/handleUpdateDataElement.d.ts.map +1 -0
  150. package/dist/handlers/data_element/handleUpdateDataElement.js +258 -0
  151. package/dist/handlers/data_element/readonly/handleGetDataElement.d.ts +33 -0
  152. package/dist/handlers/data_element/readonly/handleGetDataElement.d.ts.map +1 -0
  153. package/dist/handlers/data_element/readonly/handleGetDataElement.js +173 -0
  154. package/dist/handlers/ddlx/handleCreateMetadataExtension.d.ts +41 -0
  155. package/dist/handlers/ddlx/handleCreateMetadataExtension.d.ts.map +1 -0
  156. package/dist/handlers/ddlx/handleCreateMetadataExtension.js +92 -0
  157. package/dist/handlers/ddlx/handleUpdateMetadataExtension.d.ts +37 -0
  158. package/dist/handlers/ddlx/handleUpdateMetadataExtension.d.ts.map +1 -0
  159. package/dist/handlers/ddlx/handleUpdateMetadataExtension.js +81 -0
  160. package/dist/handlers/domain/handleCreateDomain.d.ts +104 -0
  161. package/dist/handlers/domain/handleCreateDomain.d.ts.map +1 -0
  162. package/dist/handlers/domain/handleCreateDomain.js +187 -0
  163. package/dist/handlers/domain/handleGetDomain.d.ts +19 -0
  164. package/dist/handlers/domain/handleGetDomain.d.ts.map +1 -0
  165. package/dist/handlers/domain/handleGetDomain.js +138 -0
  166. package/dist/handlers/domain/handleUpdateDomain.d.ts +99 -0
  167. package/dist/handlers/domain/handleUpdateDomain.d.ts.map +1 -0
  168. package/dist/handlers/domain/handleUpdateDomain.js +204 -0
  169. package/dist/handlers/domain/readonly/handleGetDomain.d.ts +23 -0
  170. package/dist/handlers/domain/readonly/handleGetDomain.d.ts.map +1 -0
  171. package/dist/handlers/domain/readonly/handleGetDomain.js +138 -0
  172. package/dist/handlers/enhancement/handleGetEnhancementImpl.d.ts +69 -0
  173. package/dist/handlers/enhancement/handleGetEnhancementImpl.d.ts.map +1 -0
  174. package/dist/handlers/enhancement/handleGetEnhancementImpl.js +171 -0
  175. package/dist/handlers/enhancement/handleGetEnhancementSpot.d.ts +53 -0
  176. package/dist/handlers/enhancement/handleGetEnhancementSpot.d.ts.map +1 -0
  177. package/dist/handlers/enhancement/handleGetEnhancementSpot.js +153 -0
  178. package/dist/handlers/enhancement/handleGetEnhancements.d.ts +64 -0
  179. package/dist/handlers/enhancement/handleGetEnhancements.d.ts.map +1 -0
  180. package/dist/handlers/enhancement/handleGetEnhancements.js +599 -0
  181. package/dist/handlers/function/handleCheckFunctionModule.d.ts +59 -0
  182. package/dist/handlers/function/handleCheckFunctionModule.d.ts.map +1 -0
  183. package/dist/handlers/function/handleCheckFunctionModule.js +140 -0
  184. package/dist/handlers/function/handleCreateFunctionGroup.d.ts +52 -0
  185. package/dist/handlers/function/handleCreateFunctionGroup.d.ts.map +1 -0
  186. package/dist/handlers/function/handleCreateFunctionGroup.js +114 -0
  187. package/dist/handlers/function/handleCreateFunctionModule.d.ts +57 -0
  188. package/dist/handlers/function/handleCreateFunctionModule.d.ts.map +1 -0
  189. package/dist/handlers/function/handleCreateFunctionModule.js +137 -0
  190. package/dist/handlers/function/handleGetFunction.d.ts +17 -0
  191. package/dist/handlers/function/handleGetFunction.d.ts.map +1 -0
  192. package/dist/handlers/function/handleGetFunction.js +172 -0
  193. package/dist/handlers/function/handleGetFunctionGroup.d.ts +16 -0
  194. package/dist/handlers/function/handleGetFunctionGroup.d.ts.map +1 -0
  195. package/dist/handlers/function/handleGetFunctionGroup.js +132 -0
  196. package/dist/handlers/function/handleUpdateFunctionModuleSource.d.ts +54 -0
  197. package/dist/handlers/function/handleUpdateFunctionModuleSource.d.ts.map +1 -0
  198. package/dist/handlers/function/handleUpdateFunctionModuleSource.js +108 -0
  199. package/dist/handlers/function/handleValidateFunctionModule.d.ts +58 -0
  200. package/dist/handlers/function/handleValidateFunctionModule.d.ts.map +1 -0
  201. package/dist/handlers/function/handleValidateFunctionModule.js +132 -0
  202. package/dist/handlers/function/readonly/handleGetFunctionGroup.d.ts +16 -0
  203. package/dist/handlers/function/readonly/handleGetFunctionGroup.d.ts.map +1 -0
  204. package/dist/handlers/function/readonly/handleGetFunctionGroup.js +132 -0
  205. package/dist/handlers/include/handleGetInclude.d.ts +16 -0
  206. package/dist/handlers/include/handleGetInclude.d.ts.map +1 -0
  207. package/dist/handlers/include/handleGetInclude.js +81 -0
  208. package/dist/handlers/include/handleGetIncludesList.d.ts +36 -0
  209. package/dist/handlers/include/handleGetIncludesList.d.ts.map +1 -0
  210. package/dist/handlers/include/handleGetIncludesList.js +223 -0
  211. package/dist/handlers/interface/handleCreateInterface.d.ts +64 -0
  212. package/dist/handlers/interface/handleCreateInterface.d.ts.map +1 -0
  213. package/dist/handlers/interface/handleCreateInterface.js +175 -0
  214. package/dist/handlers/interface/handleGetInterface.d.ts +40 -0
  215. package/dist/handlers/interface/handleGetInterface.d.ts.map +1 -0
  216. package/dist/handlers/interface/handleGetInterface.js +134 -0
  217. package/dist/handlers/interface/handleUpdateInterfaceSource.d.ts +48 -0
  218. package/dist/handlers/interface/handleUpdateInterfaceSource.d.ts.map +1 -0
  219. package/dist/handlers/interface/handleUpdateInterfaceSource.js +127 -0
  220. package/dist/handlers/interface/readonly/handleGetInterface.d.ts +44 -0
  221. package/dist/handlers/interface/readonly/handleGetInterface.d.ts.map +1 -0
  222. package/dist/handlers/interface/readonly/handleGetInterface.js +134 -0
  223. package/dist/handlers/package/handleCreatePackage.d.ts +38 -0
  224. package/dist/handlers/package/handleCreatePackage.d.ts.map +1 -0
  225. package/dist/handlers/package/handleCreatePackage.js +127 -0
  226. package/dist/handlers/package/handleGetPackage.d.ts +16 -0
  227. package/dist/handlers/package/handleGetPackage.d.ts.map +1 -0
  228. package/dist/handlers/package/handleGetPackage.js +94 -0
  229. package/dist/handlers/package/readonly/handleGetPackage.d.ts +21 -0
  230. package/dist/handlers/package/readonly/handleGetPackage.d.ts.map +1 -0
  231. package/dist/handlers/package/readonly/handleGetPackage.js +94 -0
  232. package/dist/handlers/program/handleCreateProgram.d.ts +73 -0
  233. package/dist/handlers/program/handleCreateProgram.d.ts.map +1 -0
  234. package/dist/handlers/program/handleCreateProgram.js +220 -0
  235. package/dist/handlers/program/handleGetProgFullCode.d.ts +67 -0
  236. package/dist/handlers/program/handleGetProgFullCode.d.ts.map +1 -0
  237. package/dist/handlers/program/handleGetProgFullCode.js +249 -0
  238. package/dist/handlers/program/handleGetProgram.d.ts +16 -0
  239. package/dist/handlers/program/handleGetProgram.d.ts.map +1 -0
  240. package/dist/handlers/program/handleGetProgram.js +71 -0
  241. package/dist/handlers/program/handleUpdateProgramSource.d.ts +44 -0
  242. package/dist/handlers/program/handleUpdateProgramSource.d.ts.map +1 -0
  243. package/dist/handlers/program/handleUpdateProgramSource.js +121 -0
  244. package/dist/handlers/program/readonly/handleGetProgram.d.ts +20 -0
  245. package/dist/handlers/program/readonly/handleGetProgram.d.ts.map +1 -0
  246. package/dist/handlers/program/readonly/handleGetProgram.js +71 -0
  247. package/dist/handlers/search/handleGetObjectsByType.d.ts +42 -0
  248. package/dist/handlers/search/handleGetObjectsByType.d.ts.map +1 -0
  249. package/dist/handlers/search/handleGetObjectsByType.js +166 -0
  250. package/dist/handlers/search/handleGetObjectsList.d.ts +46 -0
  251. package/dist/handlers/search/handleGetObjectsList.d.ts.map +1 -0
  252. package/dist/handlers/search/handleGetObjectsList.js +145 -0
  253. package/dist/handlers/search/handleSearchObject.d.ts +28 -0
  254. package/dist/handlers/search/handleSearchObject.d.ts.map +1 -0
  255. package/dist/handlers/search/handleSearchObject.js +119 -0
  256. package/dist/handlers/service_definition/readonly/handleGetServiceDefinition.d.ts +17 -0
  257. package/dist/handlers/service_definition/readonly/handleGetServiceDefinition.d.ts.map +1 -0
  258. package/dist/handlers/service_definition/readonly/handleGetServiceDefinition.js +136 -0
  259. package/dist/handlers/structure/handleCreateStructure.d.ts +107 -0
  260. package/dist/handlers/structure/handleCreateStructure.d.ts.map +1 -0
  261. package/dist/handlers/structure/handleCreateStructure.js +184 -0
  262. package/dist/handlers/structure/handleGetStructure.d.ts +16 -0
  263. package/dist/handlers/structure/handleGetStructure.d.ts.map +1 -0
  264. package/dist/handlers/structure/handleGetStructure.js +139 -0
  265. package/dist/handlers/structure/readonly/handleGetStructure.d.ts +16 -0
  266. package/dist/handlers/structure/readonly/handleGetStructure.d.ts.map +1 -0
  267. package/dist/handlers/structure/readonly/handleGetStructure.js +139 -0
  268. package/dist/handlers/system/handleDescribeByList.d.ts +36 -0
  269. package/dist/handlers/system/handleDescribeByList.d.ts.map +1 -0
  270. package/dist/handlers/system/handleDescribeByList.js +121 -0
  271. package/dist/handlers/system/handleGetAbapAST.d.ts +26 -0
  272. package/dist/handlers/system/handleGetAbapAST.d.ts.map +1 -0
  273. package/dist/handlers/system/handleGetAbapAST.js +172 -0
  274. package/dist/handlers/system/handleGetAbapSemanticAnalysis.d.ts +26 -0
  275. package/dist/handlers/system/handleGetAbapSemanticAnalysis.d.ts.map +1 -0
  276. package/dist/handlers/system/handleGetAbapSemanticAnalysis.js +353 -0
  277. package/dist/handlers/system/handleGetAbapSystemSymbols.d.ts +26 -0
  278. package/dist/handlers/system/handleGetAbapSystemSymbols.d.ts.map +1 -0
  279. package/dist/handlers/system/handleGetAbapSystemSymbols.js +574 -0
  280. package/dist/handlers/system/handleGetAllTypes.d.ts +22 -0
  281. package/dist/handlers/system/handleGetAllTypes.d.ts.map +1 -0
  282. package/dist/handlers/system/handleGetAllTypes.js +102 -0
  283. package/dist/handlers/system/handleGetInactiveObjects.d.ts +20 -0
  284. package/dist/handlers/system/handleGetInactiveObjects.d.ts.map +1 -0
  285. package/dist/handlers/system/handleGetInactiveObjects.js +41 -0
  286. package/dist/handlers/system/handleGetObjectInfo.d.ts +41 -0
  287. package/dist/handlers/system/handleGetObjectInfo.d.ts.map +1 -0
  288. package/dist/handlers/system/handleGetObjectInfo.js +210 -0
  289. package/dist/handlers/system/handleGetObjectNodeFromCache.d.ts +40 -0
  290. package/dist/handlers/system/handleGetObjectNodeFromCache.d.ts.map +1 -0
  291. package/dist/handlers/system/handleGetObjectNodeFromCache.js +70 -0
  292. package/dist/handlers/system/handleGetObjectStructure.d.ts +26 -0
  293. package/dist/handlers/system/handleGetObjectStructure.d.ts.map +1 -0
  294. package/dist/handlers/system/handleGetObjectStructure.js +103 -0
  295. package/dist/handlers/system/handleGetSession.d.ts +33 -0
  296. package/dist/handlers/system/handleGetSession.d.ts.map +1 -0
  297. package/dist/handlers/system/handleGetSession.js +63 -0
  298. package/dist/handlers/system/handleGetSqlQuery.d.ts +49 -0
  299. package/dist/handlers/system/handleGetSqlQuery.d.ts.map +1 -0
  300. package/dist/handlers/system/handleGetSqlQuery.js +176 -0
  301. package/dist/handlers/system/handleGetTransaction.d.ts +42 -0
  302. package/dist/handlers/system/handleGetTransaction.d.ts.map +1 -0
  303. package/dist/handlers/system/handleGetTransaction.js +91 -0
  304. package/dist/handlers/system/handleGetTypeInfo.d.ts +69 -0
  305. package/dist/handlers/system/handleGetTypeInfo.d.ts.map +1 -0
  306. package/dist/handlers/system/handleGetTypeInfo.js +169 -0
  307. package/dist/handlers/system/handleGetWhereUsed.d.ts +69 -0
  308. package/dist/handlers/system/handleGetWhereUsed.d.ts.map +1 -0
  309. package/dist/handlers/system/handleGetWhereUsed.js +405 -0
  310. package/dist/handlers/table/handleCheckTable.d.ts +55 -0
  311. package/dist/handlers/table/handleCheckTable.d.ts.map +1 -0
  312. package/dist/handlers/table/handleCheckTable.js +138 -0
  313. package/dist/handlers/table/handleCreateTable.d.ts +42 -0
  314. package/dist/handlers/table/handleCreateTable.d.ts.map +1 -0
  315. package/dist/handlers/table/handleCreateTable.js +118 -0
  316. package/dist/handlers/table/handleGetTable.d.ts +16 -0
  317. package/dist/handlers/table/handleGetTable.d.ts.map +1 -0
  318. package/dist/handlers/table/handleGetTable.js +140 -0
  319. package/dist/handlers/table/handleGetTableContents.d.ts +56 -0
  320. package/dist/handlers/table/handleGetTableContents.d.ts.map +1 -0
  321. package/dist/handlers/table/handleGetTableContents.js +387 -0
  322. package/dist/handlers/table/handleValidateTable.d.ts +53 -0
  323. package/dist/handlers/table/handleValidateTable.d.ts.map +1 -0
  324. package/dist/handlers/table/handleValidateTable.js +125 -0
  325. package/dist/handlers/table/readonly/handleGetTable.d.ts +20 -0
  326. package/dist/handlers/table/readonly/handleGetTable.d.ts.map +1 -0
  327. package/dist/handlers/table/readonly/handleGetTable.js +140 -0
  328. package/dist/handlers/transport/handleCreateTransport.d.ts +50 -0
  329. package/dist/handlers/transport/handleCreateTransport.d.ts.map +1 -0
  330. package/dist/handlers/transport/handleCreateTransport.js +151 -0
  331. package/dist/handlers/transport/handleGetTransport.d.ts +44 -0
  332. package/dist/handlers/transport/handleGetTransport.d.ts.map +1 -0
  333. package/dist/handlers/transport/handleGetTransport.js +183 -0
  334. package/dist/handlers/view/handleCreateView.d.ts +52 -0
  335. package/dist/handlers/view/handleCreateView.d.ts.map +1 -0
  336. package/dist/handlers/view/handleCreateView.js +139 -0
  337. package/dist/handlers/view/handleGetView.d.ts +26 -0
  338. package/dist/handlers/view/handleGetView.d.ts.map +1 -0
  339. package/dist/handlers/view/handleGetView.js +349 -0
  340. package/dist/handlers/view/handleUpdateViewSource.d.ts +44 -0
  341. package/dist/handlers/view/handleUpdateViewSource.d.ts.map +1 -0
  342. package/dist/handlers/view/handleUpdateViewSource.js +136 -0
  343. package/dist/handlers/view/readonly/handleGetView.d.ts +26 -0
  344. package/dist/handlers/view/readonly/handleGetView.d.ts.map +1 -0
  345. package/dist/handlers/view/readonly/handleGetView.js +349 -0
  346. package/dist/index.d.ts +94 -0
  347. package/dist/index.d.ts.map +1 -0
  348. package/dist/index.js +2453 -0
  349. package/dist/lib/activationUtils.d.ts +59 -0
  350. package/dist/lib/activationUtils.d.ts.map +1 -0
  351. package/dist/lib/activationUtils.js +168 -0
  352. package/dist/lib/config/ArgumentsParser.d.ts +2 -0
  353. package/dist/lib/config/ArgumentsParser.d.ts.map +1 -1
  354. package/dist/lib/config/ArgumentsParser.js +11 -1
  355. package/dist/lib/config/ArgumentsParser.js.map +1 -1
  356. package/dist/lib/config/IServerConfig.d.ts +2 -0
  357. package/dist/lib/config/IServerConfig.d.ts.map +1 -1
  358. package/dist/lib/config/ServerConfigManager.d.ts.map +1 -1
  359. package/dist/lib/config/ServerConfigManager.js +3 -0
  360. package/dist/lib/config/ServerConfigManager.js.map +1 -1
  361. package/dist/lib/getFullCodeCache.d.ts +3 -0
  362. package/dist/lib/getFullCodeCache.d.ts.map +1 -0
  363. package/dist/lib/getFullCodeCache.js +56 -0
  364. package/dist/lib/toolsRegistry.d.ts +13 -0
  365. package/dist/lib/toolsRegistry.d.ts.map +1 -0
  366. package/dist/lib/toolsRegistry.js +410 -0
  367. package/dist/server/AuthBrokerConfig.d.ts.map +1 -1
  368. package/dist/server/AuthBrokerConfig.js +14 -9
  369. package/dist/server/AuthBrokerConfig.js.map +1 -1
  370. package/dist/server/BaseMcpServer.d.ts.map +1 -1
  371. package/dist/server/BaseMcpServer.js +6 -0
  372. package/dist/server/BaseMcpServer.js.map +1 -1
  373. package/dist/server/launcher.js +4 -4
  374. package/dist/server/launcher.js.map +1 -1
  375. package/dist/utils/lockStateManager.d.ts +64 -0
  376. package/dist/utils/lockStateManager.d.ts.map +1 -0
  377. package/dist/utils/lockStateManager.js +173 -0
  378. package/dist/utils/lockStateManager.js.map +1 -0
  379. package/docs/user-guide/AUTHENTICATION.md +7 -0
  380. package/docs/user-guide/AVAILABLE_TOOLS.md +189 -174
  381. package/docs/user-guide/AVAILABLE_TOOLS_COMPACT.md +189 -174
  382. package/docs/user-guide/AVAILABLE_TOOLS_HIGH.md +189 -174
  383. package/docs/user-guide/CLI_OPTIONS.md +14 -0
  384. package/package.json +2 -1
  385. package/dist/handlers/service_binding/high/handleListServiceBindings.d.ts +0 -44
  386. package/dist/handlers/service_binding/high/handleListServiceBindings.d.ts.map +0 -1
  387. package/dist/handlers/service_binding/high/handleListServiceBindings.js +0 -211
  388. package/dist/handlers/service_binding/high/handleListServiceBindings.js.map +0 -1
  389. package/dist/handlers/service_binding/high/serviceBindingXmlBuilder.d.ts +0 -11
  390. package/dist/handlers/service_binding/high/serviceBindingXmlBuilder.d.ts.map +0 -1
  391. package/dist/handlers/service_binding/high/serviceBindingXmlBuilder.js +0 -27
  392. package/dist/handlers/service_binding/high/serviceBindingXmlBuilder.js.map +0 -1
  393. package/dist/handlers/system/readonly/handleRuntimeGetDumpByUri.d.ts +0 -27
  394. package/dist/handlers/system/readonly/handleRuntimeGetDumpByUri.d.ts.map +0 -1
  395. package/dist/handlers/system/readonly/handleRuntimeGetDumpByUri.js +0 -47
  396. package/dist/handlers/system/readonly/handleRuntimeGetDumpByUri.js.map +0 -1
  397. package/dist/handlers/system/readonly/runtimeDumpReadCompat.d.ts +0 -8
  398. package/dist/handlers/system/readonly/runtimeDumpReadCompat.d.ts.map +0 -1
  399. package/dist/handlers/system/readonly/runtimeDumpReadCompat.js +0 -55
  400. package/dist/handlers/system/readonly/runtimeDumpReadCompat.js.map +0 -1
@@ -0,0 +1,574 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TOOL_DEFINITION = void 0;
4
+ exports.handleGetAbapSystemSymbols = handleGetAbapSystemSymbols;
5
+ const utils_1 = require("../../lib/utils");
6
+ const writeResultToFile_1 = require("../../lib/writeResultToFile");
7
+ const handleGetClass_1 = require("../class/handleGetClass");
8
+ const handleGetFunction_1 = require("../function/handleGetFunction");
9
+ const handleGetInterface_1 = require("../interface/handleGetInterface");
10
+ exports.TOOL_DEFINITION = {
11
+ name: "GetAbapSystemSymbols",
12
+ description: "Resolve ABAP symbols from semantic analysis with SAP system information including types, scopes, descriptions, and packages.",
13
+ inputSchema: {
14
+ type: "object",
15
+ properties: {
16
+ code: {
17
+ type: "string",
18
+ description: "ABAP source code to analyze and resolve symbols for"
19
+ },
20
+ filePath: {
21
+ type: "string",
22
+ description: "Optional file path to write the result to"
23
+ }
24
+ },
25
+ required: ["code"]
26
+ }
27
+ };
28
+ // Import semantic analyzer from the previous handler
29
+ class SimpleAbapSemanticAnalyzer {
30
+ symbols = [];
31
+ scopes = [];
32
+ dependencies = [];
33
+ errors = [];
34
+ currentScope = 'global';
35
+ analyze(code) {
36
+ // Reset state
37
+ this.symbols = [];
38
+ this.scopes = [];
39
+ this.dependencies = [];
40
+ this.errors = [];
41
+ this.currentScope = 'global';
42
+ try {
43
+ this.analyzeCode(code);
44
+ }
45
+ catch (error) {
46
+ this.errors.push({
47
+ message: error instanceof Error ? error.message : String(error),
48
+ line: 1,
49
+ column: 1,
50
+ severity: 'error'
51
+ });
52
+ }
53
+ return {
54
+ symbols: this.symbols,
55
+ dependencies: this.dependencies,
56
+ errors: this.errors,
57
+ scopes: this.scopes
58
+ };
59
+ }
60
+ analyzeCode(code) {
61
+ const lines = code.split('\n');
62
+ for (let i = 0; i < lines.length; i++) {
63
+ const line = lines[i].trim();
64
+ const lineNumber = i + 1;
65
+ if (line === '' || line.startsWith('*') || line.startsWith('"')) {
66
+ continue;
67
+ }
68
+ try {
69
+ this.analyzeClassDefinition(line, lineNumber);
70
+ this.analyzeClassImplementation(line, lineNumber);
71
+ this.analyzeMethodDefinition(line, lineNumber);
72
+ this.analyzeMethodImplementation(line, lineNumber);
73
+ this.analyzeDataDeclaration(line, lineNumber);
74
+ this.analyzeConstantsDeclaration(line, lineNumber);
75
+ this.analyzeTypesDeclaration(line, lineNumber);
76
+ this.analyzeFormDefinition(line, lineNumber);
77
+ this.analyzeFunctionDefinition(line, lineNumber);
78
+ this.analyzeIncludeStatement(line, lineNumber);
79
+ this.analyzeInterfaceDefinition(line, lineNumber);
80
+ this.analyzeScopeEnders(line, lineNumber);
81
+ }
82
+ catch (error) {
83
+ this.errors.push({
84
+ message: `Error analyzing line ${lineNumber}: ${error instanceof Error ? error.message : String(error)}`,
85
+ line: lineNumber,
86
+ column: 1,
87
+ severity: 'warning'
88
+ });
89
+ }
90
+ }
91
+ }
92
+ analyzeClassDefinition(line, lineNumber) {
93
+ const classDefMatch = line.toLowerCase().match(/^class\s+([a-zA-Z0-9_]+)\s+definition/);
94
+ if (classDefMatch) {
95
+ const className = classDefMatch[1].toUpperCase();
96
+ this.addSymbol({
97
+ name: className,
98
+ type: 'class',
99
+ scope: this.currentScope,
100
+ line: lineNumber,
101
+ column: 1,
102
+ visibility: this.extractVisibility(line)
103
+ });
104
+ this.pushScope(className, 'class', lineNumber);
105
+ }
106
+ }
107
+ analyzeClassImplementation(line, lineNumber) {
108
+ const classImplMatch = line.toLowerCase().match(/^class\s+([a-zA-Z0-9_]+)\s+implementation/);
109
+ if (classImplMatch) {
110
+ const className = classImplMatch[1].toUpperCase();
111
+ this.pushScope(`${className}_IMPL`, 'class', lineNumber);
112
+ }
113
+ }
114
+ analyzeMethodDefinition(line, lineNumber) {
115
+ const methodMatch = line.toLowerCase().match(/^(methods|class-methods)\s+([a-zA-Z0-9_]+)/);
116
+ if (methodMatch) {
117
+ const methodName = methodMatch[2].toUpperCase();
118
+ const isStatic = methodMatch[1] === 'class-methods';
119
+ this.addSymbol({
120
+ name: methodName,
121
+ type: 'method',
122
+ scope: this.currentScope,
123
+ line: lineNumber,
124
+ column: 1,
125
+ visibility: this.extractVisibility(line),
126
+ description: isStatic ? 'Static method' : 'Instance method',
127
+ parameters: this.extractMethodParameters(line)
128
+ });
129
+ }
130
+ }
131
+ analyzeMethodImplementation(line, lineNumber) {
132
+ const methodImplMatch = line.toLowerCase().match(/^method\s+([a-zA-Z0-9_~\->]+)/);
133
+ if (methodImplMatch) {
134
+ const methodName = methodImplMatch[1].toUpperCase();
135
+ this.pushScope(methodName, 'method', lineNumber);
136
+ }
137
+ }
138
+ analyzeDataDeclaration(line, lineNumber) {
139
+ const dataMatches = [
140
+ line.toLowerCase().match(/^data:?\s+([a-zA-Z0-9_]+)/),
141
+ line.toLowerCase().match(/^class-data:?\s+([a-zA-Z0-9_]+)/),
142
+ line.toLowerCase().match(/^statics:?\s+([a-zA-Z0-9_]+)/)
143
+ ];
144
+ for (const match of dataMatches) {
145
+ if (match) {
146
+ const varName = match[1].toUpperCase();
147
+ this.addSymbol({
148
+ name: varName,
149
+ type: 'variable',
150
+ scope: this.currentScope,
151
+ line: lineNumber,
152
+ column: 1,
153
+ dataType: this.extractDataType(line),
154
+ visibility: this.extractVisibility(line)
155
+ });
156
+ break;
157
+ }
158
+ }
159
+ }
160
+ analyzeConstantsDeclaration(line, lineNumber) {
161
+ const constantMatch = line.toLowerCase().match(/^constants:?\s+([a-zA-Z0-9_]+)/);
162
+ if (constantMatch) {
163
+ const constName = constantMatch[1].toUpperCase();
164
+ this.addSymbol({
165
+ name: constName,
166
+ type: 'constant',
167
+ scope: this.currentScope,
168
+ line: lineNumber,
169
+ column: 1,
170
+ dataType: this.extractDataType(line),
171
+ visibility: this.extractVisibility(line)
172
+ });
173
+ }
174
+ }
175
+ analyzeTypesDeclaration(line, lineNumber) {
176
+ const typeMatch = line.toLowerCase().match(/^types:?\s+([a-zA-Z0-9_]+)/);
177
+ if (typeMatch) {
178
+ const typeName = typeMatch[1].toUpperCase();
179
+ this.addSymbol({
180
+ name: typeName,
181
+ type: 'type',
182
+ scope: this.currentScope,
183
+ line: lineNumber,
184
+ column: 1,
185
+ dataType: this.extractDataType(line),
186
+ visibility: this.extractVisibility(line)
187
+ });
188
+ }
189
+ }
190
+ analyzeFormDefinition(line, lineNumber) {
191
+ const formMatch = line.toLowerCase().match(/^form\s+([a-zA-Z0-9_]+)/);
192
+ if (formMatch) {
193
+ const formName = formMatch[1].toUpperCase();
194
+ this.addSymbol({
195
+ name: formName,
196
+ type: 'form',
197
+ scope: this.currentScope,
198
+ line: lineNumber,
199
+ column: 1
200
+ });
201
+ this.pushScope(formName, 'form', lineNumber);
202
+ }
203
+ }
204
+ analyzeFunctionDefinition(line, lineNumber) {
205
+ const functionMatch = line.toLowerCase().match(/^function\s+([a-zA-Z0-9_]+)/);
206
+ if (functionMatch) {
207
+ const functionName = functionMatch[1].toUpperCase();
208
+ this.addSymbol({
209
+ name: functionName,
210
+ type: 'function',
211
+ scope: this.currentScope,
212
+ line: lineNumber,
213
+ column: 1
214
+ });
215
+ this.pushScope(functionName, 'function', lineNumber);
216
+ }
217
+ }
218
+ analyzeIncludeStatement(line, lineNumber) {
219
+ const includeMatch = line.toLowerCase().match(/^include\s+([a-zA-Z0-9_/<>]+)/);
220
+ if (includeMatch) {
221
+ const includeName = includeMatch[1].toUpperCase();
222
+ this.dependencies.push(includeName);
223
+ this.addSymbol({
224
+ name: includeName,
225
+ type: 'include',
226
+ scope: this.currentScope,
227
+ line: lineNumber,
228
+ column: 1
229
+ });
230
+ }
231
+ }
232
+ analyzeInterfaceDefinition(line, lineNumber) {
233
+ const interfaceMatch = line.toLowerCase().match(/^interface\s+([a-zA-Z0-9_]+)/);
234
+ if (interfaceMatch) {
235
+ const interfaceName = interfaceMatch[1].toUpperCase();
236
+ this.addSymbol({
237
+ name: interfaceName,
238
+ type: 'interface',
239
+ scope: this.currentScope,
240
+ line: lineNumber,
241
+ column: 1,
242
+ visibility: this.extractVisibility(line)
243
+ });
244
+ this.pushScope(interfaceName, 'class', lineNumber);
245
+ }
246
+ }
247
+ analyzeScopeEnders(line, lineNumber) {
248
+ const lowerLine = line.toLowerCase();
249
+ if (lowerLine.match(/^(endclass|endmethod|endform|endfunction|endinterface)\.?$/)) {
250
+ this.popScope(lineNumber);
251
+ }
252
+ }
253
+ addSymbol(symbol) {
254
+ this.symbols.push(symbol);
255
+ }
256
+ pushScope(name, type, startLine) {
257
+ const scope = {
258
+ name,
259
+ type,
260
+ startLine,
261
+ endLine: startLine,
262
+ parent: this.currentScope !== 'global' ? this.currentScope : undefined
263
+ };
264
+ this.scopes.push(scope);
265
+ this.currentScope = name;
266
+ }
267
+ popScope(endLine) {
268
+ const currentScopeInfo = this.scopes.find(s => s.name === this.currentScope);
269
+ if (currentScopeInfo) {
270
+ currentScopeInfo.endLine = endLine;
271
+ }
272
+ const parentScope = this.scopes.find(s => s.name === currentScopeInfo?.parent);
273
+ this.currentScope = parentScope?.name || 'global';
274
+ }
275
+ extractVisibility(line) {
276
+ const lowerLine = line.toLowerCase();
277
+ if (lowerLine.includes('private'))
278
+ return 'private';
279
+ if (lowerLine.includes('protected'))
280
+ return 'protected';
281
+ return 'public';
282
+ }
283
+ extractDataType(line) {
284
+ const typeMatches = [
285
+ line.toLowerCase().match(/type\s+([a-zA-Z0-9_]+)/),
286
+ line.toLowerCase().match(/like\s+([a-zA-Z0-9_]+)/),
287
+ line.toLowerCase().match(/type\s+ref\s+to\s+([a-zA-Z0-9_]+)/)
288
+ ];
289
+ for (const match of typeMatches) {
290
+ if (match) {
291
+ return match[1].toUpperCase();
292
+ }
293
+ }
294
+ return undefined;
295
+ }
296
+ extractMethodParameters(line) {
297
+ const parameters = [];
298
+ const paramTypes = ['importing', 'exporting', 'changing', 'returning'];
299
+ for (const paramType of paramTypes) {
300
+ const regex = new RegExp(`${paramType}\\s+([a-zA-Z0-9_\\s,]+)`, 'gi');
301
+ const match = regex.exec(line);
302
+ if (match) {
303
+ const paramNames = match[1].split(',').map(p => p.trim());
304
+ for (const paramName of paramNames) {
305
+ if (paramName) {
306
+ parameters.push({
307
+ name: paramName.toUpperCase(),
308
+ type: paramType,
309
+ optional: line.toLowerCase().includes('optional')
310
+ });
311
+ }
312
+ }
313
+ }
314
+ }
315
+ return parameters;
316
+ }
317
+ }
318
+ class AbapSystemSymbolResolver {
319
+ async resolveSymbols(symbols) {
320
+ const resolvedSymbols = [];
321
+ let resolvedCount = 0;
322
+ let failedCount = 0;
323
+ for (const symbol of symbols) {
324
+ try {
325
+ const resolved = await this.resolveSymbol(symbol);
326
+ resolvedSymbols.push(resolved);
327
+ if (resolved.systemInfo?.exists) {
328
+ resolvedCount++;
329
+ }
330
+ else {
331
+ failedCount++;
332
+ }
333
+ }
334
+ catch (error) {
335
+ // If resolution fails, add original symbol with error info
336
+ resolvedSymbols.push({
337
+ ...symbol,
338
+ systemInfo: {
339
+ exists: false,
340
+ error: error instanceof Error ? error.message : String(error)
341
+ }
342
+ });
343
+ failedCount++;
344
+ }
345
+ }
346
+ const stats = {
347
+ totalSymbols: symbols.length,
348
+ resolvedSymbols: resolvedCount,
349
+ failedSymbols: failedCount,
350
+ resolutionRate: `${((resolvedCount / symbols.length) * 100).toFixed(1)}%`
351
+ };
352
+ return { resolvedSymbols, stats };
353
+ }
354
+ async resolveSymbol(symbol) {
355
+ try {
356
+ switch (symbol.type) {
357
+ case 'class':
358
+ return await this.resolveClassSymbol(symbol);
359
+ case 'function':
360
+ return await this.resolveFunctionSymbol(symbol);
361
+ case 'interface':
362
+ return await this.resolveInterfaceSymbol(symbol);
363
+ default:
364
+ return await this.resolveGenericSymbol(symbol);
365
+ }
366
+ }
367
+ catch (error) {
368
+ return {
369
+ ...symbol,
370
+ systemInfo: {
371
+ exists: false,
372
+ error: error instanceof Error ? error.message : String(error)
373
+ }
374
+ };
375
+ }
376
+ }
377
+ async resolveClassSymbol(symbol) {
378
+ try {
379
+ const classInfo = await (0, handleGetClass_1.handleGetClass)({ class_name: symbol.name });
380
+ if (classInfo.isError) {
381
+ return {
382
+ ...symbol,
383
+ systemInfo: {
384
+ exists: false,
385
+ error: 'Class not found in SAP system'
386
+ }
387
+ };
388
+ }
389
+ // Parse the response to extract information
390
+ const responseText = classInfo.content[0]?.text || '';
391
+ let classData;
392
+ try {
393
+ classData = JSON.parse(responseText);
394
+ }
395
+ catch {
396
+ // If not JSON, treat as plain text
397
+ classData = { source: responseText };
398
+ }
399
+ return {
400
+ ...symbol,
401
+ systemInfo: {
402
+ exists: true,
403
+ objectType: 'CLAS',
404
+ description: classData.description || `ABAP Class ${symbol.name}`,
405
+ package: classData.package || 'Unknown',
406
+ methods: classData.methods || [],
407
+ interfaces: classData.interfaces || [],
408
+ superClass: classData.superClass,
409
+ attributes: classData.attributes || []
410
+ }
411
+ };
412
+ }
413
+ catch (error) {
414
+ return {
415
+ ...symbol,
416
+ systemInfo: {
417
+ exists: false,
418
+ error: error instanceof Error ? error.message : String(error)
419
+ }
420
+ };
421
+ }
422
+ }
423
+ async resolveFunctionSymbol(symbol) {
424
+ try {
425
+ const functionInfo = await (0, handleGetFunction_1.handleGetFunction)({ function_name: symbol.name });
426
+ if (functionInfo.isError) {
427
+ return {
428
+ ...symbol,
429
+ systemInfo: {
430
+ exists: false,
431
+ error: 'Function not found in SAP system'
432
+ }
433
+ };
434
+ }
435
+ const responseText = functionInfo.content[0]?.text || '';
436
+ let functionData;
437
+ try {
438
+ functionData = JSON.parse(responseText);
439
+ }
440
+ catch {
441
+ functionData = { source: responseText };
442
+ }
443
+ return {
444
+ ...symbol,
445
+ systemInfo: {
446
+ exists: true,
447
+ objectType: 'FUNC',
448
+ description: functionData.description || `ABAP Function ${symbol.name}`,
449
+ package: functionData.package || 'Unknown',
450
+ techName: functionData.name || symbol.name
451
+ }
452
+ };
453
+ }
454
+ catch (error) {
455
+ return {
456
+ ...symbol,
457
+ systemInfo: {
458
+ exists: false,
459
+ error: error instanceof Error ? error.message : String(error)
460
+ }
461
+ };
462
+ }
463
+ }
464
+ async resolveInterfaceSymbol(symbol) {
465
+ try {
466
+ const interfaceInfo = await (0, handleGetInterface_1.handleGetInterface)({ interface_name: symbol.name });
467
+ if (interfaceInfo.isError) {
468
+ return {
469
+ ...symbol,
470
+ systemInfo: {
471
+ exists: false,
472
+ error: 'Interface not found in SAP system'
473
+ }
474
+ };
475
+ }
476
+ const responseText = interfaceInfo.content[0]?.text || '';
477
+ let interfaceData;
478
+ try {
479
+ interfaceData = JSON.parse(responseText);
480
+ }
481
+ catch {
482
+ interfaceData = { source: responseText };
483
+ }
484
+ return {
485
+ ...symbol,
486
+ systemInfo: {
487
+ exists: true,
488
+ objectType: 'INTF',
489
+ description: interfaceData.description || `ABAP Interface ${symbol.name}`,
490
+ package: interfaceData.package || 'Unknown',
491
+ methods: interfaceData.methods || []
492
+ }
493
+ };
494
+ }
495
+ catch (error) {
496
+ return {
497
+ ...symbol,
498
+ systemInfo: {
499
+ exists: false,
500
+ error: error instanceof Error ? error.message : String(error)
501
+ }
502
+ };
503
+ }
504
+ }
505
+ async resolveGenericSymbol(symbol) {
506
+ try {
507
+ // For generic symbols, we don't have a specific handler
508
+ // Return symbol with basic system info indicating it exists locally
509
+ return {
510
+ ...symbol,
511
+ systemInfo: {
512
+ exists: false,
513
+ objectType: 'LOCAL',
514
+ description: `Local ${symbol.type} ${symbol.name}`,
515
+ package: 'LOCAL',
516
+ error: 'No system resolution available for this symbol type'
517
+ }
518
+ };
519
+ }
520
+ catch (error) {
521
+ return {
522
+ ...symbol,
523
+ systemInfo: {
524
+ exists: false,
525
+ error: error instanceof Error ? error.message : String(error)
526
+ }
527
+ };
528
+ }
529
+ }
530
+ }
531
+ async function handleGetAbapSystemSymbols(args) {
532
+ try {
533
+ if (!args?.code) {
534
+ throw new utils_1.McpError(utils_1.ErrorCode.InvalidParams, 'ABAP code is required');
535
+ }
536
+ // First, perform semantic analysis
537
+ const analyzer = new SimpleAbapSemanticAnalyzer();
538
+ const semanticResult = analyzer.analyze(args.code);
539
+ // Then, resolve symbols with SAP system information
540
+ const resolver = new AbapSystemSymbolResolver();
541
+ const { resolvedSymbols, stats } = await resolver.resolveSymbols(semanticResult.symbols);
542
+ const result = {
543
+ symbols: resolvedSymbols,
544
+ dependencies: semanticResult.dependencies,
545
+ errors: semanticResult.errors,
546
+ scopes: semanticResult.scopes,
547
+ systemResolutionStats: stats
548
+ };
549
+ const response = {
550
+ isError: false,
551
+ content: [
552
+ {
553
+ type: "text",
554
+ text: JSON.stringify(result, null, 2)
555
+ }
556
+ ]
557
+ };
558
+ if (args.filePath) {
559
+ (0, writeResultToFile_1.writeResultToFile)(JSON.stringify(result, null, 2), args.filePath);
560
+ }
561
+ return response;
562
+ }
563
+ catch (error) {
564
+ return {
565
+ isError: true,
566
+ content: [
567
+ {
568
+ type: "text",
569
+ text: error instanceof Error ? error.message : String(error)
570
+ }
571
+ ]
572
+ };
573
+ }
574
+ }
@@ -0,0 +1,22 @@
1
+ export declare const TOOL_DEFINITION: {
2
+ readonly name: "GetAdtTypes";
3
+ readonly description: "Retrieve all valid ADT object types.";
4
+ readonly inputSchema: {
5
+ readonly type: "object";
6
+ readonly properties: {
7
+ readonly validate_type: {
8
+ readonly type: "string";
9
+ readonly description: "Type name to validate (optional)";
10
+ };
11
+ };
12
+ readonly required: readonly [];
13
+ };
14
+ };
15
+ export declare function handleGetAdtTypes(args: any): Promise<{
16
+ isError: boolean;
17
+ content: {
18
+ type: string;
19
+ text: string;
20
+ }[];
21
+ }>;
22
+ //# sourceMappingURL=handleGetAllTypes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handleGetAllTypes.d.ts","sourceRoot":"","sources":["../../../src/handlers/system/handleGetAllTypes.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,eAAe;;;;;;;;;;;;;CAalB,CAAC;AAwDX,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,GAAG;;;;;;GAyBhD"}
@@ -0,0 +1,102 @@
1
+ "use strict";
2
+ // Handler for retrieving all valid ADT object types and validating a type
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.TOOL_DEFINITION = void 0;
5
+ exports.handleGetAdtTypes = handleGetAdtTypes;
6
+ const utils_1 = require("../../lib/utils");
7
+ const fast_xml_parser_1 = require("fast-xml-parser");
8
+ exports.TOOL_DEFINITION = {
9
+ name: "GetAdtTypes",
10
+ description: "Retrieve all valid ADT object types.",
11
+ inputSchema: {
12
+ type: "object",
13
+ properties: {
14
+ validate_type: {
15
+ type: "string",
16
+ description: "Type name to validate (optional)"
17
+ }
18
+ },
19
+ required: []
20
+ }
21
+ };
22
+ function parseObjectTypesXml(xml) {
23
+ const parser = new fast_xml_parser_1.XMLParser({
24
+ ignoreAttributes: false,
25
+ attributeNamePrefix: '',
26
+ parseAttributeValue: true,
27
+ trimValues: true
28
+ });
29
+ const result = parser.parse(xml);
30
+ const types = [];
31
+ const objects = result['opr:objectTypes']?.['opr:objectType'];
32
+ if (Array.isArray(objects)) {
33
+ for (const obj of objects) {
34
+ types.push({
35
+ name: obj['name'],
36
+ description: obj['text'],
37
+ provider: obj['provider']
38
+ });
39
+ }
40
+ }
41
+ else if (objects) {
42
+ types.push({
43
+ name: objects['name'],
44
+ description: objects['text'],
45
+ provider: objects['provider']
46
+ });
47
+ }
48
+ return types;
49
+ }
50
+ function extractNamedItems(xml) {
51
+ const parser = new fast_xml_parser_1.XMLParser({
52
+ ignoreAttributes: false,
53
+ attributeNamePrefix: '',
54
+ parseAttributeValue: true,
55
+ trimValues: true
56
+ });
57
+ const result = parser.parse(xml);
58
+ const items = [];
59
+ const namedItems = result['nameditem:namedItemList']?.['nameditem:namedItem'];
60
+ if (Array.isArray(namedItems)) {
61
+ for (const item of namedItems) {
62
+ items.push({
63
+ name: item['nameditem:name'],
64
+ description: item['nameditem:description']
65
+ });
66
+ }
67
+ }
68
+ else if (namedItems) {
69
+ items.push({
70
+ name: namedItems['nameditem:name'],
71
+ description: namedItems['nameditem:description']
72
+ });
73
+ }
74
+ return items;
75
+ }
76
+ async function handleGetAdtTypes(args) {
77
+ try {
78
+ const url = `${await (0, utils_1.getBaseUrl)()}/sap/bc/adt/repository/informationsystem/objecttypes?maxItemCount=999&name=*&data=usedByProvider`;
79
+ const response = await (0, utils_1.makeAdtRequestWithTimeout)(url, 'GET', 'default');
80
+ const items = extractNamedItems(response.data);
81
+ return {
82
+ isError: false,
83
+ content: [
84
+ {
85
+ type: "text",
86
+ text: JSON.stringify(items)
87
+ }
88
+ ]
89
+ };
90
+ }
91
+ catch (error) {
92
+ return {
93
+ isError: true,
94
+ content: [
95
+ {
96
+ type: "text",
97
+ text: `ADT error: ${String(error)}`
98
+ }
99
+ ]
100
+ };
101
+ }
102
+ }