@genie-solutions/lambda-toolbelt
Advanced tools
Comparing version 2.5.1 to 2.6.0
@@ -30,3 +30,3 @@ "use strict"; | ||
_regenerator["default"].mark(function _callee(event, context, callback) { | ||
var headerName, _context$genie$jwt, jwtContext, token, algorithm, publicKey, payload; | ||
var headerName, headerKey, _context$genie$jwt, jwtContext, token, algorithm, publicKey, payload; | ||
@@ -38,5 +38,8 @@ return _regenerator["default"].wrap(function _callee$(_context) { | ||
headerName = opts.headerName || 'X-GENIE-ROLES'; | ||
headerKey = Object.keys(event.headers).find(function (key) { | ||
return key.toLowerCase() === headerName.toLowerCase(); | ||
}); | ||
if (event.headers[headerName]) { | ||
_context.next = 3; | ||
if (headerKey) { | ||
_context.next = 4; | ||
break; | ||
@@ -47,11 +50,11 @@ } | ||
case 3: | ||
case 4: | ||
_context$genie$jwt = context.genie.jwt, jwtContext = _context$genie$jwt === void 0 ? {} : _context$genie$jwt; // Support both formats: `Bearer ${token}` and `${token}`. | ||
token = event.headers[headerName].split(' ').pop(); | ||
token = event.headers[headerKey].split(' ').pop(); | ||
algorithm = opts.algorithm || 'RS256'; | ||
_context.next = 8; | ||
_context.next = 9; | ||
return opts.getPublicKey(); | ||
case 8: | ||
case 9: | ||
publicKey = _context.sent; | ||
@@ -67,3 +70,3 @@ payload = (0, _jsonwebtoken.verify)(token, publicKey, { | ||
case 11: | ||
case 12: | ||
case "end": | ||
@@ -86,2 +89,2 @@ return _context.stop(); | ||
exports["default"] = _default; | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy93aXRoSldUUGF5bG9hZC50cyJdLCJuYW1lcyI6WyJ3aXRoSldUUGF5bG9hZCIsIm9wdHMiLCJmIiwiZXZlbnQiLCJjb250ZXh0IiwiY2FsbGJhY2siLCJoZWFkZXJOYW1lIiwiaGVhZGVycyIsIkhUVFBFcnJvciIsImdlbmllIiwiand0Iiwiand0Q29udGV4dCIsInRva2VuIiwic3BsaXQiLCJwb3AiLCJhbGdvcml0aG0iLCJnZXRQdWJsaWNLZXkiLCJwdWJsaWNLZXkiLCJwYXlsb2FkIiwiYWxnb3JpdGhtcyIsInBheWxvYWRLZXkiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBVUEsSUFBTUEsY0FBYyxHQUFHLFNBQWpCQSxjQUFpQixDQUFDQyxJQUFEO0FBQUEsU0FBK0MsVUFBQ0MsQ0FBRDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxxQ0FBMkQsaUJBQy9IQyxLQUQrSCxFQUUvSEMsT0FGK0gsRUFHL0hDLFFBSCtIO0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFLekhDLGtCQUFBQSxVQUx5SCxHQUs1R0wsSUFBSSxDQUFDSyxVQUFMLElBQW1CLGVBTHlGOztBQUFBLHNCQU0xSEgsS0FBSyxDQUFDSSxPQUFOLENBQWNELFVBQWQsQ0FOMEg7QUFBQTtBQUFBO0FBQUE7O0FBQUEsd0JBT3ZILElBQUlFLHFCQUFKLENBQWMsR0FBZCxvQkFBOEJGLFVBQTlCLFlBUHVIOztBQUFBO0FBQUEsdUNBU25GRixPQVRtRixDQVN2SEssS0FUdUgsQ0FTOUdDLEdBVDhHLEVBU3pHQyxVQVR5RyxtQ0FTNUYsRUFUNEYsdUJBVy9IOztBQUNNQyxrQkFBQUEsS0FaeUgsR0FZakhULEtBQUssQ0FBQ0ksT0FBTixDQUFjRCxVQUFkLEVBQTBCTyxLQUExQixDQUFnQyxHQUFoQyxFQUFxQ0MsR0FBckMsRUFaaUg7QUFjekhDLGtCQUFBQSxTQWR5SCxHQWM3R2QsSUFBSSxDQUFDYyxTQUFMLElBQWtCLE9BZDJGO0FBQUE7QUFBQSx5QkFldkdkLElBQUksQ0FBQ2UsWUFBTCxFQWZ1Rzs7QUFBQTtBQWV6SEMsa0JBQUFBLFNBZnlIO0FBZ0J6SEMsa0JBQUFBLE9BaEJ5SCxHQWdCL0csMEJBQU9OLEtBQVAsRUFBd0JLLFNBQXhCLEVBQW1DO0FBQ2pERSxvQkFBQUEsVUFBVSxFQUFFLENBQUNKLFNBQUQ7QUFEcUMsbUJBQW5DLENBaEIrRztBQUFBLG1EQW9CeEhiLENBQUMsQ0FDTkMsS0FETSxxQ0FHREMsT0FIQztBQUlKSyxvQkFBQUEsS0FBSyxxQ0FDQUwsT0FBTyxDQUFDSyxLQURSO0FBRUhDLHNCQUFBQSxHQUFHLHFDQUNHQyxVQURILHVDQUVBVixJQUFJLENBQUNtQixVQUFMLElBQW1CLFNBRm5CLEVBRStCRixPQUYvQjtBQUZBO0FBSkQsc0JBWU5iLFFBWk0sQ0FwQnVIOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLFNBQTNEOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxHQUEvQztBQUFBLENBQXZCOztlQW9DZUwsYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHZlcmlmeSB9IGZyb20gJ2pzb253ZWJ0b2tlbic7XG5pbXBvcnQgSFRUUEVycm9yIGZyb20gJy4vaHR0cEVycm9yJztcbmltcG9ydCB7IEhUVFBFdmVudCwgSFRUUENvbnRleHQsIEhUVFBDYWxsYmFjaywgSFRUUE1pZGRsZXdhcmUsIEp3dENvbnRleHQgfSBmcm9tICcuL3R5cGVzJztcblxuaW50ZXJmYWNlIEpXVE9wdHMge1xuICBnZXRQdWJsaWNLZXk6ICgpID0+IFByb21pc2U8c3RyaW5nPlxuICBhbGdvcml0aG0/OiBzdHJpbmdcbiAgcGF5bG9hZEtleT86IHN0cmluZ1xuICBoZWFkZXJOYW1lPzogc3RyaW5nXG59XG5cbmNvbnN0IHdpdGhKV1RQYXlsb2FkID0gKG9wdHM6IEpXVE9wdHMpOiBIVFRQTWlkZGxld2FyZTxKd3RDb250ZXh0PiA9PiAoZjogSFRUUENhbGxiYWNrPEp3dENvbnRleHQ+KTogSFRUUENhbGxiYWNrPEp3dENvbnRleHQ+ID0+IGFzeW5jIChcbiAgZXZlbnQ6IEhUVFBFdmVudCxcbiAgY29udGV4dDogSFRUUENvbnRleHQ8Snd0Q29udGV4dD4sXG4gIGNhbGxiYWNrOiBBV1NMYW1iZGEuQVBJR2F0ZXdheVByb3h5Q2FsbGJhY2ssXG4pOiBQcm9taXNlPG9iamVjdCB8IHZvaWQ+ID0+IHtcbiAgY29uc3QgaGVhZGVyTmFtZSA9IG9wdHMuaGVhZGVyTmFtZSB8fCAnWC1HRU5JRS1ST0xFUyc7XG4gIGlmICghZXZlbnQuaGVhZGVyc1toZWFkZXJOYW1lXSlcbiAgICB0aHJvdyBuZXcgSFRUUEVycm9yKDQwMSwgYE1pc3NpbmcgJHtoZWFkZXJOYW1lfSB0b2tlbmApO1xuXG4gIGNvbnN0IHsgZ2VuaWU6IHsgand0OiBqd3RDb250ZXh0ID0ge30gfSB9ID0gY29udGV4dDtcblxuICAvLyBTdXBwb3J0IGJvdGggZm9ybWF0czogYEJlYXJlciAke3Rva2VufWAgYW5kIGAke3Rva2VufWAuXG4gIGNvbnN0IHRva2VuID0gZXZlbnQuaGVhZGVyc1toZWFkZXJOYW1lXS5zcGxpdCgnICcpLnBvcCgpO1xuXG4gIGNvbnN0IGFsZ29yaXRobSA9IG9wdHMuYWxnb3JpdGhtIHx8ICdSUzI1Nic7XG4gIGNvbnN0IHB1YmxpY0tleSA9IGF3YWl0IG9wdHMuZ2V0UHVibGljS2V5KCk7XG4gIGNvbnN0IHBheWxvYWQgPSB2ZXJpZnkodG9rZW4gYXMgc3RyaW5nLCBwdWJsaWNLZXksIHtcbiAgICBhbGdvcml0aG1zOiBbYWxnb3JpdGhtXSxcbiAgfSk7XG5cbiAgcmV0dXJuIGYoXG4gICAgZXZlbnQsXG4gICAge1xuICAgICAgLi4uY29udGV4dCxcbiAgICAgIGdlbmllOiB7XG4gICAgICAgIC4uLmNvbnRleHQuZ2VuaWUsXG4gICAgICAgIGp3dDoge1xuICAgICAgICAgIC4uLihqd3RDb250ZXh0IGFzIG9iamVjdCksXG4gICAgICAgICAgW29wdHMucGF5bG9hZEtleSB8fCAncGF5bG9hZCddOiBwYXlsb2FkIGFzIG9iamVjdCxcbiAgICAgICAgfSxcbiAgICAgIH1cbiAgICB9LFxuICAgIGNhbGxiYWNrLFxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgd2l0aEpXVFBheWxvYWQ7XG4iXX0= | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy93aXRoSldUUGF5bG9hZC50cyJdLCJuYW1lcyI6WyJ3aXRoSldUUGF5bG9hZCIsIm9wdHMiLCJmIiwiZXZlbnQiLCJjb250ZXh0IiwiY2FsbGJhY2siLCJoZWFkZXJOYW1lIiwiaGVhZGVyS2V5IiwiT2JqZWN0Iiwia2V5cyIsImhlYWRlcnMiLCJmaW5kIiwia2V5IiwidG9Mb3dlckNhc2UiLCJIVFRQRXJyb3IiLCJnZW5pZSIsImp3dCIsImp3dENvbnRleHQiLCJ0b2tlbiIsInNwbGl0IiwicG9wIiwiYWxnb3JpdGhtIiwiZ2V0UHVibGljS2V5IiwicHVibGljS2V5IiwicGF5bG9hZCIsImFsZ29yaXRobXMiLCJwYXlsb2FkS2V5Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQVVBLElBQU1BLGNBQWMsR0FBRyxTQUFqQkEsY0FBaUIsQ0FBQ0MsSUFBRDtBQUFBLFNBQStDLFVBQUNDLENBQUQ7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEscUNBQTJELGlCQUMvSEMsS0FEK0gsRUFFL0hDLE9BRitILEVBRy9IQyxRQUgrSDtBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBS3pIQyxrQkFBQUEsVUFMeUgsR0FLNUdMLElBQUksQ0FBQ0ssVUFBTCxJQUFtQixlQUx5RjtBQU16SEMsa0JBQUFBLFNBTnlILEdBTTdHQyxNQUFNLENBQUNDLElBQVAsQ0FBWU4sS0FBSyxDQUFDTyxPQUFsQixFQUEyQkMsSUFBM0IsQ0FBZ0MsVUFBQUMsR0FBRztBQUFBLDJCQUFJQSxHQUFHLENBQUNDLFdBQUosT0FBc0JQLFVBQVUsQ0FBQ08sV0FBWCxFQUExQjtBQUFBLG1CQUFuQyxDQU42Rzs7QUFBQSxzQkFRMUhOLFNBUjBIO0FBQUE7QUFBQTtBQUFBOztBQUFBLHdCQVN2SCxJQUFJTyxxQkFBSixDQUFjLEdBQWQsb0JBQThCUixVQUE5QixZQVR1SDs7QUFBQTtBQUFBLHVDQVduRkYsT0FYbUYsQ0FXdkhXLEtBWHVILENBVzlHQyxHQVg4RyxFQVd6R0MsVUFYeUcsbUNBVzVGLEVBWDRGLHVCQWEvSDs7QUFDTUMsa0JBQUFBLEtBZHlILEdBY2pIZixLQUFLLENBQUNPLE9BQU4sQ0FBY0gsU0FBZCxFQUF5QlksS0FBekIsQ0FBK0IsR0FBL0IsRUFBb0NDLEdBQXBDLEVBZGlIO0FBZ0J6SEMsa0JBQUFBLFNBaEJ5SCxHQWdCN0dwQixJQUFJLENBQUNvQixTQUFMLElBQWtCLE9BaEIyRjtBQUFBO0FBQUEseUJBaUJ2R3BCLElBQUksQ0FBQ3FCLFlBQUwsRUFqQnVHOztBQUFBO0FBaUJ6SEMsa0JBQUFBLFNBakJ5SDtBQWtCekhDLGtCQUFBQSxPQWxCeUgsR0FrQi9HLDBCQUFPTixLQUFQLEVBQXdCSyxTQUF4QixFQUFtQztBQUNqREUsb0JBQUFBLFVBQVUsRUFBRSxDQUFDSixTQUFEO0FBRHFDLG1CQUFuQyxDQWxCK0c7QUFBQSxtREFzQnhIbkIsQ0FBQyxDQUNOQyxLQURNLHFDQUdEQyxPQUhDO0FBSUpXLG9CQUFBQSxLQUFLLHFDQUNBWCxPQUFPLENBQUNXLEtBRFI7QUFFSEMsc0JBQUFBLEdBQUcscUNBQ0dDLFVBREgsdUNBRUFoQixJQUFJLENBQUN5QixVQUFMLElBQW1CLFNBRm5CLEVBRStCRixPQUYvQjtBQUZBO0FBSkQsc0JBWU5uQixRQVpNLENBdEJ1SDs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxTQUEzRDs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsR0FBL0M7QUFBQSxDQUF2Qjs7ZUFzQ2VMLGMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB2ZXJpZnkgfSBmcm9tICdqc29ud2VidG9rZW4nO1xuaW1wb3J0IEhUVFBFcnJvciBmcm9tICcuL2h0dHBFcnJvcic7XG5pbXBvcnQgeyBIVFRQRXZlbnQsIEhUVFBDb250ZXh0LCBIVFRQQ2FsbGJhY2ssIEhUVFBNaWRkbGV3YXJlLCBKd3RDb250ZXh0IH0gZnJvbSAnLi90eXBlcyc7XG5cbmludGVyZmFjZSBKV1RPcHRzIHtcbiAgZ2V0UHVibGljS2V5OiAoKSA9PiBQcm9taXNlPHN0cmluZz5cbiAgYWxnb3JpdGhtPzogc3RyaW5nXG4gIHBheWxvYWRLZXk/OiBzdHJpbmdcbiAgaGVhZGVyTmFtZT86IHN0cmluZ1xufVxuXG5jb25zdCB3aXRoSldUUGF5bG9hZCA9IChvcHRzOiBKV1RPcHRzKTogSFRUUE1pZGRsZXdhcmU8Snd0Q29udGV4dD4gPT4gKGY6IEhUVFBDYWxsYmFjazxKd3RDb250ZXh0Pik6IEhUVFBDYWxsYmFjazxKd3RDb250ZXh0PiA9PiBhc3luYyAoXG4gIGV2ZW50OiBIVFRQRXZlbnQsXG4gIGNvbnRleHQ6IEhUVFBDb250ZXh0PEp3dENvbnRleHQ+LFxuICBjYWxsYmFjazogQVdTTGFtYmRhLkFQSUdhdGV3YXlQcm94eUNhbGxiYWNrLFxuKTogUHJvbWlzZTxvYmplY3QgfCB2b2lkPiA9PiB7XG4gIGNvbnN0IGhlYWRlck5hbWUgPSBvcHRzLmhlYWRlck5hbWUgfHwgJ1gtR0VOSUUtUk9MRVMnO1xuICBjb25zdCBoZWFkZXJLZXkgPSBPYmplY3Qua2V5cyhldmVudC5oZWFkZXJzKS5maW5kKGtleSA9PiBrZXkudG9Mb3dlckNhc2UoKSA9PT0gaGVhZGVyTmFtZS50b0xvd2VyQ2FzZSgpKTtcblxuICBpZiAoIWhlYWRlcktleSlcbiAgICB0aHJvdyBuZXcgSFRUUEVycm9yKDQwMSwgYE1pc3NpbmcgJHtoZWFkZXJOYW1lfSB0b2tlbmApO1xuXG4gIGNvbnN0IHsgZ2VuaWU6IHsgand0OiBqd3RDb250ZXh0ID0ge30gfSB9ID0gY29udGV4dDtcblxuICAvLyBTdXBwb3J0IGJvdGggZm9ybWF0czogYEJlYXJlciAke3Rva2VufWAgYW5kIGAke3Rva2VufWAuXG4gIGNvbnN0IHRva2VuID0gZXZlbnQuaGVhZGVyc1toZWFkZXJLZXldLnNwbGl0KCcgJykucG9wKCk7XG5cbiAgY29uc3QgYWxnb3JpdGhtID0gb3B0cy5hbGdvcml0aG0gfHwgJ1JTMjU2JztcbiAgY29uc3QgcHVibGljS2V5ID0gYXdhaXQgb3B0cy5nZXRQdWJsaWNLZXkoKTtcbiAgY29uc3QgcGF5bG9hZCA9IHZlcmlmeSh0b2tlbiBhcyBzdHJpbmcsIHB1YmxpY0tleSwge1xuICAgIGFsZ29yaXRobXM6IFthbGdvcml0aG1dLFxuICB9KTtcblxuICByZXR1cm4gZihcbiAgICBldmVudCxcbiAgICB7XG4gICAgICAuLi5jb250ZXh0LFxuICAgICAgZ2VuaWU6IHtcbiAgICAgICAgLi4uY29udGV4dC5nZW5pZSxcbiAgICAgICAgand0OiB7XG4gICAgICAgICAgLi4uKGp3dENvbnRleHQgYXMgb2JqZWN0KSxcbiAgICAgICAgICBbb3B0cy5wYXlsb2FkS2V5IHx8ICdwYXlsb2FkJ106IHBheWxvYWQgYXMgb2JqZWN0LFxuICAgICAgICB9LFxuICAgICAgfVxuICAgIH0sXG4gICAgY2FsbGJhY2ssXG4gICk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCB3aXRoSldUUGF5bG9hZDtcbiJdfQ== |
@@ -64,3 +64,3 @@ "use strict"; | ||
}))); | ||
it('should throw a 401 if header not present', | ||
it('should support x-Genie-ROles case-insensitive header', | ||
/*#__PURE__*/ | ||
@@ -78,7 +78,11 @@ (0, _asyncToGenerator2["default"])( | ||
return Promise.resolve(secret); | ||
} | ||
}, | ||
algorithm: 'HS256', | ||
payloadKey: 'roles' | ||
}; | ||
lambda = jest.fn(); | ||
event = { | ||
headers: {} | ||
headers: { | ||
'x-Genie-ROles': "Bearer ".concat(sampleToken) | ||
} | ||
}; | ||
@@ -90,6 +94,16 @@ context = { | ||
_context2.next = 7; | ||
return expect((0, _withJWTPayload["default"])(opts)(lambda)(event, context, callback)).rejects.toThrow('Missing X-GENIE-ROLES token'); | ||
return (0, _withJWTPayload["default"])(opts)(lambda)(event, context, callback); | ||
case 7: | ||
expect(lambda).not.toHaveBeenCalled(); | ||
expect(lambda).toHaveBeenCalledWith(event, expect.objectContaining({ | ||
genie: { | ||
jwt: expect.objectContaining({ | ||
roles: expect.objectContaining({ | ||
sub: '1234567890', | ||
name: 'John Doe', | ||
iat: 1516239022 | ||
}) | ||
}) | ||
} | ||
}), callback); | ||
@@ -103,3 +117,3 @@ case 8: | ||
}))); | ||
it('should throw an error if invalid token provided', | ||
it('should throw a 401 if header not present', | ||
/*#__PURE__*/ | ||
@@ -109,3 +123,3 @@ (0, _asyncToGenerator2["default"])( | ||
_regenerator["default"].mark(function _callee3() { | ||
var event, context, callback, opts; | ||
var opts, lambda, event, context, callback; | ||
return _regenerator["default"].wrap(function _callee3$(_context3) { | ||
@@ -115,3 +129,39 @@ while (1) { | ||
case 0: | ||
opts = { | ||
getPublicKey: function getPublicKey() { | ||
return Promise.resolve(secret); | ||
} | ||
}; | ||
lambda = jest.fn(); | ||
event = { | ||
headers: {} | ||
}; | ||
context = { | ||
genie: {} | ||
}; | ||
callback = jest.fn(); | ||
_context3.next = 7; | ||
return expect((0, _withJWTPayload["default"])(opts)(lambda)(event, context, callback)).rejects.toThrow('Missing X-GENIE-ROLES token'); | ||
case 7: | ||
expect(lambda).not.toHaveBeenCalled(); | ||
case 8: | ||
case "end": | ||
return _context3.stop(); | ||
} | ||
} | ||
}, _callee3); | ||
}))); | ||
it('should throw an error if invalid token provided', | ||
/*#__PURE__*/ | ||
(0, _asyncToGenerator2["default"])( | ||
/*#__PURE__*/ | ||
_regenerator["default"].mark(function _callee4() { | ||
var event, context, callback, opts; | ||
return _regenerator["default"].wrap(function _callee4$(_context4) { | ||
while (1) { | ||
switch (_context4.prev = _context4.next) { | ||
case 0: | ||
event = { | ||
headers: { | ||
@@ -130,3 +180,3 @@ 'X-GENIE-ROLES': "Bearer invalidtokenisinvalid" | ||
}; | ||
_context3.next = 6; | ||
_context4.next = 6; | ||
return expect((0, _withJWTPayload["default"])(opts)(callback)(event, context, callback)).rejects.toThrow('jwt malformed'); | ||
@@ -139,8 +189,8 @@ | ||
case "end": | ||
return _context3.stop(); | ||
return _context4.stop(); | ||
} | ||
} | ||
}, _callee3); | ||
}, _callee4); | ||
}))); | ||
}); | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy93aXRoSldUUGF5bG9hZC5zcGVjLnRzIl0sIm5hbWVzIjpbInNhbXBsZVRva2VuIiwic2VjcmV0IiwiZGVzY3JpYmUiLCJpdCIsIm9wdHMiLCJnZXRQdWJsaWNLZXkiLCJQcm9taXNlIiwicmVzb2x2ZSIsImFsZ29yaXRobSIsInBheWxvYWRLZXkiLCJsYW1iZGEiLCJqZXN0IiwiZm4iLCJldmVudCIsImhlYWRlcnMiLCJjb250ZXh0IiwiZ2VuaWUiLCJjYWxsYmFjayIsImV4cGVjdCIsInRvSGF2ZUJlZW5DYWxsZWRXaXRoIiwib2JqZWN0Q29udGFpbmluZyIsImp3dCIsInJvbGVzIiwic3ViIiwibmFtZSIsImlhdCIsInJlamVjdHMiLCJ0b1Rocm93Iiwibm90IiwidG9IYXZlQmVlbkNhbGxlZCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQTs7QUFHQSxJQUFNQSxXQUFXLEdBQUcsNkpBQXBCO0FBQ0EsSUFBTUMsTUFBTSxHQUFHLHFCQUFmO0FBRUFDLFFBQVEsQ0FBQyxnQkFBRCxFQUFtQixZQUFNO0FBQy9CQyxFQUFBQSxFQUFFLENBQUMsK0NBQUQ7QUFBQTtBQUFBO0FBQUE7QUFBQSwrQkFBa0Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQzVDQyxZQUFBQSxJQUQ0QyxHQUNyQztBQUNYQyxjQUFBQSxZQUFZLEVBQUU7QUFBQSx1QkFBTUMsT0FBTyxDQUFDQyxPQUFSLENBQWdCTixNQUFoQixDQUFOO0FBQUEsZUFESDtBQUVYTyxjQUFBQSxTQUFTLEVBQUUsT0FGQTtBQUdYQyxjQUFBQSxVQUFVLEVBQUU7QUFIRCxhQURxQztBQU01Q0MsWUFBQUEsTUFONEMsR0FNbkNDLElBQUksQ0FBQ0MsRUFBTCxFQU5tQztBQU81Q0MsWUFBQUEsS0FQNEMsR0FPcEM7QUFDWkMsY0FBQUEsT0FBTyxFQUFFO0FBQ1Asa0RBQTJCZCxXQUEzQjtBQURPO0FBREcsYUFQb0M7QUFZNUNlLFlBQUFBLE9BWjRDLEdBWWxDO0FBQ2RDLGNBQUFBLEtBQUss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VyxHQUFqQixDQUFxQkMsZ0JBQXJCOztBQVRvRDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxHQUFwRCxHQUFGO0FBV0QsQ0F4RE8sQ0FBUiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB3aXRoSldUUGF5bG9hZCBmcm9tICcuL3dpdGhKV1RQYXlsb2FkJztcbmltcG9ydCB7IEhUVFBFdmVudCwgSFRUUENvbnRleHQsIEp3dENvbnRleHQgfSBmcm9tICcuL3R5cGVzJztcblxuY29uc3Qgc2FtcGxlVG9rZW4gPSAnZXlKaGJHY2lPaUpJVXpJMU5pSXNJblI1Y0NJNklrcFhWQ0o5LmV5SnpkV0lpT2lJeE1qTTBOVFkzT0Rrd0lpd2libUZ0WlNJNklrcHZhRzRnUkc5bElpd2lhV0YwSWpveE5URTJNak01TURJeWZRLlNmbEt4d1JKU01lS0tGMlFUNGZ3cE1lSmYzNlBPazZ5SlZfYWRRc3N3NWMnO1xuY29uc3Qgc2VjcmV0ID0gJ3lvdXItMjU2LWJpdC1zZWNyZXQnO1xuXG5kZXNjcmliZSgnd2l0aEpXVFBheWxvYWQnLCAoKSA9PiB7XG4gIGl0KCdzaG91bGQgcG9wdWxhdGUgY29udGV4dCB3aXRoIHBhcnNlZCBKV1QgVG9rZW4nLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3Qgb3B0cyA9IHtcbiAgICAgIGdldFB1YmxpY0tleTogKCkgPT4gUHJvbWlzZS5yZXNvbHZlKHNlY3JldCksXG4gICAgICBhbGdvcml0aG06ICdIUzI1NicsXG4gICAgICBwYXlsb2FkS2V5OiAncm9sZXMnLFxuICAgIH07XG4gICAgY29uc3QgbGFtYmRhID0gamVzdC5mbigpO1xuICAgIGNvbnN0IGV2ZW50ID0ge1xuICAgICAgaGVhZGVyczoge1xuICAgICAgICAnWC1HRU5JRS1ST0xFUyc6IGBCZWFyZXIgJHtzYW1wbGVUb2tlbn1gLFxuICAgICAgfSxcbiAgICB9O1xuICAgIGNvbnN0IGNvbnRleHQgPSB7XG4gICAgICBnZW5pZToge30sXG4gICAgfTtcbiAgICBjb25zdCBjYWxsYmFjayA9IGplc3QuZm4oKTtcblxuICAgIGF3YWl0IHdpdGhKV1RQYXlsb2FkKG9wdHMpKGxhbWJkYSkoZXZlbnQgYXMgdW5rbm93biBhcyBIVFRQRXZlbnQsIGNvbnRleHQgYXMgSFRUUENvbnRleHQ8Snd0Q29udGV4dD4sIGNhbGxiYWNrKTtcbiAgICBleHBlY3QobGFtYmRhKS50b0hhdmVCZWVuQ2FsbGVkV2l0aChldmVudCwgZXhwZWN0Lm9iamVjdENvbnRhaW5pbmcoe1xuICAgICAgZ2VuaWU6IHtcbiAgICAgICAgand0OiBleHBlY3Qub2JqZWN0Q29udGFpbmluZyh7XG4gICAgICAgICAgcm9sZXM6IGV4cGVjdC5vYmplY3RDb250YWluaW5nKHtcbiAgICAgICAgICAgIHN1YjogJzEyMzQ1Njc4OTAnLFxuICAgICAgICAgICAgbmFtZTogJ0pvaG4gRG9lJyxcbiAgICAgICAgICAgIGlhdDogMTUxNjIzOTAyMixcbiAgICAgICAgICB9KSxcbiAgICAgICAgfSksXG4gICAgICB9LFxuICAgIH0pLCBjYWxsYmFjayk7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgdGhyb3cgYSA0MDEgaWYgaGVhZGVyIG5vdCBwcmVzZW50JywgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IG9wdHMgPSB7XG4gICAgICBnZXRQdWJsaWNLZXk6ICgpID0+IFByb21pc2UucmVzb2x2ZShzZWNyZXQpLFxuICAgIH07XG4gICAgY29uc3QgbGFtYmRhID0gamVzdC5mbigpO1xuICAgIGNvbnN0IGV2ZW50ID0geyBoZWFkZXJzOiB7IH0gfTtcbiAgICBjb25zdCBjb250ZXh0ID0geyBnZW5pZToge30gfTtcbiAgICBjb25zdCBjYWxsYmFjayA9IGplc3QuZm4oKTtcblxuICAgIGF3YWl0IGV4cGVjdCh3aXRoSldUUGF5bG9hZChvcHRzKShsYW1iZGEpKGV2ZW50IGFzIHVua25vd24gYXMgSFRUUEV2ZW50LCBjb250ZXh0IGFzIEhUVFBDb250ZXh0PEp3dENvbnRleHQ+LCBjYWxsYmFjaykpLnJlamVjdHMudG9UaHJvdygnTWlzc2luZyBYLUdFTklFLVJPTEVTIHRva2VuJyk7XG4gICAgZXhwZWN0KGxhbWJkYSkubm90LnRvSGF2ZUJlZW5DYWxsZWQoKTtcbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCB0aHJvdyBhbiBlcnJvciBpZiBpbnZhbGlkIHRva2VuIHByb3ZpZGVkJywgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IGV2ZW50ID0geyBoZWFkZXJzOiB7ICdYLUdFTklFLVJPTEVTJzogYEJlYXJlciBpbnZhbGlkdG9rZW5pc2ludmFsaWRgIH0gfTtcbiAgICBjb25zdCBjb250ZXh0ID0geyBnZW5pZToge30gfTtcbiAgICBjb25zdCBjYWxsYmFjayA9IGplc3QuZm4oKCkgPT4ge30pO1xuICAgIGNvbnN0IG9wdHMgPSB7XG4gICAgICBnZXRQdWJsaWNLZXk6ICgpID0+IFByb21pc2UucmVzb2x2ZShzZWNyZXQpLFxuICAgIH07XG5cbiAgICBhd2FpdCBleHBlY3Qod2l0aEpXVFBheWxvYWQob3B0cykoY2FsbGJhY2spKGV2ZW50IGFzIHVua25vd24gYXMgSFRUUEV2ZW50LCBjb250ZXh0IGFzIEhUVFBDb250ZXh0PEp3dENvbnRleHQ+LCBjYWxsYmFjaykpLnJlamVjdHMudG9UaHJvdygnand0IG1hbGZvcm1lZCcpO1xuICAgIGV4cGVjdChjYWxsYmFjaykubm90LnRvSGF2ZUJlZW5DYWxsZWQoKTtcbiAgfSk7XG59KTtcbiJdfQ== | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy93aXRoSldUUGF5bG9hZC5zcGVjLnRzIl0sIm5hbWVzIjpbInNhbXBsZVRva2VuIiwic2VjcmV0IiwiZGVzY3JpYmUiLCJpdCIsIm9wdHMiLCJnZXRQdWJsaWNLZXkiLCJQcm9taXNlIiwicmVzb2x2ZSIsImFsZ29yaXRobSIsInBheWxvYWRLZXkiLCJsYW1iZGEiLCJqZXN0IiwiZm4iLCJldmVudCIsImhlYWRlcnMiLCJjb250ZXh0IiwiZ2VuaWUiLCJjYWxsYmFjayIsImV4cGVjdCIsInRvSGF2ZUJlZW5DYWxsZWRXaXRoIiwib2JqZWN0Q29udGFpbmluZyIsImp3dCIsInJvbGVzIiwic3ViIiwibmFtZSIsImlhdCIsInJlamVjdHMiLCJ0b1Rocm93Iiwibm90IiwidG9IYXZlQmVlbkNhbGxlZCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQTs7QUFHQSxJQUFNQSxXQUFXLEdBQUcsNkpBQXBCO0FBQ0EsSUFBTUMsTUFBTSxHQUFHLHFCQUFmO0FBRUFDLFFBQVEsQ0FBQyxnQkFBRCxFQUFtQixZQUFNO0FBQy9CQyxFQUFBQSxFQUFFLENBQUMsK0NBQUQ7QUFBQTtBQUFBO0FBQUE7QUFBQSwrQkFBa0Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQzVDQyxZQUFBQSxJQUQ0QyxHQUNyQztBQUNYQyxjQUFBQSxZQUFZLEVBQUU7QUFBQSx1QkFBTUMsT0FBTyxDQUFDQyxPQUFSLENBQWdCTixNQUFoQixDQUFOO0FBQUEsZUFESDtBQUVYTyxjQUFBQSxTQUFTLEVBQUUsT0FGQTtBQUdYQyxjQUFBQSxVQUFVLEVBQUU7QUFIRCxhQURxQztBQU01Q0MsWUFBQUEsTUFONEMsR0FNbkNDLElBQUksQ0FBQ0MsRUFBTCxFQU5tQztBQU81Q0MsWUFBQUEsS0FQNEMsR0FPcEM7QUFDWkMsY0FBQUEsT0FBTyxFQUFFO0FBQ1Asa0RBQTJCZCxXQUEzQjtBQURPO0FBREcsYUFQb0M7QUFZNUNlLFlBQUFBLE9BWjRDLEdBWWxDO0FBQ2RDLGNBQUFBLEtBQUss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Q0FBNEhDLE9BQTVILENBQW9JLGVBQXBJLENBUjhDOztBQUFBO0FBU3BEVCxZQUFBQSxNQUFNLENBQUNELFFBQUQsQ0FBTixDQUFpQlcsR0FBakIsQ0FBcUJDLGdCQUFyQjs7QUFUb0Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsR0FBcEQsR0FBRjtBQVdELENBdkZPLENBQVIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgd2l0aEpXVFBheWxvYWQgZnJvbSAnLi93aXRoSldUUGF5bG9hZCc7XG5pbXBvcnQgeyBIVFRQRXZlbnQsIEhUVFBDb250ZXh0LCBKd3RDb250ZXh0IH0gZnJvbSAnLi90eXBlcyc7XG5cbmNvbnN0IHNhbXBsZVRva2VuID0gJ2V5SmhiR2NpT2lKSVV6STFOaUlzSW5SNWNDSTZJa3BYVkNKOS5leUp6ZFdJaU9pSXhNak0wTlRZM09Ea3dJaXdpYm1GdFpTSTZJa3B2YUc0Z1JHOWxJaXdpYVdGMElqb3hOVEUyTWpNNU1ESXlmUS5TZmxLeHdSSlNNZUtLRjJRVDRmd3BNZUpmMzZQT2s2eUpWX2FkUXNzdzVjJztcbmNvbnN0IHNlY3JldCA9ICd5b3VyLTI1Ni1iaXQtc2VjcmV0JztcblxuZGVzY3JpYmUoJ3dpdGhKV1RQYXlsb2FkJywgKCkgPT4ge1xuICBpdCgnc2hvdWxkIHBvcHVsYXRlIGNvbnRleHQgd2l0aCBwYXJzZWQgSldUIFRva2VuJywgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IG9wdHMgPSB7XG4gICAgICBnZXRQdWJsaWNLZXk6ICgpID0+IFByb21pc2UucmVzb2x2ZShzZWNyZXQpLFxuICAgICAgYWxnb3JpdGhtOiAnSFMyNTYnLFxuICAgICAgcGF5bG9hZEtleTogJ3JvbGVzJyxcbiAgICB9O1xuICAgIGNvbnN0IGxhbWJkYSA9IGplc3QuZm4oKTtcbiAgICBjb25zdCBldmVudCA9IHtcbiAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgJ1gtR0VOSUUtUk9MRVMnOiBgQmVhcmVyICR7c2FtcGxlVG9rZW59YCxcbiAgICAgIH0sXG4gICAgfTtcbiAgICBjb25zdCBjb250ZXh0ID0ge1xuICAgICAgZ2VuaWU6IHt9LFxuICAgIH07XG4gICAgY29uc3QgY2FsbGJhY2sgPSBqZXN0LmZuKCk7XG5cbiAgICBhd2FpdCB3aXRoSldUUGF5bG9hZChvcHRzKShsYW1iZGEpKGV2ZW50IGFzIHVua25vd24gYXMgSFRUUEV2ZW50LCBjb250ZXh0IGFzIEhUVFBDb250ZXh0PEp3dENvbnRleHQ+LCBjYWxsYmFjayk7XG4gICAgZXhwZWN0KGxhbWJkYSkudG9IYXZlQmVlbkNhbGxlZFdpdGgoZXZlbnQsIGV4cGVjdC5vYmplY3RDb250YWluaW5nKHtcbiAgICAgIGdlbmllOiB7XG4gICAgICAgIGp3dDogZXhwZWN0Lm9iamVjdENvbnRhaW5pbmcoe1xuICAgICAgICAgIHJvbGVzOiBleHBlY3Qub2JqZWN0Q29udGFpbmluZyh7XG4gICAgICAgICAgICBzdWI6ICcxMjM0NTY3ODkwJyxcbiAgICAgICAgICAgIG5hbWU6ICdKb2huIERvZScsXG4gICAgICAgICAgICBpYXQ6IDE1MTYyMzkwMjIsXG4gICAgICAgICAgfSksXG4gICAgICAgIH0pLFxuICAgICAgfSxcbiAgICB9KSwgY2FsbGJhY2spO1xuICB9KTtcblxuICBpdCgnc2hvdWxkIHN1cHBvcnQgeC1HZW5pZS1ST2xlcyBjYXNlLWluc2Vuc2l0aXZlIGhlYWRlcicsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBvcHRzID0ge1xuICAgICAgZ2V0UHVibGljS2V5OiAoKSA9PiBQcm9taXNlLnJlc29sdmUoc2VjcmV0KSxcbiAgICAgIGFsZ29yaXRobTogJ0hTMjU2JyxcbiAgICAgIHBheWxvYWRLZXk6ICdyb2xlcycsXG4gICAgfTtcbiAgICBjb25zdCBsYW1iZGEgPSBqZXN0LmZuKCk7XG4gICAgY29uc3QgZXZlbnQgPSB7XG4gICAgICBoZWFkZXJzOiB7XG4gICAgICAgICd4LUdlbmllLVJPbGVzJzogYEJlYXJlciAke3NhbXBsZVRva2VufWAsXG4gICAgICB9LFxuICAgIH07XG4gICAgY29uc3QgY29udGV4dCA9IHtcbiAgICAgIGdlbmllOiB7fSxcbiAgICB9O1xuICAgIGNvbnN0IGNhbGxiYWNrID0gamVzdC5mbigpO1xuXG4gICAgYXdhaXQgd2l0aEpXVFBheWxvYWQob3B0cykobGFtYmRhKShldmVudCBhcyB1bmtub3duIGFzIEhUVFBFdmVudCwgY29udGV4dCBhcyBIVFRQQ29udGV4dDxKd3RDb250ZXh0PiwgY2FsbGJhY2spO1xuICAgIGV4cGVjdChsYW1iZGEpLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKGV2ZW50LCBleHBlY3Qub2JqZWN0Q29udGFpbmluZyh7XG4gICAgICBnZW5pZToge1xuICAgICAgICBqd3Q6IGV4cGVjdC5vYmplY3RDb250YWluaW5nKHtcbiAgICAgICAgICByb2xlczogZXhwZWN0Lm9iamVjdENvbnRhaW5pbmcoe1xuICAgICAgICAgICAgc3ViOiAnMTIzNDU2Nzg5MCcsXG4gICAgICAgICAgICBuYW1lOiAnSm9obiBEb2UnLFxuICAgICAgICAgICAgaWF0OiAxNTE2MjM5MDIyLFxuICAgICAgICAgIH0pLFxuICAgICAgICB9KSxcbiAgICAgIH0sXG4gICAgfSksIGNhbGxiYWNrKTtcbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCB0aHJvdyBhIDQwMSBpZiBoZWFkZXIgbm90IHByZXNlbnQnLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3Qgb3B0cyA9IHtcbiAgICAgIGdldFB1YmxpY0tleTogKCkgPT4gUHJvbWlzZS5yZXNvbHZlKHNlY3JldCksXG4gICAgfTtcbiAgICBjb25zdCBsYW1iZGEgPSBqZXN0LmZuKCk7XG4gICAgY29uc3QgZXZlbnQgPSB7IGhlYWRlcnM6IHsgfSB9O1xuICAgIGNvbnN0IGNvbnRleHQgPSB7IGdlbmllOiB7fSB9O1xuICAgIGNvbnN0IGNhbGxiYWNrID0gamVzdC5mbigpO1xuXG4gICAgYXdhaXQgZXhwZWN0KHdpdGhKV1RQYXlsb2FkKG9wdHMpKGxhbWJkYSkoZXZlbnQgYXMgdW5rbm93biBhcyBIVFRQRXZlbnQsIGNvbnRleHQgYXMgSFRUUENvbnRleHQ8Snd0Q29udGV4dD4sIGNhbGxiYWNrKSkucmVqZWN0cy50b1Rocm93KCdNaXNzaW5nIFgtR0VOSUUtUk9MRVMgdG9rZW4nKTtcbiAgICBleHBlY3QobGFtYmRhKS5ub3QudG9IYXZlQmVlbkNhbGxlZCgpO1xuICB9KTtcblxuICBpdCgnc2hvdWxkIHRocm93IGFuIGVycm9yIGlmIGludmFsaWQgdG9rZW4gcHJvdmlkZWQnLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgZXZlbnQgPSB7IGhlYWRlcnM6IHsgJ1gtR0VOSUUtUk9MRVMnOiBgQmVhcmVyIGludmFsaWR0b2tlbmlzaW52YWxpZGAgfSB9O1xuICAgIGNvbnN0IGNvbnRleHQgPSB7IGdlbmllOiB7fSB9O1xuICAgIGNvbnN0IGNhbGxiYWNrID0gamVzdC5mbigoKSA9PiB7fSk7XG4gICAgY29uc3Qgb3B0cyA9IHtcbiAgICAgIGdldFB1YmxpY0tleTogKCkgPT4gUHJvbWlzZS5yZXNvbHZlKHNlY3JldCksXG4gICAgfTtcblxuICAgIGF3YWl0IGV4cGVjdCh3aXRoSldUUGF5bG9hZChvcHRzKShjYWxsYmFjaykoZXZlbnQgYXMgdW5rbm93biBhcyBIVFRQRXZlbnQsIGNvbnRleHQgYXMgSFRUUENvbnRleHQ8Snd0Q29udGV4dD4sIGNhbGxiYWNrKSkucmVqZWN0cy50b1Rocm93KCdqd3QgbWFsZm9ybWVkJyk7XG4gICAgZXhwZWN0KGNhbGxiYWNrKS5ub3QudG9IYXZlQmVlbkNhbGxlZCgpO1xuICB9KTtcbn0pO1xuIl19 |
{ | ||
"name": "@genie-solutions/lambda-toolbelt", | ||
"version": "2.5.1", | ||
"version": "2.6.0", | ||
"description": "Toolbelt for creating Lambda functions", | ||
@@ -5,0 +5,0 @@ "access": "public", |
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
12188852
28520