@structured-world/gitlab-mcp 5.8.0 → 6.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (380) hide show
  1. package/README.md +19 -4
  2. package/dist/generated/prisma/client.d.ts +13 -0
  3. package/dist/generated/prisma/client.js +46 -0
  4. package/dist/generated/prisma/client.js.map +1 -0
  5. package/dist/generated/prisma/commonInputTypes.d.ts +245 -0
  6. package/dist/generated/prisma/commonInputTypes.js +3 -0
  7. package/dist/generated/prisma/commonInputTypes.js.map +1 -0
  8. package/dist/generated/prisma/enums.d.ts +1 -0
  9. package/dist/generated/prisma/enums.js +3 -0
  10. package/dist/generated/prisma/enums.js.map +1 -0
  11. package/dist/generated/prisma/internal/class.d.ts +47 -0
  12. package/dist/generated/prisma/internal/class.js +66 -0
  13. package/dist/generated/prisma/internal/class.js.map +1 -0
  14. package/dist/generated/prisma/internal/prismaNamespace.d.ts +712 -0
  15. package/dist/generated/prisma/internal/prismaNamespace.js +139 -0
  16. package/dist/generated/prisma/internal/prismaNamespace.js.map +1 -0
  17. package/dist/generated/prisma/models/AuthCodeFlowState.d.ts +513 -0
  18. package/dist/generated/prisma/models/AuthCodeFlowState.js +3 -0
  19. package/dist/generated/prisma/models/AuthCodeFlowState.js.map +1 -0
  20. package/dist/generated/prisma/models/AuthorizationCode.d.ts +641 -0
  21. package/dist/generated/prisma/models/AuthorizationCode.js +3 -0
  22. package/dist/generated/prisma/models/AuthorizationCode.js.map +1 -0
  23. package/dist/generated/prisma/models/DeviceFlowState.d.ts +606 -0
  24. package/dist/generated/prisma/models/DeviceFlowState.js +3 -0
  25. package/dist/generated/prisma/models/DeviceFlowState.js.map +1 -0
  26. package/dist/generated/prisma/models/McpSessionMapping.d.ts +438 -0
  27. package/dist/generated/prisma/models/McpSessionMapping.js +3 -0
  28. package/dist/generated/prisma/models/McpSessionMapping.js.map +1 -0
  29. package/dist/generated/prisma/models/OAuthSession.d.ts +962 -0
  30. package/dist/generated/prisma/models/OAuthSession.js +3 -0
  31. package/dist/generated/prisma/models/OAuthSession.js.map +1 -0
  32. package/dist/generated/prisma/models.d.ts +6 -0
  33. package/dist/generated/prisma/models.js +3 -0
  34. package/dist/generated/prisma/models.js.map +1 -0
  35. package/dist/{config.d.ts → src/config.d.ts} +6 -0
  36. package/dist/{config.js → src/config.js} +7 -1
  37. package/dist/src/config.js.map +1 -0
  38. package/dist/src/entities/core/index.js.map +1 -0
  39. package/dist/src/entities/core/registry.js +745 -0
  40. package/dist/src/entities/core/registry.js.map +1 -0
  41. package/dist/{entities → src/entities}/core/schema-readonly.d.ts +156 -143
  42. package/dist/src/entities/core/schema-readonly.js +296 -0
  43. package/dist/src/entities/core/schema-readonly.js.map +1 -0
  44. package/dist/src/entities/core/schema.d.ts +71 -0
  45. package/dist/src/entities/core/schema.js +93 -0
  46. package/dist/src/entities/core/schema.js.map +1 -0
  47. package/dist/src/entities/files/index.js.map +1 -0
  48. package/dist/src/entities/files/registry.js +165 -0
  49. package/dist/src/entities/files/registry.js.map +1 -0
  50. package/dist/{entities → src/entities}/files/schema-readonly.d.ts +15 -0
  51. package/dist/{entities → src/entities}/files/schema-readonly.js +20 -1
  52. package/dist/src/entities/files/schema-readonly.js.map +1 -0
  53. package/dist/{entities → src/entities}/files/schema.d.ts +40 -0
  54. package/dist/src/entities/files/schema.js +79 -0
  55. package/dist/src/entities/files/schema.js.map +1 -0
  56. package/dist/src/entities/index.js.map +1 -0
  57. package/dist/src/entities/labels/index.js.map +1 -0
  58. package/dist/{entities → src/entities}/labels/registry.js +19 -89
  59. package/dist/src/entities/labels/registry.js.map +1 -0
  60. package/dist/src/entities/labels/schema-readonly.js.map +1 -0
  61. package/dist/src/entities/labels/schema.js.map +1 -0
  62. package/dist/src/entities/milestones/index.js.map +1 -0
  63. package/dist/src/entities/milestones/registry.js +197 -0
  64. package/dist/src/entities/milestones/registry.js.map +1 -0
  65. package/dist/src/entities/milestones/schema-readonly.js.map +1 -0
  66. package/dist/src/entities/milestones/schema.js.map +1 -0
  67. package/dist/src/entities/mrs/index.js.map +1 -0
  68. package/dist/{entities → src/entities}/mrs/registry.js +8 -58
  69. package/dist/src/entities/mrs/registry.js.map +1 -0
  70. package/dist/src/entities/mrs/schema-readonly.js.map +1 -0
  71. package/dist/src/entities/mrs/schema.js.map +1 -0
  72. package/dist/src/entities/pipelines/index.js.map +1 -0
  73. package/dist/{entities → src/entities}/pipelines/registry.js +26 -187
  74. package/dist/src/entities/pipelines/registry.js.map +1 -0
  75. package/dist/src/entities/pipelines/schema-readonly.js.map +1 -0
  76. package/dist/src/entities/pipelines/schema.js.map +1 -0
  77. package/dist/src/entities/shared.js.map +1 -0
  78. package/dist/src/entities/utils.js.map +1 -0
  79. package/dist/src/entities/variables/index.js.map +1 -0
  80. package/dist/src/entities/variables/registry.js +153 -0
  81. package/dist/src/entities/variables/registry.js.map +1 -0
  82. package/dist/src/entities/variables/schema-readonly.js.map +1 -0
  83. package/dist/src/entities/variables/schema.js.map +1 -0
  84. package/dist/src/entities/wiki/index.js.map +1 -0
  85. package/dist/{entities → src/entities}/wiki/registry.js +19 -89
  86. package/dist/src/entities/wiki/registry.js.map +1 -0
  87. package/dist/src/entities/wiki/schema-readonly.js.map +1 -0
  88. package/dist/src/entities/wiki/schema.js.map +1 -0
  89. package/dist/src/entities/workitems/index.js.map +1 -0
  90. package/dist/src/entities/workitems/registry.js.map +1 -0
  91. package/dist/src/entities/workitems/schema-readonly.js.map +1 -0
  92. package/dist/src/entities/workitems/schema.js.map +1 -0
  93. package/dist/src/graphql/DynamicWorkItemsQuery.js.map +1 -0
  94. package/dist/src/graphql/client.js.map +1 -0
  95. package/dist/src/graphql/index.js.map +1 -0
  96. package/dist/src/graphql/workItems.js.map +1 -0
  97. package/dist/{handlers.js → src/handlers.js} +15 -0
  98. package/dist/src/handlers.js.map +1 -0
  99. package/dist/{http-client.js → src/http-client.js} +0 -4
  100. package/dist/src/http-client.js.map +1 -0
  101. package/dist/src/logger.js.map +1 -0
  102. package/dist/src/main.js.map +1 -0
  103. package/dist/src/middleware/index.d.ts +2 -0
  104. package/dist/src/middleware/index.js +12 -0
  105. package/dist/src/middleware/index.js.map +1 -0
  106. package/dist/{middleware → src/middleware}/oauth-auth.js +24 -40
  107. package/dist/src/middleware/oauth-auth.js.map +1 -0
  108. package/dist/src/middleware/rate-limiter.d.ts +11 -0
  109. package/dist/src/middleware/rate-limiter.js +145 -0
  110. package/dist/src/middleware/rate-limiter.js.map +1 -0
  111. package/dist/src/oauth/config.js.map +1 -0
  112. package/dist/{oauth → src/oauth}/endpoints/authorize.js +45 -5
  113. package/dist/src/oauth/endpoints/authorize.js.map +1 -0
  114. package/dist/src/oauth/endpoints/callback.d.ts +2 -0
  115. package/dist/src/oauth/endpoints/callback.js +129 -0
  116. package/dist/src/oauth/endpoints/callback.js.map +1 -0
  117. package/dist/src/oauth/endpoints/index.d.ts +5 -0
  118. package/dist/src/oauth/endpoints/index.js +20 -0
  119. package/dist/src/oauth/endpoints/index.js.map +1 -0
  120. package/dist/{oauth → src/oauth}/endpoints/metadata.d.ts +1 -0
  121. package/dist/{oauth → src/oauth}/endpoints/metadata.js +12 -0
  122. package/dist/src/oauth/endpoints/metadata.js.map +1 -0
  123. package/dist/src/oauth/endpoints/register.d.ts +15 -0
  124. package/dist/src/oauth/endpoints/register.js +85 -0
  125. package/dist/src/oauth/endpoints/register.js.map +1 -0
  126. package/dist/src/oauth/endpoints/token.js.map +1 -0
  127. package/dist/{oauth → src/oauth}/gitlab-device-flow.d.ts +2 -0
  128. package/dist/{oauth → src/oauth}/gitlab-device-flow.js +44 -1
  129. package/dist/src/oauth/gitlab-device-flow.js.map +1 -0
  130. package/dist/src/oauth/index.d.ts +10 -0
  131. package/dist/{oauth → src/oauth}/index.js +18 -1
  132. package/dist/src/oauth/index.js.map +1 -0
  133. package/dist/{oauth → src/oauth}/session-store.d.ts +19 -2
  134. package/dist/{oauth → src/oauth}/session-store.js +125 -5
  135. package/dist/src/oauth/session-store.js.map +1 -0
  136. package/dist/src/oauth/storage/factory.d.ts +4 -0
  137. package/dist/src/oauth/storage/factory.js +75 -0
  138. package/dist/src/oauth/storage/factory.js.map +1 -0
  139. package/dist/src/oauth/storage/file.d.ts +50 -0
  140. package/dist/src/oauth/storage/file.js +287 -0
  141. package/dist/src/oauth/storage/file.js.map +1 -0
  142. package/dist/src/oauth/storage/index.d.ts +5 -0
  143. package/dist/src/oauth/storage/index.js +22 -0
  144. package/dist/src/oauth/storage/index.js.map +1 -0
  145. package/dist/src/oauth/storage/memory.d.ts +76 -0
  146. package/dist/src/oauth/storage/memory.js +277 -0
  147. package/dist/src/oauth/storage/memory.js.map +1 -0
  148. package/dist/src/oauth/storage/postgresql.d.ts +41 -0
  149. package/dist/src/oauth/storage/postgresql.js +435 -0
  150. package/dist/src/oauth/storage/postgresql.js.map +1 -0
  151. package/dist/src/oauth/storage/types.d.ts +67 -0
  152. package/dist/src/oauth/storage/types.js +5 -0
  153. package/dist/src/oauth/storage/types.js.map +1 -0
  154. package/dist/src/oauth/token-context.js.map +1 -0
  155. package/dist/src/oauth/token-utils.js.map +1 -0
  156. package/dist/{oauth → src/oauth}/types.d.ts +10 -0
  157. package/dist/{oauth → src/oauth}/types.js.map +1 -1
  158. package/dist/src/registry-manager.js.map +1 -0
  159. package/dist/{server.d.ts → src/server.d.ts} +11 -0
  160. package/dist/{server.js → src/server.js} +113 -9
  161. package/dist/src/server.js.map +1 -0
  162. package/dist/{services → src/services}/ConnectionManager.d.ts +2 -0
  163. package/dist/{services → src/services}/ConnectionManager.js +99 -7
  164. package/dist/src/services/ConnectionManager.js.map +1 -0
  165. package/dist/src/services/GitLabVersionDetector.js.map +1 -0
  166. package/dist/src/services/SchemaIntrospector.js.map +1 -0
  167. package/dist/{services → src/services}/ToolAvailability.js +3 -4
  168. package/dist/src/services/ToolAvailability.js.map +1 -0
  169. package/dist/src/services/WidgetAvailability.js.map +1 -0
  170. package/dist/src/types.js.map +1 -0
  171. package/dist/{utils → src/utils}/fetch.js +9 -0
  172. package/dist/src/utils/fetch.js.map +1 -0
  173. package/dist/src/utils/gitlab-api.d.ts +21 -0
  174. package/dist/src/utils/gitlab-api.js +132 -0
  175. package/dist/src/utils/gitlab-api.js.map +1 -0
  176. package/dist/src/utils/idConversion.js.map +1 -0
  177. package/dist/{utils → src/utils}/namespace.js +1 -5
  178. package/dist/src/utils/namespace.js.map +1 -0
  179. package/dist/src/utils/projectIdentifier.js.map +1 -0
  180. package/dist/{utils → src/utils}/smart-user-search.js +1 -5
  181. package/dist/src/utils/smart-user-search.js.map +1 -0
  182. package/dist/src/utils/workItemTypes.js.map +1 -0
  183. package/dist/structured-world-gitlab-mcp-6.0.0.tgz +0 -0
  184. package/dist/tsconfig.build.tsbuildinfo +1 -1
  185. package/package.json +25 -22
  186. package/dist/config.js.map +0 -1
  187. package/dist/entities/core/index.js.map +0 -1
  188. package/dist/entities/core/registry.js +0 -811
  189. package/dist/entities/core/registry.js.map +0 -1
  190. package/dist/entities/core/schema-readonly.js +0 -471
  191. package/dist/entities/core/schema-readonly.js.map +0 -1
  192. package/dist/entities/core/schema.d.ts +0 -102
  193. package/dist/entities/core/schema.js +0 -230
  194. package/dist/entities/core/schema.js.map +0 -1
  195. package/dist/entities/files/index.js.map +0 -1
  196. package/dist/entities/files/registry.js +0 -230
  197. package/dist/entities/files/registry.js.map +0 -1
  198. package/dist/entities/files/schema-readonly.js.map +0 -1
  199. package/dist/entities/files/schema.js +0 -38
  200. package/dist/entities/files/schema.js.map +0 -1
  201. package/dist/entities/index.js.map +0 -1
  202. package/dist/entities/labels/index.js.map +0 -1
  203. package/dist/entities/labels/registry.js.map +0 -1
  204. package/dist/entities/labels/schema-readonly.js.map +0 -1
  205. package/dist/entities/labels/schema.js.map +0 -1
  206. package/dist/entities/milestones/index.js.map +0 -1
  207. package/dist/entities/milestones/registry.js +0 -333
  208. package/dist/entities/milestones/registry.js.map +0 -1
  209. package/dist/entities/milestones/schema-readonly.js.map +0 -1
  210. package/dist/entities/milestones/schema.js.map +0 -1
  211. package/dist/entities/mrs/index.js.map +0 -1
  212. package/dist/entities/mrs/registry.js.map +0 -1
  213. package/dist/entities/mrs/schema-readonly.js.map +0 -1
  214. package/dist/entities/mrs/schema.js.map +0 -1
  215. package/dist/entities/pipelines/index.js.map +0 -1
  216. package/dist/entities/pipelines/registry.js.map +0 -1
  217. package/dist/entities/pipelines/schema-readonly.js.map +0 -1
  218. package/dist/entities/pipelines/schema.js.map +0 -1
  219. package/dist/entities/shared.js.map +0 -1
  220. package/dist/entities/utils.js.map +0 -1
  221. package/dist/entities/variables/index.js.map +0 -1
  222. package/dist/entities/variables/registry.js +0 -341
  223. package/dist/entities/variables/registry.js.map +0 -1
  224. package/dist/entities/variables/schema-readonly.js.map +0 -1
  225. package/dist/entities/variables/schema.js.map +0 -1
  226. package/dist/entities/wiki/index.js.map +0 -1
  227. package/dist/entities/wiki/registry.js.map +0 -1
  228. package/dist/entities/wiki/schema-readonly.js.map +0 -1
  229. package/dist/entities/wiki/schema.js.map +0 -1
  230. package/dist/entities/workitems/index.js.map +0 -1
  231. package/dist/entities/workitems/registry.js.map +0 -1
  232. package/dist/entities/workitems/schema-readonly.js.map +0 -1
  233. package/dist/entities/workitems/schema.js.map +0 -1
  234. package/dist/graphql/DynamicWorkItemsQuery.js.map +0 -1
  235. package/dist/graphql/client.js.map +0 -1
  236. package/dist/graphql/index.js.map +0 -1
  237. package/dist/graphql/workItems.js.map +0 -1
  238. package/dist/handlers.js.map +0 -1
  239. package/dist/http-client.js.map +0 -1
  240. package/dist/logger.js.map +0 -1
  241. package/dist/main.js.map +0 -1
  242. package/dist/middleware/index.d.ts +0 -1
  243. package/dist/middleware/index.js +0 -8
  244. package/dist/middleware/index.js.map +0 -1
  245. package/dist/middleware/oauth-auth.js.map +0 -1
  246. package/dist/oauth/config.js.map +0 -1
  247. package/dist/oauth/endpoints/authorize.js.map +0 -1
  248. package/dist/oauth/endpoints/index.d.ts +0 -3
  249. package/dist/oauth/endpoints/index.js +0 -13
  250. package/dist/oauth/endpoints/index.js.map +0 -1
  251. package/dist/oauth/endpoints/metadata.js.map +0 -1
  252. package/dist/oauth/endpoints/token.js.map +0 -1
  253. package/dist/oauth/gitlab-device-flow.js.map +0 -1
  254. package/dist/oauth/index.d.ts +0 -8
  255. package/dist/oauth/index.js.map +0 -1
  256. package/dist/oauth/session-store.js.map +0 -1
  257. package/dist/oauth/token-context.js.map +0 -1
  258. package/dist/oauth/token-utils.js.map +0 -1
  259. package/dist/registry-manager.js.map +0 -1
  260. package/dist/server.js.map +0 -1
  261. package/dist/services/ConnectionManager.js.map +0 -1
  262. package/dist/services/GitLabVersionDetector.js.map +0 -1
  263. package/dist/services/SchemaIntrospector.js.map +0 -1
  264. package/dist/services/ToolAvailability.js.map +0 -1
  265. package/dist/services/WidgetAvailability.js.map +0 -1
  266. package/dist/structured-world-gitlab-mcp-5.8.0.tgz +0 -0
  267. package/dist/types.js.map +0 -1
  268. package/dist/utils/fetch.js.map +0 -1
  269. package/dist/utils/idConversion.js.map +0 -1
  270. package/dist/utils/namespace.js.map +0 -1
  271. package/dist/utils/projectIdentifier.js.map +0 -1
  272. package/dist/utils/smart-user-search.js.map +0 -1
  273. package/dist/utils/workItemTypes.js.map +0 -1
  274. package/dist/{entities → src/entities}/core/index.d.ts +0 -0
  275. package/dist/{entities → src/entities}/core/index.js +0 -0
  276. package/dist/{entities → src/entities}/core/registry.d.ts +0 -0
  277. package/dist/{entities → src/entities}/files/index.d.ts +0 -0
  278. package/dist/{entities → src/entities}/files/index.js +0 -0
  279. package/dist/{entities → src/entities}/files/registry.d.ts +0 -0
  280. package/dist/{entities → src/entities}/index.d.ts +0 -0
  281. package/dist/{entities → src/entities}/index.js +0 -0
  282. package/dist/{entities → src/entities}/labels/index.d.ts +0 -0
  283. package/dist/{entities → src/entities}/labels/index.js +0 -0
  284. package/dist/{entities → src/entities}/labels/registry.d.ts +0 -0
  285. package/dist/{entities → src/entities}/labels/schema-readonly.d.ts +0 -0
  286. package/dist/{entities → src/entities}/labels/schema-readonly.js +0 -0
  287. package/dist/{entities → src/entities}/labels/schema.d.ts +0 -0
  288. package/dist/{entities → src/entities}/labels/schema.js +0 -0
  289. package/dist/{entities → src/entities}/milestones/index.d.ts +0 -0
  290. package/dist/{entities → src/entities}/milestones/index.js +0 -0
  291. package/dist/{entities → src/entities}/milestones/registry.d.ts +0 -0
  292. package/dist/{entities → src/entities}/milestones/schema-readonly.d.ts +1 -1
  293. package/dist/{entities → src/entities}/milestones/schema-readonly.js +0 -0
  294. package/dist/{entities → src/entities}/milestones/schema.d.ts +0 -0
  295. package/dist/{entities → src/entities}/milestones/schema.js +0 -0
  296. package/dist/{entities → src/entities}/mrs/index.d.ts +0 -0
  297. package/dist/{entities → src/entities}/mrs/index.js +0 -0
  298. package/dist/{entities → src/entities}/mrs/registry.d.ts +0 -0
  299. package/dist/{entities → src/entities}/mrs/schema-readonly.d.ts +1 -1
  300. /package/dist/{entities → src/entities}/mrs/schema-readonly.js +0 -0
  301. /package/dist/{entities → src/entities}/mrs/schema.d.ts +0 -0
  302. /package/dist/{entities → src/entities}/mrs/schema.js +0 -0
  303. /package/dist/{entities → src/entities}/pipelines/index.d.ts +0 -0
  304. /package/dist/{entities → src/entities}/pipelines/index.js +0 -0
  305. /package/dist/{entities → src/entities}/pipelines/registry.d.ts +0 -0
  306. /package/dist/{entities → src/entities}/pipelines/schema-readonly.d.ts +0 -0
  307. /package/dist/{entities → src/entities}/pipelines/schema-readonly.js +0 -0
  308. /package/dist/{entities → src/entities}/pipelines/schema.d.ts +0 -0
  309. /package/dist/{entities → src/entities}/pipelines/schema.js +0 -0
  310. /package/dist/{entities → src/entities}/shared.d.ts +0 -0
  311. /package/dist/{entities → src/entities}/shared.js +0 -0
  312. /package/dist/{entities → src/entities}/utils.d.ts +0 -0
  313. /package/dist/{entities → src/entities}/utils.js +0 -0
  314. /package/dist/{entities → src/entities}/variables/index.d.ts +0 -0
  315. /package/dist/{entities → src/entities}/variables/index.js +0 -0
  316. /package/dist/{entities → src/entities}/variables/registry.d.ts +0 -0
  317. /package/dist/{entities → src/entities}/variables/schema-readonly.d.ts +0 -0
  318. /package/dist/{entities → src/entities}/variables/schema-readonly.js +0 -0
  319. /package/dist/{entities → src/entities}/variables/schema.d.ts +0 -0
  320. /package/dist/{entities → src/entities}/variables/schema.js +0 -0
  321. /package/dist/{entities → src/entities}/wiki/index.d.ts +0 -0
  322. /package/dist/{entities → src/entities}/wiki/index.js +0 -0
  323. /package/dist/{entities → src/entities}/wiki/registry.d.ts +0 -0
  324. /package/dist/{entities → src/entities}/wiki/schema-readonly.d.ts +0 -0
  325. /package/dist/{entities → src/entities}/wiki/schema-readonly.js +0 -0
  326. /package/dist/{entities → src/entities}/wiki/schema.d.ts +0 -0
  327. /package/dist/{entities → src/entities}/wiki/schema.js +0 -0
  328. /package/dist/{entities → src/entities}/workitems/index.d.ts +0 -0
  329. /package/dist/{entities → src/entities}/workitems/index.js +0 -0
  330. /package/dist/{entities → src/entities}/workitems/registry.d.ts +0 -0
  331. /package/dist/{entities → src/entities}/workitems/registry.js +0 -0
  332. /package/dist/{entities → src/entities}/workitems/schema-readonly.d.ts +0 -0
  333. /package/dist/{entities → src/entities}/workitems/schema-readonly.js +0 -0
  334. /package/dist/{entities → src/entities}/workitems/schema.d.ts +0 -0
  335. /package/dist/{entities → src/entities}/workitems/schema.js +0 -0
  336. /package/dist/{graphql → src/graphql}/DynamicWorkItemsQuery.d.ts +0 -0
  337. /package/dist/{graphql → src/graphql}/DynamicWorkItemsQuery.js +0 -0
  338. /package/dist/{graphql → src/graphql}/client.d.ts +0 -0
  339. /package/dist/{graphql → src/graphql}/client.js +0 -0
  340. /package/dist/{graphql → src/graphql}/index.d.ts +0 -0
  341. /package/dist/{graphql → src/graphql}/index.js +0 -0
  342. /package/dist/{graphql → src/graphql}/workItems.d.ts +0 -0
  343. /package/dist/{graphql → src/graphql}/workItems.js +0 -0
  344. /package/dist/{handlers.d.ts → src/handlers.d.ts} +0 -0
  345. /package/dist/{http-client.d.ts → src/http-client.d.ts} +0 -0
  346. /package/dist/{logger.d.ts → src/logger.d.ts} +0 -0
  347. /package/dist/{logger.js → src/logger.js} +0 -0
  348. /package/dist/{main.d.ts → src/main.d.ts} +0 -0
  349. /package/dist/{main.js → src/main.js} +0 -0
  350. /package/dist/{middleware → src/middleware}/oauth-auth.d.ts +0 -0
  351. /package/dist/{oauth → src/oauth}/config.d.ts +0 -0
  352. /package/dist/{oauth → src/oauth}/config.js +0 -0
  353. /package/dist/{oauth → src/oauth}/endpoints/authorize.d.ts +0 -0
  354. /package/dist/{oauth → src/oauth}/endpoints/token.d.ts +0 -0
  355. /package/dist/{oauth → src/oauth}/endpoints/token.js +0 -0
  356. /package/dist/{oauth → src/oauth}/token-context.d.ts +0 -0
  357. /package/dist/{oauth → src/oauth}/token-context.js +0 -0
  358. /package/dist/{oauth → src/oauth}/token-utils.d.ts +0 -0
  359. /package/dist/{oauth → src/oauth}/token-utils.js +0 -0
  360. /package/dist/{oauth → src/oauth}/types.js +0 -0
  361. /package/dist/{registry-manager.d.ts → src/registry-manager.d.ts} +0 -0
  362. /package/dist/{registry-manager.js → src/registry-manager.js} +0 -0
  363. /package/dist/{services → src/services}/GitLabVersionDetector.d.ts +0 -0
  364. /package/dist/{services → src/services}/GitLabVersionDetector.js +0 -0
  365. /package/dist/{services → src/services}/SchemaIntrospector.d.ts +0 -0
  366. /package/dist/{services → src/services}/SchemaIntrospector.js +0 -0
  367. /package/dist/{services → src/services}/ToolAvailability.d.ts +0 -0
  368. /package/dist/{services → src/services}/WidgetAvailability.d.ts +0 -0
  369. /package/dist/{services → src/services}/WidgetAvailability.js +0 -0
  370. /package/dist/{types.d.ts → src/types.d.ts} +0 -0
  371. /package/dist/{types.js → src/types.js} +0 -0
  372. /package/dist/{utils → src/utils}/fetch.d.ts +0 -0
  373. /package/dist/{utils → src/utils}/idConversion.d.ts +0 -0
  374. /package/dist/{utils → src/utils}/idConversion.js +0 -0
  375. /package/dist/{utils → src/utils}/namespace.d.ts +0 -0
  376. /package/dist/{utils → src/utils}/projectIdentifier.d.ts +0 -0
  377. /package/dist/{utils → src/utils}/projectIdentifier.js +0 -0
  378. /package/dist/{utils → src/utils}/smart-user-search.d.ts +0 -0
  379. /package/dist/{utils → src/utils}/workItemTypes.d.ts +0 -0
  380. /package/dist/{utils → src/utils}/workItemTypes.js +0 -0
