@sinch/sdk-client 0.0.1 → 0.0.3

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 (32) hide show
  1. package/README.md +3 -2
  2. package/dist/api/api-client.d.ts +21 -2
  3. package/dist/api/api-client.js +37 -11
  4. package/dist/api/api-client.js.map +1 -1
  5. package/dist/api/api-errors.d.ts +2 -2
  6. package/dist/api/api-errors.js +2 -2
  7. package/dist/api/api-errors.js.map +1 -1
  8. package/dist/api/api-interface.d.ts +7 -0
  9. package/dist/api/callback-webhooks-interface.d.ts +6 -0
  10. package/dist/api/callback-webhooks-interface.js +3 -0
  11. package/dist/api/callback-webhooks-interface.js.map +1 -0
  12. package/dist/api/index.d.ts +1 -0
  13. package/dist/api/index.js +1 -0
  14. package/dist/api/index.js.map +1 -1
  15. package/dist/client/api-client-helpers.d.ts +6 -0
  16. package/dist/client/api-client-helpers.js +38 -1
  17. package/dist/client/api-client-helpers.js.map +1 -1
  18. package/dist/client/api-client-pagination-helper.d.ts +1 -1
  19. package/dist/client/api-client-pagination-helper.js +12 -4
  20. package/dist/client/api-client-pagination-helper.js.map +1 -1
  21. package/dist/client/api-fetch-client.d.ts +7 -1
  22. package/dist/client/api-fetch-client.js +91 -9
  23. package/dist/client/api-fetch-client.js.map +1 -1
  24. package/dist/domain/domain-interface.d.ts +5 -0
  25. package/dist/domain/domain-interface.js +7 -1
  26. package/dist/domain/domain-interface.js.map +1 -1
  27. package/dist/plugins/timezone/timezone.response.js +18 -3
  28. package/dist/plugins/timezone/timezone.response.js.map +1 -1
  29. package/dist/utils/authorization.helper.d.ts +41 -2
  30. package/dist/utils/authorization.helper.js +123 -21
  31. package/dist/utils/authorization.helper.js.map +1 -1
  32. package/package.json +1 -1
package/README.md CHANGED
@@ -7,8 +7,8 @@ This package contains the HTTP client used by the Sinch SDK client. It uses the
7
7
  - request plugins will modify the request: for the moment, they are all about adding some headers (for authentication, for tracking the SDK usage).
8
8
  - response plugins will modify the response, e.g.: response content is checked and transformed into an exception if the content is empty.
9
9
 
10
- <span style="color:red; font-weight:bold">Warning:</span>
11
- **This SDK is currently available for preview purposes only. It should not be used in production environments.**
10
+ > <span style="color:red; font-weight:bold">Warning:</span>
11
+ > **This SDK is currently available to selected developers for preview use only. It is being provided for the purpose of collecting feedback, and should not be used in production environments.**
12
12
 
13
13
  ## Architecture
14
14
  TODO: schema
@@ -104,6 +104,7 @@ const myResponse = await myApi.myApiOperation();
104
104
  | Plugin name | Description |
105
105
  |-------------|-----------------------------------------------------------------------------------------------------------------------------------------------|
106
106
  | exception | Check the response content and converts it into an error if empty or if the status is not `ok`.<br>**Added by default to the ApiFetchClient** |
107
+ | timezone | Patch some response properties which are identified as returned without a timezone by the server |
107
108
 
108
109
  ## Contact
109
110
  Developer Experience team: [devexp@sinch.com](mailto:devexp@sinch.com)
@@ -1,9 +1,12 @@
1
1
  import { RequestBody, RequestOptions } from '../plugins/core/request-plugin';
2
2
  import { ApiClientOptions } from './api-client-options';
3
+ import FormData = require('form-data');
4
+ import { FileBuffer } from './api-interface';
3
5
  export declare enum PaginationEnum {
4
6
  NONE = 0,
5
7
  TOKEN = 1,
6
- PAGE = 2
8
+ PAGE = 2,
9
+ PAGE3 = 3
7
10
  }
8
11
  export interface ApiListPromise<T> extends Promise<PageResult<T>>, AsyncIterableIterator<T> {
9
12
  }
@@ -103,11 +106,27 @@ export declare class ApiClient {
103
106
  */
104
107
  processCall<T>(_httpCallParameters: ApiCallParameters): Promise<T>;
105
108
  /**
106
- * Process HTTP call
109
+ * Process HTTP call with Pagination
107
110
  * @abstract
108
111
  * @template T
109
112
  * @param {ApiCallParametersWithPagination} _httpCallParameters - Parameters for the HTTP call.
110
113
  * @return {Promise<T>} A promise that resolves to the result of the HTTP call.
111
114
  */
112
115
  processCallWithPagination<T>(_httpCallParameters: ApiCallParametersWithPagination): Promise<PageResult<T>>;
116
+ /**
117
+ * Process HTTP call to download a PDF file
118
+ * @abstract
119
+ * @template T
120
+ * @param {ApiCallParameters} _httpCallParameters - Parameters for the HTTP call.
121
+ * @return {Promise<T>} A promise that resolves to the result of the HTTP call.
122
+ */
123
+ processFileCall(_httpCallParameters: ApiCallParameters): Promise<FileBuffer>;
124
+ /**
125
+ * Receives an object containing key/value pairs
126
+ * Encodes this object to match application/x-www-urlencoded or multipart/form-data
127
+ * @abstract
128
+ * @param {any} _data
129
+ * @param {string} _type
130
+ */
131
+ processFormData(_data: any, _type: string): FormData | string;
113
132
  }
@@ -7,6 +7,7 @@ var PaginationEnum;
7
7
  PaginationEnum[PaginationEnum["NONE"] = 0] = "NONE";
8
8
  PaginationEnum[PaginationEnum["TOKEN"] = 1] = "TOKEN";
9
9
  PaginationEnum[PaginationEnum["PAGE"] = 2] = "PAGE";
10
+ PaginationEnum[PaginationEnum["PAGE3"] = 3] = "PAGE3";
10
11
  })(PaginationEnum || (exports.PaginationEnum = PaginationEnum = {}));
11
12
  /**
12
13
  * API Client used to call the server
@@ -21,15 +22,18 @@ class ApiClient {
21
22
  * @return {string} The query parameter formatted as required by the API
22
23
  */
23
24
  this.formatQueryParameter = (name, queryParameters = {}, repeatParamArray) => {
24
- const defaultFormat = `${name}=${queryParameters[name]}`;
25
- if (repeatParamArray) {
26
- const parameterValue = queryParameters[name];
27
- if (parameterValue && parameterValue.indexOf(';') > 0) {
28
- const parameterValues = parameterValue.split(';');
29
- return parameterValues.map((value) => `${name}=${value}`).join('&');
25
+ const parameterValue = JSON.parse(queryParameters[name] || '');
26
+ if (Array.isArray(parameterValue)) {
27
+ if (repeatParamArray) {
28
+ return parameterValue.map((value) => `${name}=${value}`).join('&');
30
29
  }
30
+ else {
31
+ return `${name}=${parameterValue.join(',')}`;
32
+ }
33
+ }
34
+ else {
35
+ return `${name}=${parameterValue}`;
31
36
  }
32
- return defaultFormat;
33
37
  };
34
38
  this.apiClientOptions = options;
35
39
  }
@@ -45,9 +49,9 @@ class ApiClient {
45
49
  .filter((name) => typeof data[name] !== 'undefined' && data[name] !== null)
46
50
  .reduce((acc, name) => {
47
51
  const prop = data[name];
48
- acc[name] = typeof prop.toJSON === 'function'
49
- ? prop.toJSON()
50
- : Array.isArray(prop) ? prop.join(';') : prop.toString();
52
+ acc[name] = typeof prop.toJSON === 'object'
53
+ ? JSON.stringify(prop.toJSON())
54
+ : JSON.stringify(prop);
51
55
  return acc;
52
56
  }, {});
53
57
  }
@@ -108,7 +112,7 @@ class ApiClient {
108
112
  throw new Error('Abstract method must be implemented');
109
113
  }
110
114
  /**
111
- * Process HTTP call
115
+ * Process HTTP call with Pagination
112
116
  * @abstract
113
117
  * @template T
114
118
  * @param {ApiCallParametersWithPagination} _httpCallParameters - Parameters for the HTTP call.
@@ -118,6 +122,28 @@ class ApiClient {
118
122
  processCallWithPagination(_httpCallParameters) {
119
123
  throw new Error('Abstract method must be implemented');
120
124
  }
125
+ /**
126
+ * Process HTTP call to download a PDF file
127
+ * @abstract
128
+ * @template T
129
+ * @param {ApiCallParameters} _httpCallParameters - Parameters for the HTTP call.
130
+ * @return {Promise<T>} A promise that resolves to the result of the HTTP call.
131
+ */
132
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
133
+ processFileCall(_httpCallParameters) {
134
+ throw new Error('Abstract method must be implemented');
135
+ }
136
+ /**
137
+ * Receives an object containing key/value pairs
138
+ * Encodes this object to match application/x-www-urlencoded or multipart/form-data
139
+ * @abstract
140
+ * @param {any} _data
141
+ * @param {string} _type
142
+ */
143
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
144
+ processFormData(_data, _type) {
145
+ throw new Error('Abstract method must be implemented');
146
+ }
121
147
  }
