@sinch/sdk-client 1.4.1 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/dist/api/api-client-options-helper.d.ts +6 -2
  2. package/dist/api/api-client-options-helper.js +22 -3
  3. package/dist/api/api-client-options-helper.js.map +1 -1
  4. package/dist/api/api-client-options.d.ts +3 -1
  5. package/dist/api/api-client.d.ts +9 -2
  6. package/dist/api/api-client.js +4 -1
  7. package/dist/api/api-client.js.map +1 -1
  8. package/dist/api/api-errors.d.ts +11 -1
  9. package/dist/api/api-errors.js +5 -2
  10. package/dist/api/api-errors.js.map +1 -1
  11. package/dist/api/api-interface.d.ts +1 -1
  12. package/dist/api/callback-webhooks-interface.d.ts +1 -0
  13. package/dist/api/index.d.ts +1 -1
  14. package/dist/api/index.js.map +1 -1
  15. package/dist/client/api-fetch-client.d.ts +4 -2
  16. package/dist/client/api-fetch-client.js +42 -4
  17. package/dist/client/api-fetch-client.js.map +1 -1
  18. package/dist/client/index.d.ts +1 -0
  19. package/dist/client/index.js +1 -0
  20. package/dist/client/index.js.map +1 -1
  21. package/dist/client/lazy-api-client.d.ts +9 -0
  22. package/dist/client/lazy-api-client.js +14 -0
  23. package/dist/client/lazy-api-client.js.map +1 -0
  24. package/dist/domain/domain-helper.d.ts +14 -0
  25. package/dist/domain/domain-helper.js +14 -0
  26. package/dist/domain/domain-helper.js.map +1 -1
  27. package/dist/domain/domain-interface.d.ts +18 -1
  28. package/dist/domain/domain-interface.js +2 -0
  29. package/dist/domain/domain-interface.js.map +1 -1
  30. package/dist/index.d.ts +1 -0
  31. package/dist/index.js +1 -0
  32. package/dist/index.js.map +1 -1
  33. package/dist/logger/index.d.ts +2 -0
  34. package/dist/logger/index.js +9 -0
  35. package/dist/logger/index.js.map +1 -0
  36. package/dist/logger/logger-types.d.ts +30 -0
  37. package/dist/logger/logger-types.js +3 -0
  38. package/dist/logger/logger-types.js.map +1 -0
  39. package/dist/logger/logger.d.ts +11 -0
  40. package/dist/logger/logger.js +48 -0
  41. package/dist/logger/logger.js.map +1 -0
  42. package/dist/logger/sinch-logger.d.ts +14 -0
  43. package/dist/logger/sinch-logger.js +39 -0
  44. package/dist/logger/sinch-logger.js.map +1 -0
  45. package/dist/plugins/api-token/api-token.request.d.ts +1 -0
  46. package/dist/plugins/api-token/api-token.request.js +1 -0
  47. package/dist/plugins/api-token/api-token.request.js.map +1 -1
  48. package/dist/plugins/basicAuthentication/basic-authentication.request.d.ts +1 -0
  49. package/dist/plugins/basicAuthentication/basic-authentication.request.js +1 -0
  50. package/dist/plugins/basicAuthentication/basic-authentication.request.js.map +1 -1
  51. package/dist/plugins/core/request-plugin.d.ts +2 -1
  52. package/dist/plugins/core/request-plugin.js.map +1 -1
  53. package/dist/plugins/exception/exception.response.d.ts +5 -4
  54. package/dist/plugins/exception/exception.response.js +10 -5
  55. package/dist/plugins/exception/exception.response.js.map +1 -1
  56. package/dist/plugins/oauth2/oauth2-token.request.d.ts +8 -1
  57. package/dist/plugins/oauth2/oauth2-token.request.js +71 -10
  58. package/dist/plugins/oauth2/oauth2-token.request.js.map +1 -1
  59. package/dist/plugins/signing/signing.request.d.ts +1 -0
  60. package/dist/plugins/signing/signing.request.js +1 -0
  61. package/dist/plugins/signing/signing.request.js.map +1 -1
  62. package/dist/plugins/version/version.request.d.ts +1 -0
  63. package/dist/plugins/version/version.request.js +1 -0
  64. package/dist/plugins/version/version.request.js.map +1 -1
  65. package/dist/plugins/x-timestamp/x-timestamp.request.d.ts +1 -0
  66. package/dist/plugins/x-timestamp/x-timestamp.request.js +1 -0
  67. package/dist/plugins/x-timestamp/x-timestamp.request.js.map +1 -1
  68. package/dist/utils/authorization.helper.d.ts +2 -2
  69. package/dist/utils/authorization.helper.js +7 -16
  70. package/dist/utils/authorization.helper.js.map +1 -1
  71. package/package.json +2 -2
@@ -1,5 +1,6 @@
1
1
  import { RequestPlugin } from '../plugins/core/request-plugin';
2
2
  import { ResponsePlugin } from '../plugins/core/response-plugin';
3
+ import { Logger } from '../logger';
3
4
  /**
4
5
  * Global object that holds the API configuration.
5
6
  * Be careful to follow the guidelines defined by the API Services about which parameters are required for each API. Not all of them use the same authentication mechanism:
@@ -7,7 +8,7 @@ import { ResponsePlugin } from '../plugins/core/response-plugin';
7
8
  * - API Token: SMS on all regions
8
9
  * - Application Signed: Verification and Voice
9
10
  */
