@decaf-ts/integrations 0.11.0 → 0.12.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 (496) hide show
  1. package/README.md +164 -0
  2. package/dist/integrations.cjs +1 -1
  3. package/dist/integrations.cjs.map +1 -1
  4. package/dist/integrations.js +1 -1
  5. package/dist/integrations.js.map +1 -1
  6. package/docker/mailpit-compose.yml +17 -0
  7. package/docker/postgres-compose.yml +26 -0
  8. package/lib/cjs/blob/azure/AzureBlobStoreService.cjs +12 -23
  9. package/lib/cjs/blob/azure/AzureBlobStoreService.cjs.map +1 -1
  10. package/lib/cjs/blob/core/BlobStoreService.cjs +26 -25
  11. package/lib/cjs/blob/core/BlobStoreService.cjs.map +1 -1
  12. package/lib/cjs/blob/gcp/GcsBlobStoreService.cjs +12 -23
  13. package/lib/cjs/blob/gcp/GcsBlobStoreService.cjs.map +1 -1
  14. package/lib/cjs/blob/s3/S3BlobStoreService.cjs +11 -16
  15. package/lib/cjs/blob/s3/S3BlobStoreService.cjs.map +1 -1
  16. package/lib/cjs/blob/s3/S3CompatibleBlobStoreService.cjs +14 -16
  17. package/lib/cjs/blob/s3/S3CompatibleBlobStoreService.cjs.map +1 -1
  18. package/lib/cjs/comms/email/EmailService.cjs +376 -0
  19. package/lib/cjs/comms/email/EmailService.cjs.map +1 -0
  20. package/lib/cjs/comms/email/index.cjs +29 -0
  21. package/lib/cjs/comms/email/index.cjs.map +1 -0
  22. package/lib/cjs/comms/email/mime.cjs +225 -0
  23. package/lib/cjs/comms/email/mime.cjs.map +1 -0
  24. package/lib/cjs/comms/email/smtp.cjs +204 -0
  25. package/lib/cjs/comms/email/smtp.cjs.map +1 -0
  26. package/lib/cjs/comms/environment.cjs +63 -0
  27. package/lib/cjs/comms/environment.cjs.map +1 -0
  28. package/lib/cjs/comms/gmail/GmailService.cjs +235 -0
  29. package/lib/cjs/comms/gmail/GmailService.cjs.map +1 -0
  30. package/lib/cjs/comms/gmail/index.cjs +24 -0
  31. package/lib/cjs/comms/gmail/index.cjs.map +1 -0
  32. package/lib/cjs/comms/index.cjs +31 -0
  33. package/lib/cjs/comms/index.cjs.map +1 -0
  34. package/lib/cjs/comms/slack/SlackService.cjs +264 -0
  35. package/lib/cjs/comms/slack/SlackService.cjs.map +1 -0
  36. package/lib/cjs/comms/slack/index.cjs +24 -0
  37. package/lib/cjs/comms/slack/index.cjs.map +1 -0
  38. package/lib/cjs/comms/teams/TeamsService.cjs +212 -0
  39. package/lib/cjs/comms/teams/TeamsService.cjs.map +1 -0
  40. package/lib/cjs/comms/teams/index.cjs +24 -0
  41. package/lib/cjs/comms/teams/index.cjs.map +1 -0
  42. package/lib/cjs/comms/telegram/TelegramService.cjs +196 -0
  43. package/lib/cjs/comms/telegram/TelegramService.cjs.map +1 -0
  44. package/lib/cjs/comms/telegram/index.cjs +24 -0
  45. package/lib/cjs/comms/telegram/index.cjs.map +1 -0
  46. package/lib/cjs/devops/environment.cjs +43 -0
  47. package/lib/cjs/devops/environment.cjs.map +1 -0
  48. package/lib/cjs/devops/github/GithubService.cjs +302 -0
  49. package/lib/cjs/devops/github/GithubService.cjs.map +1 -0
  50. package/lib/cjs/devops/github/index.cjs +24 -0
  51. package/lib/cjs/devops/github/index.cjs.map +1 -0
  52. package/lib/cjs/devops/gitlab/GitlabService.cjs +282 -0
  53. package/lib/cjs/devops/gitlab/GitlabService.cjs.map +1 -0
  54. package/lib/cjs/devops/gitlab/index.cjs +24 -0
  55. package/lib/cjs/devops/gitlab/index.cjs.map +1 -0
  56. package/lib/cjs/devops/index.cjs +28 -0
  57. package/lib/cjs/devops/index.cjs.map +1 -0
  58. package/lib/cjs/feature-flags/models/FeatureFlag.model.cjs +2 -0
  59. package/lib/cjs/feature-flags/models/FeatureFlag.model.cjs.map +1 -1
  60. package/lib/cjs/feature-flags/models/FeatureFlagAccess.model.cjs +2 -0
  61. package/lib/cjs/feature-flags/models/FeatureFlagAccess.model.cjs.map +1 -1
  62. package/lib/cjs/index.cjs +3 -3
  63. package/lib/cjs/io/airtable/AirtableService.cjs +266 -0
  64. package/lib/cjs/io/airtable/AirtableService.cjs.map +1 -0
  65. package/lib/cjs/io/airtable/index.cjs +24 -0
  66. package/lib/cjs/io/airtable/index.cjs.map +1 -0
  67. package/lib/cjs/io/environment.cjs +46 -0
  68. package/lib/cjs/io/environment.cjs.map +1 -0
  69. package/lib/cjs/io/google-sheets/GoogleSheetsService.cjs +288 -0
  70. package/lib/cjs/io/google-sheets/GoogleSheetsService.cjs.map +1 -0
  71. package/lib/cjs/io/google-sheets/index.cjs +24 -0
  72. package/lib/cjs/io/google-sheets/index.cjs.map +1 -0
  73. package/lib/cjs/io/graphql/GraphqlService.cjs +143 -0
  74. package/lib/cjs/io/graphql/GraphqlService.cjs.map +1 -0
  75. package/lib/cjs/io/graphql/index.cjs +24 -0
  76. package/lib/cjs/io/graphql/index.cjs.map +1 -0
  77. package/lib/cjs/io/index.cjs +30 -0
  78. package/lib/cjs/io/index.cjs.map +1 -0
  79. package/lib/cjs/io/spreadsheet/SpreadsheetService.cjs +205 -0
  80. package/lib/cjs/io/spreadsheet/SpreadsheetService.cjs.map +1 -0
  81. package/lib/cjs/io/spreadsheet/index.cjs +25 -0
  82. package/lib/cjs/io/spreadsheet/index.cjs.map +1 -0
  83. package/lib/cjs/namespaces/index.cjs +1 -0
  84. package/lib/cjs/namespaces/index.cjs.map +1 -1
  85. package/lib/cjs/namespaces/models/credential.model.cjs +115 -0
  86. package/lib/cjs/namespaces/models/credential.model.cjs.map +1 -0
  87. package/lib/cjs/namespaces/models/effective-permission.model.cjs +2 -0
  88. package/lib/cjs/namespaces/models/effective-permission.model.cjs.map +1 -1
  89. package/lib/cjs/namespaces/models/group-membership.model.cjs +2 -0
  90. package/lib/cjs/namespaces/models/group-membership.model.cjs.map +1 -1
  91. package/lib/cjs/namespaces/models/group.model.cjs +2 -0
  92. package/lib/cjs/namespaces/models/group.model.cjs.map +1 -1
  93. package/lib/cjs/namespaces/models/index.cjs +1 -0
  94. package/lib/cjs/namespaces/models/index.cjs.map +1 -1
  95. package/lib/cjs/namespaces/models/inheritance-block.model.cjs +2 -0
  96. package/lib/cjs/namespaces/models/inheritance-block.model.cjs.map +1 -1
  97. package/lib/cjs/namespaces/models/org-unit-closure.model.cjs +2 -0
  98. package/lib/cjs/namespaces/models/org-unit-closure.model.cjs.map +1 -1
  99. package/lib/cjs/namespaces/models/org-unit-membership.model.cjs +2 -0
  100. package/lib/cjs/namespaces/models/org-unit-membership.model.cjs.map +1 -1
  101. package/lib/cjs/namespaces/models/org-unit-profile.model.cjs +2 -0
  102. package/lib/cjs/namespaces/models/org-unit-profile.model.cjs.map +1 -1
  103. package/lib/cjs/namespaces/models/org-unit.model.cjs +2 -0
  104. package/lib/cjs/namespaces/models/org-unit.model.cjs.map +1 -1
  105. package/lib/cjs/namespaces/models/permission.model.cjs +2 -0
  106. package/lib/cjs/namespaces/models/permission.model.cjs.map +1 -1
  107. package/lib/cjs/namespaces/models/principal.model.cjs +2 -0
  108. package/lib/cjs/namespaces/models/principal.model.cjs.map +1 -1
  109. package/lib/cjs/namespaces/models/protected-resource.model.cjs +2 -0
  110. package/lib/cjs/namespaces/models/protected-resource.model.cjs.map +1 -1
  111. package/lib/cjs/namespaces/models/resource-grant.model.cjs +2 -0
  112. package/lib/cjs/namespaces/models/resource-grant.model.cjs.map +1 -1
  113. package/lib/cjs/namespaces/models/role-assignment.model.cjs +2 -0
  114. package/lib/cjs/namespaces/models/role-assignment.model.cjs.map +1 -1
  115. package/lib/cjs/namespaces/models/role-permission.model.cjs +2 -0
  116. package/lib/cjs/namespaces/models/role-permission.model.cjs.map +1 -1
  117. package/lib/cjs/namespaces/models/role.model.cjs +2 -0
  118. package/lib/cjs/namespaces/models/role.model.cjs.map +1 -1
  119. package/lib/cjs/namespaces/models/storage-binding.model.cjs +2 -0
  120. package/lib/cjs/namespaces/models/storage-binding.model.cjs.map +1 -1
  121. package/lib/cjs/namespaces/models/tenant-membership.model.cjs +2 -0
  122. package/lib/cjs/namespaces/models/tenant-membership.model.cjs.map +1 -1
  123. package/lib/cjs/namespaces/models/tenant-profile.model.cjs +2 -0
  124. package/lib/cjs/namespaces/models/tenant-profile.model.cjs.map +1 -1
  125. package/lib/cjs/namespaces/models/tenant.model.cjs +2 -0
  126. package/lib/cjs/namespaces/models/tenant.model.cjs.map +1 -1
  127. package/lib/cjs/namespaces/models/user.model.cjs +2 -0
  128. package/lib/cjs/namespaces/models/user.model.cjs.map +1 -1
  129. package/lib/cjs/namespaces/rls/index.cjs +28 -0
  130. package/lib/cjs/namespaces/rls/index.cjs.map +1 -0
  131. package/lib/cjs/namespaces/rls/principal-resolver.cjs +66 -0
  132. package/lib/cjs/namespaces/rls/principal-resolver.cjs.map +1 -0
  133. package/lib/cjs/namespaces/rls/rls-bootstrap.service.cjs +269 -0
  134. package/lib/cjs/namespaces/rls/rls-bootstrap.service.cjs.map +1 -0
  135. package/lib/cjs/namespaces/rls/rls.constants.cjs +79 -0
  136. package/lib/cjs/namespaces/rls/rls.constants.cjs.map +1 -0
  137. package/lib/cjs/namespaces/rls/rls.template.cjs +719 -0
  138. package/lib/cjs/namespaces/rls/rls.template.cjs.map +1 -0
  139. package/lib/cjs/namespaces/rls/rls.types.cjs +4 -0
  140. package/lib/cjs/namespaces/rls/rls.types.cjs.map +1 -0
  141. package/lib/cjs/namespaces/rls/session-binding.cjs +70 -0
  142. package/lib/cjs/namespaces/rls/session-binding.cjs.map +1 -0
  143. package/lib/cjs/namespaces/services/credential.service.cjs +327 -0
  144. package/lib/cjs/namespaces/services/credential.service.cjs.map +1 -0
  145. package/lib/cjs/namespaces/services/index.cjs +1 -0
  146. package/lib/cjs/namespaces/services/index.cjs.map +1 -1
  147. package/lib/cjs/namespaces/types.cjs +6 -1
  148. package/lib/cjs/namespaces/types.cjs.map +1 -1
  149. package/lib/cjs/redis/adapter.cjs +7 -1
  150. package/lib/cjs/redis/adapter.cjs.map +1 -1
  151. package/lib/cjs/secrets/InfraCredentialBootstrap.cjs +80 -0
  152. package/lib/cjs/secrets/InfraCredentialBootstrap.cjs.map +1 -0
  153. package/lib/cjs/secrets/aws/AwsSecretService.cjs +2 -15
  154. package/lib/cjs/secrets/aws/AwsSecretService.cjs.map +1 -1
  155. package/lib/cjs/secrets/azure/AzureKeyVaultSecretService.cjs +2 -16
  156. package/lib/cjs/secrets/azure/AzureKeyVaultSecretService.cjs.map +1 -1
  157. package/lib/cjs/secrets/core/SecretReference.cjs +1 -0
  158. package/lib/cjs/secrets/core/SecretReference.cjs.map +1 -1
  159. package/lib/cjs/secrets/fs/FsSecretEnvironment.cjs +28 -0
  160. package/lib/cjs/secrets/fs/FsSecretEnvironment.cjs.map +1 -0
  161. package/lib/cjs/secrets/fs/FsSecretService.cjs +420 -0
  162. package/lib/cjs/secrets/fs/FsSecretService.cjs.map +1 -0
  163. package/lib/cjs/secrets/fs/FsSecretServiceConfig.cjs +25 -0
  164. package/lib/cjs/secrets/fs/FsSecretServiceConfig.cjs.map +1 -0
  165. package/lib/cjs/secrets/fs/index.cjs +27 -0
  166. package/lib/cjs/secrets/fs/index.cjs.map +1 -0
  167. package/lib/cjs/secrets/gcp/GcpSecretManagerService.cjs +2 -16
  168. package/lib/cjs/secrets/gcp/GcpSecretManagerService.cjs.map +1 -1
  169. package/lib/cjs/secrets/index.cjs +2 -0
  170. package/lib/cjs/secrets/index.cjs.map +1 -1
  171. package/lib/cjs/secrets/model/ModelSecretService.cjs +335 -43
  172. package/lib/cjs/secrets/model/ModelSecretService.cjs.map +1 -1
  173. package/lib/cjs/secrets/model/Secret.cjs +83 -5
  174. package/lib/cjs/secrets/model/Secret.cjs.map +1 -1
  175. package/lib/cjs/secrets/onepassword/OnePasswordSecretService.cjs +2 -16
  176. package/lib/cjs/secrets/onepassword/OnePasswordSecretService.cjs.map +1 -1
  177. package/lib/cjs/secrets/vault/VaultSecretService.cjs +2 -16
  178. package/lib/cjs/secrets/vault/VaultSecretService.cjs.map +1 -1
  179. package/lib/cjs/shared/environmentValue.cjs +24 -0
  180. package/lib/cjs/shared/environmentValue.cjs.map +1 -1
  181. package/lib/cjs/shared/http/HttpApiService.cjs +190 -0
  182. package/lib/cjs/shared/http/HttpApiService.cjs.map +1 -0
  183. package/lib/cjs/shared/http/hermeticBoot.cjs +150 -0
  184. package/lib/cjs/shared/http/hermeticBoot.cjs.map +1 -0
  185. package/lib/cjs/shared/http/index.cjs +28 -0
  186. package/lib/cjs/shared/http/index.cjs.map +1 -0
  187. package/lib/esm/blob/azure/AzureBlobStoreService.js +13 -21
  188. package/lib/esm/blob/azure/AzureBlobStoreService.js.map +1 -1
  189. package/lib/esm/blob/core/BlobStoreService.js +26 -25
  190. package/lib/esm/blob/core/BlobStoreService.js.map +1 -1
  191. package/lib/esm/blob/gcp/GcsBlobStoreService.js +13 -21
  192. package/lib/esm/blob/gcp/GcsBlobStoreService.js.map +1 -1
  193. package/lib/esm/blob/s3/S3BlobStoreService.js +12 -14
  194. package/lib/esm/blob/s3/S3BlobStoreService.js.map +1 -1
  195. package/lib/esm/blob/s3/S3CompatibleBlobStoreService.js +14 -16
  196. package/lib/esm/blob/s3/S3CompatibleBlobStoreService.js.map +1 -1
  197. package/lib/esm/comms/email/EmailService.js +338 -0
  198. package/lib/esm/comms/email/EmailService.js.map +1 -0
  199. package/lib/esm/comms/email/index.js +12 -0
  200. package/lib/esm/comms/email/index.js.map +1 -0
  201. package/lib/esm/comms/email/mime.js +218 -0
  202. package/lib/esm/comms/email/mime.js.map +1 -0
  203. package/lib/esm/comms/email/smtp.js +166 -0
  204. package/lib/esm/comms/email/smtp.js.map +1 -0
  205. package/lib/esm/comms/environment.js +59 -0
  206. package/lib/esm/comms/environment.js.map +1 -0
  207. package/lib/esm/comms/gmail/GmailService.js +230 -0
  208. package/lib/esm/comms/gmail/GmailService.js.map +1 -0
  209. package/lib/esm/comms/gmail/index.js +7 -0
  210. package/lib/esm/comms/gmail/index.js.map +1 -0
  211. package/lib/esm/comms/index.js +14 -0
  212. package/lib/esm/comms/index.js.map +1 -0
  213. package/lib/esm/comms/slack/SlackService.js +259 -0
  214. package/lib/esm/comms/slack/SlackService.js.map +1 -0
  215. package/lib/esm/comms/slack/index.js +7 -0
  216. package/lib/esm/comms/slack/index.js.map +1 -0
  217. package/lib/esm/comms/teams/TeamsService.js +204 -0
  218. package/lib/esm/comms/teams/TeamsService.js.map +1 -0
  219. package/lib/esm/comms/teams/index.js +7 -0
  220. package/lib/esm/comms/teams/index.js.map +1 -0
  221. package/lib/esm/comms/telegram/TelegramService.js +191 -0
  222. package/lib/esm/comms/telegram/TelegramService.js.map +1 -0
  223. package/lib/esm/comms/telegram/index.js +7 -0
  224. package/lib/esm/comms/telegram/index.js.map +1 -0
  225. package/lib/esm/devops/environment.js +39 -0
  226. package/lib/esm/devops/environment.js.map +1 -0
  227. package/lib/esm/devops/github/GithubService.js +297 -0
  228. package/lib/esm/devops/github/GithubService.js.map +1 -0
  229. package/lib/esm/devops/github/index.js +7 -0
  230. package/lib/esm/devops/github/index.js.map +1 -0
  231. package/lib/esm/devops/gitlab/GitlabService.js +277 -0
  232. package/lib/esm/devops/gitlab/GitlabService.js.map +1 -0
  233. package/lib/esm/devops/gitlab/index.js +7 -0
  234. package/lib/esm/devops/gitlab/index.js.map +1 -0
  235. package/lib/esm/devops/index.js +11 -0
  236. package/lib/esm/devops/index.js.map +1 -0
  237. package/lib/esm/feature-flags/models/FeatureFlag.model.js +2 -0
  238. package/lib/esm/feature-flags/models/FeatureFlag.model.js.map +1 -1
  239. package/lib/esm/feature-flags/models/FeatureFlagAccess.model.js +2 -0
  240. package/lib/esm/feature-flags/models/FeatureFlagAccess.model.js.map +1 -1
  241. package/lib/esm/index.js +3 -3
  242. package/lib/esm/io/airtable/AirtableService.js +261 -0
  243. package/lib/esm/io/airtable/AirtableService.js.map +1 -0
  244. package/lib/esm/io/airtable/index.js +7 -0
  245. package/lib/esm/io/airtable/index.js.map +1 -0
  246. package/lib/esm/io/environment.js +42 -0
  247. package/lib/esm/io/environment.js.map +1 -0
  248. package/lib/esm/io/google-sheets/GoogleSheetsService.js +283 -0
  249. package/lib/esm/io/google-sheets/GoogleSheetsService.js.map +1 -0
  250. package/lib/esm/io/google-sheets/index.js +7 -0
  251. package/lib/esm/io/google-sheets/index.js.map +1 -0
  252. package/lib/esm/io/graphql/GraphqlService.js +138 -0
  253. package/lib/esm/io/graphql/GraphqlService.js.map +1 -0
  254. package/lib/esm/io/graphql/index.js +7 -0
  255. package/lib/esm/io/graphql/index.js.map +1 -0
  256. package/lib/esm/io/index.js +13 -0
  257. package/lib/esm/io/index.js.map +1 -0
  258. package/lib/esm/io/spreadsheet/SpreadsheetService.js +200 -0
  259. package/lib/esm/io/spreadsheet/SpreadsheetService.js.map +1 -0
  260. package/lib/esm/io/spreadsheet/index.js +8 -0
  261. package/lib/esm/io/spreadsheet/index.js.map +1 -0
  262. package/lib/esm/namespaces/index.js +1 -0
  263. package/lib/esm/namespaces/index.js.map +1 -1
  264. package/lib/esm/namespaces/models/credential.model.js +106 -0
  265. package/lib/esm/namespaces/models/credential.model.js.map +1 -0
  266. package/lib/esm/namespaces/models/effective-permission.model.js +2 -0
  267. package/lib/esm/namespaces/models/effective-permission.model.js.map +1 -1
  268. package/lib/esm/namespaces/models/group-membership.model.js +2 -0
  269. package/lib/esm/namespaces/models/group-membership.model.js.map +1 -1
  270. package/lib/esm/namespaces/models/group.model.js +2 -0
  271. package/lib/esm/namespaces/models/group.model.js.map +1 -1
  272. package/lib/esm/namespaces/models/index.js +1 -0
  273. package/lib/esm/namespaces/models/index.js.map +1 -1
  274. package/lib/esm/namespaces/models/inheritance-block.model.js +2 -0
  275. package/lib/esm/namespaces/models/inheritance-block.model.js.map +1 -1
  276. package/lib/esm/namespaces/models/org-unit-closure.model.js +2 -0
  277. package/lib/esm/namespaces/models/org-unit-closure.model.js.map +1 -1
  278. package/lib/esm/namespaces/models/org-unit-membership.model.js +2 -0
  279. package/lib/esm/namespaces/models/org-unit-membership.model.js.map +1 -1
  280. package/lib/esm/namespaces/models/org-unit-profile.model.js +2 -0
  281. package/lib/esm/namespaces/models/org-unit-profile.model.js.map +1 -1
  282. package/lib/esm/namespaces/models/org-unit.model.js +2 -0
  283. package/lib/esm/namespaces/models/org-unit.model.js.map +1 -1
  284. package/lib/esm/namespaces/models/permission.model.js +2 -0
  285. package/lib/esm/namespaces/models/permission.model.js.map +1 -1
  286. package/lib/esm/namespaces/models/principal.model.js +2 -0
  287. package/lib/esm/namespaces/models/principal.model.js.map +1 -1
  288. package/lib/esm/namespaces/models/protected-resource.model.js +2 -0
  289. package/lib/esm/namespaces/models/protected-resource.model.js.map +1 -1
  290. package/lib/esm/namespaces/models/resource-grant.model.js +2 -0
  291. package/lib/esm/namespaces/models/resource-grant.model.js.map +1 -1
  292. package/lib/esm/namespaces/models/role-assignment.model.js +2 -0
  293. package/lib/esm/namespaces/models/role-assignment.model.js.map +1 -1
  294. package/lib/esm/namespaces/models/role-permission.model.js +2 -0
  295. package/lib/esm/namespaces/models/role-permission.model.js.map +1 -1
  296. package/lib/esm/namespaces/models/role.model.js +2 -0
  297. package/lib/esm/namespaces/models/role.model.js.map +1 -1
  298. package/lib/esm/namespaces/models/storage-binding.model.js +2 -0
  299. package/lib/esm/namespaces/models/storage-binding.model.js.map +1 -1
  300. package/lib/esm/namespaces/models/tenant-membership.model.js +2 -0
  301. package/lib/esm/namespaces/models/tenant-membership.model.js.map +1 -1
  302. package/lib/esm/namespaces/models/tenant-profile.model.js +2 -0
  303. package/lib/esm/namespaces/models/tenant-profile.model.js.map +1 -1
  304. package/lib/esm/namespaces/models/tenant.model.js +2 -0
  305. package/lib/esm/namespaces/models/tenant.model.js.map +1 -1
  306. package/lib/esm/namespaces/models/user.model.js +2 -0
  307. package/lib/esm/namespaces/models/user.model.js.map +1 -1
  308. package/lib/esm/namespaces/rls/index.js +11 -0
  309. package/lib/esm/namespaces/rls/index.js.map +1 -0
  310. package/lib/esm/namespaces/rls/principal-resolver.js +61 -0
  311. package/lib/esm/namespaces/rls/principal-resolver.js.map +1 -0
  312. package/lib/esm/namespaces/rls/rls-bootstrap.service.js +261 -0
  313. package/lib/esm/namespaces/rls/rls-bootstrap.service.js.map +1 -0
  314. package/lib/esm/namespaces/rls/rls.constants.js +75 -0
  315. package/lib/esm/namespaces/rls/rls.constants.js.map +1 -0
  316. package/lib/esm/namespaces/rls/rls.template.js +711 -0
  317. package/lib/esm/namespaces/rls/rls.template.js.map +1 -0
  318. package/lib/esm/namespaces/rls/rls.types.js +9 -0
  319. package/lib/esm/namespaces/rls/rls.types.js.map +1 -0
  320. package/lib/esm/namespaces/rls/session-binding.js +65 -0
  321. package/lib/esm/namespaces/rls/session-binding.js.map +1 -0
  322. package/lib/esm/namespaces/services/credential.service.js +322 -0
  323. package/lib/esm/namespaces/services/credential.service.js.map +1 -0
  324. package/lib/esm/namespaces/services/index.js +1 -0
  325. package/lib/esm/namespaces/services/index.js.map +1 -1
  326. package/lib/esm/namespaces/types.js +6 -0
  327. package/lib/esm/namespaces/types.js.map +1 -1
  328. package/lib/esm/redis/adapter.js +7 -1
  329. package/lib/esm/redis/adapter.js.map +1 -1
  330. package/lib/esm/secrets/InfraCredentialBootstrap.js +74 -0
  331. package/lib/esm/secrets/InfraCredentialBootstrap.js.map +1 -0
  332. package/lib/esm/secrets/aws/AwsSecretService.js +3 -13
  333. package/lib/esm/secrets/aws/AwsSecretService.js.map +1 -1
  334. package/lib/esm/secrets/azure/AzureKeyVaultSecretService.js +2 -13
  335. package/lib/esm/secrets/azure/AzureKeyVaultSecretService.js.map +1 -1
  336. package/lib/esm/secrets/core/SecretReference.js +1 -0
  337. package/lib/esm/secrets/core/SecretReference.js.map +1 -1
  338. package/lib/esm/secrets/fs/FsSecretEnvironment.js +24 -0
  339. package/lib/esm/secrets/fs/FsSecretEnvironment.js.map +1 -0
  340. package/lib/esm/secrets/fs/FsSecretService.js +412 -0
  341. package/lib/esm/secrets/fs/FsSecretService.js.map +1 -0
  342. package/lib/esm/secrets/fs/FsSecretServiceConfig.js +21 -0
  343. package/lib/esm/secrets/fs/FsSecretServiceConfig.js.map +1 -0
  344. package/lib/esm/secrets/fs/index.js +10 -0
  345. package/lib/esm/secrets/fs/index.js.map +1 -0
  346. package/lib/esm/secrets/gcp/GcpSecretManagerService.js +2 -13
  347. package/lib/esm/secrets/gcp/GcpSecretManagerService.js.map +1 -1
  348. package/lib/esm/secrets/index.js +2 -0
  349. package/lib/esm/secrets/index.js.map +1 -1
  350. package/lib/esm/secrets/model/ModelSecretService.js +337 -42
  351. package/lib/esm/secrets/model/ModelSecretService.js.map +1 -1
  352. package/lib/esm/secrets/model/Secret.js +86 -7
  353. package/lib/esm/secrets/model/Secret.js.map +1 -1
  354. package/lib/esm/secrets/onepassword/OnePasswordSecretService.js +2 -13
  355. package/lib/esm/secrets/onepassword/OnePasswordSecretService.js.map +1 -1
  356. package/lib/esm/secrets/vault/VaultSecretService.js +2 -13
  357. package/lib/esm/secrets/vault/VaultSecretService.js.map +1 -1
  358. package/lib/esm/shared/environmentValue.js +24 -0
  359. package/lib/esm/shared/environmentValue.js.map +1 -1
  360. package/lib/esm/shared/http/HttpApiService.js +181 -0
  361. package/lib/esm/shared/http/HttpApiService.js.map +1 -0
  362. package/lib/esm/shared/http/hermeticBoot.js +146 -0
  363. package/lib/esm/shared/http/hermeticBoot.js.map +1 -0
  364. package/lib/esm/shared/http/index.js +11 -0
  365. package/lib/esm/shared/http/index.js.map +1 -0
  366. package/lib/types/blob/azure/AzureBlobStoreService.d.cts +7 -7
  367. package/lib/types/blob/azure/AzureBlobStoreService.d.mts +7 -7
  368. package/lib/types/blob/core/BlobStoreService.d.cts +28 -27
  369. package/lib/types/blob/core/BlobStoreService.d.mts +28 -27
  370. package/lib/types/blob/gcp/GcsBlobStoreService.d.cts +7 -7
  371. package/lib/types/blob/gcp/GcsBlobStoreService.d.mts +7 -7
  372. package/lib/types/blob/s3/S3BlobStoreService.d.cts +9 -1
  373. package/lib/types/blob/s3/S3BlobStoreService.d.mts +9 -1
  374. package/lib/types/blob/s3/S3CompatibleBlobStoreService.d.cts +11 -15
  375. package/lib/types/blob/s3/S3CompatibleBlobStoreService.d.mts +11 -15
  376. package/lib/types/comms/email/EmailService.d.cts +184 -0
  377. package/lib/types/comms/email/EmailService.d.mts +184 -0
  378. package/lib/types/comms/email/index.d.cts +11 -0
  379. package/lib/types/comms/email/index.d.mts +11 -0
  380. package/lib/types/comms/email/mime.d.cts +84 -0
  381. package/lib/types/comms/email/mime.d.mts +84 -0
  382. package/lib/types/comms/email/smtp.d.cts +107 -0
  383. package/lib/types/comms/email/smtp.d.mts +107 -0
  384. package/lib/types/comms/environment.d.cts +84 -0
  385. package/lib/types/comms/environment.d.mts +84 -0
  386. package/lib/types/comms/gmail/GmailService.d.cts +190 -0
  387. package/lib/types/comms/gmail/GmailService.d.mts +190 -0
  388. package/lib/types/comms/gmail/index.d.cts +6 -0
  389. package/lib/types/comms/gmail/index.d.mts +6 -0
  390. package/lib/types/comms/index.d.cts +13 -0
  391. package/lib/types/comms/index.d.mts +13 -0
  392. package/lib/types/comms/slack/SlackService.d.cts +259 -0
  393. package/lib/types/comms/slack/SlackService.d.mts +259 -0
  394. package/lib/types/comms/slack/index.d.cts +6 -0
  395. package/lib/types/comms/slack/index.d.mts +6 -0
  396. package/lib/types/comms/teams/TeamsService.d.cts +172 -0
  397. package/lib/types/comms/teams/TeamsService.d.mts +172 -0
  398. package/lib/types/comms/teams/index.d.cts +6 -0
  399. package/lib/types/comms/teams/index.d.mts +6 -0
  400. package/lib/types/comms/telegram/TelegramService.d.cts +202 -0
  401. package/lib/types/comms/telegram/TelegramService.d.mts +202 -0
  402. package/lib/types/comms/telegram/index.d.cts +6 -0
  403. package/lib/types/comms/telegram/index.d.mts +6 -0
  404. package/lib/types/devops/environment.d.cts +62 -0
  405. package/lib/types/devops/environment.d.mts +62 -0
  406. package/lib/types/devops/github/GithubService.d.cts +287 -0
  407. package/lib/types/devops/github/GithubService.d.mts +287 -0
  408. package/lib/types/devops/github/index.d.cts +6 -0
  409. package/lib/types/devops/github/index.d.mts +6 -0
  410. package/lib/types/devops/gitlab/GitlabService.d.cts +277 -0
  411. package/lib/types/devops/gitlab/GitlabService.d.mts +277 -0
  412. package/lib/types/devops/gitlab/index.d.cts +6 -0
  413. package/lib/types/devops/gitlab/index.d.mts +6 -0
  414. package/lib/types/devops/index.d.cts +10 -0
  415. package/lib/types/devops/index.d.mts +10 -0
  416. package/lib/types/index.d.cts +2 -2
  417. package/lib/types/index.d.mts +2 -2
  418. package/lib/types/io/airtable/AirtableService.d.cts +268 -0
  419. package/lib/types/io/airtable/AirtableService.d.mts +268 -0
  420. package/lib/types/io/airtable/index.d.cts +6 -0
  421. package/lib/types/io/airtable/index.d.mts +6 -0
  422. package/lib/types/io/environment.d.cts +67 -0
  423. package/lib/types/io/environment.d.mts +67 -0
  424. package/lib/types/io/google-sheets/GoogleSheetsService.d.cts +204 -0
  425. package/lib/types/io/google-sheets/GoogleSheetsService.d.mts +204 -0
  426. package/lib/types/io/google-sheets/index.d.cts +6 -0
  427. package/lib/types/io/google-sheets/index.d.mts +6 -0
  428. package/lib/types/io/graphql/GraphqlService.d.cts +173 -0
  429. package/lib/types/io/graphql/GraphqlService.d.mts +173 -0
  430. package/lib/types/io/graphql/index.d.cts +6 -0
  431. package/lib/types/io/graphql/index.d.mts +6 -0
  432. package/lib/types/io/index.d.cts +12 -0
  433. package/lib/types/io/index.d.mts +12 -0
  434. package/lib/types/io/spreadsheet/SpreadsheetService.d.cts +144 -0
  435. package/lib/types/io/spreadsheet/SpreadsheetService.d.mts +144 -0
  436. package/lib/types/io/spreadsheet/index.d.cts +7 -0
  437. package/lib/types/io/spreadsheet/index.d.mts +7 -0
  438. package/lib/types/namespaces/index.d.cts +1 -0
  439. package/lib/types/namespaces/index.d.mts +1 -0
  440. package/lib/types/namespaces/models/credential.model.d.cts +23 -0
  441. package/lib/types/namespaces/models/credential.model.d.mts +23 -0
  442. package/lib/types/namespaces/models/index.d.cts +1 -0
  443. package/lib/types/namespaces/models/index.d.mts +1 -0
  444. package/lib/types/namespaces/rls/index.d.cts +10 -0
  445. package/lib/types/namespaces/rls/index.d.mts +10 -0
  446. package/lib/types/namespaces/rls/principal-resolver.d.cts +47 -0
  447. package/lib/types/namespaces/rls/principal-resolver.d.mts +47 -0
  448. package/lib/types/namespaces/rls/rls-bootstrap.service.d.cts +157 -0
  449. package/lib/types/namespaces/rls/rls-bootstrap.service.d.mts +157 -0
  450. package/lib/types/namespaces/rls/rls.constants.d.cts +52 -0
  451. package/lib/types/namespaces/rls/rls.constants.d.mts +52 -0
  452. package/lib/types/namespaces/rls/rls.template.d.cts +42 -0
  453. package/lib/types/namespaces/rls/rls.template.d.mts +42 -0
  454. package/lib/types/namespaces/rls/rls.types.d.cts +77 -0
  455. package/lib/types/namespaces/rls/rls.types.d.mts +77 -0
  456. package/lib/types/namespaces/rls/session-binding.d.cts +87 -0
  457. package/lib/types/namespaces/rls/session-binding.d.mts +87 -0
  458. package/lib/types/namespaces/services/credential.service.d.cts +175 -0
  459. package/lib/types/namespaces/services/credential.service.d.mts +175 -0
  460. package/lib/types/namespaces/services/index.d.cts +1 -0
  461. package/lib/types/namespaces/services/index.d.mts +1 -0
  462. package/lib/types/namespaces/types.d.cts +37 -0
  463. package/lib/types/namespaces/types.d.mts +37 -0
  464. package/lib/types/redis/adapter.d.cts +2 -0
  465. package/lib/types/redis/adapter.d.mts +2 -0
  466. package/lib/types/redis/types.d.cts +27 -2
  467. package/lib/types/redis/types.d.mts +27 -2
  468. package/lib/types/secrets/InfraCredentialBootstrap.d.cts +100 -0
  469. package/lib/types/secrets/InfraCredentialBootstrap.d.mts +100 -0
  470. package/lib/types/secrets/core/SecretTypes.d.cts +15 -1
  471. package/lib/types/secrets/core/SecretTypes.d.mts +15 -1
  472. package/lib/types/secrets/fs/FsSecretEnvironment.d.cts +42 -0
  473. package/lib/types/secrets/fs/FsSecretEnvironment.d.mts +42 -0
  474. package/lib/types/secrets/fs/FsSecretService.d.cts +207 -0
  475. package/lib/types/secrets/fs/FsSecretService.d.mts +207 -0
  476. package/lib/types/secrets/fs/FsSecretServiceConfig.d.cts +37 -0
  477. package/lib/types/secrets/fs/FsSecretServiceConfig.d.mts +37 -0
  478. package/lib/types/secrets/fs/index.d.cts +9 -0
  479. package/lib/types/secrets/fs/index.d.mts +9 -0
  480. package/lib/types/secrets/index.d.cts +2 -0
  481. package/lib/types/secrets/index.d.mts +2 -0
  482. package/lib/types/secrets/model/ModelSecretService.d.cts +190 -1
  483. package/lib/types/secrets/model/ModelSecretService.d.mts +190 -1
  484. package/lib/types/secrets/model/Secret.d.cts +44 -3
  485. package/lib/types/secrets/model/Secret.d.mts +44 -3
  486. package/lib/types/shared/environmentValue.d.cts +24 -0
  487. package/lib/types/shared/environmentValue.d.mts +24 -0
  488. package/lib/types/shared/http/HttpApiService.d.cts +193 -0
  489. package/lib/types/shared/http/HttpApiService.d.mts +193 -0
  490. package/lib/types/shared/http/hermeticBoot.d.cts +84 -0
  491. package/lib/types/shared/http/hermeticBoot.d.mts +84 -0
  492. package/lib/types/shared/http/index.d.cts +10 -0
  493. package/lib/types/shared/http/index.d.mts +10 -0
  494. package/package.json +180 -3
  495. package/sql/002_rls.sql +660 -15
  496. package/sql/004_credentials.sql +46 -0