@@ -0,0 +1,165 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.filesToolRegistry = void 0;
37
+ exports.getFilesReadOnlyToolNames = getFilesReadOnlyToolNames;
38
+ exports.getFilesToolDefinitions = getFilesToolDefinitions;
39
+ exports.getFilteredFilesTools = getFilteredFilesTools;
40
+ const z = __importStar(require("zod"));
41
+ const schema_readonly_1 = require("./schema-readonly");
42
+ const schema_1 = require("./schema");
43
+ const gitlab_api_1 = require("../../utils/gitlab-api");
44
+ const projectIdentifier_1 = require("../../utils/projectIdentifier");
45
+ const fetch_1 = require("../../utils/fetch");
46
+ exports.filesToolRegistry = new Map([
47
+ [
48
+ "browse_files",
49
+ {
50
+ name: "browse_files",
51
+ description: 'BROWSE repository files. Actions: "tree" lists files/folders with pagination, "content" reads file contents. Use for exploring project structure or reading source code.',
52
+ inputSchema: z.toJSONSchema(schema_readonly_1.BrowseFilesSchema),
53
+ handler: async (args) => {
54
+ const input = schema_readonly_1.BrowseFilesSchema.parse(args);
55
+ switch (input.action) {
56
+ case "tree": {
57
+ const query = {};
58
+ if (input.path)
59
+ query.path = input.path;
60
+ if (input.ref)
61
+ query.ref = input.ref;
62
+ if (input.recursive !== undefined)
63
+ query.recursive = input.recursive;
64
+ if (input.per_page !== undefined)
65
+ query.per_page = input.per_page;
66
+ if (input.page !== undefined)
67
+ query.page = input.page;
68
+ return gitlab_api_1.gitlab.get(`projects/${(0, projectIdentifier_1.normalizeProjectId)(input.project_id)}/repository/tree`, {
69
+ query: (0, gitlab_api_1.toQuery)(query, []),
70
+ });
71
+ }
72
+ case "content": {
73
+ const queryParams = new URLSearchParams();
74
+ if (input.ref)
75
+ queryParams.set("ref", input.ref);
76
+ const apiUrl = `${process.env.GITLAB_API_URL}/api/v4/projects/${(0, projectIdentifier_1.normalizeProjectId)(input.project_id)}/repository/files/${encodeURIComponent(input.file_path)}/raw?${queryParams}`;
77
+ const response = await (0, fetch_1.enhancedFetch)(apiUrl);
78
+ if (!response.ok) {
79
+ throw new Error(`GitLab API error: ${response.status} ${response.statusText}`);
80
+ }
81
+ const content = await response.text();
82
+ return {
83
+ file_path: input.file_path,
84
+ ref: input.ref ?? "HEAD",
85
+ size: content.length,
86
+ content: content,
87
+ content_type: response.headers.get("content-type") ?? "text/plain",
88
+ };
89
+ }
90
+ default: {
91
+ const _exhaustive = input;
92
+ throw new Error(`Unknown action: ${_exhaustive.action}`);
93
+ }
94
+ }
95
+ },
96
+ },
97
+ ],
98
+ [
99
+ "manage_files",
100
+ {
101
+ name: "manage_files",
102
+ description: 'MANAGE repository files. Actions: "single" creates/updates one file, "batch" commits multiple files atomically, "upload" adds markdown attachments.',
103
+ inputSchema: z.toJSONSchema(schema_1.ManageFilesSchema),
104
+ handler: async (args) => {
105
+ const input = schema_1.ManageFilesSchema.parse(args);
106
+ switch (input.action) {
107
+ case "single": {
108
+ const { project_id, file_path, action: _action, ...body } = input;
109
+ return gitlab_api_1.gitlab.post(`projects/${(0, projectIdentifier_1.normalizeProjectId)(project_id)}/repository/files/${encodeURIComponent(file_path)}`, { body, contentType: "form" });
110
+ }
111
+ case "batch": {
112
+ const actions = input.files.map(file => ({
113
+ action: "create",
114
+ file_path: file.file_path,
115
+ content: file.content,
116
+ encoding: file.encoding ?? "text",
117
+ execute_filemode: file.execute_filemode ?? false,
118
+ }));
119
+ const body = {
120
+ branch: input.branch,
121
+ commit_message: input.commit_message,
122
+ actions,
123
+ };
124
+ if (input.start_branch)
125
+ body.start_branch = input.start_branch;
126
+ if (input.author_email)
127
+ body.author_email = input.author_email;
128
+ if (input.author_name)
129
+ body.author_name = input.author_name;
130
+ return gitlab_api_1.gitlab.post(`projects/${(0, projectIdentifier_1.normalizeProjectId)(input.project_id)}/repository/commits`, { body, contentType: "json" });
131
+ }
132
+ case "upload": {
133
+ const formData = new FormData();
134
+ const buffer = Buffer.from(input.file, "base64");
135
+ const fileObj = new File([buffer], input.filename, {
136
+ type: "application/octet-stream",
137
+ });
138
+ formData.append("file", fileObj);
139
+ return gitlab_api_1.gitlab.post(`projects/${(0, projectIdentifier_1.normalizeProjectId)(input.project_id)}/uploads`, {
140
+ body: formData,
141
+ });
142
+ }
143
+ default: {
144
+ const _exhaustive = input;
145
+ throw new Error(`Unknown action: ${_exhaustive.action}`);
146
+ }
147
+ }
148
+ },
149
+ },
150
+ ],
151
+ ]);
152
+ function getFilesReadOnlyToolNames() {
153
+ return ["browse_files"];
154
+ }
155
+ function getFilesToolDefinitions() {
156
+ return Array.from(exports.filesToolRegistry.values());
157
+ }
158
+ function getFilteredFilesTools(readOnlyMode = false) {
159
+ if (readOnlyMode) {
160
+ const readOnlyNames = getFilesReadOnlyToolNames();
161
+ return Array.from(exports.filesToolRegistry.values()).filter(tool => readOnlyNames.includes(tool.name));
162
+ }
163
+ return getFilesToolDefinitions();
164
+ }
165
+ //# sourceMappingURL=registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../../src/entities/files/registry.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoIA,8DAEC;AAED,0DAEC;AAED,sDAMC;AAlJD,uCAAyB;AACzB,uDAAwE;AACxE,qCAA+D;AAC/D,uDAAyD;AACzD,qEAAmE;AACnE,6CAAkD;AASrC,QAAA,iBAAiB,GAAiB,IAAI,GAAG,CAAiC;IACrF;QACE,cAAc;QACd;YACE,IAAI,EAAE,cAAc;YACpB,WAAW,EACT,0KAA0K;YAC5K,WAAW,EAAE,CAAC,CAAC,YAAY,CAAC,mCAAiB,CAAC;YAC9C,OAAO,EAAE,KAAK,EAAE,IAAa,EAAE,EAAE;gBAC/B,MAAM,KAAK,GAAG,mCAAiB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAE5C,QAAQ,KAAK,CAAC,MAAM,EAAE,CAAC;oBACrB,KAAK,MAAM,CAAC,CAAC,CAAC;wBACZ,MAAM,KAAK,GAA0D,EAAE,CAAC;wBACxE,IAAI,KAAK,CAAC,IAAI;4BAAE,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;wBACxC,IAAI,KAAK,CAAC,GAAG;4BAAE,KAAK,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;wBACrC,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS;4BAAE,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;wBACrE,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS;4BAAE,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;wBAClE,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS;4BAAE,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;wBAEtD,OAAO,mBAAM,CAAC,GAAG,CAAC,YAAY,IAAA,sCAAkB,EAAC,KAAK,CAAC,UAAU,CAAC,kBAAkB,EAAE;4BACpF,KAAK,EAAE,IAAA,oBAAO,EAAC,KAAK,EAAE,EAAE,CAAC;yBAC1B,CAAC,CAAC;oBACL,CAAC;oBACD,KAAK,SAAS,CAAC,CAAC,CAAC;wBACf,MAAM,WAAW,GAAG,IAAI,eAAe,EAAE,CAAC;wBAC1C,IAAI,KAAK,CAAC,GAAG;4BAAE,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;wBAEjD,MAAM,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,oBAAoB,IAAA,sCAAkB,EAAC,KAAK,CAAC,UAAU,CAAC,qBAAqB,kBAAkB,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,WAAW,EAAE,CAAC;wBAClL,MAAM,QAAQ,GAAG,MAAM,IAAA,qBAAa,EAAC,MAAM,CAAC,CAAC;wBAE7C,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;4BACjB,MAAM,IAAI,KAAK,CAAC,qBAAqB,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;wBACjF,CAAC;wBAED,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;wBACtC,OAAO;4BACL,SAAS,EAAE,KAAK,CAAC,SAAS;4BAC1B,GAAG,EAAE,KAAK,CAAC,GAAG,IAAI,MAAM;4BACxB,IAAI,EAAE,OAAO,CAAC,MAAM;4BACpB,OAAO,EAAE,OAAO;4BAChB,YAAY,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,YAAY;yBACnE,CAAC;oBACJ,CAAC;oBAED,OAAO,CAAC,CAAC,CAAC;wBACR,MAAM,WAAW,GAAU,KAAK,CAAC;wBACjC,MAAM,IAAI,KAAK,CAAC,mBAAoB,WAAgC,CAAC,MAAM,EAAE,CAAC,CAAC;oBACjF,CAAC;gBACH,CAAC;YACH,CAAC;SACF;KACF;IACD;QACE,cAAc;QACd;YACE,IAAI,EAAE,cAAc;YACpB,WAAW,EACT,qJAAqJ;YACvJ,WAAW,EAAE,CAAC,CAAC,YAAY,CAAC,0BAAiB,CAAC;YAC9C,OAAO,EAAE,KAAK,EAAE,IAAa,EAAE,EAAE;gBAC/B,MAAM,KAAK,GAAG,0BAAiB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAE5C,QAAQ,KAAK,CAAC,MAAM,EAAE,CAAC;oBACrB,KAAK,QAAQ,CAAC,CAAC,CAAC;wBACd,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;wBAClE,OAAO,mBAAM,CAAC,IAAI,CAChB,YAAY,IAAA,sCAAkB,EAAC,UAAU,CAAC,qBAAqB,kBAAkB,CAAC,SAAS,CAAC,EAAE,EAC9F,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,CAC9B,CAAC;oBACJ,CAAC;oBACD,KAAK,OAAO,CAAC,CAAC,CAAC;wBACb,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;4BACvC,MAAM,EAAE,QAAQ;4BAChB,SAAS,EAAE,IAAI,CAAC,SAAS;4BACzB,OAAO,EAAE,IAAI,CAAC,OAAO;4BACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,MAAM;4BACjC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,IAAI,KAAK;yBACjD,CAAC,CAAC,CAAC;wBAEJ,MAAM,IAAI,GAA4B;4BACpC,MAAM,EAAE,KAAK,CAAC,MAAM;4BACpB,cAAc,EAAE,KAAK,CAAC,cAAc;4BACpC,OAAO;yBACR,CAAC;wBAEF,IAAI,KAAK,CAAC,YAAY;4BAAE,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC;wBAC/D,IAAI,KAAK,CAAC,YAAY;4BAAE,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC;wBAC/D,IAAI,KAAK,CAAC,WAAW;4BAAE,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;wBAE5D,OAAO,mBAAM,CAAC,IAAI,CAChB,YAAY,IAAA,sCAAkB,EAAC,KAAK,CAAC,UAAU,CAAC,qBAAqB,EACrE,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,CAC9B,CAAC;oBACJ,CAAC;oBACD,KAAK,QAAQ,CAAC,CAAC,CAAC;wBACd,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;wBAChC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;wBACjD,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,QAAQ,EAAE;4BACjD,IAAI,EAAE,0BAA0B;yBACjC,CAAC,CAAC;wBACH,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;wBAEjC,OAAO,mBAAM,CAAC,IAAI,CAAC,YAAY,IAAA,sCAAkB,EAAC,KAAK,CAAC,UAAU,CAAC,UAAU,EAAE;4BAC7E,IAAI,EAAE,QAAQ;yBACf,CAAC,CAAC;oBACL,CAAC;oBAED,OAAO,CAAC,CAAC,CAAC;wBACR,MAAM,WAAW,GAAU,KAAK,CAAC;wBACjC,MAAM,IAAI,KAAK,CAAC,mBAAoB,WAAgC,CAAC,MAAM,EAAE,CAAC,CAAC;oBACjF,CAAC;gBACH,CAAC;YACH,CAAC;SACF;KACF;CACF,CAAC,CAAC;AAEH,SAAgB,yBAAyB;IACvC,OAAO,CAAC,cAAc,CAAC,CAAC;AAC1B,CAAC;AAED,SAAgB,uBAAuB;IACrC,OAAO,KAAK,CAAC,IAAI,CAAC,yBAAiB,CAAC,MAAM,EAAE,CAAC,CAAC;AAChD,CAAC;AAED,SAAgB,qBAAqB,CAAC,eAAwB,KAAK;IACjE,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,aAAa,GAAG,yBAAyB,EAAE,CAAC;QAClD,OAAO,KAAK,CAAC,IAAI,CAAC,yBAAiB,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAClG,CAAC;IACD,OAAO,uBAAuB,EAAE,CAAC;AACnC,CAAC"}
@@ -69,6 +69,20 @@ export declare const GetFileContentsSchema: z.ZodObject<{
69
69
  file_path: z.ZodString;
70
70
  ref: z.ZodOptional<z.ZodString>;
71
71
  }, z.core.$strip>;
