@algolia/client-search 5.0.0-alpha.102 → 5.0.0-alpha.103

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.
@@ -2,9 +2,10 @@
2
2
 
3
3
  var clientCommon = require('@algolia/client-common');
4
4
  var requesterNodeHttp = require('@algolia/requester-node-http');
5
+ var crypto = require('crypto');
5
6
 
6
7
  // Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
7
- const apiClientVersion = '5.0.0-alpha.102';
8
+ const apiClientVersion = '5.0.0-alpha.103';
8
9
  function getDefaultHosts(appId) {
9
10
  return [
10
11
  {
@@ -90,7 +91,7 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
90
91
  * Helper: Wait for a task to be published (completed) for a given `indexName` and `taskID`.
91
92
  *
92
93
  * @summary Helper method that waits for a task to be published (completed).
93
- * @param waitForTaskOptions - The waitForTaskOptions object.
94
+ * @param waitForTaskOptions - The `waitForTaskOptions` object.
94
95
  * @param waitForTaskOptions.indexName - The `indexName` where the operation was performed.
95
96
  * @param waitForTaskOptions.taskID - The `taskID` returned in the method response.
96
97
  * @param waitForTaskOptions.maxRetries - The maximum number of retries. 50 by default.
@@ -114,7 +115,7 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
114
115
  * Helper: Wait for an API key to be added, updated or deleted based on a given `operation`.
115
116
  *
116
117
  * @summary Helper method that waits for an API key task to be processed.
117
- * @param waitForApiKeyOptions - The waitForApiKeyOptions object.
118
+ * @param waitForApiKeyOptions - The `waitForApiKeyOptions` object.
118
119
  * @param waitForApiKeyOptions.operation - The `operation` that was done on a `key`.
119
120
  * @param waitForApiKeyOptions.key - The `key` that has been added, deleted or updated.
120
121
  * @param waitForApiKeyOptions.apiKey - Necessary to know if an `update` operation has been processed, compare fields of the response with it.
@@ -167,7 +168,7 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
167
168
  * Helper: Iterate on the `browse` method of the client to allow aggregating objects of an index.
168
169
  *
169
170
  * @summary Helper method that iterates on the `browse` method.
170
- * @param browseObjects - The browseObjects object.
171
+ * @param browseObjects - The `browseObjects` object.
171
172
  * @param browseObjects.indexName - The index in which to perform the request.
172
173
  * @param browseObjects.browseParams - The `browse` parameters.
173
174
  * @param browseObjects.validate - The validator function. It receive the resolved return of the API call. By default, stops when there is no `cursor` in the response.
@@ -193,11 +194,11 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
193
194
  * Helper: Iterate on the `searchRules` method of the client to allow aggregating rules of an index.
194
195
  *
195
196
  * @summary Helper method that iterates on the `searchRules` method.
196
- * @param browseObjects - The browseObjects object.
197
- * @param browseObjects.indexName - The index in which to perform the request.
198
- * @param browseObjects.searchRulesParams - The `searchRules` method parameters.
199
- * @param browseObjects.validate - The validator function. It receive the resolved return of the API call. By default, stops when there is less hits returned than the number of maximum hits (1000).
200
- * @param browseObjects.aggregator - The function that runs right after the API call has been resolved, allows you to do anything with the response before `validate`.
197
+ * @param browseRules - The `browseRules` object.
198
+ * @param browseRules.indexName - The index in which to perform the request.
199
+ * @param browseRules.searchRulesParams - The `searchRules` method parameters.
200
+ * @param browseRules.validate - The validator function. It receive the resolved return of the API call. By default, stops when there is less hits returned than the number of maximum hits (1000).
201
+ * @param browseRules.aggregator - The function that runs right after the API call has been resolved, allows you to do anything with the response before `validate`.
201
202
  * @param requestOptions - The requestOptions to send along with the query, they will be forwarded to the `searchRules` method and merged with the transporter requestOptions.
202
203
  */
203
204
  browseRules({ indexName, searchRulesParams, ...browseRulesOptions }, requestOptions) {
@@ -225,11 +226,11 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
225
226
  * Helper: Iterate on the `searchSynonyms` method of the client to allow aggregating rules of an index.
226
227
  *
227
228
  * @summary Helper method that iterates on the `searchSynonyms` method.
228
- * @param browseObjects - The browseObjects object.
229
- * @param browseObjects.indexName - The index in which to perform the request.
230
- * @param browseObjects.validate - The validator function. It receive the resolved return of the API call. By default, stops when there is less hits returned than the number of maximum hits (1000).
231
- * @param browseObjects.aggregator - The function that runs right after the API call has been resolved, allows you to do anything with the response before `validate`.
232
- * @param browseObjects.searchSynonymsParams - The `searchSynonyms` method parameters.
229
+ * @param browseSynonyms - The `browseSynonyms` object.
230
+ * @param browseSynonyms.indexName - The index in which to perform the request.
231
+ * @param browseSynonyms.validate - The validator function. It receive the resolved return of the API call. By default, stops when there is less hits returned than the number of maximum hits (1000).
232
+ * @param browseSynonyms.aggregator - The function that runs right after the API call has been resolved, allows you to do anything with the response before `validate`.
233
+ * @param browseSynonyms.searchSynonymsParams - The `searchSynonyms` method parameters.
233
234
  * @param requestOptions - The requestOptions to send along with the query, they will be forwarded to the `searchSynonyms` method and merged with the transporter requestOptions.
234
235
  */
235
236
  browseSynonyms({ indexName, searchSynonymsParams, ...browseSynonymsOptions }, requestOptions) {
@@ -239,16 +240,16 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
239
240
  hitsPerPage: 1000,
240
241
  };
241
242
  return clientCommon.createIterablePromise({
242
- func: (previousResponse) => {
243
- return this.searchSynonyms({
243
+ func: (_) => {
244
+ const resp = this.searchSynonyms({
244
245
  indexName,
245
246
  searchSynonymsParams: {
246
247
  ...params,
247
- page: previousResponse
248
- ? previousResponse.page + 1
249
- : params.page,
248
+ page: params.page,
250
249
  },
251
250
  }, requestOptions);
251
+ params.page += 1;
252
+ return resp;
252
253
  },
253
254
  validate: (response) => response.nbHits < params.hitsPerPage,
254
255
  ...browseSynonymsOptions,
@@ -276,6 +277,101 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
276
277
  searchForFacets(searchMethodParams, requestOptions) {
277
278
  return this.search(searchMethodParams, requestOptions);
278
279
  },
280
+ /**
281
+ * Helper: Generates a secured API key based on the given `parentApiKey` and given `restrictions`.
282
+ *
283
+ * @summary Helper: Generates a secured API key based on the given `parentApiKey` and given `restrictions`.
284
+ * @param generateSecuredApiKey - The `generateSecuredApiKey` object.
285
+ * @param generateSecuredApiKey.parentApiKey - The base API key from which to generate the new secured one.
286
+ * @param generateSecuredApiKey.restrictions - A set of properties defining the restrictions of the secured API key.
287
+ */
288
+ generateSecuredApiKey({ parentApiKey, restrictions = {}, }) {
289
+ const queryParameters = clientCommon.serializeQueryParameters(restrictions);
290
+ return Buffer.from(crypto.createHmac('sha256', parentApiKey)
291
+ .update(queryParameters)
292
+ .digest('hex') + queryParameters).toString('base64');
293
+ },
294
+ /**
295
+ * Helper: Retrieves the remaining validity of the previous generated `secured_api_key`, the `ValidUntil` parameter must have been provided.
296
+ *
297
+ * @summary Helper: Retrieves the remaining validity of the previous generated `secured_api_key`, the `ValidUntil` parameter must have been provided.
298
+ * @param getSecuredApiKeyRemainingValidity - The `getSecuredApiKeyRemainingValidity` object.
299
+ * @param getSecuredApiKeyRemainingValidity.securedApiKey - The secured API key generated with the `generateSecuredApiKey` method.
300
+ */
301
+ getSecuredApiKeyRemainingValidity({ securedApiKey, }) {
302
+ const decodedString = Buffer.from(securedApiKey, 'base64').toString('ascii');
303
+ const regex = /validUntil=(\d+)/;
304
+ const match = decodedString.match(regex);
305
+ if (match === null) {
306
+ throw new Error('ValidUntil not found in given secured api key.');
307
+ }
308
+ return parseInt(match[1], 10) - Math.round(new Date().getTime() / 1000);
309
+ },
310
+ /**
311
+ * Helper: Chunks the given `objects` list in subset of 1000 elements max in order to make it fit in `batch` requests.
312
+ *
313
+ * @summary Helper: Chunks the given `objects` list in subset of 1000 elements max in order to make it fit in `batch` requests. * @param getSecuredApiKeyRemainingValidity - The `getSecuredApiKeyRemainingValidity` object.
314
+ * @param chunkedBatch - The `chunkedBatch` object.
315
+ * @param chunkedBatch.indexName - The `indexName` to replace `objects` in.
316
+ * @param chunkedBatch.objects - The array of `objects` to store in the given Algolia `indexName`.
317
+ * @param chunkedBatch.action - The `batch` `action` to perform on the given array of `objects`, defaults to `addObject`.
318
+ * @param chunkedBatch.waitForTasks - Whether or not we should wait until every `batch` tasks has been processed, this operation may slow the total execution time of this method but is more reliable.
319
+ * @param chunkedBatch.batchSize - The size of the chunk of `objects`. The number of `batch` calls will be equal to `length(objects) / batchSize`. Defaults to 1000.
320
+ * @param requestOptions - The requestOptions to send along with the query, they will be forwarded to the `getTask` method and merged with the transporter requestOptions.
321
+ */
322
+ async chunkedBatch({ indexName, objects, action = 'addObject', waitForTasks, batchSize = 1000, }, requestOptions) {
323
+ let requests = [];
324
+ const responses = [];
325
+ for (const [i, obj] of objects.entries()) {
326
+ requests.push({ action, body: obj });
327
+ if (i % batchSize === 0) {
328
+ responses.push(await this.batch({ indexName, batchWriteParams: { requests } }, requestOptions));
329
+ requests = [];
330
+ }
331
+ }
332
+ if (waitForTasks) {
333
+ for (const resp of responses) {
334
+ await this.waitForTask({ indexName, taskID: resp.taskID });
335
+ }
336
+ }
337
+ return responses;
338
+ },
339
+ /**
340
+ * Helper: Replaces all objects (records) in the given `index_name` with the given `objects`. A temporary index is created during this process in order to backup your data.
341
+ *
342
+ * @summary Helper: Replaces all objects (records) in the given `index_name` with the given `objects`. A temporary index is created during this process in order to backup your data.
343
+ * @param replaceAllObjects - The `replaceAllObjects` object.
344
+ * @param replaceAllObjects.indexName - The `indexName` to replace `objects` in.
345
+ * @param replaceAllObjects.objects - The array of `objects` to store in the given Algolia `indexName`.
346
+ * @param replaceAllObjects.batchSize - The size of the chunk of `objects`. The number of `batch` calls will be equal to `length(objects) / batchSize`. Defaults to 1000.
347
+ * @param requestOptions - The requestOptions to send along with the query, they will be forwarded to the `getTask` method and merged with the transporter requestOptions.
348
+ */
349
+ async replaceAllObjects({ indexName, objects, batchSize }, requestOptions) {
350
+ const randomSuffix = Math.random().toString(36).substring(7);
351
+ const tmpIndexName = `${indexName}_tmp_${randomSuffix}`;
352
+ const copyOperationResponse = await this.operationIndex({
353
+ indexName,
354
+ operationIndexParams: {
355
+ operation: 'copy',
356
+ destination: tmpIndexName,
357
+ scope: ['settings', 'rules', 'synonyms'],
358
+ },
359
+ }, requestOptions);
360
+ await this.waitForTask({
361
+ indexName,
362
+ taskID: copyOperationResponse.taskID,
363
+ });
364
+ const batchResponses = await this.chunkedBatch({ indexName: tmpIndexName, objects, waitForTasks: true, batchSize }, requestOptions);
365
+ const moveOperationResponse = await this.operationIndex({
366
+ indexName: tmpIndexName,
367
+ operationIndexParams: { operation: 'move', destination: indexName },
368
+ }, requestOptions);
369
+ await this.waitForTask({
370
+ indexName,
371
+ taskID: moveOperationResponse.taskID,
372
+ });
373
+ return { copyOperationResponse, batchResponses, moveOperationResponse };
374
+ },
279
375
  /**
280
376
  * Add a new API key with specific permissions and restrictions. The request must be authenticated with the admin API key. The response returns an API key string.
281
377
  *
@@ -1,3 +1,5 @@
1
+ import { createHmac } from 'crypto';
2
+
1
3
  function createAuth(appId, apiKey, authMode = 'WithinHeaders') {
2
4
  const credentials = {
3
5
  'x-algolia-api-key': apiKey,
@@ -321,7 +323,7 @@ function shuffle(array) {
321
323
  }
322
324
  function serializeUrl(host, path, queryParameters) {
323
325
  const queryParametersAsString = serializeQueryParameters(queryParameters);
324
- let url = `${host.protocol}://${host.url}${host.port ? `:${host.port}` : ''}/${path.charAt(0) === '/' ? path.substr(1) : path}`;
326
+ let url = `${host.protocol}://${host.url}${host.port ? `:${host.port}` : ''}/${path.charAt(0) === '/' ? path.substring(1) : path}`;
325
327
  if (queryParametersAsString.length) {
326
328
  url += `?${queryParametersAsString}`;
327
329
  }
@@ -737,7 +739,7 @@ function createXhrRequester() {
737
739
  }
738
740
 
739
741
  // Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
740
- const apiClientVersion = '5.0.0-alpha.102';
742
+ const apiClientVersion = '5.0.0-alpha.103';
741
743
  function getDefaultHosts(appId) {
742
744
  return [
743
745
  {
@@ -823,7 +825,7 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
823
825
  * Helper: Wait for a task to be published (completed) for a given `indexName` and `taskID`.
824
826
  *
825
827
  * @summary Helper method that waits for a task to be published (completed).
826
- * @param waitForTaskOptions - The waitForTaskOptions object.
828
+ * @param waitForTaskOptions - The `waitForTaskOptions` object.
827
829
  * @param waitForTaskOptions.indexName - The `indexName` where the operation was performed.
828
830
  * @param waitForTaskOptions.taskID - The `taskID` returned in the method response.
829
831
  * @param waitForTaskOptions.maxRetries - The maximum number of retries. 50 by default.
@@ -847,7 +849,7 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
847
849
  * Helper: Wait for an API key to be added, updated or deleted based on a given `operation`.
848
850
  *
849
851
  * @summary Helper method that waits for an API key task to be processed.
850
- * @param waitForApiKeyOptions - The waitForApiKeyOptions object.
852
+ * @param waitForApiKeyOptions - The `waitForApiKeyOptions` object.
851
853
  * @param waitForApiKeyOptions.operation - The `operation` that was done on a `key`.
852
854
  * @param waitForApiKeyOptions.key - The `key` that has been added, deleted or updated.
853
855
  * @param waitForApiKeyOptions.apiKey - Necessary to know if an `update` operation has been processed, compare fields of the response with it.
@@ -900,7 +902,7 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
900
902
  * Helper: Iterate on the `browse` method of the client to allow aggregating objects of an index.
901
903
  *
902
904
  * @summary Helper method that iterates on the `browse` method.
903
- * @param browseObjects - The browseObjects object.
905
+ * @param browseObjects - The `browseObjects` object.
904
906
  * @param browseObjects.indexName - The index in which to perform the request.
905
907
  * @param browseObjects.browseParams - The `browse` parameters.
906
908
  * @param browseObjects.validate - The validator function. It receive the resolved return of the API call. By default, stops when there is no `cursor` in the response.
@@ -926,11 +928,11 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
926
928
  * Helper: Iterate on the `searchRules` method of the client to allow aggregating rules of an index.
927
929
  *
928
930
  * @summary Helper method that iterates on the `searchRules` method.
929
- * @param browseObjects - The browseObjects object.
930
- * @param browseObjects.indexName - The index in which to perform the request.
931
- * @param browseObjects.searchRulesParams - The `searchRules` method parameters.
932
- * @param browseObjects.validate - The validator function. It receive the resolved return of the API call. By default, stops when there is less hits returned than the number of maximum hits (1000).
933
- * @param browseObjects.aggregator - The function that runs right after the API call has been resolved, allows you to do anything with the response before `validate`.
931
+ * @param browseRules - The `browseRules` object.
932
+ * @param browseRules.indexName - The index in which to perform the request.
933
+ * @param browseRules.searchRulesParams - The `searchRules` method parameters.
934
+ * @param browseRules.validate - The validator function. It receive the resolved return of the API call. By default, stops when there is less hits returned than the number of maximum hits (1000).
935
+ * @param browseRules.aggregator - The function that runs right after the API call has been resolved, allows you to do anything with the response before `validate`.
934
936
  * @param requestOptions - The requestOptions to send along with the query, they will be forwarded to the `searchRules` method and merged with the transporter requestOptions.
935
937
  */
936
938
  browseRules({ indexName, searchRulesParams, ...browseRulesOptions }, requestOptions) {
@@ -958,11 +960,11 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
958
960
  * Helper: Iterate on the `searchSynonyms` method of the client to allow aggregating rules of an index.
959
961
  *
960
962
  * @summary Helper method that iterates on the `searchSynonyms` method.
961
- * @param browseObjects - The browseObjects object.
962
- * @param browseObjects.indexName - The index in which to perform the request.
963
- * @param browseObjects.validate - The validator function. It receive the resolved return of the API call. By default, stops when there is less hits returned than the number of maximum hits (1000).
964
- * @param browseObjects.aggregator - The function that runs right after the API call has been resolved, allows you to do anything with the response before `validate`.
965
- * @param browseObjects.searchSynonymsParams - The `searchSynonyms` method parameters.
963
+ * @param browseSynonyms - The `browseSynonyms` object.
964
+ * @param browseSynonyms.indexName - The index in which to perform the request.
965
+ * @param browseSynonyms.validate - The validator function. It receive the resolved return of the API call. By default, stops when there is less hits returned than the number of maximum hits (1000).
966
+ * @param browseSynonyms.aggregator - The function that runs right after the API call has been resolved, allows you to do anything with the response before `validate`.
967
+ * @param browseSynonyms.searchSynonymsParams - The `searchSynonyms` method parameters.
966
968
  * @param requestOptions - The requestOptions to send along with the query, they will be forwarded to the `searchSynonyms` method and merged with the transporter requestOptions.
967
969
  */
968
970
  browseSynonyms({ indexName, searchSynonymsParams, ...browseSynonymsOptions }, requestOptions) {
@@ -972,16 +974,16 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
972
974
  hitsPerPage: 1000,
973
975
  };
974
976
  return createIterablePromise({
975
- func: (previousResponse) => {
976
- return this.searchSynonyms({
977
+ func: (_) => {
978
+ const resp = this.searchSynonyms({
977
979
  indexName,
978
980
  searchSynonymsParams: {
979
981
  ...params,
980
- page: previousResponse
981
- ? previousResponse.page + 1
982
- : params.page,
982
+ page: params.page,
983
983
  },
984
984
  }, requestOptions);
985
+ params.page += 1;
986
+ return resp;
985
987
  },
986
988
  validate: (response) => response.nbHits < params.hitsPerPage,
987
989
  ...browseSynonymsOptions,
@@ -1009,6 +1011,101 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
1009
1011
  searchForFacets(searchMethodParams, requestOptions) {
1010
1012
  return this.search(searchMethodParams, requestOptions);
1011
1013
  },
1014
+ /**
1015
+ * Helper: Generates a secured API key based on the given `parentApiKey` and given `restrictions`.
1016
+ *
1017
+ * @summary Helper: Generates a secured API key based on the given `parentApiKey` and given `restrictions`.
1018
+ * @param generateSecuredApiKey - The `generateSecuredApiKey` object.
1019
+ * @param generateSecuredApiKey.parentApiKey - The base API key from which to generate the new secured one.
1020
+ * @param generateSecuredApiKey.restrictions - A set of properties defining the restrictions of the secured API key.
1021
+ */
1022
+ generateSecuredApiKey({ parentApiKey, restrictions = {}, }) {
1023
+ const queryParameters = serializeQueryParameters(restrictions);
1024
+ return Buffer.from(createHmac('sha256', parentApiKey)
1025
+ .update(queryParameters)
1026
+ .digest('hex') + queryParameters).toString('base64');
1027
+ },
1028
+ /**
1029
+ * Helper: Retrieves the remaining validity of the previous generated `secured_api_key`, the `ValidUntil` parameter must have been provided.
1030
+ *
1031
+ * @summary Helper: Retrieves the remaining validity of the previous generated `secured_api_key`, the `ValidUntil` parameter must have been provided.
1032
+ * @param getSecuredApiKeyRemainingValidity - The `getSecuredApiKeyRemainingValidity` object.
1033
+ * @param getSecuredApiKeyRemainingValidity.securedApiKey - The secured API key generated with the `generateSecuredApiKey` method.
1034
+ */
1035
+ getSecuredApiKeyRemainingValidity({ securedApiKey, }) {
1036
+ const decodedString = Buffer.from(securedApiKey, 'base64').toString('ascii');
1037
+ const regex = /validUntil=(\d+)/;
1038
+ const match = decodedString.match(regex);
1039
+ if (match === null) {
1040
+ throw new Error('ValidUntil not found in given secured api key.');
1041
+ }
1042
+ return parseInt(match[1], 10) - Math.round(new Date().getTime() / 1000);
1043
+ },
1044
+ /**
1045
+ * Helper: Chunks the given `objects` list in subset of 1000 elements max in order to make it fit in `batch` requests.
1046
+ *
1047
+ * @summary Helper: Chunks the given `objects` list in subset of 1000 elements max in order to make it fit in `batch` requests. * @param getSecuredApiKeyRemainingValidity - The `getSecuredApiKeyRemainingValidity` object.
1048
+ * @param chunkedBatch - The `chunkedBatch` object.
1049
+ * @param chunkedBatch.indexName - The `indexName` to replace `objects` in.
1050
+ * @param chunkedBatch.objects - The array of `objects` to store in the given Algolia `indexName`.
1051
+ * @param chunkedBatch.action - The `batch` `action` to perform on the given array of `objects`, defaults to `addObject`.
1052
+ * @param chunkedBatch.waitForTasks - Whether or not we should wait until every `batch` tasks has been processed, this operation may slow the total execution time of this method but is more reliable.
1053
+ * @param chunkedBatch.batchSize - The size of the chunk of `objects`. The number of `batch` calls will be equal to `length(objects) / batchSize`. Defaults to 1000.
1054
+ * @param requestOptions - The requestOptions to send along with the query, they will be forwarded to the `getTask` method and merged with the transporter requestOptions.
1055
+ */
1056
+ async chunkedBatch({ indexName, objects, action = 'addObject', waitForTasks, batchSize = 1000, }, requestOptions) {
1057
+ let requests = [];
1058
+ const responses = [];
1059
+ for (const [i, obj] of objects.entries()) {
1060
+ requests.push({ action, body: obj });
1061
+ if (i % batchSize === 0) {
1062
+ responses.push(await this.batch({ indexName, batchWriteParams: { requests } }, requestOptions));
1063
+ requests = [];
1064
+ }
1065
+ }
1066
+ if (waitForTasks) {
1067
+ for (const resp of responses) {
1068
+ await this.waitForTask({ indexName, taskID: resp.taskID });
1069
+ }
1070
+ }
1071
+ return responses;
1072
+ },
1073
+ /**
1074
+ * Helper: Replaces all objects (records) in the given `index_name` with the given `objects`. A temporary index is created during this process in order to backup your data.
1075
+ *
1076
+ * @summary Helper: Replaces all objects (records) in the given `index_name` with the given `objects`. A temporary index is created during this process in order to backup your data.
1077
+ * @param replaceAllObjects - The `replaceAllObjects` object.
1078
+ * @param replaceAllObjects.indexName - The `indexName` to replace `objects` in.
1079
+ * @param replaceAllObjects.objects - The array of `objects` to store in the given Algolia `indexName`.
1080
+ * @param replaceAllObjects.batchSize - The size of the chunk of `objects`. The number of `batch` calls will be equal to `length(objects) / batchSize`. Defaults to 1000.
1081
+ * @param requestOptions - The requestOptions to send along with the query, they will be forwarded to the `getTask` method and merged with the transporter requestOptions.
1082
+ */
1083
+ async replaceAllObjects({ indexName, objects, batchSize }, requestOptions) {
1084
+ const randomSuffix = Math.random().toString(36).substring(7);
1085
+ const tmpIndexName = `${indexName}_tmp_${randomSuffix}`;
1086
+ const copyOperationResponse = await this.operationIndex({
1087
+ indexName,
1088
+ operationIndexParams: {
1089
+ operation: 'copy',
1090
+ destination: tmpIndexName,
1091
+ scope: ['settings', 'rules', 'synonyms'],
1092
+ },
1093
+ }, requestOptions);
1094
+ await this.waitForTask({
1095
+ indexName,
1096
+ taskID: copyOperationResponse.taskID,
1097
+ });
1098
+ const batchResponses = await this.chunkedBatch({ indexName: tmpIndexName, objects, waitForTasks: true, batchSize }, requestOptions);
1099
+ const moveOperationResponse = await this.operationIndex({
1100
+ indexName: tmpIndexName,
1101
+ operationIndexParams: { operation: 'move', destination: indexName },
1102
+ }, requestOptions);
1103
+ await this.waitForTask({
1104
+ indexName,
1105
+ taskID: moveOperationResponse.taskID,
1106
+ });
1107
+ return { copyOperationResponse, batchResponses, moveOperationResponse };
1108
+ },
1012
1109
  /**
1013
1110
  * Add a new API key with specific permissions and restrictions. The request must be authenticated with the admin API key. The response returns an API key string.
1014
1111
  *
@@ -1,8 +1,9 @@
1
- import { createAuth, createTransporter, getAlgoliaAgent, createIterablePromise, shuffle, DEFAULT_CONNECT_TIMEOUT_NODE, DEFAULT_READ_TIMEOUT_NODE, DEFAULT_WRITE_TIMEOUT_NODE, createNullCache, createMemoryCache } from '@algolia/client-common';
1
+ import { createAuth, createTransporter, getAlgoliaAgent, createIterablePromise, serializeQueryParameters, shuffle, DEFAULT_CONNECT_TIMEOUT_NODE, DEFAULT_READ_TIMEOUT_NODE, DEFAULT_WRITE_TIMEOUT_NODE, createNullCache, createMemoryCache } from '@algolia/client-common';
2
2
  import { createHttpRequester } from '@algolia/requester-node-http';
3
+ import { createHmac } from 'crypto';
3
4
 
4
5
  // Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
5
- const apiClientVersion = '5.0.0-alpha.102';
6
+ const apiClientVersion = '5.0.0-alpha.103';
6
7
  function getDefaultHosts(appId) {
7
8
  return [
8
9
  {
@@ -88,7 +89,7 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
88
89
  * Helper: Wait for a task to be published (completed) for a given `indexName` and `taskID`.
89
90
  *
90
91
  * @summary Helper method that waits for a task to be published (completed).
91
- * @param waitForTaskOptions - The waitForTaskOptions object.
92
+ * @param waitForTaskOptions - The `waitForTaskOptions` object.
92
93
  * @param waitForTaskOptions.indexName - The `indexName` where the operation was performed.
93
94
  * @param waitForTaskOptions.taskID - The `taskID` returned in the method response.
94
95
  * @param waitForTaskOptions.maxRetries - The maximum number of retries. 50 by default.
@@ -112,7 +113,7 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
112
113
  * Helper: Wait for an API key to be added, updated or deleted based on a given `operation`.
113
114
  *
114
115
  * @summary Helper method that waits for an API key task to be processed.
115
- * @param waitForApiKeyOptions - The waitForApiKeyOptions object.
116
+ * @param waitForApiKeyOptions - The `waitForApiKeyOptions` object.
116
117
  * @param waitForApiKeyOptions.operation - The `operation` that was done on a `key`.
117
118
  * @param waitForApiKeyOptions.key - The `key` that has been added, deleted or updated.
118
119
  * @param waitForApiKeyOptions.apiKey - Necessary to know if an `update` operation has been processed, compare fields of the response with it.
@@ -165,7 +166,7 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
165
166
  * Helper: Iterate on the `browse` method of the client to allow aggregating objects of an index.
166
167
  *
167
168
  * @summary Helper method that iterates on the `browse` method.
168
- * @param browseObjects - The browseObjects object.
169
+ * @param browseObjects - The `browseObjects` object.
169
170
  * @param browseObjects.indexName - The index in which to perform the request.
170
171
  * @param browseObjects.browseParams - The `browse` parameters.
171
172
  * @param browseObjects.validate - The validator function. It receive the resolved return of the API call. By default, stops when there is no `cursor` in the response.
@@ -191,11 +192,11 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
191
192
  * Helper: Iterate on the `searchRules` method of the client to allow aggregating rules of an index.
192
193
  *
193
194
  * @summary Helper method that iterates on the `searchRules` method.
194
- * @param browseObjects - The browseObjects object.
195
- * @param browseObjects.indexName - The index in which to perform the request.
196
- * @param browseObjects.searchRulesParams - The `searchRules` method parameters.
197
- * @param browseObjects.validate - The validator function. It receive the resolved return of the API call. By default, stops when there is less hits returned than the number of maximum hits (1000).
198
- * @param browseObjects.aggregator - The function that runs right after the API call has been resolved, allows you to do anything with the response before `validate`.
195
+ * @param browseRules - The `browseRules` object.
196
+ * @param browseRules.indexName - The index in which to perform the request.
197
+ * @param browseRules.searchRulesParams - The `searchRules` method parameters.
198
+ * @param browseRules.validate - The validator function. It receive the resolved return of the API call. By default, stops when there is less hits returned than the number of maximum hits (1000).
199
+ * @param browseRules.aggregator - The function that runs right after the API call has been resolved, allows you to do anything with the response before `validate`.
199
200
  * @param requestOptions - The requestOptions to send along with the query, they will be forwarded to the `searchRules` method and merged with the transporter requestOptions.
200
201
  */
201
202
  browseRules({ indexName, searchRulesParams, ...browseRulesOptions }, requestOptions) {
@@ -223,11 +224,11 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
223
224
  * Helper: Iterate on the `searchSynonyms` method of the client to allow aggregating rules of an index.
224
225
  *
225
226
  * @summary Helper method that iterates on the `searchSynonyms` method.
226
- * @param browseObjects - The browseObjects object.
227
- * @param browseObjects.indexName - The index in which to perform the request.
228
- * @param browseObjects.validate - The validator function. It receive the resolved return of the API call. By default, stops when there is less hits returned than the number of maximum hits (1000).
229
- * @param browseObjects.aggregator - The function that runs right after the API call has been resolved, allows you to do anything with the response before `validate`.
230
- * @param browseObjects.searchSynonymsParams - The `searchSynonyms` method parameters.
227
+ * @param browseSynonyms - The `browseSynonyms` object.
228
+ * @param browseSynonyms.indexName - The index in which to perform the request.
229
+ * @param browseSynonyms.validate - The validator function. It receive the resolved return of the API call. By default, stops when there is less hits returned than the number of maximum hits (1000).
230
+ * @param browseSynonyms.aggregator - The function that runs right after the API call has been resolved, allows you to do anything with the response before `validate`.
231
+ * @param browseSynonyms.searchSynonymsParams - The `searchSynonyms` method parameters.
231
232
  * @param requestOptions - The requestOptions to send along with the query, they will be forwarded to the `searchSynonyms` method and merged with the transporter requestOptions.
232
233
  */
233
234
  browseSynonyms({ indexName, searchSynonymsParams, ...browseSynonymsOptions }, requestOptions) {
@@ -237,16 +238,16 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
237
238
  hitsPerPage: 1000,
238
239
  };
239
240
  return createIterablePromise({
240
- func: (previousResponse) => {
241
- return this.searchSynonyms({
241
+ func: (_) => {
242
+ const resp = this.searchSynonyms({
242
243
  indexName,
243
244
  searchSynonymsParams: {
244
245
  ...params,
245
- page: previousResponse
246
- ? previousResponse.page + 1
247
- : params.page,
246
+ page: params.page,
248
247
  },
249
248
  }, requestOptions);
249
+ params.page += 1;
250
+ return resp;
250
251
  },
251
252
  validate: (response) => response.nbHits < params.hitsPerPage,
252
253
  ...browseSynonymsOptions,
@@ -274,6 +275,101 @@ function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode
274
275
  searchForFacets(searchMethodParams, requestOptions) {
275
276
  return this.search(searchMethodParams, requestOptions);
276
277
  },
278
+ /**
279
+ * Helper: Generates a secured API key based on the given `parentApiKey` and given `restrictions`.
280
+ *
281
+ * @summary Helper: Generates a secured API key based on the given `parentApiKey` and given `restrictions`.
282
+ * @param generateSecuredApiKey - The `generateSecuredApiKey` object.
283
+ * @param generateSecuredApiKey.parentApiKey - The base API key from which to generate the new secured one.
284
+ * @param generateSecuredApiKey.restrictions - A set of properties defining the restrictions of the secured API key.
285
+ */
286
+ generateSecuredApiKey({ parentApiKey, restrictions = {}, }) {
287
+ const queryParameters = serializeQueryParameters(restrictions);
288
+ return Buffer.from(createHmac('sha256', parentApiKey)
289
+ .update(queryParameters)
290
+ .digest('hex') + queryParameters).toString('base64');
291
+ },
292
+ /**
293
+ * Helper: Retrieves the remaining validity of the previous generated `secured_api_key`, the `ValidUntil` parameter must have been provided.
294
+ *
295
+ * @summary Helper: Retrieves the remaining validity of the previous generated `secured_api_key`, the `ValidUntil` parameter must have been provided.
296
+ * @param getSecuredApiKeyRemainingValidity - The `getSecuredApiKeyRemainingValidity` object.
297
+ * @param getSecuredApiKeyRemainingValidity.securedApiKey - The secured API key generated with the `generateSecuredApiKey` method.
298
+ */
299
+ getSecuredApiKeyRemainingValidity({ securedApiKey, }) {
300
+ const decodedString = Buffer.from(securedApiKey, 'base64').toString('ascii');
301
+ const regex = /validUntil=(\d+)/;
302
+ const match = decodedString.match(regex);
303
+ if (match === null) {
304
+ throw new Error('ValidUntil not found in given secured api key.');
305
+ }
306
+ return parseInt(match[1], 10) - Math.round(new Date().getTime() / 1000);
307
+ },
308
+ /**
309
+ * Helper: Chunks the given `objects` list in subset of 1000 elements max in order to make it fit in `batch` requests.
310
+ *
311
+ * @summary Helper: Chunks the given `objects` list in subset of 1000 elements max in order to make it fit in `batch` requests. * @param getSecuredApiKeyRemainingValidity - The `getSecuredApiKeyRemainingValidity` object.
312
+ * @param chunkedBatch - The `chunkedBatch` object.
313
+ * @param chunkedBatch.indexName - The `indexName` to replace `objects` in.
314
+ * @param chunkedBatch.objects - The array of `objects` to store in the given Algolia `indexName`.
315
+ * @param chunkedBatch.action - The `batch` `action` to perform on the given array of `objects`, defaults to `addObject`.
316
+ * @param chunkedBatch.waitForTasks - Whether or not we should wait until every `batch` tasks has been processed, this operation may slow the total execution time of this method but is more reliable.
317
+ * @param chunkedBatch.batchSize - The size of the chunk of `objects`. The number of `batch` calls will be equal to `length(objects) / batchSize`. Defaults to 1000.
318
+ * @param requestOptions - The requestOptions to send along with the query, they will be forwarded to the `getTask` method and merged with the transporter requestOptions.
319
+ */
320
+ async chunkedBatch({ indexName, objects, action = 'addObject', waitForTasks, batchSize = 1000, }, requestOptions) {
321
+ let requests = [];
322
+ const responses = [];
323
+ for (const [i, obj] of objects.entries()) {
324
+ requests.push({ action, body: obj });
325
+ if (i % batchSize === 0) {
326
+ responses.push(await this.batch({ indexName, batchWriteParams: { requests } }, requestOptions));
327
+ requests = [];
328
+ }
329
+ }
330
+ if (waitForTasks) {
331
+ for (const resp of responses) {
332
+ await this.waitForTask({ indexName, taskID: resp.taskID });
333
+ }
334
+ }
335
+ return responses;
336
+ },
337
+ /**
338
+ * Helper: Replaces all objects (records) in the given `index_name` with the given `objects`. A temporary index is created during this process in order to backup your data.
339
+ *
340
+ * @summary Helper: Replaces all objects (records) in the given `index_name` with the given `objects`. A temporary index is created during this process in order to backup your data.
341
+ * @param replaceAllObjects - The `replaceAllObjects` object.
342
+ * @param replaceAllObjects.indexName - The `indexName` to replace `objects` in.
343
+ * @param replaceAllObjects.objects - The array of `objects` to store in the given Algolia `indexName`.
344
+ * @param replaceAllObjects.batchSize - The size of the chunk of `objects`. The number of `batch` calls will be equal to `length(objects) / batchSize`. Defaults to 1000.
345
+ * @param requestOptions - The requestOptions to send along with the query, they will be forwarded to the `getTask` method and merged with the transporter requestOptions.
346
+ */
347
+ async replaceAllObjects({ indexName, objects, batchSize }, requestOptions) {
348
+ const randomSuffix = Math.random().toString(36).substring(7);
349
+ const tmpIndexName = `${indexName}_tmp_${randomSuffix}`;
350
+ const copyOperationResponse = await this.operationIndex({
351
+ indexName,
352
+ operationIndexParams: {
353
+ operation: 'copy',
354
+ destination: tmpIndexName,
355
+ scope: ['settings', 'rules', 'synonyms'],
356
+ },
357
+ }, requestOptions);
358
+ await this.waitForTask({
359
+ indexName,
360
+ taskID: copyOperationResponse.taskID,
361
+ });
362
+ const batchResponses = await this.chunkedBatch({ indexName: tmpIndexName, objects, waitForTasks: true, batchSize }, requestOptions);
363
+ const moveOperationResponse = await this.operationIndex({
364
+ indexName: tmpIndexName,
365
+ operationIndexParams: { operation: 'move', destination: indexName },
366
+ }, requestOptions);
367
+ await this.waitForTask({
368
+ indexName,
369
+ taskID: moveOperationResponse.taskID,
370
+ });
371
+ return { copyOperationResponse, batchResponses, moveOperationResponse };
372
+ },
277
373
  /**
278
374
  * Add a new API key with specific permissions and restrictions. The request must be authenticated with the admin API key. The response returns an API key string.
279
375
  *
@@ -1,2 +1,2 @@
1
- /*! client-search.umd.js | 5.0.0-alpha.102 | © Algolia, inc. | https://github.com/algolia/algoliasearch-client-javascript */
2
- !function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports):"function"==typeof define&&define.amd?define(["exports"],r):r((e="undefined"!=typeof globalThis?globalThis:e||self)["@algolia/client-search"]={})}(this,(function(e){"use strict";function r({func:e,validate:r,aggregator:t,error:a,timeout:n=(()=>0)}){const s=i=>new Promise(((o,c)=>{e(i).then((e=>(t&&t(e),r(e)?o(e):a&&a.validate(e)?c(new Error(a.message(e))):setTimeout((()=>{s(e).then(o).catch(c)}),n())))).catch((e=>{c(e)}))}));return s()}function t(e){let r;const t=`algolia-client-js-${e.key}`;function a(){return void 0===r&&(r=e.localStorage||window.localStorage),r}function n(){return JSON.parse(a().getItem(t)||"{}")}function s(e){a().setItem(t,JSON.stringify(e))}return{get:(r,t,a={miss:()=>Promise.resolve()})=>Promise.resolve().then((()=>(function(){const r=e.timeToLive?1e3*e.timeToLive:null,t=n(),a=Object.fromEntries(Object.entries(t).filter((([,e])=>void 0!==e.timestamp)));if(s(a),!r)return;s(Object.fromEntries(Object.entries(a).filter((([,e])=>{const t=(new Date).getTime();return!(e.timestamp+r<t)}))))}(),n()[JSON.stringify(r)]))).then((e=>Promise.all([e?e.value:t(),void 0!==e]))).then((([e,r])=>Promise.all([e,r||a.miss(e)]))).then((([e])=>e)),set:(e,r)=>Promise.resolve().then((()=>{const s=n();return s[JSON.stringify(e)]={timestamp:(new Date).getTime(),value:r},a().setItem(t,JSON.stringify(s)),r})),delete:e=>Promise.resolve().then((()=>{const r=n();delete r[JSON.stringify(e)],a().setItem(t,JSON.stringify(r))})),clear:()=>Promise.resolve().then((()=>{a().removeItem(t)}))}}function a(e){const r=[...e.caches],t=r.shift();return void 0===t?{get:(e,r,t={miss:()=>Promise.resolve()})=>r().then((e=>Promise.all([e,t.miss(e)]))).then((([e])=>e)),set:(e,r)=>Promise.resolve(r),delete:e=>Promise.resolve(),clear:()=>Promise.resolve()}:{get:(e,n,s={miss:()=>Promise.resolve()})=>t.get(e,n,s).catch((()=>a({caches:r}).get(e,n,s))),set:(e,n)=>t.set(e,n).catch((()=>a({caches:r}).set(e,n))),delete:e=>t.delete(e).catch((()=>a({caches:r}).delete(e))),clear:()=>t.clear().catch((()=>a({caches:r}).clear()))}}function n(e={serializable:!0}){let r={};return{get(t,a,n={miss:()=>Promise.resolve()}){const s=JSON.stringify(t);if(s in r)return Promise.resolve(e.serializable?JSON.parse(r[s]):r[s]);const i=a();return i.then((e=>n.miss(e))).then((()=>i))},set:(t,a)=>(r[JSON.stringify(t)]=e.serializable?JSON.stringify(a):a,Promise.resolve(a)),delete:e=>(delete r[JSON.stringify(e)],Promise.resolve()),clear:()=>(r={},Promise.resolve())}}const s=12e4;function i(e,r="up"){const t=Date.now();return{...e,status:r,lastUpdate:t,isUp:function(){return"up"===r||Date.now()-t>s},isTimedOut:function(){return"timed out"===r&&Date.now()-t<=s}}}function o(e){var r=function(e,r){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var a=t.call(e,r||"default");if("object"!=typeof a)return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===r?String:Number)(e)}(e,"string");return"symbol"==typeof r?r:String(r)}function c(e,r,t){return(r=o(r))in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}class d extends Error{constructor(e,r){super(e),c(this,"name","AlgoliaError"),r&&(this.name=r)}}class u extends d{constructor(e,r,t){super(e,t),c(this,"stackTrace",void 0),this.stackTrace=r}}class m extends u{constructor(e){super("Unreachable hosts - your application id may be incorrect. If the error persists, please create a ticket at https://support.algolia.com/ sharing steps we can use to reproduce the issue.",e,"RetryError")}}class l extends u{constructor(e,r,t,a="ApiError"){super(e,t,a),c(this,"status",void 0),this.status=r}}class h extends d{constructor(e,r){super(e,"DeserializationError"),c(this,"response",void 0),this.response=r}}class p extends l{constructor(e,r,t,a){super(e,r,a,"DetailedApiError"),c(this,"error",void 0),this.error=t}}function w(e,r,t){const a=function(e){const r=e=>"[object Object]"===Object.prototype.toString.call(e)||"[object Array]"===Object.prototype.toString.call(e);return Object.keys(e).map((t=>`${t}=${encodeURIComponent(r(e[t])?JSON.stringify(e[t]):e[t]).replaceAll("+","%20")}`)).join("&")}(t);let n=`${e.protocol}://${e.url}${e.port?`:${e.port}`:""}/${"/"===r.charAt(0)?r.substr(1):r}`;return a.length&&(n+=`?${a}`),n}function g(e){const r=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return{...e,request:{...e.request,headers:{...e.request.headers,...r}}}}function y({hosts:e,hostsCache:r,baseHeaders:t,baseQueryParameters:a,algoliaAgent:n,timeouts:s,requester:o,requestsCache:c,responsesCache:d}){async function u(c,d,u=!0){const y=[],P=function(e,r){if("GET"===e.method||void 0===e.data&&void 0===r.data)return;const t=Array.isArray(e.data)?e.data:{...e.data,...r.data};return JSON.stringify(t)}(c,d),q=function(e,r,t){const a={Accept:"application/json",...e,...r,...t},n={};return Object.keys(a).forEach((e=>{const r=a[e];n[e.toLowerCase()]=r})),n}(t,c.headers,d.headers),f="GET"===c.method?{...c.data,...d.data}:{},x={...a,...c.queryParameters,...f};if(n.value&&(x["x-algolia-agent"]=n.value),d&&d.queryParameters)for(const e of Object.keys(d.queryParameters))d.queryParameters[e]&&"[object Object]"!==Object.prototype.toString.call(d.queryParameters[e])?x[e]=d.queryParameters[e].toString():x[e]=d.queryParameters[e];let b=0;const E=async(e,t)=>{const a=e.pop();if(void 0===a)throw new m(function(e){return e.map((e=>g(e)))}(y));let n=d.timeout;void 0===n&&(n=u?s.read:s.write);const f={data:P,headers:q,method:c.method,url:w(a,c.path,x),connectTimeout:t(b,s.connect),responseTimeout:t(b,n)},I=r=>{const t={request:f,response:r,host:a,triesLeft:e.length};return y.push(t),t},N=await o.send(f);if(function({isTimedOut:e,status:r}){return e||function({isTimedOut:e,status:r}){return!e&&0==~~r}({isTimedOut:e,status:r})||2!=~~(r/100)&&4!=~~(r/100)}(N)){const n=I(N);return N.isTimedOut&&b++,console.log("Retryable failure",g(n)),await r.set(a,i(a,N.isTimedOut?"timed out":"down")),E(e,t)}if(function({status:e}){return 2==~~(e/100)}(N))return function(e){try{return JSON.parse(e.content)}catch(r){throw new h(r.message,e)}}(N);throw I(N),function({content:e,status:r},t){try{const a=JSON.parse(e);return"error"in a?new p(a.message,r,a.error,t):new l(a.message,r,t)}catch(e){}return new l(e,r,t)}(N,y)},I=e.filter((e=>"readWrite"===e.accept||(u?"read"===e.accept:"write"===e.accept))),N=await async function(e){const t=await Promise.all(e.map((e=>r.get(e,(()=>Promise.resolve(i(e))))))),a=t.filter((e=>e.isUp())),n=t.filter((e=>e.isTimedOut())),s=[...a,...n];return{hosts:s.length>0?s:e,getTimeout:(e,r)=>(0===n.length&&0===e?1:n.length+3+e)*r}}(I);return E([...N.hosts].reverse(),N.getTimeout)}return{hostsCache:r,requester:o,timeouts:s,algoliaAgent:n,baseHeaders:t,baseQueryParameters:a,hosts:e,request:function(e,r={}){const n=e.useReadTransporter||"GET"===e.method;if(!n)return u(e,r,n);const s=()=>u(e,r);if(!0!==(r.cacheable||e.cacheable))return s();const i={request:e,requestOptions:r,transporter:{queryParameters:a,headers:t}};return d.get(i,(()=>c.get(i,(()=>c.set(i,s()).then((e=>Promise.all([c.delete(i),e])),(e=>Promise.all([c.delete(i),Promise.reject(e)]))).then((([e,r])=>r))))),{miss:e=>d.set(i,e)})},requestsCache:c,responsesCache:d}}function P({algoliaAgents:e,client:r,version:t}){const a=function(e){const r={value:`Algolia for JavaScript (${e})`,add(e){const t=`; ${e.segment}${void 0!==e.version?` (${e.version})`:""}`;return-1===r.value.indexOf(t)&&(r.value=`${r.value}${t}`),r}};return r}(t).add({segment:r,version:t});return e.forEach((e=>a.add(e))),a}const q="5.0.0-alpha.102";function f(e){return[{url:`${e}-dsn.algolia.net`,accept:"read",protocol:"https"},{url:`${e}.algolia.net`,accept:"write",protocol:"https"}].concat(function(e){const r=e;for(let t=e.length-1;t>0;t--){const a=Math.floor(Math.random()*(t+1)),n=e[t];r[t]=e[a],r[a]=n}return r}([{url:`${e}-1.algolianet.com`,accept:"readWrite",protocol:"https"},{url:`${e}-2.algolianet.com`,accept:"readWrite",protocol:"https"},{url:`${e}-3.algolianet.com`,accept:"readWrite",protocol:"https"}]))}e.apiClientVersion=q,e.searchClient=function(e,s,i){if(!e||"string"!=typeof e)throw new Error("`appId` is missing.");if(!s||"string"!=typeof s)throw new Error("`apiKey` is missing.");return function({appId:e,apiKey:t,authMode:a,algoliaAgents:n,...s}){const i=function(e,r,t="WithinHeaders"){const a={"x-algolia-api-key":r,"x-algolia-application-id":e};return{headers:()=>"WithinHeaders"===t?a:{},queryParameters:()=>"WithinQueryParameters"===t?a:{}}}(e,t,a),o=y({hosts:f(e),...s,algoliaAgent:P({algoliaAgents:n,client:"Search",version:q}),baseHeaders:{"content-type":"text/plain",...i.headers(),...s.baseHeaders},baseQueryParameters:{...i.queryParameters(),...s.baseQueryParameters}});return{transporter:o,appId:e,clearCache:()=>Promise.all([o.requestsCache.clear(),o.responsesCache.clear()]).then((()=>{})),get _ua(){return o.algoliaAgent.value},addAlgoliaAgent(e,r){o.algoliaAgent.add({segment:e,version:r})},waitForTask({indexName:e,taskID:t,maxRetries:a=50,timeout:n=(e=>Math.min(200*e,5e3))},s){let i=0;return r({func:()=>this.getTask({indexName:e,taskID:t},s),validate:e=>"published"===e.status,aggregator:()=>i+=1,error:{validate:()=>i>=a,message:()=>`The maximum number of retries exceeded. (${i}/${a})`},timeout:()=>n(i)})},waitForApiKey({operation:e,key:t,apiKey:a,maxRetries:n=50,timeout:s=(e=>Math.min(200*e,5e3))},i){let o=0;const c={aggregator:()=>o+=1,error:{validate:()=>o>=n,message:()=>`The maximum number of retries exceeded. (${o}/${n})`},timeout:()=>s(o)};if("update"===e){if(!a)throw new Error("`apiKey` is required when waiting for an `update` operation.");return r({...c,func:()=>this.getApiKey({key:t},i),validate:e=>{for(const r of Object.keys(a)){const t=a[r],n=e[r];if(Array.isArray(t)&&Array.isArray(n)){if(t.length!==n.length||t.some(((e,r)=>e!==n[r])))return!1}else if(t!==n)return!1}return!0}})}return r({...c,func:()=>this.getApiKey({key:t},i).catch((e=>e)),validate:r=>"add"===e?404!==r.status:404===r.status})},browseObjects({indexName:e,browseParams:t,...a},n){return r({func:r=>this.browse({indexName:e,browseParams:{cursor:r?r.cursor:void 0,...t}},n),validate:e=>void 0===e.cursor,...a})},browseRules({indexName:e,searchRulesParams:t,...a},n){const s={hitsPerPage:1e3,...t};return r({func:r=>this.searchRules({indexName:e,searchRulesParams:{...s,page:r?r.page+1:s.page||0}},n),validate:e=>e.nbHits<s.hitsPerPage,...a})},browseSynonyms({indexName:e,searchSynonymsParams:t,...a},n){const s={page:0,...t,hitsPerPage:1e3};return r({func:r=>this.searchSynonyms({indexName:e,searchSynonymsParams:{...s,page:r?r.page+1:s.page}},n),validate:e=>e.nbHits<s.hitsPerPage,...a})},searchForHits(e,r){return this.search(e,r)},searchForFacets(e,r){return this.search(e,r)},addApiKey(e,r){if(!e)throw new Error("Parameter `apiKey` is required when calling `addApiKey`.");if(!e.acl)throw new Error("Parameter `apiKey.acl` is required when calling `addApiKey`.");const t={method:"POST",path:"/1/keys",queryParameters:{},headers:{},data:e};return o.request(t,r)},addOrUpdateObject({indexName:e,objectID:r,body:t},a){if(!e)throw new Error("Parameter `indexName` is required when calling `addOrUpdateObject`.");if(!r)throw new Error("Parameter `objectID` is required when calling `addOrUpdateObject`.");if(!t)throw new Error("Parameter `body` is required when calling `addOrUpdateObject`.");const n={method:"PUT",path:"/1/indexes/{indexName}/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),queryParameters:{},headers:{},data:t};return o.request(n,a)},appendSource(e,r){if(!e)throw new Error("Parameter `source` is required when calling `appendSource`.");if(!e.source)throw new Error("Parameter `source.source` is required when calling `appendSource`.");const t={method:"POST",path:"/1/security/sources/append",queryParameters:{},headers:{},data:e};return o.request(t,r)},assignUserId({xAlgoliaUserID:e,assignUserIdParams:r},t){if(!e)throw new Error("Parameter `xAlgoliaUserID` is required when calling `assignUserId`.");if(!r)throw new Error("Parameter `assignUserIdParams` is required when calling `assignUserId`.");if(!r.cluster)throw new Error("Parameter `assignUserIdParams.cluster` is required when calling `assignUserId`.");const a={};void 0!==e&&(a["X-Algolia-User-ID"]=e.toString());const n={method:"POST",path:"/1/clusters/mapping",queryParameters:{},headers:a,data:r};return o.request(n,t)},batch({indexName:e,batchWriteParams:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `batch`.");if(!r)throw new Error("Parameter `batchWriteParams` is required when calling `batch`.");if(!r.requests)throw new Error("Parameter `batchWriteParams.requests` is required when calling `batch`.");const a={method:"POST",path:"/1/indexes/{indexName}/batch".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return o.request(a,t)},batchAssignUserIds({xAlgoliaUserID:e,batchAssignUserIdsParams:r},t){if(!e)throw new Error("Parameter `xAlgoliaUserID` is required when calling `batchAssignUserIds`.");if(!r)throw new Error("Parameter `batchAssignUserIdsParams` is required when calling `batchAssignUserIds`.");if(!r.cluster)throw new Error("Parameter `batchAssignUserIdsParams.cluster` is required when calling `batchAssignUserIds`.");if(!r.users)throw new Error("Parameter `batchAssignUserIdsParams.users` is required when calling `batchAssignUserIds`.");const a={};void 0!==e&&(a["X-Algolia-User-ID"]=e.toString());const n={method:"POST",path:"/1/clusters/mapping/batch",queryParameters:{},headers:a,data:r};return o.request(n,t)},batchDictionaryEntries({dictionaryName:e,batchDictionaryEntriesParams:r},t){if(!e)throw new Error("Parameter `dictionaryName` is required when calling `batchDictionaryEntries`.");if(!r)throw new Error("Parameter `batchDictionaryEntriesParams` is required when calling `batchDictionaryEntries`.");if(!r.requests)throw new Error("Parameter `batchDictionaryEntriesParams.requests` is required when calling `batchDictionaryEntries`.");const a={method:"POST",path:"/1/dictionaries/{dictionaryName}/batch".replace("{dictionaryName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return o.request(a,t)},browse({indexName:e,browseParams:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `browse`.");const a={method:"POST",path:"/1/indexes/{indexName}/browse".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r||{}};return o.request(a,t)},clearObjects({indexName:e},r){if(!e)throw new Error("Parameter `indexName` is required when calling `clearObjects`.");const t={method:"POST",path:"/1/indexes/{indexName}/clear".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{}};return o.request(t,r)},clearRules({indexName:e,forwardToReplicas:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `clearRules`.");const a="/1/indexes/{indexName}/rules/clear".replace("{indexName}",encodeURIComponent(e)),n={};void 0!==r&&(n.forwardToReplicas=r.toString());const s={method:"POST",path:a,queryParameters:n,headers:{}};return o.request(s,t)},clearSynonyms({indexName:e,forwardToReplicas:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `clearSynonyms`.");const a="/1/indexes/{indexName}/synonyms/clear".replace("{indexName}",encodeURIComponent(e)),n={};void 0!==r&&(n.forwardToReplicas=r.toString());const s={method:"POST",path:a,queryParameters:n,headers:{}};return o.request(s,t)},customDelete({path:e,parameters:r},t){if(!e)throw new Error("Parameter `path` is required when calling `customDelete`.");const a={method:"DELETE",path:"/1{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return o.request(a,t)},customGet({path:e,parameters:r},t){if(!e)throw new Error("Parameter `path` is required when calling `customGet`.");const a={method:"GET",path:"/1{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return o.request(a,t)},customPost({path:e,parameters:r,body:t},a){if(!e)throw new Error("Parameter `path` is required when calling `customPost`.");const n={method:"POST",path:"/1{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:t||{}};return o.request(n,a)},customPut({path:e,parameters:r,body:t},a){if(!e)throw new Error("Parameter `path` is required when calling `customPut`.");const n={method:"PUT",path:"/1{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:t||{}};return o.request(n,a)},deleteApiKey({key:e},r){if(!e)throw new Error("Parameter `key` is required when calling `deleteApiKey`.");const t={method:"DELETE",path:"/1/keys/{key}".replace("{key}",encodeURIComponent(e)),queryParameters:{},headers:{}};return o.request(t,r)},deleteBy({indexName:e,deleteByParams:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `deleteBy`.");if(!r)throw new Error("Parameter `deleteByParams` is required when calling `deleteBy`.");const a={method:"POST",path:"/1/indexes/{indexName}/deleteByQuery".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return o.request(a,t)},deleteIndex({indexName:e},r){if(!e)throw new Error("Parameter `indexName` is required when calling `deleteIndex`.");const t={method:"DELETE",path:"/1/indexes/{indexName}".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{}};return o.request(t,r)},deleteObject({indexName:e,objectID:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `deleteObject`.");if(!r)throw new Error("Parameter `objectID` is required when calling `deleteObject`.");const a={method:"DELETE",path:"/1/indexes/{indexName}/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),queryParameters:{},headers:{}};return o.request(a,t)},deleteRule({indexName:e,objectID:r,forwardToReplicas:t},a){if(!e)throw new Error("Parameter `indexName` is required when calling `deleteRule`.");if(!r)throw new Error("Parameter `objectID` is required when calling `deleteRule`.");const n="/1/indexes/{indexName}/rules/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),s={};void 0!==t&&(s.forwardToReplicas=t.toString());const i={method:"DELETE",path:n,queryParameters:s,headers:{}};return o.request(i,a)},deleteSource({source:e},r){if(!e)throw new Error("Parameter `source` is required when calling `deleteSource`.");const t={method:"DELETE",path:"/1/security/sources/{source}".replace("{source}",encodeURIComponent(e)),queryParameters:{},headers:{}};return o.request(t,r)},deleteSynonym({indexName:e,objectID:r,forwardToReplicas:t},a){if(!e)throw new Error("Parameter `indexName` is required when calling `deleteSynonym`.");if(!r)throw new Error("Parameter `objectID` is required when calling `deleteSynonym`.");const n="/1/indexes/{indexName}/synonyms/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),s={};void 0!==t&&(s.forwardToReplicas=t.toString());const i={method:"DELETE",path:n,queryParameters:s,headers:{}};return o.request(i,a)},getApiKey({key:e},r){if(!e)throw new Error("Parameter `key` is required when calling `getApiKey`.");const t={method:"GET",path:"/1/keys/{key}".replace("{key}",encodeURIComponent(e)),queryParameters:{},headers:{}};return o.request(t,r)},getDictionaryLanguages(e){const r={method:"GET",path:"/1/dictionaries/*/languages",queryParameters:{},headers:{}};return o.request(r,e)},getDictionarySettings(e){const r={method:"GET",path:"/1/dictionaries/*/settings",queryParameters:{},headers:{}};return o.request(r,e)},getLogs({offset:e,length:r,indexName:t,type:a}={},n=void 0){const s={};void 0!==e&&(s.offset=e.toString()),void 0!==r&&(s.length=r.toString()),void 0!==t&&(s.indexName=t.toString()),void 0!==a&&(s.type=a.toString());const i={method:"GET",path:"/1/logs",queryParameters:s,headers:{}};return o.request(i,n)},getObject({indexName:e,objectID:r,attributesToRetrieve:t},a){if(!e)throw new Error("Parameter `indexName` is required when calling `getObject`.");if(!r)throw new Error("Parameter `objectID` is required when calling `getObject`.");const n="/1/indexes/{indexName}/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),s={};void 0!==t&&(s.attributesToRetrieve=t.toString());const i={method:"GET",path:n,queryParameters:s,headers:{}};return o.request(i,a)},getObjects(e,r){if(!e)throw new Error("Parameter `getObjectsParams` is required when calling `getObjects`.");if(!e.requests)throw new Error("Parameter `getObjectsParams.requests` is required when calling `getObjects`.");const t={method:"POST",path:"/1/indexes/*/objects",queryParameters:{},headers:{},data:e,useReadTransporter:!0,cacheable:!0};return o.request(t,r)},getRule({indexName:e,objectID:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `getRule`.");if(!r)throw new Error("Parameter `objectID` is required when calling `getRule`.");const a={method:"GET",path:"/1/indexes/{indexName}/rules/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),queryParameters:{},headers:{}};return o.request(a,t)},getSettings({indexName:e},r){if(!e)throw new Error("Parameter `indexName` is required when calling `getSettings`.");const t={method:"GET",path:"/1/indexes/{indexName}/settings".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{}};return o.request(t,r)},getSources(e){const r={method:"GET",path:"/1/security/sources",queryParameters:{},headers:{}};return o.request(r,e)},getSynonym({indexName:e,objectID:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `getSynonym`.");if(!r)throw new Error("Parameter `objectID` is required when calling `getSynonym`.");const a={method:"GET",path:"/1/indexes/{indexName}/synonyms/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),queryParameters:{},headers:{}};return o.request(a,t)},getTask({indexName:e,taskID:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `getTask`.");if(!r)throw new Error("Parameter `taskID` is required when calling `getTask`.");const a={method:"GET",path:"/1/indexes/{indexName}/task/{taskID}".replace("{indexName}",encodeURIComponent(e)).replace("{taskID}",encodeURIComponent(r)),queryParameters:{},headers:{}};return o.request(a,t)},getTopUserIds(e){const r={method:"GET",path:"/1/clusters/mapping/top",queryParameters:{},headers:{}};return o.request(r,e)},getUserId({userID:e},r){if(!e)throw new Error("Parameter `userID` is required when calling `getUserId`.");const t={method:"GET",path:"/1/clusters/mapping/{userID}".replace("{userID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return o.request(t,r)},hasPendingMappings({getClusters:e}={},r=void 0){const t={};void 0!==e&&(t.getClusters=e.toString());const a={method:"GET",path:"/1/clusters/mapping/pending",queryParameters:t,headers:{}};return o.request(a,r)},listApiKeys(e){const r={method:"GET",path:"/1/keys",queryParameters:{},headers:{}};return o.request(r,e)},listClusters(e){const r={method:"GET",path:"/1/clusters",queryParameters:{},headers:{}};return o.request(r,e)},listIndices({page:e,hitsPerPage:r}={},t=void 0){const a={};void 0!==e&&(a.page=e.toString()),void 0!==r&&(a.hitsPerPage=r.toString());const n={method:"GET",path:"/1/indexes",queryParameters:a,headers:{}};return o.request(n,t)},listUserIds({page:e,hitsPerPage:r}={},t=void 0){const a={};void 0!==e&&(a.page=e.toString()),void 0!==r&&(a.hitsPerPage=r.toString());const n={method:"GET",path:"/1/clusters/mapping",queryParameters:a,headers:{}};return o.request(n,t)},multipleBatch(e,r){if(!e)throw new Error("Parameter `batchParams` is required when calling `multipleBatch`.");if(!e.requests)throw new Error("Parameter `batchParams.requests` is required when calling `multipleBatch`.");const t={method:"POST",path:"/1/indexes/*/batch",queryParameters:{},headers:{},data:e};return o.request(t,r)},operationIndex({indexName:e,operationIndexParams:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `operationIndex`.");if(!r)throw new Error("Parameter `operationIndexParams` is required when calling `operationIndex`.");if(!r.operation)throw new Error("Parameter `operationIndexParams.operation` is required when calling `operationIndex`.");if(!r.destination)throw new Error("Parameter `operationIndexParams.destination` is required when calling `operationIndex`.");const a={method:"POST",path:"/1/indexes/{indexName}/operation".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return o.request(a,t)},partialUpdateObject({indexName:e,objectID:r,attributesToUpdate:t,createIfNotExists:a},n){if(!e)throw new Error("Parameter `indexName` is required when calling `partialUpdateObject`.");if(!r)throw new Error("Parameter `objectID` is required when calling `partialUpdateObject`.");if(!t)throw new Error("Parameter `attributesToUpdate` is required when calling `partialUpdateObject`.");const s="/1/indexes/{indexName}/{objectID}/partial".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),i={};void 0!==a&&(i.createIfNotExists=a.toString());const c={method:"POST",path:s,queryParameters:i,headers:{},data:t};return o.request(c,n)},removeUserId({userID:e},r){if(!e)throw new Error("Parameter `userID` is required when calling `removeUserId`.");const t={method:"DELETE",path:"/1/clusters/mapping/{userID}".replace("{userID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return o.request(t,r)},replaceSources({source:e},r){if(!e)throw new Error("Parameter `source` is required when calling `replaceSources`.");const t={method:"PUT",path:"/1/security/sources",queryParameters:{},headers:{},data:e};return o.request(t,r)},restoreApiKey({key:e},r){if(!e)throw new Error("Parameter `key` is required when calling `restoreApiKey`.");const t={method:"POST",path:"/1/keys/{key}/restore".replace("{key}",encodeURIComponent(e)),queryParameters:{},headers:{}};return o.request(t,r)},saveObject({indexName:e,body:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `saveObject`.");if(!r)throw new Error("Parameter `body` is required when calling `saveObject`.");const a={method:"POST",path:"/1/indexes/{indexName}".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return o.request(a,t)},saveRule({indexName:e,objectID:r,rule:t,forwardToReplicas:a},n){if(!e)throw new Error("Parameter `indexName` is required when calling `saveRule`.");if(!r)throw new Error("Parameter `objectID` is required when calling `saveRule`.");if(!t)throw new Error("Parameter `rule` is required when calling `saveRule`.");if(!t.objectID)throw new Error("Parameter `rule.objectID` is required when calling `saveRule`.");const s="/1/indexes/{indexName}/rules/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),i={};void 0!==a&&(i.forwardToReplicas=a.toString());const c={method:"PUT",path:s,queryParameters:i,headers:{},data:t};return o.request(c,n)},saveRules({indexName:e,rules:r,forwardToReplicas:t,clearExistingRules:a},n){if(!e)throw new Error("Parameter `indexName` is required when calling `saveRules`.");if(!r)throw new Error("Parameter `rules` is required when calling `saveRules`.");const s="/1/indexes/{indexName}/rules/batch".replace("{indexName}",encodeURIComponent(e)),i={};void 0!==t&&(i.forwardToReplicas=t.toString()),void 0!==a&&(i.clearExistingRules=a.toString());const c={method:"POST",path:s,queryParameters:i,headers:{},data:r};return o.request(c,n)},saveSynonym({indexName:e,objectID:r,synonymHit:t,forwardToReplicas:a},n){if(!e)throw new Error("Parameter `indexName` is required when calling `saveSynonym`.");if(!r)throw new Error("Parameter `objectID` is required when calling `saveSynonym`.");if(!t)throw new Error("Parameter `synonymHit` is required when calling `saveSynonym`.");if(!t.objectID)throw new Error("Parameter `synonymHit.objectID` is required when calling `saveSynonym`.");if(!t.type)throw new Error("Parameter `synonymHit.type` is required when calling `saveSynonym`.");const s="/1/indexes/{indexName}/synonyms/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),i={};void 0!==a&&(i.forwardToReplicas=a.toString());const c={method:"PUT",path:s,queryParameters:i,headers:{},data:t};return o.request(c,n)},saveSynonyms({indexName:e,synonymHit:r,forwardToReplicas:t,replaceExistingSynonyms:a},n){if(!e)throw new Error("Parameter `indexName` is required when calling `saveSynonyms`.");if(!r)throw new Error("Parameter `synonymHit` is required when calling `saveSynonyms`.");const s="/1/indexes/{indexName}/synonyms/batch".replace("{indexName}",encodeURIComponent(e)),i={};void 0!==t&&(i.forwardToReplicas=t.toString()),void 0!==a&&(i.replaceExistingSynonyms=a.toString());const c={method:"POST",path:s,queryParameters:i,headers:{},data:r};return o.request(c,n)},search(e,r){if(e&&Array.isArray(e)){const r={requests:e.map((({params:e,...r})=>"facet"===r.type?{...r,...e,type:"facet"}:{...r,...e,facet:void 0,maxFacetHits:void 0,facetQuery:void 0}))};e=r}if(!e)throw new Error("Parameter `searchMethodParams` is required when calling `search`.");if(!e.requests)throw new Error("Parameter `searchMethodParams.requests` is required when calling `search`.");const t={method:"POST",path:"/1/indexes/*/queries",queryParameters:{},headers:{},data:e,useReadTransporter:!0,cacheable:!0};return o.request(t,r)},searchDictionaryEntries({dictionaryName:e,searchDictionaryEntriesParams:r},t){if(!e)throw new Error("Parameter `dictionaryName` is required when calling `searchDictionaryEntries`.");if(!r)throw new Error("Parameter `searchDictionaryEntriesParams` is required when calling `searchDictionaryEntries`.");if(!r.query)throw new Error("Parameter `searchDictionaryEntriesParams.query` is required when calling `searchDictionaryEntries`.");const a={method:"POST",path:"/1/dictionaries/{dictionaryName}/search".replace("{dictionaryName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r,useReadTransporter:!0,cacheable:!0};return o.request(a,t)},searchForFacetValues({indexName:e,facetName:r,searchForFacetValuesRequest:t},a){if(!e)throw new Error("Parameter `indexName` is required when calling `searchForFacetValues`.");if(!r)throw new Error("Parameter `facetName` is required when calling `searchForFacetValues`.");const n={method:"POST",path:"/1/indexes/{indexName}/facets/{facetName}/query".replace("{indexName}",encodeURIComponent(e)).replace("{facetName}",encodeURIComponent(r)),queryParameters:{},headers:{},data:t||{},useReadTransporter:!0,cacheable:!0};return o.request(n,a)},searchRules({indexName:e,searchRulesParams:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `searchRules`.");const a={method:"POST",path:"/1/indexes/{indexName}/rules/search".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r||{},useReadTransporter:!0,cacheable:!0};return o.request(a,t)},searchSingleIndex({indexName:e,searchParams:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `searchSingleIndex`.");const a={method:"POST",path:"/1/indexes/{indexName}/query".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r||{},useReadTransporter:!0,cacheable:!0};return o.request(a,t)},searchSynonyms({indexName:e,searchSynonymsParams:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `searchSynonyms`.");const a={method:"POST",path:"/1/indexes/{indexName}/synonyms/search".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r||{},useReadTransporter:!0,cacheable:!0};return o.request(a,t)},searchUserIds(e,r){if(!e)throw new Error("Parameter `searchUserIdsParams` is required when calling `searchUserIds`.");if(!e.query)throw new Error("Parameter `searchUserIdsParams.query` is required when calling `searchUserIds`.");const t={method:"POST",path:"/1/clusters/mapping/search",queryParameters:{},headers:{},data:e,useReadTransporter:!0,cacheable:!0};return o.request(t,r)},setDictionarySettings(e,r){if(!e)throw new Error("Parameter `dictionarySettingsParams` is required when calling `setDictionarySettings`.");if(!e.disableStandardEntries)throw new Error("Parameter `dictionarySettingsParams.disableStandardEntries` is required when calling `setDictionarySettings`.");const t={method:"PUT",path:"/1/dictionaries/*/settings",queryParameters:{},headers:{},data:e};return o.request(t,r)},setSettings({indexName:e,indexSettings:r,forwardToReplicas:t},a){if(!e)throw new Error("Parameter `indexName` is required when calling `setSettings`.");if(!r)throw new Error("Parameter `indexSettings` is required when calling `setSettings`.");const n="/1/indexes/{indexName}/settings".replace("{indexName}",encodeURIComponent(e)),s={};void 0!==t&&(s.forwardToReplicas=t.toString());const i={method:"PUT",path:n,queryParameters:s,headers:{},data:r};return o.request(i,a)},updateApiKey({key:e,apiKey:r},t){if(!e)throw new Error("Parameter `key` is required when calling `updateApiKey`.");if(!r)throw new Error("Parameter `apiKey` is required when calling `updateApiKey`.");if(!r.acl)throw new Error("Parameter `apiKey.acl` is required when calling `updateApiKey`.");const a={method:"PUT",path:"/1/keys/{key}".replace("{key}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return o.request(a,t)}}}({appId:e,apiKey:s,timeouts:{connect:1e3,read:2e3,write:3e4},requester:{send:function(e){return new Promise((r=>{const t=new XMLHttpRequest;t.open(e.method,e.url,!0),Object.keys(e.headers).forEach((r=>t.setRequestHeader(r,e.headers[r])));const a=(e,a)=>setTimeout((()=>{t.abort(),r({status:0,content:a,isTimedOut:!0})}),e),n=a(e.connectTimeout,"Connection timeout");let s;t.onreadystatechange=()=>{t.readyState>t.OPENED&&void 0===s&&(clearTimeout(n),s=a(e.responseTimeout,"Socket timeout"))},t.onerror=()=>{0===t.status&&(clearTimeout(n),clearTimeout(s),r({content:t.responseText||"Network request failed",status:t.status,isTimedOut:!1}))},t.onload=()=>{clearTimeout(n),clearTimeout(s),r({content:t.responseText,status:t.status,isTimedOut:!1})},t.send(e.data)}))}},algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:n(),requestsCache:n({serializable:!1}),hostsCache:a({caches:[t({key:`${q}-${e}`}),n()]}),...i})}}));
1
+ /*! client-search.umd.js | 5.0.0-alpha.103 | © Algolia, inc. | https://github.com/algolia/algoliasearch-client-javascript */
2
+ !function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("crypto")):"function"==typeof define&&define.amd?define(["exports","crypto"],r):r((e="undefined"!=typeof globalThis?globalThis:e||self)["@algolia/client-search"]={},e.crypto)}(this,(function(e,r){"use strict";function t({func:e,validate:r,aggregator:t,error:a,timeout:n=(()=>0)}){const s=i=>new Promise(((o,c)=>{e(i).then((e=>(t&&t(e),r(e)?o(e):a&&a.validate(e)?c(new Error(a.message(e))):setTimeout((()=>{s(e).then(o).catch(c)}),n())))).catch((e=>{c(e)}))}));return s()}function a(e){let r;const t=`algolia-client-js-${e.key}`;function a(){return void 0===r&&(r=e.localStorage||window.localStorage),r}function n(){return JSON.parse(a().getItem(t)||"{}")}function s(e){a().setItem(t,JSON.stringify(e))}return{get:(r,t,a={miss:()=>Promise.resolve()})=>Promise.resolve().then((()=>(function(){const r=e.timeToLive?1e3*e.timeToLive:null,t=n(),a=Object.fromEntries(Object.entries(t).filter((([,e])=>void 0!==e.timestamp)));if(s(a),!r)return;s(Object.fromEntries(Object.entries(a).filter((([,e])=>{const t=(new Date).getTime();return!(e.timestamp+r<t)}))))}(),n()[JSON.stringify(r)]))).then((e=>Promise.all([e?e.value:t(),void 0!==e]))).then((([e,r])=>Promise.all([e,r||a.miss(e)]))).then((([e])=>e)),set:(e,r)=>Promise.resolve().then((()=>{const s=n();return s[JSON.stringify(e)]={timestamp:(new Date).getTime(),value:r},a().setItem(t,JSON.stringify(s)),r})),delete:e=>Promise.resolve().then((()=>{const r=n();delete r[JSON.stringify(e)],a().setItem(t,JSON.stringify(r))})),clear:()=>Promise.resolve().then((()=>{a().removeItem(t)}))}}function n(e){const r=[...e.caches],t=r.shift();return void 0===t?{get:(e,r,t={miss:()=>Promise.resolve()})=>r().then((e=>Promise.all([e,t.miss(e)]))).then((([e])=>e)),set:(e,r)=>Promise.resolve(r),delete:e=>Promise.resolve(),clear:()=>Promise.resolve()}:{get:(e,a,s={miss:()=>Promise.resolve()})=>t.get(e,a,s).catch((()=>n({caches:r}).get(e,a,s))),set:(e,a)=>t.set(e,a).catch((()=>n({caches:r}).set(e,a))),delete:e=>t.delete(e).catch((()=>n({caches:r}).delete(e))),clear:()=>t.clear().catch((()=>n({caches:r}).clear()))}}function s(e={serializable:!0}){let r={};return{get(t,a,n={miss:()=>Promise.resolve()}){const s=JSON.stringify(t);if(s in r)return Promise.resolve(e.serializable?JSON.parse(r[s]):r[s]);const i=a();return i.then((e=>n.miss(e))).then((()=>i))},set:(t,a)=>(r[JSON.stringify(t)]=e.serializable?JSON.stringify(a):a,Promise.resolve(a)),delete:e=>(delete r[JSON.stringify(e)],Promise.resolve()),clear:()=>(r={},Promise.resolve())}}const i=12e4;function o(e,r="up"){const t=Date.now();return{...e,status:r,lastUpdate:t,isUp:function(){return"up"===r||Date.now()-t>i},isTimedOut:function(){return"timed out"===r&&Date.now()-t<=i}}}function c(e){var r=function(e,r){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var a=t.call(e,r||"default");if("object"!=typeof a)return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===r?String:Number)(e)}(e,"string");return"symbol"==typeof r?r:String(r)}function d(e,r,t){return(r=c(r))in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}class u extends Error{constructor(e,r){super(e),d(this,"name","AlgoliaError"),r&&(this.name=r)}}class m extends u{constructor(e,r,t){super(e,t),d(this,"stackTrace",void 0),this.stackTrace=r}}class h extends m{constructor(e){super("Unreachable hosts - your application id may be incorrect. If the error persists, please create a ticket at https://support.algolia.com/ sharing steps we can use to reproduce the issue.",e,"RetryError")}}class l extends m{constructor(e,r,t,a="ApiError"){super(e,t,a),d(this,"status",void 0),this.status=r}}class p extends u{constructor(e,r){super(e,"DeserializationError"),d(this,"response",void 0),this.response=r}}class w extends l{constructor(e,r,t,a){super(e,r,a,"DetailedApiError"),d(this,"error",void 0),this.error=t}}function g(e,r,t){const a=y(t);let n=`${e.protocol}://${e.url}${e.port?`:${e.port}`:""}/${"/"===r.charAt(0)?r.substring(1):r}`;return a.length&&(n+=`?${a}`),n}function y(e){return Object.keys(e).map((r=>{return`${r}=${encodeURIComponent((t=e[r],"[object Object]"===Object.prototype.toString.call(t)||"[object Array]"===Object.prototype.toString.call(t)?JSON.stringify(e[r]):e[r])).replaceAll("+","%20")}`;var t})).join("&")}function P(e){const r=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return{...e,request:{...e.request,headers:{...e.request.headers,...r}}}}function q({hosts:e,hostsCache:r,baseHeaders:t,baseQueryParameters:a,algoliaAgent:n,timeouts:s,requester:i,requestsCache:c,responsesCache:d}){async function u(c,d,u=!0){const m=[],y=function(e,r){if("GET"===e.method||void 0===e.data&&void 0===r.data)return;const t=Array.isArray(e.data)?e.data:{...e.data,...r.data};return JSON.stringify(t)}(c,d),q=function(e,r,t){const a={Accept:"application/json",...e,...r,...t},n={};return Object.keys(a).forEach((e=>{const r=a[e];n[e.toLowerCase()]=r})),n}(t,c.headers,d.headers),f="GET"===c.method?{...c.data,...d.data}:{},x={...a,...c.queryParameters,...f};if(n.value&&(x["x-algolia-agent"]=n.value),d&&d.queryParameters)for(const e of Object.keys(d.queryParameters))d.queryParameters[e]&&"[object Object]"!==Object.prototype.toString.call(d.queryParameters[e])?x[e]=d.queryParameters[e].toString():x[e]=d.queryParameters[e];let b=0;const E=async(e,t)=>{const a=e.pop();if(void 0===a)throw new h(function(e){return e.map((e=>P(e)))}(m));let n=d.timeout;void 0===n&&(n=u?s.read:s.write);const f={data:y,headers:q,method:c.method,url:g(a,c.path,x),connectTimeout:t(b,s.connect),responseTimeout:t(b,n)},I=r=>{const t={request:f,response:r,host:a,triesLeft:e.length};return m.push(t),t},N=await i.send(f);if(function({isTimedOut:e,status:r}){return e||function({isTimedOut:e,status:r}){return!e&&0==~~r}({isTimedOut:e,status:r})||2!=~~(r/100)&&4!=~~(r/100)}(N)){const n=I(N);return N.isTimedOut&&b++,console.log("Retryable failure",P(n)),await r.set(a,o(a,N.isTimedOut?"timed out":"down")),E(e,t)}if(function({status:e}){return 2==~~(e/100)}(N))return function(e){try{return JSON.parse(e.content)}catch(r){throw new p(r.message,e)}}(N);throw I(N),function({content:e,status:r},t){try{const a=JSON.parse(e);return"error"in a?new w(a.message,r,a.error,t):new l(a.message,r,t)}catch(e){}return new l(e,r,t)}(N,m)},I=e.filter((e=>"readWrite"===e.accept||(u?"read"===e.accept:"write"===e.accept))),N=await async function(e){const t=await Promise.all(e.map((e=>r.get(e,(()=>Promise.resolve(o(e))))))),a=t.filter((e=>e.isUp())),n=t.filter((e=>e.isTimedOut())),s=[...a,...n];return{hosts:s.length>0?s:e,getTimeout:(e,r)=>(0===n.length&&0===e?1:n.length+3+e)*r}}(I);return E([...N.hosts].reverse(),N.getTimeout)}return{hostsCache:r,requester:i,timeouts:s,algoliaAgent:n,baseHeaders:t,baseQueryParameters:a,hosts:e,request:function(e,r={}){const n=e.useReadTransporter||"GET"===e.method;if(!n)return u(e,r,n);const s=()=>u(e,r);if(!0!==(r.cacheable||e.cacheable))return s();const i={request:e,requestOptions:r,transporter:{queryParameters:a,headers:t}};return d.get(i,(()=>c.get(i,(()=>c.set(i,s()).then((e=>Promise.all([c.delete(i),e])),(e=>Promise.all([c.delete(i),Promise.reject(e)]))).then((([e,r])=>r))))),{miss:e=>d.set(i,e)})},requestsCache:c,responsesCache:d}}function f({algoliaAgents:e,client:r,version:t}){const a=function(e){const r={value:`Algolia for JavaScript (${e})`,add(e){const t=`; ${e.segment}${void 0!==e.version?` (${e.version})`:""}`;return-1===r.value.indexOf(t)&&(r.value=`${r.value}${t}`),r}};return r}(t).add({segment:r,version:t});return e.forEach((e=>a.add(e))),a}const x="5.0.0-alpha.103";function b(e){return[{url:`${e}-dsn.algolia.net`,accept:"read",protocol:"https"},{url:`${e}.algolia.net`,accept:"write",protocol:"https"}].concat(function(e){const r=e;for(let t=e.length-1;t>0;t--){const a=Math.floor(Math.random()*(t+1)),n=e[t];r[t]=e[a],r[a]=n}return r}([{url:`${e}-1.algolianet.com`,accept:"readWrite",protocol:"https"},{url:`${e}-2.algolianet.com`,accept:"readWrite",protocol:"https"},{url:`${e}-3.algolianet.com`,accept:"readWrite",protocol:"https"}]))}e.apiClientVersion=x,e.searchClient=function(e,i,o){if(!e||"string"!=typeof e)throw new Error("`appId` is missing.");if(!i||"string"!=typeof i)throw new Error("`apiKey` is missing.");return function({appId:e,apiKey:a,authMode:n,algoliaAgents:s,...i}){const o=function(e,r,t="WithinHeaders"){const a={"x-algolia-api-key":r,"x-algolia-application-id":e};return{headers:()=>"WithinHeaders"===t?a:{},queryParameters:()=>"WithinQueryParameters"===t?a:{}}}(e,a,n),c=q({hosts:b(e),...i,algoliaAgent:f({algoliaAgents:s,client:"Search",version:x}),baseHeaders:{"content-type":"text/plain",...o.headers(),...i.baseHeaders},baseQueryParameters:{...o.queryParameters(),...i.baseQueryParameters}});return{transporter:c,appId:e,clearCache:()=>Promise.all([c.requestsCache.clear(),c.responsesCache.clear()]).then((()=>{})),get _ua(){return c.algoliaAgent.value},addAlgoliaAgent(e,r){c.algoliaAgent.add({segment:e,version:r})},waitForTask({indexName:e,taskID:r,maxRetries:a=50,timeout:n=(e=>Math.min(200*e,5e3))},s){let i=0;return t({func:()=>this.getTask({indexName:e,taskID:r},s),validate:e=>"published"===e.status,aggregator:()=>i+=1,error:{validate:()=>i>=a,message:()=>`The maximum number of retries exceeded. (${i}/${a})`},timeout:()=>n(i)})},waitForApiKey({operation:e,key:r,apiKey:a,maxRetries:n=50,timeout:s=(e=>Math.min(200*e,5e3))},i){let o=0;const c={aggregator:()=>o+=1,error:{validate:()=>o>=n,message:()=>`The maximum number of retries exceeded. (${o}/${n})`},timeout:()=>s(o)};if("update"===e){if(!a)throw new Error("`apiKey` is required when waiting for an `update` operation.");return t({...c,func:()=>this.getApiKey({key:r},i),validate:e=>{for(const r of Object.keys(a)){const t=a[r],n=e[r];if(Array.isArray(t)&&Array.isArray(n)){if(t.length!==n.length||t.some(((e,r)=>e!==n[r])))return!1}else if(t!==n)return!1}return!0}})}return t({...c,func:()=>this.getApiKey({key:r},i).catch((e=>e)),validate:r=>"add"===e?404!==r.status:404===r.status})},browseObjects({indexName:e,browseParams:r,...a},n){return t({func:t=>this.browse({indexName:e,browseParams:{cursor:t?t.cursor:void 0,...r}},n),validate:e=>void 0===e.cursor,...a})},browseRules({indexName:e,searchRulesParams:r,...a},n){const s={hitsPerPage:1e3,...r};return t({func:r=>this.searchRules({indexName:e,searchRulesParams:{...s,page:r?r.page+1:s.page||0}},n),validate:e=>e.nbHits<s.hitsPerPage,...a})},browseSynonyms({indexName:e,searchSynonymsParams:r,...a},n){const s={page:0,...r,hitsPerPage:1e3};return t({func:r=>{const t=this.searchSynonyms({indexName:e,searchSynonymsParams:{...s,page:s.page}},n);return s.page+=1,t},validate:e=>e.nbHits<s.hitsPerPage,...a})},searchForHits(e,r){return this.search(e,r)},searchForFacets(e,r){return this.search(e,r)},generateSecuredApiKey({parentApiKey:e,restrictions:t={}}){const a=y(t);return Buffer.from(r.createHmac("sha256",e).update(a).digest("hex")+a).toString("base64")},getSecuredApiKeyRemainingValidity({securedApiKey:e}){const r=Buffer.from(e,"base64").toString("ascii").match(/validUntil=(\d+)/);if(null===r)throw new Error("ValidUntil not found in given secured api key.");return parseInt(r[1],10)-Math.round((new Date).getTime()/1e3)},async chunkedBatch({indexName:e,objects:r,action:t="addObject",waitForTasks:a,batchSize:n=1e3},s){let i=[];const o=[];for(const[a,c]of r.entries())i.push({action:t,body:c}),a%n==0&&(o.push(await this.batch({indexName:e,batchWriteParams:{requests:i}},s)),i=[]);if(a)for(const r of o)await this.waitForTask({indexName:e,taskID:r.taskID});return o},async replaceAllObjects({indexName:e,objects:r,batchSize:t},a){const n=`${e}_tmp_${Math.random().toString(36).substring(7)}`,s=await this.operationIndex({indexName:e,operationIndexParams:{operation:"copy",destination:n,scope:["settings","rules","synonyms"]}},a);await this.waitForTask({indexName:e,taskID:s.taskID});const i=await this.chunkedBatch({indexName:n,objects:r,waitForTasks:!0,batchSize:t},a),o=await this.operationIndex({indexName:n,operationIndexParams:{operation:"move",destination:e}},a);return await this.waitForTask({indexName:e,taskID:o.taskID}),{copyOperationResponse:s,batchResponses:i,moveOperationResponse:o}},addApiKey(e,r){if(!e)throw new Error("Parameter `apiKey` is required when calling `addApiKey`.");if(!e.acl)throw new Error("Parameter `apiKey.acl` is required when calling `addApiKey`.");const t={method:"POST",path:"/1/keys",queryParameters:{},headers:{},data:e};return c.request(t,r)},addOrUpdateObject({indexName:e,objectID:r,body:t},a){if(!e)throw new Error("Parameter `indexName` is required when calling `addOrUpdateObject`.");if(!r)throw new Error("Parameter `objectID` is required when calling `addOrUpdateObject`.");if(!t)throw new Error("Parameter `body` is required when calling `addOrUpdateObject`.");const n={method:"PUT",path:"/1/indexes/{indexName}/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),queryParameters:{},headers:{},data:t};return c.request(n,a)},appendSource(e,r){if(!e)throw new Error("Parameter `source` is required when calling `appendSource`.");if(!e.source)throw new Error("Parameter `source.source` is required when calling `appendSource`.");const t={method:"POST",path:"/1/security/sources/append",queryParameters:{},headers:{},data:e};return c.request(t,r)},assignUserId({xAlgoliaUserID:e,assignUserIdParams:r},t){if(!e)throw new Error("Parameter `xAlgoliaUserID` is required when calling `assignUserId`.");if(!r)throw new Error("Parameter `assignUserIdParams` is required when calling `assignUserId`.");if(!r.cluster)throw new Error("Parameter `assignUserIdParams.cluster` is required when calling `assignUserId`.");const a={};void 0!==e&&(a["X-Algolia-User-ID"]=e.toString());const n={method:"POST",path:"/1/clusters/mapping",queryParameters:{},headers:a,data:r};return c.request(n,t)},batch({indexName:e,batchWriteParams:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `batch`.");if(!r)throw new Error("Parameter `batchWriteParams` is required when calling `batch`.");if(!r.requests)throw new Error("Parameter `batchWriteParams.requests` is required when calling `batch`.");const a={method:"POST",path:"/1/indexes/{indexName}/batch".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return c.request(a,t)},batchAssignUserIds({xAlgoliaUserID:e,batchAssignUserIdsParams:r},t){if(!e)throw new Error("Parameter `xAlgoliaUserID` is required when calling `batchAssignUserIds`.");if(!r)throw new Error("Parameter `batchAssignUserIdsParams` is required when calling `batchAssignUserIds`.");if(!r.cluster)throw new Error("Parameter `batchAssignUserIdsParams.cluster` is required when calling `batchAssignUserIds`.");if(!r.users)throw new Error("Parameter `batchAssignUserIdsParams.users` is required when calling `batchAssignUserIds`.");const a={};void 0!==e&&(a["X-Algolia-User-ID"]=e.toString());const n={method:"POST",path:"/1/clusters/mapping/batch",queryParameters:{},headers:a,data:r};return c.request(n,t)},batchDictionaryEntries({dictionaryName:e,batchDictionaryEntriesParams:r},t){if(!e)throw new Error("Parameter `dictionaryName` is required when calling `batchDictionaryEntries`.");if(!r)throw new Error("Parameter `batchDictionaryEntriesParams` is required when calling `batchDictionaryEntries`.");if(!r.requests)throw new Error("Parameter `batchDictionaryEntriesParams.requests` is required when calling `batchDictionaryEntries`.");const a={method:"POST",path:"/1/dictionaries/{dictionaryName}/batch".replace("{dictionaryName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return c.request(a,t)},browse({indexName:e,browseParams:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `browse`.");const a={method:"POST",path:"/1/indexes/{indexName}/browse".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r||{}};return c.request(a,t)},clearObjects({indexName:e},r){if(!e)throw new Error("Parameter `indexName` is required when calling `clearObjects`.");const t={method:"POST",path:"/1/indexes/{indexName}/clear".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{}};return c.request(t,r)},clearRules({indexName:e,forwardToReplicas:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `clearRules`.");const a="/1/indexes/{indexName}/rules/clear".replace("{indexName}",encodeURIComponent(e)),n={};void 0!==r&&(n.forwardToReplicas=r.toString());const s={method:"POST",path:a,queryParameters:n,headers:{}};return c.request(s,t)},clearSynonyms({indexName:e,forwardToReplicas:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `clearSynonyms`.");const a="/1/indexes/{indexName}/synonyms/clear".replace("{indexName}",encodeURIComponent(e)),n={};void 0!==r&&(n.forwardToReplicas=r.toString());const s={method:"POST",path:a,queryParameters:n,headers:{}};return c.request(s,t)},customDelete({path:e,parameters:r},t){if(!e)throw new Error("Parameter `path` is required when calling `customDelete`.");const a={method:"DELETE",path:"/1{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return c.request(a,t)},customGet({path:e,parameters:r},t){if(!e)throw new Error("Parameter `path` is required when calling `customGet`.");const a={method:"GET",path:"/1{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return c.request(a,t)},customPost({path:e,parameters:r,body:t},a){if(!e)throw new Error("Parameter `path` is required when calling `customPost`.");const n={method:"POST",path:"/1{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:t||{}};return c.request(n,a)},customPut({path:e,parameters:r,body:t},a){if(!e)throw new Error("Parameter `path` is required when calling `customPut`.");const n={method:"PUT",path:"/1{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:t||{}};return c.request(n,a)},deleteApiKey({key:e},r){if(!e)throw new Error("Parameter `key` is required when calling `deleteApiKey`.");const t={method:"DELETE",path:"/1/keys/{key}".replace("{key}",encodeURIComponent(e)),queryParameters:{},headers:{}};return c.request(t,r)},deleteBy({indexName:e,deleteByParams:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `deleteBy`.");if(!r)throw new Error("Parameter `deleteByParams` is required when calling `deleteBy`.");const a={method:"POST",path:"/1/indexes/{indexName}/deleteByQuery".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return c.request(a,t)},deleteIndex({indexName:e},r){if(!e)throw new Error("Parameter `indexName` is required when calling `deleteIndex`.");const t={method:"DELETE",path:"/1/indexes/{indexName}".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{}};return c.request(t,r)},deleteObject({indexName:e,objectID:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `deleteObject`.");if(!r)throw new Error("Parameter `objectID` is required when calling `deleteObject`.");const a={method:"DELETE",path:"/1/indexes/{indexName}/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),queryParameters:{},headers:{}};return c.request(a,t)},deleteRule({indexName:e,objectID:r,forwardToReplicas:t},a){if(!e)throw new Error("Parameter `indexName` is required when calling `deleteRule`.");if(!r)throw new Error("Parameter `objectID` is required when calling `deleteRule`.");const n="/1/indexes/{indexName}/rules/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),s={};void 0!==t&&(s.forwardToReplicas=t.toString());const i={method:"DELETE",path:n,queryParameters:s,headers:{}};return c.request(i,a)},deleteSource({source:e},r){if(!e)throw new Error("Parameter `source` is required when calling `deleteSource`.");const t={method:"DELETE",path:"/1/security/sources/{source}".replace("{source}",encodeURIComponent(e)),queryParameters:{},headers:{}};return c.request(t,r)},deleteSynonym({indexName:e,objectID:r,forwardToReplicas:t},a){if(!e)throw new Error("Parameter `indexName` is required when calling `deleteSynonym`.");if(!r)throw new Error("Parameter `objectID` is required when calling `deleteSynonym`.");const n="/1/indexes/{indexName}/synonyms/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),s={};void 0!==t&&(s.forwardToReplicas=t.toString());const i={method:"DELETE",path:n,queryParameters:s,headers:{}};return c.request(i,a)},getApiKey({key:e},r){if(!e)throw new Error("Parameter `key` is required when calling `getApiKey`.");const t={method:"GET",path:"/1/keys/{key}".replace("{key}",encodeURIComponent(e)),queryParameters:{},headers:{}};return c.request(t,r)},getDictionaryLanguages(e){const r={method:"GET",path:"/1/dictionaries/*/languages",queryParameters:{},headers:{}};return c.request(r,e)},getDictionarySettings(e){const r={method:"GET",path:"/1/dictionaries/*/settings",queryParameters:{},headers:{}};return c.request(r,e)},getLogs({offset:e,length:r,indexName:t,type:a}={},n=void 0){const s={};void 0!==e&&(s.offset=e.toString()),void 0!==r&&(s.length=r.toString()),void 0!==t&&(s.indexName=t.toString()),void 0!==a&&(s.type=a.toString());const i={method:"GET",path:"/1/logs",queryParameters:s,headers:{}};return c.request(i,n)},getObject({indexName:e,objectID:r,attributesToRetrieve:t},a){if(!e)throw new Error("Parameter `indexName` is required when calling `getObject`.");if(!r)throw new Error("Parameter `objectID` is required when calling `getObject`.");const n="/1/indexes/{indexName}/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),s={};void 0!==t&&(s.attributesToRetrieve=t.toString());const i={method:"GET",path:n,queryParameters:s,headers:{}};return c.request(i,a)},getObjects(e,r){if(!e)throw new Error("Parameter `getObjectsParams` is required when calling `getObjects`.");if(!e.requests)throw new Error("Parameter `getObjectsParams.requests` is required when calling `getObjects`.");const t={method:"POST",path:"/1/indexes/*/objects",queryParameters:{},headers:{},data:e,useReadTransporter:!0,cacheable:!0};return c.request(t,r)},getRule({indexName:e,objectID:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `getRule`.");if(!r)throw new Error("Parameter `objectID` is required when calling `getRule`.");const a={method:"GET",path:"/1/indexes/{indexName}/rules/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),queryParameters:{},headers:{}};return c.request(a,t)},getSettings({indexName:e},r){if(!e)throw new Error("Parameter `indexName` is required when calling `getSettings`.");const t={method:"GET",path:"/1/indexes/{indexName}/settings".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{}};return c.request(t,r)},getSources(e){const r={method:"GET",path:"/1/security/sources",queryParameters:{},headers:{}};return c.request(r,e)},getSynonym({indexName:e,objectID:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `getSynonym`.");if(!r)throw new Error("Parameter `objectID` is required when calling `getSynonym`.");const a={method:"GET",path:"/1/indexes/{indexName}/synonyms/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),queryParameters:{},headers:{}};return c.request(a,t)},getTask({indexName:e,taskID:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `getTask`.");if(!r)throw new Error("Parameter `taskID` is required when calling `getTask`.");const a={method:"GET",path:"/1/indexes/{indexName}/task/{taskID}".replace("{indexName}",encodeURIComponent(e)).replace("{taskID}",encodeURIComponent(r)),queryParameters:{},headers:{}};return c.request(a,t)},getTopUserIds(e){const r={method:"GET",path:"/1/clusters/mapping/top",queryParameters:{},headers:{}};return c.request(r,e)},getUserId({userID:e},r){if(!e)throw new Error("Parameter `userID` is required when calling `getUserId`.");const t={method:"GET",path:"/1/clusters/mapping/{userID}".replace("{userID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return c.request(t,r)},hasPendingMappings({getClusters:e}={},r=void 0){const t={};void 0!==e&&(t.getClusters=e.toString());const a={method:"GET",path:"/1/clusters/mapping/pending",queryParameters:t,headers:{}};return c.request(a,r)},listApiKeys(e){const r={method:"GET",path:"/1/keys",queryParameters:{},headers:{}};return c.request(r,e)},listClusters(e){const r={method:"GET",path:"/1/clusters",queryParameters:{},headers:{}};return c.request(r,e)},listIndices({page:e,hitsPerPage:r}={},t=void 0){const a={};void 0!==e&&(a.page=e.toString()),void 0!==r&&(a.hitsPerPage=r.toString());const n={method:"GET",path:"/1/indexes",queryParameters:a,headers:{}};return c.request(n,t)},listUserIds({page:e,hitsPerPage:r}={},t=void 0){const a={};void 0!==e&&(a.page=e.toString()),void 0!==r&&(a.hitsPerPage=r.toString());const n={method:"GET",path:"/1/clusters/mapping",queryParameters:a,headers:{}};return c.request(n,t)},multipleBatch(e,r){if(!e)throw new Error("Parameter `batchParams` is required when calling `multipleBatch`.");if(!e.requests)throw new Error("Parameter `batchParams.requests` is required when calling `multipleBatch`.");const t={method:"POST",path:"/1/indexes/*/batch",queryParameters:{},headers:{},data:e};return c.request(t,r)},operationIndex({indexName:e,operationIndexParams:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `operationIndex`.");if(!r)throw new Error("Parameter `operationIndexParams` is required when calling `operationIndex`.");if(!r.operation)throw new Error("Parameter `operationIndexParams.operation` is required when calling `operationIndex`.");if(!r.destination)throw new Error("Parameter `operationIndexParams.destination` is required when calling `operationIndex`.");const a={method:"POST",path:"/1/indexes/{indexName}/operation".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return c.request(a,t)},partialUpdateObject({indexName:e,objectID:r,attributesToUpdate:t,createIfNotExists:a},n){if(!e)throw new Error("Parameter `indexName` is required when calling `partialUpdateObject`.");if(!r)throw new Error("Parameter `objectID` is required when calling `partialUpdateObject`.");if(!t)throw new Error("Parameter `attributesToUpdate` is required when calling `partialUpdateObject`.");const s="/1/indexes/{indexName}/{objectID}/partial".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),i={};void 0!==a&&(i.createIfNotExists=a.toString());const o={method:"POST",path:s,queryParameters:i,headers:{},data:t};return c.request(o,n)},removeUserId({userID:e},r){if(!e)throw new Error("Parameter `userID` is required when calling `removeUserId`.");const t={method:"DELETE",path:"/1/clusters/mapping/{userID}".replace("{userID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return c.request(t,r)},replaceSources({source:e},r){if(!e)throw new Error("Parameter `source` is required when calling `replaceSources`.");const t={method:"PUT",path:"/1/security/sources",queryParameters:{},headers:{},data:e};return c.request(t,r)},restoreApiKey({key:e},r){if(!e)throw new Error("Parameter `key` is required when calling `restoreApiKey`.");const t={method:"POST",path:"/1/keys/{key}/restore".replace("{key}",encodeURIComponent(e)),queryParameters:{},headers:{}};return c.request(t,r)},saveObject({indexName:e,body:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `saveObject`.");if(!r)throw new Error("Parameter `body` is required when calling `saveObject`.");const a={method:"POST",path:"/1/indexes/{indexName}".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return c.request(a,t)},saveRule({indexName:e,objectID:r,rule:t,forwardToReplicas:a},n){if(!e)throw new Error("Parameter `indexName` is required when calling `saveRule`.");if(!r)throw new Error("Parameter `objectID` is required when calling `saveRule`.");if(!t)throw new Error("Parameter `rule` is required when calling `saveRule`.");if(!t.objectID)throw new Error("Parameter `rule.objectID` is required when calling `saveRule`.");const s="/1/indexes/{indexName}/rules/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),i={};void 0!==a&&(i.forwardToReplicas=a.toString());const o={method:"PUT",path:s,queryParameters:i,headers:{},data:t};return c.request(o,n)},saveRules({indexName:e,rules:r,forwardToReplicas:t,clearExistingRules:a},n){if(!e)throw new Error("Parameter `indexName` is required when calling `saveRules`.");if(!r)throw new Error("Parameter `rules` is required when calling `saveRules`.");const s="/1/indexes/{indexName}/rules/batch".replace("{indexName}",encodeURIComponent(e)),i={};void 0!==t&&(i.forwardToReplicas=t.toString()),void 0!==a&&(i.clearExistingRules=a.toString());const o={method:"POST",path:s,queryParameters:i,headers:{},data:r};return c.request(o,n)},saveSynonym({indexName:e,objectID:r,synonymHit:t,forwardToReplicas:a},n){if(!e)throw new Error("Parameter `indexName` is required when calling `saveSynonym`.");if(!r)throw new Error("Parameter `objectID` is required when calling `saveSynonym`.");if(!t)throw new Error("Parameter `synonymHit` is required when calling `saveSynonym`.");if(!t.objectID)throw new Error("Parameter `synonymHit.objectID` is required when calling `saveSynonym`.");if(!t.type)throw new Error("Parameter `synonymHit.type` is required when calling `saveSynonym`.");const s="/1/indexes/{indexName}/synonyms/{objectID}".replace("{indexName}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),i={};void 0!==a&&(i.forwardToReplicas=a.toString());const o={method:"PUT",path:s,queryParameters:i,headers:{},data:t};return c.request(o,n)},saveSynonyms({indexName:e,synonymHit:r,forwardToReplicas:t,replaceExistingSynonyms:a},n){if(!e)throw new Error("Parameter `indexName` is required when calling `saveSynonyms`.");if(!r)throw new Error("Parameter `synonymHit` is required when calling `saveSynonyms`.");const s="/1/indexes/{indexName}/synonyms/batch".replace("{indexName}",encodeURIComponent(e)),i={};void 0!==t&&(i.forwardToReplicas=t.toString()),void 0!==a&&(i.replaceExistingSynonyms=a.toString());const o={method:"POST",path:s,queryParameters:i,headers:{},data:r};return c.request(o,n)},search(e,r){if(e&&Array.isArray(e)){const r={requests:e.map((({params:e,...r})=>"facet"===r.type?{...r,...e,type:"facet"}:{...r,...e,facet:void 0,maxFacetHits:void 0,facetQuery:void 0}))};e=r}if(!e)throw new Error("Parameter `searchMethodParams` is required when calling `search`.");if(!e.requests)throw new Error("Parameter `searchMethodParams.requests` is required when calling `search`.");const t={method:"POST",path:"/1/indexes/*/queries",queryParameters:{},headers:{},data:e,useReadTransporter:!0,cacheable:!0};return c.request(t,r)},searchDictionaryEntries({dictionaryName:e,searchDictionaryEntriesParams:r},t){if(!e)throw new Error("Parameter `dictionaryName` is required when calling `searchDictionaryEntries`.");if(!r)throw new Error("Parameter `searchDictionaryEntriesParams` is required when calling `searchDictionaryEntries`.");if(!r.query)throw new Error("Parameter `searchDictionaryEntriesParams.query` is required when calling `searchDictionaryEntries`.");const a={method:"POST",path:"/1/dictionaries/{dictionaryName}/search".replace("{dictionaryName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r,useReadTransporter:!0,cacheable:!0};return c.request(a,t)},searchForFacetValues({indexName:e,facetName:r,searchForFacetValuesRequest:t},a){if(!e)throw new Error("Parameter `indexName` is required when calling `searchForFacetValues`.");if(!r)throw new Error("Parameter `facetName` is required when calling `searchForFacetValues`.");const n={method:"POST",path:"/1/indexes/{indexName}/facets/{facetName}/query".replace("{indexName}",encodeURIComponent(e)).replace("{facetName}",encodeURIComponent(r)),queryParameters:{},headers:{},data:t||{},useReadTransporter:!0,cacheable:!0};return c.request(n,a)},searchRules({indexName:e,searchRulesParams:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `searchRules`.");const a={method:"POST",path:"/1/indexes/{indexName}/rules/search".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r||{},useReadTransporter:!0,cacheable:!0};return c.request(a,t)},searchSingleIndex({indexName:e,searchParams:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `searchSingleIndex`.");const a={method:"POST",path:"/1/indexes/{indexName}/query".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r||{},useReadTransporter:!0,cacheable:!0};return c.request(a,t)},searchSynonyms({indexName:e,searchSynonymsParams:r},t){if(!e)throw new Error("Parameter `indexName` is required when calling `searchSynonyms`.");const a={method:"POST",path:"/1/indexes/{indexName}/synonyms/search".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r||{},useReadTransporter:!0,cacheable:!0};return c.request(a,t)},searchUserIds(e,r){if(!e)throw new Error("Parameter `searchUserIdsParams` is required when calling `searchUserIds`.");if(!e.query)throw new Error("Parameter `searchUserIdsParams.query` is required when calling `searchUserIds`.");const t={method:"POST",path:"/1/clusters/mapping/search",queryParameters:{},headers:{},data:e,useReadTransporter:!0,cacheable:!0};return c.request(t,r)},setDictionarySettings(e,r){if(!e)throw new Error("Parameter `dictionarySettingsParams` is required when calling `setDictionarySettings`.");if(!e.disableStandardEntries)throw new Error("Parameter `dictionarySettingsParams.disableStandardEntries` is required when calling `setDictionarySettings`.");const t={method:"PUT",path:"/1/dictionaries/*/settings",queryParameters:{},headers:{},data:e};return c.request(t,r)},setSettings({indexName:e,indexSettings:r,forwardToReplicas:t},a){if(!e)throw new Error("Parameter `indexName` is required when calling `setSettings`.");if(!r)throw new Error("Parameter `indexSettings` is required when calling `setSettings`.");const n="/1/indexes/{indexName}/settings".replace("{indexName}",encodeURIComponent(e)),s={};void 0!==t&&(s.forwardToReplicas=t.toString());const i={method:"PUT",path:n,queryParameters:s,headers:{},data:r};return c.request(i,a)},updateApiKey({key:e,apiKey:r},t){if(!e)throw new Error("Parameter `key` is required when calling `updateApiKey`.");if(!r)throw new Error("Parameter `apiKey` is required when calling `updateApiKey`.");if(!r.acl)throw new Error("Parameter `apiKey.acl` is required when calling `updateApiKey`.");const a={method:"PUT",path:"/1/keys/{key}".replace("{key}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return c.request(a,t)}}}({appId:e,apiKey:i,timeouts:{connect:1e3,read:2e3,write:3e4},requester:{send:function(e){return new Promise((r=>{const t=new XMLHttpRequest;t.open(e.method,e.url,!0),Object.keys(e.headers).forEach((r=>t.setRequestHeader(r,e.headers[r])));const a=(e,a)=>setTimeout((()=>{t.abort(),r({status:0,content:a,isTimedOut:!0})}),e),n=a(e.connectTimeout,"Connection timeout");let s;t.onreadystatechange=()=>{t.readyState>t.OPENED&&void 0===s&&(clearTimeout(n),s=a(e.responseTimeout,"Socket timeout"))},t.onerror=()=>{0===t.status&&(clearTimeout(n),clearTimeout(s),r({content:t.responseText||"Network request failed",status:t.status,isTimedOut:!1}))},t.onload=()=>{clearTimeout(n),clearTimeout(s),r({content:t.responseText,status:t.status,isTimedOut:!1})},t.send(e.data)}))}},algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:s(),requestsCache:s({serializable:!1}),hostsCache:n({caches:[a({key:`${x}-${e}`}),s()]}),...o})}}));
@@ -1,9 +1,11 @@
1
1
  import type { CreateIterablePromise } from '@algolia/client-common';
2
+ import type { Action } from './action';
2
3
  import type { ApiKey } from './apiKey';
3
4
  import type { AssignUserIdParams } from './assignUserIdParams';
4
5
  import type { AttributeToUpdate } from './attributeToUpdate';
5
6
  import type { BatchAssignUserIdsParams } from './batchAssignUserIdsParams';
6
7
  import type { BatchDictionaryEntriesParams } from './batchDictionaryEntriesParams';
8
+ import type { BatchResponse } from './batchResponse';
7
9
  import type { BatchWriteParams } from './batchWriteParams';
8
10
  import type { BrowseParams } from './browseParams';
9
11
  import type { DeleteByParams } from './deleteByParams';
@@ -22,6 +24,7 @@ import type { SearchRulesParams } from './searchRulesParams';
22
24
  import type { SearchSynonymsParams } from './searchSynonymsParams';
23
25
  import type { Source } from './source';
24
26
  import type { SynonymHit } from './synonymHit';
27
+ import type { UpdatedAtResponse } from './updatedAtResponse';
25
28
  /**
26
29
  * Properties for the `addOrUpdateObject` method.
27
30
  */
@@ -703,5 +706,78 @@ export type WaitForApiKeyOptions = WaitForOptions & {
703
706
  */
704
707
  apiKey: Partial<ApiKey>;
705
708
  });
709
+ export type GenerateSecuredApiKeyOptions = {
710
+ /**
711
+ * The base API key from which to generate the new secured one.
712
+ */
713
+ parentApiKey: string;
714
+ /**
715
+ * A set of properties defining the restrictions of the secured API key.
716
+ */
717
+ restrictions?: SecuredApiKeyRestrictions;
718
+ };
719
+ export type GetSecuredApiKeyRemainingValidityOptions = {
720
+ /**
721
+ * The secured API key generated with the `generateSecuredApiKey` method.
722
+ */
723
+ securedApiKey: string;
724
+ };
725
+ export type SecuredApiKeyRestrictions = {
726
+ /**
727
+ * A Unix timestamp used to define the expiration date of the API key.
728
+ */
729
+ validUntil?: number;
730
+ /**
731
+ * List of index names that can be queried.
732
+ */
733
+ restrictIndices?: string[] | string;
734
+ /**
735
+ * IPv4 network allowed to use the generated key. This is used for more protection against API key leaking and reuse.
736
+ */
737
+ restrictSources?: string;
738
+ /**
739
+ * Specify a user identifier. This is often used with rate limits.
740
+ */
741
+ userToken?: string;
742
+ searchParams?: SearchParamsObject;
743
+ };
744
+ export type ChunkedBatchOptions = ReplaceAllObjectsOptions & {
745
+ /**
746
+ * The `batch` `action` to perform on the given array of `objects`, defaults to `addObject`.
747
+ */
748
+ action?: Action;
749
+ /**
750
+ * Whether or not we should wait until every `batch` tasks has been processed, this operation may slow the total execution time of this method but is more reliable.
751
+ */
752
+ waitForTasks?: boolean;
753
+ };
754
+ export type ReplaceAllObjectsOptions = {
755
+ /**
756
+ * The `indexName` to replace `objects` in.
757
+ */
758
+ indexName: string;
759
+ /**
760
+ * The array of `objects` to store in the given Algolia `indexName`.
761
+ */
762
+ objects: Array<Record<string, any>>;
763
+ /**
764
+ * The size of the chunk of `objects`. The number of `batch` calls will be equal to `length(objects) / batchSize`. Defaults to 1000.
765
+ */
766
+ batchSize?: number;
767
+ };
768
+ export type ReplaceAllObjectsResponse = {
769
+ /**
770
+ * The response of the `operationIndex` request for the `copy` operation.
771
+ */
772
+ copyOperationResponse: UpdatedAtResponse;
773
+ /**
774
+ * The response of the `batch` request(s).
775
+ */
776
+ batchResponses: BatchResponse[];
777
+ /**
778
+ * The response of the `operationIndex` request for the `move` operation.
779
+ */
780
+ moveOperationResponse: UpdatedAtResponse;
781
+ };
706
782
  export {};
707
783
  //# sourceMappingURL=clientMethodProps.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"clientMethodProps.d.ts","sourceRoot":"","sources":["../../model/clientMethodProps.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"clientMethodProps.d.ts","sourceRoot":"","sources":["../../model/clientMethodProps.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ import type { ApiKey } from '../model/apiKey';
4
4
  import type { BatchParams } from '../model/batchParams';
5
5
  import type { BatchResponse } from '../model/batchResponse';
6
6
  import type { BrowseResponse } from '../model/browseResponse';
7
- import type { BrowseOptions, WaitForTaskOptions, WaitForApiKeyOptions, AddOrUpdateObjectProps, AssignUserIdProps, BatchProps, BatchAssignUserIdsProps, BatchDictionaryEntriesProps, BrowseProps, ClearObjectsProps, ClearRulesProps, ClearSynonymsProps, CustomDeleteProps, CustomGetProps, CustomPostProps, CustomPutProps, DeleteApiKeyProps, DeleteByProps, DeleteIndexProps, DeleteObjectProps, DeleteRuleProps, DeleteSourceProps, DeleteSynonymProps, GetApiKeyProps, GetLogsProps, GetObjectProps, GetRuleProps, GetSettingsProps, GetSynonymProps, GetTaskProps, GetUserIdProps, HasPendingMappingsProps, ListIndicesProps, ListUserIdsProps, OperationIndexProps, PartialUpdateObjectProps, RemoveUserIdProps, ReplaceSourcesProps, RestoreApiKeyProps, SaveObjectProps, SaveRuleProps, SaveRulesProps, SaveSynonymProps, SaveSynonymsProps, LegacySearchMethodProps, SearchDictionaryEntriesProps, SearchForFacetValuesProps, SearchRulesProps, SearchSingleIndexProps, SearchSynonymsProps, SetSettingsProps, UpdateApiKeyProps } from '../model/clientMethodProps';
7
+ import type { BrowseOptions, ChunkedBatchOptions, GenerateSecuredApiKeyOptions, GetSecuredApiKeyRemainingValidityOptions, ReplaceAllObjectsOptions, ReplaceAllObjectsResponse, WaitForApiKeyOptions, WaitForTaskOptions, AddOrUpdateObjectProps, AssignUserIdProps, BatchProps, BatchAssignUserIdsProps, BatchDictionaryEntriesProps, BrowseProps, ClearObjectsProps, ClearRulesProps, ClearSynonymsProps, CustomDeleteProps, CustomGetProps, CustomPostProps, CustomPutProps, DeleteApiKeyProps, DeleteByProps, DeleteIndexProps, DeleteObjectProps, DeleteRuleProps, DeleteSourceProps, DeleteSynonymProps, GetApiKeyProps, GetLogsProps, GetObjectProps, GetRuleProps, GetSettingsProps, GetSynonymProps, GetTaskProps, GetUserIdProps, HasPendingMappingsProps, ListIndicesProps, ListUserIdsProps, OperationIndexProps, PartialUpdateObjectProps, RemoveUserIdProps, ReplaceSourcesProps, RestoreApiKeyProps, SaveObjectProps, SaveRuleProps, SaveRulesProps, SaveSynonymProps, SaveSynonymsProps, LegacySearchMethodProps, SearchDictionaryEntriesProps, SearchForFacetValuesProps, SearchRulesProps, SearchSingleIndexProps, SearchSynonymsProps, SetSettingsProps, UpdateApiKeyProps } from '../model/clientMethodProps';
8
8
  import type { CreatedAtResponse } from '../model/createdAtResponse';
9
9
  import type { DeleteApiKeyResponse } from '../model/deleteApiKeyResponse';
10
10
  import type { DeleteSourceResponse } from '../model/deleteSourceResponse';
@@ -45,7 +45,7 @@ import type { UpdatedAtResponse } from '../model/updatedAtResponse';
45
45
  import type { UpdatedAtWithObjectIdResponse } from '../model/updatedAtWithObjectIdResponse';
46
46
  import type { UpdatedRuleResponse } from '../model/updatedRuleResponse';
47
47
  import type { UserId } from '../model/userId';
48
- export declare const apiClientVersion = "5.0.0-alpha.102";
48
+ export declare const apiClientVersion = "5.0.0-alpha.103";
49
49
  export declare function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode, algoliaAgents, ...options }: CreateClientOptions): {
50
50
  transporter: import("@algolia/client-common").Transporter;
51
51
  /**
@@ -71,7 +71,7 @@ export declare function createSearchClient({ appId: appIdOption, apiKey: apiKeyO
71
71
  * Helper: Wait for a task to be published (completed) for a given `indexName` and `taskID`.
72
72
  *
73
73
  * @summary Helper method that waits for a task to be published (completed).
74
- * @param waitForTaskOptions - The waitForTaskOptions object.
74
+ * @param waitForTaskOptions - The `waitForTaskOptions` object.
75
75
  * @param waitForTaskOptions.indexName - The `indexName` where the operation was performed.
76
76
  * @param waitForTaskOptions.taskID - The `taskID` returned in the method response.
77
77
  * @param waitForTaskOptions.maxRetries - The maximum number of retries. 50 by default.
@@ -83,7 +83,7 @@ export declare function createSearchClient({ appId: appIdOption, apiKey: apiKeyO
83
83
  * Helper: Wait for an API key to be added, updated or deleted based on a given `operation`.
84
84
  *
85
85
  * @summary Helper method that waits for an API key task to be processed.
86
- * @param waitForApiKeyOptions - The waitForApiKeyOptions object.
86
+ * @param waitForApiKeyOptions - The `waitForApiKeyOptions` object.
87
87
  * @param waitForApiKeyOptions.operation - The `operation` that was done on a `key`.
88
88
  * @param waitForApiKeyOptions.key - The `key` that has been added, deleted or updated.
89
89
  * @param waitForApiKeyOptions.apiKey - Necessary to know if an `update` operation has been processed, compare fields of the response with it.
@@ -96,7 +96,7 @@ export declare function createSearchClient({ appId: appIdOption, apiKey: apiKeyO
96
96
  * Helper: Iterate on the `browse` method of the client to allow aggregating objects of an index.
97
97
  *
98
98
  * @summary Helper method that iterates on the `browse` method.
99
- * @param browseObjects - The browseObjects object.
99
+ * @param browseObjects - The `browseObjects` object.
100
100
  * @param browseObjects.indexName - The index in which to perform the request.
101
101
  * @param browseObjects.browseParams - The `browse` parameters.
102
102
  * @param browseObjects.validate - The validator function. It receive the resolved return of the API call. By default, stops when there is no `cursor` in the response.
@@ -108,11 +108,11 @@ export declare function createSearchClient({ appId: appIdOption, apiKey: apiKeyO
108
108
  * Helper: Iterate on the `searchRules` method of the client to allow aggregating rules of an index.
109
109
  *
110
110
  * @summary Helper method that iterates on the `searchRules` method.
111
- * @param browseObjects - The browseObjects object.
112
- * @param browseObjects.indexName - The index in which to perform the request.
113
- * @param browseObjects.searchRulesParams - The `searchRules` method parameters.
114
- * @param browseObjects.validate - The validator function. It receive the resolved return of the API call. By default, stops when there is less hits returned than the number of maximum hits (1000).
115
- * @param browseObjects.aggregator - The function that runs right after the API call has been resolved, allows you to do anything with the response before `validate`.
111
+ * @param browseRules - The `browseRules` object.
112
+ * @param browseRules.indexName - The index in which to perform the request.
113
+ * @param browseRules.searchRulesParams - The `searchRules` method parameters.
114
+ * @param browseRules.validate - The validator function. It receive the resolved return of the API call. By default, stops when there is less hits returned than the number of maximum hits (1000).
115
+ * @param browseRules.aggregator - The function that runs right after the API call has been resolved, allows you to do anything with the response before `validate`.
116
116
  * @param requestOptions - The requestOptions to send along with the query, they will be forwarded to the `searchRules` method and merged with the transporter requestOptions.
117
117
  */
118
118
  browseRules({ indexName, searchRulesParams, ...browseRulesOptions }: BrowseOptions<SearchRulesResponse> & SearchRulesProps, requestOptions?: RequestOptions): Promise<SearchRulesResponse>;
@@ -120,11 +120,11 @@ export declare function createSearchClient({ appId: appIdOption, apiKey: apiKeyO
120
120
  * Helper: Iterate on the `searchSynonyms` method of the client to allow aggregating rules of an index.
121
121
  *
122
122
  * @summary Helper method that iterates on the `searchSynonyms` method.
123
- * @param browseObjects - The browseObjects object.
124
- * @param browseObjects.indexName - The index in which to perform the request.
125
- * @param browseObjects.validate - The validator function. It receive the resolved return of the API call. By default, stops when there is less hits returned than the number of maximum hits (1000).
126
- * @param browseObjects.aggregator - The function that runs right after the API call has been resolved, allows you to do anything with the response before `validate`.
127
- * @param browseObjects.searchSynonymsParams - The `searchSynonyms` method parameters.
123
+ * @param browseSynonyms - The `browseSynonyms` object.
124
+ * @param browseSynonyms.indexName - The index in which to perform the request.
125
+ * @param browseSynonyms.validate - The validator function. It receive the resolved return of the API call. By default, stops when there is less hits returned than the number of maximum hits (1000).
126
+ * @param browseSynonyms.aggregator - The function that runs right after the API call has been resolved, allows you to do anything with the response before `validate`.
127
+ * @param browseSynonyms.searchSynonymsParams - The `searchSynonyms` method parameters.
128
128
  * @param requestOptions - The requestOptions to send along with the query, they will be forwarded to the `searchSynonyms` method and merged with the transporter requestOptions.
129
129
  */
130
130
  browseSynonyms({ indexName, searchSynonymsParams, ...browseSynonymsOptions }: BrowseOptions<SearchSynonymsResponse> & SearchSynonymsProps, requestOptions?: RequestOptions): Promise<SearchSynonymsResponse>;
@@ -150,6 +150,47 @@ export declare function createSearchClient({ appId: appIdOption, apiKey: apiKeyO
150
150
  searchForFacets(searchMethodParams: LegacySearchMethodProps | SearchMethodParams, requestOptions?: RequestOptions): Promise<{
151
151
  results: SearchForFacetValuesResponse[];
152
152
  }>;
153
+ /**
154
+ * Helper: Generates a secured API key based on the given `parentApiKey` and given `restrictions`.
155
+ *
156
+ * @summary Helper: Generates a secured API key based on the given `parentApiKey` and given `restrictions`.
157
+ * @param generateSecuredApiKey - The `generateSecuredApiKey` object.
158
+ * @param generateSecuredApiKey.parentApiKey - The base API key from which to generate the new secured one.
159
+ * @param generateSecuredApiKey.restrictions - A set of properties defining the restrictions of the secured API key.
160
+ */
161
+ generateSecuredApiKey({ parentApiKey, restrictions, }: GenerateSecuredApiKeyOptions): string;
162
+ /**
163
+ * Helper: Retrieves the remaining validity of the previous generated `secured_api_key`, the `ValidUntil` parameter must have been provided.
164
+ *
165
+ * @summary Helper: Retrieves the remaining validity of the previous generated `secured_api_key`, the `ValidUntil` parameter must have been provided.
166
+ * @param getSecuredApiKeyRemainingValidity - The `getSecuredApiKeyRemainingValidity` object.
167
+ * @param getSecuredApiKeyRemainingValidity.securedApiKey - The secured API key generated with the `generateSecuredApiKey` method.
168
+ */
169
+ getSecuredApiKeyRemainingValidity({ securedApiKey, }: GetSecuredApiKeyRemainingValidityOptions): number;
170
+ /**
171
+ * Helper: Chunks the given `objects` list in subset of 1000 elements max in order to make it fit in `batch` requests.
172
+ *
173
+ * @summary Helper: Chunks the given `objects` list in subset of 1000 elements max in order to make it fit in `batch` requests. * @param getSecuredApiKeyRemainingValidity - The `getSecuredApiKeyRemainingValidity` object.
174
+ * @param chunkedBatch - The `chunkedBatch` object.
175
+ * @param chunkedBatch.indexName - The `indexName` to replace `objects` in.
176
+ * @param chunkedBatch.objects - The array of `objects` to store in the given Algolia `indexName`.
177
+ * @param chunkedBatch.action - The `batch` `action` to perform on the given array of `objects`, defaults to `addObject`.
178
+ * @param chunkedBatch.waitForTasks - Whether or not we should wait until every `batch` tasks has been processed, this operation may slow the total execution time of this method but is more reliable.
179
+ * @param chunkedBatch.batchSize - The size of the chunk of `objects`. The number of `batch` calls will be equal to `length(objects) / batchSize`. Defaults to 1000.
180
+ * @param requestOptions - The requestOptions to send along with the query, they will be forwarded to the `getTask` method and merged with the transporter requestOptions.
181
+ */
182
+ chunkedBatch({ indexName, objects, action, waitForTasks, batchSize, }: ChunkedBatchOptions, requestOptions?: RequestOptions): Promise<BatchResponse[]>;
183
+ /**
184
+ * Helper: Replaces all objects (records) in the given `index_name` with the given `objects`. A temporary index is created during this process in order to backup your data.
185
+ *
186
+ * @summary Helper: Replaces all objects (records) in the given `index_name` with the given `objects`. A temporary index is created during this process in order to backup your data.
187
+ * @param replaceAllObjects - The `replaceAllObjects` object.
188
+ * @param replaceAllObjects.indexName - The `indexName` to replace `objects` in.
189
+ * @param replaceAllObjects.objects - The array of `objects` to store in the given Algolia `indexName`.
190
+ * @param replaceAllObjects.batchSize - The size of the chunk of `objects`. The number of `batch` calls will be equal to `length(objects) / batchSize`. Defaults to 1000.
191
+ * @param requestOptions - The requestOptions to send along with the query, they will be forwarded to the `getTask` method and merged with the transporter requestOptions.
192
+ */
193
+ replaceAllObjects({ indexName, objects, batchSize }: ReplaceAllObjectsOptions, requestOptions?: RequestOptions): Promise<ReplaceAllObjectsResponse>;
153
194
  /**
154
195
  * Add a new API key with specific permissions and restrictions. The request must be authenticated with the admin API key. The response returns an API key string.
155
196
  *
@@ -1 +1 @@
1
- {"version":3,"file":"searchClient.d.ts","sourceRoot":"","sources":["../../src/searchClient.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EACV,mBAAmB,EAInB,cAAc,EAEd,QAAQ,EAET,MAAM,wBAAwB,CAAC;AAEhC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EACV,aAAa,EACb,kBAAkB,EAClB,oBAAoB,EACpB,sBAAsB,EACtB,iBAAiB,EACjB,UAAU,EACV,uBAAuB,EACvB,2BAA2B,EAC3B,WAAW,EACX,iBAAiB,EACjB,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,YAAY,EACZ,cAAc,EACd,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,YAAY,EACZ,cAAc,EACd,uBAAuB,EACvB,gBAAgB,EAChB,gBAAgB,EAChB,mBAAmB,EACnB,wBAAwB,EACxB,iBAAiB,EACjB,mBAAmB,EACnB,kBAAkB,EAClB,eAAe,EACf,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EACjB,uBAAuB,EACvB,4BAA4B,EAC5B,yBAAyB,EACzB,gBAAgB,EAChB,sBAAsB,EACtB,mBAAmB,EACnB,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAClF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,wCAAwC,CAAC;AAC5F,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAC;AACtF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AAC1F,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,wCAAwC,CAAC;AAC5F,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAE9C,eAAO,MAAM,gBAAgB,oBAAoB,CAAC;AAsClD,wBAAgB,kBAAkB,CAAC,EACjC,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,YAAY,EACpB,QAAQ,EACR,aAAa,EACb,GAAG,OAAO,EACX,EAAE,mBAAmB;;IAwBlB;;OAEG;;IAGH;;OAEG;kBACW,QAAQ,IAAI,CAAC;IAO3B;;OAEG;;IAKH;;;;;OAKG;6BACsB,MAAM,YAAY,MAAM,GAAG,IAAI;IAIxD;;;;;;;;;;OAUG;6DAQE,kBAAkB,mBACJ,cAAc,GAC9B,QAAQ,eAAe,CAAC;IAgB3B;;;;;;;;;;;OAWG;oEASE,oBAAoB,mBACN,cAAc,GAC9B,QAAQ,QAAQ,GAAG,iBAAiB,CAAC;IAoDxC;;;;;;;;;;OAUG;0TAOgB,cAAc;IAoBjC;;;;;;;;;;OAUG;yEAME,cAAc,mBAAmB,CAAC,GAAG,gBAAgB,mBACvC,cAAc,GAC9B,QAAQ,mBAAmB,CAAC;IA0B/B;;;;;;;;;;OAUG;kFAME,cAAc,sBAAsB,CAAC,GAAG,mBAAmB,mBAC7C,cAAc,GAC9B,QAAQ,sBAAsB,CAAC;IA2BlC;;;;;;;OAOG;2CAEmB,uBAAuB,GAAG,kBAAkB,mBAC/C,cAAc;;;IAOjC;;;;;;;OAOG;wCAEmB,uBAAuB,GAAG,kBAAkB,mBAC/C,cAAc,GAC9B,QAAQ;QAAE,OAAO,EAAE,4BAA4B,EAAE,CAAA;KAAE,CAAC;IAKvD;;;;;;;;OAQG;sBAEO,MAAM,mBACG,cAAc,GAC9B,QAAQ,iBAAiB,CAAC;IA4B7B;;;;;;;;;;;OAWG;qDAE8B,sBAAsB,mBACpC,cAAc,GAC9B,QAAQ,6BAA6B,CAAC;IAoCzC;;;;;;;;OAQG;yBAEO,MAAM,mBACG,cAAc,GAC9B,QAAQ,iBAAiB,CAAC;IA4B7B;;;;;;;;;;OAUG;yDAEuC,iBAAiB,mBACxC,cAAc,GAC9B,QAAQ,iBAAiB,CAAC;IAsC7B;;;;;;;OAOG;2CAEgC,UAAU,mBAC1B,cAAc,GAC9B,QAAQ,aAAa,CAAC;IAqCzB;;;;;;;;;;OAUG;qEAE6C,uBAAuB,mBACpD,cAAc,GAC9B,QAAQ,iBAAiB,CAAC;IA2C7B;;;;;;;;;;OAUG;8EAKE,2BAA2B,mBACb,cAAc,GAC9B,QAAQ,iBAAiB,CAAC;IAqC7B;;;;;;;;;;OAUG;6CAE4B,WAAW,mBACvB,cAAc;IA0BjC;;;;;;;;;OASG;gCAEc,iBAAiB,mBACf,cAAc,GAC9B,QAAQ,iBAAiB,CAAC;IAwB7B;;;;;;;;;;OAUG;iDAEiC,eAAe,mBAChC,cAAc,GAC9B,QAAQ,iBAAiB,CAAC;IA4B7B;;;;;;;;;;OAUG;oDAEiC,kBAAkB,mBACnC,cAAc,GAC9B,QAAQ,iBAAiB,CAAC;IA4B7B;;;;;;;OAOG;uCAEqB,iBAAiB,mBACtB,cAAc,GAC9B,QAAQ,OAAO,MAAM,EAAE,GAAG,CAAC,CAAC;IAqB/B;;;;;;;OAOG;oCAEqB,cAAc,mBACnB,cAAc,GAC9B,QAAQ,OAAO,MAAM,EAAE,GAAG,CAAC,CAAC;IAqB/B;;;;;;;;OAQG;2CAE2B,eAAe,mBAC1B,cAAc,GAC9B,QAAQ,OAAO,MAAM,EAAE,GAAG,CAAC,CAAC;IAsB/B;;;;;;;;OAQG;0CAE2B,cAAc,mBACzB,cAAc,GAC9B,QAAQ,OAAO,MAAM,EAAE,GAAG,CAAC,CAAC;IAsB/B;;;;;;;;;OASG;0BAEQ,iBAAiB,mBACT,cAAc,GAC9B,QAAQ,oBAAoB,CAAC;IAwBhC;;;;;;;;;;OAUG;4CAE8B,aAAa,mBAC3B,cAAc,GAC9B,QAAQ,iBAAiB,CAAC;IA+B7B;;;;;;;;;OASG;+BAEc,gBAAgB,mBACd,cAAc,GAC9B,QAAQ,iBAAiB,CAAC;IAwB7B;;;;;;;;;;OAUG;0CAEwB,iBAAiB,mBACzB,cAAc,GAC9B,QAAQ,iBAAiB,CAAC;IA6B7B;;;;;;;;;;;OAWG;2DAE2C,eAAe,mBAC1C,cAAc,GAC9B,QAAQ,iBAAiB,CAAC;IAiC7B;;;;;;;;;OASG;6BAEW,iBAAiB,mBACZ,cAAc,GAC9B,QAAQ,oBAAoB,CAAC;IAwBhC;;;;;;;;;;;OAWG;8DAE2C,kBAAkB,mBAC7C,cAAc,GAC9B,QAAQ,iBAAiB,CAAC;IAiC7B;;;;;;OAMG;uBAEQ,cAAc,mBACN,cAAc,GAC9B,QAAQ,iBAAiB,CAAC;IAwB7B;;;;;;;OAOG;4CAEgB,cAAc,GAC9B,QAAQ,OAAO,MAAM,EAAE,SAAS,CAAC,CAAC;IAerC;;;;;;;OAOG;2CAEgB,cAAc,GAC9B,QAAQ,6BAA6B,CAAC;IAezC;;;;;;;;;;;;OAYG;kDAEoC,YAAY,mBACjC,cAAc,GAAG,SAAS,GACzC,QAAQ,eAAe,CAAC;IA+B3B;;;;;;;;;;;OAWG;6DAE8C,cAAc,mBAC5C,cAAc,GAC9B,QAAQ,OAAO,MAAM,EAAE,MAAM,CAAC,CAAC;IAiClC;;;;;;;;OAQG;sCAEiB,gBAAgB,mBACjB,cAAc;IA+BjC;;;;;;;;;;OAUG;qCAEwB,YAAY,mBACpB,cAAc,GAC9B,QAAQ,IAAI,CAAC;IA6BhB;;;;;;;;;OASG;+BAEc,gBAAgB,mBACd,cAAc,GAC9B,QAAQ,aAAa,CAAC;IAwBzB;;;;;;;OAOG;gCACyB,cAAc,GAAG,QAAQ,MAAM,EAAE,CAAC;IAe9D;;;;;;;;;;OAUG;wCAEwB,eAAe,mBACvB,cAAc,GAC9B,QAAQ,UAAU,CAAC;IA6BtB;;;;;;;;;;OAUG;mCAEsB,YAAY,mBAClB,cAAc,GAC9B,QAAQ,eAAe,CAAC;IA6B3B;;;;;;;OAOG;mCAEgB,cAAc,GAC9B,QAAQ,qBAAqB,CAAC;IAejC;;;;;;;;;OASG;0BAEW,cAAc,mBACT,cAAc,GAC9B,QAAQ,MAAM,CAAC;IAwBlB;;;;;;;;;OASG;yCAEgB,uBAAuB,mBACxB,cAAc,GAAG,SAAS,GACzC,QAAQ,0BAA0B,CAAC;IAmBtC;;;;;;;OAOG;iCAC0B,cAAc,GAAG,QAAQ,mBAAmB,CAAC;IAe1E;;;;;;;OAOG;kCAEgB,cAAc,GAC9B,QAAQ,oBAAoB,CAAC;IAehC;;;;;;;;;;OAUG;wCAEsB,gBAAgB,mBACvB,cAAc,GAAG,SAAS,GACzC,QAAQ,mBAAmB,CAAC;IAuB/B;;;;;;;;;;OAUG;wCAEsB,gBAAgB,mBACvB,cAAc,GAAG,SAAS,GACzC,QAAQ,mBAAmB,CAAC;IAuB/B;;;;;OAKG;+BAEY,WAAW,mBACP,cAAc,GAC9B,QAAQ,qBAAqB,CAAC;IA4BjC;;;;;;;;;;OAUG;wDAEoC,mBAAmB,mBACvC,cAAc,GAC9B,QAAQ,iBAAiB,CAAC;IA0C7B;;;;;;;;;;;;OAYG;yFAOE,wBAAwB,mBACV,cAAc,GAC9B,QAAQ,6BAA6B,CAAC;IAwCzC;;;;;;;;;OASG;6BAEW,iBAAiB,mBACZ,cAAc,GAC9B,QAAQ,oBAAoB,CAAC;IAwBhC;;;;;;;;;OASG;+BAEW,mBAAmB,mBACd,cAAc,GAC9B,QAAQ,qBAAqB,CAAC;IAsBjC;;;;;;;;;OASG;2BAEQ,kBAAkB,mBACV,cAAc,GAC9B,QAAQ,iBAAiB,CAAC;IAwB7B;;;;;;;;;;OAUG;oCAEoB,eAAe,mBACnB,cAAc,GAC9B,QAAQ,kBAAkB,CAAC;IA+B9B;;;;;;;;;;;;OAYG;+DAEiD,aAAa,mBAC9C,cAAc,GAC9B,QAAQ,mBAAmB,CAAC;IA8C/B;;;;;;;;;;;;OAYG;4EAOE,cAAc,mBACA,cAAc,GAC9B,QAAQ,iBAAiB,CAAC;IAuC7B;;;;;;;;;;;;OAYG;wEAEuD,gBAAgB,mBACvD,cAAc,GAC9B,QAAQ,mBAAmB,CAAC;IAmD/B;;;;;;;;;;;;OAYG;yFAOE,iBAAiB,mBACH,cAAc,GAC9B,QAAQ,iBAAiB,CAAC;IAwC7B;;;;;;;;OAQG;oCAEmB,uBAAuB,GAAG,kBAAkB,mBAC/C,cAAc;IAwDjC;;;;;;;;;;OAUG;gFAKE,4BAA4B,mBACd,cAAc,GAC9B,QAAQ,iBAAiB,CAAC;IAuC7B;;;;;;;;;;;OAWG;iFAME,yBAAyB,mBACX,cAAc,GAC9B,QAAQ,4BAA4B,CAAC;IAgCxC;;;;;;;;;;OAUG;kDAEiC,gBAAgB,mBACjC,cAAc,GAC9B,QAAQ,mBAAmB,CAAC;IA2B/B;;;;;;;;;;OAUG;wDAE4B,sBAAsB,mBAClC,cAAc;IA4BjC;;;;;;;;;;OAUG;wDAEoC,mBAAmB,mBACvC,cAAc,GAC9B,QAAQ,sBAAsB,CAAC;IA2BlC;;;;;;;;OAQG;uCAEoB,mBAAmB,mBACvB,cAAc,GAC9B,QAAQ,qBAAqB,CAAC;IA8BjC;;;;;;;;OAQG;oDAEyB,wBAAwB,mBACjC,cAAc,GAC9B,QAAQ,iBAAiB,CAAC;IA4B7B;;;;;;;;;;;OAWG;iEAEgD,gBAAgB,mBAChD,cAAc,GAC9B,QAAQ,iBAAiB,CAAC;IAmC7B;;;;;;;;;;OAUG;kCAEgB,iBAAiB,mBACjB,cAAc,GAC9B,QAAQ,oBAAoB,CAAC;EAqCnC;AAED;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC"}
1
+ {"version":3,"file":"searchClient.d.ts","sourceRoot":"","sources":["../../src/searchClient.ts"],"names":[],"mappings":"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"}
@@ -2,11 +2,13 @@
2
2
 
3
3
  import type { CreateIterablePromise } from '@algolia/client-common';
4
4
 
5
+ import type { Action } from './action';
5
6
  import type { ApiKey } from './apiKey';
6
7
  import type { AssignUserIdParams } from './assignUserIdParams';
7
8
  import type { AttributeToUpdate } from './attributeToUpdate';
8
9
  import type { BatchAssignUserIdsParams } from './batchAssignUserIdsParams';
9
10
  import type { BatchDictionaryEntriesParams } from './batchDictionaryEntriesParams';
11
+ import type { BatchResponse } from './batchResponse';
10
12
  import type { BatchWriteParams } from './batchWriteParams';
11
13
  import type { BrowseParams } from './browseParams';
12
14
  import type { DeleteByParams } from './deleteByParams';
@@ -25,6 +27,7 @@ import type { SearchRulesParams } from './searchRulesParams';
25
27
  import type { SearchSynonymsParams } from './searchSynonymsParams';
26
28
  import type { Source } from './source';
27
29
  import type { SynonymHit } from './synonymHit';
30
+ import type { UpdatedAtResponse } from './updatedAtResponse';
28
31
 
29
32
  /**
30
33
  * Properties for the `addOrUpdateObject` method.
@@ -770,3 +773,92 @@ export type WaitForApiKeyOptions = WaitForOptions & {
770
773
  apiKey: Partial<ApiKey>;
771
774
  }
772
775
  );
776
+
777
+ export type GenerateSecuredApiKeyOptions = {
778
+ /**
779
+ * The base API key from which to generate the new secured one.
780
+ */
781
+ parentApiKey: string;
782
+
783
+ /**
784
+ * A set of properties defining the restrictions of the secured API key.
785
+ */
786
+ restrictions?: SecuredApiKeyRestrictions;
787
+ };
788
+
789
+ export type GetSecuredApiKeyRemainingValidityOptions = {
790
+ /**
791
+ * The secured API key generated with the `generateSecuredApiKey` method.
792
+ */
793
+ securedApiKey: string;
794
+ };
795
+
796
+ export type SecuredApiKeyRestrictions = {
797
+ /**
798
+ * A Unix timestamp used to define the expiration date of the API key.
799
+ */
800
+ validUntil?: number;
801
+
802
+ /**
803
+ * List of index names that can be queried.
804
+ */
805
+ restrictIndices?: string[] | string;
806
+
807
+ /**
808
+ * IPv4 network allowed to use the generated key. This is used for more protection against API key leaking and reuse.
809
+ */
810
+ restrictSources?: string;
811
+
812
+ /**
813
+ * Specify a user identifier. This is often used with rate limits.
814
+ */
815
+ userToken?: string;
816
+
817
+ searchParams?: SearchParamsObject;
818
+ };
819
+
820
+ export type ChunkedBatchOptions = ReplaceAllObjectsOptions & {
821
+ /**
822
+ * The `batch` `action` to perform on the given array of `objects`, defaults to `addObject`.
823
+ */
824
+ action?: Action;
825
+
826
+ /**
827
+ * Whether or not we should wait until every `batch` tasks has been processed, this operation may slow the total execution time of this method but is more reliable.
828
+ */
829
+ waitForTasks?: boolean;
830
+ };
831
+
832
+ export type ReplaceAllObjectsOptions = {
833
+ /**
834
+ * The `indexName` to replace `objects` in.
835
+ */
836
+ indexName: string;
837
+
838
+ /**
839
+ * The array of `objects` to store in the given Algolia `indexName`.
840
+ */
841
+ objects: Array<Record<string, any>>;
842
+
843
+ /**
844
+ * The size of the chunk of `objects`. The number of `batch` calls will be equal to `length(objects) / batchSize`. Defaults to 1000.
845
+ */
846
+ batchSize?: number;
847
+ };
848
+
849
+ export type ReplaceAllObjectsResponse = {
850
+ /**
851
+ * The response of the `operationIndex` request for the `copy` operation.
852
+ */
853
+ copyOperationResponse: UpdatedAtResponse;
854
+
855
+ /**
856
+ * The response of the `batch` request(s).
857
+ */
858
+ batchResponses: BatchResponse[];
859
+
860
+ /**
861
+ * The response of the `operationIndex` request for the `move` operation.
862
+ */
863
+ moveOperationResponse: UpdatedAtResponse;
864
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@algolia/client-search",
3
- "version": "5.0.0-alpha.102",
3
+ "version": "5.0.0-alpha.103",
4
4
  "description": "JavaScript client for client-search",
5
5
  "repository": "algolia/algoliasearch-client-javascript",
6
6
  "license": "MIT",
@@ -39,12 +39,12 @@
39
39
  "clean": "rm -rf ./dist || true"
40
40
  },
41
41
  "dependencies": {
42
- "@algolia/client-common": "5.0.0-alpha.103",
43
- "@algolia/requester-browser-xhr": "5.0.0-alpha.103",
44
- "@algolia/requester-node-http": "5.0.0-alpha.103"
42
+ "@algolia/client-common": "5.0.0-alpha.104",
43
+ "@algolia/requester-browser-xhr": "5.0.0-alpha.104",
44
+ "@algolia/requester-node-http": "5.0.0-alpha.104"
45
45
  },
46
46
  "devDependencies": {
47
- "@types/node": "20.11.19",
47
+ "@types/node": "20.11.20",
48
48
  "rollup": "4.12.0",
49
49
  "typescript": "5.3.3"
50
50
  },