122
148
  exports.ApiClient = ApiClient;
123
149
  // ----- INTERNAL ------ \\
@@ -1 +1 @@
1
- {"version":3,"file":"api-client.js","sourceRoot":"","sources":["../../src/api/api-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api-client.js","sourceRoot":"","sources":["../../src/api/api-client.ts"],"names":[],"mappings":"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"}
@@ -29,7 +29,7 @@ export declare class RequestFailedError<T> extends GenericError {
29
29
  /**
30
30
  * Data decoded from the response body
31
31
  */
32
- data?: T;
32
+ data?: string;
33
33
  constructor(message: string, statusCode: number, errorContext: ErrorContext, data?: T);
34
34
  }
35
35
  /**
@@ -39,7 +39,7 @@ export declare class EmptyResponseError<T> extends GenericError {
39
39
  /**
40
40
  * Data decoded from the response body
41
41
  */
42
- data?: T;
42
+ data?: string;
43
43
  constructor(message: string, errorContext: ErrorContext, data?: T);
44
44
  }
45
45
  /**
@@ -25,7 +25,7 @@ class RequestFailedError extends GenericError {
25
25
  constructor(message, statusCode, errorContext, data) {
26
26
  super(`[status: ${statusCode}] ${message}`, errorContext);
27
27
  this.statusCode = statusCode;
28
- this.data = data;
28
+ this.data = JSON.stringify(data, null, 2);
29
29
  }
30
30
  }
31
31
  exports.RequestFailedError = RequestFailedError;
@@ -35,7 +35,7 @@ exports.RequestFailedError = RequestFailedError;
35
35
  class EmptyResponseError extends GenericError {
36
36
  constructor(message, errorContext, data) {
37
37
  super(`[Empty response] ${message}`, errorContext);
38
- this.data = data;
38
+ this.data = JSON.stringify(data, null, 2);
39
39
  }
40
40
  }
41
41
  exports.EmptyResponseError = EmptyResponseError;
@@ -1 +1 @@
1
- {"version":3,"file":"api-errors.js","sourceRoot":"","sources":["../../src/api/api-errors.ts"],"names":[],"mappings":";;;AAcA;;GAEG;AACH,MAAa,YAAa,SAAQ,KAAK;IACrC,YAAY,OAAe,EAAE,YAA0B;QACrD,MAAM,OAAO,GAAG,YAAY,CAAC,SAAS,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QACzD,MAAM,MAAM,GAAG,YAAY,CAAC,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAC3D,KAAK,CACH,mBAAmB,YAAY,CAAC,OAAO,IAAI,SAAS;wBAClC,YAAY,CAAC,WAAW,IAAI,SAAS;oBACzC,OAAO,cAAc,MAAM,sBAAsB,OAAO,EAAE,CACzE,CAAC;IACJ,CAAC;IAEO,MAAM,CAAC,SAAS,CAAC,GAA8B;QACrD,MAAM,UAAU,GAAG,cAAc,CAAC;QAClC,OAAO,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACvD,CAAC;CAEF;AAhBD,oCAgBC;AAED;;GAEG;AACH,MAAa,kBAAsB,SAAQ,YAAY;IAWrD,YACE,OAAe,EACf,UAAkB,EAClB,YAA0B,EAC1B,IAAQ;QAER,KAAK,CAAC,YAAY,UAAU,KAAK,OAAO,EAAE,EAAE,YAAY,CAAC,CAAC;QAC1D,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;CACF;AArBD,gDAqBC;AAED;;GAEG;AACH,MAAa,kBAAsB,SAAQ,YAAY;IAMrD,YAAY,OAAe,EAAE,YAA0B,EAAE,IAAQ;QAC/D,KAAK,CAAC,oBAAoB,OAAO,EAAE,EAAE,YAAY,CAAC,CAAC;QACnD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;CACF;AAVD,gDAUC;AAED;;GAEG;AACH,MAAa,sBAAuB,SAAQ,kBAA0B;IACpE,YACE,OAAe,EACf,UAAkB,EAClB,YAA0B,EAC1B,WAAoB;QAEpB,KAAK,CACH,+BAA+B,OAAO,EAAE,EACxC,UAAU,EACV,YAAY,EACZ,WAAW,CACZ,CAAC;IACJ,CAAC;CACF;AAdD,wDAcC"}
1
+ {"version":3,"file":"api-errors.js","sourceRoot":"","sources":["../../src/api/api-errors.ts"],"names":[],"mappings":";;;AAcA;;GAEG;AACH,MAAa,YAAa,SAAQ,KAAK;IACrC,YAAY,OAAe,EAAE,YAA0B;QACrD,MAAM,OAAO,GAAG,YAAY,CAAC,SAAS,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QACzD,MAAM,MAAM,GAAG,YAAY,CAAC,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAC3D,KAAK,CACH,mBAAmB,YAAY,CAAC,OAAO,IAAI,SAAS;wBAClC,YAAY,CAAC,WAAW,IAAI,SAAS;oBACzC,OAAO,cAAc,MAAM,sBAAsB,OAAO,EAAE,CACzE,CAAC;IACJ,CAAC;IAEO,MAAM,CAAC,SAAS,CAAC,GAA8B;QACrD,MAAM,UAAU,GAAG,cAAc,CAAC;QAClC,OAAO,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACvD,CAAC;CAEF;AAhBD,oCAgBC;AAED;;GAEG;AACH,MAAa,kBAAsB,SAAQ,YAAY;IAWrD,YACE,OAAe,EACf,UAAkB,EAClB,YAA0B,EAC1B,IAAQ;QAER,KAAK,CAAC,YAAY,UAAU,KAAK,OAAO,EAAE,EAAE,YAAY,CAAC,CAAC;QAC1D,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC5C,CAAC;CACF;AArBD,gDAqBC;AAED;;GAEG;AACH,MAAa,kBAAsB,SAAQ,YAAY;IAMrD,YAAY,OAAe,EAAE,YAA0B,EAAE,IAAQ;QAC/D,KAAK,CAAC,oBAAoB,OAAO,EAAE,EAAE,YAAY,CAAC,CAAC;QACnD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC5C,CAAC;CACF;AAVD,gDAUC;AAED;;GAEG;AACH,MAAa,sBAAuB,SAAQ,kBAA0B;IACpE,YACE,OAAe,EACf,UAAkB,EAClB,YAA0B,EAC1B,WAAoB;QAEpB,KAAK,CACH,+BAA+B,OAAO,EAAE,EACxC,UAAU,EACV,YAAY,EACZ,WAAW,CACZ,CAAC;IACJ,CAAC;CACF;AAdD,wDAcC"}
@@ -1,3 +1,4 @@
1
+ /// <reference types="node" />
1
2
  import { ApiClient } from './api-client';
2
3
  /** API interface */
3
4
  export interface Api {
@@ -6,3 +7,9 @@ export interface Api {
6
7
  /** API Client used to process the calls to the API */
7
8
  client?: ApiClient;
8
9
  }
10
+ export interface FileBuffer {
11
+ /** Name of the file extracted from the 'content-disposition' header */
12
+ fileName: string;
13
+ /** File content as Buffer */
14
+ buffer: Buffer;
15
+ }
@@ -0,0 +1,6 @@
1
+ /// <reference types="node" />
2
+ import { IncomingHttpHeaders } from 'http';
3
+ export interface CallbackProcessor<T> {
4
+ validateAuthenticationHeader(headers: IncomingHttpHeaders, body: any, path: string, method: string): boolean;
5
+ parseEvent(eventBody: any): T;
6
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=callback-webhooks-interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"callback-webhooks-interface.js","sourceRoot":"","sources":["../../src/api/callback-webhooks-interface.ts"],"names":[],"mappings":""}
@@ -2,3 +2,4 @@ export * from './api-client-options';
2
2
  export * from './api-client';
3
3
  export * from './api-errors';
4
4
  export * from './api-interface';
5
+ export * from './callback-webhooks-interface';
package/dist/api/index.js CHANGED
@@ -19,4 +19,5 @@ __exportStar(require("./api-client-options"), exports);
19
19
  __exportStar(require("./api-client"), exports);
20
20
  __exportStar(require("./api-errors"), exports);
21
21
  __exportStar(require("./api-interface"), exports);
22
+ __exportStar(require("./callback-webhooks-interface"), exports);
22
23
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uDAAqC;AACrC,+CAA+C;AAC/C,+CAA6B;AAC7B,+CAA6B;AAC7B,kDAAgC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uDAAqC;AACrC,+CAA+C;AAC/C,+CAA6B;AAC7B,+CAA6B;AAC7B,kDAAgC;AAChC,gEAA8C"}
@@ -3,3 +3,9 @@ import { ApiCallParameters, ApiCallParametersWithPagination, ErrorContext } from
3
3
  export declare const manageExpiredToken: (apiCallParameters: ApiCallParameters | ApiCallParametersWithPagination, errorContext: ErrorContext, requestPlugins: RequestPlugin[] | undefined, requestOptions: RequestOptions, callback: (props: any) => Promise<any>) => Promise<any>;
4
4
  export declare function buildErrorContext(apiCallParameters: ApiCallParameters, origin: string | null): ErrorContext;
5
5
  export declare function invalidateAndRegenerateJwt(requestPlugins: RequestPlugin[] | undefined, options: RequestOptions, errorContext: ErrorContext): Promise<RequestOptions>;
6
+ /**
7
+ * Go through all an object's properties and transform to date the values that match the right format
8
+ * @param {any} input - the response object after all the response plugins have been run
9
+ * @return {any} - the response where the values matching a date are revived as Date objects
10
+ */
11
+ export declare const reviveDates: (input: any) => any;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.invalidateAndRegenerateJwt = exports.buildErrorContext = exports.manageExpiredToken = void 0;
3
+ exports.reviveDates = exports.invalidateAndRegenerateJwt = exports.buildErrorContext = exports.manageExpiredToken = void 0;
4
4
  const request_plugin_1 = require("../plugins/core/request-plugin");
5
5
  const api_1 = require("../api");
6
6
  const manageExpiredToken = async (apiCallParameters, errorContext, requestPlugins, requestOptions, callback) => {
@@ -44,4 +44,41 @@ async function invalidateAndRegenerateJwt(requestPlugins, options, errorContext)
44
44
  }
45
45
  }