72
+ export declare const BrowseFilesSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
73
+ project_id: z.ZodCoercedString<unknown>;
74
+ ref: z.ZodOptional<z.ZodString>;
75
+ action: z.ZodLiteral<"tree">;
76
+ path: z.ZodOptional<z.ZodString>;
77
+ recursive: z.ZodOptional<z.ZodPipe<z.ZodTransform<boolean, unknown>, z.ZodBoolean>>;
78
+ per_page: z.ZodOptional<z.ZodNumber>;
79
+ page: z.ZodOptional<z.ZodNumber>;
80
+ }, z.core.$strip>, z.ZodObject<{
81
+ project_id: z.ZodCoercedString<unknown>;
82
+ ref: z.ZodOptional<z.ZodString>;
83
+ action: z.ZodLiteral<"content">;
84
+ file_path: z.ZodString;
85
+ }, z.core.$strip>], "action">;
72
86
  export type GitLabFileContent = z.infer<typeof GitLabFileContentSchema>;
73
87
  export type GitLabDirectoryContent = z.infer<typeof GitLabDirectoryContentSchema>;
74
88
  export type GitLabContent = z.infer<typeof GitLabContentSchema>;
@@ -76,3 +90,4 @@ export type GitLabCreateUpdateFileResponse = z.infer<typeof GitLabCreateUpdateFi
76
90
  export type GitLabTree = z.infer<typeof GitLabTreeSchema>;
