@mcp-abap-adt/core 2.5.1 → 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 (306) hide show
  1. package/CHANGELOG.md +22 -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/data_element/handleCreateDataElement.d.ts +83 -0
  52. package/dist/handlers/data_element/handleCreateDataElement.d.ts.map +1 -0
  53. package/dist/handlers/data_element/handleCreateDataElement.js +180 -0
  54. package/dist/handlers/data_element/handleGetDataElement.d.ts +29 -0
  55. package/dist/handlers/data_element/handleGetDataElement.d.ts.map +1 -0
  56. package/dist/handlers/data_element/handleGetDataElement.js +173 -0
  57. package/dist/handlers/data_element/handleUpdateDataElement.d.ts +131 -0
  58. package/dist/handlers/data_element/handleUpdateDataElement.d.ts.map +1 -0
  59. package/dist/handlers/data_element/handleUpdateDataElement.js +258 -0
  60. package/dist/handlers/data_element/readonly/handleGetDataElement.d.ts +33 -0
  61. package/dist/handlers/data_element/readonly/handleGetDataElement.d.ts.map +1 -0
  62. package/dist/handlers/data_element/readonly/handleGetDataElement.js +173 -0
  63. package/dist/handlers/ddlx/handleCreateMetadataExtension.d.ts +41 -0
  64. package/dist/handlers/ddlx/handleCreateMetadataExtension.d.ts.map +1 -0
  65. package/dist/handlers/ddlx/handleCreateMetadataExtension.js +92 -0
  66. package/dist/handlers/ddlx/handleUpdateMetadataExtension.d.ts +37 -0
  67. package/dist/handlers/ddlx/handleUpdateMetadataExtension.d.ts.map +1 -0
  68. package/dist/handlers/ddlx/handleUpdateMetadataExtension.js +81 -0
  69. package/dist/handlers/domain/handleCreateDomain.d.ts +104 -0
  70. package/dist/handlers/domain/handleCreateDomain.d.ts.map +1 -0
  71. package/dist/handlers/domain/handleCreateDomain.js +187 -0
  72. package/dist/handlers/domain/handleGetDomain.d.ts +19 -0
  73. package/dist/handlers/domain/handleGetDomain.d.ts.map +1 -0
  74. package/dist/handlers/domain/handleGetDomain.js +138 -0
  75. package/dist/handlers/domain/handleUpdateDomain.d.ts +99 -0
  76. package/dist/handlers/domain/handleUpdateDomain.d.ts.map +1 -0
  77. package/dist/handlers/domain/handleUpdateDomain.js +204 -0
  78. package/dist/handlers/domain/readonly/handleGetDomain.d.ts +23 -0
  79. package/dist/handlers/domain/readonly/handleGetDomain.d.ts.map +1 -0
  80. package/dist/handlers/domain/readonly/handleGetDomain.js +138 -0
  81. package/dist/handlers/enhancement/handleGetEnhancementImpl.d.ts +69 -0
  82. package/dist/handlers/enhancement/handleGetEnhancementImpl.d.ts.map +1 -0
  83. package/dist/handlers/enhancement/handleGetEnhancementImpl.js +171 -0
  84. package/dist/handlers/enhancement/handleGetEnhancementSpot.d.ts +53 -0
  85. package/dist/handlers/enhancement/handleGetEnhancementSpot.d.ts.map +1 -0
  86. package/dist/handlers/enhancement/handleGetEnhancementSpot.js +153 -0
  87. package/dist/handlers/enhancement/handleGetEnhancements.d.ts +64 -0
  88. package/dist/handlers/enhancement/handleGetEnhancements.d.ts.map +1 -0
  89. package/dist/handlers/enhancement/handleGetEnhancements.js +599 -0
  90. package/dist/handlers/function/handleCheckFunctionModule.d.ts +59 -0
  91. package/dist/handlers/function/handleCheckFunctionModule.d.ts.map +1 -0
  92. package/dist/handlers/function/handleCheckFunctionModule.js +140 -0
  93. package/dist/handlers/function/handleCreateFunctionGroup.d.ts +52 -0
  94. package/dist/handlers/function/handleCreateFunctionGroup.d.ts.map +1 -0
  95. package/dist/handlers/function/handleCreateFunctionGroup.js +114 -0
  96. package/dist/handlers/function/handleCreateFunctionModule.d.ts +57 -0
  97. package/dist/handlers/function/handleCreateFunctionModule.d.ts.map +1 -0
  98. package/dist/handlers/function/handleCreateFunctionModule.js +137 -0
  99. package/dist/handlers/function/handleGetFunction.d.ts +17 -0
  100. package/dist/handlers/function/handleGetFunction.d.ts.map +1 -0
  101. package/dist/handlers/function/handleGetFunction.js +172 -0
  102. package/dist/handlers/function/handleGetFunctionGroup.d.ts +16 -0
  103. package/dist/handlers/function/handleGetFunctionGroup.d.ts.map +1 -0
  104. package/dist/handlers/function/handleGetFunctionGroup.js +132 -0
  105. package/dist/handlers/function/handleUpdateFunctionModuleSource.d.ts +54 -0
  106. package/dist/handlers/function/handleUpdateFunctionModuleSource.d.ts.map +1 -0
  107. package/dist/handlers/function/handleUpdateFunctionModuleSource.js +108 -0
  108. package/dist/handlers/function/handleValidateFunctionModule.d.ts +58 -0
  109. package/dist/handlers/function/handleValidateFunctionModule.d.ts.map +1 -0
  110. package/dist/handlers/function/handleValidateFunctionModule.js +132 -0
  111. package/dist/handlers/function/readonly/handleGetFunctionGroup.d.ts +16 -0
  112. package/dist/handlers/function/readonly/handleGetFunctionGroup.d.ts.map +1 -0
  113. package/dist/handlers/function/readonly/handleGetFunctionGroup.js +132 -0
  114. package/dist/handlers/include/handleGetInclude.d.ts +16 -0
  115. package/dist/handlers/include/handleGetInclude.d.ts.map +1 -0
  116. package/dist/handlers/include/handleGetInclude.js +81 -0
  117. package/dist/handlers/include/handleGetIncludesList.d.ts +36 -0
  118. package/dist/handlers/include/handleGetIncludesList.d.ts.map +1 -0
  119. package/dist/handlers/include/handleGetIncludesList.js +223 -0
  120. package/dist/handlers/interface/handleCreateInterface.d.ts +64 -0
  121. package/dist/handlers/interface/handleCreateInterface.d.ts.map +1 -0
  122. package/dist/handlers/interface/handleCreateInterface.js +175 -0
  123. package/dist/handlers/interface/handleGetInterface.d.ts +40 -0
  124. package/dist/handlers/interface/handleGetInterface.d.ts.map +1 -0
  125. package/dist/handlers/interface/handleGetInterface.js +134 -0
  126. package/dist/handlers/interface/handleUpdateInterfaceSource.d.ts +48 -0
  127. package/dist/handlers/interface/handleUpdateInterfaceSource.d.ts.map +1 -0
  128. package/dist/handlers/interface/handleUpdateInterfaceSource.js +127 -0
  129. package/dist/handlers/interface/readonly/handleGetInterface.d.ts +44 -0
  130. package/dist/handlers/interface/readonly/handleGetInterface.d.ts.map +1 -0
  131. package/dist/handlers/interface/readonly/handleGetInterface.js +134 -0
  132. package/dist/handlers/package/handleCreatePackage.d.ts +38 -0
  133. package/dist/handlers/package/handleCreatePackage.d.ts.map +1 -0
  134. package/dist/handlers/package/handleCreatePackage.js +127 -0
  135. package/dist/handlers/package/handleGetPackage.d.ts +16 -0
  136. package/dist/handlers/package/handleGetPackage.d.ts.map +1 -0
  137. package/dist/handlers/package/handleGetPackage.js +94 -0
  138. package/dist/handlers/package/readonly/handleGetPackage.d.ts +21 -0
  139. package/dist/handlers/package/readonly/handleGetPackage.d.ts.map +1 -0
  140. package/dist/handlers/package/readonly/handleGetPackage.js +94 -0
  141. package/dist/handlers/program/handleCreateProgram.d.ts +73 -0
  142. package/dist/handlers/program/handleCreateProgram.d.ts.map +1 -0
  143. package/dist/handlers/program/handleCreateProgram.js +220 -0
  144. package/dist/handlers/program/handleGetProgFullCode.d.ts +67 -0
  145. package/dist/handlers/program/handleGetProgFullCode.d.ts.map +1 -0
  146. package/dist/handlers/program/handleGetProgFullCode.js +249 -0
  147. package/dist/handlers/program/handleGetProgram.d.ts +16 -0
  148. package/dist/handlers/program/handleGetProgram.d.ts.map +1 -0
  149. package/dist/handlers/program/handleGetProgram.js +71 -0
  150. package/dist/handlers/program/handleUpdateProgramSource.d.ts +44 -0
  151. package/dist/handlers/program/handleUpdateProgramSource.d.ts.map +1 -0
  152. package/dist/handlers/program/handleUpdateProgramSource.js +121 -0
  153. package/dist/handlers/program/readonly/handleGetProgram.d.ts +20 -0
  154. package/dist/handlers/program/readonly/handleGetProgram.d.ts.map +1 -0
  155. package/dist/handlers/program/readonly/handleGetProgram.js +71 -0
  156. package/dist/handlers/search/handleGetObjectsByType.d.ts +42 -0
  157. package/dist/handlers/search/handleGetObjectsByType.d.ts.map +1 -0
  158. package/dist/handlers/search/handleGetObjectsByType.js +166 -0
  159. package/dist/handlers/search/handleGetObjectsList.d.ts +46 -0
  160. package/dist/handlers/search/handleGetObjectsList.d.ts.map +1 -0
  161. package/dist/handlers/search/handleGetObjectsList.js +145 -0
  162. package/dist/handlers/search/handleSearchObject.d.ts +28 -0
  163. package/dist/handlers/search/handleSearchObject.d.ts.map +1 -0
  164. package/dist/handlers/search/handleSearchObject.js +119 -0
  165. package/dist/handlers/service_definition/readonly/handleGetServiceDefinition.d.ts +17 -0
  166. package/dist/handlers/service_definition/readonly/handleGetServiceDefinition.d.ts.map +1 -0
  167. package/dist/handlers/service_definition/readonly/handleGetServiceDefinition.js +136 -0
  168. package/dist/handlers/structure/handleCreateStructure.d.ts +107 -0
  169. package/dist/handlers/structure/handleCreateStructure.d.ts.map +1 -0
  170. package/dist/handlers/structure/handleCreateStructure.js +184 -0
  171. package/dist/handlers/structure/handleGetStructure.d.ts +16 -0
  172. package/dist/handlers/structure/handleGetStructure.d.ts.map +1 -0
  173. package/dist/handlers/structure/handleGetStructure.js +139 -0
  174. package/dist/handlers/structure/readonly/handleGetStructure.d.ts +16 -0
  175. package/dist/handlers/structure/readonly/handleGetStructure.d.ts.map +1 -0
  176. package/dist/handlers/structure/readonly/handleGetStructure.js +139 -0
  177. package/dist/handlers/system/handleDescribeByList.d.ts +36 -0
  178. package/dist/handlers/system/handleDescribeByList.d.ts.map +1 -0
  179. package/dist/handlers/system/handleDescribeByList.js +121 -0
  180. package/dist/handlers/system/handleGetAbapAST.d.ts +26 -0
  181. package/dist/handlers/system/handleGetAbapAST.d.ts.map +1 -0
  182. package/dist/handlers/system/handleGetAbapAST.js +172 -0
  183. package/dist/handlers/system/handleGetAbapSemanticAnalysis.d.ts +26 -0
  184. package/dist/handlers/system/handleGetAbapSemanticAnalysis.d.ts.map +1 -0
  185. package/dist/handlers/system/handleGetAbapSemanticAnalysis.js +353 -0
  186. package/dist/handlers/system/handleGetAbapSystemSymbols.d.ts +26 -0
  187. package/dist/handlers/system/handleGetAbapSystemSymbols.d.ts.map +1 -0
  188. package/dist/handlers/system/handleGetAbapSystemSymbols.js +574 -0
  189. package/dist/handlers/system/handleGetAllTypes.d.ts +22 -0
  190. package/dist/handlers/system/handleGetAllTypes.d.ts.map +1 -0
  191. package/dist/handlers/system/handleGetAllTypes.js +102 -0
  192. package/dist/handlers/system/handleGetInactiveObjects.d.ts +20 -0
  193. package/dist/handlers/system/handleGetInactiveObjects.d.ts.map +1 -0
  194. package/dist/handlers/system/handleGetInactiveObjects.js +41 -0
  195. package/dist/handlers/system/handleGetObjectInfo.d.ts +41 -0
  196. package/dist/handlers/system/handleGetObjectInfo.d.ts.map +1 -0
  197. package/dist/handlers/system/handleGetObjectInfo.js +210 -0
  198. package/dist/handlers/system/handleGetObjectNodeFromCache.d.ts +40 -0
  199. package/dist/handlers/system/handleGetObjectNodeFromCache.d.ts.map +1 -0
  200. package/dist/handlers/system/handleGetObjectNodeFromCache.js +70 -0
  201. package/dist/handlers/system/handleGetObjectStructure.d.ts +26 -0
  202. package/dist/handlers/system/handleGetObjectStructure.d.ts.map +1 -0
  203. package/dist/handlers/system/handleGetObjectStructure.js +103 -0
  204. package/dist/handlers/system/handleGetSession.d.ts +33 -0
  205. package/dist/handlers/system/handleGetSession.d.ts.map +1 -0
  206. package/dist/handlers/system/handleGetSession.js +63 -0
  207. package/dist/handlers/system/handleGetSqlQuery.d.ts +49 -0
  208. package/dist/handlers/system/handleGetSqlQuery.d.ts.map +1 -0
  209. package/dist/handlers/system/handleGetSqlQuery.js +176 -0
  210. package/dist/handlers/system/handleGetTransaction.d.ts +42 -0
  211. package/dist/handlers/system/handleGetTransaction.d.ts.map +1 -0
  212. package/dist/handlers/system/handleGetTransaction.js +91 -0
  213. package/dist/handlers/system/handleGetTypeInfo.d.ts +69 -0
  214. package/dist/handlers/system/handleGetTypeInfo.d.ts.map +1 -0
  215. package/dist/handlers/system/handleGetTypeInfo.js +169 -0
  216. package/dist/handlers/system/handleGetWhereUsed.d.ts +69 -0
  217. package/dist/handlers/system/handleGetWhereUsed.d.ts.map +1 -0
  218. package/dist/handlers/system/handleGetWhereUsed.js +405 -0
  219. package/dist/handlers/table/handleCheckTable.d.ts +55 -0
  220. package/dist/handlers/table/handleCheckTable.d.ts.map +1 -0
  221. package/dist/handlers/table/handleCheckTable.js +138 -0
  222. package/dist/handlers/table/handleCreateTable.d.ts +42 -0
  223. package/dist/handlers/table/handleCreateTable.d.ts.map +1 -0
  224. package/dist/handlers/table/handleCreateTable.js +118 -0
  225. package/dist/handlers/table/handleGetTable.d.ts +16 -0
  226. package/dist/handlers/table/handleGetTable.d.ts.map +1 -0
  227. package/dist/handlers/table/handleGetTable.js +140 -0
  228. package/dist/handlers/table/handleGetTableContents.d.ts +56 -0
  229. package/dist/handlers/table/handleGetTableContents.d.ts.map +1 -0
  230. package/dist/handlers/table/handleGetTableContents.js +387 -0
  231. package/dist/handlers/table/handleValidateTable.d.ts +53 -0
  232. package/dist/handlers/table/handleValidateTable.d.ts.map +1 -0
  233. package/dist/handlers/table/handleValidateTable.js +125 -0
  234. package/dist/handlers/table/readonly/handleGetTable.d.ts +20 -0
  235. package/dist/handlers/table/readonly/handleGetTable.d.ts.map +1 -0
  236. package/dist/handlers/table/readonly/handleGetTable.js +140 -0
  237. package/dist/handlers/transport/handleCreateTransport.d.ts +50 -0
  238. package/dist/handlers/transport/handleCreateTransport.d.ts.map +1 -0
  239. package/dist/handlers/transport/handleCreateTransport.js +151 -0
  240. package/dist/handlers/transport/handleGetTransport.d.ts +44 -0
  241. package/dist/handlers/transport/handleGetTransport.d.ts.map +1 -0
  242. package/dist/handlers/transport/handleGetTransport.js +183 -0
  243. package/dist/handlers/view/handleCreateView.d.ts +52 -0
  244. package/dist/handlers/view/handleCreateView.d.ts.map +1 -0
  245. package/dist/handlers/view/handleCreateView.js +139 -0
  246. package/dist/handlers/view/handleGetView.d.ts +26 -0
  247. package/dist/handlers/view/handleGetView.d.ts.map +1 -0
  248. package/dist/handlers/view/handleGetView.js +349 -0
  249. package/dist/handlers/view/handleUpdateViewSource.d.ts +44 -0
  250. package/dist/handlers/view/handleUpdateViewSource.d.ts.map +1 -0
  251. package/dist/handlers/view/handleUpdateViewSource.js +136 -0
  252. package/dist/handlers/view/readonly/handleGetView.d.ts +26 -0
  253. package/dist/handlers/view/readonly/handleGetView.d.ts.map +1 -0
  254. package/dist/handlers/view/readonly/handleGetView.js +349 -0
  255. package/dist/index.d.ts +94 -0
  256. package/dist/index.d.ts.map +1 -0
  257. package/dist/index.js +2453 -0
  258. package/dist/lib/activationUtils.d.ts +59 -0
  259. package/dist/lib/activationUtils.d.ts.map +1 -0
  260. package/dist/lib/activationUtils.js +168 -0
  261. package/dist/lib/config/ArgumentsParser.d.ts +2 -0
  262. package/dist/lib/config/ArgumentsParser.d.ts.map +1 -1
  263. package/dist/lib/config/ArgumentsParser.js +11 -1
  264. package/dist/lib/config/ArgumentsParser.js.map +1 -1
  265. package/dist/lib/config/IServerConfig.d.ts +2 -0
  266. package/dist/lib/config/IServerConfig.d.ts.map +1 -1
  267. package/dist/lib/config/ServerConfigManager.d.ts.map +1 -1
  268. package/dist/lib/config/ServerConfigManager.js +3 -0
  269. package/dist/lib/config/ServerConfigManager.js.map +1 -1
  270. package/dist/lib/getFullCodeCache.d.ts +3 -0
  271. package/dist/lib/getFullCodeCache.d.ts.map +1 -0
  272. package/dist/lib/getFullCodeCache.js +56 -0
  273. package/dist/lib/toolsRegistry.d.ts +13 -0
  274. package/dist/lib/toolsRegistry.d.ts.map +1 -0
  275. package/dist/lib/toolsRegistry.js +410 -0
  276. package/dist/server/AuthBrokerConfig.d.ts.map +1 -1
  277. package/dist/server/AuthBrokerConfig.js +14 -9
  278. package/dist/server/AuthBrokerConfig.js.map +1 -1
  279. package/dist/server/BaseMcpServer.d.ts.map +1 -1
  280. package/dist/server/BaseMcpServer.js +6 -0
  281. package/dist/server/BaseMcpServer.js.map +1 -1
  282. package/dist/server/launcher.js +4 -4
  283. package/dist/server/launcher.js.map +1 -1
  284. package/dist/utils/lockStateManager.d.ts +64 -0
  285. package/dist/utils/lockStateManager.d.ts.map +1 -0
  286. package/dist/utils/lockStateManager.js +173 -0
  287. package/dist/utils/lockStateManager.js.map +1 -0
  288. package/docs/user-guide/AUTHENTICATION.md +7 -0
  289. package/docs/user-guide/CLI_OPTIONS.md +14 -0
  290. package/package.json +2 -1
  291. package/dist/handlers/service_binding/high/handleListServiceBindings.d.ts +0 -44
  292. package/dist/handlers/service_binding/high/handleListServiceBindings.d.ts.map +0 -1
  293. package/dist/handlers/service_binding/high/handleListServiceBindings.js +0 -211
  294. package/dist/handlers/service_binding/high/handleListServiceBindings.js.map +0 -1
  295. package/dist/handlers/service_binding/high/serviceBindingXmlBuilder.d.ts +0 -11
  296. package/dist/handlers/service_binding/high/serviceBindingXmlBuilder.d.ts.map +0 -1
  297. package/dist/handlers/service_binding/high/serviceBindingXmlBuilder.js +0 -27
  298. package/dist/handlers/service_binding/high/serviceBindingXmlBuilder.js.map +0 -1
  299. package/dist/handlers/system/readonly/handleRuntimeGetDumpByUri.d.ts +0 -27
  300. package/dist/handlers/system/readonly/handleRuntimeGetDumpByUri.d.ts.map +0 -1
  301. package/dist/handlers/system/readonly/handleRuntimeGetDumpByUri.js +0 -47
  302. package/dist/handlers/system/readonly/handleRuntimeGetDumpByUri.js.map +0 -1
  303. package/dist/handlers/system/readonly/runtimeDumpReadCompat.d.ts +0 -8
  304. package/dist/handlers/system/readonly/runtimeDumpReadCompat.d.ts.map +0 -1
  305. package/dist/handlers/system/readonly/runtimeDumpReadCompat.js +0 -55
  306. package/dist/handlers/system/readonly/runtimeDumpReadCompat.js.map +0 -1
