@kensio/yulin 1.16.2 → 1.16.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (336) hide show
  1. package/dist/sdk/router/sim-sdk-caller-options.d.ts +2 -2
  2. package/dist/sdk/router/sim-sdk-caller-options.d.ts.map +1 -1
  3. package/dist/sdk/router/sim-sdk-command-router.type.d.ts +7 -2
  4. package/dist/sdk/router/sim-sdk-command-router.type.d.ts.map +1 -1
  5. package/dist/sdk/sim-sdk-command-dispatcher.d.ts +7 -1
  6. package/dist/sdk/sim-sdk-command-dispatcher.d.ts.map +1 -1
  7. package/dist/sdk/sim-sdk-command-dispatcher.js +16 -4
  8. package/dist/sdk/sim-sdk-command-dispatcher.js.map +1 -1
  9. package/dist/sdk/wire/sim-sdk-wire-dispatcher.d.ts +7 -6
  10. package/dist/sdk/wire/sim-sdk-wire-dispatcher.d.ts.map +1 -1
  11. package/dist/sdk/wire/sim-sdk-wire-dispatcher.js +11 -10
  12. package/dist/sdk/wire/sim-sdk-wire-dispatcher.js.map +1 -1
  13. package/dist/sdk/wire/sim-sdk-wire-operation.d.ts.map +1 -1
  14. package/dist/sdk/wire/sim-sdk-wire-operation.js +1 -0
  15. package/dist/sdk/wire/sim-sdk-wire-operation.js.map +1 -1
  16. package/dist/serve/http/api/sim-aws-api-endpoint.d.ts +40 -0
  17. package/dist/serve/http/api/sim-aws-api-endpoint.d.ts.map +1 -0
  18. package/dist/serve/http/api/sim-aws-api-endpoint.js +120 -0
  19. package/dist/serve/http/api/sim-aws-api-endpoint.js.map +1 -0
  20. package/dist/serve/http/sim-aws-http.d.ts +1 -0
  21. package/dist/serve/http/sim-aws-http.d.ts.map +1 -1
  22. package/dist/serve/http/sim-aws-http.js +9 -0
  23. package/dist/serve/http/sim-aws-http.js.map +1 -1
  24. package/dist/service/aws/factory/sim-aws-account-region-service-builder.d.ts.map +1 -1
  25. package/dist/service/aws/factory/sim-aws-account-region-service-builder.js +1 -0
  26. package/dist/service/aws/factory/sim-aws-account-region-service-builder.js.map +1 -1
  27. package/dist/service/cloudformation/stack/resource-map/sim-cfn-stack-resource-lookup.d.ts +28 -0
  28. package/dist/service/cloudformation/stack/resource-map/sim-cfn-stack-resource-lookup.d.ts.map +1 -0
  29. package/dist/service/cloudformation/stack/resource-map/sim-cfn-stack-resource-lookup.js +36 -0
  30. package/dist/service/cloudformation/stack/resource-map/sim-cfn-stack-resource-lookup.js.map +1 -0
  31. package/dist/service/cloudformation/stack/sim-cfn-stack.d.ts +10 -28
  32. package/dist/service/cloudformation/stack/sim-cfn-stack.d.ts.map +1 -1
  33. package/dist/service/cloudformation/stack/sim-cfn-stack.js +11 -2
  34. package/dist/service/cloudformation/stack/sim-cfn-stack.js.map +1 -1
  35. package/dist/service/cloudformation/stack/sim-cfn-stack.type.d.ts +28 -0
  36. package/dist/service/cloudformation/stack/sim-cfn-stack.type.d.ts.map +1 -0
  37. package/dist/service/cloudformation/stack/sim-cfn-stack.type.js +2 -0
  38. package/dist/service/cloudformation/stack/sim-cfn-stack.type.js.map +1 -0
  39. package/dist/service/iam/sim-iam.d.ts +10 -0
  40. package/dist/service/iam/sim-iam.d.ts.map +1 -1
  41. package/dist/service/iam/sim-iam.js +10 -0
  42. package/dist/service/iam/sim-iam.js.map +1 -1
  43. package/dist/service/rekognition/collection/sim-rekognition-collection-faces.d.ts +53 -0
  44. package/dist/service/rekognition/collection/sim-rekognition-collection-faces.d.ts.map +1 -0
  45. package/dist/service/rekognition/collection/sim-rekognition-collection-faces.js +69 -0
  46. package/dist/service/rekognition/collection/sim-rekognition-collection-faces.js.map +1 -0
  47. package/dist/service/rekognition/collection/sim-rekognition-collection.d.ts +26 -0
  48. package/dist/service/rekognition/collection/sim-rekognition-collection.d.ts.map +1 -0
  49. package/dist/service/rekognition/collection/sim-rekognition-collection.js +9 -0
  50. package/dist/service/rekognition/collection/sim-rekognition-collection.js.map +1 -0
  51. package/dist/service/rekognition/collection/sim-rekognition-collections.d.ts +50 -0
  52. package/dist/service/rekognition/collection/sim-rekognition-collections.d.ts.map +1 -0
  53. package/dist/service/rekognition/collection/sim-rekognition-collections.js +78 -0
  54. package/dist/service/rekognition/collection/sim-rekognition-collections.js.map +1 -0
  55. package/dist/service/rekognition/collection/sim-rekognition-indexed-face.d.ts +41 -0
  56. package/dist/service/rekognition/collection/sim-rekognition-indexed-face.d.ts.map +1 -0
  57. package/dist/service/rekognition/collection/sim-rekognition-indexed-face.js +53 -0
  58. package/dist/service/rekognition/collection/sim-rekognition-indexed-face.js.map +1 -0
  59. package/dist/service/rekognition/command/authorize/sim-rekognition-authorizer.d.ts +2 -2
  60. package/dist/service/rekognition/command/authorize/sim-rekognition-authorizer.d.ts.map +1 -1
  61. package/dist/service/rekognition/command/authorize/sim-rekognition-authorizer.js +7 -4
  62. package/dist/service/rekognition/command/authorize/sim-rekognition-authorizer.js.map +1 -1
  63. package/dist/service/rekognition/command/collection/collection-id.d.ts +9 -0
  64. package/dist/service/rekognition/command/collection/collection-id.d.ts.map +1 -0
  65. package/dist/service/rekognition/command/collection/collection-id.js +15 -0
  66. package/dist/service/rekognition/command/collection/collection-id.js.map +1 -0
  67. package/dist/service/rekognition/command/collection/collection.command.d.ts +55 -0
  68. package/dist/service/rekognition/command/collection/collection.command.d.ts.map +1 -0
  69. package/dist/service/rekognition/command/collection/collection.command.js +2 -0
  70. package/dist/service/rekognition/command/collection/collection.command.js.map +1 -0
  71. package/dist/service/rekognition/command/collection/collection.handler.d.ts +40 -0
  72. package/dist/service/rekognition/command/collection/collection.handler.d.ts.map +1 -0
  73. package/dist/service/rekognition/command/collection/collection.handler.js +62 -0
  74. package/dist/service/rekognition/command/collection/collection.handler.js.map +1 -0
  75. package/dist/service/rekognition/command/face/delete-faces-request.d.ts +10 -0
  76. package/dist/service/rekognition/command/face/delete-faces-request.d.ts.map +1 -0
  77. package/dist/service/rekognition/command/face/delete-faces-request.js +18 -0
  78. package/dist/service/rekognition/command/face/delete-faces-request.js.map +1 -0
  79. package/dist/service/rekognition/command/face/external-image-id.d.ts +9 -0
  80. package/dist/service/rekognition/command/face/external-image-id.d.ts.map +1 -0
  81. package/dist/service/rekognition/command/face/external-image-id.js +28 -0
  82. package/dist/service/rekognition/command/face/external-image-id.js.map +1 -0
  83. package/dist/service/rekognition/command/face/face-ids.d.ts +9 -0
  84. package/dist/service/rekognition/command/face/face-ids.d.ts.map +1 -0
  85. package/dist/service/rekognition/command/face/face-ids.js +48 -0
  86. package/dist/service/rekognition/command/face/face-ids.js.map +1 -0
  87. package/dist/service/rekognition/command/face/face-indexer.d.ts +38 -0
  88. package/dist/service/rekognition/command/face/face-indexer.d.ts.map +1 -0
  89. package/dist/service/rekognition/command/face/face-indexer.js +64 -0
  90. package/dist/service/rekognition/command/face/face-indexer.js.map +1 -0
  91. package/dist/service/rekognition/command/face/face-limits.d.ts +22 -0
  92. package/dist/service/rekognition/command/face/face-limits.d.ts.map +1 -0
  93. package/dist/service/rekognition/command/face/face-limits.js +36 -0
  94. package/dist/service/rekognition/command/face/face-limits.js.map +1 -0
  95. package/dist/service/rekognition/command/face/face-listing.d.ts +26 -0
  96. package/dist/service/rekognition/command/face/face-listing.d.ts.map +1 -0
  97. package/dist/service/rekognition/command/face/face-listing.js +36 -0
  98. package/dist/service/rekognition/command/face/face-listing.js.map +1 -0
  99. package/dist/service/rekognition/command/face/face-output.d.ts +65 -0
  100. package/dist/service/rekognition/command/face/face-output.d.ts.map +1 -0
  101. package/dist/service/rekognition/command/face/face-output.js +8 -0
  102. package/dist/service/rekognition/command/face/face-output.js.map +1 -0
  103. package/dist/service/rekognition/command/face/face-searcher.d.ts +32 -0
  104. package/dist/service/rekognition/command/face/face-searcher.d.ts.map +1 -0
  105. package/dist/service/rekognition/command/face/face-searcher.js +45 -0
  106. package/dist/service/rekognition/command/face/face-searcher.js.map +1 -0
  107. package/dist/service/rekognition/command/face/face.command.d.ts +107 -0
  108. package/dist/service/rekognition/command/face/face.command.d.ts.map +1 -0
  109. package/dist/service/rekognition/command/face/face.command.js +2 -0
  110. package/dist/service/rekognition/command/face/face.command.js.map +1 -0
  111. package/dist/service/rekognition/command/face/face.handler.d.ts +62 -0
  112. package/dist/service/rekognition/command/face/face.handler.d.ts.map +1 -0
  113. package/dist/service/rekognition/command/face/face.handler.js +99 -0
  114. package/dist/service/rekognition/command/face/face.handler.js.map +1 -0
  115. package/dist/service/rekognition/command/face/index-faces-request.d.ts +20 -0
  116. package/dist/service/rekognition/command/face/index-faces-request.d.ts.map +1 -0
  117. package/dist/service/rekognition/command/face/index-faces-request.js +39 -0
  118. package/dist/service/rekognition/command/face/index-faces-request.js.map +1 -0
  119. package/dist/service/rekognition/command/face/list-faces-page.d.ts +26 -0
  120. package/dist/service/rekognition/command/face/list-faces-page.d.ts.map +1 -0
  121. package/dist/service/rekognition/command/face/list-faces-page.js +39 -0
  122. package/dist/service/rekognition/command/face/list-faces-page.js.map +1 -0
  123. package/dist/service/rekognition/command/face/list-faces-request.d.ts +17 -0
  124. package/dist/service/rekognition/command/face/list-faces-request.d.ts.map +1 -0
  125. package/dist/service/rekognition/command/face/list-faces-request.js +43 -0
  126. package/dist/service/rekognition/command/face/list-faces-request.js.map +1 -0
  127. package/dist/service/rekognition/command/face/search-faces-by-image-request.d.ts +24 -0
  128. package/dist/service/rekognition/command/face/search-faces-by-image-request.d.ts.map +1 -0
  129. package/dist/service/rekognition/command/face/search-faces-by-image-request.js +61 -0
  130. package/dist/service/rekognition/command/face/search-faces-by-image-request.js.map +1 -0
  131. package/dist/service/rekognition/command/sim-rekognition-detection-handlers.d.ts +32 -0
  132. package/dist/service/rekognition/command/sim-rekognition-detection-handlers.d.ts.map +1 -0
  133. package/dist/service/rekognition/command/sim-rekognition-detection-handlers.js +37 -0
  134. package/dist/service/rekognition/command/sim-rekognition-detection-handlers.js.map +1 -0
  135. package/dist/service/rekognition/error/sim-rekognition.error.d.ts +20 -0
  136. package/dist/service/rekognition/error/sim-rekognition.error.d.ts.map +1 -1
  137. package/dist/service/rekognition/error/sim-rekognition.error.js +24 -0
  138. package/dist/service/rekognition/error/sim-rekognition.error.js.map +1 -1
  139. package/dist/service/rekognition/face/sim-rekognition-detected-face.d.ts +9 -0
  140. package/dist/service/rekognition/face/sim-rekognition-detected-face.d.ts.map +1 -1
  141. package/dist/service/rekognition/face/sim-rekognition-detected-face.js +12 -0
  142. package/dist/service/rekognition/face/sim-rekognition-detected-face.js.map +1 -1
  143. package/dist/service/rekognition/face/sim-rekognition-face-detection.d.ts +9 -0
  144. package/dist/service/rekognition/face/sim-rekognition-face-detection.d.ts.map +1 -1
  145. package/dist/service/rekognition/face/sim-rekognition-face-detection.js +10 -0
  146. package/dist/service/rekognition/face/sim-rekognition-face-detection.js.map +1 -1
  147. package/dist/service/rekognition/face/sim-rekognition-face-frame.d.ts +5 -1
  148. package/dist/service/rekognition/face/sim-rekognition-face-frame.d.ts.map +1 -1
  149. package/dist/service/rekognition/face/sim-rekognition-face-frame.js +3 -0
  150. package/dist/service/rekognition/face/sim-rekognition-face-frame.js.map +1 -1
  151. package/dist/service/rekognition/index.d.ts +3 -1
  152. package/dist/service/rekognition/index.d.ts.map +1 -1
  153. package/dist/service/rekognition/index.js +2 -1
  154. package/dist/service/rekognition/index.js.map +1 -1
  155. package/dist/service/rekognition/match/sim-rekognition-face-match-declaration.d.ts +29 -0
  156. package/dist/service/rekognition/match/sim-rekognition-face-match-declaration.d.ts.map +1 -0
  157. package/dist/service/rekognition/match/sim-rekognition-face-match-declaration.js +2 -0
  158. package/dist/service/rekognition/match/sim-rekognition-face-match-declaration.js.map +1 -0
  159. package/dist/service/rekognition/match/sim-rekognition-face-match-result.d.ts +25 -0
  160. package/dist/service/rekognition/match/sim-rekognition-face-match-result.d.ts.map +1 -0
  161. package/dist/service/rekognition/match/sim-rekognition-face-match-result.js +44 -0
  162. package/dist/service/rekognition/match/sim-rekognition-face-match-result.js.map +1 -0
  163. package/dist/service/rekognition/match/sim-rekognition-face-match-rule.d.ts +26 -0
  164. package/dist/service/rekognition/match/sim-rekognition-face-match-rule.d.ts.map +1 -0
  165. package/dist/service/rekognition/match/sim-rekognition-face-match-rule.js +64 -0
  166. package/dist/service/rekognition/match/sim-rekognition-face-match-rule.js.map +1 -0
  167. package/dist/service/rekognition/match/sim-rekognition-face-matches.d.ts +32 -0
  168. package/dist/service/rekognition/match/sim-rekognition-face-matches.d.ts.map +1 -0
  169. package/dist/service/rekognition/match/sim-rekognition-face-matches.js +39 -0
  170. package/dist/service/rekognition/match/sim-rekognition-face-matches.js.map +1 -0
  171. package/dist/service/rekognition/sdk/sim-rekognition-sdk-command-router.d.ts.map +1 -1
  172. package/dist/service/rekognition/sdk/sim-rekognition-sdk-command-router.js +28 -0
  173. package/dist/service/rekognition/sdk/sim-rekognition-sdk-command-router.js.map +1 -1
  174. package/dist/service/rekognition/sim-rekognition.d.ts +51 -3
  175. package/dist/service/rekognition/sim-rekognition.d.ts.map +1 -1
  176. package/dist/service/rekognition/sim-rekognition.js +84 -16
  177. package/dist/service/rekognition/sim-rekognition.js.map +1 -1
  178. package/dist/service/s3/bucket/sim-s3-bucket.d.ts +8 -0
  179. package/dist/service/s3/bucket/sim-s3-bucket.d.ts.map +1 -1
  180. package/dist/service/s3/bucket/sim-s3-bucket.js +4 -1
  181. package/dist/service/s3/bucket/sim-s3-bucket.js.map +1 -1
  182. package/dist/service/s3/command/bucket/sim-s3-bucket-commands.d.ts +1 -0
  183. package/dist/service/s3/command/bucket/sim-s3-bucket-commands.d.ts.map +1 -1
  184. package/dist/service/s3/command/bucket/sim-s3-bucket-commands.js +4 -0
  185. package/dist/service/s3/command/bucket/sim-s3-bucket-commands.js.map +1 -1
  186. package/dist/service/s3/command/create-bucket/create-bucket.handler.d.ts.map +1 -1
  187. package/dist/service/s3/command/create-bucket/create-bucket.handler.js +1 -0
  188. package/dist/service/s3/command/create-bucket/create-bucket.handler.js.map +1 -1
  189. package/dist/service/s3/command/head-bucket/head-bucket-authorizer.d.ts +26 -0
  190. package/dist/service/s3/command/head-bucket/head-bucket-authorizer.d.ts.map +1 -0
  191. package/dist/service/s3/command/head-bucket/head-bucket-authorizer.js +48 -0
  192. package/dist/service/s3/command/head-bucket/head-bucket-authorizer.js.map +1 -0
  193. package/dist/service/s3/command/head-bucket/head-bucket.command.d.ts +24 -0
  194. package/dist/service/s3/command/head-bucket/head-bucket.command.d.ts.map +1 -0
  195. package/dist/service/s3/command/head-bucket/head-bucket.command.js +2 -0
  196. package/dist/service/s3/command/head-bucket/head-bucket.command.js.map +1 -0
  197. package/dist/service/s3/command/head-bucket/head-bucket.handler.d.ts +35 -0
  198. package/dist/service/s3/command/head-bucket/head-bucket.handler.d.ts.map +1 -0
  199. package/dist/service/s3/command/head-bucket/head-bucket.handler.js +45 -0
  200. package/dist/service/s3/command/head-bucket/head-bucket.handler.js.map +1 -0
  201. package/dist/service/s3/command/head-object/head-object-loader.d.ts +17 -0
  202. package/dist/service/s3/command/head-object/head-object-loader.d.ts.map +1 -0
  203. package/dist/service/s3/command/head-object/head-object-loader.js +29 -0
  204. package/dist/service/s3/command/head-object/head-object-loader.js.map +1 -0
  205. package/dist/service/s3/command/head-object/head-object.command.d.ts +29 -0
  206. package/dist/service/s3/command/head-object/head-object.command.d.ts.map +1 -0
  207. package/dist/service/s3/command/head-object/head-object.command.js +2 -0
  208. package/dist/service/s3/command/head-object/head-object.command.js.map +1 -0
  209. package/dist/service/s3/command/head-object/head-object.handler.d.ts +38 -0
  210. package/dist/service/s3/command/head-object/head-object.handler.d.ts.map +1 -0
  211. package/dist/service/s3/command/head-object/head-object.handler.js +50 -0
  212. package/dist/service/s3/command/head-object/head-object.handler.js.map +1 -0
  213. package/dist/service/s3/command/list-buckets/list-buckets-page-builder.d.ts.map +1 -1
  214. package/dist/service/s3/command/list-buckets/list-buckets-page-builder.js +1 -0
  215. package/dist/service/s3/command/list-buckets/list-buckets-page-builder.js.map +1 -1
  216. package/dist/service/s3/command/list-buckets/list-buckets.command.d.ts +1 -0
  217. package/dist/service/s3/command/list-buckets/list-buckets.command.d.ts.map +1 -1
  218. package/dist/service/s3/command/object/sim-s3-object-commands.d.ts +4 -0
  219. package/dist/service/s3/command/object/sim-s3-object-commands.d.ts.map +1 -1
  220. package/dist/service/s3/command/object/sim-s3-object-commands.js +7 -0
  221. package/dist/service/s3/command/object/sim-s3-object-commands.js.map +1 -1
  222. package/dist/service/s3/command/sim-s3-command.types.d.ts +2 -0
  223. package/dist/service/s3/command/sim-s3-command.types.d.ts.map +1 -1
  224. package/dist/service/s3/error/sim-s3.error.d.ts +12 -0
  225. package/dist/service/s3/error/sim-s3.error.d.ts.map +1 -1
  226. package/dist/service/s3/error/sim-s3.error.js +14 -0
  227. package/dist/service/s3/error/sim-s3.error.js.map +1 -1
  228. package/dist/service/s3/sdk/sim-s3-sdk-command-router.d.ts.map +1 -1
  229. package/dist/service/s3/sdk/sim-s3-sdk-command-router.js +8 -0
  230. package/dist/service/s3/sdk/sim-s3-sdk-command-router.js.map +1 -1
  231. package/dist/service/s3/serve/api/sim-s3-api-bucket-routes.d.ts +9 -0
  232. package/dist/service/s3/serve/api/sim-s3-api-bucket-routes.d.ts.map +1 -0
  233. package/dist/service/s3/serve/api/sim-s3-api-bucket-routes.js +120 -0
  234. package/dist/service/s3/serve/api/sim-s3-api-bucket-routes.js.map +1 -0
  235. package/dist/service/s3/serve/api/sim-s3-api-configuration-output.d.ts +19 -0
  236. package/dist/service/s3/serve/api/sim-s3-api-configuration-output.d.ts.map +1 -0
  237. package/dist/service/s3/serve/api/sim-s3-api-configuration-output.js +78 -0
  238. package/dist/service/s3/serve/api/sim-s3-api-configuration-output.js.map +1 -0
  239. package/dist/service/s3/serve/api/sim-s3-api-head-output.d.ts +22 -0
  240. package/dist/service/s3/serve/api/sim-s3-api-head-output.d.ts.map +1 -0
  241. package/dist/service/s3/serve/api/sim-s3-api-head-output.js +39 -0
  242. package/dist/service/s3/serve/api/sim-s3-api-head-output.js.map +1 -0
  243. package/dist/service/s3/serve/api/sim-s3-api-input.d.ts +57 -0
  244. package/dist/service/s3/serve/api/sim-s3-api-input.d.ts.map +1 -0
  245. package/dist/service/s3/serve/api/sim-s3-api-input.js +112 -0
  246. package/dist/service/s3/serve/api/sim-s3-api-input.js.map +1 -0
  247. package/dist/service/s3/serve/api/sim-s3-api-listing.d.ts +43 -0
  248. package/dist/service/s3/serve/api/sim-s3-api-listing.d.ts.map +1 -0
  249. package/dist/service/s3/serve/api/sim-s3-api-listing.js +53 -0
  250. package/dist/service/s3/serve/api/sim-s3-api-listing.js.map +1 -0
  251. package/dist/service/s3/serve/api/sim-s3-api-notification-read.d.ts +8 -0
  252. package/dist/service/s3/serve/api/sim-s3-api-notification-read.d.ts.map +1 -0
  253. package/dist/service/s3/serve/api/sim-s3-api-notification-read.js +54 -0
  254. package/dist/service/s3/serve/api/sim-s3-api-notification-read.js.map +1 -0
  255. package/dist/service/s3/serve/api/sim-s3-api-object-routes.d.ts +6 -0
  256. package/dist/service/s3/serve/api/sim-s3-api-object-routes.d.ts.map +1 -0
  257. package/dist/service/s3/serve/api/sim-s3-api-object-routes.js +31 -0
  258. package/dist/service/s3/serve/api/sim-s3-api-object-routes.js.map +1 -0
  259. package/dist/service/s3/serve/api/sim-s3-api-output.d.ts +10 -0
  260. package/dist/service/s3/serve/api/sim-s3-api-output.d.ts.map +1 -0
  261. package/dist/service/s3/serve/api/sim-s3-api-output.js +118 -0
  262. package/dist/service/s3/serve/api/sim-s3-api-output.js.map +1 -0
  263. package/dist/service/s3/serve/api/sim-s3-api-request.d.ts +32 -0
  264. package/dist/service/s3/serve/api/sim-s3-api-request.d.ts.map +1 -0
  265. package/dist/service/s3/serve/api/sim-s3-api-request.js +48 -0
  266. package/dist/service/s3/serve/api/sim-s3-api-request.js.map +1 -0
  267. package/dist/service/s3/serve/api/sim-s3-api-route.type.d.ts +26 -0
  268. package/dist/service/s3/serve/api/sim-s3-api-route.type.d.ts.map +1 -0
  269. package/dist/service/s3/serve/api/sim-s3-api-route.type.js +2 -0
  270. package/dist/service/s3/serve/api/sim-s3-api-route.type.js.map +1 -0
  271. package/dist/service/s3/serve/api/sim-s3-api-routes.d.ts +24 -0
  272. package/dist/service/s3/serve/api/sim-s3-api-routes.d.ts.map +1 -0
  273. package/dist/service/s3/serve/api/sim-s3-api-routes.js +90 -0
  274. package/dist/service/s3/serve/api/sim-s3-api-routes.js.map +1 -0
  275. package/dist/service/s3/serve/api/sim-s3-api-xml-read.d.ts +21 -0
  276. package/dist/service/s3/serve/api/sim-s3-api-xml-read.d.ts.map +1 -0
  277. package/dist/service/s3/serve/api/sim-s3-api-xml-read.js +64 -0
  278. package/dist/service/s3/serve/api/sim-s3-api-xml-read.js.map +1 -0
  279. package/dist/service/s3/serve/api/sim-s3-api.d.ts +29 -0
  280. package/dist/service/s3/serve/api/sim-s3-api.d.ts.map +1 -0
  281. package/dist/service/s3/serve/api/sim-s3-api.js +60 -0
  282. package/dist/service/s3/serve/api/sim-s3-api.js.map +1 -0
  283. package/dist/service/s3/serve/sim-s3-rest-error-response.d.ts +8 -0
  284. package/dist/service/s3/serve/sim-s3-rest-error-response.d.ts.map +1 -1
  285. package/dist/service/s3/serve/sim-s3-rest-error-response.js +15 -10
  286. package/dist/service/s3/serve/sim-s3-rest-error-response.js.map +1 -1
  287. package/dist/service/s3/sim-s3-operations.d.ts +55 -0
  288. package/dist/service/s3/sim-s3-operations.d.ts.map +1 -0
  289. package/dist/service/s3/sim-s3-operations.js +94 -0
  290. package/dist/service/s3/sim-s3-operations.js.map +1 -0
  291. package/dist/service/s3/sim-s3.d.ts +6 -41
  292. package/dist/service/s3/sim-s3.d.ts.map +1 -1
  293. package/dist/service/s3/sim-s3.js +11 -79
  294. package/dist/service/s3/sim-s3.js.map +1 -1
  295. package/dist/service/sts/command/assume-role/assume-role.handler.d.ts +2 -2
  296. package/dist/service/sts/command/assume-role/assume-role.handler.d.ts.map +1 -1
  297. package/dist/service/sts/command/get-caller-identity/get-caller-identity.command.d.ts +20 -0
  298. package/dist/service/sts/command/get-caller-identity/get-caller-identity.command.d.ts.map +1 -0
  299. package/dist/service/sts/command/get-caller-identity/get-caller-identity.command.js +2 -0
  300. package/dist/service/sts/command/get-caller-identity/get-caller-identity.command.js.map +1 -0
  301. package/dist/service/sts/command/get-caller-identity/get-caller-identity.handler.d.ts +37 -0
  302. package/dist/service/sts/command/get-caller-identity/get-caller-identity.handler.d.ts.map +1 -0
  303. package/dist/service/sts/command/get-caller-identity/get-caller-identity.handler.js +50 -0
  304. package/dist/service/sts/command/get-caller-identity/get-caller-identity.handler.js.map +1 -0
  305. package/dist/service/sts/command/get-caller-identity/sim-sts-caller-user-id.d.ts +15 -0
  306. package/dist/service/sts/command/get-caller-identity/sim-sts-caller-user-id.d.ts.map +1 -0
  307. package/dist/service/sts/command/get-caller-identity/sim-sts-caller-user-id.js +47 -0
  308. package/dist/service/sts/command/get-caller-identity/sim-sts-caller-user-id.js.map +1 -0
  309. package/dist/service/sts/sdk/sim-sts-sdk-command-router.d.ts.map +1 -1
  310. package/dist/service/sts/sdk/sim-sts-sdk-command-router.js +4 -0
  311. package/dist/service/sts/sdk/sim-sts-sdk-command-router.js.map +1 -1
  312. package/dist/service/sts/serve/sim-sts-api.d.ts +24 -0
  313. package/dist/service/sts/serve/sim-sts-api.d.ts.map +1 -0
  314. package/dist/service/sts/serve/sim-sts-api.js +56 -0
  315. package/dist/service/sts/serve/sim-sts-api.js.map +1 -0
  316. package/dist/service/sts/serve/sim-sts-query-request.d.ts +19 -0
  317. package/dist/service/sts/serve/sim-sts-query-request.d.ts.map +1 -0
  318. package/dist/service/sts/serve/sim-sts-query-request.js +27 -0
  319. package/dist/service/sts/serve/sim-sts-query-request.js.map +1 -0
  320. package/dist/service/sts/serve/sim-sts-query-response.d.ts +15 -0
  321. package/dist/service/sts/serve/sim-sts-query-response.d.ts.map +1 -0
  322. package/dist/service/sts/serve/sim-sts-query-response.js +42 -0
  323. package/dist/service/sts/serve/sim-sts-query-response.js.map +1 -0
  324. package/dist/service/sts/sim-sts.d.ts +9 -2
  325. package/dist/service/sts/sim-sts.d.ts.map +1 -1
  326. package/dist/service/sts/sim-sts.js +11 -0
  327. package/dist/service/sts/sim-sts.js.map +1 -1
  328. package/dist/util/xml/xml-document.d.ts +42 -0
  329. package/dist/util/xml/xml-document.d.ts.map +1 -0
  330. package/dist/util/xml/xml-document.js +97 -0
  331. package/dist/util/xml/xml-document.js.map +1 -0
  332. package/dist/util/xml/xml-writer.d.ts +28 -0
  333. package/dist/util/xml/xml-writer.d.ts.map +1 -0
  334. package/dist/util/xml/xml-writer.js +53 -0
  335. package/dist/util/xml/xml-writer.js.map +1 -0
  336. package/package.json +1 -1
