@azure/storage-queue 12.8.0-beta.1 → 12.8.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 (42) hide show
  1. package/CHANGELOG.md +14 -4
  2. package/README.md +4 -3
  3. package/dist/index.js +178 -146
  4. package/dist/index.js.map +1 -1
  5. package/dist-esm/src/AccountSASSignatureValues.js +2 -2
  6. package/dist-esm/src/AccountSASSignatureValues.js.map +1 -1
  7. package/dist-esm/src/Pipeline.js +6 -6
  8. package/dist-esm/src/Pipeline.js.map +1 -1
  9. package/dist-esm/src/QueueClient.js +41 -39
  10. package/dist-esm/src/QueueClient.js.map +1 -1
  11. package/dist-esm/src/QueueSASSignatureValues.js +1 -1
  12. package/dist-esm/src/QueueSASSignatureValues.js.map +1 -1
  13. package/dist-esm/src/QueueServiceClient.js +16 -14
  14. package/dist-esm/src/QueueServiceClient.js.map +1 -1
  15. package/dist-esm/src/SASQueryParameters.js +1 -1
  16. package/dist-esm/src/SASQueryParameters.js.map +1 -1
  17. package/dist-esm/src/TelemetryPolicyFactory.js +1 -1
  18. package/dist-esm/src/TelemetryPolicyFactory.js.map +1 -1
  19. package/dist-esm/src/credentials/StorageSharedKeyCredential.js +1 -3
  20. package/dist-esm/src/credentials/StorageSharedKeyCredential.js.map +1 -1
  21. package/dist-esm/src/generated/src/models/parameters.js +1 -1
  22. package/dist-esm/src/generated/src/models/parameters.js.map +1 -1
  23. package/dist-esm/src/generated/src/storageClientContext.js +2 -2
  24. package/dist-esm/src/generated/src/storageClientContext.js.map +1 -1
  25. package/dist-esm/src/generatedModels.js.map +1 -1
  26. package/dist-esm/src/policies/StorageBrowserPolicy.js +1 -1
  27. package/dist-esm/src/policies/StorageBrowserPolicy.js.map +1 -1
  28. package/dist-esm/src/policies/StorageRetryPolicy.js +5 -5
  29. package/dist-esm/src/policies/StorageRetryPolicy.js.map +1 -1
  30. package/dist-esm/src/policies/StorageSharedKeyCredentialPolicy.js +1 -1
  31. package/dist-esm/src/policies/StorageSharedKeyCredentialPolicy.js.map +1 -1
  32. package/dist-esm/src/policies/TelemetryPolicy.js +1 -1
  33. package/dist-esm/src/policies/TelemetryPolicy.js.map +1 -1
  34. package/dist-esm/src/utils/constants.js +8 -8
  35. package/dist-esm/src/utils/constants.js.map +1 -1
  36. package/dist-esm/src/utils/tracing.js +2 -2
  37. package/dist-esm/src/utils/tracing.js.map +1 -1
  38. package/dist-esm/src/utils/utils.common.js +1 -1
  39. package/dist-esm/src/utils/utils.common.js.map +1 -1
  40. package/package.json +37 -40
  41. package/{typings → types}/3.1/storage-queue.d.ts +8 -0
  42. /package/{typings → types}/latest/storage-queue.d.ts +0 -0
@@ -40,7 +40,7 @@ export function generateAccountSASQueryParameters(accountSASSignatureValues, sha
40
40
  accountSASSignatureValues.protocol ? accountSASSignatureValues.protocol : "",
41
41
  version,
42
42
  "",
43
- "" // Account SAS requires an additional newline character
43
+ "", // Account SAS requires an additional newline character
44
44
  ].join("\n");
45
45
  }
46
46
  else {
@@ -56,7 +56,7 @@ export function generateAccountSASQueryParameters(accountSASSignatureValues, sha
56
56
  accountSASSignatureValues.ipRange ? ipRangeToString(accountSASSignatureValues.ipRange) : "",
57
57
  accountSASSignatureValues.protocol ? accountSASSignatureValues.protocol : "",
58
58
  version,
59
- "" // Account SAS requires an additional newline character
59
+ "", // Account SAS requires an additional newline character
60
60
  ].join("\n");
61
61
  }
62
62
  const signature = sharedKeyCredential.computeHMACSHA256(stringToSign);
