@azure/core-client 1.8.1-alpha.20240202.3 → 1.8.1-alpha.20240223.2

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 (281) hide show
  1. package/README.md +0 -4
  2. package/dist/browser/authorizeRequestOnClaimChallenge.d.ts +43 -0
  3. package/dist/browser/authorizeRequestOnClaimChallenge.d.ts.map +1 -0
  4. package/{dist-esm/src → dist/browser}/authorizeRequestOnClaimChallenge.js +3 -3
  5. package/dist/browser/authorizeRequestOnClaimChallenge.js.map +1 -0
  6. package/dist/browser/authorizeRequestOnTenantChallenge.d.ts +8 -0
  7. package/dist/browser/authorizeRequestOnTenantChallenge.d.ts.map +1 -0
  8. package/{dist-esm/src → dist/browser}/authorizeRequestOnTenantChallenge.js +5 -2
  9. package/dist/browser/authorizeRequestOnTenantChallenge.js.map +1 -0
  10. package/dist/browser/base64-browser.d.mts.map +1 -0
  11. package/dist/browser/base64-browser.mjs.map +1 -0
  12. package/dist/browser/base64.d.ts +29 -0
  13. package/{dist-esm/src/base64.browser.js → dist/browser/base64.js} +5 -1
  14. package/dist/browser/deserializationPolicy.d.ts +45 -0
  15. package/dist/browser/deserializationPolicy.d.ts.map +1 -0
  16. package/{dist-esm/src → dist/browser}/deserializationPolicy.js +16 -19
  17. package/dist/browser/deserializationPolicy.js.map +1 -0
  18. package/dist/browser/httpClientCache.d.ts +3 -0
  19. package/dist/browser/httpClientCache.d.ts.map +1 -0
  20. package/dist/browser/index.d.ts +9 -0
  21. package/dist/browser/index.d.ts.map +1 -0
  22. package/dist/browser/index.js +11 -0
  23. package/dist/browser/index.js.map +1 -0
  24. package/dist/browser/interfaceHelpers.d.ts +14 -0
  25. package/dist/browser/interfaceHelpers.d.ts.map +1 -0
  26. package/{dist-esm/src → dist/browser}/interfaceHelpers.js +1 -1
  27. package/dist/browser/interfaceHelpers.js.map +1 -0
  28. package/dist/browser/interfaces.d.ts +664 -0
  29. package/dist/browser/interfaces.d.ts.map +1 -0
  30. package/dist/browser/log.d.ts +2 -0
  31. package/dist/browser/log.d.ts.map +1 -0
  32. package/dist/browser/operationHelpers.d.ts +14 -0
  33. package/dist/browser/operationHelpers.d.ts.map +1 -0
  34. package/dist/browser/operationHelpers.js.map +1 -0
  35. package/dist/browser/package.json +3 -0
  36. package/dist/browser/pipeline.d.ts +34 -0
  37. package/dist/browser/pipeline.d.ts.map +1 -0
  38. package/{dist-esm/src → dist/browser}/pipeline.js +3 -3
  39. package/dist/browser/pipeline.js.map +1 -0
  40. package/dist/browser/serializationPolicy.d.ts +33 -0
  41. package/dist/browser/serializationPolicy.d.ts.map +1 -0
  42. package/{dist-esm/src → dist/browser}/serializationPolicy.js +12 -14
  43. package/dist/browser/serializationPolicy.js.map +1 -0
  44. package/dist/browser/serializer.d.ts +31 -0
  45. package/dist/browser/serializer.d.ts.map +1 -0
  46. package/{dist-esm/src → dist/browser}/serializer.js +25 -26
  47. package/dist/browser/serializer.js.map +1 -0
  48. package/dist/browser/serviceClient.d.ts +82 -0
  49. package/dist/browser/serviceClient.d.ts.map +1 -0
  50. package/{dist-esm/src → dist/browser}/serviceClient.js +38 -14
  51. package/dist/browser/serviceClient.js.map +1 -0
  52. package/dist/browser/urlHelpers.d.ts +7 -0
  53. package/dist/browser/urlHelpers.d.ts.map +1 -0
  54. package/{dist-esm/src → dist/browser}/urlHelpers.js +4 -6
  55. package/dist/browser/urlHelpers.js.map +1 -0
  56. package/dist/browser/utils.d.ts +37 -0
  57. package/dist/browser/utils.d.ts.map +1 -0
  58. package/{dist-esm/src → dist/browser}/utils.js +23 -10
  59. package/dist/browser/utils.js.map +1 -0
  60. package/dist/commonjs/authorizeRequestOnClaimChallenge.d.ts +43 -0
  61. package/dist/commonjs/authorizeRequestOnClaimChallenge.d.ts.map +1 -0
  62. package/dist/commonjs/authorizeRequestOnClaimChallenge.js +74 -0
  63. package/dist/commonjs/authorizeRequestOnClaimChallenge.js.map +1 -0
  64. package/dist/commonjs/authorizeRequestOnTenantChallenge.d.ts +8 -0
  65. package/dist/commonjs/authorizeRequestOnTenantChallenge.d.ts.map +1 -0
  66. package/dist/commonjs/authorizeRequestOnTenantChallenge.js +106 -0
  67. package/dist/commonjs/authorizeRequestOnTenantChallenge.js.map +1 -0
  68. package/dist/commonjs/base64.d.ts +25 -0
  69. package/dist/commonjs/base64.d.ts.map +1 -0
  70. package/dist/commonjs/base64.js +43 -0
  71. package/dist/commonjs/base64.js.map +1 -0
  72. package/dist/commonjs/deserializationPolicy.d.ts +45 -0
  73. package/dist/commonjs/deserializationPolicy.d.ts.map +1 -0
  74. package/dist/commonjs/deserializationPolicy.js +232 -0
  75. package/dist/commonjs/deserializationPolicy.js.map +1 -0
  76. package/dist/commonjs/httpClientCache.d.ts +3 -0
  77. package/dist/commonjs/httpClientCache.d.ts.map +1 -0
  78. package/dist/commonjs/httpClientCache.js +15 -0
  79. package/dist/commonjs/httpClientCache.js.map +1 -0
  80. package/dist/commonjs/index.d.ts +9 -0
  81. package/dist/commonjs/index.d.ts.map +1 -0
  82. package/dist/commonjs/index.js +26 -0
  83. package/dist/commonjs/index.js.map +1 -0
  84. package/dist/commonjs/interfaceHelpers.d.ts +14 -0
  85. package/dist/commonjs/interfaceHelpers.d.ts.map +1 -0
  86. package/dist/commonjs/interfaceHelpers.js +44 -0
  87. package/dist/commonjs/interfaceHelpers.js.map +1 -0
  88. package/dist/commonjs/interfaces.d.ts +664 -0
  89. package/dist/commonjs/interfaces.d.ts.map +1 -0
  90. package/dist/commonjs/interfaces.js +14 -0
  91. package/dist/commonjs/interfaces.js.map +1 -0
  92. package/dist/commonjs/log.d.ts +2 -0
  93. package/dist/commonjs/log.d.ts.map +1 -0
  94. package/dist/commonjs/log.js +8 -0
  95. package/dist/commonjs/log.js.map +1 -0
  96. package/dist/commonjs/operationHelpers.d.ts +14 -0
  97. package/dist/commonjs/operationHelpers.d.ts.map +1 -0
  98. package/dist/commonjs/operationHelpers.js +99 -0
  99. package/dist/commonjs/operationHelpers.js.map +1 -0
  100. package/dist/commonjs/package.json +3 -0
  101. package/dist/commonjs/pipeline.d.ts +34 -0
  102. package/dist/commonjs/pipeline.d.ts.map +1 -0
  103. package/dist/commonjs/pipeline.js +30 -0
  104. package/dist/commonjs/pipeline.js.map +1 -0
  105. package/dist/commonjs/serializationPolicy.d.ts +33 -0
  106. package/dist/commonjs/serializationPolicy.d.ts.map +1 -0
  107. package/dist/commonjs/serializationPolicy.js +157 -0
  108. package/dist/commonjs/serializationPolicy.js.map +1 -0
  109. package/dist/commonjs/serializer.d.ts +31 -0
  110. package/dist/commonjs/serializer.d.ts.map +1 -0
  111. package/dist/commonjs/serializer.js +926 -0
  112. package/dist/commonjs/serializer.js.map +1 -0
  113. package/dist/commonjs/serviceClient.d.ts +82 -0
  114. package/dist/commonjs/serviceClient.d.ts.map +1 -0
  115. package/dist/commonjs/serviceClient.js +177 -0
  116. package/dist/commonjs/serviceClient.js.map +1 -0
  117. package/dist/commonjs/tsdoc-metadata.json +11 -0
  118. package/dist/commonjs/urlHelpers.d.ts +7 -0
  119. package/dist/commonjs/urlHelpers.d.ts.map +1 -0
  120. package/dist/commonjs/urlHelpers.js +238 -0
  121. package/dist/commonjs/urlHelpers.js.map +1 -0
  122. package/dist/commonjs/utils.d.ts +37 -0
  123. package/dist/commonjs/utils.d.ts.map +1 -0
  124. package/dist/commonjs/utils.js +135 -0
  125. package/dist/commonjs/utils.js.map +1 -0
  126. package/dist/esm/authorizeRequestOnClaimChallenge.d.ts +43 -0
  127. package/dist/esm/authorizeRequestOnClaimChallenge.d.ts.map +1 -0
  128. package/dist/esm/authorizeRequestOnClaimChallenge.js +69 -0
  129. package/dist/esm/authorizeRequestOnClaimChallenge.js.map +1 -0
  130. package/dist/esm/authorizeRequestOnTenantChallenge.d.ts +8 -0
  131. package/dist/esm/authorizeRequestOnTenantChallenge.d.ts.map +1 -0
  132. package/dist/esm/authorizeRequestOnTenantChallenge.js +102 -0
  133. package/dist/esm/authorizeRequestOnTenantChallenge.js.map +1 -0
  134. package/dist/esm/base64.d.ts +25 -0
  135. package/dist/esm/base64.d.ts.map +1 -0
  136. package/{dist-esm/src → dist/esm}/base64.js +0 -2
  137. package/dist/esm/base64.js.map +1 -0
  138. package/dist/esm/deserializationPolicy.d.ts +45 -0
  139. package/dist/esm/deserializationPolicy.d.ts.map +1 -0
  140. package/dist/esm/deserializationPolicy.js +228 -0
  141. package/dist/esm/deserializationPolicy.js.map +1 -0
  142. package/dist/esm/httpClientCache.d.ts +3 -0
  143. package/dist/esm/httpClientCache.d.ts.map +1 -0
  144. package/dist/esm/httpClientCache.js +11 -0
  145. package/dist/esm/httpClientCache.js.map +1 -0
  146. package/dist/esm/index.d.ts +9 -0
  147. package/dist/esm/index.d.ts.map +1 -0
  148. package/dist/esm/index.js +11 -0
  149. package/dist/esm/index.js.map +1 -0
  150. package/dist/esm/interfaceHelpers.d.ts +14 -0
  151. package/dist/esm/interfaceHelpers.d.ts.map +1 -0
  152. package/dist/esm/interfaceHelpers.js +39 -0
  153. package/dist/esm/interfaceHelpers.js.map +1 -0
  154. package/dist/esm/interfaces.d.ts +664 -0
  155. package/dist/esm/interfaces.d.ts.map +1 -0
  156. package/dist/esm/interfaces.js +11 -0
  157. package/dist/esm/interfaces.js.map +1 -0
  158. package/dist/esm/log.d.ts +2 -0
  159. package/dist/esm/log.d.ts.map +1 -0
  160. package/dist/esm/log.js +5 -0
  161. package/dist/esm/log.js.map +1 -0
  162. package/dist/esm/operationHelpers.d.ts +14 -0
  163. package/dist/esm/operationHelpers.d.ts.map +1 -0
  164. package/dist/esm/operationHelpers.js +94 -0
  165. package/dist/esm/operationHelpers.js.map +1 -0
  166. package/dist/esm/package.json +3 -0
  167. package/dist/esm/pipeline.d.ts +34 -0
  168. package/dist/esm/pipeline.d.ts.map +1 -0
  169. package/dist/esm/pipeline.js +26 -0
  170. package/dist/esm/pipeline.js.map +1 -0
  171. package/dist/esm/serializationPolicy.d.ts +33 -0
  172. package/dist/esm/serializationPolicy.d.ts.map +1 -0
  173. package/dist/esm/serializationPolicy.js +151 -0
  174. package/dist/esm/serializationPolicy.js.map +1 -0
  175. package/dist/esm/serializer.d.ts +31 -0
  176. package/dist/esm/serializer.d.ts.map +1 -0
  177. package/dist/esm/serializer.js +921 -0
  178. package/dist/esm/serializer.js.map +1 -0
  179. package/dist/esm/serviceClient.d.ts +82 -0
  180. package/dist/esm/serviceClient.d.ts.map +1 -0
  181. package/dist/esm/serviceClient.js +173 -0
  182. package/dist/esm/serviceClient.js.map +1 -0
  183. package/dist/esm/urlHelpers.d.ts +7 -0
  184. package/dist/esm/urlHelpers.d.ts.map +1 -0
  185. package/dist/esm/urlHelpers.js +233 -0
  186. package/dist/esm/urlHelpers.js.map +1 -0
  187. package/dist/esm/utils.d.ts +37 -0
  188. package/dist/esm/utils.d.ts.map +1 -0
  189. package/dist/esm/utils.js +128 -0
  190. package/dist/esm/utils.js.map +1 -0
  191. package/dist/react-native/authorizeRequestOnClaimChallenge.d.ts +43 -0
  192. package/dist/react-native/authorizeRequestOnClaimChallenge.d.ts.map +1 -0
  193. package/dist/react-native/authorizeRequestOnClaimChallenge.js +69 -0
  194. package/dist/react-native/authorizeRequestOnClaimChallenge.js.map +1 -0
  195. package/dist/react-native/authorizeRequestOnTenantChallenge.d.ts +8 -0
  196. package/dist/react-native/authorizeRequestOnTenantChallenge.d.ts.map +1 -0
  197. package/dist/react-native/authorizeRequestOnTenantChallenge.js +102 -0
  198. package/dist/react-native/authorizeRequestOnTenantChallenge.js.map +1 -0
  199. package/dist/react-native/base64.d.ts +25 -0
  200. package/dist/react-native/base64.d.ts.map +1 -0
  201. package/dist/react-native/base64.js +36 -0
  202. package/dist/react-native/base64.js.map +1 -0
  203. package/dist/react-native/deserializationPolicy.d.ts +45 -0
  204. package/dist/react-native/deserializationPolicy.d.ts.map +1 -0
  205. package/dist/react-native/deserializationPolicy.js +228 -0
  206. package/dist/react-native/deserializationPolicy.js.map +1 -0
  207. package/dist/react-native/httpClientCache.d.ts +3 -0
  208. package/dist/react-native/httpClientCache.d.ts.map +1 -0
  209. package/dist/react-native/httpClientCache.js +11 -0
  210. package/dist/react-native/httpClientCache.js.map +1 -0
  211. package/dist/react-native/index.d.ts +9 -0
  212. package/dist/react-native/index.d.ts.map +1 -0
  213. package/dist/react-native/index.js +11 -0
  214. package/dist/react-native/index.js.map +1 -0
  215. package/dist/react-native/interfaceHelpers.d.ts +14 -0
  216. package/dist/react-native/interfaceHelpers.d.ts.map +1 -0
  217. package/dist/react-native/interfaceHelpers.js +39 -0
  218. package/dist/react-native/interfaceHelpers.js.map +1 -0
  219. package/dist/react-native/interfaces.d.ts +664 -0
  220. package/dist/react-native/interfaces.d.ts.map +1 -0
  221. package/dist/react-native/interfaces.js +11 -0
  222. package/dist/react-native/interfaces.js.map +1 -0
  223. package/dist/react-native/log.d.ts +2 -0
  224. package/dist/react-native/log.d.ts.map +1 -0
  225. package/dist/react-native/log.js +5 -0
  226. package/dist/react-native/log.js.map +1 -0
  227. package/dist/react-native/operationHelpers.d.ts +14 -0
  228. package/dist/react-native/operationHelpers.d.ts.map +1 -0
  229. package/dist/react-native/operationHelpers.js +94 -0
  230. package/dist/react-native/operationHelpers.js.map +1 -0
  231. package/dist/react-native/package.json +3 -0
  232. package/dist/react-native/pipeline.d.ts +34 -0
  233. package/dist/react-native/pipeline.d.ts.map +1 -0
  234. package/dist/react-native/pipeline.js +26 -0
  235. package/dist/react-native/pipeline.js.map +1 -0
  236. package/dist/react-native/serializationPolicy.d.ts +33 -0
  237. package/dist/react-native/serializationPolicy.d.ts.map +1 -0
  238. package/dist/react-native/serializationPolicy.js +151 -0
  239. package/dist/react-native/serializationPolicy.js.map +1 -0
  240. package/dist/react-native/serializer.d.ts +31 -0
  241. package/dist/react-native/serializer.d.ts.map +1 -0
  242. package/dist/react-native/serializer.js +921 -0
  243. package/dist/react-native/serializer.js.map +1 -0
  244. package/dist/react-native/serviceClient.d.ts +82 -0
  245. package/dist/react-native/serviceClient.d.ts.map +1 -0
  246. package/dist/react-native/serviceClient.js +173 -0
  247. package/dist/react-native/serviceClient.js.map +1 -0
  248. package/dist/react-native/urlHelpers.d.ts +7 -0
  249. package/dist/react-native/urlHelpers.d.ts.map +1 -0
  250. package/dist/react-native/urlHelpers.js +233 -0
  251. package/dist/react-native/urlHelpers.js.map +1 -0
  252. package/dist/react-native/utils.d.ts +37 -0
  253. package/dist/react-native/utils.d.ts.map +1 -0
  254. package/dist/react-native/utils.js +128 -0
  255. package/dist/react-native/utils.js.map +1 -0
  256. package/package.json +74 -61
  257. package/dist/index.js +0 -2185
  258. package/dist/index.js.map +0 -1
  259. package/dist-esm/src/authorizeRequestOnClaimChallenge.js.map +0 -1
  260. package/dist-esm/src/authorizeRequestOnTenantChallenge.js.map +0 -1
  261. package/dist-esm/src/base64.browser.js.map +0 -1
  262. package/dist-esm/src/base64.js.map +0 -1
  263. package/dist-esm/src/deserializationPolicy.js.map +0 -1
  264. package/dist-esm/src/index.js +0 -11
  265. package/dist-esm/src/index.js.map +0 -1
  266. package/dist-esm/src/interfaceHelpers.js.map +0 -1
  267. package/dist-esm/src/operationHelpers.js.map +0 -1
  268. package/dist-esm/src/pipeline.js.map +0 -1
  269. package/dist-esm/src/serializationPolicy.js.map +0 -1
  270. package/dist-esm/src/serializer.js.map +0 -1
  271. package/dist-esm/src/serviceClient.js.map +0 -1
  272. package/dist-esm/src/urlHelpers.js.map +0 -1
  273. package/dist-esm/src/utils.js.map +0 -1
  274. /package/{dist-esm/src → dist/browser}/httpClientCache.js +0 -0
  275. /package/{dist-esm/src → dist/browser}/httpClientCache.js.map +0 -0
  276. /package/{dist-esm/src → dist/browser}/interfaces.js +0 -0
  277. /package/{dist-esm/src → dist/browser}/interfaces.js.map +0 -0
  278. /package/{dist-esm/src → dist/browser}/log.js +0 -0
  279. /package/{dist-esm/src → dist/browser}/log.js.map +0 -0
  280. /package/{dist-esm/src → dist/browser}/operationHelpers.js +0 -0
  281. /package/{types/latest → dist}/core-client.d.ts +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operationHelpers.d.ts","sourceRoot":"","sources":["../../src/operationHelpers.ts"],"names":[],"mappings":"AAGA,OAAO,EAGL,kBAAkB,EAClB,kBAAkB,EAClB,gBAAgB,EAChB,oBAAoB,EAErB,MAAM,iBAAiB,CAAC;AAEzB;;;;;;;GAOG;AACH,wBAAgB,sCAAsC,CACpD,kBAAkB,EAAE,kBAAkB,EACtC,SAAS,EAAE,kBAAkB,EAC7B,cAAc,CAAC,EAAE;IAAE,CAAC,aAAa,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,GAChD,GAAG,CAsDL;AAsCD,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,gBAAgB,GAAG,oBAAoB,CAWvF"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operationHelpers.js","sourceRoot":"","sources":["../../src/operationHelpers.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport {\n CompositeMapper,\n Mapper,\n OperationArguments,\n OperationParameter,\n OperationRequest,\n OperationRequestInfo,\n ParameterPath,\n} from \"./interfaces.js\";\n\n/**\n * @internal\n * Retrieves the value to use for a given operation argument\n * @param operationArguments - The arguments passed from the generated client\n * @param parameter - The parameter description\n * @param fallbackObject - If something isn't found in the arguments bag, look here.\n * Generally used to look at the service client properties.\n */\nexport function getOperationArgumentValueFromParameter(\n operationArguments: OperationArguments,\n parameter: OperationParameter,\n fallbackObject?: { [parameterName: string]: any },\n): any {\n let parameterPath = parameter.parameterPath;\n const parameterMapper = parameter.mapper;\n let value: any;\n if (typeof parameterPath === \"string\") {\n parameterPath = [parameterPath];\n }\n if (Array.isArray(parameterPath)) {\n if (parameterPath.length > 0) {\n if (parameterMapper.isConstant) {\n value = parameterMapper.defaultValue;\n } else {\n let propertySearchResult = getPropertyFromParameterPath(operationArguments, parameterPath);\n\n if (!propertySearchResult.propertyFound && fallbackObject) {\n propertySearchResult = getPropertyFromParameterPath(fallbackObject, parameterPath);\n }\n\n let useDefaultValue = false;\n if (!propertySearchResult.propertyFound) {\n useDefaultValue =\n parameterMapper.required ||\n (parameterPath[0] === \"options\" && parameterPath.length === 2);\n }\n value = useDefaultValue ? parameterMapper.defaultValue : propertySearchResult.propertyValue;\n }\n }\n } else {\n if (parameterMapper.required) {\n value = {};\n }\n\n for (const propertyName in parameterPath) {\n const propertyMapper: Mapper = (parameterMapper as CompositeMapper).type.modelProperties![\n propertyName\n ];\n const propertyPath: ParameterPath = parameterPath[propertyName];\n const propertyValue: any = getOperationArgumentValueFromParameter(\n operationArguments,\n {\n parameterPath: propertyPath,\n mapper: propertyMapper,\n },\n fallbackObject,\n );\n if (propertyValue !== undefined) {\n if (!value) {\n value = {};\n }\n value[propertyName] = propertyValue;\n }\n }\n }\n return value;\n}\n\ninterface PropertySearchResult {\n propertyValue?: any;\n propertyFound: boolean;\n}\n\nfunction getPropertyFromParameterPath(\n parent: { [parameterName: string]: any },\n parameterPath: string[],\n): PropertySearchResult {\n const result: PropertySearchResult = { propertyFound: false };\n let i = 0;\n for (; i < parameterPath.length; ++i) {\n const parameterPathPart: string = parameterPath[i];\n // Make sure to check inherited properties too, so don't use hasOwnProperty().\n if (parent && parameterPathPart in parent) {\n parent = parent[parameterPathPart];\n } else {\n break;\n }\n }\n if (i === parameterPath.length) {\n result.propertyValue = parent;\n result.propertyFound = true;\n }\n return result;\n}\n\nconst operationRequestMap = new WeakMap<OperationRequest, OperationRequestInfo>();\nconst originalRequestSymbol = Symbol.for(\"@azure/core-client original request\");\n\nfunction hasOriginalRequest(\n request: OperationRequest,\n): request is OperationRequest & { [originalRequestSymbol]: OperationRequest } {\n return originalRequestSymbol in request;\n}\n\nexport function getOperationRequestInfo(request: OperationRequest): OperationRequestInfo {\n if (hasOriginalRequest(request)) {\n return getOperationRequestInfo(request[originalRequestSymbol]);\n }\n let info = operationRequestMap.get(request);\n\n if (!info) {\n info = {};\n operationRequestMap.set(request, info);\n }\n return info;\n}\n"]}