77
91
  export type GetRepositoryTreeOptions = z.infer<typeof GetRepositoryTreeSchema>;
78
92
  export type GetFileContentsOptions = z.infer<typeof GetFileContentsSchema>;
93
+ export type BrowseFilesInput = z.infer<typeof BrowseFilesSchema>;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.GetFileContentsSchema = exports.GetRepositoryTreeSchema = exports.GitLabTreeSchema = exports.GitLabCreateUpdateFileResponseSchema = exports.GitLabContentSchema = exports.GitLabDirectoryContentSchema = exports.GitLabFileContentSchema = void 0;
3
+ exports.BrowseFilesSchema = exports.GetFileContentsSchema = exports.GetRepositoryTreeSchema = exports.GitLabTreeSchema = exports.GitLabCreateUpdateFileResponseSchema = exports.GitLabContentSchema = exports.GitLabDirectoryContentSchema = exports.GitLabFileContentSchema = void 0;
4
4
  const zod_1 = require("zod");
5
5
  const utils_1 = require("../utils");
6
6
  const shared_1 = require("../shared");
@@ -47,4 +47,23 @@ exports.GetFileContentsSchema = shared_1.ProjectParamsSchema.extend({
47
47
  file_path: zod_1.z.string().describe("URL-encoded full path to the file"),
48
48
  ref: zod_1.z.string().optional().describe("The name of branch, tag or commit"),
49
49
  });