@@ -1 +1 @@
1
- {"version":3,"file":"AccountSASSignatureValues.js","sourceRoot":"","sources":["../../src/AccountSASSignatureValues.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { AccountSASPermissions } from \"./AccountSASPermissions\";\nimport { AccountSASResourceTypes } from \"./AccountSASResourceTypes\";\nimport { AccountSASServices } from \"./AccountSASServices\";\nimport { StorageSharedKeyCredential } from \"./credentials/StorageSharedKeyCredential\";\nimport { SasIPRange, ipRangeToString } from \"./SasIPRange\";\nimport { SASProtocol, SASQueryParameters } from \"./SASQueryParameters\";\nimport { SERVICE_VERSION } from \"./utils/constants\";\nimport { truncatedISO8061Date } from \"./utils/utils.common\";\n\n/**\n * ONLY AVAILABLE IN NODE.JS RUNTIME.\n *\n * AccountSASSignatureValues is used to generate a Shared Access Signature (SAS) for an Azure Storage account. Once\n * all the values here are set appropriately, call generateSASQueryParameters() to obtain a representation of the SAS\n * which can actually be applied to queue urls. Note: that both this class and {@link SASQueryParameters} exist because\n * the former is mutable and a logical representation while the latter is immutable and used to generate actual REST\n * requests.\n *\n * @see https://docs.microsoft.com/en-us/azure/storage/common/storage-dotnet-shared-access-signature-part-1\n * for more conceptual information on SAS\n *\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-an-account-sas\n * for descriptions of the parameters, including which are required\n */\nexport interface AccountSASSignatureValues {\n /**\n * If not provided, this defaults to the service version targeted by this version of the library.\n */\n version?: string;\n\n /**\n * Optional. SAS protocols allowed.\n */\n protocol?: SASProtocol;\n\n /**\n * Optional. When the SAS will take effect.\n */\n startsOn?: Date;\n\n /**\n * The time after which the SAS will no longer work.\n */\n expiresOn: Date;\n\n /**\n * Specifies which operations the SAS user may perform. Please refer to {@link AccountSASPermissions} for help\n * constructing the permissions string.\n */\n permissions: AccountSASPermissions;\n\n /**\n * Optional. IP range allowed.\n */\n ipRange?: SasIPRange;\n\n /**\n * The values that indicate the services accessible with this SAS. Please refer to {@link AccountSASServices} to\n * construct this value.\n */\n services: string;\n\n /**\n * The values that indicate the resource types accessible with this SAS. Please refer\n * to {@link AccountSASResourceTypes} to construct this value.\n */\n resourceTypes: string;\n}\n\n/**\n * ONLY AVAILABLE IN NODE.JS RUNTIME.\n *\n * Generates a {@link SASQueryParameters} object which contains all SAS query parameters needed to make an actual\n * REST request.\n *\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-an-account-sas\n *\n * @param accountSASSignatureValues - SAS Signature values of the account\n * @param sharedKeyCredential - Shared key credential.\n */\nexport function generateAccountSASQueryParameters(\n accountSASSignatureValues: AccountSASSignatureValues,\n sharedKeyCredential: StorageSharedKeyCredential\n): SASQueryParameters {\n const version = accountSASSignatureValues.version\n ? accountSASSignatureValues.version\n : SERVICE_VERSION;\n\n const parsedPermissions = AccountSASPermissions.parse(\n accountSASSignatureValues.permissions.toString()\n ).toString();\n const parsedServices = AccountSASServices.parse(accountSASSignatureValues.services).toString();\n const parsedResourceTypes = AccountSASResourceTypes.parse(\n accountSASSignatureValues.resourceTypes\n ).toString();\n\n let stringToSign: string;\n\n if (version >= \"2020-12-06\") {\n stringToSign = [\n sharedKeyCredential.accountName,\n parsedPermissions,\n parsedServices,\n parsedResourceTypes,\n accountSASSignatureValues.startsOn\n ? truncatedISO8061Date(accountSASSignatureValues.startsOn, false)\n : \"\",\n truncatedISO8061Date(accountSASSignatureValues.expiresOn, false),\n accountSASSignatureValues.ipRange ? ipRangeToString(accountSASSignatureValues.ipRange) : \"\",\n accountSASSignatureValues.protocol ? accountSASSignatureValues.protocol : \"\",\n version,\n \"\", // Reserved for encryption scope\n \"\" // Account SAS requires an additional newline character\n ].join(\"\\n\");\n } else {\n stringToSign = [\n sharedKeyCredential.accountName,\n parsedPermissions,\n parsedServices,\n parsedResourceTypes,\n accountSASSignatureValues.startsOn\n ? truncatedISO8061Date(accountSASSignatureValues.startsOn, false)\n : \"\",\n truncatedISO8061Date(accountSASSignatureValues.expiresOn, false),\n accountSASSignatureValues.ipRange ? ipRangeToString(accountSASSignatureValues.ipRange) : \"\",\n accountSASSignatureValues.protocol ? accountSASSignatureValues.protocol : \"\",\n version,\n \"\" // Account SAS requires an additional newline character\n ].join(\"\\n\");\n }\n\n const signature: string = sharedKeyCredential.computeHMACSHA256(stringToSign);\n\n return new SASQueryParameters(\n version,\n signature,\n parsedPermissions,\n parsedServices,\n parsedResourceTypes,\n accountSASSignatureValues.protocol,\n accountSASSignatureValues.startsOn,\n accountSASSignatureValues.expiresOn,\n accountSASSignatureValues.ipRange\n );\n}\n"]}
1
+ {"version":3,"file":"AccountSASSignatureValues.js","sourceRoot":"","sources":["../../src/AccountSASSignatureValues.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { AccountSASPermissions } from \"./AccountSASPermissions\";\nimport { AccountSASResourceTypes } from \"./AccountSASResourceTypes\";\nimport { AccountSASServices } from \"./AccountSASServices\";\nimport { StorageSharedKeyCredential } from \"./credentials/StorageSharedKeyCredential\";\nimport { SasIPRange, ipRangeToString } from \"./SasIPRange\";\nimport { SASProtocol, SASQueryParameters } from \"./SASQueryParameters\";\nimport { SERVICE_VERSION } from \"./utils/constants\";\nimport { truncatedISO8061Date } from \"./utils/utils.common\";\n\n/**\n * ONLY AVAILABLE IN NODE.JS RUNTIME.\n *\n * AccountSASSignatureValues is used to generate a Shared Access Signature (SAS) for an Azure Storage account. Once\n * all the values here are set appropriately, call generateSASQueryParameters() to obtain a representation of the SAS\n * which can actually be applied to queue urls. Note: that both this class and {@link SASQueryParameters} exist because\n * the former is mutable and a logical representation while the latter is immutable and used to generate actual REST\n * requests.\n *\n * @see https://docs.microsoft.com/en-us/azure/storage/common/storage-dotnet-shared-access-signature-part-1\n * for more conceptual information on SAS\n *\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-an-account-sas\n * for descriptions of the parameters, including which are required\n */\nexport interface AccountSASSignatureValues {\n /**\n * If not provided, this defaults to the service version targeted by this version of the library.\n */\n version?: string;\n\n /**\n * Optional. SAS protocols allowed.\n */\n protocol?: SASProtocol;\n\n /**\n * Optional. When the SAS will take effect.\n */\n startsOn?: Date;\n\n /**\n * The time after which the SAS will no longer work.\n */\n expiresOn: Date;\n\n /**\n * Specifies which operations the SAS user may perform. Please refer to {@link AccountSASPermissions} for help\n * constructing the permissions string.\n */\n permissions: AccountSASPermissions;\n\n /**\n * Optional. IP range allowed.\n */\n ipRange?: SasIPRange;\n\n /**\n * The values that indicate the services accessible with this SAS. Please refer to {@link AccountSASServices} to\n * construct this value.\n */\n services: string;\n\n /**\n * The values that indicate the resource types accessible with this SAS. Please refer\n * to {@link AccountSASResourceTypes} to construct this value.\n */\n resourceTypes: string;\n}\n\n/**\n * ONLY AVAILABLE IN NODE.JS RUNTIME.\n *\n * Generates a {@link SASQueryParameters} object which contains all SAS query parameters needed to make an actual\n * REST request.\n *\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-an-account-sas\n *\n * @param accountSASSignatureValues - SAS Signature values of the account\n * @param sharedKeyCredential - Shared key credential.\n */\nexport function generateAccountSASQueryParameters(\n accountSASSignatureValues: AccountSASSignatureValues,\n sharedKeyCredential: StorageSharedKeyCredential\n): SASQueryParameters {\n const version = accountSASSignatureValues.version\n ? accountSASSignatureValues.version\n : SERVICE_VERSION;\n\n const parsedPermissions = AccountSASPermissions.parse(\n accountSASSignatureValues.permissions.toString()\n ).toString();\n const parsedServices = AccountSASServices.parse(accountSASSignatureValues.services).toString();\n const parsedResourceTypes = AccountSASResourceTypes.parse(\n accountSASSignatureValues.resourceTypes\n ).toString();\n\n let stringToSign: string;\n\n if (version >= \"2020-12-06\") {\n stringToSign = [\n sharedKeyCredential.accountName,\n parsedPermissions,\n parsedServices,\n parsedResourceTypes,\n accountSASSignatureValues.startsOn\n ? truncatedISO8061Date(accountSASSignatureValues.startsOn, false)\n : \"\",\n truncatedISO8061Date(accountSASSignatureValues.expiresOn, false),\n accountSASSignatureValues.ipRange ? ipRangeToString(accountSASSignatureValues.ipRange) : \"\",\n accountSASSignatureValues.protocol ? accountSASSignatureValues.protocol : \"\",\n version,\n \"\", // Reserved for encryption scope\n \"\", // Account SAS requires an additional newline character\n ].join(\"\\n\");\n } else {\n stringToSign = [\n sharedKeyCredential.accountName,\n parsedPermissions,\n parsedServices,\n parsedResourceTypes,\n accountSASSignatureValues.startsOn\n ? truncatedISO8061Date(accountSASSignatureValues.startsOn, false)\n : \"\",\n truncatedISO8061Date(accountSASSignatureValues.expiresOn, false),\n accountSASSignatureValues.ipRange ? ipRangeToString(accountSASSignatureValues.ipRange) : \"\",\n accountSASSignatureValues.protocol ? accountSASSignatureValues.protocol : \"\",\n version,\n \"\", // Account SAS requires an additional newline character\n ].join(\"\\n\");\n }\n\n const signature: string = sharedKeyCredential.computeHMACSHA256(stringToSign);\n\n return new SASQueryParameters(\n version,\n signature,\n parsedPermissions,\n parsedServices,\n parsedResourceTypes,\n accountSASSignatureValues.protocol,\n accountSASSignatureValues.startsOn,\n accountSASSignatureValues.expiresOn,\n accountSASSignatureValues.ipRange\n );\n}\n"]}
@@ -1,16 +1,16 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
2
  // Licensed under the MIT license.
