@azure/arm-keyvault 2.1.0-beta.1 → 3.0.0-alpha.20230424.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (244) hide show
  1. package/CHANGELOG.md +73 -3
  2. package/LICENSE +1 -1
  3. package/README.md +2 -2
  4. package/dist/index.js +3461 -1761
  5. package/dist/index.js.map +1 -1
  6. package/dist/index.min.js +1 -1
  7. package/dist/index.min.js.map +1 -1
  8. package/dist-esm/samples-dev/keysCreateIfNotExistSample.js +12 -4
  9. package/dist-esm/samples-dev/keysCreateIfNotExistSample.js.map +1 -1
  10. package/dist-esm/samples-dev/keysGetSample.js +12 -4
  11. package/dist-esm/samples-dev/keysGetSample.js.map +1 -1
  12. package/dist-esm/samples-dev/keysGetVersionSample.js +12 -4
  13. package/dist-esm/samples-dev/keysGetVersionSample.js.map +1 -1
  14. package/dist-esm/samples-dev/keysListSample.js +24 -9
  15. package/dist-esm/samples-dev/keysListSample.js.map +1 -1
  16. package/dist-esm/samples-dev/keysListVersionsSample.js +24 -9
  17. package/dist-esm/samples-dev/keysListVersionsSample.js.map +1 -1
  18. package/dist-esm/samples-dev/managedHsmKeysCreateIfNotExistSample.d.ts +2 -0
  19. package/dist-esm/samples-dev/managedHsmKeysCreateIfNotExistSample.d.ts.map +1 -0
  20. package/dist-esm/samples-dev/managedHsmKeysCreateIfNotExistSample.js +43 -0
  21. package/dist-esm/samples-dev/managedHsmKeysCreateIfNotExistSample.js.map +1 -0
  22. package/dist-esm/samples-dev/managedHsmKeysGetSample.d.ts +2 -0
  23. package/dist-esm/samples-dev/managedHsmKeysGetSample.d.ts.map +1 -0
  24. package/dist-esm/samples-dev/managedHsmKeysGetSample.js +40 -0
  25. package/dist-esm/samples-dev/managedHsmKeysGetSample.js.map +1 -0
  26. package/dist-esm/samples-dev/managedHsmKeysGetVersionSample.d.ts +2 -0
  27. package/dist-esm/samples-dev/managedHsmKeysGetVersionSample.d.ts.map +1 -0
  28. package/dist-esm/samples-dev/managedHsmKeysGetVersionSample.js +41 -0
  29. package/dist-esm/samples-dev/managedHsmKeysGetVersionSample.js.map +1 -0
  30. package/dist-esm/samples-dev/managedHsmKeysListSample.d.ts +2 -0
  31. package/dist-esm/samples-dev/managedHsmKeysListSample.d.ts.map +1 -0
  32. package/dist-esm/samples-dev/managedHsmKeysListSample.js +60 -0
  33. package/dist-esm/samples-dev/managedHsmKeysListSample.js.map +1 -0
  34. package/dist-esm/samples-dev/managedHsmKeysListVersionsSample.d.ts +2 -0
  35. package/dist-esm/samples-dev/managedHsmKeysListVersionsSample.d.ts.map +1 -0
  36. package/dist-esm/samples-dev/managedHsmKeysListVersionsSample.js +61 -0
  37. package/dist-esm/samples-dev/managedHsmKeysListVersionsSample.js.map +1 -0
  38. package/dist-esm/samples-dev/managedHsmsCheckMhsmNameAvailabilitySample.d.ts +2 -0
  39. package/dist-esm/samples-dev/managedHsmsCheckMhsmNameAvailabilitySample.d.ts.map +1 -0
  40. package/dist-esm/samples-dev/managedHsmsCheckMhsmNameAvailabilitySample.js +38 -0
  41. package/dist-esm/samples-dev/managedHsmsCheckMhsmNameAvailabilitySample.js.map +1 -0
  42. package/dist-esm/samples-dev/managedHsmsCreateOrUpdateSample.js +13 -5
  43. package/dist-esm/samples-dev/managedHsmsCreateOrUpdateSample.js.map +1 -1
  44. package/dist-esm/samples-dev/managedHsmsDeleteSample.js +12 -4
  45. package/dist-esm/samples-dev/managedHsmsDeleteSample.js.map +1 -1
  46. package/dist-esm/samples-dev/managedHsmsGetDeletedSample.js +11 -3
  47. package/dist-esm/samples-dev/managedHsmsGetDeletedSample.js.map +1 -1
  48. package/dist-esm/samples-dev/managedHsmsGetSample.js +12 -4
  49. package/dist-esm/samples-dev/managedHsmsGetSample.js.map +1 -1
  50. package/dist-esm/samples-dev/managedHsmsListByResourceGroupSample.js +24 -9
  51. package/dist-esm/samples-dev/managedHsmsListByResourceGroupSample.js.map +1 -1
  52. package/dist-esm/samples-dev/managedHsmsListBySubscriptionSample.js +23 -8
  53. package/dist-esm/samples-dev/managedHsmsListBySubscriptionSample.js.map +1 -1
  54. package/dist-esm/samples-dev/managedHsmsListDeletedSample.js +23 -8
  55. package/dist-esm/samples-dev/managedHsmsListDeletedSample.js.map +1 -1
  56. package/dist-esm/samples-dev/managedHsmsPurgeDeletedSample.js +11 -3
  57. package/dist-esm/samples-dev/managedHsmsPurgeDeletedSample.js.map +1 -1
  58. package/dist-esm/samples-dev/managedHsmsUpdateSample.js +12 -4
  59. package/dist-esm/samples-dev/managedHsmsUpdateSample.js.map +1 -1
  60. package/dist-esm/samples-dev/mhsmPrivateEndpointConnectionsDeleteSample.js +12 -4
  61. package/dist-esm/samples-dev/mhsmPrivateEndpointConnectionsDeleteSample.js.map +1 -1
  62. package/dist-esm/samples-dev/mhsmPrivateEndpointConnectionsGetSample.js +12 -4
  63. package/dist-esm/samples-dev/mhsmPrivateEndpointConnectionsGetSample.js.map +1 -1
  64. package/dist-esm/samples-dev/mhsmPrivateEndpointConnectionsListByResourceSample.js +24 -9
  65. package/dist-esm/samples-dev/mhsmPrivateEndpointConnectionsListByResourceSample.js.map +1 -1
  66. package/dist-esm/samples-dev/mhsmPrivateEndpointConnectionsPutSample.js +12 -4
  67. package/dist-esm/samples-dev/mhsmPrivateEndpointConnectionsPutSample.js.map +1 -1
  68. package/dist-esm/samples-dev/mhsmPrivateLinkResourcesListByMhsmResourceSample.js +12 -4
  69. package/dist-esm/samples-dev/mhsmPrivateLinkResourcesListByMhsmResourceSample.js.map +1 -1
  70. package/dist-esm/samples-dev/mhsmRegionsListByResourceSample.d.ts +2 -0
  71. package/dist-esm/samples-dev/mhsmRegionsListByResourceSample.d.ts.map +1 -0
  72. package/dist-esm/samples-dev/mhsmRegionsListByResourceSample.js +60 -0
  73. package/dist-esm/samples-dev/mhsmRegionsListByResourceSample.js.map +1 -0
  74. package/dist-esm/samples-dev/operationsListSample.js +23 -8
  75. package/dist-esm/samples-dev/operationsListSample.js.map +1 -1
  76. package/dist-esm/samples-dev/privateEndpointConnectionsDeleteSample.js +12 -4
  77. package/dist-esm/samples-dev/privateEndpointConnectionsDeleteSample.js.map +1 -1
  78. package/dist-esm/samples-dev/privateEndpointConnectionsGetSample.js +12 -4
  79. package/dist-esm/samples-dev/privateEndpointConnectionsGetSample.js.map +1 -1
  80. package/dist-esm/samples-dev/privateEndpointConnectionsListByResourceSample.js +24 -9
  81. package/dist-esm/samples-dev/privateEndpointConnectionsListByResourceSample.js.map +1 -1
  82. package/dist-esm/samples-dev/privateEndpointConnectionsPutSample.js +12 -4
  83. package/dist-esm/samples-dev/privateEndpointConnectionsPutSample.js.map +1 -1
  84. package/dist-esm/samples-dev/privateLinkResourcesListByVaultSample.js +12 -4
  85. package/dist-esm/samples-dev/privateLinkResourcesListByVaultSample.js.map +1 -1
  86. package/dist-esm/samples-dev/secretsCreateOrUpdateSample.js +12 -4
  87. package/dist-esm/samples-dev/secretsCreateOrUpdateSample.js.map +1 -1
  88. package/dist-esm/samples-dev/secretsGetSample.js +12 -4
  89. package/dist-esm/samples-dev/secretsGetSample.js.map +1 -1
  90. package/dist-esm/samples-dev/secretsListSample.js +24 -9
  91. package/dist-esm/samples-dev/secretsListSample.js.map +1 -1
  92. package/dist-esm/samples-dev/secretsUpdateSample.js +12 -4
  93. package/dist-esm/samples-dev/secretsUpdateSample.js.map +1 -1
  94. package/dist-esm/samples-dev/vaultsCheckNameAvailabilitySample.js +11 -3
  95. package/dist-esm/samples-dev/vaultsCheckNameAvailabilitySample.js.map +1 -1
  96. package/dist-esm/samples-dev/vaultsCreateOrUpdateSample.js +17 -8
  97. package/dist-esm/samples-dev/vaultsCreateOrUpdateSample.js.map +1 -1
  98. package/dist-esm/samples-dev/vaultsDeleteSample.js +12 -4
  99. package/dist-esm/samples-dev/vaultsDeleteSample.js.map +1 -1
  100. package/dist-esm/samples-dev/vaultsGetDeletedSample.js +11 -3
  101. package/dist-esm/samples-dev/vaultsGetDeletedSample.js.map +1 -1
  102. package/dist-esm/samples-dev/vaultsGetSample.js +12 -4
  103. package/dist-esm/samples-dev/vaultsGetSample.js.map +1 -1
  104. package/dist-esm/samples-dev/vaultsListByResourceGroupSample.js +24 -9
  105. package/dist-esm/samples-dev/vaultsListByResourceGroupSample.js.map +1 -1
  106. package/dist-esm/samples-dev/vaultsListBySubscriptionSample.js +23 -8
  107. package/dist-esm/samples-dev/vaultsListBySubscriptionSample.js.map +1 -1
  108. package/dist-esm/samples-dev/vaultsListDeletedSample.js +23 -8
  109. package/dist-esm/samples-dev/vaultsListDeletedSample.js.map +1 -1
  110. package/dist-esm/samples-dev/vaultsListSample.js +23 -8
  111. package/dist-esm/samples-dev/vaultsListSample.js.map +1 -1
  112. package/dist-esm/samples-dev/vaultsPurgeDeletedSample.js +11 -3
  113. package/dist-esm/samples-dev/vaultsPurgeDeletedSample.js.map +1 -1
  114. package/dist-esm/samples-dev/vaultsUpdateAccessPolicySample.js +12 -4
  115. package/dist-esm/samples-dev/vaultsUpdateAccessPolicySample.js.map +1 -1
  116. package/dist-esm/samples-dev/vaultsUpdateSample.js +12 -4
  117. package/dist-esm/samples-dev/vaultsUpdateSample.js.map +1 -1
  118. package/dist-esm/src/index.d.ts +1 -0
  119. package/dist-esm/src/index.d.ts.map +1 -1
  120. package/dist-esm/src/index.js +1 -0
  121. package/dist-esm/src/index.js.map +1 -1
  122. package/dist-esm/src/keyVaultManagementClient.d.ts +5 -1
  123. package/dist-esm/src/keyVaultManagementClient.d.ts.map +1 -1
  124. package/dist-esm/src/keyVaultManagementClient.js +53 -20
  125. package/dist-esm/src/keyVaultManagementClient.js.map +1 -1
  126. package/dist-esm/src/lroImpl.d.ts +6 -11
  127. package/dist-esm/src/lroImpl.d.ts.map +1 -1
  128. package/dist-esm/src/lroImpl.js +12 -20
  129. package/dist-esm/src/lroImpl.js.map +1 -1
  130. package/dist-esm/src/models/index.d.ts +547 -107
  131. package/dist-esm/src/models/index.d.ts.map +1 -1
  132. package/dist-esm/src/models/index.js +135 -0
  133. package/dist-esm/src/models/index.js.map +1 -1
  134. package/dist-esm/src/models/mappers.d.ts +21 -0
  135. package/dist-esm/src/models/mappers.d.ts.map +1 -1
  136. package/dist-esm/src/models/mappers.js +617 -11
  137. package/dist-esm/src/models/mappers.js.map +1 -1
  138. package/dist-esm/src/models/parameters.d.ts +9 -5
  139. package/dist-esm/src/models/parameters.d.ts.map +1 -1
  140. package/dist-esm/src/models/parameters.js +45 -8
  141. package/dist-esm/src/models/parameters.js.map +1 -1
  142. package/dist-esm/src/operations/index.d.ts +2 -0
  143. package/dist-esm/src/operations/index.d.ts.map +1 -1
  144. package/dist-esm/src/operations/index.js +2 -0
  145. package/dist-esm/src/operations/index.js.map +1 -1
  146. package/dist-esm/src/operations/keys.d.ts +3 -1
  147. package/dist-esm/src/operations/keys.d.ts.map +1 -1
  148. package/dist-esm/src/operations/keys.js +64 -27
  149. package/dist-esm/src/operations/keys.js.map +1 -1
  150. package/dist-esm/src/operations/managedHsmKeys.d.ts +105 -0
  151. package/dist-esm/src/operations/managedHsmKeys.d.ts.map +1 -0
  152. package/dist-esm/src/operations/managedHsmKeys.js +404 -0
  153. package/dist-esm/src/operations/managedHsmKeys.js.map +1 -0
  154. package/dist-esm/src/operations/managedHsms.d.ts +13 -7
  155. package/dist-esm/src/operations/managedHsms.d.ts.map +1 -1
  156. package/dist-esm/src/operations/managedHsms.js +171 -70
  157. package/dist-esm/src/operations/managedHsms.js.map +1 -1
  158. package/dist-esm/src/operations/mhsmPrivateEndpointConnections.d.ts +2 -2
  159. package/dist-esm/src/operations/mhsmPrivateEndpointConnections.d.ts.map +1 -1
  160. package/dist-esm/src/operations/mhsmPrivateEndpointConnections.js +46 -24
  161. package/dist-esm/src/operations/mhsmPrivateEndpointConnections.js.map +1 -1
  162. package/dist-esm/src/operations/mhsmPrivateLinkResources.js +1 -1
  163. package/dist-esm/src/operations/mhsmPrivateLinkResources.js.map +1 -1
  164. package/dist-esm/src/operations/mhsmRegions.d.ts +38 -0
  165. package/dist-esm/src/operations/mhsmRegions.d.ts.map +1 -0
  166. package/dist-esm/src/operations/mhsmRegions.js +155 -0
  167. package/dist-esm/src/operations/mhsmRegions.js.map +1 -0
  168. package/dist-esm/src/operations/operations.d.ts.map +1 -1
  169. package/dist-esm/src/operations/operations.js +31 -13
  170. package/dist-esm/src/operations/operations.js.map +1 -1
  171. package/dist-esm/src/operations/privateEndpointConnections.d.ts +2 -2
  172. package/dist-esm/src/operations/privateEndpointConnections.d.ts.map +1 -1
  173. package/dist-esm/src/operations/privateEndpointConnections.js +46 -19
  174. package/dist-esm/src/operations/privateEndpointConnections.js.map +1 -1
  175. package/dist-esm/src/operations/secrets.d.ts +3 -1
  176. package/dist-esm/src/operations/secrets.d.ts.map +1 -1
  177. package/dist-esm/src/operations/secrets.js +36 -16
  178. package/dist-esm/src/operations/secrets.js.map +1 -1
  179. package/dist-esm/src/operations/vaults.d.ts +3 -3
  180. package/dist-esm/src/operations/vaults.d.ts.map +1 -1
  181. package/dist-esm/src/operations/vaults.js +142 -65
  182. package/dist-esm/src/operations/vaults.js.map +1 -1
  183. package/dist-esm/src/operationsInterfaces/index.d.ts +2 -0
  184. package/dist-esm/src/operationsInterfaces/index.d.ts.map +1 -1
  185. package/dist-esm/src/operationsInterfaces/index.js +2 -0
  186. package/dist-esm/src/operationsInterfaces/index.js.map +1 -1
  187. package/dist-esm/src/operationsInterfaces/keys.d.ts +3 -1
  188. package/dist-esm/src/operationsInterfaces/keys.d.ts.map +1 -1
  189. package/dist-esm/src/operationsInterfaces/managedHsmKeys.d.ts +57 -0
  190. package/dist-esm/src/operationsInterfaces/managedHsmKeys.d.ts.map +1 -0
  191. package/dist-esm/src/operationsInterfaces/managedHsmKeys.js +9 -0
  192. package/dist-esm/src/operationsInterfaces/managedHsmKeys.js.map +1 -0
  193. package/dist-esm/src/operationsInterfaces/managedHsms.d.ts +13 -7
  194. package/dist-esm/src/operationsInterfaces/managedHsms.d.ts.map +1 -1
  195. package/dist-esm/src/operationsInterfaces/mhsmPrivateEndpointConnections.d.ts +2 -2
  196. package/dist-esm/src/operationsInterfaces/mhsmPrivateEndpointConnections.d.ts.map +1 -1
  197. package/dist-esm/src/operationsInterfaces/mhsmRegions.d.ts +13 -0
  198. package/dist-esm/src/operationsInterfaces/mhsmRegions.d.ts.map +1 -0
  199. package/dist-esm/src/operationsInterfaces/mhsmRegions.js +9 -0
  200. package/dist-esm/src/operationsInterfaces/mhsmRegions.js.map +1 -0
  201. package/dist-esm/src/operationsInterfaces/privateEndpointConnections.d.ts +2 -2
  202. package/dist-esm/src/operationsInterfaces/privateEndpointConnections.d.ts.map +1 -1
  203. package/dist-esm/src/operationsInterfaces/secrets.d.ts +3 -1
  204. package/dist-esm/src/operationsInterfaces/secrets.d.ts.map +1 -1
  205. package/dist-esm/src/operationsInterfaces/vaults.d.ts +3 -3
  206. package/dist-esm/src/operationsInterfaces/vaults.d.ts.map +1 -1
  207. package/dist-esm/src/pagingHelper.d.ts +13 -0
  208. package/dist-esm/src/pagingHelper.d.ts.map +1 -0
  209. package/dist-esm/src/pagingHelper.js +32 -0
  210. package/dist-esm/src/pagingHelper.js.map +1 -0
  211. package/dist-esm/test/keyvault_examples.d.ts.map +1 -1
  212. package/dist-esm/test/keyvault_examples.js +42 -30
  213. package/dist-esm/test/keyvault_examples.js.map +1 -1
  214. package/package.json +21 -16
  215. package/review/arm-keyvault.api.md +304 -141
  216. package/src/index.ts +1 -0
  217. package/src/keyVaultManagementClient.ts +69 -21
  218. package/src/lroImpl.ts +31 -23
  219. package/src/models/index.ts +519 -44
  220. package/src/models/mappers.ts +644 -6
  221. package/src/models/parameters.ts +50 -7
  222. package/src/operations/index.ts +2 -0
  223. package/src/operations/keys.ts +56 -25
  224. package/src/operations/managedHsmKeys.ts +525 -0
  225. package/src/operations/managedHsms.ts +184 -83
  226. package/src/operations/mhsmPrivateEndpointConnections.ts +50 -26
  227. package/src/operations/mhsmPrivateLinkResources.ts +1 -1
  228. package/src/operations/mhsmRegions.ts +194 -0
  229. package/src/operations/operations.ts +21 -9
  230. package/src/operations/privateEndpointConnections.ts +51 -26
  231. package/src/operations/secrets.ts +32 -13
  232. package/src/operations/vaults.ts +117 -61
  233. package/src/operationsInterfaces/index.ts +2 -0
  234. package/src/operationsInterfaces/keys.ts +3 -1
  235. package/src/operationsInterfaces/managedHsmKeys.ts +103 -0
  236. package/src/operationsInterfaces/managedHsms.ts +27 -9
  237. package/src/operationsInterfaces/mhsmPrivateEndpointConnections.ts +3 -3
  238. package/src/operationsInterfaces/mhsmRegions.ts +29 -0
  239. package/src/operationsInterfaces/privateEndpointConnections.ts +3 -3
  240. package/src/operationsInterfaces/secrets.ts +3 -1
  241. package/src/operationsInterfaces/vaults.ts +4 -4
  242. package/src/pagingHelper.ts +39 -0
  243. package/types/arm-keyvault.d.ts +620 -45
  244. package/types/tsdoc-metadata.json +1 -1
