@azure/communication-phone-numbers 1.5.0-beta.2 → 1.5.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 (235) hide show
  1. package/README.md +1 -20
  2. package/dist/browser/generated/src/lroImpl.js +7 -3
  3. package/dist/browser/generated/src/lroImpl.js.map +1 -1
  4. package/dist/browser/generated/src/operations/phoneNumbers.js +219 -296
  5. package/dist/browser/generated/src/operations/phoneNumbers.js.map +1 -1
  6. package/dist/browser/generated/src/pagingHelper.js +2 -4
  7. package/dist/browser/generated/src/pagingHelper.js.map +1 -1
  8. package/dist/browser/generated/src/phoneNumbersClient.js +11 -4
  9. package/dist/browser/generated/src/phoneNumbersClient.js.map +1 -1
  10. package/dist/browser/generated/src/siprouting/index.d.ts +1 -0
  11. package/dist/browser/generated/src/siprouting/index.d.ts.map +1 -1
  12. package/dist/browser/generated/src/siprouting/index.js +1 -0
  13. package/dist/browser/generated/src/siprouting/index.js.map +1 -1
  14. package/dist/browser/generated/src/siprouting/models/index.d.ts +2 -141
  15. package/dist/browser/generated/src/siprouting/models/index.d.ts.map +1 -1
  16. package/dist/browser/generated/src/siprouting/models/index.js +1 -6
  17. package/dist/browser/generated/src/siprouting/models/index.js.map +1 -1
  18. package/dist/browser/generated/src/siprouting/models/mappers.d.ts +0 -7
  19. package/dist/browser/generated/src/siprouting/models/mappers.d.ts.map +1 -1
  20. package/dist/browser/generated/src/siprouting/models/mappers.js +77 -284
  21. package/dist/browser/generated/src/siprouting/models/mappers.js.map +1 -1
  22. package/dist/browser/generated/src/siprouting/models/parameters.d.ts +0 -7
  23. package/dist/browser/generated/src/siprouting/models/parameters.d.ts.map +1 -1
  24. package/dist/browser/generated/src/siprouting/models/parameters.js +16 -62
  25. package/dist/browser/generated/src/siprouting/models/parameters.js.map +1 -1
  26. package/dist/browser/generated/src/siprouting/operations/sipRouting.d.ts +3 -9
  27. package/dist/browser/generated/src/siprouting/operations/sipRouting.d.ts.map +1 -1
  28. package/dist/browser/generated/src/siprouting/operations/sipRouting.js +12 -45
  29. package/dist/browser/generated/src/siprouting/operations/sipRouting.js.map +1 -1
  30. package/dist/browser/generated/src/siprouting/operationsInterfaces/sipRouting.d.ts +1 -7
  31. package/dist/browser/generated/src/siprouting/operationsInterfaces/sipRouting.d.ts.map +1 -1
  32. package/dist/browser/generated/src/siprouting/operationsInterfaces/sipRouting.js.map +1 -1
  33. package/dist/browser/generated/src/siprouting/sipRoutingClient.d.ts +2 -6
  34. package/dist/browser/generated/src/siprouting/sipRoutingClient.d.ts.map +1 -1
  35. package/dist/browser/generated/src/siprouting/sipRoutingClient.js +4 -51
  36. package/dist/browser/generated/src/siprouting/sipRoutingClient.js.map +1 -1
  37. package/dist/browser/generated/src/siprouting/sipRoutingClientContext.js +10 -3
  38. package/dist/browser/generated/src/siprouting/sipRoutingClientContext.js.map +1 -1
  39. package/dist/browser/generated/src/tracing.js +1 -1
  40. package/dist/browser/generated/src/tracing.js.map +1 -1
  41. package/dist/browser/mappers.d.ts +3 -17
  42. package/dist/browser/mappers.d.ts.map +1 -1
  43. package/dist/browser/mappers.js +2 -51
  44. package/dist/browser/mappers.js.map +1 -1
  45. package/dist/browser/models.d.ts +1 -60
  46. package/dist/browser/models.d.ts.map +1 -1
  47. package/dist/browser/models.js.map +1 -1
  48. package/dist/browser/phoneNumbersClient.d.ts +1 -1
  49. package/dist/browser/phoneNumbersClient.js +86 -28
  50. package/dist/browser/phoneNumbersClient.js.map +1 -1
  51. package/dist/browser/sipRoutingClient.d.ts +1 -41
  52. package/dist/browser/sipRoutingClient.d.ts.map +1 -1
  53. package/dist/browser/sipRoutingClient.js +49 -218
  54. package/dist/browser/sipRoutingClient.js.map +1 -1
  55. package/dist/browser/utils/constants.d.ts.map +1 -1
  56. package/dist/browser/utils/constants.js +1 -1
  57. package/dist/browser/utils/constants.js.map +1 -1
  58. package/dist/browser/utils/customPipelinePolicies.js +1 -2
  59. package/dist/browser/utils/customPipelinePolicies.js.map +1 -1
  60. package/dist/commonjs/generated/src/lroImpl.js +7 -3
  61. package/dist/commonjs/generated/src/lroImpl.js.map +1 -1
  62. package/dist/commonjs/generated/src/operations/phoneNumbers.js +219 -295
  63. package/dist/commonjs/generated/src/operations/phoneNumbers.js.map +1 -1
  64. package/dist/commonjs/generated/src/pagingHelper.js +2 -4
  65. package/dist/commonjs/generated/src/pagingHelper.js.map +1 -1
  66. package/dist/commonjs/generated/src/phoneNumbersClient.js +11 -4
  67. package/dist/commonjs/generated/src/phoneNumbersClient.js.map +1 -1
  68. package/dist/commonjs/generated/src/siprouting/index.d.ts +1 -0
  69. package/dist/commonjs/generated/src/siprouting/index.d.ts.map +1 -1
  70. package/dist/commonjs/generated/src/siprouting/index.js +3 -1
  71. package/dist/commonjs/generated/src/siprouting/index.js.map +1 -1
  72. package/dist/commonjs/generated/src/siprouting/models/index.d.ts +2 -141
  73. package/dist/commonjs/generated/src/siprouting/models/index.d.ts.map +1 -1
  74. package/dist/commonjs/generated/src/siprouting/models/index.js +0 -7
  75. package/dist/commonjs/generated/src/siprouting/models/index.js.map +1 -1
  76. package/dist/commonjs/generated/src/siprouting/models/mappers.d.ts +0 -7
  77. package/dist/commonjs/generated/src/siprouting/models/mappers.d.ts.map +1 -1
  78. package/dist/commonjs/generated/src/siprouting/models/mappers.js +78 -285
  79. package/dist/commonjs/generated/src/siprouting/models/mappers.js.map +1 -1
  80. package/dist/commonjs/generated/src/siprouting/models/parameters.d.ts +0 -7
  81. package/dist/commonjs/generated/src/siprouting/models/parameters.d.ts.map +1 -1
  82. package/dist/commonjs/generated/src/siprouting/models/parameters.js +16 -62
  83. package/dist/commonjs/generated/src/siprouting/models/parameters.js.map +1 -1
  84. package/dist/commonjs/generated/src/siprouting/operations/sipRouting.d.ts +3 -9
  85. package/dist/commonjs/generated/src/siprouting/operations/sipRouting.d.ts.map +1 -1
  86. package/dist/commonjs/generated/src/siprouting/operations/sipRouting.js +12 -45
  87. package/dist/commonjs/generated/src/siprouting/operations/sipRouting.js.map +1 -1
  88. package/dist/commonjs/generated/src/siprouting/operationsInterfaces/sipRouting.d.ts +1 -7
  89. package/dist/commonjs/generated/src/siprouting/operationsInterfaces/sipRouting.d.ts.map +1 -1
  90. package/dist/commonjs/generated/src/siprouting/operationsInterfaces/sipRouting.js.map +1 -1
  91. package/dist/commonjs/generated/src/siprouting/sipRoutingClient.d.ts +2 -6
  92. package/dist/commonjs/generated/src/siprouting/sipRoutingClient.d.ts.map +1 -1
  93. package/dist/commonjs/generated/src/siprouting/sipRoutingClient.js +4 -52
  94. package/dist/commonjs/generated/src/siprouting/sipRoutingClient.js.map +1 -1
  95. package/dist/commonjs/generated/src/siprouting/sipRoutingClientContext.js +10 -3
  96. package/dist/commonjs/generated/src/siprouting/sipRoutingClientContext.js.map +1 -1
  97. package/dist/commonjs/generated/src/tracing.js +1 -1
  98. package/dist/commonjs/generated/src/tracing.js.map +1 -1
  99. package/dist/commonjs/mappers.d.ts +3 -17
  100. package/dist/commonjs/mappers.d.ts.map +1 -1
  101. package/dist/commonjs/mappers.js +2 -53
  102. package/dist/commonjs/mappers.js.map +1 -1
  103. package/dist/commonjs/models.d.ts +1 -60
  104. package/dist/commonjs/models.d.ts.map +1 -1
  105. package/dist/commonjs/models.js.map +1 -1
  106. package/dist/commonjs/phoneNumbersClient.d.ts +1 -1
  107. package/dist/commonjs/phoneNumbersClient.js +86 -28
  108. package/dist/commonjs/phoneNumbersClient.js.map +1 -1
  109. package/dist/commonjs/sipRoutingClient.d.ts +1 -41
  110. package/dist/commonjs/sipRoutingClient.d.ts.map +1 -1
  111. package/dist/commonjs/sipRoutingClient.js +48 -216
  112. package/dist/commonjs/sipRoutingClient.js.map +1 -1
  113. package/dist/commonjs/tsdoc-metadata.json +11 -11
  114. package/dist/commonjs/utils/constants.d.ts.map +1 -1
  115. package/dist/commonjs/utils/constants.js +1 -1
  116. package/dist/commonjs/utils/constants.js.map +1 -1
  117. package/dist/commonjs/utils/customPipelinePolicies.js +1 -2
  118. package/dist/commonjs/utils/customPipelinePolicies.js.map +1 -1
  119. package/dist/esm/generated/src/lroImpl.js +7 -3
  120. package/dist/esm/generated/src/lroImpl.js.map +1 -1
  121. package/dist/esm/generated/src/operations/phoneNumbers.js +219 -296
  122. package/dist/esm/generated/src/operations/phoneNumbers.js.map +1 -1
  123. package/dist/esm/generated/src/pagingHelper.js +2 -4
  124. package/dist/esm/generated/src/pagingHelper.js.map +1 -1
  125. package/dist/esm/generated/src/phoneNumbersClient.js +11 -4
  126. package/dist/esm/generated/src/phoneNumbersClient.js.map +1 -1
  127. package/dist/esm/generated/src/siprouting/index.d.ts +1 -0
  128. package/dist/esm/generated/src/siprouting/index.d.ts.map +1 -1
  129. package/dist/esm/generated/src/siprouting/index.js +1 -0
  130. package/dist/esm/generated/src/siprouting/index.js.map +1 -1
  131. package/dist/esm/generated/src/siprouting/models/index.d.ts +2 -141
  132. package/dist/esm/generated/src/siprouting/models/index.d.ts.map +1 -1
  133. package/dist/esm/generated/src/siprouting/models/index.js +1 -6
  134. package/dist/esm/generated/src/siprouting/models/index.js.map +1 -1
  135. package/dist/esm/generated/src/siprouting/models/mappers.d.ts +0 -7
  136. package/dist/esm/generated/src/siprouting/models/mappers.d.ts.map +1 -1
  137. package/dist/esm/generated/src/siprouting/models/mappers.js +77 -284
  138. package/dist/esm/generated/src/siprouting/models/mappers.js.map +1 -1
  139. package/dist/esm/generated/src/siprouting/models/parameters.d.ts +0 -7
  140. package/dist/esm/generated/src/siprouting/models/parameters.d.ts.map +1 -1
  141. package/dist/esm/generated/src/siprouting/models/parameters.js +16 -62
  142. package/dist/esm/generated/src/siprouting/models/parameters.js.map +1 -1
  143. package/dist/esm/generated/src/siprouting/operations/sipRouting.d.ts +3 -9
  144. package/dist/esm/generated/src/siprouting/operations/sipRouting.d.ts.map +1 -1
  145. package/dist/esm/generated/src/siprouting/operations/sipRouting.js +12 -45
  146. package/dist/esm/generated/src/siprouting/operations/sipRouting.js.map +1 -1
  147. package/dist/esm/generated/src/siprouting/operationsInterfaces/sipRouting.d.ts +1 -7
  148. package/dist/esm/generated/src/siprouting/operationsInterfaces/sipRouting.d.ts.map +1 -1
  149. package/dist/esm/generated/src/siprouting/operationsInterfaces/sipRouting.js.map +1 -1
  150. package/dist/esm/generated/src/siprouting/sipRoutingClient.d.ts +2 -6
  151. package/dist/esm/generated/src/siprouting/sipRoutingClient.d.ts.map +1 -1
  152. package/dist/esm/generated/src/siprouting/sipRoutingClient.js +4 -51
  153. package/dist/esm/generated/src/siprouting/sipRoutingClient.js.map +1 -1
  154. package/dist/esm/generated/src/siprouting/sipRoutingClientContext.js +10 -3
  155. package/dist/esm/generated/src/siprouting/sipRoutingClientContext.js.map +1 -1
  156. package/dist/esm/generated/src/tracing.js +1 -1
  157. package/dist/esm/generated/src/tracing.js.map +1 -1
  158. package/dist/esm/mappers.d.ts +3 -17
  159. package/dist/esm/mappers.d.ts.map +1 -1
  160. package/dist/esm/mappers.js +2 -51
  161. package/dist/esm/mappers.js.map +1 -1
  162. package/dist/esm/models.d.ts +1 -60
  163. package/dist/esm/models.d.ts.map +1 -1
  164. package/dist/esm/models.js.map +1 -1
  165. package/dist/esm/phoneNumbersClient.d.ts +1 -1
  166. package/dist/esm/phoneNumbersClient.js +86 -28
  167. package/dist/esm/phoneNumbersClient.js.map +1 -1
  168. package/dist/esm/sipRoutingClient.d.ts +1 -41
  169. package/dist/esm/sipRoutingClient.d.ts.map +1 -1
  170. package/dist/esm/sipRoutingClient.js +49 -218
  171. package/dist/esm/sipRoutingClient.js.map +1 -1
  172. package/dist/esm/utils/constants.d.ts.map +1 -1
  173. package/dist/esm/utils/constants.js +1 -1
  174. package/dist/esm/utils/constants.js.map +1 -1
  175. package/dist/esm/utils/customPipelinePolicies.js +1 -2
  176. package/dist/esm/utils/customPipelinePolicies.js.map +1 -1
  177. package/dist/react-native/generated/src/lroImpl.js +7 -3
  178. package/dist/react-native/generated/src/lroImpl.js.map +1 -1
  179. package/dist/react-native/generated/src/operations/phoneNumbers.js +219 -296
  180. package/dist/react-native/generated/src/operations/phoneNumbers.js.map +1 -1
  181. package/dist/react-native/generated/src/pagingHelper.js +2 -4
  182. package/dist/react-native/generated/src/pagingHelper.js.map +1 -1
  183. package/dist/react-native/generated/src/phoneNumbersClient.js +11 -4
  184. package/dist/react-native/generated/src/phoneNumbersClient.js.map +1 -1
  185. package/dist/react-native/generated/src/siprouting/index.d.ts +1 -0
  186. package/dist/react-native/generated/src/siprouting/index.d.ts.map +1 -1
  187. package/dist/react-native/generated/src/siprouting/index.js +1 -0
  188. package/dist/react-native/generated/src/siprouting/index.js.map +1 -1
  189. package/dist/react-native/generated/src/siprouting/models/index.d.ts +2 -141
  190. package/dist/react-native/generated/src/siprouting/models/index.d.ts.map +1 -1
  191. package/dist/react-native/generated/src/siprouting/models/index.js +1 -6
  192. package/dist/react-native/generated/src/siprouting/models/index.js.map +1 -1
  193. package/dist/react-native/generated/src/siprouting/models/mappers.d.ts +0 -7
  194. package/dist/react-native/generated/src/siprouting/models/mappers.d.ts.map +1 -1
  195. package/dist/react-native/generated/src/siprouting/models/mappers.js +77 -284
  196. package/dist/react-native/generated/src/siprouting/models/mappers.js.map +1 -1
  197. package/dist/react-native/generated/src/siprouting/models/parameters.d.ts +0 -7
  198. package/dist/react-native/generated/src/siprouting/models/parameters.d.ts.map +1 -1
  199. package/dist/react-native/generated/src/siprouting/models/parameters.js +16 -62
  200. package/dist/react-native/generated/src/siprouting/models/parameters.js.map +1 -1
  201. package/dist/react-native/generated/src/siprouting/operations/sipRouting.d.ts +3 -9
  202. package/dist/react-native/generated/src/siprouting/operations/sipRouting.d.ts.map +1 -1
  203. package/dist/react-native/generated/src/siprouting/operations/sipRouting.js +12 -45
  204. package/dist/react-native/generated/src/siprouting/operations/sipRouting.js.map +1 -1
  205. package/dist/react-native/generated/src/siprouting/operationsInterfaces/sipRouting.d.ts +1 -7
  206. package/dist/react-native/generated/src/siprouting/operationsInterfaces/sipRouting.d.ts.map +1 -1
  207. package/dist/react-native/generated/src/siprouting/operationsInterfaces/sipRouting.js.map +1 -1
  208. package/dist/react-native/generated/src/siprouting/sipRoutingClient.d.ts +2 -6
  209. package/dist/react-native/generated/src/siprouting/sipRoutingClient.d.ts.map +1 -1
  210. package/dist/react-native/generated/src/siprouting/sipRoutingClient.js +4 -51
  211. package/dist/react-native/generated/src/siprouting/sipRoutingClient.js.map +1 -1
  212. package/dist/react-native/generated/src/siprouting/sipRoutingClientContext.js +10 -3
  213. package/dist/react-native/generated/src/siprouting/sipRoutingClientContext.js.map +1 -1
  214. package/dist/react-native/generated/src/tracing.js +1 -1
  215. package/dist/react-native/generated/src/tracing.js.map +1 -1
  216. package/dist/react-native/mappers.d.ts +3 -17
  217. package/dist/react-native/mappers.d.ts.map +1 -1
  218. package/dist/react-native/mappers.js +2 -51
  219. package/dist/react-native/mappers.js.map +1 -1
  220. package/dist/react-native/models.d.ts +1 -60
  221. package/dist/react-native/models.d.ts.map +1 -1
  222. package/dist/react-native/models.js.map +1 -1
  223. package/dist/react-native/phoneNumbersClient.d.ts +1 -1
  224. package/dist/react-native/phoneNumbersClient.js +86 -28
  225. package/dist/react-native/phoneNumbersClient.js.map +1 -1
  226. package/dist/react-native/sipRoutingClient.d.ts +1 -41
  227. package/dist/react-native/sipRoutingClient.d.ts.map +1 -1
  228. package/dist/react-native/sipRoutingClient.js +49 -218
  229. package/dist/react-native/sipRoutingClient.js.map +1 -1
  230. package/dist/react-native/utils/constants.d.ts.map +1 -1
  231. package/dist/react-native/utils/constants.js +1 -1
  232. package/dist/react-native/utils/constants.js.map +1 -1
  233. package/dist/react-native/utils/customPipelinePolicies.js +1 -2
  234. package/dist/react-native/utils/customPipelinePolicies.js.map +1 -1
  235. package/package.json +35 -37