@@ -0,0 +1,56 @@
1
+ import { SimIamAccessDenied } from "../../iam/error/sim-iam.error.js";
2
+ import { SimSdkCommandDispatcher } from "../../../sdk/sim-sdk-command-dispatcher.js";
3
+ import { makeSimSdkWireClient, makeSimSdkWireCommand, } from "../../../sdk/wire/sim-sdk-wire-command.js";
4
+ import { xmlValue } from "../../../util/xml/xml-writer.js";
5
+ import { readSimStsQueryRequest } from "./sim-sts-query-request.js";
6
+ import { simStsQueryErrorResponse, simStsQueryResponse, } from "./sim-sts-query-response.js";
7
+ /**
8
+ * The SDK service id simulated STS's Command router is registered under.
9
+ */
10
+ const stsServiceId = "STS";
11
+ /**
12
+ * Serves the STS API to a client given an endpoint URL.
13
+ *
14
+ * STS speaks the Query protocol, which names its operation in a form-encoded
15
+ * `Action` field rather than in a header or a path. The operation is resolved
16
+ * from that field and answered from the simulation, as the other served
17
+ * protocols are, so an HTTP caller reaches the same code an in-process caller
18
+ * does.
19
+ */
20
+ export class SimStsApiEndpoint {
21
+ dispatcher;
22
+ constructor(properties) {
23
+ this.dispatcher = new SimSdkCommandDispatcher(properties.simAws);
24
+ }
25
+ /**
26
+ * Answer one STS Query request as the caller that signed it.
27
+ */
28
+ async handle(request, body, caller, regionName) {
29
+ const query = readSimStsQueryRequest(request, body);
30
+ if (query === undefined) {
31
+ return simStsQueryErrorResponse(400, "MissingAction", "The request is missing an Action field, which every AWS Query protocol request states.");
32
+ }
33
+ if (query.action !== "GetCallerIdentity") {
34
+ return simStsQueryErrorResponse(501, "NotImplemented", `Simulated STS does not serve ${query.action}`);
35
+ }
36
+ try {
37
+ const identity = (await this.dispatcher.dispatch(makeSimSdkWireCommand(`${query.action}Command`, {}), makeSimSdkWireClient(stsServiceId, regionName), undefined, caller));
38
+ return simStsQueryResponse(query.action, callerIdentityResult(identity));
39
+ }
40
+ catch (error) {
41
+ if (error instanceof SimIamAccessDenied) {
42
+ return simStsQueryErrorResponse(403, "AccessDenied", error.message);
43
+ }
44
+ throw error;
45
+ }
46
+ }
47
+ }
48
+ /**
49
+ * Write the members GetCallerIdentity answers with.
50
+ */
51
+ function callerIdentityResult(identity) {
52
+ return (xmlValue("UserId", identity.UserId) +
53
+ xmlValue("Account", identity.Account) +
54
+ xmlValue("Arn", identity.Arn));
55
+ }
56
+ //# sourceMappingURL=sim-sts-api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-sts-api.js","sourceRoot":"","sources":["../../../../src/service/sts/serve/sim-sts-api.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,4CAA4C,CAAC;AACrF,OAAO,EACL,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAE3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EACL,wBAAwB,EACxB,mBAAmB,GACpB,MAAM,6BAA6B,CAAC;AAErC;;GAEG;AACH,MAAM,YAAY,GAAG,KAAK,CAAC;AAM3B;;;;;;;;GAQG;AACH,MAAM,OAAO,iBAAiB;IACX,UAAU,CAA0B;IAErD,YAAY,UAAuC;QACjD,IAAI,CAAC,UAAU,GAAG,IAAI,uBAAuB,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IACnE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CACV,OAAgB,EAChB,IAAgB,EAChB,MAAoB,EACpB,UAAkB;QAElB,MAAM,KAAK,GAAG,sBAAsB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACpD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,OAAO,wBAAwB,CAC7B,GAAG,EACH,eAAe,EACf,wFAAwF,CACzF,CAAC;QACJ,CAAC;QAED,IAAI,KAAK,CAAC,MAAM,KAAK,mBAAmB,EAAE,CAAC;YACzC,OAAO,wBAAwB,CAC7B,GAAG,EACH,gBAAgB,EAChB,gCAAgC,KAAK,CAAC,MAAM,EAAE,CAC/C,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAC9C,qBAAqB,CAAC,GAAG,KAAK,CAAC,MAAM,SAAS,EAAE,EAAE,CAAC,EACnD,oBAAoB,CAAC,YAAY,EAAE,UAAU,CAAC,EAC9C,SAAS,EACT,MAAM,CACP,CAAsC,CAAC;YAExC,OAAO,mBAAmB,CAAC,KAAK,CAAC,MAAM,EAAE,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC3E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,kBAAkB,EAAE,CAAC;gBACxC,OAAO,wBAAwB,CAAC,GAAG,EAAE,cAAc,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YACtE,CAAC;YAED,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;CACF;AAED;;GAEG;AACH,SAAS,oBAAoB,CAC3B,QAA2C;IAE3C,OAAO,CACL,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC;QACnC,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC;QACrC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC,CAC9B,CAAC;AACJ,CAAC"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * One AWS Query protocol request, as the form encoding carries it.
3
+ *
4
+ * Query is the oldest of the AWS protocols. It states the operation in an
5
+ * `Action` field and its input in the same form encoding, either in the body
6
+ * of a POST or in the query string of a GET.
7
+ */
8
+ export interface SimStsQueryRequest {
9
+ readonly action: string;
10
+ readonly fields: URLSearchParams;
11
+ }
12
+ /**
13
+ * Read a request as the Query protocol operation it names.
14
+ *
15
+ * Returns undefined when no `Action` is stated, which is what separates a
16
+ * Query request from anything else that reached the endpoint.
17
+ */
18
+ export declare function readSimStsQueryRequest(request: Request, body: Uint8Array): SimStsQueryRequest | undefined;
19
+ //# sourceMappingURL=sim-sts-query-request.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-sts-query-request.d.ts","sourceRoot":"","sources":["../../../../src/service/sts/serve/sim-sts-query-request.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;CAClC;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,UAAU,GACf,kBAAkB,GAAG,SAAS,CAOhC"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Read a request as the Query protocol operation it names.
3
+ *
4
+ * Returns undefined when no `Action` is stated, which is what separates a
5
+ * Query request from anything else that reached the endpoint.
6
+ */
7
+ export function readSimStsQueryRequest(request, body) {
8
+ const fields = queryFields(request, body);
9
+ const action = fields.get("Action");
10
+ return action === null || action.length === 0
11
+ ? undefined
12
+ : { action, fields };
13
+ }
14
+ /**
15
+ * The form-encoded fields a request carried, wherever it put them.
16
+ *
17
+ * A POST carries them in the body and a GET in the query string, and the
18
+ * `aws` CLI sends a POST while a browser or a hand-written GET sends the
19
+ * other. Both are read so that neither has to be the supported one.
20
+ */
21
+ function queryFields(request, body) {
22
+ if (body.byteLength > 0) {
23
+ return new URLSearchParams(Buffer.from(body).toString("utf8"));
24
+ }
25
+ return new URL(request.url).searchParams;
26
+ }
27
+ //# sourceMappingURL=sim-sts-query-request.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-sts-query-request.js","sourceRoot":"","sources":["../../../../src/service/sts/serve/sim-sts-query-request.ts"],"names":[],"mappings":"AAYA;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CACpC,OAAgB,EAChB,IAAgB;IAEhB,MAAM,MAAM,GAAG,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC1C,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAEpC,OAAO,MAAM,KAAK,IAAI,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAC3C,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;AACzB,CAAC;AAED;;;;;;GAMG;AACH,SAAS,WAAW,CAAC,OAAgB,EAAE,IAAgB;IACrD,IAAI,IAAI,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC;QACxB,OAAO,IAAI,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IACjE,CAAC;IAED,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC;AAC3C,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Write a Query protocol response, which wraps a result in an envelope named
3
+ * after the operation.
4
+ *
5
+ * Every Query response has this shape: `<XResponse><XResult>...</XResult>` and
6
+ * a `ResponseMetadata` holding the request id. An SDK reads the operation's
7
+ * output out of the inner element, so the envelope has to carry the operation
8
+ * name rather than a generic one.
9
+ */
10
+ export declare function simStsQueryResponse(action: string, result: string): Response;
11
+ /**
12
+ * Write a Query protocol failure, which an SDK reads the error name out of.
13
+ */
14
+ export declare function simStsQueryErrorResponse(status: number, code: string, message: string): Response;
15
+ //# sourceMappingURL=sim-sts-query-response.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-sts-query-response.d.ts","sourceRoot":"","sources":["../../../../src/service/sts/serve/sim-sts-query-response.ts"],"names":[],"mappings":"AAWA;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,QAAQ,CAY5E;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,GACd,QAAQ,CAeV"}
@@ -0,0 +1,42 @@
1
+ import { escapeXmlText, xmlElement, xmlValue, } from "../../../util/xml/xml-writer.js";
2
+ /**
3
+ * The XML namespace real STS stamps on every response it sends.
4
+ */
5
+ const stsNamespace = "https://sts.amazonaws.com/doc/2011-06-15/";
6
+ /**
7
+ * Write a Query protocol response, which wraps a result in an envelope named
8
+ * after the operation.
9
+ *
10
+ * Every Query response has this shape: `<XResponse><XResult>...</XResult>` and
11
+ * a `ResponseMetadata` holding the request id. An SDK reads the operation's
12
+ * output out of the inner element, so the envelope has to carry the operation
13
+ * name rather than a generic one.
14
+ */
15
+ export function simStsQueryResponse(action, result) {
16
+ const metadata = xmlElement("ResponseMetadata", xmlValue("RequestId", simStsRequestId()));
17
+ const envelope = `${xmlElement(`${action}Result`, result)}${metadata}`;
18
+ const body = `<?xml version="1.0" encoding="UTF-8"?><${action}Response xmlns="${escapeXmlText(stsNamespace)}">${envelope}</${action}Response>`;
19
+ return new Response(body, {
20
+ status: 200,
21
+ headers: { "content-type": "text/xml" },
22
+ });
23
+ }
24
+ /**
25
+ * Write a Query protocol failure, which an SDK reads the error name out of.
26
+ */
27
+ export function simStsQueryErrorResponse(status, code, message) {
28
+ const error = xmlElement("Error", `${xmlValue("Type", "Sender")}${xmlValue("Code", code)}${xmlValue("Message", message)}`);
29
+ const envelope = xmlElement("ErrorResponse", `${error}${xmlValue("RequestId", simStsRequestId())}`);
30
+ const body = `<?xml version="1.0" encoding="UTF-8"?>${envelope}`;
31
+ return new Response(body, {
32
+ status,
33
+ headers: { "content-type": "text/xml" },
34
+ });
35
+ }
36
+ /**
37
+ * A request id, which every Query response carries and nothing reads back.
38
+ */
39
+ function simStsRequestId() {
40
+ return "00000000-0000-0000-0000-000000000000";
41
+ }
42
+ //# sourceMappingURL=sim-sts-query-response.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-sts-query-response.js","sourceRoot":"","sources":["../../../../src/service/sts/serve/sim-sts-query-response.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,UAAU,EACV,QAAQ,GACT,MAAM,iCAAiC,CAAC;AAEzC;;GAEG;AACH,MAAM,YAAY,GAAG,2CAA2C,CAAC;AAEjE;;;;;;;;GAQG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAc,EAAE,MAAc;IAChE,MAAM,QAAQ,GAAG,UAAU,CACzB,kBAAkB,EAClB,QAAQ,CAAC,WAAW,EAAE,eAAe,EAAE,CAAC,CACzC,CAAC;IACF,MAAM,QAAQ,GAAG,GAAG,UAAU,CAAC,GAAG,MAAM,QAAQ,EAAE,MAAM,CAAC,GAAG,QAAQ,EAAE,CAAC;IACvE,MAAM,IAAI,GAAG,0CAA0C,MAAM,mBAAmB,aAAa,CAAC,YAAY,CAAC,KAAK,QAAQ,KAAK,MAAM,WAAW,CAAC;IAE/I,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE;QACxB,MAAM,EAAE,GAAG;QACX,OAAO,EAAE,EAAE,cAAc,EAAE,UAAU,EAAE;KACxC,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,wBAAwB,CACtC,MAAc,EACd,IAAY,EACZ,OAAe;IAEf,MAAM,KAAK,GAAG,UAAU,CACtB,OAAO,EACP,GAAG,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,CACxF,CAAC;IACF,MAAM,QAAQ,GAAG,UAAU,CACzB,eAAe,EACf,GAAG,KAAK,GAAG,QAAQ,CAAC,WAAW,EAAE,eAAe,EAAE,CAAC,EAAE,CACtD,CAAC;IACF,MAAM,IAAI,GAAG,yCAAyC,QAAQ,EAAE,CAAC;IAEjE,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE;QACxB,MAAM;QACN,OAAO,EAAE,EAAE,cAAc,EAAE,UAAU,EAAE;KACxC,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,SAAS,eAAe;IACtB,OAAO,sCAAsC,CAAC;AAChD,CAAC"}
@@ -1,8 +1,9 @@
1
1
  import { type BackgroundScheduler } from "../../util/background/background.js";
