@typespec/ts-http-runtime 1.0.0-alpha.20240614.3 → 1.0.0-alpha.20240619.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (209) hide show
  1. package/dist/browser/logger/log-browser.d.mts.map +1 -1
  2. package/dist/browser/logger/log-browser.mjs.map +1 -1
  3. package/dist/browser/logger/log.common.d.ts +2 -0
  4. package/dist/browser/logger/log.common.d.ts.map +1 -0
  5. package/dist/browser/logger/log.common.js +23 -0
  6. package/dist/browser/logger/log.common.js.map +1 -0
  7. package/dist/browser/logger/log.d.ts +1 -1
  8. package/dist/browser/logger/log.js +1 -20
  9. package/dist/browser/policies/proxyPolicy-browser.d.mts.map +1 -1
  10. package/dist/browser/policies/proxyPolicy-browser.mjs.map +1 -1
  11. package/dist/browser/policies/proxyPolicy.common.d.ts +15 -0
  12. package/dist/browser/policies/proxyPolicy.common.d.ts.map +1 -0
  13. package/dist/browser/policies/proxyPolicy.common.js +24 -0
  14. package/dist/browser/policies/proxyPolicy.common.js.map +1 -0
  15. package/dist/browser/policies/proxyPolicy.d.ts +1 -14
  16. package/dist/browser/policies/proxyPolicy.js +1 -24
  17. package/dist/browser/policies/tracingPolicy.d.ts.map +1 -1
  18. package/dist/browser/policies/tracingPolicy.js +2 -1
  19. package/dist/browser/policies/tracingPolicy.js.map +1 -1
  20. package/dist/browser/policies/userAgentPolicy.js +1 -1
  21. package/dist/browser/policies/userAgentPolicy.js.map +1 -1
  22. package/dist/browser/util/bytesEncoding-browser.d.mts.map +1 -1
  23. package/dist/browser/util/bytesEncoding-browser.mjs.map +1 -1
  24. package/dist/browser/util/bytesEncoding.common.d.ts +61 -0
  25. package/dist/browser/util/bytesEncoding.common.d.ts.map +1 -0
  26. package/dist/browser/util/bytesEncoding.common.js +110 -0
  27. package/dist/browser/util/bytesEncoding.common.js.map +1 -0
  28. package/dist/browser/util/bytesEncoding.d.ts +1 -60
  29. package/dist/browser/util/bytesEncoding.js +1 -107
  30. package/dist/browser/util/concat-browser.d.mts.map +1 -1
  31. package/dist/browser/util/concat-browser.mjs.map +1 -1
  32. package/dist/browser/util/concat.common.d.ts +19 -0
  33. package/dist/browser/util/concat.common.d.ts.map +1 -0
  34. package/dist/browser/util/concat.common.js +45 -0
  35. package/dist/browser/util/concat.common.js.map +1 -0
  36. package/dist/browser/util/concat.d.ts +1 -18
  37. package/dist/browser/util/concat.js +1 -42
  38. package/dist/browser/util/inspect-browser.d.mts.map +1 -1
  39. package/dist/browser/util/inspect-browser.mjs.map +1 -1
  40. package/dist/browser/util/inspect.common.d.ts +2 -0
  41. package/dist/browser/util/inspect.common.d.ts.map +1 -0
  42. package/dist/browser/util/inspect.common.js +4 -0
  43. package/dist/browser/util/inspect.common.js.map +1 -0
  44. package/dist/browser/util/inspect.d.ts +1 -1
  45. package/dist/browser/util/inspect.js +1 -1
  46. package/dist/browser/util/sha256-browser.d.mts.map +1 -1
  47. package/dist/browser/util/sha256-browser.mjs.map +1 -1
  48. package/dist/browser/util/sha256.common.d.ts +14 -0
  49. package/dist/browser/util/sha256.common.d.ts.map +1 -0
  50. package/dist/browser/util/sha256.common.js +49 -0
  51. package/dist/browser/util/sha256.common.js.map +1 -0
  52. package/dist/browser/util/sha256.d.ts +1 -13
  53. package/dist/browser/util/sha256.js +1 -46
  54. package/dist/browser/util/userAgent.d.ts +1 -1
  55. package/dist/browser/util/userAgent.d.ts.map +1 -1
  56. package/dist/browser/util/userAgent.js +2 -2
  57. package/dist/browser/util/userAgent.js.map +1 -1
  58. package/dist/browser/util/userAgentPlatform-browser.d.mts.map +1 -1
  59. package/dist/browser/util/userAgentPlatform-browser.mjs.map +1 -1
  60. package/dist/browser/util/userAgentPlatform.d.ts +1 -1
  61. package/dist/browser/util/userAgentPlatform.js +36 -6
  62. package/dist/commonjs/logger/log.common.d.ts +2 -0
  63. package/dist/commonjs/logger/log.common.d.ts.map +1 -0
  64. package/dist/commonjs/logger/log.common.js +27 -0
  65. package/dist/commonjs/logger/log.common.js.map +1 -0
  66. package/dist/commonjs/policies/proxyPolicy.common.d.ts +15 -0
  67. package/dist/commonjs/policies/proxyPolicy.common.d.ts.map +1 -0
  68. package/dist/commonjs/policies/proxyPolicy.common.js +30 -0
  69. package/dist/commonjs/policies/proxyPolicy.common.js.map +1 -0
  70. package/dist/commonjs/policies/tracingPolicy.d.ts.map +1 -1
  71. package/dist/commonjs/policies/tracingPolicy.js +2 -1
  72. package/dist/commonjs/policies/tracingPolicy.js.map +1 -1
  73. package/dist/commonjs/policies/userAgentPolicy.js +1 -1
  74. package/dist/commonjs/policies/userAgentPolicy.js.map +1 -1
  75. package/dist/commonjs/util/bytesEncoding.common.d.ts +61 -0
  76. package/dist/commonjs/util/bytesEncoding.common.d.ts.map +1 -0
  77. package/dist/commonjs/util/bytesEncoding.common.js +123 -0
  78. package/dist/commonjs/util/bytesEncoding.common.js.map +1 -0
  79. package/dist/commonjs/util/concat.common.d.ts +19 -0
  80. package/dist/commonjs/util/concat.common.d.ts.map +1 -0
  81. package/dist/commonjs/util/concat.common.js +49 -0
  82. package/dist/commonjs/util/concat.common.js.map +1 -0
  83. package/dist/commonjs/util/inspect.common.d.ts +2 -0
  84. package/dist/commonjs/util/inspect.common.d.ts.map +1 -0
  85. package/dist/commonjs/util/inspect.common.js +7 -0
  86. package/dist/commonjs/util/inspect.common.js.map +1 -0
  87. package/dist/commonjs/util/sha256.common.d.ts +14 -0
  88. package/dist/commonjs/util/sha256.common.d.ts.map +1 -0
  89. package/dist/commonjs/util/sha256.common.js +54 -0
  90. package/dist/commonjs/util/sha256.common.js.map +1 -0
  91. package/dist/commonjs/util/userAgent.d.ts +1 -1
  92. package/dist/commonjs/util/userAgent.d.ts.map +1 -1
  93. package/dist/commonjs/util/userAgent.js +2 -2
  94. package/dist/commonjs/util/userAgent.js.map +1 -1
  95. package/dist/commonjs/util/userAgentPlatform.d.ts +1 -1
  96. package/dist/commonjs/util/userAgentPlatform.d.ts.map +1 -1
  97. package/dist/commonjs/util/userAgentPlatform.js +1 -1
  98. package/dist/commonjs/util/userAgentPlatform.js.map +1 -1
  99. package/dist/esm/logger/log.common.d.ts +2 -0
  100. package/dist/esm/logger/log.common.d.ts.map +1 -0
  101. package/dist/esm/logger/log.common.js +23 -0
  102. package/dist/esm/logger/log.common.js.map +1 -0
  103. package/dist/esm/policies/proxyPolicy.common.d.ts +15 -0
  104. package/dist/esm/policies/proxyPolicy.common.d.ts.map +1 -0
  105. package/dist/esm/policies/proxyPolicy.common.js +24 -0
  106. package/dist/esm/policies/proxyPolicy.common.js.map +1 -0
  107. package/dist/esm/policies/tracingPolicy.d.ts.map +1 -1
  108. package/dist/esm/policies/tracingPolicy.js +2 -1
  109. package/dist/esm/policies/tracingPolicy.js.map +1 -1
  110. package/dist/esm/policies/userAgentPolicy.js +1 -1
  111. package/dist/esm/policies/userAgentPolicy.js.map +1 -1
  112. package/dist/esm/util/bytesEncoding.common.d.ts +61 -0
  113. package/dist/esm/util/bytesEncoding.common.d.ts.map +1 -0
  114. package/dist/esm/util/bytesEncoding.common.js +110 -0
  115. package/dist/esm/util/bytesEncoding.common.js.map +1 -0
  116. package/dist/esm/util/concat.common.d.ts +19 -0
  117. package/dist/esm/util/concat.common.d.ts.map +1 -0
  118. package/dist/esm/util/concat.common.js +45 -0
  119. package/dist/esm/util/concat.common.js.map +1 -0
  120. package/dist/esm/util/inspect.common.d.ts +2 -0
  121. package/dist/esm/util/inspect.common.d.ts.map +1 -0
  122. package/dist/esm/util/inspect.common.js +4 -0
  123. package/dist/esm/util/inspect.common.js.map +1 -0
  124. package/dist/esm/util/sha256.common.d.ts +14 -0
  125. package/dist/esm/util/sha256.common.d.ts.map +1 -0
  126. package/dist/esm/util/sha256.common.js +49 -0
  127. package/dist/esm/util/sha256.common.js.map +1 -0
  128. package/dist/esm/util/userAgent.d.ts +1 -1
  129. package/dist/esm/util/userAgent.d.ts.map +1 -1
  130. package/dist/esm/util/userAgent.js +2 -2
  131. package/dist/esm/util/userAgent.js.map +1 -1
  132. package/dist/esm/util/userAgentPlatform.d.ts +1 -1
  133. package/dist/esm/util/userAgentPlatform.d.ts.map +1 -1
  134. package/dist/esm/util/userAgentPlatform.js +1 -1
  135. package/dist/esm/util/userAgentPlatform.js.map +1 -1
  136. package/dist/react-native/logger/log-react-native.d.mts.map +1 -0
  137. package/dist/react-native/logger/log-react-native.mjs.map +1 -0
  138. package/dist/react-native/logger/log.common.d.ts +2 -0
  139. package/dist/react-native/logger/log.common.d.ts.map +1 -0
  140. package/dist/react-native/logger/log.common.js +23 -0
  141. package/dist/react-native/logger/log.common.js.map +1 -0
  142. package/dist/react-native/logger/log.d.ts +2 -2
  143. package/dist/react-native/logger/log.js +2 -7
  144. package/dist/react-native/policies/proxyPolicy-react-native.d.mts.map +1 -0
  145. package/dist/react-native/policies/proxyPolicy-react-native.mjs.map +1 -0
  146. package/dist/react-native/policies/proxyPolicy.common.d.ts +15 -0
  147. package/dist/react-native/policies/proxyPolicy.common.d.ts.map +1 -0
  148. package/dist/react-native/policies/proxyPolicy.common.js +24 -0
  149. package/dist/react-native/policies/proxyPolicy.common.js.map +1 -0
  150. package/dist/react-native/policies/proxyPolicy.d.ts +2 -32
  151. package/dist/react-native/policies/proxyPolicy.js +2 -189
  152. package/dist/react-native/policies/tracingPolicy.d.ts.map +1 -1
  153. package/dist/react-native/policies/tracingPolicy.js +2 -1
  154. package/dist/react-native/policies/tracingPolicy.js.map +1 -1
  155. package/dist/react-native/policies/userAgentPolicy.js +1 -1
  156. package/dist/react-native/policies/userAgentPolicy.js.map +1 -1
  157. package/dist/react-native/util/bytesEncoding-react-native.d.mts.map +1 -0
  158. package/dist/react-native/util/bytesEncoding-react-native.mjs.map +1 -0
  159. package/dist/react-native/util/bytesEncoding.common.d.ts +61 -0
  160. package/dist/react-native/util/bytesEncoding.common.d.ts.map +1 -0
  161. package/dist/react-native/util/bytesEncoding.common.js +110 -0
  162. package/dist/react-native/util/bytesEncoding.common.js.map +1 -0
  163. package/dist/react-native/util/bytesEncoding.d.ts +2 -17
  164. package/dist/react-native/util/bytesEncoding.js +2 -19
  165. package/dist/react-native/util/concat-react-native.d.mts.map +1 -0
  166. package/dist/react-native/util/concat-react-native.mjs.map +1 -0
  167. package/dist/react-native/util/concat.common.d.ts +19 -0
  168. package/dist/react-native/util/concat.common.d.ts.map +1 -0
  169. package/dist/react-native/util/concat.common.js +45 -0
  170. package/dist/react-native/util/concat.common.js.map +1 -0
  171. package/dist/react-native/util/concat.d.ts +2 -18
  172. package/dist/react-native/util/concat.js +2 -86
  173. package/dist/react-native/util/inspect-react-native.d.mts.map +1 -0
  174. package/dist/react-native/util/inspect-react-native.mjs.map +1 -0
  175. package/dist/react-native/util/inspect.common.d.ts +2 -0
  176. package/dist/react-native/util/inspect.common.d.ts.map +1 -0
  177. package/dist/react-native/util/inspect.common.js +4 -0
  178. package/dist/react-native/util/inspect.common.js.map +1 -0
  179. package/dist/react-native/util/inspect.d.ts +2 -2
  180. package/dist/react-native/util/inspect.js +2 -3
  181. package/dist/react-native/util/sha256-react-native.d.mts.map +1 -0
  182. package/dist/react-native/util/sha256-react-native.mjs.map +1 -0
  183. package/dist/react-native/util/sha256.common.d.ts +14 -0
  184. package/dist/react-native/util/sha256.common.d.ts.map +1 -0
  185. package/dist/react-native/util/sha256.common.js +49 -0
  186. package/dist/react-native/util/sha256.common.js.map +1 -0
  187. package/dist/react-native/util/sha256.d.ts +2 -14
  188. package/dist/react-native/util/sha256.js +2 -20
  189. package/dist/react-native/util/userAgent.d.ts +1 -1
  190. package/dist/react-native/util/userAgent.d.ts.map +1 -1
  191. package/dist/react-native/util/userAgent.js +2 -2
  192. package/dist/react-native/util/userAgent.js.map +1 -1
  193. package/dist/react-native/util/userAgentPlatform-react-native.d.mts.map +1 -1
  194. package/dist/react-native/util/userAgentPlatform-react-native.mjs.map +1 -1
  195. package/dist/react-native/util/userAgentPlatform.d.ts +1 -1
  196. package/dist/react-native/util/userAgentPlatform.js +2 -4
  197. package/package.json +2 -2
  198. package/dist/react-native/logger/log.d.ts.map +0 -1
  199. package/dist/react-native/logger/log.js.map +0 -1
  200. package/dist/react-native/policies/proxyPolicy.d.ts.map +0 -1
  201. package/dist/react-native/policies/proxyPolicy.js.map +0 -1
  202. package/dist/react-native/util/bytesEncoding.d.ts.map +0 -1
  203. package/dist/react-native/util/bytesEncoding.js.map +0 -1
  204. package/dist/react-native/util/concat.d.ts.map +0 -1
  205. package/dist/react-native/util/concat.js.map +0 -1
  206. package/dist/react-native/util/inspect.d.ts.map +0 -1
  207. package/dist/react-native/util/inspect.js.map +0 -1
  208. package/dist/react-native/util/sha256.d.ts.map +0 -1
  209. package/dist/react-native/util/sha256.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"userAgent.js","sourceRoot":"","sources":["../../../src/util/userAgent.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAChF,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,SAAS,kBAAkB,CAAC,aAAkC;IAC5D,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,aAAa,EAAE,CAAC;QACzC,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;QAC9C,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB;IACpC,OAAO,aAAa,EAAE,CAAC;AACzB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAe;IAC/C,MAAM,WAAW,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC9C,WAAW,CAAC,GAAG,CAAC,iBAAiB,EAAE,WAAW,CAAC,CAAC;IAChD,uBAAuB,CAAC,WAAW,CAAC,CAAC;IACrC,MAAM,YAAY,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAC;IACrD,MAAM,cAAc,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,YAAY,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC;IAC3E,OAAO,cAAc,CAAC;AACxB,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { getHeaderName, setPlatformSpecificData } from \"./userAgentPlatform.js\";\nimport { SDK_VERSION } from \"../constants.js\";\n\nfunction getUserAgentString(telemetryInfo: Map<string, string>): string {\n const parts: string[] = [];\n for (const [key, value] of telemetryInfo) {\n const token = value ? `${key}/${value}` : key;\n parts.push(token);\n }\n return parts.join(\" \");\n}\n\n/**\n * @internal\n */\nexport function getUserAgentHeaderName(): string {\n return getHeaderName();\n}\n\n/**\n * @internal\n */\nexport function getUserAgentValue(prefix?: string): string {\n const runtimeInfo = new Map<string, string>();\n runtimeInfo.set(\"ts-http-runtime\", SDK_VERSION);\n setPlatformSpecificData(runtimeInfo);\n const defaultAgent = getUserAgentString(runtimeInfo);\n const userAgentValue = prefix ? `${prefix} ${defaultAgent}` : defaultAgent;\n return userAgentValue;\n}\n"]}