46
46
  exports.invalidateAndRegenerateJwt = invalidateAndRegenerateJwt;
47
+ /**
48
+ * Go through all an object's properties and transform to date the values that match the right format
49
+ * @param {any} input - the response object after all the response plugins have been run
50
+ * @return {any} - the response where the values matching a date are revived as Date objects
51
+ */
52
+ const reviveDates = (input) => {
53
+ if (Array.isArray(input)) {
54
+ // Process array elements recursively
55
+ return input.map((item) => (0, exports.reviveDates)(item));
56
+ }
57
+ else if (typeof input === 'object' && input !== null) {
58
+ // Process object properties recursively
59
+ const newObj = {};
60
+ for (const key in input) {
61
+ if (Object.prototype.hasOwnProperty.call(input, key)) {
62
+ newObj[key] = (0, exports.reviveDates)(input[key]);
63
+ }
64
+ }
65
+ return newObj;
66
+ }
67
+ else if (isDateString(input)) {
68
+ // Convert string date to Date object
69
+ return new Date(input);
70
+ }
71
+ else {
72
+ // Return other types as-is
73
+ return input;
74
+ }
75
+ };
76
+ exports.reviveDates = reviveDates;
77
+ const isDateString = (value) => {
78
+ if (typeof value === 'string' && value.length >= 10) {
79
+ const date = new Date(value);
80
+ return !isNaN(date.getTime()) && date.toISOString().slice(0, 10) === value.slice(0, 10);
81
+ }
82
+ return false;
83
+ };
47
84
  //# sourceMappingURL=api-client-helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"api-client-helpers.js","sourceRoot":"","sources":["../../src/client/api-client-helpers.ts"],"names":[],"mappings":";;;AAAA,mEAIwC;AACxC,gCAAwG;AAEjG,MAAM,kBAAkB,GAAG,KAAK,EACrC,iBAAsE,EACtE,YAA0B,EAC1B,cAA2C,EAC3C,cAA8B,EAC9B,QAAsC,EACtC,EAAE;IACF,gFAAgF;IAChF,IAAI,CAAC,iBAAiB,CAAC,cAAc,EAAE,CAAC;QACtC,iBAAiB,CAAC,cAAc,GAAG,CAAC,CAAC;IACvC,CAAC;SAAM,CAAC;QACN,iBAAiB,CAAC,cAAc,EAAE,CAAC;QACnC,4EAA4E;QAC5E,IAAI,iBAAiB,CAAC,cAAc,IAAI,CAAC,EAAE,CAAC;YAC1C,MAAM,IAAI,kBAAY,CACpB,6CAA6C,EAC7C,YAAY,CACb,CAAC;QACJ,CAAC;IACH,CAAC;IACD,MAAM,iBAAiB,GAAG,MAAM,0BAA0B,CAAC,cAAc,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC;IACzG,MAAM,oBAAoB,GAAG;QAC3B,GAAG,iBAAiB;QACpB,cAAc,EAAE,iBAAiB;KAClC,CAAC;IACF,OAAO,QAAQ,CAAC,oBAAoB,CAAC,CAAC;AACxC,CAAC,CAAC;AA1BW,QAAA,kBAAkB,sBA0B7B;AAEF,SAAgB,iBAAiB,CAC/B,iBAAoC,EACpC,MAAqB;IAErB,OAAO;QACL,OAAO,EAAE,iBAAiB,CAAC,OAAO;QAClC,WAAW,EAAE,iBAAiB,CAAC,WAAW;QAC1C,GAAG,EAAE,iBAAiB,CAAC,GAAG;QAC1B,MAAM;KACP,CAAC;AACJ,CAAC;AAVD,8CAUC;AAEM,KAAK,UAAU,0BAA0B,CAC9C,cAA2C,EAC3C,OAAuB,EACvB,YAA0B;IAE1B,MAAM,YAAY,GAAG,cAAc,EAAE,IAAI,CACvC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,kCAAiB,CAAC,oBAAoB,CACxE,CAAC;IACF,IAAI,YAAY,EAAE,CAAC;QAChB,YAAoB,CAAC,eAAe,EAAE,CAAC;QACxC,OAAO,YAAY,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAChD,CAAC;SAAM,CAAC;QACN,MAAM,YAAY,GACd,sGAAsG,CAAC;QAC3G,MAAM,IAAI,kBAAY,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;IACrD,CAAC;AACH,CAAC;AAhBD,gEAgBC"}
1
+ {"version":3,"file":"api-client-helpers.js","sourceRoot":"","sources":["../../src/client/api-client-helpers.ts"],"names":[],"mappings":";;;AAAA,mEAIwC;AACxC,gCAAwG;AAEjG,MAAM,kBAAkB,GAAG,KAAK,EACrC,iBAAsE,EACtE,YAA0B,EAC1B,cAA2C,EAC3C,cAA8B,EAC9B,QAAsC,EACtC,EAAE;IACF,gFAAgF;IAChF,IAAI,CAAC,iBAAiB,CAAC,cAAc,EAAE,CAAC;QACtC,iBAAiB,CAAC,cAAc,GAAG,CAAC,CAAC;IACvC,CAAC;SAAM,CAAC;QACN,iBAAiB,CAAC,cAAc,EAAE,CAAC;QACnC,4EAA4E;QAC5E,IAAI,iBAAiB,CAAC,cAAc,IAAI,CAAC,EAAE,CAAC;YAC1C,MAAM,IAAI,kBAAY,CACpB,6CAA6C,EAC7C,YAAY,CACb,CAAC;QACJ,CAAC;IACH,CAAC;IACD,MAAM,iBAAiB,GAAG,MAAM,0BAA0B,CAAC,cAAc,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC;IACzG,MAAM,oBAAoB,GAAG;QAC3B,GAAG,iBAAiB;QACpB,cAAc,EAAE,iBAAiB;KAClC,CAAC;IACF,OAAO,QAAQ,CAAC,oBAAoB,CAAC,CAAC;AACxC,CAAC,CAAC;AA1BW,QAAA,kBAAkB,sBA0B7B;AAEF,SAAgB,iBAAiB,CAC/B,iBAAoC,EACpC,MAAqB;IAErB,OAAO;QACL,OAAO,EAAE,iBAAiB,CAAC,OAAO;QAClC,WAAW,EAAE,iBAAiB,CAAC,WAAW;QAC1C,GAAG,EAAE,iBAAiB,CAAC,GAAG;QAC1B,MAAM;KACP,CAAC;AACJ,CAAC;AAVD,8CAUC;AAEM,KAAK,UAAU,0BAA0B,CAC9C,cAA2C,EAC3C,OAAuB,EACvB,YAA0B;IAE1B,MAAM,YAAY,GAAG,cAAc,EAAE,IAAI,CACvC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,kCAAiB,CAAC,oBAAoB,CACxE,CAAC;IACF,IAAI,YAAY,EAAE,CAAC;QAChB,YAAoB,CAAC,eAAe,EAAE,CAAC;QACxC,OAAO,YAAY,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAChD,CAAC;SAAM,CAAC;QACN,MAAM,YAAY,GACd,sGAAsG,CAAC;QAC3G,MAAM,IAAI,kBAAY,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;IACrD,CAAC;AACH,CAAC;AAhBD,gEAgBC;AAED;;;;GAIG;AACI,MAAM,WAAW,GAAG,CAAC,KAAU,EAAO,EAAE;IAC7C,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,qCAAqC;QACrC,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,mBAAW,EAAC,IAAI,CAAC,CAAC,CAAC;IAChD,CAAC;SAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACvD,wCAAwC;QACxC,MAAM,MAAM,GAAQ,EAAE,CAAC;QACvB,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;YACxB,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC;gBACrD,MAAM,CAAC,GAAG,CAAC,GAAG,IAAA,mBAAW,EAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;YACxC,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;SAAM,IAAI,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/B,qCAAqC;QACrC,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;SAAM,CAAC;QACN,2BAA2B;QAC3B,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC;AApBW,QAAA,WAAW,eAoBtB;AAEF,MAAM,YAAY,GAAG,CAAC,KAAU,EAAW,EAAE;IAC3C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;QACpD,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7B,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,CAAC,EAAC,EAAE,CAAC,CAAC;IACzF,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC"}
@@ -12,4 +12,4 @@ export interface PaginationContext {
12
12
  requestOptions: RequestOptions;
13
13
  }
