@confluentinc/mcp-confluent 1.4.0 → 1.6.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 (489) hide show
  1. package/README.md +57 -34
  2. package/config.example.yaml +36 -7
  3. package/config.oauth.example.yaml +14 -1
  4. package/dist/build-config.d.ts +1 -0
  5. package/dist/build-config.d.ts.map +1 -1
  6. package/dist/build-config.js +1 -0
  7. package/dist/build-config.js.map +1 -1
  8. package/dist/cli.d.ts +1 -1
  9. package/dist/cli.d.ts.map +1 -1
  10. package/dist/cli.js +128 -94
  11. package/dist/cli.js.map +1 -1
  12. package/dist/config/env-config.d.ts +9 -3
  13. package/dist/config/env-config.d.ts.map +1 -1
  14. package/dist/config/env-config.js +15 -34
  15. package/dist/config/env-config.js.map +1 -1
  16. package/dist/config/models.d.ts +105 -13
  17. package/dist/config/models.d.ts.map +1 -1
  18. package/dist/config/models.js +49 -37
  19. package/dist/config/models.js.map +1 -1
  20. package/dist/confluent/base-client-manager.d.ts +3 -1
  21. package/dist/confluent/base-client-manager.d.ts.map +1 -1
  22. package/dist/confluent/base-client-manager.js +5 -1
  23. package/dist/confluent/base-client-manager.js.map +1 -1
  24. package/dist/confluent/client-manager.d.ts +15 -1
  25. package/dist/confluent/client-manager.d.ts.map +1 -1
  26. package/dist/confluent/direct-client-manager.d.ts +1 -1
  27. package/dist/confluent/direct-client-manager.d.ts.map +1 -1
  28. package/dist/confluent/middleware.d.ts +1 -1
  29. package/dist/confluent/middleware.d.ts.map +1 -1
  30. package/dist/confluent/node-deps.d.ts +8 -0
  31. package/dist/confluent/node-deps.d.ts.map +1 -1
  32. package/dist/confluent/node-deps.js +9 -2
  33. package/dist/confluent/node-deps.js.map +1 -1
  34. package/dist/confluent/oauth/auth0-config.d.ts +26 -4
  35. package/dist/confluent/oauth/auth0-config.d.ts.map +1 -1
  36. package/dist/confluent/oauth/auth0-config.js +59 -19
  37. package/dist/confluent/oauth/auth0-config.js.map +1 -1
  38. package/dist/confluent/oauth/pkce-login.d.ts.map +1 -1
  39. package/dist/confluent/oauth/pkce-login.js +180 -150
  40. package/dist/confluent/oauth/pkce-login.js.map +1 -1
  41. package/dist/confluent/oauth/types.d.ts +1 -2
  42. package/dist/confluent/oauth/types.d.ts.map +1 -1
  43. package/dist/confluent/oauth-client-manager.d.ts +6 -3
  44. package/dist/confluent/oauth-client-manager.d.ts.map +1 -1
  45. package/dist/confluent/oauth-client-manager.js +28 -6
  46. package/dist/confluent/oauth-client-manager.js.map +1 -1
  47. package/dist/confluent/oauth-resource-resolvers.d.ts +11 -0
  48. package/dist/confluent/oauth-resource-resolvers.d.ts.map +1 -1
  49. package/dist/confluent/oauth-resource-resolvers.js +24 -0
  50. package/dist/confluent/oauth-resource-resolvers.js.map +1 -1
  51. package/dist/confluent/schema-registry-helper.d.ts +131 -7
  52. package/dist/confluent/schema-registry-helper.d.ts.map +1 -1
  53. package/dist/confluent/schema-registry-helper.js +336 -40
  54. package/dist/confluent/schema-registry-helper.js.map +1 -1
  55. package/dist/confluent/schema.d.ts +2 -2
  56. package/dist/confluent/schema.d.ts.map +1 -1
  57. package/dist/confluent/sentry-redact.d.ts +5 -0
  58. package/dist/confluent/sentry-redact.d.ts.map +1 -0
  59. package/dist/confluent/sentry-redact.js +64 -0
  60. package/dist/confluent/sentry-redact.js.map +1 -0
  61. package/dist/confluent/sentry.d.ts +23 -0
  62. package/dist/confluent/sentry.d.ts.map +1 -0
  63. package/dist/confluent/sentry.js +68 -0
  64. package/dist/confluent/sentry.js.map +1 -0
  65. package/dist/confluent/tools/base-tools.d.ts +169 -24
  66. package/dist/confluent/tools/base-tools.d.ts.map +1 -1
  67. package/dist/confluent/tools/base-tools.js +225 -21
  68. package/dist/confluent/tools/base-tools.js.map +1 -1
  69. package/dist/confluent/tools/cluster-arg-resolvers.d.ts +22 -1
  70. package/dist/confluent/tools/cluster-arg-resolvers.d.ts.map +1 -1
  71. package/dist/confluent/tools/cluster-arg-resolvers.js +50 -4
  72. package/dist/confluent/tools/cluster-arg-resolvers.js.map +1 -1
  73. package/dist/confluent/tools/connection-predicates.d.ts +70 -7
  74. package/dist/confluent/tools/connection-predicates.d.ts.map +1 -1
  75. package/dist/confluent/tools/connection-predicates.js +69 -6
  76. package/dist/confluent/tools/connection-predicates.js.map +1 -1
  77. package/dist/confluent/tools/handlers/billing/list-billing-costs-handler.d.ts +9 -3
  78. package/dist/confluent/tools/handlers/billing/list-billing-costs-handler.d.ts.map +1 -1
  79. package/dist/confluent/tools/handlers/billing/list-billing-costs-handler.js +77 -62
  80. package/dist/confluent/tools/handlers/billing/list-billing-costs-handler.js.map +1 -1
  81. package/dist/confluent/tools/handlers/catalog/add-tags-to-topic.d.ts +5 -5
  82. package/dist/confluent/tools/handlers/catalog/add-tags-to-topic.d.ts.map +1 -1
  83. package/dist/confluent/tools/handlers/catalog/add-tags-to-topic.js +9 -5
  84. package/dist/confluent/tools/handlers/catalog/add-tags-to-topic.js.map +1 -1
  85. package/dist/confluent/tools/handlers/catalog/create-topic-tags.d.ts +5 -5
  86. package/dist/confluent/tools/handlers/catalog/create-topic-tags.d.ts.map +1 -1
  87. package/dist/confluent/tools/handlers/catalog/create-topic-tags.js +9 -5
  88. package/dist/confluent/tools/handlers/catalog/create-topic-tags.js.map +1 -1
  89. package/dist/confluent/tools/handlers/catalog/delete-tag.d.ts +5 -5
  90. package/dist/confluent/tools/handlers/catalog/delete-tag.d.ts.map +1 -1
  91. package/dist/confluent/tools/handlers/catalog/delete-tag.js +9 -5
  92. package/dist/confluent/tools/handlers/catalog/delete-tag.js.map +1 -1
  93. package/dist/confluent/tools/handlers/catalog/list-tags.d.ts +6 -6
  94. package/dist/confluent/tools/handlers/catalog/list-tags.d.ts.map +1 -1
  95. package/dist/confluent/tools/handlers/catalog/list-tags.js +14 -6
  96. package/dist/confluent/tools/handlers/catalog/list-tags.js.map +1 -1
  97. package/dist/confluent/tools/handlers/catalog/remove-tag-from-entity.d.ts +5 -5
  98. package/dist/confluent/tools/handlers/catalog/remove-tag-from-entity.d.ts.map +1 -1
  99. package/dist/confluent/tools/handlers/catalog/remove-tag-from-entity.js +9 -5
  100. package/dist/confluent/tools/handlers/catalog/remove-tag-from-entity.js.map +1 -1
  101. package/dist/confluent/tools/handlers/clusters/list-clusters-handler.d.ts +4 -3
  102. package/dist/confluent/tools/handlers/clusters/list-clusters-handler.d.ts.map +1 -1
  103. package/dist/confluent/tools/handlers/clusters/list-clusters-handler.js +1 -1
  104. package/dist/confluent/tools/handlers/clusters/list-clusters-handler.js.map +1 -1
  105. package/dist/confluent/tools/handlers/connect/connect-tool-handler.d.ts +8 -8
  106. package/dist/confluent/tools/handlers/connect/connect-tool-handler.d.ts.map +1 -1
  107. package/dist/confluent/tools/handlers/connect/connect-tool-handler.js +9 -10
  108. package/dist/confluent/tools/handlers/connect/connect-tool-handler.js.map +1 -1
  109. package/dist/confluent/tools/handlers/connect/create-connector-handler.d.ts +3 -3
  110. package/dist/confluent/tools/handlers/connect/create-connector-handler.d.ts.map +1 -1
  111. package/dist/confluent/tools/handlers/connect/create-connector-handler.js +1 -2
  112. package/dist/confluent/tools/handlers/connect/create-connector-handler.js.map +1 -1
  113. package/dist/confluent/tools/handlers/connect/delete-connector-handler.d.ts +3 -3
  114. package/dist/confluent/tools/handlers/connect/delete-connector-handler.d.ts.map +1 -1
  115. package/dist/confluent/tools/handlers/connect/delete-connector-handler.js +1 -2
  116. package/dist/confluent/tools/handlers/connect/delete-connector-handler.js.map +1 -1
  117. package/dist/confluent/tools/handlers/connect/get-connector-config-handler.d.ts +3 -3
  118. package/dist/confluent/tools/handlers/connect/get-connector-config-handler.d.ts.map +1 -1
  119. package/dist/confluent/tools/handlers/connect/get-connector-config-handler.js +1 -2
  120. package/dist/confluent/tools/handlers/connect/get-connector-config-handler.js.map +1 -1
  121. package/dist/confluent/tools/handlers/connect/get-connector-error-recommendations-handler.d.ts +3 -3
  122. package/dist/confluent/tools/handlers/connect/get-connector-error-recommendations-handler.d.ts.map +1 -1
  123. package/dist/confluent/tools/handlers/connect/get-connector-error-recommendations-handler.js +1 -2
  124. package/dist/confluent/tools/handlers/connect/get-connector-error-recommendations-handler.js.map +1 -1
  125. package/dist/confluent/tools/handlers/connect/get-connector-error-summary-handler.d.ts +3 -3
  126. package/dist/confluent/tools/handlers/connect/get-connector-error-summary-handler.d.ts.map +1 -1
  127. package/dist/confluent/tools/handlers/connect/get-connector-error-summary-handler.js +2 -3
  128. package/dist/confluent/tools/handlers/connect/get-connector-error-summary-handler.js.map +1 -1
  129. package/dist/confluent/tools/handlers/connect/get-connector-logs-handler.d.ts +3 -3
  130. package/dist/confluent/tools/handlers/connect/get-connector-logs-handler.d.ts.map +1 -1
  131. package/dist/confluent/tools/handlers/connect/get-connector-logs-handler.js +171 -100
  132. package/dist/confluent/tools/handlers/connect/get-connector-logs-handler.js.map +1 -1
  133. package/dist/confluent/tools/handlers/connect/get-connector-offsets-handler.d.ts +3 -3
  134. package/dist/confluent/tools/handlers/connect/get-connector-offsets-handler.d.ts.map +1 -1
  135. package/dist/confluent/tools/handlers/connect/get-connector-offsets-handler.js +1 -2
  136. package/dist/confluent/tools/handlers/connect/get-connector-offsets-handler.js.map +1 -1
  137. package/dist/confluent/tools/handlers/connect/get-connector-status-handler.d.ts +3 -3
  138. package/dist/confluent/tools/handlers/connect/get-connector-status-handler.d.ts.map +1 -1
  139. package/dist/confluent/tools/handlers/connect/get-connector-status-handler.js +1 -2
  140. package/dist/confluent/tools/handlers/connect/get-connector-status-handler.js.map +1 -1
  141. package/dist/confluent/tools/handlers/connect/get-connector-tasks-handler.d.ts +3 -3
  142. package/dist/confluent/tools/handlers/connect/get-connector-tasks-handler.d.ts.map +1 -1
  143. package/dist/confluent/tools/handlers/connect/get-connector-tasks-handler.js +1 -2
  144. package/dist/confluent/tools/handlers/connect/get-connector-tasks-handler.js.map +1 -1
  145. package/dist/confluent/tools/handlers/connect/list-connectors-handler.d.ts +3 -3
  146. package/dist/confluent/tools/handlers/connect/list-connectors-handler.d.ts.map +1 -1
  147. package/dist/confluent/tools/handlers/connect/list-connectors-handler.js +1 -2
  148. package/dist/confluent/tools/handlers/connect/list-connectors-handler.js.map +1 -1
  149. package/dist/confluent/tools/handlers/connect/pause-connector-handler.d.ts +3 -3
  150. package/dist/confluent/tools/handlers/connect/pause-connector-handler.d.ts.map +1 -1
  151. package/dist/confluent/tools/handlers/connect/pause-connector-handler.js +1 -2
  152. package/dist/confluent/tools/handlers/connect/pause-connector-handler.js.map +1 -1
  153. package/dist/confluent/tools/handlers/connect/restart-connector-handler.d.ts +3 -3
  154. package/dist/confluent/tools/handlers/connect/restart-connector-handler.d.ts.map +1 -1
  155. package/dist/confluent/tools/handlers/connect/restart-connector-handler.js +1 -2
  156. package/dist/confluent/tools/handlers/connect/restart-connector-handler.js.map +1 -1
  157. package/dist/confluent/tools/handlers/connect/resume-connector-handler.d.ts +3 -3
  158. package/dist/confluent/tools/handlers/connect/resume-connector-handler.d.ts.map +1 -1
  159. package/dist/confluent/tools/handlers/connect/resume-connector-handler.js +1 -2
  160. package/dist/confluent/tools/handlers/connect/resume-connector-handler.js.map +1 -1
  161. package/dist/confluent/tools/handlers/connect/update-connector-config-handler.d.ts +3 -3
  162. package/dist/confluent/tools/handlers/connect/update-connector-config-handler.d.ts.map +1 -1
  163. package/dist/confluent/tools/handlers/connect/update-connector-config-handler.js +1 -2
  164. package/dist/confluent/tools/handlers/connect/update-connector-config-handler.js.map +1 -1
  165. package/dist/confluent/tools/handlers/diagnostics/config-help-handler.d.ts +43 -0
  166. package/dist/confluent/tools/handlers/diagnostics/config-help-handler.d.ts.map +1 -0
  167. package/dist/confluent/tools/handlers/diagnostics/config-help-handler.js +297 -0
  168. package/dist/confluent/tools/handlers/diagnostics/config-help-handler.js.map +1 -0
  169. package/dist/confluent/tools/handlers/diagnostics/describe-configured-connection-handler.d.ts +32 -0
  170. package/dist/confluent/tools/handlers/diagnostics/describe-configured-connection-handler.d.ts.map +1 -0
  171. package/dist/confluent/tools/handlers/diagnostics/describe-configured-connection-handler.js +116 -0
  172. package/dist/confluent/tools/handlers/diagnostics/describe-configured-connection-handler.js.map +1 -0
  173. package/dist/confluent/tools/handlers/diagnostics/describe-fields.d.ts +52 -0
  174. package/dist/confluent/tools/handlers/diagnostics/describe-fields.d.ts.map +1 -0
  175. package/dist/confluent/tools/handlers/diagnostics/describe-fields.js +114 -0
  176. package/dist/confluent/tools/handlers/diagnostics/describe-fields.js.map +1 -0
  177. package/dist/confluent/tools/handlers/diagnostics/explain-disabled-tools-handler.d.ts +22 -44
  178. package/dist/confluent/tools/handlers/diagnostics/explain-disabled-tools-handler.d.ts.map +1 -1
  179. package/dist/confluent/tools/handlers/diagnostics/explain-disabled-tools-handler.js +95 -81
  180. package/dist/confluent/tools/handlers/diagnostics/explain-disabled-tools-handler.js.map +1 -1
  181. package/dist/confluent/tools/handlers/diagnostics/list-configured-connections-handler.d.ts +28 -0
  182. package/dist/confluent/tools/handlers/diagnostics/list-configured-connections-handler.d.ts.map +1 -0
  183. package/dist/confluent/tools/handlers/diagnostics/list-configured-connections-handler.js +93 -0
  184. package/dist/confluent/tools/handlers/diagnostics/list-configured-connections-handler.js.map +1 -0
  185. package/dist/confluent/tools/handlers/docs/get-product-doc-page-handler.d.ts +4 -3
  186. package/dist/confluent/tools/handlers/docs/get-product-doc-page-handler.d.ts.map +1 -1
  187. package/dist/confluent/tools/handlers/docs/get-product-doc-page-handler.js.map +1 -1
  188. package/dist/confluent/tools/handlers/docs/search-product-docs-handler.d.ts +4 -3
  189. package/dist/confluent/tools/handlers/docs/search-product-docs-handler.d.ts.map +1 -1
  190. package/dist/confluent/tools/handlers/docs/search-product-docs-handler.js.map +1 -1
  191. package/dist/confluent/tools/handlers/environments/list-environments-handler.d.ts +9 -3
  192. package/dist/confluent/tools/handlers/environments/list-environments-handler.d.ts.map +1 -1
  193. package/dist/confluent/tools/handlers/environments/list-environments-handler.js +68 -46
  194. package/dist/confluent/tools/handlers/environments/list-environments-handler.js.map +1 -1
  195. package/dist/confluent/tools/handlers/environments/read-environment-handler.d.ts +4 -3
  196. package/dist/confluent/tools/handlers/environments/read-environment-handler.d.ts.map +1 -1
  197. package/dist/confluent/tools/handlers/environments/read-environment-handler.js +2 -2
  198. package/dist/confluent/tools/handlers/environments/read-environment-handler.js.map +1 -1
  199. package/dist/confluent/tools/handlers/flink/catalog/catalog-resolver.d.ts +1 -1
  200. package/dist/confluent/tools/handlers/flink/catalog/catalog-resolver.d.ts.map +1 -1
  201. package/dist/confluent/tools/handlers/flink/catalog/catalog-resolver.js +12 -6
  202. package/dist/confluent/tools/handlers/flink/catalog/catalog-resolver.js.map +1 -1
  203. package/dist/confluent/tools/handlers/flink/catalog/describe-table-handler.d.ts +3 -3
  204. package/dist/confluent/tools/handlers/flink/catalog/describe-table-handler.d.ts.map +1 -1
  205. package/dist/confluent/tools/handlers/flink/catalog/describe-table-handler.js +24 -21
  206. package/dist/confluent/tools/handlers/flink/catalog/describe-table-handler.js.map +1 -1
  207. package/dist/confluent/tools/handlers/flink/catalog/flink-catalog-tool-handler.d.ts +1 -1
  208. package/dist/confluent/tools/handlers/flink/catalog/flink-catalog-tool-handler.d.ts.map +1 -1
  209. package/dist/confluent/tools/handlers/flink/catalog/get-table-info-handler.d.ts +3 -3
  210. package/dist/confluent/tools/handlers/flink/catalog/get-table-info-handler.d.ts.map +1 -1
  211. package/dist/confluent/tools/handlers/flink/catalog/get-table-info-handler.js +24 -21
  212. package/dist/confluent/tools/handlers/flink/catalog/get-table-info-handler.js.map +1 -1
  213. package/dist/confluent/tools/handlers/flink/catalog/list-catalogs-handler.d.ts +3 -3
  214. package/dist/confluent/tools/handlers/flink/catalog/list-catalogs-handler.d.ts.map +1 -1
  215. package/dist/confluent/tools/handlers/flink/catalog/list-catalogs-handler.js +9 -7
  216. package/dist/confluent/tools/handlers/flink/catalog/list-catalogs-handler.js.map +1 -1
  217. package/dist/confluent/tools/handlers/flink/catalog/list-databases-handler.d.ts +3 -3
  218. package/dist/confluent/tools/handlers/flink/catalog/list-databases-handler.d.ts.map +1 -1
  219. package/dist/confluent/tools/handlers/flink/catalog/list-databases-handler.js +14 -12
  220. package/dist/confluent/tools/handlers/flink/catalog/list-databases-handler.js.map +1 -1
  221. package/dist/confluent/tools/handlers/flink/catalog/list-tables-handler.d.ts +3 -3
  222. package/dist/confluent/tools/handlers/flink/catalog/list-tables-handler.d.ts.map +1 -1
  223. package/dist/confluent/tools/handlers/flink/catalog/list-tables-handler.js +14 -12
  224. package/dist/confluent/tools/handlers/flink/catalog/list-tables-handler.js.map +1 -1
  225. package/dist/confluent/tools/handlers/flink/create-flink-statement-handler.d.ts +3 -3
  226. package/dist/confluent/tools/handlers/flink/create-flink-statement-handler.d.ts.map +1 -1
  227. package/dist/confluent/tools/handlers/flink/create-flink-statement-handler.js +27 -22
  228. package/dist/confluent/tools/handlers/flink/create-flink-statement-handler.js.map +1 -1
  229. package/dist/confluent/tools/handlers/flink/delete-flink-statement-handler.d.ts +3 -3
  230. package/dist/confluent/tools/handlers/flink/delete-flink-statement-handler.d.ts.map +1 -1
  231. package/dist/confluent/tools/handlers/flink/delete-flink-statement-handler.js +20 -12
  232. package/dist/confluent/tools/handlers/flink/delete-flink-statement-handler.js.map +1 -1
  233. package/dist/confluent/tools/handlers/flink/diagnostics/check-health-handler.d.ts +3 -3
  234. package/dist/confluent/tools/handlers/flink/diagnostics/check-health-handler.d.ts.map +1 -1
  235. package/dist/confluent/tools/handlers/flink/diagnostics/check-health-handler.js +20 -12
  236. package/dist/confluent/tools/handlers/flink/diagnostics/check-health-handler.js.map +1 -1
  237. package/dist/confluent/tools/handlers/flink/diagnostics/detect-issues-handler.d.ts +3 -3
  238. package/dist/confluent/tools/handlers/flink/diagnostics/detect-issues-handler.d.ts.map +1 -1
  239. package/dist/confluent/tools/handlers/flink/diagnostics/detect-issues-handler.js +203 -156
  240. package/dist/confluent/tools/handlers/flink/diagnostics/detect-issues-handler.js.map +1 -1
  241. package/dist/confluent/tools/handlers/flink/diagnostics/metrics-helper.d.ts +12 -8
  242. package/dist/confluent/tools/handlers/flink/diagnostics/metrics-helper.d.ts.map +1 -1
  243. package/dist/confluent/tools/handlers/flink/diagnostics/metrics-helper.js +346 -377
  244. package/dist/confluent/tools/handlers/flink/diagnostics/metrics-helper.js.map +1 -1
  245. package/dist/confluent/tools/handlers/flink/diagnostics/query-profiler-handler.d.ts +3 -3
  246. package/dist/confluent/tools/handlers/flink/diagnostics/query-profiler-handler.d.ts.map +1 -1
  247. package/dist/confluent/tools/handlers/flink/diagnostics/query-profiler-handler.js +374 -317
  248. package/dist/confluent/tools/handlers/flink/diagnostics/query-profiler-handler.js.map +1 -1
  249. package/dist/confluent/tools/handlers/flink/flink-sql-helper.d.ts +4 -3
  250. package/dist/confluent/tools/handlers/flink/flink-sql-helper.d.ts.map +1 -1
  251. package/dist/confluent/tools/handlers/flink/flink-sql-helper.js +133 -57
  252. package/dist/confluent/tools/handlers/flink/flink-sql-helper.js.map +1 -1
  253. package/dist/confluent/tools/handlers/flink/flink-tool-handler.d.ts +27 -6
  254. package/dist/confluent/tools/handlers/flink/flink-tool-handler.d.ts.map +1 -1
  255. package/dist/confluent/tools/handlers/flink/flink-tool-handler.js +37 -7
  256. package/dist/confluent/tools/handlers/flink/flink-tool-handler.js.map +1 -1
  257. package/dist/confluent/tools/handlers/flink/get-flink-exceptions-handler.d.ts +3 -3
  258. package/dist/confluent/tools/handlers/flink/get-flink-exceptions-handler.d.ts.map +1 -1
  259. package/dist/confluent/tools/handlers/flink/get-flink-exceptions-handler.js +20 -12
  260. package/dist/confluent/tools/handlers/flink/get-flink-exceptions-handler.js.map +1 -1
  261. package/dist/confluent/tools/handlers/flink/get-flink-statement-results-handler.d.ts +9 -0
  262. package/dist/confluent/tools/handlers/flink/get-flink-statement-results-handler.d.ts.map +1 -0
  263. package/dist/confluent/tools/handlers/flink/{read-flink-statement-handler.js → get-flink-statement-results-handler.js} +30 -22
  264. package/dist/confluent/tools/handlers/flink/get-flink-statement-results-handler.js.map +1 -0
  265. package/dist/confluent/tools/handlers/flink/list-compute-pools-handler.d.ts +11 -0
  266. package/dist/confluent/tools/handlers/flink/list-compute-pools-handler.d.ts.map +1 -0
  267. package/dist/confluent/tools/handlers/flink/list-compute-pools-handler.js +118 -0
  268. package/dist/confluent/tools/handlers/flink/list-compute-pools-handler.js.map +1 -0
  269. package/dist/confluent/tools/handlers/flink/list-flink-statements-handler.d.ts +3 -3
  270. package/dist/confluent/tools/handlers/flink/list-flink-statements-handler.d.ts.map +1 -1
  271. package/dist/confluent/tools/handlers/flink/list-flink-statements-handler.js +19 -17
  272. package/dist/confluent/tools/handlers/flink/list-flink-statements-handler.js.map +1 -1
  273. package/dist/confluent/tools/handlers/kafka/alter-topic-config.d.ts +4 -3
  274. package/dist/confluent/tools/handlers/kafka/alter-topic-config.d.ts.map +1 -1
  275. package/dist/confluent/tools/handlers/kafka/alter-topic-config.js +1 -1
  276. package/dist/confluent/tools/handlers/kafka/alter-topic-config.js.map +1 -1
  277. package/dist/confluent/tools/handlers/kafka/consume-kafka-messages-handler.d.ts +21 -10
  278. package/dist/confluent/tools/handlers/kafka/consume-kafka-messages-handler.d.ts.map +1 -1
  279. package/dist/confluent/tools/handlers/kafka/consume-kafka-messages-handler.js +136 -73
  280. package/dist/confluent/tools/handlers/kafka/consume-kafka-messages-handler.js.map +1 -1
  281. package/dist/confluent/tools/handlers/kafka/create-topics-handler.d.ts +4 -3
  282. package/dist/confluent/tools/handlers/kafka/create-topics-handler.d.ts.map +1 -1
  283. package/dist/confluent/tools/handlers/kafka/create-topics-handler.js +12 -3
  284. package/dist/confluent/tools/handlers/kafka/create-topics-handler.js.map +1 -1
  285. package/dist/confluent/tools/handlers/kafka/delete-topics-handler.d.ts +4 -3
  286. package/dist/confluent/tools/handlers/kafka/delete-topics-handler.d.ts.map +1 -1
  287. package/dist/confluent/tools/handlers/kafka/delete-topics-handler.js +1 -1
  288. package/dist/confluent/tools/handlers/kafka/delete-topics-handler.js.map +1 -1
  289. package/dist/confluent/tools/handlers/kafka/describe-consumer-group-handler.d.ts +4 -3
  290. package/dist/confluent/tools/handlers/kafka/describe-consumer-group-handler.d.ts.map +1 -1
  291. package/dist/confluent/tools/handlers/kafka/describe-consumer-group-handler.js +6 -41
  292. package/dist/confluent/tools/handlers/kafka/describe-consumer-group-handler.js.map +1 -1
  293. package/dist/confluent/tools/handlers/kafka/get-consumer-group-lag-handler.d.ts +4 -3
  294. package/dist/confluent/tools/handlers/kafka/get-consumer-group-lag-handler.d.ts.map +1 -1
  295. package/dist/confluent/tools/handlers/kafka/get-consumer-group-lag-handler.js +6 -10
  296. package/dist/confluent/tools/handlers/kafka/get-consumer-group-lag-handler.js.map +1 -1
  297. package/dist/confluent/tools/handlers/kafka/get-partition-offsets-handler.d.ts +4 -3
  298. package/dist/confluent/tools/handlers/kafka/get-partition-offsets-handler.d.ts.map +1 -1
  299. package/dist/confluent/tools/handlers/kafka/get-partition-offsets-handler.js +1 -1
  300. package/dist/confluent/tools/handlers/kafka/get-partition-offsets-handler.js.map +1 -1
  301. package/dist/confluent/tools/handlers/kafka/get-topic-config.d.ts +4 -3
  302. package/dist/confluent/tools/handlers/kafka/get-topic-config.d.ts.map +1 -1
  303. package/dist/confluent/tools/handlers/kafka/get-topic-config.js +1 -1
  304. package/dist/confluent/tools/handlers/kafka/get-topic-config.js.map +1 -1
  305. package/dist/confluent/tools/handlers/kafka/list-consumer-groups-handler.d.ts +4 -3
  306. package/dist/confluent/tools/handlers/kafka/list-consumer-groups-handler.d.ts.map +1 -1
  307. package/dist/confluent/tools/handlers/kafka/list-consumer-groups-handler.js +1 -1
  308. package/dist/confluent/tools/handlers/kafka/list-consumer-groups-handler.js.map +1 -1
  309. package/dist/confluent/tools/handlers/kafka/list-topics-handler.d.ts +4 -3
  310. package/dist/confluent/tools/handlers/kafka/list-topics-handler.d.ts.map +1 -1
  311. package/dist/confluent/tools/handlers/kafka/list-topics-handler.js +1 -1
  312. package/dist/confluent/tools/handlers/kafka/list-topics-handler.js.map +1 -1
  313. package/dist/confluent/tools/handlers/kafka/partition-watermarks.d.ts +1 -1
  314. package/dist/confluent/tools/handlers/kafka/partition-watermarks.d.ts.map +1 -1
  315. package/dist/confluent/tools/handlers/kafka/produce-kafka-message-handler.d.ts +12 -4
  316. package/dist/confluent/tools/handlers/kafka/produce-kafka-message-handler.d.ts.map +1 -1
  317. package/dist/confluent/tools/handlers/kafka/produce-kafka-message-handler.js +140 -34
  318. package/dist/confluent/tools/handlers/kafka/produce-kafka-message-handler.js.map +1 -1
  319. package/dist/confluent/tools/handlers/metrics/list-metrics-handler.d.ts +5 -5
  320. package/dist/confluent/tools/handlers/metrics/list-metrics-handler.d.ts.map +1 -1
  321. package/dist/confluent/tools/handlers/metrics/list-metrics-handler.js +105 -60
  322. package/dist/confluent/tools/handlers/metrics/list-metrics-handler.js.map +1 -1
  323. package/dist/confluent/tools/handlers/metrics/query-metrics-handler.d.ts +5 -5
  324. package/dist/confluent/tools/handlers/metrics/query-metrics-handler.d.ts.map +1 -1
  325. package/dist/confluent/tools/handlers/metrics/query-metrics-handler.js +75 -57
  326. package/dist/confluent/tools/handlers/metrics/query-metrics-handler.js.map +1 -1
  327. package/dist/confluent/tools/handlers/metrics/telemetry-error.d.ts +9 -0
  328. package/dist/confluent/tools/handlers/metrics/telemetry-error.d.ts.map +1 -0
  329. package/dist/confluent/tools/handlers/metrics/telemetry-error.js +38 -0
  330. package/dist/confluent/tools/handlers/metrics/telemetry-error.js.map +1 -0
  331. package/dist/confluent/tools/handlers/organizations/list-organizations-handler.d.ts +4 -3
  332. package/dist/confluent/tools/handlers/organizations/list-organizations-handler.d.ts.map +1 -1
  333. package/dist/confluent/tools/handlers/organizations/list-organizations-handler.js +2 -1
  334. package/dist/confluent/tools/handlers/organizations/list-organizations-handler.js.map +1 -1
  335. package/dist/confluent/tools/handlers/schema/create-schema-handler.d.ts +11 -0
  336. package/dist/confluent/tools/handlers/schema/create-schema-handler.d.ts.map +1 -0
  337. package/dist/confluent/tools/handlers/schema/create-schema-handler.js +76 -0
  338. package/dist/confluent/tools/handlers/schema/create-schema-handler.js.map +1 -0
  339. package/dist/confluent/tools/handlers/schema/delete-schema-handler.d.ts +4 -3
  340. package/dist/confluent/tools/handlers/schema/delete-schema-handler.d.ts.map +1 -1
  341. package/dist/confluent/tools/handlers/schema/delete-schema-handler.js +1 -1
  342. package/dist/confluent/tools/handlers/schema/delete-schema-handler.js.map +1 -1
  343. package/dist/confluent/tools/handlers/schema/list-schemas-handler.d.ts +4 -3
  344. package/dist/confluent/tools/handlers/schema/list-schemas-handler.d.ts.map +1 -1
  345. package/dist/confluent/tools/handlers/schema/list-schemas-handler.js +101 -72
  346. package/dist/confluent/tools/handlers/schema/list-schemas-handler.js.map +1 -1
  347. package/dist/confluent/tools/handlers/search/search-topic-by-tag-handler.d.ts +5 -5
  348. package/dist/confluent/tools/handlers/search/search-topic-by-tag-handler.d.ts.map +1 -1
  349. package/dist/confluent/tools/handlers/search/search-topic-by-tag-handler.js +9 -5
  350. package/dist/confluent/tools/handlers/search/search-topic-by-tag-handler.js.map +1 -1
  351. package/dist/confluent/tools/handlers/search/search-topics-by-name-handler.d.ts +5 -5
  352. package/dist/confluent/tools/handlers/search/search-topics-by-name-handler.d.ts.map +1 -1
  353. package/dist/confluent/tools/handlers/search/search-topics-by-name-handler.js +9 -5
  354. package/dist/confluent/tools/handlers/search/search-topics-by-name-handler.js.map +1 -1
  355. package/dist/confluent/tools/handlers/tableflow/catalog/create-tableflow-catalog-integration-handler.d.ts +3 -3
  356. package/dist/confluent/tools/handlers/tableflow/catalog/create-tableflow-catalog-integration-handler.d.ts.map +1 -1
  357. package/dist/confluent/tools/handlers/tableflow/catalog/create-tableflow-catalog-integration-handler.js +2 -2
  358. package/dist/confluent/tools/handlers/tableflow/catalog/create-tableflow-catalog-integration-handler.js.map +1 -1
  359. package/dist/confluent/tools/handlers/tableflow/catalog/delete-tableflow-catalog-integration-handler.d.ts +3 -3
  360. package/dist/confluent/tools/handlers/tableflow/catalog/delete-tableflow-catalog-integration-handler.d.ts.map +1 -1
  361. package/dist/confluent/tools/handlers/tableflow/catalog/delete-tableflow-catalog-integration-handler.js +2 -2
  362. package/dist/confluent/tools/handlers/tableflow/catalog/delete-tableflow-catalog-integration-handler.js.map +1 -1
  363. package/dist/confluent/tools/handlers/tableflow/catalog/list-tableflow-catalog-integrations-handler.d.ts +3 -3
  364. package/dist/confluent/tools/handlers/tableflow/catalog/list-tableflow-catalog-integrations-handler.d.ts.map +1 -1
  365. package/dist/confluent/tools/handlers/tableflow/catalog/list-tableflow-catalog-integrations-handler.js +2 -2
  366. package/dist/confluent/tools/handlers/tableflow/catalog/list-tableflow-catalog-integrations-handler.js.map +1 -1
  367. package/dist/confluent/tools/handlers/tableflow/catalog/read-tableflow-catalog-integration-handler.d.ts +3 -3
  368. package/dist/confluent/tools/handlers/tableflow/catalog/read-tableflow-catalog-integration-handler.d.ts.map +1 -1
  369. package/dist/confluent/tools/handlers/tableflow/catalog/read-tableflow-catalog-integration-handler.js +2 -2
  370. package/dist/confluent/tools/handlers/tableflow/catalog/read-tableflow-catalog-integration-handler.js.map +1 -1
  371. package/dist/confluent/tools/handlers/tableflow/catalog/update-tableflow-catalog-integration-handler.d.ts +3 -3
  372. package/dist/confluent/tools/handlers/tableflow/catalog/update-tableflow-catalog-integration-handler.d.ts.map +1 -1
  373. package/dist/confluent/tools/handlers/tableflow/catalog/update-tableflow-catalog-integration-handler.js +1 -1
  374. package/dist/confluent/tools/handlers/tableflow/catalog/update-tableflow-catalog-integration-handler.js.map +1 -1
  375. package/dist/confluent/tools/handlers/tableflow/list-tableflow-regions-handler.d.ts +3 -3
  376. package/dist/confluent/tools/handlers/tableflow/list-tableflow-regions-handler.d.ts.map +1 -1
  377. package/dist/confluent/tools/handlers/tableflow/list-tableflow-regions-handler.js +1 -1
  378. package/dist/confluent/tools/handlers/tableflow/list-tableflow-regions-handler.js.map +1 -1
  379. package/dist/confluent/tools/handlers/tableflow/tableflow-tool-handler.d.ts +15 -10
  380. package/dist/confluent/tools/handlers/tableflow/tableflow-tool-handler.d.ts.map +1 -1
  381. package/dist/confluent/tools/handlers/tableflow/tableflow-tool-handler.js +17 -14
  382. package/dist/confluent/tools/handlers/tableflow/tableflow-tool-handler.js.map +1 -1
  383. package/dist/confluent/tools/handlers/tableflow/topic/create-tableflow-topic-handler.d.ts +3 -3
  384. package/dist/confluent/tools/handlers/tableflow/topic/create-tableflow-topic-handler.d.ts.map +1 -1
  385. package/dist/confluent/tools/handlers/tableflow/topic/create-tableflow-topic-handler.js +2 -2
  386. package/dist/confluent/tools/handlers/tableflow/topic/create-tableflow-topic-handler.js.map +1 -1
  387. package/dist/confluent/tools/handlers/tableflow/topic/delete-tableflow-topic-handler.d.ts +3 -3
  388. package/dist/confluent/tools/handlers/tableflow/topic/delete-tableflow-topic-handler.d.ts.map +1 -1
  389. package/dist/confluent/tools/handlers/tableflow/topic/delete-tableflow-topic-handler.js +2 -2
  390. package/dist/confluent/tools/handlers/tableflow/topic/delete-tableflow-topic-handler.js.map +1 -1
  391. package/dist/confluent/tools/handlers/tableflow/topic/list-tableflow-topics-handler.d.ts +3 -3
  392. package/dist/confluent/tools/handlers/tableflow/topic/list-tableflow-topics-handler.d.ts.map +1 -1
  393. package/dist/confluent/tools/handlers/tableflow/topic/list-tableflow-topics-handler.js +2 -2
  394. package/dist/confluent/tools/handlers/tableflow/topic/list-tableflow-topics-handler.js.map +1 -1
  395. package/dist/confluent/tools/handlers/tableflow/topic/read-tableflow-topic-handler.d.ts +3 -3
  396. package/dist/confluent/tools/handlers/tableflow/topic/read-tableflow-topic-handler.d.ts.map +1 -1
  397. package/dist/confluent/tools/handlers/tableflow/topic/read-tableflow-topic-handler.js +2 -2
  398. package/dist/confluent/tools/handlers/tableflow/topic/read-tableflow-topic-handler.js.map +1 -1
  399. package/dist/confluent/tools/handlers/tableflow/topic/update-tableflow-topic-handler.d.ts +3 -3
  400. package/dist/confluent/tools/handlers/tableflow/topic/update-tableflow-topic-handler.d.ts.map +1 -1
  401. package/dist/confluent/tools/handlers/tableflow/topic/update-tableflow-topic-handler.js +1 -1
  402. package/dist/confluent/tools/handlers/tableflow/topic/update-tableflow-topic-handler.js.map +1 -1
  403. package/dist/confluent/tools/pagination.d.ts +31 -0
  404. package/dist/confluent/tools/pagination.d.ts.map +1 -0
  405. package/dist/confluent/tools/pagination.js +40 -0
  406. package/dist/confluent/tools/pagination.js.map +1 -0
  407. package/dist/confluent/tools/tool-availability.d.ts +63 -32
  408. package/dist/confluent/tools/tool-availability.d.ts.map +1 -1
  409. package/dist/confluent/tools/tool-availability.js +101 -69
  410. package/dist/confluent/tools/tool-availability.js.map +1 -1
  411. package/dist/confluent/tools/tool-input-error.d.ts +17 -0
  412. package/dist/confluent/tools/tool-input-error.d.ts.map +1 -0
  413. package/dist/confluent/tools/tool-input-error.js +23 -0
  414. package/dist/confluent/tools/tool-input-error.js.map +1 -0
  415. package/dist/confluent/tools/tool-metadata-handler.d.ts +52 -0
  416. package/dist/confluent/tools/tool-metadata-handler.d.ts.map +1 -0
  417. package/dist/confluent/tools/tool-metadata-handler.js +61 -0
  418. package/dist/confluent/tools/tool-metadata-handler.js.map +1 -0
  419. package/dist/confluent/tools/tool-name.d.ts +7 -2
  420. package/dist/confluent/tools/tool-name.d.ts.map +1 -1
  421. package/dist/confluent/tools/tool-name.js +6 -1
  422. package/dist/confluent/tools/tool-name.js.map +1 -1
  423. package/dist/confluent/tools/tool-registry.d.ts +1 -1
  424. package/dist/confluent/tools/tool-registry.d.ts.map +1 -1
  425. package/dist/confluent/tools/tool-registry.js +24 -2
  426. package/dist/confluent/tools/tool-registry.js.map +1 -1
  427. package/dist/env-schema.d.ts +0 -1
  428. package/dist/env-schema.d.ts.map +1 -1
  429. package/dist/env-schema.js +0 -7
  430. package/dist/env-schema.js.map +1 -1
  431. package/dist/env.d.ts +1 -2
  432. package/dist/env.d.ts.map +1 -1
  433. package/dist/index.d.ts +54 -64
  434. package/dist/index.d.ts.map +1 -1
  435. package/dist/index.js +78 -324
  436. package/dist/index.js.map +1 -1
  437. package/dist/lazy.d.ts +4 -2
  438. package/dist/lazy.d.ts.map +1 -1
  439. package/dist/lazy.js +27 -12
  440. package/dist/lazy.js.map +1 -1
  441. package/dist/logger.d.ts +1 -1
  442. package/dist/logger.d.ts.map +1 -1
  443. package/dist/mcp/server.d.ts +6 -4
  444. package/dist/mcp/server.d.ts.map +1 -1
  445. package/dist/mcp/server.js +19 -6
  446. package/dist/mcp/server.js.map +1 -1
  447. package/dist/mcp/transports/auth.d.ts +1 -1
  448. package/dist/mcp/transports/auth.d.ts.map +1 -1
  449. package/dist/mcp/transports/http.d.ts +3 -3
  450. package/dist/mcp/transports/http.d.ts.map +1 -1
  451. package/dist/mcp/transports/manager.d.ts +1 -1
  452. package/dist/mcp/transports/manager.d.ts.map +1 -1
  453. package/dist/mcp/transports/manager.js.map +1 -1
  454. package/dist/mcp/transports/ping.d.ts +1 -1
  455. package/dist/mcp/transports/ping.d.ts.map +1 -1
  456. package/dist/mcp/transports/server.d.ts +3 -3
  457. package/dist/mcp/transports/server.d.ts.map +1 -1
  458. package/dist/mcp/transports/server.js +1 -1
  459. package/dist/mcp/transports/server.js.map +1 -1
  460. package/dist/mcp/transports/sse.d.ts +3 -3
  461. package/dist/mcp/transports/sse.d.ts.map +1 -1
  462. package/dist/mcp/transports/stdio.d.ts +2 -2
  463. package/dist/mcp/transports/stdio.d.ts.map +1 -1
  464. package/dist/preflight.d.ts +33 -0
  465. package/dist/preflight.d.ts.map +1 -0
  466. package/dist/preflight.js +68 -0
  467. package/dist/preflight.js.map +1 -0
  468. package/dist/print-md-schema.js +21 -18
  469. package/dist/print-md-schema.js.map +1 -1
  470. package/dist/server-main.d.ts +104 -0
  471. package/dist/server-main.d.ts.map +1 -0
  472. package/dist/server-main.js +410 -0
  473. package/dist/server-main.js.map +1 -0
  474. package/dist/server-runtime.d.ts +22 -7
  475. package/dist/server-runtime.d.ts.map +1 -1
  476. package/dist/server-runtime.js +45 -28
  477. package/dist/server-runtime.js.map +1 -1
  478. package/dist/utils/quote-join-ids.d.ts +9 -0
  479. package/dist/utils/quote-join-ids.d.ts.map +1 -0
  480. package/dist/utils/quote-join-ids.js +11 -0
  481. package/dist/utils/quote-join-ids.js.map +1 -0
  482. package/package.json +37 -35
  483. package/dist/confluent/tools/handlers/flink/read-flink-statement-handler.d.ts +0 -9
  484. package/dist/confluent/tools/handlers/flink/read-flink-statement-handler.d.ts.map +0 -1
  485. package/dist/confluent/tools/handlers/flink/read-flink-statement-handler.js.map +0 -1
  486. package/dist/confluent/tools/handlers/kafka/topic-metadata.d.ts +0 -18
  487. package/dist/confluent/tools/handlers/kafka/topic-metadata.d.ts.map +0 -1
  488. package/dist/confluent/tools/handlers/kafka/topic-metadata.js +0 -18
  489. package/dist/confluent/tools/handlers/kafka/topic-metadata.js.map +0 -1