package/src/index.ts CHANGED
@@ -7,6 +7,7 @@
7
7
  */
8
8
 
9
9
  /// <reference lib="esnext.asynciterable" />
10
+ export { getContinuationToken } from "./pagingHelper";
10
11
  export * from "./models";
11
12
  export { KeyVaultManagementClient } from "./keyVaultManagementClient";
12
13
  export * from "./operationsInterfaces";
@@ -8,26 +8,35 @@
8
8
 
9
9
  import * as coreClient from "@azure/core-client";
10
10
  import * as coreRestPipeline from "@azure/core-rest-pipeline";
11
+ import {
12
+ PipelineRequest,
13
+ PipelineResponse,
14
+ SendRequest
15
+ } from "@azure/core-rest-pipeline";
11
16
  import * as coreAuth from "@azure/core-auth";
12
17
  import {
13
18
  KeysImpl,
19
+ ManagedHsmKeysImpl,
14
20
  VaultsImpl,
15
21
  PrivateEndpointConnectionsImpl,
16
22
  PrivateLinkResourcesImpl,
17
23
  ManagedHsmsImpl,
18
24
  MhsmPrivateEndpointConnectionsImpl,
19
25
  MhsmPrivateLinkResourcesImpl,
26
+ MhsmRegionsImpl,
20
27
  OperationsImpl,
21
28
  SecretsImpl
22
29
  } from "./operations";