50
+ const BrowseFilesBaseSchema = zod_1.z.object({
51
+ project_id: zod_1.z.coerce.string().describe("Project ID or URL-encoded path"),
52
+ ref: zod_1.z.string().optional().describe("Branch, tag, or commit SHA"),
53
+ });
54
+ const BrowseFilesTreeSchema = BrowseFilesBaseSchema.extend({
55
+ action: zod_1.z.literal("tree"),
56
+ path: zod_1.z.string().optional().describe("Directory path to list"),
57
+ recursive: utils_1.flexibleBoolean.optional().describe("Include nested directories"),
58
+ per_page: zod_1.z.number().int().min(1).max(100).optional().describe("Results per page (max 100)"),
59
+ page: zod_1.z.number().int().min(1).optional().describe("Page number"),
60
+ });
61
+ const BrowseFilesContentSchema = BrowseFilesBaseSchema.extend({
62
+ action: zod_1.z.literal("content"),
63
+ file_path: zod_1.z.string().describe("Path to the file to read"),
64
+ });
65
+ exports.BrowseFilesSchema = zod_1.z.discriminatedUnion("action", [
66
+ BrowseFilesTreeSchema,
67
+ BrowseFilesContentSchema,
68
+ ]);
50
69
  //# sourceMappingURL=schema-readonly.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema-readonly.js","sourceRoot":"","sources":["../../../../src/entities/files/schema-readonly.ts"],"names":[],"mappings":"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"}
