@trunkrs/common 1.4.6 → 1.4.11

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 (36) hide show
  1. package/models/errors/OAuthExchangeFailedError.d.ts +6 -0
  2. package/models/errors/OAuthExchangeFailedError.js +15 -0
  3. package/models/errors/OAuthExchangeFailedError.js.map +1 -0
  4. package/models/errors/index.d.ts +1 -0
  5. package/models/errors/index.js +3 -1
  6. package/models/errors/index.js.map +1 -1
  7. package/package.json +1 -1
  8. package/providers/auth0.d.ts +4 -0
  9. package/providers/auth0.js +41 -0
  10. package/providers/auth0.js.map +1 -0
  11. package/providers/caching.d.ts +3 -0
  12. package/providers/caching.js +33 -0
  13. package/providers/caching.js.map +1 -0
  14. package/providers/core-services.js.map +1 -1
  15. package/providers/utils.js +2 -0
  16. package/providers/utils.js.map +1 -1
  17. package/services/aws/dynamodb/BaseDynamoDataStorage.d.ts +6 -1
  18. package/services/aws/dynamodb/BaseDynamoDataStorage.js +9 -0
  19. package/services/aws/dynamodb/BaseDynamoDataStorage.js.map +1 -1
  20. package/services/aws/dynamodb/DynamoDataStorage.js +4 -9
  21. package/services/aws/dynamodb/DynamoDataStorage.js.map +1 -1
  22. package/services/aws/dynamodb/DynamoIndexDataStorage.js +14 -5
  23. package/services/aws/dynamodb/DynamoIndexDataStorage.js.map +1 -1
  24. package/services/aws/dynamodb/utils/index.d.ts +1 -1
  25. package/services/aws/dynamodb/utils/index.js.map +1 -1
  26. package/services/aws/dynamodb/utils/query/QueryBuilder.d.ts +5 -1
  27. package/services/aws/dynamodb/utils/query/QueryBuilder.js +17 -11
  28. package/services/aws/dynamodb/utils/query/QueryBuilder.js.map +1 -1
  29. package/services/client/CoreServicesMachineClient.js +3 -6
  30. package/services/client/CoreServicesMachineClient.js.map +1 -1
  31. package/services/client/MachineTokenClient/index.d.ts +3 -4
  32. package/services/client/MachineTokenClient/index.js +0 -3
  33. package/services/client/MachineTokenClient/index.js.map +1 -1
  34. package/services/client/OAuthClient.d.ts +2 -2
  35. package/services/client/OAuthClient.js +5 -2
  36. package/services/client/OAuthClient.js.map +1 -1
@@ -0,0 +1,6 @@
1
+ import ErrorBase from './ErrorBase';
2
+ declare class OAuthExchangeFailedError extends ErrorBase {
3
+ readonly error: Error;
4
+ constructor(error: Error);
5
+ }
6
+ export default OAuthExchangeFailedError;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const ErrorBase_1 = __importDefault(require("./ErrorBase"));
7
+ class OAuthExchangeFailedError extends ErrorBase_1.default {
8
+ constructor(error) {
9
+ super();
10
+ this.error = error;
11
+ this.message = `The OAuth request failed to reach the server with error: ${JSON.stringify(error, null, 2)}`;
12
+ }
13
+ }
14
+ exports.default = OAuthExchangeFailedError;
15
+ //# sourceMappingURL=OAuthExchangeFailedError.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OAuthExchangeFailedError.js","sourceRoot":"","sources":["../../../models/errors/OAuthExchangeFailedError.ts"],"names":[],"mappings":";;;;;AAAA,4DAAmC;AAEnC,MAAM,wBAAyB,SAAQ,mBAAS;IAC9C,YACkB,KAAY;QAE5B,KAAK,EAAE,CAAA;QAFS,UAAK,GAAL,KAAK,CAAO;QAI5B,IAAI,CAAC,OAAO,GAAG,4DAA4D,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAA;IAC7G,CAAC;CACF;AAED,kBAAe,wBAAwB,CAAA"}
@@ -1,3 +1,4 @@
1
1
  export { default as ErrorBase } from './ErrorBase';
2
2
  export { default as OAuthClientError } from './OAuthClientError';
3
3
  export { default as HttpRequestError } from './HttpRequestError';
4
+ export { default as OAuthExchangeFailedError } from './OAuthExchangeFailedError';
@@ -3,11 +3,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.HttpRequestError = exports.OAuthClientError = exports.ErrorBase = void 0;
6
+ exports.OAuthExchangeFailedError = exports.HttpRequestError = exports.OAuthClientError = exports.ErrorBase = void 0;
7
7
  var ErrorBase_1 = require("./ErrorBase");
8
8
  Object.defineProperty(exports, "ErrorBase", { enumerable: true, get: function () { return __importDefault(ErrorBase_1).default; } });
9
9
  var OAuthClientError_1 = require("./OAuthClientError");
10
10
  Object.defineProperty(exports, "OAuthClientError", { enumerable: true, get: function () { return __importDefault(OAuthClientError_1).default; } });
11
11
  var HttpRequestError_1 = require("./HttpRequestError");
12
12
  Object.defineProperty(exports, "HttpRequestError", { enumerable: true, get: function () { return __importDefault(HttpRequestError_1).default; } });
13
+ var OAuthExchangeFailedError_1 = require("./OAuthExchangeFailedError");
14
+ Object.defineProperty(exports, "OAuthExchangeFailedError", { enumerable: true, get: function () { return __importDefault(OAuthExchangeFailedError_1).default; } });
13
15
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../models/errors/index.ts"],"names":[],"mappings":";;;;;;AAAA,yCAAkD;AAAzC,uHAAA,OAAO,OAAa;AAC7B,uDAAgE;AAAvD,qIAAA,OAAO,OAAoB;AACpC,uDAAgE;AAAvD,qIAAA,OAAO,OAAoB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../models/errors/index.ts"],"names":[],"mappings":";;;;;;AAAA,yCAAkD;AAAzC,uHAAA,OAAO,OAAa;AAC7B,uDAAgE;AAAvD,qIAAA,OAAO,OAAoB;AACpC,uDAAgE;AAAvD,qIAAA,OAAO,OAAoB;AACpC,uEAAgF;AAAvE,qJAAA,OAAO,OAA4B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@trunkrs/common",
3
- "version": "1.4.6",
3
+ "version": "1.4.11",
4
4
  "description": "Common standards library for development in Trunkrs",