1
+ {"version":3,"file":"userAgent.js","sourceRoot":"","sources":["../../../src/util/userAgent.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAChF,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,SAAS,kBAAkB,CAAC,aAAkC;IAC5D,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,aAAa,EAAE,CAAC;QACzC,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;QAC9C,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB;IACpC,OAAO,aAAa,EAAE,CAAC;AACzB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,MAAe;IACrD,MAAM,WAAW,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC9C,WAAW,CAAC,GAAG,CAAC,iBAAiB,EAAE,WAAW,CAAC,CAAC;IAChD,MAAM,uBAAuB,CAAC,WAAW,CAAC,CAAC;IAC3C,MAAM,YAAY,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAC;IACrD,MAAM,cAAc,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,YAAY,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC;IAC3E,OAAO,cAAc,CAAC;AACxB,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { getHeaderName, setPlatformSpecificData } from \"./userAgentPlatform.js\";\nimport { SDK_VERSION } from \"../constants.js\";\n\nfunction getUserAgentString(telemetryInfo: Map<string, string>): string {\n const parts: string[] = [];\n for (const [key, value] of telemetryInfo) {\n const token = value ? `${key}/${value}` : key;\n parts.push(token);\n }\n return parts.join(\" \");\n}\n\n/**\n * @internal\n */\nexport function getUserAgentHeaderName(): string {\n return getHeaderName();\n}\n\n/**\n * @internal\n */\nexport async function getUserAgentValue(prefix?: string): Promise<string> {\n const runtimeInfo = new Map<string, string>();\n runtimeInfo.set(\"ts-http-runtime\", SDK_VERSION);\n await setPlatformSpecificData(runtimeInfo);\n const defaultAgent = getUserAgentString(runtimeInfo);\n const userAgentValue = prefix ? `${prefix} ${defaultAgent}` : defaultAgent;\n return userAgentValue;\n}\n"]}
@@ -5,5 +5,5 @@ export declare function getHeaderName(): string;
5
5
  /**
6
6
  * @internal
7
7
  */
