@middy/secrets-manager 3.0.3 → 3.0.4

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 (3) hide show
  1. package/index.cjs +67 -1
  2. package/index.js +56 -1
  3. package/package.json +4 -4
package/index.cjs CHANGED
@@ -1,3 +1,69 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:true});module.exports=void 0;var _util=require("@middy/util");var _secretsmanagerJs=_interopRequireDefault(require("aws-sdk/clients/secretsmanager.js"));function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}const defaults={AwsClient:_secretsmanagerJs.default,awsClientOptions:{},awsClientAssumeRole:undefined,awsClientCapture:undefined,fetchData:{},disablePrefetch:false,cacheKey:"secrets-manager",cacheExpiry:-1,setToContext:false};const secretsManagerMiddleware=(opts={})=>{const options={...defaults,...opts};const fetch=(request,cachedValues={})=>{const values={};for(const internalKey of Object.keys(options.fetchData)){if(cachedValues[internalKey])continue;values[internalKey]=client.getSecretValue({SecretId:options.fetchData[internalKey]}).promise().then(resp=>(0,_util).jsonSafeParse(resp.SecretString)).catch(e=>{const value=(0,_util).getCache(options.cacheKey).value??{};value[internalKey]=undefined;(0,_util).modifyCache(options.cacheKey,value);throw e})}return values};let prefetch,client;if((0,_util).canPrefetch(options)){client=(0,_util).createPrefetchClient(options);prefetch=(0,_util).processCache(options,fetch)}const secretsManagerMiddlewareBefore=async request=>{if(!client){client=await (0,_util).createClient(options,request)}const{value}=prefetch??(0,_util).processCache(options,fetch,request);Object.assign(request.internal,value);if(options.setToContext){const data=await (0,_util).getInternal(Object.keys(options.fetchData),request);Object.assign(request.context,data)}prefetch=null};return{before:secretsManagerMiddlewareBefore}};var _default=secretsManagerMiddleware;module.exports=_default
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ module.exports = void 0;
6
+ var _util = require("@middy/util");
7
+ var _secretsmanagerJs = _interopRequireDefault(require("aws-sdk/clients/secretsmanager.js"));
8
+ function _interopRequireDefault(obj) {
9
+ return obj && obj.__esModule ? obj : {
10
+ default: obj
11
+ };
12
+ }
13
+ const defaults = {
14
+ AwsClient: _secretsmanagerJs.default,
15
+ awsClientOptions: {},
16
+ awsClientAssumeRole: undefined,
17
+ awsClientCapture: undefined,
18
+ fetchData: {},
19
+ disablePrefetch: false,
20
+ cacheKey: 'secrets-manager',
21
+ cacheExpiry: -1,
22
+ setToContext: false
23
+ };
24
+ const secretsManagerMiddleware = (opts = {})=>{
25
+ const options = {
26
+ ...defaults,
27
+ ...opts
28
+ };
29
+ const fetch = (request, cachedValues = {})=>{
30
+ const values = {};
31
+ for (const internalKey of Object.keys(options.fetchData)){
32
+ if (cachedValues[internalKey]) continue;
33
+ values[internalKey] = client.getSecretValue({
34
+ SecretId: options.fetchData[internalKey]
35
+ }).promise().then((resp)=>(0, _util).jsonSafeParse(resp.SecretString)).catch((e)=>{
36
+ const value = (0, _util).getCache(options.cacheKey).value ?? {};
37
+ value[internalKey] = undefined;
38
+ (0, _util).modifyCache(options.cacheKey, value);
39
+ throw e;
40
+ });
41
+ }
42
+ return values;
43
+ };
44
+ let prefetch, client;
45
+ if ((0, _util).canPrefetch(options)) {
46
+ client = (0, _util).createPrefetchClient(options);
47
+ prefetch = (0, _util).processCache(options, fetch);
48
+ }
49
+ const secretsManagerMiddlewareBefore = async (request)=>{
50
+ if (!client) {
51
+ client = await (0, _util).createClient(options, request);
52
+ }
53
+ const { value } = prefetch ?? (0, _util).processCache(options, fetch, request);
54
+ Object.assign(request.internal, value);
55
+ if (options.setToContext) {
56
+ const data = await (0, _util).getInternal(Object.keys(options.fetchData), request);
57
+ Object.assign(request.context, data);
58
+ }
59
+ prefetch = null;
60
+ };
61
+ return {
62
+ before: secretsManagerMiddlewareBefore
63
+ };
64
+ };
65
+ var _default = secretsManagerMiddleware;
66
+ module.exports = _default;
67
+
2
68
 
3
69
  //# sourceMappingURL=index.cjs.map