5
5
  "types": "./index.d.ts",
6
6
  "repository": "https://github.com/Trunkrs/common.git",
@@ -0,0 +1,4 @@
1
+ import ServiceProvider from '../utils/service-provider';
2
+ export declare const Auth0MachineClient: symbol;
3
+ export declare const Auth0MachineTokenClient: symbol;
4
+ export declare const configureAuth0Service: (baseUrl: string, appClientSecretName: string, tokenCacheStoreName: string, tokenCacheMountPath: string) => ServiceProvider;
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ var __importDefault = (this && this.__importDefault) || function (mod) {
22
+ return (mod && mod.__esModule) ? mod : { "default": mod };
23
+ };
24
+ Object.defineProperty(exports, "__esModule", { value: true });
25
+ exports.configureAuth0Service = exports.Auth0MachineTokenClient = exports.Auth0MachineClient = void 0;
26
+ const service_provider_1 = __importStar(require("../utils/service-provider"));
27
+ const client_1 = require("../services/client");
28
+ const utils_1 = __importStar(require("./utils"));
29
+ const caching_1 = require("./caching");
30
+ const aws_1 = __importDefault(require("./aws"));
31
+ const aws_2 = require("../services/aws");
32
+ exports.Auth0MachineClient = service_provider_1.default.createSymbol('Auth0MachineClient');
33
+ exports.Auth0MachineTokenClient = service_provider_1.default.createSymbol('Auth0MachineTokenClient');
34
+ const configureAuth0Service = (baseUrl, appClientSecretName, tokenCacheStoreName, tokenCacheMountPath) => {
35
+ const serviceProvider = new service_provider_1.default((0, caching_1.configureDailyTokenCache)(tokenCacheStoreName, tokenCacheMountPath));
36
+ serviceProvider.register(exports.Auth0MachineTokenClient, service_provider_1.Lifecycle.Singleton, () => new client_1.MachineTokenClient(appClientSecretName, aws_1.default.provide(aws_2.SecretsClient), utils_1.default.provide(client_1.OAuthClient), utils_1.default.provide(utils_1.Serializer)));
37
+ serviceProvider.register(exports.Auth0MachineClient, service_provider_1.Lifecycle.Singleton, () => new client_1.MachineClient(serviceProvider.provide(exports.Auth0MachineTokenClient), utils_1.default.provide(utils_1.HttpClient), serviceProvider.provide(caching_1.DailyTokenCache), appClientSecretName, baseUrl));
38
+ return serviceProvider;
39
+ };
40
+ exports.configureAuth0Service = configureAuth0Service;
41
+ //# sourceMappingURL=auth0.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth0.js","sourceRoot":"","sources":["../../providers/auth0.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8EAAsE;AAEtE,+CAI2B;AAC3B,iDAA+D;AAE/D,uCAAqE;AACrE,gDAA+B;AAC/B,yCAA+C;AAElC,QAAA,kBAAkB,GAC7B,0BAAe,CAAC,YAAY,CAAgB,oBAAoB,CAAC,CAAA;AAEtD,QAAA,uBAAuB,GAClC,0BAAe,CAAC,YAAY,CAAqB,yBAAyB,CAAC,CAAA;AAStE,MAAM,qBAAqB,GAAG,CACnC,OAAe,EACf,mBAA2B,EAC3B,mBAA2B,EAC3B,mBAA2B,EACV,EAAE;IACnB,MAAM,eAAe,GAAG,IAAI,0BAAe,CACzC,IAAA,kCAAwB,EAAC,mBAAmB,EAAE,mBAAmB,CAAC,CACnE,CAAA;IAED,eAAe,CAAC,QAAQ,CACtB,+BAAuB,EACvB,4BAAS,CAAC,SAAS,EACnB,GAAG,EAAE,CACH,IAAI,2BAAkB,CACpB,mBAAmB,EACnB,aAAW,CAAC,OAAO,CAAC,mBAAa,CAAC,EAClC,eAAa,CAAC,OAAO,CAAC,oBAAW,CAAC,EAClC,eAAa,CAAC,OAAO,CAAC,kBAAU,CAAC,CAClC,CACJ,CAAA;IAED,eAAe,CAAC,QAAQ,CACtB,0BAAkB,EAClB,4BAAS,CAAC,SAAS,EACnB,GAAG,EAAE,CACH,IAAI,sBAAa,CACf,eAAe,CAAC,OAAO,CAAC,+BAAuB,CAAC,EAChD,eAAa,CAAC,OAAO,CAAC,kBAAU,CAAC,EACjC,eAAe,CAAC,OAAO,CAAC,yBAAe,CAAC,EACxC,mBAAmB,EACnB,OAAO,CACR,CACJ,CAAA;IAED,OAAO,eAAe,CAAA;AACxB,CAAC,CAAA;AApCY,QAAA,qBAAqB,yBAoCjC"}
@@ -0,0 +1,3 @@
1
+ import ServiceProvider from '../utils/service-provider';
2
+ export declare const DailyTokenCache: symbol;
3
+ export declare const configureDailyTokenCache: (storeName: string, mountPath: string) => ServiceProvider;
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ Object.defineProperty(exports, "__esModule", { value: true });
22
+ exports.configureDailyTokenCache = exports.DailyTokenCache = void 0;
23
+ const service_provider_1 = __importStar(require("../utils/service-provider"));
24
+ const caching_1 = require("../utils/caching");
25
+ const utils_1 = __importStar(require("./utils"));
26
+ exports.DailyTokenCache = service_provider_1.default.createSymbol('DailyMachineCache');
27
+ const configureDailyTokenCache = (storeName, mountPath) => {
28
+ const serviceProvider = new service_provider_1.default();
29
+ serviceProvider.register(exports.DailyTokenCache, service_provider_1.Lifecycle.Singleton, () => new caching_1.SecretCache(storeName, mountPath, 3600 * 23, utils_1.default.provide(utils_1.Logger)));
30
+ return serviceProvider;
31
+ };
32
+ exports.configureDailyTokenCache = configureDailyTokenCache;
33
+ //# sourceMappingURL=caching.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"caching.js","sourceRoot":"","sources":["../../providers/caching.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,8EAAsE;AACtE,8CAAqD;AACrD,iDAA+C;AAElC,QAAA,eAAe,GAC1B,0BAAe,CAAC,YAAY,CAAQ,mBAAmB,CAAC,CAAA;AAOnD,MAAM,wBAAwB,GAAG,CACtC,SAAiB,EACjB,SAAiB,EACA,EAAE;IACnB,MAAM,eAAe,GAAG,IAAI,0BAAe,EAAE,CAAA;IAE7C,eAAe,CAAC,QAAQ,CACtB,uBAAe,EACf,4BAAS,CAAC,SAAS,EACnB,GAAG,EAAE,CACH,IAAI,qBAAW,CACb,SAAS,EACT,SAAS,EACT,IAAI,GAAG,EAAE,EACT,eAAa,CAAC,OAAO,CAAC,cAAM,CAAC,CAC9B,CACJ,CAAA;IAED,OAAO,eAAe,CAAA;AACxB,CAAC,CAAA;AAnBY,QAAA,wBAAwB,4BAmBpC"}
@@ -1 +1 @@
1
- {"version":3,"file":"core-services.js","sourceRoot":"","sources":["../../providers/core-services.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8EAAsE;AACtE,8CAA8C;AAE9C,+CAI2B;AAC3B,kFAAyD;AAEzD,gDAA+B;AAC/B,iDAA+D;AAElD,QAAA,8BAA8B,GACzC,0BAAe,CAAC,YAAY,CAC1B,gCAAgC,CACjC,CAAA;AAEU,QAAA,yBAAyB,GACpC,0BAAe,CAAC,YAAY,CAC1B,2BAA2B,CAC5B,CAAA;AAEH,MAAM,qBAAqB,GAAG,CAC5B,OAAe,EACf,gBAAwB,EACP,EAAE;IACnB,MAAM,oBAAoB,GAAG,IAAI,0BAAe,EAAE,CAAA;IAElD,oBAAoB,CAAC,QAAQ,CAC3B,2BAAkB,EAClB,4BAAS,CAAC,SAAS,EACnB,GAAG,EAAE,CAAC,IAAI,2BAAkB,CAAC,eAAa,CAAC,OAAO,CAAC,kBAAU,CAAC,CAAC,CAChE,CAAA;IAED,oBAAoB,CAAC,QAAQ,CAC3B,sCAA8B,EAC9B,4BAAS,CAAC,SAAS,EACnB,GAAG,EAAE,CACH,IAAI,2BAAkB,CACpB,gBAAgB,EAChB,aAAW,CAAC,OAAO,CAAC,uBAAa,CAAC,EAClC,oBAAoB,CAAC,OAAO,CAAC,2BAAkB,CAAC,EAChD,eAAa,CAAC,OAAO,CAAC,kBAAU,CAAC,CAClC,CACJ,CAAA;IAED,oBAAoB,CAAC,QAAQ,CAC3B,iCAAyB,EACzB,4BAAS,CAAC,SAAS,EACnB,GAAG,EAAE,CACH,IAAI,kCAAyB,CAC3B,oBAAoB,CAAC,OAAO,CAAC,sCAA8B,CAAC,EAC5D,eAAa,CAAC,OAAO,CAAC,kBAAU,CAAC,EACjC,eAAa,CAAC,OAAO,CAAC,qBAAW,CAAC,EAClC,qBAAqB,EACrB,OAAO,CACR,CACJ,CAAA;IAED,OAAO,oBAAoB,CAAA;AAC7B,CAAC,CAAA;AAED,kBAAe,qBAAqB,CAAA"}
1
+ {"version":3,"file":"core-services.js","sourceRoot":"","sources":["../../providers/core-services.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8EAAsE;AACtE,8CAA8C;AAE9C,+CAI2B;AAC3B,kFAAyD;AAEzD,gDAA+B;AAC/B,iDAA+D;AAElD,QAAA,8BAA8B,GACzC,0BAAe,CAAC,YAAY,CAC1B,gCAAgC,CACjC,CAAA;AAEU,QAAA,yBAAyB,GACpC,0BAAe,CAAC,YAAY,CAC1B,2BAA2B,CAC5B,CAAA;AAOH,MAAM,qBAAqB,GAAG,CAC5B,OAAe,EACf,gBAAwB,EACP,EAAE;IACnB,MAAM,oBAAoB,GAAG,IAAI,0BAAe,EAAE,CAAA;IAElD,oBAAoB,CAAC,QAAQ,CAC3B,2BAAkB,EAClB,4BAAS,CAAC,SAAS,EACnB,GAAG,EAAE,CAAC,IAAI,2BAAkB,CAAC,eAAa,CAAC,OAAO,CAAC,kBAAU,CAAC,CAAC,CAChE,CAAA;IAED,oBAAoB,CAAC,QAAQ,CAC3B,sCAA8B,EAC9B,4BAAS,CAAC,SAAS,EACnB,GAAG,EAAE,CACH,IAAI,2BAAkB,CACpB,gBAAgB,EAChB,aAAW,CAAC,OAAO,CAAC,uBAAa,CAAC,EAClC,oBAAoB,CAAC,OAAO,CAAC,2BAAkB,CAAC,EAChD,eAAa,CAAC,OAAO,CAAC,kBAAU,CAAC,CAClC,CACJ,CAAA;IAED,oBAAoB,CAAC,QAAQ,CAC3B,iCAAyB,EACzB,4BAAS,CAAC,SAAS,EACnB,GAAG,EAAE,CACH,IAAI,kCAAyB,CAC3B,oBAAoB,CAAC,OAAO,CAAC,sCAA8B,CAAC,EAC5D,eAAa,CAAC,OAAO,CAAC,kBAAU,CAAC,EACjC,eAAa,CAAC,OAAO,CAAC,qBAAW,CAAC,EAClC,qBAAqB,EACrB,OAAO,CACR,CACJ,CAAA;IAED,OAAO,oBAAoB,CAAA;AAC7B,CAAC,CAAA;AAED,kBAAe,qBAAqB,CAAA"}
@@ -28,6 +28,7 @@ const logging_1 = require("../utils/logging");
28
28
  const serialization_1 = require("../utils/serialization");
29
29
  const caching_1 = require("../utils/caching");
30
30
  const AxiosClient_1 = __importDefault(require("../services/client/AxiosClient"));
31
+ const client_1 = require("../services/client");
31
32
  exports.Logger = service_provider_1.default.createSymbol('Logger');
32
33
  exports.Serializer = service_provider_1.default.createSymbol('Serializer');
33
34
  exports.HttpClient = service_provider_1.default.createSymbol('HttpClient');
@@ -36,5 +37,6 @@ utilsProvider.register(exports.HttpClient, service_provider_1.Lifecycle.Singleto
36
37
  utilsProvider.register(exports.Logger, service_provider_1.Lifecycle.Singleton, () => new logging_1.ConsoleLogger());
37
38
  utilsProvider.register(exports.Serializer, service_provider_1.Lifecycle.Singleton, () => new serialization_1.JSONSerializer());
38
39
  utilsProvider.register(caching_1.MemoryCache, service_provider_1.Lifecycle.Singleton);
40
+ utilsProvider.register(client_1.OAuthClient, service_provider_1.Lifecycle.Singleton, () => new client_1.OAuthClient(utilsProvider.provide(exports.HttpClient)));
39
41
  exports.default = utilsProvider;
40
42
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../providers/utils.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8EAAsE;AAEtE,8CAAyE;AACzE,0DAG+B;AAC/B,8CAA8C;AAG9C,iFAAwD;AAE3C,QAAA,MAAM,GAAG,0BAAe,CAAC,YAAY,CAAgB,QAAQ,CAAC,CAAA;AAC9D,QAAA,UAAU,GACrB,0BAAe,CAAC,YAAY,CAAoB,YAAY,CAAC,CAAA;AAClD,QAAA,UAAU,GACrB,0BAAe,CAAC,YAAY,CAAoB,YAAY,CAAC,CAAA;AAE/D,MAAM,aAAa,GAAG,IAAI,0BAAe,EAAE,CAAA;AAE3C,aAAa,CAAC,QAAQ,CAAC,kBAAU,EAAE,4BAAS,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,qBAAW,EAAE,CAAC,CAAA;AAEhF,aAAa,CAAC,QAAQ,CAAC,cAAM,EAAE,4BAAS,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,uBAAa,EAAE,CAAC,CAAA;AAE9E,aAAa,CAAC,QAAQ,CACpB,kBAAU,EACV,4BAAS,CAAC,SAAS,EACnB,GAAG,EAAE,CAAC,IAAI,8BAAc,EAAE,CAC3B,CAAA;AAED,aAAa,CAAC,QAAQ,CAAC,qBAAW,EAAE,4BAAS,CAAC,SAAS,CAAC,CAAA;AAExD,kBAAe,aAAa,CAAA"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../providers/utils.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8EAAsE;AAEtE,8CAAyE;AACzE,0DAG+B;AAC/B,8CAA8C;AAG9C,iFAAwD;AACxD,+CAAgD;AAEnC,QAAA,MAAM,GAAG,0BAAe,CAAC,YAAY,CAAgB,QAAQ,CAAC,CAAA;AAC9D,QAAA,UAAU,GACrB,0BAAe,CAAC,YAAY,CAAoB,YAAY,CAAC,CAAA;AAClD,QAAA,UAAU,GACrB,0BAAe,CAAC,YAAY,CAAoB,YAAY,CAAC,CAAA;AAE/D,MAAM,aAAa,GAAG,IAAI,0BAAe,EAAE,CAAA;AAE3C,aAAa,CAAC,QAAQ,CAAC,kBAAU,EAAE,4BAAS,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,qBAAW,EAAE,CAAC,CAAA;AAEhF,aAAa,CAAC,QAAQ,CAAC,cAAM,EAAE,4BAAS,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,uBAAa,EAAE,CAAC,CAAA;AAE9E,aAAa,CAAC,QAAQ,CACpB,kBAAU,EACV,4BAAS,CAAC,SAAS,EACnB,GAAG,EAAE,CAAC,IAAI,8BAAc,EAAE,CAC3B,CAAA;AAED,aAAa,CAAC,QAAQ,CAAC,qBAAW,EAAE,4BAAS,CAAC,SAAS,CAAC,CAAA;AAExD,aAAa,CAAC,QAAQ,CACpB,oBAAW,EACX,4BAAS,CAAC,SAAS,EACnB,GAAG,EAAE,CAAC,IAAI,oBAAW,CAAC,aAAa,CAAC,OAAO,CAAC,kBAAU,CAAC,CAAC,CACzD,CAAA;AAED,kBAAe,aAAa,CAAA"}
@@ -1,9 +1,14 @@
1
- import { DynamoDB } from 'aws-sdk';
1
+ import { AWSError, DynamoDB } from 'aws-sdk';
2
+ import { Key } from 'aws-sdk/clients/dynamodb';
3
+ import { PromiseResult } from 'aws-sdk/lib/request';
4
+ import { DocumentClient } from 'aws-sdk/lib/dynamodb/document_client';
5
+ import { QueryOperation } from './utils';
2
6
  declare abstract class BaseDynamoDataStorage<TEntity> {
3
7
  protected readonly tableName: string;
4
8
  protected abstract readonly keys: Array<keyof TEntity>;
5
9
  protected readonly documentClient: DynamoDB.DocumentClient;
6
10
  protected constructor(tableName: string);
11
+ protected executeQueryOperation({ operation, query }: QueryOperation, lastKey?: Key): Promise<PromiseResult<DocumentClient.QueryOutput, AWSError>>;
7
12
  protected getKeyPairFromModel(model: TEntity): Partial<TEntity>;
8
13
  }
9
14
  export default BaseDynamoDataStorage;
@@ -6,6 +6,15 @@ class BaseDynamoDataStorage {
6
6
  this.tableName = tableName;
7
7
  this.documentClient = new aws_sdk_1.DynamoDB.DocumentClient();
8
8
  }
9
+ executeQueryOperation({ operation, query }, lastKey) {
10
+ return operation === 'Query'
11
+ ? this.documentClient
12
+ .query({ ...query, ExclusiveStartKey: lastKey })
13
+ .promise()
14
+ : this.documentClient
15
+ .scan({ ...query, ExclusiveStartKey: lastKey })
16
+ .promise();
17
+ }
9
18
  getKeyPairFromModel(model) {
10
19
  const keyDictionary = {};
11
20
  this.keys.forEach((key) => {
@@ -1 +1 @@
1
- {"version":3,"file":"BaseDynamoDataStorage.js","sourceRoot":"","sources":["../../../../services/aws/dynamodb/BaseDynamoDataStorage.ts"],"names":[],"mappings":";;AAAA,qCAAkC;AAElC,MAAe,qBAAqB;IAKlC,YAAyC,SAAiB;QAAjB,cAAS,GAAT,SAAS,CAAQ;QACxD,IAAI,CAAC,cAAc,GAAG,IAAI,kBAAQ,CAAC,cAAc,EAAE,CAAA;IACrD,CAAC;IAES,mBAAmB,CAAC,KAAc;QAC1C,MAAM,aAAa,GAAqB,EAAE,CAAA;QAE1C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YACxB,aAAa,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAA;QACjC,CAAC,CAAC,CAAA;QAEF,OAAO,aAAa,CAAA;IACtB,CAAC;CACF;AAED,kBAAe,qBAAqB,CAAA"}
1
+ {"version":3,"file":"BaseDynamoDataStorage.js","sourceRoot":"","sources":["../../../../services/aws/dynamodb/BaseDynamoDataStorage.ts"],"names":[],"mappings":";;AAAA,qCAA4C;AAQ5C,MAAe,qBAAqB;IAKlC,YAAyC,SAAiB;QAAjB,cAAS,GAAT,SAAS,CAAQ;QACxD,IAAI,CAAC,cAAc,GAAG,IAAI,kBAAQ,CAAC,cAAc,EAAE,CAAA;IACrD,CAAC;IAES,qBAAqB,CAC7B,EAAE,SAAS,EAAE,KAAK,EAAkB,EACpC,OAAa;QAEb,OAAO,SAAS,KAAK,OAAO;YAC1B,CAAC,CAAC,IAAI,CAAC,cAAc;iBAChB,KAAK,CAAC,EAAE,GAAG,KAAK,EAAE,iBAAiB,EAAE,OAAO,EAAE,CAAC;iBAC/C,OAAO,EAAE;YACd,CAAC,CAAC,IAAI,CAAC,cAAc;iBAChB,IAAI,CAAC,EAAE,GAAG,KAAK,EAAE,iBAAiB,EAAE,OAAO,EAAE,CAAC;iBAC9C,OAAO,EAAE,CAAA;IAClB,CAAC;IAES,mBAAmB,CAAC,KAAc;QAC1C,MAAM,aAAa,GAAqB,EAAE,CAAA;QAE1C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YACxB,aAAa,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAA;QACjC,CAAC,CAAC,CAAA;QAEF,OAAO,aAAa,CAAA;IACtB,CAAC;CACF;AAED,kBAAe,qBAAqB,CAAA"}
@@ -64,16 +64,11 @@ class DynamoDataStorage extends BaseDynamoDataStorage_1.default {
64
64
  }
65
65
  async find(query) {
66
66
  var _a;
67
- const dynamoQuery = utils_1.QueryBuilder.buildQuery(query, this.tableName, this.keys);
67
+ const operation = utils_1.QueryBuilder.buildQuery(query, this.tableName, this.keys);
68
68
  const results = [];
69
69
  let lastEvaluatedKey;
70
70
  do {
71
- const page = await this.documentClient
72
- .query({
73
- ...dynamoQuery,
74
- ExclusiveStartKey: lastEvaluatedKey,
75
- })
76
- .promise();
71
+ const page = await this.executeQueryOperation(operation, lastEvaluatedKey);
77
72
  if ((_a = page.Items) === null || _a === void 0 ? void 0 : _a.length) {
78
73
  results.push(...page.Items);
79
74
  }
@@ -86,8 +81,8 @@ class DynamoDataStorage extends BaseDynamoDataStorage_1.default {
86
81
  ...query,
87
82
  limit: 1,
88
83
  };
89
- const dynamoQuery = utils_1.QueryBuilder.buildQuery(limitedQuery, this.tableName, this.keys);
90
- const results = await this.documentClient.query(dynamoQuery).promise();
84
+ const operation = utils_1.QueryBuilder.buildQuery(limitedQuery, this.tableName, this.keys);
85
+ const results = await this.executeQueryOperation(operation);
91
86
  return results.Items ? results.Items[0] : null;
92
87
  }
93
88
  async remove(entity) {
@@ -1 +1 @@
1
- {"version":3,"file":"DynamoDataStorage.js","sourceRoot":"","sources":["../../../../services/aws/dynamodb/DynamoDataStorage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DynamoDataStorage.js","sourceRoot":"","sources":["../../../../services/aws/dynamodb/DynamoDataStorage.ts"],"names":[],"mappings":"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"}
@@ -11,17 +11,26 @@ class DynamoIndexDataStorage extends BaseDynamoDataStorage_1.default {
11
11
  this.indexName = indexName;
12
12
  }
13
13
  async find(query) {
14
- const dynamoQuery = utils_1.QueryBuilder.buildQuery(query, this.tableName, this.keys, this.indexName);
15
- const results = await this.documentClient.query(dynamoQuery).promise();
16
- return results.Items ? results.Items : [];
14
+ var _a;
15
+ const operation = utils_1.QueryBuilder.buildQuery(query, this.tableName, this.keys, this.indexName);
16
+ const results = [];
17
+ let lastEvaluatedKey;
18
+ do {
19
+ const page = await this.executeQueryOperation(operation, lastEvaluatedKey);
20
+ if ((_a = page.Items) === null || _a === void 0 ? void 0 : _a.length) {
21
+ results.push(...page.Items);
22
+ }
23
+ lastEvaluatedKey = page.LastEvaluatedKey;
24
+ } while (lastEvaluatedKey);
25
+ return results;
17
26
  }
18
27
  async findOne(query) {
19
28
  const limitedQuery = {
20
29
  ...query,
21
30
  limit: 1,
22
31
  };
23
- const dynamoQuery = utils_1.QueryBuilder.buildQuery(limitedQuery, this.tableName, this.keys, this.indexName);
24
- const results = await this.documentClient.query(dynamoQuery).promise();
32
+ const operation = utils_1.QueryBuilder.buildQuery(limitedQuery, this.tableName, this.keys, this.indexName);
33
+ const results = await this.executeQueryOperation(operation);
25
34
  return results.Items ? results.Items[0] : null;
26
35
  }
27
36
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DynamoIndexDataStorage.js","sourceRoot":"","sources":["../../../../services/aws/dynamodb/DynamoIndexDataStorage.ts"],"names":[],"mappings":";;;;;AAEA,oFAA2D;AAC3D,mCAAuD;AAGvD,MAAe,sBACb,SAAQ,+BAA8B;IAGtC,YACE,SAAiB,EACE,SAAiB;QAEpC,KAAK,CAAC,SAAS,CAAC,CAAA;QAFG,cAAS,GAAT,SAAS,CAAQ;IAGtC,CAAC;IAEM,KAAK,CAAC,IAAI,CACf,KAA+B;QAE/B,MAAM,WAAW,GACf,oBAAY,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;QAE3E,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,CAAA;QAEtE,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,CAAE,OAAO,CAAC,KAAyB,CAAC,CAAC,CAAC,EAAE,CAAA;IAChE,CAAC;IAEM,KAAK,CAAC,OAAO,CAClB,KAA8C;QAE9C,MAAM,YAAY,GAAG;YACnB,GAAG,KAAK;YACR,KAAK,EAAE,CAAC;SACT,CAAA;QAED,MAAM,WAAW,GACf,oBAAY,CAAC,UAAU,CACrB,YAAY,EACZ,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,SAAS,CACf,CAAA;QAEH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,CAAA;QAEtE,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,CAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAa,CAAC,CAAC,CAAC,IAAI,CAAA;IAC7D,CAAC;CACF;AAED,kBAAe,sBAAsB,CAAA"}
1
+ {"version":3,"file":"DynamoIndexDataStorage.js","sourceRoot":"","sources":["../../../../services/aws/dynamodb/DynamoIndexDataStorage.ts"],"names":[],"mappings":";;;;;AAEA,oFAA2D;AAC3D,mCAAuD;AAGvD,MAAe,sBACb,SAAQ,+BAA8B;IAGtC,YACE,SAAiB,EACE,SAAiB;QAEpC,KAAK,CAAC,SAAS,CAAC,CAAA;QAFG,cAAS,GAAT,SAAS,CAAQ;IAGtC,CAAC;IAEM,KAAK,CAAC,IAAI,CACf,KAA+B;;QAE/B,MAAM,SAAS,GAAG,oBAAY,CAAC,UAAU,CACvC,KAAK,EACL,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,SAAS,CACf,CAAA;QAED,MAAM,OAAO,GAAG,EAAE,CAAA;QAClB,IAAI,gBAAgB,CAAA;QAEpB,GAAG;YAED,MAAM,IAAI,GAA+B,MAAM,IAAI,CAAC,qBAAqB,CACvE,SAAS,EACT,gBAAgB,CACjB,CAAA;YAED,IAAI,MAAA,IAAI,CAAC,KAAK,0CAAE,MAAM,EAAE;gBACtB,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAA;aAC5B;YAED,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAA;SACzC,QAAQ,gBAAgB,EAAC;QAE1B,OAAO,OAA0B,CAAA;IACnC,CAAC;IAEM,KAAK,CAAC,OAAO,CAClB,KAA8C;QAE9C,MAAM,YAAY,GAAG;YACnB,GAAG,KAAK;YACR,KAAK,EAAE,CAAC;SACT,CAAA;QAED,MAAM,SAAS,GAAG,oBAAY,CAAC,UAAU,CACvC,YAAY,EACZ,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,SAAS,CACf,CAAA;QAGD,MAAM,OAAO,GACX,MAAM,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAA;QAC7C,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,CAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAa,CAAC,CAAC,CAAC,IAAI,CAAA;IAC7D,CAAC;CACF;AAED,kBAAe,sBAAsB,CAAA"}
@@ -1,4 +1,4 @@
1
1
  export { default as QueryParameters } from './query/QueryParameters';
2
2
  export { default as QueryWhereStatement } from './query/QueryWhereStatement';
3
- export { default as QueryBuilder } from './query/QueryBuilder';
3
+ export { default as QueryBuilder, QueryOperation } from './query/QueryBuilder';
4
4
  export { default as PrimaryKey } from './PrimaryKey';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../services/aws/dynamodb/utils/index.ts"],"names":[],"mappings":";;;;;;AAGA,qDAA8D;AAArD,6HAAA,OAAO,OAAgB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../services/aws/dynamodb/utils/index.ts"],"names":[],"mappings":";;;;;;AAGA,qDAA8E;AAArE,6HAAA,OAAO,OAAgB"}
@@ -1,5 +1,9 @@
1
1
  import { DynamoDB } from 'aws-sdk';
2
2
  import QueryParameters from './QueryParameters';
3
+ export interface QueryOperation {
4
+ operation: 'Query' | 'Scan';
5
+ query: DynamoDB.DocumentClient.QueryInput;
6
+ }
3
7
  declare class QueryBuilder {
4
8
  private static buildProjectionExpression;
5
9
  private static buildAttributeValues;
@@ -7,6 +11,6 @@ declare class QueryBuilder {
7
11
  private static buildQueryStatements;
8
12
  private static buildExpression;
9
13
  private static splitKeyAndFilterCondition;
10
- static buildQuery<TEntity>(query: QueryParameters<TEntity>, tableName: string, primaryKeys: Array<keyof TEntity>, indexName?: string): DynamoDB.DocumentClient.QueryInput;
14
+ static buildQuery<TEntity>(query: QueryParameters<TEntity>, tableName: string, primaryKeys: Array<keyof TEntity>, indexName?: string): QueryOperation;
11
15
  }
12
16
  export default QueryBuilder;
@@ -67,18 +67,24 @@ class QueryBuilder {
67
67
  static buildQuery(query, tableName, primaryKeys, indexName) {
68
68
  const { where, limit, select } = query;
69
69
  const { keyCondition, filterCondition } = this.splitKeyAndFilterCondition(where, primaryKeys);
70
- return {
71
- TableName: tableName,
72
- IndexName: indexName,
73
- Limit: limit,
74
- ProjectionExpression: select
75
- ? QueryBuilder.buildProjectionExpression(select)
76
- : undefined,
77
- KeyConditionExpression: this.buildExpression(keyCondition),
78
- FilterExpression: this.buildExpression(filterCondition),
79
- ExpressionAttributeNames: QueryBuilder.buildAttributeNames(where),
80
- ExpressionAttributeValues: this.buildAttributeValues(where),
70
+ const keyExpression = this.buildExpression(keyCondition);
71
+ const op = {
72
+ operation: keyExpression ? 'Query' : 'Scan',
73
+ query: {
74
+ TableName: tableName,
75
+ IndexName: indexName,
76
+ Limit: limit,
77
+ ProjectionExpression: select
78
+ ? QueryBuilder.buildProjectionExpression(select)
79
+ : undefined,
80
+ KeyConditionExpression: keyExpression,
81
+ FilterExpression: this.buildExpression(filterCondition),
82
+ ExpressionAttributeNames: QueryBuilder.buildAttributeNames(where),
83
+ ExpressionAttributeValues: this.buildAttributeValues(where),
84
+ },
81
85
  };
86
+ console.log('Execution ddb operation', op);
87
+ return op;
82
88
  }
83
89
  }
84
90
  exports.default = QueryBuilder;
@@ -1 +1 @@
1
- {"version":3,"file":"QueryBuilder.js","sourceRoot":"","sources":["../../../../../../services/aws/dynamodb/utils/query/QueryBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"QueryBuilder.js","sourceRoot":"","sources":["../../../../../../services/aws/dynamodb/utils/query/QueryBuilder.ts"],"names":[],"mappings":"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"}
@@ -6,12 +6,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const MachineClient_1 = __importDefault(require("./MachineClient"));
7
7
  class CoreServicesMachineClient extends MachineClient_1.default {
8
8
  async runQuery(service, query, params) {
9
- const { result } = await this.httpClient.put({
10
- url: `/${service}/private/query`,
11
- params: {
12
- query,
13
- params,
14
- },
9
+ const { result } = await this.put(`/${service}/private/query`, {
10
+ query,
11
+ params,
15
12
  });
16
13
  return result;
17
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CoreServicesMachineClient.js","sourceRoot":"","sources":["../../../services/client/CoreServicesMachineClient.ts"],"names":[],"mappings":";;;;;AACA,oEAA2C;AAE3C,MAAM,yBAA0B,SAAQ,uBAAa;IAS5C,KAAK,CAAC,QAAQ,CACnB,OAAyB,EACzB,KAAa,EACb,MAA+B;QAE/B,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAC3C,GAAG,EAAE,IAAI,OAAO,gBAAgB;YAChC,MAAM,EAAE;gBACN,KAAK;gBACL,MAAM;aACP;SACF,CAAC,CAAA;QAEF,OAAO,MAAM,CAAA;IACf,CAAC;CACF;AAED,kBAAe,yBAAyB,CAAA"}
1
+ {"version":3,"file":"CoreServicesMachineClient.js","sourceRoot":"","sources":["../../../services/client/CoreServicesMachineClient.ts"],"names":[],"mappings":";;;;;AACA,oEAA2C;AAW3C,MAAM,yBAA0B,SAAQ,uBAAa;IAS5C,KAAK,CAAC,QAAQ,CACnB,OAAyB,EACzB,KAAa,EACb,MAA+B;QAE/B,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,GAAG,CAG/B,IAAI,OAAO,gBAAgB,EAAE;YAC7B,KAAK;YACL,MAAM;SACP,CAAC,CAAA;QAEF,OAAO,MAAM,CAAA;IACf,CAAC;CACF;AAED,kBAAe,yBAAyB,CAAA"}
@@ -1,13 +1,12 @@
1
1
  import SecretsClient from '../../aws/SecretsClient';
2
- import { JSONSerializer } from '../../../utils/serialization';
2
+ import { Serializer } from '../../../utils/serialization';
3
3
  import OAuthClient from '../OAuthClient';
4
- export { default as TokenNotFoundError } from './TokenNotFoundError';
5
4
  declare class MachineTokenClient {
6
5
  protected readonly appClientSecretName: string;
7
6
  protected readonly secretsClient: SecretsClient;
8
7
  protected readonly oAuthClient: OAuthClient;
9
- protected readonly serializer: JSONSerializer;
10
- constructor(appClientSecretName: string, secretsClient: SecretsClient, oAuthClient: OAuthClient, serializer: JSONSerializer);
8
+ protected readonly serializer: Serializer;
9
+ constructor(appClientSecretName: string, secretsClient: SecretsClient, oAuthClient: OAuthClient, serializer: Serializer);
11
10
  getMachineToken(): Promise<string>;
12
11
  }
13
12
  export default MachineTokenClient;
@@ -3,10 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.TokenNotFoundError = void 0;
7
6
  const TokenNotFoundError_1 = __importDefault(require("./TokenNotFoundError"));
8
- var TokenNotFoundError_2 = require("./TokenNotFoundError");
9
- Object.defineProperty(exports, "TokenNotFoundError", { enumerable: true, get: function () { return __importDefault(TokenNotFoundError_2).default; } });
10
7
  class MachineTokenClient {
11
8
  constructor(appClientSecretName, secretsClient, oAuthClient, serializer) {
12
9
  this.appClientSecretName = appClientSecretName;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../services/client/MachineTokenClient/index.ts"],"names":[],"mappings":";;;;;;AAOA,8EAAqD;AAErD,2DAAoE;AAA3D,yIAAA,OAAO,OAAsB;AAEtC,MAAM,kBAAkB;IACtB,YACqB,mBAA2B,EAC3B,aAA4B,EAC5B,WAAwB,EACxB,UAA0B;QAH1B,wBAAmB,GAAnB,mBAAmB,CAAQ;QAC3B,kBAAa,GAAb,aAAa,CAAe;QAC5B,gBAAW,GAAX,WAAW,CAAa;QACxB,eAAU,GAAV,UAAU,CAAgB;IAC5C,CAAC;IAEG,KAAK,CAAC,eAAe;QAC1B,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,cAAc,CAC7D,IAAI,CAAC,mBAAmB,CACzB,CAAA;QACD,IAAI,CAAC,eAAe,EAAE;YACpB,MAAM,IAAI,4BAAkB,EAAE,CAAA;SAC/B;QAED,MAAM,aAAa,GACjB,IAAI,CAAC,UAAU,CAAC,WAAW,CAAY,eAAe,CAAC,CAAA;QAEzD,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAClE,aAAa,CACd,CAAA;QAED,OAAO,WAAW,CAAA;IACpB,CAAC;CACF;AAED,kBAAe,kBAAkB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../services/client/MachineTokenClient/index.ts"],"names":[],"mappings":";;;;;AAOA,8EAAqD;AAErD,MAAM,kBAAkB;IACtB,YACqB,mBAA2B,EAC3B,aAA4B,EAC5B,WAAwB,EACxB,UAAsB;QAHtB,wBAAmB,GAAnB,mBAAmB,CAAQ;QAC3B,kBAAa,GAAb,aAAa,CAAe;QAC5B,gBAAW,GAAX,WAAW,CAAa;QACxB,eAAU,GAAV,UAAU,CAAY;IACxC,CAAC;IAEG,KAAK,CAAC,eAAe;QAC1B,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,cAAc,CAC7D,IAAI,CAAC,mBAAmB,CACzB,CAAA;QACD,IAAI,CAAC,eAAe,EAAE;YACpB,MAAM,IAAI,4BAAkB,EAAE,CAAA;SAC/B;QAED,MAAM,aAAa,GACjB,IAAI,CAAC,UAAU,CAAC,WAAW,CAAY,eAAe,CAAC,CAAA;QAEzD,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAClE,aAAa,CACd,CAAA;QAED,OAAO,WAAW,CAAA;IACpB,CAAC;CACF;AAED,kBAAe,kBAAkB,CAAA"}
@@ -1,5 +1,5 @@
1
1
  import { OAuthErrorCode } from '../../models/enum';
2
- import { HttpRequestError, OAuthClientError } from '../../models/errors';
2
+ import { HttpRequestError, OAuthClientError, OAuthExchangeFailedError } from '../../models/errors';
3
3
  import { HttpClient } from './HttpClient';
4
4
  export declare enum OAuthGrantType {
5
5
  ClientCredentials = "client_credentials",
@@ -53,6 +53,6 @@ declare class OAuthClient implements IOAuthClient {
53
53
  exchangeAuthorizationCode(description: AuthorizationCodeRequest): Promise<OAuthResponse>;
54
54
  clientCredentialsFlow(description: ClientCredentialsRequest): Promise<OAuthResponse>;
55
55
  protected static toOAuthResponse(raw: RawOAuthResponse): OAuthResponse;
56
- protected static toOAuthError<TErrorCode = OAuthErrorCode>(axiosError: HttpRequestError): OAuthClientError<TErrorCode>;
56
+ protected static toOAuthError<TErrorCode = OAuthErrorCode>(axiosError: HttpRequestError): OAuthClientError<TErrorCode> | OAuthExchangeFailedError;
57
57
  }
58
58
  export default OAuthClient;
@@ -76,8 +76,11 @@ class OAuthClient {
76
76
  };
77
77
  }
78
78
  static toOAuthError(axiosError) {
79
- var _a, _b;
80
- return new errors_1.OAuthClientError((_a = axiosError.responseData) === null || _a === void 0 ? void 0 : _a.data.error, (_b = axiosError.responseData) === null || _b === void 0 ? void 0 : _b.data.error_description);
79
+ var _a, _b, _c;
80
+ if ((_a = axiosError === null || axiosError === void 0 ? void 0 : axiosError.responseData) === null || _a === void 0 ? void 0 : _a.data) {
81
+ return new errors_1.OAuthClientError((_b = axiosError.responseData) === null || _b === void 0 ? void 0 : _b.data.error, (_c = axiosError.responseData) === null || _c === void 0 ? void 0 : _c.data.error_description);
82
+ }
83
+ return new errors_1.OAuthExchangeFailedError(axiosError);
81
84
  }
82
85
  }
83
86
  exports.default = OAuthClient;
@@ -1 +1 @@
1
- {"version":3,"file":"OAuthClient.js","sourceRoot":"","sources":["../../../services/client/OAuthClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OAuthClient.js","sourceRoot":"","sources":["../../../services/client/OAuthClient.ts"],"names":[],"mappings":"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"}