10
- export type SinchClientParameters = Partial<UnifiedCredentials & MailgunCredentials & ServicePlanIdCredentials & ApplicationCredentials & ApiHostname & ApiPlugins>;
11
+ export type SinchClientParameters = Partial<UnifiedCredentials & ServicePlanIdCredentials & ApplicationCredentials & ApiHostname & ApiPlugins & WithLogger>;
11
12
  export interface UnifiedCredentials {
12
13
  /** The project ID associated with the API Client. You can find this on your [Dashboard](https://dashboard.sinch.com/account/access-keys). */
13
14
  projectId: string;
@@ -24,6 +25,7 @@ export interface UnifiedCredentials {
24
25
  /** The region for the Conversation API. Default region is US */
25
26
  conversationRegion?: ConversationRegion;
26
27
  }
28
+ /** @internal */
27
29
  export interface MailgunCredentials {
28
30
  /** Your API Key created from the [Mailgun Dashboard](https://app.mailgun.com/settings/api_security) */
29
31
  mailgunApiKey: string;
@@ -145,12 +147,27 @@ export declare const ConversationRegion: {
145
147
  EUROPE: SupportedConversationRegion.EUROPE;
146
148
  BRAZIL: SupportedConversationRegion.BRAZIL;
147
149
  };
150
+ /** @internal */
148
151
  export declare enum SupportedMailgunRegion {
149
152
  DEFAULT = "",
150
153
  EUROPE = "eu"
151
154
  }
155
+ /** @internal */
152
156
  export type MailgunRegion = SupportedMailgunRegion | string;
157
+ /** @internal */
153
158
  export declare const MailgunRegion: {
154
159
  DEFAULT: SupportedMailgunRegion.DEFAULT;
155
160
  EUROPE: SupportedMailgunRegion.EUROPE;
156
161
  };
162
+ export interface WithLogger {
163
+ /**
164
+ * Logger instance to be used by the SDK.
165
+ * - omitted or `undefined`: defaults to `console`
166
+ * - `null`: silent (no SDK output)
167
+ */
168
+ logger?: Logger | null;
169
+ }
170
+ /** Sinch client parameters with a resolved logger (never null or undefined). */
171
+ export type ResolvedSinchClientParameters = Omit<SinchClientParameters, 'logger'> & {
172
+ logger: Logger;
173
+ };
@@ -70,11 +70,13 @@ exports.ConversationRegion = {
70
70
  };
71
71
  // ////////////////////
72
72
  // Mailgun regions
73
+ /** @internal */
73
74
  var SupportedMailgunRegion;
74
75
  (function (SupportedMailgunRegion) {
75
76
  SupportedMailgunRegion["DEFAULT"] = "";
76
77
  SupportedMailgunRegion["EUROPE"] = "eu";
77
78
  })(SupportedMailgunRegion || (exports.SupportedMailgunRegion = SupportedMailgunRegion = {}));
79
+ /** @internal */
78
80
  exports.MailgunRegion = {
79
81
  ...SupportedMailgunRegion,
80
82
  };
@@ -1 +1 @@
1
- {"version":3,"file":"domain-interface.js","sourceRoot":"","sources":["../../src/domain/domain-interface.ts"],"names":[],"mappings":";;;AAgGO,MAAM,oBAAoB,GAAG,CAAC,WAAgB,EAAqC,EAAE;IAC1F,MAAM,SAAS,GAAG,CAAC,WAAW,CAAuB,CAAC;IACtD,OAAO,SAAS,CAAC,SAAS,KAAK,SAAS;WACnC,SAAS,CAAC,KAAK,KAAK,SAAS;WAC7B,SAAS,CAAC,SAAS,KAAK,SAAS,CAAC;AACzC,CAAC,CAAC;AALW,QAAA,oBAAoB,wBAK/B;AAEK,MAAM,0BAA0B,GAAG,CAAC,WAAgB,EAA2C,EAAE;IACtG,MAAM,SAAS,GAAG,CAAC,WAAW,CAA6B,CAAC;IAC5D,OAAO,SAAS,CAAC,aAAa,KAAK,SAAS;WACvC,SAAS,CAAC,QAAQ,KAAK,SAAS,CAAC;AACxC,CAAC,CAAC;AAJW,QAAA,0BAA0B,8BAIrC;AAEF,gBAAgB;AAChB,cAAc;AACd,IAAY,kBAMX;AAND,WAAY,kBAAkB;IAC5B,0CAAoB,CAAA;IACpB,mCAAa,CAAA;IACb,mCAAa,CAAA;IACb,mCAAa,CAAA;IACb,sCAAgB,CAAA;AAClB,CAAC,EANW,kBAAkB,kCAAlB,kBAAkB,QAM7B;AAIY,QAAA,SAAS,GAAG;IACvB,GAAG,kBAAkB;CACtB,CAAC;AAEF,gBAAgB;AAChB,gBAAgB;AAChB,IAAY,oBAOX;AAPD,WAAY,oBAAoB;IAC9B,oCAAY,CAAA;IACZ,8CAAsB,CAAA;IACtB,uCAAe,CAAA;IACf,8CAAsB,CAAA;IACtB,kDAA0B,CAAA;IAC1B,kDAA0B,CAAA;AAC5B,CAAC,EAPW,oBAAoB,oCAApB,oBAAoB,QAO/B;AAIY,QAAA,WAAW,GAAG;IACzB,GAAG,oBAAoB;CACxB,CAAC;AAEF,cAAc;AACd,cAAc;AACd,kBAAkB;AAClB,IAAY,kBAOX;AAPD,WAAY,kBAAkB;IAC5B,kCAAY,CAAA;IACZ,4CAAsB,CAAA;IACtB,oCAAc,CAAA;IACd,4CAAsB,CAAA;IACtB,gDAA0B,CAAA;IAC1B,gDAA0B,CAAA;AAC5B,CAAC,EAPW,kBAAkB,kCAAlB,kBAAkB,QAO7B;AAKD,kBAAkB;AACL,QAAA,SAAS,GAAG;IACvB,GAAG,kBAAkB;CACtB,CAAC;AAEF,uBAAuB;AACvB,uBAAuB;AACvB,IAAY,2BAIX;AAJD,WAAY,2BAA2B;IACrC,mDAAoB,CAAA;IACpB,4CAAa,CAAA;IACb,4CAAa,CAAA;AACf,CAAC,EAJW,2BAA2B,2CAA3B,2BAA2B,QAItC;AAIY,QAAA,kBAAkB,GAAG;IAChC,GAAG,2BAA2B;CAC/B,CAAC;AAEF,uBAAuB;AACvB,kBAAkB;AAClB,IAAY,sBAGX;AAHD,WAAY,sBAAsB;IAChC,sCAAY,CAAA;IACZ,uCAAa,CAAA;AACf,CAAC,EAHW,sBAAsB,sCAAtB,sBAAsB,QAGjC;AAIY,QAAA,aAAa,GAAG;IAC3B,GAAG,sBAAsB;CAC1B,CAAC"}
1
+ {"version":3,"file":"domain-interface.js","sourceRoot":"","sources":["../../src/domain/domain-interface.ts"],"names":[],"mappings":";;;AAkGO,MAAM,oBAAoB,GAAG,CAAC,WAAgB,EAAqC,EAAE;IAC1F,MAAM,SAAS,GAAG,CAAC,WAAW,CAAuB,CAAC;IACtD,OAAO,SAAS,CAAC,SAAS,KAAK,SAAS;WACnC,SAAS,CAAC,KAAK,KAAK,SAAS;WAC7B,SAAS,CAAC,SAAS,KAAK,SAAS,CAAC;AACzC,CAAC,CAAC;AALW,QAAA,oBAAoB,wBAK/B;AAEK,MAAM,0BAA0B,GAAG,CAAC,WAAgB,EAA2C,EAAE;IACtG,MAAM,SAAS,GAAG,CAAC,WAAW,CAA6B,CAAC;IAC5D,OAAO,SAAS,CAAC,aAAa,KAAK,SAAS;WACvC,SAAS,CAAC,QAAQ,KAAK,SAAS,CAAC;AACxC,CAAC,CAAC;AAJW,QAAA,0BAA0B,8BAIrC;AAEF,gBAAgB;AAChB,cAAc;AACd,IAAY,kBAMX;AAND,WAAY,kBAAkB;IAC5B,0CAAoB,CAAA;IACpB,mCAAa,CAAA;IACb,mCAAa,CAAA;IACb,mCAAa,CAAA;IACb,sCAAgB,CAAA;AAClB,CAAC,EANW,kBAAkB,kCAAlB,kBAAkB,QAM7B;AAIY,QAAA,SAAS,GAAG;IACvB,GAAG,kBAAkB;CACtB,CAAC;AAEF,gBAAgB;AAChB,gBAAgB;AAChB,IAAY,oBAOX;AAPD,WAAY,oBAAoB;IAC9B,oCAAY,CAAA;IACZ,8CAAsB,CAAA;IACtB,uCAAe,CAAA;IACf,8CAAsB,CAAA;IACtB,kDAA0B,CAAA;IAC1B,kDAA0B,CAAA;AAC5B,CAAC,EAPW,oBAAoB,oCAApB,oBAAoB,QAO/B;AAIY,QAAA,WAAW,GAAG;IACzB,GAAG,oBAAoB;CACxB,CAAC;AAEF,cAAc;AACd,cAAc;AACd,kBAAkB;AAClB,IAAY,kBAOX;AAPD,WAAY,kBAAkB;IAC5B,kCAAY,CAAA;IACZ,4CAAsB,CAAA;IACtB,oCAAc,CAAA;IACd,4CAAsB,CAAA;IACtB,gDAA0B,CAAA;IAC1B,gDAA0B,CAAA;AAC5B,CAAC,EAPW,kBAAkB,kCAAlB,kBAAkB,QAO7B;AAKD,kBAAkB;AACL,QAAA,SAAS,GAAG;IACvB,GAAG,kBAAkB;CACtB,CAAC;AAEF,uBAAuB;AACvB,uBAAuB;AACvB,IAAY,2BAIX;AAJD,WAAY,2BAA2B;IACrC,mDAAoB,CAAA;IACpB,4CAAa,CAAA;IACb,4CAAa,CAAA;AACf,CAAC,EAJW,2BAA2B,2CAA3B,2BAA2B,QAItC;AAIY,QAAA,kBAAkB,GAAG;IAChC,GAAG,2BAA2B;CAC/B,CAAC;AAEF,uBAAuB;AACvB,kBAAkB;AAClB,gBAAgB;AAChB,IAAY,sBAGX;AAHD,WAAY,sBAAsB;IAChC,sCAAY,CAAA;IACZ,uCAAa,CAAA;AACf,CAAC,EAHW,sBAAsB,sCAAtB,sBAAsB,QAGjC;AAKD,gBAAgB;AACH,QAAA,aAAa,GAAG;IAC3B,GAAG,sBAAsB;CAC1B,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  export * from './api';
2
2
  export * from './client';
3
3
  export * from './domain';
4
+ export * from './logger';
4
5
  export * from './model';
5
6
  export * from './plugins';
6
7
  export * from './utils';
package/dist/index.js CHANGED
@@ -17,6 +17,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./api"), exports);
18
18
  __exportStar(require("./client"), exports);
19
19
  __exportStar(require("./domain"), exports);
20
+ __exportStar(require("./logger"), exports);
20
21
  __exportStar(require("./model"), exports);
21
22
  __exportStar(require("./plugins"), exports);
22
23
  __exportStar(require("./utils"), exports);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wCAAsB;AACtB,2CAAyB;AACzB,2CAAyB;AACzB,0CAAwB;AACxB,4CAA0B;AAC1B,0CAAwB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wCAAsB;AACtB,2CAAyB;AACzB,2CAAyB;AACzB,2CAAyB;AACzB,0CAAwB;AACxB,4CAA0B;AAC1B,0CAAwB"}
@@ -0,0 +1,2 @@
1
+ export type { LogMessage, Logger } from './logger-types';
2
+ export { CONSOLE_LOGGER, NOOP_LOGGER, resolveClientParameters, resolveLogger, } from './logger';
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolveLogger = exports.resolveClientParameters = exports.NOOP_LOGGER = exports.CONSOLE_LOGGER = void 0;
4
+ var logger_1 = require("./logger");
5
+ Object.defineProperty(exports, "CONSOLE_LOGGER", { enumerable: true, get: function () { return logger_1.CONSOLE_LOGGER; } });
6
+ Object.defineProperty(exports, "NOOP_LOGGER", { enumerable: true, get: function () { return logger_1.NOOP_LOGGER; } });
7
+ Object.defineProperty(exports, "resolveClientParameters", { enumerable: true, get: function () { return logger_1.resolveClientParameters; } });
8
+ Object.defineProperty(exports, "resolveLogger", { enumerable: true, get: function () { return logger_1.resolveLogger; } });
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/logger/index.ts"],"names":[],"mappings":";;;AACA,mCAKkB;AAJhB,wGAAA,cAAc,OAAA;AACd,qGAAA,WAAW,OAAA;AACX,iHAAA,uBAAuB,OAAA;AACvB,uGAAA,aAAa,OAAA"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * A log message as a string, or a function that returns one when the logger reads it.
3
+ *
4
+ * Pass a function to defer building the message; level-aware loggers can skip that work
5
+ * when the level is disabled.
6
+ */
7
+ export type LogMessage = string | (() => string);
8
+ /**
9
+ * Logger interface for SDK log output.
10
+ *
11
+ * Pass any object implementing `debug`, `info`, `warn`, and `error` via the `logger`
12
+ * option when initializing `SinchClient`. Messages use {@link LogMessage}.
13
+ */
14
+ export interface Logger {
15
+ /**
16
+ * On failed HTTP responses (non-success status), the SDK logs the API name, operation,
17
+ * status code, HTTP method, request URL, and response headers. Enable debug on your
18
+ * logger to troubleshoot authentication issues, expired tokens, and other API errors.
19
+ */
20
+ debug(message: LogMessage, ...meta: any[]): void;
21
+ /** Informational SDK messages, such as deprecation guidance for specific APIs. */
22
+ info(message: LogMessage, ...meta: any[]): void;
23
+ /**
24
+ * Deprecation notices and configuration warnings (for example conflicting credentials
25
+ * or deprecated region parameters).
26
+ */
27
+ warn(message: LogMessage, ...meta: any[]): void;
28
+ /** SDK-level errors surfaced during client initialization or configuration. */
29
+ error(message: LogMessage, ...meta: any[]): void;
30
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=logger-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger-types.js","sourceRoot":"","sources":["../../src/logger/logger-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,11 @@
1
+ import type { ResolvedSinchClientParameters, SinchClientParameters } from '../domain';
2
+ import type { Logger } from './logger-types';
3
+ export type { LogMessage, Logger } from './logger-types';
4
+ /** @internal */
5
+ export declare const CONSOLE_LOGGER: Logger;
6
+ /** @internal */
7
+ export declare const NOOP_LOGGER: Logger;
8
+ /** @internal */
9
+ export declare const resolveLogger: (logger?: Logger | null) => Logger;
10
+ /** @internal */
11
+ export declare const resolveClientParameters: (params: SinchClientParameters | ResolvedSinchClientParameters) => ResolvedSinchClientParameters;
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolveClientParameters = exports.resolveLogger = exports.NOOP_LOGGER = exports.CONSOLE_LOGGER = void 0;
4
+ const sinch_logger_1 = require("./sinch-logger");
5
+ const evaluateMessage = (message) => typeof message === 'function' ? message() : message;
6
+ /** @internal */
7
+ exports.CONSOLE_LOGGER = {
8
+ debug: (message, ...meta) => console.debug(evaluateMessage(message), ...meta),
9
+ info: (message, ...meta) => console.info(evaluateMessage(message), ...meta),
10
+ warn: (message, ...meta) => console.warn(evaluateMessage(message), ...meta),
11
+ error: (message, ...meta) => console.error(evaluateMessage(message), ...meta),
12
+ };
13
+ /** @internal */
14
+ exports.NOOP_LOGGER = {
15
+ debug: () => { },
16
+ info: () => { },
17
+ warn: () => { },
18
+ error: () => { },
19
+ };
20
+ const resolveBaseLogger = (logger) => {
21
+ if (logger === null) {
22
+ return exports.NOOP_LOGGER;
23
+ }
24
+ if (logger === undefined) {
25
+ return exports.CONSOLE_LOGGER;
26
+ }
27
+ return logger;
28
+ };
29
+ /** @internal */
30
+ const resolveLogger = (logger) => {
31
+ if (logger != null && (0, sinch_logger_1.isSinchLogger)(logger)) {
32
+ return logger;
33
+ }
34
+ return new sinch_logger_1.SinchLogger(resolveBaseLogger(logger));
35
+ };
36
+ exports.resolveLogger = resolveLogger;
37
+ /** @internal */
38
+ const resolveClientParameters = (params) => {
39
+ if (params.logger != null && (0, sinch_logger_1.isSinchLogger)(params.logger)) {
40
+ return params;
41
+ }
42
+ return {
43
+ ...params,
44
+ logger: (0, exports.resolveLogger)(params.logger),
45
+ };
46
+ };
47
+ exports.resolveClientParameters = resolveClientParameters;
48
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/logger/logger.ts"],"names":[],"mappings":";;;AAEA,iDAA4D;AAI5D,MAAM,eAAe,GAAG,CAAC,OAAmB,EAAU,EAAE,CACtD,OAAO,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;AAEtD,gBAAgB;AACH,QAAA,cAAc,GAAW;IACpC,KAAK,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,GAAG,IAAI,CAAC;IAC7E,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,GAAG,IAAI,CAAC;IAC3E,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,GAAG,IAAI,CAAC;IAC3E,KAAK,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,GAAG,IAAI,CAAC;CAC9E,CAAC;AAEF,gBAAgB;AACH,QAAA,WAAW,GAAW;IACjC,KAAK,EAAE,GAAG,EAAE,GAAE,CAAC;IACf,IAAI,EAAE,GAAG,EAAE,GAAE,CAAC;IACd,IAAI,EAAE,GAAG,EAAE,GAAE,CAAC;IACd,KAAK,EAAE,GAAG,EAAE,GAAE,CAAC;CAChB,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,MAAsB,EAAU,EAAE;IAC3D,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,OAAO,mBAAW,CAAC;IACrB,CAAC;IACD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,sBAAc,CAAC;IACxB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF,gBAAgB;AACT,MAAM,aAAa,GAAG,CAAC,MAAsB,EAAU,EAAE;IAC9D,IAAI,MAAM,IAAI,IAAI,IAAI,IAAA,4BAAa,EAAC,MAAM,CAAC,EAAE,CAAC;QAC5C,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,OAAO,IAAI,0BAAW,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC;AACpD,CAAC,CAAC;AALW,QAAA,aAAa,iBAKxB;AAEF,gBAAgB;AACT,MAAM,uBAAuB,GAAG,CACrC,MAA6D,EAC9B,EAAE;IACjC,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI,IAAI,IAAA,4BAAa,EAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1D,OAAO,MAAuC,CAAC;IACjD,CAAC;IACD,OAAO;QACL,GAAG,MAAM;QACT,MAAM,EAAE,IAAA,qBAAa,EAAC,MAAM,CAAC,MAAM,CAAC;KACrC,CAAC;AACJ,CAAC,CAAC;AAVW,QAAA,uBAAuB,2BAUlC"}
@@ -0,0 +1,14 @@
1
+ import type { Logger, LogMessage } from './logger-types';
2
+ /** @internal */
3
+ export declare const isSinchLogger: (logger: Logger) => boolean;
4
+ /** @internal */
5
+ export declare class SinchLogger implements Logger {
6
+ private baseLogger;
7
+ constructor(baseLogger: Logger);
8
+ private format;
9
+ private log;
10
+ debug(message: LogMessage, ...meta: any[]): void;
11
+ info(message: LogMessage, ...meta: any[]): void;
12
+ warn(message: LogMessage, ...meta: any[]): void;
13
+ error(message: LogMessage, ...meta: any[]): void;
14
+ }
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SinchLogger = exports.isSinchLogger = void 0;
4
+ const sinchLoggers = new WeakSet();
5
+ /** @internal */
6
+ const isSinchLogger = (logger) => sinchLoggers.has(logger);
7
+ exports.isSinchLogger = isSinchLogger;
8
+ /** @internal */
9
+ class SinchLogger {
10
+ constructor(baseLogger) {
11
+ this.baseLogger = baseLogger;
12
+ sinchLoggers.add(this);
13
+ }
14
+ format(level, message) {
15
+ return `[Sinch SDK][${level}] ${message}`;
16
+ }
17
+ log(level, method, message, ...meta) {
18
+ if (typeof message === 'function') {
19
+ this.baseLogger[method](() => this.format(level, message()), ...meta);
20
+ }
21
+ else {
22
+ this.baseLogger[method](this.format(level, message), ...meta);
23
+ }
24
+ }
25
+ debug(message, ...meta) {
26
+ this.log('Debug', 'debug', message, ...meta);
27
+ }
28
+ info(message, ...meta) {
29
+ this.log('Info', 'info', message, ...meta);
30
+ }
31
+ warn(message, ...meta) {
32
+ this.log('Warn', 'warn', message, ...meta);
33
+ }
34
+ error(message, ...meta) {
35
+ this.log('Error', 'error', message, ...meta);
36
+ }
37
+ }
38
+ exports.SinchLogger = SinchLogger;
39
+ //# sourceMappingURL=sinch-logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sinch-logger.js","sourceRoot":"","sources":["../../src/logger/sinch-logger.ts"],"names":[],"mappings":";;;AAEA,MAAM,YAAY,GAAG,IAAI,OAAO,EAAU,CAAC;AAE3C,gBAAgB;AACT,MAAM,aAAa,GAAG,CAAC,MAAc,EAAW,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AAAtE,QAAA,aAAa,iBAAyD;AAEnF,gBAAgB;AAChB,MAAa,WAAW;IACtB,YAAoB,UAAkB;QAAlB,eAAU,GAAV,UAAU,CAAQ;QACpC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC;IAEO,MAAM,CAAC,KAAa,EAAE,OAAe;QAC3C,OAAO,eAAe,KAAK,KAAK,OAAO,EAAE,CAAC;IAC5C,CAAC;IAEO,GAAG,CAAC,KAAa,EAAE,MAAoB,EAAE,OAAmB,EAAE,GAAG,IAAW;QAClF,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE,CAAC;YAClC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;QACxE,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;QAChE,CAAC;IACH,CAAC;IAED,KAAK,CAAC,OAAmB,EAAE,GAAG,IAAW;QACvC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IAC/C,CAAC;IACD,IAAI,CAAC,OAAmB,EAAE,GAAG,IAAW;QACtC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IAC7C,CAAC;IACD,IAAI,CAAC,OAAmB,EAAE,GAAG,IAAW;QACtC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IAC7C,CAAC;IACD,KAAK,CAAC,OAAmB,EAAE,GAAG,IAAW;QACvC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IAC/C,CAAC;CACF;AA7BD,kCA6BC"}
@@ -1,5 +1,6 @@
1
1
  import { PluginRunner } from '../core';
2
2
  import { RequestOptions, RequestPlugin } from '../core/request-plugin';
3
+ /** @internal */
3
4
  export declare class ApiTokenRequest implements RequestPlugin {
4
5
  private readonly apiToken;
5
6
  constructor(apiToken: string);
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ApiTokenRequest = void 0;
4
4
  const request_plugin_1 = require("../core/request-plugin");
5
+ /** @internal */
5
6
  class ApiTokenRequest {
6
7
  constructor(apiToken) {
7
8
  this.apiToken = apiToken;
@@ -1 +1 @@
1
- {"version":3,"file":"api-token.request.js","sourceRoot":"","sources":["../../../src/plugins/api-token/api-token.request.ts"],"names":[],"mappings":";;;AACA,2DAA0F;AAE1F,MAAa,eAAe;IAG1B,YAAY,QAAgB;QAC1B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,OAAO;QACL,OAAO,kCAAiB,CAAC,iBAAiB,CAAC;IAC7C,CAAC;IAEM,IAAI;QACT,OAAO;YACL,SAAS,EAAE,CAAC,IAAoB,EAAE,EAAE;gBAClC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,UAAU,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAChE,OAAO,IAAI,CAAC;YACd,CAAC;SACF,CAAC;IACJ,CAAC;CACF;AAnBD,0CAmBC"}
1
+ {"version":3,"file":"api-token.request.js","sourceRoot":"","sources":["../../../src/plugins/api-token/api-token.request.ts"],"names":[],"mappings":";;;AACA,2DAA0F;AAE1F,gBAAgB;AAChB,MAAa,eAAe;IAG1B,YAAY,QAAgB;QAC1B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,OAAO;QACL,OAAO,kCAAiB,CAAC,iBAAiB,CAAC;IAC7C,CAAC;IAEM,IAAI;QACT,OAAO;YACL,SAAS,EAAE,CAAC,IAAoB,EAAE,EAAE;gBAClC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,UAAU,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAChE,OAAO,IAAI,CAAC;YACd,CAAC;SACF,CAAC;IACJ,CAAC;CACF;AAnBD,0CAmBC"}
@@ -1,5 +1,6 @@
1
1
  import { PluginRunner } from '../core';
2
2
  import { RequestOptions, RequestPlugin } from '../core/request-plugin';
3
+ /** @internal */
3
4
  export declare class BasicAuthenticationRequest implements RequestPlugin {
4
5
  private readonly userName;
5
6
  private readonly password;
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BasicAuthenticationRequest = void 0;
4
4
  const request_plugin_1 = require("../core/request-plugin");
5
+ /** @internal */
5
6
  class BasicAuthenticationRequest {
6
7
  constructor(userName, password) {
7
8
  this.userName = userName;
@@ -1 +1 @@
1
- {"version":3,"file":"basic-authentication.request.js","sourceRoot":"","sources":["../../../src/plugins/basicAuthentication/basic-authentication.request.ts"],"names":[],"mappings":";;;AACA,2DAA0F;AAE1F,MAAa,0BAA0B;IAIrC,YAAY,QAAgB,EAAE,QAAgB;QAC5C,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,OAAO;QACL,OAAO,kCAAiB,CAAC,4BAA4B,CAAC;IACxD,CAAC;IAEM,IAAI;QACT,OAAO;YACL,SAAS,EAAE,CAAC,IAAoB,EAAE,EAAE;gBAClC,MAAM,SAAS,GACX,QAAQ;sBACR,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBACxE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;gBAChD,OAAO,IAAI,CAAC;YACd,CAAC;SACF,CAAC;IACJ,CAAC;CACF;AAxBD,gEAwBC"}
1
+ {"version":3,"file":"basic-authentication.request.js","sourceRoot":"","sources":["../../../src/plugins/basicAuthentication/basic-authentication.request.ts"],"names":[],"mappings":";;;AACA,2DAA0F;AAE1F,gBAAgB;AAChB,MAAa,0BAA0B;IAIrC,YAAY,QAAgB,EAAE,QAAgB;QAC5C,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,OAAO;QACL,OAAO,kCAAiB,CAAC,4BAA4B,CAAC;IACxD,CAAC;IAEM,IAAI;QACT,OAAO;YACL,SAAS,EAAE,CAAC,IAAoB,EAAE,EAAE;gBAClC,MAAM,SAAS,GACX,QAAQ;sBACR,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBACxE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;gBAChD,OAAO,IAAI,CAAC;YACd,CAAC;SACF,CAAC;IACJ,CAAC;CACF;AAxBD,gEAwBC"}
@@ -1,6 +1,7 @@
1
1
  import { Plugin, PluginRunner } from './plugin';
2
2
  import { Headers, RequestInit } from 'node-fetch';
3
3
  import FormData = require('form-data');
4
+ import { WithLogger } from '../../domain';
4
5
  export type RequestBody = string | FormData;
5
6
  export declare enum RequestPluginEnum {
6
7
  ADDITIONAL_HEADER_REQUEST = "AdditionalHeadersRequest",
@@ -11,7 +12,7 @@ export declare enum RequestPluginEnum {
11
12
  VERSION_REQUEST = "VersionRequest",
12
13
  X_TIMESTAMP_REQUEST = "XTimestampRequest"
13
14
  }
14
- export interface RequestOptions extends RequestInit {
15
+ export interface RequestOptions extends RequestInit, WithLogger {
15
16
  /** Query Parameters */
16
17
  queryParams?: {
17
18
  [key: string]: string;
@@ -1 +1 @@
1
- {"version":3,"file":"request-plugin.js","sourceRoot":"","sources":["../../../src/plugins/core/request-plugin.ts"],"names":[],"mappings":";;;AAMA,IAAY,iBAQX;AARD,WAAY,iBAAiB;IAC3B,2EAAsD,CAAA;IACtD,0DAAqC,CAAA;IACrC,gFAA2D,CAAA;IAC3D,gEAA2C,CAAA;IAC3C,uDAAkC,CAAA;IAClC,uDAAkC,CAAA;IAClC,8DAAyC,CAAA;AAC3C,CAAC,EARW,iBAAiB,iCAAjB,iBAAiB,QAQ5B"}
1
+ {"version":3,"file":"request-plugin.js","sourceRoot":"","sources":["../../../src/plugins/core/request-plugin.ts"],"names":[],"mappings":";;;AAOA,IAAY,iBAQX;AARD,WAAY,iBAAiB;IAC3B,2EAAsD,CAAA;IACtD,0DAAqC,CAAA;IACrC,gFAA2D,CAAA;IAC3D,gEAA2C,CAAA;IAC3C,uDAAkC,CAAA;IAClC,uDAAkC,CAAA;IAClC,8DAAyC,CAAA;AAC3C,CAAC,EARW,iBAAiB,iCAAjB,iBAAiB,QAQ5B"}
@@ -3,13 +3,14 @@ import { ResponsePlugin, ResponsePluginContext } from '../core/response-plugin';
3
3
  /**
4
4
  * Plugin to fire an exception on wrong response / data
5
5
  */
6
+ /** @internal */
6
7
  export declare class ExceptionResponse<V extends Record<string, any> | undefined = Record<string, any>> implements ResponsePlugin<V | Record<string, unknown>, V> {
7
8
  private callback?;
8
9
  /**
9
- * Initialize an instance of the class, with an optional callback function for exception handling.
10
- *
11
- * @param {Function} [callback] - A function called in case of an exception. If provided, this function is responsible for throwing the exception or not.
12
- */
10
+ * Initialize an instance of the class, with an optional callback function for exception handling.
11
+ *
12
+ * @param {Function} [callback] - A function called in case of an exception. If provided, this function is responsible for throwing the exception or not.
13
+ */
13
14
  constructor(callback?: ((res: V, error: Error | undefined) => V) | undefined);
14
15
  load(context: ResponsePluginContext): PluginRunner<V | Record<string, unknown>, V>;
15
16
  }
@@ -5,12 +5,13 @@ const api_errors_1 = require("../../api/api-errors");
5
5
  /**
6
6
  * Plugin to fire an exception on wrong response / data
7
7
  */
8
+ /** @internal */
8
9
  class ExceptionResponse {
9
10
  /**
10
- * Initialize an instance of the class, with an optional callback function for exception handling.
11
- *
12
- * @param {Function} [callback] - A function called in case of an exception. If provided, this function is responsible for throwing the exception or not.
13
- */
11
+ * Initialize an instance of the class, with an optional callback function for exception handling.
12
+ *
13
+ * @param {Function} [callback] - A function called in case of an exception. If provided, this function is responsible for throwing the exception or not.
14
+ */
14
15
  constructor(callback) {
15
16
  this.callback = callback;
16
17
  }
@@ -30,7 +31,11 @@ class ExceptionResponse {
30
31
  error = new api_errors_1.EmptyResponseError('Fail to Fetch', errorContext);
31
32
  }
32
33
  else if (!context.response.ok) {
33
- error = new api_errors_1.RequestFailedError(context.response.statusText, context.response.status, errorContext, res);
34
+ const headers = {};
35
+ context.response.headers.forEach((value, key) => {
36
+ headers[key.toLowerCase()] = value;
37
+ });
38
+ error = new api_errors_1.RequestFailedError(context.response.statusText, context.response.status, errorContext, res, headers);
34
39
  }
35
40
  else if (!res) {
36
41
  if (context.response.status !== 204
@@ -1 +1 @@
1
- {"version":3,"file":"exception.response.js","sourceRoot":"","sources":["../../../src/plugins/exception/exception.response.ts"],"names":[],"mappings":";;;AAAA,qDAA8E;AAI9E;;GAEG;AACH,MAAa,iBAAiB;IAI9B;;;;OAIG;IACD,YAAoB,QAAkD;QAAlD,aAAQ,GAAR,QAAQ,CAA0C;IAAG,CAAC;IAEnE,IAAI,CACT,OAA8B;QAE9B,OAAO;YACL,SAAS,EAAE,CAAC,GAAM,EAAE,EAAE;gBACpB,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;oBACtB,OAAO,GAAG,CAAC;gBACb,CAAC;gBAED,MAAM,YAAY,GAAG;oBACnB,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,WAAW,EAAE,OAAO,CAAC,WAAW;oBAChC,GAAG,EAAE,OAAO,CAAC,GAAG;iBACjB,CAAC;gBACF,IAAI,KAAwB,CAAC;gBAE7B,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;oBACtB,KAAK,GAAG,IAAI,+BAAkB,CAC5B,eAAe,EACf,YAAY,CACb,CAAC;gBACJ,CAAC;qBAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;oBAChC,KAAK,GAAG,IAAI,+BAAkB,CAC5B,OAAO,CAAC,QAAQ,CAAC,UAAU,EAC3B,OAAO,CAAC,QAAQ,CAAC,MAAM,EACvB,YAAY,EACZ,GAAG,CACJ,CAAC;gBACJ,CAAC;qBAAM,IAAI,CAAC,GAAG,EAAE,CAAC;oBAChB,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,KAAK,GAAG;2BAC9B,OAAO,CAAC,QAAQ,CAAC,MAAM,KAAK,GAAG;2BAC/B,OAAO,CAAC,QAAQ,CAAC,MAAM,KAAK,GAAG,EAClC,CAAC;wBACD,KAAK,GAAG,IAAI,+BAAkB,CAC5B,OAAO,CAAC,QAAQ,CAAC,UAAU,EAC3B,YAAY,CACb,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAED,IAAI,KAAK,EAAE,CAAC;oBACV,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;wBAClB,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;oBACnC,CAAC;yBAAM,CAAC;wBACN,MAAM,KAAK,CAAC;oBACd,CAAC;gBACH,CAAC;gBACD,OAAO,GAAG,CAAC;YACb,CAAC;SACF,CAAC;IACJ,CAAC;CACF;AA9DD,8CA8DC"}
1
+ {"version":3,"file":"exception.response.js","sourceRoot":"","sources":["../../../src/plugins/exception/exception.response.ts"],"names":[],"mappings":";;;AAAA,qDAA8E;AAI9E;;GAEG;AACH,gBAAgB;AAChB,MAAa,iBAAiB;IAI5B;;;;KAIC;IACD,YACU,QAAkD;QAAlD,aAAQ,GAAR,QAAQ,CAA0C;IACzD,CAAC;IAEG,IAAI,CACT,OAA8B;QAE9B,OAAO;YACL,SAAS,EAAE,CAAC,GAAM,EAAE,EAAE;gBACpB,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;oBACtB,OAAO,GAAG,CAAC;gBACb,CAAC;gBAED,MAAM,YAAY,GAAG;oBACnB,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,WAAW,EAAE,OAAO,CAAC,WAAW;oBAChC,GAAG,EAAE,OAAO,CAAC,GAAG;iBACjB,CAAC;gBACF,IAAI,KAAwB,CAAC;gBAE7B,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;oBACtB,KAAK,GAAG,IAAI,+BAAkB,CAC5B,eAAe,EACf,YAAY,CACb,CAAC;gBACJ,CAAC;qBAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;oBAChC,MAAM,OAAO,GAA8B,EAAE,CAAC;oBAC9C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;wBAC9C,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,GAAG,KAAK,CAAC;oBACrC,CAAC,CAAC,CAAC;oBACH,KAAK,GAAG,IAAI,+BAAkB,CAC5B,OAAO,CAAC,QAAQ,CAAC,UAAU,EAC3B,OAAO,CAAC,QAAQ,CAAC,MAAM,EACvB,YAAY,EACZ,GAAG,EACH,OAAO,CACR,CAAC;gBACJ,CAAC;qBAAM,IAAI,CAAC,GAAG,EAAE,CAAC;oBAChB,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,KAAK,GAAG;2BAC9B,OAAO,CAAC,QAAQ,CAAC,MAAM,KAAK,GAAG;2BAC/B,OAAO,CAAC,QAAQ,CAAC,MAAM,KAAK,GAAG,EAClC,CAAC;wBACD,KAAK,GAAG,IAAI,+BAAkB,CAC5B,OAAO,CAAC,QAAQ,CAAC,UAAU,EAC3B,YAAY,CACb,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAED,IAAI,KAAK,EAAE,CAAC;oBACV,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;wBAClB,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;oBACnC,CAAC;yBAAM,CAAC;wBACN,MAAM,KAAK,CAAC;oBACd,CAAC;gBACH,CAAC;gBACD,OAAO,GAAG,CAAC;YACb,CAAC;SACF,CAAC;IACJ,CAAC;CACF;AArED,8CAqEC"}
@@ -1,14 +1,21 @@
1
1
  import { PluginRunner } from '../core';
2
2
  import { RequestOptions, RequestPlugin } from '../core/request-plugin';
3
+ import { Logger } from '../../logger';
4
+ /** @internal */
3
5
  export declare class Oauth2TokenRequest implements RequestPlugin {
4
6
  private readonly apiClient;
5
7
  private token;
6
8
  /** Shared promise for concurrent token refresh */
7
9
  private pendingTokenRefresh;
8
10
  getName(): string;
9
- constructor(clientId: string, clientSecret: string, authenticationUrl?: string);
11
+ constructor(clientId: string, clientSecret: string, authenticationUrl?: string, logger?: Logger | null);
10
12
  private getOAuth2Token;
11
13
  private fetchNewToken;
14
+ /**
15
+ * Call the auth endpoint, retrying only on 429 with full-jitter backoff.
16
+ * Other failures (network, 5xx, malformed response) propagate immediately
17
+ */
18
+ private callAuthWithRateLimitRetry;
12
19
  private buildAuthorizationHeader;
13
20
  private isTokenValid;
14
21
  load(): PluginRunner<RequestOptions, RequestOptions>;
@@ -7,12 +7,28 @@ const oauth2_api_1 = require("./oauth2-api");
7
7
  const basicAuthentication_1 = require("../basicAuthentication");
8
8
  const api_fetch_client_1 = require("../../client/api-fetch-client");
9
9
  const domain_1 = require("../../domain");
10
+ const api_errors_1 = require("../../api/api-errors");
10
11
  const EXPIRY_SAFETY_MARGIN_SEC = 60;
12
+ /**
13
+ * Token-fetch 429 backoff. ZAP is a token bucket: capacity 30, refill 10/s,
14
+ * no `Retry-After` header. With N SinchClient instances cold-starting
15
+ * concurrently, the first 30 succeed and the rest get 429s; this backoff
16
+ * absorbs that overflow silently.
17
+ *
18
+ * Full-jitter exponential backoff: each retry waits a uniform sample from
19
+ * [0, ceiling], where ceiling grows by RATE_LIMIT_RETRY_GROWTH each attempt.
20
+ * Jitter is necessary and essential: without it, multiple workers' retries
21
+ * collide at the same wall-clock instant and re-trigger the rate limit.
22
+ */
23
+ const MAX_RATE_LIMIT_RETRIES = 3;
24
+ const RATE_LIMIT_RETRY_BASE_MS = 1_000;
25
+ const RATE_LIMIT_RETRY_GROWTH = 4;
26
+ /** @internal */
11
27
  class Oauth2TokenRequest {
12
28
  getName() {
13
29
  return request_plugin_1.RequestPluginEnum.OAUTH2_TOKEN_REQUEST;
14
30
  }
15
- constructor(clientId, clientSecret, authenticationUrl) {
31
+ constructor(clientId, clientSecret, authenticationUrl, logger) {
16
32
  /** Shared promise for concurrent token refresh */
17
33
  this.pendingTokenRefresh = null;
18
34
  const basicAuthenticationPlugin = new basicAuthentication_1.BasicAuthenticationRequest(clientId, clientSecret);
@@ -22,6 +38,7 @@ class Oauth2TokenRequest {
22
38
  this.apiClient = new api_fetch_client_1.ApiFetchClient({
23
39
  hostname: authenticationUrl,
24
40
  requestPlugins: [basicAuthenticationPlugin],
41
+ logger,
25
42
  });
26
43
  }
27
44
  async getOAuth2Token() {
@@ -43,15 +60,7 @@ class Oauth2TokenRequest {
43
60
  }
44
61
  async fetchNewToken() {
45
62
  const oauth2Api = new oauth2_api_1.OAuth2Api(this.apiClient);
46
- let response;
47
- try {
48
- response = await oauth2Api.postAccessToken();
49
- }
50
- catch (e) {
51
- // Propagate the auth failure to the caller.
52
- this.token = undefined;
53
- throw e;
54
- }
63
+ const response = await this.callAuthWithRateLimitRetry(oauth2Api);
55
64
  if (!response.access_token) {
56
65
  this.token = undefined;
57
66
  throw new Error('The authentication server did not return an access_token. Response keys: ['
@@ -64,6 +73,25 @@ class Oauth2TokenRequest {
64
73
  };
65
74
  return this.buildAuthorizationHeader();
66
75
  }
76
+ /**
77
+ * Call the auth endpoint, retrying only on 429 with full-jitter backoff.
78
+ * Other failures (network, 5xx, malformed response) propagate immediately
79
+ */
80
+ async callAuthWithRateLimitRetry(oauth2Api) {
81
+ for (let attempt = 0;; attempt++) {
82
+ try {
83
+ return await oauth2Api.postAccessToken();
84
+ }
85
+ catch (e) {
86
+ if (attempt < MAX_RATE_LIMIT_RETRIES && isRateLimit(e)) {
87
+ await sleep(computeRateLimitBackoffMs(e, attempt));
88
+ continue;
89
+ }
90
+ this.token = undefined;
91
+ throw e;
92
+ }
93
+ }
94
+ }
67
95
  buildAuthorizationHeader() {
68
96
  return { Authorization: `Bearer ${this.token.value}` };
69
97
  }
@@ -106,6 +134,39 @@ var TokenStatus;
106
134
  TokenStatus[TokenStatus["INVALID"] = 0] = "INVALID";
107
135
  TokenStatus[TokenStatus["VALID"] = 1] = "VALID";
108
136
  })(TokenStatus || (TokenStatus = {}));
137
+ const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
138
+ const isRateLimit = (error) => error instanceof api_errors_1.RequestFailedError && error.statusCode === 429;
139
+ /**
140
+ * Backoff for a rate-limit retry. Honors `Retry-After` if the server sent one
141
+ * (RFC 7231: delta-seconds or HTTP-date); otherwise full-jitter exponential.
142
+ * Sinch prod doesn't send Retry-After today, so the exponential path is what
143
+ * actually runs there — but the Retry-After path works for any third-party OAuth2
144
+ * endpoint the SDK is pointed at.
145
+ */
146
+ const computeRateLimitBackoffMs = (error, attempt) => {
147
+ const fromHeader = parseRetryAfterMs(error.responseHeaders?.['retry-after']);
148
+ if (fromHeader !== undefined) {
149
+ // Add a sliver of jitter on top so concurrent SinchClient instances don't all
150
+ // wake at the same millisecond and re-collide at the auth gateway.
151
+ return fromHeader + Math.floor(Math.random() * 250);
152
+ }
153
+ const ceilingMs = RATE_LIMIT_RETRY_BASE_MS * Math.pow(RATE_LIMIT_RETRY_GROWTH, attempt);
154
+ return Math.floor(Math.random() * ceilingMs);
155
+ };
156
+ const parseRetryAfterMs = (value) => {
157
+ if (!value) {
158
+ return undefined;
159
+ }
160
+ const asNumber = Number(value);
161
+ if (!Number.isNaN(asNumber) && asNumber >= 0) {
162
+ return Math.floor(asNumber * 1000);
163
+ }
164
+ const asDate = Date.parse(value);
165
+ if (!Number.isNaN(asDate)) {
166
+ return Math.max(0, asDate - Date.now());
167
+ }
168
+ return undefined;
169
+ };
109
170
  /**
110
171
  * Decode the `exp` claim from a JWT without verifying the signature.
111
172
  */
@@ -1 +1 @@
1
- {"version":3,"file":"oauth2-token.request.js","sourceRoot":"","sources":["../../../src/plugins/oauth2/oauth2-token.request.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oauth2-token.request.js","sourceRoot":"","sources":["../../../src/plugins/oauth2/oauth2-token.request.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { PluginRunner } from '../core';
2
2
  import { RequestOptions, RequestPlugin } from '../core/request-plugin';
3
+ /** @internal */
3
4
  export declare class SigningRequest implements RequestPlugin {
4
5
  private readonly applicationId;
5
6
  private readonly applicationSecret;
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SigningRequest = void 0;
4
4
  const request_plugin_1 = require("../core/request-plugin");
5
5
  const authorization_helper_1 = require("../../utils/authorization.helper");
6
+ /** @internal */
6
7
  class SigningRequest {
7
8
  constructor(applicationId, applicationSecret) {
8
9
  this.applicationId = applicationId;
@@ -1 +1 @@
1
- {"version":3,"file":"signing.request.js","sourceRoot":"","sources":["../../../src/plugins/signing/signing.request.ts"],"names":[],"mappings":";;;AACA,2DAA0F;AAC1F,2EAA+E;AAE/E,MAAa,cAAc;IAIzB,YAAY,aAAqB,EAAE,iBAAyB;QAC1D,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IAC7C,CAAC;IAED,OAAO;QACL,OAAO,kCAAiB,CAAC,eAAe,CAAC;IAC3C,CAAC;IAEM,IAAI;QACT,OAAO;YACL,SAAS,EAAE,CAAC,IAAoB,EAAE,EAAE;gBAClC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;oBACjB,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;gBACtD,CAAC;gBACD,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;oBACf,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;gBACnD,CAAC;gBACD,MAAM,mBAAmB,GAAG,IAAA,kDAA2B,EACrD,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,EACzB,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAE,EACjC,eAAe,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,EAChD,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,iBAAiB,CACvB,CAAC;gBACF,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,mBAAmB,CAAC,CAAC;gBAC1D,OAAO,IAAI,CAAC;YACd,CAAC;SACF,CAAC;IACJ,CAAC;CACF;AApCD,wCAoCC"}
1
+ {"version":3,"file":"signing.request.js","sourceRoot":"","sources":["../../../src/plugins/signing/signing.request.ts"],"names":[],"mappings":";;;AACA,2DAA0F;AAC1F,2EAA+E;AAE/E,gBAAgB;AAChB,MAAa,cAAc;IAIzB,YAAY,aAAqB,EAAE,iBAAyB;QAC1D,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IAC7C,CAAC;IAED,OAAO;QACL,OAAO,kCAAiB,CAAC,eAAe,CAAC;IAC3C,CAAC;IAEM,IAAI;QACT,OAAO;YACL,SAAS,EAAE,CAAC,IAAoB,EAAE,EAAE;gBAClC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;oBACjB,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;gBACtD,CAAC;gBACD,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;oBACf,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;gBACnD,CAAC;gBACD,MAAM,mBAAmB,GAAG,IAAA,kDAA2B,EACrD,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,EACzB,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAE,EACjC,eAAe,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,EAChD,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,iBAAiB,CACvB,CAAC;gBACF,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,mBAAmB,CAAC,CAAC;gBAC1D,OAAO,IAAI,CAAC;YACd,CAAC;SACF,CAAC;IACJ,CAAC;CACF;AApCD,wCAoCC"}
@@ -1,5 +1,6 @@
1
1
  import { PluginRunner } from '../core';
2
2
  import { RequestOptions, RequestPlugin } from '../core/request-plugin';
3
+ /** @internal */
3
4
  export declare class VersionRequest implements RequestPlugin {
4
5
  getName(): string;
5
6
  load(): PluginRunner<RequestOptions, RequestOptions>;
@@ -37,6 +37,7 @@ exports.VersionRequest = void 0;
37
37
  const request_plugin_1 = require("../core/request-plugin");
38
38
  const process = __importStar(require("process"));
39
39
  const getVersion_1 = require("../../getVersion");
40
+ /** @internal */
40
41
  class VersionRequest {
41
42
  getName() {
42
43
  return request_plugin_1.RequestPluginEnum.VERSION_REQUEST;