@decaf-ts/integrations 0.1.1

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 (376) hide show
  1. package/.dockerignore +0 -0
  2. package/.gitlab-ci.yml +197 -0
  3. package/.prettierrc +9 -0
  4. package/.snyk +12 -0
  5. package/LICENSE.md +21 -0
  6. package/README.md +22 -0
  7. package/dist/integrations.cjs +2 -0
  8. package/dist/integrations.cjs.map +1 -0
  9. package/dist/integrations.js +2 -0
  10. package/dist/integrations.js.map +1 -0
  11. package/docker/1password-compose.yml +24 -0
  12. package/docker/aws-compose.yml +24 -0
  13. package/docker/azure-compose.yml +23 -0
  14. package/docker/compose.integration.yml +164 -0
  15. package/docker/gcp-compose.yml +16 -0
  16. package/docker/keycloak-compose.yml +24 -0
  17. package/docker/kibana-compose.yml +67 -0
  18. package/docker/vault-compose.yml +25 -0
  19. package/eslint.config.js +32 -0
  20. package/jest.config.cjs +48 -0
  21. package/lib/cjs/docker/DockerComposeService.cjs +152 -0
  22. package/lib/cjs/docker/DockerComposeService.cjs.map +1 -0
  23. package/lib/cjs/docker/index.cjs +24 -0
  24. package/lib/cjs/docker/index.cjs.map +1 -0
  25. package/lib/cjs/index.cjs +29 -0
  26. package/lib/cjs/index.cjs.map +1 -0
  27. package/lib/cjs/keycloak/index.cjs +26 -0
  28. package/lib/cjs/keycloak/index.cjs.map +1 -0
  29. package/lib/cjs/keycloak/services/KeycloakAuthService.cjs +189 -0
  30. package/lib/cjs/keycloak/services/KeycloakAuthService.cjs.map +1 -0
  31. package/lib/cjs/keycloak/services/KeycloakClientService.cjs +245 -0
  32. package/lib/cjs/keycloak/services/KeycloakClientService.cjs.map +1 -0
  33. package/lib/cjs/keycloak/services/KeycloakIdentityProviderService.cjs +234 -0
  34. package/lib/cjs/keycloak/services/KeycloakIdentityProviderService.cjs.map +1 -0
  35. package/lib/cjs/keycloak/services/KeycloakRealmService.cjs +202 -0
  36. package/lib/cjs/keycloak/services/KeycloakRealmService.cjs.map +1 -0
  37. package/lib/cjs/keycloak/services/KeycloakRoleService.cjs +249 -0
  38. package/lib/cjs/keycloak/services/KeycloakRoleService.cjs.map +1 -0
  39. package/lib/cjs/keycloak/services/KeycloakService.cjs +225 -0
  40. package/lib/cjs/keycloak/services/KeycloakService.cjs.map +1 -0
  41. package/lib/cjs/keycloak/services/KeycloakUserService.cjs +279 -0
  42. package/lib/cjs/keycloak/services/KeycloakUserService.cjs.map +1 -0
  43. package/lib/cjs/keycloak/services/index.cjs +30 -0
  44. package/lib/cjs/keycloak/services/index.cjs.map +1 -0
  45. package/lib/cjs/keycloak/types.cjs +4 -0
  46. package/lib/cjs/keycloak/types.cjs.map +1 -0
  47. package/lib/cjs/kibana/helpers.cjs +62 -0
  48. package/lib/cjs/kibana/helpers.cjs.map +1 -0
  49. package/lib/cjs/kibana/index.cjs +27 -0
  50. package/lib/cjs/kibana/index.cjs.map +1 -0
  51. package/lib/cjs/kibana/services/KibanaAuthService.cjs +148 -0
  52. package/lib/cjs/kibana/services/KibanaAuthService.cjs.map +1 -0
  53. package/lib/cjs/kibana/services/KibanaDashboardService.cjs +228 -0
  54. package/lib/cjs/kibana/services/KibanaDashboardService.cjs.map +1 -0
  55. package/lib/cjs/kibana/services/KibanaDataViewService.cjs +216 -0
  56. package/lib/cjs/kibana/services/KibanaDataViewService.cjs.map +1 -0
  57. package/lib/cjs/kibana/services/KibanaRoleService.cjs +184 -0
  58. package/lib/cjs/kibana/services/KibanaRoleService.cjs.map +1 -0
  59. package/lib/cjs/kibana/services/KibanaService.cjs +167 -0
  60. package/lib/cjs/kibana/services/KibanaService.cjs.map +1 -0
  61. package/lib/cjs/kibana/services/KibanaSpaceService.cjs +179 -0
  62. package/lib/cjs/kibana/services/KibanaSpaceService.cjs.map +1 -0
  63. package/lib/cjs/kibana/services/KibanaUserService.cjs +198 -0
  64. package/lib/cjs/kibana/services/KibanaUserService.cjs.map +1 -0
  65. package/lib/cjs/kibana/services/index.cjs +24 -0
  66. package/lib/cjs/kibana/services/index.cjs.map +1 -0
  67. package/lib/cjs/kibana/types.cjs +4 -0
  68. package/lib/cjs/kibana/types.cjs.map +1 -0
  69. package/lib/cjs/nest/authService.cjs +37 -0
  70. package/lib/cjs/nest/authService.cjs.map +1 -0
  71. package/lib/cjs/nest/index.cjs +29 -0
  72. package/lib/cjs/nest/index.cjs.map +1 -0
  73. package/lib/cjs/nest/keycloakAuthHandler.cjs +44 -0
  74. package/lib/cjs/nest/keycloakAuthHandler.cjs.map +1 -0
  75. package/lib/cjs/nest/keycloakModule.cjs +25 -0
  76. package/lib/cjs/nest/keycloakModule.cjs.map +1 -0
  77. package/lib/cjs/nest/types.cjs +4 -0
  78. package/lib/cjs/nest/types.cjs.map +1 -0
  79. package/lib/cjs/nest/utils.cjs +68 -0
  80. package/lib/cjs/nest/utils.cjs.map +1 -0
  81. package/lib/cjs/secrets/aws/AwsSecretService.cjs +307 -0
  82. package/lib/cjs/secrets/aws/AwsSecretService.cjs.map +1 -0
  83. package/lib/cjs/secrets/aws/AwsSecretServiceConfig.cjs +4 -0
  84. package/lib/cjs/secrets/aws/AwsSecretServiceConfig.cjs.map +1 -0
  85. package/lib/cjs/secrets/aws/index.cjs +25 -0
  86. package/lib/cjs/secrets/aws/index.cjs.map +1 -0
  87. package/lib/cjs/secrets/azure/AzureKeyVaultSecretService.cjs +245 -0
  88. package/lib/cjs/secrets/azure/AzureKeyVaultSecretService.cjs.map +1 -0
  89. package/lib/cjs/secrets/azure/AzureKeyVaultSecretServiceConfig.cjs +4 -0
  90. package/lib/cjs/secrets/azure/AzureKeyVaultSecretServiceConfig.cjs.map +1 -0
  91. package/lib/cjs/secrets/azure/index.cjs +25 -0
  92. package/lib/cjs/secrets/azure/index.cjs.map +1 -0
  93. package/lib/cjs/secrets/core/SecretErrors.cjs +70 -0
  94. package/lib/cjs/secrets/core/SecretErrors.cjs.map +1 -0
  95. package/lib/cjs/secrets/core/SecretName.cjs +54 -0
  96. package/lib/cjs/secrets/core/SecretName.cjs.map +1 -0
  97. package/lib/cjs/secrets/core/SecretReference.cjs +51 -0
  98. package/lib/cjs/secrets/core/SecretReference.cjs.map +1 -0
  99. package/lib/cjs/secrets/core/SecretSerialization.cjs +52 -0
  100. package/lib/cjs/secrets/core/SecretSerialization.cjs.map +1 -0
  101. package/lib/cjs/secrets/core/SecretService.cjs +19 -0
  102. package/lib/cjs/secrets/core/SecretService.cjs.map +1 -0
  103. package/lib/cjs/secrets/core/SecretTypes.cjs +4 -0
  104. package/lib/cjs/secrets/core/SecretTypes.cjs.map +1 -0
  105. package/lib/cjs/secrets/core/index.cjs +29 -0
  106. package/lib/cjs/secrets/core/index.cjs.map +1 -0
  107. package/lib/cjs/secrets/gcp/GcpSecretManagerService.cjs +332 -0
  108. package/lib/cjs/secrets/gcp/GcpSecretManagerService.cjs.map +1 -0
  109. package/lib/cjs/secrets/gcp/GcpSecretManagerServiceConfig.cjs +4 -0
  110. package/lib/cjs/secrets/gcp/GcpSecretManagerServiceConfig.cjs.map +1 -0
  111. package/lib/cjs/secrets/gcp/index.cjs +25 -0
  112. package/lib/cjs/secrets/gcp/index.cjs.map +1 -0
  113. package/lib/cjs/secrets/index.cjs +25 -0
  114. package/lib/cjs/secrets/index.cjs.map +1 -0
  115. package/lib/cjs/secrets/model/ModelSecretCrypto.cjs +80 -0
  116. package/lib/cjs/secrets/model/ModelSecretCrypto.cjs.map +1 -0
  117. package/lib/cjs/secrets/model/ModelSecretService.cjs +271 -0
  118. package/lib/cjs/secrets/model/ModelSecretService.cjs.map +1 -0
  119. package/lib/cjs/secrets/model/ModelSecretServiceConfig.cjs +4 -0
  120. package/lib/cjs/secrets/model/ModelSecretServiceConfig.cjs.map +1 -0
  121. package/lib/cjs/secrets/model/Secret.cjs +49 -0
  122. package/lib/cjs/secrets/model/Secret.cjs.map +1 -0
  123. package/lib/cjs/secrets/model/index.cjs +26 -0
  124. package/lib/cjs/secrets/model/index.cjs.map +1 -0
  125. package/lib/cjs/secrets/onepassword/OnePasswordSecretService.cjs +402 -0
  126. package/lib/cjs/secrets/onepassword/OnePasswordSecretService.cjs.map +1 -0
  127. package/lib/cjs/secrets/onepassword/OnePasswordSecretServiceConfig.cjs +4 -0
  128. package/lib/cjs/secrets/onepassword/OnePasswordSecretServiceConfig.cjs.map +1 -0
  129. package/lib/cjs/secrets/onepassword/index.cjs +25 -0
  130. package/lib/cjs/secrets/onepassword/index.cjs.map +1 -0
  131. package/lib/cjs/secrets/vault/VaultSecretService.cjs +318 -0
  132. package/lib/cjs/secrets/vault/VaultSecretService.cjs.map +1 -0
  133. package/lib/cjs/secrets/vault/VaultSecretServiceConfig.cjs +4 -0
  134. package/lib/cjs/secrets/vault/VaultSecretServiceConfig.cjs.map +1 -0
  135. package/lib/cjs/secrets/vault/index.cjs +25 -0
  136. package/lib/cjs/secrets/vault/index.cjs.map +1 -0
  137. package/lib/cjs/utils.cjs +43 -0
  138. package/lib/cjs/utils.cjs.map +1 -0
  139. package/lib/esm/docker/DockerComposeService.js +140 -0
  140. package/lib/esm/docker/DockerComposeService.js.map +1 -0
  141. package/lib/esm/docker/index.js +7 -0
  142. package/lib/esm/docker/index.js.map +1 -0
  143. package/lib/esm/index.js +11 -0
  144. package/lib/esm/index.js.map +1 -0
  145. package/lib/esm/keycloak/index.js +9 -0
  146. package/lib/esm/keycloak/index.js.map +1 -0
  147. package/lib/esm/keycloak/services/KeycloakAuthService.js +148 -0
  148. package/lib/esm/keycloak/services/KeycloakAuthService.js.map +1 -0
  149. package/lib/esm/keycloak/services/KeycloakClientService.js +204 -0
  150. package/lib/esm/keycloak/services/KeycloakClientService.js.map +1 -0
  151. package/lib/esm/keycloak/services/KeycloakIdentityProviderService.js +193 -0
  152. package/lib/esm/keycloak/services/KeycloakIdentityProviderService.js.map +1 -0
  153. package/lib/esm/keycloak/services/KeycloakRealmService.js +161 -0
  154. package/lib/esm/keycloak/services/KeycloakRealmService.js.map +1 -0
  155. package/lib/esm/keycloak/services/KeycloakRoleService.js +208 -0
  156. package/lib/esm/keycloak/services/KeycloakRoleService.js.map +1 -0
  157. package/lib/esm/keycloak/services/KeycloakService.js +180 -0
  158. package/lib/esm/keycloak/services/KeycloakService.js.map +1 -0
  159. package/lib/esm/keycloak/services/KeycloakUserService.js +238 -0
  160. package/lib/esm/keycloak/services/KeycloakUserService.js.map +1 -0
  161. package/lib/esm/keycloak/services/index.js +13 -0
  162. package/lib/esm/keycloak/services/index.js.map +1 -0
  163. package/lib/esm/keycloak/types.js +2 -0
  164. package/lib/esm/keycloak/types.js.map +1 -0
  165. package/lib/esm/kibana/helpers.js +56 -0
  166. package/lib/esm/kibana/helpers.js.map +1 -0
  167. package/lib/esm/kibana/index.js +10 -0
  168. package/lib/esm/kibana/index.js.map +1 -0
  169. package/lib/esm/kibana/services/KibanaAuthService.js +107 -0
  170. package/lib/esm/kibana/services/KibanaAuthService.js.map +1 -0
  171. package/lib/esm/kibana/services/KibanaDashboardService.js +182 -0
  172. package/lib/esm/kibana/services/KibanaDashboardService.js.map +1 -0
  173. package/lib/esm/kibana/services/KibanaDataViewService.js +170 -0
  174. package/lib/esm/kibana/services/KibanaDataViewService.js.map +1 -0
  175. package/lib/esm/kibana/services/KibanaRoleService.js +138 -0
  176. package/lib/esm/kibana/services/KibanaRoleService.js.map +1 -0
  177. package/lib/esm/kibana/services/KibanaService.js +126 -0
  178. package/lib/esm/kibana/services/KibanaService.js.map +1 -0
  179. package/lib/esm/kibana/services/KibanaSpaceService.js +133 -0
  180. package/lib/esm/kibana/services/KibanaSpaceService.js.map +1 -0
  181. package/lib/esm/kibana/services/KibanaUserService.js +152 -0
  182. package/lib/esm/kibana/services/KibanaUserService.js.map +1 -0
  183. package/lib/esm/kibana/services/index.js +13 -0
  184. package/lib/esm/kibana/services/index.js.map +1 -0
  185. package/lib/esm/kibana/types.js +2 -0
  186. package/lib/esm/kibana/types.js.map +1 -0
  187. package/lib/esm/nest/authService.js +32 -0
  188. package/lib/esm/nest/authService.js.map +1 -0
  189. package/lib/esm/nest/index.js +12 -0
  190. package/lib/esm/nest/index.js.map +1 -0
  191. package/lib/esm/nest/keycloakAuthHandler.js +39 -0
  192. package/lib/esm/nest/keycloakAuthHandler.js.map +1 -0
  193. package/lib/esm/nest/keycloakModule.js +19 -0
  194. package/lib/esm/nest/keycloakModule.js.map +1 -0
  195. package/lib/esm/nest/types.js +2 -0
  196. package/lib/esm/nest/types.js.map +1 -0
  197. package/lib/esm/nest/utils.js +60 -0
  198. package/lib/esm/nest/utils.js.map +1 -0
  199. package/lib/esm/secrets/aws/AwsSecretService.js +302 -0
  200. package/lib/esm/secrets/aws/AwsSecretService.js.map +1 -0
  201. package/lib/esm/secrets/aws/AwsSecretServiceConfig.js +2 -0
  202. package/lib/esm/secrets/aws/AwsSecretServiceConfig.js.map +1 -0
  203. package/lib/esm/secrets/aws/index.js +8 -0
  204. package/lib/esm/secrets/aws/index.js.map +1 -0
  205. package/lib/esm/secrets/azure/AzureKeyVaultSecretService.js +240 -0
  206. package/lib/esm/secrets/azure/AzureKeyVaultSecretService.js.map +1 -0
  207. package/lib/esm/secrets/azure/AzureKeyVaultSecretServiceConfig.js +2 -0
  208. package/lib/esm/secrets/azure/AzureKeyVaultSecretServiceConfig.js.map +1 -0
  209. package/lib/esm/secrets/azure/index.js +8 -0
  210. package/lib/esm/secrets/azure/index.js.map +1 -0
  211. package/lib/esm/secrets/core/SecretErrors.js +61 -0
  212. package/lib/esm/secrets/core/SecretErrors.js.map +1 -0
  213. package/lib/esm/secrets/core/SecretName.js +49 -0
  214. package/lib/esm/secrets/core/SecretName.js.map +1 -0
  215. package/lib/esm/secrets/core/SecretReference.js +45 -0
  216. package/lib/esm/secrets/core/SecretReference.js.map +1 -0
  217. package/lib/esm/secrets/core/SecretSerialization.js +47 -0
  218. package/lib/esm/secrets/core/SecretSerialization.js.map +1 -0
  219. package/lib/esm/secrets/core/SecretService.js +14 -0
  220. package/lib/esm/secrets/core/SecretService.js.map +1 -0
  221. package/lib/esm/secrets/core/SecretTypes.js +2 -0
  222. package/lib/esm/secrets/core/SecretTypes.js.map +1 -0
  223. package/lib/esm/secrets/core/index.js +12 -0
  224. package/lib/esm/secrets/core/index.js.map +1 -0
  225. package/lib/esm/secrets/gcp/GcpSecretManagerService.js +294 -0
  226. package/lib/esm/secrets/gcp/GcpSecretManagerService.js.map +1 -0
  227. package/lib/esm/secrets/gcp/GcpSecretManagerServiceConfig.js +2 -0
  228. package/lib/esm/secrets/gcp/GcpSecretManagerServiceConfig.js.map +1 -0
  229. package/lib/esm/secrets/gcp/index.js +8 -0
  230. package/lib/esm/secrets/gcp/index.js.map +1 -0
  231. package/lib/esm/secrets/index.js +8 -0
  232. package/lib/esm/secrets/index.js.map +1 -0
  233. package/lib/esm/secrets/model/ModelSecretCrypto.js +73 -0
  234. package/lib/esm/secrets/model/ModelSecretCrypto.js.map +1 -0
  235. package/lib/esm/secrets/model/ModelSecretService.js +266 -0
  236. package/lib/esm/secrets/model/ModelSecretService.js.map +1 -0
  237. package/lib/esm/secrets/model/ModelSecretServiceConfig.js +2 -0
  238. package/lib/esm/secrets/model/ModelSecretServiceConfig.js.map +1 -0
  239. package/lib/esm/secrets/model/Secret.js +39 -0
  240. package/lib/esm/secrets/model/Secret.js.map +1 -0
  241. package/lib/esm/secrets/model/index.js +9 -0
  242. package/lib/esm/secrets/model/index.js.map +1 -0
  243. package/lib/esm/secrets/onepassword/OnePasswordSecretService.js +397 -0
  244. package/lib/esm/secrets/onepassword/OnePasswordSecretService.js.map +1 -0
  245. package/lib/esm/secrets/onepassword/OnePasswordSecretServiceConfig.js +2 -0
  246. package/lib/esm/secrets/onepassword/OnePasswordSecretServiceConfig.js.map +1 -0
  247. package/lib/esm/secrets/onepassword/index.js +8 -0
  248. package/lib/esm/secrets/onepassword/index.js.map +1 -0
  249. package/lib/esm/secrets/vault/VaultSecretService.js +312 -0
  250. package/lib/esm/secrets/vault/VaultSecretService.js.map +1 -0
  251. package/lib/esm/secrets/vault/VaultSecretServiceConfig.js +2 -0
  252. package/lib/esm/secrets/vault/VaultSecretServiceConfig.js.map +1 -0
  253. package/lib/esm/secrets/vault/index.js +8 -0
  254. package/lib/esm/secrets/vault/index.js.map +1 -0
  255. package/lib/esm/utils.js +39 -0
  256. package/lib/esm/utils.js.map +1 -0
  257. package/lib/types/docker/DockerComposeService.d.cts +53 -0
  258. package/lib/types/docker/DockerComposeService.d.mts +53 -0
  259. package/lib/types/docker/index.d.cts +6 -0
  260. package/lib/types/docker/index.d.mts +6 -0
  261. package/lib/types/index.d.cts +10 -0
  262. package/lib/types/index.d.mts +10 -0
  263. package/lib/types/keycloak/index.d.cts +8 -0
  264. package/lib/types/keycloak/index.d.mts +8 -0
  265. package/lib/types/keycloak/services/KeycloakAuthService.d.cts +20 -0
  266. package/lib/types/keycloak/services/KeycloakAuthService.d.mts +20 -0
  267. package/lib/types/keycloak/services/KeycloakClientService.d.cts +25 -0
  268. package/lib/types/keycloak/services/KeycloakClientService.d.mts +25 -0
  269. package/lib/types/keycloak/services/KeycloakIdentityProviderService.d.cts +23 -0
  270. package/lib/types/keycloak/services/KeycloakIdentityProviderService.d.mts +23 -0
  271. package/lib/types/keycloak/services/KeycloakRealmService.d.cts +31 -0
  272. package/lib/types/keycloak/services/KeycloakRealmService.d.mts +31 -0
  273. package/lib/types/keycloak/services/KeycloakRoleService.d.cts +29 -0
  274. package/lib/types/keycloak/services/KeycloakRoleService.d.mts +29 -0
  275. package/lib/types/keycloak/services/KeycloakService.d.cts +38 -0
  276. package/lib/types/keycloak/services/KeycloakService.d.mts +38 -0
  277. package/lib/types/keycloak/services/KeycloakUserService.d.cts +46 -0
  278. package/lib/types/keycloak/services/KeycloakUserService.d.mts +46 -0
  279. package/lib/types/keycloak/services/index.d.cts +12 -0
  280. package/lib/types/keycloak/services/index.d.mts +12 -0
  281. package/lib/types/keycloak/types.d.cts +103 -0
  282. package/lib/types/keycloak/types.d.mts +103 -0
  283. package/lib/types/kibana/helpers.d.cts +9 -0
  284. package/lib/types/kibana/helpers.d.mts +9 -0
  285. package/lib/types/kibana/index.d.cts +9 -0
  286. package/lib/types/kibana/index.d.mts +9 -0
  287. package/lib/types/kibana/services/KibanaAuthService.d.cts +16 -0
  288. package/lib/types/kibana/services/KibanaAuthService.d.mts +16 -0
  289. package/lib/types/kibana/services/KibanaDashboardService.d.cts +31 -0
  290. package/lib/types/kibana/services/KibanaDashboardService.d.mts +31 -0
  291. package/lib/types/kibana/services/KibanaDataViewService.d.cts +23 -0
  292. package/lib/types/kibana/services/KibanaDataViewService.d.mts +23 -0
  293. package/lib/types/kibana/services/KibanaRoleService.d.cts +19 -0
  294. package/lib/types/kibana/services/KibanaRoleService.d.mts +19 -0
  295. package/lib/types/kibana/services/KibanaService.d.cts +55 -0
  296. package/lib/types/kibana/services/KibanaService.d.mts +55 -0
  297. package/lib/types/kibana/services/KibanaSpaceService.d.cts +20 -0
  298. package/lib/types/kibana/services/KibanaSpaceService.d.mts +20 -0
  299. package/lib/types/kibana/services/KibanaUserService.d.cts +19 -0
  300. package/lib/types/kibana/services/KibanaUserService.d.mts +19 -0
  301. package/lib/types/kibana/services/index.d.cts +12 -0
  302. package/lib/types/kibana/services/index.d.mts +12 -0
  303. package/lib/types/kibana/types.d.cts +75 -0
  304. package/lib/types/kibana/types.d.mts +75 -0
  305. package/lib/types/nest/authService.d.cts +9 -0
  306. package/lib/types/nest/authService.d.mts +9 -0
  307. package/lib/types/nest/index.d.cts +11 -0
  308. package/lib/types/nest/index.d.mts +11 -0
  309. package/lib/types/nest/keycloakAuthHandler.d.cts +7 -0
  310. package/lib/types/nest/keycloakAuthHandler.d.mts +7 -0
  311. package/lib/types/nest/keycloakModule.d.cts +15 -0
  312. package/lib/types/nest/keycloakModule.d.mts +15 -0
  313. package/lib/types/nest/types.d.cts +48 -0
  314. package/lib/types/nest/types.d.mts +48 -0
  315. package/lib/types/nest/utils.d.cts +11 -0
  316. package/lib/types/nest/utils.d.mts +11 -0
  317. package/lib/types/secrets/aws/AwsSecretService.d.cts +19 -0
  318. package/lib/types/secrets/aws/AwsSecretService.d.mts +19 -0
  319. package/lib/types/secrets/aws/AwsSecretServiceConfig.d.cts +16 -0
  320. package/lib/types/secrets/aws/AwsSecretServiceConfig.d.mts +16 -0
  321. package/lib/types/secrets/aws/index.d.cts +7 -0
  322. package/lib/types/secrets/aws/index.d.mts +7 -0
  323. package/lib/types/secrets/azure/AzureKeyVaultSecretService.d.cts +20 -0
  324. package/lib/types/secrets/azure/AzureKeyVaultSecretService.d.mts +20 -0
  325. package/lib/types/secrets/azure/AzureKeyVaultSecretServiceConfig.d.cts +11 -0
  326. package/lib/types/secrets/azure/AzureKeyVaultSecretServiceConfig.d.mts +11 -0
  327. package/lib/types/secrets/azure/index.d.cts +7 -0
  328. package/lib/types/secrets/azure/index.d.mts +7 -0
  329. package/lib/types/secrets/core/SecretErrors.d.cts +15 -0
  330. package/lib/types/secrets/core/SecretErrors.d.mts +15 -0
  331. package/lib/types/secrets/core/SecretName.d.cts +2 -0
  332. package/lib/types/secrets/core/SecretName.d.mts +2 -0
  333. package/lib/types/secrets/core/SecretReference.d.cts +13 -0
  334. package/lib/types/secrets/core/SecretReference.d.mts +13 -0
  335. package/lib/types/secrets/core/SecretSerialization.d.cts +3 -0
  336. package/lib/types/secrets/core/SecretSerialization.d.mts +3 -0
  337. package/lib/types/secrets/core/SecretService.d.cts +22 -0
  338. package/lib/types/secrets/core/SecretService.d.mts +22 -0
  339. package/lib/types/secrets/core/SecretTypes.d.cts +76 -0
  340. package/lib/types/secrets/core/SecretTypes.d.mts +76 -0
  341. package/lib/types/secrets/core/index.d.cts +11 -0
  342. package/lib/types/secrets/core/index.d.mts +11 -0
  343. package/lib/types/secrets/gcp/GcpSecretManagerService.d.cts +20 -0
  344. package/lib/types/secrets/gcp/GcpSecretManagerService.d.mts +20 -0
  345. package/lib/types/secrets/gcp/GcpSecretManagerServiceConfig.d.cts +15 -0
  346. package/lib/types/secrets/gcp/GcpSecretManagerServiceConfig.d.mts +15 -0
  347. package/lib/types/secrets/gcp/index.d.cts +7 -0
  348. package/lib/types/secrets/gcp/index.d.mts +7 -0
  349. package/lib/types/secrets/index.d.cts +7 -0
  350. package/lib/types/secrets/index.d.mts +7 -0
  351. package/lib/types/secrets/model/ModelSecretCrypto.d.cts +11 -0
  352. package/lib/types/secrets/model/ModelSecretCrypto.d.mts +11 -0
  353. package/lib/types/secrets/model/ModelSecretService.d.cts +21 -0
  354. package/lib/types/secrets/model/ModelSecretService.d.mts +21 -0
  355. package/lib/types/secrets/model/ModelSecretServiceConfig.d.cts +10 -0
  356. package/lib/types/secrets/model/ModelSecretServiceConfig.d.mts +10 -0
  357. package/lib/types/secrets/model/Secret.d.cts +24 -0
  358. package/lib/types/secrets/model/Secret.d.mts +24 -0
  359. package/lib/types/secrets/model/index.d.cts +8 -0
  360. package/lib/types/secrets/model/index.d.mts +8 -0
  361. package/lib/types/secrets/onepassword/OnePasswordSecretService.d.cts +22 -0
  362. package/lib/types/secrets/onepassword/OnePasswordSecretService.d.mts +22 -0
  363. package/lib/types/secrets/onepassword/OnePasswordSecretServiceConfig.d.cts +13 -0
  364. package/lib/types/secrets/onepassword/OnePasswordSecretServiceConfig.d.mts +13 -0
  365. package/lib/types/secrets/onepassword/index.d.cts +7 -0
  366. package/lib/types/secrets/onepassword/index.d.mts +7 -0
  367. package/lib/types/secrets/vault/VaultSecretService.d.cts +37 -0
  368. package/lib/types/secrets/vault/VaultSecretService.d.mts +37 -0
  369. package/lib/types/secrets/vault/VaultSecretServiceConfig.d.cts +13 -0
  370. package/lib/types/secrets/vault/VaultSecretServiceConfig.d.mts +13 -0
  371. package/lib/types/secrets/vault/index.d.cts +7 -0
  372. package/lib/types/secrets/vault/index.d.mts +7 -0
  373. package/lib/types/utils.d.cts +7 -0
  374. package/lib/types/utils.d.mts +7 -0
  375. package/package.json +192 -0
  376. package/renovate.json +21 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AzureKeyVaultSecretServiceConfig.js","sourceRoot":"","sources":["../../../../src/secrets/azure/AzureKeyVaultSecretServiceConfig.ts"],"names":[],"mappings":""}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @module integrations/secrets/azure