23
30
  import {
24
31
  Keys,
32
+ ManagedHsmKeys,
25
33
  Vaults,
26
34
  PrivateEndpointConnections,
27
35
  PrivateLinkResources,
28
36
  ManagedHsms,
29
37
  MhsmPrivateEndpointConnections,
30
38
  MhsmPrivateLinkResources,
39
+ MhsmRegions,
31
40
  Operations,
32
41
  Secrets
33
42
  } from "./operationsInterfaces";
@@ -66,55 +75,62 @@ export class KeyVaultManagementClient extends coreClient.ServiceClient {
66
75
  credential: credentials
67
76
  };
68
77
 
69
- const packageDetails = `azsdk-js-arm-keyvault/2.1.0-beta.1`;
78
+ const packageDetails = `azsdk-js-arm-keyvault/3.0.0`;
70
79
  const userAgentPrefix =
71
80
  options.userAgentOptions && options.userAgentOptions.userAgentPrefix
72
81
  ? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}`
73
82
  : `${packageDetails}`;
74
83
 
75
- if (!options.credentialScopes) {
76
- options.credentialScopes = ["https://management.azure.com/.default"];
77
- }
78
84
  const optionsWithDefaults = {
79
85
  ...defaults,
80
86
  ...options,
81
87
  userAgentOptions: {
82
88
  userAgentPrefix
83
89
  },
84
- baseUri:
90
+ endpoint:
85
91
  options.endpoint ?? options.baseUri ?? "https://management.azure.com"
86
92
  };
87
93
  super(optionsWithDefaults);
88
94
 
95
+ let bearerTokenAuthenticationPolicyFound: boolean = false;
89
96
  if (options?.pipeline && options.pipeline.getOrderedPolicies().length > 0) {
90
97
  const pipelinePolicies: coreRestPipeline.PipelinePolicy[] = options.pipeline.getOrderedPolicies();
91
- const bearerTokenAuthenticationPolicyFound = pipelinePolicies.some(
98
+ bearerTokenAuthenticationPolicyFound = pipelinePolicies.some(
92
99
  (pipelinePolicy) =>
93
100
  pipelinePolicy.name ===
94
101
  coreRestPipeline.bearerTokenAuthenticationPolicyName
95
102
  );
96
- if (!bearerTokenAuthenticationPolicyFound) {
97
- this.pipeline.removePolicy({
98
- name: coreRestPipeline.bearerTokenAuthenticationPolicyName
99
- });
100
- this.pipeline.addPolicy(
101
- coreRestPipeline.bearerTokenAuthenticationPolicy({
102
- scopes: `${optionsWithDefaults.baseUri}/.default`,
103
- challengeCallbacks: {
104
- authorizeRequestOnChallenge:
105
- coreClient.authorizeRequestOnClaimChallenge
106
- }
107
- })
108
- );
109
- }
103
+ }
104
+ if (
105
+ !options ||
106
+ !options.pipeline ||
107
+ options.pipeline.getOrderedPolicies().length == 0 ||
108
+ !bearerTokenAuthenticationPolicyFound
109
+ ) {
110
+ this.pipeline.removePolicy({
111
+ name: coreRestPipeline.bearerTokenAuthenticationPolicyName
112
+ });
113
+ this.pipeline.addPolicy(
114
+ coreRestPipeline.bearerTokenAuthenticationPolicy({
115
+ credential: credentials,
116
+ scopes:
117
+ optionsWithDefaults.credentialScopes ??
118
+ `${optionsWithDefaults.endpoint}/.default`,
119
+ challengeCallbacks: {
120
+ authorizeRequestOnChallenge:
121
+ coreClient.authorizeRequestOnClaimChallenge
122
+ }
123
+ })
124
+ );
110
125
  }
111
126
  // Parameter assignments
112
127
  this.subscriptionId = subscriptionId;
113
128
 
114
129
  // Assigning values to Constant parameters
115
130
  this.$host = options.$host || "https://management.azure.com";
116
- this.apiVersion = options.apiVersion || "2021-11-01-preview";
131
+ this.apiVersion = options.apiVersion || "2023-02-01";
117
132
  this.keys = new KeysImpl(this);
133
+ this.managedHsmKeys = new ManagedHsmKeysImpl(this);
118
134
  this.vaults = new VaultsImpl(this);
119
135
  this.privateEndpointConnections = new PrivateEndpointConnectionsImpl(this);
120
136
  this.privateLinkResources = new PrivateLinkResourcesImpl(this);
@@ -123,17 +139,49 @@ export class KeyVaultManagementClient extends coreClient.ServiceClient {
123
139
  this
124
140
  );
125
141
  this.mhsmPrivateLinkResources = new MhsmPrivateLinkResourcesImpl(this);
142
+ this.mhsmRegions = new MhsmRegionsImpl(this);
126
143
  this.operations = new OperationsImpl(this);
127
144
  this.secrets = new SecretsImpl(this);
145
+ this.addCustomApiVersionPolicy(options.apiVersion);
146
+ }
147
+
148
+ /** A function that adds a policy that sets the api-version (or equivalent) to reflect the library version. */
149
+ private addCustomApiVersionPolicy(apiVersion?: string) {
150
+ if (!apiVersion) {
151
+ return;
152
+ }
153
+ const apiVersionPolicy = {
154
+ name: "CustomApiVersionPolicy",
155
+ async sendRequest(
156
+ request: PipelineRequest,
157
+ next: SendRequest
158
+ ): Promise<PipelineResponse> {
159
+ const param = request.url.split("?");
160
+ if (param.length > 1) {
161
+ const newParams = param[1].split("&").map((item) => {
162
+ if (item.indexOf("api-version") > -1) {
163
+ return "api-version=" + apiVersion;
164
+ } else {
165
+ return item;
166
+ }
167
+ });
168
+ request.url = param[0] + "?" + newParams.join("&");
169
+ }
170
+ return next(request);
171
+ }
172
+ };
173
+ this.pipeline.addPolicy(apiVersionPolicy);
128
174
  }
129
175
 
130
176
  keys: Keys;
177
+ managedHsmKeys: ManagedHsmKeys;
131
178
  vaults: Vaults;
132
179
  privateEndpointConnections: PrivateEndpointConnections;
133
180
  privateLinkResources: PrivateLinkResources;
134
181
  managedHsms: ManagedHsms;
135
182
  mhsmPrivateEndpointConnections: MhsmPrivateEndpointConnections;
136
183
  mhsmPrivateLinkResources: MhsmPrivateLinkResources;
184
+ mhsmRegions: MhsmRegions;
137
185
  operations: Operations;
138
186
  secrets: Secrets;
139
187
  }
package/src/lroImpl.ts CHANGED
@@ -6,29 +6,37 @@
6
6
  * Changes may cause incorrect behavior and will be lost if the code is regenerated.
7
7
  */
8
8
 
9
+ // Copyright (c) Microsoft Corporation.
10
+ // Licensed under the MIT license.
11
+
12
+ import { AbortSignalLike } from "@azure/abort-controller";
9
13
  import { LongRunningOperation, LroResponse } from "@azure/core-lro";
10
14
 
11
- export class LroImpl<T> implements LongRunningOperation<T> {
12
- constructor(
13
- private sendOperationFn: (args: any, spec: any) => Promise<LroResponse<T>>,
14
- private args: Record<string, unknown>,
15
- private spec: {
16
- readonly requestBody?: unknown;
17
- readonly path?: string;
18
- readonly httpMethod: string;
19
- } & Record<string, any>,
20
- public requestPath: string = spec.path!,
21
- public requestMethod: string = spec.httpMethod
22
- ) {}
23
- public async sendInitialRequest(): Promise<LroResponse<T>> {
24
- return this.sendOperationFn(this.args, this.spec);
25
- }
26
- public async sendPollRequest(path: string): Promise<LroResponse<T>> {
27
- const { requestBody, ...restSpec } = this.spec;
28
- return this.sendOperationFn(this.args, {
29
- ...restSpec,
30
- path,
31
- httpMethod: "GET"
32
- });
33
- }
15
+ export function createLroSpec<T>(inputs: {
16
+ sendOperationFn: (args: any, spec: any) => Promise<LroResponse<T>>;
17
+ args: Record<string, unknown>;
18
+ spec: {
19
+ readonly requestBody?: unknown;
20
+ readonly path?: string;
21
+ readonly httpMethod: string;
22
+ } & Record<string, any>;
23
+ }): LongRunningOperation<T> {
24
+ const { args, spec, sendOperationFn } = inputs;
25
+ return {
26
+ requestMethod: spec.httpMethod,
27
+ requestPath: spec.path!,
28
+ sendInitialRequest: () => sendOperationFn(args, spec),
29
+ sendPollRequest: (
30
+ path: string,
31
+ options?: { abortSignal?: AbortSignalLike }
32
+ ) => {
33
+ const { requestBody, ...restSpec } = spec;
34
+ return sendOperationFn(args, {
35
+ ...restSpec,
36
+ httpMethod: "GET",
37
+ path,
38
+ abortSignal: options?.abortSignal
39
+ });
40
+ }
41
+ };
34
42
  }