3
- import { BaseRequestPolicy, deserializationPolicy, HttpHeaders, RequestPolicyOptions, WebResource, proxyPolicy, isNode, isTokenCredential, bearerTokenAuthenticationPolicy, tracingPolicy, logPolicy, generateClientRequestIdPolicy, keepAlivePolicy } from "@azure/core-http";
3
+ import { BaseRequestPolicy, deserializationPolicy, HttpHeaders, RequestPolicyOptions, WebResource, proxyPolicy, isNode, isTokenCredential, bearerTokenAuthenticationPolicy, tracingPolicy, logPolicy, generateClientRequestIdPolicy, keepAlivePolicy, } from "@azure/core-http";
4
4
  import { logger } from "./log";
5
5
  import { StorageBrowserPolicyFactory } from "./StorageBrowserPolicyFactory";
6
6
  import { StorageRetryPolicyFactory } from "./StorageRetryPolicyFactory";
7
7
  import { TelemetryPolicyFactory } from "./TelemetryPolicyFactory";
8
8
  import { AnonymousCredential } from "./credentials/AnonymousCredential";
9
- import { StorageOAuthScopes, StorageQueueLoggingAllowedHeaderNames, StorageQueueLoggingAllowedQueryParameters } from "./utils/constants";
9
+ import { StorageOAuthScopes, StorageQueueLoggingAllowedHeaderNames, StorageQueueLoggingAllowedQueryParameters, } from "./utils/constants";
10
10
  import { getCachedDefaultHttpClient } from "./utils/cache";
11
11
  // Export following interfaces and types for customers who want to implement their
12
12
  // own RequestPolicy or HTTPClient
