@layerzerolabs/vm-tooling 0.2.8 → 0.2.10

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 (192) hide show
  1. package/dist/2Z4Y2ZR3.cjs +41 -0
  2. package/dist/2Z4Y2ZR3.cjs.map +1 -0
  3. package/dist/{7IXQN6OO.js → 427QOV7V.js} +3 -3
  4. package/dist/{7IXQN6OO.js.map → 427QOV7V.js.map} +1 -1
  5. package/dist/{TXQ7DL7M.cjs → 5GPMTH2I.cjs} +2 -2
  6. package/dist/5GPMTH2I.cjs.map +1 -0
  7. package/dist/{PAU3G3SR.cjs → 5IOOBAVX.cjs} +73 -73
  8. package/dist/{PAU3G3SR.cjs.map → 5IOOBAVX.cjs.map} +1 -1
  9. package/dist/{D2W5CUS2.js → 5QZDX45Q.js} +13 -13
  10. package/dist/{D2W5CUS2.js.map → 5QZDX45Q.js.map} +1 -1
  11. package/dist/{P2D6TBR2.cjs → 634Q3MUX.cjs} +95 -95
  12. package/dist/{P2D6TBR2.cjs.map → 634Q3MUX.cjs.map} +1 -1
  13. package/dist/{NHZ56QQ6.cjs → 77LS3AZK.cjs} +147 -147
  14. package/dist/{NHZ56QQ6.cjs.map → 77LS3AZK.cjs.map} +1 -1
  15. package/dist/{QTKMYYBJ.js → 77VFG7S6.js} +4 -4
  16. package/dist/{QTKMYYBJ.js.map → 77VFG7S6.js.map} +1 -1
  17. package/dist/{45KBPE2A.cjs → 7O5SJUXT.cjs} +5 -5
  18. package/dist/{45KBPE2A.cjs.map → 7O5SJUXT.cjs.map} +1 -1
  19. package/dist/{2DA6OMT5.js → 7R4LC2OX.js} +6 -6
  20. package/dist/{2DA6OMT5.js.map → 7R4LC2OX.js.map} +1 -1
  21. package/dist/{YEY7RJOA.cjs → A5X4BLYY.cjs} +8 -8
  22. package/dist/{YEY7RJOA.cjs.map → A5X4BLYY.cjs.map} +1 -1
  23. package/dist/{IKBAJOTL.js → BEHAXLXQ.js} +6 -6
  24. package/dist/BEHAXLXQ.js.map +1 -0
  25. package/dist/{D5NZ2LLF.cjs → DS4LZJHX.cjs} +6 -6
  26. package/dist/{D5NZ2LLF.cjs.map → DS4LZJHX.cjs.map} +1 -1
  27. package/dist/{TC4EVJWZ.js → EP2ZMEJO.js} +8 -18
  28. package/dist/EP2ZMEJO.js.map +1 -0
  29. package/dist/{QSGRIGIB.js → EXBTG2GQ.js} +4 -4
  30. package/dist/{QSGRIGIB.js.map → EXBTG2GQ.js.map} +1 -1
  31. package/dist/{6TJOZVPD.cjs → FC7UGQEI.cjs} +4 -4
  32. package/dist/{6TJOZVPD.cjs.map → FC7UGQEI.cjs.map} +1 -1
  33. package/dist/{GB4RG4YH.cjs → GEZ3XVTG.cjs} +37 -18
  34. package/dist/GEZ3XVTG.cjs.map +1 -0
  35. package/dist/{QE6MLWSK.cjs → GG2ZAAIE.cjs} +12 -12
  36. package/dist/GG2ZAAIE.cjs.map +1 -0
  37. package/dist/{JUMGXR5I.cjs → HVDH52K5.cjs} +66 -66
  38. package/dist/{JUMGXR5I.cjs.map → HVDH52K5.cjs.map} +1 -1
  39. package/dist/{V7WCPKFN.js → HVR3WYCV.js} +3 -3
  40. package/dist/{V7WCPKFN.js.map → HVR3WYCV.js.map} +1 -1
  41. package/dist/{5AS6ABVZ.js → HVWLZZTF.js} +4 -4
  42. package/dist/{5AS6ABVZ.js.map → HVWLZZTF.js.map} +1 -1
  43. package/dist/{4BVLTYVP.cjs → IPYOACCU.cjs} +6 -6
  44. package/dist/{4BVLTYVP.cjs.map → IPYOACCU.cjs.map} +1 -1
  45. package/dist/{R5CQAJPE.js → JXS7ZGGU.js} +5 -5
  46. package/dist/{R5CQAJPE.js.map → JXS7ZGGU.js.map} +1 -1
  47. package/dist/{7GBZAO4Q.js → KWRJPB5T.js} +2 -2
  48. package/dist/KWRJPB5T.js.map +1 -0
  49. package/dist/{H6ZWRX4I.cjs → O2P6E7GR.cjs} +10 -10
  50. package/dist/{H6ZWRX4I.cjs.map → O2P6E7GR.cjs.map} +1 -1
  51. package/dist/{AZEY5BMF.cjs → OLCI6QQA.cjs} +3 -3
  52. package/dist/{AZEY5BMF.cjs.map → OLCI6QQA.cjs.map} +1 -1
  53. package/dist/{FQHJEYC5.js → OMZA67EH.js} +4 -4
  54. package/dist/OMZA67EH.js.map +1 -0
  55. package/dist/{BLS3LKLJ.js → PFRT6NBP.js} +8 -4
  56. package/dist/PFRT6NBP.js.map +1 -0
  57. package/dist/{LQNTMID2.js → QDUIE3K3.js} +6 -6
  58. package/dist/{LQNTMID2.js.map → QDUIE3K3.js.map} +1 -1
  59. package/dist/{TKT5HVBW.js → UGOYXDC2.js} +13 -13
  60. package/dist/UGOYXDC2.js.map +1 -0
  61. package/dist/{JFX35GR2.js → VEHBRPVG.js} +3 -3
  62. package/dist/{JFX35GR2.js.map → VEHBRPVG.js.map} +1 -1
  63. package/dist/{NIOWT3K2.cjs → VH4UXRKG.cjs} +12 -22
  64. package/dist/VH4UXRKG.cjs.map +1 -0
  65. package/dist/{MQNCJPBY.js → W3F4RJVY.js} +7 -7
  66. package/dist/{MQNCJPBY.js.map → W3F4RJVY.js.map} +1 -1
  67. package/dist/{YG4DCXY2.js → W4QDYLOA.js} +3 -3
  68. package/dist/{YG4DCXY2.js.map → W4QDYLOA.js.map} +1 -1
  69. package/dist/{ALYR25XX.cjs → WSDEGNMI.cjs} +11 -3
  70. package/dist/WSDEGNMI.cjs.map +1 -0
  71. package/dist/WSGRZJVU.js +37 -0
  72. package/dist/WSGRZJVU.js.map +1 -0
  73. package/dist/{C7WLBLDI.cjs → Y7XA7YWK.cjs} +6 -6
  74. package/dist/Y7XA7YWK.cjs.map +1 -0
  75. package/dist/{ZI7GOR2D.cjs → YHGTF22I.cjs} +4 -4
  76. package/dist/{ZI7GOR2D.cjs.map → YHGTF22I.cjs.map} +1 -1
  77. package/dist/{4CXXALGT.js → Z7SRDY43.js} +6 -6
  78. package/dist/{4CXXALGT.js.map → Z7SRDY43.js.map} +1 -1
  79. package/dist/{UPZFEE7V.cjs → ZGCH6KFP.cjs} +3 -3
  80. package/dist/{UPZFEE7V.cjs.map → ZGCH6KFP.cjs.map} +1 -1
  81. package/dist/{UTB7ZC7B.js → ZO7WI2XS.js} +4 -4
  82. package/dist/{UTB7ZC7B.js.map → ZO7WI2XS.js.map} +1 -1
  83. package/dist/{CCKCKIBV.cjs → ZTSEHGET.cjs} +4 -4
  84. package/dist/{CCKCKIBV.cjs.map → ZTSEHGET.cjs.map} +1 -1
  85. package/dist/cli.cjs +10 -14
  86. package/dist/cli.d.ts.map +1 -1
  87. package/dist/cli.js +9 -13
  88. package/dist/config.cjs +9 -5
  89. package/dist/config.d.ts +48 -0
  90. package/dist/config.d.ts.map +1 -1
  91. package/dist/config.js +1 -1
  92. package/dist/context.cjs.map +1 -1
  93. package/dist/context.d.ts +1 -1
  94. package/dist/context.d.ts.map +1 -1
  95. package/dist/context.js.map +1 -1
  96. package/dist/core/index.cjs +8 -9
  97. package/dist/core/index.js +6 -7
  98. package/dist/core/tool-executor.cjs +7 -8
  99. package/dist/core/tool-executor.d.ts +1 -1
  100. package/dist/core/tool-executor.d.ts.map +1 -1
  101. package/dist/core/tool-executor.js +6 -7
  102. package/dist/core/version-resolver.cjs +4 -4
  103. package/dist/core/version-resolver.js +3 -3
  104. package/dist/display/formatters.cjs +4 -4
  105. package/dist/display/formatters.js +3 -3
  106. package/dist/display/index.cjs +7 -7
  107. package/dist/display/index.js +4 -4
  108. package/dist/display/version-display.cjs +6 -6
  109. package/dist/display/version-display.js +4 -4
  110. package/dist/github/index.cjs +10 -10
  111. package/dist/github/index.js +9 -9
  112. package/dist/github/matrix.cjs +9 -9
  113. package/dist/github/matrix.js +8 -8
  114. package/dist/index.cjs +25 -25
  115. package/dist/index.cjs.map +1 -1
  116. package/dist/index.d.ts +1 -1
  117. package/dist/index.d.ts.map +1 -1
  118. package/dist/index.js +16 -20
  119. package/dist/index.js.map +1 -1
  120. package/dist/test.cjs +5 -5
  121. package/dist/test.d.ts +1 -1
  122. package/dist/test.d.ts.map +1 -1
  123. package/dist/test.js +4 -4
  124. package/dist/utils/docker.cjs +7 -7
  125. package/dist/utils/docker.d.ts +1 -2
  126. package/dist/utils/docker.d.ts.map +1 -1
  127. package/dist/utils/docker.js +3 -3
  128. package/dist/utils/finder.cjs +6 -6
  129. package/dist/utils/finder.d.ts +1 -1
  130. package/dist/utils/finder.d.ts.map +1 -1
  131. package/dist/utils/finder.js +1 -1
  132. package/dist/utils.cjs +11 -3
  133. package/dist/utils.d.ts +2 -0
  134. package/dist/utils.d.ts.map +1 -1
  135. package/dist/utils.js +2 -2
  136. package/package.json +4 -5
  137. package/dist/6NTWQZTS.js +0 -6
  138. package/dist/6NTWQZTS.js.map +0 -1
  139. package/dist/7GBZAO4Q.js.map +0 -1
  140. package/dist/ALYR25XX.cjs.map +0 -1
  141. package/dist/BLS3LKLJ.js.map +0 -1
  142. package/dist/C7WLBLDI.cjs.map +0 -1
  143. package/dist/FQHJEYC5.js.map +0 -1
  144. package/dist/GB4RG4YH.cjs.map +0 -1
  145. package/dist/GFH6WSFW.cjs +0 -8
  146. package/dist/GFH6WSFW.cjs.map +0 -1
  147. package/dist/HH7R2XAD.cjs +0 -44
  148. package/dist/HH7R2XAD.cjs.map +0 -1
  149. package/dist/IGVQSSKE.cjs +0 -12
  150. package/dist/IGVQSSKE.cjs.map +0 -1
  151. package/dist/IKBAJOTL.js.map +0 -1
  152. package/dist/LS4PZK5Q.cjs +0 -8
  153. package/dist/LS4PZK5Q.cjs.map +0 -1
  154. package/dist/NIOWT3K2.cjs.map +0 -1
  155. package/dist/ODGKXOOP.js +0 -12
  156. package/dist/ODGKXOOP.js.map +0 -1
  157. package/dist/QE6MLWSK.cjs.map +0 -1
  158. package/dist/ROMZWOXP.js +0 -21
  159. package/dist/ROMZWOXP.js.map +0 -1
  160. package/dist/RT6XP6RO.js +0 -10
  161. package/dist/RT6XP6RO.js.map +0 -1
  162. package/dist/TC4EVJWZ.js.map +0 -1
  163. package/dist/TKT5HVBW.js.map +0 -1
  164. package/dist/TXQ7DL7M.cjs.map +0 -1
  165. package/dist/V3H2GSUQ.js +0 -6
  166. package/dist/V3H2GSUQ.js.map +0 -1
  167. package/dist/WZTIMOLE.cjs +0 -17
  168. package/dist/WZTIMOLE.cjs.map +0 -1
  169. package/dist/types/docker.cjs +0 -13
  170. package/dist/types/docker.cjs.map +0 -1
  171. package/dist/types/docker.d.ts +0 -43
  172. package/dist/types/docker.d.ts.map +0 -1
  173. package/dist/types/docker.js +0 -4
  174. package/dist/types/docker.js.map +0 -1
  175. package/dist/types/index.cjs +0 -15
  176. package/dist/types/index.cjs.map +0 -1
  177. package/dist/types/index.d.ts +0 -3
  178. package/dist/types/index.d.ts.map +0 -1
  179. package/dist/types/index.js +0 -6
  180. package/dist/types/index.js.map +0 -1
  181. package/dist/types/tool.cjs +0 -7
  182. package/dist/types/tool.cjs.map +0 -1
  183. package/dist/types/tool.d.ts +0 -17
  184. package/dist/types/tool.d.ts.map +0 -1
  185. package/dist/types/tool.js +0 -4
  186. package/dist/types/tool.js.map +0 -1
  187. package/dist/utils/version.cjs +0 -17
  188. package/dist/utils/version.cjs.map +0 -1
  189. package/dist/utils/version.d.ts +0 -9
  190. package/dist/utils/version.d.ts.map +0 -1
  191. package/dist/utils/version.js +0 -4
  192. package/dist/utils/version.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../node_modules/.pnpm/@smithy+smithy-client@4.9.8/node_modules/@smithy/smithy-client/dist-es/client.js","../../../node_modules/.pnpm/@smithy+middleware-stack@4.2.5/node_modules/@smithy/middleware-stack/dist-es/MiddlewareStack.js","../../../node_modules/.pnpm/@smithy+smithy-client@4.9.8/node_modules/@smithy/smithy-client/dist-es/command.js","../../../node_modules/.pnpm/@smithy+types@4.9.0/node_modules/@smithy/types/dist-es/endpoint.js","../../../node_modules/.pnpm/@smithy+types@4.9.0/node_modules/@smithy/types/dist-es/extensions/index.js","../../../node_modules/.pnpm/@smithy+types@4.9.0/node_modules/@smithy/types/dist-es/extensions/checksum.js","../../../node_modules/.pnpm/@smithy+types@4.9.0/node_modules/@smithy/types/dist-es/middleware.js","../../../node_modules/.pnpm/@smithy+smithy-client@4.9.8/node_modules/@smithy/smithy-client/dist-es/schemaLogFilter.js","../../../node_modules/.pnpm/@smithy+core@3.18.5/node_modules/@smithy/core/dist-es/submodules/schema/deref.js","../../../node_modules/.pnpm/@smithy+protocol-http@5.3.5/node_modules/@smithy/protocol-http/dist-es/extensions/httpExtensionConfiguration.js","../../../node_modules/.pnpm/@smithy+util-middleware@4.2.5/node_modules/@smithy/util-middleware/dist-es/getSmithyContext.js","../../../node_modules/.pnpm/@smithy+util-middleware@4.2.5/node_modules/@smithy/util-middleware/dist-es/normalizeProvider.js","../../../node_modules/.pnpm/@smithy+core@3.18.5/node_modules/@smithy/core/dist-es/submodules/schema/schemas/NormalizedSchema.js","../../../node_modules/.pnpm/@smithy+core@3.18.5/node_modules/@smithy/core/dist-es/submodules/schema/schemas/translateTraits.js","../../../node_modules/.pnpm/@aws-sdk+middleware-host-header@3.873.0/node_modules/@aws-sdk/middleware-host-header/dist-es/index.js","../../../node_modules/.pnpm/@aws-sdk+middleware-logger@3.876.0/node_modules/@aws-sdk/middleware-logger/dist-es/loggerMiddleware.js","../../../node_modules/.pnpm/@aws-sdk+middleware-logger@3.876.0/node_modules/@aws-sdk/middleware-logger/dist-es/index.js","../../../node_modules/.pnpm/@aws-sdk+middleware-recursion-detection@3.873.0/node_modules/@aws-sdk/middleware-recursion-detection/dist-es/index.js","../../../node_modules/.pnpm/@smithy+core@3.18.5/node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/getHttpAuthSchemeEndpointRuleSetPlugin.js","../../../node_modules/.pnpm/@smithy+core@3.18.5/node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/httpAuthSchemeMiddleware.js","../../../node_modules/.pnpm/@smithy+core@3.18.5/node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/resolveAuthOptions.js","../../../node_modules/.pnpm/@smithy+middleware-serde@4.2.6/node_modules/@smithy/middleware-serde/dist-es/serdePlugin.js","../../../node_modules/.pnpm/@smithy+middleware-serde@4.2.6/node_modules/@smithy/middleware-serde/dist-es/deserializerMiddleware.js","../../../node_modules/.pnpm/@smithy+middleware-serde@4.2.6/node_modules/@smithy/middleware-serde/dist-es/serializerMiddleware.js","../../../node_modules/.pnpm/@smithy+core@3.18.5/node_modules/@smithy/core/dist-es/middleware-http-signing/getHttpSigningMiddleware.js","../../../node_modules/.pnpm/@smithy+core@3.18.5/node_modules/@smithy/core/dist-es/middleware-http-signing/httpSigningMiddleware.js","../../../node_modules/.pnpm/@smithy+core@3.18.5/node_modules/@smithy/core/dist-es/util-identity-and-auth/DefaultIdentityProviderConfig.js","../../../node_modules/.pnpm/@aws-sdk+middleware-user-agent@3.879.0/node_modules/@aws-sdk/middleware-user-agent/dist-es/configurations.js","../../../node_modules/.pnpm/@smithy+core@3.18.5/node_modules/@smithy/core/dist-es/normalizeProvider.js","../../../node_modules/.pnpm/@smithy+core@3.18.5/node_modules/@smithy/core/dist-es/submodules/protocols/collect-stream-body.js","../../../node_modules/.pnpm/@smithy+util-stream@4.5.6/node_modules/@smithy/util-stream/dist-es/blob/Uint8ArrayBlobAdapter.js","../../../node_modules/.pnpm/@smithy+util-utf8@4.2.0/node_modules/@smithy/util-utf8/dist-es/toUint8Array.js","../../../node_modules/.pnpm/@smithy+uuid@1.1.0/node_modules/@smithy/uuid/dist-es/v4.js","../../../node_modules/.pnpm/@smithy+uuid@1.1.0/node_modules/@smithy/uuid/dist-es/randomUUID.js","../../../node_modules/.pnpm/@smithy+core@3.18.5/node_modules/@smithy/core/dist-es/setFeature.js","../../../node_modules/.pnpm/@smithy+core@3.18.5/node_modules/@smithy/core/dist-es/util-identity-and-auth/memoizeIdentityProvider.js","../../../node_modules/.pnpm/@smithy+smithy-client@4.9.8/node_modules/@smithy/smithy-client/dist-es/exceptions.js","../../../node_modules/.pnpm/@aws-sdk+middleware-user-agent@3.879.0/node_modules/@aws-sdk/middleware-user-agent/dist-es/user-agent-middleware.js","../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.879.0/node_modules/@aws-sdk/util-endpoints/dist-es/index.js","../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.879.0/node_modules/@aws-sdk/util-endpoints/dist-es/aws.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/cache/EndpointCache.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/lib/isIpAddress.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/lib/isValidHostLabel.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/utils/customEndpointFunctions.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/resolveEndpoint.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/debug/debugId.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/debug/toDebugString.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/types/EndpointError.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateRules.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateConditions.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateCondition.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/utils/callFunction.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateExpression.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/utils/endpointFunctions.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/lib/booleanEquals.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/lib/getAttr.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/lib/getAttrPathList.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/lib/isSet.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/lib/not.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/lib/parseURL.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/lib/stringEquals.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/lib/substring.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/lib/uriEncode.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateTemplate.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/utils/getReferenceValue.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateEndpointRule.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/utils/getEndpointHeaders.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/utils/getEndpointProperties.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/utils/getEndpointUrl.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateErrorRule.js","../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.879.0/node_modules/@aws-sdk/util-endpoints/dist-es/lib/aws/isVirtualHostableS3Bucket.js","../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.879.0/node_modules/@aws-sdk/util-endpoints/dist-es/lib/isIpAddress.js","../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.879.0/node_modules/@aws-sdk/util-endpoints/dist-es/lib/aws/parseArn.js","../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.879.0/node_modules/@aws-sdk/util-endpoints/dist-es/lib/aws/partition.js","../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.879.0/node_modules/@aws-sdk/util-endpoints/dist-es/lib/aws/partitions.json","../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.879.0/node_modules/@aws-sdk/util-endpoints/dist-es/resolveDefaultAwsRegionalEndpointsConfig.js","../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.879.0/node_modules/@aws-sdk/util-endpoints/dist-es/resolveEndpoint.js","../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.879.0/node_modules/@aws-sdk/util-endpoints/dist-es/types/index.js","../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.879.0/node_modules/@aws-sdk/util-endpoints/dist-es/types/EndpointError.js","../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.879.0/node_modules/@aws-sdk/util-endpoints/dist-es/types/EndpointRuleObject.js","../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.879.0/node_modules/@aws-sdk/util-endpoints/dist-es/types/ErrorRuleObject.js","../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.879.0/node_modules/@aws-sdk/util-endpoints/dist-es/types/RuleSetObject.js","../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.879.0/node_modules/@aws-sdk/util-endpoints/dist-es/types/TreeRuleObject.js","../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.879.0/node_modules/@aws-sdk/util-endpoints/dist-es/types/shared.js","../../../node_modules/.pnpm/@aws-sdk+middleware-user-agent@3.879.0/node_modules/@aws-sdk/middleware-user-agent/dist-es/check-features.js","../../../node_modules/.pnpm/@aws-sdk+core@3.879.0/node_modules/@aws-sdk/core/dist-es/submodules/client/emitWarningIfUnsupportedVersion.js","../../../node_modules/.pnpm/@aws-sdk+core@3.879.0/node_modules/@aws-sdk/core/dist-es/submodules/client/setFeature.js","../../../node_modules/.pnpm/@aws-sdk+core@3.879.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/index.js","../../../node_modules/.pnpm/@aws-sdk+core@3.879.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4Signer.js","../../../node_modules/.pnpm/@aws-sdk+core@3.879.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getDateHeader.js","../../../node_modules/.pnpm/@aws-sdk+core@3.879.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getSkewCorrectedDate.js","../../../node_modules/.pnpm/@aws-sdk+core@3.879.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getUpdatedSystemClockOffset.js","../../../node_modules/.pnpm/@aws-sdk+core@3.879.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/isClockSkewed.js","../../../node_modules/.pnpm/@aws-sdk+core@3.879.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/NODE_AUTH_SCHEME_PREFERENCE_OPTIONS.js","../../../node_modules/.pnpm/@aws-sdk+core@3.879.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getArrayForCommaSeparatedString.js","../../../node_modules/.pnpm/@aws-sdk+core@3.879.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getBearerTokenEnvKey.js","../../../node_modules/.pnpm/@aws-sdk+core@3.879.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4Config.js","../../../node_modules/.pnpm/@smithy+signature-v4@5.3.5/node_modules/@smithy/signature-v4/dist-es/SignatureV4.js","../../../node_modules/.pnpm/@smithy+signature-v4@5.3.5/node_modules/@smithy/signature-v4/dist-es/constants.js","../../../node_modules/.pnpm/@smithy+signature-v4@5.3.5/node_modules/@smithy/signature-v4/dist-es/credentialDerivation.js","../../../node_modules/.pnpm/@smithy+signature-v4@5.3.5/node_modules/@smithy/signature-v4/dist-es/getCanonicalHeaders.js","../../../node_modules/.pnpm/@smithy+signature-v4@5.3.5/node_modules/@smithy/signature-v4/dist-es/getPayloadHash.js","../../../node_modules/.pnpm/@smithy+signature-v4@5.3.5/node_modules/@smithy/signature-v4/dist-es/HeaderFormatter.js","../../../node_modules/.pnpm/@smithy+signature-v4@5.3.5/node_modules/@smithy/signature-v4/dist-es/headerUtil.js","../../../node_modules/.pnpm/@smithy+signature-v4@5.3.5/node_modules/@smithy/signature-v4/dist-es/moveHeadersToQuery.js","../../../node_modules/.pnpm/@smithy+signature-v4@5.3.5/node_modules/@smithy/signature-v4/dist-es/prepareRequest.js","../../../node_modules/.pnpm/@smithy+signature-v4@5.3.5/node_modules/@smithy/signature-v4/dist-es/SignatureV4Base.js","../../../node_modules/.pnpm/@smithy+signature-v4@5.3.5/node_modules/@smithy/signature-v4/dist-es/getCanonicalQuery.js","../../../node_modules/.pnpm/@smithy+signature-v4@5.3.5/node_modules/@smithy/signature-v4/dist-es/utilDate.js","../../../node_modules/.pnpm/@aws-sdk+core@3.879.0/node_modules/@aws-sdk/core/dist-es/submodules/protocols/common.js","../../../node_modules/.pnpm/@smithy+smithy-client@4.9.8/node_modules/@smithy/smithy-client/dist-es/collect-stream-body.js","../../../node_modules/.pnpm/@smithy+smithy-client@4.9.8/node_modules/@smithy/smithy-client/dist-es/default-error-handler.js","../../../node_modules/.pnpm/@smithy+smithy-client@4.9.8/node_modules/@smithy/smithy-client/dist-es/defaults-mode.js","../../../node_modules/.pnpm/@smithy+smithy-client@4.9.8/node_modules/@smithy/smithy-client/dist-es/emitWarningIfUnsupportedVersion.js","../../../node_modules/.pnpm/@smithy+smithy-client@4.9.8/node_modules/@smithy/smithy-client/dist-es/extensions/defaultExtensionConfiguration.js","../../../node_modules/.pnpm/@smithy+smithy-client@4.9.8/node_modules/@smithy/smithy-client/dist-es/extensions/checksum.js","../../../node_modules/.pnpm/@smithy+smithy-client@4.9.8/node_modules/@smithy/smithy-client/dist-es/extensions/retry.js","../../../node_modules/.pnpm/@smithy+smithy-client@4.9.8/node_modules/@smithy/smithy-client/dist-es/NoOpLogger.js","../../../node_modules/.pnpm/@aws-sdk+middleware-user-agent@3.879.0/node_modules/@aws-sdk/middleware-user-agent/dist-es/constants.js","../../../node_modules/.pnpm/@aws-sdk+middleware-user-agent@3.879.0/node_modules/@aws-sdk/middleware-user-agent/dist-es/encode-features.js","../../../node_modules/.pnpm/@aws-sdk+middleware-user-agent@3.879.0/node_modules/@aws-sdk/middleware-user-agent/dist-es/index.js","../../../node_modules/.pnpm/@smithy+config-resolver@4.4.3/node_modules/@smithy/config-resolver/dist-es/regionConfig/resolveRegionConfig.js","../../../node_modules/.pnpm/@smithy+config-resolver@4.4.3/node_modules/@smithy/config-resolver/dist-es/regionConfig/checkRegion.js","../../../node_modules/.pnpm/@smithy+config-resolver@4.4.3/node_modules/@smithy/config-resolver/dist-es/regionConfig/getRealRegion.js","../../../node_modules/.pnpm/@smithy+config-resolver@4.4.3/node_modules/@smithy/config-resolver/dist-es/regionConfig/isFipsRegion.js","../../../node_modules/.pnpm/@smithy+middleware-content-length@4.2.5/node_modules/@smithy/middleware-content-length/dist-es/index.js","../../../node_modules/.pnpm/@smithy+middleware-endpoint@4.3.12/node_modules/@smithy/middleware-endpoint/dist-es/getEndpointPlugin.js","../../../node_modules/.pnpm/@smithy+middleware-endpoint@4.3.12/node_modules/@smithy/middleware-endpoint/dist-es/endpointMiddleware.js","../../../node_modules/.pnpm/@smithy+middleware-endpoint@4.3.12/node_modules/@smithy/middleware-endpoint/dist-es/adaptors/getEndpointFromInstructions.js","../../../node_modules/.pnpm/@smithy+middleware-endpoint@4.3.12/node_modules/@smithy/middleware-endpoint/dist-es/service-customizations/s3.js","../../../node_modules/.pnpm/@smithy+middleware-endpoint@4.3.12/node_modules/@smithy/middleware-endpoint/dist-es/adaptors/createConfigValueProvider.js","../../../node_modules/.pnpm/@smithy+middleware-endpoint@4.3.12/node_modules/@smithy/middleware-endpoint/dist-es/adaptors/getEndpointFromConfig.js","../../../node_modules/.pnpm/@smithy+middleware-endpoint@4.3.12/node_modules/@smithy/middleware-endpoint/dist-es/adaptors/getEndpointUrlConfig.js","../../../node_modules/.pnpm/@smithy+middleware-endpoint@4.3.12/node_modules/@smithy/middleware-endpoint/dist-es/adaptors/toEndpointV1.js","../../../node_modules/.pnpm/@smithy+middleware-endpoint@4.3.12/node_modules/@smithy/middleware-endpoint/dist-es/resolveEndpointConfig.js","../../../node_modules/.pnpm/@smithy+middleware-retry@4.4.12/node_modules/@smithy/middleware-retry/dist-es/configurations.js","../../../node_modules/.pnpm/@smithy+util-retry@4.2.5/node_modules/@smithy/util-retry/dist-es/AdaptiveRetryStrategy.js","../../../node_modules/.pnpm/@smithy+util-retry@4.2.5/node_modules/@smithy/util-retry/dist-es/config.js","../../../node_modules/.pnpm/@smithy+util-retry@4.2.5/node_modules/@smithy/util-retry/dist-es/DefaultRateLimiter.js","../../../node_modules/.pnpm/@smithy+service-error-classification@4.2.5/node_modules/@smithy/service-error-classification/dist-es/index.js","../../../node_modules/.pnpm/@smithy+service-error-classification@4.2.5/node_modules/@smithy/service-error-classification/dist-es/constants.js","../../../node_modules/.pnpm/@smithy+util-retry@4.2.5/node_modules/@smithy/util-retry/dist-es/StandardRetryStrategy.js","../../../node_modules/.pnpm/@smithy+util-retry@4.2.5/node_modules/@smithy/util-retry/dist-es/constants.js","../../../node_modules/.pnpm/@smithy+util-retry@4.2.5/node_modules/@smithy/util-retry/dist-es/defaultRetryBackoffStrategy.js","../../../node_modules/.pnpm/@smithy+util-retry@4.2.5/node_modules/@smithy/util-retry/dist-es/defaultRetryToken.js","../../../node_modules/.pnpm/@smithy+middleware-retry@4.4.12/node_modules/@smithy/middleware-retry/dist-es/retryMiddleware.js","../../../node_modules/.pnpm/@smithy+middleware-retry@4.4.12/node_modules/@smithy/middleware-retry/dist-es/isStreamingPayload/isStreamingPayload.js","../../../node_modules/.pnpm/@smithy+middleware-retry@4.4.12/node_modules/@smithy/middleware-retry/dist-es/util.js","../../../node_modules/.pnpm/@smithy+config-resolver@4.4.3/node_modules/@smithy/config-resolver/dist-es/endpointsConfig/NodeUseDualstackEndpointConfigOptions.js","../../../node_modules/.pnpm/@smithy+util-config-provider@4.2.0/node_modules/@smithy/util-config-provider/dist-es/booleanSelector.js","../../../node_modules/.pnpm/@smithy+util-config-provider@4.2.0/node_modules/@smithy/util-config-provider/dist-es/types.js","../../../node_modules/.pnpm/@smithy+config-resolver@4.4.3/node_modules/@smithy/config-resolver/dist-es/endpointsConfig/NodeUseFipsEndpointConfigOptions.js","../../../node_modules/.pnpm/@smithy+config-resolver@4.4.3/node_modules/@smithy/config-resolver/dist-es/regionConfig/config.js","../../../node_modules/.pnpm/@aws-sdk+util-user-agent-node@3.879.0/node_modules/@aws-sdk/util-user-agent-node/dist-es/defaultUserAgent.js","../../../node_modules/.pnpm/@aws-sdk+util-user-agent-node@3.879.0/node_modules/@aws-sdk/util-user-agent-node/dist-es/is-crt-available.js","../../../node_modules/.pnpm/@aws-sdk+util-user-agent-node@3.879.0/node_modules/@aws-sdk/util-user-agent-node/dist-es/crt-availability.js","../../../node_modules/.pnpm/@aws-sdk+util-user-agent-node@3.879.0/node_modules/@aws-sdk/util-user-agent-node/dist-es/nodeAppIdConfigOptions.js","../../../node_modules/.pnpm/@aws-sdk+util-user-agent-node@3.879.0/node_modules/@aws-sdk/util-user-agent-node/dist-es/index.js","../../../node_modules/.pnpm/@smithy+hash-node@4.2.5/node_modules/@smithy/hash-node/dist-es/index.js","../../../node_modules/.pnpm/@smithy+util-body-length-node@4.2.1/node_modules/@smithy/util-body-length-node/dist-es/calculateBodyLength.js","../../../node_modules/.pnpm/@smithy+util-defaults-mode-node@4.2.14/node_modules/@smithy/util-defaults-mode-node/dist-es/resolveDefaultsModeConfig.js","../../../node_modules/.pnpm/@smithy+util-defaults-mode-node@4.2.14/node_modules/@smithy/util-defaults-mode-node/dist-es/constants.js","../../../node_modules/.pnpm/@smithy+util-defaults-mode-node@4.2.14/node_modules/@smithy/util-defaults-mode-node/dist-es/defaultsModeConfig.js","../../../node_modules/.pnpm/@aws-sdk+region-config-resolver@3.873.0/node_modules/@aws-sdk/region-config-resolver/dist-es/extensions/index.js","../../../node_modules/.pnpm/@aws-sdk+region-config-resolver@3.873.0/node_modules/@aws-sdk/region-config-resolver/dist-es/index.js","../../../node_modules/.pnpm/@aws-sdk+region-config-resolver@3.873.0/node_modules/@aws-sdk/region-config-resolver/dist-es/regionConfig/index.js","../../../node_modules/.pnpm/@aws-sdk+region-config-resolver@3.873.0/node_modules/@aws-sdk/region-config-resolver/dist-es/regionConfig/config.js","../../../node_modules/.pnpm/@aws-sdk+region-config-resolver@3.873.0/node_modules/@aws-sdk/region-config-resolver/dist-es/regionConfig/resolveRegionConfig.js","../../../node_modules/.pnpm/@aws-sdk+region-config-resolver@3.873.0/node_modules/@aws-sdk/region-config-resolver/dist-es/regionConfig/getRealRegion.js","../../../node_modules/.pnpm/@aws-sdk+region-config-resolver@3.873.0/node_modules/@aws-sdk/region-config-resolver/dist-es/regionConfig/isFipsRegion.js"],"names":["init_cjs_shims","getAllAliases","__name","name","aliases","_aliases","push","alias","getMiddlewareNameWithAliases","length","join","constructStack","absoluteEntries","relativeEntries","identifyOnResolve","entriesNameSet","Set","sort","entries","a","b","stepWeights","step","priorityWeights","priority","removeByName","toRemove","isRemoved","filterCb","entry","includes","delete","filter","removeByReference","middleware","cloneTo","toStack","forEach","add","addRelativeTo","stack","expandRelativeMiddlewareList","from","expandedMiddlewareList","before","after","reverse","getMiddlewareList","debug","normalizedAbsoluteEntries","normalizedRelativeEntries","normalizedEntriesNameMap","normalizedEntry","toMiddleware","undefined","Error","relation","mainChain","map","reduce","wholeList","options","override","some","has","toOverrideIndex","findIndex","toOverride","splice","clone","use","plugin","applyToStack","remove","removeByTag","tags","concat","cloned","identify","mw","toggle","resolve","handler","context","console","log","initialize","serialize","build","finalizeRequest","deserialize","high","normal","low","Client","config","middlewareStack","initConfig","handlers","send","command","optionsOrCb","cb","callback","useHandlerCache","cacheMiddleware","WeakMap","get","resolveMiddleware","set","then","result","output","err","catch","destroy","requestHandler","EndpointURLScheme","AlgorithmId","SMITHY_CONTEXT_KEY","deref","schemaRef","getHttpHandlerExtensionConfiguration","runtimeConfig","setHttpHandler","httpHandler","updateHttpClientConfig","key","value","httpHandlerConfigs","resolveHttpHandlerRuntimeConfig","httpHandlerExtensionConfiguration","getSmithyContext","normalizeProvider","input","promisified","Promise","translateTraits","indicator","traits","i","trait","NormalizedSchema","ref","memberName","symbol","Symbol","for","schema","_isMemberSchema","memberTraits","normalizedTraits","traitStack","_ref","isMemberSchema","traitSet","Object","assign","computedMemberTraits","getMemberTraits","isStaticSchema","String","getName","hasInstance","lhs","isPrototype","prototype","isPrototypeOf","ns","of","sc","getMergedTraits","JSON","stringify","getSchema","withNamespace","short","split","getMemberName","isListSchema","isMapSchema","isStructSchema","isBlobSchema","isTimestampSchema","isUnitSchema","isDocumentSchema","isStringSchema","isBooleanSchema","isNumericSchema","isBigIntegerSchema","isBigDecimalSchema","isStreaming","streaming","isIdempotencyToken","match","idempotencyToken","getOwnTraits","getKeySchema","isDoc","isMap","memberSchema","member","getValueSchema","isList","getMemberSchema","struct","indexOf","getMemberSchemas","buffer","k","v","structIterator","ignored","getEventStreamMember","internalCtorAccess","Array","isArray","SENSITIVE_STRING","schemaLogFilter","data","sensitive","isSensitive","object","newObject","memberNs","Command","classBuilder","ClassBuilder","resolveMiddlewareWithContext","clientStack","configuration","middlewareFn","clientName","commandName","inputFilterSensitiveLog","outputFilterSensitiveLog","smithyContext","additionalContext","CommandCtor","bind","logger","handlerExecutionContext","commandInstance","request","handle","_init","_ep","_middlewareFn","_commandName","_clientName","_additionalContext","_smithyContext","_inputFilterSensitiveLog","_outputFilterSensitiveLog","_serializer","_deserializer","_operationSchema","init","ep","endpointParameterInstructions","m","middlewareSupplier","s","service","operation","c","n","f","inputFilter","_","outputFilter","ser","serializer","de","deserializer","operationSchema","closure","CommandRef","getEndpointParameterInstructions","op","resolveHostHeaderConfig","hostHeaderMiddleware","next","args","HttpRequest","isInstance","handlerProtocol","metadata","headers","hostname","port","host","hostHeaderMiddlewareOptions","getHostHeaderPlugin","loggerMiddleware","response","dynamoDbDocumentClientOptions","overrideInputFilterSensitiveLog","overrideOutputFilterSensitiveLog","$metadata","outputWithoutMetadata","info","error","loggerMiddlewareOptions","getLoggerPlugin","TRACE_ID_HEADER_NAME","ENV_LAMBDA_FUNCTION_NAME","ENV_TRACE_ID","recursionDetectionMiddleware","runtime","traceIdHeader","keys","find","h","toLowerCase","hasOwnProperty","functionName","process","env","traceId","nonEmptyString","str","addRecursionDetectionMiddlewareOptions","getRecursionDetectionPlugin","resolveAuthOptions","candidateAuthOptions","authSchemePreference","preferredAuthOptions","preferredSchemeName","candidateAuthOption","candidateAuthSchemeName","schemeId","convertHttpAuthSchemesToMap","httpAuthSchemes","Map","scheme","httpAuthSchemeMiddleware","mwOptions","httpAuthSchemeProvider","httpAuthSchemeParametersProvider","resolvedOptions","authSchemes","failureReasons","option","identityProvider","identityProviderConfigProvider","identityProperties","signingProperties","propertiesExtractor","selectedHttpAuthScheme","httpAuthOption","identity","signer","httpAuthSchemeEndpointRuleSetMiddlewareOptions","getHttpAuthSchemeEndpointRuleSetPlugin","deserializerMiddleware","parsed","defineProperty","enumerable","writable","configurable","hint","message","e","warn","$responseBodyText","$response","body","HttpResponse","headerEntries","httpStatusCode","statusCode","requestId","findHeader","extendedRequestId","cfId","pattern","serializerMiddleware","endpointConfig","endpoint","endpointV2","url","urlParser","deserializerMiddlewareOption","serializerMiddlewareOption","getSerdePlugin","commandStack","defaultErrorHandler","defaultSuccessHandler","httpResponse","httpSigningMiddleware","sign","errorHandler","successHandler","httpSigningMiddlewareOptions","getHttpSigningPlugin","DefaultIdentityProviderConfig","getIdentityProvider","toUint8Array","fromUtf8","ArrayBuffer","isView","Uint8Array","byteOffset","byteLength","BYTES_PER_ELEMENT","Uint8ArrayBlobAdapter","fromString","source","encoding","mutate","fromBase64","setPrototypeOf","transformToString","toBase64","toUtf8","collectBody","streamBody","fromContext","streamCollector","randomUUID","crypto","decimalToHex","toString","padStart","v4","rnds","getRandomValues","setFeature","feature","__smithy_context","features","createIsIdentityExpiredFunction","expirationMs","isIdentityExpired","doesIdentityRequireRefresh","expiration","getTime","Date","now","EXPIRATION_MS","memoizeIdentityProvider","provider","isExpired","requiresRefresh","normalizedProvider","resolved","pending","hasResult","isConstant","coalesceProvider","forceRefresh","DEFAULT_UA_APP_ID","isValidUserAgentAppId","appId","resolveUserAgentConfig","normalizedAppIdProvider","userAgentAppId","customUserAgent","ServiceException","$fault","$retryable","getPrototypeOf","candidate","Boolean","instance","decorateServiceException","exception","additions","Message","EndpointCache","capacity","parameters","size","params","endpointParams","resolver","hash","done","param","val","IP_V4_REGEX","RegExp","isIpAddress","test","startsWith","endsWith","VALID_HOST_LABEL_REGEX","isValidHostLabel","allowSubDomains","labels","label","customEndpointFunctions","debugId","toDebugString","fn","argv","EndpointError","booleanEquals","value1","value2","getAttrPathList","path","parts","pathList","part","squareBracketIndex","arrayIndex","slice","Number","isNaN","parseInt","getAttr","acc","index","isSet","not","DEFAULT_PORTS","HTTP","HTTPS","parseURL","whatwgURL","URL","protocol","query","search","urlString","href","pathname","values","isIp","inputContainsDefaultPort","authority","normalizedPath","stringEquals","substring","start","stop","uriEncode","encodeURIComponent","replace","charCodeAt","toUpperCase","endpointFunctions","evaluateTemplate","template","evaluatedTemplateArr","templateContext","referenceRecord","currentIndex","openingBraceIndex","closingBraceIndex","parameterName","refName","attrName","getReferenceValue","evaluateExpression","obj","keyName","group","callFunction","evaluatedArgs","arg","fnSegments","evaluateCondition","fnArgs","toAssign","evaluateConditions","conditions","conditionsReferenceRecord","condition","getEndpointHeaders","headerKey","headerVal","headerValEntry","processedExpr","getEndpointProperties","properties","propertyKey","propertyVal","getEndpointProperty","property","propertyEntry","getEndpointUrl","endpointUrl","expression","evaluateEndpointRule","endpointRule","endpointRuleOptions","evaluateErrorRule","errorRule","evaluateRules","rules","rule","type","endpointOrUndefined","evaluateTreeRule","treeRule","resolveEndpoint","ruleSetObject","paramsWithDefault","default","paramKey","paramDefaultValue","requiredParams","required","requiredParam","isVirtualHostableS3Bucket","ARN_DELIMITER","RESOURCE_DELIMITER","parseArn","segments","arn","partition","region","accountId","resourcePath","resourceId","resource","flat","selectedPartitionsInfo","partitionsInfo","selectedUserAgentPrefix","partitions","regions","outputs","regionData","regionRegex","DEFAULT_PARTITION","id","getUserAgentPrefix","awsEndpointFunctions","aws","state","warningEmitted","emitWarningIfUnsupportedVersion","version","emitWarning","__aws_sdk_context","getDateHeader","date","getSkewCorrectedDate","systemClockOffset","isClockSkewed","clockTime","Math","abs","getUpdatedSystemClockOffset","currentSystemClockOffset","clockTimeInMs","parse","throwSigningPropertyError","validateSigningProperties","authScheme","signerFunction","signingRegion","signingRegionSet","signingName","AwsSdkSigV4Signer","httpRequest","validatedProps","first","second","signedRequest","signingDate","signingService","serverTime","ServerTime","initialSystemClockOffset","clockSkewCorrected","dateHeader","getArrayForCommaSeparatedString","item","trim","getBearerTokenEnvKey","NODE_AUTH_SCHEME_PREFERENCE_ENV_KEY","NODE_AUTH_SCHEME_PREFERENCE_CONFIG_KEY","NODE_AUTH_SCHEME_PREFERENCE_OPTIONS","environmentVariableSelector","bearerTokenKey","configFileSelector","profile","ALGORITHM_QUERY_PARAM","CREDENTIAL_QUERY_PARAM","AMZ_DATE_QUERY_PARAM","SIGNED_HEADERS_QUERY_PARAM","EXPIRES_QUERY_PARAM","SIGNATURE_QUERY_PARAM","TOKEN_QUERY_PARAM","AUTH_HEADER","AMZ_DATE_HEADER","DATE_HEADER","GENERATED_HEADERS","SIGNATURE_HEADER","SHA256_HEADER","TOKEN_HEADER","ALWAYS_UNSIGNABLE_HEADERS","authorization","connection","expect","pragma","referer","te","trailer","upgrade","PROXY_HEADER_PATTERN","SEC_HEADER_PATTERN","ALGORITHM_IDENTIFIER","EVENT_ALGORITHM_IDENTIFIER","UNSIGNED_PAYLOAD","MAX_CACHE_SIZE","KEY_TYPE_IDENTIFIER","MAX_PRESIGNED_TTL","signingKeyCache","cacheQueue","createScope","shortDate","getSigningKey","sha256Constructor","credentials","credsHash","hmac","secretAccessKey","accessKeyId","cacheKey","toHex","sessionToken","shift","signable","ctor","secret","update","digest","getCanonicalHeaders","unsignableHeaders","signableHeaders","canonical","headerName","canonicalHeaderName","getPayloadHash","hashConstructor","isArrayBuffer","hashCtor","HeaderFormatter","format","chunks","bytes","formatHeaderValue","out","carry","position","chunk","header","shortView","DataView","setUint8","setInt16","intView","setInt32","longBytes","binView","setUint16","binBytes","utf8Bytes","strView","strBytes","tsBytes","Int64","fromNumber","valueOf","UUID_PATTERN","uuidBytes","fromHex","HEADER_VALUE_TYPE","number","remaining","round","negate","negative","hasHeader","soughtHeader","moveHeadersToQuery","lname","unhoistableHeaders","hoistableHeaders","prepareRequest","getCanonicalQuery","serialized","encodedKey","escapeUri","encoded","iso8601","time","toDate","toISOString","SignatureV4Base","regionProvider","credentialProvider","sha256","uriEscapePath","applyChecksum","createCanonicalRequest","canonicalHeaders","payloadHash","sortedHeaders","method","getCanonicalPath","createStringToSign","longDate","credentialScope","canonicalRequest","algorithmIdentifier","hashedRequest","normalizedPathSegments","pathSegment","pop","doubleEncoded","validateResolvedCredentials","formatDate","getCanonicalHeaderList","SignatureV4","headerFormatter","presign","originalRequest","expiresIn","reject","scope","getSignature","toSign","signString","payload","signEvent","signMessage","signRequest","priorSignature","hashedPayload","hashedHeaders","stringToSign","signableMessage","promise","signature","requestToSign","keyPromise","resolveAwsSdkSigV4Config","inputCredentials","isUserSupplied","resolvedCredentials","memoizedProvider","normalizeCredentialProvider","credentialDefaultProvider","boundProvider","bindCallerConfig","attributed","creds","setCredentialFeature","memoized","configBound","signingEscapePath","regionInfoProvider","useFipsEndpoint","useDualstackEndpoint","regionInfo","serviceId","SignerCtor","signerConstructor","defaultSigningName","resolvedConfig","credentialsProvider","parentClientConfig","callerClientConfig","throwDefaultError","parsedBody","exceptionCtor","errorCode","deserializeMetadata","code","Code","withBaseException","ExceptionCtor","loadConfigsForDefaultMode","mode","retryMode","connectionTimeout","getChecksumConfiguration","checksumAlgorithms","algorithmId","checksumConstructor","addChecksumAlgorithm","algo","resolveChecksumRuntimeConfig","clientConfig","checksumAlgorithm","getRetryConfiguration","setRetryStrategy","retryStrategy","resolveRetryRuntimeConfig","retryStrategyConfiguration","getDefaultExtensionConfiguration","resolveDefaultRuntimeConfig","NoOpLogger","trace","collectBodyString","utf8Encoder","ACCOUNT_ID_ENDPOINT_REGEX","checkFeatures","acquireInitialRetryToken","accountIdEndpointMode","$source","USER_AGENT","X_AMZ_USER_AGENT","SPACE","UA_NAME_SEPARATOR","UA_NAME_ESCAPE_REGEX","UA_VALUE_ESCAPE_REGEX","UA_ESCAPE_CHAR","BYTE_LIMIT","encodeFeatures","userAgentMiddleware","userAgent","escapeUserAgent","defaultUserAgent","defaultUserAgentProvider","awsContext","prefix","sdkUserAgentValue","normalUAValue","section","userAgentPair","prefixSeparatorIndex","uaName","getUserAgentMiddlewareOptions","getUserAgentPlugin","validRegions","checkRegion","check","isFipsRegion","getRealRegion","resolveRegionConfig","providedRegion","realRegion","CONTENT_LENGTH_HEADER","contentLengthMiddleware","bodyLengthChecker","contentLengthMiddlewareOptions","getContentLengthPlugin","resolveParamsForS3","bucket","Bucket","isArnBucketName","ForcePathStyle","isDnsCompatibleBucketName","Endpoint","DisableMultiRegionAccessPoints","disableMultiRegionAccessPoints","DisableMRAP","DOMAIN_PATTERN","IP_ADDRESS_PATTERN","DOTS_PATTERN","bucketName","isArn","isValidArn","createConfigValueProvider","configKey","canonicalEndpointParamKey","configProvider","configValue","CredentialScope","AccountId","isCustomEndpoint","ENV_ENDPOINT_URL","CONFIG_ENDPOINT_URL","getEndpointUrlConfig","serviceSuffixParts","w","serviceEndpointUrl","services","servicesSection","CONFIG_PREFIX_SEPARATOR","servicePrefixParts","getEndpointFromConfig","loadConfig","toEndpointV1","parseUrl","getEndpointFromInstructions","commandInput","instructionsSupplier","endpointFromConfig","serviceConfiguredEndpoint","resolveParams","endpointProvider","instructions","instruction","endpointMiddleware","signing_region","signing_service","endpointMiddlewareOptions","getEndpointPlugin","resolveEndpointConfig","tls","customEndpointProvider","configuredEndpointPromise","RETRY_MODES","DEFAULT_MAX_ATTEMPTS","DEFAULT_RETRY_MODE","STANDARD","THROTTLING_ERROR_CODES","TRANSIENT_ERROR_CODES","TRANSIENT_ERROR_STATUS_CODES","NODEJS_TIMEOUT_ERROR_CODES","NODEJS_NETWORK_ERROR_CODES","isRetryableByTrait","isClockSkewCorrectedError","isBrowserNetworkError","errorMessages","isValid","TypeError","isThrottlingError","throttling","isTransientError","depth","cause","isServerError","DefaultRateLimiter","setTimeoutFn","setTimeout","beta","minCapacity","minFillRate","scaleConstant","smooth","currentCapacity","enabled","lastMaxRate","measuredTxRate","requestCount","fillRate","lastThrottleTime","lastTimestamp","lastTxRateBucket","maxCapacity","timeWindow","currentTimeInSeconds","getCurrentTimeInSeconds","floor","getSendToken","acquireTokenBucket","amount","refillTokenBucket","delay","timestamp","fillAmount","min","updateClientSendingRate","calculatedRate","updateMeasuredRate","rateToUse","calculateTimeWindow","cubicThrottle","enableTokenBucket","cubicSuccess","newRate","updateTokenBucketRate","getPrecise","pow","max","t","timeBucket","currentRate","num","parseFloat","toFixed","DEFAULT_RETRY_DELAY_BASE","MAXIMUM_RETRY_DELAY","THROTTLING_RETRY_DELAY_BASE","INITIAL_RETRY_TOKENS","RETRY_COST","TIMEOUT_RETRY_COST","NO_RETRY_INCREMENT","INVOCATION_ID_HEADER","REQUEST_HEADER","getDefaultRetryBackoffStrategy","delayBase","computeNextBackoffDelay","attempts","random","setDelayBase","createDefaultRetryToken","retryDelay","retryCount","retryCost","getRetryCount","getRetryDelay","getRetryCost","StandardRetryStrategy","maxAttempts","retryBackoffStrategy","maxAttemptsProvider","retryTokenScope","refreshRetryTokenForRetry","token","errorInfo","getMaxAttempts","shouldRetry","errorType","delayFromErrorType","retryAfterHint","capacityCost","getCapacityCost","recordSuccess","getCapacity","tokenToRenew","isRetryableError","AdaptiveRetryStrategy","rateLimiter","standardRetryStrategy","ADAPTIVE","ENV_MAX_ATTEMPTS","CONFIG_MAX_ATTEMPTS","NODE_MAX_ATTEMPT_CONFIG_OPTIONS","maxAttempt","resolveRetryConfig","_retryMode","_maxAttempts","ENV_RETRY_MODE","CONFIG_RETRY_MODE","NODE_RETRY_MODE_CONFIG_OPTIONS","isStreamingPayload","Readable","ReadableStream","asSdkError","retryMiddleware","isRetryStrategyV2","retryToken","lastError","totalRetryDelay","isRequest","retryErrorInfo","getRetryErrorInfo","refreshError","retry","getRetryErrorType","getRetryAfterHint","retryMiddlewareOptions","getRetryPlugin","retryAfterHeaderName","retryAfter","retryAfterSeconds","retryAfterDate","booleanSelector","SelectorType","ENV_USE_DUALSTACK_ENDPOINT","CONFIG_USE_DUALSTACK_ENDPOINT","NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS","ENV","CONFIG","ENV_USE_FIPS_ENDPOINT","CONFIG_USE_FIPS_ENDPOINT","NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS","REGION_ENV_NAME","REGION_INI_NAME","NODE_REGION_CONFIG_OPTIONS","NODE_REGION_CONFIG_FILE_OPTIONS","preferredFile","isCrtAvailable","createDefaultUserAgentProvider","clientVersion","sections","platform","release","versions","node","crtAvailable","AWS_EXECUTION_ENV","resolvedUserAgent","UA_APP_ID_ENV_NAME","UA_APP_ID_INI_NAME","UA_APP_ID_INI_NAME_DEPRECATED","NODE_APP_ID_CONFIG_OPTIONS","Hash","reset","toHash","castSourceData","createHmac","createHash","toCast","Buffer","isBuffer","fromArrayBuffer","calculateBodyLength","end","ReadStream","lstatSync","fd","fstatSync","AWS_REGION_ENV","AWS_DEFAULT_REGION_ENV","ENV_IMDS_DISABLED","DEFAULTS_MODE_OPTIONS","IMDS_REGION_PATH","AWS_DEFAULTS_MODE_ENV","AWS_DEFAULTS_MODE_CONFIG","NODE_DEFAULTS_MODE_CONFIG_OPTIONS","resolveDefaultsModeConfig","defaultsMode","memoize","resolveNodeDefaultsModeAuto","toLocaleLowerCase","clientRegion","resolvedRegion","inferredRegion","inferPhysicalRegion","getInstanceMetadataEndpoint","getAwsRegionExtensionConfiguration","setRegion","resolveAwsRegionExtensionConfiguration","awsRegionExtensionConfiguration"],"mappings":"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","file":"ZI7GOR2D.cjs","sourcesContent":["import { constructStack } from \"@smithy/middleware-stack\";\nexport class Client {\n config;\n middlewareStack = constructStack();\n initConfig;\n handlers;\n constructor(config) {\n this.config = config;\n }\n send(command, optionsOrCb, cb) {\n const options = typeof optionsOrCb !== \"function\" ? optionsOrCb : undefined;\n const callback = typeof optionsOrCb === \"function\" ? optionsOrCb : cb;\n const useHandlerCache = options === undefined && this.config.cacheMiddleware === true;\n let handler;\n if (useHandlerCache) {\n if (!this.handlers) {\n this.handlers = new WeakMap();\n }\n const handlers = this.handlers;\n if (handlers.has(command.constructor)) {\n handler = handlers.get(command.constructor);\n }\n else {\n handler = command.resolveMiddleware(this.middlewareStack, this.config, options);\n handlers.set(command.constructor, handler);\n }\n }\n else {\n delete this.handlers;\n handler = command.resolveMiddleware(this.middlewareStack, this.config, options);\n }\n if (callback) {\n handler(command)\n .then((result) => callback(null, result.output), (err) => callback(err))\n .catch(() => { });\n }\n else {\n return handler(command).then((result) => result.output);\n }\n }\n destroy() {\n this.config?.requestHandler?.destroy?.();\n delete this.handlers;\n }\n}\n","const getAllAliases = (name, aliases) => {\n const _aliases = [];\n if (name) {\n _aliases.push(name);\n }\n if (aliases) {\n for (const alias of aliases) {\n _aliases.push(alias);\n }\n }\n return _aliases;\n};\nconst getMiddlewareNameWithAliases = (name, aliases) => {\n return `${name || \"anonymous\"}${aliases && aliases.length > 0 ? ` (a.k.a. ${aliases.join(\",\")})` : \"\"}`;\n};\nexport const constructStack = () => {\n let absoluteEntries = [];\n let relativeEntries = [];\n let identifyOnResolve = false;\n const entriesNameSet = new Set();\n const sort = (entries) => entries.sort((a, b) => stepWeights[b.step] - stepWeights[a.step] ||\n priorityWeights[b.priority || \"normal\"] - priorityWeights[a.priority || \"normal\"]);\n const removeByName = (toRemove) => {\n let isRemoved = false;\n const filterCb = (entry) => {\n const aliases = getAllAliases(entry.name, entry.aliases);\n if (aliases.includes(toRemove)) {\n isRemoved = true;\n for (const alias of aliases) {\n entriesNameSet.delete(alias);\n }\n return false;\n }\n return true;\n };\n absoluteEntries = absoluteEntries.filter(filterCb);\n relativeEntries = relativeEntries.filter(filterCb);\n return isRemoved;\n };\n const removeByReference = (toRemove) => {\n let isRemoved = false;\n const filterCb = (entry) => {\n if (entry.middleware === toRemove) {\n isRemoved = true;\n for (const alias of getAllAliases(entry.name, entry.aliases)) {\n entriesNameSet.delete(alias);\n }\n return false;\n }\n return true;\n };\n absoluteEntries = absoluteEntries.filter(filterCb);\n relativeEntries = relativeEntries.filter(filterCb);\n return isRemoved;\n };\n const cloneTo = (toStack) => {\n absoluteEntries.forEach((entry) => {\n toStack.add(entry.middleware, { ...entry });\n });\n relativeEntries.forEach((entry) => {\n toStack.addRelativeTo(entry.middleware, { ...entry });\n });\n toStack.identifyOnResolve?.(stack.identifyOnResolve());\n return toStack;\n };\n const expandRelativeMiddlewareList = (from) => {\n const expandedMiddlewareList = [];\n from.before.forEach((entry) => {\n if (entry.before.length === 0 && entry.after.length === 0) {\n expandedMiddlewareList.push(entry);\n }\n else {\n expandedMiddlewareList.push(...expandRelativeMiddlewareList(entry));\n }\n });\n expandedMiddlewareList.push(from);\n from.after.reverse().forEach((entry) => {\n if (entry.before.length === 0 && entry.after.length === 0) {\n expandedMiddlewareList.push(entry);\n }\n else {\n expandedMiddlewareList.push(...expandRelativeMiddlewareList(entry));\n }\n });\n return expandedMiddlewareList;\n };\n const getMiddlewareList = (debug = false) => {\n const normalizedAbsoluteEntries = [];\n const normalizedRelativeEntries = [];\n const normalizedEntriesNameMap = {};\n absoluteEntries.forEach((entry) => {\n const normalizedEntry = {\n ...entry,\n before: [],\n after: [],\n };\n for (const alias of getAllAliases(normalizedEntry.name, normalizedEntry.aliases)) {\n normalizedEntriesNameMap[alias] = normalizedEntry;\n }\n normalizedAbsoluteEntries.push(normalizedEntry);\n });\n relativeEntries.forEach((entry) => {\n const normalizedEntry = {\n ...entry,\n before: [],\n after: [],\n };\n for (const alias of getAllAliases(normalizedEntry.name, normalizedEntry.aliases)) {\n normalizedEntriesNameMap[alias] = normalizedEntry;\n }\n normalizedRelativeEntries.push(normalizedEntry);\n });\n normalizedRelativeEntries.forEach((entry) => {\n if (entry.toMiddleware) {\n const toMiddleware = normalizedEntriesNameMap[entry.toMiddleware];\n if (toMiddleware === undefined) {\n if (debug) {\n return;\n }\n throw new Error(`${entry.toMiddleware} is not found when adding ` +\n `${getMiddlewareNameWithAliases(entry.name, entry.aliases)} ` +\n `middleware ${entry.relation} ${entry.toMiddleware}`);\n }\n if (entry.relation === \"after\") {\n toMiddleware.after.push(entry);\n }\n if (entry.relation === \"before\") {\n toMiddleware.before.push(entry);\n }\n }\n });\n const mainChain = sort(normalizedAbsoluteEntries)\n .map(expandRelativeMiddlewareList)\n .reduce((wholeList, expandedMiddlewareList) => {\n wholeList.push(...expandedMiddlewareList);\n return wholeList;\n }, []);\n return mainChain;\n };\n const stack = {\n add: (middleware, options = {}) => {\n const { name, override, aliases: _aliases } = options;\n const entry = {\n step: \"initialize\",\n priority: \"normal\",\n middleware,\n ...options,\n };\n const aliases = getAllAliases(name, _aliases);\n if (aliases.length > 0) {\n if (aliases.some((alias) => entriesNameSet.has(alias))) {\n if (!override)\n throw new Error(`Duplicate middleware name '${getMiddlewareNameWithAliases(name, _aliases)}'`);\n for (const alias of aliases) {\n const toOverrideIndex = absoluteEntries.findIndex((entry) => entry.name === alias || entry.aliases?.some((a) => a === alias));\n if (toOverrideIndex === -1) {\n continue;\n }\n const toOverride = absoluteEntries[toOverrideIndex];\n if (toOverride.step !== entry.step || entry.priority !== toOverride.priority) {\n throw new Error(`\"${getMiddlewareNameWithAliases(toOverride.name, toOverride.aliases)}\" middleware with ` +\n `${toOverride.priority} priority in ${toOverride.step} step cannot ` +\n `be overridden by \"${getMiddlewareNameWithAliases(name, _aliases)}\" middleware with ` +\n `${entry.priority} priority in ${entry.step} step.`);\n }\n absoluteEntries.splice(toOverrideIndex, 1);\n }\n }\n for (const alias of aliases) {\n entriesNameSet.add(alias);\n }\n }\n absoluteEntries.push(entry);\n },\n addRelativeTo: (middleware, options) => {\n const { name, override, aliases: _aliases } = options;\n const entry = {\n middleware,\n ...options,\n };\n const aliases = getAllAliases(name, _aliases);\n if (aliases.length > 0) {\n if (aliases.some((alias) => entriesNameSet.has(alias))) {\n if (!override)\n throw new Error(`Duplicate middleware name '${getMiddlewareNameWithAliases(name, _aliases)}'`);\n for (const alias of aliases) {\n const toOverrideIndex = relativeEntries.findIndex((entry) => entry.name === alias || entry.aliases?.some((a) => a === alias));\n if (toOverrideIndex === -1) {\n continue;\n }\n const toOverride = relativeEntries[toOverrideIndex];\n if (toOverride.toMiddleware !== entry.toMiddleware || toOverride.relation !== entry.relation) {\n throw new Error(`\"${getMiddlewareNameWithAliases(toOverride.name, toOverride.aliases)}\" middleware ` +\n `${toOverride.relation} \"${toOverride.toMiddleware}\" middleware cannot be overridden ` +\n `by \"${getMiddlewareNameWithAliases(name, _aliases)}\" middleware ${entry.relation} ` +\n `\"${entry.toMiddleware}\" middleware.`);\n }\n relativeEntries.splice(toOverrideIndex, 1);\n }\n }\n for (const alias of aliases) {\n entriesNameSet.add(alias);\n }\n }\n relativeEntries.push(entry);\n },\n clone: () => cloneTo(constructStack()),\n use: (plugin) => {\n plugin.applyToStack(stack);\n },\n remove: (toRemove) => {\n if (typeof toRemove === \"string\")\n return removeByName(toRemove);\n else\n return removeByReference(toRemove);\n },\n removeByTag: (toRemove) => {\n let isRemoved = false;\n const filterCb = (entry) => {\n const { tags, name, aliases: _aliases } = entry;\n if (tags && tags.includes(toRemove)) {\n const aliases = getAllAliases(name, _aliases);\n for (const alias of aliases) {\n entriesNameSet.delete(alias);\n }\n isRemoved = true;\n return false;\n }\n return true;\n };\n absoluteEntries = absoluteEntries.filter(filterCb);\n relativeEntries = relativeEntries.filter(filterCb);\n return isRemoved;\n },\n concat: (from) => {\n const cloned = cloneTo(constructStack());\n cloned.use(from);\n cloned.identifyOnResolve(identifyOnResolve || cloned.identifyOnResolve() || (from.identifyOnResolve?.() ?? false));\n return cloned;\n },\n applyToStack: cloneTo,\n identify: () => {\n return getMiddlewareList(true).map((mw) => {\n const step = mw.step ??\n mw.relation +\n \" \" +\n mw.toMiddleware;\n return getMiddlewareNameWithAliases(mw.name, mw.aliases) + \" - \" + step;\n });\n },\n identifyOnResolve(toggle) {\n if (typeof toggle === \"boolean\")\n identifyOnResolve = toggle;\n return identifyOnResolve;\n },\n resolve: (handler, context) => {\n for (const middleware of getMiddlewareList()\n .map((entry) => entry.middleware)\n .reverse()) {\n handler = middleware(handler, context);\n }\n if (identifyOnResolve) {\n console.log(stack.identify());\n }\n return handler;\n },\n };\n return stack;\n};\nconst stepWeights = {\n initialize: 5,\n serialize: 4,\n build: 3,\n finalizeRequest: 2,\n deserialize: 1,\n};\nconst priorityWeights = {\n high: 3,\n normal: 2,\n low: 1,\n};\n","import { constructStack } from \"@smithy/middleware-stack\";\nimport { SMITHY_CONTEXT_KEY } from \"@smithy/types\";\nimport { schemaLogFilter } from \"./schemaLogFilter\";\nexport class Command {\n middlewareStack = constructStack();\n schema;\n static classBuilder() {\n return new ClassBuilder();\n }\n resolveMiddlewareWithContext(clientStack, configuration, options, { middlewareFn, clientName, commandName, inputFilterSensitiveLog, outputFilterSensitiveLog, smithyContext, additionalContext, CommandCtor, }) {\n for (const mw of middlewareFn.bind(this)(CommandCtor, clientStack, configuration, options)) {\n this.middlewareStack.use(mw);\n }\n const stack = clientStack.concat(this.middlewareStack);\n const { logger } = configuration;\n const handlerExecutionContext = {\n logger,\n clientName,\n commandName,\n inputFilterSensitiveLog,\n outputFilterSensitiveLog,\n [SMITHY_CONTEXT_KEY]: {\n commandInstance: this,\n ...smithyContext,\n },\n ...additionalContext,\n };\n const { requestHandler } = configuration;\n return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext);\n }\n}\nclass ClassBuilder {\n _init = () => { };\n _ep = {};\n _middlewareFn = () => [];\n _commandName = \"\";\n _clientName = \"\";\n _additionalContext = {};\n _smithyContext = {};\n _inputFilterSensitiveLog = undefined;\n _outputFilterSensitiveLog = undefined;\n _serializer = null;\n _deserializer = null;\n _operationSchema;\n init(cb) {\n this._init = cb;\n }\n ep(endpointParameterInstructions) {\n this._ep = endpointParameterInstructions;\n return this;\n }\n m(middlewareSupplier) {\n this._middlewareFn = middlewareSupplier;\n return this;\n }\n s(service, operation, smithyContext = {}) {\n this._smithyContext = {\n service,\n operation,\n ...smithyContext,\n };\n return this;\n }\n c(additionalContext = {}) {\n this._additionalContext = additionalContext;\n return this;\n }\n n(clientName, commandName) {\n this._clientName = clientName;\n this._commandName = commandName;\n return this;\n }\n f(inputFilter = (_) => _, outputFilter = (_) => _) {\n this._inputFilterSensitiveLog = inputFilter;\n this._outputFilterSensitiveLog = outputFilter;\n return this;\n }\n ser(serializer) {\n this._serializer = serializer;\n return this;\n }\n de(deserializer) {\n this._deserializer = deserializer;\n return this;\n }\n sc(operation) {\n this._operationSchema = operation;\n this._smithyContext.operationSchema = operation;\n return this;\n }\n build() {\n const closure = this;\n let CommandRef;\n return (CommandRef = class extends Command {\n input;\n static getEndpointParameterInstructions() {\n return closure._ep;\n }\n constructor(...[input]) {\n super();\n this.input = input ?? {};\n closure._init(this);\n this.schema = closure._operationSchema;\n }\n resolveMiddleware(stack, configuration, options) {\n const op = closure._operationSchema;\n const input = op?.[4] ?? op?.input;\n const output = op?.[5] ?? op?.output;\n return this.resolveMiddlewareWithContext(stack, configuration, options, {\n CommandCtor: CommandRef,\n middlewareFn: closure._middlewareFn,\n clientName: closure._clientName,\n commandName: closure._commandName,\n inputFilterSensitiveLog: closure._inputFilterSensitiveLog ?? (op ? schemaLogFilter.bind(null, input) : (_) => _),\n outputFilterSensitiveLog: closure._outputFilterSensitiveLog ?? (op ? schemaLogFilter.bind(null, output) : (_) => _),\n smithyContext: closure._smithyContext,\n additionalContext: closure._additionalContext,\n });\n }\n serialize = closure._serializer;\n deserialize = closure._deserializer;\n });\n }\n}\n","export var EndpointURLScheme;\n(function (EndpointURLScheme) {\n EndpointURLScheme[\"HTTP\"] = \"http\";\n EndpointURLScheme[\"HTTPS\"] = \"https\";\n})(EndpointURLScheme || (EndpointURLScheme = {}));\n","export * from \"./defaultClientConfiguration\";\nexport * from \"./defaultExtensionConfiguration\";\nexport { AlgorithmId } from \"./checksum\";\n","export var AlgorithmId;\n(function (AlgorithmId) {\n AlgorithmId[\"MD5\"] = \"md5\";\n AlgorithmId[\"CRC32\"] = \"crc32\";\n AlgorithmId[\"CRC32C\"] = \"crc32c\";\n AlgorithmId[\"SHA1\"] = \"sha1\";\n AlgorithmId[\"SHA256\"] = \"sha256\";\n})(AlgorithmId || (AlgorithmId = {}));\nexport const getChecksumConfiguration = (runtimeConfig) => {\n const checksumAlgorithms = [];\n if (runtimeConfig.sha256 !== undefined) {\n checksumAlgorithms.push({\n algorithmId: () => AlgorithmId.SHA256,\n checksumConstructor: () => runtimeConfig.sha256,\n });\n }\n if (runtimeConfig.md5 != undefined) {\n checksumAlgorithms.push({\n algorithmId: () => AlgorithmId.MD5,\n checksumConstructor: () => runtimeConfig.md5,\n });\n }\n return {\n addChecksumAlgorithm(algo) {\n checksumAlgorithms.push(algo);\n },\n checksumAlgorithms() {\n return checksumAlgorithms;\n },\n };\n};\nexport const resolveChecksumRuntimeConfig = (clientConfig) => {\n const runtimeConfig = {};\n clientConfig.checksumAlgorithms().forEach((checksumAlgorithm) => {\n runtimeConfig[checksumAlgorithm.algorithmId()] = checksumAlgorithm.checksumConstructor();\n });\n return runtimeConfig;\n};\n","export const SMITHY_CONTEXT_KEY = \"__smithy_context\";\n","import { NormalizedSchema } from \"@smithy/core/schema\";\nconst SENSITIVE_STRING = \"***SensitiveInformation***\";\nexport function schemaLogFilter(schema, data) {\n if (data == null) {\n return data;\n }\n const ns = NormalizedSchema.of(schema);\n if (ns.getMergedTraits().sensitive) {\n return SENSITIVE_STRING;\n }\n if (ns.isListSchema()) {\n const isSensitive = !!ns.getValueSchema().getMergedTraits().sensitive;\n if (isSensitive) {\n return SENSITIVE_STRING;\n }\n }\n else if (ns.isMapSchema()) {\n const isSensitive = !!ns.getKeySchema().getMergedTraits().sensitive || !!ns.getValueSchema().getMergedTraits().sensitive;\n if (isSensitive) {\n return SENSITIVE_STRING;\n }\n }\n else if (ns.isStructSchema() && typeof data === \"object\") {\n const object = data;\n const newObject = {};\n for (const [member, memberNs] of ns.structIterator()) {\n if (object[member] != null) {\n newObject[member] = schemaLogFilter(memberNs, object[member]);\n }\n }\n return newObject;\n }\n return data;\n}\n","export const deref = (schemaRef) => {\n if (typeof schemaRef === \"function\") {\n return schemaRef();\n }\n return schemaRef;\n};\n","export const getHttpHandlerExtensionConfiguration = (runtimeConfig) => {\n return {\n setHttpHandler(handler) {\n runtimeConfig.httpHandler = handler;\n },\n httpHandler() {\n return runtimeConfig.httpHandler;\n },\n updateHttpClientConfig(key, value) {\n runtimeConfig.httpHandler?.updateHttpClientConfig(key, value);\n },\n httpHandlerConfigs() {\n return runtimeConfig.httpHandler.httpHandlerConfigs();\n },\n };\n};\nexport const resolveHttpHandlerRuntimeConfig = (httpHandlerExtensionConfiguration) => {\n return {\n httpHandler: httpHandlerExtensionConfiguration.httpHandler(),\n };\n};\n","import { SMITHY_CONTEXT_KEY } from \"@smithy/types\";\nexport const getSmithyContext = (context) => context[SMITHY_CONTEXT_KEY] || (context[SMITHY_CONTEXT_KEY] = {});\n","export const normalizeProvider = (input) => {\n if (typeof input === \"function\")\n return input;\n const promisified = Promise.resolve(input);\n return () => promisified;\n};\n","import { deref } from \"../deref\";\nimport { translateTraits } from \"./translateTraits\";\nexport class NormalizedSchema {\n ref;\n memberName;\n static symbol = Symbol.for(\"@smithy/nor\");\n symbol = NormalizedSchema.symbol;\n name;\n schema;\n _isMemberSchema;\n traits;\n memberTraits;\n normalizedTraits;\n constructor(ref, memberName) {\n this.ref = ref;\n this.memberName = memberName;\n const traitStack = [];\n let _ref = ref;\n let schema = ref;\n this._isMemberSchema = false;\n while (isMemberSchema(_ref)) {\n traitStack.push(_ref[1]);\n _ref = _ref[0];\n schema = deref(_ref);\n this._isMemberSchema = true;\n }\n if (traitStack.length > 0) {\n this.memberTraits = {};\n for (let i = traitStack.length - 1; i >= 0; --i) {\n const traitSet = traitStack[i];\n Object.assign(this.memberTraits, translateTraits(traitSet));\n }\n }\n else {\n this.memberTraits = 0;\n }\n if (schema instanceof NormalizedSchema) {\n const computedMemberTraits = this.memberTraits;\n Object.assign(this, schema);\n this.memberTraits = Object.assign({}, computedMemberTraits, schema.getMemberTraits(), this.getMemberTraits());\n this.normalizedTraits = void 0;\n this.memberName = memberName ?? schema.memberName;\n return;\n }\n this.schema = deref(schema);\n if (isStaticSchema(this.schema)) {\n this.name = `${this.schema[1]}#${this.schema[2]}`;\n this.traits = this.schema[3];\n }\n else {\n this.name = this.memberName ?? String(schema);\n this.traits = 0;\n }\n if (this._isMemberSchema && !memberName) {\n throw new Error(`@smithy/core/schema - NormalizedSchema member init ${this.getName(true)} missing member name.`);\n }\n }\n static [Symbol.hasInstance](lhs) {\n const isPrototype = this.prototype.isPrototypeOf(lhs);\n if (!isPrototype && typeof lhs === \"object\" && lhs !== null) {\n const ns = lhs;\n return ns.symbol === this.symbol;\n }\n return isPrototype;\n }\n static of(ref) {\n const sc = deref(ref);\n if (sc instanceof NormalizedSchema) {\n return sc;\n }\n if (isMemberSchema(sc)) {\n const [ns, traits] = sc;\n if (ns instanceof NormalizedSchema) {\n Object.assign(ns.getMergedTraits(), translateTraits(traits));\n return ns;\n }\n throw new Error(`@smithy/core/schema - may not init unwrapped member schema=${JSON.stringify(ref, null, 2)}.`);\n }\n return new NormalizedSchema(sc);\n }\n getSchema() {\n const sc = this.schema;\n if (sc[0] === 0) {\n return sc[4];\n }\n return sc;\n }\n getName(withNamespace = false) {\n const { name } = this;\n const short = !withNamespace && name && name.includes(\"#\");\n return short ? name.split(\"#\")[1] : name || undefined;\n }\n getMemberName() {\n return this.memberName;\n }\n isMemberSchema() {\n return this._isMemberSchema;\n }\n isListSchema() {\n const sc = this.getSchema();\n return typeof sc === \"number\"\n ? sc >= 64 && sc < 128\n : sc[0] === 1;\n }\n isMapSchema() {\n const sc = this.getSchema();\n return typeof sc === \"number\"\n ? sc >= 128 && sc <= 0b1111_1111\n : sc[0] === 2;\n }\n isStructSchema() {\n const sc = this.getSchema();\n return (sc[0] === 3 ||\n sc[0] === -3);\n }\n isBlobSchema() {\n const sc = this.getSchema();\n return sc === 21 || sc === 42;\n }\n isTimestampSchema() {\n const sc = this.getSchema();\n return (typeof sc === \"number\" &&\n sc >= 4 &&\n sc <= 7);\n }\n isUnitSchema() {\n return this.getSchema() === \"unit\";\n }\n isDocumentSchema() {\n return this.getSchema() === 15;\n }\n isStringSchema() {\n return this.getSchema() === 0;\n }\n isBooleanSchema() {\n return this.getSchema() === 2;\n }\n isNumericSchema() {\n return this.getSchema() === 1;\n }\n isBigIntegerSchema() {\n return this.getSchema() === 17;\n }\n isBigDecimalSchema() {\n return this.getSchema() === 19;\n }\n isStreaming() {\n const { streaming } = this.getMergedTraits();\n return !!streaming || this.getSchema() === 42;\n }\n isIdempotencyToken() {\n const match = (traits) => (traits & 0b0100) === 0b0100 ||\n !!traits?.idempotencyToken;\n const { normalizedTraits, traits, memberTraits } = this;\n return match(normalizedTraits) || match(traits) || match(memberTraits);\n }\n getMergedTraits() {\n return (this.normalizedTraits ??\n (this.normalizedTraits = {\n ...this.getOwnTraits(),\n ...this.getMemberTraits(),\n }));\n }\n getMemberTraits() {\n return translateTraits(this.memberTraits);\n }\n getOwnTraits() {\n return translateTraits(this.traits);\n }\n getKeySchema() {\n const [isDoc, isMap] = [this.isDocumentSchema(), this.isMapSchema()];\n if (!isDoc && !isMap) {\n throw new Error(`@smithy/core/schema - cannot get key for non-map: ${this.getName(true)}`);\n }\n const schema = this.getSchema();\n const memberSchema = isDoc\n ? 15\n : schema[4] ?? 0;\n return member([memberSchema, 0], \"key\");\n }\n getValueSchema() {\n const sc = this.getSchema();\n const [isDoc, isMap, isList] = [this.isDocumentSchema(), this.isMapSchema(), this.isListSchema()];\n const memberSchema = typeof sc === \"number\"\n ? 0b0011_1111 & sc\n : sc && typeof sc === \"object\" && (isMap || isList)\n ? sc[3 + sc[0]]\n : isDoc\n ? 15\n : void 0;\n if (memberSchema != null) {\n return member([memberSchema, 0], isMap ? \"value\" : \"member\");\n }\n throw new Error(`@smithy/core/schema - ${this.getName(true)} has no value member.`);\n }\n getMemberSchema(memberName) {\n const struct = this.getSchema();\n if (this.isStructSchema() && struct[4].includes(memberName)) {\n const i = struct[4].indexOf(memberName);\n const memberSchema = struct[5][i];\n return member(isMemberSchema(memberSchema) ? memberSchema : [memberSchema, 0], memberName);\n }\n if (this.isDocumentSchema()) {\n return member([15, 0], memberName);\n }\n throw new Error(`@smithy/core/schema - ${this.getName(true)} has no no member=${memberName}.`);\n }\n getMemberSchemas() {\n const buffer = {};\n try {\n for (const [k, v] of this.structIterator()) {\n buffer[k] = v;\n }\n }\n catch (ignored) { }\n return buffer;\n }\n getEventStreamMember() {\n if (this.isStructSchema()) {\n for (const [memberName, memberSchema] of this.structIterator()) {\n if (memberSchema.isStreaming() && memberSchema.isStructSchema()) {\n return memberName;\n }\n }\n }\n return \"\";\n }\n *structIterator() {\n if (this.isUnitSchema()) {\n return;\n }\n if (!this.isStructSchema()) {\n throw new Error(\"@smithy/core/schema - cannot iterate non-struct schema.\");\n }\n const struct = this.getSchema();\n for (let i = 0; i < struct[4].length; ++i) {\n yield [struct[4][i], member([struct[5][i], 0], struct[4][i])];\n }\n }\n}\nfunction member(memberSchema, memberName) {\n if (memberSchema instanceof NormalizedSchema) {\n return Object.assign(memberSchema, {\n memberName,\n _isMemberSchema: true,\n });\n }\n const internalCtorAccess = NormalizedSchema;\n return new internalCtorAccess(memberSchema, memberName);\n}\nconst isMemberSchema = (sc) => Array.isArray(sc) && sc.length === 2;\nexport const isStaticSchema = (sc) => Array.isArray(sc) && sc.length >= 5;\n","export function translateTraits(indicator) {\n if (typeof indicator === \"object\") {\n return indicator;\n }\n indicator = indicator | 0;\n const traits = {};\n let i = 0;\n for (const trait of [\n \"httpLabel\",\n \"idempotent\",\n \"idempotencyToken\",\n \"sensitive\",\n \"httpPayload\",\n \"httpResponseCode\",\n \"httpQueryParams\",\n ]) {\n if (((indicator >> i++) & 1) === 1) {\n traits[trait] = 1;\n }\n }\n return traits;\n}\n","import { HttpRequest } from \"@smithy/protocol-http\";\nexport function resolveHostHeaderConfig(input) {\n return input;\n}\nexport const hostHeaderMiddleware = (options) => (next) => async (args) => {\n if (!HttpRequest.isInstance(args.request))\n return next(args);\n const { request } = args;\n const { handlerProtocol = \"\" } = options.requestHandler.metadata || {};\n if (handlerProtocol.indexOf(\"h2\") >= 0 && !request.headers[\":authority\"]) {\n delete request.headers[\"host\"];\n request.headers[\":authority\"] = request.hostname + (request.port ? \":\" + request.port : \"\");\n }\n else if (!request.headers[\"host\"]) {\n let host = request.hostname;\n if (request.port != null)\n host += `:${request.port}`;\n request.headers[\"host\"] = host;\n }\n return next(args);\n};\nexport const hostHeaderMiddlewareOptions = {\n name: \"hostHeaderMiddleware\",\n step: \"build\",\n priority: \"low\",\n tags: [\"HOST\"],\n override: true,\n};\nexport const getHostHeaderPlugin = (options) => ({\n applyToStack: (clientStack) => {\n clientStack.add(hostHeaderMiddleware(options), hostHeaderMiddlewareOptions);\n },\n});\n","export const loggerMiddleware = () => (next, context) => async (args) => {\n try {\n const response = await next(args);\n const { clientName, commandName, logger, dynamoDbDocumentClientOptions = {} } = context;\n const { overrideInputFilterSensitiveLog, overrideOutputFilterSensitiveLog } = dynamoDbDocumentClientOptions;\n const inputFilterSensitiveLog = overrideInputFilterSensitiveLog ?? context.inputFilterSensitiveLog;\n const outputFilterSensitiveLog = overrideOutputFilterSensitiveLog ?? context.outputFilterSensitiveLog;\n const { $metadata, ...outputWithoutMetadata } = response.output;\n logger?.info?.({\n clientName,\n commandName,\n input: inputFilterSensitiveLog(args.input),\n output: outputFilterSensitiveLog(outputWithoutMetadata),\n metadata: $metadata,\n });\n return response;\n }\n catch (error) {\n const { clientName, commandName, logger, dynamoDbDocumentClientOptions = {} } = context;\n const { overrideInputFilterSensitiveLog } = dynamoDbDocumentClientOptions;\n const inputFilterSensitiveLog = overrideInputFilterSensitiveLog ?? context.inputFilterSensitiveLog;\n logger?.error?.({\n clientName,\n commandName,\n input: inputFilterSensitiveLog(args.input),\n error,\n metadata: error.$metadata,\n });\n throw error;\n }\n};\nexport const loggerMiddlewareOptions = {\n name: \"loggerMiddleware\",\n tags: [\"LOGGER\"],\n step: \"initialize\",\n override: true,\n};\nexport const getLoggerPlugin = (options) => ({\n applyToStack: (clientStack) => {\n clientStack.add(loggerMiddleware(), loggerMiddlewareOptions);\n },\n});\n","export * from \"./loggerMiddleware\";\n","import { HttpRequest } from \"@smithy/protocol-http\";\nconst TRACE_ID_HEADER_NAME = \"X-Amzn-Trace-Id\";\nconst ENV_LAMBDA_FUNCTION_NAME = \"AWS_LAMBDA_FUNCTION_NAME\";\nconst ENV_TRACE_ID = \"_X_AMZN_TRACE_ID\";\nexport const recursionDetectionMiddleware = (options) => (next) => async (args) => {\n const { request } = args;\n if (!HttpRequest.isInstance(request) || options.runtime !== \"node\") {\n return next(args);\n }\n const traceIdHeader = Object.keys(request.headers ?? {}).find((h) => h.toLowerCase() === TRACE_ID_HEADER_NAME.toLowerCase()) ??\n TRACE_ID_HEADER_NAME;\n if (request.headers.hasOwnProperty(traceIdHeader)) {\n return next(args);\n }\n const functionName = process.env[ENV_LAMBDA_FUNCTION_NAME];\n const traceId = process.env[ENV_TRACE_ID];\n const nonEmptyString = (str) => typeof str === \"string\" && str.length > 0;\n if (nonEmptyString(functionName) && nonEmptyString(traceId)) {\n request.headers[TRACE_ID_HEADER_NAME] = traceId;\n }\n return next({\n ...args,\n request,\n });\n};\nexport const addRecursionDetectionMiddlewareOptions = {\n step: \"build\",\n tags: [\"RECURSION_DETECTION\"],\n name: \"recursionDetectionMiddleware\",\n override: true,\n priority: \"low\",\n};\nexport const getRecursionDetectionPlugin = (options) => ({\n applyToStack: (clientStack) => {\n clientStack.add(recursionDetectionMiddleware(options), addRecursionDetectionMiddlewareOptions);\n },\n});\n","import { httpAuthSchemeMiddleware } from \"./httpAuthSchemeMiddleware\";\nexport const httpAuthSchemeEndpointRuleSetMiddlewareOptions = {\n step: \"serialize\",\n tags: [\"HTTP_AUTH_SCHEME\"],\n name: \"httpAuthSchemeMiddleware\",\n override: true,\n relation: \"before\",\n toMiddleware: \"endpointV2Middleware\",\n};\nexport const getHttpAuthSchemeEndpointRuleSetPlugin = (config, { httpAuthSchemeParametersProvider, identityProviderConfigProvider, }) => ({\n applyToStack: (clientStack) => {\n clientStack.addRelativeTo(httpAuthSchemeMiddleware(config, {\n httpAuthSchemeParametersProvider,\n identityProviderConfigProvider,\n }), httpAuthSchemeEndpointRuleSetMiddlewareOptions);\n },\n});\n","import { getSmithyContext } from \"@smithy/util-middleware\";\nimport { resolveAuthOptions } from \"./resolveAuthOptions\";\nfunction convertHttpAuthSchemesToMap(httpAuthSchemes) {\n const map = new Map();\n for (const scheme of httpAuthSchemes) {\n map.set(scheme.schemeId, scheme);\n }\n return map;\n}\nexport const httpAuthSchemeMiddleware = (config, mwOptions) => (next, context) => async (args) => {\n const options = config.httpAuthSchemeProvider(await mwOptions.httpAuthSchemeParametersProvider(config, context, args.input));\n const authSchemePreference = config.authSchemePreference ? await config.authSchemePreference() : [];\n const resolvedOptions = resolveAuthOptions(options, authSchemePreference);\n const authSchemes = convertHttpAuthSchemesToMap(config.httpAuthSchemes);\n const smithyContext = getSmithyContext(context);\n const failureReasons = [];\n for (const option of resolvedOptions) {\n const scheme = authSchemes.get(option.schemeId);\n if (!scheme) {\n failureReasons.push(`HttpAuthScheme \\`${option.schemeId}\\` was not enabled for this service.`);\n continue;\n }\n const identityProvider = scheme.identityProvider(await mwOptions.identityProviderConfigProvider(config));\n if (!identityProvider) {\n failureReasons.push(`HttpAuthScheme \\`${option.schemeId}\\` did not have an IdentityProvider configured.`);\n continue;\n }\n const { identityProperties = {}, signingProperties = {} } = option.propertiesExtractor?.(config, context) || {};\n option.identityProperties = Object.assign(option.identityProperties || {}, identityProperties);\n option.signingProperties = Object.assign(option.signingProperties || {}, signingProperties);\n smithyContext.selectedHttpAuthScheme = {\n httpAuthOption: option,\n identity: await identityProvider(option.identityProperties),\n signer: scheme.signer,\n };\n break;\n }\n if (!smithyContext.selectedHttpAuthScheme) {\n throw new Error(failureReasons.join(\"\\n\"));\n }\n return next(args);\n};\n","export const resolveAuthOptions = (candidateAuthOptions, authSchemePreference) => {\n if (!authSchemePreference || authSchemePreference.length === 0) {\n return candidateAuthOptions;\n }\n const preferredAuthOptions = [];\n for (const preferredSchemeName of authSchemePreference) {\n for (const candidateAuthOption of candidateAuthOptions) {\n const candidateAuthSchemeName = candidateAuthOption.schemeId.split(\"#\")[1];\n if (candidateAuthSchemeName === preferredSchemeName) {\n preferredAuthOptions.push(candidateAuthOption);\n }\n }\n }\n for (const candidateAuthOption of candidateAuthOptions) {\n if (!preferredAuthOptions.find(({ schemeId }) => schemeId === candidateAuthOption.schemeId)) {\n preferredAuthOptions.push(candidateAuthOption);\n }\n }\n return preferredAuthOptions;\n};\n","import { deserializerMiddleware } from \"./deserializerMiddleware\";\nimport { serializerMiddleware } from \"./serializerMiddleware\";\nexport const deserializerMiddlewareOption = {\n name: \"deserializerMiddleware\",\n step: \"deserialize\",\n tags: [\"DESERIALIZER\"],\n override: true,\n};\nexport const serializerMiddlewareOption = {\n name: \"serializerMiddleware\",\n step: \"serialize\",\n tags: [\"SERIALIZER\"],\n override: true,\n};\nexport function getSerdePlugin(config, serializer, deserializer) {\n return {\n applyToStack: (commandStack) => {\n commandStack.add(deserializerMiddleware(config, deserializer), deserializerMiddlewareOption);\n commandStack.add(serializerMiddleware(config, serializer), serializerMiddlewareOption);\n },\n };\n}\n","import { HttpResponse } from \"@smithy/protocol-http\";\nexport const deserializerMiddleware = (options, deserializer) => (next, context) => async (args) => {\n const { response } = await next(args);\n try {\n const parsed = await deserializer(response, options);\n return {\n response,\n output: parsed,\n };\n }\n catch (error) {\n Object.defineProperty(error, \"$response\", {\n value: response,\n enumerable: false,\n writable: false,\n configurable: false,\n });\n if (!(\"$metadata\" in error)) {\n const hint = `Deserialization error: to see the raw response, inspect the hidden field {error}.$response on this object.`;\n try {\n error.message += \"\\n \" + hint;\n }\n catch (e) {\n if (!context.logger || context.logger?.constructor?.name === \"NoOpLogger\") {\n console.warn(hint);\n }\n else {\n context.logger?.warn?.(hint);\n }\n }\n if (typeof error.$responseBodyText !== \"undefined\") {\n if (error.$response) {\n error.$response.body = error.$responseBodyText;\n }\n }\n try {\n if (HttpResponse.isInstance(response)) {\n const { headers = {} } = response;\n const headerEntries = Object.entries(headers);\n error.$metadata = {\n httpStatusCode: response.statusCode,\n requestId: findHeader(/^x-[\\w-]+-request-?id$/, headerEntries),\n extendedRequestId: findHeader(/^x-[\\w-]+-id-2$/, headerEntries),\n cfId: findHeader(/^x-[\\w-]+-cf-id$/, headerEntries),\n };\n }\n }\n catch (e) {\n }\n }\n throw error;\n }\n};\nconst findHeader = (pattern, headers) => {\n return (headers.find(([k]) => {\n return k.match(pattern);\n }) || [void 0, void 1])[1];\n};\n","export const serializerMiddleware = (options, serializer) => (next, context) => async (args) => {\n const endpointConfig = options;\n const endpoint = context.endpointV2?.url && endpointConfig.urlParser\n ? async () => endpointConfig.urlParser(context.endpointV2.url)\n : endpointConfig.endpoint;\n if (!endpoint) {\n throw new Error(\"No valid endpoint provider available.\");\n }\n const request = await serializer(args.input, { ...options, endpoint });\n return next({\n ...args,\n request,\n });\n};\n","import { httpSigningMiddleware } from \"./httpSigningMiddleware\";\nexport const httpSigningMiddlewareOptions = {\n step: \"finalizeRequest\",\n tags: [\"HTTP_SIGNING\"],\n name: \"httpSigningMiddleware\",\n aliases: [\"apiKeyMiddleware\", \"tokenMiddleware\", \"awsAuthMiddleware\"],\n override: true,\n relation: \"after\",\n toMiddleware: \"retryMiddleware\",\n};\nexport const getHttpSigningPlugin = (config) => ({\n applyToStack: (clientStack) => {\n clientStack.addRelativeTo(httpSigningMiddleware(config), httpSigningMiddlewareOptions);\n },\n});\n","import { HttpRequest } from \"@smithy/protocol-http\";\nimport { getSmithyContext } from \"@smithy/util-middleware\";\nconst defaultErrorHandler = (signingProperties) => (error) => {\n throw error;\n};\nconst defaultSuccessHandler = (httpResponse, signingProperties) => { };\nexport const httpSigningMiddleware = (config) => (next, context) => async (args) => {\n if (!HttpRequest.isInstance(args.request)) {\n return next(args);\n }\n const smithyContext = getSmithyContext(context);\n const scheme = smithyContext.selectedHttpAuthScheme;\n if (!scheme) {\n throw new Error(`No HttpAuthScheme was selected: unable to sign request`);\n }\n const { httpAuthOption: { signingProperties = {} }, identity, signer, } = scheme;\n const output = await next({\n ...args,\n request: await signer.sign(args.request, identity, signingProperties),\n }).catch((signer.errorHandler || defaultErrorHandler)(signingProperties));\n (signer.successHandler || defaultSuccessHandler)(output.response, signingProperties);\n return output;\n};\n","export class DefaultIdentityProviderConfig {\n authSchemes = new Map();\n constructor(config) {\n for (const [key, value] of Object.entries(config)) {\n if (value !== undefined) {\n this.authSchemes.set(key, value);\n }\n }\n }\n getIdentityProvider(schemeId) {\n return this.authSchemes.get(schemeId);\n }\n}\n","import { normalizeProvider } from \"@smithy/core\";\nexport const DEFAULT_UA_APP_ID = undefined;\nfunction isValidUserAgentAppId(appId) {\n if (appId === undefined) {\n return true;\n }\n return typeof appId === \"string\" && appId.length <= 50;\n}\nexport function resolveUserAgentConfig(input) {\n const normalizedAppIdProvider = normalizeProvider(input.userAgentAppId ?? DEFAULT_UA_APP_ID);\n const { customUserAgent } = input;\n return Object.assign(input, {\n customUserAgent: typeof customUserAgent === \"string\" ? [[customUserAgent]] : customUserAgent,\n userAgentAppId: async () => {\n const appId = await normalizedAppIdProvider();\n if (!isValidUserAgentAppId(appId)) {\n const logger = input.logger?.constructor?.name === \"NoOpLogger\" || !input.logger ? console : input.logger;\n if (typeof appId !== \"string\") {\n logger?.warn(\"userAgentAppId must be a string or undefined.\");\n }\n else if (appId.length > 50) {\n logger?.warn(\"The provided userAgentAppId exceeds the maximum length of 50 characters.\");\n }\n }\n return appId;\n },\n });\n}\n","export const normalizeProvider = (input) => {\n if (typeof input === \"function\")\n return input;\n const promisified = Promise.resolve(input);\n return () => promisified;\n};\n","import { Uint8ArrayBlobAdapter } from \"@smithy/util-stream\";\nexport const collectBody = async (streamBody = new Uint8Array(), context) => {\n if (streamBody instanceof Uint8Array) {\n return Uint8ArrayBlobAdapter.mutate(streamBody);\n }\n if (!streamBody) {\n return Uint8ArrayBlobAdapter.mutate(new Uint8Array());\n }\n const fromContext = context.streamCollector(streamBody);\n return Uint8ArrayBlobAdapter.mutate(await fromContext);\n};\n","import { fromBase64, toBase64 } from \"@smithy/util-base64\";\nimport { fromUtf8, toUtf8 } from \"@smithy/util-utf8\";\nexport class Uint8ArrayBlobAdapter extends Uint8Array {\n static fromString(source, encoding = \"utf-8\") {\n if (typeof source === \"string\") {\n if (encoding === \"base64\") {\n return Uint8ArrayBlobAdapter.mutate(fromBase64(source));\n }\n return Uint8ArrayBlobAdapter.mutate(fromUtf8(source));\n }\n throw new Error(`Unsupported conversion from ${typeof source} to Uint8ArrayBlobAdapter.`);\n }\n static mutate(source) {\n Object.setPrototypeOf(source, Uint8ArrayBlobAdapter.prototype);\n return source;\n }\n transformToString(encoding = \"utf-8\") {\n if (encoding === \"base64\") {\n return toBase64(this);\n }\n return toUtf8(this);\n }\n}\n","import { fromUtf8 } from \"./fromUtf8\";\nexport const toUint8Array = (data) => {\n if (typeof data === \"string\") {\n return fromUtf8(data);\n }\n if (ArrayBuffer.isView(data)) {\n return new Uint8Array(data.buffer, data.byteOffset, data.byteLength / Uint8Array.BYTES_PER_ELEMENT);\n }\n return new Uint8Array(data);\n};\n","import { randomUUID } from \"./randomUUID\";\nconst decimalToHex = Array.from({ length: 256 }, (_, i) => i.toString(16).padStart(2, \"0\"));\nexport const v4 = () => {\n if (randomUUID) {\n return randomUUID();\n }\n const rnds = new Uint8Array(16);\n crypto.getRandomValues(rnds);\n rnds[6] = (rnds[6] & 0x0f) | 0x40;\n rnds[8] = (rnds[8] & 0x3f) | 0x80;\n return (decimalToHex[rnds[0]] +\n decimalToHex[rnds[1]] +\n decimalToHex[rnds[2]] +\n decimalToHex[rnds[3]] +\n \"-\" +\n decimalToHex[rnds[4]] +\n decimalToHex[rnds[5]] +\n \"-\" +\n decimalToHex[rnds[6]] +\n decimalToHex[rnds[7]] +\n \"-\" +\n decimalToHex[rnds[8]] +\n decimalToHex[rnds[9]] +\n \"-\" +\n decimalToHex[rnds[10]] +\n decimalToHex[rnds[11]] +\n decimalToHex[rnds[12]] +\n decimalToHex[rnds[13]] +\n decimalToHex[rnds[14]] +\n decimalToHex[rnds[15]]);\n};\n","import crypto from \"crypto\";\nexport const randomUUID = crypto.randomUUID.bind(crypto);\n","export function setFeature(context, feature, value) {\n if (!context.__smithy_context) {\n context.__smithy_context = {\n features: {},\n };\n }\n else if (!context.__smithy_context.features) {\n context.__smithy_context.features = {};\n }\n context.__smithy_context.features[feature] = value;\n}\n","export const createIsIdentityExpiredFunction = (expirationMs) => function isIdentityExpired(identity) {\n return doesIdentityRequireRefresh(identity) && identity.expiration.getTime() - Date.now() < expirationMs;\n};\nexport const EXPIRATION_MS = 300_000;\nexport const isIdentityExpired = createIsIdentityExpiredFunction(EXPIRATION_MS);\nexport const doesIdentityRequireRefresh = (identity) => identity.expiration !== undefined;\nexport const memoizeIdentityProvider = (provider, isExpired, requiresRefresh) => {\n if (provider === undefined) {\n return undefined;\n }\n const normalizedProvider = typeof provider !== \"function\" ? async () => Promise.resolve(provider) : provider;\n let resolved;\n let pending;\n let hasResult;\n let isConstant = false;\n const coalesceProvider = async (options) => {\n if (!pending) {\n pending = normalizedProvider(options);\n }\n try {\n resolved = await pending;\n hasResult = true;\n isConstant = false;\n }\n finally {\n pending = undefined;\n }\n return resolved;\n };\n if (isExpired === undefined) {\n return async (options) => {\n if (!hasResult || options?.forceRefresh) {\n resolved = await coalesceProvider(options);\n }\n return resolved;\n };\n }\n return async (options) => {\n if (!hasResult || options?.forceRefresh) {\n resolved = await coalesceProvider(options);\n }\n if (isConstant) {\n return resolved;\n }\n if (!requiresRefresh(resolved)) {\n isConstant = true;\n return resolved;\n }\n if (isExpired(resolved)) {\n await coalesceProvider(options);\n return resolved;\n }\n return resolved;\n };\n};\n","export class ServiceException extends Error {\n $fault;\n $response;\n $retryable;\n $metadata;\n constructor(options) {\n super(options.message);\n Object.setPrototypeOf(this, Object.getPrototypeOf(this).constructor.prototype);\n this.name = options.name;\n this.$fault = options.$fault;\n this.$metadata = options.$metadata;\n }\n static isInstance(value) {\n if (!value)\n return false;\n const candidate = value;\n return (ServiceException.prototype.isPrototypeOf(candidate) ||\n (Boolean(candidate.$fault) &&\n Boolean(candidate.$metadata) &&\n (candidate.$fault === \"client\" || candidate.$fault === \"server\")));\n }\n static [Symbol.hasInstance](instance) {\n if (!instance)\n return false;\n const candidate = instance;\n if (this === ServiceException) {\n return ServiceException.isInstance(instance);\n }\n if (ServiceException.isInstance(instance)) {\n if (candidate.name && this.name) {\n return this.prototype.isPrototypeOf(instance) || candidate.name === this.name;\n }\n return this.prototype.isPrototypeOf(instance);\n }\n return false;\n }\n}\nexport const decorateServiceException = (exception, additions = {}) => {\n Object.entries(additions)\n .filter(([, v]) => v !== undefined)\n .forEach(([k, v]) => {\n if (exception[k] == undefined || exception[k] === \"\") {\n exception[k] = v;\n }\n });\n const message = exception.message || exception.Message || \"UnknownError\";\n exception.message = message;\n delete exception.Message;\n return exception;\n};\n","import { getUserAgentPrefix } from \"@aws-sdk/util-endpoints\";\nimport { HttpRequest } from \"@smithy/protocol-http\";\nimport { checkFeatures } from \"./check-features\";\nimport { SPACE, UA_ESCAPE_CHAR, UA_NAME_ESCAPE_REGEX, UA_NAME_SEPARATOR, UA_VALUE_ESCAPE_REGEX, USER_AGENT, X_AMZ_USER_AGENT, } from \"./constants\";\nimport { encodeFeatures } from \"./encode-features\";\nexport const userAgentMiddleware = (options) => (next, context) => async (args) => {\n const { request } = args;\n if (!HttpRequest.isInstance(request)) {\n return next(args);\n }\n const { headers } = request;\n const userAgent = context?.userAgent?.map(escapeUserAgent) || [];\n const defaultUserAgent = (await options.defaultUserAgentProvider()).map(escapeUserAgent);\n await checkFeatures(context, options, args);\n const awsContext = context;\n defaultUserAgent.push(`m/${encodeFeatures(Object.assign({}, context.__smithy_context?.features, awsContext.__aws_sdk_context?.features))}`);\n const customUserAgent = options?.customUserAgent?.map(escapeUserAgent) || [];\n const appId = await options.userAgentAppId();\n if (appId) {\n defaultUserAgent.push(escapeUserAgent([`app/${appId}`]));\n }\n const prefix = getUserAgentPrefix();\n const sdkUserAgentValue = (prefix ? [prefix] : [])\n .concat([...defaultUserAgent, ...userAgent, ...customUserAgent])\n .join(SPACE);\n const normalUAValue = [\n ...defaultUserAgent.filter((section) => section.startsWith(\"aws-sdk-\")),\n ...customUserAgent,\n ].join(SPACE);\n if (options.runtime !== \"browser\") {\n if (normalUAValue) {\n headers[X_AMZ_USER_AGENT] = headers[X_AMZ_USER_AGENT]\n ? `${headers[USER_AGENT]} ${normalUAValue}`\n : normalUAValue;\n }\n headers[USER_AGENT] = sdkUserAgentValue;\n }\n else {\n headers[X_AMZ_USER_AGENT] = sdkUserAgentValue;\n }\n return next({\n ...args,\n request,\n });\n};\nconst escapeUserAgent = (userAgentPair) => {\n const name = userAgentPair[0]\n .split(UA_NAME_SEPARATOR)\n .map((part) => part.replace(UA_NAME_ESCAPE_REGEX, UA_ESCAPE_CHAR))\n .join(UA_NAME_SEPARATOR);\n const version = userAgentPair[1]?.replace(UA_VALUE_ESCAPE_REGEX, UA_ESCAPE_CHAR);\n const prefixSeparatorIndex = name.indexOf(UA_NAME_SEPARATOR);\n const prefix = name.substring(0, prefixSeparatorIndex);\n let uaName = name.substring(prefixSeparatorIndex + 1);\n if (prefix === \"api\") {\n uaName = uaName.toLowerCase();\n }\n return [prefix, uaName, version]\n .filter((item) => item && item.length > 0)\n .reduce((acc, item, index) => {\n switch (index) {\n case 0:\n return item;\n case 1:\n return `${acc}/${item}`;\n default:\n return `${acc}#${item}`;\n }\n }, \"\");\n};\nexport const getUserAgentMiddlewareOptions = {\n name: \"getUserAgentMiddleware\",\n step: \"build\",\n priority: \"low\",\n tags: [\"SET_USER_AGENT\", \"USER_AGENT\"],\n override: true,\n};\nexport const getUserAgentPlugin = (config) => ({\n applyToStack: (clientStack) => {\n clientStack.add(userAgentMiddleware(config), getUserAgentMiddlewareOptions);\n },\n});\n","export * from \"./aws\";\nexport * from \"./lib/aws/partition\";\nexport * from \"./lib/isIpAddress\";\nexport * from \"./resolveDefaultAwsRegionalEndpointsConfig\";\nexport * from \"./resolveEndpoint\";\nexport * from \"./types\";\n","import { customEndpointFunctions } from \"@smithy/util-endpoints\";\nimport { isVirtualHostableS3Bucket } from \"./lib/aws/isVirtualHostableS3Bucket\";\nimport { parseArn } from \"./lib/aws/parseArn\";\nimport { partition } from \"./lib/aws/partition\";\nexport const awsEndpointFunctions = {\n isVirtualHostableS3Bucket: isVirtualHostableS3Bucket,\n parseArn: parseArn,\n partition: partition,\n};\ncustomEndpointFunctions.aws = awsEndpointFunctions;\n","export class EndpointCache {\n capacity;\n data = new Map();\n parameters = [];\n constructor({ size, params }) {\n this.capacity = size ?? 50;\n if (params) {\n this.parameters = params;\n }\n }\n get(endpointParams, resolver) {\n const key = this.hash(endpointParams);\n if (key === false) {\n return resolver();\n }\n if (!this.data.has(key)) {\n if (this.data.size > this.capacity + 10) {\n const keys = this.data.keys();\n let i = 0;\n while (true) {\n const { value, done } = keys.next();\n this.data.delete(value);\n if (done || ++i > 10) {\n break;\n }\n }\n }\n this.data.set(key, resolver());\n }\n return this.data.get(key);\n }\n size() {\n return this.data.size;\n }\n hash(endpointParams) {\n let buffer = \"\";\n const { parameters } = this;\n if (parameters.length === 0) {\n return false;\n }\n for (const param of parameters) {\n const val = String(endpointParams[param] ?? \"\");\n if (val.includes(\"|;\")) {\n return false;\n }\n buffer += val + \"|;\";\n }\n return buffer;\n }\n}\n","const IP_V4_REGEX = new RegExp(`^(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)){3}$`);\nexport const isIpAddress = (value) => IP_V4_REGEX.test(value) || (value.startsWith(\"[\") && value.endsWith(\"]\"));\n","const VALID_HOST_LABEL_REGEX = new RegExp(`^(?!.*-$)(?!-)[a-zA-Z0-9-]{1,63}$`);\nexport const isValidHostLabel = (value, allowSubDomains = false) => {\n if (!allowSubDomains) {\n return VALID_HOST_LABEL_REGEX.test(value);\n }\n const labels = value.split(\".\");\n for (const label of labels) {\n if (!isValidHostLabel(label)) {\n return false;\n }\n }\n return true;\n};\n","export const customEndpointFunctions = {};\n","import { debugId, toDebugString } from \"./debug\";\nimport { EndpointError } from \"./types\";\nimport { evaluateRules } from \"./utils\";\nexport const resolveEndpoint = (ruleSetObject, options) => {\n const { endpointParams, logger } = options;\n const { parameters, rules } = ruleSetObject;\n options.logger?.debug?.(`${debugId} Initial EndpointParams: ${toDebugString(endpointParams)}`);\n const paramsWithDefault = Object.entries(parameters)\n .filter(([, v]) => v.default != null)\n .map(([k, v]) => [k, v.default]);\n if (paramsWithDefault.length > 0) {\n for (const [paramKey, paramDefaultValue] of paramsWithDefault) {\n endpointParams[paramKey] = endpointParams[paramKey] ?? paramDefaultValue;\n }\n }\n const requiredParams = Object.entries(parameters)\n .filter(([, v]) => v.required)\n .map(([k]) => k);\n for (const requiredParam of requiredParams) {\n if (endpointParams[requiredParam] == null) {\n throw new EndpointError(`Missing required parameter: '${requiredParam}'`);\n }\n }\n const endpoint = evaluateRules(rules, { endpointParams, logger, referenceRecord: {} });\n options.logger?.debug?.(`${debugId} Resolved endpoint: ${toDebugString(endpoint)}`);\n return endpoint;\n};\n","export const debugId = \"endpoints\";\n","export function toDebugString(input) {\n if (typeof input !== \"object\" || input == null) {\n return input;\n }\n if (\"ref\" in input) {\n return `$${toDebugString(input.ref)}`;\n }\n if (\"fn\" in input) {\n return `${input.fn}(${(input.argv || []).map(toDebugString).join(\", \")})`;\n }\n return JSON.stringify(input, null, 2);\n}\n","export class EndpointError extends Error {\n constructor(message) {\n super(message);\n this.name = \"EndpointError\";\n }\n}\n","import { EndpointError } from \"../types\";\nimport { evaluateConditions } from \"./evaluateConditions\";\nimport { evaluateEndpointRule } from \"./evaluateEndpointRule\";\nimport { evaluateErrorRule } from \"./evaluateErrorRule\";\nexport const evaluateRules = (rules, options) => {\n for (const rule of rules) {\n if (rule.type === \"endpoint\") {\n const endpointOrUndefined = evaluateEndpointRule(rule, options);\n if (endpointOrUndefined) {\n return endpointOrUndefined;\n }\n }\n else if (rule.type === \"error\") {\n evaluateErrorRule(rule, options);\n }\n else if (rule.type === \"tree\") {\n const endpointOrUndefined = group.evaluateTreeRule(rule, options);\n if (endpointOrUndefined) {\n return endpointOrUndefined;\n }\n }\n else {\n throw new EndpointError(`Unknown endpoint rule: ${rule}`);\n }\n }\n throw new EndpointError(`Rules evaluation failed`);\n};\nexport const evaluateTreeRule = (treeRule, options) => {\n const { conditions, rules } = treeRule;\n const { result, referenceRecord } = evaluateConditions(conditions, options);\n if (!result) {\n return;\n }\n return group.evaluateRules(rules, {\n ...options,\n referenceRecord: { ...options.referenceRecord, ...referenceRecord },\n });\n};\nexport const group = {\n evaluateRules,\n evaluateTreeRule,\n};\n","import { debugId, toDebugString } from \"../debug\";\nimport { evaluateCondition } from \"./evaluateCondition\";\nexport const evaluateConditions = (conditions = [], options) => {\n const conditionsReferenceRecord = {};\n for (const condition of conditions) {\n const { result, toAssign } = evaluateCondition(condition, {\n ...options,\n referenceRecord: {\n ...options.referenceRecord,\n ...conditionsReferenceRecord,\n },\n });\n if (!result) {\n return { result };\n }\n if (toAssign) {\n conditionsReferenceRecord[toAssign.name] = toAssign.value;\n options.logger?.debug?.(`${debugId} assign: ${toAssign.name} := ${toDebugString(toAssign.value)}`);\n }\n }\n return { result: true, referenceRecord: conditionsReferenceRecord };\n};\n","import { debugId, toDebugString } from \"../debug\";\nimport { EndpointError } from \"../types\";\nimport { callFunction } from \"./callFunction\";\nexport const evaluateCondition = ({ assign, ...fnArgs }, options) => {\n if (assign && assign in options.referenceRecord) {\n throw new EndpointError(`'${assign}' is already defined in Reference Record.`);\n }\n const value = callFunction(fnArgs, options);\n options.logger?.debug?.(`${debugId} evaluateCondition: ${toDebugString(fnArgs)} = ${toDebugString(value)}`);\n return {\n result: value === \"\" ? true : !!value,\n ...(assign != null && { toAssign: { name: assign, value } }),\n };\n};\n","export { callFunction } from \"./evaluateExpression\";\n","import { EndpointError } from \"../types\";\nimport { customEndpointFunctions } from \"./customEndpointFunctions\";\nimport { endpointFunctions } from \"./endpointFunctions\";\nimport { evaluateTemplate } from \"./evaluateTemplate\";\nimport { getReferenceValue } from \"./getReferenceValue\";\nexport const evaluateExpression = (obj, keyName, options) => {\n if (typeof obj === \"string\") {\n return evaluateTemplate(obj, options);\n }\n else if (obj[\"fn\"]) {\n return group.callFunction(obj, options);\n }\n else if (obj[\"ref\"]) {\n return getReferenceValue(obj, options);\n }\n throw new EndpointError(`'${keyName}': ${String(obj)} is not a string, function or reference.`);\n};\nexport const callFunction = ({ fn, argv }, options) => {\n const evaluatedArgs = argv.map((arg) => [\"boolean\", \"number\"].includes(typeof arg) ? arg : group.evaluateExpression(arg, \"arg\", options));\n const fnSegments = fn.split(\".\");\n if (fnSegments[0] in customEndpointFunctions && fnSegments[1] != null) {\n return customEndpointFunctions[fnSegments[0]][fnSegments[1]](...evaluatedArgs);\n }\n return endpointFunctions[fn](...evaluatedArgs);\n};\nexport const group = {\n evaluateExpression,\n callFunction,\n};\n","import { booleanEquals, getAttr, isSet, isValidHostLabel, not, parseURL, stringEquals, substring, uriEncode, } from \"../lib\";\nexport const endpointFunctions = {\n booleanEquals,\n getAttr,\n isSet,\n isValidHostLabel,\n not,\n parseURL,\n stringEquals,\n substring,\n uriEncode,\n};\n","export const booleanEquals = (value1, value2) => value1 === value2;\n","import { EndpointError } from \"../types\";\nimport { getAttrPathList } from \"./getAttrPathList\";\nexport const getAttr = (value, path) => getAttrPathList(path).reduce((acc, index) => {\n if (typeof acc !== \"object\") {\n throw new EndpointError(`Index '${index}' in '${path}' not found in '${JSON.stringify(value)}'`);\n }\n else if (Array.isArray(acc)) {\n return acc[parseInt(index)];\n }\n return acc[index];\n}, value);\n","import { EndpointError } from \"../types\";\nexport const getAttrPathList = (path) => {\n const parts = path.split(\".\");\n const pathList = [];\n for (const part of parts) {\n const squareBracketIndex = part.indexOf(\"[\");\n if (squareBracketIndex !== -1) {\n if (part.indexOf(\"]\") !== part.length - 1) {\n throw new EndpointError(`Path: '${path}' does not end with ']'`);\n }\n const arrayIndex = part.slice(squareBracketIndex + 1, -1);\n if (Number.isNaN(parseInt(arrayIndex))) {\n throw new EndpointError(`Invalid array index: '${arrayIndex}' in path: '${path}'`);\n }\n if (squareBracketIndex !== 0) {\n pathList.push(part.slice(0, squareBracketIndex));\n }\n pathList.push(arrayIndex);\n }\n else {\n pathList.push(part);\n }\n }\n return pathList;\n};\n","export const isSet = (value) => value != null;\n","export const not = (value) => !value;\n","import { EndpointURLScheme } from \"@smithy/types\";\nimport { isIpAddress } from \"./isIpAddress\";\nconst DEFAULT_PORTS = {\n [EndpointURLScheme.HTTP]: 80,\n [EndpointURLScheme.HTTPS]: 443,\n};\nexport const parseURL = (value) => {\n const whatwgURL = (() => {\n try {\n if (value instanceof URL) {\n return value;\n }\n if (typeof value === \"object\" && \"hostname\" in value) {\n const { hostname, port, protocol = \"\", path = \"\", query = {} } = value;\n const url = new URL(`${protocol}//${hostname}${port ? `:${port}` : \"\"}${path}`);\n url.search = Object.entries(query)\n .map(([k, v]) => `${k}=${v}`)\n .join(\"&\");\n return url;\n }\n return new URL(value);\n }\n catch (error) {\n return null;\n }\n })();\n if (!whatwgURL) {\n console.error(`Unable to parse ${JSON.stringify(value)} as a whatwg URL.`);\n return null;\n }\n const urlString = whatwgURL.href;\n const { host, hostname, pathname, protocol, search } = whatwgURL;\n if (search) {\n return null;\n }\n const scheme = protocol.slice(0, -1);\n if (!Object.values(EndpointURLScheme).includes(scheme)) {\n return null;\n }\n const isIp = isIpAddress(hostname);\n const inputContainsDefaultPort = urlString.includes(`${host}:${DEFAULT_PORTS[scheme]}`) ||\n (typeof value === \"string\" && value.includes(`${host}:${DEFAULT_PORTS[scheme]}`));\n const authority = `${host}${inputContainsDefaultPort ? `:${DEFAULT_PORTS[scheme]}` : ``}`;\n return {\n scheme,\n authority,\n path: pathname,\n normalizedPath: pathname.endsWith(\"/\") ? pathname : `${pathname}/`,\n isIp,\n };\n};\n","export const stringEquals = (value1, value2) => value1 === value2;\n","export const substring = (input, start, stop, reverse) => {\n if (start >= stop || input.length < stop) {\n return null;\n }\n if (!reverse) {\n return input.substring(start, stop);\n }\n return input.substring(input.length - stop, input.length - start);\n};\n","export const uriEncode = (value) => encodeURIComponent(value).replace(/[!*'()]/g, (c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`);\n","import { getAttr } from \"../lib\";\nexport const evaluateTemplate = (template, options) => {\n const evaluatedTemplateArr = [];\n const templateContext = {\n ...options.endpointParams,\n ...options.referenceRecord,\n };\n let currentIndex = 0;\n while (currentIndex < template.length) {\n const openingBraceIndex = template.indexOf(\"{\", currentIndex);\n if (openingBraceIndex === -1) {\n evaluatedTemplateArr.push(template.slice(currentIndex));\n break;\n }\n evaluatedTemplateArr.push(template.slice(currentIndex, openingBraceIndex));\n const closingBraceIndex = template.indexOf(\"}\", openingBraceIndex);\n if (closingBraceIndex === -1) {\n evaluatedTemplateArr.push(template.slice(openingBraceIndex));\n break;\n }\n if (template[openingBraceIndex + 1] === \"{\" && template[closingBraceIndex + 1] === \"}\") {\n evaluatedTemplateArr.push(template.slice(openingBraceIndex + 1, closingBraceIndex));\n currentIndex = closingBraceIndex + 2;\n }\n const parameterName = template.substring(openingBraceIndex + 1, closingBraceIndex);\n if (parameterName.includes(\"#\")) {\n const [refName, attrName] = parameterName.split(\"#\");\n evaluatedTemplateArr.push(getAttr(templateContext[refName], attrName));\n }\n else {\n evaluatedTemplateArr.push(templateContext[parameterName]);\n }\n currentIndex = closingBraceIndex + 1;\n }\n return evaluatedTemplateArr.join(\"\");\n};\n","export const getReferenceValue = ({ ref }, options) => {\n const referenceRecord = {\n ...options.endpointParams,\n ...options.referenceRecord,\n };\n return referenceRecord[ref];\n};\n","import { debugId, toDebugString } from \"../debug\";\nimport { evaluateConditions } from \"./evaluateConditions\";\nimport { getEndpointHeaders } from \"./getEndpointHeaders\";\nimport { getEndpointProperties } from \"./getEndpointProperties\";\nimport { getEndpointUrl } from \"./getEndpointUrl\";\nexport const evaluateEndpointRule = (endpointRule, options) => {\n const { conditions, endpoint } = endpointRule;\n const { result, referenceRecord } = evaluateConditions(conditions, options);\n if (!result) {\n return;\n }\n const endpointRuleOptions = {\n ...options,\n referenceRecord: { ...options.referenceRecord, ...referenceRecord },\n };\n const { url, properties, headers } = endpoint;\n options.logger?.debug?.(`${debugId} Resolving endpoint from template: ${toDebugString(endpoint)}`);\n return {\n ...(headers != undefined && {\n headers: getEndpointHeaders(headers, endpointRuleOptions),\n }),\n ...(properties != undefined && {\n properties: getEndpointProperties(properties, endpointRuleOptions),\n }),\n url: getEndpointUrl(url, endpointRuleOptions),\n };\n};\n","import { EndpointError } from \"../types\";\nimport { evaluateExpression } from \"./evaluateExpression\";\nexport const getEndpointHeaders = (headers, options) => Object.entries(headers).reduce((acc, [headerKey, headerVal]) => ({\n ...acc,\n [headerKey]: headerVal.map((headerValEntry) => {\n const processedExpr = evaluateExpression(headerValEntry, \"Header value entry\", options);\n if (typeof processedExpr !== \"string\") {\n throw new EndpointError(`Header '${headerKey}' value '${processedExpr}' is not a string`);\n }\n return processedExpr;\n }),\n}), {});\n","import { EndpointError } from \"../types\";\nimport { evaluateTemplate } from \"./evaluateTemplate\";\nexport const getEndpointProperties = (properties, options) => Object.entries(properties).reduce((acc, [propertyKey, propertyVal]) => ({\n ...acc,\n [propertyKey]: group.getEndpointProperty(propertyVal, options),\n}), {});\nexport const getEndpointProperty = (property, options) => {\n if (Array.isArray(property)) {\n return property.map((propertyEntry) => getEndpointProperty(propertyEntry, options));\n }\n switch (typeof property) {\n case \"string\":\n return evaluateTemplate(property, options);\n case \"object\":\n if (property === null) {\n throw new EndpointError(`Unexpected endpoint property: ${property}`);\n }\n return group.getEndpointProperties(property, options);\n case \"boolean\":\n return property;\n default:\n throw new EndpointError(`Unexpected endpoint property type: ${typeof property}`);\n }\n};\nexport const group = {\n getEndpointProperty,\n getEndpointProperties,\n};\n","import { EndpointError } from \"../types\";\nimport { evaluateExpression } from \"./evaluateExpression\";\nexport const getEndpointUrl = (endpointUrl, options) => {\n const expression = evaluateExpression(endpointUrl, \"Endpoint URL\", options);\n if (typeof expression === \"string\") {\n try {\n return new URL(expression);\n }\n catch (error) {\n console.error(`Failed to construct URL with ${expression}`, error);\n throw error;\n }\n }\n throw new EndpointError(`Endpoint URL must be a string, got ${typeof expression}`);\n};\n","import { EndpointError } from \"../types\";\nimport { evaluateConditions } from \"./evaluateConditions\";\nimport { evaluateExpression } from \"./evaluateExpression\";\nexport const evaluateErrorRule = (errorRule, options) => {\n const { conditions, error } = errorRule;\n const { result, referenceRecord } = evaluateConditions(conditions, options);\n if (!result) {\n return;\n }\n throw new EndpointError(evaluateExpression(error, \"Error\", {\n ...options,\n referenceRecord: { ...options.referenceRecord, ...referenceRecord },\n }));\n};\n","import { isValidHostLabel } from \"@smithy/util-endpoints\";\nimport { isIpAddress } from \"../isIpAddress\";\nexport const isVirtualHostableS3Bucket = (value, allowSubDomains = false) => {\n if (allowSubDomains) {\n for (const label of value.split(\".\")) {\n if (!isVirtualHostableS3Bucket(label)) {\n return false;\n }\n }\n return true;\n }\n if (!isValidHostLabel(value)) {\n return false;\n }\n if (value.length < 3 || value.length > 63) {\n return false;\n }\n if (value !== value.toLowerCase()) {\n return false;\n }\n if (isIpAddress(value)) {\n return false;\n }\n return true;\n};\n","export { isIpAddress } from \"@smithy/util-endpoints\";\n","const ARN_DELIMITER = \":\";\nconst RESOURCE_DELIMITER = \"/\";\nexport const parseArn = (value) => {\n const segments = value.split(ARN_DELIMITER);\n if (segments.length < 6)\n return null;\n const [arn, partition, service, region, accountId, ...resourcePath] = segments;\n if (arn !== \"arn\" || partition === \"\" || service === \"\" || resourcePath.join(ARN_DELIMITER) === \"\")\n return null;\n const resourceId = resourcePath.map((resource) => resource.split(RESOURCE_DELIMITER)).flat();\n return {\n partition,\n service,\n region,\n accountId,\n resourceId,\n };\n};\n","import partitionsInfo from \"./partitions.json\";\nlet selectedPartitionsInfo = partitionsInfo;\nlet selectedUserAgentPrefix = \"\";\nexport const partition = (value) => {\n const { partitions } = selectedPartitionsInfo;\n for (const partition of partitions) {\n const { regions, outputs } = partition;\n for (const [region, regionData] of Object.entries(regions)) {\n if (region === value) {\n return {\n ...outputs,\n ...regionData,\n };\n }\n }\n }\n for (const partition of partitions) {\n const { regionRegex, outputs } = partition;\n if (new RegExp(regionRegex).test(value)) {\n return {\n ...outputs,\n };\n }\n }\n const DEFAULT_PARTITION = partitions.find((partition) => partition.id === \"aws\");\n if (!DEFAULT_PARTITION) {\n throw new Error(\"Provided region was not found in the partition array or regex,\" +\n \" and default partition with id 'aws' doesn't exist.\");\n }\n return {\n ...DEFAULT_PARTITION.outputs,\n };\n};\nexport const setPartitionInfo = (partitionsInfo, userAgentPrefix = \"\") => {\n selectedPartitionsInfo = partitionsInfo;\n selectedUserAgentPrefix = userAgentPrefix;\n};\nexport const useDefaultPartitionInfo = () => {\n setPartitionInfo(partitionsInfo, \"\");\n};\nexport const getUserAgentPrefix = () => selectedUserAgentPrefix;\n","{\n \"partitions\": [{\n \"id\": \"aws\",\n \"outputs\": {\n \"dnsSuffix\": \"amazonaws.com\",\n \"dualStackDnsSuffix\": \"api.aws\",\n \"implicitGlobalRegion\": \"us-east-1\",\n \"name\": \"aws\",\n \"supportsDualStack\": true,\n \"supportsFIPS\": true\n },\n \"regionRegex\": \"^(us|eu|ap|sa|ca|me|af|il|mx)\\\\-\\\\w+\\\\-\\\\d+$\",\n \"regions\": {\n \"af-south-1\": {\n \"description\": \"Africa (Cape Town)\"\n },\n \"ap-east-1\": {\n \"description\": \"Asia Pacific (Hong Kong)\"\n },\n \"ap-east-2\": {\n \"description\": \"Asia Pacific (Taipei)\"\n },\n \"ap-northeast-1\": {\n \"description\": \"Asia Pacific (Tokyo)\"\n },\n \"ap-northeast-2\": {\n \"description\": \"Asia Pacific (Seoul)\"\n },\n \"ap-northeast-3\": {\n \"description\": \"Asia Pacific (Osaka)\"\n },\n \"ap-south-1\": {\n \"description\": \"Asia Pacific (Mumbai)\"\n },\n \"ap-south-2\": {\n \"description\": \"Asia Pacific (Hyderabad)\"\n },\n \"ap-southeast-1\": {\n \"description\": \"Asia Pacific (Singapore)\"\n },\n \"ap-southeast-2\": {\n \"description\": \"Asia Pacific (Sydney)\"\n },\n \"ap-southeast-3\": {\n \"description\": \"Asia Pacific (Jakarta)\"\n },\n \"ap-southeast-4\": {\n \"description\": \"Asia Pacific (Melbourne)\"\n },\n \"ap-southeast-5\": {\n \"description\": \"Asia Pacific (Malaysia)\"\n },\n \"ap-southeast-6\": {\n \"description\": \"Asia Pacific (New Zealand)\"\n },\n \"ap-southeast-7\": {\n \"description\": \"Asia Pacific (Thailand)\"\n },\n \"aws-global\": {\n \"description\": \"aws global region\"\n },\n \"ca-central-1\": {\n \"description\": \"Canada (Central)\"\n },\n \"ca-west-1\": {\n \"description\": \"Canada West (Calgary)\"\n },\n \"eu-central-1\": {\n \"description\": \"Europe (Frankfurt)\"\n },\n \"eu-central-2\": {\n \"description\": \"Europe (Zurich)\"\n },\n \"eu-north-1\": {\n \"description\": \"Europe (Stockholm)\"\n },\n \"eu-south-1\": {\n \"description\": \"Europe (Milan)\"\n },\n \"eu-south-2\": {\n \"description\": \"Europe (Spain)\"\n },\n \"eu-west-1\": {\n \"description\": \"Europe (Ireland)\"\n },\n \"eu-west-2\": {\n \"description\": \"Europe (London)\"\n },\n \"eu-west-3\": {\n \"description\": \"Europe (Paris)\"\n },\n \"il-central-1\": {\n \"description\": \"Israel (Tel Aviv)\"\n },\n \"me-central-1\": {\n \"description\": \"Middle East (UAE)\"\n },\n \"me-south-1\": {\n \"description\": \"Middle East (Bahrain)\"\n },\n \"mx-central-1\": {\n \"description\": \"Mexico (Central)\"\n },\n \"sa-east-1\": {\n \"description\": \"South America (Sao Paulo)\"\n },\n \"us-east-1\": {\n \"description\": \"US East (N. Virginia)\"\n },\n \"us-east-2\": {\n \"description\": \"US East (Ohio)\"\n },\n \"us-west-1\": {\n \"description\": \"US West (N. California)\"\n },\n \"us-west-2\": {\n \"description\": \"US West (Oregon)\"\n }\n }\n }, {\n \"id\": \"aws-cn\",\n \"outputs\": {\n \"dnsSuffix\": \"amazonaws.com.cn\",\n \"dualStackDnsSuffix\": \"api.amazonwebservices.com.cn\",\n \"implicitGlobalRegion\": \"cn-northwest-1\",\n \"name\": \"aws-cn\",\n \"supportsDualStack\": true,\n \"supportsFIPS\": true\n },\n \"regionRegex\": \"^cn\\\\-\\\\w+\\\\-\\\\d+$\",\n \"regions\": {\n \"aws-cn-global\": {\n \"description\": \"aws-cn global region\"\n },\n \"cn-north-1\": {\n \"description\": \"China (Beijing)\"\n },\n \"cn-northwest-1\": {\n \"description\": \"China (Ningxia)\"\n }\n }\n }, {\n \"id\": \"aws-eusc\",\n \"outputs\": {\n \"dnsSuffix\": \"amazonaws.eu\",\n \"dualStackDnsSuffix\": \"api.amazonwebservices.eu\",\n \"implicitGlobalRegion\": \"eusc-de-east-1\",\n \"name\": \"aws-eusc\",\n \"supportsDualStack\": true,\n \"supportsFIPS\": true\n },\n \"regionRegex\": \"^eusc\\\\-(de)\\\\-\\\\w+\\\\-\\\\d+$\",\n \"regions\": {\n \"eusc-de-east-1\": {\n \"description\": \"EU (Germany)\"\n }\n }\n }, {\n \"id\": \"aws-iso\",\n \"outputs\": {\n \"dnsSuffix\": \"c2s.ic.gov\",\n \"dualStackDnsSuffix\": \"api.aws.ic.gov\",\n \"implicitGlobalRegion\": \"us-iso-east-1\",\n \"name\": \"aws-iso\",\n \"supportsDualStack\": false,\n \"supportsFIPS\": true\n },\n \"regionRegex\": \"^us\\\\-iso\\\\-\\\\w+\\\\-\\\\d+$\",\n \"regions\": {\n \"aws-iso-global\": {\n \"description\": \"aws-iso global region\"\n },\n \"us-iso-east-1\": {\n \"description\": \"US ISO East\"\n },\n \"us-iso-west-1\": {\n \"description\": \"US ISO WEST\"\n }\n }\n }, {\n \"id\": \"aws-iso-b\",\n \"outputs\": {\n \"dnsSuffix\": \"sc2s.sgov.gov\",\n \"dualStackDnsSuffix\": \"api.aws.scloud\",\n \"implicitGlobalRegion\": \"us-isob-east-1\",\n \"name\": \"aws-iso-b\",\n \"supportsDualStack\": false,\n \"supportsFIPS\": true\n },\n \"regionRegex\": \"^us\\\\-isob\\\\-\\\\w+\\\\-\\\\d+$\",\n \"regions\": {\n \"aws-iso-b-global\": {\n \"description\": \"aws-iso-b global region\"\n },\n \"us-isob-east-1\": {\n \"description\": \"US ISOB East (Ohio)\"\n }\n }\n }, {\n \"id\": \"aws-iso-e\",\n \"outputs\": {\n \"dnsSuffix\": \"cloud.adc-e.uk\",\n \"dualStackDnsSuffix\": \"api.cloud-aws.adc-e.uk\",\n \"implicitGlobalRegion\": \"eu-isoe-west-1\",\n \"name\": \"aws-iso-e\",\n \"supportsDualStack\": false,\n \"supportsFIPS\": true\n },\n \"regionRegex\": \"^eu\\\\-isoe\\\\-\\\\w+\\\\-\\\\d+$\",\n \"regions\": {\n \"aws-iso-e-global\": {\n \"description\": \"aws-iso-e global region\"\n },\n \"eu-isoe-west-1\": {\n \"description\": \"EU ISOE West\"\n }\n }\n }, {\n \"id\": \"aws-iso-f\",\n \"outputs\": {\n \"dnsSuffix\": \"csp.hci.ic.gov\",\n \"dualStackDnsSuffix\": \"api.aws.hci.ic.gov\",\n \"implicitGlobalRegion\": \"us-isof-south-1\",\n \"name\": \"aws-iso-f\",\n \"supportsDualStack\": false,\n \"supportsFIPS\": true\n },\n \"regionRegex\": \"^us\\\\-isof\\\\-\\\\w+\\\\-\\\\d+$\",\n \"regions\": {\n \"aws-iso-f-global\": {\n \"description\": \"aws-iso-f global region\"\n },\n \"us-isof-east-1\": {\n \"description\": \"US ISOF EAST\"\n },\n \"us-isof-south-1\": {\n \"description\": \"US ISOF SOUTH\"\n }\n }\n }, {\n \"id\": \"aws-us-gov\",\n \"outputs\": {\n \"dnsSuffix\": \"amazonaws.com\",\n \"dualStackDnsSuffix\": \"api.aws\",\n \"implicitGlobalRegion\": \"us-gov-west-1\",\n \"name\": \"aws-us-gov\",\n \"supportsDualStack\": true,\n \"supportsFIPS\": true\n },\n \"regionRegex\": \"^us\\\\-gov\\\\-\\\\w+\\\\-\\\\d+$\",\n \"regions\": {\n \"aws-us-gov-global\": {\n \"description\": \"aws-us-gov global region\"\n },\n \"us-gov-east-1\": {\n \"description\": \"AWS GovCloud (US-East)\"\n },\n \"us-gov-west-1\": {\n \"description\": \"AWS GovCloud (US-West)\"\n }\n }\n }],\n \"version\": \"1.1\"\n}\n","import { parseUrl } from \"@smithy/url-parser\";\nexport const resolveDefaultAwsRegionalEndpointsConfig = (input) => {\n if (typeof input.endpointProvider !== \"function\") {\n throw new Error(\"@aws-sdk/util-endpoint - endpointProvider and endpoint missing in config for this client.\");\n }\n const { endpoint } = input;\n if (endpoint === undefined) {\n input.endpoint = async () => {\n return toEndpointV1(input.endpointProvider({\n Region: typeof input.region === \"function\" ? await input.region() : input.region,\n UseDualStack: typeof input.useDualstackEndpoint === \"function\"\n ? await input.useDualstackEndpoint()\n : input.useDualstackEndpoint,\n UseFIPS: typeof input.useFipsEndpoint === \"function\" ? await input.useFipsEndpoint() : input.useFipsEndpoint,\n Endpoint: undefined,\n }, { logger: input.logger }));\n };\n }\n return input;\n};\nexport const toEndpointV1 = (endpoint) => parseUrl(endpoint.url);\n","export { resolveEndpoint } from \"@smithy/util-endpoints\";\n","export * from \"./EndpointError\";\nexport * from \"./EndpointRuleObject\";\nexport * from \"./ErrorRuleObject\";\nexport * from \"./RuleSetObject\";\nexport * from \"./TreeRuleObject\";\nexport * from \"./shared\";\n","export { EndpointError } from \"@smithy/util-endpoints\";\n","export {};\n","export {};\n","export {};\n","export {};\n","export {};\n","import { setFeature } from \"@aws-sdk/core\";\nconst ACCOUNT_ID_ENDPOINT_REGEX = /\\d{12}\\.ddb/;\nexport async function checkFeatures(context, config, args) {\n const request = args.request;\n if (request?.headers?.[\"smithy-protocol\"] === \"rpc-v2-cbor\") {\n setFeature(context, \"PROTOCOL_RPC_V2_CBOR\", \"M\");\n }\n if (typeof config.retryStrategy === \"function\") {\n const retryStrategy = await config.retryStrategy();\n if (typeof retryStrategy.acquireInitialRetryToken === \"function\") {\n if (retryStrategy.constructor?.name?.includes(\"Adaptive\")) {\n setFeature(context, \"RETRY_MODE_ADAPTIVE\", \"F\");\n }\n else {\n setFeature(context, \"RETRY_MODE_STANDARD\", \"E\");\n }\n }\n else {\n setFeature(context, \"RETRY_MODE_LEGACY\", \"D\");\n }\n }\n if (typeof config.accountIdEndpointMode === \"function\") {\n const endpointV2 = context.endpointV2;\n if (String(endpointV2?.url?.hostname).match(ACCOUNT_ID_ENDPOINT_REGEX)) {\n setFeature(context, \"ACCOUNT_ID_ENDPOINT\", \"O\");\n }\n switch (await config.accountIdEndpointMode?.()) {\n case \"disabled\":\n setFeature(context, \"ACCOUNT_ID_MODE_DISABLED\", \"Q\");\n break;\n case \"preferred\":\n setFeature(context, \"ACCOUNT_ID_MODE_PREFERRED\", \"P\");\n break;\n case \"required\":\n setFeature(context, \"ACCOUNT_ID_MODE_REQUIRED\", \"R\");\n break;\n }\n }\n const identity = context.__smithy_context?.selectedHttpAuthScheme?.identity;\n if (identity?.$source) {\n const credentials = identity;\n if (credentials.accountId) {\n setFeature(context, \"RESOLVED_ACCOUNT_ID\", \"T\");\n }\n for (const [key, value] of Object.entries(credentials.$source ?? {})) {\n setFeature(context, key, value);\n }\n }\n}\n","export const state = {\n warningEmitted: false,\n};\nexport const emitWarningIfUnsupportedVersion = (version) => {\n if (version && !state.warningEmitted && parseInt(version.substring(1, version.indexOf(\".\"))) < 18) {\n state.warningEmitted = true;\n process.emitWarning(`NodeDeprecationWarning: The AWS SDK for JavaScript (v3) will\nno longer support Node.js 16.x on January 6, 2025.\n\nTo continue receiving updates to AWS services, bug fixes, and security\nupdates please upgrade to a supported Node.js LTS version.\n\nMore information can be found at: https://a.co/74kJMmI`);\n }\n};\n","export function setFeature(context, feature, value) {\n if (!context.__aws_sdk_context) {\n context.__aws_sdk_context = {\n features: {},\n };\n }\n else if (!context.__aws_sdk_context.features) {\n context.__aws_sdk_context.features = {};\n }\n context.__aws_sdk_context.features[feature] = value;\n}\n","export { AwsSdkSigV4Signer, AWSSDKSigV4Signer, validateSigningProperties } from \"./AwsSdkSigV4Signer\";\nexport { AwsSdkSigV4ASigner } from \"./AwsSdkSigV4ASigner\";\nexport * from \"./NODE_AUTH_SCHEME_PREFERENCE_OPTIONS\";\nexport * from \"./resolveAwsSdkSigV4AConfig\";\nexport * from \"./resolveAwsSdkSigV4Config\";\n","import { HttpRequest } from \"@smithy/protocol-http\";\nimport { getDateHeader, getSkewCorrectedDate, getUpdatedSystemClockOffset } from \"../utils\";\nconst throwSigningPropertyError = (name, property) => {\n if (!property) {\n throw new Error(`Property \\`${name}\\` is not resolved for AWS SDK SigV4Auth`);\n }\n return property;\n};\nexport const validateSigningProperties = async (signingProperties) => {\n const context = throwSigningPropertyError(\"context\", signingProperties.context);\n const config = throwSigningPropertyError(\"config\", signingProperties.config);\n const authScheme = context.endpointV2?.properties?.authSchemes?.[0];\n const signerFunction = throwSigningPropertyError(\"signer\", config.signer);\n const signer = await signerFunction(authScheme);\n const signingRegion = signingProperties?.signingRegion;\n const signingRegionSet = signingProperties?.signingRegionSet;\n const signingName = signingProperties?.signingName;\n return {\n config,\n signer,\n signingRegion,\n signingRegionSet,\n signingName,\n };\n};\nexport class AwsSdkSigV4Signer {\n async sign(httpRequest, identity, signingProperties) {\n if (!HttpRequest.isInstance(httpRequest)) {\n throw new Error(\"The request is not an instance of `HttpRequest` and cannot be signed\");\n }\n const validatedProps = await validateSigningProperties(signingProperties);\n const { config, signer } = validatedProps;\n let { signingRegion, signingName } = validatedProps;\n const handlerExecutionContext = signingProperties.context;\n if (handlerExecutionContext?.authSchemes?.length ?? 0 > 1) {\n const [first, second] = handlerExecutionContext.authSchemes;\n if (first?.name === \"sigv4a\" && second?.name === \"sigv4\") {\n signingRegion = second?.signingRegion ?? signingRegion;\n signingName = second?.signingName ?? signingName;\n }\n }\n const signedRequest = await signer.sign(httpRequest, {\n signingDate: getSkewCorrectedDate(config.systemClockOffset),\n signingRegion: signingRegion,\n signingService: signingName,\n });\n return signedRequest;\n }\n errorHandler(signingProperties) {\n return (error) => {\n const serverTime = error.ServerTime ?? getDateHeader(error.$response);\n if (serverTime) {\n const config = throwSigningPropertyError(\"config\", signingProperties.config);\n const initialSystemClockOffset = config.systemClockOffset;\n config.systemClockOffset = getUpdatedSystemClockOffset(serverTime, config.systemClockOffset);\n const clockSkewCorrected = config.systemClockOffset !== initialSystemClockOffset;\n if (clockSkewCorrected && error.$metadata) {\n error.$metadata.clockSkewCorrected = true;\n }\n }\n throw error;\n };\n }\n successHandler(httpResponse, signingProperties) {\n const dateHeader = getDateHeader(httpResponse);\n if (dateHeader) {\n const config = throwSigningPropertyError(\"config\", signingProperties.config);\n config.systemClockOffset = getUpdatedSystemClockOffset(dateHeader, config.systemClockOffset);\n }\n }\n}\nexport const AWSSDKSigV4Signer = AwsSdkSigV4Signer;\n","import { HttpResponse } from \"@smithy/protocol-http\";\nexport const getDateHeader = (response) => HttpResponse.isInstance(response) ? response.headers?.date ?? response.headers?.Date : undefined;\n","export const getSkewCorrectedDate = (systemClockOffset) => new Date(Date.now() + systemClockOffset);\n","import { isClockSkewed } from \"./isClockSkewed\";\nexport const getUpdatedSystemClockOffset = (clockTime, currentSystemClockOffset) => {\n const clockTimeInMs = Date.parse(clockTime);\n if (isClockSkewed(clockTimeInMs, currentSystemClockOffset)) {\n return clockTimeInMs - Date.now();\n }\n return currentSystemClockOffset;\n};\n","import { getSkewCorrectedDate } from \"./getSkewCorrectedDate\";\nexport const isClockSkewed = (clockTime, systemClockOffset) => Math.abs(getSkewCorrectedDate(systemClockOffset).getTime() - clockTime) >= 300000;\n","import { getArrayForCommaSeparatedString } from \"../utils/getArrayForCommaSeparatedString\";\nimport { getBearerTokenEnvKey } from \"../utils/getBearerTokenEnvKey\";\nconst NODE_AUTH_SCHEME_PREFERENCE_ENV_KEY = \"AWS_AUTH_SCHEME_PREFERENCE\";\nconst NODE_AUTH_SCHEME_PREFERENCE_CONFIG_KEY = \"auth_scheme_preference\";\nexport const NODE_AUTH_SCHEME_PREFERENCE_OPTIONS = {\n environmentVariableSelector: (env, options) => {\n if (options?.signingName) {\n const bearerTokenKey = getBearerTokenEnvKey(options.signingName);\n if (bearerTokenKey in env)\n return [\"httpBearerAuth\"];\n }\n if (!(NODE_AUTH_SCHEME_PREFERENCE_ENV_KEY in env))\n return undefined;\n return getArrayForCommaSeparatedString(env[NODE_AUTH_SCHEME_PREFERENCE_ENV_KEY]);\n },\n configFileSelector: (profile) => {\n if (!(NODE_AUTH_SCHEME_PREFERENCE_CONFIG_KEY in profile))\n return undefined;\n return getArrayForCommaSeparatedString(profile[NODE_AUTH_SCHEME_PREFERENCE_CONFIG_KEY]);\n },\n default: [],\n};\n","export const getArrayForCommaSeparatedString = (str) => typeof str === \"string\" && str.length > 0 ? str.split(\",\").map((item) => item.trim()) : [];\n","export const getBearerTokenEnvKey = (signingName) => `AWS_BEARER_TOKEN_${signingName.replace(/[\\s-]/g, \"_\").toUpperCase()}`;\n","import { setCredentialFeature } from \"@aws-sdk/core/client\";\nimport { doesIdentityRequireRefresh, isIdentityExpired, memoizeIdentityProvider, normalizeProvider, } from \"@smithy/core\";\nimport { SignatureV4 } from \"@smithy/signature-v4\";\nexport const resolveAwsSdkSigV4Config = (config) => {\n let inputCredentials = config.credentials;\n let isUserSupplied = !!config.credentials;\n let resolvedCredentials = undefined;\n Object.defineProperty(config, \"credentials\", {\n set(credentials) {\n if (credentials && credentials !== inputCredentials && credentials !== resolvedCredentials) {\n isUserSupplied = true;\n }\n inputCredentials = credentials;\n const memoizedProvider = normalizeCredentialProvider(config, {\n credentials: inputCredentials,\n credentialDefaultProvider: config.credentialDefaultProvider,\n });\n const boundProvider = bindCallerConfig(config, memoizedProvider);\n if (isUserSupplied && !boundProvider.attributed) {\n resolvedCredentials = async (options) => boundProvider(options).then((creds) => setCredentialFeature(creds, \"CREDENTIALS_CODE\", \"e\"));\n resolvedCredentials.memoized = boundProvider.memoized;\n resolvedCredentials.configBound = boundProvider.configBound;\n resolvedCredentials.attributed = true;\n }\n else {\n resolvedCredentials = boundProvider;\n }\n },\n get() {\n return resolvedCredentials;\n },\n enumerable: true,\n configurable: true,\n });\n config.credentials = inputCredentials;\n const { signingEscapePath = true, systemClockOffset = config.systemClockOffset || 0, sha256, } = config;\n let signer;\n if (config.signer) {\n signer = normalizeProvider(config.signer);\n }\n else if (config.regionInfoProvider) {\n signer = () => normalizeProvider(config.region)()\n .then(async (region) => [\n (await config.regionInfoProvider(region, {\n useFipsEndpoint: await config.useFipsEndpoint(),\n useDualstackEndpoint: await config.useDualstackEndpoint(),\n })) || {},\n region,\n ])\n .then(([regionInfo, region]) => {\n const { signingRegion, signingService } = regionInfo;\n config.signingRegion = config.signingRegion || signingRegion || region;\n config.signingName = config.signingName || signingService || config.serviceId;\n const params = {\n ...config,\n credentials: config.credentials,\n region: config.signingRegion,\n service: config.signingName,\n sha256,\n uriEscapePath: signingEscapePath,\n };\n const SignerCtor = config.signerConstructor || SignatureV4;\n return new SignerCtor(params);\n });\n }\n else {\n signer = async (authScheme) => {\n authScheme = Object.assign({}, {\n name: \"sigv4\",\n signingName: config.signingName || config.defaultSigningName,\n signingRegion: await normalizeProvider(config.region)(),\n properties: {},\n }, authScheme);\n const signingRegion = authScheme.signingRegion;\n const signingService = authScheme.signingName;\n config.signingRegion = config.signingRegion || signingRegion;\n config.signingName = config.signingName || signingService || config.serviceId;\n const params = {\n ...config,\n credentials: config.credentials,\n region: config.signingRegion,\n service: config.signingName,\n sha256,\n uriEscapePath: signingEscapePath,\n };\n const SignerCtor = config.signerConstructor || SignatureV4;\n return new SignerCtor(params);\n };\n }\n const resolvedConfig = Object.assign(config, {\n systemClockOffset,\n signingEscapePath,\n signer,\n });\n return resolvedConfig;\n};\nexport const resolveAWSSDKSigV4Config = resolveAwsSdkSigV4Config;\nfunction normalizeCredentialProvider(config, { credentials, credentialDefaultProvider, }) {\n let credentialsProvider;\n if (credentials) {\n if (!credentials?.memoized) {\n credentialsProvider = memoizeIdentityProvider(credentials, isIdentityExpired, doesIdentityRequireRefresh);\n }\n else {\n credentialsProvider = credentials;\n }\n }\n else {\n if (credentialDefaultProvider) {\n credentialsProvider = normalizeProvider(credentialDefaultProvider(Object.assign({}, config, {\n parentClientConfig: config,\n })));\n }\n else {\n credentialsProvider = async () => {\n throw new Error(\"@aws-sdk/core::resolveAwsSdkSigV4Config - `credentials` not provided and no credentialDefaultProvider was configured.\");\n };\n }\n }\n credentialsProvider.memoized = true;\n return credentialsProvider;\n}\nfunction bindCallerConfig(config, credentialsProvider) {\n if (credentialsProvider.configBound) {\n return credentialsProvider;\n }\n const fn = async (options) => credentialsProvider({ ...options, callerClientConfig: config });\n fn.memoized = credentialsProvider.memoized;\n fn.configBound = true;\n return fn;\n}\n","import { toHex } from \"@smithy/util-hex-encoding\";\nimport { toUint8Array } from \"@smithy/util-utf8\";\nimport { ALGORITHM_IDENTIFIER, ALGORITHM_QUERY_PARAM, AMZ_DATE_HEADER, AMZ_DATE_QUERY_PARAM, AUTH_HEADER, CREDENTIAL_QUERY_PARAM, EVENT_ALGORITHM_IDENTIFIER, EXPIRES_QUERY_PARAM, MAX_PRESIGNED_TTL, SHA256_HEADER, SIGNATURE_QUERY_PARAM, SIGNED_HEADERS_QUERY_PARAM, TOKEN_HEADER, TOKEN_QUERY_PARAM, } from \"./constants\";\nimport { createScope, getSigningKey } from \"./credentialDerivation\";\nimport { getCanonicalHeaders } from \"./getCanonicalHeaders\";\nimport { getPayloadHash } from \"./getPayloadHash\";\nimport { HeaderFormatter } from \"./HeaderFormatter\";\nimport { hasHeader } from \"./headerUtil\";\nimport { moveHeadersToQuery } from \"./moveHeadersToQuery\";\nimport { prepareRequest } from \"./prepareRequest\";\nimport { SignatureV4Base } from \"./SignatureV4Base\";\nexport class SignatureV4 extends SignatureV4Base {\n headerFormatter = new HeaderFormatter();\n constructor({ applyChecksum, credentials, region, service, sha256, uriEscapePath = true, }) {\n super({\n applyChecksum,\n credentials,\n region,\n service,\n sha256,\n uriEscapePath,\n });\n }\n async presign(originalRequest, options = {}) {\n const { signingDate = new Date(), expiresIn = 3600, unsignableHeaders, unhoistableHeaders, signableHeaders, hoistableHeaders, signingRegion, signingService, } = options;\n const credentials = await this.credentialProvider();\n this.validateResolvedCredentials(credentials);\n const region = signingRegion ?? (await this.regionProvider());\n const { longDate, shortDate } = this.formatDate(signingDate);\n if (expiresIn > MAX_PRESIGNED_TTL) {\n return Promise.reject(\"Signature version 4 presigned URLs\" + \" must have an expiration date less than one week in\" + \" the future\");\n }\n const scope = createScope(shortDate, region, signingService ?? this.service);\n const request = moveHeadersToQuery(prepareRequest(originalRequest), { unhoistableHeaders, hoistableHeaders });\n if (credentials.sessionToken) {\n request.query[TOKEN_QUERY_PARAM] = credentials.sessionToken;\n }\n request.query[ALGORITHM_QUERY_PARAM] = ALGORITHM_IDENTIFIER;\n request.query[CREDENTIAL_QUERY_PARAM] = `${credentials.accessKeyId}/${scope}`;\n request.query[AMZ_DATE_QUERY_PARAM] = longDate;\n request.query[EXPIRES_QUERY_PARAM] = expiresIn.toString(10);\n const canonicalHeaders = getCanonicalHeaders(request, unsignableHeaders, signableHeaders);\n request.query[SIGNED_HEADERS_QUERY_PARAM] = this.getCanonicalHeaderList(canonicalHeaders);\n request.query[SIGNATURE_QUERY_PARAM] = await this.getSignature(longDate, scope, this.getSigningKey(credentials, region, shortDate, signingService), this.createCanonicalRequest(request, canonicalHeaders, await getPayloadHash(originalRequest, this.sha256)));\n return request;\n }\n async sign(toSign, options) {\n if (typeof toSign === \"string\") {\n return this.signString(toSign, options);\n }\n else if (toSign.headers && toSign.payload) {\n return this.signEvent(toSign, options);\n }\n else if (toSign.message) {\n return this.signMessage(toSign, options);\n }\n else {\n return this.signRequest(toSign, options);\n }\n }\n async signEvent({ headers, payload }, { signingDate = new Date(), priorSignature, signingRegion, signingService }) {\n const region = signingRegion ?? (await this.regionProvider());\n const { shortDate, longDate } = this.formatDate(signingDate);\n const scope = createScope(shortDate, region, signingService ?? this.service);\n const hashedPayload = await getPayloadHash({ headers: {}, body: payload }, this.sha256);\n const hash = new this.sha256();\n hash.update(headers);\n const hashedHeaders = toHex(await hash.digest());\n const stringToSign = [\n EVENT_ALGORITHM_IDENTIFIER,\n longDate,\n scope,\n priorSignature,\n hashedHeaders,\n hashedPayload,\n ].join(\"\\n\");\n return this.signString(stringToSign, { signingDate, signingRegion: region, signingService });\n }\n async signMessage(signableMessage, { signingDate = new Date(), signingRegion, signingService }) {\n const promise = this.signEvent({\n headers: this.headerFormatter.format(signableMessage.message.headers),\n payload: signableMessage.message.body,\n }, {\n signingDate,\n signingRegion,\n signingService,\n priorSignature: signableMessage.priorSignature,\n });\n return promise.then((signature) => {\n return { message: signableMessage.message, signature };\n });\n }\n async signString(stringToSign, { signingDate = new Date(), signingRegion, signingService } = {}) {\n const credentials = await this.credentialProvider();\n this.validateResolvedCredentials(credentials);\n const region = signingRegion ?? (await this.regionProvider());\n const { shortDate } = this.formatDate(signingDate);\n const hash = new this.sha256(await this.getSigningKey(credentials, region, shortDate, signingService));\n hash.update(toUint8Array(stringToSign));\n return toHex(await hash.digest());\n }\n async signRequest(requestToSign, { signingDate = new Date(), signableHeaders, unsignableHeaders, signingRegion, signingService, } = {}) {\n const credentials = await this.credentialProvider();\n this.validateResolvedCredentials(credentials);\n const region = signingRegion ?? (await this.regionProvider());\n const request = prepareRequest(requestToSign);\n const { longDate, shortDate } = this.formatDate(signingDate);\n const scope = createScope(shortDate, region, signingService ?? this.service);\n request.headers[AMZ_DATE_HEADER] = longDate;\n if (credentials.sessionToken) {\n request.headers[TOKEN_HEADER] = credentials.sessionToken;\n }\n const payloadHash = await getPayloadHash(request, this.sha256);\n if (!hasHeader(SHA256_HEADER, request.headers) && this.applyChecksum) {\n request.headers[SHA256_HEADER] = payloadHash;\n }\n const canonicalHeaders = getCanonicalHeaders(request, unsignableHeaders, signableHeaders);\n const signature = await this.getSignature(longDate, scope, this.getSigningKey(credentials, region, shortDate, signingService), this.createCanonicalRequest(request, canonicalHeaders, payloadHash));\n request.headers[AUTH_HEADER] =\n `${ALGORITHM_IDENTIFIER} ` +\n `Credential=${credentials.accessKeyId}/${scope}, ` +\n `SignedHeaders=${this.getCanonicalHeaderList(canonicalHeaders)}, ` +\n `Signature=${signature}`;\n return request;\n }\n async getSignature(longDate, credentialScope, keyPromise, canonicalRequest) {\n const stringToSign = await this.createStringToSign(longDate, credentialScope, canonicalRequest, ALGORITHM_IDENTIFIER);\n const hash = new this.sha256(await keyPromise);\n hash.update(toUint8Array(stringToSign));\n return toHex(await hash.digest());\n }\n getSigningKey(credentials, region, shortDate, service) {\n return getSigningKey(this.sha256, credentials, shortDate, region, service || this.service);\n }\n}\n","export const ALGORITHM_QUERY_PARAM = \"X-Amz-Algorithm\";\nexport const CREDENTIAL_QUERY_PARAM = \"X-Amz-Credential\";\nexport const AMZ_DATE_QUERY_PARAM = \"X-Amz-Date\";\nexport const SIGNED_HEADERS_QUERY_PARAM = \"X-Amz-SignedHeaders\";\nexport const EXPIRES_QUERY_PARAM = \"X-Amz-Expires\";\nexport const SIGNATURE_QUERY_PARAM = \"X-Amz-Signature\";\nexport const TOKEN_QUERY_PARAM = \"X-Amz-Security-Token\";\nexport const REGION_SET_PARAM = \"X-Amz-Region-Set\";\nexport const AUTH_HEADER = \"authorization\";\nexport const AMZ_DATE_HEADER = AMZ_DATE_QUERY_PARAM.toLowerCase();\nexport const DATE_HEADER = \"date\";\nexport const GENERATED_HEADERS = [AUTH_HEADER, AMZ_DATE_HEADER, DATE_HEADER];\nexport const SIGNATURE_HEADER = SIGNATURE_QUERY_PARAM.toLowerCase();\nexport const SHA256_HEADER = \"x-amz-content-sha256\";\nexport const TOKEN_HEADER = TOKEN_QUERY_PARAM.toLowerCase();\nexport const HOST_HEADER = \"host\";\nexport const ALWAYS_UNSIGNABLE_HEADERS = {\n authorization: true,\n \"cache-control\": true,\n connection: true,\n expect: true,\n from: true,\n \"keep-alive\": true,\n \"max-forwards\": true,\n pragma: true,\n referer: true,\n te: true,\n trailer: true,\n \"transfer-encoding\": true,\n upgrade: true,\n \"user-agent\": true,\n \"x-amzn-trace-id\": true,\n};\nexport const PROXY_HEADER_PATTERN = /^proxy-/;\nexport const SEC_HEADER_PATTERN = /^sec-/;\nexport const UNSIGNABLE_PATTERNS = [/^proxy-/i, /^sec-/i];\nexport const ALGORITHM_IDENTIFIER = \"AWS4-HMAC-SHA256\";\nexport const ALGORITHM_IDENTIFIER_V4A = \"AWS4-ECDSA-P256-SHA256\";\nexport const EVENT_ALGORITHM_IDENTIFIER = \"AWS4-HMAC-SHA256-PAYLOAD\";\nexport const UNSIGNED_PAYLOAD = \"UNSIGNED-PAYLOAD\";\nexport const MAX_CACHE_SIZE = 50;\nexport const KEY_TYPE_IDENTIFIER = \"aws4_request\";\nexport const MAX_PRESIGNED_TTL = 60 * 60 * 24 * 7;\n","import { toHex } from \"@smithy/util-hex-encoding\";\nimport { toUint8Array } from \"@smithy/util-utf8\";\nimport { KEY_TYPE_IDENTIFIER, MAX_CACHE_SIZE } from \"./constants\";\nconst signingKeyCache = {};\nconst cacheQueue = [];\nexport const createScope = (shortDate, region, service) => `${shortDate}/${region}/${service}/${KEY_TYPE_IDENTIFIER}`;\nexport const getSigningKey = async (sha256Constructor, credentials, shortDate, region, service) => {\n const credsHash = await hmac(sha256Constructor, credentials.secretAccessKey, credentials.accessKeyId);\n const cacheKey = `${shortDate}:${region}:${service}:${toHex(credsHash)}:${credentials.sessionToken}`;\n if (cacheKey in signingKeyCache) {\n return signingKeyCache[cacheKey];\n }\n cacheQueue.push(cacheKey);\n while (cacheQueue.length > MAX_CACHE_SIZE) {\n delete signingKeyCache[cacheQueue.shift()];\n }\n let key = `AWS4${credentials.secretAccessKey}`;\n for (const signable of [shortDate, region, service, KEY_TYPE_IDENTIFIER]) {\n key = await hmac(sha256Constructor, key, signable);\n }\n return (signingKeyCache[cacheKey] = key);\n};\nexport const clearCredentialCache = () => {\n cacheQueue.length = 0;\n Object.keys(signingKeyCache).forEach((cacheKey) => {\n delete signingKeyCache[cacheKey];\n });\n};\nconst hmac = (ctor, secret, data) => {\n const hash = new ctor(secret);\n hash.update(toUint8Array(data));\n return hash.digest();\n};\n","import { ALWAYS_UNSIGNABLE_HEADERS, PROXY_HEADER_PATTERN, SEC_HEADER_PATTERN } from \"./constants\";\nexport const getCanonicalHeaders = ({ headers }, unsignableHeaders, signableHeaders) => {\n const canonical = {};\n for (const headerName of Object.keys(headers).sort()) {\n if (headers[headerName] == undefined) {\n continue;\n }\n const canonicalHeaderName = headerName.toLowerCase();\n if (canonicalHeaderName in ALWAYS_UNSIGNABLE_HEADERS ||\n unsignableHeaders?.has(canonicalHeaderName) ||\n PROXY_HEADER_PATTERN.test(canonicalHeaderName) ||\n SEC_HEADER_PATTERN.test(canonicalHeaderName)) {\n if (!signableHeaders || (signableHeaders && !signableHeaders.has(canonicalHeaderName))) {\n continue;\n }\n }\n canonical[canonicalHeaderName] = headers[headerName].trim().replace(/\\s+/g, \" \");\n }\n return canonical;\n};\n","import { isArrayBuffer } from \"@smithy/is-array-buffer\";\nimport { toHex } from \"@smithy/util-hex-encoding\";\nimport { toUint8Array } from \"@smithy/util-utf8\";\nimport { SHA256_HEADER, UNSIGNED_PAYLOAD } from \"./constants\";\nexport const getPayloadHash = async ({ headers, body }, hashConstructor) => {\n for (const headerName of Object.keys(headers)) {\n if (headerName.toLowerCase() === SHA256_HEADER) {\n return headers[headerName];\n }\n }\n if (body == undefined) {\n return \"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855\";\n }\n else if (typeof body === \"string\" || ArrayBuffer.isView(body) || isArrayBuffer(body)) {\n const hashCtor = new hashConstructor();\n hashCtor.update(toUint8Array(body));\n return toHex(await hashCtor.digest());\n }\n return UNSIGNED_PAYLOAD;\n};\n","import { fromHex, toHex } from \"@smithy/util-hex-encoding\";\nimport { fromUtf8 } from \"@smithy/util-utf8\";\nexport class HeaderFormatter {\n format(headers) {\n const chunks = [];\n for (const headerName of Object.keys(headers)) {\n const bytes = fromUtf8(headerName);\n chunks.push(Uint8Array.from([bytes.byteLength]), bytes, this.formatHeaderValue(headers[headerName]));\n }\n const out = new Uint8Array(chunks.reduce((carry, bytes) => carry + bytes.byteLength, 0));\n let position = 0;\n for (const chunk of chunks) {\n out.set(chunk, position);\n position += chunk.byteLength;\n }\n return out;\n }\n formatHeaderValue(header) {\n switch (header.type) {\n case \"boolean\":\n return Uint8Array.from([header.value ? 0 : 1]);\n case \"byte\":\n return Uint8Array.from([2, header.value]);\n case \"short\":\n const shortView = new DataView(new ArrayBuffer(3));\n shortView.setUint8(0, 3);\n shortView.setInt16(1, header.value, false);\n return new Uint8Array(shortView.buffer);\n case \"integer\":\n const intView = new DataView(new ArrayBuffer(5));\n intView.setUint8(0, 4);\n intView.setInt32(1, header.value, false);\n return new Uint8Array(intView.buffer);\n case \"long\":\n const longBytes = new Uint8Array(9);\n longBytes[0] = 5;\n longBytes.set(header.value.bytes, 1);\n return longBytes;\n case \"binary\":\n const binView = new DataView(new ArrayBuffer(3 + header.value.byteLength));\n binView.setUint8(0, 6);\n binView.setUint16(1, header.value.byteLength, false);\n const binBytes = new Uint8Array(binView.buffer);\n binBytes.set(header.value, 3);\n return binBytes;\n case \"string\":\n const utf8Bytes = fromUtf8(header.value);\n const strView = new DataView(new ArrayBuffer(3 + utf8Bytes.byteLength));\n strView.setUint8(0, 7);\n strView.setUint16(1, utf8Bytes.byteLength, false);\n const strBytes = new Uint8Array(strView.buffer);\n strBytes.set(utf8Bytes, 3);\n return strBytes;\n case \"timestamp\":\n const tsBytes = new Uint8Array(9);\n tsBytes[0] = 8;\n tsBytes.set(Int64.fromNumber(header.value.valueOf()).bytes, 1);\n return tsBytes;\n case \"uuid\":\n if (!UUID_PATTERN.test(header.value)) {\n throw new Error(`Invalid UUID received: ${header.value}`);\n }\n const uuidBytes = new Uint8Array(17);\n uuidBytes[0] = 9;\n uuidBytes.set(fromHex(header.value.replace(/\\-/g, \"\")), 1);\n return uuidBytes;\n }\n }\n}\nvar HEADER_VALUE_TYPE;\n(function (HEADER_VALUE_TYPE) {\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"boolTrue\"] = 0] = \"boolTrue\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"boolFalse\"] = 1] = \"boolFalse\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"byte\"] = 2] = \"byte\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"short\"] = 3] = \"short\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"integer\"] = 4] = \"integer\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"long\"] = 5] = \"long\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"byteArray\"] = 6] = \"byteArray\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"string\"] = 7] = \"string\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"timestamp\"] = 8] = \"timestamp\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"uuid\"] = 9] = \"uuid\";\n})(HEADER_VALUE_TYPE || (HEADER_VALUE_TYPE = {}));\nconst UUID_PATTERN = /^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/;\nexport class Int64 {\n bytes;\n constructor(bytes) {\n this.bytes = bytes;\n if (bytes.byteLength !== 8) {\n throw new Error(\"Int64 buffers must be exactly 8 bytes\");\n }\n }\n static fromNumber(number) {\n if (number > 9_223_372_036_854_775_807 || number < -9_223_372_036_854_775_808) {\n throw new Error(`${number} is too large (or, if negative, too small) to represent as an Int64`);\n }\n const bytes = new Uint8Array(8);\n for (let i = 7, remaining = Math.abs(Math.round(number)); i > -1 && remaining > 0; i--, remaining /= 256) {\n bytes[i] = remaining;\n }\n if (number < 0) {\n negate(bytes);\n }\n return new Int64(bytes);\n }\n valueOf() {\n const bytes = this.bytes.slice(0);\n const negative = bytes[0] & 0b10000000;\n if (negative) {\n negate(bytes);\n }\n return parseInt(toHex(bytes), 16) * (negative ? -1 : 1);\n }\n toString() {\n return String(this.valueOf());\n }\n}\nfunction negate(bytes) {\n for (let i = 0; i < 8; i++) {\n bytes[i] ^= 0xff;\n }\n for (let i = 7; i > -1; i--) {\n bytes[i]++;\n if (bytes[i] !== 0)\n break;\n }\n}\n","export const hasHeader = (soughtHeader, headers) => {\n soughtHeader = soughtHeader.toLowerCase();\n for (const headerName of Object.keys(headers)) {\n if (soughtHeader === headerName.toLowerCase()) {\n return true;\n }\n }\n return false;\n};\nexport const getHeaderValue = (soughtHeader, headers) => {\n soughtHeader = soughtHeader.toLowerCase();\n for (const headerName of Object.keys(headers)) {\n if (soughtHeader === headerName.toLowerCase()) {\n return headers[headerName];\n }\n }\n return undefined;\n};\nexport const deleteHeader = (soughtHeader, headers) => {\n soughtHeader = soughtHeader.toLowerCase();\n for (const headerName of Object.keys(headers)) {\n if (soughtHeader === headerName.toLowerCase()) {\n delete headers[headerName];\n }\n }\n};\n","import { HttpRequest } from \"@smithy/protocol-http\";\nexport const moveHeadersToQuery = (request, options = {}) => {\n const { headers, query = {} } = HttpRequest.clone(request);\n for (const name of Object.keys(headers)) {\n const lname = name.toLowerCase();\n if ((lname.slice(0, 6) === \"x-amz-\" && !options.unhoistableHeaders?.has(lname)) ||\n options.hoistableHeaders?.has(lname)) {\n query[name] = headers[name];\n delete headers[name];\n }\n }\n return {\n ...request,\n headers,\n query,\n };\n};\n","import { HttpRequest } from \"@smithy/protocol-http\";\nimport { GENERATED_HEADERS } from \"./constants\";\nexport const prepareRequest = (request) => {\n request = HttpRequest.clone(request);\n for (const headerName of Object.keys(request.headers)) {\n if (GENERATED_HEADERS.indexOf(headerName.toLowerCase()) > -1) {\n delete request.headers[headerName];\n }\n }\n return request;\n};\n","import { toHex } from \"@smithy/util-hex-encoding\";\nimport { normalizeProvider } from \"@smithy/util-middleware\";\nimport { escapeUri } from \"@smithy/util-uri-escape\";\nimport { toUint8Array } from \"@smithy/util-utf8\";\nimport { getCanonicalQuery } from \"./getCanonicalQuery\";\nimport { iso8601 } from \"./utilDate\";\nexport class SignatureV4Base {\n service;\n regionProvider;\n credentialProvider;\n sha256;\n uriEscapePath;\n applyChecksum;\n constructor({ applyChecksum, credentials, region, service, sha256, uriEscapePath = true, }) {\n this.service = service;\n this.sha256 = sha256;\n this.uriEscapePath = uriEscapePath;\n this.applyChecksum = typeof applyChecksum === \"boolean\" ? applyChecksum : true;\n this.regionProvider = normalizeProvider(region);\n this.credentialProvider = normalizeProvider(credentials);\n }\n createCanonicalRequest(request, canonicalHeaders, payloadHash) {\n const sortedHeaders = Object.keys(canonicalHeaders).sort();\n return `${request.method}\n${this.getCanonicalPath(request)}\n${getCanonicalQuery(request)}\n${sortedHeaders.map((name) => `${name}:${canonicalHeaders[name]}`).join(\"\\n\")}\n\n${sortedHeaders.join(\";\")}\n${payloadHash}`;\n }\n async createStringToSign(longDate, credentialScope, canonicalRequest, algorithmIdentifier) {\n const hash = new this.sha256();\n hash.update(toUint8Array(canonicalRequest));\n const hashedRequest = await hash.digest();\n return `${algorithmIdentifier}\n${longDate}\n${credentialScope}\n${toHex(hashedRequest)}`;\n }\n getCanonicalPath({ path }) {\n if (this.uriEscapePath) {\n const normalizedPathSegments = [];\n for (const pathSegment of path.split(\"/\")) {\n if (pathSegment?.length === 0)\n continue;\n if (pathSegment === \".\")\n continue;\n if (pathSegment === \"..\") {\n normalizedPathSegments.pop();\n }\n else {\n normalizedPathSegments.push(pathSegment);\n }\n }\n const normalizedPath = `${path?.startsWith(\"/\") ? \"/\" : \"\"}${normalizedPathSegments.join(\"/\")}${normalizedPathSegments.length > 0 && path?.endsWith(\"/\") ? \"/\" : \"\"}`;\n const doubleEncoded = escapeUri(normalizedPath);\n return doubleEncoded.replace(/%2F/g, \"/\");\n }\n return path;\n }\n validateResolvedCredentials(credentials) {\n if (typeof credentials !== \"object\" ||\n typeof credentials.accessKeyId !== \"string\" ||\n typeof credentials.secretAccessKey !== \"string\") {\n throw new Error(\"Resolved credential object is not valid\");\n }\n }\n formatDate(now) {\n const longDate = iso8601(now).replace(/[\\-:]/g, \"\");\n return {\n longDate,\n shortDate: longDate.slice(0, 8),\n };\n }\n getCanonicalHeaderList(headers) {\n return Object.keys(headers).sort().join(\";\");\n }\n}\n","import { escapeUri } from \"@smithy/util-uri-escape\";\nimport { SIGNATURE_HEADER } from \"./constants\";\nexport const getCanonicalQuery = ({ query = {} }) => {\n const keys = [];\n const serialized = {};\n for (const key of Object.keys(query)) {\n if (key.toLowerCase() === SIGNATURE_HEADER) {\n continue;\n }\n const encodedKey = escapeUri(key);\n keys.push(encodedKey);\n const value = query[key];\n if (typeof value === \"string\") {\n serialized[encodedKey] = `${encodedKey}=${escapeUri(value)}`;\n }\n else if (Array.isArray(value)) {\n serialized[encodedKey] = value\n .slice(0)\n .reduce((encoded, value) => encoded.concat([`${encodedKey}=${escapeUri(value)}`]), [])\n .sort()\n .join(\"&\");\n }\n }\n return keys\n .sort()\n .map((key) => serialized[key])\n .filter((serialized) => serialized)\n .join(\"&\");\n};\n","export const iso8601 = (time) => toDate(time)\n .toISOString()\n .replace(/\\.\\d{3}Z$/, \"Z\");\nexport const toDate = (time) => {\n if (typeof time === \"number\") {\n return new Date(time * 1000);\n }\n if (typeof time === \"string\") {\n if (Number(time)) {\n return new Date(Number(time) * 1000);\n }\n return new Date(time);\n }\n return time;\n};\n","import { collectBody } from \"@smithy/smithy-client\";\nimport { toUtf8 } from \"@smithy/util-utf8\";\nexport const collectBodyString = (streamBody, context) => collectBody(streamBody, context).then((body) => (context?.utf8Encoder ?? toUtf8)(body));\n","export { collectBody } from \"@smithy/core/protocols\";\n","import { decorateServiceException } from \"./exceptions\";\nexport const throwDefaultError = ({ output, parsedBody, exceptionCtor, errorCode }) => {\n const $metadata = deserializeMetadata(output);\n const statusCode = $metadata.httpStatusCode ? $metadata.httpStatusCode + \"\" : undefined;\n const response = new exceptionCtor({\n name: parsedBody?.code || parsedBody?.Code || errorCode || statusCode || \"UnknownError\",\n $fault: \"client\",\n $metadata,\n });\n throw decorateServiceException(response, parsedBody);\n};\nexport const withBaseException = (ExceptionCtor) => {\n return ({ output, parsedBody, errorCode }) => {\n throwDefaultError({ output, parsedBody, exceptionCtor: ExceptionCtor, errorCode });\n };\n};\nconst deserializeMetadata = (output) => ({\n httpStatusCode: output.statusCode,\n requestId: output.headers[\"x-amzn-requestid\"] ?? output.headers[\"x-amzn-request-id\"] ?? output.headers[\"x-amz-request-id\"],\n extendedRequestId: output.headers[\"x-amz-id-2\"],\n cfId: output.headers[\"x-amz-cf-id\"],\n});\n","export const loadConfigsForDefaultMode = (mode) => {\n switch (mode) {\n case \"standard\":\n return {\n retryMode: \"standard\",\n connectionTimeout: 3100,\n };\n case \"in-region\":\n return {\n retryMode: \"standard\",\n connectionTimeout: 1100,\n };\n case \"cross-region\":\n return {\n retryMode: \"standard\",\n connectionTimeout: 3100,\n };\n case \"mobile\":\n return {\n retryMode: \"standard\",\n connectionTimeout: 30000,\n };\n default:\n return {};\n }\n};\n","let warningEmitted = false;\nexport const emitWarningIfUnsupportedVersion = (version) => {\n if (version && !warningEmitted && parseInt(version.substring(1, version.indexOf(\".\"))) < 16) {\n warningEmitted = true;\n }\n};\n","import { getChecksumConfiguration, resolveChecksumRuntimeConfig } from \"./checksum\";\nimport { getRetryConfiguration, resolveRetryRuntimeConfig } from \"./retry\";\nexport const getDefaultExtensionConfiguration = (runtimeConfig) => {\n return Object.assign(getChecksumConfiguration(runtimeConfig), getRetryConfiguration(runtimeConfig));\n};\nexport const getDefaultClientConfiguration = getDefaultExtensionConfiguration;\nexport const resolveDefaultRuntimeConfig = (config) => {\n return Object.assign(resolveChecksumRuntimeConfig(config), resolveRetryRuntimeConfig(config));\n};\n","import { AlgorithmId } from \"@smithy/types\";\nexport { AlgorithmId };\nexport const getChecksumConfiguration = (runtimeConfig) => {\n const checksumAlgorithms = [];\n for (const id in AlgorithmId) {\n const algorithmId = AlgorithmId[id];\n if (runtimeConfig[algorithmId] === undefined) {\n continue;\n }\n checksumAlgorithms.push({\n algorithmId: () => algorithmId,\n checksumConstructor: () => runtimeConfig[algorithmId],\n });\n }\n return {\n addChecksumAlgorithm(algo) {\n checksumAlgorithms.push(algo);\n },\n checksumAlgorithms() {\n return checksumAlgorithms;\n },\n };\n};\nexport const resolveChecksumRuntimeConfig = (clientConfig) => {\n const runtimeConfig = {};\n clientConfig.checksumAlgorithms().forEach((checksumAlgorithm) => {\n runtimeConfig[checksumAlgorithm.algorithmId()] = checksumAlgorithm.checksumConstructor();\n });\n return runtimeConfig;\n};\n","export const getRetryConfiguration = (runtimeConfig) => {\n return {\n setRetryStrategy(retryStrategy) {\n runtimeConfig.retryStrategy = retryStrategy;\n },\n retryStrategy() {\n return runtimeConfig.retryStrategy;\n },\n };\n};\nexport const resolveRetryRuntimeConfig = (retryStrategyConfiguration) => {\n const runtimeConfig = {};\n runtimeConfig.retryStrategy = retryStrategyConfiguration.retryStrategy();\n return runtimeConfig;\n};\n","export class NoOpLogger {\n trace() { }\n debug() { }\n info() { }\n warn() { }\n error() { }\n}\n","export const USER_AGENT = \"user-agent\";\nexport const X_AMZ_USER_AGENT = \"x-amz-user-agent\";\nexport const SPACE = \" \";\nexport const UA_NAME_SEPARATOR = \"/\";\nexport const UA_NAME_ESCAPE_REGEX = /[^\\!\\$\\%\\&\\'\\*\\+\\-\\.\\^\\_\\`\\|\\~\\d\\w]/g;\nexport const UA_VALUE_ESCAPE_REGEX = /[^\\!\\$\\%\\&\\'\\*\\+\\-\\.\\^\\_\\`\\|\\~\\d\\w\\#]/g;\nexport const UA_ESCAPE_CHAR = \"-\";\n","const BYTE_LIMIT = 1024;\nexport function encodeFeatures(features) {\n let buffer = \"\";\n for (const key in features) {\n const val = features[key];\n if (buffer.length + val.length + 1 <= BYTE_LIMIT) {\n if (buffer.length) {\n buffer += \",\" + val;\n }\n else {\n buffer += val;\n }\n continue;\n }\n break;\n }\n return buffer;\n}\n","export * from \"./configurations\";\nexport * from \"./user-agent-middleware\";\n","import { checkRegion } from \"./checkRegion\";\nimport { getRealRegion } from \"./getRealRegion\";\nimport { isFipsRegion } from \"./isFipsRegion\";\nexport const resolveRegionConfig = (input) => {\n const { region, useFipsEndpoint } = input;\n if (!region) {\n throw new Error(\"Region is missing\");\n }\n return Object.assign(input, {\n region: async () => {\n const providedRegion = typeof region === \"function\" ? await region() : region;\n const realRegion = getRealRegion(providedRegion);\n checkRegion(realRegion);\n return realRegion;\n },\n useFipsEndpoint: async () => {\n const providedRegion = typeof region === \"string\" ? region : await region();\n if (isFipsRegion(providedRegion)) {\n return true;\n }\n return typeof useFipsEndpoint !== \"function\" ? Promise.resolve(!!useFipsEndpoint) : useFipsEndpoint();\n },\n });\n};\n","import { isValidHostLabel } from \"@smithy/util-endpoints\";\nconst validRegions = new Set();\nexport const checkRegion = (region, check = isValidHostLabel) => {\n if (!validRegions.has(region) && !check(region)) {\n if (region === \"*\") {\n console.warn(`@smithy/config-resolver WARN - Please use the caller region instead of \"*\". See \"sigv4a\" in https://github.com/aws/aws-sdk-js-v3/blob/main/supplemental-docs/CLIENTS.md.`);\n }\n else {\n throw new Error(`Region not accepted: region=\"${region}\" is not a valid hostname component.`);\n }\n }\n else {\n validRegions.add(region);\n }\n};\n","import { isFipsRegion } from \"./isFipsRegion\";\nexport const getRealRegion = (region) => isFipsRegion(region)\n ? [\"fips-aws-global\", \"aws-fips\"].includes(region)\n ? \"us-east-1\"\n : region.replace(/fips-(dkr-|prod-)?|-fips/, \"\")\n : region;\n","export const isFipsRegion = (region) => typeof region === \"string\" && (region.startsWith(\"fips-\") || region.endsWith(\"-fips\"));\n","import { HttpRequest } from \"@smithy/protocol-http\";\nconst CONTENT_LENGTH_HEADER = \"content-length\";\nexport function contentLengthMiddleware(bodyLengthChecker) {\n return (next) => async (args) => {\n const request = args.request;\n if (HttpRequest.isInstance(request)) {\n const { body, headers } = request;\n if (body &&\n Object.keys(headers)\n .map((str) => str.toLowerCase())\n .indexOf(CONTENT_LENGTH_HEADER) === -1) {\n try {\n const length = bodyLengthChecker(body);\n request.headers = {\n ...request.headers,\n [CONTENT_LENGTH_HEADER]: String(length),\n };\n }\n catch (error) {\n }\n }\n }\n return next({\n ...args,\n request,\n });\n };\n}\nexport const contentLengthMiddlewareOptions = {\n step: \"build\",\n tags: [\"SET_CONTENT_LENGTH\", \"CONTENT_LENGTH\"],\n name: \"contentLengthMiddleware\",\n override: true,\n};\nexport const getContentLengthPlugin = (options) => ({\n applyToStack: (clientStack) => {\n clientStack.add(contentLengthMiddleware(options.bodyLengthChecker), contentLengthMiddlewareOptions);\n },\n});\n","import { serializerMiddlewareOption } from \"@smithy/middleware-serde\";\nimport { endpointMiddleware } from \"./endpointMiddleware\";\nexport const endpointMiddlewareOptions = {\n step: \"serialize\",\n tags: [\"ENDPOINT_PARAMETERS\", \"ENDPOINT_V2\", \"ENDPOINT\"],\n name: \"endpointV2Middleware\",\n override: true,\n relation: \"before\",\n toMiddleware: serializerMiddlewareOption.name,\n};\nexport const getEndpointPlugin = (config, instructions) => ({\n applyToStack: (clientStack) => {\n clientStack.addRelativeTo(endpointMiddleware({\n config,\n instructions,\n }), endpointMiddlewareOptions);\n },\n});\n","import { setFeature } from \"@smithy/core\";\nimport { getSmithyContext } from \"@smithy/util-middleware\";\nimport { getEndpointFromInstructions } from \"./adaptors/getEndpointFromInstructions\";\nexport const endpointMiddleware = ({ config, instructions, }) => {\n return (next, context) => async (args) => {\n if (config.isCustomEndpoint) {\n setFeature(context, \"ENDPOINT_OVERRIDE\", \"N\");\n }\n const endpoint = await getEndpointFromInstructions(args.input, {\n getEndpointParameterInstructions() {\n return instructions;\n },\n }, { ...config }, context);\n context.endpointV2 = endpoint;\n context.authSchemes = endpoint.properties?.authSchemes;\n const authScheme = context.authSchemes?.[0];\n if (authScheme) {\n context[\"signing_region\"] = authScheme.signingRegion;\n context[\"signing_service\"] = authScheme.signingName;\n const smithyContext = getSmithyContext(context);\n const httpAuthOption = smithyContext?.selectedHttpAuthScheme?.httpAuthOption;\n if (httpAuthOption) {\n httpAuthOption.signingProperties = Object.assign(httpAuthOption.signingProperties || {}, {\n signing_region: authScheme.signingRegion,\n signingRegion: authScheme.signingRegion,\n signing_service: authScheme.signingName,\n signingName: authScheme.signingName,\n signingRegionSet: authScheme.signingRegionSet,\n }, authScheme.properties);\n }\n }\n return next({\n ...args,\n });\n };\n};\n","import { resolveParamsForS3 } from \"../service-customizations\";\nimport { createConfigValueProvider } from \"./createConfigValueProvider\";\nimport { getEndpointFromConfig } from \"./getEndpointFromConfig\";\nimport { toEndpointV1 } from \"./toEndpointV1\";\nexport const getEndpointFromInstructions = async (commandInput, instructionsSupplier, clientConfig, context) => {\n if (!clientConfig.isCustomEndpoint) {\n let endpointFromConfig;\n if (clientConfig.serviceConfiguredEndpoint) {\n endpointFromConfig = await clientConfig.serviceConfiguredEndpoint();\n }\n else {\n endpointFromConfig = await getEndpointFromConfig(clientConfig.serviceId);\n }\n if (endpointFromConfig) {\n clientConfig.endpoint = () => Promise.resolve(toEndpointV1(endpointFromConfig));\n clientConfig.isCustomEndpoint = true;\n }\n }\n const endpointParams = await resolveParams(commandInput, instructionsSupplier, clientConfig);\n if (typeof clientConfig.endpointProvider !== \"function\") {\n throw new Error(\"config.endpointProvider is not set.\");\n }\n const endpoint = clientConfig.endpointProvider(endpointParams, context);\n return endpoint;\n};\nexport const resolveParams = async (commandInput, instructionsSupplier, clientConfig) => {\n const endpointParams = {};\n const instructions = instructionsSupplier?.getEndpointParameterInstructions?.() || {};\n for (const [name, instruction] of Object.entries(instructions)) {\n switch (instruction.type) {\n case \"staticContextParams\":\n endpointParams[name] = instruction.value;\n break;\n case \"contextParams\":\n endpointParams[name] = commandInput[instruction.name];\n break;\n case \"clientContextParams\":\n case \"builtInParams\":\n endpointParams[name] = await createConfigValueProvider(instruction.name, name, clientConfig)();\n break;\n case \"operationContextParams\":\n endpointParams[name] = instruction.get(commandInput);\n break;\n default:\n throw new Error(\"Unrecognized endpoint parameter instruction: \" + JSON.stringify(instruction));\n }\n }\n if (Object.keys(instructions).length === 0) {\n Object.assign(endpointParams, clientConfig);\n }\n if (String(clientConfig.serviceId).toLowerCase() === \"s3\") {\n await resolveParamsForS3(endpointParams);\n }\n return endpointParams;\n};\n","export const resolveParamsForS3 = async (endpointParams) => {\n const bucket = endpointParams?.Bucket || \"\";\n if (typeof endpointParams.Bucket === \"string\") {\n endpointParams.Bucket = bucket.replace(/#/g, encodeURIComponent(\"#\")).replace(/\\?/g, encodeURIComponent(\"?\"));\n }\n if (isArnBucketName(bucket)) {\n if (endpointParams.ForcePathStyle === true) {\n throw new Error(\"Path-style addressing cannot be used with ARN buckets\");\n }\n }\n else if (!isDnsCompatibleBucketName(bucket) ||\n (bucket.indexOf(\".\") !== -1 && !String(endpointParams.Endpoint).startsWith(\"http:\")) ||\n bucket.toLowerCase() !== bucket ||\n bucket.length < 3) {\n endpointParams.ForcePathStyle = true;\n }\n if (endpointParams.DisableMultiRegionAccessPoints) {\n endpointParams.disableMultiRegionAccessPoints = true;\n endpointParams.DisableMRAP = true;\n }\n return endpointParams;\n};\nconst DOMAIN_PATTERN = /^[a-z0-9][a-z0-9\\.\\-]{1,61}[a-z0-9]$/;\nconst IP_ADDRESS_PATTERN = /(\\d+\\.){3}\\d+/;\nconst DOTS_PATTERN = /\\.\\./;\nexport const DOT_PATTERN = /\\./;\nexport const S3_HOSTNAME_PATTERN = /^(.+\\.)?s3(-fips)?(\\.dualstack)?[.-]([a-z0-9-]+)\\./;\nexport const isDnsCompatibleBucketName = (bucketName) => DOMAIN_PATTERN.test(bucketName) && !IP_ADDRESS_PATTERN.test(bucketName) && !DOTS_PATTERN.test(bucketName);\nexport const isArnBucketName = (bucketName) => {\n const [arn, partition, service, , , bucket] = bucketName.split(\":\");\n const isArn = arn === \"arn\" && bucketName.split(\":\").length >= 6;\n const isValidArn = Boolean(isArn && partition && service && bucket);\n if (isArn && !isValidArn) {\n throw new Error(`Invalid ARN: ${bucketName} was an invalid ARN.`);\n }\n return isValidArn;\n};\n","export const createConfigValueProvider = (configKey, canonicalEndpointParamKey, config) => {\n const configProvider = async () => {\n const configValue = config[configKey] ?? config[canonicalEndpointParamKey];\n if (typeof configValue === \"function\") {\n return configValue();\n }\n return configValue;\n };\n if (configKey === \"credentialScope\" || canonicalEndpointParamKey === \"CredentialScope\") {\n return async () => {\n const credentials = typeof config.credentials === \"function\" ? await config.credentials() : config.credentials;\n const configValue = credentials?.credentialScope ?? credentials?.CredentialScope;\n return configValue;\n };\n }\n if (configKey === \"accountId\" || canonicalEndpointParamKey === \"AccountId\") {\n return async () => {\n const credentials = typeof config.credentials === \"function\" ? await config.credentials() : config.credentials;\n const configValue = credentials?.accountId ?? credentials?.AccountId;\n return configValue;\n };\n }\n if (configKey === \"endpoint\" || canonicalEndpointParamKey === \"endpoint\") {\n return async () => {\n if (config.isCustomEndpoint === false) {\n return undefined;\n }\n const endpoint = await configProvider();\n if (endpoint && typeof endpoint === \"object\") {\n if (\"url\" in endpoint) {\n return endpoint.url.href;\n }\n if (\"hostname\" in endpoint) {\n const { protocol, hostname, port, path } = endpoint;\n return `${protocol}//${hostname}${port ? \":\" + port : \"\"}${path}`;\n }\n }\n return endpoint;\n };\n }\n return configProvider;\n};\n","import { loadConfig } from \"@smithy/node-config-provider\";\nimport { getEndpointUrlConfig } from \"./getEndpointUrlConfig\";\nexport const getEndpointFromConfig = async (serviceId) => loadConfig(getEndpointUrlConfig(serviceId ?? \"\"))();\n","import { CONFIG_PREFIX_SEPARATOR } from \"@smithy/shared-ini-file-loader\";\nconst ENV_ENDPOINT_URL = \"AWS_ENDPOINT_URL\";\nconst CONFIG_ENDPOINT_URL = \"endpoint_url\";\nexport const getEndpointUrlConfig = (serviceId) => ({\n environmentVariableSelector: (env) => {\n const serviceSuffixParts = serviceId.split(\" \").map((w) => w.toUpperCase());\n const serviceEndpointUrl = env[[ENV_ENDPOINT_URL, ...serviceSuffixParts].join(\"_\")];\n if (serviceEndpointUrl)\n return serviceEndpointUrl;\n const endpointUrl = env[ENV_ENDPOINT_URL];\n if (endpointUrl)\n return endpointUrl;\n return undefined;\n },\n configFileSelector: (profile, config) => {\n if (config && profile.services) {\n const servicesSection = config[[\"services\", profile.services].join(CONFIG_PREFIX_SEPARATOR)];\n if (servicesSection) {\n const servicePrefixParts = serviceId.split(\" \").map((w) => w.toLowerCase());\n const endpointUrl = servicesSection[[servicePrefixParts.join(\"_\"), CONFIG_ENDPOINT_URL].join(CONFIG_PREFIX_SEPARATOR)];\n if (endpointUrl)\n return endpointUrl;\n }\n }\n const endpointUrl = profile[CONFIG_ENDPOINT_URL];\n if (endpointUrl)\n return endpointUrl;\n return undefined;\n },\n default: undefined,\n});\n","import { parseUrl } from \"@smithy/url-parser\";\nexport const toEndpointV1 = (endpoint) => {\n if (typeof endpoint === \"object\") {\n if (\"url\" in endpoint) {\n return parseUrl(endpoint.url);\n }\n return endpoint;\n }\n return parseUrl(endpoint);\n};\n","import { normalizeProvider } from \"@smithy/util-middleware\";\nimport { getEndpointFromConfig } from \"./adaptors/getEndpointFromConfig\";\nimport { toEndpointV1 } from \"./adaptors/toEndpointV1\";\nexport const resolveEndpointConfig = (input) => {\n const tls = input.tls ?? true;\n const { endpoint, useDualstackEndpoint, useFipsEndpoint } = input;\n const customEndpointProvider = endpoint != null ? async () => toEndpointV1(await normalizeProvider(endpoint)()) : undefined;\n const isCustomEndpoint = !!endpoint;\n const resolvedConfig = Object.assign(input, {\n endpoint: customEndpointProvider,\n tls,\n isCustomEndpoint,\n useDualstackEndpoint: normalizeProvider(useDualstackEndpoint ?? false),\n useFipsEndpoint: normalizeProvider(useFipsEndpoint ?? false),\n });\n let configuredEndpointPromise = undefined;\n resolvedConfig.serviceConfiguredEndpoint = async () => {\n if (input.serviceId && !configuredEndpointPromise) {\n configuredEndpointPromise = getEndpointFromConfig(input.serviceId);\n }\n return configuredEndpointPromise;\n };\n return resolvedConfig;\n};\n","import { normalizeProvider } from \"@smithy/util-middleware\";\nimport { AdaptiveRetryStrategy, DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE, RETRY_MODES, StandardRetryStrategy, } from \"@smithy/util-retry\";\nexport const ENV_MAX_ATTEMPTS = \"AWS_MAX_ATTEMPTS\";\nexport const CONFIG_MAX_ATTEMPTS = \"max_attempts\";\nexport const NODE_MAX_ATTEMPT_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => {\n const value = env[ENV_MAX_ATTEMPTS];\n if (!value)\n return undefined;\n const maxAttempt = parseInt(value);\n if (Number.isNaN(maxAttempt)) {\n throw new Error(`Environment variable ${ENV_MAX_ATTEMPTS} mast be a number, got \"${value}\"`);\n }\n return maxAttempt;\n },\n configFileSelector: (profile) => {\n const value = profile[CONFIG_MAX_ATTEMPTS];\n if (!value)\n return undefined;\n const maxAttempt = parseInt(value);\n if (Number.isNaN(maxAttempt)) {\n throw new Error(`Shared config file entry ${CONFIG_MAX_ATTEMPTS} mast be a number, got \"${value}\"`);\n }\n return maxAttempt;\n },\n default: DEFAULT_MAX_ATTEMPTS,\n};\nexport const resolveRetryConfig = (input) => {\n const { retryStrategy, retryMode: _retryMode, maxAttempts: _maxAttempts } = input;\n const maxAttempts = normalizeProvider(_maxAttempts ?? DEFAULT_MAX_ATTEMPTS);\n return Object.assign(input, {\n maxAttempts,\n retryStrategy: async () => {\n if (retryStrategy) {\n return retryStrategy;\n }\n const retryMode = await normalizeProvider(_retryMode)();\n if (retryMode === RETRY_MODES.ADAPTIVE) {\n return new AdaptiveRetryStrategy(maxAttempts);\n }\n return new StandardRetryStrategy(maxAttempts);\n },\n });\n};\nexport const ENV_RETRY_MODE = \"AWS_RETRY_MODE\";\nexport const CONFIG_RETRY_MODE = \"retry_mode\";\nexport const NODE_RETRY_MODE_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => env[ENV_RETRY_MODE],\n configFileSelector: (profile) => profile[CONFIG_RETRY_MODE],\n default: DEFAULT_RETRY_MODE,\n};\n","import { RETRY_MODES } from \"./config\";\nimport { DefaultRateLimiter } from \"./DefaultRateLimiter\";\nimport { StandardRetryStrategy } from \"./StandardRetryStrategy\";\nexport class AdaptiveRetryStrategy {\n maxAttemptsProvider;\n rateLimiter;\n standardRetryStrategy;\n mode = RETRY_MODES.ADAPTIVE;\n constructor(maxAttemptsProvider, options) {\n this.maxAttemptsProvider = maxAttemptsProvider;\n const { rateLimiter } = options ?? {};\n this.rateLimiter = rateLimiter ?? new DefaultRateLimiter();\n this.standardRetryStrategy = new StandardRetryStrategy(maxAttemptsProvider);\n }\n async acquireInitialRetryToken(retryTokenScope) {\n await this.rateLimiter.getSendToken();\n return this.standardRetryStrategy.acquireInitialRetryToken(retryTokenScope);\n }\n async refreshRetryTokenForRetry(tokenToRenew, errorInfo) {\n this.rateLimiter.updateClientSendingRate(errorInfo);\n return this.standardRetryStrategy.refreshRetryTokenForRetry(tokenToRenew, errorInfo);\n }\n recordSuccess(token) {\n this.rateLimiter.updateClientSendingRate({});\n this.standardRetryStrategy.recordSuccess(token);\n }\n}\n","export var RETRY_MODES;\n(function (RETRY_MODES) {\n RETRY_MODES[\"STANDARD\"] = \"standard\";\n RETRY_MODES[\"ADAPTIVE\"] = \"adaptive\";\n})(RETRY_MODES || (RETRY_MODES = {}));\nexport const DEFAULT_MAX_ATTEMPTS = 3;\nexport const DEFAULT_RETRY_MODE = RETRY_MODES.STANDARD;\n","import { isThrottlingError } from \"@smithy/service-error-classification\";\nexport class DefaultRateLimiter {\n static setTimeoutFn = setTimeout;\n beta;\n minCapacity;\n minFillRate;\n scaleConstant;\n smooth;\n currentCapacity = 0;\n enabled = false;\n lastMaxRate = 0;\n measuredTxRate = 0;\n requestCount = 0;\n fillRate;\n lastThrottleTime;\n lastTimestamp = 0;\n lastTxRateBucket;\n maxCapacity;\n timeWindow = 0;\n constructor(options) {\n this.beta = options?.beta ?? 0.7;\n this.minCapacity = options?.minCapacity ?? 1;\n this.minFillRate = options?.minFillRate ?? 0.5;\n this.scaleConstant = options?.scaleConstant ?? 0.4;\n this.smooth = options?.smooth ?? 0.8;\n const currentTimeInSeconds = this.getCurrentTimeInSeconds();\n this.lastThrottleTime = currentTimeInSeconds;\n this.lastTxRateBucket = Math.floor(this.getCurrentTimeInSeconds());\n this.fillRate = this.minFillRate;\n this.maxCapacity = this.minCapacity;\n }\n getCurrentTimeInSeconds() {\n return Date.now() / 1000;\n }\n async getSendToken() {\n return this.acquireTokenBucket(1);\n }\n async acquireTokenBucket(amount) {\n if (!this.enabled) {\n return;\n }\n this.refillTokenBucket();\n if (amount > this.currentCapacity) {\n const delay = ((amount - this.currentCapacity) / this.fillRate) * 1000;\n await new Promise((resolve) => DefaultRateLimiter.setTimeoutFn(resolve, delay));\n }\n this.currentCapacity = this.currentCapacity - amount;\n }\n refillTokenBucket() {\n const timestamp = this.getCurrentTimeInSeconds();\n if (!this.lastTimestamp) {\n this.lastTimestamp = timestamp;\n return;\n }\n const fillAmount = (timestamp - this.lastTimestamp) * this.fillRate;\n this.currentCapacity = Math.min(this.maxCapacity, this.currentCapacity + fillAmount);\n this.lastTimestamp = timestamp;\n }\n updateClientSendingRate(response) {\n let calculatedRate;\n this.updateMeasuredRate();\n if (isThrottlingError(response)) {\n const rateToUse = !this.enabled ? this.measuredTxRate : Math.min(this.measuredTxRate, this.fillRate);\n this.lastMaxRate = rateToUse;\n this.calculateTimeWindow();\n this.lastThrottleTime = this.getCurrentTimeInSeconds();\n calculatedRate = this.cubicThrottle(rateToUse);\n this.enableTokenBucket();\n }\n else {\n this.calculateTimeWindow();\n calculatedRate = this.cubicSuccess(this.getCurrentTimeInSeconds());\n }\n const newRate = Math.min(calculatedRate, 2 * this.measuredTxRate);\n this.updateTokenBucketRate(newRate);\n }\n calculateTimeWindow() {\n this.timeWindow = this.getPrecise(Math.pow((this.lastMaxRate * (1 - this.beta)) / this.scaleConstant, 1 / 3));\n }\n cubicThrottle(rateToUse) {\n return this.getPrecise(rateToUse * this.beta);\n }\n cubicSuccess(timestamp) {\n return this.getPrecise(this.scaleConstant * Math.pow(timestamp - this.lastThrottleTime - this.timeWindow, 3) + this.lastMaxRate);\n }\n enableTokenBucket() {\n this.enabled = true;\n }\n updateTokenBucketRate(newRate) {\n this.refillTokenBucket();\n this.fillRate = Math.max(newRate, this.minFillRate);\n this.maxCapacity = Math.max(newRate, this.minCapacity);\n this.currentCapacity = Math.min(this.currentCapacity, this.maxCapacity);\n }\n updateMeasuredRate() {\n const t = this.getCurrentTimeInSeconds();\n const timeBucket = Math.floor(t * 2) / 2;\n this.requestCount++;\n if (timeBucket > this.lastTxRateBucket) {\n const currentRate = this.requestCount / (timeBucket - this.lastTxRateBucket);\n this.measuredTxRate = this.getPrecise(currentRate * this.smooth + this.measuredTxRate * (1 - this.smooth));\n this.requestCount = 0;\n this.lastTxRateBucket = timeBucket;\n }\n }\n getPrecise(num) {\n return parseFloat(num.toFixed(8));\n }\n}\n","import { CLOCK_SKEW_ERROR_CODES, NODEJS_NETWORK_ERROR_CODES, NODEJS_TIMEOUT_ERROR_CODES, THROTTLING_ERROR_CODES, TRANSIENT_ERROR_CODES, TRANSIENT_ERROR_STATUS_CODES, } from \"./constants\";\nexport const isRetryableByTrait = (error) => error?.$retryable !== undefined;\nexport const isClockSkewError = (error) => CLOCK_SKEW_ERROR_CODES.includes(error.name);\nexport const isClockSkewCorrectedError = (error) => error.$metadata?.clockSkewCorrected;\nexport const isBrowserNetworkError = (error) => {\n const errorMessages = new Set([\n \"Failed to fetch\",\n \"NetworkError when attempting to fetch resource\",\n \"The Internet connection appears to be offline\",\n \"Load failed\",\n \"Network request failed\",\n ]);\n const isValid = error && error instanceof TypeError;\n if (!isValid) {\n return false;\n }\n return errorMessages.has(error.message);\n};\nexport const isThrottlingError = (error) => error.$metadata?.httpStatusCode === 429 ||\n THROTTLING_ERROR_CODES.includes(error.name) ||\n error.$retryable?.throttling == true;\nexport const isTransientError = (error, depth = 0) => isRetryableByTrait(error) ||\n isClockSkewCorrectedError(error) ||\n TRANSIENT_ERROR_CODES.includes(error.name) ||\n NODEJS_TIMEOUT_ERROR_CODES.includes(error?.code || \"\") ||\n NODEJS_NETWORK_ERROR_CODES.includes(error?.code || \"\") ||\n TRANSIENT_ERROR_STATUS_CODES.includes(error.$metadata?.httpStatusCode || 0) ||\n isBrowserNetworkError(error) ||\n (error.cause !== undefined && depth <= 10 && isTransientError(error.cause, depth + 1));\nexport const isServerError = (error) => {\n if (error.$metadata?.httpStatusCode !== undefined) {\n const statusCode = error.$metadata.httpStatusCode;\n if (500 <= statusCode && statusCode <= 599 && !isTransientError(error)) {\n return true;\n }\n return false;\n }\n return false;\n};\n","export const CLOCK_SKEW_ERROR_CODES = [\n \"AuthFailure\",\n \"InvalidSignatureException\",\n \"RequestExpired\",\n \"RequestInTheFuture\",\n \"RequestTimeTooSkewed\",\n \"SignatureDoesNotMatch\",\n];\nexport const THROTTLING_ERROR_CODES = [\n \"BandwidthLimitExceeded\",\n \"EC2ThrottledException\",\n \"LimitExceededException\",\n \"PriorRequestNotComplete\",\n \"ProvisionedThroughputExceededException\",\n \"RequestLimitExceeded\",\n \"RequestThrottled\",\n \"RequestThrottledException\",\n \"SlowDown\",\n \"ThrottledException\",\n \"Throttling\",\n \"ThrottlingException\",\n \"TooManyRequestsException\",\n \"TransactionInProgressException\",\n];\nexport const TRANSIENT_ERROR_CODES = [\"TimeoutError\", \"RequestTimeout\", \"RequestTimeoutException\"];\nexport const TRANSIENT_ERROR_STATUS_CODES = [500, 502, 503, 504];\nexport const NODEJS_TIMEOUT_ERROR_CODES = [\"ECONNRESET\", \"ECONNREFUSED\", \"EPIPE\", \"ETIMEDOUT\"];\nexport const NODEJS_NETWORK_ERROR_CODES = [\"EHOSTUNREACH\", \"ENETUNREACH\", \"ENOTFOUND\"];\n","import { DEFAULT_MAX_ATTEMPTS, RETRY_MODES } from \"./config\";\nimport { DEFAULT_RETRY_DELAY_BASE, INITIAL_RETRY_TOKENS, NO_RETRY_INCREMENT, RETRY_COST, THROTTLING_RETRY_DELAY_BASE, TIMEOUT_RETRY_COST, } from \"./constants\";\nimport { getDefaultRetryBackoffStrategy } from \"./defaultRetryBackoffStrategy\";\nimport { createDefaultRetryToken } from \"./defaultRetryToken\";\nexport class StandardRetryStrategy {\n maxAttempts;\n mode = RETRY_MODES.STANDARD;\n capacity = INITIAL_RETRY_TOKENS;\n retryBackoffStrategy = getDefaultRetryBackoffStrategy();\n maxAttemptsProvider;\n constructor(maxAttempts) {\n this.maxAttempts = maxAttempts;\n this.maxAttemptsProvider = typeof maxAttempts === \"function\" ? maxAttempts : async () => maxAttempts;\n }\n async acquireInitialRetryToken(retryTokenScope) {\n return createDefaultRetryToken({\n retryDelay: DEFAULT_RETRY_DELAY_BASE,\n retryCount: 0,\n });\n }\n async refreshRetryTokenForRetry(token, errorInfo) {\n const maxAttempts = await this.getMaxAttempts();\n if (this.shouldRetry(token, errorInfo, maxAttempts)) {\n const errorType = errorInfo.errorType;\n this.retryBackoffStrategy.setDelayBase(errorType === \"THROTTLING\" ? THROTTLING_RETRY_DELAY_BASE : DEFAULT_RETRY_DELAY_BASE);\n const delayFromErrorType = this.retryBackoffStrategy.computeNextBackoffDelay(token.getRetryCount());\n const retryDelay = errorInfo.retryAfterHint\n ? Math.max(errorInfo.retryAfterHint.getTime() - Date.now() || 0, delayFromErrorType)\n : delayFromErrorType;\n const capacityCost = this.getCapacityCost(errorType);\n this.capacity -= capacityCost;\n return createDefaultRetryToken({\n retryDelay,\n retryCount: token.getRetryCount() + 1,\n retryCost: capacityCost,\n });\n }\n throw new Error(\"No retry token available\");\n }\n recordSuccess(token) {\n this.capacity = Math.max(INITIAL_RETRY_TOKENS, this.capacity + (token.getRetryCost() ?? NO_RETRY_INCREMENT));\n }\n getCapacity() {\n return this.capacity;\n }\n async getMaxAttempts() {\n try {\n return await this.maxAttemptsProvider();\n }\n catch (error) {\n console.warn(`Max attempts provider could not resolve. Using default of ${DEFAULT_MAX_ATTEMPTS}`);\n return DEFAULT_MAX_ATTEMPTS;\n }\n }\n shouldRetry(tokenToRenew, errorInfo, maxAttempts) {\n const attempts = tokenToRenew.getRetryCount() + 1;\n return (attempts < maxAttempts &&\n this.capacity >= this.getCapacityCost(errorInfo.errorType) &&\n this.isRetryableError(errorInfo.errorType));\n }\n getCapacityCost(errorType) {\n return errorType === \"TRANSIENT\" ? TIMEOUT_RETRY_COST : RETRY_COST;\n }\n isRetryableError(errorType) {\n return errorType === \"THROTTLING\" || errorType === \"TRANSIENT\";\n }\n}\n","export const DEFAULT_RETRY_DELAY_BASE = 100;\nexport const MAXIMUM_RETRY_DELAY = 20 * 1000;\nexport const THROTTLING_RETRY_DELAY_BASE = 500;\nexport const INITIAL_RETRY_TOKENS = 500;\nexport const RETRY_COST = 5;\nexport const TIMEOUT_RETRY_COST = 10;\nexport const NO_RETRY_INCREMENT = 1;\nexport const INVOCATION_ID_HEADER = \"amz-sdk-invocation-id\";\nexport const REQUEST_HEADER = \"amz-sdk-request\";\n","import { DEFAULT_RETRY_DELAY_BASE, MAXIMUM_RETRY_DELAY } from \"./constants\";\nexport const getDefaultRetryBackoffStrategy = () => {\n let delayBase = DEFAULT_RETRY_DELAY_BASE;\n const computeNextBackoffDelay = (attempts) => {\n return Math.floor(Math.min(MAXIMUM_RETRY_DELAY, Math.random() * 2 ** attempts * delayBase));\n };\n const setDelayBase = (delay) => {\n delayBase = delay;\n };\n return {\n computeNextBackoffDelay,\n setDelayBase,\n };\n};\n","import { MAXIMUM_RETRY_DELAY } from \"./constants\";\nexport const createDefaultRetryToken = ({ retryDelay, retryCount, retryCost, }) => {\n const getRetryCount = () => retryCount;\n const getRetryDelay = () => Math.min(MAXIMUM_RETRY_DELAY, retryDelay);\n const getRetryCost = () => retryCost;\n return {\n getRetryCount,\n getRetryDelay,\n getRetryCost,\n };\n};\n","import { HttpRequest, HttpResponse } from \"@smithy/protocol-http\";\nimport { isServerError, isThrottlingError, isTransientError } from \"@smithy/service-error-classification\";\nimport { NoOpLogger } from \"@smithy/smithy-client\";\nimport { INVOCATION_ID_HEADER, REQUEST_HEADER } from \"@smithy/util-retry\";\nimport { v4 } from \"@smithy/uuid\";\nimport { isStreamingPayload } from \"./isStreamingPayload/isStreamingPayload\";\nimport { asSdkError } from \"./util\";\nexport const retryMiddleware = (options) => (next, context) => async (args) => {\n let retryStrategy = await options.retryStrategy();\n const maxAttempts = await options.maxAttempts();\n if (isRetryStrategyV2(retryStrategy)) {\n retryStrategy = retryStrategy;\n let retryToken = await retryStrategy.acquireInitialRetryToken(context[\"partition_id\"]);\n let lastError = new Error();\n let attempts = 0;\n let totalRetryDelay = 0;\n const { request } = args;\n const isRequest = HttpRequest.isInstance(request);\n if (isRequest) {\n request.headers[INVOCATION_ID_HEADER] = v4();\n }\n while (true) {\n try {\n if (isRequest) {\n request.headers[REQUEST_HEADER] = `attempt=${attempts + 1}; max=${maxAttempts}`;\n }\n const { response, output } = await next(args);\n retryStrategy.recordSuccess(retryToken);\n output.$metadata.attempts = attempts + 1;\n output.$metadata.totalRetryDelay = totalRetryDelay;\n return { response, output };\n }\n catch (e) {\n const retryErrorInfo = getRetryErrorInfo(e);\n lastError = asSdkError(e);\n if (isRequest && isStreamingPayload(request)) {\n (context.logger instanceof NoOpLogger ? console : context.logger)?.warn(\"An error was encountered in a non-retryable streaming request.\");\n throw lastError;\n }\n try {\n retryToken = await retryStrategy.refreshRetryTokenForRetry(retryToken, retryErrorInfo);\n }\n catch (refreshError) {\n if (!lastError.$metadata) {\n lastError.$metadata = {};\n }\n lastError.$metadata.attempts = attempts + 1;\n lastError.$metadata.totalRetryDelay = totalRetryDelay;\n throw lastError;\n }\n attempts = retryToken.getRetryCount();\n const delay = retryToken.getRetryDelay();\n totalRetryDelay += delay;\n await new Promise((resolve) => setTimeout(resolve, delay));\n }\n }\n }\n else {\n retryStrategy = retryStrategy;\n if (retryStrategy?.mode)\n context.userAgent = [...(context.userAgent || []), [\"cfg/retry-mode\", retryStrategy.mode]];\n return retryStrategy.retry(next, args);\n }\n};\nconst isRetryStrategyV2 = (retryStrategy) => typeof retryStrategy.acquireInitialRetryToken !== \"undefined\" &&\n typeof retryStrategy.refreshRetryTokenForRetry !== \"undefined\" &&\n typeof retryStrategy.recordSuccess !== \"undefined\";\nconst getRetryErrorInfo = (error) => {\n const errorInfo = {\n error,\n errorType: getRetryErrorType(error),\n };\n const retryAfterHint = getRetryAfterHint(error.$response);\n if (retryAfterHint) {\n errorInfo.retryAfterHint = retryAfterHint;\n }\n return errorInfo;\n};\nconst getRetryErrorType = (error) => {\n if (isThrottlingError(error))\n return \"THROTTLING\";\n if (isTransientError(error))\n return \"TRANSIENT\";\n if (isServerError(error))\n return \"SERVER_ERROR\";\n return \"CLIENT_ERROR\";\n};\nexport const retryMiddlewareOptions = {\n name: \"retryMiddleware\",\n tags: [\"RETRY\"],\n step: \"finalizeRequest\",\n priority: \"high\",\n override: true,\n};\nexport const getRetryPlugin = (options) => ({\n applyToStack: (clientStack) => {\n clientStack.add(retryMiddleware(options), retryMiddlewareOptions);\n },\n});\nexport const getRetryAfterHint = (response) => {\n if (!HttpResponse.isInstance(response))\n return;\n const retryAfterHeaderName = Object.keys(response.headers).find((key) => key.toLowerCase() === \"retry-after\");\n if (!retryAfterHeaderName)\n return;\n const retryAfter = response.headers[retryAfterHeaderName];\n const retryAfterSeconds = Number(retryAfter);\n if (!Number.isNaN(retryAfterSeconds))\n return new Date(retryAfterSeconds * 1000);\n const retryAfterDate = new Date(retryAfter);\n return retryAfterDate;\n};\n","import { Readable } from \"stream\";\nexport const isStreamingPayload = (request) => request?.body instanceof Readable ||\n (typeof ReadableStream !== \"undefined\" && request?.body instanceof ReadableStream);\n","export const asSdkError = (error) => {\n if (error instanceof Error)\n return error;\n if (error instanceof Object)\n return Object.assign(new Error(), error);\n if (typeof error === \"string\")\n return new Error(error);\n return new Error(`AWS SDK error wrapper for ${error}`);\n};\n","import { booleanSelector, SelectorType } from \"@smithy/util-config-provider\";\nexport const ENV_USE_DUALSTACK_ENDPOINT = \"AWS_USE_DUALSTACK_ENDPOINT\";\nexport const CONFIG_USE_DUALSTACK_ENDPOINT = \"use_dualstack_endpoint\";\nexport const DEFAULT_USE_DUALSTACK_ENDPOINT = false;\nexport const NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => booleanSelector(env, ENV_USE_DUALSTACK_ENDPOINT, SelectorType.ENV),\n configFileSelector: (profile) => booleanSelector(profile, CONFIG_USE_DUALSTACK_ENDPOINT, SelectorType.CONFIG),\n default: false,\n};\n","export const booleanSelector = (obj, key, type) => {\n if (!(key in obj))\n return undefined;\n if (obj[key] === \"true\")\n return true;\n if (obj[key] === \"false\")\n return false;\n throw new Error(`Cannot load ${type} \"${key}\". Expected \"true\" or \"false\", got ${obj[key]}.`);\n};\n","export var SelectorType;\n(function (SelectorType) {\n SelectorType[\"ENV\"] = \"env\";\n SelectorType[\"CONFIG\"] = \"shared config entry\";\n})(SelectorType || (SelectorType = {}));\n","import { booleanSelector, SelectorType } from \"@smithy/util-config-provider\";\nexport const ENV_USE_FIPS_ENDPOINT = \"AWS_USE_FIPS_ENDPOINT\";\nexport const CONFIG_USE_FIPS_ENDPOINT = \"use_fips_endpoint\";\nexport const DEFAULT_USE_FIPS_ENDPOINT = false;\nexport const NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => booleanSelector(env, ENV_USE_FIPS_ENDPOINT, SelectorType.ENV),\n configFileSelector: (profile) => booleanSelector(profile, CONFIG_USE_FIPS_ENDPOINT, SelectorType.CONFIG),\n default: false,\n};\n","export const REGION_ENV_NAME = \"AWS_REGION\";\nexport const REGION_INI_NAME = \"region\";\nexport const NODE_REGION_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => env[REGION_ENV_NAME],\n configFileSelector: (profile) => profile[REGION_INI_NAME],\n default: () => {\n throw new Error(\"Region is missing\");\n },\n};\nexport const NODE_REGION_CONFIG_FILE_OPTIONS = {\n preferredFile: \"credentials\",\n};\n","import { platform, release } from \"os\";\nimport { env, versions } from \"process\";\nimport { isCrtAvailable } from \"./is-crt-available\";\nexport { crtAvailability } from \"./crt-availability\";\nexport const createDefaultUserAgentProvider = ({ serviceId, clientVersion }) => {\n return async (config) => {\n const sections = [\n [\"aws-sdk-js\", clientVersion],\n [\"ua\", \"2.1\"],\n [`os/${platform()}`, release()],\n [\"lang/js\"],\n [\"md/nodejs\", `${versions.node}`],\n ];\n const crtAvailable = isCrtAvailable();\n if (crtAvailable) {\n sections.push(crtAvailable);\n }\n if (serviceId) {\n sections.push([`api/${serviceId}`, clientVersion]);\n }\n if (env.AWS_EXECUTION_ENV) {\n sections.push([`exec-env/${env.AWS_EXECUTION_ENV}`]);\n }\n const appId = await config?.userAgentAppId?.();\n const resolvedUserAgent = appId ? [...sections, [`app/${appId}`]] : [...sections];\n return resolvedUserAgent;\n };\n};\nexport const defaultUserAgent = createDefaultUserAgentProvider;\n","import { crtAvailability } from \"./crt-availability\";\nexport const isCrtAvailable = () => {\n if (crtAvailability.isCrtAvailable) {\n return [\"md/crt-avail\"];\n }\n return null;\n};\n","export const crtAvailability = {\n isCrtAvailable: false,\n};\n","import { DEFAULT_UA_APP_ID } from \"@aws-sdk/middleware-user-agent\";\nexport const UA_APP_ID_ENV_NAME = \"AWS_SDK_UA_APP_ID\";\nexport const UA_APP_ID_INI_NAME = \"sdk_ua_app_id\";\nconst UA_APP_ID_INI_NAME_DEPRECATED = \"sdk-ua-app-id\";\nexport const NODE_APP_ID_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => env[UA_APP_ID_ENV_NAME],\n configFileSelector: (profile) => profile[UA_APP_ID_INI_NAME] ?? profile[UA_APP_ID_INI_NAME_DEPRECATED],\n default: DEFAULT_UA_APP_ID,\n};\n","export * from \"./defaultUserAgent\";\nexport * from \"./nodeAppIdConfigOptions\";\n","import { fromArrayBuffer, fromString } from \"@smithy/util-buffer-from\";\nimport { toUint8Array } from \"@smithy/util-utf8\";\nimport { Buffer } from \"buffer\";\nimport { createHash, createHmac } from \"crypto\";\nexport class Hash {\n algorithmIdentifier;\n secret;\n hash;\n constructor(algorithmIdentifier, secret) {\n this.algorithmIdentifier = algorithmIdentifier;\n this.secret = secret;\n this.reset();\n }\n update(toHash, encoding) {\n this.hash.update(toUint8Array(castSourceData(toHash, encoding)));\n }\n digest() {\n return Promise.resolve(this.hash.digest());\n }\n reset() {\n this.hash = this.secret\n ? createHmac(this.algorithmIdentifier, castSourceData(this.secret))\n : createHash(this.algorithmIdentifier);\n }\n}\nfunction castSourceData(toCast, encoding) {\n if (Buffer.isBuffer(toCast)) {\n return toCast;\n }\n if (typeof toCast === \"string\") {\n return fromString(toCast, encoding);\n }\n if (ArrayBuffer.isView(toCast)) {\n return fromArrayBuffer(toCast.buffer, toCast.byteOffset, toCast.byteLength);\n }\n return fromArrayBuffer(toCast);\n}\n","import { fstatSync, lstatSync, ReadStream } from \"node:fs\";\nexport const calculateBodyLength = (body) => {\n if (!body) {\n return 0;\n }\n if (typeof body === \"string\") {\n return Buffer.byteLength(body);\n }\n else if (typeof body.byteLength === \"number\") {\n return body.byteLength;\n }\n else if (typeof body.size === \"number\") {\n return body.size;\n }\n else if (typeof body.start === \"number\" && typeof body.end === \"number\") {\n return body.end + 1 - body.start;\n }\n else if (body instanceof ReadStream) {\n if (body.path != null) {\n return lstatSync(body.path).size;\n }\n else if (typeof body.fd === \"number\") {\n return fstatSync(body.fd).size;\n }\n }\n throw new Error(`Body Length computation failed for ${body}`);\n};\n","import { NODE_REGION_CONFIG_OPTIONS } from \"@smithy/config-resolver\";\nimport { loadConfig } from \"@smithy/node-config-provider\";\nimport { memoize } from \"@smithy/property-provider\";\nimport { AWS_DEFAULT_REGION_ENV, AWS_EXECUTION_ENV, AWS_REGION_ENV, DEFAULTS_MODE_OPTIONS, ENV_IMDS_DISABLED, IMDS_REGION_PATH, } from \"./constants\";\nimport { NODE_DEFAULTS_MODE_CONFIG_OPTIONS } from \"./defaultsModeConfig\";\nexport const resolveDefaultsModeConfig = ({ region = loadConfig(NODE_REGION_CONFIG_OPTIONS), defaultsMode = loadConfig(NODE_DEFAULTS_MODE_CONFIG_OPTIONS), } = {}) => memoize(async () => {\n const mode = typeof defaultsMode === \"function\" ? await defaultsMode() : defaultsMode;\n switch (mode?.toLowerCase()) {\n case \"auto\":\n return resolveNodeDefaultsModeAuto(region);\n case \"in-region\":\n case \"cross-region\":\n case \"mobile\":\n case \"standard\":\n case \"legacy\":\n return Promise.resolve(mode?.toLocaleLowerCase());\n case undefined:\n return Promise.resolve(\"legacy\");\n default:\n throw new Error(`Invalid parameter for \"defaultsMode\", expect ${DEFAULTS_MODE_OPTIONS.join(\", \")}, got ${mode}`);\n }\n});\nconst resolveNodeDefaultsModeAuto = async (clientRegion) => {\n if (clientRegion) {\n const resolvedRegion = typeof clientRegion === \"function\" ? await clientRegion() : clientRegion;\n const inferredRegion = await inferPhysicalRegion();\n if (!inferredRegion) {\n return \"standard\";\n }\n if (resolvedRegion === inferredRegion) {\n return \"in-region\";\n }\n else {\n return \"cross-region\";\n }\n }\n return \"standard\";\n};\nconst inferPhysicalRegion = async () => {\n if (process.env[AWS_EXECUTION_ENV] && (process.env[AWS_REGION_ENV] || process.env[AWS_DEFAULT_REGION_ENV])) {\n return process.env[AWS_REGION_ENV] ?? process.env[AWS_DEFAULT_REGION_ENV];\n }\n if (!process.env[ENV_IMDS_DISABLED]) {\n try {\n const { getInstanceMetadataEndpoint, httpRequest } = await import(\"@smithy/credential-provider-imds\");\n const endpoint = await getInstanceMetadataEndpoint();\n return (await httpRequest({ ...endpoint, path: IMDS_REGION_PATH })).toString();\n }\n catch (e) {\n }\n }\n};\n","export const AWS_EXECUTION_ENV = \"AWS_EXECUTION_ENV\";\nexport const AWS_REGION_ENV = \"AWS_REGION\";\nexport const AWS_DEFAULT_REGION_ENV = \"AWS_DEFAULT_REGION\";\nexport const ENV_IMDS_DISABLED = \"AWS_EC2_METADATA_DISABLED\";\nexport const DEFAULTS_MODE_OPTIONS = [\"in-region\", \"cross-region\", \"mobile\", \"standard\", \"legacy\"];\nexport const IMDS_REGION_PATH = \"/latest/meta-data/placement/region\";\n","const AWS_DEFAULTS_MODE_ENV = \"AWS_DEFAULTS_MODE\";\nconst AWS_DEFAULTS_MODE_CONFIG = \"defaults_mode\";\nexport const NODE_DEFAULTS_MODE_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => {\n return env[AWS_DEFAULTS_MODE_ENV];\n },\n configFileSelector: (profile) => {\n return profile[AWS_DEFAULTS_MODE_CONFIG];\n },\n default: \"legacy\",\n};\n","export const getAwsRegionExtensionConfiguration = (runtimeConfig) => {\n return {\n setRegion(region) {\n runtimeConfig.region = region;\n },\n region() {\n return runtimeConfig.region;\n },\n };\n};\nexport const resolveAwsRegionExtensionConfiguration = (awsRegionExtensionConfiguration) => {\n return {\n region: awsRegionExtensionConfiguration.region(),\n };\n};\n","export * from \"./extensions\";\nexport * from \"./regionConfig\";\n","export * from \"./config\";\nexport * from \"./resolveRegionConfig\";\n","export const REGION_ENV_NAME = \"AWS_REGION\";\nexport const REGION_INI_NAME = \"region\";\nexport const NODE_REGION_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => env[REGION_ENV_NAME],\n configFileSelector: (profile) => profile[REGION_INI_NAME],\n default: () => {\n throw new Error(\"Region is missing\");\n },\n};\nexport const NODE_REGION_CONFIG_FILE_OPTIONS = {\n preferredFile: \"credentials\",\n};\n","import { getRealRegion } from \"./getRealRegion\";\nimport { isFipsRegion } from \"./isFipsRegion\";\nexport const resolveRegionConfig = (input) => {\n const { region, useFipsEndpoint } = input;\n if (!region) {\n throw new Error(\"Region is missing\");\n }\n return Object.assign(input, {\n region: async () => {\n if (typeof region === \"string\") {\n return getRealRegion(region);\n }\n const providedRegion = await region();\n return getRealRegion(providedRegion);\n },\n useFipsEndpoint: async () => {\n const providedRegion = typeof region === \"string\" ? region : await region();\n if (isFipsRegion(providedRegion)) {\n return true;\n }\n return typeof useFipsEndpoint !== \"function\" ? Promise.resolve(!!useFipsEndpoint) : useFipsEndpoint();\n },\n });\n};\n","import { isFipsRegion } from \"./isFipsRegion\";\nexport const getRealRegion = (region) => isFipsRegion(region)\n ? [\"fips-aws-global\", \"aws-fips\"].includes(region)\n ? \"us-east-1\"\n : region.replace(/fips-(dkr-|prod-)?|-fips/, \"\")\n : region;\n","export const isFipsRegion = (region) => typeof region === \"string\" && (region.startsWith(\"fips-\") || region.endsWith(\"-fips\"));\n"]}
1
+ {"version":3,"sources":["../../../node_modules/.pnpm/@smithy+smithy-client@4.9.8/node_modules/@smithy/smithy-client/dist-es/client.js","../../../node_modules/.pnpm/@smithy+middleware-stack@4.2.5/node_modules/@smithy/middleware-stack/dist-es/MiddlewareStack.js","../../../node_modules/.pnpm/@smithy+smithy-client@4.9.8/node_modules/@smithy/smithy-client/dist-es/command.js","../../../node_modules/.pnpm/@smithy+types@4.9.0/node_modules/@smithy/types/dist-es/endpoint.js","../../../node_modules/.pnpm/@smithy+types@4.9.0/node_modules/@smithy/types/dist-es/extensions/index.js","../../../node_modules/.pnpm/@smithy+types@4.9.0/node_modules/@smithy/types/dist-es/extensions/checksum.js","../../../node_modules/.pnpm/@smithy+types@4.9.0/node_modules/@smithy/types/dist-es/middleware.js","../../../node_modules/.pnpm/@smithy+smithy-client@4.9.8/node_modules/@smithy/smithy-client/dist-es/schemaLogFilter.js","../../../node_modules/.pnpm/@smithy+core@3.18.5/node_modules/@smithy/core/dist-es/submodules/schema/deref.js","../../../node_modules/.pnpm/@smithy+protocol-http@5.3.5/node_modules/@smithy/protocol-http/dist-es/extensions/httpExtensionConfiguration.js","../../../node_modules/.pnpm/@smithy+util-middleware@4.2.5/node_modules/@smithy/util-middleware/dist-es/getSmithyContext.js","../../../node_modules/.pnpm/@smithy+util-middleware@4.2.5/node_modules/@smithy/util-middleware/dist-es/normalizeProvider.js","../../../node_modules/.pnpm/@smithy+core@3.18.5/node_modules/@smithy/core/dist-es/submodules/schema/schemas/NormalizedSchema.js","../../../node_modules/.pnpm/@smithy+core@3.18.5/node_modules/@smithy/core/dist-es/submodules/schema/schemas/translateTraits.js","../../../node_modules/.pnpm/@aws-sdk+middleware-host-header@3.873.0/node_modules/@aws-sdk/middleware-host-header/dist-es/index.js","../../../node_modules/.pnpm/@aws-sdk+middleware-logger@3.876.0/node_modules/@aws-sdk/middleware-logger/dist-es/loggerMiddleware.js","../../../node_modules/.pnpm/@aws-sdk+middleware-logger@3.876.0/node_modules/@aws-sdk/middleware-logger/dist-es/index.js","../../../node_modules/.pnpm/@aws-sdk+middleware-recursion-detection@3.873.0/node_modules/@aws-sdk/middleware-recursion-detection/dist-es/index.js","../../../node_modules/.pnpm/@smithy+core@3.18.5/node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/getHttpAuthSchemeEndpointRuleSetPlugin.js","../../../node_modules/.pnpm/@smithy+core@3.18.5/node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/httpAuthSchemeMiddleware.js","../../../node_modules/.pnpm/@smithy+core@3.18.5/node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/resolveAuthOptions.js","../../../node_modules/.pnpm/@smithy+middleware-serde@4.2.6/node_modules/@smithy/middleware-serde/dist-es/serdePlugin.js","../../../node_modules/.pnpm/@smithy+middleware-serde@4.2.6/node_modules/@smithy/middleware-serde/dist-es/deserializerMiddleware.js","../../../node_modules/.pnpm/@smithy+middleware-serde@4.2.6/node_modules/@smithy/middleware-serde/dist-es/serializerMiddleware.js","../../../node_modules/.pnpm/@smithy+core@3.18.5/node_modules/@smithy/core/dist-es/middleware-http-signing/getHttpSigningMiddleware.js","../../../node_modules/.pnpm/@smithy+core@3.18.5/node_modules/@smithy/core/dist-es/middleware-http-signing/httpSigningMiddleware.js","../../../node_modules/.pnpm/@smithy+core@3.18.5/node_modules/@smithy/core/dist-es/util-identity-and-auth/DefaultIdentityProviderConfig.js","../../../node_modules/.pnpm/@aws-sdk+middleware-user-agent@3.879.0/node_modules/@aws-sdk/middleware-user-agent/dist-es/configurations.js","../../../node_modules/.pnpm/@smithy+core@3.18.5/node_modules/@smithy/core/dist-es/normalizeProvider.js","../../../node_modules/.pnpm/@smithy+core@3.18.5/node_modules/@smithy/core/dist-es/submodules/protocols/collect-stream-body.js","../../../node_modules/.pnpm/@smithy+util-stream@4.5.6/node_modules/@smithy/util-stream/dist-es/blob/Uint8ArrayBlobAdapter.js","../../../node_modules/.pnpm/@smithy+util-utf8@4.2.0/node_modules/@smithy/util-utf8/dist-es/toUint8Array.js","../../../node_modules/.pnpm/@smithy+uuid@1.1.0/node_modules/@smithy/uuid/dist-es/v4.js","../../../node_modules/.pnpm/@smithy+uuid@1.1.0/node_modules/@smithy/uuid/dist-es/randomUUID.js","../../../node_modules/.pnpm/@smithy+core@3.18.5/node_modules/@smithy/core/dist-es/setFeature.js","../../../node_modules/.pnpm/@smithy+core@3.18.5/node_modules/@smithy/core/dist-es/util-identity-and-auth/memoizeIdentityProvider.js","../../../node_modules/.pnpm/@smithy+smithy-client@4.9.8/node_modules/@smithy/smithy-client/dist-es/exceptions.js","../../../node_modules/.pnpm/@aws-sdk+middleware-user-agent@3.879.0/node_modules/@aws-sdk/middleware-user-agent/dist-es/user-agent-middleware.js","../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.879.0/node_modules/@aws-sdk/util-endpoints/dist-es/index.js","../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.879.0/node_modules/@aws-sdk/util-endpoints/dist-es/aws.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/cache/EndpointCache.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/lib/isIpAddress.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/lib/isValidHostLabel.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/utils/customEndpointFunctions.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/resolveEndpoint.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/debug/debugId.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/debug/toDebugString.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/types/EndpointError.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateRules.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateConditions.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateCondition.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/utils/callFunction.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateExpression.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/utils/endpointFunctions.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/lib/booleanEquals.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/lib/getAttr.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/lib/getAttrPathList.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/lib/isSet.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/lib/not.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/lib/parseURL.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/lib/stringEquals.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/lib/substring.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/lib/uriEncode.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateTemplate.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/utils/getReferenceValue.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateEndpointRule.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/utils/getEndpointHeaders.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/utils/getEndpointProperties.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/utils/getEndpointUrl.js","../../../node_modules/.pnpm/@smithy+util-endpoints@3.2.5/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateErrorRule.js","../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.879.0/node_modules/@aws-sdk/util-endpoints/dist-es/lib/aws/isVirtualHostableS3Bucket.js","../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.879.0/node_modules/@aws-sdk/util-endpoints/dist-es/lib/isIpAddress.js","../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.879.0/node_modules/@aws-sdk/util-endpoints/dist-es/lib/aws/parseArn.js","../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.879.0/node_modules/@aws-sdk/util-endpoints/dist-es/lib/aws/partition.js","../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.879.0/node_modules/@aws-sdk/util-endpoints/dist-es/lib/aws/partitions.json","../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.879.0/node_modules/@aws-sdk/util-endpoints/dist-es/resolveDefaultAwsRegionalEndpointsConfig.js","../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.879.0/node_modules/@aws-sdk/util-endpoints/dist-es/resolveEndpoint.js","../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.879.0/node_modules/@aws-sdk/util-endpoints/dist-es/types/index.js","../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.879.0/node_modules/@aws-sdk/util-endpoints/dist-es/types/EndpointError.js","../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.879.0/node_modules/@aws-sdk/util-endpoints/dist-es/types/EndpointRuleObject.js","../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.879.0/node_modules/@aws-sdk/util-endpoints/dist-es/types/ErrorRuleObject.js","../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.879.0/node_modules/@aws-sdk/util-endpoints/dist-es/types/RuleSetObject.js","../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.879.0/node_modules/@aws-sdk/util-endpoints/dist-es/types/TreeRuleObject.js","../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.879.0/node_modules/@aws-sdk/util-endpoints/dist-es/types/shared.js","../../../node_modules/.pnpm/@aws-sdk+middleware-user-agent@3.879.0/node_modules/@aws-sdk/middleware-user-agent/dist-es/check-features.js","../../../node_modules/.pnpm/@aws-sdk+core@3.879.0/node_modules/@aws-sdk/core/dist-es/submodules/client/emitWarningIfUnsupportedVersion.js","../../../node_modules/.pnpm/@aws-sdk+core@3.879.0/node_modules/@aws-sdk/core/dist-es/submodules/client/setFeature.js","../../../node_modules/.pnpm/@aws-sdk+core@3.879.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/index.js","../../../node_modules/.pnpm/@aws-sdk+core@3.879.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4Signer.js","../../../node_modules/.pnpm/@aws-sdk+core@3.879.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getDateHeader.js","../../../node_modules/.pnpm/@aws-sdk+core@3.879.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getSkewCorrectedDate.js","../../../node_modules/.pnpm/@aws-sdk+core@3.879.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getUpdatedSystemClockOffset.js","../../../node_modules/.pnpm/@aws-sdk+core@3.879.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/isClockSkewed.js","../../../node_modules/.pnpm/@aws-sdk+core@3.879.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/NODE_AUTH_SCHEME_PREFERENCE_OPTIONS.js","../../../node_modules/.pnpm/@aws-sdk+core@3.879.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getArrayForCommaSeparatedString.js","../../../node_modules/.pnpm/@aws-sdk+core@3.879.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getBearerTokenEnvKey.js","../../../node_modules/.pnpm/@aws-sdk+core@3.879.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4Config.js","../../../node_modules/.pnpm/@smithy+signature-v4@5.3.5/node_modules/@smithy/signature-v4/dist-es/SignatureV4.js","../../../node_modules/.pnpm/@smithy+signature-v4@5.3.5/node_modules/@smithy/signature-v4/dist-es/constants.js","../../../node_modules/.pnpm/@smithy+signature-v4@5.3.5/node_modules/@smithy/signature-v4/dist-es/credentialDerivation.js","../../../node_modules/.pnpm/@smithy+signature-v4@5.3.5/node_modules/@smithy/signature-v4/dist-es/getCanonicalHeaders.js","../../../node_modules/.pnpm/@smithy+signature-v4@5.3.5/node_modules/@smithy/signature-v4/dist-es/getPayloadHash.js","../../../node_modules/.pnpm/@smithy+signature-v4@5.3.5/node_modules/@smithy/signature-v4/dist-es/HeaderFormatter.js","../../../node_modules/.pnpm/@smithy+signature-v4@5.3.5/node_modules/@smithy/signature-v4/dist-es/headerUtil.js","../../../node_modules/.pnpm/@smithy+signature-v4@5.3.5/node_modules/@smithy/signature-v4/dist-es/moveHeadersToQuery.js","../../../node_modules/.pnpm/@smithy+signature-v4@5.3.5/node_modules/@smithy/signature-v4/dist-es/prepareRequest.js","../../../node_modules/.pnpm/@smithy+signature-v4@5.3.5/node_modules/@smithy/signature-v4/dist-es/SignatureV4Base.js","../../../node_modules/.pnpm/@smithy+signature-v4@5.3.5/node_modules/@smithy/signature-v4/dist-es/getCanonicalQuery.js","../../../node_modules/.pnpm/@smithy+signature-v4@5.3.5/node_modules/@smithy/signature-v4/dist-es/utilDate.js","../../../node_modules/.pnpm/@aws-sdk+core@3.879.0/node_modules/@aws-sdk/core/dist-es/submodules/protocols/common.js","../../../node_modules/.pnpm/@smithy+smithy-client@4.9.8/node_modules/@smithy/smithy-client/dist-es/collect-stream-body.js","../../../node_modules/.pnpm/@smithy+smithy-client@4.9.8/node_modules/@smithy/smithy-client/dist-es/default-error-handler.js","../../../node_modules/.pnpm/@smithy+smithy-client@4.9.8/node_modules/@smithy/smithy-client/dist-es/defaults-mode.js","../../../node_modules/.pnpm/@smithy+smithy-client@4.9.8/node_modules/@smithy/smithy-client/dist-es/emitWarningIfUnsupportedVersion.js","../../../node_modules/.pnpm/@smithy+smithy-client@4.9.8/node_modules/@smithy/smithy-client/dist-es/extensions/defaultExtensionConfiguration.js","../../../node_modules/.pnpm/@smithy+smithy-client@4.9.8/node_modules/@smithy/smithy-client/dist-es/extensions/checksum.js","../../../node_modules/.pnpm/@smithy+smithy-client@4.9.8/node_modules/@smithy/smithy-client/dist-es/extensions/retry.js","../../../node_modules/.pnpm/@smithy+smithy-client@4.9.8/node_modules/@smithy/smithy-client/dist-es/NoOpLogger.js","../../../node_modules/.pnpm/@aws-sdk+middleware-user-agent@3.879.0/node_modules/@aws-sdk/middleware-user-agent/dist-es/constants.js","../../../node_modules/.pnpm/@aws-sdk+middleware-user-agent@3.879.0/node_modules/@aws-sdk/middleware-user-agent/dist-es/encode-features.js","../../../node_modules/.pnpm/@aws-sdk+middleware-user-agent@3.879.0/node_modules/@aws-sdk/middleware-user-agent/dist-es/index.js","../../../node_modules/.pnpm/@smithy+config-resolver@4.4.3/node_modules/@smithy/config-resolver/dist-es/regionConfig/resolveRegionConfig.js","../../../node_modules/.pnpm/@smithy+config-resolver@4.4.3/node_modules/@smithy/config-resolver/dist-es/regionConfig/checkRegion.js","../../../node_modules/.pnpm/@smithy+config-resolver@4.4.3/node_modules/@smithy/config-resolver/dist-es/regionConfig/getRealRegion.js","../../../node_modules/.pnpm/@smithy+config-resolver@4.4.3/node_modules/@smithy/config-resolver/dist-es/regionConfig/isFipsRegion.js","../../../node_modules/.pnpm/@smithy+middleware-content-length@4.2.5/node_modules/@smithy/middleware-content-length/dist-es/index.js","../../../node_modules/.pnpm/@smithy+middleware-endpoint@4.3.12/node_modules/@smithy/middleware-endpoint/dist-es/getEndpointPlugin.js","../../../node_modules/.pnpm/@smithy+middleware-endpoint@4.3.12/node_modules/@smithy/middleware-endpoint/dist-es/endpointMiddleware.js","../../../node_modules/.pnpm/@smithy+middleware-endpoint@4.3.12/node_modules/@smithy/middleware-endpoint/dist-es/adaptors/getEndpointFromInstructions.js","../../../node_modules/.pnpm/@smithy+middleware-endpoint@4.3.12/node_modules/@smithy/middleware-endpoint/dist-es/service-customizations/s3.js","../../../node_modules/.pnpm/@smithy+middleware-endpoint@4.3.12/node_modules/@smithy/middleware-endpoint/dist-es/adaptors/createConfigValueProvider.js","../../../node_modules/.pnpm/@smithy+middleware-endpoint@4.3.12/node_modules/@smithy/middleware-endpoint/dist-es/adaptors/getEndpointFromConfig.js","../../../node_modules/.pnpm/@smithy+middleware-endpoint@4.3.12/node_modules/@smithy/middleware-endpoint/dist-es/adaptors/getEndpointUrlConfig.js","../../../node_modules/.pnpm/@smithy+middleware-endpoint@4.3.12/node_modules/@smithy/middleware-endpoint/dist-es/adaptors/toEndpointV1.js","../../../node_modules/.pnpm/@smithy+middleware-endpoint@4.3.12/node_modules/@smithy/middleware-endpoint/dist-es/resolveEndpointConfig.js","../../../node_modules/.pnpm/@smithy+middleware-retry@4.4.12/node_modules/@smithy/middleware-retry/dist-es/configurations.js","../../../node_modules/.pnpm/@smithy+util-retry@4.2.5/node_modules/@smithy/util-retry/dist-es/AdaptiveRetryStrategy.js","../../../node_modules/.pnpm/@smithy+util-retry@4.2.5/node_modules/@smithy/util-retry/dist-es/config.js","../../../node_modules/.pnpm/@smithy+util-retry@4.2.5/node_modules/@smithy/util-retry/dist-es/DefaultRateLimiter.js","../../../node_modules/.pnpm/@smithy+service-error-classification@4.2.5/node_modules/@smithy/service-error-classification/dist-es/index.js","../../../node_modules/.pnpm/@smithy+service-error-classification@4.2.5/node_modules/@smithy/service-error-classification/dist-es/constants.js","../../../node_modules/.pnpm/@smithy+util-retry@4.2.5/node_modules/@smithy/util-retry/dist-es/StandardRetryStrategy.js","../../../node_modules/.pnpm/@smithy+util-retry@4.2.5/node_modules/@smithy/util-retry/dist-es/constants.js","../../../node_modules/.pnpm/@smithy+util-retry@4.2.5/node_modules/@smithy/util-retry/dist-es/defaultRetryBackoffStrategy.js","../../../node_modules/.pnpm/@smithy+util-retry@4.2.5/node_modules/@smithy/util-retry/dist-es/defaultRetryToken.js","../../../node_modules/.pnpm/@smithy+middleware-retry@4.4.12/node_modules/@smithy/middleware-retry/dist-es/retryMiddleware.js","../../../node_modules/.pnpm/@smithy+middleware-retry@4.4.12/node_modules/@smithy/middleware-retry/dist-es/isStreamingPayload/isStreamingPayload.js","../../../node_modules/.pnpm/@smithy+middleware-retry@4.4.12/node_modules/@smithy/middleware-retry/dist-es/util.js","../../../node_modules/.pnpm/@smithy+config-resolver@4.4.3/node_modules/@smithy/config-resolver/dist-es/endpointsConfig/NodeUseDualstackEndpointConfigOptions.js","../../../node_modules/.pnpm/@smithy+util-config-provider@4.2.0/node_modules/@smithy/util-config-provider/dist-es/booleanSelector.js","../../../node_modules/.pnpm/@smithy+util-config-provider@4.2.0/node_modules/@smithy/util-config-provider/dist-es/types.js","../../../node_modules/.pnpm/@smithy+config-resolver@4.4.3/node_modules/@smithy/config-resolver/dist-es/endpointsConfig/NodeUseFipsEndpointConfigOptions.js","../../../node_modules/.pnpm/@smithy+config-resolver@4.4.3/node_modules/@smithy/config-resolver/dist-es/regionConfig/config.js","../../../node_modules/.pnpm/@aws-sdk+util-user-agent-node@3.879.0/node_modules/@aws-sdk/util-user-agent-node/dist-es/defaultUserAgent.js","../../../node_modules/.pnpm/@aws-sdk+util-user-agent-node@3.879.0/node_modules/@aws-sdk/util-user-agent-node/dist-es/is-crt-available.js","../../../node_modules/.pnpm/@aws-sdk+util-user-agent-node@3.879.0/node_modules/@aws-sdk/util-user-agent-node/dist-es/crt-availability.js","../../../node_modules/.pnpm/@aws-sdk+util-user-agent-node@3.879.0/node_modules/@aws-sdk/util-user-agent-node/dist-es/nodeAppIdConfigOptions.js","../../../node_modules/.pnpm/@aws-sdk+util-user-agent-node@3.879.0/node_modules/@aws-sdk/util-user-agent-node/dist-es/index.js","../../../node_modules/.pnpm/@smithy+hash-node@4.2.5/node_modules/@smithy/hash-node/dist-es/index.js","../../../node_modules/.pnpm/@smithy+util-body-length-node@4.2.1/node_modules/@smithy/util-body-length-node/dist-es/calculateBodyLength.js","../../../node_modules/.pnpm/@smithy+util-defaults-mode-node@4.2.14/node_modules/@smithy/util-defaults-mode-node/dist-es/resolveDefaultsModeConfig.js","../../../node_modules/.pnpm/@smithy+util-defaults-mode-node@4.2.14/node_modules/@smithy/util-defaults-mode-node/dist-es/constants.js","../../../node_modules/.pnpm/@smithy+util-defaults-mode-node@4.2.14/node_modules/@smithy/util-defaults-mode-node/dist-es/defaultsModeConfig.js","../../../node_modules/.pnpm/@aws-sdk+region-config-resolver@3.873.0/node_modules/@aws-sdk/region-config-resolver/dist-es/extensions/index.js","../../../node_modules/.pnpm/@aws-sdk+region-config-resolver@3.873.0/node_modules/@aws-sdk/region-config-resolver/dist-es/index.js","../../../node_modules/.pnpm/@aws-sdk+region-config-resolver@3.873.0/node_modules/@aws-sdk/region-config-resolver/dist-es/regionConfig/index.js","../../../node_modules/.pnpm/@aws-sdk+region-config-resolver@3.873.0/node_modules/@aws-sdk/region-config-resolver/dist-es/regionConfig/config.js","../../../node_modules/.pnpm/@aws-sdk+region-config-resolver@3.873.0/node_modules/@aws-sdk/region-config-resolver/dist-es/regionConfig/resolveRegionConfig.js","../../../node_modules/.pnpm/@aws-sdk+region-config-resolver@3.873.0/node_modules/@aws-sdk/region-config-resolver/dist-es/regionConfig/getRealRegion.js","../../../node_modules/.pnpm/@aws-sdk+region-config-resolver@3.873.0/node_modules/@aws-sdk/region-config-resolver/dist-es/regionConfig/isFipsRegion.js"],"names":["init_cjs_shims","getAllAliases","__name","name","aliases","_aliases","push","alias","getMiddlewareNameWithAliases","length","join","constructStack","absoluteEntries","relativeEntries","identifyOnResolve","entriesNameSet","Set","sort","entries","a","b","stepWeights","step","priorityWeights","priority","removeByName","toRemove","isRemoved","filterCb","entry","includes","delete","filter","removeByReference","middleware","cloneTo","toStack","forEach","add","addRelativeTo","stack","expandRelativeMiddlewareList","from","expandedMiddlewareList","before","after","reverse","getMiddlewareList","debug","normalizedAbsoluteEntries","normalizedRelativeEntries","normalizedEntriesNameMap","normalizedEntry","toMiddleware","undefined","Error","relation","mainChain","map","reduce","wholeList","options","override","some","has","toOverrideIndex","findIndex","toOverride","splice","clone","use","plugin","applyToStack","remove","removeByTag","tags","concat","cloned","identify","mw","toggle","resolve","handler","context","console","log","initialize","serialize","build","finalizeRequest","deserialize","high","normal","low","Client","config","middlewareStack","initConfig","handlers","send","command","optionsOrCb","cb","callback","useHandlerCache","cacheMiddleware","WeakMap","get","resolveMiddleware","set","then","result","output","err","catch","destroy","requestHandler","EndpointURLScheme","AlgorithmId","SMITHY_CONTEXT_KEY","deref","schemaRef","getHttpHandlerExtensionConfiguration","runtimeConfig","setHttpHandler","httpHandler","updateHttpClientConfig","key","value","httpHandlerConfigs","resolveHttpHandlerRuntimeConfig","httpHandlerExtensionConfiguration","getSmithyContext","normalizeProvider","input","promisified","Promise","translateTraits","indicator","traits","i","trait","NormalizedSchema","ref","memberName","symbol","Symbol","for","schema","_isMemberSchema","memberTraits","normalizedTraits","traitStack","_ref","isMemberSchema","traitSet","Object","assign","computedMemberTraits","getMemberTraits","isStaticSchema","String","getName","hasInstance","lhs","isPrototype","prototype","isPrototypeOf","ns","of","sc","getMergedTraits","JSON","stringify","getSchema","withNamespace","short","split","getMemberName","isListSchema","isMapSchema","isStructSchema","isBlobSchema","isTimestampSchema","isUnitSchema","isDocumentSchema","isStringSchema","isBooleanSchema","isNumericSchema","isBigIntegerSchema","isBigDecimalSchema","isStreaming","streaming","isIdempotencyToken","match","idempotencyToken","getOwnTraits","getKeySchema","isDoc","isMap","memberSchema","member","getValueSchema","isList","getMemberSchema","struct","indexOf","getMemberSchemas","buffer","k","v","structIterator","ignored","getEventStreamMember","internalCtorAccess","Array","isArray","SENSITIVE_STRING","schemaLogFilter","data","sensitive","isSensitive","object","newObject","memberNs","Command","classBuilder","ClassBuilder","resolveMiddlewareWithContext","clientStack","configuration","middlewareFn","clientName","commandName","inputFilterSensitiveLog","outputFilterSensitiveLog","smithyContext","additionalContext","CommandCtor","bind","logger","handlerExecutionContext","commandInstance","request","handle","_init","_ep","_middlewareFn","_commandName","_clientName","_additionalContext","_smithyContext","_inputFilterSensitiveLog","_outputFilterSensitiveLog","_serializer","_deserializer","_operationSchema","init","ep","endpointParameterInstructions","m","middlewareSupplier","s","service","operation","c","n","f","inputFilter","_","outputFilter","ser","serializer","de","deserializer","operationSchema","closure","CommandRef","getEndpointParameterInstructions","op","resolveHostHeaderConfig","hostHeaderMiddleware","next","args","HttpRequest","isInstance","handlerProtocol","metadata","headers","hostname","port","host","hostHeaderMiddlewareOptions","getHostHeaderPlugin","loggerMiddleware","response","dynamoDbDocumentClientOptions","overrideInputFilterSensitiveLog","overrideOutputFilterSensitiveLog","$metadata","outputWithoutMetadata","info","error","loggerMiddlewareOptions","getLoggerPlugin","TRACE_ID_HEADER_NAME","ENV_LAMBDA_FUNCTION_NAME","ENV_TRACE_ID","recursionDetectionMiddleware","runtime","traceIdHeader","keys","find","h","toLowerCase","hasOwnProperty","functionName","process","env","traceId","nonEmptyString","str","addRecursionDetectionMiddlewareOptions","getRecursionDetectionPlugin","resolveAuthOptions","candidateAuthOptions","authSchemePreference","preferredAuthOptions","preferredSchemeName","candidateAuthOption","candidateAuthSchemeName","schemeId","convertHttpAuthSchemesToMap","httpAuthSchemes","Map","scheme","httpAuthSchemeMiddleware","mwOptions","httpAuthSchemeProvider","httpAuthSchemeParametersProvider","resolvedOptions","authSchemes","failureReasons","option","identityProvider","identityProviderConfigProvider","identityProperties","signingProperties","propertiesExtractor","selectedHttpAuthScheme","httpAuthOption","identity","signer","httpAuthSchemeEndpointRuleSetMiddlewareOptions","getHttpAuthSchemeEndpointRuleSetPlugin","deserializerMiddleware","parsed","defineProperty","enumerable","writable","configurable","hint","message","e","warn","$responseBodyText","$response","body","HttpResponse","headerEntries","httpStatusCode","statusCode","requestId","findHeader","extendedRequestId","cfId","pattern","serializerMiddleware","endpointConfig","endpoint","endpointV2","url","urlParser","deserializerMiddlewareOption","serializerMiddlewareOption","getSerdePlugin","commandStack","defaultErrorHandler","defaultSuccessHandler","httpResponse","httpSigningMiddleware","sign","errorHandler","successHandler","httpSigningMiddlewareOptions","getHttpSigningPlugin","DefaultIdentityProviderConfig","getIdentityProvider","toUint8Array","fromUtf8","ArrayBuffer","isView","Uint8Array","byteOffset","byteLength","BYTES_PER_ELEMENT","Uint8ArrayBlobAdapter","fromString","source","encoding","mutate","fromBase64","setPrototypeOf","transformToString","toBase64","toUtf8","collectBody","streamBody","fromContext","streamCollector","randomUUID","crypto","decimalToHex","toString","padStart","v4","rnds","getRandomValues","setFeature","feature","__smithy_context","features","createIsIdentityExpiredFunction","expirationMs","isIdentityExpired","doesIdentityRequireRefresh","expiration","getTime","Date","now","EXPIRATION_MS","memoizeIdentityProvider","provider","isExpired","requiresRefresh","normalizedProvider","resolved","pending","hasResult","isConstant","coalesceProvider","forceRefresh","DEFAULT_UA_APP_ID","isValidUserAgentAppId","appId","resolveUserAgentConfig","normalizedAppIdProvider","userAgentAppId","customUserAgent","ServiceException","$fault","$retryable","getPrototypeOf","candidate","Boolean","instance","decorateServiceException","exception","additions","Message","EndpointCache","capacity","parameters","size","params","endpointParams","resolver","hash","done","param","val","IP_V4_REGEX","RegExp","isIpAddress","test","startsWith","endsWith","VALID_HOST_LABEL_REGEX","isValidHostLabel","allowSubDomains","labels","label","customEndpointFunctions","debugId","toDebugString","fn","argv","EndpointError","booleanEquals","value1","value2","getAttrPathList","path","parts","pathList","part","squareBracketIndex","arrayIndex","slice","Number","isNaN","parseInt","getAttr","acc","index","isSet","not","DEFAULT_PORTS","HTTP","HTTPS","parseURL","whatwgURL","URL","protocol","query","search","urlString","href","pathname","values","isIp","inputContainsDefaultPort","authority","normalizedPath","stringEquals","substring","start","stop","uriEncode","encodeURIComponent","replace","charCodeAt","toUpperCase","endpointFunctions","evaluateTemplate","template","evaluatedTemplateArr","templateContext","referenceRecord","currentIndex","openingBraceIndex","closingBraceIndex","parameterName","refName","attrName","getReferenceValue","evaluateExpression","obj","keyName","group","callFunction","evaluatedArgs","arg","fnSegments","evaluateCondition","fnArgs","toAssign","evaluateConditions","conditions","conditionsReferenceRecord","condition","getEndpointHeaders","headerKey","headerVal","headerValEntry","processedExpr","getEndpointProperties","properties","propertyKey","propertyVal","getEndpointProperty","property","propertyEntry","getEndpointUrl","endpointUrl","expression","evaluateEndpointRule","endpointRule","endpointRuleOptions","evaluateErrorRule","errorRule","evaluateRules","rules","rule","type","endpointOrUndefined","evaluateTreeRule","treeRule","resolveEndpoint","ruleSetObject","paramsWithDefault","default","paramKey","paramDefaultValue","requiredParams","required","requiredParam","isVirtualHostableS3Bucket","ARN_DELIMITER","RESOURCE_DELIMITER","parseArn","segments","arn","partition","region","accountId","resourcePath","resourceId","resource","flat","selectedPartitionsInfo","partitionsInfo","selectedUserAgentPrefix","partitions","regions","outputs","regionData","regionRegex","DEFAULT_PARTITION","id","getUserAgentPrefix","awsEndpointFunctions","aws","state","warningEmitted","emitWarningIfUnsupportedVersion","version","emitWarning","__aws_sdk_context","getDateHeader","date","getSkewCorrectedDate","systemClockOffset","isClockSkewed","clockTime","Math","abs","getUpdatedSystemClockOffset","currentSystemClockOffset","clockTimeInMs","parse","throwSigningPropertyError","validateSigningProperties","authScheme","signerFunction","signingRegion","signingRegionSet","signingName","AwsSdkSigV4Signer","httpRequest","validatedProps","first","second","signedRequest","signingDate","signingService","serverTime","ServerTime","initialSystemClockOffset","clockSkewCorrected","dateHeader","getArrayForCommaSeparatedString","item","trim","getBearerTokenEnvKey","NODE_AUTH_SCHEME_PREFERENCE_ENV_KEY","NODE_AUTH_SCHEME_PREFERENCE_CONFIG_KEY","NODE_AUTH_SCHEME_PREFERENCE_OPTIONS","environmentVariableSelector","bearerTokenKey","configFileSelector","profile","ALGORITHM_QUERY_PARAM","CREDENTIAL_QUERY_PARAM","AMZ_DATE_QUERY_PARAM","SIGNED_HEADERS_QUERY_PARAM","EXPIRES_QUERY_PARAM","SIGNATURE_QUERY_PARAM","TOKEN_QUERY_PARAM","AUTH_HEADER","AMZ_DATE_HEADER","DATE_HEADER","GENERATED_HEADERS","SIGNATURE_HEADER","SHA256_HEADER","TOKEN_HEADER","ALWAYS_UNSIGNABLE_HEADERS","authorization","connection","expect","pragma","referer","te","trailer","upgrade","PROXY_HEADER_PATTERN","SEC_HEADER_PATTERN","ALGORITHM_IDENTIFIER","EVENT_ALGORITHM_IDENTIFIER","UNSIGNED_PAYLOAD","MAX_CACHE_SIZE","KEY_TYPE_IDENTIFIER","MAX_PRESIGNED_TTL","signingKeyCache","cacheQueue","createScope","shortDate","getSigningKey","sha256Constructor","credentials","credsHash","hmac","secretAccessKey","accessKeyId","cacheKey","toHex","sessionToken","shift","signable","ctor","secret","update","digest","getCanonicalHeaders","unsignableHeaders","signableHeaders","canonical","headerName","canonicalHeaderName","getPayloadHash","hashConstructor","isArrayBuffer","hashCtor","HeaderFormatter","format","chunks","bytes","formatHeaderValue","out","carry","position","chunk","header","shortView","DataView","setUint8","setInt16","intView","setInt32","longBytes","binView","setUint16","binBytes","utf8Bytes","strView","strBytes","tsBytes","Int64","fromNumber","valueOf","UUID_PATTERN","uuidBytes","fromHex","HEADER_VALUE_TYPE","number","remaining","round","negate","negative","hasHeader","soughtHeader","moveHeadersToQuery","lname","unhoistableHeaders","hoistableHeaders","prepareRequest","getCanonicalQuery","serialized","encodedKey","escapeUri","encoded","iso8601","time","toDate","toISOString","SignatureV4Base","regionProvider","credentialProvider","sha256","uriEscapePath","applyChecksum","createCanonicalRequest","canonicalHeaders","payloadHash","sortedHeaders","method","getCanonicalPath","createStringToSign","longDate","credentialScope","canonicalRequest","algorithmIdentifier","hashedRequest","normalizedPathSegments","pathSegment","pop","doubleEncoded","validateResolvedCredentials","formatDate","getCanonicalHeaderList","SignatureV4","headerFormatter","presign","originalRequest","expiresIn","reject","scope","getSignature","toSign","signString","payload","signEvent","signMessage","signRequest","priorSignature","hashedPayload","hashedHeaders","stringToSign","signableMessage","promise","signature","requestToSign","keyPromise","resolveAwsSdkSigV4Config","inputCredentials","isUserSupplied","resolvedCredentials","memoizedProvider","normalizeCredentialProvider","credentialDefaultProvider","boundProvider","bindCallerConfig","attributed","creds","setCredentialFeature","memoized","configBound","signingEscapePath","regionInfoProvider","useFipsEndpoint","useDualstackEndpoint","regionInfo","serviceId","SignerCtor","signerConstructor","defaultSigningName","resolvedConfig","credentialsProvider","parentClientConfig","callerClientConfig","throwDefaultError","parsedBody","exceptionCtor","errorCode","deserializeMetadata","code","Code","withBaseException","ExceptionCtor","loadConfigsForDefaultMode","mode","retryMode","connectionTimeout","getChecksumConfiguration","checksumAlgorithms","algorithmId","checksumConstructor","addChecksumAlgorithm","algo","resolveChecksumRuntimeConfig","clientConfig","checksumAlgorithm","getRetryConfiguration","setRetryStrategy","retryStrategy","resolveRetryRuntimeConfig","retryStrategyConfiguration","getDefaultExtensionConfiguration","resolveDefaultRuntimeConfig","NoOpLogger","trace","collectBodyString","utf8Encoder","ACCOUNT_ID_ENDPOINT_REGEX","checkFeatures","acquireInitialRetryToken","accountIdEndpointMode","$source","USER_AGENT","X_AMZ_USER_AGENT","SPACE","UA_NAME_SEPARATOR","UA_NAME_ESCAPE_REGEX","UA_VALUE_ESCAPE_REGEX","UA_ESCAPE_CHAR","BYTE_LIMIT","encodeFeatures","userAgentMiddleware","userAgent","escapeUserAgent","defaultUserAgent","defaultUserAgentProvider","awsContext","prefix","sdkUserAgentValue","normalUAValue","section","userAgentPair","prefixSeparatorIndex","uaName","getUserAgentMiddlewareOptions","getUserAgentPlugin","validRegions","checkRegion","check","isFipsRegion","getRealRegion","resolveRegionConfig","providedRegion","realRegion","CONTENT_LENGTH_HEADER","contentLengthMiddleware","bodyLengthChecker","contentLengthMiddlewareOptions","getContentLengthPlugin","resolveParamsForS3","bucket","Bucket","isArnBucketName","ForcePathStyle","isDnsCompatibleBucketName","Endpoint","DisableMultiRegionAccessPoints","disableMultiRegionAccessPoints","DisableMRAP","DOMAIN_PATTERN","IP_ADDRESS_PATTERN","DOTS_PATTERN","bucketName","isArn","isValidArn","createConfigValueProvider","configKey","canonicalEndpointParamKey","configProvider","configValue","CredentialScope","AccountId","isCustomEndpoint","ENV_ENDPOINT_URL","CONFIG_ENDPOINT_URL","getEndpointUrlConfig","serviceSuffixParts","w","serviceEndpointUrl","services","servicesSection","CONFIG_PREFIX_SEPARATOR","servicePrefixParts","getEndpointFromConfig","loadConfig","toEndpointV1","parseUrl","getEndpointFromInstructions","commandInput","instructionsSupplier","endpointFromConfig","serviceConfiguredEndpoint","resolveParams","endpointProvider","instructions","instruction","endpointMiddleware","signing_region","signing_service","endpointMiddlewareOptions","getEndpointPlugin","resolveEndpointConfig","tls","customEndpointProvider","configuredEndpointPromise","RETRY_MODES","DEFAULT_MAX_ATTEMPTS","DEFAULT_RETRY_MODE","STANDARD","THROTTLING_ERROR_CODES","TRANSIENT_ERROR_CODES","TRANSIENT_ERROR_STATUS_CODES","NODEJS_TIMEOUT_ERROR_CODES","NODEJS_NETWORK_ERROR_CODES","isRetryableByTrait","isClockSkewCorrectedError","isBrowserNetworkError","errorMessages","isValid","TypeError","isThrottlingError","throttling","isTransientError","depth","cause","isServerError","DefaultRateLimiter","setTimeoutFn","setTimeout","beta","minCapacity","minFillRate","scaleConstant","smooth","currentCapacity","enabled","lastMaxRate","measuredTxRate","requestCount","fillRate","lastThrottleTime","lastTimestamp","lastTxRateBucket","maxCapacity","timeWindow","currentTimeInSeconds","getCurrentTimeInSeconds","floor","getSendToken","acquireTokenBucket","amount","refillTokenBucket","delay","timestamp","fillAmount","min","updateClientSendingRate","calculatedRate","updateMeasuredRate","rateToUse","calculateTimeWindow","cubicThrottle","enableTokenBucket","cubicSuccess","newRate","updateTokenBucketRate","getPrecise","pow","max","t","timeBucket","currentRate","num","parseFloat","toFixed","DEFAULT_RETRY_DELAY_BASE","MAXIMUM_RETRY_DELAY","THROTTLING_RETRY_DELAY_BASE","INITIAL_RETRY_TOKENS","RETRY_COST","TIMEOUT_RETRY_COST","NO_RETRY_INCREMENT","INVOCATION_ID_HEADER","REQUEST_HEADER","getDefaultRetryBackoffStrategy","delayBase","computeNextBackoffDelay","attempts","random","setDelayBase","createDefaultRetryToken","retryDelay","retryCount","retryCost","getRetryCount","getRetryDelay","getRetryCost","StandardRetryStrategy","maxAttempts","retryBackoffStrategy","maxAttemptsProvider","retryTokenScope","refreshRetryTokenForRetry","token","errorInfo","getMaxAttempts","shouldRetry","errorType","delayFromErrorType","retryAfterHint","capacityCost","getCapacityCost","recordSuccess","getCapacity","tokenToRenew","isRetryableError","AdaptiveRetryStrategy","rateLimiter","standardRetryStrategy","ADAPTIVE","ENV_MAX_ATTEMPTS","CONFIG_MAX_ATTEMPTS","NODE_MAX_ATTEMPT_CONFIG_OPTIONS","maxAttempt","resolveRetryConfig","_retryMode","_maxAttempts","ENV_RETRY_MODE","CONFIG_RETRY_MODE","NODE_RETRY_MODE_CONFIG_OPTIONS","isStreamingPayload","Readable","ReadableStream","asSdkError","retryMiddleware","isRetryStrategyV2","retryToken","lastError","totalRetryDelay","isRequest","retryErrorInfo","getRetryErrorInfo","refreshError","retry","getRetryErrorType","getRetryAfterHint","retryMiddlewareOptions","getRetryPlugin","retryAfterHeaderName","retryAfter","retryAfterSeconds","retryAfterDate","booleanSelector","SelectorType","ENV_USE_DUALSTACK_ENDPOINT","CONFIG_USE_DUALSTACK_ENDPOINT","NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS","ENV","CONFIG","ENV_USE_FIPS_ENDPOINT","CONFIG_USE_FIPS_ENDPOINT","NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS","REGION_ENV_NAME","REGION_INI_NAME","NODE_REGION_CONFIG_OPTIONS","NODE_REGION_CONFIG_FILE_OPTIONS","preferredFile","isCrtAvailable","createDefaultUserAgentProvider","clientVersion","sections","platform","release","versions","node","crtAvailable","AWS_EXECUTION_ENV","resolvedUserAgent","UA_APP_ID_ENV_NAME","UA_APP_ID_INI_NAME","UA_APP_ID_INI_NAME_DEPRECATED","NODE_APP_ID_CONFIG_OPTIONS","Hash","reset","toHash","castSourceData","createHmac","createHash","toCast","Buffer","isBuffer","fromArrayBuffer","calculateBodyLength","end","ReadStream","lstatSync","fd","fstatSync","AWS_REGION_ENV","AWS_DEFAULT_REGION_ENV","ENV_IMDS_DISABLED","DEFAULTS_MODE_OPTIONS","IMDS_REGION_PATH","AWS_DEFAULTS_MODE_ENV","AWS_DEFAULTS_MODE_CONFIG","NODE_DEFAULTS_MODE_CONFIG_OPTIONS","resolveDefaultsModeConfig","defaultsMode","memoize","resolveNodeDefaultsModeAuto","toLocaleLowerCase","clientRegion","resolvedRegion","inferredRegion","inferPhysicalRegion","getInstanceMetadataEndpoint","getAwsRegionExtensionConfiguration","setRegion","resolveAwsRegionExtensionConfiguration","awsRegionExtensionConfiguration"],"mappings":"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","file":"YHGTF22I.cjs","sourcesContent":["import { constructStack } from \"@smithy/middleware-stack\";\nexport class Client {\n config;\n middlewareStack = constructStack();\n initConfig;\n handlers;\n constructor(config) {\n this.config = config;\n }\n send(command, optionsOrCb, cb) {\n const options = typeof optionsOrCb !== \"function\" ? optionsOrCb : undefined;\n const callback = typeof optionsOrCb === \"function\" ? optionsOrCb : cb;\n const useHandlerCache = options === undefined && this.config.cacheMiddleware === true;\n let handler;\n if (useHandlerCache) {\n if (!this.handlers) {\n this.handlers = new WeakMap();\n }\n const handlers = this.handlers;\n if (handlers.has(command.constructor)) {\n handler = handlers.get(command.constructor);\n }\n else {\n handler = command.resolveMiddleware(this.middlewareStack, this.config, options);\n handlers.set(command.constructor, handler);\n }\n }\n else {\n delete this.handlers;\n handler = command.resolveMiddleware(this.middlewareStack, this.config, options);\n }\n if (callback) {\n handler(command)\n .then((result) => callback(null, result.output), (err) => callback(err))\n .catch(() => { });\n }\n else {\n return handler(command).then((result) => result.output);\n }\n }\n destroy() {\n this.config?.requestHandler?.destroy?.();\n delete this.handlers;\n }\n}\n","const getAllAliases = (name, aliases) => {\n const _aliases = [];\n if (name) {\n _aliases.push(name);\n }\n if (aliases) {\n for (const alias of aliases) {\n _aliases.push(alias);\n }\n }\n return _aliases;\n};\nconst getMiddlewareNameWithAliases = (name, aliases) => {\n return `${name || \"anonymous\"}${aliases && aliases.length > 0 ? ` (a.k.a. ${aliases.join(\",\")})` : \"\"}`;\n};\nexport const constructStack = () => {\n let absoluteEntries = [];\n let relativeEntries = [];\n let identifyOnResolve = false;\n const entriesNameSet = new Set();\n const sort = (entries) => entries.sort((a, b) => stepWeights[b.step] - stepWeights[a.step] ||\n priorityWeights[b.priority || \"normal\"] - priorityWeights[a.priority || \"normal\"]);\n const removeByName = (toRemove) => {\n let isRemoved = false;\n const filterCb = (entry) => {\n const aliases = getAllAliases(entry.name, entry.aliases);\n if (aliases.includes(toRemove)) {\n isRemoved = true;\n for (const alias of aliases) {\n entriesNameSet.delete(alias);\n }\n return false;\n }\n return true;\n };\n absoluteEntries = absoluteEntries.filter(filterCb);\n relativeEntries = relativeEntries.filter(filterCb);\n return isRemoved;\n };\n const removeByReference = (toRemove) => {\n let isRemoved = false;\n const filterCb = (entry) => {\n if (entry.middleware === toRemove) {\n isRemoved = true;\n for (const alias of getAllAliases(entry.name, entry.aliases)) {\n entriesNameSet.delete(alias);\n }\n return false;\n }\n return true;\n };\n absoluteEntries = absoluteEntries.filter(filterCb);\n relativeEntries = relativeEntries.filter(filterCb);\n return isRemoved;\n };\n const cloneTo = (toStack) => {\n absoluteEntries.forEach((entry) => {\n toStack.add(entry.middleware, { ...entry });\n });\n relativeEntries.forEach((entry) => {\n toStack.addRelativeTo(entry.middleware, { ...entry });\n });\n toStack.identifyOnResolve?.(stack.identifyOnResolve());\n return toStack;\n };\n const expandRelativeMiddlewareList = (from) => {\n const expandedMiddlewareList = [];\n from.before.forEach((entry) => {\n if (entry.before.length === 0 && entry.after.length === 0) {\n expandedMiddlewareList.push(entry);\n }\n else {\n expandedMiddlewareList.push(...expandRelativeMiddlewareList(entry));\n }\n });\n expandedMiddlewareList.push(from);\n from.after.reverse().forEach((entry) => {\n if (entry.before.length === 0 && entry.after.length === 0) {\n expandedMiddlewareList.push(entry);\n }\n else {\n expandedMiddlewareList.push(...expandRelativeMiddlewareList(entry));\n }\n });\n return expandedMiddlewareList;\n };\n const getMiddlewareList = (debug = false) => {\n const normalizedAbsoluteEntries = [];\n const normalizedRelativeEntries = [];\n const normalizedEntriesNameMap = {};\n absoluteEntries.forEach((entry) => {\n const normalizedEntry = {\n ...entry,\n before: [],\n after: [],\n };\n for (const alias of getAllAliases(normalizedEntry.name, normalizedEntry.aliases)) {\n normalizedEntriesNameMap[alias] = normalizedEntry;\n }\n normalizedAbsoluteEntries.push(normalizedEntry);\n });\n relativeEntries.forEach((entry) => {\n const normalizedEntry = {\n ...entry,\n before: [],\n after: [],\n };\n for (const alias of getAllAliases(normalizedEntry.name, normalizedEntry.aliases)) {\n normalizedEntriesNameMap[alias] = normalizedEntry;\n }\n normalizedRelativeEntries.push(normalizedEntry);\n });\n normalizedRelativeEntries.forEach((entry) => {\n if (entry.toMiddleware) {\n const toMiddleware = normalizedEntriesNameMap[entry.toMiddleware];\n if (toMiddleware === undefined) {\n if (debug) {\n return;\n }\n throw new Error(`${entry.toMiddleware} is not found when adding ` +\n `${getMiddlewareNameWithAliases(entry.name, entry.aliases)} ` +\n `middleware ${entry.relation} ${entry.toMiddleware}`);\n }\n if (entry.relation === \"after\") {\n toMiddleware.after.push(entry);\n }\n if (entry.relation === \"before\") {\n toMiddleware.before.push(entry);\n }\n }\n });\n const mainChain = sort(normalizedAbsoluteEntries)\n .map(expandRelativeMiddlewareList)\n .reduce((wholeList, expandedMiddlewareList) => {\n wholeList.push(...expandedMiddlewareList);\n return wholeList;\n }, []);\n return mainChain;\n };\n const stack = {\n add: (middleware, options = {}) => {\n const { name, override, aliases: _aliases } = options;\n const entry = {\n step: \"initialize\",\n priority: \"normal\",\n middleware,\n ...options,\n };\n const aliases = getAllAliases(name, _aliases);\n if (aliases.length > 0) {\n if (aliases.some((alias) => entriesNameSet.has(alias))) {\n if (!override)\n throw new Error(`Duplicate middleware name '${getMiddlewareNameWithAliases(name, _aliases)}'`);\n for (const alias of aliases) {\n const toOverrideIndex = absoluteEntries.findIndex((entry) => entry.name === alias || entry.aliases?.some((a) => a === alias));\n if (toOverrideIndex === -1) {\n continue;\n }\n const toOverride = absoluteEntries[toOverrideIndex];\n if (toOverride.step !== entry.step || entry.priority !== toOverride.priority) {\n throw new Error(`\"${getMiddlewareNameWithAliases(toOverride.name, toOverride.aliases)}\" middleware with ` +\n `${toOverride.priority} priority in ${toOverride.step} step cannot ` +\n `be overridden by \"${getMiddlewareNameWithAliases(name, _aliases)}\" middleware with ` +\n `${entry.priority} priority in ${entry.step} step.`);\n }\n absoluteEntries.splice(toOverrideIndex, 1);\n }\n }\n for (const alias of aliases) {\n entriesNameSet.add(alias);\n }\n }\n absoluteEntries.push(entry);\n },\n addRelativeTo: (middleware, options) => {\n const { name, override, aliases: _aliases } = options;\n const entry = {\n middleware,\n ...options,\n };\n const aliases = getAllAliases(name, _aliases);\n if (aliases.length > 0) {\n if (aliases.some((alias) => entriesNameSet.has(alias))) {\n if (!override)\n throw new Error(`Duplicate middleware name '${getMiddlewareNameWithAliases(name, _aliases)}'`);\n for (const alias of aliases) {\n const toOverrideIndex = relativeEntries.findIndex((entry) => entry.name === alias || entry.aliases?.some((a) => a === alias));\n if (toOverrideIndex === -1) {\n continue;\n }\n const toOverride = relativeEntries[toOverrideIndex];\n if (toOverride.toMiddleware !== entry.toMiddleware || toOverride.relation !== entry.relation) {\n throw new Error(`\"${getMiddlewareNameWithAliases(toOverride.name, toOverride.aliases)}\" middleware ` +\n `${toOverride.relation} \"${toOverride.toMiddleware}\" middleware cannot be overridden ` +\n `by \"${getMiddlewareNameWithAliases(name, _aliases)}\" middleware ${entry.relation} ` +\n `\"${entry.toMiddleware}\" middleware.`);\n }\n relativeEntries.splice(toOverrideIndex, 1);\n }\n }\n for (const alias of aliases) {\n entriesNameSet.add(alias);\n }\n }\n relativeEntries.push(entry);\n },\n clone: () => cloneTo(constructStack()),\n use: (plugin) => {\n plugin.applyToStack(stack);\n },\n remove: (toRemove) => {\n if (typeof toRemove === \"string\")\n return removeByName(toRemove);\n else\n return removeByReference(toRemove);\n },\n removeByTag: (toRemove) => {\n let isRemoved = false;\n const filterCb = (entry) => {\n const { tags, name, aliases: _aliases } = entry;\n if (tags && tags.includes(toRemove)) {\n const aliases = getAllAliases(name, _aliases);\n for (const alias of aliases) {\n entriesNameSet.delete(alias);\n }\n isRemoved = true;\n return false;\n }\n return true;\n };\n absoluteEntries = absoluteEntries.filter(filterCb);\n relativeEntries = relativeEntries.filter(filterCb);\n return isRemoved;\n },\n concat: (from) => {\n const cloned = cloneTo(constructStack());\n cloned.use(from);\n cloned.identifyOnResolve(identifyOnResolve || cloned.identifyOnResolve() || (from.identifyOnResolve?.() ?? false));\n return cloned;\n },\n applyToStack: cloneTo,\n identify: () => {\n return getMiddlewareList(true).map((mw) => {\n const step = mw.step ??\n mw.relation +\n \" \" +\n mw.toMiddleware;\n return getMiddlewareNameWithAliases(mw.name, mw.aliases) + \" - \" + step;\n });\n },\n identifyOnResolve(toggle) {\n if (typeof toggle === \"boolean\")\n identifyOnResolve = toggle;\n return identifyOnResolve;\n },\n resolve: (handler, context) => {\n for (const middleware of getMiddlewareList()\n .map((entry) => entry.middleware)\n .reverse()) {\n handler = middleware(handler, context);\n }\n if (identifyOnResolve) {\n console.log(stack.identify());\n }\n return handler;\n },\n };\n return stack;\n};\nconst stepWeights = {\n initialize: 5,\n serialize: 4,\n build: 3,\n finalizeRequest: 2,\n deserialize: 1,\n};\nconst priorityWeights = {\n high: 3,\n normal: 2,\n low: 1,\n};\n","import { constructStack } from \"@smithy/middleware-stack\";\nimport { SMITHY_CONTEXT_KEY } from \"@smithy/types\";\nimport { schemaLogFilter } from \"./schemaLogFilter\";\nexport class Command {\n middlewareStack = constructStack();\n schema;\n static classBuilder() {\n return new ClassBuilder();\n }\n resolveMiddlewareWithContext(clientStack, configuration, options, { middlewareFn, clientName, commandName, inputFilterSensitiveLog, outputFilterSensitiveLog, smithyContext, additionalContext, CommandCtor, }) {\n for (const mw of middlewareFn.bind(this)(CommandCtor, clientStack, configuration, options)) {\n this.middlewareStack.use(mw);\n }\n const stack = clientStack.concat(this.middlewareStack);\n const { logger } = configuration;\n const handlerExecutionContext = {\n logger,\n clientName,\n commandName,\n inputFilterSensitiveLog,\n outputFilterSensitiveLog,\n [SMITHY_CONTEXT_KEY]: {\n commandInstance: this,\n ...smithyContext,\n },\n ...additionalContext,\n };\n const { requestHandler } = configuration;\n return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext);\n }\n}\nclass ClassBuilder {\n _init = () => { };\n _ep = {};\n _middlewareFn = () => [];\n _commandName = \"\";\n _clientName = \"\";\n _additionalContext = {};\n _smithyContext = {};\n _inputFilterSensitiveLog = undefined;\n _outputFilterSensitiveLog = undefined;\n _serializer = null;\n _deserializer = null;\n _operationSchema;\n init(cb) {\n this._init = cb;\n }\n ep(endpointParameterInstructions) {\n this._ep = endpointParameterInstructions;\n return this;\n }\n m(middlewareSupplier) {\n this._middlewareFn = middlewareSupplier;\n return this;\n }\n s(service, operation, smithyContext = {}) {\n this._smithyContext = {\n service,\n operation,\n ...smithyContext,\n };\n return this;\n }\n c(additionalContext = {}) {\n this._additionalContext = additionalContext;\n return this;\n }\n n(clientName, commandName) {\n this._clientName = clientName;\n this._commandName = commandName;\n return this;\n }\n f(inputFilter = (_) => _, outputFilter = (_) => _) {\n this._inputFilterSensitiveLog = inputFilter;\n this._outputFilterSensitiveLog = outputFilter;\n return this;\n }\n ser(serializer) {\n this._serializer = serializer;\n return this;\n }\n de(deserializer) {\n this._deserializer = deserializer;\n return this;\n }\n sc(operation) {\n this._operationSchema = operation;\n this._smithyContext.operationSchema = operation;\n return this;\n }\n build() {\n const closure = this;\n let CommandRef;\n return (CommandRef = class extends Command {\n input;\n static getEndpointParameterInstructions() {\n return closure._ep;\n }\n constructor(...[input]) {\n super();\n this.input = input ?? {};\n closure._init(this);\n this.schema = closure._operationSchema;\n }\n resolveMiddleware(stack, configuration, options) {\n const op = closure._operationSchema;\n const input = op?.[4] ?? op?.input;\n const output = op?.[5] ?? op?.output;\n return this.resolveMiddlewareWithContext(stack, configuration, options, {\n CommandCtor: CommandRef,\n middlewareFn: closure._middlewareFn,\n clientName: closure._clientName,\n commandName: closure._commandName,\n inputFilterSensitiveLog: closure._inputFilterSensitiveLog ?? (op ? schemaLogFilter.bind(null, input) : (_) => _),\n outputFilterSensitiveLog: closure._outputFilterSensitiveLog ?? (op ? schemaLogFilter.bind(null, output) : (_) => _),\n smithyContext: closure._smithyContext,\n additionalContext: closure._additionalContext,\n });\n }\n serialize = closure._serializer;\n deserialize = closure._deserializer;\n });\n }\n}\n","export var EndpointURLScheme;\n(function (EndpointURLScheme) {\n EndpointURLScheme[\"HTTP\"] = \"http\";\n EndpointURLScheme[\"HTTPS\"] = \"https\";\n})(EndpointURLScheme || (EndpointURLScheme = {}));\n","export * from \"./defaultClientConfiguration\";\nexport * from \"./defaultExtensionConfiguration\";\nexport { AlgorithmId } from \"./checksum\";\n","export var AlgorithmId;\n(function (AlgorithmId) {\n AlgorithmId[\"MD5\"] = \"md5\";\n AlgorithmId[\"CRC32\"] = \"crc32\";\n AlgorithmId[\"CRC32C\"] = \"crc32c\";\n AlgorithmId[\"SHA1\"] = \"sha1\";\n AlgorithmId[\"SHA256\"] = \"sha256\";\n})(AlgorithmId || (AlgorithmId = {}));\nexport const getChecksumConfiguration = (runtimeConfig) => {\n const checksumAlgorithms = [];\n if (runtimeConfig.sha256 !== undefined) {\n checksumAlgorithms.push({\n algorithmId: () => AlgorithmId.SHA256,\n checksumConstructor: () => runtimeConfig.sha256,\n });\n }\n if (runtimeConfig.md5 != undefined) {\n checksumAlgorithms.push({\n algorithmId: () => AlgorithmId.MD5,\n checksumConstructor: () => runtimeConfig.md5,\n });\n }\n return {\n addChecksumAlgorithm(algo) {\n checksumAlgorithms.push(algo);\n },\n checksumAlgorithms() {\n return checksumAlgorithms;\n },\n };\n};\nexport const resolveChecksumRuntimeConfig = (clientConfig) => {\n const runtimeConfig = {};\n clientConfig.checksumAlgorithms().forEach((checksumAlgorithm) => {\n runtimeConfig[checksumAlgorithm.algorithmId()] = checksumAlgorithm.checksumConstructor();\n });\n return runtimeConfig;\n};\n","export const SMITHY_CONTEXT_KEY = \"__smithy_context\";\n","import { NormalizedSchema } from \"@smithy/core/schema\";\nconst SENSITIVE_STRING = \"***SensitiveInformation***\";\nexport function schemaLogFilter(schema, data) {\n if (data == null) {\n return data;\n }\n const ns = NormalizedSchema.of(schema);\n if (ns.getMergedTraits().sensitive) {\n return SENSITIVE_STRING;\n }\n if (ns.isListSchema()) {\n const isSensitive = !!ns.getValueSchema().getMergedTraits().sensitive;\n if (isSensitive) {\n return SENSITIVE_STRING;\n }\n }\n else if (ns.isMapSchema()) {\n const isSensitive = !!ns.getKeySchema().getMergedTraits().sensitive || !!ns.getValueSchema().getMergedTraits().sensitive;\n if (isSensitive) {\n return SENSITIVE_STRING;\n }\n }\n else if (ns.isStructSchema() && typeof data === \"object\") {\n const object = data;\n const newObject = {};\n for (const [member, memberNs] of ns.structIterator()) {\n if (object[member] != null) {\n newObject[member] = schemaLogFilter(memberNs, object[member]);\n }\n }\n return newObject;\n }\n return data;\n}\n","export const deref = (schemaRef) => {\n if (typeof schemaRef === \"function\") {\n return schemaRef();\n }\n return schemaRef;\n};\n","export const getHttpHandlerExtensionConfiguration = (runtimeConfig) => {\n return {\n setHttpHandler(handler) {\n runtimeConfig.httpHandler = handler;\n },\n httpHandler() {\n return runtimeConfig.httpHandler;\n },\n updateHttpClientConfig(key, value) {\n runtimeConfig.httpHandler?.updateHttpClientConfig(key, value);\n },\n httpHandlerConfigs() {\n return runtimeConfig.httpHandler.httpHandlerConfigs();\n },\n };\n};\nexport const resolveHttpHandlerRuntimeConfig = (httpHandlerExtensionConfiguration) => {\n return {\n httpHandler: httpHandlerExtensionConfiguration.httpHandler(),\n };\n};\n","import { SMITHY_CONTEXT_KEY } from \"@smithy/types\";\nexport const getSmithyContext = (context) => context[SMITHY_CONTEXT_KEY] || (context[SMITHY_CONTEXT_KEY] = {});\n","export const normalizeProvider = (input) => {\n if (typeof input === \"function\")\n return input;\n const promisified = Promise.resolve(input);\n return () => promisified;\n};\n","import { deref } from \"../deref\";\nimport { translateTraits } from \"./translateTraits\";\nexport class NormalizedSchema {\n ref;\n memberName;\n static symbol = Symbol.for(\"@smithy/nor\");\n symbol = NormalizedSchema.symbol;\n name;\n schema;\n _isMemberSchema;\n traits;\n memberTraits;\n normalizedTraits;\n constructor(ref, memberName) {\n this.ref = ref;\n this.memberName = memberName;\n const traitStack = [];\n let _ref = ref;\n let schema = ref;\n this._isMemberSchema = false;\n while (isMemberSchema(_ref)) {\n traitStack.push(_ref[1]);\n _ref = _ref[0];\n schema = deref(_ref);\n this._isMemberSchema = true;\n }\n if (traitStack.length > 0) {\n this.memberTraits = {};\n for (let i = traitStack.length - 1; i >= 0; --i) {\n const traitSet = traitStack[i];\n Object.assign(this.memberTraits, translateTraits(traitSet));\n }\n }\n else {\n this.memberTraits = 0;\n }\n if (schema instanceof NormalizedSchema) {\n const computedMemberTraits = this.memberTraits;\n Object.assign(this, schema);\n this.memberTraits = Object.assign({}, computedMemberTraits, schema.getMemberTraits(), this.getMemberTraits());\n this.normalizedTraits = void 0;\n this.memberName = memberName ?? schema.memberName;\n return;\n }\n this.schema = deref(schema);\n if (isStaticSchema(this.schema)) {\n this.name = `${this.schema[1]}#${this.schema[2]}`;\n this.traits = this.schema[3];\n }\n else {\n this.name = this.memberName ?? String(schema);\n this.traits = 0;\n }\n if (this._isMemberSchema && !memberName) {\n throw new Error(`@smithy/core/schema - NormalizedSchema member init ${this.getName(true)} missing member name.`);\n }\n }\n static [Symbol.hasInstance](lhs) {\n const isPrototype = this.prototype.isPrototypeOf(lhs);\n if (!isPrototype && typeof lhs === \"object\" && lhs !== null) {\n const ns = lhs;\n return ns.symbol === this.symbol;\n }\n return isPrototype;\n }\n static of(ref) {\n const sc = deref(ref);\n if (sc instanceof NormalizedSchema) {\n return sc;\n }\n if (isMemberSchema(sc)) {\n const [ns, traits] = sc;\n if (ns instanceof NormalizedSchema) {\n Object.assign(ns.getMergedTraits(), translateTraits(traits));\n return ns;\n }\n throw new Error(`@smithy/core/schema - may not init unwrapped member schema=${JSON.stringify(ref, null, 2)}.`);\n }\n return new NormalizedSchema(sc);\n }\n getSchema() {\n const sc = this.schema;\n if (sc[0] === 0) {\n return sc[4];\n }\n return sc;\n }\n getName(withNamespace = false) {\n const { name } = this;\n const short = !withNamespace && name && name.includes(\"#\");\n return short ? name.split(\"#\")[1] : name || undefined;\n }\n getMemberName() {\n return this.memberName;\n }\n isMemberSchema() {\n return this._isMemberSchema;\n }\n isListSchema() {\n const sc = this.getSchema();\n return typeof sc === \"number\"\n ? sc >= 64 && sc < 128\n : sc[0] === 1;\n }\n isMapSchema() {\n const sc = this.getSchema();\n return typeof sc === \"number\"\n ? sc >= 128 && sc <= 0b1111_1111\n : sc[0] === 2;\n }\n isStructSchema() {\n const sc = this.getSchema();\n return (sc[0] === 3 ||\n sc[0] === -3);\n }\n isBlobSchema() {\n const sc = this.getSchema();\n return sc === 21 || sc === 42;\n }\n isTimestampSchema() {\n const sc = this.getSchema();\n return (typeof sc === \"number\" &&\n sc >= 4 &&\n sc <= 7);\n }\n isUnitSchema() {\n return this.getSchema() === \"unit\";\n }\n isDocumentSchema() {\n return this.getSchema() === 15;\n }\n isStringSchema() {\n return this.getSchema() === 0;\n }\n isBooleanSchema() {\n return this.getSchema() === 2;\n }\n isNumericSchema() {\n return this.getSchema() === 1;\n }\n isBigIntegerSchema() {\n return this.getSchema() === 17;\n }\n isBigDecimalSchema() {\n return this.getSchema() === 19;\n }\n isStreaming() {\n const { streaming } = this.getMergedTraits();\n return !!streaming || this.getSchema() === 42;\n }\n isIdempotencyToken() {\n const match = (traits) => (traits & 0b0100) === 0b0100 ||\n !!traits?.idempotencyToken;\n const { normalizedTraits, traits, memberTraits } = this;\n return match(normalizedTraits) || match(traits) || match(memberTraits);\n }\n getMergedTraits() {\n return (this.normalizedTraits ??\n (this.normalizedTraits = {\n ...this.getOwnTraits(),\n ...this.getMemberTraits(),\n }));\n }\n getMemberTraits() {\n return translateTraits(this.memberTraits);\n }\n getOwnTraits() {\n return translateTraits(this.traits);\n }\n getKeySchema() {\n const [isDoc, isMap] = [this.isDocumentSchema(), this.isMapSchema()];\n if (!isDoc && !isMap) {\n throw new Error(`@smithy/core/schema - cannot get key for non-map: ${this.getName(true)}`);\n }\n const schema = this.getSchema();\n const memberSchema = isDoc\n ? 15\n : schema[4] ?? 0;\n return member([memberSchema, 0], \"key\");\n }\n getValueSchema() {\n const sc = this.getSchema();\n const [isDoc, isMap, isList] = [this.isDocumentSchema(), this.isMapSchema(), this.isListSchema()];\n const memberSchema = typeof sc === \"number\"\n ? 0b0011_1111 & sc\n : sc && typeof sc === \"object\" && (isMap || isList)\n ? sc[3 + sc[0]]\n : isDoc\n ? 15\n : void 0;\n if (memberSchema != null) {\n return member([memberSchema, 0], isMap ? \"value\" : \"member\");\n }\n throw new Error(`@smithy/core/schema - ${this.getName(true)} has no value member.`);\n }\n getMemberSchema(memberName) {\n const struct = this.getSchema();\n if (this.isStructSchema() && struct[4].includes(memberName)) {\n const i = struct[4].indexOf(memberName);\n const memberSchema = struct[5][i];\n return member(isMemberSchema(memberSchema) ? memberSchema : [memberSchema, 0], memberName);\n }\n if (this.isDocumentSchema()) {\n return member([15, 0], memberName);\n }\n throw new Error(`@smithy/core/schema - ${this.getName(true)} has no no member=${memberName}.`);\n }\n getMemberSchemas() {\n const buffer = {};\n try {\n for (const [k, v] of this.structIterator()) {\n buffer[k] = v;\n }\n }\n catch (ignored) { }\n return buffer;\n }\n getEventStreamMember() {\n if (this.isStructSchema()) {\n for (const [memberName, memberSchema] of this.structIterator()) {\n if (memberSchema.isStreaming() && memberSchema.isStructSchema()) {\n return memberName;\n }\n }\n }\n return \"\";\n }\n *structIterator() {\n if (this.isUnitSchema()) {\n return;\n }\n if (!this.isStructSchema()) {\n throw new Error(\"@smithy/core/schema - cannot iterate non-struct schema.\");\n }\n const struct = this.getSchema();\n for (let i = 0; i < struct[4].length; ++i) {\n yield [struct[4][i], member([struct[5][i], 0], struct[4][i])];\n }\n }\n}\nfunction member(memberSchema, memberName) {\n if (memberSchema instanceof NormalizedSchema) {\n return Object.assign(memberSchema, {\n memberName,\n _isMemberSchema: true,\n });\n }\n const internalCtorAccess = NormalizedSchema;\n return new internalCtorAccess(memberSchema, memberName);\n}\nconst isMemberSchema = (sc) => Array.isArray(sc) && sc.length === 2;\nexport const isStaticSchema = (sc) => Array.isArray(sc) && sc.length >= 5;\n","export function translateTraits(indicator) {\n if (typeof indicator === \"object\") {\n return indicator;\n }\n indicator = indicator | 0;\n const traits = {};\n let i = 0;\n for (const trait of [\n \"httpLabel\",\n \"idempotent\",\n \"idempotencyToken\",\n \"sensitive\",\n \"httpPayload\",\n \"httpResponseCode\",\n \"httpQueryParams\",\n ]) {\n if (((indicator >> i++) & 1) === 1) {\n traits[trait] = 1;\n }\n }\n return traits;\n}\n","import { HttpRequest } from \"@smithy/protocol-http\";\nexport function resolveHostHeaderConfig(input) {\n return input;\n}\nexport const hostHeaderMiddleware = (options) => (next) => async (args) => {\n if (!HttpRequest.isInstance(args.request))\n return next(args);\n const { request } = args;\n const { handlerProtocol = \"\" } = options.requestHandler.metadata || {};\n if (handlerProtocol.indexOf(\"h2\") >= 0 && !request.headers[\":authority\"]) {\n delete request.headers[\"host\"];\n request.headers[\":authority\"] = request.hostname + (request.port ? \":\" + request.port : \"\");\n }\n else if (!request.headers[\"host\"]) {\n let host = request.hostname;\n if (request.port != null)\n host += `:${request.port}`;\n request.headers[\"host\"] = host;\n }\n return next(args);\n};\nexport const hostHeaderMiddlewareOptions = {\n name: \"hostHeaderMiddleware\",\n step: \"build\",\n priority: \"low\",\n tags: [\"HOST\"],\n override: true,\n};\nexport const getHostHeaderPlugin = (options) => ({\n applyToStack: (clientStack) => {\n clientStack.add(hostHeaderMiddleware(options), hostHeaderMiddlewareOptions);\n },\n});\n","export const loggerMiddleware = () => (next, context) => async (args) => {\n try {\n const response = await next(args);\n const { clientName, commandName, logger, dynamoDbDocumentClientOptions = {} } = context;\n const { overrideInputFilterSensitiveLog, overrideOutputFilterSensitiveLog } = dynamoDbDocumentClientOptions;\n const inputFilterSensitiveLog = overrideInputFilterSensitiveLog ?? context.inputFilterSensitiveLog;\n const outputFilterSensitiveLog = overrideOutputFilterSensitiveLog ?? context.outputFilterSensitiveLog;\n const { $metadata, ...outputWithoutMetadata } = response.output;\n logger?.info?.({\n clientName,\n commandName,\n input: inputFilterSensitiveLog(args.input),\n output: outputFilterSensitiveLog(outputWithoutMetadata),\n metadata: $metadata,\n });\n return response;\n }\n catch (error) {\n const { clientName, commandName, logger, dynamoDbDocumentClientOptions = {} } = context;\n const { overrideInputFilterSensitiveLog } = dynamoDbDocumentClientOptions;\n const inputFilterSensitiveLog = overrideInputFilterSensitiveLog ?? context.inputFilterSensitiveLog;\n logger?.error?.({\n clientName,\n commandName,\n input: inputFilterSensitiveLog(args.input),\n error,\n metadata: error.$metadata,\n });\n throw error;\n }\n};\nexport const loggerMiddlewareOptions = {\n name: \"loggerMiddleware\",\n tags: [\"LOGGER\"],\n step: \"initialize\",\n override: true,\n};\nexport const getLoggerPlugin = (options) => ({\n applyToStack: (clientStack) => {\n clientStack.add(loggerMiddleware(), loggerMiddlewareOptions);\n },\n});\n","export * from \"./loggerMiddleware\";\n","import { HttpRequest } from \"@smithy/protocol-http\";\nconst TRACE_ID_HEADER_NAME = \"X-Amzn-Trace-Id\";\nconst ENV_LAMBDA_FUNCTION_NAME = \"AWS_LAMBDA_FUNCTION_NAME\";\nconst ENV_TRACE_ID = \"_X_AMZN_TRACE_ID\";\nexport const recursionDetectionMiddleware = (options) => (next) => async (args) => {\n const { request } = args;\n if (!HttpRequest.isInstance(request) || options.runtime !== \"node\") {\n return next(args);\n }\n const traceIdHeader = Object.keys(request.headers ?? {}).find((h) => h.toLowerCase() === TRACE_ID_HEADER_NAME.toLowerCase()) ??\n TRACE_ID_HEADER_NAME;\n if (request.headers.hasOwnProperty(traceIdHeader)) {\n return next(args);\n }\n const functionName = process.env[ENV_LAMBDA_FUNCTION_NAME];\n const traceId = process.env[ENV_TRACE_ID];\n const nonEmptyString = (str) => typeof str === \"string\" && str.length > 0;\n if (nonEmptyString(functionName) && nonEmptyString(traceId)) {\n request.headers[TRACE_ID_HEADER_NAME] = traceId;\n }\n return next({\n ...args,\n request,\n });\n};\nexport const addRecursionDetectionMiddlewareOptions = {\n step: \"build\",\n tags: [\"RECURSION_DETECTION\"],\n name: \"recursionDetectionMiddleware\",\n override: true,\n priority: \"low\",\n};\nexport const getRecursionDetectionPlugin = (options) => ({\n applyToStack: (clientStack) => {\n clientStack.add(recursionDetectionMiddleware(options), addRecursionDetectionMiddlewareOptions);\n },\n});\n","import { httpAuthSchemeMiddleware } from \"./httpAuthSchemeMiddleware\";\nexport const httpAuthSchemeEndpointRuleSetMiddlewareOptions = {\n step: \"serialize\",\n tags: [\"HTTP_AUTH_SCHEME\"],\n name: \"httpAuthSchemeMiddleware\",\n override: true,\n relation: \"before\",\n toMiddleware: \"endpointV2Middleware\",\n};\nexport const getHttpAuthSchemeEndpointRuleSetPlugin = (config, { httpAuthSchemeParametersProvider, identityProviderConfigProvider, }) => ({\n applyToStack: (clientStack) => {\n clientStack.addRelativeTo(httpAuthSchemeMiddleware(config, {\n httpAuthSchemeParametersProvider,\n identityProviderConfigProvider,\n }), httpAuthSchemeEndpointRuleSetMiddlewareOptions);\n },\n});\n","import { getSmithyContext } from \"@smithy/util-middleware\";\nimport { resolveAuthOptions } from \"./resolveAuthOptions\";\nfunction convertHttpAuthSchemesToMap(httpAuthSchemes) {\n const map = new Map();\n for (const scheme of httpAuthSchemes) {\n map.set(scheme.schemeId, scheme);\n }\n return map;\n}\nexport const httpAuthSchemeMiddleware = (config, mwOptions) => (next, context) => async (args) => {\n const options = config.httpAuthSchemeProvider(await mwOptions.httpAuthSchemeParametersProvider(config, context, args.input));\n const authSchemePreference = config.authSchemePreference ? await config.authSchemePreference() : [];\n const resolvedOptions = resolveAuthOptions(options, authSchemePreference);\n const authSchemes = convertHttpAuthSchemesToMap(config.httpAuthSchemes);\n const smithyContext = getSmithyContext(context);\n const failureReasons = [];\n for (const option of resolvedOptions) {\n const scheme = authSchemes.get(option.schemeId);\n if (!scheme) {\n failureReasons.push(`HttpAuthScheme \\`${option.schemeId}\\` was not enabled for this service.`);\n continue;\n }\n const identityProvider = scheme.identityProvider(await mwOptions.identityProviderConfigProvider(config));\n if (!identityProvider) {\n failureReasons.push(`HttpAuthScheme \\`${option.schemeId}\\` did not have an IdentityProvider configured.`);\n continue;\n }\n const { identityProperties = {}, signingProperties = {} } = option.propertiesExtractor?.(config, context) || {};\n option.identityProperties = Object.assign(option.identityProperties || {}, identityProperties);\n option.signingProperties = Object.assign(option.signingProperties || {}, signingProperties);\n smithyContext.selectedHttpAuthScheme = {\n httpAuthOption: option,\n identity: await identityProvider(option.identityProperties),\n signer: scheme.signer,\n };\n break;\n }\n if (!smithyContext.selectedHttpAuthScheme) {\n throw new Error(failureReasons.join(\"\\n\"));\n }\n return next(args);\n};\n","export const resolveAuthOptions = (candidateAuthOptions, authSchemePreference) => {\n if (!authSchemePreference || authSchemePreference.length === 0) {\n return candidateAuthOptions;\n }\n const preferredAuthOptions = [];\n for (const preferredSchemeName of authSchemePreference) {\n for (const candidateAuthOption of candidateAuthOptions) {\n const candidateAuthSchemeName = candidateAuthOption.schemeId.split(\"#\")[1];\n if (candidateAuthSchemeName === preferredSchemeName) {\n preferredAuthOptions.push(candidateAuthOption);\n }\n }\n }\n for (const candidateAuthOption of candidateAuthOptions) {\n if (!preferredAuthOptions.find(({ schemeId }) => schemeId === candidateAuthOption.schemeId)) {\n preferredAuthOptions.push(candidateAuthOption);\n }\n }\n return preferredAuthOptions;\n};\n","import { deserializerMiddleware } from \"./deserializerMiddleware\";\nimport { serializerMiddleware } from \"./serializerMiddleware\";\nexport const deserializerMiddlewareOption = {\n name: \"deserializerMiddleware\",\n step: \"deserialize\",\n tags: [\"DESERIALIZER\"],\n override: true,\n};\nexport const serializerMiddlewareOption = {\n name: \"serializerMiddleware\",\n step: \"serialize\",\n tags: [\"SERIALIZER\"],\n override: true,\n};\nexport function getSerdePlugin(config, serializer, deserializer) {\n return {\n applyToStack: (commandStack) => {\n commandStack.add(deserializerMiddleware(config, deserializer), deserializerMiddlewareOption);\n commandStack.add(serializerMiddleware(config, serializer), serializerMiddlewareOption);\n },\n };\n}\n","import { HttpResponse } from \"@smithy/protocol-http\";\nexport const deserializerMiddleware = (options, deserializer) => (next, context) => async (args) => {\n const { response } = await next(args);\n try {\n const parsed = await deserializer(response, options);\n return {\n response,\n output: parsed,\n };\n }\n catch (error) {\n Object.defineProperty(error, \"$response\", {\n value: response,\n enumerable: false,\n writable: false,\n configurable: false,\n });\n if (!(\"$metadata\" in error)) {\n const hint = `Deserialization error: to see the raw response, inspect the hidden field {error}.$response on this object.`;\n try {\n error.message += \"\\n \" + hint;\n }\n catch (e) {\n if (!context.logger || context.logger?.constructor?.name === \"NoOpLogger\") {\n console.warn(hint);\n }\n else {\n context.logger?.warn?.(hint);\n }\n }\n if (typeof error.$responseBodyText !== \"undefined\") {\n if (error.$response) {\n error.$response.body = error.$responseBodyText;\n }\n }\n try {\n if (HttpResponse.isInstance(response)) {\n const { headers = {} } = response;\n const headerEntries = Object.entries(headers);\n error.$metadata = {\n httpStatusCode: response.statusCode,\n requestId: findHeader(/^x-[\\w-]+-request-?id$/, headerEntries),\n extendedRequestId: findHeader(/^x-[\\w-]+-id-2$/, headerEntries),\n cfId: findHeader(/^x-[\\w-]+-cf-id$/, headerEntries),\n };\n }\n }\n catch (e) {\n }\n }\n throw error;\n }\n};\nconst findHeader = (pattern, headers) => {\n return (headers.find(([k]) => {\n return k.match(pattern);\n }) || [void 0, void 1])[1];\n};\n","export const serializerMiddleware = (options, serializer) => (next, context) => async (args) => {\n const endpointConfig = options;\n const endpoint = context.endpointV2?.url && endpointConfig.urlParser\n ? async () => endpointConfig.urlParser(context.endpointV2.url)\n : endpointConfig.endpoint;\n if (!endpoint) {\n throw new Error(\"No valid endpoint provider available.\");\n }\n const request = await serializer(args.input, { ...options, endpoint });\n return next({\n ...args,\n request,\n });\n};\n","import { httpSigningMiddleware } from \"./httpSigningMiddleware\";\nexport const httpSigningMiddlewareOptions = {\n step: \"finalizeRequest\",\n tags: [\"HTTP_SIGNING\"],\n name: \"httpSigningMiddleware\",\n aliases: [\"apiKeyMiddleware\", \"tokenMiddleware\", \"awsAuthMiddleware\"],\n override: true,\n relation: \"after\",\n toMiddleware: \"retryMiddleware\",\n};\nexport const getHttpSigningPlugin = (config) => ({\n applyToStack: (clientStack) => {\n clientStack.addRelativeTo(httpSigningMiddleware(config), httpSigningMiddlewareOptions);\n },\n});\n","import { HttpRequest } from \"@smithy/protocol-http\";\nimport { getSmithyContext } from \"@smithy/util-middleware\";\nconst defaultErrorHandler = (signingProperties) => (error) => {\n throw error;\n};\nconst defaultSuccessHandler = (httpResponse, signingProperties) => { };\nexport const httpSigningMiddleware = (config) => (next, context) => async (args) => {\n if (!HttpRequest.isInstance(args.request)) {\n return next(args);\n }\n const smithyContext = getSmithyContext(context);\n const scheme = smithyContext.selectedHttpAuthScheme;\n if (!scheme) {\n throw new Error(`No HttpAuthScheme was selected: unable to sign request`);\n }\n const { httpAuthOption: { signingProperties = {} }, identity, signer, } = scheme;\n const output = await next({\n ...args,\n request: await signer.sign(args.request, identity, signingProperties),\n }).catch((signer.errorHandler || defaultErrorHandler)(signingProperties));\n (signer.successHandler || defaultSuccessHandler)(output.response, signingProperties);\n return output;\n};\n","export class DefaultIdentityProviderConfig {\n authSchemes = new Map();\n constructor(config) {\n for (const [key, value] of Object.entries(config)) {\n if (value !== undefined) {\n this.authSchemes.set(key, value);\n }\n }\n }\n getIdentityProvider(schemeId) {\n return this.authSchemes.get(schemeId);\n }\n}\n","import { normalizeProvider } from \"@smithy/core\";\nexport const DEFAULT_UA_APP_ID = undefined;\nfunction isValidUserAgentAppId(appId) {\n if (appId === undefined) {\n return true;\n }\n return typeof appId === \"string\" && appId.length <= 50;\n}\nexport function resolveUserAgentConfig(input) {\n const normalizedAppIdProvider = normalizeProvider(input.userAgentAppId ?? DEFAULT_UA_APP_ID);\n const { customUserAgent } = input;\n return Object.assign(input, {\n customUserAgent: typeof customUserAgent === \"string\" ? [[customUserAgent]] : customUserAgent,\n userAgentAppId: async () => {\n const appId = await normalizedAppIdProvider();\n if (!isValidUserAgentAppId(appId)) {\n const logger = input.logger?.constructor?.name === \"NoOpLogger\" || !input.logger ? console : input.logger;\n if (typeof appId !== \"string\") {\n logger?.warn(\"userAgentAppId must be a string or undefined.\");\n }\n else if (appId.length > 50) {\n logger?.warn(\"The provided userAgentAppId exceeds the maximum length of 50 characters.\");\n }\n }\n return appId;\n },\n });\n}\n","export const normalizeProvider = (input) => {\n if (typeof input === \"function\")\n return input;\n const promisified = Promise.resolve(input);\n return () => promisified;\n};\n","import { Uint8ArrayBlobAdapter } from \"@smithy/util-stream\";\nexport const collectBody = async (streamBody = new Uint8Array(), context) => {\n if (streamBody instanceof Uint8Array) {\n return Uint8ArrayBlobAdapter.mutate(streamBody);\n }\n if (!streamBody) {\n return Uint8ArrayBlobAdapter.mutate(new Uint8Array());\n }\n const fromContext = context.streamCollector(streamBody);\n return Uint8ArrayBlobAdapter.mutate(await fromContext);\n};\n","import { fromBase64, toBase64 } from \"@smithy/util-base64\";\nimport { fromUtf8, toUtf8 } from \"@smithy/util-utf8\";\nexport class Uint8ArrayBlobAdapter extends Uint8Array {\n static fromString(source, encoding = \"utf-8\") {\n if (typeof source === \"string\") {\n if (encoding === \"base64\") {\n return Uint8ArrayBlobAdapter.mutate(fromBase64(source));\n }\n return Uint8ArrayBlobAdapter.mutate(fromUtf8(source));\n }\n throw new Error(`Unsupported conversion from ${typeof source} to Uint8ArrayBlobAdapter.`);\n }\n static mutate(source) {\n Object.setPrototypeOf(source, Uint8ArrayBlobAdapter.prototype);\n return source;\n }\n transformToString(encoding = \"utf-8\") {\n if (encoding === \"base64\") {\n return toBase64(this);\n }\n return toUtf8(this);\n }\n}\n","import { fromUtf8 } from \"./fromUtf8\";\nexport const toUint8Array = (data) => {\n if (typeof data === \"string\") {\n return fromUtf8(data);\n }\n if (ArrayBuffer.isView(data)) {\n return new Uint8Array(data.buffer, data.byteOffset, data.byteLength / Uint8Array.BYTES_PER_ELEMENT);\n }\n return new Uint8Array(data);\n};\n","import { randomUUID } from \"./randomUUID\";\nconst decimalToHex = Array.from({ length: 256 }, (_, i) => i.toString(16).padStart(2, \"0\"));\nexport const v4 = () => {\n if (randomUUID) {\n return randomUUID();\n }\n const rnds = new Uint8Array(16);\n crypto.getRandomValues(rnds);\n rnds[6] = (rnds[6] & 0x0f) | 0x40;\n rnds[8] = (rnds[8] & 0x3f) | 0x80;\n return (decimalToHex[rnds[0]] +\n decimalToHex[rnds[1]] +\n decimalToHex[rnds[2]] +\n decimalToHex[rnds[3]] +\n \"-\" +\n decimalToHex[rnds[4]] +\n decimalToHex[rnds[5]] +\n \"-\" +\n decimalToHex[rnds[6]] +\n decimalToHex[rnds[7]] +\n \"-\" +\n decimalToHex[rnds[8]] +\n decimalToHex[rnds[9]] +\n \"-\" +\n decimalToHex[rnds[10]] +\n decimalToHex[rnds[11]] +\n decimalToHex[rnds[12]] +\n decimalToHex[rnds[13]] +\n decimalToHex[rnds[14]] +\n decimalToHex[rnds[15]]);\n};\n","import crypto from \"crypto\";\nexport const randomUUID = crypto.randomUUID.bind(crypto);\n","export function setFeature(context, feature, value) {\n if (!context.__smithy_context) {\n context.__smithy_context = {\n features: {},\n };\n }\n else if (!context.__smithy_context.features) {\n context.__smithy_context.features = {};\n }\n context.__smithy_context.features[feature] = value;\n}\n","export const createIsIdentityExpiredFunction = (expirationMs) => function isIdentityExpired(identity) {\n return doesIdentityRequireRefresh(identity) && identity.expiration.getTime() - Date.now() < expirationMs;\n};\nexport const EXPIRATION_MS = 300_000;\nexport const isIdentityExpired = createIsIdentityExpiredFunction(EXPIRATION_MS);\nexport const doesIdentityRequireRefresh = (identity) => identity.expiration !== undefined;\nexport const memoizeIdentityProvider = (provider, isExpired, requiresRefresh) => {\n if (provider === undefined) {\n return undefined;\n }\n const normalizedProvider = typeof provider !== \"function\" ? async () => Promise.resolve(provider) : provider;\n let resolved;\n let pending;\n let hasResult;\n let isConstant = false;\n const coalesceProvider = async (options) => {\n if (!pending) {\n pending = normalizedProvider(options);\n }\n try {\n resolved = await pending;\n hasResult = true;\n isConstant = false;\n }\n finally {\n pending = undefined;\n }\n return resolved;\n };\n if (isExpired === undefined) {\n return async (options) => {\n if (!hasResult || options?.forceRefresh) {\n resolved = await coalesceProvider(options);\n }\n return resolved;\n };\n }\n return async (options) => {\n if (!hasResult || options?.forceRefresh) {\n resolved = await coalesceProvider(options);\n }\n if (isConstant) {\n return resolved;\n }\n if (!requiresRefresh(resolved)) {\n isConstant = true;\n return resolved;\n }\n if (isExpired(resolved)) {\n await coalesceProvider(options);\n return resolved;\n }\n return resolved;\n };\n};\n","export class ServiceException extends Error {\n $fault;\n $response;\n $retryable;\n $metadata;\n constructor(options) {\n super(options.message);\n Object.setPrototypeOf(this, Object.getPrototypeOf(this).constructor.prototype);\n this.name = options.name;\n this.$fault = options.$fault;\n this.$metadata = options.$metadata;\n }\n static isInstance(value) {\n if (!value)\n return false;\n const candidate = value;\n return (ServiceException.prototype.isPrototypeOf(candidate) ||\n (Boolean(candidate.$fault) &&\n Boolean(candidate.$metadata) &&\n (candidate.$fault === \"client\" || candidate.$fault === \"server\")));\n }\n static [Symbol.hasInstance](instance) {\n if (!instance)\n return false;\n const candidate = instance;\n if (this === ServiceException) {\n return ServiceException.isInstance(instance);\n }\n if (ServiceException.isInstance(instance)) {\n if (candidate.name && this.name) {\n return this.prototype.isPrototypeOf(instance) || candidate.name === this.name;\n }\n return this.prototype.isPrototypeOf(instance);\n }\n return false;\n }\n}\nexport const decorateServiceException = (exception, additions = {}) => {\n Object.entries(additions)\n .filter(([, v]) => v !== undefined)\n .forEach(([k, v]) => {\n if (exception[k] == undefined || exception[k] === \"\") {\n exception[k] = v;\n }\n });\n const message = exception.message || exception.Message || \"UnknownError\";\n exception.message = message;\n delete exception.Message;\n return exception;\n};\n","import { getUserAgentPrefix } from \"@aws-sdk/util-endpoints\";\nimport { HttpRequest } from \"@smithy/protocol-http\";\nimport { checkFeatures } from \"./check-features\";\nimport { SPACE, UA_ESCAPE_CHAR, UA_NAME_ESCAPE_REGEX, UA_NAME_SEPARATOR, UA_VALUE_ESCAPE_REGEX, USER_AGENT, X_AMZ_USER_AGENT, } from \"./constants\";\nimport { encodeFeatures } from \"./encode-features\";\nexport const userAgentMiddleware = (options) => (next, context) => async (args) => {\n const { request } = args;\n if (!HttpRequest.isInstance(request)) {\n return next(args);\n }\n const { headers } = request;\n const userAgent = context?.userAgent?.map(escapeUserAgent) || [];\n const defaultUserAgent = (await options.defaultUserAgentProvider()).map(escapeUserAgent);\n await checkFeatures(context, options, args);\n const awsContext = context;\n defaultUserAgent.push(`m/${encodeFeatures(Object.assign({}, context.__smithy_context?.features, awsContext.__aws_sdk_context?.features))}`);\n const customUserAgent = options?.customUserAgent?.map(escapeUserAgent) || [];\n const appId = await options.userAgentAppId();\n if (appId) {\n defaultUserAgent.push(escapeUserAgent([`app/${appId}`]));\n }\n const prefix = getUserAgentPrefix();\n const sdkUserAgentValue = (prefix ? [prefix] : [])\n .concat([...defaultUserAgent, ...userAgent, ...customUserAgent])\n .join(SPACE);\n const normalUAValue = [\n ...defaultUserAgent.filter((section) => section.startsWith(\"aws-sdk-\")),\n ...customUserAgent,\n ].join(SPACE);\n if (options.runtime !== \"browser\") {\n if (normalUAValue) {\n headers[X_AMZ_USER_AGENT] = headers[X_AMZ_USER_AGENT]\n ? `${headers[USER_AGENT]} ${normalUAValue}`\n : normalUAValue;\n }\n headers[USER_AGENT] = sdkUserAgentValue;\n }\n else {\n headers[X_AMZ_USER_AGENT] = sdkUserAgentValue;\n }\n return next({\n ...args,\n request,\n });\n};\nconst escapeUserAgent = (userAgentPair) => {\n const name = userAgentPair[0]\n .split(UA_NAME_SEPARATOR)\n .map((part) => part.replace(UA_NAME_ESCAPE_REGEX, UA_ESCAPE_CHAR))\n .join(UA_NAME_SEPARATOR);\n const version = userAgentPair[1]?.replace(UA_VALUE_ESCAPE_REGEX, UA_ESCAPE_CHAR);\n const prefixSeparatorIndex = name.indexOf(UA_NAME_SEPARATOR);\n const prefix = name.substring(0, prefixSeparatorIndex);\n let uaName = name.substring(prefixSeparatorIndex + 1);\n if (prefix === \"api\") {\n uaName = uaName.toLowerCase();\n }\n return [prefix, uaName, version]\n .filter((item) => item && item.length > 0)\n .reduce((acc, item, index) => {\n switch (index) {\n case 0:\n return item;\n case 1:\n return `${acc}/${item}`;\n default:\n return `${acc}#${item}`;\n }\n }, \"\");\n};\nexport const getUserAgentMiddlewareOptions = {\n name: \"getUserAgentMiddleware\",\n step: \"build\",\n priority: \"low\",\n tags: [\"SET_USER_AGENT\", \"USER_AGENT\"],\n override: true,\n};\nexport const getUserAgentPlugin = (config) => ({\n applyToStack: (clientStack) => {\n clientStack.add(userAgentMiddleware(config), getUserAgentMiddlewareOptions);\n },\n});\n","export * from \"./aws\";\nexport * from \"./lib/aws/partition\";\nexport * from \"./lib/isIpAddress\";\nexport * from \"./resolveDefaultAwsRegionalEndpointsConfig\";\nexport * from \"./resolveEndpoint\";\nexport * from \"./types\";\n","import { customEndpointFunctions } from \"@smithy/util-endpoints\";\nimport { isVirtualHostableS3Bucket } from \"./lib/aws/isVirtualHostableS3Bucket\";\nimport { parseArn } from \"./lib/aws/parseArn\";\nimport { partition } from \"./lib/aws/partition\";\nexport const awsEndpointFunctions = {\n isVirtualHostableS3Bucket: isVirtualHostableS3Bucket,\n parseArn: parseArn,\n partition: partition,\n};\ncustomEndpointFunctions.aws = awsEndpointFunctions;\n","export class EndpointCache {\n capacity;\n data = new Map();\n parameters = [];\n constructor({ size, params }) {\n this.capacity = size ?? 50;\n if (params) {\n this.parameters = params;\n }\n }\n get(endpointParams, resolver) {\n const key = this.hash(endpointParams);\n if (key === false) {\n return resolver();\n }\n if (!this.data.has(key)) {\n if (this.data.size > this.capacity + 10) {\n const keys = this.data.keys();\n let i = 0;\n while (true) {\n const { value, done } = keys.next();\n this.data.delete(value);\n if (done || ++i > 10) {\n break;\n }\n }\n }\n this.data.set(key, resolver());\n }\n return this.data.get(key);\n }\n size() {\n return this.data.size;\n }\n hash(endpointParams) {\n let buffer = \"\";\n const { parameters } = this;\n if (parameters.length === 0) {\n return false;\n }\n for (const param of parameters) {\n const val = String(endpointParams[param] ?? \"\");\n if (val.includes(\"|;\")) {\n return false;\n }\n buffer += val + \"|;\";\n }\n return buffer;\n }\n}\n","const IP_V4_REGEX = new RegExp(`^(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)){3}$`);\nexport const isIpAddress = (value) => IP_V4_REGEX.test(value) || (value.startsWith(\"[\") && value.endsWith(\"]\"));\n","const VALID_HOST_LABEL_REGEX = new RegExp(`^(?!.*-$)(?!-)[a-zA-Z0-9-]{1,63}$`);\nexport const isValidHostLabel = (value, allowSubDomains = false) => {\n if (!allowSubDomains) {\n return VALID_HOST_LABEL_REGEX.test(value);\n }\n const labels = value.split(\".\");\n for (const label of labels) {\n if (!isValidHostLabel(label)) {\n return false;\n }\n }\n return true;\n};\n","export const customEndpointFunctions = {};\n","import { debugId, toDebugString } from \"./debug\";\nimport { EndpointError } from \"./types\";\nimport { evaluateRules } from \"./utils\";\nexport const resolveEndpoint = (ruleSetObject, options) => {\n const { endpointParams, logger } = options;\n const { parameters, rules } = ruleSetObject;\n options.logger?.debug?.(`${debugId} Initial EndpointParams: ${toDebugString(endpointParams)}`);\n const paramsWithDefault = Object.entries(parameters)\n .filter(([, v]) => v.default != null)\n .map(([k, v]) => [k, v.default]);\n if (paramsWithDefault.length > 0) {\n for (const [paramKey, paramDefaultValue] of paramsWithDefault) {\n endpointParams[paramKey] = endpointParams[paramKey] ?? paramDefaultValue;\n }\n }\n const requiredParams = Object.entries(parameters)\n .filter(([, v]) => v.required)\n .map(([k]) => k);\n for (const requiredParam of requiredParams) {\n if (endpointParams[requiredParam] == null) {\n throw new EndpointError(`Missing required parameter: '${requiredParam}'`);\n }\n }\n const endpoint = evaluateRules(rules, { endpointParams, logger, referenceRecord: {} });\n options.logger?.debug?.(`${debugId} Resolved endpoint: ${toDebugString(endpoint)}`);\n return endpoint;\n};\n","export const debugId = \"endpoints\";\n","export function toDebugString(input) {\n if (typeof input !== \"object\" || input == null) {\n return input;\n }\n if (\"ref\" in input) {\n return `$${toDebugString(input.ref)}`;\n }\n if (\"fn\" in input) {\n return `${input.fn}(${(input.argv || []).map(toDebugString).join(\", \")})`;\n }\n return JSON.stringify(input, null, 2);\n}\n","export class EndpointError extends Error {\n constructor(message) {\n super(message);\n this.name = \"EndpointError\";\n }\n}\n","import { EndpointError } from \"../types\";\nimport { evaluateConditions } from \"./evaluateConditions\";\nimport { evaluateEndpointRule } from \"./evaluateEndpointRule\";\nimport { evaluateErrorRule } from \"./evaluateErrorRule\";\nexport const evaluateRules = (rules, options) => {\n for (const rule of rules) {\n if (rule.type === \"endpoint\") {\n const endpointOrUndefined = evaluateEndpointRule(rule, options);\n if (endpointOrUndefined) {\n return endpointOrUndefined;\n }\n }\n else if (rule.type === \"error\") {\n evaluateErrorRule(rule, options);\n }\n else if (rule.type === \"tree\") {\n const endpointOrUndefined = group.evaluateTreeRule(rule, options);\n if (endpointOrUndefined) {\n return endpointOrUndefined;\n }\n }\n else {\n throw new EndpointError(`Unknown endpoint rule: ${rule}`);\n }\n }\n throw new EndpointError(`Rules evaluation failed`);\n};\nexport const evaluateTreeRule = (treeRule, options) => {\n const { conditions, rules } = treeRule;\n const { result, referenceRecord } = evaluateConditions(conditions, options);\n if (!result) {\n return;\n }\n return group.evaluateRules(rules, {\n ...options,\n referenceRecord: { ...options.referenceRecord, ...referenceRecord },\n });\n};\nexport const group = {\n evaluateRules,\n evaluateTreeRule,\n};\n","import { debugId, toDebugString } from \"../debug\";\nimport { evaluateCondition } from \"./evaluateCondition\";\nexport const evaluateConditions = (conditions = [], options) => {\n const conditionsReferenceRecord = {};\n for (const condition of conditions) {\n const { result, toAssign } = evaluateCondition(condition, {\n ...options,\n referenceRecord: {\n ...options.referenceRecord,\n ...conditionsReferenceRecord,\n },\n });\n if (!result) {\n return { result };\n }\n if (toAssign) {\n conditionsReferenceRecord[toAssign.name] = toAssign.value;\n options.logger?.debug?.(`${debugId} assign: ${toAssign.name} := ${toDebugString(toAssign.value)}`);\n }\n }\n return { result: true, referenceRecord: conditionsReferenceRecord };\n};\n","import { debugId, toDebugString } from \"../debug\";\nimport { EndpointError } from \"../types\";\nimport { callFunction } from \"./callFunction\";\nexport const evaluateCondition = ({ assign, ...fnArgs }, options) => {\n if (assign && assign in options.referenceRecord) {\n throw new EndpointError(`'${assign}' is already defined in Reference Record.`);\n }\n const value = callFunction(fnArgs, options);\n options.logger?.debug?.(`${debugId} evaluateCondition: ${toDebugString(fnArgs)} = ${toDebugString(value)}`);\n return {\n result: value === \"\" ? true : !!value,\n ...(assign != null && { toAssign: { name: assign, value } }),\n };\n};\n","export { callFunction } from \"./evaluateExpression\";\n","import { EndpointError } from \"../types\";\nimport { customEndpointFunctions } from \"./customEndpointFunctions\";\nimport { endpointFunctions } from \"./endpointFunctions\";\nimport { evaluateTemplate } from \"./evaluateTemplate\";\nimport { getReferenceValue } from \"./getReferenceValue\";\nexport const evaluateExpression = (obj, keyName, options) => {\n if (typeof obj === \"string\") {\n return evaluateTemplate(obj, options);\n }\n else if (obj[\"fn\"]) {\n return group.callFunction(obj, options);\n }\n else if (obj[\"ref\"]) {\n return getReferenceValue(obj, options);\n }\n throw new EndpointError(`'${keyName}': ${String(obj)} is not a string, function or reference.`);\n};\nexport const callFunction = ({ fn, argv }, options) => {\n const evaluatedArgs = argv.map((arg) => [\"boolean\", \"number\"].includes(typeof arg) ? arg : group.evaluateExpression(arg, \"arg\", options));\n const fnSegments = fn.split(\".\");\n if (fnSegments[0] in customEndpointFunctions && fnSegments[1] != null) {\n return customEndpointFunctions[fnSegments[0]][fnSegments[1]](...evaluatedArgs);\n }\n return endpointFunctions[fn](...evaluatedArgs);\n};\nexport const group = {\n evaluateExpression,\n callFunction,\n};\n","import { booleanEquals, getAttr, isSet, isValidHostLabel, not, parseURL, stringEquals, substring, uriEncode, } from \"../lib\";\nexport const endpointFunctions = {\n booleanEquals,\n getAttr,\n isSet,\n isValidHostLabel,\n not,\n parseURL,\n stringEquals,\n substring,\n uriEncode,\n};\n","export const booleanEquals = (value1, value2) => value1 === value2;\n","import { EndpointError } from \"../types\";\nimport { getAttrPathList } from \"./getAttrPathList\";\nexport const getAttr = (value, path) => getAttrPathList(path).reduce((acc, index) => {\n if (typeof acc !== \"object\") {\n throw new EndpointError(`Index '${index}' in '${path}' not found in '${JSON.stringify(value)}'`);\n }\n else if (Array.isArray(acc)) {\n return acc[parseInt(index)];\n }\n return acc[index];\n}, value);\n","import { EndpointError } from \"../types\";\nexport const getAttrPathList = (path) => {\n const parts = path.split(\".\");\n const pathList = [];\n for (const part of parts) {\n const squareBracketIndex = part.indexOf(\"[\");\n if (squareBracketIndex !== -1) {\n if (part.indexOf(\"]\") !== part.length - 1) {\n throw new EndpointError(`Path: '${path}' does not end with ']'`);\n }\n const arrayIndex = part.slice(squareBracketIndex + 1, -1);\n if (Number.isNaN(parseInt(arrayIndex))) {\n throw new EndpointError(`Invalid array index: '${arrayIndex}' in path: '${path}'`);\n }\n if (squareBracketIndex !== 0) {\n pathList.push(part.slice(0, squareBracketIndex));\n }\n pathList.push(arrayIndex);\n }\n else {\n pathList.push(part);\n }\n }\n return pathList;\n};\n","export const isSet = (value) => value != null;\n","export const not = (value) => !value;\n","import { EndpointURLScheme } from \"@smithy/types\";\nimport { isIpAddress } from \"./isIpAddress\";\nconst DEFAULT_PORTS = {\n [EndpointURLScheme.HTTP]: 80,\n [EndpointURLScheme.HTTPS]: 443,\n};\nexport const parseURL = (value) => {\n const whatwgURL = (() => {\n try {\n if (value instanceof URL) {\n return value;\n }\n if (typeof value === \"object\" && \"hostname\" in value) {\n const { hostname, port, protocol = \"\", path = \"\", query = {} } = value;\n const url = new URL(`${protocol}//${hostname}${port ? `:${port}` : \"\"}${path}`);\n url.search = Object.entries(query)\n .map(([k, v]) => `${k}=${v}`)\n .join(\"&\");\n return url;\n }\n return new URL(value);\n }\n catch (error) {\n return null;\n }\n })();\n if (!whatwgURL) {\n console.error(`Unable to parse ${JSON.stringify(value)} as a whatwg URL.`);\n return null;\n }\n const urlString = whatwgURL.href;\n const { host, hostname, pathname, protocol, search } = whatwgURL;\n if (search) {\n return null;\n }\n const scheme = protocol.slice(0, -1);\n if (!Object.values(EndpointURLScheme).includes(scheme)) {\n return null;\n }\n const isIp = isIpAddress(hostname);\n const inputContainsDefaultPort = urlString.includes(`${host}:${DEFAULT_PORTS[scheme]}`) ||\n (typeof value === \"string\" && value.includes(`${host}:${DEFAULT_PORTS[scheme]}`));\n const authority = `${host}${inputContainsDefaultPort ? `:${DEFAULT_PORTS[scheme]}` : ``}`;\n return {\n scheme,\n authority,\n path: pathname,\n normalizedPath: pathname.endsWith(\"/\") ? pathname : `${pathname}/`,\n isIp,\n };\n};\n","export const stringEquals = (value1, value2) => value1 === value2;\n","export const substring = (input, start, stop, reverse) => {\n if (start >= stop || input.length < stop) {\n return null;\n }\n if (!reverse) {\n return input.substring(start, stop);\n }\n return input.substring(input.length - stop, input.length - start);\n};\n","export const uriEncode = (value) => encodeURIComponent(value).replace(/[!*'()]/g, (c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`);\n","import { getAttr } from \"../lib\";\nexport const evaluateTemplate = (template, options) => {\n const evaluatedTemplateArr = [];\n const templateContext = {\n ...options.endpointParams,\n ...options.referenceRecord,\n };\n let currentIndex = 0;\n while (currentIndex < template.length) {\n const openingBraceIndex = template.indexOf(\"{\", currentIndex);\n if (openingBraceIndex === -1) {\n evaluatedTemplateArr.push(template.slice(currentIndex));\n break;\n }\n evaluatedTemplateArr.push(template.slice(currentIndex, openingBraceIndex));\n const closingBraceIndex = template.indexOf(\"}\", openingBraceIndex);\n if (closingBraceIndex === -1) {\n evaluatedTemplateArr.push(template.slice(openingBraceIndex));\n break;\n }\n if (template[openingBraceIndex + 1] === \"{\" && template[closingBraceIndex + 1] === \"}\") {\n evaluatedTemplateArr.push(template.slice(openingBraceIndex + 1, closingBraceIndex));\n currentIndex = closingBraceIndex + 2;\n }\n const parameterName = template.substring(openingBraceIndex + 1, closingBraceIndex);\n if (parameterName.includes(\"#\")) {\n const [refName, attrName] = parameterName.split(\"#\");\n evaluatedTemplateArr.push(getAttr(templateContext[refName], attrName));\n }\n else {\n evaluatedTemplateArr.push(templateContext[parameterName]);\n }\n currentIndex = closingBraceIndex + 1;\n }\n return evaluatedTemplateArr.join(\"\");\n};\n","export const getReferenceValue = ({ ref }, options) => {\n const referenceRecord = {\n ...options.endpointParams,\n ...options.referenceRecord,\n };\n return referenceRecord[ref];\n};\n","import { debugId, toDebugString } from \"../debug\";\nimport { evaluateConditions } from \"./evaluateConditions\";\nimport { getEndpointHeaders } from \"./getEndpointHeaders\";\nimport { getEndpointProperties } from \"./getEndpointProperties\";\nimport { getEndpointUrl } from \"./getEndpointUrl\";\nexport const evaluateEndpointRule = (endpointRule, options) => {\n const { conditions, endpoint } = endpointRule;\n const { result, referenceRecord } = evaluateConditions(conditions, options);\n if (!result) {\n return;\n }\n const endpointRuleOptions = {\n ...options,\n referenceRecord: { ...options.referenceRecord, ...referenceRecord },\n };\n const { url, properties, headers } = endpoint;\n options.logger?.debug?.(`${debugId} Resolving endpoint from template: ${toDebugString(endpoint)}`);\n return {\n ...(headers != undefined && {\n headers: getEndpointHeaders(headers, endpointRuleOptions),\n }),\n ...(properties != undefined && {\n properties: getEndpointProperties(properties, endpointRuleOptions),\n }),\n url: getEndpointUrl(url, endpointRuleOptions),\n };\n};\n","import { EndpointError } from \"../types\";\nimport { evaluateExpression } from \"./evaluateExpression\";\nexport const getEndpointHeaders = (headers, options) => Object.entries(headers).reduce((acc, [headerKey, headerVal]) => ({\n ...acc,\n [headerKey]: headerVal.map((headerValEntry) => {\n const processedExpr = evaluateExpression(headerValEntry, \"Header value entry\", options);\n if (typeof processedExpr !== \"string\") {\n throw new EndpointError(`Header '${headerKey}' value '${processedExpr}' is not a string`);\n }\n return processedExpr;\n }),\n}), {});\n","import { EndpointError } from \"../types\";\nimport { evaluateTemplate } from \"./evaluateTemplate\";\nexport const getEndpointProperties = (properties, options) => Object.entries(properties).reduce((acc, [propertyKey, propertyVal]) => ({\n ...acc,\n [propertyKey]: group.getEndpointProperty(propertyVal, options),\n}), {});\nexport const getEndpointProperty = (property, options) => {\n if (Array.isArray(property)) {\n return property.map((propertyEntry) => getEndpointProperty(propertyEntry, options));\n }\n switch (typeof property) {\n case \"string\":\n return evaluateTemplate(property, options);\n case \"object\":\n if (property === null) {\n throw new EndpointError(`Unexpected endpoint property: ${property}`);\n }\n return group.getEndpointProperties(property, options);\n case \"boolean\":\n return property;\n default:\n throw new EndpointError(`Unexpected endpoint property type: ${typeof property}`);\n }\n};\nexport const group = {\n getEndpointProperty,\n getEndpointProperties,\n};\n","import { EndpointError } from \"../types\";\nimport { evaluateExpression } from \"./evaluateExpression\";\nexport const getEndpointUrl = (endpointUrl, options) => {\n const expression = evaluateExpression(endpointUrl, \"Endpoint URL\", options);\n if (typeof expression === \"string\") {\n try {\n return new URL(expression);\n }\n catch (error) {\n console.error(`Failed to construct URL with ${expression}`, error);\n throw error;\n }\n }\n throw new EndpointError(`Endpoint URL must be a string, got ${typeof expression}`);\n};\n","import { EndpointError } from \"../types\";\nimport { evaluateConditions } from \"./evaluateConditions\";\nimport { evaluateExpression } from \"./evaluateExpression\";\nexport const evaluateErrorRule = (errorRule, options) => {\n const { conditions, error } = errorRule;\n const { result, referenceRecord } = evaluateConditions(conditions, options);\n if (!result) {\n return;\n }\n throw new EndpointError(evaluateExpression(error, \"Error\", {\n ...options,\n referenceRecord: { ...options.referenceRecord, ...referenceRecord },\n }));\n};\n","import { isValidHostLabel } from \"@smithy/util-endpoints\";\nimport { isIpAddress } from \"../isIpAddress\";\nexport const isVirtualHostableS3Bucket = (value, allowSubDomains = false) => {\n if (allowSubDomains) {\n for (const label of value.split(\".\")) {\n if (!isVirtualHostableS3Bucket(label)) {\n return false;\n }\n }\n return true;\n }\n if (!isValidHostLabel(value)) {\n return false;\n }\n if (value.length < 3 || value.length > 63) {\n return false;\n }\n if (value !== value.toLowerCase()) {\n return false;\n }\n if (isIpAddress(value)) {\n return false;\n }\n return true;\n};\n","export { isIpAddress } from \"@smithy/util-endpoints\";\n","const ARN_DELIMITER = \":\";\nconst RESOURCE_DELIMITER = \"/\";\nexport const parseArn = (value) => {\n const segments = value.split(ARN_DELIMITER);\n if (segments.length < 6)\n return null;\n const [arn, partition, service, region, accountId, ...resourcePath] = segments;\n if (arn !== \"arn\" || partition === \"\" || service === \"\" || resourcePath.join(ARN_DELIMITER) === \"\")\n return null;\n const resourceId = resourcePath.map((resource) => resource.split(RESOURCE_DELIMITER)).flat();\n return {\n partition,\n service,\n region,\n accountId,\n resourceId,\n };\n};\n","import partitionsInfo from \"./partitions.json\";\nlet selectedPartitionsInfo = partitionsInfo;\nlet selectedUserAgentPrefix = \"\";\nexport const partition = (value) => {\n const { partitions } = selectedPartitionsInfo;\n for (const partition of partitions) {\n const { regions, outputs } = partition;\n for (const [region, regionData] of Object.entries(regions)) {\n if (region === value) {\n return {\n ...outputs,\n ...regionData,\n };\n }\n }\n }\n for (const partition of partitions) {\n const { regionRegex, outputs } = partition;\n if (new RegExp(regionRegex).test(value)) {\n return {\n ...outputs,\n };\n }\n }\n const DEFAULT_PARTITION = partitions.find((partition) => partition.id === \"aws\");\n if (!DEFAULT_PARTITION) {\n throw new Error(\"Provided region was not found in the partition array or regex,\" +\n \" and default partition with id 'aws' doesn't exist.\");\n }\n return {\n ...DEFAULT_PARTITION.outputs,\n };\n};\nexport const setPartitionInfo = (partitionsInfo, userAgentPrefix = \"\") => {\n selectedPartitionsInfo = partitionsInfo;\n selectedUserAgentPrefix = userAgentPrefix;\n};\nexport const useDefaultPartitionInfo = () => {\n setPartitionInfo(partitionsInfo, \"\");\n};\nexport const getUserAgentPrefix = () => selectedUserAgentPrefix;\n","{\n \"partitions\": [{\n \"id\": \"aws\",\n \"outputs\": {\n \"dnsSuffix\": \"amazonaws.com\",\n \"dualStackDnsSuffix\": \"api.aws\",\n \"implicitGlobalRegion\": \"us-east-1\",\n \"name\": \"aws\",\n \"supportsDualStack\": true,\n \"supportsFIPS\": true\n },\n \"regionRegex\": \"^(us|eu|ap|sa|ca|me|af|il|mx)\\\\-\\\\w+\\\\-\\\\d+$\",\n \"regions\": {\n \"af-south-1\": {\n \"description\": \"Africa (Cape Town)\"\n },\n \"ap-east-1\": {\n \"description\": \"Asia Pacific (Hong Kong)\"\n },\n \"ap-east-2\": {\n \"description\": \"Asia Pacific (Taipei)\"\n },\n \"ap-northeast-1\": {\n \"description\": \"Asia Pacific (Tokyo)\"\n },\n \"ap-northeast-2\": {\n \"description\": \"Asia Pacific (Seoul)\"\n },\n \"ap-northeast-3\": {\n \"description\": \"Asia Pacific (Osaka)\"\n },\n \"ap-south-1\": {\n \"description\": \"Asia Pacific (Mumbai)\"\n },\n \"ap-south-2\": {\n \"description\": \"Asia Pacific (Hyderabad)\"\n },\n \"ap-southeast-1\": {\n \"description\": \"Asia Pacific (Singapore)\"\n },\n \"ap-southeast-2\": {\n \"description\": \"Asia Pacific (Sydney)\"\n },\n \"ap-southeast-3\": {\n \"description\": \"Asia Pacific (Jakarta)\"\n },\n \"ap-southeast-4\": {\n \"description\": \"Asia Pacific (Melbourne)\"\n },\n \"ap-southeast-5\": {\n \"description\": \"Asia Pacific (Malaysia)\"\n },\n \"ap-southeast-6\": {\n \"description\": \"Asia Pacific (New Zealand)\"\n },\n \"ap-southeast-7\": {\n \"description\": \"Asia Pacific (Thailand)\"\n },\n \"aws-global\": {\n \"description\": \"aws global region\"\n },\n \"ca-central-1\": {\n \"description\": \"Canada (Central)\"\n },\n \"ca-west-1\": {\n \"description\": \"Canada West (Calgary)\"\n },\n \"eu-central-1\": {\n \"description\": \"Europe (Frankfurt)\"\n },\n \"eu-central-2\": {\n \"description\": \"Europe (Zurich)\"\n },\n \"eu-north-1\": {\n \"description\": \"Europe (Stockholm)\"\n },\n \"eu-south-1\": {\n \"description\": \"Europe (Milan)\"\n },\n \"eu-south-2\": {\n \"description\": \"Europe (Spain)\"\n },\n \"eu-west-1\": {\n \"description\": \"Europe (Ireland)\"\n },\n \"eu-west-2\": {\n \"description\": \"Europe (London)\"\n },\n \"eu-west-3\": {\n \"description\": \"Europe (Paris)\"\n },\n \"il-central-1\": {\n \"description\": \"Israel (Tel Aviv)\"\n },\n \"me-central-1\": {\n \"description\": \"Middle East (UAE)\"\n },\n \"me-south-1\": {\n \"description\": \"Middle East (Bahrain)\"\n },\n \"mx-central-1\": {\n \"description\": \"Mexico (Central)\"\n },\n \"sa-east-1\": {\n \"description\": \"South America (Sao Paulo)\"\n },\n \"us-east-1\": {\n \"description\": \"US East (N. Virginia)\"\n },\n \"us-east-2\": {\n \"description\": \"US East (Ohio)\"\n },\n \"us-west-1\": {\n \"description\": \"US West (N. California)\"\n },\n \"us-west-2\": {\n \"description\": \"US West (Oregon)\"\n }\n }\n }, {\n \"id\": \"aws-cn\",\n \"outputs\": {\n \"dnsSuffix\": \"amazonaws.com.cn\",\n \"dualStackDnsSuffix\": \"api.amazonwebservices.com.cn\",\n \"implicitGlobalRegion\": \"cn-northwest-1\",\n \"name\": \"aws-cn\",\n \"supportsDualStack\": true,\n \"supportsFIPS\": true\n },\n \"regionRegex\": \"^cn\\\\-\\\\w+\\\\-\\\\d+$\",\n \"regions\": {\n \"aws-cn-global\": {\n \"description\": \"aws-cn global region\"\n },\n \"cn-north-1\": {\n \"description\": \"China (Beijing)\"\n },\n \"cn-northwest-1\": {\n \"description\": \"China (Ningxia)\"\n }\n }\n }, {\n \"id\": \"aws-eusc\",\n \"outputs\": {\n \"dnsSuffix\": \"amazonaws.eu\",\n \"dualStackDnsSuffix\": \"api.amazonwebservices.eu\",\n \"implicitGlobalRegion\": \"eusc-de-east-1\",\n \"name\": \"aws-eusc\",\n \"supportsDualStack\": true,\n \"supportsFIPS\": true\n },\n \"regionRegex\": \"^eusc\\\\-(de)\\\\-\\\\w+\\\\-\\\\d+$\",\n \"regions\": {\n \"eusc-de-east-1\": {\n \"description\": \"EU (Germany)\"\n }\n }\n }, {\n \"id\": \"aws-iso\",\n \"outputs\": {\n \"dnsSuffix\": \"c2s.ic.gov\",\n \"dualStackDnsSuffix\": \"api.aws.ic.gov\",\n \"implicitGlobalRegion\": \"us-iso-east-1\",\n \"name\": \"aws-iso\",\n \"supportsDualStack\": false,\n \"supportsFIPS\": true\n },\n \"regionRegex\": \"^us\\\\-iso\\\\-\\\\w+\\\\-\\\\d+$\",\n \"regions\": {\n \"aws-iso-global\": {\n \"description\": \"aws-iso global region\"\n },\n \"us-iso-east-1\": {\n \"description\": \"US ISO East\"\n },\n \"us-iso-west-1\": {\n \"description\": \"US ISO WEST\"\n }\n }\n }, {\n \"id\": \"aws-iso-b\",\n \"outputs\": {\n \"dnsSuffix\": \"sc2s.sgov.gov\",\n \"dualStackDnsSuffix\": \"api.aws.scloud\",\n \"implicitGlobalRegion\": \"us-isob-east-1\",\n \"name\": \"aws-iso-b\",\n \"supportsDualStack\": false,\n \"supportsFIPS\": true\n },\n \"regionRegex\": \"^us\\\\-isob\\\\-\\\\w+\\\\-\\\\d+$\",\n \"regions\": {\n \"aws-iso-b-global\": {\n \"description\": \"aws-iso-b global region\"\n },\n \"us-isob-east-1\": {\n \"description\": \"US ISOB East (Ohio)\"\n }\n }\n }, {\n \"id\": \"aws-iso-e\",\n \"outputs\": {\n \"dnsSuffix\": \"cloud.adc-e.uk\",\n \"dualStackDnsSuffix\": \"api.cloud-aws.adc-e.uk\",\n \"implicitGlobalRegion\": \"eu-isoe-west-1\",\n \"name\": \"aws-iso-e\",\n \"supportsDualStack\": false,\n \"supportsFIPS\": true\n },\n \"regionRegex\": \"^eu\\\\-isoe\\\\-\\\\w+\\\\-\\\\d+$\",\n \"regions\": {\n \"aws-iso-e-global\": {\n \"description\": \"aws-iso-e global region\"\n },\n \"eu-isoe-west-1\": {\n \"description\": \"EU ISOE West\"\n }\n }\n }, {\n \"id\": \"aws-iso-f\",\n \"outputs\": {\n \"dnsSuffix\": \"csp.hci.ic.gov\",\n \"dualStackDnsSuffix\": \"api.aws.hci.ic.gov\",\n \"implicitGlobalRegion\": \"us-isof-south-1\",\n \"name\": \"aws-iso-f\",\n \"supportsDualStack\": false,\n \"supportsFIPS\": true\n },\n \"regionRegex\": \"^us\\\\-isof\\\\-\\\\w+\\\\-\\\\d+$\",\n \"regions\": {\n \"aws-iso-f-global\": {\n \"description\": \"aws-iso-f global region\"\n },\n \"us-isof-east-1\": {\n \"description\": \"US ISOF EAST\"\n },\n \"us-isof-south-1\": {\n \"description\": \"US ISOF SOUTH\"\n }\n }\n }, {\n \"id\": \"aws-us-gov\",\n \"outputs\": {\n \"dnsSuffix\": \"amazonaws.com\",\n \"dualStackDnsSuffix\": \"api.aws\",\n \"implicitGlobalRegion\": \"us-gov-west-1\",\n \"name\": \"aws-us-gov\",\n \"supportsDualStack\": true,\n \"supportsFIPS\": true\n },\n \"regionRegex\": \"^us\\\\-gov\\\\-\\\\w+\\\\-\\\\d+$\",\n \"regions\": {\n \"aws-us-gov-global\": {\n \"description\": \"aws-us-gov global region\"\n },\n \"us-gov-east-1\": {\n \"description\": \"AWS GovCloud (US-East)\"\n },\n \"us-gov-west-1\": {\n \"description\": \"AWS GovCloud (US-West)\"\n }\n }\n }],\n \"version\": \"1.1\"\n}\n","import { parseUrl } from \"@smithy/url-parser\";\nexport const resolveDefaultAwsRegionalEndpointsConfig = (input) => {\n if (typeof input.endpointProvider !== \"function\") {\n throw new Error(\"@aws-sdk/util-endpoint - endpointProvider and endpoint missing in config for this client.\");\n }\n const { endpoint } = input;\n if (endpoint === undefined) {\n input.endpoint = async () => {\n return toEndpointV1(input.endpointProvider({\n Region: typeof input.region === \"function\" ? await input.region() : input.region,\n UseDualStack: typeof input.useDualstackEndpoint === \"function\"\n ? await input.useDualstackEndpoint()\n : input.useDualstackEndpoint,\n UseFIPS: typeof input.useFipsEndpoint === \"function\" ? await input.useFipsEndpoint() : input.useFipsEndpoint,\n Endpoint: undefined,\n }, { logger: input.logger }));\n };\n }\n return input;\n};\nexport const toEndpointV1 = (endpoint) => parseUrl(endpoint.url);\n","export { resolveEndpoint } from \"@smithy/util-endpoints\";\n","export * from \"./EndpointError\";\nexport * from \"./EndpointRuleObject\";\nexport * from \"./ErrorRuleObject\";\nexport * from \"./RuleSetObject\";\nexport * from \"./TreeRuleObject\";\nexport * from \"./shared\";\n","export { EndpointError } from \"@smithy/util-endpoints\";\n","export {};\n","export {};\n","export {};\n","export {};\n","export {};\n","import { setFeature } from \"@aws-sdk/core\";\nconst ACCOUNT_ID_ENDPOINT_REGEX = /\\d{12}\\.ddb/;\nexport async function checkFeatures(context, config, args) {\n const request = args.request;\n if (request?.headers?.[\"smithy-protocol\"] === \"rpc-v2-cbor\") {\n setFeature(context, \"PROTOCOL_RPC_V2_CBOR\", \"M\");\n }\n if (typeof config.retryStrategy === \"function\") {\n const retryStrategy = await config.retryStrategy();\n if (typeof retryStrategy.acquireInitialRetryToken === \"function\") {\n if (retryStrategy.constructor?.name?.includes(\"Adaptive\")) {\n setFeature(context, \"RETRY_MODE_ADAPTIVE\", \"F\");\n }\n else {\n setFeature(context, \"RETRY_MODE_STANDARD\", \"E\");\n }\n }\n else {\n setFeature(context, \"RETRY_MODE_LEGACY\", \"D\");\n }\n }\n if (typeof config.accountIdEndpointMode === \"function\") {\n const endpointV2 = context.endpointV2;\n if (String(endpointV2?.url?.hostname).match(ACCOUNT_ID_ENDPOINT_REGEX)) {\n setFeature(context, \"ACCOUNT_ID_ENDPOINT\", \"O\");\n }\n switch (await config.accountIdEndpointMode?.()) {\n case \"disabled\":\n setFeature(context, \"ACCOUNT_ID_MODE_DISABLED\", \"Q\");\n break;\n case \"preferred\":\n setFeature(context, \"ACCOUNT_ID_MODE_PREFERRED\", \"P\");\n break;\n case \"required\":\n setFeature(context, \"ACCOUNT_ID_MODE_REQUIRED\", \"R\");\n break;\n }\n }\n const identity = context.__smithy_context?.selectedHttpAuthScheme?.identity;\n if (identity?.$source) {\n const credentials = identity;\n if (credentials.accountId) {\n setFeature(context, \"RESOLVED_ACCOUNT_ID\", \"T\");\n }\n for (const [key, value] of Object.entries(credentials.$source ?? {})) {\n setFeature(context, key, value);\n }\n }\n}\n","export const state = {\n warningEmitted: false,\n};\nexport const emitWarningIfUnsupportedVersion = (version) => {\n if (version && !state.warningEmitted && parseInt(version.substring(1, version.indexOf(\".\"))) < 18) {\n state.warningEmitted = true;\n process.emitWarning(`NodeDeprecationWarning: The AWS SDK for JavaScript (v3) will\nno longer support Node.js 16.x on January 6, 2025.\n\nTo continue receiving updates to AWS services, bug fixes, and security\nupdates please upgrade to a supported Node.js LTS version.\n\nMore information can be found at: https://a.co/74kJMmI`);\n }\n};\n","export function setFeature(context, feature, value) {\n if (!context.__aws_sdk_context) {\n context.__aws_sdk_context = {\n features: {},\n };\n }\n else if (!context.__aws_sdk_context.features) {\n context.__aws_sdk_context.features = {};\n }\n context.__aws_sdk_context.features[feature] = value;\n}\n","export { AwsSdkSigV4Signer, AWSSDKSigV4Signer, validateSigningProperties } from \"./AwsSdkSigV4Signer\";\nexport { AwsSdkSigV4ASigner } from \"./AwsSdkSigV4ASigner\";\nexport * from \"./NODE_AUTH_SCHEME_PREFERENCE_OPTIONS\";\nexport * from \"./resolveAwsSdkSigV4AConfig\";\nexport * from \"./resolveAwsSdkSigV4Config\";\n","import { HttpRequest } from \"@smithy/protocol-http\";\nimport { getDateHeader, getSkewCorrectedDate, getUpdatedSystemClockOffset } from \"../utils\";\nconst throwSigningPropertyError = (name, property) => {\n if (!property) {\n throw new Error(`Property \\`${name}\\` is not resolved for AWS SDK SigV4Auth`);\n }\n return property;\n};\nexport const validateSigningProperties = async (signingProperties) => {\n const context = throwSigningPropertyError(\"context\", signingProperties.context);\n const config = throwSigningPropertyError(\"config\", signingProperties.config);\n const authScheme = context.endpointV2?.properties?.authSchemes?.[0];\n const signerFunction = throwSigningPropertyError(\"signer\", config.signer);\n const signer = await signerFunction(authScheme);\n const signingRegion = signingProperties?.signingRegion;\n const signingRegionSet = signingProperties?.signingRegionSet;\n const signingName = signingProperties?.signingName;\n return {\n config,\n signer,\n signingRegion,\n signingRegionSet,\n signingName,\n };\n};\nexport class AwsSdkSigV4Signer {\n async sign(httpRequest, identity, signingProperties) {\n if (!HttpRequest.isInstance(httpRequest)) {\n throw new Error(\"The request is not an instance of `HttpRequest` and cannot be signed\");\n }\n const validatedProps = await validateSigningProperties(signingProperties);\n const { config, signer } = validatedProps;\n let { signingRegion, signingName } = validatedProps;\n const handlerExecutionContext = signingProperties.context;\n if (handlerExecutionContext?.authSchemes?.length ?? 0 > 1) {\n const [first, second] = handlerExecutionContext.authSchemes;\n if (first?.name === \"sigv4a\" && second?.name === \"sigv4\") {\n signingRegion = second?.signingRegion ?? signingRegion;\n signingName = second?.signingName ?? signingName;\n }\n }\n const signedRequest = await signer.sign(httpRequest, {\n signingDate: getSkewCorrectedDate(config.systemClockOffset),\n signingRegion: signingRegion,\n signingService: signingName,\n });\n return signedRequest;\n }\n errorHandler(signingProperties) {\n return (error) => {\n const serverTime = error.ServerTime ?? getDateHeader(error.$response);\n if (serverTime) {\n const config = throwSigningPropertyError(\"config\", signingProperties.config);\n const initialSystemClockOffset = config.systemClockOffset;\n config.systemClockOffset = getUpdatedSystemClockOffset(serverTime, config.systemClockOffset);\n const clockSkewCorrected = config.systemClockOffset !== initialSystemClockOffset;\n if (clockSkewCorrected && error.$metadata) {\n error.$metadata.clockSkewCorrected = true;\n }\n }\n throw error;\n };\n }\n successHandler(httpResponse, signingProperties) {\n const dateHeader = getDateHeader(httpResponse);\n if (dateHeader) {\n const config = throwSigningPropertyError(\"config\", signingProperties.config);\n config.systemClockOffset = getUpdatedSystemClockOffset(dateHeader, config.systemClockOffset);\n }\n }\n}\nexport const AWSSDKSigV4Signer = AwsSdkSigV4Signer;\n","import { HttpResponse } from \"@smithy/protocol-http\";\nexport const getDateHeader = (response) => HttpResponse.isInstance(response) ? response.headers?.date ?? response.headers?.Date : undefined;\n","export const getSkewCorrectedDate = (systemClockOffset) => new Date(Date.now() + systemClockOffset);\n","import { isClockSkewed } from \"./isClockSkewed\";\nexport const getUpdatedSystemClockOffset = (clockTime, currentSystemClockOffset) => {\n const clockTimeInMs = Date.parse(clockTime);\n if (isClockSkewed(clockTimeInMs, currentSystemClockOffset)) {\n return clockTimeInMs - Date.now();\n }\n return currentSystemClockOffset;\n};\n","import { getSkewCorrectedDate } from \"./getSkewCorrectedDate\";\nexport const isClockSkewed = (clockTime, systemClockOffset) => Math.abs(getSkewCorrectedDate(systemClockOffset).getTime() - clockTime) >= 300000;\n","import { getArrayForCommaSeparatedString } from \"../utils/getArrayForCommaSeparatedString\";\nimport { getBearerTokenEnvKey } from \"../utils/getBearerTokenEnvKey\";\nconst NODE_AUTH_SCHEME_PREFERENCE_ENV_KEY = \"AWS_AUTH_SCHEME_PREFERENCE\";\nconst NODE_AUTH_SCHEME_PREFERENCE_CONFIG_KEY = \"auth_scheme_preference\";\nexport const NODE_AUTH_SCHEME_PREFERENCE_OPTIONS = {\n environmentVariableSelector: (env, options) => {\n if (options?.signingName) {\n const bearerTokenKey = getBearerTokenEnvKey(options.signingName);\n if (bearerTokenKey in env)\n return [\"httpBearerAuth\"];\n }\n if (!(NODE_AUTH_SCHEME_PREFERENCE_ENV_KEY in env))\n return undefined;\n return getArrayForCommaSeparatedString(env[NODE_AUTH_SCHEME_PREFERENCE_ENV_KEY]);\n },\n configFileSelector: (profile) => {\n if (!(NODE_AUTH_SCHEME_PREFERENCE_CONFIG_KEY in profile))\n return undefined;\n return getArrayForCommaSeparatedString(profile[NODE_AUTH_SCHEME_PREFERENCE_CONFIG_KEY]);\n },\n default: [],\n};\n","export const getArrayForCommaSeparatedString = (str) => typeof str === \"string\" && str.length > 0 ? str.split(\",\").map((item) => item.trim()) : [];\n","export const getBearerTokenEnvKey = (signingName) => `AWS_BEARER_TOKEN_${signingName.replace(/[\\s-]/g, \"_\").toUpperCase()}`;\n","import { setCredentialFeature } from \"@aws-sdk/core/client\";\nimport { doesIdentityRequireRefresh, isIdentityExpired, memoizeIdentityProvider, normalizeProvider, } from \"@smithy/core\";\nimport { SignatureV4 } from \"@smithy/signature-v4\";\nexport const resolveAwsSdkSigV4Config = (config) => {\n let inputCredentials = config.credentials;\n let isUserSupplied = !!config.credentials;\n let resolvedCredentials = undefined;\n Object.defineProperty(config, \"credentials\", {\n set(credentials) {\n if (credentials && credentials !== inputCredentials && credentials !== resolvedCredentials) {\n isUserSupplied = true;\n }\n inputCredentials = credentials;\n const memoizedProvider = normalizeCredentialProvider(config, {\n credentials: inputCredentials,\n credentialDefaultProvider: config.credentialDefaultProvider,\n });\n const boundProvider = bindCallerConfig(config, memoizedProvider);\n if (isUserSupplied && !boundProvider.attributed) {\n resolvedCredentials = async (options) => boundProvider(options).then((creds) => setCredentialFeature(creds, \"CREDENTIALS_CODE\", \"e\"));\n resolvedCredentials.memoized = boundProvider.memoized;\n resolvedCredentials.configBound = boundProvider.configBound;\n resolvedCredentials.attributed = true;\n }\n else {\n resolvedCredentials = boundProvider;\n }\n },\n get() {\n return resolvedCredentials;\n },\n enumerable: true,\n configurable: true,\n });\n config.credentials = inputCredentials;\n const { signingEscapePath = true, systemClockOffset = config.systemClockOffset || 0, sha256, } = config;\n let signer;\n if (config.signer) {\n signer = normalizeProvider(config.signer);\n }\n else if (config.regionInfoProvider) {\n signer = () => normalizeProvider(config.region)()\n .then(async (region) => [\n (await config.regionInfoProvider(region, {\n useFipsEndpoint: await config.useFipsEndpoint(),\n useDualstackEndpoint: await config.useDualstackEndpoint(),\n })) || {},\n region,\n ])\n .then(([regionInfo, region]) => {\n const { signingRegion, signingService } = regionInfo;\n config.signingRegion = config.signingRegion || signingRegion || region;\n config.signingName = config.signingName || signingService || config.serviceId;\n const params = {\n ...config,\n credentials: config.credentials,\n region: config.signingRegion,\n service: config.signingName,\n sha256,\n uriEscapePath: signingEscapePath,\n };\n const SignerCtor = config.signerConstructor || SignatureV4;\n return new SignerCtor(params);\n });\n }\n else {\n signer = async (authScheme) => {\n authScheme = Object.assign({}, {\n name: \"sigv4\",\n signingName: config.signingName || config.defaultSigningName,\n signingRegion: await normalizeProvider(config.region)(),\n properties: {},\n }, authScheme);\n const signingRegion = authScheme.signingRegion;\n const signingService = authScheme.signingName;\n config.signingRegion = config.signingRegion || signingRegion;\n config.signingName = config.signingName || signingService || config.serviceId;\n const params = {\n ...config,\n credentials: config.credentials,\n region: config.signingRegion,\n service: config.signingName,\n sha256,\n uriEscapePath: signingEscapePath,\n };\n const SignerCtor = config.signerConstructor || SignatureV4;\n return new SignerCtor(params);\n };\n }\n const resolvedConfig = Object.assign(config, {\n systemClockOffset,\n signingEscapePath,\n signer,\n });\n return resolvedConfig;\n};\nexport const resolveAWSSDKSigV4Config = resolveAwsSdkSigV4Config;\nfunction normalizeCredentialProvider(config, { credentials, credentialDefaultProvider, }) {\n let credentialsProvider;\n if (credentials) {\n if (!credentials?.memoized) {\n credentialsProvider = memoizeIdentityProvider(credentials, isIdentityExpired, doesIdentityRequireRefresh);\n }\n else {\n credentialsProvider = credentials;\n }\n }\n else {\n if (credentialDefaultProvider) {\n credentialsProvider = normalizeProvider(credentialDefaultProvider(Object.assign({}, config, {\n parentClientConfig: config,\n })));\n }\n else {\n credentialsProvider = async () => {\n throw new Error(\"@aws-sdk/core::resolveAwsSdkSigV4Config - `credentials` not provided and no credentialDefaultProvider was configured.\");\n };\n }\n }\n credentialsProvider.memoized = true;\n return credentialsProvider;\n}\nfunction bindCallerConfig(config, credentialsProvider) {\n if (credentialsProvider.configBound) {\n return credentialsProvider;\n }\n const fn = async (options) => credentialsProvider({ ...options, callerClientConfig: config });\n fn.memoized = credentialsProvider.memoized;\n fn.configBound = true;\n return fn;\n}\n","import { toHex } from \"@smithy/util-hex-encoding\";\nimport { toUint8Array } from \"@smithy/util-utf8\";\nimport { ALGORITHM_IDENTIFIER, ALGORITHM_QUERY_PARAM, AMZ_DATE_HEADER, AMZ_DATE_QUERY_PARAM, AUTH_HEADER, CREDENTIAL_QUERY_PARAM, EVENT_ALGORITHM_IDENTIFIER, EXPIRES_QUERY_PARAM, MAX_PRESIGNED_TTL, SHA256_HEADER, SIGNATURE_QUERY_PARAM, SIGNED_HEADERS_QUERY_PARAM, TOKEN_HEADER, TOKEN_QUERY_PARAM, } from \"./constants\";\nimport { createScope, getSigningKey } from \"./credentialDerivation\";\nimport { getCanonicalHeaders } from \"./getCanonicalHeaders\";\nimport { getPayloadHash } from \"./getPayloadHash\";\nimport { HeaderFormatter } from \"./HeaderFormatter\";\nimport { hasHeader } from \"./headerUtil\";\nimport { moveHeadersToQuery } from \"./moveHeadersToQuery\";\nimport { prepareRequest } from \"./prepareRequest\";\nimport { SignatureV4Base } from \"./SignatureV4Base\";\nexport class SignatureV4 extends SignatureV4Base {\n headerFormatter = new HeaderFormatter();\n constructor({ applyChecksum, credentials, region, service, sha256, uriEscapePath = true, }) {\n super({\n applyChecksum,\n credentials,\n region,\n service,\n sha256,\n uriEscapePath,\n });\n }\n async presign(originalRequest, options = {}) {\n const { signingDate = new Date(), expiresIn = 3600, unsignableHeaders, unhoistableHeaders, signableHeaders, hoistableHeaders, signingRegion, signingService, } = options;\n const credentials = await this.credentialProvider();\n this.validateResolvedCredentials(credentials);\n const region = signingRegion ?? (await this.regionProvider());\n const { longDate, shortDate } = this.formatDate(signingDate);\n if (expiresIn > MAX_PRESIGNED_TTL) {\n return Promise.reject(\"Signature version 4 presigned URLs\" + \" must have an expiration date less than one week in\" + \" the future\");\n }\n const scope = createScope(shortDate, region, signingService ?? this.service);\n const request = moveHeadersToQuery(prepareRequest(originalRequest), { unhoistableHeaders, hoistableHeaders });\n if (credentials.sessionToken) {\n request.query[TOKEN_QUERY_PARAM] = credentials.sessionToken;\n }\n request.query[ALGORITHM_QUERY_PARAM] = ALGORITHM_IDENTIFIER;\n request.query[CREDENTIAL_QUERY_PARAM] = `${credentials.accessKeyId}/${scope}`;\n request.query[AMZ_DATE_QUERY_PARAM] = longDate;\n request.query[EXPIRES_QUERY_PARAM] = expiresIn.toString(10);\n const canonicalHeaders = getCanonicalHeaders(request, unsignableHeaders, signableHeaders);\n request.query[SIGNED_HEADERS_QUERY_PARAM] = this.getCanonicalHeaderList(canonicalHeaders);\n request.query[SIGNATURE_QUERY_PARAM] = await this.getSignature(longDate, scope, this.getSigningKey(credentials, region, shortDate, signingService), this.createCanonicalRequest(request, canonicalHeaders, await getPayloadHash(originalRequest, this.sha256)));\n return request;\n }\n async sign(toSign, options) {\n if (typeof toSign === \"string\") {\n return this.signString(toSign, options);\n }\n else if (toSign.headers && toSign.payload) {\n return this.signEvent(toSign, options);\n }\n else if (toSign.message) {\n return this.signMessage(toSign, options);\n }\n else {\n return this.signRequest(toSign, options);\n }\n }\n async signEvent({ headers, payload }, { signingDate = new Date(), priorSignature, signingRegion, signingService }) {\n const region = signingRegion ?? (await this.regionProvider());\n const { shortDate, longDate } = this.formatDate(signingDate);\n const scope = createScope(shortDate, region, signingService ?? this.service);\n const hashedPayload = await getPayloadHash({ headers: {}, body: payload }, this.sha256);\n const hash = new this.sha256();\n hash.update(headers);\n const hashedHeaders = toHex(await hash.digest());\n const stringToSign = [\n EVENT_ALGORITHM_IDENTIFIER,\n longDate,\n scope,\n priorSignature,\n hashedHeaders,\n hashedPayload,\n ].join(\"\\n\");\n return this.signString(stringToSign, { signingDate, signingRegion: region, signingService });\n }\n async signMessage(signableMessage, { signingDate = new Date(), signingRegion, signingService }) {\n const promise = this.signEvent({\n headers: this.headerFormatter.format(signableMessage.message.headers),\n payload: signableMessage.message.body,\n }, {\n signingDate,\n signingRegion,\n signingService,\n priorSignature: signableMessage.priorSignature,\n });\n return promise.then((signature) => {\n return { message: signableMessage.message, signature };\n });\n }\n async signString(stringToSign, { signingDate = new Date(), signingRegion, signingService } = {}) {\n const credentials = await this.credentialProvider();\n this.validateResolvedCredentials(credentials);\n const region = signingRegion ?? (await this.regionProvider());\n const { shortDate } = this.formatDate(signingDate);\n const hash = new this.sha256(await this.getSigningKey(credentials, region, shortDate, signingService));\n hash.update(toUint8Array(stringToSign));\n return toHex(await hash.digest());\n }\n async signRequest(requestToSign, { signingDate = new Date(), signableHeaders, unsignableHeaders, signingRegion, signingService, } = {}) {\n const credentials = await this.credentialProvider();\n this.validateResolvedCredentials(credentials);\n const region = signingRegion ?? (await this.regionProvider());\n const request = prepareRequest(requestToSign);\n const { longDate, shortDate } = this.formatDate(signingDate);\n const scope = createScope(shortDate, region, signingService ?? this.service);\n request.headers[AMZ_DATE_HEADER] = longDate;\n if (credentials.sessionToken) {\n request.headers[TOKEN_HEADER] = credentials.sessionToken;\n }\n const payloadHash = await getPayloadHash(request, this.sha256);\n if (!hasHeader(SHA256_HEADER, request.headers) && this.applyChecksum) {\n request.headers[SHA256_HEADER] = payloadHash;\n }\n const canonicalHeaders = getCanonicalHeaders(request, unsignableHeaders, signableHeaders);\n const signature = await this.getSignature(longDate, scope, this.getSigningKey(credentials, region, shortDate, signingService), this.createCanonicalRequest(request, canonicalHeaders, payloadHash));\n request.headers[AUTH_HEADER] =\n `${ALGORITHM_IDENTIFIER} ` +\n `Credential=${credentials.accessKeyId}/${scope}, ` +\n `SignedHeaders=${this.getCanonicalHeaderList(canonicalHeaders)}, ` +\n `Signature=${signature}`;\n return request;\n }\n async getSignature(longDate, credentialScope, keyPromise, canonicalRequest) {\n const stringToSign = await this.createStringToSign(longDate, credentialScope, canonicalRequest, ALGORITHM_IDENTIFIER);\n const hash = new this.sha256(await keyPromise);\n hash.update(toUint8Array(stringToSign));\n return toHex(await hash.digest());\n }\n getSigningKey(credentials, region, shortDate, service) {\n return getSigningKey(this.sha256, credentials, shortDate, region, service || this.service);\n }\n}\n","export const ALGORITHM_QUERY_PARAM = \"X-Amz-Algorithm\";\nexport const CREDENTIAL_QUERY_PARAM = \"X-Amz-Credential\";\nexport const AMZ_DATE_QUERY_PARAM = \"X-Amz-Date\";\nexport const SIGNED_HEADERS_QUERY_PARAM = \"X-Amz-SignedHeaders\";\nexport const EXPIRES_QUERY_PARAM = \"X-Amz-Expires\";\nexport const SIGNATURE_QUERY_PARAM = \"X-Amz-Signature\";\nexport const TOKEN_QUERY_PARAM = \"X-Amz-Security-Token\";\nexport const REGION_SET_PARAM = \"X-Amz-Region-Set\";\nexport const AUTH_HEADER = \"authorization\";\nexport const AMZ_DATE_HEADER = AMZ_DATE_QUERY_PARAM.toLowerCase();\nexport const DATE_HEADER = \"date\";\nexport const GENERATED_HEADERS = [AUTH_HEADER, AMZ_DATE_HEADER, DATE_HEADER];\nexport const SIGNATURE_HEADER = SIGNATURE_QUERY_PARAM.toLowerCase();\nexport const SHA256_HEADER = \"x-amz-content-sha256\";\nexport const TOKEN_HEADER = TOKEN_QUERY_PARAM.toLowerCase();\nexport const HOST_HEADER = \"host\";\nexport const ALWAYS_UNSIGNABLE_HEADERS = {\n authorization: true,\n \"cache-control\": true,\n connection: true,\n expect: true,\n from: true,\n \"keep-alive\": true,\n \"max-forwards\": true,\n pragma: true,\n referer: true,\n te: true,\n trailer: true,\n \"transfer-encoding\": true,\n upgrade: true,\n \"user-agent\": true,\n \"x-amzn-trace-id\": true,\n};\nexport const PROXY_HEADER_PATTERN = /^proxy-/;\nexport const SEC_HEADER_PATTERN = /^sec-/;\nexport const UNSIGNABLE_PATTERNS = [/^proxy-/i, /^sec-/i];\nexport const ALGORITHM_IDENTIFIER = \"AWS4-HMAC-SHA256\";\nexport const ALGORITHM_IDENTIFIER_V4A = \"AWS4-ECDSA-P256-SHA256\";\nexport const EVENT_ALGORITHM_IDENTIFIER = \"AWS4-HMAC-SHA256-PAYLOAD\";\nexport const UNSIGNED_PAYLOAD = \"UNSIGNED-PAYLOAD\";\nexport const MAX_CACHE_SIZE = 50;\nexport const KEY_TYPE_IDENTIFIER = \"aws4_request\";\nexport const MAX_PRESIGNED_TTL = 60 * 60 * 24 * 7;\n","import { toHex } from \"@smithy/util-hex-encoding\";\nimport { toUint8Array } from \"@smithy/util-utf8\";\nimport { KEY_TYPE_IDENTIFIER, MAX_CACHE_SIZE } from \"./constants\";\nconst signingKeyCache = {};\nconst cacheQueue = [];\nexport const createScope = (shortDate, region, service) => `${shortDate}/${region}/${service}/${KEY_TYPE_IDENTIFIER}`;\nexport const getSigningKey = async (sha256Constructor, credentials, shortDate, region, service) => {\n const credsHash = await hmac(sha256Constructor, credentials.secretAccessKey, credentials.accessKeyId);\n const cacheKey = `${shortDate}:${region}:${service}:${toHex(credsHash)}:${credentials.sessionToken}`;\n if (cacheKey in signingKeyCache) {\n return signingKeyCache[cacheKey];\n }\n cacheQueue.push(cacheKey);\n while (cacheQueue.length > MAX_CACHE_SIZE) {\n delete signingKeyCache[cacheQueue.shift()];\n }\n let key = `AWS4${credentials.secretAccessKey}`;\n for (const signable of [shortDate, region, service, KEY_TYPE_IDENTIFIER]) {\n key = await hmac(sha256Constructor, key, signable);\n }\n return (signingKeyCache[cacheKey] = key);\n};\nexport const clearCredentialCache = () => {\n cacheQueue.length = 0;\n Object.keys(signingKeyCache).forEach((cacheKey) => {\n delete signingKeyCache[cacheKey];\n });\n};\nconst hmac = (ctor, secret, data) => {\n const hash = new ctor(secret);\n hash.update(toUint8Array(data));\n return hash.digest();\n};\n","import { ALWAYS_UNSIGNABLE_HEADERS, PROXY_HEADER_PATTERN, SEC_HEADER_PATTERN } from \"./constants\";\nexport const getCanonicalHeaders = ({ headers }, unsignableHeaders, signableHeaders) => {\n const canonical = {};\n for (const headerName of Object.keys(headers).sort()) {\n if (headers[headerName] == undefined) {\n continue;\n }\n const canonicalHeaderName = headerName.toLowerCase();\n if (canonicalHeaderName in ALWAYS_UNSIGNABLE_HEADERS ||\n unsignableHeaders?.has(canonicalHeaderName) ||\n PROXY_HEADER_PATTERN.test(canonicalHeaderName) ||\n SEC_HEADER_PATTERN.test(canonicalHeaderName)) {\n if (!signableHeaders || (signableHeaders && !signableHeaders.has(canonicalHeaderName))) {\n continue;\n }\n }\n canonical[canonicalHeaderName] = headers[headerName].trim().replace(/\\s+/g, \" \");\n }\n return canonical;\n};\n","import { isArrayBuffer } from \"@smithy/is-array-buffer\";\nimport { toHex } from \"@smithy/util-hex-encoding\";\nimport { toUint8Array } from \"@smithy/util-utf8\";\nimport { SHA256_HEADER, UNSIGNED_PAYLOAD } from \"./constants\";\nexport const getPayloadHash = async ({ headers, body }, hashConstructor) => {\n for (const headerName of Object.keys(headers)) {\n if (headerName.toLowerCase() === SHA256_HEADER) {\n return headers[headerName];\n }\n }\n if (body == undefined) {\n return \"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855\";\n }\n else if (typeof body === \"string\" || ArrayBuffer.isView(body) || isArrayBuffer(body)) {\n const hashCtor = new hashConstructor();\n hashCtor.update(toUint8Array(body));\n return toHex(await hashCtor.digest());\n }\n return UNSIGNED_PAYLOAD;\n};\n","import { fromHex, toHex } from \"@smithy/util-hex-encoding\";\nimport { fromUtf8 } from \"@smithy/util-utf8\";\nexport class HeaderFormatter {\n format(headers) {\n const chunks = [];\n for (const headerName of Object.keys(headers)) {\n const bytes = fromUtf8(headerName);\n chunks.push(Uint8Array.from([bytes.byteLength]), bytes, this.formatHeaderValue(headers[headerName]));\n }\n const out = new Uint8Array(chunks.reduce((carry, bytes) => carry + bytes.byteLength, 0));\n let position = 0;\n for (const chunk of chunks) {\n out.set(chunk, position);\n position += chunk.byteLength;\n }\n return out;\n }\n formatHeaderValue(header) {\n switch (header.type) {\n case \"boolean\":\n return Uint8Array.from([header.value ? 0 : 1]);\n case \"byte\":\n return Uint8Array.from([2, header.value]);\n case \"short\":\n const shortView = new DataView(new ArrayBuffer(3));\n shortView.setUint8(0, 3);\n shortView.setInt16(1, header.value, false);\n return new Uint8Array(shortView.buffer);\n case \"integer\":\n const intView = new DataView(new ArrayBuffer(5));\n intView.setUint8(0, 4);\n intView.setInt32(1, header.value, false);\n return new Uint8Array(intView.buffer);\n case \"long\":\n const longBytes = new Uint8Array(9);\n longBytes[0] = 5;\n longBytes.set(header.value.bytes, 1);\n return longBytes;\n case \"binary\":\n const binView = new DataView(new ArrayBuffer(3 + header.value.byteLength));\n binView.setUint8(0, 6);\n binView.setUint16(1, header.value.byteLength, false);\n const binBytes = new Uint8Array(binView.buffer);\n binBytes.set(header.value, 3);\n return binBytes;\n case \"string\":\n const utf8Bytes = fromUtf8(header.value);\n const strView = new DataView(new ArrayBuffer(3 + utf8Bytes.byteLength));\n strView.setUint8(0, 7);\n strView.setUint16(1, utf8Bytes.byteLength, false);\n const strBytes = new Uint8Array(strView.buffer);\n strBytes.set(utf8Bytes, 3);\n return strBytes;\n case \"timestamp\":\n const tsBytes = new Uint8Array(9);\n tsBytes[0] = 8;\n tsBytes.set(Int64.fromNumber(header.value.valueOf()).bytes, 1);\n return tsBytes;\n case \"uuid\":\n if (!UUID_PATTERN.test(header.value)) {\n throw new Error(`Invalid UUID received: ${header.value}`);\n }\n const uuidBytes = new Uint8Array(17);\n uuidBytes[0] = 9;\n uuidBytes.set(fromHex(header.value.replace(/\\-/g, \"\")), 1);\n return uuidBytes;\n }\n }\n}\nvar HEADER_VALUE_TYPE;\n(function (HEADER_VALUE_TYPE) {\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"boolTrue\"] = 0] = \"boolTrue\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"boolFalse\"] = 1] = \"boolFalse\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"byte\"] = 2] = \"byte\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"short\"] = 3] = \"short\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"integer\"] = 4] = \"integer\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"long\"] = 5] = \"long\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"byteArray\"] = 6] = \"byteArray\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"string\"] = 7] = \"string\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"timestamp\"] = 8] = \"timestamp\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"uuid\"] = 9] = \"uuid\";\n})(HEADER_VALUE_TYPE || (HEADER_VALUE_TYPE = {}));\nconst UUID_PATTERN = /^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/;\nexport class Int64 {\n bytes;\n constructor(bytes) {\n this.bytes = bytes;\n if (bytes.byteLength !== 8) {\n throw new Error(\"Int64 buffers must be exactly 8 bytes\");\n }\n }\n static fromNumber(number) {\n if (number > 9_223_372_036_854_775_807 || number < -9_223_372_036_854_775_808) {\n throw new Error(`${number} is too large (or, if negative, too small) to represent as an Int64`);\n }\n const bytes = new Uint8Array(8);\n for (let i = 7, remaining = Math.abs(Math.round(number)); i > -1 && remaining > 0; i--, remaining /= 256) {\n bytes[i] = remaining;\n }\n if (number < 0) {\n negate(bytes);\n }\n return new Int64(bytes);\n }\n valueOf() {\n const bytes = this.bytes.slice(0);\n const negative = bytes[0] & 0b10000000;\n if (negative) {\n negate(bytes);\n }\n return parseInt(toHex(bytes), 16) * (negative ? -1 : 1);\n }\n toString() {\n return String(this.valueOf());\n }\n}\nfunction negate(bytes) {\n for (let i = 0; i < 8; i++) {\n bytes[i] ^= 0xff;\n }\n for (let i = 7; i > -1; i--) {\n bytes[i]++;\n if (bytes[i] !== 0)\n break;\n }\n}\n","export const hasHeader = (soughtHeader, headers) => {\n soughtHeader = soughtHeader.toLowerCase();\n for (const headerName of Object.keys(headers)) {\n if (soughtHeader === headerName.toLowerCase()) {\n return true;\n }\n }\n return false;\n};\nexport const getHeaderValue = (soughtHeader, headers) => {\n soughtHeader = soughtHeader.toLowerCase();\n for (const headerName of Object.keys(headers)) {\n if (soughtHeader === headerName.toLowerCase()) {\n return headers[headerName];\n }\n }\n return undefined;\n};\nexport const deleteHeader = (soughtHeader, headers) => {\n soughtHeader = soughtHeader.toLowerCase();\n for (const headerName of Object.keys(headers)) {\n if (soughtHeader === headerName.toLowerCase()) {\n delete headers[headerName];\n }\n }\n};\n","import { HttpRequest } from \"@smithy/protocol-http\";\nexport const moveHeadersToQuery = (request, options = {}) => {\n const { headers, query = {} } = HttpRequest.clone(request);\n for (const name of Object.keys(headers)) {\n const lname = name.toLowerCase();\n if ((lname.slice(0, 6) === \"x-amz-\" && !options.unhoistableHeaders?.has(lname)) ||\n options.hoistableHeaders?.has(lname)) {\n query[name] = headers[name];\n delete headers[name];\n }\n }\n return {\n ...request,\n headers,\n query,\n };\n};\n","import { HttpRequest } from \"@smithy/protocol-http\";\nimport { GENERATED_HEADERS } from \"./constants\";\nexport const prepareRequest = (request) => {\n request = HttpRequest.clone(request);\n for (const headerName of Object.keys(request.headers)) {\n if (GENERATED_HEADERS.indexOf(headerName.toLowerCase()) > -1) {\n delete request.headers[headerName];\n }\n }\n return request;\n};\n","import { toHex } from \"@smithy/util-hex-encoding\";\nimport { normalizeProvider } from \"@smithy/util-middleware\";\nimport { escapeUri } from \"@smithy/util-uri-escape\";\nimport { toUint8Array } from \"@smithy/util-utf8\";\nimport { getCanonicalQuery } from \"./getCanonicalQuery\";\nimport { iso8601 } from \"./utilDate\";\nexport class SignatureV4Base {\n service;\n regionProvider;\n credentialProvider;\n sha256;\n uriEscapePath;\n applyChecksum;\n constructor({ applyChecksum, credentials, region, service, sha256, uriEscapePath = true, }) {\n this.service = service;\n this.sha256 = sha256;\n this.uriEscapePath = uriEscapePath;\n this.applyChecksum = typeof applyChecksum === \"boolean\" ? applyChecksum : true;\n this.regionProvider = normalizeProvider(region);\n this.credentialProvider = normalizeProvider(credentials);\n }\n createCanonicalRequest(request, canonicalHeaders, payloadHash) {\n const sortedHeaders = Object.keys(canonicalHeaders).sort();\n return `${request.method}\n${this.getCanonicalPath(request)}\n${getCanonicalQuery(request)}\n${sortedHeaders.map((name) => `${name}:${canonicalHeaders[name]}`).join(\"\\n\")}\n\n${sortedHeaders.join(\";\")}\n${payloadHash}`;\n }\n async createStringToSign(longDate, credentialScope, canonicalRequest, algorithmIdentifier) {\n const hash = new this.sha256();\n hash.update(toUint8Array(canonicalRequest));\n const hashedRequest = await hash.digest();\n return `${algorithmIdentifier}\n${longDate}\n${credentialScope}\n${toHex(hashedRequest)}`;\n }\n getCanonicalPath({ path }) {\n if (this.uriEscapePath) {\n const normalizedPathSegments = [];\n for (const pathSegment of path.split(\"/\")) {\n if (pathSegment?.length === 0)\n continue;\n if (pathSegment === \".\")\n continue;\n if (pathSegment === \"..\") {\n normalizedPathSegments.pop();\n }\n else {\n normalizedPathSegments.push(pathSegment);\n }\n }\n const normalizedPath = `${path?.startsWith(\"/\") ? \"/\" : \"\"}${normalizedPathSegments.join(\"/\")}${normalizedPathSegments.length > 0 && path?.endsWith(\"/\") ? \"/\" : \"\"}`;\n const doubleEncoded = escapeUri(normalizedPath);\n return doubleEncoded.replace(/%2F/g, \"/\");\n }\n return path;\n }\n validateResolvedCredentials(credentials) {\n if (typeof credentials !== \"object\" ||\n typeof credentials.accessKeyId !== \"string\" ||\n typeof credentials.secretAccessKey !== \"string\") {\n throw new Error(\"Resolved credential object is not valid\");\n }\n }\n formatDate(now) {\n const longDate = iso8601(now).replace(/[\\-:]/g, \"\");\n return {\n longDate,\n shortDate: longDate.slice(0, 8),\n };\n }\n getCanonicalHeaderList(headers) {\n return Object.keys(headers).sort().join(\";\");\n }\n}\n","import { escapeUri } from \"@smithy/util-uri-escape\";\nimport { SIGNATURE_HEADER } from \"./constants\";\nexport const getCanonicalQuery = ({ query = {} }) => {\n const keys = [];\n const serialized = {};\n for (const key of Object.keys(query)) {\n if (key.toLowerCase() === SIGNATURE_HEADER) {\n continue;\n }\n const encodedKey = escapeUri(key);\n keys.push(encodedKey);\n const value = query[key];\n if (typeof value === \"string\") {\n serialized[encodedKey] = `${encodedKey}=${escapeUri(value)}`;\n }\n else if (Array.isArray(value)) {\n serialized[encodedKey] = value\n .slice(0)\n .reduce((encoded, value) => encoded.concat([`${encodedKey}=${escapeUri(value)}`]), [])\n .sort()\n .join(\"&\");\n }\n }\n return keys\n .sort()\n .map((key) => serialized[key])\n .filter((serialized) => serialized)\n .join(\"&\");\n};\n","export const iso8601 = (time) => toDate(time)\n .toISOString()\n .replace(/\\.\\d{3}Z$/, \"Z\");\nexport const toDate = (time) => {\n if (typeof time === \"number\") {\n return new Date(time * 1000);\n }\n if (typeof time === \"string\") {\n if (Number(time)) {\n return new Date(Number(time) * 1000);\n }\n return new Date(time);\n }\n return time;\n};\n","import { collectBody } from \"@smithy/smithy-client\";\nimport { toUtf8 } from \"@smithy/util-utf8\";\nexport const collectBodyString = (streamBody, context) => collectBody(streamBody, context).then((body) => (context?.utf8Encoder ?? toUtf8)(body));\n","export { collectBody } from \"@smithy/core/protocols\";\n","import { decorateServiceException } from \"./exceptions\";\nexport const throwDefaultError = ({ output, parsedBody, exceptionCtor, errorCode }) => {\n const $metadata = deserializeMetadata(output);\n const statusCode = $metadata.httpStatusCode ? $metadata.httpStatusCode + \"\" : undefined;\n const response = new exceptionCtor({\n name: parsedBody?.code || parsedBody?.Code || errorCode || statusCode || \"UnknownError\",\n $fault: \"client\",\n $metadata,\n });\n throw decorateServiceException(response, parsedBody);\n};\nexport const withBaseException = (ExceptionCtor) => {\n return ({ output, parsedBody, errorCode }) => {\n throwDefaultError({ output, parsedBody, exceptionCtor: ExceptionCtor, errorCode });\n };\n};\nconst deserializeMetadata = (output) => ({\n httpStatusCode: output.statusCode,\n requestId: output.headers[\"x-amzn-requestid\"] ?? output.headers[\"x-amzn-request-id\"] ?? output.headers[\"x-amz-request-id\"],\n extendedRequestId: output.headers[\"x-amz-id-2\"],\n cfId: output.headers[\"x-amz-cf-id\"],\n});\n","export const loadConfigsForDefaultMode = (mode) => {\n switch (mode) {\n case \"standard\":\n return {\n retryMode: \"standard\",\n connectionTimeout: 3100,\n };\n case \"in-region\":\n return {\n retryMode: \"standard\",\n connectionTimeout: 1100,\n };\n case \"cross-region\":\n return {\n retryMode: \"standard\",\n connectionTimeout: 3100,\n };\n case \"mobile\":\n return {\n retryMode: \"standard\",\n connectionTimeout: 30000,\n };\n default:\n return {};\n }\n};\n","let warningEmitted = false;\nexport const emitWarningIfUnsupportedVersion = (version) => {\n if (version && !warningEmitted && parseInt(version.substring(1, version.indexOf(\".\"))) < 16) {\n warningEmitted = true;\n }\n};\n","import { getChecksumConfiguration, resolveChecksumRuntimeConfig } from \"./checksum\";\nimport { getRetryConfiguration, resolveRetryRuntimeConfig } from \"./retry\";\nexport const getDefaultExtensionConfiguration = (runtimeConfig) => {\n return Object.assign(getChecksumConfiguration(runtimeConfig), getRetryConfiguration(runtimeConfig));\n};\nexport const getDefaultClientConfiguration = getDefaultExtensionConfiguration;\nexport const resolveDefaultRuntimeConfig = (config) => {\n return Object.assign(resolveChecksumRuntimeConfig(config), resolveRetryRuntimeConfig(config));\n};\n","import { AlgorithmId } from \"@smithy/types\";\nexport { AlgorithmId };\nexport const getChecksumConfiguration = (runtimeConfig) => {\n const checksumAlgorithms = [];\n for (const id in AlgorithmId) {\n const algorithmId = AlgorithmId[id];\n if (runtimeConfig[algorithmId] === undefined) {\n continue;\n }\n checksumAlgorithms.push({\n algorithmId: () => algorithmId,\n checksumConstructor: () => runtimeConfig[algorithmId],\n });\n }\n return {\n addChecksumAlgorithm(algo) {\n checksumAlgorithms.push(algo);\n },\n checksumAlgorithms() {\n return checksumAlgorithms;\n },\n };\n};\nexport const resolveChecksumRuntimeConfig = (clientConfig) => {\n const runtimeConfig = {};\n clientConfig.checksumAlgorithms().forEach((checksumAlgorithm) => {\n runtimeConfig[checksumAlgorithm.algorithmId()] = checksumAlgorithm.checksumConstructor();\n });\n return runtimeConfig;\n};\n","export const getRetryConfiguration = (runtimeConfig) => {\n return {\n setRetryStrategy(retryStrategy) {\n runtimeConfig.retryStrategy = retryStrategy;\n },\n retryStrategy() {\n return runtimeConfig.retryStrategy;\n },\n };\n};\nexport const resolveRetryRuntimeConfig = (retryStrategyConfiguration) => {\n const runtimeConfig = {};\n runtimeConfig.retryStrategy = retryStrategyConfiguration.retryStrategy();\n return runtimeConfig;\n};\n","export class NoOpLogger {\n trace() { }\n debug() { }\n info() { }\n warn() { }\n error() { }\n}\n","export const USER_AGENT = \"user-agent\";\nexport const X_AMZ_USER_AGENT = \"x-amz-user-agent\";\nexport const SPACE = \" \";\nexport const UA_NAME_SEPARATOR = \"/\";\nexport const UA_NAME_ESCAPE_REGEX = /[^\\!\\$\\%\\&\\'\\*\\+\\-\\.\\^\\_\\`\\|\\~\\d\\w]/g;\nexport const UA_VALUE_ESCAPE_REGEX = /[^\\!\\$\\%\\&\\'\\*\\+\\-\\.\\^\\_\\`\\|\\~\\d\\w\\#]/g;\nexport const UA_ESCAPE_CHAR = \"-\";\n","const BYTE_LIMIT = 1024;\nexport function encodeFeatures(features) {\n let buffer = \"\";\n for (const key in features) {\n const val = features[key];\n if (buffer.length + val.length + 1 <= BYTE_LIMIT) {\n if (buffer.length) {\n buffer += \",\" + val;\n }\n else {\n buffer += val;\n }\n continue;\n }\n break;\n }\n return buffer;\n}\n","export * from \"./configurations\";\nexport * from \"./user-agent-middleware\";\n","import { checkRegion } from \"./checkRegion\";\nimport { getRealRegion } from \"./getRealRegion\";\nimport { isFipsRegion } from \"./isFipsRegion\";\nexport const resolveRegionConfig = (input) => {\n const { region, useFipsEndpoint } = input;\n if (!region) {\n throw new Error(\"Region is missing\");\n }\n return Object.assign(input, {\n region: async () => {\n const providedRegion = typeof region === \"function\" ? await region() : region;\n const realRegion = getRealRegion(providedRegion);\n checkRegion(realRegion);\n return realRegion;\n },\n useFipsEndpoint: async () => {\n const providedRegion = typeof region === \"string\" ? region : await region();\n if (isFipsRegion(providedRegion)) {\n return true;\n }\n return typeof useFipsEndpoint !== \"function\" ? Promise.resolve(!!useFipsEndpoint) : useFipsEndpoint();\n },\n });\n};\n","import { isValidHostLabel } from \"@smithy/util-endpoints\";\nconst validRegions = new Set();\nexport const checkRegion = (region, check = isValidHostLabel) => {\n if (!validRegions.has(region) && !check(region)) {\n if (region === \"*\") {\n console.warn(`@smithy/config-resolver WARN - Please use the caller region instead of \"*\". See \"sigv4a\" in https://github.com/aws/aws-sdk-js-v3/blob/main/supplemental-docs/CLIENTS.md.`);\n }\n else {\n throw new Error(`Region not accepted: region=\"${region}\" is not a valid hostname component.`);\n }\n }\n else {\n validRegions.add(region);\n }\n};\n","import { isFipsRegion } from \"./isFipsRegion\";\nexport const getRealRegion = (region) => isFipsRegion(region)\n ? [\"fips-aws-global\", \"aws-fips\"].includes(region)\n ? \"us-east-1\"\n : region.replace(/fips-(dkr-|prod-)?|-fips/, \"\")\n : region;\n","export const isFipsRegion = (region) => typeof region === \"string\" && (region.startsWith(\"fips-\") || region.endsWith(\"-fips\"));\n","import { HttpRequest } from \"@smithy/protocol-http\";\nconst CONTENT_LENGTH_HEADER = \"content-length\";\nexport function contentLengthMiddleware(bodyLengthChecker) {\n return (next) => async (args) => {\n const request = args.request;\n if (HttpRequest.isInstance(request)) {\n const { body, headers } = request;\n if (body &&\n Object.keys(headers)\n .map((str) => str.toLowerCase())\n .indexOf(CONTENT_LENGTH_HEADER) === -1) {\n try {\n const length = bodyLengthChecker(body);\n request.headers = {\n ...request.headers,\n [CONTENT_LENGTH_HEADER]: String(length),\n };\n }\n catch (error) {\n }\n }\n }\n return next({\n ...args,\n request,\n });\n };\n}\nexport const contentLengthMiddlewareOptions = {\n step: \"build\",\n tags: [\"SET_CONTENT_LENGTH\", \"CONTENT_LENGTH\"],\n name: \"contentLengthMiddleware\",\n override: true,\n};\nexport const getContentLengthPlugin = (options) => ({\n applyToStack: (clientStack) => {\n clientStack.add(contentLengthMiddleware(options.bodyLengthChecker), contentLengthMiddlewareOptions);\n },\n});\n","import { serializerMiddlewareOption } from \"@smithy/middleware-serde\";\nimport { endpointMiddleware } from \"./endpointMiddleware\";\nexport const endpointMiddlewareOptions = {\n step: \"serialize\",\n tags: [\"ENDPOINT_PARAMETERS\", \"ENDPOINT_V2\", \"ENDPOINT\"],\n name: \"endpointV2Middleware\",\n override: true,\n relation: \"before\",\n toMiddleware: serializerMiddlewareOption.name,\n};\nexport const getEndpointPlugin = (config, instructions) => ({\n applyToStack: (clientStack) => {\n clientStack.addRelativeTo(endpointMiddleware({\n config,\n instructions,\n }), endpointMiddlewareOptions);\n },\n});\n","import { setFeature } from \"@smithy/core\";\nimport { getSmithyContext } from \"@smithy/util-middleware\";\nimport { getEndpointFromInstructions } from \"./adaptors/getEndpointFromInstructions\";\nexport const endpointMiddleware = ({ config, instructions, }) => {\n return (next, context) => async (args) => {\n if (config.isCustomEndpoint) {\n setFeature(context, \"ENDPOINT_OVERRIDE\", \"N\");\n }\n const endpoint = await getEndpointFromInstructions(args.input, {\n getEndpointParameterInstructions() {\n return instructions;\n },\n }, { ...config }, context);\n context.endpointV2 = endpoint;\n context.authSchemes = endpoint.properties?.authSchemes;\n const authScheme = context.authSchemes?.[0];\n if (authScheme) {\n context[\"signing_region\"] = authScheme.signingRegion;\n context[\"signing_service\"] = authScheme.signingName;\n const smithyContext = getSmithyContext(context);\n const httpAuthOption = smithyContext?.selectedHttpAuthScheme?.httpAuthOption;\n if (httpAuthOption) {\n httpAuthOption.signingProperties = Object.assign(httpAuthOption.signingProperties || {}, {\n signing_region: authScheme.signingRegion,\n signingRegion: authScheme.signingRegion,\n signing_service: authScheme.signingName,\n signingName: authScheme.signingName,\n signingRegionSet: authScheme.signingRegionSet,\n }, authScheme.properties);\n }\n }\n return next({\n ...args,\n });\n };\n};\n","import { resolveParamsForS3 } from \"../service-customizations\";\nimport { createConfigValueProvider } from \"./createConfigValueProvider\";\nimport { getEndpointFromConfig } from \"./getEndpointFromConfig\";\nimport { toEndpointV1 } from \"./toEndpointV1\";\nexport const getEndpointFromInstructions = async (commandInput, instructionsSupplier, clientConfig, context) => {\n if (!clientConfig.isCustomEndpoint) {\n let endpointFromConfig;\n if (clientConfig.serviceConfiguredEndpoint) {\n endpointFromConfig = await clientConfig.serviceConfiguredEndpoint();\n }\n else {\n endpointFromConfig = await getEndpointFromConfig(clientConfig.serviceId);\n }\n if (endpointFromConfig) {\n clientConfig.endpoint = () => Promise.resolve(toEndpointV1(endpointFromConfig));\n clientConfig.isCustomEndpoint = true;\n }\n }\n const endpointParams = await resolveParams(commandInput, instructionsSupplier, clientConfig);\n if (typeof clientConfig.endpointProvider !== \"function\") {\n throw new Error(\"config.endpointProvider is not set.\");\n }\n const endpoint = clientConfig.endpointProvider(endpointParams, context);\n return endpoint;\n};\nexport const resolveParams = async (commandInput, instructionsSupplier, clientConfig) => {\n const endpointParams = {};\n const instructions = instructionsSupplier?.getEndpointParameterInstructions?.() || {};\n for (const [name, instruction] of Object.entries(instructions)) {\n switch (instruction.type) {\n case \"staticContextParams\":\n endpointParams[name] = instruction.value;\n break;\n case \"contextParams\":\n endpointParams[name] = commandInput[instruction.name];\n break;\n case \"clientContextParams\":\n case \"builtInParams\":\n endpointParams[name] = await createConfigValueProvider(instruction.name, name, clientConfig)();\n break;\n case \"operationContextParams\":\n endpointParams[name] = instruction.get(commandInput);\n break;\n default:\n throw new Error(\"Unrecognized endpoint parameter instruction: \" + JSON.stringify(instruction));\n }\n }\n if (Object.keys(instructions).length === 0) {\n Object.assign(endpointParams, clientConfig);\n }\n if (String(clientConfig.serviceId).toLowerCase() === \"s3\") {\n await resolveParamsForS3(endpointParams);\n }\n return endpointParams;\n};\n","export const resolveParamsForS3 = async (endpointParams) => {\n const bucket = endpointParams?.Bucket || \"\";\n if (typeof endpointParams.Bucket === \"string\") {\n endpointParams.Bucket = bucket.replace(/#/g, encodeURIComponent(\"#\")).replace(/\\?/g, encodeURIComponent(\"?\"));\n }\n if (isArnBucketName(bucket)) {\n if (endpointParams.ForcePathStyle === true) {\n throw new Error(\"Path-style addressing cannot be used with ARN buckets\");\n }\n }\n else if (!isDnsCompatibleBucketName(bucket) ||\n (bucket.indexOf(\".\") !== -1 && !String(endpointParams.Endpoint).startsWith(\"http:\")) ||\n bucket.toLowerCase() !== bucket ||\n bucket.length < 3) {\n endpointParams.ForcePathStyle = true;\n }\n if (endpointParams.DisableMultiRegionAccessPoints) {\n endpointParams.disableMultiRegionAccessPoints = true;\n endpointParams.DisableMRAP = true;\n }\n return endpointParams;\n};\nconst DOMAIN_PATTERN = /^[a-z0-9][a-z0-9\\.\\-]{1,61}[a-z0-9]$/;\nconst IP_ADDRESS_PATTERN = /(\\d+\\.){3}\\d+/;\nconst DOTS_PATTERN = /\\.\\./;\nexport const DOT_PATTERN = /\\./;\nexport const S3_HOSTNAME_PATTERN = /^(.+\\.)?s3(-fips)?(\\.dualstack)?[.-]([a-z0-9-]+)\\./;\nexport const isDnsCompatibleBucketName = (bucketName) => DOMAIN_PATTERN.test(bucketName) && !IP_ADDRESS_PATTERN.test(bucketName) && !DOTS_PATTERN.test(bucketName);\nexport const isArnBucketName = (bucketName) => {\n const [arn, partition, service, , , bucket] = bucketName.split(\":\");\n const isArn = arn === \"arn\" && bucketName.split(\":\").length >= 6;\n const isValidArn = Boolean(isArn && partition && service && bucket);\n if (isArn && !isValidArn) {\n throw new Error(`Invalid ARN: ${bucketName} was an invalid ARN.`);\n }\n return isValidArn;\n};\n","export const createConfigValueProvider = (configKey, canonicalEndpointParamKey, config) => {\n const configProvider = async () => {\n const configValue = config[configKey] ?? config[canonicalEndpointParamKey];\n if (typeof configValue === \"function\") {\n return configValue();\n }\n return configValue;\n };\n if (configKey === \"credentialScope\" || canonicalEndpointParamKey === \"CredentialScope\") {\n return async () => {\n const credentials = typeof config.credentials === \"function\" ? await config.credentials() : config.credentials;\n const configValue = credentials?.credentialScope ?? credentials?.CredentialScope;\n return configValue;\n };\n }\n if (configKey === \"accountId\" || canonicalEndpointParamKey === \"AccountId\") {\n return async () => {\n const credentials = typeof config.credentials === \"function\" ? await config.credentials() : config.credentials;\n const configValue = credentials?.accountId ?? credentials?.AccountId;\n return configValue;\n };\n }\n if (configKey === \"endpoint\" || canonicalEndpointParamKey === \"endpoint\") {\n return async () => {\n if (config.isCustomEndpoint === false) {\n return undefined;\n }\n const endpoint = await configProvider();\n if (endpoint && typeof endpoint === \"object\") {\n if (\"url\" in endpoint) {\n return endpoint.url.href;\n }\n if (\"hostname\" in endpoint) {\n const { protocol, hostname, port, path } = endpoint;\n return `${protocol}//${hostname}${port ? \":\" + port : \"\"}${path}`;\n }\n }\n return endpoint;\n };\n }\n return configProvider;\n};\n","import { loadConfig } from \"@smithy/node-config-provider\";\nimport { getEndpointUrlConfig } from \"./getEndpointUrlConfig\";\nexport const getEndpointFromConfig = async (serviceId) => loadConfig(getEndpointUrlConfig(serviceId ?? \"\"))();\n","import { CONFIG_PREFIX_SEPARATOR } from \"@smithy/shared-ini-file-loader\";\nconst ENV_ENDPOINT_URL = \"AWS_ENDPOINT_URL\";\nconst CONFIG_ENDPOINT_URL = \"endpoint_url\";\nexport const getEndpointUrlConfig = (serviceId) => ({\n environmentVariableSelector: (env) => {\n const serviceSuffixParts = serviceId.split(\" \").map((w) => w.toUpperCase());\n const serviceEndpointUrl = env[[ENV_ENDPOINT_URL, ...serviceSuffixParts].join(\"_\")];\n if (serviceEndpointUrl)\n return serviceEndpointUrl;\n const endpointUrl = env[ENV_ENDPOINT_URL];\n if (endpointUrl)\n return endpointUrl;\n return undefined;\n },\n configFileSelector: (profile, config) => {\n if (config && profile.services) {\n const servicesSection = config[[\"services\", profile.services].join(CONFIG_PREFIX_SEPARATOR)];\n if (servicesSection) {\n const servicePrefixParts = serviceId.split(\" \").map((w) => w.toLowerCase());\n const endpointUrl = servicesSection[[servicePrefixParts.join(\"_\"), CONFIG_ENDPOINT_URL].join(CONFIG_PREFIX_SEPARATOR)];\n if (endpointUrl)\n return endpointUrl;\n }\n }\n const endpointUrl = profile[CONFIG_ENDPOINT_URL];\n if (endpointUrl)\n return endpointUrl;\n return undefined;\n },\n default: undefined,\n});\n","import { parseUrl } from \"@smithy/url-parser\";\nexport const toEndpointV1 = (endpoint) => {\n if (typeof endpoint === \"object\") {\n if (\"url\" in endpoint) {\n return parseUrl(endpoint.url);\n }\n return endpoint;\n }\n return parseUrl(endpoint);\n};\n","import { normalizeProvider } from \"@smithy/util-middleware\";\nimport { getEndpointFromConfig } from \"./adaptors/getEndpointFromConfig\";\nimport { toEndpointV1 } from \"./adaptors/toEndpointV1\";\nexport const resolveEndpointConfig = (input) => {\n const tls = input.tls ?? true;\n const { endpoint, useDualstackEndpoint, useFipsEndpoint } = input;\n const customEndpointProvider = endpoint != null ? async () => toEndpointV1(await normalizeProvider(endpoint)()) : undefined;\n const isCustomEndpoint = !!endpoint;\n const resolvedConfig = Object.assign(input, {\n endpoint: customEndpointProvider,\n tls,\n isCustomEndpoint,\n useDualstackEndpoint: normalizeProvider(useDualstackEndpoint ?? false),\n useFipsEndpoint: normalizeProvider(useFipsEndpoint ?? false),\n });\n let configuredEndpointPromise = undefined;\n resolvedConfig.serviceConfiguredEndpoint = async () => {\n if (input.serviceId && !configuredEndpointPromise) {\n configuredEndpointPromise = getEndpointFromConfig(input.serviceId);\n }\n return configuredEndpointPromise;\n };\n return resolvedConfig;\n};\n","import { normalizeProvider } from \"@smithy/util-middleware\";\nimport { AdaptiveRetryStrategy, DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE, RETRY_MODES, StandardRetryStrategy, } from \"@smithy/util-retry\";\nexport const ENV_MAX_ATTEMPTS = \"AWS_MAX_ATTEMPTS\";\nexport const CONFIG_MAX_ATTEMPTS = \"max_attempts\";\nexport const NODE_MAX_ATTEMPT_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => {\n const value = env[ENV_MAX_ATTEMPTS];\n if (!value)\n return undefined;\n const maxAttempt = parseInt(value);\n if (Number.isNaN(maxAttempt)) {\n throw new Error(`Environment variable ${ENV_MAX_ATTEMPTS} mast be a number, got \"${value}\"`);\n }\n return maxAttempt;\n },\n configFileSelector: (profile) => {\n const value = profile[CONFIG_MAX_ATTEMPTS];\n if (!value)\n return undefined;\n const maxAttempt = parseInt(value);\n if (Number.isNaN(maxAttempt)) {\n throw new Error(`Shared config file entry ${CONFIG_MAX_ATTEMPTS} mast be a number, got \"${value}\"`);\n }\n return maxAttempt;\n },\n default: DEFAULT_MAX_ATTEMPTS,\n};\nexport const resolveRetryConfig = (input) => {\n const { retryStrategy, retryMode: _retryMode, maxAttempts: _maxAttempts } = input;\n const maxAttempts = normalizeProvider(_maxAttempts ?? DEFAULT_MAX_ATTEMPTS);\n return Object.assign(input, {\n maxAttempts,\n retryStrategy: async () => {\n if (retryStrategy) {\n return retryStrategy;\n }\n const retryMode = await normalizeProvider(_retryMode)();\n if (retryMode === RETRY_MODES.ADAPTIVE) {\n return new AdaptiveRetryStrategy(maxAttempts);\n }\n return new StandardRetryStrategy(maxAttempts);\n },\n });\n};\nexport const ENV_RETRY_MODE = \"AWS_RETRY_MODE\";\nexport const CONFIG_RETRY_MODE = \"retry_mode\";\nexport const NODE_RETRY_MODE_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => env[ENV_RETRY_MODE],\n configFileSelector: (profile) => profile[CONFIG_RETRY_MODE],\n default: DEFAULT_RETRY_MODE,\n};\n","import { RETRY_MODES } from \"./config\";\nimport { DefaultRateLimiter } from \"./DefaultRateLimiter\";\nimport { StandardRetryStrategy } from \"./StandardRetryStrategy\";\nexport class AdaptiveRetryStrategy {\n maxAttemptsProvider;\n rateLimiter;\n standardRetryStrategy;\n mode = RETRY_MODES.ADAPTIVE;\n constructor(maxAttemptsProvider, options) {\n this.maxAttemptsProvider = maxAttemptsProvider;\n const { rateLimiter } = options ?? {};\n this.rateLimiter = rateLimiter ?? new DefaultRateLimiter();\n this.standardRetryStrategy = new StandardRetryStrategy(maxAttemptsProvider);\n }\n async acquireInitialRetryToken(retryTokenScope) {\n await this.rateLimiter.getSendToken();\n return this.standardRetryStrategy.acquireInitialRetryToken(retryTokenScope);\n }\n async refreshRetryTokenForRetry(tokenToRenew, errorInfo) {\n this.rateLimiter.updateClientSendingRate(errorInfo);\n return this.standardRetryStrategy.refreshRetryTokenForRetry(tokenToRenew, errorInfo);\n }\n recordSuccess(token) {\n this.rateLimiter.updateClientSendingRate({});\n this.standardRetryStrategy.recordSuccess(token);\n }\n}\n","export var RETRY_MODES;\n(function (RETRY_MODES) {\n RETRY_MODES[\"STANDARD\"] = \"standard\";\n RETRY_MODES[\"ADAPTIVE\"] = \"adaptive\";\n})(RETRY_MODES || (RETRY_MODES = {}));\nexport const DEFAULT_MAX_ATTEMPTS = 3;\nexport const DEFAULT_RETRY_MODE = RETRY_MODES.STANDARD;\n","import { isThrottlingError } from \"@smithy/service-error-classification\";\nexport class DefaultRateLimiter {\n static setTimeoutFn = setTimeout;\n beta;\n minCapacity;\n minFillRate;\n scaleConstant;\n smooth;\n currentCapacity = 0;\n enabled = false;\n lastMaxRate = 0;\n measuredTxRate = 0;\n requestCount = 0;\n fillRate;\n lastThrottleTime;\n lastTimestamp = 0;\n lastTxRateBucket;\n maxCapacity;\n timeWindow = 0;\n constructor(options) {\n this.beta = options?.beta ?? 0.7;\n this.minCapacity = options?.minCapacity ?? 1;\n this.minFillRate = options?.minFillRate ?? 0.5;\n this.scaleConstant = options?.scaleConstant ?? 0.4;\n this.smooth = options?.smooth ?? 0.8;\n const currentTimeInSeconds = this.getCurrentTimeInSeconds();\n this.lastThrottleTime = currentTimeInSeconds;\n this.lastTxRateBucket = Math.floor(this.getCurrentTimeInSeconds());\n this.fillRate = this.minFillRate;\n this.maxCapacity = this.minCapacity;\n }\n getCurrentTimeInSeconds() {\n return Date.now() / 1000;\n }\n async getSendToken() {\n return this.acquireTokenBucket(1);\n }\n async acquireTokenBucket(amount) {\n if (!this.enabled) {\n return;\n }\n this.refillTokenBucket();\n if (amount > this.currentCapacity) {\n const delay = ((amount - this.currentCapacity) / this.fillRate) * 1000;\n await new Promise((resolve) => DefaultRateLimiter.setTimeoutFn(resolve, delay));\n }\n this.currentCapacity = this.currentCapacity - amount;\n }\n refillTokenBucket() {\n const timestamp = this.getCurrentTimeInSeconds();\n if (!this.lastTimestamp) {\n this.lastTimestamp = timestamp;\n return;\n }\n const fillAmount = (timestamp - this.lastTimestamp) * this.fillRate;\n this.currentCapacity = Math.min(this.maxCapacity, this.currentCapacity + fillAmount);\n this.lastTimestamp = timestamp;\n }\n updateClientSendingRate(response) {\n let calculatedRate;\n this.updateMeasuredRate();\n if (isThrottlingError(response)) {\n const rateToUse = !this.enabled ? this.measuredTxRate : Math.min(this.measuredTxRate, this.fillRate);\n this.lastMaxRate = rateToUse;\n this.calculateTimeWindow();\n this.lastThrottleTime = this.getCurrentTimeInSeconds();\n calculatedRate = this.cubicThrottle(rateToUse);\n this.enableTokenBucket();\n }\n else {\n this.calculateTimeWindow();\n calculatedRate = this.cubicSuccess(this.getCurrentTimeInSeconds());\n }\n const newRate = Math.min(calculatedRate, 2 * this.measuredTxRate);\n this.updateTokenBucketRate(newRate);\n }\n calculateTimeWindow() {\n this.timeWindow = this.getPrecise(Math.pow((this.lastMaxRate * (1 - this.beta)) / this.scaleConstant, 1 / 3));\n }\n cubicThrottle(rateToUse) {\n return this.getPrecise(rateToUse * this.beta);\n }\n cubicSuccess(timestamp) {\n return this.getPrecise(this.scaleConstant * Math.pow(timestamp - this.lastThrottleTime - this.timeWindow, 3) + this.lastMaxRate);\n }\n enableTokenBucket() {\n this.enabled = true;\n }\n updateTokenBucketRate(newRate) {\n this.refillTokenBucket();\n this.fillRate = Math.max(newRate, this.minFillRate);\n this.maxCapacity = Math.max(newRate, this.minCapacity);\n this.currentCapacity = Math.min(this.currentCapacity, this.maxCapacity);\n }\n updateMeasuredRate() {\n const t = this.getCurrentTimeInSeconds();\n const timeBucket = Math.floor(t * 2) / 2;\n this.requestCount++;\n if (timeBucket > this.lastTxRateBucket) {\n const currentRate = this.requestCount / (timeBucket - this.lastTxRateBucket);\n this.measuredTxRate = this.getPrecise(currentRate * this.smooth + this.measuredTxRate * (1 - this.smooth));\n this.requestCount = 0;\n this.lastTxRateBucket = timeBucket;\n }\n }\n getPrecise(num) {\n return parseFloat(num.toFixed(8));\n }\n}\n","import { CLOCK_SKEW_ERROR_CODES, NODEJS_NETWORK_ERROR_CODES, NODEJS_TIMEOUT_ERROR_CODES, THROTTLING_ERROR_CODES, TRANSIENT_ERROR_CODES, TRANSIENT_ERROR_STATUS_CODES, } from \"./constants\";\nexport const isRetryableByTrait = (error) => error?.$retryable !== undefined;\nexport const isClockSkewError = (error) => CLOCK_SKEW_ERROR_CODES.includes(error.name);\nexport const isClockSkewCorrectedError = (error) => error.$metadata?.clockSkewCorrected;\nexport const isBrowserNetworkError = (error) => {\n const errorMessages = new Set([\n \"Failed to fetch\",\n \"NetworkError when attempting to fetch resource\",\n \"The Internet connection appears to be offline\",\n \"Load failed\",\n \"Network request failed\",\n ]);\n const isValid = error && error instanceof TypeError;\n if (!isValid) {\n return false;\n }\n return errorMessages.has(error.message);\n};\nexport const isThrottlingError = (error) => error.$metadata?.httpStatusCode === 429 ||\n THROTTLING_ERROR_CODES.includes(error.name) ||\n error.$retryable?.throttling == true;\nexport const isTransientError = (error, depth = 0) => isRetryableByTrait(error) ||\n isClockSkewCorrectedError(error) ||\n TRANSIENT_ERROR_CODES.includes(error.name) ||\n NODEJS_TIMEOUT_ERROR_CODES.includes(error?.code || \"\") ||\n NODEJS_NETWORK_ERROR_CODES.includes(error?.code || \"\") ||\n TRANSIENT_ERROR_STATUS_CODES.includes(error.$metadata?.httpStatusCode || 0) ||\n isBrowserNetworkError(error) ||\n (error.cause !== undefined && depth <= 10 && isTransientError(error.cause, depth + 1));\nexport const isServerError = (error) => {\n if (error.$metadata?.httpStatusCode !== undefined) {\n const statusCode = error.$metadata.httpStatusCode;\n if (500 <= statusCode && statusCode <= 599 && !isTransientError(error)) {\n return true;\n }\n return false;\n }\n return false;\n};\n","export const CLOCK_SKEW_ERROR_CODES = [\n \"AuthFailure\",\n \"InvalidSignatureException\",\n \"RequestExpired\",\n \"RequestInTheFuture\",\n \"RequestTimeTooSkewed\",\n \"SignatureDoesNotMatch\",\n];\nexport const THROTTLING_ERROR_CODES = [\n \"BandwidthLimitExceeded\",\n \"EC2ThrottledException\",\n \"LimitExceededException\",\n \"PriorRequestNotComplete\",\n \"ProvisionedThroughputExceededException\",\n \"RequestLimitExceeded\",\n \"RequestThrottled\",\n \"RequestThrottledException\",\n \"SlowDown\",\n \"ThrottledException\",\n \"Throttling\",\n \"ThrottlingException\",\n \"TooManyRequestsException\",\n \"TransactionInProgressException\",\n];\nexport const TRANSIENT_ERROR_CODES = [\"TimeoutError\", \"RequestTimeout\", \"RequestTimeoutException\"];\nexport const TRANSIENT_ERROR_STATUS_CODES = [500, 502, 503, 504];\nexport const NODEJS_TIMEOUT_ERROR_CODES = [\"ECONNRESET\", \"ECONNREFUSED\", \"EPIPE\", \"ETIMEDOUT\"];\nexport const NODEJS_NETWORK_ERROR_CODES = [\"EHOSTUNREACH\", \"ENETUNREACH\", \"ENOTFOUND\"];\n","import { DEFAULT_MAX_ATTEMPTS, RETRY_MODES } from \"./config\";\nimport { DEFAULT_RETRY_DELAY_BASE, INITIAL_RETRY_TOKENS, NO_RETRY_INCREMENT, RETRY_COST, THROTTLING_RETRY_DELAY_BASE, TIMEOUT_RETRY_COST, } from \"./constants\";\nimport { getDefaultRetryBackoffStrategy } from \"./defaultRetryBackoffStrategy\";\nimport { createDefaultRetryToken } from \"./defaultRetryToken\";\nexport class StandardRetryStrategy {\n maxAttempts;\n mode = RETRY_MODES.STANDARD;\n capacity = INITIAL_RETRY_TOKENS;\n retryBackoffStrategy = getDefaultRetryBackoffStrategy();\n maxAttemptsProvider;\n constructor(maxAttempts) {\n this.maxAttempts = maxAttempts;\n this.maxAttemptsProvider = typeof maxAttempts === \"function\" ? maxAttempts : async () => maxAttempts;\n }\n async acquireInitialRetryToken(retryTokenScope) {\n return createDefaultRetryToken({\n retryDelay: DEFAULT_RETRY_DELAY_BASE,\n retryCount: 0,\n });\n }\n async refreshRetryTokenForRetry(token, errorInfo) {\n const maxAttempts = await this.getMaxAttempts();\n if (this.shouldRetry(token, errorInfo, maxAttempts)) {\n const errorType = errorInfo.errorType;\n this.retryBackoffStrategy.setDelayBase(errorType === \"THROTTLING\" ? THROTTLING_RETRY_DELAY_BASE : DEFAULT_RETRY_DELAY_BASE);\n const delayFromErrorType = this.retryBackoffStrategy.computeNextBackoffDelay(token.getRetryCount());\n const retryDelay = errorInfo.retryAfterHint\n ? Math.max(errorInfo.retryAfterHint.getTime() - Date.now() || 0, delayFromErrorType)\n : delayFromErrorType;\n const capacityCost = this.getCapacityCost(errorType);\n this.capacity -= capacityCost;\n return createDefaultRetryToken({\n retryDelay,\n retryCount: token.getRetryCount() + 1,\n retryCost: capacityCost,\n });\n }\n throw new Error(\"No retry token available\");\n }\n recordSuccess(token) {\n this.capacity = Math.max(INITIAL_RETRY_TOKENS, this.capacity + (token.getRetryCost() ?? NO_RETRY_INCREMENT));\n }\n getCapacity() {\n return this.capacity;\n }\n async getMaxAttempts() {\n try {\n return await this.maxAttemptsProvider();\n }\n catch (error) {\n console.warn(`Max attempts provider could not resolve. Using default of ${DEFAULT_MAX_ATTEMPTS}`);\n return DEFAULT_MAX_ATTEMPTS;\n }\n }\n shouldRetry(tokenToRenew, errorInfo, maxAttempts) {\n const attempts = tokenToRenew.getRetryCount() + 1;\n return (attempts < maxAttempts &&\n this.capacity >= this.getCapacityCost(errorInfo.errorType) &&\n this.isRetryableError(errorInfo.errorType));\n }\n getCapacityCost(errorType) {\n return errorType === \"TRANSIENT\" ? TIMEOUT_RETRY_COST : RETRY_COST;\n }\n isRetryableError(errorType) {\n return errorType === \"THROTTLING\" || errorType === \"TRANSIENT\";\n }\n}\n","export const DEFAULT_RETRY_DELAY_BASE = 100;\nexport const MAXIMUM_RETRY_DELAY = 20 * 1000;\nexport const THROTTLING_RETRY_DELAY_BASE = 500;\nexport const INITIAL_RETRY_TOKENS = 500;\nexport const RETRY_COST = 5;\nexport const TIMEOUT_RETRY_COST = 10;\nexport const NO_RETRY_INCREMENT = 1;\nexport const INVOCATION_ID_HEADER = \"amz-sdk-invocation-id\";\nexport const REQUEST_HEADER = \"amz-sdk-request\";\n","import { DEFAULT_RETRY_DELAY_BASE, MAXIMUM_RETRY_DELAY } from \"./constants\";\nexport const getDefaultRetryBackoffStrategy = () => {\n let delayBase = DEFAULT_RETRY_DELAY_BASE;\n const computeNextBackoffDelay = (attempts) => {\n return Math.floor(Math.min(MAXIMUM_RETRY_DELAY, Math.random() * 2 ** attempts * delayBase));\n };\n const setDelayBase = (delay) => {\n delayBase = delay;\n };\n return {\n computeNextBackoffDelay,\n setDelayBase,\n };\n};\n","import { MAXIMUM_RETRY_DELAY } from \"./constants\";\nexport const createDefaultRetryToken = ({ retryDelay, retryCount, retryCost, }) => {\n const getRetryCount = () => retryCount;\n const getRetryDelay = () => Math.min(MAXIMUM_RETRY_DELAY, retryDelay);\n const getRetryCost = () => retryCost;\n return {\n getRetryCount,\n getRetryDelay,\n getRetryCost,\n };\n};\n","import { HttpRequest, HttpResponse } from \"@smithy/protocol-http\";\nimport { isServerError, isThrottlingError, isTransientError } from \"@smithy/service-error-classification\";\nimport { NoOpLogger } from \"@smithy/smithy-client\";\nimport { INVOCATION_ID_HEADER, REQUEST_HEADER } from \"@smithy/util-retry\";\nimport { v4 } from \"@smithy/uuid\";\nimport { isStreamingPayload } from \"./isStreamingPayload/isStreamingPayload\";\nimport { asSdkError } from \"./util\";\nexport const retryMiddleware = (options) => (next, context) => async (args) => {\n let retryStrategy = await options.retryStrategy();\n const maxAttempts = await options.maxAttempts();\n if (isRetryStrategyV2(retryStrategy)) {\n retryStrategy = retryStrategy;\n let retryToken = await retryStrategy.acquireInitialRetryToken(context[\"partition_id\"]);\n let lastError = new Error();\n let attempts = 0;\n let totalRetryDelay = 0;\n const { request } = args;\n const isRequest = HttpRequest.isInstance(request);\n if (isRequest) {\n request.headers[INVOCATION_ID_HEADER] = v4();\n }\n while (true) {\n try {\n if (isRequest) {\n request.headers[REQUEST_HEADER] = `attempt=${attempts + 1}; max=${maxAttempts}`;\n }\n const { response, output } = await next(args);\n retryStrategy.recordSuccess(retryToken);\n output.$metadata.attempts = attempts + 1;\n output.$metadata.totalRetryDelay = totalRetryDelay;\n return { response, output };\n }\n catch (e) {\n const retryErrorInfo = getRetryErrorInfo(e);\n lastError = asSdkError(e);\n if (isRequest && isStreamingPayload(request)) {\n (context.logger instanceof NoOpLogger ? console : context.logger)?.warn(\"An error was encountered in a non-retryable streaming request.\");\n throw lastError;\n }\n try {\n retryToken = await retryStrategy.refreshRetryTokenForRetry(retryToken, retryErrorInfo);\n }\n catch (refreshError) {\n if (!lastError.$metadata) {\n lastError.$metadata = {};\n }\n lastError.$metadata.attempts = attempts + 1;\n lastError.$metadata.totalRetryDelay = totalRetryDelay;\n throw lastError;\n }\n attempts = retryToken.getRetryCount();\n const delay = retryToken.getRetryDelay();\n totalRetryDelay += delay;\n await new Promise((resolve) => setTimeout(resolve, delay));\n }\n }\n }\n else {\n retryStrategy = retryStrategy;\n if (retryStrategy?.mode)\n context.userAgent = [...(context.userAgent || []), [\"cfg/retry-mode\", retryStrategy.mode]];\n return retryStrategy.retry(next, args);\n }\n};\nconst isRetryStrategyV2 = (retryStrategy) => typeof retryStrategy.acquireInitialRetryToken !== \"undefined\" &&\n typeof retryStrategy.refreshRetryTokenForRetry !== \"undefined\" &&\n typeof retryStrategy.recordSuccess !== \"undefined\";\nconst getRetryErrorInfo = (error) => {\n const errorInfo = {\n error,\n errorType: getRetryErrorType(error),\n };\n const retryAfterHint = getRetryAfterHint(error.$response);\n if (retryAfterHint) {\n errorInfo.retryAfterHint = retryAfterHint;\n }\n return errorInfo;\n};\nconst getRetryErrorType = (error) => {\n if (isThrottlingError(error))\n return \"THROTTLING\";\n if (isTransientError(error))\n return \"TRANSIENT\";\n if (isServerError(error))\n return \"SERVER_ERROR\";\n return \"CLIENT_ERROR\";\n};\nexport const retryMiddlewareOptions = {\n name: \"retryMiddleware\",\n tags: [\"RETRY\"],\n step: \"finalizeRequest\",\n priority: \"high\",\n override: true,\n};\nexport const getRetryPlugin = (options) => ({\n applyToStack: (clientStack) => {\n clientStack.add(retryMiddleware(options), retryMiddlewareOptions);\n },\n});\nexport const getRetryAfterHint = (response) => {\n if (!HttpResponse.isInstance(response))\n return;\n const retryAfterHeaderName = Object.keys(response.headers).find((key) => key.toLowerCase() === \"retry-after\");\n if (!retryAfterHeaderName)\n return;\n const retryAfter = response.headers[retryAfterHeaderName];\n const retryAfterSeconds = Number(retryAfter);\n if (!Number.isNaN(retryAfterSeconds))\n return new Date(retryAfterSeconds * 1000);\n const retryAfterDate = new Date(retryAfter);\n return retryAfterDate;\n};\n","import { Readable } from \"stream\";\nexport const isStreamingPayload = (request) => request?.body instanceof Readable ||\n (typeof ReadableStream !== \"undefined\" && request?.body instanceof ReadableStream);\n","export const asSdkError = (error) => {\n if (error instanceof Error)\n return error;\n if (error instanceof Object)\n return Object.assign(new Error(), error);\n if (typeof error === \"string\")\n return new Error(error);\n return new Error(`AWS SDK error wrapper for ${error}`);\n};\n","import { booleanSelector, SelectorType } from \"@smithy/util-config-provider\";\nexport const ENV_USE_DUALSTACK_ENDPOINT = \"AWS_USE_DUALSTACK_ENDPOINT\";\nexport const CONFIG_USE_DUALSTACK_ENDPOINT = \"use_dualstack_endpoint\";\nexport const DEFAULT_USE_DUALSTACK_ENDPOINT = false;\nexport const NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => booleanSelector(env, ENV_USE_DUALSTACK_ENDPOINT, SelectorType.ENV),\n configFileSelector: (profile) => booleanSelector(profile, CONFIG_USE_DUALSTACK_ENDPOINT, SelectorType.CONFIG),\n default: false,\n};\n","export const booleanSelector = (obj, key, type) => {\n if (!(key in obj))\n return undefined;\n if (obj[key] === \"true\")\n return true;\n if (obj[key] === \"false\")\n return false;\n throw new Error(`Cannot load ${type} \"${key}\". Expected \"true\" or \"false\", got ${obj[key]}.`);\n};\n","export var SelectorType;\n(function (SelectorType) {\n SelectorType[\"ENV\"] = \"env\";\n SelectorType[\"CONFIG\"] = \"shared config entry\";\n})(SelectorType || (SelectorType = {}));\n","import { booleanSelector, SelectorType } from \"@smithy/util-config-provider\";\nexport const ENV_USE_FIPS_ENDPOINT = \"AWS_USE_FIPS_ENDPOINT\";\nexport const CONFIG_USE_FIPS_ENDPOINT = \"use_fips_endpoint\";\nexport const DEFAULT_USE_FIPS_ENDPOINT = false;\nexport const NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => booleanSelector(env, ENV_USE_FIPS_ENDPOINT, SelectorType.ENV),\n configFileSelector: (profile) => booleanSelector(profile, CONFIG_USE_FIPS_ENDPOINT, SelectorType.CONFIG),\n default: false,\n};\n","export const REGION_ENV_NAME = \"AWS_REGION\";\nexport const REGION_INI_NAME = \"region\";\nexport const NODE_REGION_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => env[REGION_ENV_NAME],\n configFileSelector: (profile) => profile[REGION_INI_NAME],\n default: () => {\n throw new Error(\"Region is missing\");\n },\n};\nexport const NODE_REGION_CONFIG_FILE_OPTIONS = {\n preferredFile: \"credentials\",\n};\n","import { platform, release } from \"os\";\nimport { env, versions } from \"process\";\nimport { isCrtAvailable } from \"./is-crt-available\";\nexport { crtAvailability } from \"./crt-availability\";\nexport const createDefaultUserAgentProvider = ({ serviceId, clientVersion }) => {\n return async (config) => {\n const sections = [\n [\"aws-sdk-js\", clientVersion],\n [\"ua\", \"2.1\"],\n [`os/${platform()}`, release()],\n [\"lang/js\"],\n [\"md/nodejs\", `${versions.node}`],\n ];\n const crtAvailable = isCrtAvailable();\n if (crtAvailable) {\n sections.push(crtAvailable);\n }\n if (serviceId) {\n sections.push([`api/${serviceId}`, clientVersion]);\n }\n if (env.AWS_EXECUTION_ENV) {\n sections.push([`exec-env/${env.AWS_EXECUTION_ENV}`]);\n }\n const appId = await config?.userAgentAppId?.();\n const resolvedUserAgent = appId ? [...sections, [`app/${appId}`]] : [...sections];\n return resolvedUserAgent;\n };\n};\nexport const defaultUserAgent = createDefaultUserAgentProvider;\n","import { crtAvailability } from \"./crt-availability\";\nexport const isCrtAvailable = () => {\n if (crtAvailability.isCrtAvailable) {\n return [\"md/crt-avail\"];\n }\n return null;\n};\n","export const crtAvailability = {\n isCrtAvailable: false,\n};\n","import { DEFAULT_UA_APP_ID } from \"@aws-sdk/middleware-user-agent\";\nexport const UA_APP_ID_ENV_NAME = \"AWS_SDK_UA_APP_ID\";\nexport const UA_APP_ID_INI_NAME = \"sdk_ua_app_id\";\nconst UA_APP_ID_INI_NAME_DEPRECATED = \"sdk-ua-app-id\";\nexport const NODE_APP_ID_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => env[UA_APP_ID_ENV_NAME],\n configFileSelector: (profile) => profile[UA_APP_ID_INI_NAME] ?? profile[UA_APP_ID_INI_NAME_DEPRECATED],\n default: DEFAULT_UA_APP_ID,\n};\n","export * from \"./defaultUserAgent\";\nexport * from \"./nodeAppIdConfigOptions\";\n","import { fromArrayBuffer, fromString } from \"@smithy/util-buffer-from\";\nimport { toUint8Array } from \"@smithy/util-utf8\";\nimport { Buffer } from \"buffer\";\nimport { createHash, createHmac } from \"crypto\";\nexport class Hash {\n algorithmIdentifier;\n secret;\n hash;\n constructor(algorithmIdentifier, secret) {\n this.algorithmIdentifier = algorithmIdentifier;\n this.secret = secret;\n this.reset();\n }\n update(toHash, encoding) {\n this.hash.update(toUint8Array(castSourceData(toHash, encoding)));\n }\n digest() {\n return Promise.resolve(this.hash.digest());\n }\n reset() {\n this.hash = this.secret\n ? createHmac(this.algorithmIdentifier, castSourceData(this.secret))\n : createHash(this.algorithmIdentifier);\n }\n}\nfunction castSourceData(toCast, encoding) {\n if (Buffer.isBuffer(toCast)) {\n return toCast;\n }\n if (typeof toCast === \"string\") {\n return fromString(toCast, encoding);\n }\n if (ArrayBuffer.isView(toCast)) {\n return fromArrayBuffer(toCast.buffer, toCast.byteOffset, toCast.byteLength);\n }\n return fromArrayBuffer(toCast);\n}\n","import { fstatSync, lstatSync, ReadStream } from \"node:fs\";\nexport const calculateBodyLength = (body) => {\n if (!body) {\n return 0;\n }\n if (typeof body === \"string\") {\n return Buffer.byteLength(body);\n }\n else if (typeof body.byteLength === \"number\") {\n return body.byteLength;\n }\n else if (typeof body.size === \"number\") {\n return body.size;\n }\n else if (typeof body.start === \"number\" && typeof body.end === \"number\") {\n return body.end + 1 - body.start;\n }\n else if (body instanceof ReadStream) {\n if (body.path != null) {\n return lstatSync(body.path).size;\n }\n else if (typeof body.fd === \"number\") {\n return fstatSync(body.fd).size;\n }\n }\n throw new Error(`Body Length computation failed for ${body}`);\n};\n","import { NODE_REGION_CONFIG_OPTIONS } from \"@smithy/config-resolver\";\nimport { loadConfig } from \"@smithy/node-config-provider\";\nimport { memoize } from \"@smithy/property-provider\";\nimport { AWS_DEFAULT_REGION_ENV, AWS_EXECUTION_ENV, AWS_REGION_ENV, DEFAULTS_MODE_OPTIONS, ENV_IMDS_DISABLED, IMDS_REGION_PATH, } from \"./constants\";\nimport { NODE_DEFAULTS_MODE_CONFIG_OPTIONS } from \"./defaultsModeConfig\";\nexport const resolveDefaultsModeConfig = ({ region = loadConfig(NODE_REGION_CONFIG_OPTIONS), defaultsMode = loadConfig(NODE_DEFAULTS_MODE_CONFIG_OPTIONS), } = {}) => memoize(async () => {\n const mode = typeof defaultsMode === \"function\" ? await defaultsMode() : defaultsMode;\n switch (mode?.toLowerCase()) {\n case \"auto\":\n return resolveNodeDefaultsModeAuto(region);\n case \"in-region\":\n case \"cross-region\":\n case \"mobile\":\n case \"standard\":\n case \"legacy\":\n return Promise.resolve(mode?.toLocaleLowerCase());\n case undefined:\n return Promise.resolve(\"legacy\");\n default:\n throw new Error(`Invalid parameter for \"defaultsMode\", expect ${DEFAULTS_MODE_OPTIONS.join(\", \")}, got ${mode}`);\n }\n});\nconst resolveNodeDefaultsModeAuto = async (clientRegion) => {\n if (clientRegion) {\n const resolvedRegion = typeof clientRegion === \"function\" ? await clientRegion() : clientRegion;\n const inferredRegion = await inferPhysicalRegion();\n if (!inferredRegion) {\n return \"standard\";\n }\n if (resolvedRegion === inferredRegion) {\n return \"in-region\";\n }\n else {\n return \"cross-region\";\n }\n }\n return \"standard\";\n};\nconst inferPhysicalRegion = async () => {\n if (process.env[AWS_EXECUTION_ENV] && (process.env[AWS_REGION_ENV] || process.env[AWS_DEFAULT_REGION_ENV])) {\n return process.env[AWS_REGION_ENV] ?? process.env[AWS_DEFAULT_REGION_ENV];\n }\n if (!process.env[ENV_IMDS_DISABLED]) {\n try {\n const { getInstanceMetadataEndpoint, httpRequest } = await import(\"@smithy/credential-provider-imds\");\n const endpoint = await getInstanceMetadataEndpoint();\n return (await httpRequest({ ...endpoint, path: IMDS_REGION_PATH })).toString();\n }\n catch (e) {\n }\n }\n};\n","export const AWS_EXECUTION_ENV = \"AWS_EXECUTION_ENV\";\nexport const AWS_REGION_ENV = \"AWS_REGION\";\nexport const AWS_DEFAULT_REGION_ENV = \"AWS_DEFAULT_REGION\";\nexport const ENV_IMDS_DISABLED = \"AWS_EC2_METADATA_DISABLED\";\nexport const DEFAULTS_MODE_OPTIONS = [\"in-region\", \"cross-region\", \"mobile\", \"standard\", \"legacy\"];\nexport const IMDS_REGION_PATH = \"/latest/meta-data/placement/region\";\n","const AWS_DEFAULTS_MODE_ENV = \"AWS_DEFAULTS_MODE\";\nconst AWS_DEFAULTS_MODE_CONFIG = \"defaults_mode\";\nexport const NODE_DEFAULTS_MODE_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => {\n return env[AWS_DEFAULTS_MODE_ENV];\n },\n configFileSelector: (profile) => {\n return profile[AWS_DEFAULTS_MODE_CONFIG];\n },\n default: \"legacy\",\n};\n","export const getAwsRegionExtensionConfiguration = (runtimeConfig) => {\n return {\n setRegion(region) {\n runtimeConfig.region = region;\n },\n region() {\n return runtimeConfig.region;\n },\n };\n};\nexport const resolveAwsRegionExtensionConfiguration = (awsRegionExtensionConfiguration) => {\n return {\n region: awsRegionExtensionConfiguration.region(),\n };\n};\n","export * from \"./extensions\";\nexport * from \"./regionConfig\";\n","export * from \"./config\";\nexport * from \"./resolveRegionConfig\";\n","export const REGION_ENV_NAME = \"AWS_REGION\";\nexport const REGION_INI_NAME = \"region\";\nexport const NODE_REGION_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => env[REGION_ENV_NAME],\n configFileSelector: (profile) => profile[REGION_INI_NAME],\n default: () => {\n throw new Error(\"Region is missing\");\n },\n};\nexport const NODE_REGION_CONFIG_FILE_OPTIONS = {\n preferredFile: \"credentials\",\n};\n","import { getRealRegion } from \"./getRealRegion\";\nimport { isFipsRegion } from \"./isFipsRegion\";\nexport const resolveRegionConfig = (input) => {\n const { region, useFipsEndpoint } = input;\n if (!region) {\n throw new Error(\"Region is missing\");\n }\n return Object.assign(input, {\n region: async () => {\n if (typeof region === \"string\") {\n return getRealRegion(region);\n }\n const providedRegion = await region();\n return getRealRegion(providedRegion);\n },\n useFipsEndpoint: async () => {\n const providedRegion = typeof region === \"string\" ? region : await region();\n if (isFipsRegion(providedRegion)) {\n return true;\n }\n return typeof useFipsEndpoint !== \"function\" ? Promise.resolve(!!useFipsEndpoint) : useFipsEndpoint();\n },\n });\n};\n","import { isFipsRegion } from \"./isFipsRegion\";\nexport const getRealRegion = (region) => isFipsRegion(region)\n ? [\"fips-aws-global\", \"aws-fips\"].includes(region)\n ? \"us-east-1\"\n : region.replace(/fips-(dkr-|prod-)?|-fips/, \"\")\n : region;\n","export const isFipsRegion = (region) => typeof region === \"string\" && (region.startsWith(\"fips-\") || region.endsWith(\"-fips\"));\n"]}