@coveo/platform-client 52.5.0 → 52.6.1

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 (53) hide show
  1. package/README.md +29 -0
  2. package/dist/cjs/APICore.js +4 -2
  3. package/dist/cjs/APICore.js.map +1 -1
  4. package/dist/cjs/PlatformClient.js +2 -2
  5. package/dist/cjs/PlatformClient.js.map +1 -1
  6. package/dist/cjs/handlers/index.js +2 -2
  7. package/dist/cjs/handlers/index.js.map +1 -1
  8. package/dist/cjs/handlers/request/RequestHandlerInterfaces.js +3 -0
  9. package/dist/cjs/handlers/request/RequestHandlerInterfaces.js.map +1 -0
  10. package/dist/cjs/handlers/request/RequestHandlers.js +18 -0
  11. package/dist/cjs/handlers/request/RequestHandlers.js.map +1 -0
  12. package/dist/cjs/handlers/request/index.js +5 -0
  13. package/dist/cjs/handlers/request/index.js.map +1 -0
  14. package/dist/cjs/handlers/response/ResponseHandlerInterfaces.js.map +1 -0
  15. package/dist/cjs/handlers/{ResponseHandlers.js → response/ResponseHandlers.js} +3 -1
  16. package/dist/cjs/handlers/response/ResponseHandlers.js.map +1 -0
  17. package/dist/cjs/handlers/response/index.js +6 -0
  18. package/dist/cjs/handlers/response/index.js.map +1 -0
  19. package/dist/esm/APICore.js +4 -2
  20. package/dist/esm/APICore.js.map +1 -1
  21. package/dist/esm/PlatformClient.js +1 -1
  22. package/dist/esm/PlatformClient.js.map +1 -1
  23. package/dist/esm/handlers/index.js +2 -2
  24. package/dist/esm/handlers/index.js.map +1 -1
  25. package/dist/esm/handlers/request/RequestHandlerInterfaces.js +2 -0
  26. package/dist/esm/handlers/request/RequestHandlerInterfaces.js.map +1 -0
  27. package/dist/esm/handlers/request/RequestHandlers.js +14 -0
  28. package/dist/esm/handlers/request/RequestHandlers.js.map +1 -0
  29. package/dist/esm/handlers/request/index.js +2 -0
  30. package/dist/esm/handlers/request/index.js.map +1 -0
  31. package/dist/esm/handlers/response/ResponseHandlerInterfaces.js.map +1 -0
  32. package/dist/esm/handlers/{ResponseHandlers.js → response/ResponseHandlers.js} +3 -1
  33. package/dist/esm/handlers/response/ResponseHandlers.js.map +1 -0
  34. package/dist/esm/handlers/response/index.js +3 -0
  35. package/dist/esm/handlers/response/index.js.map +1 -0
  36. package/dist/types/ConfigurationInterfaces.d.ts +5 -1
  37. package/dist/types/PlatformClient.d.ts +7 -7
  38. package/dist/types/handlers/index.d.ts +2 -2
  39. package/dist/types/handlers/request/RequestHandlerInterfaces.d.ts +16 -0
  40. package/dist/types/handlers/request/RequestHandlers.d.ts +2 -0
  41. package/dist/types/handlers/request/index.d.ts +1 -0
  42. package/dist/types/handlers/{ResponseHandlerInterfaces.d.ts → response/ResponseHandlerInterfaces.d.ts} +1 -1
  43. package/dist/types/handlers/{ResponseHandlers.d.ts → response/ResponseHandlers.d.ts} +1 -1
  44. package/dist/types/handlers/response/index.d.ts +2 -0
  45. package/dist/types/resources/Resource.d.ts +1 -1
  46. package/dist/types/utils/types.d.ts +1 -1
  47. package/package.json +1 -1
  48. package/dist/cjs/handlers/ResponseHandlerInterfaces.js.map +0 -1
  49. package/dist/cjs/handlers/ResponseHandlers.js.map +0 -1
  50. package/dist/esm/handlers/ResponseHandlerInterfaces.js.map +0 -1
  51. package/dist/esm/handlers/ResponseHandlers.js.map +0 -1
  52. /package/dist/cjs/handlers/{ResponseHandlerInterfaces.js → response/ResponseHandlerInterfaces.js} +0 -0
  53. /package/dist/esm/handlers/{ResponseHandlerInterfaces.js → response/ResponseHandlerInterfaces.js} +0 -0