@@ -0,0 +1,196 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TelegramService = void 0;
4
+ /**
5
+ * @module integrations/comms/telegram/service
6
+ * @summary Telegram Bot API integration service for sending messages and reading updates.
7
+ * @description Exposes the Telegram Bot API (`getMe`, `sendMessage`,
8
+ * `getUpdates`, `sendChatAction`) as an undecorated client-based service built
9
+ * on {@link HttpApiService}. The bot token is part of the request
10
+ * path (`/bot<token>/<method>`); configuration comes from an explicit
11
+ * `TelegramServiceConfig` or the `comms.telegram` environment slice, and
12
+ * failures are mapped to decaf errors via {@link httpError}.
13
+ */
14
+ const db_decorators_1 = require("@decaf-ts/db-decorators");
15
+ const environment_js_1 = require("./../environment.cjs");
16
+ const environmentValue_js_1 = require("./../../shared/environmentValue.cjs");
17
+ const index_js_1 = require("./../../shared/http/index.cjs");
18
+ /**
19
+ * @description Telegram Bot API integration service
20
+ * @summary An undecorated HTTP service for verifying the bot
21
+ * identity, sending messages with parse modes and reply/thread options, long
22
+ * or short polling `getUpdates`, and posting chat actions. The bot token is
23
+ * required (`requireToken()`) and embedded in the request path; non-`ok` Bot
24
+ * API responses raise `InternalError`, and transport failures are mapped to
25
+ * decaf errors via {@link httpError}.
26
+ * @class TelegramService
27
+ * @category Comms
28
+ * @example
29
+ * ```ts
30
+ * import { TelegramService } from "@decaf-ts/integrations/comms/telegram";
31
+ *
32
+ * const telegram = new TelegramService();
33
+ * await telegram.initialize({
34
+ * token: process.env.GRAPH_CREDENTIAL_TELEGRAM_TOKEN,
35
+ * });
36
+ * await telegram.sendMessage({
37
+ * chatId: "@mychannel",
38
+ * text: "Release 1.2.0 is live",
39
+ * parseMode: "HTML",
40
+ * });
41
+ * ```
42
+ * @memberOf module:integrations/comms/telegram/service
43
+ */
44
+ class TelegramService extends index_js_1.HttpApiService {
45
+ constructor() {
46
+ super(...arguments);
47
+ /**
48
+ * @description The provider name used in error messages
49
+ */
50
+ this.serviceName = "Telegram";
51
+ }
52
+ /**
53
+ * @description The Telegram Bot API base URL
54
+ * @summary Used when the resolved config carries no `baseUrl`.
55
+ * @returns {string} `"https://api.telegram.org"`.
56
+ */
57
+ defaultBaseUrl() {
58
+ return "https://api.telegram.org";
59
+ }
60
+ /**
61
+ * @description Reads the Telegram credentials and defaults from the environment
62
+ * @summary Reads the `comms.telegram` environment slice and returns a
63
+ * partial config when a token is configured, `undefined` otherwise. Values
64
+ * pass through `envString`/`envNumber` to reject unset-leaf proxies.
65
+ * @returns {Partial<TelegramServiceConfig> | undefined} A partial config, or `undefined` when no Telegram token is configured.
66
+ */
67
+ configFromEnvironment() {
68
+ const env = environment_js_1.CommsEnvironment.comms.telegram;
69
+ const token = (0, environmentValue_js_1.envString)(env?.token);
70
+ if (!token)
71
+ return undefined;
72
+ return {
73
+ token,
74
+ baseUrl: (0, environmentValue_js_1.envString)(env.baseUrl),
75
+ timeout: (0, environmentValue_js_1.envNumber)(env.timeout),
76
+ };
77
+ }
78
+ /**
79
+ * @description Calls a Telegram Bot API method with the configured bot token
80
+ * @summary Shared request path for all Telegram operations: resolves the
81
+ * token (`requireToken()`), `POST`s the payload to
82
+ * `/bot<token>/<method>`, rejects non-`ok` Bot API responses with an
83
+ * `InternalError`, and maps transport failures through {@link httpError}.
84
+ * @template T - The expected `result` payload type of the Bot API response.
85
+ * @param {string} method - The Bot API method name (e.g. `"sendMessage"`).
86
+ * @param {Record<string, unknown>} [payload] - The JSON body for the method; defaults to an empty object.
87
+ * @returns {Promise<T>} The `result` payload of the Bot API response.
88
+ * @throws {InternalError} When no token is configured or the Bot API answers with `ok: false`.
89
+ * @throws {NotFoundError} When the endpoint answers with HTTP 404.
90
+ * @throws {ConflictError} When the endpoint answers with HTTP 409.
91
+ * @throws {BadRequestError} When the endpoint answers with any other HTTP error status.
92
+ */
93
+ async call(method, payload = {}) {
94
+ const token = this.requireToken();
95
+ try {
96
+ const response = await this.client.post(`/bot${token}/${method}`, payload);
97
+ const data = response.data;
98
+ if (!data || data.ok !== true) {
99
+ throw new db_decorators_1.InternalError(`Telegram Bot API ${method} failed: ${data?.description ?? "unknown error"}`);
100
+ }
101
+ return data.result;
102
+ }
103
+ catch (error) {
104
+ throw (0, index_js_1.httpError)("Telegram", `Bot API ${method}`, error);
105
+ }
106
+ }
107
+ /**
108
+ * @description Fetches the authenticated bot's identity
109
+ * @summary Calls the `getMe` method and returns the raw bot descriptor
110
+ * (including `id`, `username`, and `can_join_groups` flags).
111
+ * @returns {Promise<Record<string, unknown>>} The raw `User` payload describing the bot.
112
+ * @throws {InternalError} When no token is configured or the Bot API rejects the call.
113
+ * @throws {NotFoundError} When the endpoint answers with HTTP 404.
114
+ * @throws {ConflictError} When the endpoint answers with HTTP 409.
115
+ * @throws {BadRequestError} When the endpoint answers with any other HTTP error status.
116
+ */
117
+ async getMe() {
118
+ return this.call("getMe");
119
+ }
120
+ /**
121
+ * @description Sends a message to a Telegram chat
122
+ * @summary Calls the `sendMessage` method with the destination chat, text,
123
+ * and the requested parse/notification/reply/thread options, returning the
124
+ * sent message descriptor.
125
+ * @param {TelegramSendMessageInput} input - The message destination, content, and options.
126
+ * @returns {Promise<TelegramMessage>} The sent message descriptor.
127
+ * @throws {InternalError} When no token is configured or the Bot API rejects the message.
128
+ * @throws {NotFoundError} When the endpoint answers with HTTP 404.
129
+ * @throws {ConflictError} When the endpoint answers with HTTP 409.
130
+ * @throws {BadRequestError} When the endpoint answers with any other HTTP error status.
131
+ * @example
132
+ * ```ts
133
+ * await telegram.sendMessage({
134
+ * chatId: "-1001234567890",
135
+ * text: "*Release* 1.2.0 is live",
136
+ * parseMode: "MarkdownV2",
137
+ * disableNotification: true,
138
+ * });
139
+ * ```
140
+ */
141
+ async sendMessage(input) {
142
+ return this.call("sendMessage", {
143
+ chat_id: input.chatId,
144
+ text: input.text,
145
+ parse_mode: input.parseMode,
146
+ disable_notification: input.disableNotification,
147
+ disable_web_page_preview: input.disablePreview,
148
+ reply_to_message_id: input.replyToMessageId,
149
+ message_thread_id: input.messageThreadId,
150
+ });
151
+ }
152
+ /**
153
+ * @description Polls pending bot updates
154
+ * @summary Calls the `getUpdates` method, optionally with an `offset`
155
+ * (confirmation of processed updates), a `limit` on returned updates, and a
156
+ * long-polling `timeoutSeconds`. Advance `offset` past each handled
157
+ * update's `update_id` to avoid re-reading them.
158
+ * @param {object} [options] - Polling options.
159
+ * @param {number} [options.offset] - The first update ID to return (previous ID + 1).
160
+ * @param {number} [options.limit] - Maximum number of updates to return (1-100).
161
+ * @param {number} [options.timeoutSeconds] - Long-polling timeout in seconds.
162
+ * @returns {Promise<Array<Record<string, unknown>>>} The raw `Update` payloads.
163
+ * @throws {InternalError} When no token is configured or the Bot API rejects the call.
164
+ * @throws {NotFoundError} When the endpoint answers with HTTP 404.
165
+ * @throws {ConflictError} When the endpoint answers with HTTP 409 (e.g. another `getUpdates` call is in flight).
166
+ * @throws {BadRequestError} When the endpoint answers with any other HTTP error status.
167
+ */
168
+ async getUpdates(options = {}) {
169
+ return this.call("getUpdates", {
170
+ offset: options.offset,
171
+ limit: options.limit,
172
+ timeout: options.timeoutSeconds,
173
+ });
174
+ }
175
+ /**
176
+ * @description Posts a chat action (typing indicator)
177
+ * @summary Calls the `sendChatAction` method so clients display the given
178
+ * action (e.g. `"typing"`) for up to five seconds.
179
+ * @param {string | number} chatId - The destination chat ID or `@channelusername`.
180
+ * @param {string} [action] - The action to display; defaults to `"typing"`.
181
+ * @returns {Promise<boolean>} Whether the action was accepted.
182
+ * @throws {InternalError} When no token is configured or the Bot API rejects the call.
183
+ * @throws {NotFoundError} When the endpoint answers with HTTP 404.
184
+ * @throws {ConflictError} When the endpoint answers with HTTP 409.
185
+ * @throws {BadRequestError} When the endpoint answers with any other HTTP error status.
186
+ */
187
+ async sendChatAction(chatId, action = "typing") {
188
+ return this.call("sendChatAction", {
189
+ chat_id: chatId,
190
+ action,
191
+ });
192
+ }
193
+ }
194
+ exports.TelegramService = TelegramService;
195
+ //# sourceMappingURL=TelegramService.js.map
196
+ //# sourceMappingURL=TelegramService.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"comms/telegram/TelegramService.cjs","sourceRoot":"","sources":["comms/telegram/TelegramService.js"],"names":[],"mappings":";;;AAAA;;;;;;;;;GASG;AACH,2DAAwD;AACxD,wDAAuD;AACvD,4EAA0E;AAC1E,2DAA0E;AAC1E;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAa,eAAgB,SAAQ,yBAAc;IAC/C;QACI,KAAK,CAAC,GAAG,SAAS,CAAC,CAAC;QACpB;;WAEG;QACH,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;IAClC,CAAC;IACD;;;;OAIG;IACH,cAAc;QACV,OAAO,0BAA0B,CAAC;IACtC,CAAC;IACD;;;;;;OAMG;IACH,qBAAqB;QACjB,MAAM,GAAG,GAAG,iCAAgB,CAAC,KAAK,CAAC,QAAQ,CAAC;QAC5C,MAAM,KAAK,GAAG,IAAA,+BAAS,EAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACpC,IAAI,CAAC,KAAK;YACN,OAAO,SAAS,CAAC;QACrB,OAAO;YACH,KAAK;YACL,OAAO,EAAE,IAAA,+BAAS,EAAC,GAAG,CAAC,OAAO,CAAC;YAC/B,OAAO,EAAE,IAAA,+BAAS,EAAC,GAAG,CAAC,OAAO,CAAC;SAClC,CAAC;IACN,CAAC;IACD;;;;;;;;;;;;;;OAcG;IACH,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,GAAG,EAAE;QAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAClC,IAAI,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,KAAK,IAAI,MAAM,EAAE,EAAE,OAAO,CAAC,CAAC;YAC3E,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;YAC3B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC;gBAC5B,MAAM,IAAI,6BAAa,CAAC,oBAAoB,MAAM,YAAY,IAAI,EAAE,WAAW,IAAI,eAAe,EAAE,CAAC,CAAC;YAC1G,CAAC;YACD,OAAO,IAAI,CAAC,MAAM,CAAC;QACvB,CAAC;QACD,OAAO,KAAK,EAAE,CAAC;YACX,MAAM,IAAA,oBAAS,EAAC,UAAU,EAAE,WAAW,MAAM,EAAE,EAAE,KAAK,CAAC,CAAC;QAC5D,CAAC;IACL,CAAC;IACD;;;;;;;;;OASG;IACH,KAAK,CAAC,KAAK;QACP,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;IACD;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,KAAK,CAAC,WAAW,CAAC,KAAK;QACnB,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;YAC5B,OAAO,EAAE,KAAK,CAAC,MAAM;YACrB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,UAAU,EAAE,KAAK,CAAC,SAAS;YAC3B,oBAAoB,EAAE,KAAK,CAAC,mBAAmB;YAC/C,wBAAwB,EAAE,KAAK,CAAC,cAAc;YAC9C,mBAAmB,EAAE,KAAK,CAAC,gBAAgB;YAC3C,iBAAiB,EAAE,KAAK,CAAC,eAAe;SAC3C,CAAC,CAAC;IACP,CAAC;IACD;;;;;;;;;;;;;;;OAeG;IACH,KAAK,CAAC,UAAU,CAAC,OAAO,GAAG,EAAE;QACzB,OAAO,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YAC3B,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,OAAO,EAAE,OAAO,CAAC,cAAc;SAClC,CAAC,CAAC;IACP,CAAC;IACD;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ;QAC1C,OAAO,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;YAC/B,OAAO,EAAE,MAAM;YACf,MAAM;SACT,CAAC,CAAC;IACP,CAAC;CACJ;AArJD,0CAqJC;AACD,2CAA2C"}
@@ -0,0 +1,24 @@
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ /**
18
+ * @module integrations/comms/telegram
19
+ * @summary Telegram Bot API service (messaging, updates, chat actions).
20
+ * @description Re-exports the Telegram client-based service and its types.
21
+ */
22
+ __exportStar(require("./TelegramService.cjs"), exports);
23
+ //# sourceMappingURL=index.js.map
24
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"comms/telegram/index.cjs","sourceRoot":"","sources":["comms/telegram/index.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA;;;;GAIG;AACH,uDAAqC;AACrC,iCAAiC"}
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DevopsEnvironment = void 0;
4
+ const logging_1 = require("@decaf-ts/logging");
5
+ /**
6
+ * @description Accumulated devops environment singleton
7
+ * @summary The `LoggedEnvironment.accumulate`-registered instance backing the
8
+ * `DevopsEnvironmentShape` contract. Devops services read their provider
9
+ * slice (e.g. `DevopsEnvironment.devops.github`) inside
10
+ * `configFromEnvironment()` and translate it into an
11
+ * `HttpApiServiceConfig`-derived config. Credentials come from environment
12
+ * variables; for as-graph node usage those are provided as
13
+ * `GRAPH_CREDENTIAL_*` values (placeholders in this example).
14
+ * @example
15
+ * ```ts
16
+ * import { GithubService } from "@decaf-ts/integrations/devops/github";
17
+ *
18
+ * // with devops.github.token / devops.github.owner / devops.github.repo configured
19
+ * const github = new GithubService();
20
+ * await github.initialize();
21
+ * ```
22
+ * @constant {LoggedEnvironment} DevopsEnvironment
23
+ * @memberOf module:integrations/devops/environment
24
+ */
25
+ exports.DevopsEnvironment = logging_1.LoggedEnvironment.accumulate({
26
+ devops: {
27
+ github: {
28
+ token: "",
29
+ baseUrl: "",
30
+ owner: "",
31
+ repo: "",
32
+ timeout: undefined,
33
+ },
34
+ gitlab: {
35
+ token: "",
36
+ baseUrl: "",
37
+ projectId: "",
38
+ timeout: undefined,
39
+ },
40
+ },
41
+ });
42
+ //# sourceMappingURL=environment.js.map
43
+ //# sourceMappingURL=environment.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"devops/environment.cjs","sourceRoot":"","sources":["devops/environment.js"],"names":[],"mappings":";;;AAAA,+CAAsD;AACtD;;;;;;;;;;;;;;;;;;;GAmBG;AACU,QAAA,iBAAiB,GAAG,2BAAiB,CAAC,UAAU,CAAC;IAC1D,MAAM,EAAE;QACJ,MAAM,EAAE;YACJ,KAAK,EAAE,EAAE;YACT,OAAO,EAAE,EAAE;YACX,KAAK,EAAE,EAAE;YACT,IAAI,EAAE,EAAE;YACR,OAAO,EAAE,SAAS;SACrB;QACD,MAAM,EAAE;YACJ,KAAK,EAAE,EAAE;YACT,OAAO,EAAE,EAAE;YACX,SAAS,EAAE,EAAE;YACb,OAAO,EAAE,SAAS;SACrB;KACJ;CACJ,CAAC,CAAC;AACH,uCAAuC"}
@@ -0,0 +1,302 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GithubService = void 0;
4
+ /**
5
+ * @module integrations/devops/github/service
6
+ * @summary GitHub REST API integration service for repositories, issues, and pull requests.
7
+ * @description Exposes a focused subset of the GitHub REST API (`/repos/*`:
8
+ * repository lookup, issue listing/creation/commenting, and pull-request
9
+ * listing) as an undecorated client-based service built on
10
+ * {@link HttpApiService}. Configuration comes from an explicit
11
+ * `GithubServiceConfig` or the `devops.github` environment slice; repository
12
+ * targets default to the configured `owner`/`repo` and can be overridden per
13
+ * call. Raw GitHub responses are normalized to camelCase issue descriptors,
14
+ * and failures are mapped to decaf errors via {@link httpError}.
15
+ */
16
+ const db_decorators_1 = require("@decaf-ts/db-decorators");
17
+ const environment_js_1 = require("./../environment.cjs");
18
+ const environmentValue_js_1 = require("./../../shared/environmentValue.cjs");
19
+ const index_js_1 = require("./../../shared/http/index.cjs");
20
+ /**
21
+ * @description GitHub REST API integration service
22
+ * @summary An undecorated HTTP service for looking up
23
+ * repositories, listing issues (excluding pull requests), creating issues,
24
+ * commenting on issues, and listing pull requests. Repository targets resolve
25
+ * per call from the input's `owner`/`repo`, falling back to the configured
26
+ * config values, and throw `InternalError` when unresolved. The token is sent
27
+ * as a bearer token with the GitHub `Accept` and API-version headers, and
28
+ * transport failures are mapped to decaf errors via {@link httpError}.
29
+ * @class GithubService
30
+ * @category DevOps
31
+ * @example
32
+ * ```ts
33
+ * import { GithubService } from "@decaf-ts/integrations/devops/github";
34
+ *
35
+ * const github = new GithubService();
36
+ * await github.initialize({
37
+ * token: process.env.GRAPH_CREDENTIAL_GITHUB_TOKEN,
38
+ * owner: "example-org",
39
+ * repo: "example-repo",
40
+ * });
41
+ * const issue = await github.createIssue({
42
+ * title: "Bug report",
43
+ * body: "Something is broken",
44
+ * labels: ["bug"],
45
+ * });
46
+ * ```
47
+ * @memberOf module:integrations/devops/github/service
48
+ */
49
+ class GithubService extends index_js_1.HttpApiService {
50
+ constructor() {
51
+ super(...arguments);
52
+ /**
53
+ * @description The provider name used in error messages
54
+ */
55
+ this.serviceName = "GitHub";
56
+ }
57
+ /**
58
+ * @description The GitHub REST API base URL
59
+ * @summary Used when the resolved config carries no `baseUrl`.
60
+ * @returns {string} `"https://api.github.com"`.
61
+ */
62
+ defaultBaseUrl() {
63
+ return "https://api.github.com";
64
+ }
65
+ /**
66
+ * @description Builds the GitHub authentication and API version headers
67
+ * @summary Returns `Authorization: Bearer <token>`, the GitHub JSON
68
+ * `Accept` header, and the `X-GitHub-Api-Version` header when the config
69
+ * carries a token; without a token only the `Accept` headers are sent.
70
+ * @param {GithubServiceConfig} config - The resolved service configuration.
71
+ * @returns {Record<string, string>} The authorization and version headers.
72
+ */
73
+ authHeaders(config) {
74
+ return config.token
75
+ ? {
76
+ Authorization: `Bearer ${config.token}`,
77
+ Accept: "application/vnd.github+json",
78
+ "X-GitHub-Api-Version": "2022-11-28",
79
+ }
80
+ : { Accept: "application/vnd.github+json" };
81
+ }
82
+ /**
83
+ * @description Reads the GitHub credentials and defaults from the environment
84
+ * @summary Reads the `devops.github` environment slice and returns a
85
+ * partial config when a token is configured, `undefined` otherwise. Values
86
+ * pass through `envString`/`envNumber` to reject unset-leaf proxies.
87
+ * @returns {Partial<GithubServiceConfig> | undefined} A partial config, or `undefined` when no GitHub token is configured.
88
+ */
89
+ configFromEnvironment() {
90
+ const env = environment_js_1.DevopsEnvironment.devops.github;
91
+ const token = (0, environmentValue_js_1.envString)(env?.token);
92
+ if (!token)
93
+ return undefined;
94
+ return {
95
+ token,
96
+ owner: (0, environmentValue_js_1.envString)(env.owner),
97
+ repo: (0, environmentValue_js_1.envString)(env.repo),
98
+ baseUrl: (0, environmentValue_js_1.envString)(env.baseUrl),
99
+ timeout: (0, environmentValue_js_1.envNumber)(env.timeout),
100
+ };
101
+ }
102
+ /**
103
+ * @description Resolves the URL-encoded repository path for a call
104
+ * @summary Builds `/repos/<owner>/<repo>` from the input's `owner`/`repo`,
105
+ * falling back to the configured config values, and throws when either
106
+ * value is missing.
107
+ * @param {GithubRepositoryRef} [input] - The per-call repository override.
108
+ * @returns {string} The URL-encoded repository API path.
109
+ * @throws {InternalError} When neither the input nor the config yields an owner and repository.
110
+ */
111
+ repoPath(input = {}) {
112
+ const owner = input.owner ?? this.config.owner;
113
+ const repo = input.repo ?? this.config.repo;
114
+ if (!owner || !repo) {
115
+ throw new db_decorators_1.InternalError("GitHub requires an owner and repository");
116
+ }
117
+ return `/repos/${encodeURIComponent(owner)}/${encodeURIComponent(repo)}`;
118
+ }
119
+ /**
120
+ * @description Normalizes a raw GitHub issue payload
121
+ * @summary Maps the raw issue JSON onto a {@link GithubIssue}: label objects
122
+ * are reduced to names, the author to its `login`, and numeric/string
123
+ * fields are coerced. The repository reference is echoed from the input,
124
+ * falling back to the configured `owner`/`repo`.
125
+ * @param {Record<string, unknown>} raw - The raw GitHub issue payload.
126
+ * @param {GithubRepositoryRef} ref - The repository reference the issue belongs to.
127
+ * @returns {GithubIssue} The normalized issue descriptor.
128
+ */
129
+ mapIssue(raw, ref) {
130
+ return {
131
+ owner: ref.owner ?? this.config.owner,
132
+ repo: ref.repo ?? this.config.repo,
133
+ number: Number(raw["number"] ?? 0),
134
+ title: String(raw["title"] ?? ""),
135
+ state: (0, environmentValue_js_1.envString)(raw["state"]),
136
+ htmlUrl: (0, environmentValue_js_1.envString)(raw["html_url"]),
137
+ body: (0, environmentValue_js_1.envString)(raw["body"]),
138
+ user: (0, environmentValue_js_1.envString)(raw["user"]?.login),
139
+ labels: Array.isArray(raw["labels"])
140
+ ? raw["labels"].map((label) => typeof label === "string" ? label : String(label.name ?? ""))
141
+ : undefined,
142
+ comments: typeof raw["comments"] === "number"
143
+ ? raw["comments"]
144
+ : undefined,
145
+ createdAt: (0, environmentValue_js_1.envString)(raw["created_at"]),
146
+ updatedAt: (0, environmentValue_js_1.envString)(raw["updated_at"]),
147
+ };
148
+ }
149
+ /**
150
+ * @description Fetches a GitHub repository
151
+ * @summary `GET`s `/repos/<owner>/<repo>` for the given reference (falling
152
+ * back to the configured `owner`/`repo`) and returns the raw repository
153
+ * payload.
154
+ * @param {GithubRepositoryRef} [ref] - The repository to look up; defaults to the configured `owner`/`repo`.
155
+ * @returns {Promise<unknown>} The raw GitHub repository payload.
156
+ * @throws {InternalError} When the repository reference cannot be resolved.
157
+ * @throws {NotFoundError} When the repository does not exist (HTTP 404).
158
+ * @throws {ConflictError} When GitHub answers with HTTP 409.
159
+ * @throws {BadRequestError} When GitHub answers with any other HTTP error status.
160
+ */
161
+ async getRepository(ref = {}) {
162
+ try {
163
+ const response = await this.client.get(this.repoPath(ref));
164
+ return response.data;
165
+ }
166
+ catch (error) {
167
+ throw (0, index_js_1.httpError)("GitHub", "get repository", error);
168
+ }
169
+ }
170
+ /**
171
+ * @description Lists GitHub issues with state, label, and page filtering
172
+ * @summary `GET`s `/repos/<owner>/<repo>/issues` with a `state` filter
173
+ * (default `"open"`), a page size (`per_page`, default `30`), a page
174
+ * number, and a comma-separated `labels` filter. Entries carrying a
175
+ * `pull_request` key are filtered out so only true issues are returned.
176
+ * @param {GithubListOptions} [options] - Repository override, state, paging, and label options.
177
+ * @returns {Promise<GithubIssue[]>} The normalized issues for the requested page.
178
+ * @throws {InternalError} When the repository reference cannot be resolved.
179
+ * @throws {NotFoundError} When the repository does not exist (HTTP 404).
180
+ * @throws {ConflictError} When GitHub answers with HTTP 409.
181
+ * @throws {BadRequestError} When GitHub answers with any other HTTP error status.
182
+ * @example
183
+ * ```ts
184
+ * let page = 1;
185
+ * for (;;) {
186
+ * const issues = await github.listIssues({
187
+ * state: "open",
188
+ * labels: "bug,priority:high",
189
+ * limit: 50,
190
+ * page,
191
+ * });
192
+ * if (issues.length === 0) break;
193
+ * page += 1;
194
+ * }
195
+ * ```
196
+ */
197
+ async listIssues(options = {}) {
198
+ try {
199
+ const response = await this.client.get(`${this.repoPath(options)}/issues`, {
200
+ params: {
201
+ state: options.state ?? "open",
202
+ per_page: options.limit ?? 30,
203
+ page: options.page,
204
+ labels: options.labels,
205
+ },
206
+ });
207
+ return response.data
208
+ .filter((entry) => !entry["pull_request"])
209
+ .map((entry) => this.mapIssue(entry, options));
210
+ }
211
+ catch (error) {
212
+ throw (0, index_js_1.httpError)("GitHub", "list issues", error);
213
+ }
214
+ }
215
+ /**
216
+ * @description Creates a GitHub issue
217
+ * @summary `POST`s the title, body, labels, assignees, and milestone to
218
+ * `/repos/<owner>/<repo>/issues` and returns the normalized issue
219
+ * descriptor. Requires a non-empty `title` and a resolvable repository
220
+ * reference.
221
+ * @param {GithubIssueInput} input - The issue content and repository targeting.
222
+ * @returns {Promise<GithubIssue>} The normalized created issue.
223
+ * @throws {InternalError} When the title is empty or the repository reference cannot be resolved.
224
+ * @throws {NotFoundError} When the repository does not exist (HTTP 404).
225
+ * @throws {ConflictError} When GitHub answers with HTTP 409.
226
+ * @throws {BadRequestError} When GitHub answers with any other HTTP error status (e.g. invalid labels or assignees).
227
+ */
228
+ async createIssue(input) {
229
+ if (!input.title) {
230
+ throw new db_decorators_1.InternalError("GitHub issue requires a title");
231
+ }
232
+ try {
233
+ const response = await this.client.post(`${this.repoPath(input)}/issues`, {
234
+ title: input.title,
235
+ body: input.body,
236
+ labels: input.labels,
237
+ assignees: input.assignees,
238
+ milestone: input.milestone,
239
+ });
240
+ return this.mapIssue(response.data, input);
241
+ }
242
+ catch (error) {
243
+ throw (0, index_js_1.httpError)("GitHub", "create issue", error);
244
+ }
245
+ }
246
+ /**
247
+ * @description Comments on a GitHub issue
248
+ * @summary `POST`s the comment body to
249
+ * `/repos/<owner>/<repo>/issues/<number>/comments` and returns the comment
250
+ * identifier and its HTML URL. Requires a non-empty issue number and body.
251
+ * @param {GithubRepositoryRef & {number: number, body: string}} input - The repository targeting, issue number, and comment body.
252
+ * @returns {Promise<{id: number, htmlUrl?: string}>} The created comment's ID and HTML URL.
253
+ * @throws {InternalError} When the issue number or body is empty, or the repository reference cannot be resolved.
254
+ * @throws {NotFoundError} When the issue does not exist (HTTP 404).
255
+ * @throws {ConflictError} When GitHub answers with HTTP 409.
256
+ * @throws {BadRequestError} When GitHub answers with any other HTTP error status.
257
+ */
258
+ async commentOnIssue(input) {
259
+ if (!input.number || !input.body) {
260
+ throw new db_decorators_1.InternalError("GitHub comment requires an issue number and body");
261
+ }
262
+ try {
263
+ const response = await this.client.post(`${this.repoPath(input)}/issues/${input.number}/comments`, {
264
+ body: input.body,
265
+ });
266
+ return { id: Number(response.data.id ?? 0), htmlUrl: response.data.html_url };
267
+ }
268
+ catch (error) {
269
+ throw (0, index_js_1.httpError)("GitHub", "comment on issue", error);
270
+ }
271
+ }
272
+ /**
273
+ * @description Lists GitHub pull requests with state and page filtering
274
+ * @summary `GET`s `/repos/<owner>/<repo>/pulls` with a `state` filter
275
+ * (default `"open"`), a page size (`per_page`, default `30`), and a page
276
+ * number. Pull requests are returned as raw GitHub payloads.
277
+ * @param {GithubListOptions} [options] - Repository override, state, and paging options.
278
+ * @returns {Promise<unknown[]>} The raw GitHub pull-request payloads.
279
+ * @throws {InternalError} When the repository reference cannot be resolved.
280
+ * @throws {NotFoundError} When the repository does not exist (HTTP 404).
281
+ * @throws {ConflictError} When GitHub answers with HTTP 409.
282
+ * @throws {BadRequestError} When GitHub answers with any other HTTP error status.
283
+ */
284
+ async listPullRequests(options = {}) {
285
+ try {
286
+ const response = await this.client.get(`${this.repoPath(options)}/pulls`, {
287
+ params: {
288
+ state: options.state ?? "open",
289
+ per_page: options.limit ?? 30,
290
+ page: options.page,
291
+ },
292
+ });
293
+ return response.data;
294
+ }
295
+ catch (error) {
296
+ throw (0, index_js_1.httpError)("GitHub", "list pull requests", error);
297
+ }
298
+ }
299
+ }
300
+ exports.GithubService = GithubService;
301
+ //# sourceMappingURL=GithubService.js.map
302
+ //# sourceMappingURL=GithubService.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"devops/github/GithubService.cjs","sourceRoot":"","sources":["devops/github/GithubService.js"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ /**
18
+ * @module integrations/devops/github
19
+ * @summary GitHub REST v3 service (repositories, issues, pull requests).
20
+ * @description Re-exports the GitHub client-based service and its types.
21
+ */
22
+ __exportStar(require("./GithubService.cjs"), exports);
23
+ //# sourceMappingURL=index.js.map
24
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"devops/github/index.cjs","sourceRoot":"","sources":["devops/github/index.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA;;;;GAIG;AACH,qDAAmC;AACnC,iCAAiC"}