@azure/search-documents 11.3.0-beta.6 → 11.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (90) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/README.md +73 -35
  3. package/dist/index.js +839 -2940
  4. package/dist/index.js.map +1 -1
  5. package/dist-esm/src/constants.js +1 -1
  6. package/dist-esm/src/constants.js.map +1 -1
  7. package/dist-esm/src/generated/data/index.js +0 -1
  8. package/dist-esm/src/generated/data/index.js.map +1 -1
  9. package/dist-esm/src/generated/data/models/index.js +1 -202
  10. package/dist-esm/src/generated/data/models/index.js.map +1 -1
  11. package/dist-esm/src/generated/data/models/mappers.js +1 -138
  12. package/dist-esm/src/generated/data/models/mappers.js.map +1 -1
  13. package/dist-esm/src/generated/data/models/parameters.js +13 -72
  14. package/dist-esm/src/generated/data/models/parameters.js.map +1 -1
  15. package/dist-esm/src/generated/data/operations/documents.js +51 -23
  16. package/dist-esm/src/generated/data/operations/documents.js.map +1 -1
  17. package/dist-esm/src/generated/data/searchClient.js +2 -2
  18. package/dist-esm/src/generated/data/searchClient.js.map +1 -1
  19. package/dist-esm/src/generated/data/searchClientContext.js +11 -13
  20. package/dist-esm/src/generated/data/searchClientContext.js.map +1 -1
  21. package/dist-esm/src/generated/service/index.js +0 -1
  22. package/dist-esm/src/generated/service/index.js.map +1 -1
  23. package/dist-esm/src/generated/service/models/index.js +1 -904
  24. package/dist-esm/src/generated/service/models/index.js.map +1 -1
  25. package/dist-esm/src/generated/service/models/mappers.js +11 -674
  26. package/dist-esm/src/generated/service/models/mappers.js.map +1 -1
  27. package/dist-esm/src/generated/service/models/parameters.js +1 -37
  28. package/dist-esm/src/generated/service/models/parameters.js.map +1 -1
  29. package/dist-esm/src/generated/service/operations/dataSources.js +30 -13
  30. package/dist-esm/src/generated/service/operations/dataSources.js.map +1 -1
  31. package/dist-esm/src/generated/service/operations/indexers.js +45 -45
  32. package/dist-esm/src/generated/service/operations/indexers.js.map +1 -1
  33. package/dist-esm/src/generated/service/operations/indexes.js +40 -11
  34. package/dist-esm/src/generated/service/operations/indexes.js.map +1 -1
  35. package/dist-esm/src/generated/service/operations/skillsets.js +30 -43
  36. package/dist-esm/src/generated/service/operations/skillsets.js.map +1 -1
  37. package/dist-esm/src/generated/service/operations/synonymMaps.js +29 -9
  38. package/dist-esm/src/generated/service/operations/synonymMaps.js.map +1 -1
  39. package/dist-esm/src/generated/service/searchServiceClient.js +12 -9
  40. package/dist-esm/src/generated/service/searchServiceClient.js.map +1 -1
  41. package/dist-esm/src/generated/service/searchServiceClientContext.js +11 -13
  42. package/dist-esm/src/generated/service/searchServiceClientContext.js.map +1 -1
  43. package/dist-esm/src/geographyPoint.js +1 -1
  44. package/dist-esm/src/geographyPoint.js.map +1 -1
  45. package/dist-esm/src/index.js +3 -4
  46. package/dist-esm/src/index.js.map +1 -1
  47. package/dist-esm/src/indexDocumentsBatch.js +1 -1
  48. package/dist-esm/src/indexDocumentsBatch.js.map +1 -1
  49. package/dist-esm/src/indexModels.js.map +1 -1
  50. package/dist-esm/src/odataMetadataPolicy.js +15 -7
  51. package/dist-esm/src/odataMetadataPolicy.js.map +1 -1
  52. package/dist-esm/src/searchApiKeyCredentialPolicy.js +21 -8
  53. package/dist-esm/src/searchApiKeyCredentialPolicy.js.map +1 -1
  54. package/dist-esm/src/searchAudience.js +21 -0
  55. package/dist-esm/src/searchAudience.js.map +1 -0
  56. package/dist-esm/src/searchClient.js +56 -77
  57. package/dist-esm/src/searchClient.js.map +1 -1
  58. package/dist-esm/src/searchIndexClient.js +57 -70
  59. package/dist-esm/src/searchIndexClient.js.map +1 -1
  60. package/dist-esm/src/searchIndexerClient.js +65 -119
  61. package/dist-esm/src/searchIndexerClient.js.map +1 -1
  62. package/dist-esm/src/searchIndexingBufferedSender.js +11 -11
  63. package/dist-esm/src/searchIndexingBufferedSender.js.map +1 -1
  64. package/dist-esm/src/serialization.js +5 -5
  65. package/dist-esm/src/serialization.js.map +1 -1
  66. package/dist-esm/src/serviceModels.js.map +1 -1
  67. package/dist-esm/src/serviceUtils.js +31 -69
  68. package/dist-esm/src/serviceUtils.js.map +1 -1
  69. package/dist-esm/src/synonymMapHelper.js +2 -6
  70. package/dist-esm/src/synonymMapHelper.js.map +1 -1
  71. package/dist-esm/src/tracing.js +1 -1
  72. package/dist-esm/src/tracing.js.map +1 -1
  73. package/package.json +38 -38
  74. package/types/search-documents.d.ts +188 -1049
  75. package/dist-esm/src/generated/data/operationsInterfaces/documents.js +0 -9
  76. package/dist-esm/src/generated/data/operationsInterfaces/documents.js.map +0 -1
  77. package/dist-esm/src/generated/data/operationsInterfaces/index.js +0 -9
  78. package/dist-esm/src/generated/data/operationsInterfaces/index.js.map +0 -1
  79. package/dist-esm/src/generated/service/operationsInterfaces/dataSources.js +0 -9
  80. package/dist-esm/src/generated/service/operationsInterfaces/dataSources.js.map +0 -1
  81. package/dist-esm/src/generated/service/operationsInterfaces/index.js +0 -13
  82. package/dist-esm/src/generated/service/operationsInterfaces/index.js.map +0 -1
  83. package/dist-esm/src/generated/service/operationsInterfaces/indexers.js +0 -9
  84. package/dist-esm/src/generated/service/operationsInterfaces/indexers.js.map +0 -1
  85. package/dist-esm/src/generated/service/operationsInterfaces/indexes.js +0 -9
  86. package/dist-esm/src/generated/service/operationsInterfaces/indexes.js.map +0 -1
  87. package/dist-esm/src/generated/service/operationsInterfaces/skillsets.js +0 -9
  88. package/dist-esm/src/generated/service/operationsInterfaces/skillsets.js.map +0 -1
  89. package/dist-esm/src/generated/service/operationsInterfaces/synonymMaps.js +0 -9
  90. package/dist-esm/src/generated/service/operationsInterfaces/synonymMaps.js.map +0 -1
@@ -1,9 +1,9 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
2
  // Licensed under the MIT license.