2
2
  import type { SimIamAccountResolver } from "../iam/registry/sim-iam-account-resolver.js";
3
3
  import type { SimAssumeRoleCommand, SimAssumeRoleCommandOutput } from "./command/assume-role/assume-role.command.js";
4
+ import type { SimGetCallerIdentityCommand, SimGetCallerIdentityCommandOutput } from "./command/get-caller-identity/get-caller-identity.command.js";
4
5
  import type { SimAwsAccountRegionScope } from "../aws/sim-aws-account-region-scope.js";
5
- import type { SimAwsPrincipal } from "../aws/caller/sim-aws-caller.js";
6
+ import type { SimAwsCaller } from "../aws/caller/sim-aws-caller.js";
6
7
  import type { SimSdkCommandRouter } from "../../sdk/index.js";
7
8
  interface SimStsProperties {
8
9
  readonly accountRegionScope?: SimAwsAccountRegionScope;
@@ -26,8 +27,14 @@ export declare class SimSts {
26
27
  * Handle an AssumeRoleCommand from the SDK.
27
28
  */
28
29
  assumeRole(command: SimAssumeRoleCommand, options?: {
29
- caller?: SimAwsPrincipal;
30
+ caller?: SimAwsCaller;
30
31
  }): Promise<SimAssumeRoleCommandOutput>;
32
+ /**
33
+ * Handle a GetCallerIdentityCommand from the SDK.
34
+ */
35
+ getCallerIdentity(command: SimGetCallerIdentityCommand, options?: {
36
+ caller?: SimAwsCaller;
37
+ }): Promise<SimGetCallerIdentityCommandOutput>;
31
38
  /**
32
39
  * Get this service's SDK Command router for SDK client interception.
33
40
  */
@@ -1 +1 @@
1
- {"version":3,"file":"sim-sts.d.ts","sourceRoot":"","sources":["../../../src/service/sts/sim-sts.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,mBAAmB,EAEzB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;AACzF,OAAO,KAAK,EACV,oBAAoB,EACpB,0BAA0B,EAC3B,MAAM,8CAA8C,CAAC;AAGtD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AAEvF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAEvE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAE9D,UAAU,gBAAgB;IACxB,QAAQ,CAAC,kBAAkB,CAAC,EAAE,wBAAwB,CAAC;IACvD,QAAQ,CAAC,WAAW,CAAC,EAAE,qBAAqB,CAAC;IAC7C,QAAQ,CAAC,UAAU,CAAC,EAAE,mBAAmB,CAAC;CAC3C;AAED;;;;;;GAMG;AACH,qBAAa,MAAM;IACjB,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA2B;IAC9D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAsB;IACjD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAwB;IACpD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoC;IAE9D,YAAY,UAAU,GAAE,gBAAqB,EAK5C;IAED;;OAEG;IACG,UAAU,CACd,OAAO,EAAE,oBAAoB,EAC7B,OAAO,CAAC,EAAE;QACR,MAAM,CAAC,EAAE,eAAe,CAAC;KAC1B,GACA,OAAO,CAAC,0BAA0B,CAAC,CAOrC;IAED;;OAEG;IACH,gBAAgB,IAAI,mBAAmB,CAEtC;CACF"}
1
+ {"version":3,"file":"sim-sts.d.ts","sourceRoot":"","sources":["../../../src/service/sts/sim-sts.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,mBAAmB,EAEzB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;AACzF,OAAO,KAAK,EACV,oBAAoB,EACpB,0BAA0B,EAC3B,MAAM,8CAA8C,CAAC;AAEtD,OAAO,KAAK,EACV,2BAA2B,EAC3B,iCAAiC,EAClC,MAAM,8DAA8D,CAAC;AAGtE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AAEvF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAEpE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAE9D,UAAU,gBAAgB;IACxB,QAAQ,CAAC,kBAAkB,CAAC,EAAE,wBAAwB,CAAC;IACvD,QAAQ,CAAC,WAAW,CAAC,EAAE,qBAAqB,CAAC;IAC7C,QAAQ,CAAC,UAAU,CAAC,EAAE,mBAAmB,CAAC;CAC3C;AAED;;;;;;GAMG;AACH,qBAAa,MAAM;IACjB,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA2B;IAC9D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAsB;IACjD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAwB;IACpD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoC;IAE9D,YAAY,UAAU,GAAE,gBAAqB,EAK5C;IAED;;OAEG;IACG,UAAU,CACd,OAAO,EAAE,oBAAoB,EAC7B,OAAO,CAAC,EAAE;QACR,MAAM,CAAC,EAAE,YAAY,CAAC;KACvB,GACA,OAAO,CAAC,0BAA0B,CAAC,CAOrC;IAED;;OAEG;IACG,iBAAiB,CACrB,OAAO,EAAE,2BAA2B,EACpC,OAAO,CAAC,EAAE;QACR,MAAM,CAAC,EAAE,YAAY,CAAC;KACvB,GACA,OAAO,CAAC,iCAAiC,CAAC,CAO5C;IAED;;OAEG;IACH,gBAAgB,IAAI,mBAAmB,CAEtC;CACF"}
@@ -1,5 +1,6 @@
1
1
  import { BackgroundTasks, } from "../../util/background/background.js";
2
2
  import { AssumeRoleCommandHandler } from "./command/assume-role/assume-role.handler.js";
3
+ import { GetCallerIdentityCommandHandler } from "./command/get-caller-identity/get-caller-identity.handler.js";
3
4
  import { SimIamRegistry } from "../iam/registry/sim-iam-registry.js";
4
5
  import { simAwsAccountRegionScopeFactory } from "../aws/sim-aws-account-region-scope.factory.js";
5
6
  import { SimStsSdkCommandRouter } from "./sdk/sim-sts-sdk-command-router.js";
@@ -32,6 +33,16 @@ export class SimSts {
32
33
  });
33
34
  return await handler.handle(command, options);
34
35
  }
36
+ /**
37
+ * Handle a GetCallerIdentityCommand from the SDK.
38
+ */
39
+ async getCallerIdentity(command, options) {
40
+ const handler = new GetCallerIdentityCommandHandler({
41
+ sourceAccountId: this.accountRegionScope.accountId,
42
+ iamResolver: this.iamResolver,
43
+ });
44
+ return await handler.handle(command, options);
45
+ }
35
46
  /**
36
47
  * Get this service's SDK Command router for SDK client interception.
37
48
  */
@@ -1 +1 @@
1
- {"version":3,"file":"sim-sts.js","sourceRoot":"","sources":["../../../src/service/sts/sim-sts.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,eAAe,GAChB,MAAM,qCAAqC,CAAC;AAM7C,OAAO,EAAE,wBAAwB,EAAE,MAAM,8CAA8C,CAAC;AACxF,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAErE,OAAO,EAAE,+BAA+B,EAAE,MAAM,gDAAgD,CAAC;AAEjG,OAAO,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAC;AAS7E;;;;;;GAMG;AACH,MAAM,OAAO,MAAM;IACA,kBAAkB,CAA2B;IAC7C,UAAU,CAAsB;IAChC,WAAW,CAAwB;IACnC,SAAS,GAAG,IAAI,sBAAsB,CAAC,IAAI,CAAC,CAAC;IAE9D,YAAY,UAAU,GAAqB,EAAE;QAC3C,IAAI,CAAC,kBAAkB;YACrB,UAAU,CAAC,kBAAkB,IAAI,+BAA+B,CAAC,IAAI,EAAE,CAAC;QAC1E,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,IAAI,IAAI,cAAc,EAAE,CAAC;QAClE,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,IAAI,IAAI,eAAe,EAAE,CAAC;IACnE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CACd,OAA6B,EAC7B,OAEC;QAED,MAAM,OAAO,GAAG,IAAI,wBAAwB,CAAC;YAC3C,eAAe,EAAE,IAAI,CAAC,kBAAkB,CAAC,SAAS;YAClD,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC,CAAC;QACH,OAAO,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC;IAED;;OAEG;IACH,gBAAgB;QACd,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;CACF"}
1
+ {"version":3,"file":"sim-sts.js","sourceRoot":"","sources":["../../../src/service/sts/sim-sts.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,eAAe,GAChB,MAAM,qCAAqC,CAAC;AAM7C,OAAO,EAAE,wBAAwB,EAAE,MAAM,8CAA8C,CAAC;AAKxF,OAAO,EAAE,+BAA+B,EAAE,MAAM,8DAA8D,CAAC;AAC/G,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAErE,OAAO,EAAE,+BAA+B,EAAE,MAAM,gDAAgD,CAAC;AAEjG,OAAO,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAC;AAS7E;;;;;;GAMG;AACH,MAAM,OAAO,MAAM;IACA,kBAAkB,CAA2B;IAC7C,UAAU,CAAsB;IAChC,WAAW,CAAwB;IACnC,SAAS,GAAG,IAAI,sBAAsB,CAAC,IAAI,CAAC,CAAC;IAE9D,YAAY,UAAU,GAAqB,EAAE;QAC3C,IAAI,CAAC,kBAAkB;YACrB,UAAU,CAAC,kBAAkB,IAAI,+BAA+B,CAAC,IAAI,EAAE,CAAC;QAC1E,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,IAAI,IAAI,cAAc,EAAE,CAAC;QAClE,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,IAAI,IAAI,eAAe,EAAE,CAAC;IACnE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CACd,OAA6B,EAC7B,OAEC;QAED,MAAM,OAAO,GAAG,IAAI,wBAAwB,CAAC;YAC3C,eAAe,EAAE,IAAI,CAAC,kBAAkB,CAAC,SAAS;YAClD,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC,CAAC;QACH,OAAO,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,iBAAiB,CACrB,OAAoC,EACpC,OAEC;QAED,MAAM,OAAO,GAAG,IAAI,+BAA+B,CAAC;YAClD,eAAe,EAAE,IAAI,CAAC,kBAAkB,CAAC,SAAS;YAClD,WAAW,EAAE,IAAI,CAAC,WAAW;SAC9B,CAAC,CAAC;QAEH,OAAO,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC;IAED;;OAEG;IACH,gBAAgB;QACd,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;CACF"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * One element of a parsed XML document.
3
+ *
4
+ * Attributes are dropped. The documents this reads are AWS request bodies,
5
+ * where every value a service reads travels as element text, and the only
6
+ * attribute any of them carries is the default namespace.
7
+ */
8
+ export interface XmlElement {
9
+ readonly name: string;
10
+ /** The element's own text, with child element text left out. */
11
+ readonly text: string;
12
+ readonly children: readonly XmlElement[];
13
+ }
14
+ /**
15
+ * Read an XML document as a tree of elements.
16
+ *
17
+ * This handles the shape AWS request bodies actually take, which is elements,
18
+ * text and nothing else. Returns undefined for a document with no element in
19
+ * it, which is what an empty body parses to.
20
+ *
21
+ * A closing tag that does not match the element it closes is ignored rather
22
+ * than raising, because a service reading a malformed body answers with its own
23
+ * error rather than a parser's.
24
+ */
25
+ export declare function parseXmlDocument(source: string): XmlElement | undefined;
26
+ /**
27
+ * The first child element of the given name, if the element has one.
28
+ */
29
+ export declare function xmlChild(element: XmlElement | undefined, name: string): XmlElement | undefined;
30
+ /**
31
+ * Every child element of the given name, in document order.
32
+ */
33
+ export declare function xmlChildren(element: XmlElement | undefined, name: string): readonly XmlElement[];
34
+ /**
35
+ * The trimmed text of a named child, if the element has one.
36
+ */
37
+ export declare function xmlText(element: XmlElement | undefined, name: string): string | undefined;
38
+ /**
39
+ * The boolean a named child states, if the element has one.
40
+ */
41
+ export declare function xmlBoolean(element: XmlElement | undefined, name: string): boolean | undefined;
42
+ //# sourceMappingURL=xml-document.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xml-document.d.ts","sourceRoot":"","sources":["../../../src/util/xml/xml-document.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,gEAAgE;IAChE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,SAAS,UAAU,EAAE,CAAC;CAC1C;AAgBD;;;;;;;;;;GAUG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CA+BvE;AAED;;GAEG;AACH,wBAAgB,QAAQ,CACtB,OAAO,EAAE,UAAU,GAAG,SAAS,EAC/B,IAAI,EAAE,MAAM,GACX,UAAU,GAAG,SAAS,CAExB;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,OAAO,EAAE,UAAU,GAAG,SAAS,EAC/B,IAAI,EAAE,MAAM,GACX,SAAS,UAAU,EAAE,CAEvB;AAED;;GAEG;AACH,wBAAgB,OAAO,CACrB,OAAO,EAAE,UAAU,GAAG,SAAS,EAC/B,IAAI,EAAE,MAAM,GACX,MAAM,GAAG,SAAS,CAEpB;AAED;;GAEG;AACH,wBAAgB,UAAU,CACxB,OAAO,EAAE,UAAU,GAAG,SAAS,EAC/B,IAAI,EAAE,MAAM,GACX,OAAO,GAAG,SAAS,CAIrB"}
@@ -0,0 +1,97 @@
1
+ // The attributes run greedily to the closing angle bracket, with no
2
+ // alternation, so the pattern cannot backtrack. Whether the tag closed itself
3
+ // is read off the end of that run rather than matched separately.
4
+ const tagPattern = /<(?<closing>\/)?(?<name>[A-Za-z_][\w.:-]*)(?<attributes>[^>]*)>/g;
5
+ const prologPattern = /<\?[\s\S]*?\?>|<!--[\s\S]*?-->|<!\[CDATA\[[\s\S]*?]]>/g;
6
+ /**
7
+ * Read an XML document as a tree of elements.
8
+ *
9
+ * This handles the shape AWS request bodies actually take, which is elements,
10
+ * text and nothing else. Returns undefined for a document with no element in
11
+ * it, which is what an empty body parses to.
12
+ *
13
+ * A closing tag that does not match the element it closes is ignored rather
14
+ * than raising, because a service reading a malformed body answers with its own
15
+ * error rather than a parser's.
16
+ */
17
+ export function parseXmlDocument(source) {
18
+ const document = source.replaceAll(prologPattern, "");
19
+ const stack = [];
20
+ let root;
21
+ let index = 0;
22
+ for (const match of document.matchAll(tagPattern)) {
23
+ const groups = match.groups ?? {};
24
+ const open = stack.at(-1);
25
+ if (open !== undefined) {
26
+ open.text += decodeXmlText(document.slice(index, match.index));
27
+ }
28
+ index = match.index + match[0].length;
29
+ if (groups["closing"] === "/") {
30
+ stack.pop();
31
+ continue;
32
+ }
33
+ const name = groups["name"] ?? "";
34
+ const element = { name, text: "", children: [] };
35
+ open?.children.push(element);
36
+ root ??= element;
37
+ if (!(groups["attributes"] ?? "").trimEnd().endsWith("/")) {
38
+ stack.push(element);
39
+ }
40
+ }
41
+ return root;
42
+ }
43
+ /**
44
+ * The first child element of the given name, if the element has one.
45
+ */
46
+ export function xmlChild(element, name) {
47
+ return element?.children.find((child) => child.name === name);
48
+ }
49
+ /**
50
+ * Every child element of the given name, in document order.
51
+ */
52
+ export function xmlChildren(element, name) {
53
+ return element?.children.filter((child) => child.name === name) ?? [];
54
+ }
55
+ /**
56
+ * The trimmed text of a named child, if the element has one.
57
+ */
58
+ export function xmlText(element, name) {
59
+ return xmlChild(element, name)?.text.trim();
60
+ }
61
+ /**
62
+ * The boolean a named child states, if the element has one.
63
+ */
64
+ export function xmlBoolean(element, name) {
65
+ const text = xmlText(element, name);
66
+ return text === undefined ? undefined : text === "true";
67
+ }
68
+ const entities = new Map([
69
+ ["amp", "&"],
70
+ ["lt", "<"],
71
+ ["gt", ">"],
72
+ ["quot", '"'],
73
+ ["apos", "'"],
74
+ ]);
75
+ /**
76
+ * Decode the entities XML text carries.
77
+ */
78
+ function decodeXmlText(text) {
79
+ return text.replaceAll(/&(#x?[\da-f]+|\w+);/gi, (whole, reference) => {
80
+ if (reference.startsWith("#x") || reference.startsWith("#X")) {
81
+ return codePoint(Number.parseInt(reference.slice(2), 16), whole);
82
+ }
83
+ if (reference.startsWith("#")) {
84
+ return codePoint(Number(reference.slice(1)), whole);
85
+ }
86
+ return entities.get(reference.toLowerCase()) ?? whole;
87
+ });
88
+ }
89
+ /**
90
+ * A numeric character reference, left as written when it names no character.
91
+ */
92
+ function codePoint(value, whole) {
93
+ return Number.isFinite(value) && value >= 0 && value <= 0x10_ff_ff
94
+ ? String.fromCodePoint(value)
95
+ : whole;
96
+ }
97
+ //# sourceMappingURL=xml-document.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xml-document.js","sourceRoot":"","sources":["../../../src/util/xml/xml-document.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Writing the XML documents AWS REST services answer with.
3
+ *
4
+ * These build strings rather than a document tree, because an AWS response
5
+ * body is written once and never read back, and the element order is fixed by
6
+ * the shape being written.
7
+ */
8
+ /**
9
+ * An element wrapping already-written content.
10
+ */
11
+ export declare function xmlElement(name: string, content: string): string;
12
+ /**
13
+ * An element holding one value, or nothing at all when the value is absent.
14
+ *
15
+ * An omitted member and a member holding an empty string are different facts
16
+ * in an AWS response, so an absent value writes no element rather than an
17
+ * empty one.
18
+ */
19
+ export declare function xmlValue(name: string, value: string | number | boolean | Date | undefined): string;
20
+ /**
21
+ * A whole document, with the declaration real AWS services send.
22
+ */
23
+ export declare function xmlDocument(rootName: string, content: string): string;
24
+ /**
25
+ * Escape the characters that would otherwise be read as markup.
26
+ */
27
+ export declare function escapeXmlText(value: string): string;
28
+ //# sourceMappingURL=xml-writer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xml-writer.d.ts","sourceRoot":"","sources":["../../../src/util/xml/xml-writer.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;GAEG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAEhE;AAED;;;;;;GAMG;AACH,wBAAgB,QAAQ,CACtB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,GAClD,MAAM,CAER;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAErE;AAgBD;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAOnD"}
@@ -0,0 +1,53 @@
1
+ /**
2
+ * Writing the XML documents AWS REST services answer with.
3
+ *
4
+ * These build strings rather than a document tree, because an AWS response
5
+ * body is written once and never read back, and the element order is fixed by
6
+ * the shape being written.
7
+ */
8
+ /**
9
+ * An element wrapping already-written content.
10
+ */
11
+ export function xmlElement(name, content) {
12
+ return `<${name}>${content}</${name}>`;
13
+ }
14
+ /**
15
+ * An element holding one value, or nothing at all when the value is absent.
16
+ *
17
+ * An omitted member and a member holding an empty string are different facts
18
+ * in an AWS response, so an absent value writes no element rather than an
19
+ * empty one.
20
+ */
21
+ export function xmlValue(name, value) {
22
+ return value === undefined ? "" : xmlElement(name, xmlContent(value));
23
+ }
24
+ /**
25
+ * A whole document, with the declaration real AWS services send.
26
+ */
27
+ export function xmlDocument(rootName, content) {
28
+ return `<?xml version="1.0" encoding="UTF-8"?>${xmlElement(rootName, content)}`;
29
+ }
30
+ /**
31
+ * A value in the form XML text carries it.
32
+ *
33
+ * A timestamp travels as ISO 8601, which is what the REST protocols use and
34
+ * what an SDK parses a date back out of.
35
+ */
36
+ function xmlContent(value) {
37
+ if (value instanceof Date) {
38
+ return value.toISOString();
39
+ }
40
+ return escapeXmlText(String(value));
41
+ }
42
+ /**
43
+ * Escape the characters that would otherwise be read as markup.
44
+ */
45
+ export function escapeXmlText(value) {
46
+ return value
47
+ .replaceAll("&", "&amp;")
48
+ .replaceAll("<", "&lt;")
49
+ .replaceAll(">", "&gt;")
50
+ .replaceAll('"', "&quot;")
51
+ .replaceAll("'", "&apos;");
52
+ }
53
+ //# sourceMappingURL=xml-writer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xml-writer.js","sourceRoot":"","sources":["../../../src/util/xml/xml-writer.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,IAAY,EAAE,OAAe;IACtD,OAAO,IAAI,IAAI,IAAI,OAAO,KAAK,IAAI,GAAG,CAAC;AACzC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,QAAQ,CACtB,IAAY,EACZ,KAAmD;IAEnD,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;AACxE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,QAAgB,EAAE,OAAe;IAC3D,OAAO,yCAAyC,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,CAAC;AAClF,CAAC;AAED;;;;;GAKG;AACH,SAAS,UAAU,CAAC,KAAuC;IACzD,IAAI,KAAK,YAAY,IAAI,EAAE,CAAC;QAC1B,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC;IAC7B,CAAC;IAED,OAAO,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;AACtC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,KAAa;IACzC,OAAO,KAAK;SACT,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC;SACxB,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC;SACvB,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC;SACvB,UAAU,CAAC,GAAG,EAAE,QAAQ,CAAC;SACzB,UAAU,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;AAC/B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kensio/yulin",
3
- "version": "1.16.2",
3
+ "version": "1.16.3",
4
4
  "description": "AWS system behaviour simulation for isolated unit testing",
5
5
  "repository": "https://github.com/KensioSoftware/yulin",
6
6
  "homepage": "https://yulinsim.dev/",