3
+ * @summary Azure Key Vault secret service exports.
4
+ * @description Re-exports the Azure Key Vault service and its configuration.
5
+ */
6
+ export * from "./AzureKeyVaultSecretService.js";
7
+ export * from "./AzureKeyVaultSecretServiceConfig.js";
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/secrets/azure/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,gDAA6C;AAC7C,sDAAmD"}
@@ -0,0 +1,61 @@
1
+ /**
2
+ * @module integrations/secrets/core/errors
3
+ * @summary Secret core errors.
4
+ * @description Error classes used by the secret service abstraction and provider implementations.
5
+ */
6
+ import { InternalError } from "@decaf-ts/db-decorators";
7
+ export class SecretError extends InternalError {
8
+ constructor(secretCode, message, cause) {
9
+ super(message);
10
+ this.secretCode = secretCode;
11
+ this.name = "SecretError";
12
+ if (cause) {
13
+ this.cause = cause;
14
+ }
15
+ }
16
+ }
17
+ export function translateError(error) {
18
+ const message = error.message || error.name;
19
+ const lowerMessage = message.toLowerCase();
20
+ if (lowerMessage.includes("not found") || lowerMessage.includes("404")) {
21
+ return new SecretError("SECRET_NOT_FOUND", `Secret not found: ${message}`, error);
22
+ }
23
+ if (lowerMessage.includes("already exists") ||
24
+ lowerMessage.includes("conflict") ||
25
+ lowerMessage.includes("409")) {
26
+ return new SecretError("SECRET_ALREADY_EXISTS", `Secret already exists: ${message}`, error);
27
+ }
28
+ if (lowerMessage.includes("disabled") || lowerMessage.includes("403")) {
29
+ return new SecretError("SECRET_DISABLED", `Secret is disabled: ${message}`, error);
30
+ }
31
+ if (lowerMessage.includes("unauthorized") || lowerMessage.includes("401")) {
32
+ return new SecretError("SECRET_PROVIDER_AUTH_FAILED", `Authentication failed: ${message}`, error);
33
+ }
34
+ if (lowerMessage.includes("permission") || lowerMessage.includes("403")) {
35
+ return new SecretError("SECRET_PROVIDER_PERMISSION_DENIED", `Permission denied: ${message}`, error);
36
+ }
37
+ if (lowerMessage.includes("rate limit") || lowerMessage.includes("429")) {
38
+ return new SecretError("SECRET_PROVIDER_RATE_LIMITED", `Rate limited: ${message}`, error);
39
+ }
40
+ if (lowerMessage.includes("provider") ||
41
+ lowerMessage.includes("unavailable") ||
42
+ lowerMessage.includes("connection") ||
43
+ lowerMessage.includes("timeout")) {
44
+ return new SecretError("SECRET_PROVIDER_UNAVAILABLE", `Provider unavailable: ${message}`, error);
45
+ }
46
+ return new SecretError("SECRET_PROVIDER_CONFLICT", `Provider error: ${message}`, error);
47
+ }
48
+ export function translateNameError(error) {
49
+ return new SecretError("SECRET_INVALID_NAME", `Invalid secret name: ${error.message}`, error);
50
+ }
51
+ export function translateSerializationError(error, operation) {
52
+ return new SecretError(operation === "serialize"
53
+ ? "SECRET_SERIALIZATION_FAILED"
54
+ : "SECRET_DESERIALIZATION_FAILED", `Payload ${operation} failed: ${error.message}`, error);
55
+ }
56
+ export function translateCryptoError(error, operation) {
57
+ return new SecretError(operation === "encryption"
58
+ ? "SECRET_ENCRYPTION_FAILED"
59
+ : "SECRET_DECRYPTION_FAILED", `Crypto ${operation} failed: ${error.message}`, error);
60
+ }
61
+ //# sourceMappingURL=SecretErrors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SecretErrors.js","sourceRoot":"","sources":["../../../../src/secrets/core/SecretErrors.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ /**
2
+ * @module integrations/secrets/core/name
3
+ * @summary Secret name helpers.
4
+ * @description Validation and normalization helpers for secret names.
5
+ */
6
+ import { SecretError } from "./SecretErrors.js";
7
+ const MAX_NAME_LENGTH = 255;
8
+ const SAFE_PATTERN = /^[a-zA-Z0-9_-]+$/;
9
+ function hasControlCharacters(value) {
10
+ for (const char of value) {
11
+ const code = char.charCodeAt(0);
12
+ if (code <= 31 || code === 127) {
13
+ return true;
14
+ }
15
+ }
16
+ return false;
17
+ }
18
+ export function validateSecretName(name) {
19
+ if (!name || typeof name !== "string") {
20
+ return false;
21
+ }
22
+ const trimmed = name.trim();
23
+ if (trimmed.length === 0) {
24
+ return false;
25
+ }
26
+ if (trimmed.length > MAX_NAME_LENGTH) {
27
+ return false;
28
+ }
29
+ if (hasControlCharacters(trimmed)) {
30
+ return false;
31
+ }
32
+ if (trimmed.includes("..")) {
33
+ return false;
34
+ }
35
+ if (trimmed.includes(" ")) {
36
+ return false;
37
+ }
38
+ if (!SAFE_PATTERN.test(trimmed)) {
39
+ return false;
40
+ }
41
+ return true;
42
+ }
43
+ export function normalizeSecretName(name) {
44
+ if (!validateSecretName(name)) {
45
+ throw new SecretError("SECRET_INVALID_NAME", `Invalid secret name: ${name}`);
46
+ }
47
+ return name.trim();
48
+ }
49
+ //# sourceMappingURL=SecretName.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SecretName.js","sourceRoot":"","sources":["../../../../src/secrets/core/SecretName.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,WAAW,EAAE,0BAAuB;AAE7C,MAAM,eAAe,GAAG,GAAG,CAAC;AAC5B,MAAM,YAAY,GAAG,kBAAkB,CAAC;AAExC,SAAS,oBAAoB,CAAC,KAAa;IACzC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAChC,IAAI,IAAI,IAAI,EAAE,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YAC/B,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IAE5B,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,GAAG,eAAe,EAAE,CAAC;QACrC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,oBAAoB,CAAC,OAAO,CAAC,EAAE,CAAC;QAClC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAChC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAAY;IAC9C,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,WAAW,CACnB,qBAAqB,EACrB,wBAAwB,IAAI,EAAE,CAC/B,CAAC;IACJ,CAAC;IAED,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC;AACrB,CAAC"}
@@ -0,0 +1,45 @@
1
+ import { SecretError } from "./SecretErrors.js";
2
+ const URI_PATTERN = /^secrets\/(?<provider>[a-z-]+)\/(?<name>[a-zA-Z0-9_-]+)(?:\/version\/(?<version>[a-zA-Z0-9_-]+))?$/;
3
+ export function parseSecretReference(ref) {
4
+ const match = ref.match(URI_PATTERN);
5
+ if (!match || !match.groups) {
6
+ throw new SecretError("SECRET_INVALID_NAME", `Invalid secret reference format: ${ref}`);
7
+ }
8
+ const { provider, name, version } = match.groups;
9
+ if (!isValidProvider(provider)) {
10
+ throw new SecretError("SECRET_INVALID_NAME", `Invalid provider in reference: ${provider}`);
11
+ }
12
+ return {
13
+ provider: provider,
14
+ name,
15
+ version,
16
+ };
17
+ }
18
+ export function constructSecretReference(provider, name, version) {
19
+ if (version) {
20
+ return `secrets/${provider}/${name}/version/${version}`;
21
+ }
22
+ return `secrets/${provider}/${name}`;
23
+ }
24
+ export function isValidSecretReference(ref) {
25
+ try {
26
+ parseSecretReference(ref);
27
+ return true;
28
+ }
29
+ catch {
30
+ return false;
31
+ }
32
+ }
33
+ function isValidProvider(provider) {
34
+ const validProviders = [
35
+ "model",
36
+ "memory",
37
+ "hashicorp-vault",
38
+ "aws-secrets-manager",
39
+ "azure-key-vault",
40
+ "gcp-secret-manager",
41
+ "1password",
42
+ ];
43
+ return validProviders.includes(provider);
44
+ }
45
+ //# sourceMappingURL=SecretReference.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SecretReference.js","sourceRoot":"","sources":["../../../../src/secrets/core/SecretReference.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,WAAW,EAAE,0BAAuB;AAE7C,MAAM,WAAW,GACf,oGAAyH,CAAC;AAC5H,MAAM,UAAU,oBAAoB,CAAC,GAAW;IAK9C,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAErC,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QAC5B,MAAM,IAAI,WAAW,CACnB,qBAAqB,EACrB,oCAAoC,GAAG,EAAE,CAC1C,CAAC;IACJ,CAAC;IAED,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC;IAEjD,IAAI,CAAC,eAAe,CAAC,QAA0B,CAAC,EAAE,CAAC;QACjD,MAAM,IAAI,WAAW,CACnB,qBAAqB,EACrB,kCAAkC,QAAQ,EAAE,CAC7C,CAAC;IACJ,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,QAA0B;QACpC,IAAI;QACJ,OAAO;KACR,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,QAAwB,EACxB,IAAY,EACZ,OAAgB;IAEhB,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,WAAW,QAAQ,IAAI,IAAI,YAAY,OAAO,EAAE,CAAC;IAC1D,CAAC;IACD,OAAO,WAAW,QAAQ,IAAI,IAAI,EAAE,CAAC;AACvC,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,GAAW;IAChD,IAAI,CAAC;QACH,oBAAoB,CAAC,GAAG,CAAC,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CAAC,QAAgB;IACvC,MAAM,cAAc,GAAqB;QACvC,OAAO;QACP,QAAQ;QACR,iBAAiB;QACjB,qBAAqB;QACrB,iBAAiB;QACjB,oBAAoB;QACpB,WAAW;KACZ,CAAC;IACF,OAAO,cAAc,CAAC,QAAQ,CAAC,QAA0B,CAAC,CAAC;AAC7D,CAAC"}
@@ -0,0 +1,47 @@
1
+ /**
2
+ * @module integrations/secrets/core/serialization
3
+ * @summary Secret serialization helpers.
4
+ * @description Utilities for converting secret payloads to and from transport-safe encodings.
5
+ */
6
+ import { SecretError } from "./SecretErrors.js";
7
+ export function serializeSecretPayload(payload) {
8
+ if (typeof payload === "string") {
9
+ return { encoding: "utf8", value: payload };
10
+ }
11
+ if (payload instanceof Uint8Array) {
12
+ return {
13
+ encoding: "base64",
14
+ value: Buffer.from(payload).toString("base64"),
15
+ };
16
+ }
17
+ if (typeof payload === "object" && payload !== null) {
18
+ try {
19
+ return {
20
+ encoding: "json",
21
+ value: JSON.stringify(payload),
22
+ };
23
+ }
24
+ catch (error) {
25
+ throw new SecretError("SECRET_SERIALIZATION_FAILED", `Failed to serialize payload as JSON: ${error.message}`, error);
26
+ }
27
+ }
28
+ throw new SecretError("SECRET_INVALID_PAYLOAD", `Invalid payload type: ${typeof payload}`);
29
+ }
30
+ export function deserializeSecretPayload(serialized) {
31
+ switch (serialized.encoding) {
32
+ case "utf8":
33
+ return serialized.value;
34
+ case "json":
35
+ try {
36
+ return JSON.parse(serialized.value);
37
+ }
38
+ catch (error) {
39
+ throw new SecretError("SECRET_DESERIALIZATION_FAILED", `Failed to deserialize JSON payload: ${error.message}`, error);
40
+ }
41
+ case "base64":
42
+ return Buffer.from(serialized.value, "base64");
43
+ default:
44
+ throw new SecretError("SECRET_DESERIALIZATION_FAILED", `Unknown encoding: ${serialized.encoding}`);
45
+ }
46
+ }
47
+ //# sourceMappingURL=SecretSerialization.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SecretSerialization.js","sourceRoot":"","sources":["../../../../src/secrets/core/SecretSerialization.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,WAAW,EAAE,0BAAuB;AAG7C,MAAM,UAAU,sBAAsB,CAAC,OAAsB;IAC3D,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;IAC9C,CAAC;IAED,IAAI,OAAO,YAAY,UAAU,EAAE,CAAC;QAClC,OAAO;YACL,QAAQ,EAAE,QAAQ;YAClB,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;SAC/C,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACpD,IAAI,CAAC;YACH,OAAO;gBACL,QAAQ,EAAE,MAAM;gBAChB,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;aAC/B,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,WAAW,CACnB,6BAA6B,EAC7B,wCAAyC,KAAe,CAAC,OAAO,EAAE,EAClE,KAAc,CACf,CAAC;QACJ,CAAC;IACH,CAAC;IAED,MAAM,IAAI,WAAW,CACnB,wBAAwB,EACxB,yBAAyB,OAAO,OAAO,EAAE,CAC1C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,UAA2D;IAE3D,QAAQ,UAAU,CAAC,QAAQ,EAAE,CAAC;QAC5B,KAAK,MAAM;YACT,OAAO,UAAU,CAAC,KAAK,CAAC;QAC1B,KAAK,MAAM;YACT,IAAI,CAAC;gBACH,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAA4B,CAAC;YACjE,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,IAAI,WAAW,CACnB,+BAA+B,EAC/B,uCAAwC,KAAe,CAAC,OAAO,EAAE,EACjE,KAAc,CACf,CAAC;YACJ,CAAC;QACH,KAAK,QAAQ;YACX,OAAO,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QACjD;YACE,MAAM,IAAI,WAAW,CACnB,+BAA+B,EAC/B,qBAAqB,UAAU,CAAC,QAAQ,EAAE,CAC3C,CAAC;IACN,CAAC;AACH,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { Service } from "@decaf-ts/core";
2
+ /**
3
+ * @class SecretService
4
+ * @summary Base abstraction for secret backends.
5
+ * @description Defines the shared CRUD and metadata contract implemented by the model-backed and provider-backed secret services.
6
+ */
7
+ export class SecretService extends Service {
8
+ constructor(config) {
9
+ super();
10
+ this.config = Object.freeze({ ...config });
11
+ this.provider = config.provider;
12
+ }
13
+ }
14
+ //# sourceMappingURL=SecretService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SecretService.js","sourceRoot":"","sources":["../../../../src/secrets/core/SecretService.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAYzC;;;;GAIG;AACH,MAAM,OAAgB,aAEpB,SAAQ,OAAO;IAIf,YAAsB,MAAe;QACnC,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;QAC3C,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;IAClC,CAAC;CAqCF"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=SecretTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SecretTypes.js","sourceRoot":"","sources":["../../../../src/secrets/core/SecretTypes.ts"],"names":[],"mappings":""}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * @module integrations/secrets/core
3
+ * @summary Secret core exports.
4
+ * @description Re-exports the secret core types, errors, serialization helpers, and name/reference utilities.
5
+ */
6
+ export * from "./SecretTypes.js";
7
+ export * from "./SecretErrors.js";
8
+ export * from "./SecretSerialization.js";
9
+ export * from "./SecretName.js";
10
+ export * from "./SecretReference.js";
11
+ export * from "./SecretService.js";
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/secrets/core/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,iCAA8B;AAC9B,kCAA+B;AAC/B,yCAAsC;AACtC,gCAA6B;AAC7B,qCAAkC;AAClC,mCAAgC"}
@@ -0,0 +1,294 @@
1
+ import { SecretManagerServiceClient } from "@google-cloud/secret-manager";
2
+ import * as grpc from "@grpc/grpc-js";
3
+ import { ClientBasedService } from "@decaf-ts/core";
4
+ import { validateSecretName, normalizeSecretName } from "./../core/index.js";
5
+ import { serializeSecretPayload, deserializeSecretPayload, } from "./../core/index.js";
6
+ import { BadRequestError, ConflictError, InternalError, NotFoundError, } from "@decaf-ts/db-decorators";
7
+ export class GcpSecretManagerService extends ClientBasedService {
8
+ constructor() {
9
+ super(...arguments);
10
+ this.provider = "gcp-secret-manager";
11
+ }
12
+ async initialize(...args) {
13
+ const { ctxArgs } = (await this.logCtx(args, "initialize", true)).for(this.initialize);
14
+ const config = ctxArgs[0];
15
+ const client = new SecretManagerServiceClient({
16
+ projectId: config.projectId,
17
+ credentials: config.credentials,
18
+ ...(config.apiEndpoint
19
+ ? {
20
+ apiEndpoint: config.apiEndpoint,
21
+ ...(config.port ? { port: config.port } : {}),
22
+ sslCreds: grpc.credentials.createInsecure(),
23
+ }
24
+ : {}),
25
+ });
26
+ this._config = config;
27
+ this._client = client;
28
+ return { config, client };
29
+ }
30
+ async store(name, value, options = {}, ...args) {
31
+ const { log } = (await this.logCtx(args, "store", true)).for(this.store);
32
+ log.verbose(`Storing secret ${name}`);
33
+ try {
34
+ validateSecretName(name);
35
+ }
36
+ catch (error) {
37
+ throw this.parseError(error);
38
+ }
39
+ const normalizedName = normalizeSecretName(name);
40
+ const serialized = serializeSecretPayload(value);
41
+ const parent = `projects/${this.config.projectId}`;
42
+ const request = {
43
+ parent,
44
+ secretId: normalizedName,
45
+ secret: {
46
+ labels: options.tags,
47
+ replication: {
48
+ automatic: {},
49
+ },
50
+ },
51
+ };
52
+ let secretName;
53
+ try {
54
+ const [secret] = await this.client.createSecret(request);
55
+ secretName = secret.name || "";
56
+ }
57
+ catch (error) {
58
+ if (error?.message?.toLowerCase()?.includes?.("already")) {
59
+ try {
60
+ const [existingSecret] = await this.client.getSecret({
61
+ name: `${parent}/secrets/${normalizedName}`,
62
+ });
63
+ secretName = existingSecret.name || "";
64
+ }
65
+ catch (getError) {
66
+ throw this.parseError(getError);
67
+ }
68
+ }
69
+ else {
70
+ throw this.parseError(error);
71
+ }
72
+ }
73
+ const payloadBuffer = Buffer.from(JSON.stringify(serialized), "utf8");
74
+ const versionRequest = {
75
+ parent: secretName,
76
+ payload: {
77
+ data: payloadBuffer,
78
+ },
79
+ };
80
+ try {
81
+ const [version] = await this.client.addSecretVersion(versionRequest);
82
+ return {
83
+ provider: this.provider,
84
+ name: normalizedName,
85
+ version: version?.name?.split("/").pop(),
86
+ };
87
+ }
88
+ catch (error) {
89
+ throw this.parseError(error);
90
+ }
91
+ }
92
+ async retrieve(nameOrRef, ...args) {
93
+ const { log } = (await this.logCtx(args, "retrieve", true)).for(this.retrieve);
94
+ const nameStr = typeof nameOrRef === "string" ? nameOrRef : nameOrRef.name;
95
+ log.verbose(`Retrieving secret ${nameStr}`);
96
+ let name;
97
+ if (typeof nameOrRef === "string") {
98
+ name = nameOrRef;
99
+ }
100
+ else {
101
+ name = nameOrRef.name;
102
+ }
103
+ try {
104
+ validateSecretName(name);
105
+ }
106
+ catch (error) {
107
+ throw this.parseError(error);
108
+ }
109
+ const normalizedName = normalizeSecretName(name);
110
+ const parent = `projects/${this.config.projectId}`;
111
+ const secretPath = `${parent}/secrets/${normalizedName}`;
112
+ try {
113
+ const [secret] = await this.client.getSecret({
114
+ name: secretPath,
115
+ });
116
+ if (!secret?.name) {
117
+ throw new NotFoundError(`Secret "${normalizedName}" not found`);
118
+ }
119
+ const secretVersionPath = `${secret.name}/versions/latest`;
120
+ const [accessResponse] = await this.client.accessSecretVersion({
121
+ name: secretVersionPath,
122
+ });
123
+ if (!accessResponse?.payload?.data) {
124
+ throw new NotFoundError(`No secret value found for "${normalizedName}"`);
125
+ }
126
+ const payload = JSON.parse(Buffer.from(accessResponse.payload.data).toString("utf8"));
127
+ return deserializeSecretPayload(payload);
128
+ }
129
+ catch (error) {
130
+ throw this.parseError(error);
131
+ }
132
+ }
133
+ async delete(nameOrRef, ...args) {
134
+ const { log } = (await this.logCtx(args, "delete", true)).for(this.delete);
135
+ const nameStr = typeof nameOrRef === "string" ? nameOrRef : nameOrRef.name;
136
+ log.verbose(`Deleting secret ${nameStr}`);
137
+ let name;
138
+ if (typeof nameOrRef === "string") {
139
+ name = nameOrRef;
140
+ }
141
+ else {
142
+ name = nameOrRef.name;
143
+ }
144
+ try {
145
+ validateSecretName(name);
146
+ }
147
+ catch (error) {
148
+ throw this.parseError(error);
149
+ }
150
+ const normalizedName = normalizeSecretName(name);
151
+ const parent = `projects/${this.config.projectId}`;
152
+ const secretPath = `${parent}/secrets/${normalizedName}`;
153
+ try {
154
+ await this.client.deleteSecret({ name: secretPath });
155
+ }
156
+ catch (error) {
157
+ throw this.parseError(error);
158
+ }
159
+ }
160
+ async exists(nameOrRef, ...args) {
161
+ const { log } = (await this.logCtx(args, "exists", true)).for(this.exists);
162
+ const nameStr = typeof nameOrRef === "string" ? nameOrRef : nameOrRef.name;
163
+ log.verbose(`Checking if secret ${nameStr} exists`);
164
+ let name;
165
+ if (typeof nameOrRef === "string") {
166
+ name = nameOrRef;
167
+ }
168
+ else {
169
+ name = nameOrRef.name;
170
+ }
171
+ try {
172
+ validateSecretName(name);
173
+ }
174
+ catch (error) {
175
+ throw this.parseError(error);
176
+ }
177
+ const normalizedName = normalizeSecretName(name);
178
+ const parent = `projects/${this.config.projectId}`;
179
+ try {
180
+ await this.client.getSecret({
181
+ name: `${parent}/secrets/${normalizedName}`,
182
+ });
183
+ return true;
184
+ }
185
+ catch (error) {
186
+ if (error?.code === 5 ||
187
+ error?.message?.toLowerCase()?.includes?.("not found") ||
188
+ error?.message?.includes?.("404")) {
189
+ return false;
190
+ }
191
+ throw this.parseError(error);
192
+ }
193
+ }
194
+ async list(options = {}, ...args) {
195
+ const { log } = (await this.logCtx(args, "list", true)).for(this.list);
196
+ log.verbose("Listing secrets");
197
+ const result = [];
198
+ const parent = `projects/${this.config.projectId}`;
199
+ const [secrets] = await this.client.listSecrets({
200
+ parent,
201
+ pageSize: options.limit ?? 50,
202
+ });
203
+ for (const secret of secrets || []) {
204
+ if (!secret.name) {
205
+ continue;
206
+ }
207
+ const nameParts = secret.name.split("/");
208
+ const name = nameParts[nameParts.length - 1];
209
+ result.push({
210
+ provider: this.provider,
211
+ name: name,
212
+ });
213
+ }
214
+ return result;
215
+ }
216
+ async metadata(nameOrRef, ...args) {
217
+ const { log } = (await this.logCtx(args, "metadata", true)).for(this.metadata);
218
+ const nameStr = typeof nameOrRef === "string" ? nameOrRef : nameOrRef.name;
219
+ log.verbose(`Getting metadata for secret ${nameStr}`);
220
+ let name;
221
+ if (typeof nameOrRef === "string") {
222
+ name = nameOrRef;
223
+ }
224
+ else {
225
+ name = nameOrRef.name;
226
+ }
227
+ try {
228
+ validateSecretName(name);
229
+ }
230
+ catch (error) {
231
+ throw this.parseError(error);
232
+ }
233
+ const normalizedName = normalizeSecretName(name);
234
+ const parent = `projects/${this.config.projectId}`;
235
+ try {
236
+ const [secret] = await this.client.getSecret({
237
+ name: `${parent}/secrets/${normalizedName}`,
238
+ });
239
+ if (!secret?.name) {
240
+ return undefined;
241
+ }
242
+ const nameParts = secret.name.split("/");
243
+ const resolvedName = nameParts[nameParts.length - 1];
244
+ return {
245
+ provider: this.provider,
246
+ name: resolvedName,
247
+ };
248
+ }
249
+ catch (error) {
250
+ if (error?.code === 5 ||
251
+ error?.message?.toLowerCase()?.includes?.("not found") ||
252
+ error?.message?.includes?.("404")) {
253
+ return undefined;
254
+ }
255
+ throw this.parseError(error);
256
+ }
257
+ }
258
+ parseError(error) {
259
+ const err = error;
260
+ const message = err.message || err.name || "Unknown error";
261
+ const lowerMessage = message.toLowerCase();
262
+ if (error?.code === 5 ||
263
+ lowerMessage.includes("not found") ||
264
+ lowerMessage.includes("404")) {
265
+ return new NotFoundError(message);
266
+ }
267
+ if (error?.code === 6 ||
268
+ lowerMessage.includes("already exists") ||
269
+ lowerMessage.includes("conflict") ||
270
+ lowerMessage.includes("409")) {
271
+ return new ConflictError(message);
272
+ }
273
+ if (lowerMessage.includes("disabled") || lowerMessage.includes("403")) {
274
+ return new NotFoundError(message);
275
+ }
276
+ if (lowerMessage.includes("unauthorized") || lowerMessage.includes("401")) {
277
+ return new NotFoundError(message);
278
+ }
279
+ if (lowerMessage.includes("permission") || lowerMessage.includes("403")) {
280
+ return new NotFoundError(message);
281
+ }
282
+ if (lowerMessage.includes("rate limit") || lowerMessage.includes("429")) {
283
+ return new BadRequestError(message);
284
+ }
285
+ if (lowerMessage.includes("provider") ||
286
+ lowerMessage.includes("unavailable") ||
287
+ lowerMessage.includes("connection") ||
288
+ lowerMessage.includes("timeout")) {
289
+ return new InternalError(message);
290
+ }
291
+ return new InternalError(message);
292
+ }
293
+ }
294
+ //# sourceMappingURL=GcpSecretManagerService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GcpSecretManagerService.js","sourceRoot":"","sources":["../../../../src/secrets/gcp/GcpSecretManagerService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=GcpSecretManagerServiceConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GcpSecretManagerServiceConfig.js","sourceRoot":"","sources":["../../../../src/secrets/gcp/GcpSecretManagerServiceConfig.ts"],"names":[],"mappings":""}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @module integrations/secrets/gcp
3
+ * @summary Google Secret Manager exports.
4
+ * @description Re-exports the Google Secret Manager service and its configuration.
5
+ */
6
+ export * from "./GcpSecretManagerService.js";
7
+ export * from "./GcpSecretManagerServiceConfig.js";
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/secrets/gcp/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,6CAA0C;AAC1C,mDAAgD"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @module integrations/secrets
3
+ * @summary Secret management helpers for the integrations package.
4
+ * @description Re-exports the secret service core abstractions and all provider implementations.
5
+ */
6
+ export * from "./core/index.js";
7
+ export * from "./model/index.js";
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/secrets/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,gCAAuB;AACvB,iCAAwB"}