@@ -1,11 +1,10 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
2
  // Licensed under the MIT License.
3
- import { __asyncDelegator, __asyncGenerator, __asyncValues, __await } from "tslib";
4
3
  import { createCommunicationAuthPolicy, isKeyCredential, parseClientArguments, } from "@azure/communication-common";
5
4
  import { isTokenCredential } from "@azure/core-auth";
6
5
  import { logger } from "./utils/index.js";
7
6
  import { SipRoutingClient as SipRoutingGeneratedClient } from "./generated/src/siprouting/sipRoutingClient.js";
8
- import { transformFromRestModel, transformDomainsFromRestModel, transformIntoRestModel, transformDomainsIntoRestModel, } from "./mappers.js";
7
+ import { transformFromRestModel, transformIntoRestModel } from "./mappers.js";
9
8
  import { tracingClient } from "./generated/src/tracing.js";
10
9
  export * from "./models.js";
11
10
  /**
@@ -18,15 +17,25 @@ const isSipClientOptions = (options) => options && !isKeyCredential(options) &&
18
17
  * Client class for interacting with Azure Communication Services SIP Routing Administration.
19
18
  */
20
19
  export class SipRoutingClient {
20
+ /**
21
+ * A reference to the auto-generated SipRouting HTTP client.
22
+ */
23
+ client;
21
24
  constructor(connectionStringOrUrl, credentialOrOptions, maybeOptions = {}) {
22
25
  const { url, credential } = parseClientArguments(connectionStringOrUrl, credentialOrOptions);
23
26
  const options = isSipClientOptions(credentialOrOptions) ? credentialOrOptions : maybeOptions;
24
- const internalPipelineOptions = Object.assign(Object.assign({}, options), {
25
- loggingOptions: {
26
- logger: logger.info,
27
+ const internalPipelineOptions = {
28
+ ...options,
29
+ ...{
30
+ loggingOptions: {
31
+ logger: logger.info,
32
+ },
27
33
  },
34
+ };
35
+ this.client = new SipRoutingGeneratedClient(url, {
36
+ endpoint: url,
37
+ ...internalPipelineOptions,
28
38
  });
29
- this.client = new SipRoutingGeneratedClient(url, Object.assign({ endpoint: url }, internalPipelineOptions));
30
39
  const authPolicy = createCommunicationAuthPolicy(credential);
31
40
  this.client.pipeline.addPolicy(authPolicy);
32
41
  }
@@ -38,7 +47,7 @@ export class SipRoutingClient {
38
47
  listTrunks(options = {}) {
39
48
  const { span, updatedOptions } = tracingClient.startSpan("SipRoutingClient-listTrunks", options);
40
49
  try {
41
- const iter = this.listTrunksPagingAll(Object.assign({}, updatedOptions));
50
+ const iter = this.listTrunksPagingAll({ ...updatedOptions });
42
51
  return {
43
52
  next() {
44
53
  return iter.next();
@@ -47,39 +56,7 @@ export class SipRoutingClient {
47
56
  return this;
48
57
  },
49
58
  byPage: () => {
50
- return this.listTrunksPagingPage(Object.assign({}, updatedOptions));
51
- },
52
- };
53
- }
54
- catch (e) {
55
- span.setStatus({
56
- status: "error",
57
- error: e,
58
- });
59
- throw e;
60
- }
61
- finally {
62
- span.end();
63
- }
64
- }
65
- /**
66
- * Lists the SIP domains.
67
- * @param options - The options parameters.
68
- */
69
- // eslint-disable-next-line @azure/azure-sdk/ts-naming-options
70
- listDomains(options = {}) {
71
- const { span, updatedOptions } = tracingClient.startSpan("SipRoutingClient-listDomains", options);
72
- try {
73
- const iter = this.listDomainsPagingAll(Object.assign({}, updatedOptions));
74
- return {
75
- next() {
76
- return iter.next();
77
- },
78
- [Symbol.asyncIterator]() {
79
- return this;
80
- },
81
- byPage: () => {
82
- return this.listDomainsPagingPage(Object.assign({}, updatedOptions));
59
+ return this.listTrunksPagingPage({ ...updatedOptions });
83
60
  },
84
61
  };
85
62
  }
@@ -109,22 +86,6 @@ export class SipRoutingClient {
109
86
  throw { code: "NotFound", message: "Not Found" };
110
87
  });
111
88
  }
112
- /**
113
- * Gets the SIP domain.
114
- * @param fqdn - The domain's FQDN.
115
- * @param options - The options parameters.
116
- */
117
- // eslint-disable-next-line @azure/azure-sdk/ts-naming-options
118
- async getDomain(fqdn, options = {}) {
119
- return tracingClient.withSpan("SipRoutingClient-getDomain", options, async (updatedOptions) => {
120
- const domains = await this.getDomainsInternal(updatedOptions);
121
- const domain = domains.find((value) => value.fqdn === fqdn);
122
- if (domain) {
123
- return domain;
124
- }
125
- throw { code: "NotFound", message: "Not Found" };
126
- });
127
- }
128
89
  /**
129
90
  * Lists the SIP trunk routes.
130
91
  * @param options - The options parameters.
@@ -133,7 +94,7 @@ export class SipRoutingClient {
133
94
  listRoutes(options = {}) {
134
95
  const { span, updatedOptions } = tracingClient.startSpan("SipRoutingClient-listRoutes", options);
135
96
  try {
136
- const iter = this.listRoutesPagingAll(Object.assign({}, updatedOptions));
97
+ const iter = this.listRoutesPagingAll({ ...updatedOptions });
137
98
  return {
138
99
  next() {
139
100
  return iter.next();
@@ -142,7 +103,7 @@ export class SipRoutingClient {
142
103
  return this;
143
104
  },
144
105
  byPage: () => {
145
- return this.listRoutesPagingPage(Object.assign({}, updatedOptions));
106
+ return this.listRoutesPagingPage({ ...updatedOptions });
146
107
  },
147
108
  };
148
109
  }
@@ -176,7 +137,10 @@ export class SipRoutingClient {
176
137
  });
177
138
  const isPatchNeeded = Object.keys(patch.trunks).length > 0;
178
139
  if (isPatchNeeded) {
179
- const payload = Object.assign(Object.assign({}, updatedOptions), patch);
140
+ const payload = {
141
+ ...updatedOptions,
142
+ ...patch,
143
+ };
180
144
  config = await this.client.sipRouting.update(payload);
181
145
  }
182
146
  return transformFromRestModel(config.trunks);
@@ -192,7 +156,10 @@ export class SipRoutingClient {
192
156
  const patch = {
193
157
  trunks: transformIntoRestModel([trunk]),
194
158
  };
195
- const payload = Object.assign(Object.assign({}, updatedOptions), patch);
159
+ const payload = {
160
+ ...updatedOptions,
161
+ ...patch,
162
+ };
196
163
  const config = await this.client.sipRouting.update(payload);
197
164
  const storedTrunk = transformFromRestModel(config.trunks).find((value) => value.fqdn === trunk.fqdn);
198
165
  if (storedTrunk) {
@@ -201,50 +168,6 @@ export class SipRoutingClient {
201
168
  throw { code: "NotFound", message: "Not Found" };
202
169
  });
203
170
  }
204
- /**
205
- * Sets the SIP domains.
206
- * @param domains - The SIP domains to be set.
207
- * @param options - The options parameters.
208
- */
209
- async setDomains(domains, options = {}) {
210
- return tracingClient.withSpan("SipRoutingClient-setTrunks", options, async (updatedOptions) => {
211
- const patch = { domains: transformDomainsIntoRestModel(domains) };
212
- let config = await this.client.sipRouting.get(updatedOptions);
213
- const storedFqdns = transformDomainsFromRestModel(config.domains).map((domain) => domain.fqdn);
214
- const setFqdns = domains.map((domain) => domain.fqdn);
215
- storedFqdns.forEach((storedFqdn) => {
216
- const shouldDeleteStoredTrunk = !setFqdns.find((value) => value === storedFqdn);
217
- if (shouldDeleteStoredTrunk) {
218
- patch.domains[storedFqdn] = null;
219
- }
220
- });
221
- const isPatchNeeded = Object.keys(patch.domains).length > 0;
222
- if (isPatchNeeded) {
223
- const payload = Object.assign(Object.assign({}, updatedOptions), patch);
224
- config = await this.client.sipRouting.update(payload);
225
- }
226
- return transformDomainsFromRestModel(config.domains);
227
- });
228
- }
229
- /**
230
- * Sets the SIP domain.
231
- * @param domain - The SIP domain to be set.
232
- * @param options - The options parameters.
233
- */
234
- async setDomain(domain, options = {}) {
235
- return tracingClient.withSpan("SipRoutingClient-setDomain", options, async (updatedOptions) => {
236
- const patch = {
237
- domains: transformDomainsIntoRestModel([domain]),
238
- };
239
- const payload = Object.assign(Object.assign({}, updatedOptions), patch);
240
- const config = await this.client.sipRouting.update(payload);
241
- const storedDomain = transformDomainsFromRestModel(config.domains).find((value) => value.fqdn === domain.fqdn);
242
- if (storedDomain) {
243
- return storedDomain;
244
- }
245
- throw { code: "NotFound", message: "Not Found" };
246
- });
247
- }
248
171
  /**
249
172
  * Sets the SIP trunk routes.
250
173
  * @param routes - The SIP trunk routes to be set.
@@ -255,7 +178,10 @@ export class SipRoutingClient {
255
178
  const patch = {
256
179
  routes: routes,
257
180
  };
258
- const payload = Object.assign(Object.assign({}, updatedOptions), patch);
181
+ const payload = {
182
+ ...updatedOptions,
183
+ ...patch,
184
+ };
259
185
  const config = await this.client.sipRouting.update(payload);
260
186
  const storedRoutes = config.routes || (await this.getRoutesInternal(updatedOptions));
261
187
  return storedRoutes;
@@ -273,133 +199,38 @@ export class SipRoutingClient {
273
199
  const patch = {
274
200
  trunks: trunks,
275
201
  };
276
- const payload = Object.assign(Object.assign({}, updatedOptions), patch);
277
- await this.client.sipRouting.update(payload);
278
- });
279
- }
280
- /**
281
- * Deletes the SIP domain.
282
- * @param fqdn - The domain's FQDN.
283
- * @param options - The options parameters.
284
- */
285
- async deleteDomain(fqdn, options = {}) {
286
- return tracingClient.withSpan("SipRoutingClient-deleteDomain", options, async (updatedOptions) => {
287
- const domains = {};
288
- domains[fqdn] = null;
289
- const patch = {
290
- domains: domains,
202
+ const payload = {
203
+ ...updatedOptions,
204
+ ...patch,
291
205
  };
292
- const payload = Object.assign(Object.assign({}, updatedOptions), patch);
293
206
  await this.client.sipRouting.update(payload);
294
207
  });
295
208
  }
296
- /**
297
- * Test routes with number.
298
- * @param targetPhoneNumber - target phone number to test routes.
299
- * @param routes - sip trunk routes.
300
- * @param options - The options parameters for routes.
301
- */
302
- async getRoutesForNumber(targetPhoneNumber, routes, options = {}) {
303
- return tracingClient.withSpan("SipRoutingClient-getRoutesWithNumber", options, async (updatedOptions) => {
304
- return this.getRoutesForNumberInternal(targetPhoneNumber, routes, updatedOptions);
305
- });
306
- }
307
- async getRoutesForNumberInternal(targetPhoneNumber, routes, options) {
308
- const optionalParams = Object.assign({ routes: routes }, options);
309
- const response = await this.client.sipRouting.testRoutesWithNumber(targetPhoneNumber, optionalParams);
310
- return response.matchingRoutes ? response.matchingRoutes : [];
311
- }
312
209
  async getRoutesInternal(options) {
313
210
  const config = await this.client.sipRouting.get(options);
314
211
  return config.routes || [];
315
212
  }
316
213
  async getTrunksInternal(options) {
317
- const optionalParams = Object.assign({}, options);
318
- const config = await this.client.sipRouting.get(Object.assign(Object.assign({}, optionalParams), { expand: "trunks/health" }));
214
+ const config = await this.client.sipRouting.get(options);
319
215
  return transformFromRestModel(config.trunks);
320
216
  }
321
- async getDomainsInternal(options) {
322
- const optionalParams = Object.assign({}, options);
323
- const config = await this.client.sipRouting.get(optionalParams);
324
- return transformDomainsFromRestModel(config.domains);
325
- }
326
- listRoutesPagingAll(options) {
327
- return __asyncGenerator(this, arguments, function* listRoutesPagingAll_1() {
328
- var _a, e_1, _b, _c;
329
- try {
330
- for (var _d = true, _e = __asyncValues(this.listRoutesPagingPage(options)), _f; _f = yield __await(_e.next()), _a = _f.done, !_a; _d = true) {
331
- _c = _f.value;
332
- _d = false;
333
- const page = _c;
334
- yield __await(yield* __asyncDelegator(__asyncValues(page)));
335
- }
336
- }
337
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
338
- finally {
339
- try {
340
- if (!_d && !_a && (_b = _e.return)) yield __await(_b.call(_e));
341
- }
342
- finally { if (e_1) throw e_1.error; }
343
- }
344
- });
345
- }
346
- listTrunksPagingAll(options) {
347
- return __asyncGenerator(this, arguments, function* listTrunksPagingAll_1() {
348
- var _a, e_2, _b, _c;
349
- try {
350
- for (var _d = true, _e = __asyncValues(this.listTrunksPagingPage(options)), _f; _f = yield __await(_e.next()), _a = _f.done, !_a; _d = true) {
351
- _c = _f.value;
352
- _d = false;
353
- const page = _c;
354
- yield __await(yield* __asyncDelegator(__asyncValues(page)));
355
- }
356
- }
357
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
358
- finally {
359
- try {
360
- if (!_d && !_a && (_b = _e.return)) yield __await(_b.call(_e));
361
- }
362
- finally { if (e_2) throw e_2.error; }
363
- }
364
- });
365
- }
366
- listTrunksPagingPage() {
367
- return __asyncGenerator(this, arguments, function* listTrunksPagingPage_1(options = {}) {
368
- const apiResult = yield __await(this.getTrunksInternal(options));
369
- yield yield __await(apiResult);
370
- });
217
+ async *listRoutesPagingAll(options) {
218
+ for await (const page of this.listRoutesPagingPage(options)) {
219
+ yield* page;
220
+ }
371
221
  }
372
- listDomainsPagingAll(options) {
373
- return __asyncGenerator(this, arguments, function* listDomainsPagingAll_1() {
374
- var _a, e_3, _b, _c;
375
- try {
376
- for (var _d = true, _e = __asyncValues(this.listDomainsPagingPage(options)), _f; _f = yield __await(_e.next()), _a = _f.done, !_a; _d = true) {
377
- _c = _f.value;
378
- _d = false;
379
- const page = _c;
380
- yield __await(yield* __asyncDelegator(__asyncValues(page)));
381
- }
382
- }
383
- catch (e_3_1) { e_3 = { error: e_3_1 }; }
384
- finally {
385
- try {
386
- if (!_d && !_a && (_b = _e.return)) yield __await(_b.call(_e));
387
- }
388
- finally { if (e_3) throw e_3.error; }
389
- }
390
- });
222
+ async *listTrunksPagingAll(options) {
223
+ for await (const page of this.listTrunksPagingPage(options)) {
224
+ yield* page;
225
+ }
391
226
  }
392
- listDomainsPagingPage() {
393
- return __asyncGenerator(this, arguments, function* listDomainsPagingPage_1(options = {}) {
394
- const apiResult = yield __await(this.getDomainsInternal(options));
395
- yield yield __await(apiResult);
396
- });
227
+ async *listTrunksPagingPage(options = {}) {
228
+ const apiResult = await this.getTrunksInternal(options);
229
+ yield apiResult;
397
230
  }
398
- listRoutesPagingPage() {
399
- return __asyncGenerator(this, arguments, function* listRoutesPagingPage_1(options = {}) {
400
- const apiResult = yield __await(this.getRoutesInternal(options));
401
- yield yield __await(apiResult);
402
- });
231
+ async *listRoutesPagingPage(options = {}) {
232
+ const apiResult = await this.getRoutesInternal(options);
233
+ yield apiResult;
403
234
  }
404
235
  }
405
236
  //# sourceMappingURL=sipRoutingClient.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sipRoutingClient.js","sourceRoot":"","sources":["../../src/sipRoutingClient.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport {\n createCommunicationAuthPolicy,\n isKeyCredential,\n parseClientArguments,\n} from \"@azure/communication-common\";\nimport type { KeyCredential, TokenCredential } from \"@azure/core-auth\";\nimport { isTokenCredential } from \"@azure/core-auth\";\nimport type { InternalPipelineOptions } from \"@azure/core-rest-pipeline\";\nimport { logger } from \"./utils/index.js\";\nimport { SipRoutingClient as SipRoutingGeneratedClient } from \"./generated/src/siprouting/sipRoutingClient.js\";\nimport type {\n SipConfigurationUpdate,\n SipRoutingError,\n} from \"./generated/src/siprouting/models/index.js\";\nimport type {\n GetSipDomainsOptions,\n ListSipDomainsOptions,\n ListSipRoutesOptions,\n ListSipTrunksOptions,\n SipTrunk,\n SipTrunkRoute,\n SipDomain,\n} from \"./models.js\";\nimport {\n transformFromRestModel,\n transformDomainsFromRestModel,\n transformIntoRestModel,\n transformDomainsIntoRestModel,\n} from \"./mappers.js\";\nimport type { CommonClientOptions, OperationOptions } from \"@azure/core-client\";\nimport { tracingClient } from \"./generated/src/tracing.js\";\nimport type { PagedAsyncIterableIterator } from \"@azure/core-paging\";\n\nexport * from \"./models.js\";\n\n/**\n * Client options used to configure the SipRoutingClient API requests.\n */\nexport interface SipRoutingClientOptions extends CommonClientOptions {}\n\n/**\n * Checks whether the type of a value is SipClientOptions or not.\n *\n * @param options - The value being checked.\n */\nconst isSipClientOptions = (options: any): options is SipRoutingClientOptions =>\n options && !isKeyCredential(options) && !isTokenCredential(options);\n\n/**\n * Client class for interacting with Azure Communication Services SIP Routing Administration.\n */\nexport class SipRoutingClient {\n /**\n * A reference to the auto-generated SipRouting HTTP client.\n */\n private readonly client: SipRoutingGeneratedClient;\n\n /**\n * Initializes a new instance of the SipRoutingClient class using a connection string.\n *\n * @param connectionString - Connection string to connect to an Azure Communication Service resource. (eg: endpoint=https://contoso.eastus.communications.azure.net/;accesskey=secret)\n * @param options - Optional. Options to configure the HTTP pipeline.\n */\n public constructor(connectionString: string, options?: SipRoutingClientOptions);\n\n /**\n * Initializes a new instance of the SipRoutingClient class using an Azure KeyCredential.\n *\n * @param endpoint - The endpoint of the service (eg: https://contoso.eastus.communications.azure.net).\n * @param credential - An object that is used to authenticate requests to the service. Use the Azure KeyCredential or `@azure/identity` to create a credential.\n * @param options - Optional. Options to configure the HTTP pipeline.\n */\n public constructor(\n endpoint: string,\n credential: KeyCredential,\n options?: SipRoutingClientOptions,\n );\n\n /**\n * Initializes a new instance of the SipRoutingClient class using a TokenCredential.\n * @param endpoint - The endpoint of the service (ex: https://contoso.eastus.communications.azure.net).\n * @param credential - TokenCredential that is used to authenticate requests to the service.\n * @param options - Optional. Options to configure the HTTP pipeline.\n */\n public constructor(\n endpoint: string,\n credential: TokenCredential,\n options?: SipRoutingClientOptions,\n );\n\n public constructor(\n connectionStringOrUrl: string,\n credentialOrOptions?: KeyCredential | TokenCredential | SipRoutingClientOptions,\n maybeOptions: SipRoutingClientOptions = {},\n ) {\n const { url, credential } = parseClientArguments(connectionStringOrUrl, credentialOrOptions);\n const options = isSipClientOptions(credentialOrOptions) ? credentialOrOptions : maybeOptions;\n\n const internalPipelineOptions: InternalPipelineOptions = {\n ...options,\n ...{\n loggingOptions: {\n logger: logger.info,\n },\n },\n };\n\n this.client = new SipRoutingGeneratedClient(url, {\n endpoint: url,\n ...internalPipelineOptions,\n });\n const authPolicy = createCommunicationAuthPolicy(credential);\n this.client.pipeline.addPolicy(authPolicy);\n }\n\n /**\n * Lists the SIP trunks.\n * @param options - The options parameters.\n */\n // eslint-disable-next-line @azure/azure-sdk/ts-naming-options\n public listTrunks(options: ListSipTrunksOptions = {}): PagedAsyncIterableIterator<SipTrunk> {\n const { span, updatedOptions } = tracingClient.startSpan(\n \"SipRoutingClient-listTrunks\",\n options,\n );\n\n try {\n const iter = this.listTrunksPagingAll({ ...updatedOptions });\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listTrunksPagingPage({ ...updatedOptions });\n },\n };\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Lists the SIP domains.\n * @param options - The options parameters.\n */\n // eslint-disable-next-line @azure/azure-sdk/ts-naming-options\n public listDomains(options: ListSipDomainsOptions = {}): PagedAsyncIterableIterator<SipDomain> {\n const { span, updatedOptions } = tracingClient.startSpan(\n \"SipRoutingClient-listDomains\",\n options,\n );\n\n try {\n const iter = this.listDomainsPagingAll({ ...updatedOptions });\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listDomainsPagingPage({ ...updatedOptions });\n },\n };\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Gets the SIP trunk.\n * @param fqdn - The trunk's FQDN.\n * @param options - The options parameters.\n */\n public async getTrunk(fqdn: string, options: OperationOptions = {}): Promise<SipTrunk> {\n return tracingClient.withSpan(\"SipRoutingClient-getTrunk\", options, async (updatedOptions) => {\n const trunks = await this.getTrunksInternal(updatedOptions);\n const trunk = trunks.find((value: SipTrunk) => value.fqdn === fqdn);\n if (trunk) {\n return trunk;\n }\n throw { code: \"NotFound\", message: \"Not Found\" } as SipRoutingError;\n });\n }\n\n /**\n * Gets the SIP domain.\n * @param fqdn - The domain's FQDN.\n * @param options - The options parameters.\n */\n // eslint-disable-next-line @azure/azure-sdk/ts-naming-options\n public async getDomain(fqdn: string, options: GetSipDomainsOptions = {}): Promise<SipDomain> {\n return tracingClient.withSpan(\"SipRoutingClient-getDomain\", options, async (updatedOptions) => {\n const domains = await this.getDomainsInternal(updatedOptions);\n const domain = domains.find((value: SipDomain) => value.fqdn === fqdn);\n if (domain) {\n return domain;\n }\n throw { code: \"NotFound\", message: \"Not Found\" } as SipRoutingError;\n });\n }\n\n /**\n * Lists the SIP trunk routes.\n * @param options - The options parameters.\n */\n // eslint-disable-next-line @azure/azure-sdk/ts-naming-options\n public listRoutes(options: ListSipRoutesOptions = {}): PagedAsyncIterableIterator<SipTrunkRoute> {\n const { span, updatedOptions } = tracingClient.startSpan(\n \"SipRoutingClient-listRoutes\",\n options,\n );\n\n try {\n const iter = this.listRoutesPagingAll({ ...updatedOptions });\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listRoutesPagingPage({ ...updatedOptions });\n },\n };\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Sets the SIP trunks.\n * @param trunks - The SIP trunks to be set.\n * @param options - The options parameters.\n */\n public async setTrunks(trunks: SipTrunk[], options: OperationOptions = {}): Promise<SipTrunk[]> {\n return tracingClient.withSpan(\"SipRoutingClient-setTrunks\", options, async (updatedOptions) => {\n const patch: SipConfigurationUpdate = { trunks: transformIntoRestModel(trunks) };\n let config = await this.client.sipRouting.get(updatedOptions);\n const storedFqdns = transformFromRestModel(config.trunks).map((trunk) => trunk.fqdn);\n const setFqdns = trunks.map((trunk) => trunk.fqdn);\n storedFqdns.forEach((storedFqdn) => {\n const shouldDeleteStoredTrunk = !setFqdns.find((value) => value === storedFqdn);\n if (shouldDeleteStoredTrunk) {\n patch.trunks![storedFqdn] = null;\n }\n });\n\n const isPatchNeeded = Object.keys(patch.trunks!).length > 0;\n if (isPatchNeeded) {\n const payload = {\n ...updatedOptions,\n ...patch,\n };\n config = await this.client.sipRouting.update(payload);\n }\n\n return transformFromRestModel(config.trunks);\n });\n }\n\n /**\n * Sets the SIP trunk.\n * @param trunk - The SIP trunk to be set.\n * @param options - The options parameters.\n */\n public async setTrunk(trunk: SipTrunk, options: OperationOptions = {}): Promise<SipTrunk> {\n return tracingClient.withSpan(\"SipRoutingClient-setTrunk\", options, async (updatedOptions) => {\n const patch: SipConfigurationUpdate = {\n trunks: transformIntoRestModel([trunk]),\n };\n const payload = {\n ...updatedOptions,\n ...patch,\n };\n const config = await this.client.sipRouting.update(payload);\n const storedTrunk = transformFromRestModel(config.trunks).find(\n (value: SipTrunk) => value.fqdn === trunk.fqdn,\n );\n if (storedTrunk) {\n return storedTrunk;\n }\n\n throw { code: \"NotFound\", message: \"Not Found\" } as SipRoutingError;\n });\n }\n\n /**\n * Sets the SIP domains.\n * @param domains - The SIP domains to be set.\n * @param options - The options parameters.\n */\n public async setDomains(\n domains: SipDomain[],\n options: OperationOptions = {},\n ): Promise<SipDomain[]> {\n return tracingClient.withSpan(\"SipRoutingClient-setTrunks\", options, async (updatedOptions) => {\n const patch: SipConfigurationUpdate = { domains: transformDomainsIntoRestModel(domains) };\n let config = await this.client.sipRouting.get(updatedOptions);\n const storedFqdns = transformDomainsFromRestModel(config.domains).map(\n (domain) => domain.fqdn,\n );\n const setFqdns = domains.map((domain) => domain.fqdn);\n storedFqdns.forEach((storedFqdn) => {\n const shouldDeleteStoredTrunk = !setFqdns.find((value) => value === storedFqdn);\n if (shouldDeleteStoredTrunk) {\n patch.domains![storedFqdn] = null;\n }\n });\n\n const isPatchNeeded = Object.keys(patch.domains!).length > 0;\n if (isPatchNeeded) {\n const payload = {\n ...updatedOptions,\n ...patch,\n };\n config = await this.client.sipRouting.update(payload);\n }\n\n return transformDomainsFromRestModel(config.domains);\n });\n }\n\n /**\n * Sets the SIP domain.\n * @param domain - The SIP domain to be set.\n * @param options - The options parameters.\n */\n public async setDomain(domain: SipDomain, options: OperationOptions = {}): Promise<SipDomain> {\n return tracingClient.withSpan(\"SipRoutingClient-setDomain\", options, async (updatedOptions) => {\n const patch: SipConfigurationUpdate = {\n domains: transformDomainsIntoRestModel([domain]),\n };\n const payload = {\n ...updatedOptions,\n ...patch,\n };\n const config = await this.client.sipRouting.update(payload);\n const storedDomain = transformDomainsFromRestModel(config.domains).find(\n (value: SipDomain) => value.fqdn === domain.fqdn,\n );\n if (storedDomain) {\n return storedDomain;\n }\n\n throw { code: \"NotFound\", message: \"Not Found\" } as SipRoutingError;\n });\n }\n\n /**\n * Sets the SIP trunk routes.\n * @param routes - The SIP trunk routes to be set.\n * @param options - The options parameters.\n */\n public async setRoutes(\n routes: SipTrunkRoute[],\n options: OperationOptions = {},\n ): Promise<SipTrunkRoute[]> {\n return tracingClient.withSpan(\"SipRoutingClient-setRoutes\", options, async (updatedOptions) => {\n const patch: SipConfigurationUpdate = {\n routes: routes,\n };\n const payload = {\n ...updatedOptions,\n ...patch,\n };\n const config = await this.client.sipRouting.update(payload);\n const storedRoutes = config.routes || (await this.getRoutesInternal(updatedOptions));\n return storedRoutes;\n });\n }\n\n /**\n * Deletes the SIP trunk.\n * @param fqdn - The trunk's FQDN.\n * @param options - The options parameters.\n */\n public async deleteTrunk(fqdn: string, options: OperationOptions = {}): Promise<void> {\n return tracingClient.withSpan(\n \"SipRoutingClient-deleteTrunk\",\n options,\n async (updatedOptions) => {\n const trunks: any = {};\n trunks[fqdn] = null;\n const patch: SipConfigurationUpdate = {\n trunks: trunks,\n };\n\n const payload = {\n ...updatedOptions,\n ...patch,\n };\n await this.client.sipRouting.update(payload);\n },\n );\n }\n\n /**\n * Deletes the SIP domain.\n * @param fqdn - The domain's FQDN.\n * @param options - The options parameters.\n */\n public async deleteDomain(fqdn: string, options: OperationOptions = {}): Promise<void> {\n return tracingClient.withSpan(\n \"SipRoutingClient-deleteDomain\",\n options,\n async (updatedOptions) => {\n const domains: any = {};\n domains[fqdn] = null;\n const patch: SipConfigurationUpdate = {\n domains: domains,\n };\n\n const payload = {\n ...updatedOptions,\n ...patch,\n };\n await this.client.sipRouting.update(payload);\n },\n );\n }\n\n /**\n * Test routes with number.\n * @param targetPhoneNumber - target phone number to test routes.\n * @param routes - sip trunk routes.\n * @param options - The options parameters for routes.\n */\n public async getRoutesForNumber(\n targetPhoneNumber: string,\n routes: SipTrunkRoute[],\n options: OperationOptions = {},\n ): Promise<SipTrunkRoute[]> {\n return tracingClient.withSpan(\n \"SipRoutingClient-getRoutesWithNumber\",\n options,\n async (updatedOptions) => {\n return this.getRoutesForNumberInternal(targetPhoneNumber, routes, updatedOptions);\n },\n );\n }\n\n private async getRoutesForNumberInternal(\n targetPhoneNumber: string,\n routes: SipTrunkRoute[],\n options?: OperationOptions,\n ): Promise<SipTrunkRoute[]> {\n const optionalParams = {\n routes: routes,\n ...options,\n };\n const response = await this.client.sipRouting.testRoutesWithNumber(\n targetPhoneNumber,\n optionalParams,\n );\n\n return response.matchingRoutes ? response.matchingRoutes : [];\n }\n\n private async getRoutesInternal(options: OperationOptions): Promise<SipTrunkRoute[]> {\n const config = await this.client.sipRouting.get(options);\n return config.routes || [];\n }\n\n private async getTrunksInternal(options: ListSipTrunksOptions): Promise<SipTrunk[]> {\n const optionalParams = {\n ...options,\n };\n const config = await this.client.sipRouting.get({ ...optionalParams, expand: \"trunks/health\" });\n return transformFromRestModel(config.trunks);\n }\n\n private async getDomainsInternal(options: ListSipDomainsOptions): Promise<SipDomain[]> {\n const optionalParams = {\n ...options,\n };\n const config = await this.client.sipRouting.get(optionalParams);\n return transformDomainsFromRestModel(config.domains);\n }\n\n private async *listRoutesPagingAll(\n options?: ListSipRoutesOptions,\n ): AsyncIterableIterator<SipTrunkRoute> {\n for await (const page of this.listRoutesPagingPage(options)) {\n yield* page;\n }\n }\n\n private async *listTrunksPagingAll(\n options?: ListSipTrunksOptions,\n ): AsyncIterableIterator<SipTrunk> {\n for await (const page of this.listTrunksPagingPage(options)) {\n yield* page;\n }\n }\n\n private async *listTrunksPagingPage(\n options: ListSipTrunksOptions = {},\n ): AsyncIterableIterator<SipTrunk[]> {\n const apiResult = await this.getTrunksInternal(options);\n yield apiResult;\n }\n\n private async *listDomainsPagingAll(\n options?: ListSipDomainsOptions,\n ): AsyncIterableIterator<SipDomain> {\n for await (const page of this.listDomainsPagingPage(options)) {\n yield* page;\n }\n }\n\n private async *listDomainsPagingPage(\n options: ListSipDomainsOptions = {},\n ): AsyncIterableIterator<SipDomain[]> {\n const apiResult = await this.getDomainsInternal(options);\n yield apiResult;\n }\n\n private async *listRoutesPagingPage(\n options: ListSipRoutesOptions = {},\n ): AsyncIterableIterator<SipTrunkRoute[]> {\n const apiResult = await this.getRoutesInternal(options as OperationOptions);\n yield apiResult;\n }\n}\n"]}
1
+ {"version":3,"file":"sipRoutingClient.js","sourceRoot":"","sources":["../../src/sipRoutingClient.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EACL,6BAA6B,EAC7B,eAAe,EACf,oBAAoB,GACrB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,gBAAgB,IAAI,yBAAyB,EAAE,MAAM,gDAAgD,CAAC;AAW/G,OAAO,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAE9E,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAG3D,cAAc,aAAa,CAAC;AAO5B;;;;GAIG;AACH,MAAM,kBAAkB,GAAG,CAAC,OAAY,EAAsC,EAAE,CAC9E,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;AAEtE;;GAEG;AACH,MAAM,OAAO,gBAAgB;IAC3B;;OAEG;IACc,MAAM,CAA4B;IAmCnD,YACE,qBAA6B,EAC7B,mBAA+E,EAC/E,eAAwC,EAAE;QAE1C,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,oBAAoB,CAAC,qBAAqB,EAAE,mBAAmB,CAAC,CAAC;QAC7F,MAAM,OAAO,GAAG,kBAAkB,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,YAAY,CAAC;QAE7F,MAAM,uBAAuB,GAA4B;YACvD,GAAG,OAAO;YACV,GAAG;gBACD,cAAc,EAAE;oBACd,MAAM,EAAE,MAAM,CAAC,IAAI;iBACpB;aACF;SACF,CAAC;QAEF,IAAI,CAAC,MAAM,GAAG,IAAI,yBAAyB,CAAC,GAAG,EAAE;YAC/C,QAAQ,EAAE,GAAG;YACb,GAAG,uBAAuB;SAC3B,CAAC,CAAC;QACH,MAAM,UAAU,GAAG,6BAA6B,CAAC,UAAU,CAAC,CAAC;QAC7D,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAC7C,CAAC;IAED;;;OAGG;IACH,8DAA8D;IACvD,UAAU,CAAC,UAAgC,EAAE;QAClD,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,GAAG,aAAa,CAAC,SAAS,CACtD,6BAA6B,EAC7B,OAAO,CACR,CAAC;QAEF,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,IAAI,CAAC,mBAAmB,CAAC,EAAE,GAAG,cAAc,EAAE,CAAC,CAAC;YAC7D,OAAO;gBACL,IAAI;oBACF,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC;gBACrB,CAAC;gBACD,CAAC,MAAM,CAAC,aAAa,CAAC;oBACpB,OAAO,IAAI,CAAC;gBACd,CAAC;gBACD,MAAM,EAAE,GAAG,EAAE;oBACX,OAAO,IAAI,CAAC,oBAAoB,CAAC,EAAE,GAAG,cAAc,EAAE,CAAC,CAAC;gBAC1D,CAAC;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,IAAI,CAAC,SAAS,CAAC;gBACb,MAAM,EAAE,OAAO;gBACf,KAAK,EAAE,CAAC;aACT,CAAC,CAAC;YACH,MAAM,CAAC,CAAC;QACV,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,GAAG,EAAE,CAAC;QACb,CAAC;IACH,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,QAAQ,CAAC,IAAY,EAAE,UAA4B,EAAE;QAChE,OAAO,aAAa,CAAC,QAAQ,CAAC,2BAA2B,EAAE,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE;YAC3F,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;YAC5D,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,KAAe,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;YACpE,IAAI,KAAK,EAAE,CAAC;gBACV,OAAO,KAAK,CAAC;YACf,CAAC;YACD,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,EAAqB,CAAC;QACtE,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,8DAA8D;IACvD,UAAU,CAAC,UAAgC,EAAE;QAClD,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,GAAG,aAAa,CAAC,SAAS,CACtD,6BAA6B,EAC7B,OAAO,CACR,CAAC;QAEF,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,IAAI,CAAC,mBAAmB,CAAC,EAAE,GAAG,cAAc,EAAE,CAAC,CAAC;YAC7D,OAAO;gBACL,IAAI;oBACF,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC;gBACrB,CAAC;gBACD,CAAC,MAAM,CAAC,aAAa,CAAC;oBACpB,OAAO,IAAI,CAAC;gBACd,CAAC;gBACD,MAAM,EAAE,GAAG,EAAE;oBACX,OAAO,IAAI,CAAC,oBAAoB,CAAC,EAAE,GAAG,cAAc,EAAE,CAAC,CAAC;gBAC1D,CAAC;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,IAAI,CAAC,SAAS,CAAC;gBACb,MAAM,EAAE,OAAO;gBACf,KAAK,EAAE,CAAC;aACT,CAAC,CAAC;YACH,MAAM,CAAC,CAAC;QACV,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,GAAG,EAAE,CAAC;QACb,CAAC;IACH,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,SAAS,CAAC,MAAkB,EAAE,UAA4B,EAAE;QACvE,OAAO,aAAa,CAAC,QAAQ,CAAC,4BAA4B,EAAE,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE;YAC5F,MAAM,KAAK,GAA2B,EAAE,MAAM,EAAE,sBAAsB,CAAC,MAAM,CAAC,EAAE,CAAC;YACjF,IAAI,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;YAC9D,MAAM,WAAW,GAAG,sBAAsB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACrF,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACnD,WAAW,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;gBACjC,MAAM,uBAAuB,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC;gBAChF,IAAI,uBAAuB,EAAE,CAAC;oBAC5B,KAAK,CAAC,MAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC;gBACnC,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAO,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;YAC5D,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,OAAO,GAAG;oBACd,GAAG,cAAc;oBACjB,GAAG,KAAK;iBACT,CAAC;gBACF,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACxD,CAAC;YAED,OAAO,sBAAsB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,QAAQ,CAAC,KAAe,EAAE,UAA4B,EAAE;QACnE,OAAO,aAAa,CAAC,QAAQ,CAAC,2BAA2B,EAAE,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE;YAC3F,MAAM,KAAK,GAA2B;gBACpC,MAAM,EAAE,sBAAsB,CAAC,CAAC,KAAK,CAAC,CAAC;aACxC,CAAC;YACF,MAAM,OAAO,GAAG;gBACd,GAAG,cAAc;gBACjB,GAAG,KAAK;aACT,CAAC;YACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC5D,MAAM,WAAW,GAAG,sBAAsB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAC5D,CAAC,KAAe,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,CAC/C,CAAC;YACF,IAAI,WAAW,EAAE,CAAC;gBAChB,OAAO,WAAW,CAAC;YACrB,CAAC;YAED,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,EAAqB,CAAC;QACtE,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,SAAS,CACpB,MAAuB,EACvB,UAA4B,EAAE;QAE9B,OAAO,aAAa,CAAC,QAAQ,CAAC,4BAA4B,EAAE,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE;YAC5F,MAAM,KAAK,GAA2B;gBACpC,MAAM,EAAE,MAAM;aACf,CAAC;YACF,MAAM,OAAO,GAAG;gBACd,GAAG,cAAc;gBACjB,GAAG,KAAK;aACT,CAAC;YACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC5D,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,IAAI,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC,CAAC;YACrF,OAAO,YAAY,CAAC;QACtB,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,WAAW,CAAC,IAAY,EAAE,UAA4B,EAAE;QACnE,OAAO,aAAa,CAAC,QAAQ,CAC3B,8BAA8B,EAC9B,OAAO,EACP,KAAK,EAAE,cAAc,EAAE,EAAE;YACvB,MAAM,MAAM,GAAQ,EAAE,CAAC;YACvB,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;YACpB,MAAM,KAAK,GAA2B;gBACpC,MAAM,EAAE,MAAM;aACf,CAAC;YAEF,MAAM,OAAO,GAAG;gBACd,GAAG,cAAc;gBACjB,GAAG,KAAK;aACT,CAAC;YACF,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC/C,CAAC,CACF,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,OAAyB;QACvD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACzD,OAAO,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC;IAC7B,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,OAAyB;QACvD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACzD,OAAO,sBAAsB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC/C,CAAC;IAEO,KAAK,CAAC,CAAC,mBAAmB,CAChC,OAA8B;QAE9B,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,EAAE,CAAC;YAC5D,KAAK,CAAC,CAAC,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,CAAC,mBAAmB,CAChC,OAA8B;QAE9B,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,EAAE,CAAC;YAC5D,KAAK,CAAC,CAAC,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,CAAC,oBAAoB,CACjC,UAAgC,EAAE;QAElC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAA2B,CAAC,CAAC;QAC5E,MAAM,SAAS,CAAC;IAClB,CAAC;IAEO,KAAK,CAAC,CAAC,oBAAoB,CACjC,UAAgC,EAAE;QAElC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAA2B,CAAC,CAAC;QAC5E,MAAM,SAAS,CAAC;IAClB,CAAC;CACF","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport {\n createCommunicationAuthPolicy,\n isKeyCredential,\n parseClientArguments,\n} from \"@azure/communication-common\";\nimport type { KeyCredential, TokenCredential } from \"@azure/core-auth\";\nimport { isTokenCredential } from \"@azure/core-auth\";\nimport type { InternalPipelineOptions } from \"@azure/core-rest-pipeline\";\nimport { logger } from \"./utils/index.js\";\nimport { SipRoutingClient as SipRoutingGeneratedClient } from \"./generated/src/siprouting/sipRoutingClient.js\";\nimport type {\n SipConfigurationUpdate,\n SipRoutingError,\n} from \"./generated/src/siprouting/models/index.js\";\nimport type {\n ListSipRoutesOptions,\n ListSipTrunksOptions,\n SipTrunk,\n SipTrunkRoute,\n} from \"./models.js\";\nimport { transformFromRestModel, transformIntoRestModel } from \"./mappers.js\";\nimport type { CommonClientOptions, OperationOptions } from \"@azure/core-client\";\nimport { tracingClient } from \"./generated/src/tracing.js\";\nimport type { PagedAsyncIterableIterator } from \"@azure/core-paging\";\n\nexport * from \"./models.js\";\n\n/**\n * Client options used to configure the SipRoutingClient API requests.\n */\nexport interface SipRoutingClientOptions extends CommonClientOptions {}\n\n/**\n * Checks whether the type of a value is SipClientOptions or not.\n *\n * @param options - The value being checked.\n */\nconst isSipClientOptions = (options: any): options is SipRoutingClientOptions =>\n options && !isKeyCredential(options) && !isTokenCredential(options);\n\n/**\n * Client class for interacting with Azure Communication Services SIP Routing Administration.\n */\nexport class SipRoutingClient {\n /**\n * A reference to the auto-generated SipRouting HTTP client.\n */\n private readonly client: SipRoutingGeneratedClient;\n\n /**\n * Initializes a new instance of the SipRoutingClient class using a connection string.\n *\n * @param connectionString - Connection string to connect to an Azure Communication Service resource. (eg: endpoint=https://contoso.eastus.communications.azure.net/;accesskey=secret)\n * @param options - Optional. Options to configure the HTTP pipeline.\n */\n public constructor(connectionString: string, options?: SipRoutingClientOptions);\n\n /**\n * Initializes a new instance of the SipRoutingClient class using an Azure KeyCredential.\n *\n * @param endpoint - The endpoint of the service (eg: https://contoso.eastus.communications.azure.net).\n * @param credential - An object that is used to authenticate requests to the service. Use the Azure KeyCredential or `@azure/identity` to create a credential.\n * @param options - Optional. Options to configure the HTTP pipeline.\n */\n public constructor(\n endpoint: string,\n credential: KeyCredential,\n options?: SipRoutingClientOptions,\n );\n\n /**\n * Initializes a new instance of the SipRoutingClient class using a TokenCredential.\n * @param endpoint - The endpoint of the service (ex: https://contoso.eastus.communications.azure.net).\n * @param credential - TokenCredential that is used to authenticate requests to the service.\n * @param options - Optional. Options to configure the HTTP pipeline.\n */\n public constructor(\n endpoint: string,\n credential: TokenCredential,\n options?: SipRoutingClientOptions,\n );\n\n public constructor(\n connectionStringOrUrl: string,\n credentialOrOptions?: KeyCredential | TokenCredential | SipRoutingClientOptions,\n maybeOptions: SipRoutingClientOptions = {},\n ) {\n const { url, credential } = parseClientArguments(connectionStringOrUrl, credentialOrOptions);\n const options = isSipClientOptions(credentialOrOptions) ? credentialOrOptions : maybeOptions;\n\n const internalPipelineOptions: InternalPipelineOptions = {\n ...options,\n ...{\n loggingOptions: {\n logger: logger.info,\n },\n },\n };\n\n this.client = new SipRoutingGeneratedClient(url, {\n endpoint: url,\n ...internalPipelineOptions,\n });\n const authPolicy = createCommunicationAuthPolicy(credential);\n this.client.pipeline.addPolicy(authPolicy);\n }\n\n /**\n * Lists the SIP trunks.\n * @param options - The options parameters.\n */\n // eslint-disable-next-line @azure/azure-sdk/ts-naming-options\n public listTrunks(options: ListSipTrunksOptions = {}): PagedAsyncIterableIterator<SipTrunk> {\n const { span, updatedOptions } = tracingClient.startSpan(\n \"SipRoutingClient-listTrunks\",\n options,\n );\n\n try {\n const iter = this.listTrunksPagingAll({ ...updatedOptions });\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listTrunksPagingPage({ ...updatedOptions });\n },\n };\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Gets the SIP trunk.\n * @param fqdn - The trunk's FQDN.\n * @param options - The options parameters.\n */\n public async getTrunk(fqdn: string, options: OperationOptions = {}): Promise<SipTrunk> {\n return tracingClient.withSpan(\"SipRoutingClient-getTrunk\", options, async (updatedOptions) => {\n const trunks = await this.getTrunksInternal(updatedOptions);\n const trunk = trunks.find((value: SipTrunk) => value.fqdn === fqdn);\n if (trunk) {\n return trunk;\n }\n throw { code: \"NotFound\", message: \"Not Found\" } as SipRoutingError;\n });\n }\n\n /**\n * Lists the SIP trunk routes.\n * @param options - The options parameters.\n */\n // eslint-disable-next-line @azure/azure-sdk/ts-naming-options\n public listRoutes(options: ListSipRoutesOptions = {}): PagedAsyncIterableIterator<SipTrunkRoute> {\n const { span, updatedOptions } = tracingClient.startSpan(\n \"SipRoutingClient-listRoutes\",\n options,\n );\n\n try {\n const iter = this.listRoutesPagingAll({ ...updatedOptions });\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listRoutesPagingPage({ ...updatedOptions });\n },\n };\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Sets the SIP trunks.\n * @param trunks - The SIP trunks to be set.\n * @param options - The options parameters.\n */\n public async setTrunks(trunks: SipTrunk[], options: OperationOptions = {}): Promise<SipTrunk[]> {\n return tracingClient.withSpan(\"SipRoutingClient-setTrunks\", options, async (updatedOptions) => {\n const patch: SipConfigurationUpdate = { trunks: transformIntoRestModel(trunks) };\n let config = await this.client.sipRouting.get(updatedOptions);\n const storedFqdns = transformFromRestModel(config.trunks).map((trunk) => trunk.fqdn);\n const setFqdns = trunks.map((trunk) => trunk.fqdn);\n storedFqdns.forEach((storedFqdn) => {\n const shouldDeleteStoredTrunk = !setFqdns.find((value) => value === storedFqdn);\n if (shouldDeleteStoredTrunk) {\n patch.trunks![storedFqdn] = null;\n }\n });\n\n const isPatchNeeded = Object.keys(patch.trunks!).length > 0;\n if (isPatchNeeded) {\n const payload = {\n ...updatedOptions,\n ...patch,\n };\n config = await this.client.sipRouting.update(payload);\n }\n\n return transformFromRestModel(config.trunks);\n });\n }\n\n /**\n * Sets the SIP trunk.\n * @param trunk - The SIP trunk to be set.\n * @param options - The options parameters.\n */\n public async setTrunk(trunk: SipTrunk, options: OperationOptions = {}): Promise<SipTrunk> {\n return tracingClient.withSpan(\"SipRoutingClient-setTrunk\", options, async (updatedOptions) => {\n const patch: SipConfigurationUpdate = {\n trunks: transformIntoRestModel([trunk]),\n };\n const payload = {\n ...updatedOptions,\n ...patch,\n };\n const config = await this.client.sipRouting.update(payload);\n const storedTrunk = transformFromRestModel(config.trunks).find(\n (value: SipTrunk) => value.fqdn === trunk.fqdn,\n );\n if (storedTrunk) {\n return storedTrunk;\n }\n\n throw { code: \"NotFound\", message: \"Not Found\" } as SipRoutingError;\n });\n }\n\n /**\n * Sets the SIP trunk routes.\n * @param routes - The SIP trunk routes to be set.\n * @param options - The options parameters.\n */\n public async setRoutes(\n routes: SipTrunkRoute[],\n options: OperationOptions = {},\n ): Promise<SipTrunkRoute[]> {\n return tracingClient.withSpan(\"SipRoutingClient-setRoutes\", options, async (updatedOptions) => {\n const patch: SipConfigurationUpdate = {\n routes: routes,\n };\n const payload = {\n ...updatedOptions,\n ...patch,\n };\n const config = await this.client.sipRouting.update(payload);\n const storedRoutes = config.routes || (await this.getRoutesInternal(updatedOptions));\n return storedRoutes;\n });\n }\n\n /**\n * Deletes the SIP trunk.\n * @param fqdn - The trunk's FQDN.\n * @param options - The options parameters.\n */\n public async deleteTrunk(fqdn: string, options: OperationOptions = {}): Promise<void> {\n return tracingClient.withSpan(\n \"SipRoutingClient-deleteTrunk\",\n options,\n async (updatedOptions) => {\n const trunks: any = {};\n trunks[fqdn] = null;\n const patch: SipConfigurationUpdate = {\n trunks: trunks,\n };\n\n const payload = {\n ...updatedOptions,\n ...patch,\n };\n await this.client.sipRouting.update(payload);\n },\n );\n }\n\n private async getRoutesInternal(options: OperationOptions): Promise<SipTrunkRoute[]> {\n const config = await this.client.sipRouting.get(options);\n return config.routes || [];\n }\n\n private async getTrunksInternal(options: OperationOptions): Promise<SipTrunk[]> {\n const config = await this.client.sipRouting.get(options);\n return transformFromRestModel(config.trunks);\n }\n\n private async *listRoutesPagingAll(\n options?: ListSipRoutesOptions,\n ): AsyncIterableIterator<SipTrunkRoute> {\n for await (const page of this.listRoutesPagingPage(options)) {\n yield* page;\n }\n }\n\n private async *listTrunksPagingAll(\n options?: ListSipTrunksOptions,\n ): AsyncIterableIterator<SipTrunk> {\n for await (const page of this.listTrunksPagingPage(options)) {\n yield* page;\n }\n }\n\n private async *listTrunksPagingPage(\n options: ListSipTrunksOptions = {},\n ): AsyncIterableIterator<SipTrunk[]> {\n const apiResult = await this.getTrunksInternal(options as OperationOptions);\n yield apiResult;\n }\n\n private async *listRoutesPagingPage(\n options: ListSipRoutesOptions = {},\n ): AsyncIterableIterator<SipTrunkRoute[]> {\n const apiResult = await this.getRoutesInternal(options as OperationOptions);\n yield apiResult;\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/utils/constants.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,WAAW,EAAE,MAAuB,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/utils/constants.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,WAAW,EAAE,MAAgB,CAAC"}
@@ -1,4 +1,4 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
2
  // Licensed under the MIT License.
3
- export const SDK_VERSION = "1.5.0-beta.2";
3
+ export const SDK_VERSION = "1.5.0";
4
4
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/utils/constants.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,MAAM,CAAC,MAAM,WAAW,GAAW,cAAc,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nexport const SDK_VERSION: string = \"1.5.0-beta.2\";\n"]}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/utils/constants.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,MAAM,CAAC,MAAM,WAAW,GAAW,OAAO,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nexport const SDK_VERSION: string = \"1.5.0\";\n"]}
@@ -12,9 +12,8 @@ export function createPhoneNumbersPagingPolicy(host) {
12
12
  return {
13
13
  name: "phoneNumbersPagingPolicy",
14
14
  async sendRequest(request, next) {
15
- var _a;
16
15
  const response = await next(request);
17
- let nextLink = (_a = response === null || response === void 0 ? void 0 : response.parsedBody) === null || _a === void 0 ? void 0 : _a.nextLink;
16
+ let nextLink = response?.parsedBody?.nextLink;
18
17
  if (nextLink && !nextLink.startsWith(host)) {
19
18
  nextLink = host.endsWith("/") ? nextLink.substring(1) : nextLink;
20
19
  const absolutePath = `${host}${nextLink}`;
@@ -1 +1 @@
1
- {"version":3,"file":"customPipelinePolicies.js","sourceRoot":"","sources":["../../../src/utils/customPipelinePolicies.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAUlC;;;;;;;GAOG;AACH,MAAM,UAAU,8BAA8B,CAAC,IAAY;IACzD,OAAO;QACL,IAAI,EAAE,0BAA0B;QAChC,KAAK,CAAC,WAAW,CAAC,OAAwB,EAAE,IAAiB;;YAC3D,MAAM,QAAQ,GAA0B,MAAM,IAAI,CAAC,OAAO,CAAC,CAAC;YAC5D,IAAI,QAAQ,GAAW,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,UAAU,0CAAE,QAAQ,CAAC;YAEtD,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3C,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;gBACjE,MAAM,YAAY,GAAG,GAAG,IAAI,GAAG,QAAQ,EAAE,CAAC;gBAC1C,QAAQ,CAAC,UAAU,CAAC,QAAQ,GAAG,YAAY,CAAC;YAC9C,CAAC;YAED,OAAO,QAAQ,CAAC;QAClB,CAAC;KACF,CAAC;AACJ,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { FullOperationResponse } from \"@azure/core-client\";\nimport type {\n PipelinePolicy,\n PipelineRequest,\n PipelineResponse,\n SendRequest,\n} from \"@azure/core-rest-pipeline\";\n\n/**\n * Creates a `PipelinePolicy` that converts relative URL values in the `nextLink` property to absolute URLs.\n *\n * This is necessary because the Core V2 library does not support paging with relative links at time of writing.\n *\n * @param host - The base URL of the resource.\n * @returns the `PipelinePolicy` that addresses the issue.\n */\nexport function createPhoneNumbersPagingPolicy(host: string): PipelinePolicy {\n return {\n name: \"phoneNumbersPagingPolicy\",\n async sendRequest(request: PipelineRequest, next: SendRequest): Promise<PipelineResponse> {\n const response: FullOperationResponse = await next(request);\n let nextLink: string = response?.parsedBody?.nextLink;\n\n if (nextLink && !nextLink.startsWith(host)) {\n nextLink = host.endsWith(\"/\") ? nextLink.substring(1) : nextLink;\n const absolutePath = `${host}${nextLink}`;\n response.parsedBody.nextLink = absolutePath;\n }\n\n return response;\n },\n };\n}\n"]}
1
+ {"version":3,"file":"customPipelinePolicies.js","sourceRoot":"","sources":["../../../src/utils/customPipelinePolicies.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAUlC;;;;;;;GAOG;AACH,MAAM,UAAU,8BAA8B,CAAC,IAAY;IACzD,OAAO;QACL,IAAI,EAAE,0BAA0B;QAChC,KAAK,CAAC,WAAW,CAAC,OAAwB,EAAE,IAAiB;YAC3D,MAAM,QAAQ,GAA0B,MAAM,IAAI,CAAC,OAAO,CAAC,CAAC;YAC5D,IAAI,QAAQ,GAAW,QAAQ,EAAE,UAAU,EAAE,QAAQ,CAAC;YAEtD,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3C,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;gBACjE,MAAM,YAAY,GAAG,GAAG,IAAI,GAAG,QAAQ,EAAE,CAAC;gBAC1C,QAAQ,CAAC,UAAU,CAAC,QAAQ,GAAG,YAAY,CAAC;YAC9C,CAAC;YAED,OAAO,QAAQ,CAAC;QAClB,CAAC;KACF,CAAC;AACJ,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { FullOperationResponse } from \"@azure/core-client\";\nimport type {\n PipelinePolicy,\n PipelineRequest,\n PipelineResponse,\n SendRequest,\n} from \"@azure/core-rest-pipeline\";\n\n/**\n * Creates a `PipelinePolicy` that converts relative URL values in the `nextLink` property to absolute URLs.\n *\n * This is necessary because the Core V2 library does not support paging with relative links at time of writing.\n *\n * @param host - The base URL of the resource.\n * @returns the `PipelinePolicy` that addresses the issue.\n */\nexport function createPhoneNumbersPagingPolicy(host: string): PipelinePolicy {\n return {\n name: \"phoneNumbersPagingPolicy\",\n async sendRequest(request: PipelineRequest, next: SendRequest): Promise<PipelineResponse> {\n const response: FullOperationResponse = await next(request);\n let nextLink: string = response?.parsedBody?.nextLink;\n\n if (nextLink && !nextLink.startsWith(host)) {\n nextLink = host.endsWith(\"/\") ? nextLink.substring(1) : nextLink;\n const absolutePath = `${host}${nextLink}`;\n response.parsedBody.nextLink = absolutePath;\n }\n\n return response;\n },\n };\n}\n"]}
package/package.json CHANGED
@@ -1,32 +1,11 @@
1
1
  {
2
2
  "name": "@azure/communication-phone-numbers",
3
- "version": "1.5.0-beta.2",
3
+ "version": "1.5.0",
4
4
  "description": "SDK for Azure Communication service which facilitates phone number management.",
5
5
  "sdk-type": "client",
6
6
  "main": "./dist/commonjs/index.js",
7
7
  "module": "./dist/esm/index.js",
8
8
  "types": "./dist/commonjs/index.d.ts",
9
- "scripts": {
10
- "build": "npm run clean && dev-tool run build-package && dev-tool run extract-api",
11
- "build:clean": "rush update --recheck && rush rebuild && dev-tool run build",
12
- "build:samples": "echo skipped.",
13
- "check-format": "dev-tool run vendored prettier --list-different --config ../../../.prettierrc.json --ignore-path ../../../.prettierignore \"src/**/*.ts\" \"test/**/*.ts\" \"samples-dev/**/*.ts\" \"*.{js,json}\"",
14
- "clean": "dev-tool run vendored rimraf --glob dist dist-* temp types *.tgz *.log",
15
- "execute:samples": "dev-tool samples run samples-dev",
16
- "extract-api": "dev-tool run build-package && dev-tool run extract-api",
17
- "format": "dev-tool run vendored prettier --write --config ../../../.prettierrc.json --ignore-path ../../../.prettierignore \"src/**/*.ts\" \"test/**/*.ts\" \"samples-dev/**/*.ts\" \"*.{js,json}\"",
18
- "generate:client": "autorest --typescript ./swagger/README.md",
19
- "generate:sip-client": "autorest --typescript ./swagger/README-SipRouting.md",
20
- "lint": "eslint package.json src test",
21
- "lint:fix": "eslint package.json src test --fix --fix-type [problem,suggestion]",
22
- "pack": "npm pack 2>&1",
23
- "test": "npm run test:node && npm run test:browser",
24
- "test:browser": "npm run clean && dev-tool run build-package && dev-tool run build-test && dev-tool run test:vitest --browser",
25
- "test:node": "dev-tool run test:vitest",
26
- "test:node:esm": "dev-tool run test:vitest --esm",
27
- "test:watch": "npm run test -- --watch --reporter min",
28
- "update-snippets": "dev-tool run update-snippets"
29
- },
30
9
  "files": [
31
10
  "dist/",
32
11
  "README.md",
@@ -64,20 +43,20 @@
64
43
  "tslib": "^2.8.1"
65
44
  },
66
45
  "devDependencies": {
67
- "@azure-tools/test-credential": "^2.0.0",
68
- "@azure-tools/test-recorder": "^4.1.0",
69
- "@azure-tools/test-utils-vitest": "^1.0.0",
70
- "@azure/dev-tool": "^1.0.0",
71
- "@azure/eslint-plugin-azure-sdk": "^3.0.0",
72
- "@azure/identity": "^4.5.0",
73
- "@types/node": "^20.0.0",
74
- "@vitest/browser": "^3.0.9",
75
- "@vitest/coverage-istanbul": "^3.0.9",
46
+ "@azure/identity": "4.11.1",
47
+ "@types/node": "^20.19.0",
48
+ "@vitest/browser": "^3.2.3",
49
+ "@vitest/coverage-istanbul": "^3.2.3",
76
50
  "dotenv": "^16.0.0",
77
- "eslint": "^9.9.0",
78
- "playwright": "^1.48.2",
79
- "typescript": "~5.8.2",
80
- "vitest": "^3.0.9"
51
+ "eslint": "^9.33.0",
52
+ "playwright": "^1.50.1",
53
+ "typescript": "~5.8.3",
54
+ "vitest": "^3.2.3",
55
+ "@azure-tools/test-credential": "^2.1.2",
56
+ "@azure-tools/test-utils-vitest": "^2.0.1",
57
+ "@azure-tools/test-recorder": "^4.1.1",
58
+ "@azure/dev-tool": "^1.0.0",
59
+ "@azure/eslint-plugin-azure-sdk": "^3.0.0"
81
60
  },
82
61
  "//metadata": {
83
62
  "constantPaths": [
@@ -137,7 +116,7 @@
137
116
  "react-native"
138
117
  ],
139
118
  "selfLink": false,
140
- "project": "./tsconfig.src.json"
119
+ "project": "../../../tsconfig.src.build.json"
141
120
  },
142
121
  "browser": "./dist/browser/index.js",
143
122
  "exports": {
@@ -160,5 +139,24 @@
160
139
  "default": "./dist/commonjs/index.js"
161
140
  }
162
141
  }
142
+ },
143
+ "scripts": {
144
+ "build": "npm run clean && dev-tool run build-package && dev-tool run extract-api",
145
+ "build:clean": "pnpm install && pnpm build",
146
+ "build:samples": "tsc -p tsconfig.samples.json",
147
+ "check-format": "dev-tool run vendored prettier --list-different --config ../../../.prettierrc.json --ignore-path ../../../.prettierignore \"src/**/*.ts\" \"test/**/*.ts\" \"samples-dev/**/*.ts\" \"*.{js,json}\"",
148
+ "clean": "dev-tool run vendored rimraf --glob dist dist-* temp types *.tgz *.log",
149
+ "execute:samples": "dev-tool samples run samples-dev",
150
+ "extract-api": "dev-tool run build-package && dev-tool run extract-api",
151
+ "format": "dev-tool run vendored prettier --write --config ../../../.prettierrc.json --ignore-path ../../../.prettierignore \"src/**/*.ts\" \"test/**/*.ts\" \"samples-dev/**/*.ts\" \"*.{js,json}\"",
152
+ "generate:client": "autorest --typescript ./swagger/README.md",
153
+ "lint": "eslint package.json src test",
154
+ "lint:fix": "eslint package.json src test --fix --fix-type [problem,suggestion]",
155
+ "pack": "pnpm pack 2>&1",
156
+ "test": "npm run test:node && npm run test:browser",
157
+ "test:browser": "npm run clean && dev-tool run build-package && dev-tool run build-test && dev-tool run test:vitest --browser",
158
+ "test:node": "dev-tool run build-test --no-browser-test && dev-tool run test:vitest",
159
+ "test:watch": "npm run test -- --watch --reporter min",
160
+ "update-snippets": "dev-tool run update-snippets"
163
161
  }
164
- }
162
+ }