@@ -37,6 +37,46 @@ export declare const MarkdownUploadSchema: z.ZodObject<{
37
37
  file: z.ZodString;
38
38
  filename: z.ZodString;
39
39
  }, z.core.$strip>;
40
+ export declare const ManageFilesSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
41
+ project_id: z.ZodCoercedString<unknown>;
42
+ action: z.ZodLiteral<"single">;
43
+ file_path: z.ZodString;
44
+ content: z.ZodString;
45
+ commit_message: z.ZodString;
46
+ branch: z.ZodString;
47
+ start_branch: z.ZodOptional<z.ZodString>;
48
+ encoding: z.ZodOptional<z.ZodEnum<{
49
+ base64: "base64";
50
+ text: "text";
51
+ }>>;
52
+ author_email: z.ZodOptional<z.ZodString>;
53
+ author_name: z.ZodOptional<z.ZodString>;
54
+ last_commit_id: z.ZodOptional<z.ZodString>;
55
+ execute_filemode: z.ZodOptional<z.ZodPipe<z.ZodTransform<boolean, unknown>, z.ZodBoolean>>;
56
+ }, z.core.$strip>, z.ZodObject<{
57
+ project_id: z.ZodCoercedString<unknown>;
58
+ action: z.ZodLiteral<"batch">;
59
+ branch: z.ZodString;
60
+ commit_message: z.ZodString;
61
+ files: z.ZodArray<z.ZodObject<{
62
+ file_path: z.ZodString;
63
+ content: z.ZodString;
64
+ encoding: z.ZodOptional<z.ZodEnum<{
65
+ base64: "base64";
66
+ text: "text";
67
+ }>>;
68
+ execute_filemode: z.ZodOptional<z.ZodPipe<z.ZodTransform<boolean, unknown>, z.ZodBoolean>>;
69
+ }, z.core.$strip>>;
70
+ start_branch: z.ZodOptional<z.ZodString>;
71
+ author_email: z.ZodOptional<z.ZodString>;
72
+ author_name: z.ZodOptional<z.ZodString>;
73
+ }, z.core.$strip>, z.ZodObject<{
74
+ project_id: z.ZodCoercedString<unknown>;
75
+ action: z.ZodLiteral<"upload">;
76
+ file: z.ZodString;
77
+ filename: z.ZodString;
78
+ }, z.core.$strip>], "action">;
40
79
  export type CreateOrUpdateFileOptions = z.infer<typeof CreateOrUpdateFileSchema>;
41
80
  export type PushFilesOptions = z.infer<typeof PushFilesSchema>;
42
81
  export type MarkdownUploadOptions = z.infer<typeof MarkdownUploadSchema>;