@@ -0,0 +1,3 @@
1
+ {
2
+ "type": "module"
3
+ }
@@ -0,0 +1,34 @@
1
+ import { DeserializationPolicyOptions } from "./deserializationPolicy.js";
2
+ import { InternalPipelineOptions, Pipeline } from "@azure/core-rest-pipeline";
3
+ import { SerializationPolicyOptions } from "./serializationPolicy.js";
4
+ import { TokenCredential } from "@azure/core-auth";
5
+ /**
6
+ * Options for creating a Pipeline to use with ServiceClient.
7
+ * Mostly for customizing the auth policy (if using token auth) or
8
+ * the deserialization options when using XML.
9
+ */
10
+ export interface InternalClientPipelineOptions extends InternalPipelineOptions {
11
+ /**
12
+ * Options to customize bearerTokenAuthenticationPolicy.
13
+ */
14
+ credentialOptions?: {
15
+ credentialScopes: string | string[];
16
+ credential: TokenCredential;
17
+ };
18
+ /**
19
+ * Options to customize deserializationPolicy.
20
+ */
21
+ deserializationOptions?: DeserializationPolicyOptions;
22
+ /**
23
+ * Options to customize serializationPolicy.
24
+ */
25
+ serializationOptions?: SerializationPolicyOptions;
26
+ }
27
+ /**
28
+ * Creates a new Pipeline for use with a Service Client.
29
+ * Adds in deserializationPolicy by default.
30
+ * Also adds in bearerTokenAuthenticationPolicy if passed a TokenCredential.
31
+ * @param options - Options to customize the created pipeline.
32
+ */
33
+ export declare function createClientPipeline(options?: InternalClientPipelineOptions): Pipeline;
34
+ //# sourceMappingURL=pipeline.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../../src/pipeline.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,4BAA4B,EAAyB,MAAM,4BAA4B,CAAC;AACjG,OAAO,EACL,uBAAuB,EACvB,QAAQ,EAGT,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,0BAA0B,EAAuB,MAAM,0BAA0B,CAAC;AAC3F,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEnD;;;;GAIG;AACH,MAAM,WAAW,6BAA8B,SAAQ,uBAAuB;IAC5E;;OAEG;IACH,iBAAiB,CAAC,EAAE;QAAE,gBAAgB,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;QAAC,UAAU,EAAE,eAAe,CAAA;KAAE,CAAC;IACzF;;OAEG;IACH,sBAAsB,CAAC,EAAE,4BAA4B,CAAC;IACtD;;OAEG;IACH,oBAAoB,CAAC,EAAE,0BAA0B,CAAC;CACnD;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,GAAE,6BAAkC,GAAG,QAAQ,CAiB1F"}
@@ -1,8 +1,8 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
2
  // Licensed under the MIT license.