14
14
  export declare function buildPaginationContext(props: ApiCallParametersWithPagination): PaginationContext;
15
- export declare const buildPageResultPromise: <T>(client: ApiClient, requestOptionsPromise: Promise<RequestOptions>, operationProperties: PaginatedApiProperties) => Promise<PageResult<T>>;
15
+ export declare const buildPageResultPromise: <T>(client: ApiClient, requestOptionsPromise: Promise<RequestOptions>, operationProperties: PaginatedApiProperties, repeatParamArray?: boolean) => Promise<PageResult<T>>;
@@ -108,25 +108,33 @@ const createNextPageMethod = (apiClient, context, requestOptions, nextPageValue)
108
108
  exports.createNextPageMethod = createNextPageMethod;
109
109
  function hasMore(response, context) {
110
110
  if (context.pagination === api_1.PaginationEnum.TOKEN) {
111
- return !!response.nextPageToken;
111
+ return !!response['nextPageToken'] || !!response['next_page_token'];
112
112
  }
113
113
  if (context.pagination === api_1.PaginationEnum.PAGE) {
114
114
  const requestedPageSize = context.requestOptions.queryParams?.page_size;
115
115
  const pageSize = requestedPageSize ? parseInt(requestedPageSize) : response.page_size;
116
116
  return checkIfThereAreMorePages(response, pageSize);
117
117
  }
118
+ if (context.pagination === api_1.PaginationEnum.PAGE3) {
119
+ return response.pageNumber < response.totalPages;
120
+ }
118
121
  throw new Error(`The operation ${context.operationId} is not meant to be paginated.`);
119
122
  }
120
123
  exports.hasMore = hasMore;
121
124
  function calculateNextPage(response, context) {
122
125
  if (context.pagination === api_1.PaginationEnum.TOKEN) {
123
- return response['nextPageToken'];
126
+ return response['nextPageToken'] || response['next_page_token'];
124
127
  }
125
128
  if (context.pagination === api_1.PaginationEnum.PAGE) {
126
129
  const currentPage = response.page || 0;
127
130
  const nextPage = currentPage + 1;
128
131
  return nextPage.toString();
129
132
  }
133
+ if (context.pagination === api_1.PaginationEnum.PAGE3) {
134
+ const currentPage = response.pageNumber || 1;
135
+ const nextPage = currentPage + 1;
136
+ return nextPage.toString();
137
+ }
130
138
  throw new Error(`The operation ${context.operationId} is not meant to be paginated.`);
131
139
  }
132
140
  exports.calculateNextPage = calculateNextPage;
@@ -140,10 +148,10 @@ function buildPaginationContext(props) {
140
148
  };
141
149
  }
142
150
  exports.buildPaginationContext = buildPaginationContext;