8
- export declare function setPlatformSpecificData(map: Map<string, string>): void;
8
+ export declare function setPlatformSpecificData(map: Map<string, string>): Promise<void>;
9
9
  //# sourceMappingURL=userAgentPlatform.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"userAgentPlatform.d.ts","sourceRoot":"","sources":["../../../src/util/userAgentPlatform.ts"],"names":[],"mappings":"AAcA;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAatE"}
1
+ {"version":3,"file":"userAgentPlatform.d.ts","sourceRoot":"","sources":["../../../src/util/userAgentPlatform.ts"],"names":[],"mappings":"AAcA;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED;;GAEG;AACH,wBAAsB,uBAAuB,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAarF"}
@@ -11,7 +11,7 @@ export function getHeaderName() {
11
11
  /**
12
12
  * @internal
13
13
  */
14
- export function setPlatformSpecificData(map) {
14
+ export async function setPlatformSpecificData(map) {
15
15
  if (process && process.versions) {
16
16
  const versions = process.versions;
17
17
  if (versions.bun) {
@@ -1 +1 @@
1
- {"version":3,"file":"userAgentPlatform.js","sourceRoot":"","sources":["../../../src/util/userAgentPlatform.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,OAAO,MAAM,cAAc,CAAC;AAUxC;;GAEG;AACH,MAAM,UAAU,aAAa;IAC3B,OAAO,YAAY,CAAC;AACtB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,uBAAuB,CAAC,GAAwB;IAC9D,IAAI,OAAO,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAoC,CAAC;QAC9D,IAAI,QAAQ,CAAC,GAAG,EAAE,CAAC;YACjB,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC/B,CAAC;aAAM,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;YACzB,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC;aAAM,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;YACzB,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAED,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;AAC/D,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport * as os from \"node:os\";\nimport * as process from \"node:process\";\n\n/**\n * @internal\n */\ninterface ExtendedPlatformVersions extends NodeJS.ProcessVersions {\n bun?: string;\n deno?: string;\n}\n\n/**\n * @internal\n */\nexport function getHeaderName(): string {\n return \"User-Agent\";\n}\n\n/**\n * @internal\n */\nexport function setPlatformSpecificData(map: Map<string, string>): void {\n if (process && process.versions) {\n const versions = process.versions as ExtendedPlatformVersions;\n if (versions.bun) {\n map.set(\"Bun\", versions.bun);\n } else if (versions.deno) {\n map.set(\"Deno\", versions.deno);\n } else if (versions.node) {\n map.set(\"Node\", versions.node);\n }\n }\n\n map.set(\"OS\", `(${os.arch()}-${os.type()}-${os.release()})`);\n}\n"]}
1
+ {"version":3,"file":"userAgentPlatform.js","sourceRoot":"","sources":["../../../src/util/userAgentPlatform.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,OAAO,MAAM,cAAc,CAAC;AAUxC;;GAEG;AACH,MAAM,UAAU,aAAa;IAC3B,OAAO,YAAY,CAAC;AACtB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,GAAwB;IACpE,IAAI,OAAO,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAoC,CAAC;QAC9D,IAAI,QAAQ,CAAC,GAAG,EAAE,CAAC;YACjB,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC/B,CAAC;aAAM,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;YACzB,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC;aAAM,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;YACzB,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAED,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;AAC/D,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport * as os from \"node:os\";\nimport * as process from \"node:process\";\n\n/**\n * @internal\n */\ninterface ExtendedPlatformVersions extends NodeJS.ProcessVersions {\n bun?: string;\n deno?: string;\n}\n\n/**\n * @internal\n */\nexport function getHeaderName(): string {\n return \"User-Agent\";\n}\n\n/**\n * @internal\n */\nexport async function setPlatformSpecificData(map: Map<string, string>): Promise<void> {\n if (process && process.versions) {\n const versions = process.versions as ExtendedPlatformVersions;\n if (versions.bun) {\n map.set(\"Bun\", versions.bun);\n } else if (versions.deno) {\n map.set(\"Deno\", versions.deno);\n } else if (versions.node) {\n map.set(\"Node\", versions.node);\n }\n }\n\n map.set(\"OS\", `(${os.arch()}-${os.type()}-${os.release()})`);\n}\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"log-react-native.d.mts","sourceRoot":"","sources":["../../../src/logger/log-react-native.mts"],"names":[],"mappings":"AAGA,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"log-react-native.mjs","sourceRoot":"","sources":["../../../src/logger/log-react-native.mts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nexport { log } from \"./log.common.js\";\n"]}
@@ -0,0 +1,2 @@
1
+ export declare function log(...args: any[]): void;
2
+ //# sourceMappingURL=log.common.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"log.common.d.ts","sourceRoot":"","sources":["../../../src/logger/log.common.ts"],"names":[],"mappings":"AAGA,wBAAgB,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAexC"}
@@ -0,0 +1,23 @@
1
+ // Copyright (c) Microsoft Corporation.
2
+ // Licensed under the MIT license.
3
+ export function log(...args) {
4
+ if (args.length > 0) {
5
+ const firstArg = String(args[0]);
6
+ if (firstArg.includes(":error")) {
7
+ console.error(...args);
8
+ }
9
+ else if (firstArg.includes(":warning")) {
10
+ console.warn(...args);
11
+ }
12
+ else if (firstArg.includes(":info")) {
13
+ console.info(...args);
14
+ }
15
+ else if (firstArg.includes(":verbose")) {
16
+ console.debug(...args);
17
+ }
18
+ else {
19
+ console.debug(...args);
20
+ }
21
+ }
22
+ }
23
+ //# sourceMappingURL=log.common.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"log.common.js","sourceRoot":"","sources":["../../../src/logger/log.common.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,MAAM,UAAU,GAAG,CAAC,GAAG,IAAW;IAChC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QACjC,IAAI,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAChC,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;QACzB,CAAC;aAAM,IAAI,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YACzC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;QACxB,CAAC;aAAM,IAAI,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACtC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;QACxB,CAAC;aAAM,IAAI,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YACzC,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;QACzB,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;AACH,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nexport function log(...args: any[]): void {\n if (args.length > 0) {\n const firstArg = String(args[0]);\n if (firstArg.includes(\":error\")) {\n console.error(...args);\n } else if (firstArg.includes(\":warning\")) {\n console.warn(...args);\n } else if (firstArg.includes(\":info\")) {\n console.info(...args);\n } else if (firstArg.includes(\":verbose\")) {\n console.debug(...args);\n } else {\n console.debug(...args);\n }\n }\n}\n"]}
@@ -1,2 +1,2 @@
1
- export declare function log(message: unknown, ...args: any[]): void;
2
- //# sourceMappingURL=log.d.ts.map
1
+ export { log } from "./log.common.js";
2
+ //# sourceMappingURL=log-react-native.d.mts.map
@@ -1,9 +1,4 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
2
  // Licensed under the MIT license.
3
- import { EOL } from "node:os";
4
- import util from "node:util";
5
- import * as process from "node:process";
6
- export function log(message, ...args) {
7
- process.stderr.write(`${util.format(message, ...args)}${EOL}`);
8
- }
9
- //# sourceMappingURL=log.js.map
3
+ export { log } from "./log.common.js";
4
+ //# sourceMappingURL=log-react-native.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"proxyPolicy-react-native.d.mts","sourceRoot":"","sources":["../../../src/policies/proxyPolicy-react-native.mts"],"names":[],"mappings":"AAGA,cAAc,yBAAyB,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"proxyPolicy-react-native.mjs","sourceRoot":"","sources":["../../../src/policies/proxyPolicy-react-native.mts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,cAAc,yBAAyB,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nexport * from \"./proxyPolicy.common.js\";\n"]}
@@ -0,0 +1,15 @@
1
+ export declare const proxyPolicyName = "proxyPolicy";
2
+ export declare function getDefaultProxySettings(): never;
3
+ /**
4
+ * proxyPolicy is not supported in the browser and attempting
5
+ * to use it will raise an error.
6
+ */
7
+ export declare function proxyPolicy(): never;
8
+ /**
9
+ * A function to reset the cached agents.
10
+ * proxyPolicy is not supported in the browser and attempting
11
+ * to use it will raise an error.
12
+ * @internal
13
+ */
14
+ export declare function resetCachedProxyAgents(): never;
15
+ //# sourceMappingURL=proxyPolicy.common.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"proxyPolicy.common.d.ts","sourceRoot":"","sources":["../../../src/policies/proxyPolicy.common.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,eAAe,gBAAgB,CAAC;AAG7C,wBAAgB,uBAAuB,IAAI,KAAK,CAE/C;AAED;;;GAGG;AACH,wBAAgB,WAAW,IAAI,KAAK,CAEnC;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,IAAI,KAAK,CAE9C"}
@@ -0,0 +1,24 @@
1
+ // Copyright (c) Microsoft Corporation.
2
+ // Licensed under the MIT license.
3
+ export const proxyPolicyName = "proxyPolicy";
4
+ const errorMessage = "proxyPolicy is not supported in browser environment";
5
+ export function getDefaultProxySettings() {
6
+ throw new Error(errorMessage);
7
+ }
8
+ /**
9
+ * proxyPolicy is not supported in the browser and attempting
10
+ * to use it will raise an error.
11
+ */
12
+ export function proxyPolicy() {
13
+ throw new Error(errorMessage);
14
+ }
15
+ /**
16
+ * A function to reset the cached agents.
17
+ * proxyPolicy is not supported in the browser and attempting
18
+ * to use it will raise an error.
19
+ * @internal
20
+ */
21
+ export function resetCachedProxyAgents() {
22
+ throw new Error(errorMessage);
23
+ }
24
+ //# sourceMappingURL=proxyPolicy.common.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"proxyPolicy.common.js","sourceRoot":"","sources":["../../../src/policies/proxyPolicy.common.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAAC;AAC7C,MAAM,YAAY,GAAG,qDAAqD,CAAC;AAE3E,MAAM,UAAU,uBAAuB;IACrC,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;AAChC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW;IACzB,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;AAChC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB;IACpC,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;AAChC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nexport const proxyPolicyName = \"proxyPolicy\";\nconst errorMessage = \"proxyPolicy is not supported in browser environment\";\n\nexport function getDefaultProxySettings(): never {\n throw new Error(errorMessage);\n}\n\n/**\n * proxyPolicy is not supported in the browser and attempting\n * to use it will raise an error.\n */\nexport function proxyPolicy(): never {\n throw new Error(errorMessage);\n}\n\n/**\n * A function to reset the cached agents.\n * proxyPolicy is not supported in the browser and attempting\n * to use it will raise an error.\n * @internal\n */\nexport function resetCachedProxyAgents(): never {\n throw new Error(errorMessage);\n}\n"]}
@@ -1,32 +1,2 @@
1
- import type { ProxySettings } from "../interfaces.js";
2
- import type { PipelinePolicy } from "../pipeline.js";
3
- /**
4
- * The programmatic identifier of the proxyPolicy.
5
- */
6
- export declare const proxyPolicyName = "proxyPolicy";
7
- /**
8
- * Stores the patterns specified in NO_PROXY environment variable.
9
- * @internal
10
- */
11
- export declare const globalNoProxyList: string[];
12
- export declare function loadNoProxy(): string[];
13
- /**
14
- * This method converts a proxy url into `ProxySettings` for use with ProxyPolicy.
15
- * If no argument is given, it attempts to parse a proxy URL from the environment
16
- * variables `HTTPS_PROXY` or `HTTP_PROXY`.
17
- * @param proxyUrl - The url of the proxy to use. May contain authentication information.
18
- * @deprecated - Internally this method is no longer necessary when setting proxy information.
19
- */
20
- export declare function getDefaultProxySettings(proxyUrl?: string): ProxySettings | undefined;
21
- /**
22
- * A policy that allows one to apply proxy settings to all requests.
23
- * If not passed static settings, they will be retrieved from the HTTPS_PROXY
24
- * or HTTP_PROXY environment variables.
25
- * @param proxySettings - ProxySettings to use on each request.
26
- * @param options - additional settings, for example, custom NO_PROXY patterns
27
- */
28
- export declare function proxyPolicy(proxySettings?: ProxySettings, options?: {
29
- /** a list of patterns to override those loaded from NO_PROXY environment variable. */
30
- customNoProxyList?: string[];
31
- }): PipelinePolicy;
32
- //# sourceMappingURL=proxyPolicy.d.ts.map
1
+ export * from "./proxyPolicy.common.js";
2
+ //# sourceMappingURL=proxyPolicy-react-native.d.mts.map
@@ -1,191 +1,4 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
2
  // Licensed under the MIT license.
3
- import { HttpsProxyAgent } from "https-proxy-agent";
4
- import { HttpProxyAgent } from "http-proxy-agent";
5
- import { logger } from "../log.js";
6
- const HTTPS_PROXY = "HTTPS_PROXY";
7
- const HTTP_PROXY = "HTTP_PROXY";
8
- const ALL_PROXY = "ALL_PROXY";
9
- const NO_PROXY = "NO_PROXY";
10
- /**
11
- * The programmatic identifier of the proxyPolicy.
12
- */
13
- export const proxyPolicyName = "proxyPolicy";
14
- /**
15
- * Stores the patterns specified in NO_PROXY environment variable.
16
- * @internal
17
- */
18
- export const globalNoProxyList = [];
19
- let noProxyListLoaded = false;
20
- /** A cache of whether a host should bypass the proxy. */
21
- const globalBypassedMap = new Map();
22
- function getEnvironmentValue(name) {
23
- if (process.env[name]) {
24
- return process.env[name];
25
- }
26
- else if (process.env[name.toLowerCase()]) {
27
- return process.env[name.toLowerCase()];
28
- }
29
- return undefined;
30
- }
31
- function loadEnvironmentProxyValue() {
32
- if (!process) {
33
- return undefined;
34
- }
35
- const httpsProxy = getEnvironmentValue(HTTPS_PROXY);
36
- const allProxy = getEnvironmentValue(ALL_PROXY);
37
- const httpProxy = getEnvironmentValue(HTTP_PROXY);
38
- return httpsProxy || allProxy || httpProxy;
39
- }
40
- /**
41
- * Check whether the host of a given `uri` matches any pattern in the no proxy list.
42
- * If there's a match, any request sent to the same host shouldn't have the proxy settings set.
43
- * This implementation is a port of https://github.com/Azure/azure-sdk-for-net/blob/8cca811371159e527159c7eb65602477898683e2/sdk/core/Azure.Core/src/Pipeline/Internal/HttpEnvironmentProxy.cs#L210
44
- */
45
- function isBypassed(uri, noProxyList, bypassedMap) {
46
- if (noProxyList.length === 0) {
47
- return false;
48
- }
49
- const host = new URL(uri).hostname;
50
- if (bypassedMap === null || bypassedMap === void 0 ? void 0 : bypassedMap.has(host)) {
51
- return bypassedMap.get(host);
52
- }
53
- let isBypassedFlag = false;
54
- for (const pattern of noProxyList) {
55
- if (pattern[0] === ".") {
56
- // This should match either domain it self or any subdomain or host
57
- // .foo.com will match foo.com it self or *.foo.com
58
- if (host.endsWith(pattern)) {
59
- isBypassedFlag = true;
60
- }
61
- else {
62
- if (host.length === pattern.length - 1 && host === pattern.slice(1)) {
63
- isBypassedFlag = true;
64
- }
65
- }
66
- }
67
- else {
68
- if (host === pattern) {
69
- isBypassedFlag = true;
70
- }
71
- }
72
- }
73
- bypassedMap === null || bypassedMap === void 0 ? void 0 : bypassedMap.set(host, isBypassedFlag);
74
- return isBypassedFlag;
75
- }
76
- export function loadNoProxy() {
77
- const noProxy = getEnvironmentValue(NO_PROXY);
78
- noProxyListLoaded = true;
79
- if (noProxy) {
80
- return noProxy
81
- .split(",")
82
- .map((item) => item.trim())
83
- .filter((item) => item.length);
84
- }
85
- return [];
86
- }
87
- /**
88
- * This method converts a proxy url into `ProxySettings` for use with ProxyPolicy.
89
- * If no argument is given, it attempts to parse a proxy URL from the environment
90
- * variables `HTTPS_PROXY` or `HTTP_PROXY`.
91
- * @param proxyUrl - The url of the proxy to use. May contain authentication information.
92
- * @deprecated - Internally this method is no longer necessary when setting proxy information.
93
- */
94
- export function getDefaultProxySettings(proxyUrl) {
95
- if (!proxyUrl) {
96
- proxyUrl = loadEnvironmentProxyValue();
97
- if (!proxyUrl) {
98
- return undefined;
99
- }
100
- }
101
- const parsedUrl = new URL(proxyUrl);
102
- const schema = parsedUrl.protocol ? parsedUrl.protocol + "//" : "";
103
- return {
104
- host: schema + parsedUrl.hostname,
105
- port: Number.parseInt(parsedUrl.port || "80"),
106
- username: parsedUrl.username,
107
- password: parsedUrl.password,
108
- };
109
- }
110
- /**
111
- * This method attempts to parse a proxy URL from the environment
112
- * variables `HTTPS_PROXY` or `HTTP_PROXY`.
113
- */
114
- function getDefaultProxySettingsInternal() {
115
- const envProxy = loadEnvironmentProxyValue();
116
- return envProxy ? new URL(envProxy) : undefined;
117
- }
118
- function getUrlFromProxySettings(settings) {
119
- let parsedProxyUrl;
120
- try {
121
- parsedProxyUrl = new URL(settings.host);
122
- }
123
- catch (_error) {
124
- throw new Error(`Expecting a valid host string in proxy settings, but found "${settings.host}".`);
125
- }
126
- parsedProxyUrl.port = String(settings.port);
127
- if (settings.username) {
128
- parsedProxyUrl.username = settings.username;
129
- }
130
- if (settings.password) {
131
- parsedProxyUrl.password = settings.password;
132
- }
133
- return parsedProxyUrl;
134
- }
135
- function setProxyAgentOnRequest(request, cachedAgents, proxyUrl) {
136
- // Custom Agent should take precedence so if one is present
137
- // we should skip to avoid overwriting it.
138
- if (request.agent) {
139
- return;
140
- }
141
- const url = new URL(request.url);
142
- const isInsecure = url.protocol !== "https:";
143
- if (request.tlsSettings) {
144
- logger.warning("TLS settings are not supported in combination with custom Proxy, certificates provided to the client will be ignored.");
145
- }
146
- const headers = request.headers.toJSON();
147
- if (isInsecure) {
148
- if (!cachedAgents.httpProxyAgent) {
149
- cachedAgents.httpProxyAgent = new HttpProxyAgent(proxyUrl, { headers });
150
- }
151
- request.agent = cachedAgents.httpProxyAgent;
152
- }
153
- else {
154
- if (!cachedAgents.httpsProxyAgent) {
155
- cachedAgents.httpsProxyAgent = new HttpsProxyAgent(proxyUrl, { headers });
156
- }
157
- request.agent = cachedAgents.httpsProxyAgent;
158
- }
159
- }
160
- /**
161
- * A policy that allows one to apply proxy settings to all requests.
162
- * If not passed static settings, they will be retrieved from the HTTPS_PROXY
163
- * or HTTP_PROXY environment variables.
164
- * @param proxySettings - ProxySettings to use on each request.
165
- * @param options - additional settings, for example, custom NO_PROXY patterns
166
- */
167
- export function proxyPolicy(proxySettings, options) {
168
- if (!noProxyListLoaded) {
169
- globalNoProxyList.push(...loadNoProxy());
170
- }
171
- const defaultProxy = proxySettings
172
- ? getUrlFromProxySettings(proxySettings)
173
- : getDefaultProxySettingsInternal();
174
- const cachedAgents = {};
175
- return {
176
- name: proxyPolicyName,
177
- async sendRequest(request, next) {
178
- var _a;
179
- if (!request.proxySettings &&
180
- defaultProxy &&
181
- !isBypassed(request.url, (_a = options === null || options === void 0 ? void 0 : options.customNoProxyList) !== null && _a !== void 0 ? _a : globalNoProxyList, (options === null || options === void 0 ? void 0 : options.customNoProxyList) ? undefined : globalBypassedMap)) {
182
- setProxyAgentOnRequest(request, cachedAgents, defaultProxy);
183
- }
184
- else if (request.proxySettings) {
185
- setProxyAgentOnRequest(request, cachedAgents, getUrlFromProxySettings(request.proxySettings));
186
- }
187
- return next(request);
188
- },
189
- };
190
- }
191
- //# sourceMappingURL=proxyPolicy.js.map
3
+ export * from "./proxyPolicy.common.js";
4
+ //# sourceMappingURL=proxyPolicy-react-native.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"tracingPolicy.d.ts","sourceRoot":"","sources":["../../../src/policies/tracingPolicy.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAOhD;;GAEG;AACH,eAAO,MAAM,iBAAiB,kBAAkB,CAAC;AAEjD;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;OAGG;IACH,gCAAgC,CAAC,EAAE,MAAM,EAAE,CAAC;CAC7C;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,OAAO,GAAE,oBAAyB,GAAG,cAAc,CAwChF"}
1
+ {"version":3,"file":"tracingPolicy.d.ts","sourceRoot":"","sources":["../../../src/policies/tracingPolicy.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAOhD;;GAEG;AACH,eAAO,MAAM,iBAAiB,kBAAkB,CAAC;AAEjD;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;OAGG;IACH,gCAAgC,CAAC,EAAE,MAAM,EAAE,CAAC;CAC7C;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,OAAO,GAAE,oBAAyB,GAAG,cAAc,CA0ChF"}
@@ -18,7 +18,7 @@ export const tracingPolicyName = "tracingPolicy";
18
18
  * @param options - Options to configure the telemetry logged by the tracing policy.
19
19
  */
20
20
  export function tracingPolicy(options = {}) {
21
- const userAgent = getUserAgentValue(options.userAgentPrefix);
21
+ const userAgentValue = getUserAgentValue(options.userAgentPrefix);
22
22
  const sanitizer = new Sanitizer({
23
23
  additionalAllowedQueryParameters: options.additionalAllowedQueryParameters,
24
24
  });
@@ -30,6 +30,7 @@ export function tracingPolicy(options = {}) {
30
30
  if (!tracingClient || !((_a = request.tracingOptions) === null || _a === void 0 ? void 0 : _a.tracingContext)) {
31
31
  return next(request);
32
32
  }
33
+ const userAgent = await userAgentValue;
33
34
  const spanAttributes = {
34
35
  "http.url": sanitizer.sanitizeUrl(request.url),
35
36
  "http.method": request.method,
@@ -1 +1 @@
1
- {"version":3,"file":"tracingPolicy.js","sourceRoot":"","sources":["../../../src/policies/tracingPolicy.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { TracingClient, TracingContext, TracingSpan } from \"../tracing/interfaces.js\";\nimport { createTracingClient } from \"../tracing/tracingClient.js\";\nimport { SDK_VERSION } from \"../constants.js\";\nimport { PipelineRequest, PipelineResponse, SendRequest } from \"../interfaces.js\";\nimport { PipelinePolicy } from \"../pipeline.js\";\nimport { getUserAgentValue } from \"../util/userAgent.js\";\nimport { logger } from \"../log.js\";\nimport { getErrorMessage, isError } from \"../util/error.js\";\nimport { isRestError } from \"../restError.js\";\nimport { Sanitizer } from \"../util/sanitizer.js\";\n\n/**\n * The programmatic identifier of the tracingPolicy.\n */\nexport const tracingPolicyName = \"tracingPolicy\";\n\n/**\n * Options to configure the tracing policy.\n */\nexport interface TracingPolicyOptions {\n /**\n * String prefix to add to the user agent logged as metadata\n * on the generated Span.\n * Defaults to an empty string.\n */\n userAgentPrefix?: string;\n /**\n * Query string names whose values will be logged when logging is enabled. By default no\n * query string values are logged.\n */\n additionalAllowedQueryParameters?: string[];\n}\n\n/**\n * A simple policy to create OpenTelemetry Spans for each request made by the pipeline\n * that has SpanOptions with a parent.\n * Requests made without a parent Span will not be recorded.\n * @param options - Options to configure the telemetry logged by the tracing policy.\n */\nexport function tracingPolicy(options: TracingPolicyOptions = {}): PipelinePolicy {\n const userAgent = getUserAgentValue(options.userAgentPrefix);\n const sanitizer = new Sanitizer({\n additionalAllowedQueryParameters: options.additionalAllowedQueryParameters,\n });\n const tracingClient = tryCreateTracingClient();\n\n return {\n name: tracingPolicyName,\n async sendRequest(request: PipelineRequest, next: SendRequest): Promise<PipelineResponse> {\n if (!tracingClient || !request.tracingOptions?.tracingContext) {\n return next(request);\n }\n\n const spanAttributes = {\n \"http.url\": sanitizer.sanitizeUrl(request.url),\n \"http.method\": request.method,\n \"http.user_agent\": userAgent,\n requestId: request.requestId,\n };\n if (userAgent) {\n spanAttributes[\"http.user_agent\"] = userAgent;\n }\n\n const { span, tracingContext } = tryCreateSpan(tracingClient, request, spanAttributes) ?? {};\n\n if (!span || !tracingContext) {\n return next(request);\n }\n\n try {\n const response = await tracingClient.withContext(tracingContext, next, request);\n tryProcessResponse(span, response);\n return response;\n } catch (err: any) {\n tryProcessError(span, err);\n throw err;\n }\n },\n };\n}\n\nfunction tryCreateTracingClient(): TracingClient | undefined {\n try {\n return createTracingClient({\n namespace: \"\",\n packageName: \"@typespec/ts-http-runtime\",\n packageVersion: SDK_VERSION,\n });\n } catch (e: unknown) {\n logger.warning(`Error when creating the TracingClient: ${getErrorMessage(e)}`);\n return undefined;\n }\n}\n\nfunction tryCreateSpan(\n tracingClient: TracingClient,\n request: PipelineRequest,\n spanAttributes: Record<string, unknown>,\n): { span: TracingSpan; tracingContext: TracingContext } | undefined {\n try {\n // As per spec, we do not need to differentiate between HTTP and HTTPS in span name.\n const { span, updatedOptions } = tracingClient.startSpan(\n `HTTP ${request.method}`,\n { tracingOptions: request.tracingOptions },\n {\n spanKind: \"client\",\n spanAttributes,\n },\n );\n\n // If the span is not recording, don't do any more work.\n if (!span.isRecording()) {\n span.end();\n return undefined;\n }\n\n // set headers\n const headers = tracingClient.createRequestHeaders(\n updatedOptions.tracingOptions.tracingContext,\n );\n for (const [key, value] of Object.entries(headers)) {\n request.headers.set(key, value);\n }\n return { span, tracingContext: updatedOptions.tracingOptions.tracingContext };\n } catch (e: any) {\n logger.warning(`Skipping creating a tracing span due to an error: ${getErrorMessage(e)}`);\n return undefined;\n }\n}\n\nfunction tryProcessError(span: TracingSpan, error: unknown): void {\n try {\n span.setStatus({\n status: \"error\",\n error: isError(error) ? error : undefined,\n });\n if (isRestError(error) && error.statusCode) {\n span.setAttribute(\"http.status_code\", error.statusCode);\n }\n span.end();\n } catch (e: any) {\n logger.warning(`Skipping tracing span processing due to an error: ${getErrorMessage(e)}`);\n }\n}\n\nfunction tryProcessResponse(span: TracingSpan, response: PipelineResponse): void {\n try {\n span.setAttribute(\"http.status_code\", response.status);\n const serviceRequestId = response.headers.get(\"x-ms-request-id\");\n if (serviceRequestId) {\n span.setAttribute(\"serviceRequestId\", serviceRequestId);\n }\n span.setStatus({\n status: \"success\",\n });\n span.end();\n } catch (e: any) {\n logger.warning(`Skipping tracing span processing due to an error: ${getErrorMessage(e)}`);\n }\n}\n"]}
1
+ {"version":3,"file":"tracingPolicy.js","sourceRoot":"","sources":["../../../src/policies/tracingPolicy.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { TracingClient, TracingContext, TracingSpan } from \"../tracing/interfaces.js\";\nimport { createTracingClient } from \"../tracing/tracingClient.js\";\nimport { SDK_VERSION } from \"../constants.js\";\nimport { PipelineRequest, PipelineResponse, SendRequest } from \"../interfaces.js\";\nimport { PipelinePolicy } from \"../pipeline.js\";\nimport { getUserAgentValue } from \"../util/userAgent.js\";\nimport { logger } from \"../log.js\";\nimport { getErrorMessage, isError } from \"../util/error.js\";\nimport { isRestError } from \"../restError.js\";\nimport { Sanitizer } from \"../util/sanitizer.js\";\n\n/**\n * The programmatic identifier of the tracingPolicy.\n */\nexport const tracingPolicyName = \"tracingPolicy\";\n\n/**\n * Options to configure the tracing policy.\n */\nexport interface TracingPolicyOptions {\n /**\n * String prefix to add to the user agent logged as metadata\n * on the generated Span.\n * Defaults to an empty string.\n */\n userAgentPrefix?: string;\n /**\n * Query string names whose values will be logged when logging is enabled. By default no\n * query string values are logged.\n */\n additionalAllowedQueryParameters?: string[];\n}\n\n/**\n * A simple policy to create OpenTelemetry Spans for each request made by the pipeline\n * that has SpanOptions with a parent.\n * Requests made without a parent Span will not be recorded.\n * @param options - Options to configure the telemetry logged by the tracing policy.\n */\nexport function tracingPolicy(options: TracingPolicyOptions = {}): PipelinePolicy {\n const userAgentValue = getUserAgentValue(options.userAgentPrefix);\n const sanitizer = new Sanitizer({\n additionalAllowedQueryParameters: options.additionalAllowedQueryParameters,\n });\n const tracingClient = tryCreateTracingClient();\n\n return {\n name: tracingPolicyName,\n async sendRequest(request: PipelineRequest, next: SendRequest): Promise<PipelineResponse> {\n if (!tracingClient || !request.tracingOptions?.tracingContext) {\n return next(request);\n }\n\n const userAgent = await userAgentValue;\n\n const spanAttributes = {\n \"http.url\": sanitizer.sanitizeUrl(request.url),\n \"http.method\": request.method,\n \"http.user_agent\": userAgent,\n requestId: request.requestId,\n };\n if (userAgent) {\n spanAttributes[\"http.user_agent\"] = userAgent;\n }\n\n const { span, tracingContext } = tryCreateSpan(tracingClient, request, spanAttributes) ?? {};\n\n if (!span || !tracingContext) {\n return next(request);\n }\n\n try {\n const response = await tracingClient.withContext(tracingContext, next, request);\n tryProcessResponse(span, response);\n return response;\n } catch (err: any) {\n tryProcessError(span, err);\n throw err;\n }\n },\n };\n}\n\nfunction tryCreateTracingClient(): TracingClient | undefined {\n try {\n return createTracingClient({\n namespace: \"\",\n packageName: \"@typespec/ts-http-runtime\",\n packageVersion: SDK_VERSION,\n });\n } catch (e: unknown) {\n logger.warning(`Error when creating the TracingClient: ${getErrorMessage(e)}`);\n return undefined;\n }\n}\n\nfunction tryCreateSpan(\n tracingClient: TracingClient,\n request: PipelineRequest,\n spanAttributes: Record<string, unknown>,\n): { span: TracingSpan; tracingContext: TracingContext } | undefined {\n try {\n // As per spec, we do not need to differentiate between HTTP and HTTPS in span name.\n const { span, updatedOptions } = tracingClient.startSpan(\n `HTTP ${request.method}`,\n { tracingOptions: request.tracingOptions },\n {\n spanKind: \"client\",\n spanAttributes,\n },\n );\n\n // If the span is not recording, don't do any more work.\n if (!span.isRecording()) {\n span.end();\n return undefined;\n }\n\n // set headers\n const headers = tracingClient.createRequestHeaders(\n updatedOptions.tracingOptions.tracingContext,\n );\n for (const [key, value] of Object.entries(headers)) {\n request.headers.set(key, value);\n }\n return { span, tracingContext: updatedOptions.tracingOptions.tracingContext };\n } catch (e: any) {\n logger.warning(`Skipping creating a tracing span due to an error: ${getErrorMessage(e)}`);\n return undefined;\n }\n}\n\nfunction tryProcessError(span: TracingSpan, error: unknown): void {\n try {\n span.setStatus({\n status: \"error\",\n error: isError(error) ? error : undefined,\n });\n if (isRestError(error) && error.statusCode) {\n span.setAttribute(\"http.status_code\", error.statusCode);\n }\n span.end();\n } catch (e: any) {\n logger.warning(`Skipping tracing span processing due to an error: ${getErrorMessage(e)}`);\n }\n}\n\nfunction tryProcessResponse(span: TracingSpan, response: PipelineResponse): void {\n try {\n span.setAttribute(\"http.status_code\", response.status);\n const serviceRequestId = response.headers.get(\"x-ms-request-id\");\n if (serviceRequestId) {\n span.setAttribute(\"serviceRequestId\", serviceRequestId);\n }\n span.setStatus({\n status: \"success\",\n });\n span.end();\n } catch (e: any) {\n logger.warning(`Skipping tracing span processing due to an error: ${getErrorMessage(e)}`);\n }\n}\n"]}
@@ -17,7 +17,7 @@ export function userAgentPolicy(options = {}) {
17
17
  name: userAgentPolicyName,
18
18
  async sendRequest(request, next) {
19
19
  if (!request.headers.has(UserAgentHeaderName)) {
20
- request.headers.set(UserAgentHeaderName, userAgentValue);
20
+ request.headers.set(UserAgentHeaderName, await userAgentValue);
21
21
  }
22
22
  return next(request);
23
23
  },
@@ -1 +1 @@
1
- {"version":3,"file":"userAgentPolicy.js","sourceRoot":"","sources":["../../../src/policies/userAgentPolicy.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAIlC,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEjF,MAAM,mBAAmB,GAAG,sBAAsB,EAAE,CAAC;AAErD;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,iBAAiB,CAAC;AAarD;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,UAAkC,EAAE;IAClE,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;IAClE,OAAO;QACL,IAAI,EAAE,mBAAmB;QACzB,KAAK,CAAC,WAAW,CAAC,OAAwB,EAAE,IAAiB;YAC3D,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,EAAE,CAAC;gBAC9C,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,cAAc,CAAC,CAAC;YAC3D,CAAC;YACD,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC;QACvB,CAAC;KACF,CAAC;AACJ,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { PipelineRequest, PipelineResponse, SendRequest } from \"../interfaces.js\";\nimport { PipelinePolicy } from \"../pipeline.js\";\nimport { getUserAgentHeaderName, getUserAgentValue } from \"../util/userAgent.js\";\n\nconst UserAgentHeaderName = getUserAgentHeaderName();\n\n/**\n * The programmatic identifier of the userAgentPolicy.\n */\nexport const userAgentPolicyName = \"userAgentPolicy\";\n\n/**\n * Options for adding user agent details to outgoing requests.\n */\nexport interface UserAgentPolicyOptions {\n /**\n * String prefix to add to the user agent for outgoing requests.\n * Defaults to an empty string.\n */\n userAgentPrefix?: string;\n}\n\n/**\n * A policy that sets the User-Agent header (or equivalent) to reflect\n * the library version.\n * @param options - Options to customize the user agent value.\n */\nexport function userAgentPolicy(options: UserAgentPolicyOptions = {}): PipelinePolicy {\n const userAgentValue = getUserAgentValue(options.userAgentPrefix);\n return {\n name: userAgentPolicyName,\n async sendRequest(request: PipelineRequest, next: SendRequest): Promise<PipelineResponse> {\n if (!request.headers.has(UserAgentHeaderName)) {\n request.headers.set(UserAgentHeaderName, userAgentValue);\n }\n return next(request);\n },\n };\n}\n"]}
1
+ {"version":3,"file":"userAgentPolicy.js","sourceRoot":"","sources":["../../../src/policies/userAgentPolicy.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAIlC,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEjF,MAAM,mBAAmB,GAAG,sBAAsB,EAAE,CAAC;AAErD;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,iBAAiB,CAAC;AAarD;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,UAAkC,EAAE;IAClE,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;IAClE,OAAO;QACL,IAAI,EAAE,mBAAmB;QACzB,KAAK,CAAC,WAAW,CAAC,OAAwB,EAAE,IAAiB;YAC3D,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,EAAE,CAAC;gBAC9C,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,MAAM,cAAc,CAAC,CAAC;YACjE,CAAC;YACD,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC;QACvB,CAAC;KACF,CAAC;AACJ,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { PipelineRequest, PipelineResponse, SendRequest } from \"../interfaces.js\";\nimport { PipelinePolicy } from \"../pipeline.js\";\nimport { getUserAgentHeaderName, getUserAgentValue } from \"../util/userAgent.js\";\n\nconst UserAgentHeaderName = getUserAgentHeaderName();\n\n/**\n * The programmatic identifier of the userAgentPolicy.\n */\nexport const userAgentPolicyName = \"userAgentPolicy\";\n\n/**\n * Options for adding user agent details to outgoing requests.\n */\nexport interface UserAgentPolicyOptions {\n /**\n * String prefix to add to the user agent for outgoing requests.\n * Defaults to an empty string.\n */\n userAgentPrefix?: string;\n}\n\n/**\n * A policy that sets the User-Agent header (or equivalent) to reflect\n * the library version.\n * @param options - Options to customize the user agent value.\n */\nexport function userAgentPolicy(options: UserAgentPolicyOptions = {}): PipelinePolicy {\n const userAgentValue = getUserAgentValue(options.userAgentPrefix);\n return {\n name: userAgentPolicyName,\n async sendRequest(request: PipelineRequest, next: SendRequest): Promise<PipelineResponse> {\n if (!request.headers.has(UserAgentHeaderName)) {\n request.headers.set(UserAgentHeaderName, await userAgentValue);\n }\n return next(request);\n },\n };\n}\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bytesEncoding-react-native.d.mts","sourceRoot":"","sources":["../../../src/util/bytesEncoding-react-native.mts"],"names":[],"mappings":"AAGA,cAAc,2BAA2B,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bytesEncoding-react-native.mjs","sourceRoot":"","sources":["../../../src/util/bytesEncoding-react-native.mts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,cAAc,2BAA2B,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nexport * from \"./bytesEncoding.common.js\";\n"]}
@@ -0,0 +1,61 @@
1
+ declare global {
2
+ function btoa(input: string): string;
3
+ function atob(input: string): string;
4
+ }
5
+ /** The supported character encoding type */
6
+ export type EncodingType = "utf-8" | "base64" | "base64url" | "hex";
7
+ /**
8
+ * The helper that transforms bytes with specific character encoding into string
9
+ * @param bytes - the uint8array bytes
10
+ * @param format - the format we use to encode the byte
11
+ * @returns a string of the encoded string
12
+ */
13
+ export declare function uint8ArrayToString(bytes: Uint8Array, format: EncodingType): string;
14
+ /**
15
+ * The helper that transforms string to specific character encoded bytes array.
16
+ * @param value - the string to be converted
17
+ * @param format - the format we use to decode the value
18
+ * @returns a uint8array
19
+ */
20
+ export declare function stringToUint8Array(value: string, format: EncodingType): Uint8Array;
21
+ /**
22
+ * Decodes a Uint8Array into a Base64 string.
23
+ * @internal
24
+ */
25
+ export declare function uint8ArrayToBase64(bytes: Uint8Array): string;
26
+ /**
27
+ * Decodes a Uint8Array into a Base64Url string.
28
+ * @internal
29
+ */
30
+ export declare function uint8ArrayToBase64Url(bytes: Uint8Array): string;
31
+ /**
32
+ * Decodes a Uint8Array into a javascript string.
33
+ * @internal
34
+ */
35
+ export declare function uint8ArrayToUtf8String(bytes: Uint8Array): string;
36
+ /**
37
+ * Decodes a Uint8Array into a hex string
38
+ * @internal
39
+ */
40
+ export declare function uint8ArrayToHexString(bytes: Uint8Array): string;
41
+ /**
42
+ * Encodes a JavaScript string into a Uint8Array.
43
+ * @internal
44
+ */
45
+ export declare function utf8StringToUint8Array(value: string): Uint8Array;
46
+ /**
47
+ * Encodes a Base64 string into a Uint8Array.
48
+ * @internal
49
+ */
50
+ export declare function base64ToUint8Array(value: string): Uint8Array;
51
+ /**
52
+ * Encodes a Base64Url string into a Uint8Array.
53
+ * @internal
54
+ */
55
+ export declare function base64UrlToUint8Array(value: string): Uint8Array;
56
+ /**
57
+ * Encodes a hex string into a Uint8Array
58
+ * @internal
59
+ */
60
+ export declare function hexStringToUint8Array(value: string): Uint8Array;
61
+ //# sourceMappingURL=bytesEncoding.common.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bytesEncoding.common.d.ts","sourceRoot":"","sources":["../../../src/util/bytesEncoding.common.ts"],"names":[],"mappings":"AAGA,OAAO,CAAC,MAAM,CAAC;IAEb,SAAS,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACrC,SAAS,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;CACtC;AAED,4CAA4C;AAC5C,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,QAAQ,GAAG,WAAW,GAAG,KAAK,CAAC;AAEpE;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,GAAG,MAAM,CAWlF;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAG,UAAU,CAWlF;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAE5D;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAE/D;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAIhE;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAE/D;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,CAEhE;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,CAE5D;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,CAG/D;AAID;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,CAe/D"}