3
- import { deserializationPolicy } from "./deserializationPolicy";
3
+ import { deserializationPolicy } from "./deserializationPolicy.js";
4
4
  import { bearerTokenAuthenticationPolicy, createPipelineFromOptions, } from "@azure/core-rest-pipeline";
5
- import { serializationPolicy } from "./serializationPolicy";
5
+ import { serializationPolicy } from "./serializationPolicy.js";
6
6
  /**
7
7
  * Creates a new Pipeline for use with a Service Client.
8
8
  * Adds in deserializationPolicy by default.
@@ -10,7 +10,7 @@ import { serializationPolicy } from "./serializationPolicy";
10
10
  * @param options - Options to customize the created pipeline.
11
11
  */
12
12
  export function createClientPipeline(options = {}) {
13
- const pipeline = createPipelineFromOptions(options !== null && options !== void 0 ? options : {});
13
+ const pipeline = createPipelineFromOptions(options ?? {});
14
14
  if (options.credentialOptions) {
15
15
  pipeline.addPolicy(bearerTokenAuthenticationPolicy({
16
16
  credential: options.credentialOptions.credential,
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../../src/pipeline.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAgC,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACjG,OAAO,EAGL,+BAA+B,EAC/B,yBAAyB,GAC1B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAA8B,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAuB3F;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAAC,UAAyC,EAAE;IAC9E,MAAM,QAAQ,GAAG,yBAAyB,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;IAC1D,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;QAC9B,QAAQ,CAAC,SAAS,CAChB,+BAA+B,CAAC;YAC9B,UAAU,EAAE,OAAO,CAAC,iBAAiB,CAAC,UAAU;YAChD,MAAM,EAAE,OAAO,CAAC,iBAAiB,CAAC,gBAAgB;SACnD,CAAC,CACH,CAAC;IACJ,CAAC;IAED,QAAQ,CAAC,SAAS,CAAC,mBAAmB,CAAC,OAAO,CAAC,oBAAoB,CAAC,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;IAC9F,QAAQ,CAAC,SAAS,CAAC,qBAAqB,CAAC,OAAO,CAAC,sBAAsB,CAAC,EAAE;QACxE,KAAK,EAAE,aAAa;KACrB,CAAC,CAAC;IAEH,OAAO,QAAQ,CAAC;AAClB,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { DeserializationPolicyOptions, deserializationPolicy } from \"./deserializationPolicy.js\";\nimport {\n InternalPipelineOptions,\n Pipeline,\n bearerTokenAuthenticationPolicy,\n createPipelineFromOptions,\n} from \"@azure/core-rest-pipeline\";\nimport { SerializationPolicyOptions, serializationPolicy } from \"./serializationPolicy.js\";\nimport { TokenCredential } from \"@azure/core-auth\";\n\n/**\n * Options for creating a Pipeline to use with ServiceClient.\n * Mostly for customizing the auth policy (if using token auth) or\n * the deserialization options when using XML.\n */\nexport interface InternalClientPipelineOptions extends InternalPipelineOptions {\n /**\n * Options to customize bearerTokenAuthenticationPolicy.\n */\n credentialOptions?: { credentialScopes: string | string[]; credential: TokenCredential };\n /**\n * Options to customize deserializationPolicy.\n */\n deserializationOptions?: DeserializationPolicyOptions;\n /**\n * Options to customize serializationPolicy.\n */\n serializationOptions?: SerializationPolicyOptions;\n}\n\n/**\n * Creates a new Pipeline for use with a Service Client.\n * Adds in deserializationPolicy by default.\n * Also adds in bearerTokenAuthenticationPolicy if passed a TokenCredential.\n * @param options - Options to customize the created pipeline.\n */\nexport function createClientPipeline(options: InternalClientPipelineOptions = {}): Pipeline {\n const pipeline = createPipelineFromOptions(options ?? {});\n if (options.credentialOptions) {\n pipeline.addPolicy(\n bearerTokenAuthenticationPolicy({\n credential: options.credentialOptions.credential,\n scopes: options.credentialOptions.credentialScopes,\n }),\n );\n }\n\n pipeline.addPolicy(serializationPolicy(options.serializationOptions), { phase: \"Serialize\" });\n pipeline.addPolicy(deserializationPolicy(options.deserializationOptions), {\n phase: \"Deserialize\",\n });\n\n return pipeline;\n}\n"]}
@@ -0,0 +1,33 @@
1
+ import { OperationArguments, OperationRequest, OperationSpec, SerializerOptions, XmlOptions } from "./interfaces.js";
2
+ import { PipelinePolicy } from "@azure/core-rest-pipeline";
3
+ /**
4
+ * The programmatic identifier of the serializationPolicy.
5
+ */
6
+ export declare const serializationPolicyName = "serializationPolicy";
7
+ /**
8
+ * Options to configure API request serialization.
9
+ */
10
+ export interface SerializationPolicyOptions {
11
+ /**
12
+ * A function that is able to write XML. Required for XML support.
13
+ */
14
+ stringifyXML?: (obj: any, opts?: XmlOptions) => string;
15
+ /**
16
+ * Configures behavior of xml parser and builder.
17
+ */
18
+ serializerOptions?: SerializerOptions;
19
+ }
20
+ /**
21
+ * This policy handles assembling the request body and headers using
22
+ * an OperationSpec and OperationArguments on the request.
23
+ */
24
+ export declare function serializationPolicy(options?: SerializationPolicyOptions): PipelinePolicy;
25
+ /**
26
+ * @internal
27
+ */
28
+ export declare function serializeHeaders(request: OperationRequest, operationArguments: OperationArguments, operationSpec: OperationSpec): void;
29
+ /**
30
+ * @internal
31
+ */
32
+ export declare function serializeRequestBody(request: OperationRequest, operationArguments: OperationArguments, operationSpec: OperationSpec, stringifyXML?: (obj: any, opts?: XmlOptions) => string): void;
33
+ //# sourceMappingURL=serializationPolicy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serializationPolicy.d.ts","sourceRoot":"","sources":["../../src/serializationPolicy.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,kBAAkB,EAClB,gBAAgB,EAChB,aAAa,EAEb,iBAAiB,EAGjB,UAAU,EACX,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,cAAc,EAAiC,MAAM,2BAA2B,CAAC;AAQ1F;;GAEG;AACH,eAAO,MAAM,uBAAuB,wBAAwB,CAAC;AAE7D;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,UAAU,KAAK,MAAM,CAAC;IAEvD;;OAEG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;CACvC;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,GAAE,0BAA+B,GAAG,cAAc,CAgB5F;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,gBAAgB,EACzB,kBAAkB,EAAE,kBAAkB,EACtC,aAAa,EAAE,aAAa,GAC3B,IAAI,CA+BN;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,gBAAgB,EACzB,kBAAkB,EAAE,kBAAkB,EACtC,aAAa,EAAE,aAAa,EAC5B,YAAY,GAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,UAAU,KAAK,MAE9C,GACA,IAAI,CAgHN"}
@@ -1,9 +1,9 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
2
  // Licensed under the MIT license.
3
- import { XML_ATTRKEY, XML_CHARKEY, } from "./interfaces";
4
- import { getOperationArgumentValueFromParameter, getOperationRequestInfo, } from "./operationHelpers";
5
- import { MapperTypeNames } from "./serializer";
6
- import { getPathStringFromParameter } from "./interfaceHelpers";
3
+ import { XML_ATTRKEY, XML_CHARKEY, } from "./interfaces.js";
4
+ import { getOperationArgumentValueFromParameter, getOperationRequestInfo, } from "./operationHelpers.js";
5
+ import { MapperTypeNames } from "./serializer.js";
6
+ import { getPathStringFromParameter } from "./interfaceHelpers.js";
7
7
  /**
8
8
  * The programmatic identifier of the serializationPolicy.
9
9
  */
@@ -18,8 +18,8 @@ export function serializationPolicy(options = {}) {
18
18
  name: serializationPolicyName,
19
19
  async sendRequest(request, next) {
20
20
  const operationInfo = getOperationRequestInfo(request);
21
- const operationSpec = operationInfo === null || operationInfo === void 0 ? void 0 : operationInfo.operationSpec;
22
- const operationArguments = operationInfo === null || operationInfo === void 0 ? void 0 : operationInfo.operationArguments;
21
+ const operationSpec = operationInfo?.operationSpec;
22
+ const operationArguments = operationInfo?.operationArguments;
23
23
  if (operationSpec && operationArguments) {
24
24
  serializeHeaders(request, operationArguments, operationSpec);
25
25
  serializeRequestBody(request, operationArguments, operationSpec, stringifyXML);
@@ -32,7 +32,6 @@ export function serializationPolicy(options = {}) {
32
32
  * @internal
33
33
  */
34
34
  export function serializeHeaders(request, operationArguments, operationSpec) {
35
- var _a, _b;
36
35
  if (operationSpec.headerParameters) {
37
36
  for (const headerParameter of operationSpec.headerParameters) {
38
37
  let headerValue = getOperationArgumentValueFromParameter(operationArguments, headerParameter);
@@ -51,7 +50,7 @@ export function serializeHeaders(request, operationArguments, operationSpec) {
51
50
  }
52
51
  }
53
52
  }
54
- const customHeaders = (_b = (_a = operationArguments.options) === null || _a === void 0 ? void 0 : _a.requestOptions) === null || _b === void 0 ? void 0 : _b.customHeaders;
53
+ const customHeaders = operationArguments.options?.requestOptions?.customHeaders;
55
54
  if (customHeaders) {
56
55
  for (const customHeaderName of Object.keys(customHeaders)) {
57
56
  request.headers.set(customHeaderName, customHeaders[customHeaderName]);
@@ -64,13 +63,12 @@ export function serializeHeaders(request, operationArguments, operationSpec) {
64
63
  export function serializeRequestBody(request, operationArguments, operationSpec, stringifyXML = function () {
65
64
  throw new Error("XML serialization unsupported!");
66
65
  }) {
67
- var _a, _b, _c, _d, _e;
68
- const serializerOptions = (_a = operationArguments.options) === null || _a === void 0 ? void 0 : _a.serializerOptions;
66
+ const serializerOptions = operationArguments.options?.serializerOptions;
69
67
  const updatedOptions = {
70
68
  xml: {
71
- rootName: (_b = serializerOptions === null || serializerOptions === void 0 ? void 0 : serializerOptions.xml.rootName) !== null && _b !== void 0 ? _b : "",
72
- includeRoot: (_c = serializerOptions === null || serializerOptions === void 0 ? void 0 : serializerOptions.xml.includeRoot) !== null && _c !== void 0 ? _c : false,
73
- xmlCharKey: (_d = serializerOptions === null || serializerOptions === void 0 ? void 0 : serializerOptions.xml.xmlCharKey) !== null && _d !== void 0 ? _d : XML_CHARKEY,
69
+ rootName: serializerOptions?.xml.rootName ?? "",
70
+ includeRoot: serializerOptions?.xml.includeRoot ?? false,
71
+ xmlCharKey: serializerOptions?.xml.xmlCharKey ?? XML_CHARKEY,
74
72
  },
75
73
  };
76
74
  const xmlCharKey = updatedOptions.xml.xmlCharKey;
@@ -100,7 +98,7 @@ export function serializeRequestBody(request, operationArguments, operationSpec,
100
98
  }
101
99
  }
102
100
  else if (typeName === MapperTypeNames.String &&
103
- (((_e = operationSpec.contentType) === null || _e === void 0 ? void 0 : _e.match("text/plain")) || operationSpec.mediaType === "text")) {
101
+ (operationSpec.contentType?.match("text/plain") || operationSpec.mediaType === "text")) {
104
102
  // the String serializer has validated that request body is a string
105
103
  // so just send the string.
106
104
  return;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serializationPolicy.js","sourceRoot":"","sources":["../../src/serializationPolicy.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport {\n DictionaryMapper,\n OperationArguments,\n OperationRequest,\n OperationSpec,\n RequiredSerializerOptions,\n SerializerOptions,\n XML_ATTRKEY,\n XML_CHARKEY,\n XmlOptions,\n} from \"./interfaces.js\";\nimport { PipelinePolicy, PipelineResponse, SendRequest } from \"@azure/core-rest-pipeline\";\nimport {\n getOperationArgumentValueFromParameter,\n getOperationRequestInfo,\n} from \"./operationHelpers.js\";\nimport { MapperTypeNames } from \"./serializer.js\";\nimport { getPathStringFromParameter } from \"./interfaceHelpers.js\";\n\n/**\n * The programmatic identifier of the serializationPolicy.\n */\nexport const serializationPolicyName = \"serializationPolicy\";\n\n/**\n * Options to configure API request serialization.\n */\nexport interface SerializationPolicyOptions {\n /**\n * A function that is able to write XML. Required for XML support.\n */\n stringifyXML?: (obj: any, opts?: XmlOptions) => string;\n\n /**\n * Configures behavior of xml parser and builder.\n */\n serializerOptions?: SerializerOptions;\n}\n\n/**\n * This policy handles assembling the request body and headers using\n * an OperationSpec and OperationArguments on the request.\n */\nexport function serializationPolicy(options: SerializationPolicyOptions = {}): PipelinePolicy {\n const stringifyXML = options.stringifyXML;\n\n return {\n name: serializationPolicyName,\n async sendRequest(request: OperationRequest, next: SendRequest): Promise<PipelineResponse> {\n const operationInfo = getOperationRequestInfo(request);\n const operationSpec = operationInfo?.operationSpec;\n const operationArguments = operationInfo?.operationArguments;\n if (operationSpec && operationArguments) {\n serializeHeaders(request, operationArguments, operationSpec);\n serializeRequestBody(request, operationArguments, operationSpec, stringifyXML);\n }\n return next(request);\n },\n };\n}\n\n/**\n * @internal\n */\nexport function serializeHeaders(\n request: OperationRequest,\n operationArguments: OperationArguments,\n operationSpec: OperationSpec,\n): void {\n if (operationSpec.headerParameters) {\n for (const headerParameter of operationSpec.headerParameters) {\n let headerValue = getOperationArgumentValueFromParameter(operationArguments, headerParameter);\n if ((headerValue !== null && headerValue !== undefined) || headerParameter.mapper.required) {\n headerValue = operationSpec.serializer.serialize(\n headerParameter.mapper,\n headerValue,\n getPathStringFromParameter(headerParameter),\n );\n const headerCollectionPrefix = (headerParameter.mapper as DictionaryMapper)\n .headerCollectionPrefix;\n if (headerCollectionPrefix) {\n for (const key of Object.keys(headerValue)) {\n request.headers.set(headerCollectionPrefix + key, headerValue[key]);\n }\n } else {\n request.headers.set(\n headerParameter.mapper.serializedName || getPathStringFromParameter(headerParameter),\n headerValue,\n );\n }\n }\n }\n }\n const customHeaders = operationArguments.options?.requestOptions?.customHeaders;\n if (customHeaders) {\n for (const customHeaderName of Object.keys(customHeaders)) {\n request.headers.set(customHeaderName, customHeaders[customHeaderName]);\n }\n }\n}\n\n/**\n * @internal\n */\nexport function serializeRequestBody(\n request: OperationRequest,\n operationArguments: OperationArguments,\n operationSpec: OperationSpec,\n stringifyXML: (obj: any, opts?: XmlOptions) => string = function () {\n throw new Error(\"XML serialization unsupported!\");\n },\n): void {\n const serializerOptions = operationArguments.options?.serializerOptions;\n const updatedOptions: RequiredSerializerOptions = {\n xml: {\n rootName: serializerOptions?.xml.rootName ?? \"\",\n includeRoot: serializerOptions?.xml.includeRoot ?? false,\n xmlCharKey: serializerOptions?.xml.xmlCharKey ?? XML_CHARKEY,\n },\n };\n\n const xmlCharKey = updatedOptions.xml.xmlCharKey;\n if (operationSpec.requestBody && operationSpec.requestBody.mapper) {\n request.body = getOperationArgumentValueFromParameter(\n operationArguments,\n operationSpec.requestBody,\n );\n\n const bodyMapper = operationSpec.requestBody.mapper;\n const {\n required,\n serializedName,\n xmlName,\n xmlElementName,\n xmlNamespace,\n xmlNamespacePrefix,\n nullable,\n } = bodyMapper;\n const typeName = bodyMapper.type.name;\n\n try {\n if (\n (request.body !== undefined && request.body !== null) ||\n (nullable && request.body === null) ||\n required\n ) {\n const requestBodyParameterPathString: string = getPathStringFromParameter(\n operationSpec.requestBody,\n );\n request.body = operationSpec.serializer.serialize(\n bodyMapper,\n request.body,\n requestBodyParameterPathString,\n updatedOptions,\n );\n\n const isStream = typeName === MapperTypeNames.Stream;\n\n if (operationSpec.isXML) {\n const xmlnsKey = xmlNamespacePrefix ? `xmlns:${xmlNamespacePrefix}` : \"xmlns\";\n const value = getXmlValueWithNamespace(\n xmlNamespace,\n xmlnsKey,\n typeName,\n request.body,\n updatedOptions,\n );\n\n if (typeName === MapperTypeNames.Sequence) {\n request.body = stringifyXML(\n prepareXMLRootList(\n value,\n xmlElementName || xmlName || serializedName!,\n xmlnsKey,\n xmlNamespace,\n ),\n { rootName: xmlName || serializedName, xmlCharKey },\n );\n } else if (!isStream) {\n request.body = stringifyXML(value, {\n rootName: xmlName || serializedName,\n xmlCharKey,\n });\n }\n } else if (\n typeName === MapperTypeNames.String &&\n (operationSpec.contentType?.match(\"text/plain\") || operationSpec.mediaType === \"text\")\n ) {\n // the String serializer has validated that request body is a string\n // so just send the string.\n return;\n } else if (!isStream) {\n request.body = JSON.stringify(request.body);\n }\n }\n } catch (error: any) {\n throw new Error(\n `Error \"${error.message}\" occurred in serializing the payload - ${JSON.stringify(\n serializedName,\n undefined,\n \" \",\n )}.`,\n );\n }\n } else if (operationSpec.formDataParameters && operationSpec.formDataParameters.length > 0) {\n request.formData = {};\n for (const formDataParameter of operationSpec.formDataParameters) {\n const formDataParameterValue = getOperationArgumentValueFromParameter(\n operationArguments,\n formDataParameter,\n );\n if (formDataParameterValue !== undefined && formDataParameterValue !== null) {\n const formDataParameterPropertyName: string =\n formDataParameter.mapper.serializedName || getPathStringFromParameter(formDataParameter);\n request.formData[formDataParameterPropertyName] = operationSpec.serializer.serialize(\n formDataParameter.mapper,\n formDataParameterValue,\n getPathStringFromParameter(formDataParameter),\n updatedOptions,\n );\n }\n }\n }\n}\n\n/**\n * Adds an xml namespace to the xml serialized object if needed, otherwise it just returns the value itself\n */\nfunction getXmlValueWithNamespace(\n xmlNamespace: string | undefined,\n xmlnsKey: string,\n typeName: string,\n serializedValue: any,\n options: RequiredSerializerOptions,\n): any {\n // Composite and Sequence schemas already got their root namespace set during serialization\n // We just need to add xmlns to the other schema types\n if (xmlNamespace && ![\"Composite\", \"Sequence\", \"Dictionary\"].includes(typeName)) {\n const result: any = {};\n result[options.xml.xmlCharKey] = serializedValue;\n result[XML_ATTRKEY] = { [xmlnsKey]: xmlNamespace };\n return result;\n }\n\n return serializedValue;\n}\n\nfunction prepareXMLRootList(\n obj: any,\n elementName: string,\n xmlNamespaceKey?: string,\n xmlNamespace?: string,\n): { [key: string]: any[] } {\n if (!Array.isArray(obj)) {\n obj = [obj];\n }\n if (!xmlNamespaceKey || !xmlNamespace) {\n return { [elementName]: obj };\n }\n\n const result = { [elementName]: obj };\n result[XML_ATTRKEY] = { [xmlNamespaceKey]: xmlNamespace };\n return result;\n}\n"]}
@@ -0,0 +1,31 @@
1
+ import { Serializer } from "./interfaces.js";
2
+ /**
3
+ * Method that creates and returns a Serializer.
4
+ * @param modelMappers - Known models to map
5
+ * @param isXML - If XML should be supported
6
+ */
7
+ export declare function createSerializer(modelMappers?: {
8
+ [key: string]: any;
9
+ }, isXML?: boolean): Serializer;
10
+ /**
11
+ * Known types of Mappers
12
+ */
13
+ export declare const MapperTypeNames: {
14
+ readonly Base64Url: "Base64Url";
15
+ readonly Boolean: "Boolean";
16
+ readonly ByteArray: "ByteArray";
17
+ readonly Composite: "Composite";
18
+ readonly Date: "Date";
19
+ readonly DateTime: "DateTime";
20
+ readonly DateTimeRfc1123: "DateTimeRfc1123";
21
+ readonly Dictionary: "Dictionary";
22
+ readonly Enum: "Enum";
23
+ readonly Number: "Number";
24
+ readonly Object: "Object";
25
+ readonly Sequence: "Sequence";
26
+ readonly String: "String";
27
+ readonly Stream: "Stream";
28
+ readonly TimeSpan: "TimeSpan";
29
+ readonly UnixTime: "UnixTime";
30
+ };
31
+ //# sourceMappingURL=serializer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serializer.d.ts","sourceRoot":"","sources":["../../src/serializer.ts"],"names":[],"mappings":"AAIA,OAAO,EAUL,UAAU,EAIX,MAAM,iBAAiB,CAAC;AAkTzB;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,YAAY,GAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAO,EACzC,KAAK,GAAE,OAAe,GACrB,UAAU,CAEZ;AAs2BD;;GAEG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;CAiBlB,CAAC"}
@@ -1,9 +1,11 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
2
  // Licensed under the MIT license.
3
- import * as base64 from "./base64";
4
- import { XML_ATTRKEY, XML_CHARKEY, } from "./interfaces";
5
- import { isDuration, isValidUuid } from "./utils";
3
+ import * as base64 from "./base64.js";
4
+ import { XML_ATTRKEY, XML_CHARKEY, } from "./interfaces.js";
5
+ import { isDuration, isValidUuid } from "./utils.js";
6
6
  class SerializerImpl {
7
+ modelMappers;
8
+ isXML;
7
9
  constructor(modelMappers = {}, isXML = false) {
8
10
  this.modelMappers = modelMappers;
9
11
  this.isXML = isXML;
@@ -70,12 +72,11 @@ class SerializerImpl {
70
72
  * @returns A valid serialized Javascript object
71
73
  */
72
74
  serialize(mapper, object, objectName, options = { xml: {} }) {
73
- var _a, _b, _c;
74
75
  const updatedOptions = {
75
76
  xml: {
76
- rootName: (_a = options.xml.rootName) !== null && _a !== void 0 ? _a : "",
77
- includeRoot: (_b = options.xml.includeRoot) !== null && _b !== void 0 ? _b : false,
78
- xmlCharKey: (_c = options.xml.xmlCharKey) !== null && _c !== void 0 ? _c : XML_CHARKEY,
77
+ rootName: options.xml.rootName ?? "",
78
+ includeRoot: options.xml.includeRoot ?? false,
79
+ xmlCharKey: options.xml.xmlCharKey ?? XML_CHARKEY,
79
80
  },
80
81
  };
81
82
  let payload = {};
@@ -157,14 +158,13 @@ class SerializerImpl {
157
158
  * @returns A valid deserialized Javascript object
158
159
  */
159
160
  deserialize(mapper, responseBody, objectName, options = { xml: {} }) {
160
- var _a, _b, _c, _d;
161
161
  const updatedOptions = {
162
162
  xml: {
163
- rootName: (_a = options.xml.rootName) !== null && _a !== void 0 ? _a : "",
164
- includeRoot: (_b = options.xml.includeRoot) !== null && _b !== void 0 ? _b : false,
165
- xmlCharKey: (_c = options.xml.xmlCharKey) !== null && _c !== void 0 ? _c : XML_CHARKEY,
163
+ rootName: options.xml.rootName ?? "",
164
+ includeRoot: options.xml.includeRoot ?? false,
165
+ xmlCharKey: options.xml.xmlCharKey ?? XML_CHARKEY,
166
166
  },
167
- ignoreUnknownProperties: (_d = options.ignoreUnknownProperties) !== null && _d !== void 0 ? _d : false,
167
+ ignoreUnknownProperties: options.ignoreUnknownProperties ?? false,
168
168
  };
169
169
  if (responseBody === undefined || responseBody === null) {
170
170
  if (this.isXML && mapper.type.name === "Sequence" && !mapper.xmlIsWrapped) {
@@ -430,7 +430,6 @@ function serializeDateTypes(typeName, value, objectName) {
430
430
  return value;
431
431
  }
432
432
  function serializeSequenceType(serializer, mapper, object, objectName, isXml, options) {
433
- var _a;
434
433
  if (!Array.isArray(object)) {
435
434
  throw new Error(`${objectName} must be of type Array.`);
436
435
  }
@@ -443,7 +442,7 @@ function serializeSequenceType(serializer, mapper, object, objectName, isXml, op
443
442
  // not have *all* properties declared (like uberParent),
444
443
  // so let's try to look up the full definition by name.
445
444
  if (elementType.type.name === "Composite" && elementType.type.className) {
446
- elementType = (_a = serializer.modelMappers[elementType.type.className]) !== null && _a !== void 0 ? _a : elementType;
445
+ elementType = serializer.modelMappers[elementType.type.className] ?? elementType;
447
446
  }
448
447
  const tempArray = [];
449
448
  for (let i = 0; i < object.length; i++) {
@@ -453,7 +452,7 @@ function serializeSequenceType(serializer, mapper, object, objectName, isXml, op
453
452
  ? `xmlns:${elementType.xmlNamespacePrefix}`
454
453
  : "xmlns";
455
454
  if (elementType.type.name === "Composite") {
456
- tempArray[i] = Object.assign({}, serializedValue);
455
+ tempArray[i] = { ...serializedValue };
457
456
  tempArray[i][XML_ATTRKEY] = { [xmlnsKey]: elementType.xmlNamespace };
458
457
  }
459
458
  else {
@@ -502,7 +501,7 @@ function resolveAdditionalProperties(serializer, mapper, objectName) {
502
501
  const additionalProperties = mapper.type.additionalProperties;
503
502
  if (!additionalProperties && mapper.type.className) {
504
503
  const modelMapper = resolveReferencedMapper(serializer, mapper, objectName);
505
- return modelMapper === null || modelMapper === void 0 ? void 0 : modelMapper.type.additionalProperties;
504
+ return modelMapper?.type.additionalProperties;
506
505
  }
507
506
  return additionalProperties;
508
507
  }
@@ -531,7 +530,7 @@ function resolveModelProperties(serializer, mapper, objectName) {
531
530
  if (!modelMapper) {
532
531
  throw new Error(`mapper() cannot be null or undefined for model "${mapper.type.className}".`);
533
532
  }
534
- modelProps = modelMapper === null || modelMapper === void 0 ? void 0 : modelMapper.type.modelProperties;
533
+ modelProps = modelMapper?.type.modelProperties;
535
534
  if (!modelProps) {
536
535
  throw new Error(`modelProperties cannot be null or undefined in the ` +
537
536
  `mapper "${JSON.stringify(modelMapper)}" of type "${mapper.type.className}" for object "${objectName}".`);
@@ -579,7 +578,10 @@ function serializeCompositeType(serializer, mapper, object, objectName, isXml, o
579
578
  const xmlnsKey = mapper.xmlNamespacePrefix
580
579
  ? `xmlns:${mapper.xmlNamespacePrefix}`
581
580
  : "xmlns";
582
- parentObject[XML_ATTRKEY] = Object.assign(Object.assign({}, parentObject[XML_ATTRKEY]), { [xmlnsKey]: mapper.xmlNamespace });
581
+ parentObject[XML_ATTRKEY] = {
582
+ ...parentObject[XML_ATTRKEY],
583
+ [xmlnsKey]: mapper.xmlNamespace,
584
+ };
583
585
  }
584
586
  const propertyObjectName = propertyMapper.serializedName !== ""
585
587
  ? objectName + "." + propertyMapper.serializedName
@@ -637,7 +639,7 @@ function getXmlObjectValue(propertyMapper, serializedValue, isXml, options) {
637
639
  return serializedValue;
638
640
  }
639
641
  else {
640
- const result = Object.assign({}, serializedValue);
642
+ const result = { ...serializedValue };
641
643
  result[XML_ATTRKEY] = xmlNamespace;
642
644
  return result;
643
645
  }
@@ -651,8 +653,7 @@ function isSpecialXmlProperty(propertyName, options) {
651
653
  return [XML_ATTRKEY, options.xml.xmlCharKey].includes(propertyName);
652
654
  }
653
655
  function deserializeCompositeType(serializer, mapper, responseBody, objectName, options) {
654
- var _a, _b;
655
- const xmlCharKey = (_a = options.xml.xmlCharKey) !== null && _a !== void 0 ? _a : XML_CHARKEY;
656
+ const xmlCharKey = options.xml.xmlCharKey ?? XML_CHARKEY;
656
657
  if (getPolymorphicDiscriminatorRecursively(serializer, mapper)) {
657
658
  mapper = getPolymorphicMapper(serializer, mapper, responseBody, "serializedName");
658
659
  }
@@ -711,7 +712,7 @@ function deserializeCompositeType(serializer, mapper, responseBody, objectName,
711
712
  xmlName is "Cors" and xmlElementName is"CorsRule".
712
713
  */
713
714
  const wrapped = responseBody[xmlName];
714
- const elementList = (_b = wrapped === null || wrapped === void 0 ? void 0 : wrapped[xmlElementName]) !== null && _b !== void 0 ? _b : [];
715
+ const elementList = wrapped?.[xmlElementName] ?? [];
715
716
  instance[key] = serializer.deserialize(propertyMapper, elementList, propertyObjectName, options);
716
717
  handledPropertyNames.push(xmlName);
717
718
  }
@@ -819,7 +820,6 @@ function deserializeDictionaryType(serializer, mapper, responseBody, objectName,
819
820
  return responseBody;
820
821
  }
821
822
  function deserializeSequenceType(serializer, mapper, responseBody, objectName, options) {
822
- var _a;
823
823
  let element = mapper.type.element;
824
824
  if (!element || typeof element !== "object") {
825
825
  throw new Error(`element" metadata for an Array must be defined in the ` +
@@ -834,7 +834,7 @@ function deserializeSequenceType(serializer, mapper, responseBody, objectName, o
834
834
  // not have *all* properties declared (like uberParent),
835
835
  // so let's try to look up the full definition by name.
836
836
  if (element.type.name === "Composite" && element.type.className) {
837
- element = (_a = serializer.modelMappers[element.type.className]) !== null && _a !== void 0 ? _a : element;
837
+ element = serializer.modelMappers[element.type.className] ?? element;
838
838
  }
839
839
  const tempArray = [];
840
840
  for (let i = 0; i < responseBody.length; i++) {
@@ -867,7 +867,6 @@ function getIndexDiscriminator(discriminators, discriminatorValue, typeName) {
867
867
  return undefined;
868
868
  }
869
869
  function getPolymorphicMapper(serializer, mapper, object, polymorphicPropertyName) {
870
- var _a;
871
870
  const polymorphicDiscriminator = getPolymorphicDiscriminatorRecursively(serializer, mapper);
872
871
  if (polymorphicDiscriminator) {
873
872
  let discriminatorName = polymorphicDiscriminator[polymorphicPropertyName];
@@ -877,7 +876,7 @@ function getPolymorphicMapper(serializer, mapper, object, polymorphicPropertyNam
877
876
  discriminatorName = discriminatorName.replace(/\\/gi, "");
878
877
  }
879
878
  const discriminatorValue = object[discriminatorName];
880
- const typeName = (_a = mapper.type.uberParent) !== null && _a !== void 0 ? _a : mapper.type.className;
879
+ const typeName = mapper.type.uberParent ?? mapper.type.className;
881
880
  if (typeof discriminatorValue === "string" && typeName) {
882
881
  const polymorphicMapper = getIndexDiscriminator(serializer.modelMappers.discriminators, discriminatorValue, typeName);
883
882
  if (polymorphicMapper) {