82
+ export type ManageFilesInput = z.infer<typeof ManageFilesSchema>;
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ManageFilesSchema = exports.MarkdownUploadSchema = exports.PushFilesSchema = exports.CreateOrUpdateFileSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ const utils_1 = require("../utils");
6
+ const shared_1 = require("../shared");
7
+ exports.CreateOrUpdateFileSchema = shared_1.ProjectParamsSchema.extend({
8
+ file_path: zod_1.z.string().describe("URL-encoded full path to the file"),
9
+ branch: zod_1.z.string().describe("Name of the new branch to create"),
10
+ start_branch: zod_1.z.string().optional().describe("Name of the base branch to start from"),
11
+ encoding: zod_1.z.enum(["text", "base64"]).optional().describe("Change encoding"),
12
+ author_email: zod_1.z.string().optional().describe("Author email for the commit"),
13
+ author_name: zod_1.z.string().optional().describe("Author name for the commit"),
14
+ content: zod_1.z.string().describe("File content"),
15
+ commit_message: zod_1.z.string().describe("Commit message"),
16
+ last_commit_id: zod_1.z.string().optional().describe("Last known file commit id"),
17
+ execute_filemode: utils_1.flexibleBoolean.optional().describe("Execute file mode"),
18
+ });
19
+ exports.PushFilesSchema = shared_1.ProjectParamsSchema.extend({
20
+ branch: zod_1.z.string().describe("Target branch name"),
21
+ commit_message: zod_1.z.string().describe("Commit message"),
22
+ files: zod_1.z
23
+ .array(zod_1.z.object({
24
+ file_path: zod_1.z.string(),
25
+ content: zod_1.z.string(),
26
+ encoding: zod_1.z.enum(["text", "base64"]).optional(),
27
+ execute_filemode: utils_1.flexibleBoolean.optional(),
28
+ }))
29
+ .describe("Array of files to push"),
30
+ start_branch: zod_1.z.string().optional().describe("Start branch name"),
31
+ author_email: zod_1.z.string().optional().describe("Author email"),
32
+ author_name: zod_1.z.string().optional().describe("Author name"),
33
+ });
34
+ exports.MarkdownUploadSchema = shared_1.ProjectParamsSchema.extend({
35
+ file: zod_1.z.string().describe("Base64 encoded file content or file path"),
36
+ filename: zod_1.z.string().describe("Name of the file"),
37
+ });
38
+ const ManageFilesSingleSchema = zod_1.z.object({
39
+ project_id: zod_1.z.coerce.string().describe("Project ID or URL-encoded path"),
40
+ action: zod_1.z.literal("single"),
41
+ file_path: zod_1.z.string().describe("Path to the file"),
42
+ content: zod_1.z.string().describe("File content (text or base64 encoded)"),
43
+ commit_message: zod_1.z.string().describe("Commit message"),
44
+ branch: zod_1.z.string().describe("Target branch name"),
45
+ start_branch: zod_1.z.string().optional().describe("Base branch to start from"),
46
+ encoding: zod_1.z.enum(["text", "base64"]).optional().describe("Content encoding (default: text)"),
47
+ author_email: zod_1.z.string().optional().describe("Commit author email"),
48
+ author_name: zod_1.z.string().optional().describe("Commit author name"),
49
+ last_commit_id: zod_1.z.string().optional().describe("Last known commit ID for conflict detection"),
50
+ execute_filemode: utils_1.flexibleBoolean.optional().describe("Set executable permission"),
51
+ });
52
+ const BatchFileActionSchema = zod_1.z.object({
53
+ file_path: zod_1.z.string().describe("Path to the file"),
54
+ content: zod_1.z.string().describe("File content"),
55
+ encoding: zod_1.z.enum(["text", "base64"]).optional().describe("Content encoding"),
56
+ execute_filemode: utils_1.flexibleBoolean.optional().describe("Set executable permission"),
57
+ });
58
+ const ManageFilesBatchSchema = zod_1.z.object({
59
+ project_id: zod_1.z.coerce.string().describe("Project ID or URL-encoded path"),
60
+ action: zod_1.z.literal("batch"),
61
+ branch: zod_1.z.string().describe("Target branch name"),
62
+ commit_message: zod_1.z.string().describe("Commit message"),
63
+ files: zod_1.z.array(BatchFileActionSchema).min(1).describe("Files to commit"),
64
+ start_branch: zod_1.z.string().optional().describe("Base branch to start from"),
65
+ author_email: zod_1.z.string().optional().describe("Commit author email"),
66
+ author_name: zod_1.z.string().optional().describe("Commit author name"),
67
+ });
68
+ const ManageFilesUploadSchema = zod_1.z.object({
69
+ project_id: zod_1.z.coerce.string().describe("Project ID or URL-encoded path"),
70
+ action: zod_1.z.literal("upload"),
71
+ file: zod_1.z.string().describe("Base64 encoded file content"),
72
+ filename: zod_1.z.string().describe("Name of the file"),
73
+ });
74
+ exports.ManageFilesSchema = zod_1.z.discriminatedUnion("action", [
75
+ ManageFilesSingleSchema,
76
+ ManageFilesBatchSchema,
77
+ ManageFilesUploadSchema,
78
+ ]);
79
+ //# sourceMappingURL=schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../src/entities/files/schema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/entities/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,yCAAuB;AACvB,yCAAuB;AACvB,+CAA6B;AAC7B,8CAA4B;AAC5B,8CAA4B;AAC5B,2CAAyB;AACzB,wCAAsB;AACtB,0CAAwB;AACxB,8CAA4B"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/entities/labels/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AACA,4CAA0B;AAG1B,oDAAkC;AAGlC,2CAAyB;AAGzB,6CAA2B;AAG3B,yCAAgF;AAIhF,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,KAAK,MAAM,CAAC;AAG1D,MAAM,uBAAuB,GAAG,IAAA,iCAAsB,EAAC,UAAU,CAAC,CAAC;AAGtD,QAAA,WAAW,GAAqB,uBAAuB,CAAC,GAAG,CACtE,CAAC,IAAI,EAAkB,EAAE,CAAC,CAAC;IACzB,IAAI,EAAE,IAAI,CAAC,IAAI;IACf,WAAW,EAAE,IAAI,CAAC,WAAW;IAC7B,WAAW,EAAE,IAAI,CAAC,WAAW;CAC9B,CAAC,CACH,CAAC;AAGW,QAAA,mBAAmB,GAAG,IAAA,qCAA0B,GAAE,CAAC"}
@@ -40,9 +40,8 @@ exports.getFilteredLabelsTools = getFilteredLabelsTools;
40
40
  const z = __importStar(require("zod"));
41
41
  const schema_readonly_1 = require("./schema-readonly");
42
42
  const schema_1 = require("./schema");
43
- const fetch_1 = require("../../utils/fetch");
43
+ const gitlab_api_1 = require("../../utils/gitlab-api");
44
44
  const namespace_1 = require("../../utils/namespace");