@@ -0,0 +1,131 @@
1
+ /**
2
+ * UpdateDataElement Handler - Update Existing ABAP Data Element
3
+ *
4
+ * Uses DataElementBuilder from @mcp-abap-adt/adt-clients for all operations.
5
+ * Session and lock management handled internally by builder.
6
+ *
7
+ * Workflow: lock -> update -> check -> unlock -> (activate)
8
+ */
9
+ export declare const TOOL_DEFINITION: {
10
+ readonly name: "UpdateDataElement";
11
+ readonly description: "Update an existing ABAP data element in SAP system.\n\nWorkflow:\n1. Gets domain info (if type_kind is 'domain') to extract dataType/length/decimals\n2. Acquires lock on the data element\n3. Updates data element with provided parameters (complete replacement)\n4. Unlocks data element\n5. Optionally activates data element (default: true)\n6. Returns updated data element details\n\nSupported type_kind values:\n- domain: Based on ABAP domain (requires type_name = domain name)\n- predefinedAbapType: Direct ABAP type (requires data_type, length, decimals)\n- refToPredefinedAbapType: Reference to ABAP type (requires data_type, length, decimals)\n- refToDictionaryType: Reference to another data element (requires type_name = data element name)\n- refToClifType: Reference to class (requires type_name = class name)\n\nNote: All provided parameters completely replace existing values. Field labels are truncated to max lengths (10/20/40/55).";
12
+ readonly inputSchema: {
13
+ readonly type: "object";
14
+ readonly properties: {
15
+ readonly data_element_name: {
16
+ readonly type: "string";
17
+ readonly description: "Data element name to update (e.g., ZZ_TEST_DTEL_01)";
18
+ };
19
+ readonly description: {
20
+ readonly type: "string";
21
+ readonly description: "New data element description";
22
+ };
23
+ readonly package_name: {
24
+ readonly type: "string";
25
+ readonly description: "Package name (e.g., ZOK_LOCAL, $TMP for local objects)";
26
+ };
27
+ readonly transport_request: {
28
+ readonly type: "string";
29
+ readonly description: "Transport request number (e.g., E19K905635). Required for transportable packages.";
30
+ };
31
+ readonly type_kind: {
32
+ readonly type: "string";
33
+ readonly description: "Type kind: domain, predefinedAbapType, refToPredefinedAbapType, refToDictionaryType, refToClifType";
34
+ readonly enum: readonly ["domain", "predefinedAbapType", "refToPredefinedAbapType", "refToDictionaryType", "refToClifType"];
35
+ readonly default: "domain";
36
+ };
37
+ readonly type_name: {
38
+ readonly type: "string";
39
+ readonly description: "Type name: domain name, data element name, or class name (depending on type_kind)";
40
+ };
41
+ readonly data_type: {
42
+ readonly type: "string";
43
+ readonly description: "Data type (CHAR, NUMC, etc.) - for predefinedAbapType or refToPredefinedAbapType";
44
+ };
45
+ readonly length: {
46
+ readonly type: "number";
47
+ readonly description: "Length - for predefinedAbapType or refToPredefinedAbapType";
48
+ };
49
+ readonly decimals: {
50
+ readonly type: "number";
51
+ readonly description: "Decimals - for predefinedAbapType or refToPredefinedAbapType";
52
+ };
53
+ readonly domain_name: {
54
+ readonly type: "string";
55
+ readonly description: "Domain name (deprecated - use type_name with type_kind=domain)";
56
+ };
57
+ readonly field_label_short: {
58
+ readonly type: "string";
59
+ readonly description: "Short field label (max 10 chars)";
60
+ };
61
+ readonly field_label_medium: {
62
+ readonly type: "string";
63
+ readonly description: "Medium field label (max 20 chars)";
64
+ };
65
+ readonly field_label_long: {
66
+ readonly type: "string";
67
+ readonly description: "Long field label (max 40 chars)";
68
+ };
69
+ readonly field_label_heading: {
70
+ readonly type: "string";
71
+ readonly description: "Heading field label (max 55 chars)";
72
+ };
73
+ readonly search_help: {
74
+ readonly type: "string";
75
+ readonly description: "Search help name";
76
+ };
77
+ readonly search_help_parameter: {
78
+ readonly type: "string";
79
+ readonly description: "Search help parameter";
80
+ };
81
+ readonly set_get_parameter: {
82
+ readonly type: "string";
83
+ readonly description: "Set/Get parameter ID";
84
+ };
85
+ readonly default_component_name: {
86
+ readonly type: "string";
87
+ readonly description: "Default component name";
88
+ };
89
+ readonly deactivate_input_history: {
90
+ readonly type: "boolean";
91
+ readonly description: "Deactivate input history";
92
+ readonly default: false;
93
+ };
94
+ readonly change_document: {
95
+ readonly type: "boolean";
96
+ readonly description: "Change document";
97
+ readonly default: false;
98
+ };
99
+ readonly left_to_right_direction: {
100
+ readonly type: "boolean";
101
+ readonly description: "Left to right direction";
102
+ readonly default: false;
103
+ };
104
+ readonly deactivate_bidi_filtering: {
105
+ readonly type: "boolean";
106
+ readonly description: "Deactivate BiDi filtering";
107
+ readonly default: false;
108
+ };
109
+ readonly activate: {
110
+ readonly type: "boolean";
111
+ readonly description: "Activate data element after update (default: true)";
112
+ readonly default: true;
113
+ };
114
+ };
115
+ readonly required: readonly ["data_element_name", "package_name"];
116
+ };
117
+ };
118
+ /**
119
+ * Main handler for UpdateDataElement tool
120
+ *
121
+ * Uses DataElementBuilder from @mcp-abap-adt/adt-clients for all operations
122
+ * Session and lock management handled internally by builder
123
+ */
124
+ export declare function handleUpdateDataElement(args: any): Promise<{
125
+ isError: boolean;
126
+ content: {
127
+ type: string;
128
+ text: any;
129
+ }[];
130
+ }>;
131
+ //# sourceMappingURL=handleUpdateDataElement.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handleUpdateDataElement.d.ts","sourceRoot":"","sources":["../../../src/handlers/data_element/handleUpdateDataElement.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAOH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6HlB,CAAC;AA4BX;;;;;GAKG;AACH,wBAAsB,uBAAuB,CAAC,IAAI,EAAE,GAAG;;;;;;GA2ItD"}
@@ -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"}