143
- const buildPageResultPromise = async (client, requestOptionsPromise, operationProperties) => {
151
+ const buildPageResultPromise = async (client, requestOptionsPromise, operationProperties, repeatParamArray) => {
144
152
  // Await the promise in this async method and store the result in client so that they can be reused
145
153
  const requestOptions = await requestOptionsPromise;
146
- const url = client.prepareUrl(requestOptions.basePath, requestOptions.queryParams);
154
+ const url = client.prepareUrl(requestOptions.basePath, requestOptions.queryParams, repeatParamArray);
147
155
  return client.processCallWithPagination({
148
156
  url,
149
157
  requestOptions,
@@ -1 +1 @@
1
- {"version":3,"file":"api-client-pagination-helper.js","sourceRoot":"","sources":["../../src/client/api-client-pagination-helper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api-client-pagination-helper.js","sourceRoot":"","sources":["../../src/client/api-client-pagination-helper.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
- import { ApiClient, ApiClientOptions, ApiCallParameters, ApiCallParametersWithPagination, PageResult } from '../api';
1
+ import { ApiClient, ApiClientOptions, ApiCallParameters, ApiCallParametersWithPagination, PageResult, FileBuffer } from '../api';
2
+ import FormData = require('form-data');
2
3
  /** Client to process the call to the API using Fetch API */
3
4
  export declare class ApiFetchClient extends ApiClient {
4
5
  /**
@@ -16,4 +17,9 @@ export declare class ApiFetchClient extends ApiClient {
16
17
  private sinchFetchWithPagination;
17
18
  private buildFetchError;
18
19
  private loadResponsePlugins;
20
+ /** @inheritdoc */
21
+ processFileCall(props: ApiCallParameters): Promise<FileBuffer>;
22
+ private extractFileName;
23
+ /** @inheritDoc */
24
+ processFormData(data: any, type: string): FormData | string;
19
25
  }
@@ -9,6 +9,7 @@ const exception_1 = require("../plugins/exception");
9
9
  const timezone_1 = require("../plugins/timezone");
10
10
  const api_1 = require("../api");
11
11
  const node_fetch_1 = __importDefault(require("node-fetch"));
12
+ const FormData = require("form-data");
12
13
  const api_client_helpers_1 = require("./api-client-helpers");
13
14
  const api_client_pagination_helper_1 = require("./api-client-pagination-helper");
14
15
  /** Client to process the call to the API using Fetch API */
@@ -67,8 +68,8 @@ class ApiFetchClient extends api_1.ApiClient {
67
68
  if (exception) {
68
69
  throw exception;
69
70
  }
70
- // If everything went fine, we return the transformed API response
71
- return transformedResponse;
71
+ // If everything went fine, we apply a last transformation to revive the dates, and we return the transformed API response
72
+ return (0, api_client_helpers_1.reviveDates)(transformedResponse);
72
73
  }
73
74
  async sinchFetch(apiCallParameters, errorContext) {
74
75
  const response = await (0, node_fetch_1.default)(apiCallParameters.url, apiCallParameters.requestOptions);
@@ -83,10 +84,11 @@ class ApiFetchClient extends api_1.ApiClient {
83
84
  const origin = props.requestOptions.headers.get('Origin');
84
85
  const errorContext = (0, api_client_helpers_1.buildErrorContext)(props, origin);
85
86
  // Execute call
86
- return this.sinchFetchWithPagination(props, errorContext);
87
+ return this.sinchFetchWithPagination(props, errorContext, origin);
87
88
  }
88
89
  ;
89
- async sinchFetchWithPagination(apiCallParameters, errorContext) {
90
+ async sinchFetchWithPagination(apiCallParameters, errorContext, origin) {
91
+ let exception;
90
92
  const response = await (0, node_fetch_1.default)(apiCallParameters.url, apiCallParameters.requestOptions);
91
93
  if (response.status === 401
92
94
  && response.headers.get('www-authenticate')?.includes('expired')) {
@@ -94,14 +96,33 @@ class ApiFetchClient extends api_1.ApiClient {
94
96
  }
95
97
  // When handling pagination, we won't return the raw response but a PageResult
96
98
  const body = await response.text();
97
- const result = JSON.parse(body);
99
+ let result;
100
+ try {
101
+ // Try to parse the body if there is one
102
+ result = body ? JSON.parse(body) : undefined;
103
+ }
104
+ catch (error) {
105
+ exception = new api_1.ResponseJSONParseError(error.message || 'Fail to parse response body', (response && response.status) || 0, errorContext, body);
106
+ }
107
+ // Load and invoke the response plugins to transform the response
108
+ const responsePlugins = this.loadResponsePlugins(this.apiClientOptions.responsePlugins, apiCallParameters, response, exception, origin);
109
+ let transformedResponse = result;
110
+ for (const pluginRunner of responsePlugins) {
111
+ transformedResponse = await pluginRunner.transform(transformedResponse);
112
+ }
113
+ // Revive Date objects
114
+ transformedResponse = (0, api_client_helpers_1.reviveDates)(transformedResponse);
115
+ // If there has been an error at some point in the process, throw it
116
+ if (exception) {
117
+ throw exception;
118
+ }
98
119
  // Read the elements' array with its key
99
- const responseData = result[apiCallParameters.dataKey];
120
+ const responseData = transformedResponse[apiCallParameters.dataKey];
100
121
  // Build the PageResult object
101
- const nextPage = (0, api_client_pagination_helper_1.calculateNextPage)(result, (0, api_client_pagination_helper_1.buildPaginationContext)(apiCallParameters));
122
+ const nextPage = JSON.stringify((0, api_client_pagination_helper_1.calculateNextPage)(transformedResponse, (0, api_client_pagination_helper_1.buildPaginationContext)(apiCallParameters)));
102
123
  return {
103
- data: responseData,
104
- hasNextPage: (0, api_client_pagination_helper_1.hasMore)(result, (0, api_client_pagination_helper_1.buildPaginationContext)(apiCallParameters)),
124
+ data: responseData || [],
125
+ hasNextPage: (0, api_client_pagination_helper_1.hasMore)(transformedResponse, (0, api_client_pagination_helper_1.buildPaginationContext)(apiCallParameters)),
105
126
  nextPageValue: nextPage,
106
127
  nextPage: () => (0, api_client_pagination_helper_1.createNextPageMethod)(this, (0, api_client_pagination_helper_1.buildPaginationContext)(apiCallParameters), apiCallParameters.requestOptions, nextPage),
107
128
  };
@@ -127,6 +148,67 @@ class ApiFetchClient extends api_1.ApiClient {
127
148
  }))
128
149
  : [];
129
150
  }
151
+ /** @inheritdoc */
152
+ async processFileCall(props) {
153
+ // Read the "Origin" header if existing, for logging purposes
154
+ const origin = props.requestOptions.headers.get('Origin');
155
+ const errorContext = (0, api_client_helpers_1.buildErrorContext)(props, origin);
156
+ // Declare variables
157
+ let response;
158
+ let body;
159
+ let fileName;
160
+ // Execute call
161
+ try {
162
+ // Send the request with the refresh token mechanism
163
+ response = await this.sinchFetch(props, errorContext);
164
+ body = await response.buffer();
165
+ fileName = this.extractFileName(response.headers);
166
+ }
167
+ catch (error) {
168
+ this.buildFetchError(error, errorContext);
169
+ }
170
+ if (!body || !fileName) {
171
+ throw new Error('An error occurred while downloading the file');
172
+ }
173
+ return {
174
+ fileName,
175
+ buffer: body,
176
+ };
177
+ }
178
+ extractFileName(headers) {
179
+ const contentDisposition = headers.get('content-disposition');
180
+ let fileName = 'default-name.pdf';
181
+ if (contentDisposition) {
182
+ const match = contentDisposition.match(/filename="([^"]+)"/);
183
+ if (match && match[1]) {
184
+ fileName = match[1];
185
+ }
186
+ }
187
+ return fileName;
188
+ }
189
+ /** @inheritDoc */
190
+ processFormData(data, type) {
191
+ let encodedData;
192
+ if (type === 'multipart/form-data') {
193
+ const formData = new FormData();
194
+ for (const i in data) {
195
+ if (Object.prototype.hasOwnProperty.call(data, i)) {
196
+ formData.append(i, data[i]);
197
+ }
198
+ }
199
+ encodedData = formData;
200
+ }
201
+ else {
202
+ const formData = [];
203
+ for (const i in data) {
204
+ if (Object.prototype.hasOwnProperty.call(data, i)) {
205
+ formData.push(`${i}=${encodeURIComponent(data[i])}`);
206
+ }
207
+ }
208
+ encodedData = formData.join('&');
209
+ }
210
+ return encodedData;
211
+ }
130
212
  }
131
213
  exports.ApiFetchClient = ApiFetchClient;
132
214
  //# sourceMappingURL=api-fetch-client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"api-fetch-client.js","sourceRoot":"","sources":["../../src/client/api-fetch-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api-fetch-client.js","sourceRoot":"","sources":["../../src/client/api-fetch-client.ts"],"names":[],"mappings":"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"}
@@ -46,4 +46,9 @@ export declare enum VoiceRegion {
46
46
  SOUTHEAST_ASIA_1 = "-apse1",
47
47
  SOUTHEAST_ASIA_2 = "-apse2"
48
48
  }
49
+ export declare enum ConversationRegion {
50
+ UNITED_STATES = "us",
51
+ EUROPE = "eu",
52
+ BRAZIL = "br"
53
+ }
49
54
  export declare const getVoiceRegion: (value: string | undefined) => VoiceRegion | undefined;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getVoiceRegion = exports.VoiceRegion = exports.getRegion = exports.Region = exports.isServicePlanIdCredentials = exports.isUnifiedCredentials = void 0;
3
+ exports.getVoiceRegion = exports.ConversationRegion = exports.VoiceRegion = exports.getRegion = exports.Region = exports.isServicePlanIdCredentials = exports.isUnifiedCredentials = void 0;
4
4
  const isUnifiedCredentials = (credentials) => {
5
5
  const candidate = (credentials);
6
6
  return candidate.projectId !== undefined
@@ -44,6 +44,12 @@ var VoiceRegion;
44
44
  VoiceRegion["SOUTHEAST_ASIA_1"] = "-apse1";
45
45
  VoiceRegion["SOUTHEAST_ASIA_2"] = "-apse2";
46
46
  })(VoiceRegion || (exports.VoiceRegion = VoiceRegion = {}));
47
+ var ConversationRegion;
48
+ (function (ConversationRegion) {
49
+ ConversationRegion["UNITED_STATES"] = "us";
50
+ ConversationRegion["EUROPE"] = "eu";
51
+ ConversationRegion["BRAZIL"] = "br";
52
+ })(ConversationRegion || (exports.ConversationRegion = ConversationRegion = {}));
47
53
  const getVoiceRegion = (value) => {
48
54
  if (!value) {
49
55
  return undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"domain-interface.js","sourceRoot":"","sources":["../../src/domain/domain-interface.ts"],"names":[],"mappings":";;;AAoCO,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,IAAY,MAMX;AAND,WAAY,MAAM;IAChB,8BAAoB,CAAA;IACpB,uBAAa,CAAA;IACb,uBAAa,CAAA;IACb,uBAAa,CAAA;IACb,0BAAgB,CAAA;AAClB,CAAC,EANW,MAAM,sBAAN,MAAM,QAMjB;AAED,SAAgB,SAAS,CAAC,KAAyB;IACjD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3C,IAAI,MAAM,KAAK,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;YACnC,OAAO,MAAgB,CAAC;QAC1B,CAAC;IACH,CAAC;IACD,OAAO,CAAC,KAAK,CAAC,kCAAkC,KAAK,GAAG,CAAC,CAAC;IAC1D,OAAO,SAAS,CAAC;AACnB,CAAC;AAZD,8BAYC;AAED,IAAY,WAOX;AAPD,WAAY,WAAW;IACrB,2BAAY,CAAA;IACZ,sCAAuB,CAAA;IACvB,+BAAgB,CAAA;IAChB,sCAAuB,CAAA;IACvB,0CAA2B,CAAA;IAC3B,0CAA2B,CAAA;AAC7B,CAAC,EAPW,WAAW,2BAAX,WAAW,QAOtB;AAEM,MAAM,cAAc,GAAG,CAAC,KAAyB,EAA2B,EAAE;IACnF,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,KAAI,MAAM,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC;QAC/C,IAAI,MAAM,KAAK,KAAK,CAAC,WAAW,EAAE,EAAG,CAAC;YACpC,OAAO,MAAqB,CAAC;QAC/B,CAAC;IACH,CAAC;IACD,OAAO,CAAC,KAAK,CAAC,kCAAkC,KAAK,GAAG,CAAC,CAAC;IAC1D,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAXW,QAAA,cAAc,kBAWzB"}
1
+ {"version":3,"file":"domain-interface.js","sourceRoot":"","sources":["../../src/domain/domain-interface.ts"],"names":[],"mappings":";;;AAoCO,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,IAAY,MAMX;AAND,WAAY,MAAM;IAChB,8BAAoB,CAAA;IACpB,uBAAa,CAAA;IACb,uBAAa,CAAA;IACb,uBAAa,CAAA;IACb,0BAAgB,CAAA;AAClB,CAAC,EANW,MAAM,sBAAN,MAAM,QAMjB;AAED,SAAgB,SAAS,CAAC,KAAyB;IACjD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3C,IAAI,MAAM,KAAK,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;YACnC,OAAO,MAAgB,CAAC;QAC1B,CAAC;IACH,CAAC;IACD,OAAO,CAAC,KAAK,CAAC,kCAAkC,KAAK,GAAG,CAAC,CAAC;IAC1D,OAAO,SAAS,CAAC;AACnB,CAAC;AAZD,8BAYC;AAED,IAAY,WAOX;AAPD,WAAY,WAAW;IACrB,2BAAY,CAAA;IACZ,sCAAuB,CAAA;IACvB,+BAAgB,CAAA;IAChB,sCAAuB,CAAA;IACvB,0CAA2B,CAAA;IAC3B,0CAA2B,CAAA;AAC7B,CAAC,EAPW,WAAW,2BAAX,WAAW,QAOtB;AAED,IAAY,kBAIX;AAJD,WAAY,kBAAkB;IAC5B,0CAAoB,CAAA;IACpB,mCAAa,CAAA;IACb,mCAAa,CAAA;AACf,CAAC,EAJW,kBAAkB,kCAAlB,kBAAkB,QAI7B;AAEM,MAAM,cAAc,GAAG,CAAC,KAAyB,EAA2B,EAAE;IACnF,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,KAAI,MAAM,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC;QAC/C,IAAI,MAAM,KAAK,KAAK,CAAC,WAAW,EAAE,EAAG,CAAC;YACpC,OAAO,MAAqB,CAAC;QAC/B,CAAC;IACH,CAAC;IACD,OAAO,CAAC,KAAK,CAAC,kCAAkC,KAAK,GAAG,CAAC,CAAC;IAC1D,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAXW,QAAA,cAAc,kBAWzB"}
@@ -3,9 +3,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TimezoneResponse = void 0;
4
4
  const buggyOperationIds = [
5
5
  'GetCallResult',
6
+ 'VerificationStatusById',
7
+ 'VerificationStatusByIdentity',
8
+ 'VerificationStatusByReference',
6
9
  ];
7
10
  const buggyFields = {
8
11
  'GetCallResult': 'timestamp',
12
+ 'VerificationStatusById': 'verificationTimestamp',
13
+ 'VerificationStatusByIdentity': 'verificationTimestamp',
14
+ 'VerificationStatusByReference': 'verificationTimestamp',
9
15
  };
10
16
  class TimezoneResponse {
11
17
  load(context) {
@@ -17,11 +23,20 @@ class TimezoneResponse {
17
23
  if (Object.prototype.hasOwnProperty.call(res, key)) {
18
24
  const buggyKey = buggyFields[context.operationId];
19
25
  if (key === buggyKey && typeof res[buggyKey] === 'string') {
20
- const timestampValue = res[key];
21
- const timeZoneRegex = /([+-]\d{2}(:\d{2})?|Z)$/;
26
+ let timestampValue = res[key];
27
+ // Check the formats +XX:XX, +XX and Z
28
+ const timeZoneRegex = /([+-]\d{2}(:\d{2})|Z)$/;
22
29
  if (!timeZoneRegex.test(timestampValue)) {
23
- res[key] = timestampValue + 'Z';
30
+ const hourMinutesTimezoneRegex = /([+-]\d{2})$/;
31
+ // A timestamp with no minutes in the timezone cannot be converted into a Date => assume it's :00
32
+ if (hourMinutesTimezoneRegex.test(timestampValue)) {
33
+ timestampValue = timestampValue + ':00';
34
+ }
35
+ else {
36
+ timestampValue = timestampValue + 'Z';
37
+ }
24
38
  }
39
+ res[key] = timestampValue;
25
40
  }
26
41
  }
27
42
  }
@@ -1 +1 @@
1
- {"version":3,"file":"timezone.response.js","sourceRoot":"","sources":["../../../src/plugins/timezone/timezone.response.ts"],"names":[],"mappings":";;;AAGA,MAAM,iBAAiB,GAAa;IAClC,eAAe;CAChB,CAAC;AAEF,MAAM,WAAW,GAA4B;IAC3C,eAAe,EAAE,WAAW;CAC7B,CAAC;AAEF,MAAa,gBAAgB;IAGpB,IAAI,CACT,OAA8B;QAE9B,OAAO;YACL,SAAS,CAAC,GAAM;gBACd,gFAAgF;gBAChF,IAAI,GAAG,IAAI,iBAAiB,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,EAAG,CAAC;oBAC5D,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;wBACtB,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;4BACnD,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;4BAClD,IAAI,GAAG,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,QAAQ,CAAC,KAAK,QAAQ,EAAE,CAAC;gCAC1D,MAAM,cAAc,GAAG,GAAG,CAAC,GAAG,CAAW,CAAC;gCAC1C,MAAM,aAAa,GAAG,yBAAyB,CAAC;gCAChD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;oCACxC,GAAG,CAAC,GAAG,CAAC,GAAG,cAAc,GAAG,GAAG,CAAC;gCAClC,CAAC;4BACH,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;gBACD,OAAO,GAAG,CAAC;YACb,CAAC;SACF,CAAC;IACJ,CAAC;CAEF;AA5BD,4CA4BC"}
1
+ {"version":3,"file":"timezone.response.js","sourceRoot":"","sources":["../../../src/plugins/timezone/timezone.response.ts"],"names":[],"mappings":";;;AAGA,MAAM,iBAAiB,GAAa;IAClC,eAAe;IACf,wBAAwB;IACxB,8BAA8B;IAC9B,+BAA+B;CAChC,CAAC;AAEF,MAAM,WAAW,GAA4B;IAC3C,eAAe,EAAE,WAAW;IAC5B,wBAAwB,EAAE,uBAAuB;IACjD,8BAA8B,EAAE,uBAAuB;IACvD,+BAA+B,EAAE,uBAAuB;CACzD,CAAC;AAEF,MAAa,gBAAgB;IAGpB,IAAI,CACT,OAA8B;QAE9B,OAAO;YACL,SAAS,CAAC,GAAM;gBACd,gFAAgF;gBAChF,IAAI,GAAG,IAAI,iBAAiB,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,EAAG,CAAC;oBAC5D,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;wBACtB,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;4BACnD,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;4BAClD,IAAI,GAAG,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,QAAQ,CAAC,KAAK,QAAQ,EAAE,CAAC;gCAC1D,IAAI,cAAc,GAAG,GAAG,CAAC,GAAG,CAAW,CAAC;gCACxC,sCAAsC;gCACtC,MAAM,aAAa,GAAG,wBAAwB,CAAC;gCAC/C,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;oCACxC,MAAM,wBAAwB,GAAG,cAAc,CAAC;oCAChD,iGAAiG;oCACjG,IAAI,wBAAwB,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;wCAClD,cAAc,GAAG,cAAc,GAAG,KAAK,CAAC;oCAC1C,CAAC;yCAAM,CAAC;wCACN,cAAc,GAAG,cAAc,GAAG,GAAG,CAAC;oCACxC,CAAC;gCACH,CAAC;gCACD,GAAG,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC;4BAC5B,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;gBACD,OAAO,GAAG,CAAC;YACb,CAAC;SACF,CAAC;IACJ,CAAC;CAEF;AApCD,4CAoCC"}
@@ -1,7 +1,46 @@
1
1
  /// <reference types="node" />
2
2
  import { IncomingHttpHeaders } from 'http';
3
3
  import { RequestBody } from '../plugins';
4
+ /**
5
+ * Generate authorization header for application-signed requests (Verification and Voice)
6
+ * @param {string} httpVerb - request's HTTP method
7
+ * @param {RequestBody | undefined} body - request's body (undefined in case of GET request)
8
+ * @param {string} contentType - content-type header value
9
+ * @param {string} canonicalizedHeaders - x-timestamp header
10
+ * @param {string} canonicalizedResource - request's path
11
+ * @param {string} applicationKey - application key (from dashboard)
12
+ * @param {string} applicationSecret - application secret (from dashboard)
13
+ * @return {string} - Application signed header value for HTTP authorization header
14
+ */
15
+ export declare const generateAuthorizationHeader: (httpVerb: string, body: RequestBody | undefined, contentType: string, canonicalizedHeaders: string, canonicalizedResource: string, applicationKey: string, applicationSecret: string) => string;
16
+ /**
17
+ * Validate webhook signature headers for Conversation callback.
18
+ * @param {string} secret - secret associated to the Conversation app
19
+ * @param {IncomingHttpHeaders} headers - Incoming request's headers
20
+ * @param {any} body - Incoming request's body
21
+ * @return {boolean} - true if the signature header is valid
22
+ */
23
+ export declare const validateWebhookSignature: (secret: string, headers: IncomingHttpHeaders, body: any) => boolean;
24
+ /**
25
+ * Validate authorization header for callback request on application-signed protected endpoints (Verification and Voice webhooks)
26
+ * @param {string} applicationKey - application key (from dashboard) related to the event
27
+ * @param {string} applicationSecret - application secret (from dashboard) related to the event
28
+ * @param {IncomingHttpHeaders} headers - Incoming request's headers
29
+ * @param {any} body - Incoming request's body
30
+ * @param {string} path - Incoming request's path
31
+ * @param {string} method - Incoming request's HTTP method
32
+ * @return {boolean} - true if the authorization header is valid
33
+ */
34
+ export declare const validateAuthenticationHeader: (applicationKey: string, applicationSecret: string, headers: IncomingHttpHeaders, body: any, path: string, method: string) => boolean;
35
+ /**
36
+ * Validate signature headers for Numbers callback. Note: a callbackURL must be associated to the number
37
+ * @param {string} callbackSecret - secret associated to the rented number
38
+ * @param {IncomingHttpHeaders} headers - Incoming request's headers
39
+ * @param {any} body - Incoming request's body
40
+ * @return {boolean} - true if the signature header is valid
41
+ */
42
+ export declare const validateSignatureHeader: (callbackSecret: string, headers: IncomingHttpHeaders, body: any) => boolean;
43
+ export declare const computeSignedData: (body: string, nonce: string, timestamp: string) => string;
44
+ export declare const calculateWebhookSignature: (signedData: string, secret: string) => string;
4
45
  export declare const calculateMD5: (body: string) => string;
5
46
  export declare const calculateSignature: (secret: string, stringToSign: string) => string;
6
- export declare const generateAuthorizationHeader: (httpVerb: string, body: RequestBody | undefined, contentType: string, canonicalizedHeaders: string, canonicalizedResource: string, applicationKey: string, applicationSecret: string) => string;
7
- export declare const validateAuthenticationHeader: (applicationKey: string, applicationSecret: string, headers: IncomingHttpHeaders, path: string, body: any, method: string) => boolean;
@@ -1,25 +1,45 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
2
25
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
27
  };
5
28
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.validateAuthenticationHeader = exports.generateAuthorizationHeader = exports.calculateSignature = exports.calculateMD5 = void 0;
29
+ exports.calculateSignature = exports.calculateMD5 = exports.calculateWebhookSignature = exports.computeSignedData = exports.validateSignatureHeader = exports.validateAuthenticationHeader = exports.validateWebhookSignature = exports.generateAuthorizationHeader = void 0;
7
30
  const crypto_1 = __importDefault(require("crypto"));
8
- const calculateMD5 = (body) => {
9
- // Content-MD5 = Base64 ( MD5 ( UTF8 ( [BODY] ) ) )
10
- return crypto_1.default.createHash('md5').update(Buffer.from(body, 'utf-8')).digest('base64');
11
- };
12
- exports.calculateMD5 = calculateMD5;
13
- const calculateSignature = (secret, stringToSign) => {
14
- // Signature = Base64 ( HMAC-SHA256 ( Base64-Decode ( ApplicationSecret ), UTF8 ( StringToSign ) ) );
15
- return crypto_1.default.createHmac('sha256', Buffer.from(secret, 'base64'))
16
- .update(Buffer.from(stringToSign, 'utf-8'))
17
- .digest('base64');
18
- };
19
- exports.calculateSignature = calculateSignature;
20
- const buildStringToSign = (httpVerb, contentMD5, contentType, canonicalizedHeaders, canonicalizedResource) => {
21
- return `${httpVerb}\n${contentMD5}\n${contentType}\n${canonicalizedHeaders}\n${canonicalizedResource}`;
22
- };
31
+ const console = __importStar(require("console"));
32
+ /**
33
+ * Generate authorization header for application-signed requests (Verification and Voice)
34
+ * @param {string} httpVerb - request's HTTP method
35
+ * @param {RequestBody | undefined} body - request's body (undefined in case of GET request)
36
+ * @param {string} contentType - content-type header value
37
+ * @param {string} canonicalizedHeaders - x-timestamp header
38
+ * @param {string} canonicalizedResource - request's path
39
+ * @param {string} applicationKey - application key (from dashboard)
40
+ * @param {string} applicationSecret - application secret (from dashboard)
41
+ * @return {string} - Application signed header value for HTTP authorization header
42
+ */
23
43
  const generateAuthorizationHeader = (httpVerb, body, contentType, canonicalizedHeaders, canonicalizedResource, applicationKey, applicationSecret) => {
24
44
  const hasBody = !!body;
25
45
  const stringToSign = buildStringToSign(httpVerb, hasBody ? (0, exports.calculateMD5)(body) : '', contentType, canonicalizedHeaders, canonicalizedResource);
@@ -27,12 +47,43 @@ const generateAuthorizationHeader = (httpVerb, body, contentType, canonicalizedH
27
47
  return `Application ${applicationKey}:${signature}`;
28
48
  };
29
49
  exports.generateAuthorizationHeader = generateAuthorizationHeader;
30
- const validateAuthenticationHeader = (applicationKey, applicationSecret, headers, path, body, method) => {
31
- const normalizedHeaders = Object.fromEntries(Object.entries(headers)
32
- .map(([key, value]) => [key.toLowerCase(), value])
33
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
34
- .filter(([_, value]) => value !== undefined));
50
+ /**
51
+ * Validate webhook signature headers for Conversation callback.
52
+ * @param {string} secret - secret associated to the Conversation app
53
+ * @param {IncomingHttpHeaders} headers - Incoming request's headers
54
+ * @param {any} body - Incoming request's body
55
+ * @return {boolean} - true if the signature header is valid
56
+ */
57
+ const validateWebhookSignature = (secret, headers, body) => {
58
+ const normalizedHeaders = normalizeHeaders(headers);
59
+ const nonce = getHeader(normalizedHeaders['x-sinch-webhook-signature-nonce']);
60
+ const timestamp = getHeader(normalizedHeaders['x-sinch-webhook-signature-timestamp']);
61
+ let bodyAsString = body;
62
+ if (typeof body === 'object' && body !== null) {
63
+ bodyAsString = JSON.stringify(body);
64
+ }
65
+ const signedData = (0, exports.computeSignedData)(bodyAsString, nonce, timestamp);
66
+ const signature = (0, exports.calculateWebhookSignature)(signedData, secret);
67
+ const headerSignature = normalizedHeaders['x-sinch-webhook-signature'];
68
+ return headerSignature === signature;
69
+ };
70
+ exports.validateWebhookSignature = validateWebhookSignature;
71
+ /**
72
+ * Validate authorization header for callback request on application-signed protected endpoints (Verification and Voice webhooks)
73
+ * @param {string} applicationKey - application key (from dashboard) related to the event
74
+ * @param {string} applicationSecret - application secret (from dashboard) related to the event
75
+ * @param {IncomingHttpHeaders} headers - Incoming request's headers
76
+ * @param {any} body - Incoming request's body
77
+ * @param {string} path - Incoming request's path
78
+ * @param {string} method - Incoming request's HTTP method
79
+ * @return {boolean} - true if the authorization header is valid
80
+ */
81
+ const validateAuthenticationHeader = (applicationKey, applicationSecret, headers, body, path, method) => {
82
+ const normalizedHeaders = normalizeHeaders(headers);
35
83
  const authorization = getHeader(normalizedHeaders.authorization);
84
+ if (typeof authorization === 'undefined') {
85
+ return false;
86
+ }
36
87
  const authParts = checkAuthorizationHeaderFormat(authorization);
37
88
  if (null === authParts) {
38
89
  return false;
@@ -50,6 +101,42 @@ const validateAuthenticationHeader = (applicationKey, applicationSecret, headers
50
101
  return false;
51
102
  };
52
103
  exports.validateAuthenticationHeader = validateAuthenticationHeader;
104
+ /**
105
+ * Validate signature headers for Numbers callback. Note: a callbackURL must be associated to the number
106
+ * @param {string} callbackSecret - secret associated to the rented number
107
+ * @param {IncomingHttpHeaders} headers - Incoming request's headers
108
+ * @param {any} body - Incoming request's body
109
+ * @return {boolean} - true if the signature header is valid
110
+ */
111
+ const validateSignatureHeader = (callbackSecret, headers, body) => {
112
+ const normalizedHeaders = normalizeHeaders(headers);
113
+ const signature = getHeader(normalizedHeaders['x-sinch-signature']);
114
+ if (typeof signature === 'undefined') {
115
+ return false;
116
+ }
117
+ const expectedSignature = computeHmacSignature(body, callbackSecret);
118
+ return signature === expectedSignature;
119
+ };
120
+ exports.validateSignatureHeader = validateSignatureHeader;
121
+ // ////////////////
122
+ // UTILITY METHODS
123
+ const normalizeHeaders = (headers) => {
124
+ return Object.fromEntries(Object.entries(headers)
125
+ .map(([key, value]) => [key.toLowerCase(), value])
126
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
127
+ .filter(([_, value]) => value !== undefined));
128
+ };
129
+ const computeHmacSignature = (body, secret) => {
130
+ return crypto_1.default.createHmac('sha1', secret).update(body).digest('hex');
131
+ };
132
+ const computeSignedData = (body, nonce, timestamp) => {
133
+ return `${body}.${nonce}.${timestamp}`;
134
+ };
135
+ exports.computeSignedData = computeSignedData;
136
+ const calculateWebhookSignature = (signedData, secret) => {
137
+ return crypto_1.default.createHmac('sha256', secret).update(signedData).digest('base64');
138
+ };
139
+ exports.calculateWebhookSignature = calculateWebhookSignature;
53
140
  const validateApplicationAuth = (authorizationValue, normalizedHeaders, applicationKey, applicationSecret, path, body, method) => {
54
141
  const authKeyAndSecret = authorizationValue.split(':');
55
142
  if (authKeyAndSecret.length !== 2) {
@@ -71,6 +158,21 @@ const validateApplicationAuth = (authorizationValue, normalizedHeaders, applicat
71
158
  }
72
159
  return true;
73
160
  };
161
+ const calculateMD5 = (body) => {
162
+ // Content-MD5 = Base64 ( MD5 ( UTF8 ( [BODY] ) ) )
163
+ return crypto_1.default.createHash('md5').update(Buffer.from(body, 'utf-8')).digest('base64');
164
+ };
165
+ exports.calculateMD5 = calculateMD5;
166
+ const calculateSignature = (secret, stringToSign) => {
167
+ // Signature = Base64 ( HMAC-SHA256 ( Base64-Decode ( ApplicationSecret ), UTF8 ( StringToSign ) ) );
168
+ return crypto_1.default.createHmac('sha256', Buffer.from(secret, 'base64'))
169
+ .update(Buffer.from(stringToSign, 'utf-8'))
170
+ .digest('base64');
171
+ };
172
+ exports.calculateSignature = calculateSignature;
173
+ const buildStringToSign = (httpVerb, contentMD5, contentType, canonicalizedHeaders, canonicalizedResource) => {
174
+ return `${httpVerb}\n${contentMD5}\n${contentType}\n${canonicalizedHeaders}\n${canonicalizedResource}`;
175
+ };
74
176
  const checkAuthorizationHeaderFormat = (authorizationHeader) => {
75
177
  const authParts = authorizationHeader.split(' ');
76
178
  if (authParts.length !== 2) {
@@ -1 +1 @@
1
- {"version":3,"file":"authorization.helper.js","sourceRoot":"","sources":["../../src/utils/authorization.helper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"authorization.helper.js","sourceRoot":"","sources":["../../src/utils/authorization.helper.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oDAA4B;AAG5B,iDAAmC;AAEnC;;;;;;;;;;GAUG;AACI,MAAM,2BAA2B,GAAG,CACzC,QAAgB,EAChB,IAA6B,EAC7B,WAAmB,EACnB,oBAA4B,EAC5B,qBAA6B,EAC7B,cAAsB,EACtB,iBAAyB,EACjB,EAAE;IACV,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC;IACvB,MAAM,YAAY,GAAG,iBAAiB,CACpC,QAAQ,EACR,OAAO,CAAC,CAAC,CAAC,IAAA,oBAAY,EAAC,IAAc,CAAC,CAAC,CAAC,CAAC,EAAE,EAC3C,WAAW,EACX,oBAAoB,EACpB,qBAAqB,CACtB,CAAC;IAEF,MAAM,SAAS,GAAG,IAAA,0BAAkB,EAAC,iBAAiB,EAAE,YAAY,CAAC,CAAC;IACtE,OAAO,eAAe,cAAc,IAAI,SAAS,EAAE,CAAC;AACtD,CAAC,CAAC;AApBW,QAAA,2BAA2B,+BAoBtC;AAEF;;;;;;GAMG;AACI,MAAM,wBAAwB,GAAG,CACtC,MAAc,EACd,OAA4B,EAC5B,IAAS,EACA,EAAE;IACX,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACpD,MAAM,KAAK,GAAG,SAAS,CAAC,iBAAiB,CAAC,iCAAiC,CAAC,CAAC,CAAC;IAC9E,MAAM,SAAS,GAAG,SAAS,CAAC,iBAAiB,CAAC,qCAAqC,CAAC,CAAC,CAAC;IAEtF,IAAI,YAAY,GAAG,IAAI,CAAC;IACxB,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QAC9C,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IAED,MAAM,UAAU,GAAG,IAAA,yBAAiB,EAAC,YAAY,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;IACrE,MAAM,SAAS,GAAG,IAAA,iCAAyB,EAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IAEhE,MAAM,eAAe,GAAG,iBAAiB,CAAC,2BAA2B,CAAC,CAAC;IAEvE,OAAO,eAAe,KAAK,SAAS,CAAC;AACvC,CAAC,CAAC;AApBW,QAAA,wBAAwB,4BAoBnC;AAEF;;;;;;;;;GASG;AACI,MAAM,4BAA4B,GAAG,CAC1C,cAAsB,EACtB,iBAAyB,EACzB,OAA4B,EAC5B,IAAS,EACT,IAAY,EACZ,MAAc,EACL,EAAE;IACX,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAEpD,MAAM,aAAa,GAAG,SAAS,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;IACjE,IAAI,OAAO,aAAa,KAAK,WAAW,EAAE,CAAC;QACzC,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,SAAS,GAAG,8BAA8B,CAAC,aAAa,CAAC,CAAC;IAChE,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,mBAAmB,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IACvD,MAAM,kBAAkB,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IACxC,IAAI,mBAAmB,KAAK,OAAO,EAAE,CAAC;QACpC,OAAO,iBAAiB,CAAC,kBAAkB,EAAE,cAAc,EAAE,iBAAiB,CAAC,CAAC;IAClF,CAAC;IACD,IAAI,mBAAmB,KAAK,aAAa,EAAE,CAAC;QAC1C,OAAO,uBAAuB,CAC5B,kBAAkB,EAClB,iBAAiB,EACjB,cAAc,EACd,iBAAiB,EACjB,IAAI,EACJ,IAAI,EACJ,MAAM,CACP,CAAC;IACJ,CAAC;IACD,gEAAgE;IAChE,OAAO,CAAC,KAAK,CAAC,wBAAwB,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACtD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAtCW,QAAA,4BAA4B,gCAsCvC;AAEF;;;;;;GAMG;AACI,MAAM,uBAAuB,GAAG,CACrC,cAAsB,EACtB,OAA4B,EAC5B,IAAS,EACA,EAAE;IACX,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACpD,MAAM,SAAS,GAAG,SAAS,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,CAAC,CAAC;IACpE,IAAI,OAAO,SAAS,KAAK,WAAW,EAAE,CAAC;QACrC,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;IACrE,OAAO,SAAS,KAAK,iBAAiB,CAAC;AACzC,CAAC,CAAC;AAZW,QAAA,uBAAuB,2BAYlC;AAEF,mBAAmB;AACnB,kBAAkB;AAElB,MAAM,gBAAgB,GAAG,CAAC,OAA4B,EAAE,EAAE;IACxD,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;SACpB,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,KAAK,CAAC,CAAC;QAClD,6DAA6D;SAC5D,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CACT,CAAC;AAC1C,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAAC,IAAY,EAAE,MAAc,EAAU,EAAE;IACpE,OAAO,gBAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACtE,CAAC,CAAC;AAEK,MAAM,iBAAiB,GAAG,CAC/B,IAAY,EACZ,KAAa,EACb,SAAiB,EACT,EAAE;IACV,OAAO,GAAG,IAAI,IAAI,KAAK,IAAI,SAAS,EAAE,CAAC;AACzC,CAAC,CAAC;AANW,QAAA,iBAAiB,qBAM5B;AAEK,MAAM,yBAAyB,GAAG,CACvC,UAAkB,EAClB,MAAc,EACN,EAAE;IACV,OAAO,gBAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AACjF,CAAC,CAAC;AALW,QAAA,yBAAyB,6BAKpC;AAEF,MAAM,uBAAuB,GAAG,CAC9B,kBAA0B,EAC1B,iBAAmD,EACnD,cAAsB,EACtB,iBAAyB,EACzB,IAAY,EACZ,IAAS,EACT,MAAc,EACL,EAAE;IACX,MAAM,gBAAgB,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACvD,IAAG,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;QAC7D,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAG,gBAAgB,CAAC,CAAC,CAAC,KAAK,cAAc,EAAE,CAAC;QAC1C,OAAO,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAC9C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,WAAW,GAAG,SAAS,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC,CAAC;IACjE,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC;IACvB,MAAM,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,IAAA,oBAAY,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,MAAM,YAAY,GAAG,iBAAiB,CACpC,MAAM,CAAC,WAAW,EAAE,EACpB,UAAU,EACV,WAAW,EACX,eAAe,iBAAiB,CAAC,aAAa,CAAC,EAAE,EACjD,IAAI,CACL,CAAC;IACF,MAAM,SAAS,GAAG,IAAA,0BAAkB,EAAC,iBAAiB,EAAE,YAAY,CAAC,CAAC;IAEtE,IAAG,gBAAgB,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;QACrC,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACnC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEK,MAAM,YAAY,GAAG,CAAC,IAAY,EAAU,EAAE;IACnD,mDAAmD;IACnD,OAAO,gBAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AACtF,CAAC,CAAC;AAHW,QAAA,YAAY,gBAGvB;AAEK,MAAM,kBAAkB,GAAG,CAAC,MAAc,EAAE,YAAoB,EAAU,EAAE;IACjF,qGAAqG;IACrG,OAAO,gBAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;SAC9D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;SAC1C,MAAM,CAAC,QAAQ,CAAC,CAAC;AACtB,CAAC,CAAC;AALW,QAAA,kBAAkB,sBAK7B;AAEF,MAAM,iBAAiB,GAAG,CACxB,QAAgB,EAChB,UAAkB,EAClB,WAAmB,EACnB,oBAA4B,EAC5B,qBAA6B,EACrB,EAAE;IACV,OAAO,GAAG,QAAQ,KAAK,UAAU,KAAK,WAAW,KAAK,oBAAoB,KAAK,qBAAqB,EAAE,CAAC;AACzG,CAAC,CAAC;AAEF,MAAM,8BAA8B,GAAG,CAAC,mBAA2B,EAAE,EAAE;IACrE,MAAM,SAAS,GAAG,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACjD,IAAG,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,6EAA6E;QAC7E,OAAO,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;QACvD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CACxB,aAAqB,EACrB,cAAsB,EACtB,iBAAyB,EAChB,EAAE;IACX,MAAM,gBAAgB,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAClD,IAAG,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;QAC7D,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAG,gBAAgB,CAAC,CAAC,CAAC,KAAK,cAAc,IAAI,gBAAgB,CAAC,CAAC,CAAC,KAAK,iBAAiB,EAAE,CAAC;QACvF,OAAO,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAC9C,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,CAAC,WAA8B,EAAE,EAAE;IACnD,OAAO,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC;QAC/B,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;QAChB,CAAC,CAAC,WAAW,CAAC;AAClB,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sinch/sdk-client",
3
- "version": "0.0.1",
3
+ "version": "0.0.3",
4
4
  "description": "Core services related to interacting with Sinch API",
5
5
  "homepage": "",
6
6
  "repository": {