3
- import { __asyncDelegator, __asyncGenerator, __asyncValues, __await, __rest } from "tslib";
3
+ import { __asyncDelegator, __asyncGenerator, __asyncValues, __await } from "tslib";
4
4
  /// <reference lib="esnext.asynciterable" />
5
5
  import { isTokenCredential } from "@azure/core-auth";
6
- import { bearerTokenAuthenticationPolicy } from "@azure/core-rest-pipeline";
6
+ import { createPipelineFromOptions, operationOptionsToRequestOptionsBase, bearerTokenAuthenticationPolicy } from "@azure/core-http";
7
7
  import { SpanStatusCode } from "@azure/core-tracing";
8
8
  import { SDK_VERSION } from "./constants";
9
9
  import { SearchServiceClient as GeneratedClient } from "./generated/service/searchServiceClient";
@@ -11,8 +11,9 @@ import { logger } from "./logger";
11
11
  import { createSearchApiKeyCredentialPolicy } from "./searchApiKeyCredentialPolicy";
12
12
  import * as utils from "./serviceUtils";
13
13
  import { createSpan } from "./tracing";
14
- import { createOdataMetadataPolicy } from "./odataMetadataPolicy";
14
+ import { odataMetadataPolicy } from "./odataMetadataPolicy";
15
15
  import { SearchClient } from "./searchClient";
16
+ import { KnownSearchAudience } from "./searchAudience";
16
17
  /**
17
18
  * Class to perform operations to manage
18
19
  * (create, update, list/delete)
@@ -39,12 +40,7 @@ export class SearchIndexClient {
39
40
  /**
40
41
  * The API version to use when communicating with the service.
41
42
  */
42
- this.serviceVersion = utils.defaultServiceVersion;
43
- /**
44
- * The API version to use when communicating with the service.
45
- * @deprecated use {@Link serviceVersion} instead
46
- */
47
- this.apiVersion = utils.defaultServiceVersion;
43
+ this.apiVersion = "2020-06-30";
48
44
  this.endpoint = endpoint;
49
45
  this.credential = credential;
50
46
  this.options = options;