@@ -3,23 +3,33 @@
3
3
  * It handles schema registration, serialization, and deserialization of messages
4
4
  * using various schema formats (AVRO, JSON, PROTOBUF).
5
5
  */
6
- import { AvroDeserializer, AvroSerializer, JsonDeserializer, JsonSerializer, ProtobufDeserializer, ProtobufSerializer, SerdeType, } from "@confluentinc/schemaregistry";
6
+ import { createFileRegistry, createMutableRegistry, fromBinary, fromJson, } from "@bufbuild/protobuf";
7
+ import { FileDescriptorProtoSchema, FileDescriptorSetSchema, } from "@bufbuild/protobuf/wkt";
8
+ import { AvroDeserializer, AvroSerializer, HeaderSchemaIdSerializer, JsonDeserializer, JsonSerializer, ProtobufDeserializer, ProtobufSerializer, SchemaId, SerdeType, } from "@confluentinc/schemaregistry";
7
9
  import { logger } from "../logger.js";
10
+ import protobuf from "protobufjs";
11
+ import descriptor from "protobufjs/ext/descriptor/index.js";
8
12
  /**
9
13
  * Creates and returns the appropriate serializer instance based on schema type.
10
- * The serializer is configured to use either a specific schema ID or the latest version.
14
+ *
15
+ * This is a pure factory: it maps a {@link SchemaType} to its serializer
16
+ * constructor and forwards the caller-built {@link SerializerConfig}. The
17
+ * format-specific *decisions* — schema-id vs. use-latest for AVRO/JSON, plus the descriptor registry for PROTOBUF — live
18
+ * with the callers ({@link serializeMessage}, {@link serializeProtobufMessage}),
19
+ * which is why the config arrives ready-made. For PROTOBUF the descriptor
20
+ * registry rides inside the config as its optional `registry` field
21
+ * (`ProtobufSerializerConfig = SerializerConfig & { registry?: MutableRegistry }`).
11
22
  *
12
23
  * @param schemaType - The type of schema (AVRO, JSON, PROTOBUF)
13
24
  * @param registry - The schema registry client instance
14
25
  * @param serdeType - Whether this is for key or value serialization
15
- * @param schemaId - Optional schema ID to use for serialization
26
+ * @param serializerConfig - The serializer configuration to forward (use-latest,
27
+ * use-schema-id, the optional `schemaIdLocation` header serializer, and/or the
28
+ * PROTOBUF descriptor registry)
16
29
  * @returns The appropriate Serializer instance
17
30
  * @throws Error if the schema type is unknown or unsupported
18
31
  */
