@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,258 @@
1
+ "use strict";
2
+ /**
3
+ * UpdateDataElement Handler - Update Existing ABAP Data Element
4
+ *
5
+ * Uses DataElementBuilder from @mcp-abap-adt/adt-clients for all operations.
6
+ * Session and lock management handled internally by builder.
7
+ *
8
+ * Workflow: lock -> update -> check -> unlock -> (activate)
9
+ */
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.TOOL_DEFINITION = void 0;
12
+ exports.handleUpdateDataElement = handleUpdateDataElement;
13
+ const utils_1 = require("../../lib/utils");
14
+ const utils_2 = require("../../lib/utils");
15
+ const transportValidation_js_1 = require("../../utils/transportValidation.js");
16
+ const adt_clients_1 = require("@mcp-abap-adt/adt-clients");
17
+ exports.TOOL_DEFINITION = {
18
+ name: "UpdateDataElement",
19
+ description: `Update an existing ABAP data element in SAP system.
20
+
21
+ Workflow:
22
+ 1. Gets domain info (if type_kind is 'domain') to extract dataType/length/decimals
23
+ 2. Acquires lock on the data element
24
+ 3. Updates data element with provided parameters (complete replacement)
25
+ 4. Unlocks data element
26
+ 5. Optionally activates data element (default: true)
27
+ 6. Returns updated data element details
28
+
29
+ Supported type_kind values:
30
+ - domain: Based on ABAP domain (requires type_name = domain name)
31
+ - predefinedAbapType: Direct ABAP type (requires data_type, length, decimals)
32
+ - refToPredefinedAbapType: Reference to ABAP type (requires data_type, length, decimals)
33
+ - refToDictionaryType: Reference to another data element (requires type_name = data element name)
34
+ - refToClifType: Reference to class (requires type_name = class name)
35
+
36
+ Note: All provided parameters completely replace existing values. Field labels are truncated to max lengths (10/20/40/55).`,
37
+ inputSchema: {
38
+ type: "object",
39
+ properties: {
40
+ data_element_name: {
41
+ type: "string",
42
+ description: "Data element name to update (e.g., ZZ_TEST_DTEL_01)"
43
+ },
44
+ description: {
45
+ type: "string",
46
+ description: "New data element description"
47
+ },
48
+ package_name: {
49
+ type: "string",
50
+ description: "Package name (e.g., ZOK_LOCAL, $TMP for local objects)"
51
+ },
52
+ transport_request: {
53
+ type: "string",
54
+ description: "Transport request number (e.g., E19K905635). Required for transportable packages."
55
+ },
56
+ type_kind: {
57
+ type: "string",
58
+ description: "Type kind: domain, predefinedAbapType, refToPredefinedAbapType, refToDictionaryType, refToClifType",
59
+ enum: ["domain", "predefinedAbapType", "refToPredefinedAbapType", "refToDictionaryType", "refToClifType"],
60
+ default: "domain"
61
+ },
62
+ type_name: {
63
+ type: "string",
64
+ description: "Type name: domain name, data element name, or class name (depending on type_kind)"
65
+ },
66
+ data_type: {
67
+ type: "string",
68
+ description: "Data type (CHAR, NUMC, etc.) - for predefinedAbapType or refToPredefinedAbapType"
69
+ },
70
+ length: {
71
+ type: "number",
72
+ description: "Length - for predefinedAbapType or refToPredefinedAbapType"
73
+ },
74
+ decimals: {
75
+ type: "number",
76
+ description: "Decimals - for predefinedAbapType or refToPredefinedAbapType"
77
+ },
78
+ domain_name: {
79
+ type: "string",
80
+ description: "Domain name (deprecated - use type_name with type_kind=domain)"
81
+ },
82
+ field_label_short: {
83
+ type: "string",
84
+ description: "Short field label (max 10 chars)"
85
+ },
86
+ field_label_medium: {
87
+ type: "string",
88
+ description: "Medium field label (max 20 chars)"
89
+ },
90
+ field_label_long: {
91
+ type: "string",
92
+ description: "Long field label (max 40 chars)"
93
+ },
94
+ field_label_heading: {
95
+ type: "string",
96
+ description: "Heading field label (max 55 chars)"
97
+ },
98
+ search_help: {
99
+ type: "string",
100
+ description: "Search help name"
101
+ },
102
+ search_help_parameter: {
103
+ type: "string",
104
+ description: "Search help parameter"
105
+ },
106
+ set_get_parameter: {
107
+ type: "string",
108
+ description: "Set/Get parameter ID"
109
+ },
110
+ default_component_name: {
111
+ type: "string",
112
+ description: "Default component name"
113
+ },
114
+ deactivate_input_history: {
115
+ type: "boolean",
116
+ description: "Deactivate input history",
117
+ default: false
118
+ },
119
+ change_document: {
120
+ type: "boolean",
121
+ description: "Change document",
122
+ default: false
123
+ },
124
+ left_to_right_direction: {
125
+ type: "boolean",
126
+ description: "Left to right direction",
127
+ default: false
128
+ },
129
+ deactivate_bidi_filtering: {
130
+ type: "boolean",
131
+ description: "Deactivate BiDi filtering",
132
+ default: false
133
+ },
134
+ activate: {
135
+ type: "boolean",
136
+ description: "Activate data element after update (default: true)",
137
+ default: true
138
+ }
139
+ },
140
+ required: ["data_element_name", "package_name"]
141
+ }
142
+ };
143
+ /**
144
+ * Main handler for UpdateDataElement tool
145
+ *
146
+ * Uses DataElementBuilder from @mcp-abap-adt/adt-clients for all operations
147
+ * Session and lock management handled internally by builder
148
+ */
149
+ async function handleUpdateDataElement(args) {
150
+ try {
151
+ if (!args?.data_element_name) {
152
+ throw new utils_1.McpError(utils_1.ErrorCode.InvalidParams, 'Data element name is required');
153
+ }
154
+ if (!args?.package_name) {
155
+ throw new utils_1.McpError(utils_1.ErrorCode.InvalidParams, 'Package name is required');
156
+ }
157
+ // Validate transport_request: required for non-$TMP packages
158
+ (0, transportValidation_js_1.validateTransportRequest)(args.package_name, args.transport_request);
159
+ const typedArgs = args;
160
+ const connection = (0, utils_2.getManagedConnection)();
161
+ const dataElementName = typedArgs.data_element_name.toUpperCase();
162
+ utils_2.logger.info(`Starting data element update: ${dataElementName}`);
163
+ try {
164
+ // Determine domain name for builder (support deprecated domain_name parameter)
165
+ const domainName = typedArgs.type_name || typedArgs.domain_name;
166
+ const rawTypeKind = (typedArgs.type_kind || 'domain').toString().toLowerCase();
167
+ const typeKindMap = {
168
+ domain: 'domain',
169
+ builtin: 'predefinedAbapType',
170
+ predefinedabaptype: 'predefinedAbapType',
171
+ reftopredefinedabaptype: 'refToPredefinedAbapType',
172
+ reftodictionarytype: 'refToDictionaryType',
173
+ reftocliftype: 'refToClifType'
174
+ };
175
+ const typeKind = typeKindMap[rawTypeKind] || 'domain';
176
+ // Create client
177
+ const client = new adt_clients_1.CrudClient(connection);
178
+ const shouldActivate = typedArgs.activate !== false; // Default to true if not specified
179
+ // Validate
180
+ await client.validateDataElement(dataElementName);
181
+ // Lock
182
+ await client.lockDataElement(dataElementName);
183
+ const lockHandle = client.getLockHandle();
184
+ try {
185
+ // Update with properties
186
+ const properties = {
187
+ domainName: domainName?.toUpperCase() || '',
188
+ dataType: typedArgs.data_type,
189
+ length: typedArgs.length,
190
+ decimals: typedArgs.decimals,
191
+ shortLabel: typedArgs.field_label_short,
192
+ mediumLabel: typedArgs.field_label_medium,
193
+ longLabel: typedArgs.field_label_long,
194
+ headingLabel: typedArgs.field_label_heading,
195
+ typeKind: typeKind,
196
+ typeName: typedArgs.type_name?.toUpperCase()
197
+ };
198
+ await client.updateDataElement(dataElementName, properties, lockHandle);
199
+ // Check
200
+ await client.checkDataElement(dataElementName);
201
+ // Unlock
202
+ await client.unlockDataElement(dataElementName, lockHandle);
203
+ // Activate if requested
204
+ if (shouldActivate) {
205
+ await client.activateDataElement(dataElementName);
206
+ }
207
+ }
208
+ catch (error) {
209
+ // Try to unlock on error
210
+ try {
211
+ await client.unlockDataElement(dataElementName, lockHandle);
212
+ }
213
+ catch (unlockError) {
214
+ utils_2.logger.error('Failed to unlock data element after error:', unlockError);
215
+ }
216
+ throw error;
217
+ }
218
+ // Get data element details from update result
219
+ const updateResult = client.getUpdateResult();
220
+ let dataElementDetails = null;
221
+ if (updateResult?.data && typeof updateResult.data === 'object' && 'data_element_details' in updateResult.data) {
222
+ dataElementDetails = updateResult.data.data_element_details;
223
+ }
224
+ return (0, utils_2.return_response)({
225
+ data: JSON.stringify({
226
+ success: true,
227
+ data_element_name: dataElementName,
228
+ package: typedArgs.package_name,
229
+ transport_request: typedArgs.transport_request,
230
+ domain_name: domainName?.toUpperCase(),
231
+ status: shouldActivate ? 'active' : 'inactive',
232
+ message: `Data element ${dataElementName} updated${shouldActivate ? ' and activated' : ''} successfully`,
233
+ data_element_details: dataElementDetails
234
+ })
235
+ });
236
+ }
237
+ catch (error) {
238
+ utils_2.logger.error(`Error updating data element ${dataElementName}:`, error);
239
+ // Handle specific error cases
240
+ if (error.message?.includes('not found') || error.response?.status === 404) {
241
+ throw new utils_1.McpError(utils_1.ErrorCode.InvalidParams, `Data element ${dataElementName} not found.`);
242
+ }
243
+ if (error.message?.includes('locked') || error.response?.status === 403) {
244
+ throw new utils_1.McpError(utils_1.ErrorCode.InternalError, `Data element ${dataElementName} is locked by another user or session. Please try again later.`);
245
+ }
246
+ const errorMessage = error.response?.data
247
+ ? (typeof error.response.data === 'string' ? error.response.data : JSON.stringify(error.response.data))
248
+ : error.message || String(error);
249
+ throw new utils_1.McpError(utils_1.ErrorCode.InternalError, `Failed to update data element ${dataElementName}: ${errorMessage}`);
250
+ }
251
+ }
252
+ catch (error) {
253
+ if (error instanceof utils_1.McpError) {
254
+ throw error;
255
+ }
256
+ return (0, utils_2.return_error)(error);
257
+ }
258
+ }
@@ -0,0 +1,33 @@
1
+ /**
2
+ * GetDataElement Handler - Retrieve ABAP Data Element information via ADT API
3
+ *
4
+ * Retrieves complete data element metadata including:
5
+ * - Type definition (domain reference or built-in type)
6
+ * - Field labels (short, medium, long, heading)
7
+ * - Data type characteristics (type, length, decimals)
8
+ * - Search help and parameter information
9
+ * - Package and system information
10
+ */
11
+ import * as z from 'zod';
12
+ export declare const TOOL_DEFINITION: {
13
+ readonly name: "GetDataElement";
14
+ readonly description: "[read-only] Retrieve ABAP data element information including type definition, field labels, and metadata from SAP system via ADT API.";
15
+ readonly inputSchema: {
16
+ readonly data_element_name: z.ZodString;
17
+ };
18
+ };
19
+ interface DataElementArgs {
20
+ data_element_name: string;
21
+ }
22
+ /**
23
+ * Main handler for GetDataElement MCP tool
24
+ */
25
+ export declare function handleGetDataElement(args: DataElementArgs): Promise<{
26
+ isError: boolean;
27
+ content: {
28
+ type: string;
29
+ text: any;
30
+ }[];
31
+ }>;
32
+ export {};
33
+ //# sourceMappingURL=handleGetDataElement.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handleGetDataElement.d.ts","sourceRoot":"","sources":["../../../../src/handlers/data_element/readonly/handleGetDataElement.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAMH,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAEzB,eAAO,MAAM,eAAe;;;;;;CAMlB,CAAC;AAEX,UAAU,eAAe;IACvB,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AA0FD;;GAEG;AACH,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,eAAe;;;;;;GAqC/D"}
@@ -0,0 +1,173 @@
1
+ "use strict";
2
+ /**
3
+ * GetDataElement Handler - Retrieve ABAP Data Element information via ADT API
4
+ *
5
+ * Retrieves complete data element metadata including:
6
+ * - Type definition (domain reference or built-in type)
7
+ * - Field labels (short, medium, long, heading)
8
+ * - Data type characteristics (type, length, decimals)
9
+ * - Search help and parameter information
10
+ * - Package and system information
11
+ */
12
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
13
+ if (k2 === undefined) k2 = k;
14
+ var desc = Object.getOwnPropertyDescriptor(m, k);
15
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
16
+ desc = { enumerable: true, get: function() { return m[k]; } };
17
+ }
18
+ Object.defineProperty(o, k2, desc);
19
+ }) : (function(o, m, k, k2) {
20
+ if (k2 === undefined) k2 = k;
21
+ o[k2] = m[k];
22
+ }));
23
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
24
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
25
+ }) : function(o, v) {
26
+ o["default"] = v;
27
+ });
28
+ var __importStar = (this && this.__importStar) || (function () {
29
+ var ownKeys = function(o) {
30
+ ownKeys = Object.getOwnPropertyNames || function (o) {
31
+ var ar = [];
32
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
33
+ return ar;
34
+ };
35
+ return ownKeys(o);
36
+ };
37
+ return function (mod) {
38
+ if (mod && mod.__esModule) return mod;
39
+ var result = {};
40
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
41
+ __setModuleDefault(result, mod);
42
+ return result;
43
+ };
44
+ })();
45
+ Object.defineProperty(exports, "__esModule", { value: true });
46
+ exports.TOOL_DEFINITION = void 0;
47
+ exports.handleGetDataElement = handleGetDataElement;
48
+ const utils_1 = require("../../../lib/utils");
49
+ const utils_2 = require("../../../lib/utils");
50
+ const adt_clients_1 = require("@mcp-abap-adt/adt-clients");
51
+ const fast_xml_parser_1 = require("fast-xml-parser");
52
+ const z = __importStar(require("zod"));
53
+ exports.TOOL_DEFINITION = {
54
+ name: "GetDataElement",
55
+ description: "[read-only] Retrieve ABAP data element information including type definition, field labels, and metadata from SAP system via ADT API.",
56
+ inputSchema: {
57
+ data_element_name: z.string().describe("Data element name (e.g., MAKTX, MATNR, ZZ_E_TEST_001)")
58
+ }
59
+ };
60
+ /**
61
+ * Parse data element XML response to structured JSON
62
+ */
63
+ function parseDataElementXml(xmlData) {
64
+ const parser = new fast_xml_parser_1.XMLParser({
65
+ ignoreAttributes: false,
66
+ attributeNamePrefix: '',
67
+ textNodeName: '_text',
68
+ parseAttributeValue: true,
69
+ });
70
+ const result = parser.parse(xmlData);
71
+ const wbobj = result['blue:wbobj'] || result['wbobj'];
72
+ if (!wbobj) {
73
+ throw new utils_1.McpError(utils_1.ErrorCode.InternalError, 'Invalid data element XML structure');
74
+ }
75
+ // Extract core attributes
76
+ const coreAttrs = {
77
+ name: wbobj['adtcore:name'] || wbobj['name'],
78
+ type: wbobj['adtcore:type'] || wbobj['type'],
79
+ description: wbobj['adtcore:description'] || wbobj['description'],
80
+ language: wbobj['adtcore:language'] || wbobj['language'],
81
+ masterLanguage: wbobj['adtcore:masterLanguage'] || wbobj['masterLanguage'],
82
+ masterSystem: wbobj['adtcore:masterSystem'] || wbobj['masterSystem'],
83
+ responsible: wbobj['adtcore:responsible'] || wbobj['responsible'],
84
+ createdAt: wbobj['adtcore:createdAt'] || wbobj['createdAt'],
85
+ createdBy: wbobj['adtcore:createdBy'] || wbobj['createdBy'],
86
+ changedAt: wbobj['adtcore:changedAt'] || wbobj['changedAt'],
87
+ changedBy: wbobj['adtcore:changedBy'] || wbobj['changedBy'],
88
+ version: wbobj['adtcore:version'] || wbobj['version'],
89
+ abapLanguageVersion: wbobj['adtcore:abapLanguageVersion'] || wbobj['abapLanguageVersion']
90
+ };
91
+ // Extract package reference
92
+ const packageRef = wbobj['adtcore:packageRef'] || wbobj['packageRef'];
93
+ const packageInfo = packageRef ? {
94
+ name: packageRef['adtcore:name'] || packageRef['name'],
95
+ type: packageRef['adtcore:type'] || packageRef['type'],
96
+ description: packageRef['adtcore:description'] || packageRef['description'],
97
+ uri: packageRef['adtcore:uri'] || packageRef['uri']
98
+ } : null;
99
+ // Extract data element details
100
+ const dtel = wbobj['dtel:dataElement'] || wbobj['dataElement'];
101
+ const dataElementInfo = dtel ? {
102
+ typeKind: dtel['dtel:typeKind'] || dtel['typeKind'],
103
+ typeName: dtel['dtel:typeName'] || dtel['typeName'],
104
+ dataType: dtel['dtel:dataType'] || dtel['dataType'],
105
+ dataTypeLength: dtel['dtel:dataTypeLength'] || dtel['dataTypeLength'],
106
+ dataTypeDecimals: dtel['dtel:dataTypeDecimals'] || dtel['dataTypeDecimals'],
107
+ // Field labels
108
+ shortFieldLabel: dtel['dtel:shortFieldLabel'] || dtel['shortFieldLabel'],
109
+ shortFieldLength: dtel['dtel:shortFieldLength'] || dtel['shortFieldLength'],
110
+ shortFieldMaxLength: dtel['dtel:shortFieldMaxLength'] || dtel['shortFieldMaxLength'],
111
+ mediumFieldLabel: dtel['dtel:mediumFieldLabel'] || dtel['mediumFieldLabel'],
112
+ mediumFieldLength: dtel['dtel:mediumFieldLength'] || dtel['mediumFieldLength'],
113
+ mediumFieldMaxLength: dtel['dtel:mediumFieldMaxLength'] || dtel['mediumFieldMaxLength'],
114
+ longFieldLabel: dtel['dtel:longFieldLabel'] || dtel['longFieldLabel'],
115
+ longFieldLength: dtel['dtel:longFieldLength'] || dtel['longFieldLength'],
116
+ longFieldMaxLength: dtel['dtel:longFieldMaxLength'] || dtel['longFieldMaxLength'],
117
+ headingFieldLabel: dtel['dtel:headingFieldLabel'] || dtel['headingFieldLabel'],
118
+ headingFieldLength: dtel['dtel:headingFieldLength'] || dtel['headingFieldLength'],
119
+ headingFieldMaxLength: dtel['dtel:headingFieldMaxLength'] || dtel['headingFieldMaxLength'],
120
+ // Additional properties
121
+ searchHelp: dtel['dtel:searchHelp'] || dtel['searchHelp'],
122
+ searchHelpParameter: dtel['dtel:searchHelpParameter'] || dtel['searchHelpParameter'],
123
+ setGetParameter: dtel['dtel:setGetParameter'] || dtel['setGetParameter'],
124
+ defaultComponentName: dtel['dtel:defaultComponentName'] || dtel['defaultComponentName'],
125
+ deactivateInputHistory: dtel['dtel:deactivateInputHistory'] || dtel['deactivateInputHistory'],
126
+ changeDocument: dtel['dtel:changeDocument'] || dtel['changeDocument'],
127
+ leftToRightDirection: dtel['dtel:leftToRightDirection'] || dtel['leftToRightDirection'],
128
+ deactivateBIDIFiltering: dtel['dtel:deactivateBIDIFiltering'] || dtel['deactivateBIDIFiltering']
129
+ } : null;
130
+ return {
131
+ metadata: coreAttrs,
132
+ package: packageInfo,
133
+ dataElement: dataElementInfo
134
+ };
135
+ }
136
+ /**
137
+ * Main handler for GetDataElement MCP tool
138
+ */
139
+ async function handleGetDataElement(args) {
140
+ try {
141
+ // Validate required parameters
142
+ if (!args?.data_element_name) {
143
+ throw new utils_1.McpError(utils_1.ErrorCode.InvalidParams, 'Data element name is required');
144
+ }
145
+ const typedArgs = args;
146
+ const connection = (0, utils_1.getManagedConnection)();
147
+ const client = new adt_clients_1.CrudClient(connection);
148
+ await client.readDataElement(typedArgs.data_element_name);
149
+ const response = client.getReadResult();
150
+ if (!response) {
151
+ throw new utils_1.McpError(utils_1.ErrorCode.InternalError, 'Failed to read data element');
152
+ }
153
+ // Parse XML to JSON
154
+ const parsedData = parseDataElementXml(response.data);
155
+ return (0, utils_2.return_response)({
156
+ data: JSON.stringify({
157
+ success: true,
158
+ data_element: parsedData,
159
+ raw_xml: response.data
160
+ }, null, 2),
161
+ status: response.status,
162
+ statusText: response.statusText,
163
+ headers: response.headers,
164
+ config: response.config
165
+ });
166
+ }
167
+ catch (error) {
168
+ if (error instanceof utils_1.McpError) {
169
+ throw error;
170
+ }
171
+ return (0, utils_2.return_error)(error);
172
+ }
173
+ }
@@ -0,0 +1,41 @@
1
+ /**
2
+ * CreateMetadataExtension Handler - ABAP Metadata Extension Creation via ADT API
3
+ */
4
+ export declare const TOOL_DEFINITION: {
5
+ readonly name: "CreateMetadataExtension";
6
+ readonly description: "Create a new ABAP Metadata Extension (DDLX) in SAP system.";
7
+ readonly inputSchema: {
8
+ readonly type: "object";
9
+ readonly properties: {
10
+ readonly name: {
11
+ readonly type: "string";
12
+ readonly description: "Metadata Extension name";
13
+ };
14
+ readonly description: {
15
+ readonly type: "string";
16
+ readonly description: "Description";
17
+ };
18
+ readonly package_name: {
19
+ readonly type: "string";
20
+ readonly description: "Package name";
21
+ };
22
+ readonly transport_request: {
23
+ readonly type: "string";
24
+ readonly description: "Transport request number";
25
+ };
26
+ readonly activate: {
27
+ readonly type: "boolean";
28
+ readonly description: "Activate after creation. Default: true";
29
+ };
30
+ };
31
+ readonly required: readonly ["name", "package_name"];
32
+ };
33
+ };
34
+ export declare function handleCreateMetadataExtension(params: any): Promise<{
35
+ isError: boolean;
36
+ content: {
37
+ type: string;
38
+ text: any;
39
+ }[];
40
+ }>;
41
+ //# sourceMappingURL=handleCreateMetadataExtension.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handleCreateMetadataExtension.d.ts","sourceRoot":"","sources":["../../../src/handlers/ddlx/handleCreateMetadataExtension.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6BlB,CAAC;AAUX,wBAAsB,6BAA6B,CAAC,MAAM,EAAE,GAAG;;;;;;GAmE9D"}
@@ -0,0 +1,92 @@
1
+ "use strict";
2
+ /**
3
+ * CreateMetadataExtension Handler - ABAP Metadata Extension Creation via ADT API
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.TOOL_DEFINITION = void 0;
7
+ exports.handleCreateMetadataExtension = handleCreateMetadataExtension;
8
+ const utils_1 = require("../../lib/utils");
9
+ const transportValidation_js_1 = require("../../utils/transportValidation.js");
10
+ const adt_clients_1 = require("@mcp-abap-adt/adt-clients");
11
+ exports.TOOL_DEFINITION = {
12
+ name: "CreateMetadataExtension",
13
+ description: "Create a new ABAP Metadata Extension (DDLX) in SAP system.",
14
+ inputSchema: {
15
+ type: "object",
16
+ properties: {
17
+ name: {
18
+ type: "string",
19
+ description: "Metadata Extension name"
20
+ },
21
+ description: {
22
+ type: "string",
23
+ description: "Description"
24
+ },
25
+ package_name: {
26
+ type: "string",
27
+ description: "Package name"
28
+ },
29
+ transport_request: {
30
+ type: "string",
31
+ description: "Transport request number"
32
+ },
33
+ activate: {
34
+ type: "boolean",
35
+ description: "Activate after creation. Default: true"
36
+ }
37
+ },
38
+ required: ["name", "package_name"]
39
+ }
40
+ };
41
+ async function handleCreateMetadataExtension(params) {
42
+ const args = params;
43
+ if (!args.name || !args.package_name) {
44
+ return (0, utils_1.return_error)(new Error("Missing required parameters"));
45
+ }
46
+ try {
47
+ (0, transportValidation_js_1.validateTransportRequest)(args.package_name, args.transport_request);
48
+ }
49
+ catch (error) {
50
+ return (0, utils_1.return_error)(error);
51
+ }
52
+ const name = args.name.toUpperCase();
53
+ const connection = (0, utils_1.getManagedConnection)();
54
+ utils_1.logger.info(`Starting DDLX creation: ${name}`);
55
+ try {
56
+ const client = new adt_clients_1.CrudClient(connection);
57
+ const shouldActivate = args.activate !== false;
58
+ // Create
59
+ await client.createMetadataExtension(name, args.description || name, args.package_name, args.transport_request || '');
60
+ // Lock
61
+ await client.lockMetadataExtension(name);
62
+ const lockHandle = client.getLockHandle();
63
+ // Check
64
+ await client.checkMetadataExtension(name);
65
+ // Unlock
66
+ await client.unlockMetadataExtension(name, lockHandle);
67
+ // Activate if requested
68
+ if (shouldActivate) {
69
+ await client.activateMetadataExtension(name);
70
+ }
71
+ const result = {
72
+ success: true,
73
+ name: name,
74
+ package_name: args.package_name,
75
+ type: 'DDLX',
76
+ message: shouldActivate
77
+ ? `Metadata Extension ${name} created and activated successfully`
78
+ : `Metadata Extension ${name} created successfully`
79
+ };
80
+ return (0, utils_1.return_response)({
81
+ data: JSON.stringify(result, null, 2),
82
+ status: 200,
83
+ statusText: 'OK',
84
+ headers: {},
85
+ config: {}
86
+ });
87
+ }
88
+ catch (error) {
89
+ utils_1.logger.error(`Error creating DDLX ${name}:`, error);
90
+ return (0, utils_1.return_error)(error);
91
+ }
92
+ }
@@ -0,0 +1,37 @@
1
+ /**
2
+ * UpdateMetadataExtension Handler - ABAP Metadata Extension Update via ADT API
3
+ */
4
+ export declare const TOOL_DEFINITION: {
5
+ readonly name: "UpdateMetadataExtension";
6
+ readonly description: "Update source code of an ABAP Metadata Extension.";
7
+ readonly inputSchema: {
8
+ readonly type: "object";
9
+ readonly properties: {
10
+ readonly name: {
11
+ readonly type: "string";
12
+ readonly description: "Metadata Extension name";
13
+ };
14
+ readonly source_code: {
15
+ readonly type: "string";
16
+ readonly description: "New source code";
17
+ };
18
+ readonly lock_handle: {
19
+ readonly type: "string";
20
+ readonly description: "Lock handle from LockObject. If not provided, will attempt to lock internally.";
21
+ };
22
+ readonly activate: {
23
+ readonly type: "boolean";
24
+ readonly description: "Activate after update. Default: true";
25
+ };
26
+ };
27
+ readonly required: readonly ["name", "source_code"];
28
+ };
29
+ };
30
+ export declare function handleUpdateMetadataExtension(params: any): Promise<{
31
+ isError: boolean;
32
+ content: {
33
+ type: string;
34
+ text: any;
35
+ }[];
36
+ }>;
37
+ //# sourceMappingURL=handleUpdateMetadataExtension.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handleUpdateMetadataExtension.d.ts","sourceRoot":"","sources":["../../../src/handlers/ddlx/handleUpdateMetadataExtension.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;CAyBlB,CAAC;AASX,wBAAsB,6BAA6B,CAAC,MAAM,EAAE,GAAG;;;;;;GAsD9D"}