package/README.md CHANGED
@@ -140,6 +140,7 @@ This project is built using TypeScript and automatically generates relevant type
140
140
  | `environment` | optional | `'production'` | The target environment. If one of following: `'development'`, `'stg'` `'production'`, `'hipaa'`; automatically targets the associated host. |
141
141
  | `host` | optional | `'https://platform.cloud.coveo.com'` | The target host. Useful to target local hosts when testing. |
142
142
  | `serverlessHost` | optional | `'https://api.cloud.coveo.com'` | The target host for serverless APIs. |
143
+ | `requestHandlers` | optional | [] | Custom server request handlers. See [Request handling section](#request-handling). |
143
144
  | `responseHandlers` | optional | [] | Custom server response handlers. See [error handling section](#error-handling) for detailed explanation. |
144
145
  | `region` | optional | Region.US | The target region. |
145
146
 
@@ -169,6 +170,34 @@ const MySuccessResponseHandler: ResponseHandler = {
169
170
  }
170
171
  ```
171
172
 
173
+ ### Request handling
174
+
175
+ It is possible to define custom request handling for requests made by the `platform-client` if necessary. Similarly to what is described in [Error handling](#error-handling), you can define your own handlers with the help of `requestHandlers`. The order in which they are specified defines the order in which requests will be handled. However, unlike the error handling, all the provided request handlers will be applied to process requests.
176
+
177
+ A request handler is defined as such:
178
+
179
+ ```ts
180
+ interface RequestHandler {
181
+ canProcess(enrichedRequestInit: EnrichedRequestInit): boolean; // whether the handler should be used to process the request
182
+ process<T>(enrichedRequestInit: EnrichedRequestInit): EnrichedRequestInit; // defines how the handler processes the request
183
+ }
184
+ ```
185
+
186
+ Example
187
+
188
+ ```ts
189
+ const RandomRequestHandler: RequestHandler = {
190
+ canProcess: (enrichedRequestInit: EnrichedRequestInit): boolean => true,
191
+ process: (enrichedRequestInit: EnrichedRequestInit): EnrichedRequestInit => ({
192
+ ...enrichedRequestInit,
193
+ headers: {
194
+ ...enrichedRequestInit.headers,
195
+ 'X-Coveo-Platform-Client': 'some-value',
196
+ }
197
+ });
198
+ }
199
+ ```
200
+
172
201
  ### Ad hoc requests
173
202
 
174
203
  Sometimes, a specific `platform-client` configuration is required for a one-time task. In such use cases, we can leverage the `withFeatures()` method on the `platform-client` instance. This will prevent having to create a `new PlatformClient` instance for just one usage.
@@ -3,9 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
4
  const exponential_backoff_1 = require("exponential-backoff");
5
5
  const Endpoints_js_1 = tslib_1.__importStar(require("./Endpoints.js"));
6
- const ResponseHandlers_js_1 = tslib_1.__importDefault(require("./handlers/ResponseHandlers.js"));
6
+ const ResponseHandlers_js_1 = tslib_1.__importDefault(require("./handlers/response/ResponseHandlers.js"));
7
7
  const createFetcher_js_1 = require("./utils/createFetcher.js");
8
8
  const Retriever_js_1 = tslib_1.__importDefault(require("./utils/Retriever.js"));
9
+ const RequestHandlers_js_1 = require("./handlers/request/RequestHandlers.js");
9
10
  const HEADERS_JSON_CONTENT_TYPE = Object.freeze({ 'Content-Type': 'application/json' });
10
11
  /** Check whether the response status is `429 Too Many Requests`. */
11
12
  const isTooManyRequests = (response) => response.status === 429;
@@ -109,7 +110,8 @@ class API {
109
110
  return init;
110
111
  }
111
112
  async request(route, init, responseBodyFormat) {
112
- const fetcher = (0, createFetcher_js_1.createFetcher)(this.getUrlFromRoute(route), init, isTooManyRequests);
113
+ const { url: enrichedRoute, ...enrichedRequestInit } = (0, RequestHandlers_js_1.handleRequest)(route, init, this.config.requestHandlers);
114
+ const fetcher = (0, createFetcher_js_1.createFetcher)(this.getUrlFromRoute(enrichedRoute), enrichedRequestInit, isTooManyRequests);
113
115
  const response = await (0, exponential_backoff_1.backOff)(fetcher, { retry: isTooManyRequests });
114
116
  return (0, ResponseHandlers_js_1.default)(response, this.config.responseHandlers, responseBodyFormat);
115
117
  }
@@ -1 +1 @@
1
- {"version":3,"file":"APICore.js","sourceRoot":"","sources":["../../src/APICore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"APICore.js","sourceRoot":"","sources":["../../src/APICore.ts"],"names":[],"mappings":"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"}
@@ -4,11 +4,11 @@ exports.PlatformClient = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const APICore_js_1 = tslib_1.__importDefault(require("./APICore.js"));
6
6
  const Endpoints_js_1 = require("./Endpoints.js");
7
- const ResponseHandlers_js_1 = require("./handlers/ResponseHandlers.js");
7
+ const index_js_1 = require("./handlers/index.js");
8
8
  const PlatformResources_js_1 = tslib_1.__importDefault(require("./resources/PlatformResources.js"));
9
9
  class PlatformClient extends PlatformResources_js_1.default {
10
10
  options;
11
- static Handlers = ResponseHandlers_js_1.ResponseHandlers;
11
+ static Handlers = index_js_1.ResponseHandlers;
12
12
  static Environment = Endpoints_js_1.Environment;
13
13
  constructor(options) {
14
14
  super();
@@ -1 +1 @@
1
- {"version":3,"file":"PlatformClient.js","sourceRoot":"","sources":["../../src/PlatformClient.ts"],"names":[],"mappings":";;;;AAAA,sEAA+B;AAE/B,iDAA2C;AAC3C,wEAAgE;AAChE,oGAAiE;AAEjE,MAAa,cAAe,SAAQ,8BAAiB;IAI7B;IAHpB,MAAM,CAAC,QAAQ,GAAG,sCAAgB,CAAC;IACnC,MAAM,CAAC,WAAW,GAAG,0BAAW,CAAC;IAEjC,YAAoB,OAA8B;QAC9C,KAAK,EAAE,CAAC;QADQ,YAAO,GAAP,OAAO,CAAuB;QAG9C,IAAI,CAAC,GAAG,GAAG,IAAI,oBAAG,CAAC,OAAO,CAAC,CAAC;QAC5B,IAAI,CAAC,aAAa,GAAG,IAAI,oBAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAE5C,IAAI,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;IAED,YAAY,CAAC,GAAG,QAAmB;QAC/B,MAAM,cAAc,GAAG,IAAI,CAAC,WAAoC,CAAC;QACjE,MAAM,eAAe,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9F,OAAO,IAAI,cAAc,CAAC,eAAe,CAAS,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,UAAU;QACZ,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;IACjC,CAAC;IAED,uBAAuB;QACnB,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAC5B,IAAI,CAAC,aAAa,CAAC,gBAAgB,EAAE,CAAC;IAC1C,CAAC;;AA1BL,wCA2BC;AAED,kBAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"PlatformClient.js","sourceRoot":"","sources":["../../src/PlatformClient.ts"],"names":[],"mappings":";;;;AAAA,sEAA+B;AAE/B,iDAA2C;AAC3C,kDAAqD;AACrD,oGAAiE;AAEjE,MAAa,cAAe,SAAQ,8BAAiB;IAI7B;IAHpB,MAAM,CAAC,QAAQ,GAAG,2BAAgB,CAAC;IACnC,MAAM,CAAC,WAAW,GAAG,0BAAW,CAAC;IAEjC,YAAoB,OAA8B;QAC9C,KAAK,EAAE,CAAC;QADQ,YAAO,GAAP,OAAO,CAAuB;QAG9C,IAAI,CAAC,GAAG,GAAG,IAAI,oBAAG,CAAC,OAAO,CAAC,CAAC;QAC5B,IAAI,CAAC,aAAa,GAAG,IAAI,oBAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAE5C,IAAI,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;IAED,YAAY,CAAC,GAAG,QAAmB;QAC/B,MAAM,cAAc,GAAG,IAAI,CAAC,WAAoC,CAAC;QACjE,MAAM,eAAe,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9F,OAAO,IAAI,cAAc,CAAC,eAAe,CAAS,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,UAAU;QACZ,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;IACjC,CAAC;IAED,uBAAuB;QACnB,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAC5B,IAAI,CAAC,aAAa,CAAC,gBAAgB,EAAE,CAAC;IAC1C,CAAC;;AA1BL,wCA2BC;AAED,kBAAe,cAAc,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
- tslib_1.__exportStar(require("./ResponseHandlers.js"), exports);
5
- tslib_1.__exportStar(require("./ResponseHandlerInterfaces.js"), exports);
4
+ tslib_1.__exportStar(require("./response/index.js"), exports);
5
+ tslib_1.__exportStar(require("./request/index.js"), exports);
6
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/handlers/index.ts"],"names":[],"mappings":";;;AAAA,gEAAsC;AACtC,yEAA+C"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/handlers/index.ts"],"names":[],"mappings":";;;AAAA,8DAAoC;AACpC,6DAAmC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=RequestHandlerInterfaces.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RequestHandlerInterfaces.js","sourceRoot":"","sources":["../../../../src/handlers/request/RequestHandlerInterfaces.ts"],"names":[],"mappings":""}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.handleRequest = void 0;
4
+ const handleRequest = (url, requestInit, requestHandlers) => {
5
+ if (!requestHandlers || !requestHandlers?.length) {
6
+ return { ...requestInit, url };
7
+ }
8
+ return requestHandlers.reduce((enrichedOptions, currentHandler) => {
9
+ if (!currentHandler.hasOwnProperty('canProcess') || !currentHandler.hasOwnProperty('process')) {
10
+ return enrichedOptions;
11
+ }
12
+ return currentHandler.canProcess(enrichedOptions)
13
+ ? { ...enrichedOptions, ...currentHandler.process(enrichedOptions) }
14
+ : enrichedOptions;
15
+ }, { ...requestInit, url });
16
+ };
17
+ exports.handleRequest = handleRequest;
18
+ //# sourceMappingURL=RequestHandlers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RequestHandlers.js","sourceRoot":"","sources":["../../../../src/handlers/request/RequestHandlers.ts"],"names":[],"mappings":";;;AAEO,MAAM,aAAa,GAAG,CACzB,GAAW,EACX,WAAwB,EACxB,eAAkC,EACf,EAAE;IACrB,IAAI,CAAC,eAAe,IAAI,CAAC,eAAe,EAAE,MAAM,EAAE,CAAC;QAC/C,OAAO,EAAC,GAAG,WAAW,EAAE,GAAG,EAAC,CAAC;IACjC,CAAC;IAED,OAAO,eAAe,CAAC,MAAM,CACzB,CAAC,eAAoC,EAAE,cAA8B,EAAE,EAAE;QACrE,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC;YAC5F,OAAO,eAAe,CAAC;QAC3B,CAAC;QAED,OAAO,cAAc,CAAC,UAAU,CAAC,eAAe,CAAC;YAC7C,CAAC,CAAC,EAAC,GAAG,eAAe,EAAE,GAAG,cAAc,CAAC,OAAO,CAAC,eAAe,CAAC,EAAC;YAClE,CAAC,CAAC,eAAe,CAAC;IAC1B,CAAC,EACD,EAAC,GAAG,WAAW,EAAE,GAAG,EAAC,CACxB,CAAC;AACN,CAAC,CAAC;AArBW,QAAA,aAAa,iBAqBxB"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./RequestHandlerInterfaces.js"), exports);
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/handlers/request/index.ts"],"names":[],"mappings":";;;AAAA,wEAA8C"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResponseHandlerInterfaces.js","sourceRoot":"","sources":["../../../../src/handlers/response/ResponseHandlerInterfaces.ts"],"names":[],"mappings":""}
@@ -94,7 +94,9 @@ exports.ResponseHandlers = Object.freeze({
94
94
  });
95
95
  exports.default = async (response, customHandlers, responseBodyFormat) => {
96
96
  const handlers = customHandlers?.length ? customHandlers : defaultResponseHandlers;
97
- const handler = handlers.find((candidate) => candidate.canProcess(response));
97
+ const handler = handlers.find((candidate) => candidate.hasOwnProperty('canProcess') &&
98
+ candidate.hasOwnProperty('process') &&
99
+ candidate.canProcess(response));
98
100
  if (!handler) {
99
101
  throw new Error('No suitable response handler found');
100
102
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResponseHandlers.js","sourceRoot":"","sources":["../../../../src/handlers/response/ResponseHandlers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./ResponseHandlerInterfaces.js"), exports);
5
+ tslib_1.__exportStar(require("./ResponseHandlers.js"), exports);
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/handlers/response/index.ts"],"names":[],"mappings":";;;AAAA,yEAA+C;AAC/C,gEAAsC"}
@@ -1,8 +1,9 @@
1
1
  import { backOff } from 'exponential-backoff';
2
2
  import getEndpoint, { Environment, Region } from './Endpoints.js';
3
- import handleResponse from './handlers/ResponseHandlers.js';
3
+ import handleResponse from './handlers/response/ResponseHandlers.js';
4
4
  import { createFetcher } from './utils/createFetcher.js';
5
5
  import retrieve from './utils/Retriever.js';
6
+ import { handleRequest } from './handlers/request/RequestHandlers.js';
6
7
  const HEADERS_JSON_CONTENT_TYPE = Object.freeze({ 'Content-Type': 'application/json' });
7
8
  /** Check whether the response status is `429 Too Many Requests`. */
8
9
  const isTooManyRequests = (response) => response.status === 429;
@@ -106,7 +107,8 @@ export default class API {
106
107
  return init;
107
108
  }
108
109
  async request(route, init, responseBodyFormat) {
109
- const fetcher = createFetcher(this.getUrlFromRoute(route), init, isTooManyRequests);
110
+ const { url: enrichedRoute, ...enrichedRequestInit } = handleRequest(route, init, this.config.requestHandlers);
111
+ const fetcher = createFetcher(this.getUrlFromRoute(enrichedRoute), enrichedRequestInit, isTooManyRequests);
110
112
  const response = await backOff(fetcher, { retry: isTooManyRequests });
111
113
  return handleResponse(response, this.config.responseHandlers, responseBodyFormat);
112
114
  }
@@ -1 +1 @@
1
- {"version":3,"file":"APICore.js","sourceRoot":"","sources":["../../src/APICore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"APICore.js","sourceRoot":"","sources":["../../src/APICore.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import API from './APICore.js';
2
2
  import { Environment } from './Endpoints.js';
3
- import { ResponseHandlers } from './handlers/ResponseHandlers.js';
3
+ import { ResponseHandlers } from './handlers/index.js';
4
4
  import PlatformResources from './resources/PlatformResources.js';
5
5
  export class PlatformClient extends PlatformResources {
6
6
  options;
@@ -1 +1 @@
1
- {"version":3,"file":"PlatformClient.js","sourceRoot":"","sources":["../../src/PlatformClient.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,cAAc,CAAC;AAE/B,OAAO,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAC,gBAAgB,EAAC,MAAM,gCAAgC,CAAC;AAChE,OAAO,iBAAiB,MAAM,kCAAkC,CAAC;AAEjE,MAAM,OAAO,cAAe,SAAQ,iBAAiB;IAI7B;IAHpB,MAAM,CAAC,QAAQ,GAAG,gBAAgB,CAAC;IACnC,MAAM,CAAC,WAAW,GAAG,WAAW,CAAC;IAEjC,YAAoB,OAA8B;QAC9C,KAAK,EAAE,CAAC;QADQ,YAAO,GAAP,OAAO,CAAuB;QAG9C,IAAI,CAAC,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;QAC5B,IAAI,CAAC,aAAa,GAAG,IAAI,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAE5C,IAAI,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;IAED,YAAY,CAAC,GAAG,QAAmB;QAC/B,MAAM,cAAc,GAAG,IAAI,CAAC,WAAoC,CAAC;QACjE,MAAM,eAAe,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9F,OAAO,IAAI,cAAc,CAAC,eAAe,CAAS,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,UAAU;QACZ,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;IACjC,CAAC;IAED,uBAAuB;QACnB,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAC5B,IAAI,CAAC,aAAa,CAAC,gBAAgB,EAAE,CAAC;IAC1C,CAAC;;AAGL,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"PlatformClient.js","sourceRoot":"","sources":["../../src/PlatformClient.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,cAAc,CAAC;AAE/B,OAAO,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAC,gBAAgB,EAAC,MAAM,qBAAqB,CAAC;AACrD,OAAO,iBAAiB,MAAM,kCAAkC,CAAC;AAEjE,MAAM,OAAO,cAAe,SAAQ,iBAAiB;IAI7B;IAHpB,MAAM,CAAC,QAAQ,GAAG,gBAAgB,CAAC;IACnC,MAAM,CAAC,WAAW,GAAG,WAAW,CAAC;IAEjC,YAAoB,OAA8B;QAC9C,KAAK,EAAE,CAAC;QADQ,YAAO,GAAP,OAAO,CAAuB;QAG9C,IAAI,CAAC,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;QAC5B,IAAI,CAAC,aAAa,GAAG,IAAI,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAE5C,IAAI,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;IAED,YAAY,CAAC,GAAG,QAAmB;QAC/B,MAAM,cAAc,GAAG,IAAI,CAAC,WAAoC,CAAC;QACjE,MAAM,eAAe,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9F,OAAO,IAAI,cAAc,CAAC,eAAe,CAAS,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,UAAU;QACZ,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;IACjC,CAAC;IAED,uBAAuB;QACnB,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAC5B,IAAI,CAAC,aAAa,CAAC,gBAAgB,EAAE,CAAC;IAC1C,CAAC;;AAGL,eAAe,cAAc,CAAC"}
@@ -1,3 +1,3 @@
1
- export * from './ResponseHandlers.js';
2
- export * from './ResponseHandlerInterfaces.js';
1
+ export * from './response/index.js';
2
+ export * from './request/index.js';
3
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/handlers/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,gCAAgC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/handlers/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=RequestHandlerInterfaces.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RequestHandlerInterfaces.js","sourceRoot":"","sources":["../../../../src/handlers/request/RequestHandlerInterfaces.ts"],"names":[],"mappings":""}
@@ -0,0 +1,14 @@
1
+ export const handleRequest = (url, requestInit, requestHandlers) => {
2
+ if (!requestHandlers || !requestHandlers?.length) {
3
+ return { ...requestInit, url };
4
+ }
5
+ return requestHandlers.reduce((enrichedOptions, currentHandler) => {
6
+ if (!currentHandler.hasOwnProperty('canProcess') || !currentHandler.hasOwnProperty('process')) {
7
+ return enrichedOptions;
8
+ }
9
+ return currentHandler.canProcess(enrichedOptions)
10
+ ? { ...enrichedOptions, ...currentHandler.process(enrichedOptions) }
11
+ : enrichedOptions;
12
+ }, { ...requestInit, url });
13
+ };
14
+ //# sourceMappingURL=RequestHandlers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RequestHandlers.js","sourceRoot":"","sources":["../../../../src/handlers/request/RequestHandlers.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,aAAa,GAAG,CACzB,GAAW,EACX,WAAwB,EACxB,eAAkC,EACf,EAAE;IACrB,IAAI,CAAC,eAAe,IAAI,CAAC,eAAe,EAAE,MAAM,EAAE,CAAC;QAC/C,OAAO,EAAC,GAAG,WAAW,EAAE,GAAG,EAAC,CAAC;IACjC,CAAC;IAED,OAAO,eAAe,CAAC,MAAM,CACzB,CAAC,eAAoC,EAAE,cAA8B,EAAE,EAAE;QACrE,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC;YAC5F,OAAO,eAAe,CAAC;QAC3B,CAAC;QAED,OAAO,cAAc,CAAC,UAAU,CAAC,eAAe,CAAC;YAC7C,CAAC,CAAC,EAAC,GAAG,eAAe,EAAE,GAAG,cAAc,CAAC,OAAO,CAAC,eAAe,CAAC,EAAC;YAClE,CAAC,CAAC,eAAe,CAAC;IAC1B,CAAC,EACD,EAAC,GAAG,WAAW,EAAE,GAAG,EAAC,CACxB,CAAC;AACN,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './RequestHandlerInterfaces.js';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/handlers/request/index.ts"],"names":[],"mappings":"AAAA,cAAc,+BAA+B,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResponseHandlerInterfaces.js","sourceRoot":"","sources":["../../../../src/handlers/response/ResponseHandlerInterfaces.ts"],"names":[],"mappings":""}
@@ -89,7 +89,9 @@ export const ResponseHandlers = Object.freeze({
89
89
  });
90
90
  export default async (response, customHandlers, responseBodyFormat) => {
91
91
  const handlers = customHandlers?.length ? customHandlers : defaultResponseHandlers;
92
- const handler = handlers.find((candidate) => candidate.canProcess(response));
92
+ const handler = handlers.find((candidate) => candidate.hasOwnProperty('canProcess') &&
93
+ candidate.hasOwnProperty('process') &&
94
+ candidate.canProcess(response));
93
95
  if (!handler) {
94
96
  throw new Error('No suitable response handler found');
95
97
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResponseHandlers.js","sourceRoot":"","sources":["../../../../src/handlers/response/ResponseHandlers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export * from './ResponseHandlerInterfaces.js';
2
+ export * from './ResponseHandlers.js';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/handlers/response/index.ts"],"names":[],"mappings":"AAAA,cAAc,gCAAgC,CAAC;AAC/C,cAAc,uBAAuB,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { Environment, Region } from './Endpoints.js';
2
- import { ResponseHandler } from './handlers/ResponseHandlerInterfaces.js';
2
+ import { RequestHandler, ResponseHandler } from './handlers/index.js';
3
3
  import { Retrievable } from './utils/Retriever.js';
4
4
  export type Feature = (currentOptions: PlatformClientOptions) => PlatformClientOptions;
5
5
  export interface PlatformClientOptions {
@@ -9,6 +9,10 @@ export interface PlatformClientOptions {
9
9
  serverlessHost?: Retrievable<string>;
10
10
  environment?: Environment;
11
11
  region?: Region;
12
+ /**
13
+ * @experimental
14
+ */
15
+ requestHandlers?: RequestHandler[];
12
16
  responseHandlers?: ResponseHandler[];
13
17
  globalRequestSettings?: RequestInit;
14
18
  }
@@ -4,13 +4,13 @@ import PlatformResources from './resources/PlatformResources.js';
4
4
  export declare class PlatformClient extends PlatformResources {
5
5
  private options;
6
6
  static Handlers: Readonly<{
7
- noContent: import("./Entry.js").ResponseHandler;
8
- success: import("./Entry.js").ResponseHandler;
9
- successBlob: import("./Entry.js").ResponseHandler;
10
- blockedByWAF: import("./Entry.js").ResponseHandler;
11
- badGateway: import("./Entry.js").ResponseHandler;
12
- htmlError: import("./Entry.js").ResponseHandler;
13
- error: import("./Entry.js").ResponseHandler;
7
+ noContent: import("./handlers/index.js").ResponseHandler;
8
+ success: import("./handlers/index.js").ResponseHandler;
9
+ successBlob: import("./handlers/index.js").ResponseHandler;
10
+ blockedByWAF: import("./handlers/index.js").ResponseHandler;
11
+ badGateway: import("./handlers/index.js").ResponseHandler;
12
+ htmlError: import("./handlers/index.js").ResponseHandler;
13
+ error: import("./handlers/index.js").ResponseHandler;
14
14
  }>;
15
15
  static Environment: typeof Environment;
16
16
  constructor(options: PlatformClientOptions);
@@ -1,2 +1,2 @@
1
- export * from './ResponseHandlers.js';
2
- export * from './ResponseHandlerInterfaces.js';
1
+ export * from './response/index.js';
2
+ export * from './request/index.js';
@@ -0,0 +1,16 @@
1
+ import { Predicate } from '../../utils/types.js';
2
+ export interface EnrichedRequestInit extends RequestInit {
3
+ url: string;
4
+ }
5
+ export interface RequestHandler {
6
+ /**
7
+ * Whether this handler can process the request.
8
+ */
9
+ canProcess: Predicate<EnrichedRequestInit>;
10
+ /**
11
+ * How to process the requests.
12
+ *
13
+ * @param request The [request object](https://developer.mozilla.org/en-US/docs/Web/API/Request).
14
+ */
15
+ process(request: EnrichedRequestInit): EnrichedRequestInit;
16
+ }
@@ -0,0 +1,2 @@
1
+ import { EnrichedRequestInit, RequestHandler } from './RequestHandlerInterfaces.js';
2
+ export declare const handleRequest: (url: string, requestInit: RequestInit, requestHandlers?: RequestHandler[]) => EnrichedRequestInit;
@@ -0,0 +1 @@
1
+ export * from './RequestHandlerInterfaces.js';
@@ -1,4 +1,4 @@
1
- import { Predicate } from '../utils/types.js';
1
+ import { Predicate } from '../../utils/types.js';
2
2
  /**
3
3
  * Each format represents one of the [Response object instance methods](https://developer.mozilla.org/en-US/docs/Web/API/Response#instance_methods).
4
4
  */
@@ -1,4 +1,4 @@
1
- import { Predicate } from '../utils/types.js';
1
+ import { Predicate } from '../../utils/types.js';
2
2
  import { ResponseBodyFormat, ResponseHandler } from './ResponseHandlerInterfaces.js';
3
3
  /** Check whether the response status is `204 No Content`. */
4
4
  export declare const isNoContent: Predicate<Response>;
@@ -0,0 +1,2 @@
1
+ export * from './ResponseHandlerInterfaces.js';
2
+ export * from './ResponseHandlers.js';
@@ -1,5 +1,5 @@
1
1
  import API from '../APICore.js';
2
- import queryString from '#query-string';
2
+ import queryString from 'query-string-esm';
3
3
  declare class Resource {
4
4
  protected api: API;
5
5
  protected serverlessApi: API;
@@ -1,4 +1,4 @@
1
- import { ResponseBodyFormat } from '../handlers/ResponseHandlerInterfaces.js';
1
+ import { ResponseBodyFormat } from '../handlers/index.js';
2
2
  export interface AsyncSupplier<T> {
3
3
  (): Promise<T>;
4
4
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@coveo/platform-client",
3
- "version": "52.5.0",
3
+ "version": "52.6.1",
4
4
  "description": "",
5
5
  "type": "module",
6
6
  "exports": {
@@ -1 +0,0 @@
1
- {"version":3,"file":"ResponseHandlerInterfaces.js","sourceRoot":"","sources":["../../../src/handlers/ResponseHandlerInterfaces.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ResponseHandlers.js","sourceRoot":"","sources":["../../../src/handlers/ResponseHandlers.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ResponseHandlerInterfaces.js","sourceRoot":"","sources":["../../../src/handlers/ResponseHandlerInterfaces.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ResponseHandlers.js","sourceRoot":"","sources":["../../../src/handlers/ResponseHandlers.ts"],"names":[],"mappings":"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"}