package/index.js CHANGED
@@ -1,3 +1,58 @@
1
- import{canPrefetch,createPrefetchClient,createClient,getCache,getInternal,processCache,modifyCache,jsonSafeParse}from"@middy/util";import SecretsManager from"aws-sdk/clients/secretsmanager.js";const defaults={AwsClient:SecretsManager,awsClientOptions:{},awsClientAssumeRole:undefined,awsClientCapture:undefined,fetchData:{},disablePrefetch:false,cacheKey:"secrets-manager",cacheExpiry:-1,setToContext:false};const secretsManagerMiddleware=(opts={})=>{const options={...defaults,...opts};const fetch=(request,cachedValues={})=>{const values={};for(const internalKey of Object.keys(options.fetchData)){if(cachedValues[internalKey])continue;values[internalKey]=client.getSecretValue({SecretId:options.fetchData[internalKey]}).promise().then(resp=>jsonSafeParse(resp.SecretString)).catch(e=>{const value=getCache(options.cacheKey).value??{};value[internalKey]=undefined;modifyCache(options.cacheKey,value);throw e})}return values};let prefetch,client;if(canPrefetch(options)){client=createPrefetchClient(options);prefetch=processCache(options,fetch)}const secretsManagerMiddlewareBefore=async request=>{if(!client){client=await createClient(options,request)}const{value}=prefetch??processCache(options,fetch,request);Object.assign(request.internal,value);if(options.setToContext){const data=await getInternal(Object.keys(options.fetchData),request);Object.assign(request.context,data)}prefetch=null};return{before:secretsManagerMiddlewareBefore}};export default secretsManagerMiddleware
1
+ import { canPrefetch, createPrefetchClient, createClient, getCache, getInternal, processCache, modifyCache, jsonSafeParse } from '@middy/util';
2
+ import SecretsManager from 'aws-sdk/clients/secretsmanager.js';
3
+ const defaults = {
4
+ AwsClient: SecretsManager,
5
+ awsClientOptions: {},
6
+ awsClientAssumeRole: undefined,
7
+ awsClientCapture: undefined,
8
+ fetchData: {},
9
+ disablePrefetch: false,
10
+ cacheKey: 'secrets-manager',
11
+ cacheExpiry: -1,
12
+ setToContext: false
13
+ };
14
+ const secretsManagerMiddleware = (opts = {})=>{
15
+ const options = {
16
+ ...defaults,
17
+ ...opts
18
+ };
19
+ const fetch = (request, cachedValues = {})=>{
20
+ const values = {};
21
+ for (const internalKey of Object.keys(options.fetchData)){
22
+ if (cachedValues[internalKey]) continue;
23
+ values[internalKey] = client.getSecretValue({
24
+ SecretId: options.fetchData[internalKey]
25
+ }).promise().then((resp)=>jsonSafeParse(resp.SecretString)).catch((e)=>{
26
+ const value = getCache(options.cacheKey).value ?? {};
27
+ value[internalKey] = undefined;
28
+ modifyCache(options.cacheKey, value);
29
+ throw e;
30
+ });
31
+ }
32
+ return values;
33
+ };
34
+ let prefetch, client;
35
+ if (canPrefetch(options)) {
36
+ client = createPrefetchClient(options);
37
+ prefetch = processCache(options, fetch);
38
+ }
39
+ const secretsManagerMiddlewareBefore = async (request)=>{
40
+ if (!client) {
41
+ client = await createClient(options, request);
42
+ }
43
+ const { value } = prefetch ?? processCache(options, fetch, request);
44
+ Object.assign(request.internal, value);
45
+ if (options.setToContext) {
46
+ const data = await getInternal(Object.keys(options.fetchData), request);
47
+ Object.assign(request.context, data);
48
+ }
49
+ prefetch = null;
50
+ };
51
+ return {
52
+ before: secretsManagerMiddlewareBefore
53
+ };
54
+ };
55
+ export default secretsManagerMiddleware;
56
+
2
57
 
3
58
  //# sourceMappingURL=index.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@middy/secrets-manager",
3
- "version": "3.0.3",
3
+ "version": "3.0.4",
4
4
  "description": "Secrets Manager middleware for the middy framework",
5
5
  "type": "module",
6
6
  "engines": {
@@ -53,12 +53,12 @@
53
53
  },
54
54
  "homepage": "https://middy.js.org",
55
55
  "dependencies": {
56
- "@middy/util": "3.0.3"
56
+ "@middy/util": "3.0.4"
57
57
  },
58
58
  "devDependencies": {
59
- "@middy/core": "3.0.3",
59
+ "@middy/core": "3.0.4",
60
60
  "aws-sdk": "^2.939.0",
61
61
  "aws-xray-sdk": "^3.3.3"
62
62
  },
63
- "gitHead": "ea9e5e8cce754d0c467c7dd3ac9a7601149efea2"
63
+ "gitHead": "3e9bc83e791f943c71cd7003fc27f0a3692d83a1"
64
64
  }