13
- export { BaseRequestPolicy, StorageOAuthScopes, deserializationPolicy, HttpHeaders, WebResource, RequestPolicyOptions };
13
+ export { BaseRequestPolicy, StorageOAuthScopes, deserializationPolicy, HttpHeaders, WebResource, RequestPolicyOptions, };
14
14
  /**
15
15
  * A Pipeline class containing HTTP request policies.
16
16
  * You can create a default Pipeline by calling newPipeline().
@@ -40,7 +40,7 @@ export class Pipeline {
40
40
  toServiceClientOptions() {
41
41
  return {
42
42
  httpClient: this.options.httpClient,
43
- requestPolicyFactories: this.factories
43
+ requestPolicyFactories: this.factories,
44
44
  };
45
45
  }
46
46
  }
@@ -70,8 +70,8 @@ export function newPipeline(credential, pipelineOptions = {}) {
70
70
  logPolicy({
71
71
  logger: logger.info,
72
72
  allowedHeaderNames: StorageQueueLoggingAllowedHeaderNames,
73
- allowedQueryParameters: StorageQueueLoggingAllowedQueryParameters
74
- })
73
+ allowedQueryParameters: StorageQueueLoggingAllowedQueryParameters,
74
+ }),
75
75
  ];
76
76
  if (isNode) {
77
77
  // ProxyPolicy is only available in Node.js runtime, not in browsers
@@ -1 +1 @@
1
- {"version":3,"file":"Pipeline.js","sourceRoot":"","sources":["../../src/Pipeline.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EAErB,WAAW,EAKX,oBAAoB,EAEpB,WAAW,EACX,WAAW,EACX,MAAM,EAEN,iBAAiB,EACjB,+BAA+B,EAC/B,aAAa,EACb,SAAS,EAIT,6BAA6B,EAC7B,eAAe,EAChB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAuB,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAC7F,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EACL,kBAAkB,EAClB,qCAAqC,EACrC,yCAAyC,EAC1C,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAC;AAE3D,kFAAkF;AAClF,kCAAkC;AAClC,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,qBAAqB,EAErB,WAAW,EAGX,WAAW,EAGX,oBAAoB,EACrB,CAAC;AAYF;;;;;;GAMG;AACH,MAAM,OAAO,QAAQ;IAUnB;;;;;OAKG;IACH,YAAY,SAAiC,EAAE,UAA2B,EAAE;QAC1E,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,uFAAuF;QACvF,kDAAkD;QAClD,IAAI,CAAC,OAAO,mCACP,OAAO,KACV,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,0BAA0B,EAAE,GAC/D,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACI,sBAAsB;QAC3B,OAAO;YACL,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU;YACnC,sBAAsB,EAAE,IAAI,CAAC,SAAS;SACvC,CAAC;IACJ,CAAC;CACF;AA6BD;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CACzB,UAA+E,EAC/E,kBAA0C,EAAE;IAE5C,IAAI,UAAU,KAAK,SAAS,EAAE;QAC5B,UAAU,GAAG,IAAI,mBAAmB,EAAE,CAAC;KACxC;IAED,0FAA0F;IAC1F,mFAAmF;IACnF,sEAAsE;IACtE,MAAM,eAAe,GAAG,IAAI,sBAAsB,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC;IACrF,MAAM,SAAS,GAA2B;QACxC,aAAa,CAAC,EAAE,SAAS,EAAE,eAAe,CAAC,eAAe,EAAE,CAAC;QAC7D,eAAe,CAAC,eAAe,CAAC,gBAAgB,CAAC;QACjD,eAAe;QACf,6BAA6B,EAAE;QAC/B,IAAI,2BAA2B,EAAE;QACjC,IAAI,yBAAyB,CAAC,eAAe,CAAC,YAAY,CAAC;QAC3D,qBAAqB,EAAE;QACvB,SAAS,CAAC;YACR,MAAM,EAAE,MAAM,CAAC,IAAI;YACnB,kBAAkB,EAAE,qCAAqC;YACzD,sBAAsB,EAAE,yCAAyC;SAClE,CAAC;KACH,CAAC;IAEF,IAAI,MAAM,EAAE;QACV,oEAAoE;QACpE,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC,CAAC;KAC3D;IACD,SAAS,CAAC,IAAI,CACZ,iBAAiB,CAAC,UAAU,CAAC;QAC3B,CAAC,CAAC,+BAA+B,CAAC,UAAU,EAAE,kBAAkB,CAAC;QACjE,CAAC,CAAC,UAAU,CACf,CAAC;IAEF,OAAO,IAAI,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;AAClD,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport {\n BaseRequestPolicy,\n deserializationPolicy,\n HttpClient as IHttpClient,\n HttpHeaders,\n HttpOperationResponse,\n HttpRequestBody,\n RequestPolicy,\n RequestPolicyFactory,\n RequestPolicyOptions,\n ServiceClientOptions,\n WebResource,\n proxyPolicy,\n isNode,\n TokenCredential,\n isTokenCredential,\n bearerTokenAuthenticationPolicy,\n tracingPolicy,\n logPolicy,\n ProxyOptions,\n KeepAliveOptions,\n UserAgentOptions,\n generateClientRequestIdPolicy,\n keepAlivePolicy\n} from \"@azure/core-http\";\n\nimport { logger } from \"./log\";\nimport { StorageBrowserPolicyFactory } from \"./StorageBrowserPolicyFactory\";\nimport { StorageRetryOptions, StorageRetryPolicyFactory } from \"./StorageRetryPolicyFactory\";\nimport { TelemetryPolicyFactory } from \"./TelemetryPolicyFactory\";\nimport { StorageSharedKeyCredential } from \"./credentials/StorageSharedKeyCredential\";\nimport { AnonymousCredential } from \"./credentials/AnonymousCredential\";\nimport {\n StorageOAuthScopes,\n StorageQueueLoggingAllowedHeaderNames,\n StorageQueueLoggingAllowedQueryParameters\n} from \"./utils/constants\";\nimport { getCachedDefaultHttpClient } from \"./utils/cache\";\n\n// Export following interfaces and types for customers who want to implement their\n// own RequestPolicy or HTTPClient\nexport {\n BaseRequestPolicy,\n StorageOAuthScopes,\n deserializationPolicy,\n IHttpClient,\n HttpHeaders,\n HttpOperationResponse,\n HttpRequestBody,\n WebResource,\n RequestPolicyFactory,\n RequestPolicy,\n RequestPolicyOptions\n};\n\n/**\n * Option interface for Pipeline constructor.\n */\nexport interface PipelineOptions {\n /**\n * Optional. Configures the HTTP client to send requests and receive responses.\n */\n httpClient?: IHttpClient;\n}\n\n/**\n * A Pipeline class containing HTTP request policies.\n * You can create a default Pipeline by calling newPipeline().\n * Or you can create a Pipeline with your own policies by the constructor of Pipeline.\n * Refer to newPipeline() and provided policies as reference before\n * implementing your customized Pipeline.\n */\nexport class Pipeline {\n /**\n * A list of chained request policy factories.\n */\n public readonly factories: RequestPolicyFactory[];\n /**\n * Configures pipeline logger and HTTP client.\n */\n public readonly options: PipelineOptions;\n\n /**\n * Creates an instance of Pipeline. Customize HTTPClient by implementing IHttpClient interface.\n *\n * @param factories -\n * @param options -\n */\n constructor(factories: RequestPolicyFactory[], options: PipelineOptions = {}) {\n this.factories = factories;\n // when options.httpClient is not specified, passing in a DefaultHttpClient instance to\n // avoid each client creating its own http client.\n this.options = {\n ...options,\n httpClient: options.httpClient || getCachedDefaultHttpClient()\n };\n }\n\n /**\n * Transfers Pipeline object to ServiceClientOptions object which required by\n * ServiceClient constructor.\n *\n * @returns The ServiceClientOptions object from this Pipeline.\n */\n public toServiceClientOptions(): ServiceClientOptions {\n return {\n httpClient: this.options.httpClient,\n requestPolicyFactories: this.factories\n };\n }\n}\n\n/**\n * Option interface for newPipeline() method.\n */\nexport interface StoragePipelineOptions {\n /**\n * Options to configure a proxy for outgoing requests.\n */\n proxyOptions?: ProxyOptions;\n /**\n * Options for adding user agent details to outgoing requests.\n */\n userAgentOptions?: UserAgentOptions;\n /**\n * Configures the built-in retry policy behavior.\n */\n retryOptions?: StorageRetryOptions;\n\n /**\n * Keep alive configurations. Default keep-alive is enabled.\n */\n keepAliveOptions?: KeepAliveOptions;\n /**\n * Configures the HTTP client to send requests and receive responses.\n */\n httpClient?: IHttpClient;\n}\n\n/**\n * Creates a new Pipeline object with Credential provided.\n *\n * @param credential - Such as AnonymousCredential, StorageSharedKeyCredential or any credential from the `@azure/identity` package to authenticate requests to the service. You can also provide an object that implements the TokenCredential interface. If not specified, AnonymousCredential is used.\n * @param pipelineOptions - Options.\n * @returns A new Pipeline object.\n */\nexport function newPipeline(\n credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential,\n pipelineOptions: StoragePipelineOptions = {}\n): Pipeline {\n if (credential === undefined) {\n credential = new AnonymousCredential();\n }\n\n // Order is important. Closer to the API at the top & closer to the network at the bottom.\n // The credential's policy factory must appear close to the wire so it can sign any\n // changes made by other factories (like UniqueRequestIDPolicyFactory)\n const telemetryPolicy = new TelemetryPolicyFactory(pipelineOptions.userAgentOptions);\n const factories: RequestPolicyFactory[] = [\n tracingPolicy({ userAgent: telemetryPolicy.telemetryString }),\n keepAlivePolicy(pipelineOptions.keepAliveOptions),\n telemetryPolicy,\n generateClientRequestIdPolicy(),\n new StorageBrowserPolicyFactory(),\n new StorageRetryPolicyFactory(pipelineOptions.retryOptions), // Retry policy should be above any policy that throws retryable errors\n deserializationPolicy(), // Default deserializationPolicy is provided by protocol layer\n logPolicy({\n logger: logger.info,\n allowedHeaderNames: StorageQueueLoggingAllowedHeaderNames,\n allowedQueryParameters: StorageQueueLoggingAllowedQueryParameters\n })\n ];\n\n if (isNode) {\n // ProxyPolicy is only available in Node.js runtime, not in browsers\n factories.push(proxyPolicy(pipelineOptions.proxyOptions));\n }\n factories.push(\n isTokenCredential(credential)\n ? bearerTokenAuthenticationPolicy(credential, StorageOAuthScopes)\n : credential\n );\n\n return new Pipeline(factories, pipelineOptions);\n}\n"]}
1
+ {"version":3,"file":"Pipeline.js","sourceRoot":"","sources":["../../src/Pipeline.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EAErB,WAAW,EAKX,oBAAoB,EAEpB,WAAW,EACX,WAAW,EACX,MAAM,EAEN,iBAAiB,EACjB,+BAA+B,EAC/B,aAAa,EACb,SAAS,EAIT,6BAA6B,EAC7B,eAAe,GAChB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAuB,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAC7F,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EACL,kBAAkB,EAClB,qCAAqC,EACrC,yCAAyC,GAC1C,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAC;AAE3D,kFAAkF;AAClF,kCAAkC;AAClC,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,qBAAqB,EAErB,WAAW,EAGX,WAAW,EAGX,oBAAoB,GACrB,CAAC;AAYF;;;;;;GAMG;AACH,MAAM,OAAO,QAAQ;IAUnB;;;;;OAKG;IACH,YAAY,SAAiC,EAAE,UAA2B,EAAE;QAC1E,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,uFAAuF;QACvF,kDAAkD;QAClD,IAAI,CAAC,OAAO,mCACP,OAAO,KACV,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,0BAA0B,EAAE,GAC/D,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACI,sBAAsB;QAC3B,OAAO;YACL,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU;YACnC,sBAAsB,EAAE,IAAI,CAAC,SAAS;SACvC,CAAC;IACJ,CAAC;CACF;AA6BD;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CACzB,UAA+E,EAC/E,kBAA0C,EAAE;IAE5C,IAAI,UAAU,KAAK,SAAS,EAAE;QAC5B,UAAU,GAAG,IAAI,mBAAmB,EAAE,CAAC;KACxC;IAED,0FAA0F;IAC1F,mFAAmF;IACnF,sEAAsE;IACtE,MAAM,eAAe,GAAG,IAAI,sBAAsB,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC;IACrF,MAAM,SAAS,GAA2B;QACxC,aAAa,CAAC,EAAE,SAAS,EAAE,eAAe,CAAC,eAAe,EAAE,CAAC;QAC7D,eAAe,CAAC,eAAe,CAAC,gBAAgB,CAAC;QACjD,eAAe;QACf,6BAA6B,EAAE;QAC/B,IAAI,2BAA2B,EAAE;QACjC,IAAI,yBAAyB,CAAC,eAAe,CAAC,YAAY,CAAC;QAC3D,qBAAqB,EAAE;QACvB,SAAS,CAAC;YACR,MAAM,EAAE,MAAM,CAAC,IAAI;YACnB,kBAAkB,EAAE,qCAAqC;YACzD,sBAAsB,EAAE,yCAAyC;SAClE,CAAC;KACH,CAAC;IAEF,IAAI,MAAM,EAAE;QACV,oEAAoE;QACpE,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC,CAAC;KAC3D;IACD,SAAS,CAAC,IAAI,CACZ,iBAAiB,CAAC,UAAU,CAAC;QAC3B,CAAC,CAAC,+BAA+B,CAAC,UAAU,EAAE,kBAAkB,CAAC;QACjE,CAAC,CAAC,UAAU,CACf,CAAC;IAEF,OAAO,IAAI,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;AAClD,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport {\n BaseRequestPolicy,\n deserializationPolicy,\n HttpClient as IHttpClient,\n HttpHeaders,\n HttpOperationResponse,\n HttpRequestBody,\n RequestPolicy,\n RequestPolicyFactory,\n RequestPolicyOptions,\n ServiceClientOptions,\n WebResource,\n proxyPolicy,\n isNode,\n TokenCredential,\n isTokenCredential,\n bearerTokenAuthenticationPolicy,\n tracingPolicy,\n logPolicy,\n ProxyOptions,\n KeepAliveOptions,\n UserAgentOptions,\n generateClientRequestIdPolicy,\n keepAlivePolicy,\n} from \"@azure/core-http\";\n\nimport { logger } from \"./log\";\nimport { StorageBrowserPolicyFactory } from \"./StorageBrowserPolicyFactory\";\nimport { StorageRetryOptions, StorageRetryPolicyFactory } from \"./StorageRetryPolicyFactory\";\nimport { TelemetryPolicyFactory } from \"./TelemetryPolicyFactory\";\nimport { StorageSharedKeyCredential } from \"./credentials/StorageSharedKeyCredential\";\nimport { AnonymousCredential } from \"./credentials/AnonymousCredential\";\nimport {\n StorageOAuthScopes,\n StorageQueueLoggingAllowedHeaderNames,\n StorageQueueLoggingAllowedQueryParameters,\n} from \"./utils/constants\";\nimport { getCachedDefaultHttpClient } from \"./utils/cache\";\n\n// Export following interfaces and types for customers who want to implement their\n// own RequestPolicy or HTTPClient\nexport {\n BaseRequestPolicy,\n StorageOAuthScopes,\n deserializationPolicy,\n IHttpClient,\n HttpHeaders,\n HttpOperationResponse,\n HttpRequestBody,\n WebResource,\n RequestPolicyFactory,\n RequestPolicy,\n RequestPolicyOptions,\n};\n\n/**\n * Option interface for Pipeline constructor.\n */\nexport interface PipelineOptions {\n /**\n * Optional. Configures the HTTP client to send requests and receive responses.\n */\n httpClient?: IHttpClient;\n}\n\n/**\n * A Pipeline class containing HTTP request policies.\n * You can create a default Pipeline by calling newPipeline().\n * Or you can create a Pipeline with your own policies by the constructor of Pipeline.\n * Refer to newPipeline() and provided policies as reference before\n * implementing your customized Pipeline.\n */\nexport class Pipeline {\n /**\n * A list of chained request policy factories.\n */\n public readonly factories: RequestPolicyFactory[];\n /**\n * Configures pipeline logger and HTTP client.\n */\n public readonly options: PipelineOptions;\n\n /**\n * Creates an instance of Pipeline. Customize HTTPClient by implementing IHttpClient interface.\n *\n * @param factories -\n * @param options -\n */\n constructor(factories: RequestPolicyFactory[], options: PipelineOptions = {}) {\n this.factories = factories;\n // when options.httpClient is not specified, passing in a DefaultHttpClient instance to\n // avoid each client creating its own http client.\n this.options = {\n ...options,\n httpClient: options.httpClient || getCachedDefaultHttpClient(),\n };\n }\n\n /**\n * Transfers Pipeline object to ServiceClientOptions object which required by\n * ServiceClient constructor.\n *\n * @returns The ServiceClientOptions object from this Pipeline.\n */\n public toServiceClientOptions(): ServiceClientOptions {\n return {\n httpClient: this.options.httpClient,\n requestPolicyFactories: this.factories,\n };\n }\n}\n\n/**\n * Option interface for newPipeline() method.\n */\nexport interface StoragePipelineOptions {\n /**\n * Options to configure a proxy for outgoing requests.\n */\n proxyOptions?: ProxyOptions;\n /**\n * Options for adding user agent details to outgoing requests.\n */\n userAgentOptions?: UserAgentOptions;\n /**\n * Configures the built-in retry policy behavior.\n */\n retryOptions?: StorageRetryOptions;\n\n /**\n * Keep alive configurations. Default keep-alive is enabled.\n */\n keepAliveOptions?: KeepAliveOptions;\n /**\n * Configures the HTTP client to send requests and receive responses.\n */\n httpClient?: IHttpClient;\n}\n\n/**\n * Creates a new Pipeline object with Credential provided.\n *\n * @param credential - Such as AnonymousCredential, StorageSharedKeyCredential or any credential from the `@azure/identity` package to authenticate requests to the service. You can also provide an object that implements the TokenCredential interface. If not specified, AnonymousCredential is used.\n * @param pipelineOptions - Options.\n * @returns A new Pipeline object.\n */\nexport function newPipeline(\n credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential,\n pipelineOptions: StoragePipelineOptions = {}\n): Pipeline {\n if (credential === undefined) {\n credential = new AnonymousCredential();\n }\n\n // Order is important. Closer to the API at the top & closer to the network at the bottom.\n // The credential's policy factory must appear close to the wire so it can sign any\n // changes made by other factories (like UniqueRequestIDPolicyFactory)\n const telemetryPolicy = new TelemetryPolicyFactory(pipelineOptions.userAgentOptions);\n const factories: RequestPolicyFactory[] = [\n tracingPolicy({ userAgent: telemetryPolicy.telemetryString }),\n keepAlivePolicy(pipelineOptions.keepAliveOptions),\n telemetryPolicy,\n generateClientRequestIdPolicy(),\n new StorageBrowserPolicyFactory(),\n new StorageRetryPolicyFactory(pipelineOptions.retryOptions), // Retry policy should be above any policy that throws retryable errors\n deserializationPolicy(), // Default deserializationPolicy is provided by protocol layer\n logPolicy({\n logger: logger.info,\n allowedHeaderNames: StorageQueueLoggingAllowedHeaderNames,\n allowedQueryParameters: StorageQueueLoggingAllowedQueryParameters,\n }),\n ];\n\n if (isNode) {\n // ProxyPolicy is only available in Node.js runtime, not in browsers\n factories.push(proxyPolicy(pipelineOptions.proxyOptions));\n }\n factories.push(\n isTokenCredential(credential)\n ? bearerTokenAuthenticationPolicy(credential, StorageOAuthScopes)\n : credential\n );\n\n return new Pipeline(factories, pipelineOptions);\n}\n"]}
@@ -1,11 +1,11 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
2
  // Licensed under the MIT license.
3
- import { isTokenCredential, isNode, getDefaultProxySettings, URLBuilder } from "@azure/core-http";
3
+ import { isTokenCredential, isNode, getDefaultProxySettings, URLBuilder, } from "@azure/core-http";
4
4
  import { SpanStatusCode } from "@azure/core-tracing";
5
5
  import { Messages, MessageId, Queue } from "./generated/src/operations";
6
6
  import { newPipeline, Pipeline } from "./Pipeline";
7
7
  import { StorageClient } from "./StorageClient";
8
- import { appendToURLPath, extractConnectionStringParts, isIpEndpointStyle, truncatedISO8061Date, getStorageClientContext, appendToURLQuery } from "./utils/utils.common";
8
+ import { appendToURLPath, extractConnectionStringParts, isIpEndpointStyle, truncatedISO8061Date, getStorageClientContext, appendToURLQuery, } from "./utils/utils.common";
9
9
  import { StorageSharedKeyCredential } from "./credentials/StorageSharedKeyCredential";
10
10
  import { AnonymousCredential } from "./credentials/AnonymousCredential";
11
11
  import { createSpan } from "./utils/tracing";
@@ -49,7 +49,9 @@ export class QueueClient extends StorageClient {
49
49
  const queueName = credentialOrPipelineOrQueueName;
50
50
  const sharedKeyCredential = new StorageSharedKeyCredential(extractedCreds.accountName, extractedCreds.accountKey);
51
51
  url = appendToURLPath(extractedCreds.url, queueName);
52
- options.proxyOptions = getDefaultProxySettings(extractedCreds.proxyUri);
52
+ if (!options.proxyOptions) {
53
+ options.proxyOptions = getDefaultProxySettings(extractedCreds.proxyUri);
54
+ }
53
55
  pipeline = newPipeline(sharedKeyCredential, options);
54
56
  }
55
57
  else {
@@ -115,7 +117,7 @@ export class QueueClient extends StorageClient {
115
117
  catch (e) {
116
118
  span.setStatus({
117
119
  code: SpanStatusCode.ERROR,
118
- message: e.message
120
+ message: e.message,
119
121
  });
120
122
  throw e;
121
123
  }
@@ -147,13 +149,13 @@ export class QueueClient extends StorageClient {
147
149
  if (((_a = e.details) === null || _a === void 0 ? void 0 : _a.errorCode) === "QueueAlreadyExists") {
148
150
  span.setStatus({
149
151
  code: SpanStatusCode.ERROR,
150
- message: "Expected exception when creating a queue only if it does not already exist."
152
+ message: "Expected exception when creating a queue only if it does not already exist.",
151
153
  });
152
154
  return Object.assign(Object.assign({ succeeded: false }, (_b = e.response) === null || _b === void 0 ? void 0 : _b.parsedHeaders), { _response: e.response });
153
155
  }
154
156
  span.setStatus({
155
157
  code: SpanStatusCode.ERROR,
156
- message: e.message
158
+ message: e.message,
157
159
  });
158
160
  throw e;
159
161
  }
@@ -178,13 +180,13 @@ export class QueueClient extends StorageClient {
178
180
  if (((_a = e.details) === null || _a === void 0 ? void 0 : _a.errorCode) === "QueueNotFound") {
179
181
  span.setStatus({
180
182
  code: SpanStatusCode.ERROR,
181
- message: "Expected exception when deleting a queue only if it exists."
183
+ message: "Expected exception when deleting a queue only if it exists.",
182
184
  });
183
185
  return Object.assign(Object.assign({ succeeded: false }, (_b = e.response) === null || _b === void 0 ? void 0 : _b.parsedHeaders), { _response: e.response });
184
186
  }
185
187
  span.setStatus({
186
188
  code: SpanStatusCode.ERROR,
187
- message: e.message
189
+ message: e.message,
188
190
  });
189
191
  throw e;
190
192
  }
@@ -213,13 +215,13 @@ export class QueueClient extends StorageClient {
213
215
  try {
214
216
  return await this.queueContext.delete({
215
217
  abortSignal: options.abortSignal,
216
- tracingOptions: updatedOptions.tracingOptions
218
+ tracingOptions: updatedOptions.tracingOptions,
217
219
  });
218
220
  }
219
221
  catch (e) {
220
222
  span.setStatus({
221
223
  code: SpanStatusCode.ERROR,
222
- message: e.message
224
+ message: e.message,
223
225
  });
224
226
  throw e;
225
227
  }
@@ -241,7 +243,7 @@ export class QueueClient extends StorageClient {
241
243
  try {
242
244
  await this.getProperties({
243
245
  abortSignal: options.abortSignal,
244
- tracingOptions: updatedOptions.tracingOptions
246
+ tracingOptions: updatedOptions.tracingOptions,
245
247
  });
246
248
  return true;
247
249
  }
@@ -249,13 +251,13 @@ export class QueueClient extends StorageClient {
249
251
  if (e.statusCode === 404) {
250
252
  span.setStatus({
251
253
  code: SpanStatusCode.ERROR,
252
- message: "Expected exception when checking queue existence"
254
+ message: "Expected exception when checking queue existence",
253
255
  });
254
256
  return false;
255
257
  }
256
258
  span.setStatus({
257
259
  code: SpanStatusCode.ERROR,
258
- message: e.message
260
+ message: e.message,
259
261
  });
260
262
  throw e;
261
263
  }
@@ -281,13 +283,13 @@ export class QueueClient extends StorageClient {
281
283
  try {
282
284
  return await this.queueContext.getProperties({
283
285
  abortSignal: options.abortSignal,
284
- tracingOptions: updatedOptions.tracingOptions
286
+ tracingOptions: updatedOptions.tracingOptions,
285
287
  });
286
288
  }
287
289
  catch (e) {
288
290
  span.setStatus({
289
291
  code: SpanStatusCode.ERROR,
290
- message: e.message
292
+ message: e.message,
291
293
  });
292
294
  throw e;
293
295
  }
@@ -312,13 +314,13 @@ export class QueueClient extends StorageClient {
312
314
  return await this.queueContext.setMetadata({
313
315
  abortSignal: options.abortSignal,
314
316
  metadata,
315
- tracingOptions: updatedOptions.tracingOptions
317
+ tracingOptions: updatedOptions.tracingOptions,
316
318
  });
317
319
  }
318
320
  catch (e) {
319
321
  span.setStatus({
320
322
  code: SpanStatusCode.ERROR,
321
- message: e.message
323
+ message: e.message,
322
324
  });
323
325
  throw e;
324
326
  }
@@ -342,7 +344,7 @@ export class QueueClient extends StorageClient {
342
344
  try {
343
345
  const response = await this.queueContext.getAccessPolicy({
344
346
  abortSignal: options.abortSignal,
345
- tracingOptions: updatedOptions.tracingOptions
347
+ tracingOptions: updatedOptions.tracingOptions,
346
348
  });
347
349
  const res = {
348
350
  _response: response._response,
@@ -351,13 +353,13 @@ export class QueueClient extends StorageClient {
351
353
  clientRequestId: response.clientRequestId,
352
354
  signedIdentifiers: [],
353
355
  version: response.version,
354
- errorCode: response.errorCode
356
+ errorCode: response.errorCode,
355
357
  };
356
358
  for (const identifier of response) {
357
359
  let accessPolicy = undefined;
358
360
  if (identifier.accessPolicy) {
359
361
  accessPolicy = {
360
- permissions: identifier.accessPolicy.permissions
362
+ permissions: identifier.accessPolicy.permissions,
361
363
  };
362
364
  if (identifier.accessPolicy.expiresOn) {
363
365
  accessPolicy.expiresOn = new Date(identifier.accessPolicy.expiresOn);
@@ -368,7 +370,7 @@ export class QueueClient extends StorageClient {
368
370
  }
369
371
  res.signedIdentifiers.push({
370
372
  accessPolicy,
371
- id: identifier.id
373
+ id: identifier.id,
372
374
  });
373
375
  }
374
376
  return res;
@@ -376,7 +378,7 @@ export class QueueClient extends StorageClient {
376
378
  catch (e) {
377
379
  span.setStatus({
378
380
  code: SpanStatusCode.ERROR,
379
- message: e.message
381
+ message: e.message,
380
382
  });
381
383
  throw e;
382
384
  }
@@ -405,21 +407,21 @@ export class QueueClient extends StorageClient {
405
407
  permissions: identifier.accessPolicy.permissions,
406
408
  startsOn: identifier.accessPolicy.startsOn
407
409
  ? truncatedISO8061Date(identifier.accessPolicy.startsOn)
408
- : undefined
410
+ : undefined,
409
411
  },
410
- id: identifier.id
412
+ id: identifier.id,
411
413
  });
412
414
  }
413
415
  return await this.queueContext.setAccessPolicy({
414
416
  abortSignal: options.abortSignal,
415
417
  queueAcl: acl,
416
- tracingOptions: updatedOptions.tracingOptions
418
+ tracingOptions: updatedOptions.tracingOptions,
417
419
  });
418
420
  }
419
421
  catch (e) {
420
422
  span.setStatus({
421
423
  code: SpanStatusCode.ERROR,
422
- message: e.message
424
+ message: e.message,
423
425
  });
424
426
  throw e;
425
427
  }
@@ -439,13 +441,13 @@ export class QueueClient extends StorageClient {
439
441
  try {
440
442
  return await this.messagesContext.clear({
441
443
  abortSignal: options.abortSignal,
442
- tracingOptions: updatedOptions.tracingOptions
444
+ tracingOptions: updatedOptions.tracingOptions,
443
445
  });
444
446
  }
445
447
  catch (e) {
446
448
  span.setStatus({
447
449
  code: SpanStatusCode.ERROR,
448
- message: e.message
450
+ message: e.message,
449
451
  });
450
452
  throw e;
451
453
  }
@@ -478,7 +480,7 @@ export class QueueClient extends StorageClient {
478
480
  const { span, updatedOptions } = createSpan("QueueClient-sendMessage", options);
479
481
  try {
480
482
  const response = await this.messagesContext.enqueue({
481
- messageText: messageText
483
+ messageText: messageText,
482
484
  }, updatedOptions);
483
485
  const item = response[0];
484
486
  return {
@@ -492,13 +494,13 @@ export class QueueClient extends StorageClient {
492
494
  popReceipt: item.popReceipt,
493
495
  nextVisibleOn: item.nextVisibleOn,
494
496
  insertedOn: item.insertedOn,
495
- expiresOn: item.expiresOn
497
+ expiresOn: item.expiresOn,
496
498
  };
497
499
  }
498
500
  catch (e) {
499
501
  span.setStatus({
500
502
  code: SpanStatusCode.ERROR,
501
- message: e.message
503
+ message: e.message,
502
504
  });
503
505
  throw e;
504
506
  }
@@ -542,7 +544,7 @@ export class QueueClient extends StorageClient {
542
544
  clientRequestId: response.clientRequestId,
543
545
  receivedMessageItems: [],
544
546
  version: response.version,
545
- errorCode: response.errorCode
547
+ errorCode: response.errorCode,
546
548
  };
547
549
  for (const item of response) {
548
550
  res.receivedMessageItems.push(item);
@@ -552,7 +554,7 @@ export class QueueClient extends StorageClient {
552
554
  catch (e) {
553
555
  span.setStatus({
554
556
  code: SpanStatusCode.ERROR,
555
- message: e.message
557
+ message: e.message,
556
558
  });
557
559
  throw e;
558
560
  }
@@ -585,7 +587,7 @@ export class QueueClient extends StorageClient {
585
587
  clientRequestId: response.clientRequestId,
586
588
  peekedMessageItems: [],
587
589
  version: response.version,
588
- errorCode: response.errorCode
590
+ errorCode: response.errorCode,
589
591
  };
590
592
  for (const item of response) {
591
593
  res.peekedMessageItems.push(item);
@@ -595,7 +597,7 @@ export class QueueClient extends StorageClient {
595
597
  catch (e) {
596
598
  span.setStatus({
597
599
  code: SpanStatusCode.ERROR,
598
- message: e.message
600
+ message: e.message,
599
601
  });
600
602
  throw e;
601
603
  }
@@ -617,13 +619,13 @@ export class QueueClient extends StorageClient {
617
619
  try {
618
620
  return await this.getMessageIdContext(messageId).delete(popReceipt, {
619
621
  abortSignal: options.abortSignal,
620
- tracingOptions: updatedOptions.tracingOptions
622
+ tracingOptions: updatedOptions.tracingOptions,
621
623
  });
622
624
  }
623
625
  catch (e) {
624
626
  span.setStatus({
625
627
  code: SpanStatusCode.ERROR,
626
- message: e.message
628
+ message: e.message,
627
629
  });
628
630
  throw e;
629
631
  }
@@ -658,13 +660,13 @@ export class QueueClient extends StorageClient {
658
660
  return await this.getMessageIdContext(messageId).update(popReceipt, visibilityTimeout || 0, {
659
661
  abortSignal: options.abortSignal,
660
662
  tracingOptions: updatedOptions.tracingOptions,
661
- queueMessage
663
+ queueMessage,
662
664
  });
663
665
  }
664
666
  catch (e) {
665
667
  span.setStatus({
666
668
  code: SpanStatusCode.ERROR,
667
- message: e.message
669
+ message: e.message,
668
670
  });
669
671
  throw e;
670
672
  }