@@ -58,54 +54,50 @@ export class SearchIndexClient {
58
54
  else {
59
55
  options.userAgentOptions.userAgentPrefix = libInfo;
60
56
  }
61
- const internalClientPipelineOptions = Object.assign(Object.assign({}, options), {
57
+ const internalPipelineOptions = Object.assign(Object.assign({}, options), {
62
58
  loggingOptions: {
63
59
  logger: logger.info,
64
- additionalAllowedHeaderNames: [
60
+ allowedHeaderNames: [
65
61
  "elapsed-time",
66
62
  "Location",
67
63
  "OData-MaxVersion",
68
64
  "OData-Version",
69
65
  "Prefer",
70
- "throttle-reason",
71
- ],
72
- },
66
+ "throttle-reason"
67
+ ]
68
+ }
73
69
  });
70
+ const scope = options.audience
71
+ ? `${options.audience}/.default`
72
+ : `${KnownSearchAudience.AzurePublicCloud}/.default`;
73
+ const requestPolicyFactory = isTokenCredential(credential)
74
+ ? bearerTokenAuthenticationPolicy(credential, scope)
75
+ : createSearchApiKeyCredentialPolicy(credential);
76
+ const pipeline = createPipelineFromOptions(internalPipelineOptions, requestPolicyFactory);
77
+ if (Array.isArray(pipeline.requestPolicyFactories)) {
78
+ pipeline.requestPolicyFactories.unshift(odataMetadataPolicy("minimal"));
79
+ }
80
+ let apiVersion = this.apiVersion;
74
81
  if (options.apiVersion) {
75
- if (!utils.serviceVersions.includes(options.apiVersion)) {
82
+ if (!["2020-06-30-Preview", "2020-06-30"].includes(options.apiVersion)) {
76
83
  throw new Error(`Invalid Api Version: ${options.apiVersion}`);
77
84
  }
78
- this.serviceVersion = options.apiVersion;
79
- this.apiVersion = options.apiVersion;
80
- }
81
- if (options.serviceVersion) {
82
- if (!utils.serviceVersions.includes(options.serviceVersion)) {
83
- throw new Error(`Invalid Service Version: ${options.serviceVersion}`);
84
- }
85
- this.serviceVersion = options.serviceVersion;
86
- this.apiVersion = options.serviceVersion;
87
- }
88
- this.client = new GeneratedClient(this.endpoint, this.serviceVersion, internalClientPipelineOptions);
89
- if (isTokenCredential(credential)) {
90
- this.client.pipeline.addPolicy(bearerTokenAuthenticationPolicy({ credential, scopes: utils.DEFAULT_SEARCH_SCOPE }));
85
+ apiVersion = options.apiVersion;
91
86
  }
92
- else {
93
- this.client.pipeline.addPolicy(createSearchApiKeyCredentialPolicy(credential));
94
- }
95
- this.client.pipeline.addPolicy(createOdataMetadataPolicy("minimal"));
87
+ this.client = new GeneratedClient(this.endpoint, apiVersion, pipeline);
96
88
  }
97
89
  listIndexesPage(options = {}) {
98
90
  return __asyncGenerator(this, arguments, function* listIndexesPage_1() {
99
91
  const { span, updatedOptions } = createSpan("SearchIndexClient-listIndexesPage", options);
100
92
  try {
101
- const result = yield __await(this.client.indexes.list(updatedOptions));
93
+ const result = yield __await(this.client.indexes.list(operationOptionsToRequestOptionsBase(updatedOptions)));
102
94
  const mapped = result.indexes.map(utils.generatedIndexToPublicIndex);
103
95
  yield yield __await(mapped);
104
96
  }
105
97
  catch (e) {
106
98
  span.setStatus({
107
99
  code: SpanStatusCode.ERROR,
108
- message: e.message,
100
+ message: e.message
109
101
  });
110
102
  throw e;
111
103
  }
@@ -147,21 +139,21 @@ export class SearchIndexClient {
147
139
  },
148
140
  byPage: () => {
149
141
  return this.listIndexesPage(options);
150
- },
142
+ }
151
143
  };
152
144
  }
153
145
  listIndexesNamesPage(options = {}) {
154
146
  return __asyncGenerator(this, arguments, function* listIndexesNamesPage_1() {
155
147
  const { span, updatedOptions } = createSpan("SearchIndexClient-listIndexesNamesPage", options);
156
148
  try {
157
- const result = yield __await(this.client.indexes.list(Object.assign(Object.assign({}, updatedOptions), { select: "name" })));
149
+ const result = yield __await(this.client.indexes.list(Object.assign(Object.assign({}, operationOptionsToRequestOptionsBase(updatedOptions)), { select: "name" })));
158
150
  const mapped = result.indexes.map((idx) => idx.name);
159
151
  yield yield __await(mapped);
160
152
  }
161
153
  catch (e) {
162
154
  span.setStatus({
163
155
  code: SpanStatusCode.ERROR,
164
- message: e.message,
156
+ message: e.message
165
157
  });
166
158
  throw e;
167
159
  }
@@ -203,7 +195,7 @@ export class SearchIndexClient {
203
195
  },
204
196
  byPage: () => {
205
197
  return this.listIndexesNamesPage(options);
206
- },
198
+ }
207
199
  };
208
200
  }
209
201
  /**
@@ -213,13 +205,13 @@ export class SearchIndexClient {
213
205
  async listSynonymMaps(options = {}) {
214
206
  const { span, updatedOptions } = createSpan("SearchIndexClient-listSynonymMaps", options);
215
207
  try {
216
- const result = await this.client.synonymMaps.list(updatedOptions);
208
+ const result = await this.client.synonymMaps.list(operationOptionsToRequestOptionsBase(updatedOptions));
217
209
  return result.synonymMaps.map(utils.generatedSynonymMapToPublicSynonymMap);
218
210
  }
219
211
  catch (e) {
220
212
  span.setStatus({
221
213
  code: SpanStatusCode.ERROR,
222
- message: e.message,
214
+ message: e.message
223
215
  });
224
216
  throw e;
225
217
  }
@@ -234,13 +226,13 @@ export class SearchIndexClient {
234
226
  async listSynonymMapsNames(options = {}) {
235
227
  const { span, updatedOptions } = createSpan("SearchIndexClient-listSynonymMapsNames", options);
236
228
  try {
237
- const result = await this.client.synonymMaps.list(Object.assign(Object.assign({}, updatedOptions), { select: "name" }));
229
+ const result = await this.client.synonymMaps.list(Object.assign(Object.assign({}, operationOptionsToRequestOptionsBase(updatedOptions)), { select: "name" }));
238
230
  return result.synonymMaps.map((sm) => sm.name);
239
231
  }
240
232
  catch (e) {
241
233
  span.setStatus({
242
234
  code: SpanStatusCode.ERROR,
243
- message: e.message,
235
+ message: e.message
244
236
  });
245
237
  throw e;
246
238
  }
@@ -256,13 +248,13 @@ export class SearchIndexClient {
256
248
  async getIndex(indexName, options = {}) {
257
249
  const { span, updatedOptions } = createSpan("SearchIndexClient-getIndex", options);
258
250
  try {
259
- const result = await this.client.indexes.get(indexName, updatedOptions);
251
+ const result = await this.client.indexes.get(indexName, operationOptionsToRequestOptionsBase(updatedOptions));
260
252
  return utils.generatedIndexToPublicIndex(result);
261
253
  }
262
254
  catch (e) {
263
255
  span.setStatus({
264
256
  code: SpanStatusCode.ERROR,
265
- message: e.message,
257
+ message: e.message
266
258
  });
267
259
  throw e;
268
260
  }
@@ -278,13 +270,13 @@ export class SearchIndexClient {
278
270
  async getSynonymMap(synonymMapName, options = {}) {
279
271
  const { span, updatedOptions } = createSpan("SearchIndexClient-getSynonymMaps", options);
280
272
  try {
281
- const result = await this.client.synonymMaps.get(synonymMapName, updatedOptions);
273
+ const result = await this.client.synonymMaps.get(synonymMapName, operationOptionsToRequestOptionsBase(updatedOptions));
282
274
  return utils.generatedSynonymMapToPublicSynonymMap(result);
283
275
  }
284
276
  catch (e) {
285
277
  span.setStatus({
286
278
  code: SpanStatusCode.ERROR,
287
- message: e.message,
279
+ message: e.message
288
280
  });
289
281
  throw e;
290
282
  }
@@ -300,13 +292,13 @@ export class SearchIndexClient {
300
292
  async createIndex(index, options = {}) {
301
293
  const { span, updatedOptions } = createSpan("SearchIndexClient-createIndex", options);
302
294
  try {
303
- const result = await this.client.indexes.create(utils.publicIndexToGeneratedIndex(index), updatedOptions);
295
+ const result = await this.client.indexes.create(utils.publicIndexToGeneratedIndex(index), operationOptionsToRequestOptionsBase(updatedOptions));
304
296
  return utils.generatedIndexToPublicIndex(result);
305
297
  }
306
298
  catch (e) {
307
299
  span.setStatus({
308
300
  code: SpanStatusCode.ERROR,
309
- message: e.message,
301
+ message: e.message
310
302
  });
311
303
  throw e;
312
304
  }
@@ -322,13 +314,13 @@ export class SearchIndexClient {
322
314
  async createSynonymMap(synonymMap, options = {}) {
323
315
  const { span, updatedOptions } = createSpan("SearchIndexClient-createSynonymMaps", options);
324
316
  try {
325
- const result = await this.client.synonymMaps.create(utils.publicSynonymMapToGeneratedSynonymMap(synonymMap), updatedOptions);
317
+ const result = await this.client.synonymMaps.create(utils.publicSynonymMapToGeneratedSynonymMap(synonymMap), operationOptionsToRequestOptionsBase(updatedOptions));
326
318
  return utils.generatedSynonymMapToPublicSynonymMap(result);
327
319
  }
328
320
  catch (e) {
329
321
  span.setStatus({
330
322
  code: SpanStatusCode.ERROR,
331
- message: e.message,
323
+ message: e.message
332
324
  });
333
325
  throw e;
334
326
  }
@@ -345,13 +337,13 @@ export class SearchIndexClient {
345
337
  const { span, updatedOptions } = createSpan("SearchIndexClient-createOrUpdateIndex", options);
346
338
  try {
347
339
  const etag = options.onlyIfUnchanged ? index.etag : undefined;
348
- const result = await this.client.indexes.createOrUpdate(index.name, utils.publicIndexToGeneratedIndex(index), Object.assign(Object.assign({}, updatedOptions), { ifMatch: etag }));
340
+ const result = await this.client.indexes.createOrUpdate(index.name, utils.publicIndexToGeneratedIndex(index), Object.assign(Object.assign({}, operationOptionsToRequestOptionsBase(updatedOptions)), { ifMatch: etag }));
349
341
  return utils.generatedIndexToPublicIndex(result);
350
342
  }
351
343
  catch (e) {
352
344
  span.setStatus({
353
345
  code: SpanStatusCode.ERROR,
354
- message: e.message,
346
+ message: e.message
355
347
  });
356
348
  throw e;
357
349
  }
@@ -368,13 +360,13 @@ export class SearchIndexClient {
368
360
  const { span, updatedOptions } = createSpan("SearchIndexClient-createOrUpdateSynonymMap", options);
369
361
  try {
370
362
  const etag = options.onlyIfUnchanged ? synonymMap.etag : undefined;
371
- const result = await this.client.synonymMaps.createOrUpdate(synonymMap.name, utils.publicSynonymMapToGeneratedSynonymMap(synonymMap), Object.assign(Object.assign({}, updatedOptions), { ifMatch: etag }));
363
+ const result = await this.client.synonymMaps.createOrUpdate(synonymMap.name, utils.publicSynonymMapToGeneratedSynonymMap(synonymMap), Object.assign(Object.assign({}, operationOptionsToRequestOptionsBase(updatedOptions)), { ifMatch: etag }));
372
364
  return utils.generatedSynonymMapToPublicSynonymMap(result);
373
365
  }
374
366
  catch (e) {
375
367
  span.setStatus({
376
368
  code: SpanStatusCode.ERROR,
377
- message: e.message,
369
+ message: e.message
378
370
  });
379
371
  throw e;
380
372
  }
@@ -392,12 +384,12 @@ export class SearchIndexClient {
392
384
  try {
393
385
  const indexName = typeof index === "string" ? index : index.name;
394
386
  const etag = typeof index === "string" ? undefined : options.onlyIfUnchanged ? index.etag : undefined;
395
- await this.client.indexes.delete(indexName, Object.assign(Object.assign({}, updatedOptions), { ifMatch: etag }));
387
+ await this.client.indexes.delete(indexName, Object.assign(Object.assign({}, operationOptionsToRequestOptionsBase(updatedOptions)), { ifMatch: etag }));
396
388
  }
397
389
  catch (e) {
398
390
  span.setStatus({
399
391
  code: SpanStatusCode.ERROR,
400
- message: e.message,
392
+ message: e.message
401
393
  });
402
394
  throw e;
403
395
  }
@@ -419,12 +411,12 @@ export class SearchIndexClient {
419
411
  : options.onlyIfUnchanged
420
412
  ? synonymMap.etag
421
413
  : undefined;
422
- await this.client.synonymMaps.delete(synonymMapName, Object.assign(Object.assign({}, updatedOptions), { ifMatch: etag }));
414
+ await this.client.synonymMaps.delete(synonymMapName, Object.assign(Object.assign({}, operationOptionsToRequestOptionsBase(updatedOptions)), { ifMatch: etag }));
423
415
  }
424
416
  catch (e) {
425
417
  span.setStatus({
426
418
  code: SpanStatusCode.ERROR,
427
- message: e.message,
419
+ message: e.message
428
420
  });
429
421
  throw e;
430
422
  }
@@ -441,13 +433,13 @@ export class SearchIndexClient {
441
433
  async getIndexStatistics(indexName, options = {}) {
442
434
  const { span, updatedOptions } = createSpan("SearchIndexClient-getIndexStatistics", options);
443
435
  try {
444
- const result = await this.client.indexes.getStatistics(indexName, updatedOptions);
436
+ const result = await this.client.indexes.getStatistics(indexName, operationOptionsToRequestOptionsBase(updatedOptions));
445
437
  return result;
446
438
  }
447
439
  catch (e) {
448
440
  span.setStatus({
449
441
  code: SpanStatusCode.ERROR,
450
- message: e.message,
442
+ message: e.message
451
443
  });
452
444
  throw e;
453
445
  }
@@ -462,21 +454,16 @@ export class SearchIndexClient {
462
454
  * @param options - Additional arguments
463
455
  */
464
456
  async analyzeText(indexName, options) {
465
- const { abortSignal, requestOptions, tracingOptions } = options, restOptions = __rest(options, ["abortSignal", "requestOptions", "tracingOptions"]);
466
- const operationOptions = {
467
- abortSignal,
468
- requestOptions,
469
- tracingOptions,
470
- };
457
+ const { operationOptions, restOptions } = utils.extractOperationOptions(options);
471
458
  const { span, updatedOptions } = createSpan("SearchIndexClient-analyzeText", operationOptions);
472
459
  try {
473
- const result = await this.client.indexes.analyze(indexName, Object.assign(Object.assign({}, restOptions), { analyzer: restOptions.analyzerName, tokenizer: restOptions.tokenizerName, normalizer: restOptions.normalizerName }), updatedOptions);
460
+ const result = await this.client.indexes.analyze(indexName, Object.assign(Object.assign({}, restOptions), { analyzer: restOptions.analyzerName, tokenizer: restOptions.tokenizerName }), operationOptionsToRequestOptionsBase(updatedOptions));
474
461
  return result;
475
462
  }
476
463
  catch (e) {
477
464
  span.setStatus({
478
465
  code: SpanStatusCode.ERROR,
479
- message: e.message,
466
+ message: e.message
480
467
  });
481
468
  throw e;
482
469
  }
@@ -491,13 +478,13 @@ export class SearchIndexClient {
491
478
  async getServiceStatistics(options = {}) {
492
479
  const { span, updatedOptions } = createSpan("SearchIndexClient-getServiceStatistics", options);
493
480
  try {
494
- const result = await this.client.getServiceStatistics(updatedOptions);
481
+ const result = await this.client.getServiceStatistics(operationOptionsToRequestOptionsBase(updatedOptions));
495
482
  return result;
496
483
  }
497
484
  catch (e) {
498
485
  span.setStatus({
499
486
  code: SpanStatusCode.ERROR,
500
- message: e.message,
487
+ message: e.message
501
488
  });
502
489
  throw e;
503
490
  }
@@ -1 +1 @@
1
- {"version":3,"file":"searchIndexClient.js","sourceRoot":"","sources":["../../src/searchIndexClient.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\n/// <reference lib=\"esnext.asynciterable\" />\n\nimport { KeyCredential, TokenCredential, isTokenCredential } from \"@azure/core-auth\";\nimport { CommonClientOptions, InternalClientPipelineOptions } from \"@azure/core-client\";\nimport { bearerTokenAuthenticationPolicy } from \"@azure/core-rest-pipeline\";\nimport { SpanStatusCode } from \"@azure/core-tracing\";\nimport { SDK_VERSION } from \"./constants\";\nimport { AnalyzeResult } from \"./generated/service/models\";\nimport { SearchServiceClient as GeneratedClient } from \"./generated/service/searchServiceClient\";\nimport { logger } from \"./logger\";\nimport { createSearchApiKeyCredentialPolicy } from \"./searchApiKeyCredentialPolicy\";\nimport {\n AnalyzeTextOptions,\n CreateIndexOptions,\n CreateOrUpdateIndexOptions,\n CreateOrUpdateSynonymMapOptions,\n CreateSynonymMapOptions,\n DeleteIndexOptions,\n DeleteSynonymMapOptions,\n GetIndexOptions,\n GetIndexStatisticsOptions,\n GetSynonymMapsOptions,\n SearchIndex,\n ListIndexesOptions,\n ListSynonymMapsOptions,\n SynonymMap,\n GetServiceStatisticsOptions,\n IndexIterator,\n IndexNameIterator,\n SearchIndexStatistics,\n SearchServiceStatistics,\n} from \"./serviceModels\";\nimport * as utils from \"./serviceUtils\";\nimport { createSpan } from \"./tracing\";\nimport { createOdataMetadataPolicy } from \"./odataMetadataPolicy\";\nimport { SearchClient, SearchClientOptions as GetSearchClientOptions } from \"./searchClient\";\n\n/**\n * Client options used to configure Cognitive Search API requests.\n */\nexport interface SearchIndexClientOptions extends CommonClientOptions {\n /**\n * The API version to use when communicating with the service.\n * @deprecated use {@Link serviceVersion} instead\n */\n apiVersion?: string;\n\n /**\n * The service version to use when communicating with the service.\n */\n serviceVersion?: string;\n}\n\n/**\n * Class to perform operations to manage\n * (create, update, list/delete)\n * indexes, & synonymmaps.\n */\nexport class SearchIndexClient {\n /**\n * The API version to use when communicating with the service.\n */\n public readonly serviceVersion: string = utils.defaultServiceVersion;\n\n /**\n * The API version to use when communicating with the service.\n * @deprecated use {@Link serviceVersion} instead\n */\n public readonly apiVersion: string = utils.defaultServiceVersion;\n\n /**\n * The endpoint of the search service\n */\n public readonly endpoint: string;\n\n /**\n * @internal\n * @hidden\n * A reference to the auto-generated SearchServiceClient\n */\n private readonly client: GeneratedClient;\n\n /**\n * Used to authenticate requests to the service.\n */\n private readonly credential: KeyCredential | TokenCredential;\n\n /**\n * Used to configure the Search Index client.\n */\n private readonly options: SearchIndexClientOptions;\n\n /**\n * Creates an instance of SearchIndexClient.\n *\n * Example usage:\n * ```ts\n * const { SearchIndexClient, AzureKeyCredential } = require(\"@azure/search-documents\");\n *\n * const client = new SearchIndexClient(\n * \"<endpoint>\",\n * new AzureKeyCredential(\"<Admin Key>\");\n * );\n * ```\n * @param endpoint - The endpoint of the search service\n * @param credential - Used to authenticate requests to the service.\n * @param options - Used to configure the Search Index client.\n */\n constructor(\n endpoint: string,\n credential: KeyCredential | TokenCredential,\n options: SearchIndexClientOptions = {}\n ) {\n this.endpoint = endpoint;\n this.credential = credential;\n this.options = options;\n\n const libInfo = `azsdk-js-search-documents/${SDK_VERSION}`;\n if (!options.userAgentOptions) {\n options.userAgentOptions = {};\n }\n if (options.userAgentOptions.userAgentPrefix) {\n options.userAgentOptions.userAgentPrefix = `${options.userAgentOptions.userAgentPrefix} ${libInfo}`;\n } else {\n options.userAgentOptions.userAgentPrefix = libInfo;\n }\n\n const internalClientPipelineOptions: InternalClientPipelineOptions = {\n ...options,\n ...{\n loggingOptions: {\n logger: logger.info,\n additionalAllowedHeaderNames: [\n \"elapsed-time\",\n \"Location\",\n \"OData-MaxVersion\",\n \"OData-Version\",\n \"Prefer\",\n \"throttle-reason\",\n ],\n },\n },\n };\n\n if (options.apiVersion) {\n if (!utils.serviceVersions.includes(options.apiVersion)) {\n throw new Error(`Invalid Api Version: ${options.apiVersion}`);\n }\n this.serviceVersion = options.apiVersion;\n this.apiVersion = options.apiVersion;\n }\n\n if (options.serviceVersion) {\n if (!utils.serviceVersions.includes(options.serviceVersion)) {\n throw new Error(`Invalid Service Version: ${options.serviceVersion}`);\n }\n this.serviceVersion = options.serviceVersion;\n this.apiVersion = options.serviceVersion;\n }\n\n this.client = new GeneratedClient(\n this.endpoint,\n this.serviceVersion,\n internalClientPipelineOptions\n );\n\n if (isTokenCredential(credential)) {\n this.client.pipeline.addPolicy(\n bearerTokenAuthenticationPolicy({ credential, scopes: utils.DEFAULT_SEARCH_SCOPE })\n );\n } else {\n this.client.pipeline.addPolicy(createSearchApiKeyCredentialPolicy(credential));\n }\n\n this.client.pipeline.addPolicy(createOdataMetadataPolicy(\"minimal\"));\n }\n\n private async *listIndexesPage(\n options: ListIndexesOptions = {}\n ): AsyncIterableIterator<SearchIndex[]> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-listIndexesPage\", options);\n try {\n const result = await this.client.indexes.list(updatedOptions);\n const mapped = result.indexes.map(utils.generatedIndexToPublicIndex);\n yield mapped;\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n private async *listIndexesAll(\n options: ListIndexesOptions = {}\n ): AsyncIterableIterator<SearchIndex> {\n for await (const page of this.listIndexesPage(options)) {\n yield* page;\n }\n }\n\n /**\n * Retrieves a list of existing indexes in the service.\n * @param options - Options to the list index operation.\n */\n public listIndexes(options: ListIndexesOptions = {}): IndexIterator {\n const iter = this.listIndexesAll(options);\n\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listIndexesPage(options);\n },\n };\n }\n\n private async *listIndexesNamesPage(\n options: ListIndexesOptions = {}\n ): AsyncIterableIterator<string[]> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-listIndexesNamesPage\", options);\n try {\n const result = await this.client.indexes.list({\n ...updatedOptions,\n select: \"name\",\n });\n const mapped = result.indexes.map((idx) => idx.name);\n yield mapped;\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n private async *listIndexesNamesAll(\n options: ListIndexesOptions = {}\n ): AsyncIterableIterator<string> {\n for await (const page of this.listIndexesNamesPage(options)) {\n yield* page;\n }\n }\n\n /**\n * Retrieves a list of names of existing indexes in the service.\n * @param options - Options to the list index operation.\n */\n public listIndexesNames(options: ListIndexesOptions = {}): IndexNameIterator {\n const iter = this.listIndexesNamesAll(options);\n\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listIndexesNamesPage(options);\n },\n };\n }\n\n /**\n * Retrieves a list of existing SynonymMaps in the service.\n * @param options - Options to the list SynonymMaps operation.\n */\n public async listSynonymMaps(options: ListSynonymMapsOptions = {}): Promise<Array<SynonymMap>> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-listSynonymMaps\", options);\n try {\n const result = await this.client.synonymMaps.list(updatedOptions);\n return result.synonymMaps.map(utils.generatedSynonymMapToPublicSynonymMap);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Retrieves a list of names of existing SynonymMaps in the service.\n * @param options - Options to the list SynonymMaps operation.\n */\n public async listSynonymMapsNames(options: ListSynonymMapsOptions = {}): Promise<Array<string>> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-listSynonymMapsNames\", options);\n try {\n const result = await this.client.synonymMaps.list({\n ...updatedOptions,\n select: \"name\",\n });\n return result.synonymMaps.map((sm) => sm.name);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Retrieves information about an index.\n * @param indexName - The name of the index.\n * @param options - Additional optional arguments.\n */\n public async getIndex(indexName: string, options: GetIndexOptions = {}): Promise<SearchIndex> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-getIndex\", options);\n try {\n const result = await this.client.indexes.get(indexName, updatedOptions);\n return utils.generatedIndexToPublicIndex(result);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Retrieves information about a SynonymMap.\n * @param synonymMapName - The name of the SynonymMap.\n * @param options - Additional optional arguments.\n */\n public async getSynonymMap(\n synonymMapName: string,\n options: GetSynonymMapsOptions = {}\n ): Promise<SynonymMap> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-getSynonymMaps\", options);\n try {\n const result = await this.client.synonymMaps.get(synonymMapName, updatedOptions);\n return utils.generatedSynonymMapToPublicSynonymMap(result);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Creates a new index.\n * @param index - The information describing the index to be created.\n * @param options - Additional optional arguments.\n */\n public async createIndex(\n index: SearchIndex,\n options: CreateIndexOptions = {}\n ): Promise<SearchIndex> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-createIndex\", options);\n try {\n const result = await this.client.indexes.create(\n utils.publicIndexToGeneratedIndex(index),\n updatedOptions\n );\n return utils.generatedIndexToPublicIndex(result);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Creates a new SynonymMap in a search service.\n * @param synonymMap - The synonymMap definition to create in a search service.\n * @param options - Additional optional arguments.\n */\n public async createSynonymMap(\n synonymMap: SynonymMap,\n options: CreateSynonymMapOptions = {}\n ): Promise<SynonymMap> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-createSynonymMaps\", options);\n try {\n const result = await this.client.synonymMaps.create(\n utils.publicSynonymMapToGeneratedSynonymMap(synonymMap),\n updatedOptions\n );\n return utils.generatedSynonymMapToPublicSynonymMap(result);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Creates a new index or modifies an existing one.\n * @param index - The information describing the index to be created.\n * @param options - Additional optional arguments.\n */\n public async createOrUpdateIndex(\n index: SearchIndex,\n options: CreateOrUpdateIndexOptions = {}\n ): Promise<SearchIndex> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-createOrUpdateIndex\", options);\n try {\n const etag = options.onlyIfUnchanged ? index.etag : undefined;\n\n const result = await this.client.indexes.createOrUpdate(\n index.name,\n utils.publicIndexToGeneratedIndex(index),\n {\n ...updatedOptions,\n ifMatch: etag,\n }\n );\n return utils.generatedIndexToPublicIndex(result);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Creates a new SynonymMap or modifies an existing one.\n * @param synonymMap - The information describing the SynonymMap to be created.\n * @param options - Additional optional arguments.\n */\n public async createOrUpdateSynonymMap(\n synonymMap: SynonymMap,\n options: CreateOrUpdateSynonymMapOptions = {}\n ): Promise<SynonymMap> {\n const { span, updatedOptions } = createSpan(\n \"SearchIndexClient-createOrUpdateSynonymMap\",\n options\n );\n try {\n const etag = options.onlyIfUnchanged ? synonymMap.etag : undefined;\n\n const result = await this.client.synonymMaps.createOrUpdate(\n synonymMap.name,\n utils.publicSynonymMapToGeneratedSynonymMap(synonymMap),\n {\n ...updatedOptions,\n ifMatch: etag,\n }\n );\n return utils.generatedSynonymMapToPublicSynonymMap(result);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Deletes an existing index.\n * @param indexName - Index/Name of the index to delete.\n * @param options - Additional optional arguments.\n */\n public async deleteIndex(\n index: string | SearchIndex,\n options: DeleteIndexOptions = {}\n ): Promise<void> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-deleteIndex\", options);\n try {\n const indexName: string = typeof index === \"string\" ? index : index.name;\n const etag =\n typeof index === \"string\" ? undefined : options.onlyIfUnchanged ? index.etag : undefined;\n\n await this.client.indexes.delete(indexName, {\n ...updatedOptions,\n ifMatch: etag,\n });\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Deletes an existing SynonymMap.\n * @param synonymMapName - SynonymMap/Name of the synonymMap to delete.\n * @param options - Additional optional arguments.\n */\n public async deleteSynonymMap(\n synonymMap: string | SynonymMap,\n options: DeleteSynonymMapOptions = {}\n ): Promise<void> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-deleteSynonymMap\", options);\n try {\n const synonymMapName: string = typeof synonymMap === \"string\" ? synonymMap : synonymMap.name;\n const etag =\n typeof synonymMap === \"string\"\n ? undefined\n : options.onlyIfUnchanged\n ? synonymMap.etag\n : undefined;\n\n await this.client.synonymMaps.delete(synonymMapName, {\n ...updatedOptions,\n ifMatch: etag,\n });\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Retrieves statistics about an index, such as the count of documents and the size\n * of index storage.\n * @param indexName - The name of the index.\n * @param options - Additional optional arguments.\n */\n public async getIndexStatistics(\n indexName: string,\n options: GetIndexStatisticsOptions = {}\n ): Promise<SearchIndexStatistics> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-getIndexStatistics\", options);\n try {\n const result = await this.client.indexes.getStatistics(indexName, updatedOptions);\n return result;\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Calls an analyzer or tokenizer manually on provided text.\n * @param indexName - The name of the index that contains the field to analyze\n * @param text - The text to break into tokens.\n * @param options - Additional arguments\n */\n public async analyzeText(indexName: string, options: AnalyzeTextOptions): Promise<AnalyzeResult> {\n const { abortSignal, requestOptions, tracingOptions, ...restOptions } = options;\n const operationOptions = {\n abortSignal,\n requestOptions,\n tracingOptions,\n };\n\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-analyzeText\", operationOptions);\n try {\n const result = await this.client.indexes.analyze(\n indexName,\n {\n ...restOptions,\n analyzer: restOptions.analyzerName,\n tokenizer: restOptions.tokenizerName,\n normalizer: restOptions.normalizerName,\n },\n updatedOptions\n );\n return result;\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Retrieves statistics about the service, such as the count of documents, index, etc.\n * @param options - Additional optional arguments.\n */\n public async getServiceStatistics(\n options: GetServiceStatisticsOptions = {}\n ): Promise<SearchServiceStatistics> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-getServiceStatistics\", options);\n try {\n const result = await this.client.getServiceStatistics(updatedOptions);\n return result;\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Retrieves the SearchClient corresponding to this SearchIndexClient\n * @param indexName - Name of the index\n * @param options - SearchClient Options\n */\n public getSearchClient<T>(indexName: string, options?: GetSearchClientOptions): SearchClient<T> {\n return new SearchClient<T>(this.endpoint, indexName, this.credential, options || this.options);\n }\n}\n"]}
1
+ {"version":3,"file":"searchIndexClient.js","sourceRoot":"","sources":["../../src/searchIndexClient.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\n/// <reference lib=\"esnext.asynciterable\" />\n\nimport { KeyCredential, TokenCredential, isTokenCredential } from \"@azure/core-auth\";\nimport {\n createPipelineFromOptions,\n InternalPipelineOptions,\n operationOptionsToRequestOptionsBase,\n PipelineOptions,\n RequestPolicyFactory,\n bearerTokenAuthenticationPolicy\n} from \"@azure/core-http\";\nimport { SpanStatusCode } from \"@azure/core-tracing\";\nimport { SDK_VERSION } from \"./constants\";\nimport { AnalyzeResult } from \"./generated/service/models\";\nimport { SearchServiceClient as GeneratedClient } from \"./generated/service/searchServiceClient\";\nimport { logger } from \"./logger\";\nimport { createSearchApiKeyCredentialPolicy } from \"./searchApiKeyCredentialPolicy\";\nimport {\n AnalyzeTextOptions,\n CreateIndexOptions,\n CreateOrUpdateIndexOptions,\n CreateOrUpdateSynonymMapOptions,\n CreateSynonymMapOptions,\n DeleteIndexOptions,\n DeleteSynonymMapOptions,\n GetIndexOptions,\n GetIndexStatisticsOptions,\n GetSynonymMapsOptions,\n SearchIndex,\n ListIndexesOptions,\n ListSynonymMapsOptions,\n SynonymMap,\n GetServiceStatisticsOptions,\n IndexIterator,\n IndexNameIterator,\n SearchIndexStatistics,\n SearchServiceStatistics\n} from \"./serviceModels\";\nimport * as utils from \"./serviceUtils\";\nimport { createSpan } from \"./tracing\";\nimport { odataMetadataPolicy } from \"./odataMetadataPolicy\";\nimport { SearchClient, SearchClientOptions as GetSearchClientOptions } from \"./searchClient\";\nimport { KnownSearchAudience } from \"./searchAudience\";\n\n/**\n * Client options used to configure Cognitive Search API requests.\n */\nexport interface SearchIndexClientOptions extends PipelineOptions {\n /**\n * The API version to use when communicating with the service.\n */\n apiVersion?: string;\n\n /**\n * The Audience to use for authentication with Azure Active Directory (AAD). The\n * audience is not considered when using a shared key.\n * {@link KnownSearchAudience} can be used interchangeably with audience\n */\n audience?: string;\n}\n\n/**\n * Class to perform operations to manage\n * (create, update, list/delete)\n * indexes, & synonymmaps.\n */\nexport class SearchIndexClient {\n /**\n * The API version to use when communicating with the service.\n */\n public readonly apiVersion: string = \"2020-06-30\";\n\n /**\n * The endpoint of the search service\n */\n public readonly endpoint: string;\n\n /**\n * @internal\n * @hidden\n * A reference to the auto-generated SearchServiceClient\n */\n private readonly client: GeneratedClient;\n\n /**\n * Used to authenticate requests to the service.\n */\n private readonly credential: KeyCredential | TokenCredential;\n\n /**\n * Used to configure the Search Index client.\n */\n private readonly options: SearchIndexClientOptions;\n\n /**\n * Creates an instance of SearchIndexClient.\n *\n * Example usage:\n * ```ts\n * const { SearchIndexClient, AzureKeyCredential } = require(\"@azure/search-documents\");\n *\n * const client = new SearchIndexClient(\n * \"<endpoint>\",\n * new AzureKeyCredential(\"<Admin Key>\");\n * );\n * ```\n * @param endpoint - The endpoint of the search service\n * @param credential - Used to authenticate requests to the service.\n * @param options - Used to configure the Search Index client.\n */\n constructor(\n endpoint: string,\n credential: KeyCredential | TokenCredential,\n options: SearchIndexClientOptions = {}\n ) {\n this.endpoint = endpoint;\n this.credential = credential;\n this.options = options;\n\n const libInfo = `azsdk-js-search-documents/${SDK_VERSION}`;\n if (!options.userAgentOptions) {\n options.userAgentOptions = {};\n }\n if (options.userAgentOptions.userAgentPrefix) {\n options.userAgentOptions.userAgentPrefix = `${options.userAgentOptions.userAgentPrefix} ${libInfo}`;\n } else {\n options.userAgentOptions.userAgentPrefix = libInfo;\n }\n\n const internalPipelineOptions: InternalPipelineOptions = {\n ...options,\n ...{\n loggingOptions: {\n logger: logger.info,\n allowedHeaderNames: [\n \"elapsed-time\",\n \"Location\",\n \"OData-MaxVersion\",\n \"OData-Version\",\n \"Prefer\",\n \"throttle-reason\"\n ]\n }\n }\n };\n\n const scope: string = options.audience\n ? `${options.audience}/.default`\n : `${KnownSearchAudience.AzurePublicCloud}/.default`;\n\n const requestPolicyFactory: RequestPolicyFactory = isTokenCredential(credential)\n ? bearerTokenAuthenticationPolicy(credential, scope)\n : createSearchApiKeyCredentialPolicy(credential);\n\n const pipeline = createPipelineFromOptions(internalPipelineOptions, requestPolicyFactory);\n\n if (Array.isArray(pipeline.requestPolicyFactories)) {\n pipeline.requestPolicyFactories.unshift(odataMetadataPolicy(\"minimal\"));\n }\n\n let apiVersion = this.apiVersion;\n\n if (options.apiVersion) {\n if (![\"2020-06-30-Preview\", \"2020-06-30\"].includes(options.apiVersion)) {\n throw new Error(`Invalid Api Version: ${options.apiVersion}`);\n }\n apiVersion = options.apiVersion;\n }\n\n this.client = new GeneratedClient(this.endpoint, apiVersion, pipeline);\n }\n\n private async *listIndexesPage(\n options: ListIndexesOptions = {}\n ): AsyncIterableIterator<SearchIndex[]> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-listIndexesPage\", options);\n try {\n const result = await this.client.indexes.list(\n operationOptionsToRequestOptionsBase(updatedOptions)\n );\n const mapped = result.indexes.map(utils.generatedIndexToPublicIndex);\n yield mapped;\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n private async *listIndexesAll(\n options: ListIndexesOptions = {}\n ): AsyncIterableIterator<SearchIndex> {\n for await (const page of this.listIndexesPage(options)) {\n yield* page;\n }\n }\n\n /**\n * Retrieves a list of existing indexes in the service.\n * @param options - Options to the list index operation.\n */\n public listIndexes(options: ListIndexesOptions = {}): IndexIterator {\n const iter = this.listIndexesAll(options);\n\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listIndexesPage(options);\n }\n };\n }\n\n private async *listIndexesNamesPage(\n options: ListIndexesOptions = {}\n ): AsyncIterableIterator<string[]> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-listIndexesNamesPage\", options);\n try {\n const result = await this.client.indexes.list({\n ...operationOptionsToRequestOptionsBase(updatedOptions),\n select: \"name\"\n });\n const mapped = result.indexes.map((idx) => idx.name);\n yield mapped;\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n private async *listIndexesNamesAll(\n options: ListIndexesOptions = {}\n ): AsyncIterableIterator<string> {\n for await (const page of this.listIndexesNamesPage(options)) {\n yield* page;\n }\n }\n\n /**\n * Retrieves a list of names of existing indexes in the service.\n * @param options - Options to the list index operation.\n */\n public listIndexesNames(options: ListIndexesOptions = {}): IndexNameIterator {\n const iter = this.listIndexesNamesAll(options);\n\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listIndexesNamesPage(options);\n }\n };\n }\n\n /**\n * Retrieves a list of existing SynonymMaps in the service.\n * @param options - Options to the list SynonymMaps operation.\n */\n public async listSynonymMaps(options: ListSynonymMapsOptions = {}): Promise<Array<SynonymMap>> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-listSynonymMaps\", options);\n try {\n const result = await this.client.synonymMaps.list(\n operationOptionsToRequestOptionsBase(updatedOptions)\n );\n return result.synonymMaps.map(utils.generatedSynonymMapToPublicSynonymMap);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Retrieves a list of names of existing SynonymMaps in the service.\n * @param options - Options to the list SynonymMaps operation.\n */\n public async listSynonymMapsNames(options: ListSynonymMapsOptions = {}): Promise<Array<string>> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-listSynonymMapsNames\", options);\n try {\n const result = await this.client.synonymMaps.list({\n ...operationOptionsToRequestOptionsBase(updatedOptions),\n select: \"name\"\n });\n return result.synonymMaps.map((sm) => sm.name);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Retrieves information about an index.\n * @param indexName - The name of the index.\n * @param options - Additional optional arguments.\n */\n public async getIndex(indexName: string, options: GetIndexOptions = {}): Promise<SearchIndex> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-getIndex\", options);\n try {\n const result = await this.client.indexes.get(\n indexName,\n operationOptionsToRequestOptionsBase(updatedOptions)\n );\n return utils.generatedIndexToPublicIndex(result);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Retrieves information about a SynonymMap.\n * @param synonymMapName - The name of the SynonymMap.\n * @param options - Additional optional arguments.\n */\n public async getSynonymMap(\n synonymMapName: string,\n options: GetSynonymMapsOptions = {}\n ): Promise<SynonymMap> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-getSynonymMaps\", options);\n try {\n const result = await this.client.synonymMaps.get(\n synonymMapName,\n operationOptionsToRequestOptionsBase(updatedOptions)\n );\n return utils.generatedSynonymMapToPublicSynonymMap(result);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Creates a new index.\n * @param index - The information describing the index to be created.\n * @param options - Additional optional arguments.\n */\n public async createIndex(\n index: SearchIndex,\n options: CreateIndexOptions = {}\n ): Promise<SearchIndex> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-createIndex\", options);\n try {\n const result = await this.client.indexes.create(\n utils.publicIndexToGeneratedIndex(index),\n operationOptionsToRequestOptionsBase(updatedOptions)\n );\n return utils.generatedIndexToPublicIndex(result);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Creates a new SynonymMap in a search service.\n * @param synonymMap - The synonymMap definition to create in a search service.\n * @param options - Additional optional arguments.\n */\n public async createSynonymMap(\n synonymMap: SynonymMap,\n options: CreateSynonymMapOptions = {}\n ): Promise<SynonymMap> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-createSynonymMaps\", options);\n try {\n const result = await this.client.synonymMaps.create(\n utils.publicSynonymMapToGeneratedSynonymMap(synonymMap),\n operationOptionsToRequestOptionsBase(updatedOptions)\n );\n return utils.generatedSynonymMapToPublicSynonymMap(result);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Creates a new index or modifies an existing one.\n * @param index - The information describing the index to be created.\n * @param options - Additional optional arguments.\n */\n public async createOrUpdateIndex(\n index: SearchIndex,\n options: CreateOrUpdateIndexOptions = {}\n ): Promise<SearchIndex> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-createOrUpdateIndex\", options);\n try {\n const etag = options.onlyIfUnchanged ? index.etag : undefined;\n\n const result = await this.client.indexes.createOrUpdate(\n index.name,\n utils.publicIndexToGeneratedIndex(index),\n {\n ...operationOptionsToRequestOptionsBase(updatedOptions),\n ifMatch: etag\n }\n );\n return utils.generatedIndexToPublicIndex(result);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Creates a new SynonymMap or modifies an existing one.\n * @param synonymMap - The information describing the SynonymMap to be created.\n * @param options - Additional optional arguments.\n */\n public async createOrUpdateSynonymMap(\n synonymMap: SynonymMap,\n options: CreateOrUpdateSynonymMapOptions = {}\n ): Promise<SynonymMap> {\n const { span, updatedOptions } = createSpan(\n \"SearchIndexClient-createOrUpdateSynonymMap\",\n options\n );\n try {\n const etag = options.onlyIfUnchanged ? synonymMap.etag : undefined;\n\n const result = await this.client.synonymMaps.createOrUpdate(\n synonymMap.name,\n utils.publicSynonymMapToGeneratedSynonymMap(synonymMap),\n {\n ...operationOptionsToRequestOptionsBase(updatedOptions),\n ifMatch: etag\n }\n );\n return utils.generatedSynonymMapToPublicSynonymMap(result);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Deletes an existing index.\n * @param indexName - Index/Name of the index to delete.\n * @param options - Additional optional arguments.\n */\n public async deleteIndex(\n index: string | SearchIndex,\n options: DeleteIndexOptions = {}\n ): Promise<void> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-deleteIndex\", options);\n try {\n const indexName: string = typeof index === \"string\" ? index : index.name;\n const etag =\n typeof index === \"string\" ? undefined : options.onlyIfUnchanged ? index.etag : undefined;\n\n await this.client.indexes.delete(indexName, {\n ...operationOptionsToRequestOptionsBase(updatedOptions),\n ifMatch: etag\n });\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Deletes an existing SynonymMap.\n * @param synonymMapName - SynonymMap/Name of the synonymMap to delete.\n * @param options - Additional optional arguments.\n */\n public async deleteSynonymMap(\n synonymMap: string | SynonymMap,\n options: DeleteSynonymMapOptions = {}\n ): Promise<void> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-deleteSynonymMap\", options);\n try {\n const synonymMapName: string = typeof synonymMap === \"string\" ? synonymMap : synonymMap.name;\n const etag =\n typeof synonymMap === \"string\"\n ? undefined\n : options.onlyIfUnchanged\n ? synonymMap.etag\n : undefined;\n\n await this.client.synonymMaps.delete(synonymMapName, {\n ...operationOptionsToRequestOptionsBase(updatedOptions),\n ifMatch: etag\n });\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Retrieves statistics about an index, such as the count of documents and the size\n * of index storage.\n * @param indexName - The name of the index.\n * @param options - Additional optional arguments.\n */\n public async getIndexStatistics(\n indexName: string,\n options: GetIndexStatisticsOptions = {}\n ): Promise<SearchIndexStatistics> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-getIndexStatistics\", options);\n try {\n const result = await this.client.indexes.getStatistics(\n indexName,\n operationOptionsToRequestOptionsBase(updatedOptions)\n );\n return result;\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Calls an analyzer or tokenizer manually on provided text.\n * @param indexName - The name of the index that contains the field to analyze\n * @param text - The text to break into tokens.\n * @param options - Additional arguments\n */\n public async analyzeText(indexName: string, options: AnalyzeTextOptions): Promise<AnalyzeResult> {\n const { operationOptions, restOptions } = utils.extractOperationOptions(options);\n\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-analyzeText\", operationOptions);\n try {\n const result = await this.client.indexes.analyze(\n indexName,\n {\n ...restOptions,\n analyzer: restOptions.analyzerName,\n tokenizer: restOptions.tokenizerName\n },\n operationOptionsToRequestOptionsBase(updatedOptions)\n );\n return result;\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Retrieves statistics about the service, such as the count of documents, index, etc.\n * @param options - Additional optional arguments.\n */\n public async getServiceStatistics(\n options: GetServiceStatisticsOptions = {}\n ): Promise<SearchServiceStatistics> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-getServiceStatistics\", options);\n try {\n const result = await this.client.getServiceStatistics(\n operationOptionsToRequestOptionsBase(updatedOptions)\n );\n return result;\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Retrieves the SearchClient corresponding to this SearchIndexClient\n * @param indexName - Name of the index\n * @param options - SearchClient Options\n */\n public getSearchClient<T>(indexName: string, options?: GetSearchClientOptions): SearchClient<T> {\n return new SearchClient<T>(this.endpoint, indexName, this.credential, options || this.options);\n }\n}\n"]}