19
- export function getSerializer(schemaType, registry, serdeType, schemaId) {
20
- const serializerConfig = typeof schemaId === "number"
21
- ? { useSchemaId: schemaId }
22
- : { useLatestVersion: true };
32
+ export function getSerializer(schemaType, registry, serdeType, serializerConfig) {
23
33
  const serializers = {
24
34
  AVRO: () => new AvroSerializer(registry, serdeType, serializerConfig),
25
35
  JSON: () => new JsonSerializer(registry, serdeType, serializerConfig),
@@ -104,6 +114,191 @@ export async function getLatestSchemaIfExists(registry, subject) {
104
114
  throw err;
105
115
  }
106
116
  }
117
+ /**
118
+ * Fetches the latest registered schema for a subject and asserts it matches the
119
+ * requested schema type. Without this guard a use-latest produce against a
120
+ * subject registered with a different format fails deep inside the serializer
121
+ * with an opaque parse/decode error (e.g. an AvroSerializer trying to parse a
122
+ * JSON schema string, or the Protobuf path base64-decoding an Avro schema);
123
+ * surfacing the mismatch here gives the caller an actionable message instead.
124
+ *
125
+ * @param registry - The schema registry client instance
126
+ * @param subject - The resolved Schema Registry subject
127
+ * @param expected - The schema type the caller asked to produce with
128
+ * @returns The latest schema string and (matching) schema type
129
+ * @throws Error if no schema is registered for the subject, or the registered
130
+ * schema type differs from `expected`
131
+ */
132
+ export async function getLatestSchemaOfTypeOrThrow(registry, subject, expected) {
133
+ const latest = await getLatestSchemaIfExists(registry, subject);
134
+ if (!latest) {
135
+ throw new Error(`No ${expected} schema registered for subject '${subject}', and none provided.`);
136
+ }
137
+ if (latest.schemaType !== expected) {
138
+ throw new Error(`Subject '${subject}' is registered as ${latest.schemaType}, but the requested schemaType is ${expected}. ` +
139
+ `Use the matching schemaType, or produce to a different subject.`);
140
+ }
141
+ return latest;
142
+ }
143
+ /**
144
+ * Builds a `@bufbuild/protobuf` descriptor registry from raw `.proto` schema text.
145
+ *
146
+ * The `@confluentinc/schemaregistry` ProtobufSerializer encodes locally against
147
+ * a descriptor registry, so we parse the `.proto` text with protobufjs, export
148
+ * it to a canonical `FileDescriptorSet` (the standard `google.protobuf` wire
149
+ * format), and read that into a registry. This is the path used when the caller
150
+ * supplies the schema on a produce.
151
+ *
152
+ * @param protoText - The `.proto` schema definition (proto3)
153
+ * @returns A mutable descriptor registry the serializer can consume
154
+ * @throws Error if the `.proto` text cannot be parsed
155
+ */
156
+ export function protobufRegistryFromProto(protoText) {
157
+ try {
158
+ const root = protobuf.parse(protoText, { keepCase: true }).root;
159
+ root.resolveAll();
160
+ // protobufjs/ext/descriptor exposes FileDescriptorSet and augments Root with
161
+ // toDescriptor at runtime, but v8's bundled types no longer declare either on
162
+ // the exported shape, so narrow both locally.
163
+ const FileDescriptorSet = descriptor.FileDescriptorSet;
164
+ const toDescriptor = root.toDescriptor;
165
+ const fileDescriptorSet = toDescriptor.call(root, "proto3");
166
+ const bytes = FileDescriptorSet.encode(fileDescriptorSet).finish();
167
+ return createMutableRegistry(createFileRegistry(fromBinary(FileDescriptorSetSchema, bytes)));
168
+ }
169
+ catch (err) {
170
+ throw new Error(`Failed to parse Protobuf schema: ${err instanceof Error ? err.message : String(err)}`);
171
+ }
172
+ }
173
+ /**
174
+ * Serialize a message when Schema Registry is not in use: a string passes
175
+ * through verbatim, anything else is JSON-encoded. Warns on a non-string
176
+ * payload, which a schema-bearing topic will likely reject.
177
+ */
178
+ function serializeWithoutSchemaRegistry(message) {
179
+ if (typeof message !== "string") {
180
+ logger.warn("Warning: Sending non-string message without schema registry. This may fail if the topic expects a schema.");
181
+ }
182
+ return typeof message === "string" ? message : JSON.stringify(message);
183
+ }
184
+ /**
185
+ * Validate the preconditions for Schema Registry serialization, narrowing
186
+ * `registry` to non-undefined for the caller. Throws an actionable error when
187
+ * the schema type is missing, no registry client is configured, or header
188
+ * mode was requested without a record-header accumulator. The
189
+ * HeaderSchemaIdSerializer writes the schema-id header into the headers object
190
+ * it's handed; with no accumulator the library otherwise throws a cryptic
191
+ * "Missing Headers", so fail fast here instead.
192
+ */
193
+ function assertSchemaRegistrySerializable(options, registry, recordHeaders) {
194
+ if (!options.schemaType) {
195
+ throw new Error("schemaType is required when useSchemaRegistry is true");
196
+ }
197
+ if (!registry) {
198
+ throw new Error("Schema Registry client is required for serialization");
199
+ }
200
+ if (options.schemaIdLocation === "header" && !recordHeaders) {
201
+ throw new Error("schemaIdLocation 'header' requires a record-header accumulator to write the schema-id header into.");
202
+ }
203
+ }
204
+ /**
205
+ * Register the caller-supplied schema under `subject` and return its assigned
206
+ * id, or undefined when no schema was supplied (the use-latest path). Wraps a
207
+ * registration failure in a subject-scoped error.
208
+ */
209
+ async function registerSchemaIfProvided(registry, subject, options) {
210
+ if (!options.schema) {
211
+ return undefined;
212
+ }
213
+ try {
214
+ return await registry.register(subject, {
215
+ schema: options.schema,
216
+ schemaType: options.schemaType,
217
+ }, options.normalize);
218
+ }
219
+ catch (err) {
220
+ throw new Error(`Failed to register schema for subject '${subject}': ${err}`);
221
+ }
222
+ }
223
+ /**
224
+ * Builds a descriptor registry from a Protobuf schema as stored in Schema
225
+ * Registry — a base64-encoded `FileDescriptorProto` (the "serialized" format
226
+ * this SDK reads/writes). Used on the use-latest produce path, where the schema
227
+ * was previously registered by the serializer rather than supplied as text.
228
+ *
229
+ * @param serializedSchema - base64-encoded `FileDescriptorProto`
230
+ * @returns A mutable descriptor registry the serializer can consume
231
+ * @throws Error if the stored schema cannot be decoded
232
+ */
233
+ export function protobufRegistryFromSerialized(serializedSchema) {
234
+ try {
235
+ const fileDescriptorProto = fromBinary(FileDescriptorProtoSchema, Buffer.from(serializedSchema, "base64"));
236
+ // Single self-contained file: no external dependencies to resolve.
237
+ return createMutableRegistry(createFileRegistry(fileDescriptorProto, () => undefined));
238
+ }
239
+ catch (err) {
240
+ throw new Error(`Failed to decode registered Protobuf schema: ${err instanceof Error ? err.message : String(err)}`);
241
+ }
242
+ }
243
+ /**
244
+ * Builds a descriptor registry from a Protobuf schema as stored in Schema
245
+ * Registry, regardless of which client registered it. Two formats are in the
246
+ * wild for the same subject: this SDK's own serializer stores a base64
247
+ * `FileDescriptorProto` (see {@link protobufRegistryFromSerialized}), while the
248
+ * standard Schema Registry REST API (and other clients) store literal `.proto`
249
+ * source text (see {@link protobufRegistryFromProto}). The stored schema
250
+ * carries no explicit tag for which one it is, so this tries the serialized
251
+ * form first and falls back to `.proto` text parsing on failure.
252
+ *
253
+ * @param storedSchema - The schema string as returned by the registry for the
254
+ * subject (either base64 `FileDescriptorProto` or `.proto` text)
255
+ * @returns A mutable descriptor registry the serializer can consume
256
+ * @throws Error if the stored schema matches neither format
257
+ */
258
+ export function protobufRegistryFromStoredSchema(storedSchema) {
259
+ try {
260
+ return protobufRegistryFromSerialized(storedSchema);
261
+ }
262
+ catch (serializedErr) {
263
+ try {
264
+ return protobufRegistryFromProto(storedSchema);
265
+ }
266
+ catch (protoErr) {
267
+ throw new Error("Failed to parse registered Protobuf schema as either a serialized " +
268
+ `FileDescriptorProto (${serializedErr instanceof Error ? serializedErr.message : String(serializedErr)}) ` +
269
+ `or .proto text (${protoErr instanceof Error ? protoErr.message : String(protoErr)}).`);
270
+ }
271
+ }
272
+ }
273
+ /**
274
+ * Converts a plain JS payload into a typed `@bufbuild/protobuf` message (carrying
275
+ * the `$typeName` the ProtobufSerializer requires) using a descriptor registry.
276
+ *
277
+ * @param registry - Descriptor registry containing the target message type
278
+ * @param messageName - Fully-qualified message type name (e.g. `com.example.User`)
279
+ * @param payload - The payload to encode. Keys may use either the proto field
280
+ * name (`user_id`) or its auto-generated camelCase JSON name (`userId`):
281
+ * `fromJson` accepts both and maps them onto the same field. Keys that match
282
+ * neither are rejected as unknown fields.
283
+ * @returns The typed protobuf message
284
+ * @throws Error if `messageName` does not match a message in the registry (the
285
+ * error lists the available names)
286
+ */
287
+ export function protobufMessageFrom(registry, messageName, payload) {
288
+ const messageDesc = registry.getMessage(messageName);
289
+ if (!messageDesc) {
290
+ const available = [];
291
+ for (const type of registry) {
292
+ if (type.kind === "message") {
293
+ available.push(type.typeName);
294
+ }
295
+ }
296
+ throw new Error(`Protobuf message type '${messageName}' not found in schema. ` +
297
+ `Available message types: ${available.join(", ") || "(none)"}. ` +
298
+ `Provide the fully-qualified name including the package (e.g. com.example.User).`);
299
+ }
300
+ return fromJson(messageDesc, payload);
301
+ }
107
302
  /**
108
303
  * Serializes a message using the provided options and schema registry configuration.
109
304
  * This function:
@@ -116,58 +311,137 @@ export async function getLatestSchemaIfExists(registry, subject) {
116
311
  * @param options - The message options including schema, type, and payload
117
312
  * @param serdeType - Whether this is for key or value serialization
118
313
  * @param registry - The schema registry client instance (if used)
314
+ * @param recordHeaders - Mutable record-header accumulator. Required for
315
+ * `schemaIdLocation: "header"`, where the serializer writes the schema-id
316
+ * header into it; ignored by the payload format and the raw (non-registry) path.
119
317
  * @returns The serialized message as a Buffer or string
120
318
  * @throws Error if serialization fails, schema registration fails, or message type is invalid
121
319
  */
122
- export async function serializeMessage(topicName, options, serdeType, registry) {
320
+ export async function serializeMessage(topicName, options, serdeType, registry, recordHeaders) {
123
321
  if (!options.useSchemaRegistry) {
124
- if (typeof options.message !== "string") {
125
- logger.warn("Warning: Sending non-string message without schema registry. This may fail if the topic expects a schema.");
126
- }
127
- return typeof options.message === "string"
128
- ? options.message
129
- : JSON.stringify(options.message);
322
+ return serializeWithoutSchemaRegistry(options.message);
130
323
  }
131
- if (!options.schemaType) {
132
- throw new Error("schemaType is required when useSchemaRegistry is true");
133
- }
134
- if (!registry) {
135
- throw new Error("Schema Registry client is required for serialization");
136
- }
137
- // Default subject naming
324
+ assertSchemaRegistrySerializable(options, registry, recordHeaders);
138
325
  const subject = options.subject ||
139
326
  `${topicName}-${serdeType === SerdeType.KEY ? "key" : "value"}`;
140
- let schemaId;
141
- // Register schema if provided
142
- if (options.schema) {
143
- try {
144
- schemaId = await registry.register(subject, {
145
- schema: options.schema,
146
- schemaType: options.schemaType,
147
- }, options.normalize);
148
- }
149
- catch (err) {
150
- throw new Error(`Failed to register schema for subject '${subject}': ${err}`);
151
- }
327
+ const schemaId = await registerSchemaIfProvided(registry, subject, options);
328
+ // Protobuf takes a separate path: the serializer encodes locally against a
329
+ // @bufbuild/protobuf descriptor and registers/looks up the schema itself in
330
+ // the "serialized" (base64 FileDescriptorProto) format that the deserializer
331
+ // reads back. Registering raw .proto text here (the Avro/JSON path) would
332
+ // produce bytes that fail to deserialize, so we don't reuse it.
333
+ if (options.schemaType === "PROTOBUF") {
334
+ return serializeProtobufMessage(topicName, subject, options, serdeType, registry);
152
335
  }
153
- // Validate message type
154
- if (typeof options.message !== "object" || options.message === null) {
155
- throw new Error("When using schema registry, message must be an object matching the schema.");
336
+ // Primitives (number/boolean/string) are valid payloads for top-level
337
+ // primitive schemas (e.g. Avro "long"); only null/undefined is rejected here
338
+ // because the serializer refuses it with a cryptic "message is empty". Every
339
+ // other shape is validated against the actual schema by the serializer.
340
+ // Validate the payload before any registry lookup below.
341
+ if (options.message === null || options.message === undefined) {
342
+ throw new Error("When using schema registry, a non-null message payload is required.");
343
+ }
344
+ // Use-latest path (no schema supplied): confirm the registered schema is the
345
+ // requested type so a mismatch fails with an actionable message here rather
346
+ // than as an opaque parse error inside the serializer's lazy useLatestVersion
347
+ // fetch.
348
+ if (schemaId === undefined && options.schemaType) {
349
+ await getLatestSchemaOfTypeOrThrow(registry, subject, options.schemaType);
350
+ }
351
+ const serializerConfig = typeof schemaId === "number"
352
+ ? { useSchemaId: schemaId }
353
+ : { useLatestVersion: true };
354
+ if (options.schemaIdLocation === "header") {
355
+ serializerConfig.schemaIdSerializer = HeaderSchemaIdSerializer;
156
356
  }
157
357
  let serializer;
158
358
  try {
159
- serializer = getSerializer(options.schemaType, registry, serdeType, schemaId);
359
+ serializer = getSerializer(options.schemaType, registry, serdeType, serializerConfig);
160
360
  }
161
361
  catch (err) {
162
362
  throw new Error(`Failed to get serializer: ${err}`);
163
363
  }
164
364
  try {
165
- return await serializer.serialize(topicName, options.message);
365
+ return await serializer.serialize(topicName, options.message, recordHeaders);
166
366
  }
167
367
  catch (err) {
168
368
  throw new Error(`Failed to serialize message for subject '${subject}': ${err}`);
169
369
  }
170
370
  }
371
+ /**
372
+ * Serializes a Protobuf payload, registering or looking up the schema in the
373
+ * format the SDK's deserializer can read back.
374
+ *
375
+ * - When no schema is supplied (use-latest), the previously-registered schema is
376
+ * fetched, its descriptor rebuilt from the stored form (serialized
377
+ * `FileDescriptorProto` or `.proto` text, whichever it turns out to be — see
378
+ * {@link protobufRegistryFromStoredSchema}), and the serializer uses the
379
+ * latest version.
380
+ *
381
+ * The payload is always converted into a typed `@bufbuild/protobuf` message
382
+ * (carrying `$typeName`) before serialization.
383
+ *
384
+ * @param topicName - The Kafka topic name
385
+ * @param subject - The resolved Schema Registry subject
386
+ * @param options - The message options (must have `schemaType === "PROTOBUF"`)
387
+ * @param registry - The schema registry client
388
+ * @returns The serialized message bytes
389
+ * @throws Error if `messageName` is missing, the schema is unavailable, or
390
+ * serialization fails
391
+ */
392
+ async function serializeProtobufMessage(topicName, subject, options, serdeType, registry) {
393
+ if (!options.messageName) {
394
+ throw new Error("messageName is required when schemaType is PROTOBUF (e.g. com.example.User).");
395
+ }
396
+ // Header schema-id mode isn't supported for PROTOBUF yet, so reject it
397
+ // explicitly: otherwise the produce would silently fall back to the payload
398
+ // wire format and write a message that doesn't match what the caller asked
399
+ // for. Header support for AVRO/JSON landed in #607; protobuf parity is a
400
+ // separate follow-up in #633.
401
+ if (options.schemaIdLocation === "header") {
402
+ throw new Error("schemaIdLocation 'header' is not supported for PROTOBUF yet; use the default payload format.");
403
+ }
404
+ let protobufRegistry;
405
+ let serializerConfig;
406
+ if (options.schema) {
407
+ // Provide path: the serializer registers the schema in the binary format
408
+ // the deserializer expects. subjectNameStrategy overrides TopicNameStrategy
409
+ // so the serializer uses the caller-resolved subject instead of deriving
410
+ // one from the topic name.
411
+ protobufRegistry = protobufRegistryFromProto(options.schema);
412
+ serializerConfig = {
413
+ normalizeSchemas: Boolean(options.normalize),
414
+ autoRegisterSchemas: true,
415
+ subjectNameStrategy: () => subject,
416
+ };
417
+ }
418
+ else {
419
+ // Use-latest path: rebuild the descriptor from the stored schema, which may
420
+ // be either this SDK's serialized format or literal .proto text registered
421
+ // via the REST API (issue #720).
422
+ const latest = await getLatestSchemaOfTypeOrThrow(registry, subject, "PROTOBUF");
423
+ protobufRegistry = protobufRegistryFromStoredSchema(latest.schema);
424
+ serializerConfig = {
425
+ useLatestVersion: true,
426
+ subjectNameStrategy: () => subject,
427
+ };
428
+ }
429
+ const message = protobufMessageFrom(protobufRegistry, options.messageName, options.message);
430
+ // The descriptor registry rides inside the config: ProtobufSerializer reads
431
+ // its optional `registry` field to encode locally. getSerializer forwards the
432
+ // whole config, so PROTOBUF flows through the same factory as AVRO/JSON.
433
+ const protobufConfig = {
434
+ ...serializerConfig,
435
+ registry: protobufRegistry,
436
+ };
437
+ const serializer = getSerializer("PROTOBUF", registry, serdeType, protobufConfig);
438
+ try {
439
+ return await serializer.serialize(topicName, message);
440
+ }
441
+ catch (err) {
442
+ throw new Error(`Failed to serialize message for subject '${subject}': ${err instanceof Error ? err.message : String(err)}`);
443
+ }
444
+ }
171
445
  /**
172
446
  * Deserializes a message using Schema Registry.
173
447
  * This function:
@@ -179,16 +453,38 @@ export async function serializeMessage(topicName, options, serdeType, registry)
179
453
  * @param schemaType - The schema type (AVRO, JSON, PROTOBUF)
180
454
  * @param registry - The schema registry client
181
455
  * @param serdeType - Whether this is key or value
456
+ * @param headers - Raw record headers. When present, the default dual
457
+ * deserializer reads a header-located schema ID (__value_schema_id /
458
+ * __key_schema_id) before falling back to the magic-byte prefix.
182
459
  * @returns The deserialized object
183
460
  * @throws Error if deserialization fails
184
461
  */
185
- export async function deserializeMessage(topic, message, schemaType, registry, serdeType) {
462
+ export async function deserializeMessage(topic, message, schemaType, registry, serdeType, headers) {
186
463
  try {
187
464
  const deserializer = getDeserializer(schemaType, registry, serdeType);
188
- return await deserializer.deserialize(topic, message);
465
+ return await deserializer.deserialize(topic, message, headers);
189
466
  }
190
467
  catch (err) {
191
468
  throw new Error(`Failed to deserialize message: ${err}`);
192
469
  }
193
470
  }
471
+ /**
472
+ * Decode a header-located schema-id record-header value into its canonical
473
+ * schema GUID string. The header wire format (written by the serde library's
474
+ * HeaderSchemaIdSerializer) is MAGIC_BYTE_V1 followed by the 16-byte GUID; the
475
+ * schema type only governs the Protobuf message-index tail that the GUID read
476
+ * ignores, so a fixed type is safe here. Returns null when the bytes aren't a
477
+ * recognizable GUID header (e.g. a payload-format magic-byte-0 buffer, or
478
+ * garbage), letting the caller fall back to echoing the raw value.
479
+ */
480
+ export function decodeSchemaGuidHeader(headerValue) {
481
+ try {
482
+ const schemaId = new SchemaId("AVRO");
483
+ schemaId.fromBytes(headerValue);
484
+ return schemaId.guid ?? null;
485
+ }
486
+ catch {
487
+ return null;
488
+ }
489
+ }
194
490
  //# sourceMappingURL=schema-registry-helper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema-registry-helper.js","sourceRoot":"","sources":["../../src/confluent/schema-registry-helper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema-registry-helper.js","sourceRoot":"","sources":["../../src/confluent/schema-registry-helper.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { CallToolResultSchema } from "@modelcontextprotocol/sdk/types.js";
2
- import { z } from "zod";
1
+ import type { CallToolResultSchema } from "@modelcontextprotocol/sdk/types.js";
2
+ import type { z } from "zod";
3
3
  export type CallToolResult = z.infer<typeof CallToolResultSchema>;
4
4
  //# sourceMappingURL=schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/confluent/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/confluent/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAE7B,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { ErrorEvent } from "@sentry/node";
2
+ export declare const REDACTED = "[REDACTED]";
3
+ /** `beforeSend` hook: deep-scrub credentials from an outbound Sentry event. */
4
+ export declare function redactEvent(event: ErrorEvent): ErrorEvent;
5
+ //# sourceMappingURL=sentry-redact.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sentry-redact.d.ts","sourceRoot":"","sources":["../../src/confluent/sentry-redact.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C,eAAO,MAAM,QAAQ,eAAe,CAAC;AA+DrC,+EAA+E;AAC/E,wBAAgB,WAAW,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU,CAEzD"}
@@ -0,0 +1,64 @@
1
+ export const REDACTED = "[REDACTED]";
2
+ // Object keys whose entire value is replaced. Compared after lowercasing and
3
+ // stripping `-`/`_`/`.`, so `x-api-key`, `api_key`, `sasl.password`, etc. match.
4
+ const SENSITIVE_KEYS = new Set([
5
+ "authorization",
6
+ "cookie",
7
+ "setcookie",
8
+ "xapikey",
9
+ "apikey",
10
+ "apisecret",
11
+ "password",
12
+ "saslpassword",
13
+ "secret",
14
+ "token",
15
+ "bearer",
16
+ "accesstoken",
17
+ "refreshtoken",
18
+ ]);
19
+ function isSensitiveKey(key) {
20
+ return SENSITIVE_KEYS.has(key.toLowerCase().replace(/[-_.]/g, ""));
21
+ }
22
+ /** Free-text patterns scrubbed inside any string value (error messages, YAML blobs). */
23
+ const TEXT_PATTERNS = [
24
+ // Authorization scheme + credential.
25
+ [/\b(Bearer|Basic)\s+[\w\-.~+/]+=*/gi, `$1 ${REDACTED}`],
26
+ // sensitive key in `key: value` or `key=value` form (YAML + query/SASL).
27
+ [
28
+ /\b(password|secret|token|api[_-]?(?:key|secret)|sasl[._-]?password)\b(\s*[:=]\s*["']?)([^\s"',}]+)/gi,
29
+ `$1$2${REDACTED}`,
30
+ ],
31
+ // High-entropy standalone token (Confluent secret shape: >=40 base64 chars).
32
+ [/\b[A-Za-z0-9+/]{40,}={0,2}\b/g, REDACTED],
33
+ ];
34
+ function scrubString(value) {
35
+ let out = value;
36
+ for (const [pattern, replacement] of TEXT_PATTERNS) {
37
+ out = out.replace(pattern, replacement);
38
+ }
39
+ return out;
40
+ }
41
+ function scrub(value, seen) {
42
+ if (typeof value === "string")
43
+ return scrubString(value);
44
+ if (value === null || typeof value !== "object")
45
+ return value;
46
+ if (seen.has(value))
47
+ return value;
48
+ seen.add(value);
49
+ if (Array.isArray(value)) {
50
+ for (let i = 0; i < value.length; i++)
51
+ value[i] = scrub(value[i], seen);
52
+ return value;
53
+ }
54
+ const record = value;
55
+ for (const key of Object.keys(record)) {
56
+ record[key] = isSensitiveKey(key) ? REDACTED : scrub(record[key], seen);
57
+ }
58
+ return record;
59
+ }
60
+ /** `beforeSend` hook: deep-scrub credentials from an outbound Sentry event. */
61
+ export function redactEvent(event) {
62
+ return scrub(event, new WeakSet());
63
+ }
64
+ //# sourceMappingURL=sentry-redact.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sentry-redact.js","sourceRoot":"","sources":["../../src/confluent/sentry-redact.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,QAAQ,GAAG,YAAY,CAAC;AAErC,6EAA6E;AAC7E,iFAAiF;AACjF,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC;IAC7B,eAAe;IACf,QAAQ;IACR,WAAW;IACX,SAAS;IACT,QAAQ;IACR,WAAW;IACX,UAAU;IACV,cAAc;IACd,QAAQ;IACR,OAAO;IACP,QAAQ;IACR,aAAa;IACb,cAAc;CACf,CAAC,CAAC;AAEH,SAAS,cAAc,CAAC,GAAW;IACjC,OAAO,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;AACrE,CAAC;AAED,wFAAwF;AACxF,MAAM,aAAa,GAAoC;IACrD,qCAAqC;IACrC,CAAC,oCAAoC,EAAE,MAAM,QAAQ,EAAE,CAAC;IACxD,yEAAyE;IACzE;QACE,sGAAsG;QACtG,OAAO,QAAQ,EAAE;KAClB;IACD,6EAA6E;IAC7E,CAAC,+BAA+B,EAAE,QAAQ,CAAC;CAC5C,CAAC;AAEF,SAAS,WAAW,CAAC,KAAa;IAChC,IAAI,GAAG,GAAG,KAAK,CAAC;IAChB,KAAK,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,IAAI,aAAa,EAAE,CAAC;QACnD,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAC1C,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,KAAK,CAAC,KAAc,EAAE,IAAqB;IAClD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC;IACzD,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC9D,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAClC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAEhB,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE;YAAE,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QACxE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,MAAM,GAAG,KAAgC,CAAC;IAChD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACtC,MAAM,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC;IAC1E,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,WAAW,CAAC,KAAiB;IAC3C,OAAO,KAAK,CAAC,KAAK,EAAE,IAAI,OAAO,EAAE,CAAe,CAAC;AACnD,CAAC"}
@@ -0,0 +1,23 @@
1
+ /** DSN baked at pack time; empty (-> disabled) on dev/unpacked builds. */
2
+ export declare function resolveSentryDsn(): string | undefined;
3
+ export interface InitSentryOptions {
4
+ readonly doNotTrack: boolean;
5
+ readonly dsn: string | undefined;
6
+ readonly release: string;
7
+ readonly transports: readonly string[];
8
+ /** Distinct connection auth types (e.g. ["direct", "oauth"]); no ids/secrets. */
9
+ readonly connectionTypes: readonly string[];
10
+ }
11
+ /**
12
+ * Initialize crash reporting. Short-circuits — no DSN registered, no transport,
13
+ * no global handlers — when the user has opted out or no DSN was baked in. Uses
14
+ * the same resolved `doNotTrack` value as usage analytics, so one switch
15
+ * disables both.
16
+ */
17
+ export declare function initSentry(opts: InitSentryOptions): void;
18
+ /** Report an error. No-op until {@link initSentry} has registered a client. */
19
+ export declare function captureException(error: unknown, context?: {
20
+ tags?: Record<string, string>;
21
+ }): void;
22
+ export declare function closeSentry(timeoutMs?: number): Promise<boolean>;
23
+ //# sourceMappingURL=sentry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sentry.d.ts","sourceRoot":"","sources":["../../src/confluent/sentry.ts"],"names":[],"mappings":"AAMA,0EAA0E;AAC1E,wBAAgB,gBAAgB,IAAI,MAAM,GAAG,SAAS,CAErD;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,iFAAiF;IACjF,QAAQ,CAAC,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;CAC7C;AAQD;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,iBAAiB,GAAG,IAAI,CAkCxD;AAED,+EAA+E;AAC/E,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,OAAO,EACd,OAAO,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,GAC1C,IAAI,CAGN;AAED,wBAAsB,WAAW,CAAC,SAAS,SAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAIpE"}