45
- const idConversion_1 = require("../../utils/idConversion");
46
45
  exports.labelsToolRegistry = new Map([
47
46
  [
48
47
  "list_labels",
@@ -53,25 +52,10 @@ exports.labelsToolRegistry = new Map([
53
52
  handler: async (args) => {
54
53
  const options = schema_readonly_1.ListLabelsSchema.parse(args);
55
54
  const { namespace } = options;
56
- const isProject = namespace.includes("/");
57
- const entityType = isProject ? "projects" : "groups";
58
- const queryParams = new URLSearchParams();
59
- Object.entries(options).forEach(([key, value]) => {
60
- if (value !== undefined && key !== "namespace") {
61
- queryParams.set(key, String(value));
62
- }
55
+ const entityType = namespace.includes("/") ? "projects" : "groups";
56
+ return gitlab_api_1.gitlab.get(`${entityType}/${encodeURIComponent(namespace)}/labels`, {
57
+ query: (0, gitlab_api_1.toQuery)(options, ["namespace"]),
63
58
  });
64
- const apiUrl = `${process.env.GITLAB_API_URL}/api/v4/${entityType}/${encodeURIComponent(namespace)}/labels?${queryParams}`;
65
- const response = await (0, fetch_1.enhancedFetch)(apiUrl, {
66
- headers: {
67
- Authorization: `Bearer ${process.env.GITLAB_TOKEN}`,
68
- },
69
- });
70
- if (!response.ok) {
71
- throw new Error(`GitLab API error: ${response.status} ${response.statusText}`);
72
- }
73
- const labels = await response.json();
74
- return (0, idConversion_1.cleanGidsFromObject)(labels);
75
59
  },
76
60
  },
77
61
  ],
@@ -83,19 +67,8 @@ exports.labelsToolRegistry = new Map([
83
67
  inputSchema: z.toJSONSchema(schema_readonly_1.GetLabelSchema),
84
68
  handler: async (args) => {
85
69
  const options = schema_readonly_1.GetLabelSchema.parse(args);
86
- const { namespace, label_id } = options;
87
- const { entityType, encodedPath } = await (0, namespace_1.resolveNamespaceForAPI)(namespace);
88
- const apiUrl = `${process.env.GITLAB_API_URL}/api/v4/${entityType}/${encodedPath}/labels/${encodeURIComponent(label_id)}`;
89
- const response = await (0, fetch_1.enhancedFetch)(apiUrl, {
90
- headers: {
91
- Authorization: `Bearer ${process.env.GITLAB_TOKEN}`,
92
- },
93
- });
94
- if (!response.ok) {
95
- throw new Error(`GitLab API error: ${response.status} ${response.statusText}`);
96
- }
97
- const label = await response.json();
98
- return (0, idConversion_1.cleanGidsFromObject)(label);
70
+ const { entityType, encodedPath } = await (0, namespace_1.resolveNamespaceForAPI)(options.namespace);
71
+ return gitlab_api_1.gitlab.get(`${entityType}/${encodedPath}/labels/${encodeURIComponent(options.label_id)}`);
99
72
  },
100
73
  },
101
74
  ],
@@ -107,31 +80,15 @@ exports.labelsToolRegistry = new Map([
107
80
  inputSchema: z.toJSONSchema(schema_1.CreateLabelSchema),
108
81
  handler: async (args) => {
109
82
  const options = schema_1.CreateLabelSchema.parse(args);
110
- const { namespace } = options;
111
- const { entityType, encodedPath } = await (0, namespace_1.resolveNamespaceForAPI)(namespace);
112
- const body = new URLSearchParams();
113
- body.set("name", options.name);
114
- body.set("color", options.color);
115
- if (options.description) {
116
- body.set("description", options.description);
117
- }
118
- if (options.priority !== undefined) {
119
- body.set("priority", String(options.priority));
120
- }
121
- const apiUrl = `${process.env.GITLAB_API_URL}/api/v4/${entityType}/${encodedPath}/labels`;
122
- const response = await (0, fetch_1.enhancedFetch)(apiUrl, {
123
- method: "POST",
124
- headers: {
125
- Authorization: `Bearer ${process.env.GITLAB_TOKEN}`,
126
- "Content-Type": "application/x-www-form-urlencoded",
83
+ const { entityType, encodedPath } = await (0, namespace_1.resolveNamespaceForAPI)(options.namespace);
84
+ return gitlab_api_1.gitlab.post(`${entityType}/${encodedPath}/labels`, {
85
+ body: {
86
+ name: options.name,
87
+ color: options.color,
88
+ description: options.description,
89
+ priority: options.priority,
127
90
  },
128
- body: body.toString(),
129
91
  });
130
- if (!response.ok) {
131
- throw new Error(`GitLab API error: ${response.status} ${response.statusText}`);
132
- }
133
- const label = await response.json();
134
- return (0, idConversion_1.cleanGidsFromObject)(label);
135
92
  },
136
93
  },
137
94
  ],
@@ -143,28 +100,11 @@ exports.labelsToolRegistry = new Map([
143
100
  inputSchema: z.toJSONSchema(schema_1.UpdateLabelSchema),
144
101
  handler: async (args) => {
145
102
  const options = schema_1.UpdateLabelSchema.parse(args);
146
- const { namespace, label_id } = options;
147
- const { entityType, encodedPath } = await (0, namespace_1.resolveNamespaceForAPI)(namespace);
148
- const body = new URLSearchParams();
149
- Object.entries(options).forEach(([key, value]) => {
150
- if (value !== undefined && key !== "namespace" && key !== "label_id") {
151
- body.set(key, String(value));
152
- }
103
+ const { entityType, encodedPath } = await (0, namespace_1.resolveNamespaceForAPI)(options.namespace);
104
+ const { namespace: _namespace, label_id, ...body } = options;
105
+ return gitlab_api_1.gitlab.put(`${entityType}/${encodedPath}/labels/${encodeURIComponent(label_id)}`, {
106
+ body,
153
107
  });
154
- const apiUrl = `${process.env.GITLAB_API_URL}/api/v4/${entityType}/${encodedPath}/labels/${encodeURIComponent(label_id)}`;
155
- const response = await (0, fetch_1.enhancedFetch)(apiUrl, {
156
- method: "PUT",
157
- headers: {
158
- Authorization: `Bearer ${process.env.GITLAB_TOKEN}`,
159
- "Content-Type": "application/x-www-form-urlencoded",
160
- },
161
- body: body.toString(),
162
- });
163
- if (!response.ok) {
164
- throw new Error(`GitLab API error: ${response.status} ${response.statusText}`);
165
- }
166
- const label = await response.json();
167
- return (0, idConversion_1.cleanGidsFromObject)(label);
168
108
  },
169
109
  },
170
110
  ],
@@ -176,18 +116,8 @@ exports.labelsToolRegistry = new Map([
176
116
  inputSchema: z.toJSONSchema(schema_1.DeleteLabelSchema),
177
117
  handler: async (args) => {
178
118
  const options = schema_1.DeleteLabelSchema.parse(args);
179
- const { namespace, label_id } = options;
180
- const { entityType, encodedPath } = await (0, namespace_1.resolveNamespaceForAPI)(namespace);
181
- const apiUrl = `${process.env.GITLAB_API_URL}/api/v4/${entityType}/${encodedPath}/labels/${encodeURIComponent(label_id)}`;
182
- const response = await (0, fetch_1.enhancedFetch)(apiUrl, {
183
- method: "DELETE",
184
- headers: {
185
- Authorization: `Bearer ${process.env.GITLAB_TOKEN}`,
186
- },
187
- });
188
- if (!response.ok) {
189
- throw new Error(`GitLab API error: ${response.status} ${response.statusText}`);
190
- }
119
+ const { entityType, encodedPath } = await (0, namespace_1.resolveNamespaceForAPI)(options.namespace);
120
+ await gitlab_api_1.gitlab.delete(`${entityType}/${encodedPath}/labels/${encodeURIComponent(options.label_id)}`);
191
121
  return { success: true, message: "Label deleted successfully" };
192
122
  },
193
123
  },
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../../src/entities/labels/registry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema-readonly.js","sourceRoot":"","sources":["../../../../src/entities/labels/schema-readonly.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AACxB,oCAA2C;AAK9B,QAAA,gBAAgB,GAAG,OAAC,CAAC,MAAM,CAAC;IACvC,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uDAAuD,CAAC;IACvF,WAAW,EAAE,uBAAe;SACzB,QAAQ,EAAE;SACV,QAAQ,CAAC,0DAA0D,CAAC;IACvE,uBAAuB,EAAE,uBAAe,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;IACvF,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6BAA6B,CAAC;CACtE,CAAC,CAAC;AAEU,QAAA,cAAc,GAAG,OAAC,CAAC,MAAM,CAAC;IACrC,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wDAAwD,CAAC;IACxF,QAAQ,EAAE,OAAC,CAAC,KAAK,CAAC,CAAC,OAAC,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,8BAA8B,CAAC;IAC3F,uBAAuB,EAAE,uBAAe,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;CACxF,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../src/entities/labels/schema.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAKX,QAAA,iBAAiB,GAAG,OAAC,CAAC,MAAM,CAAC;IACxC,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sDAAsD,CAAC;IACtF,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;IAClD,KAAK,EAAE,OAAC;SACL,MAAM,EAAE;SACR,QAAQ,CACP,yHAAyH,CAC1H;IACH,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;IAC3E,QAAQ,EAAE,OAAC;SACR,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,8FAA8F,CAC/F;CACJ,CAAC,CAAC;AAEU,QAAA,iBAAiB,GAAG,OAAC,CAAC,MAAM,CAAC;IACxC,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wDAAwD,CAAC;IACxF,QAAQ,EAAE,OAAC,CAAC,KAAK,CAAC,CAAC,OAAC,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,8BAA8B,CAAC;IAC3F,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;IACrE,KAAK,EAAE,OAAC;SACL,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,yHAAyH,CAC1H;IACH,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;IAC3E,QAAQ,EAAE,OAAC;SACR,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,8FAA8F,CAC/F;CACJ,CAAC,CAAC;AAEU,QAAA,iBAAiB,GAAG,OAAC,CAAC,MAAM,CAAC;IACxC,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wDAAwD,CAAC;IACxF,QAAQ,EAAE,OAAC,CAAC,KAAK,CAAC,CAAC,OAAC,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,8BAA8B,CAAC;CAC5F,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/entities/milestones/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AACA,4CAA0B;AAG1B,oDAAkC;AAGlC,2CAAyB;AAGzB,6CAA2B;AAG3B,yCAAwF;AAIxF,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,KAAK,MAAM,CAAC;AAG1D,MAAM,2BAA2B,GAAG,IAAA,qCAA0B,EAAC,UAAU,CAAC,CAAC;AAG9D,QAAA,cAAc,GAAqB,2BAA2B,CAAC,GAAG,CAC7E,CAAC,IAAI,EAAkB,EAAE,CAAC,CAAC;IACzB,IAAI,EAAE,IAAI,CAAC,IAAI;IACf,WAAW,EAAE,IAAI,CAAC,WAAW;IAC7B,WAAW,EAAE,IAAI,CAAC,WAAW;CAC9B,CAAC,CACH,CAAC;AAGW,QAAA,sBAAsB,GAAG,IAAA,yCAA8B,GAAE,CAAC"}