@kensio/yulin 1.11.1 → 1.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (651) hide show
  1. package/README.md +3 -0
  2. package/dist/cli/watch/sim-watch-arguments.js +2 -2
  3. package/dist/cli/watch/sim-watch-arguments.js.map +1 -1
  4. package/dist/sdk/router/resolve-sim-sdk-command-router.d.ts.map +1 -1
  5. package/dist/sdk/router/resolve-sim-sdk-command-router.js +78 -63
  6. package/dist/sdk/router/resolve-sim-sdk-command-router.js.map +1 -1
  7. package/dist/serve/http/live-reload/sim-live-reload-injectable.js +1 -1
  8. package/dist/serve/http/live-reload/sim-live-reload-injectable.js.map +1 -1
  9. package/dist/service/acm/validation/sim-acm-certificate-validation.js +1 -1
  10. package/dist/service/acm/validation/sim-acm-certificate-validation.js.map +1 -1
  11. package/dist/service/aws/arn.js +1 -1
  12. package/dist/service/aws/arn.js.map +1 -1
  13. package/dist/service/aws/factory/sim-aws-account-region-service-builder.d.ts +12 -13
  14. package/dist/service/aws/factory/sim-aws-account-region-service-builder.d.ts.map +1 -1
  15. package/dist/service/aws/factory/sim-aws-account-region-service-builder.js +29 -38
  16. package/dist/service/aws/factory/sim-aws-account-region-service-builder.js.map +1 -1
  17. package/dist/service/aws/factory/sim-aws-cross-account-collaborators.d.ts +37 -0
  18. package/dist/service/aws/factory/sim-aws-cross-account-collaborators.d.ts.map +1 -0
  19. package/dist/service/aws/factory/sim-aws-cross-account-collaborators.js +45 -0
  20. package/dist/service/aws/factory/sim-aws-cross-account-collaborators.js.map +1 -0
  21. package/dist/service/aws/factory/sim-aws-lambda-collaborators.d.ts +39 -0
  22. package/dist/service/aws/factory/sim-aws-lambda-collaborators.d.ts.map +1 -0
  23. package/dist/service/aws/factory/sim-aws-lambda-collaborators.js +34 -0
  24. package/dist/service/aws/factory/sim-aws-lambda-collaborators.js.map +1 -0
  25. package/dist/service/aws/factory/sim-aws-service-factory.d.ts +6 -0
  26. package/dist/service/aws/factory/sim-aws-service-factory.d.ts.map +1 -1
  27. package/dist/service/aws/factory/sim-aws-service-factory.js +8 -0
  28. package/dist/service/aws/factory/sim-aws-service-factory.js.map +1 -1
  29. package/dist/service/aws/sim-aws-account-region-scope.d.ts +10 -0
  30. package/dist/service/aws/sim-aws-account-region-scope.d.ts.map +1 -1
  31. package/dist/service/aws/sim-aws-account-region-scope.js +12 -0
  32. package/dist/service/aws/sim-aws-account-region-scope.js.map +1 -1
  33. package/dist/service/aws/sim-aws-service-accessors.d.ts +6 -0
  34. package/dist/service/aws/sim-aws-service-accessors.d.ts.map +1 -1
  35. package/dist/service/aws/sim-aws-service-accessors.js +8 -0
  36. package/dist/service/aws/sim-aws-service-accessors.js.map +1 -1
  37. package/dist/service/cloudformation/cdk/s3/bucket-deployment/property/sim-cdk-bucket-deploy-values.js +1 -1
  38. package/dist/service/cloudformation/cdk/s3/bucket-deployment/property/sim-cdk-bucket-deploy-values.js.map +1 -1
  39. package/dist/service/cloudformation/resource/cfn/events/sim-event-bridge-cfn-value-adapter.d.ts +9 -0
  40. package/dist/service/cloudformation/resource/cfn/events/sim-event-bridge-cfn-value-adapter.d.ts.map +1 -0
  41. package/dist/service/cloudformation/resource/cfn/events/sim-event-bridge-cfn-value-adapter.js +22 -0
  42. package/dist/service/cloudformation/resource/cfn/events/sim-event-bridge-cfn-value-adapter.js.map +1 -0
  43. package/dist/service/cloudformation/resource/cfn/events/sim-event-bus-cfn.d.ts +26 -0
  44. package/dist/service/cloudformation/resource/cfn/events/sim-event-bus-cfn.d.ts.map +1 -0
  45. package/dist/service/cloudformation/resource/cfn/events/sim-event-bus-cfn.js +35 -0
  46. package/dist/service/cloudformation/resource/cfn/events/sim-event-bus-cfn.js.map +1 -0
  47. package/dist/service/cloudformation/resource/cfn/events/sim-event-rule-cfn.d.ts +28 -0
  48. package/dist/service/cloudformation/resource/cfn/events/sim-event-rule-cfn.d.ts.map +1 -0
  49. package/dist/service/cloudformation/resource/cfn/events/sim-event-rule-cfn.js +30 -0
  50. package/dist/service/cloudformation/resource/cfn/events/sim-event-rule-cfn.js.map +1 -0
  51. package/dist/service/cloudformation/resource/cfn/scheduler/sim-scheduler-cfn-value-adapter.d.ts +6 -0
  52. package/dist/service/cloudformation/resource/cfn/scheduler/sim-scheduler-cfn-value-adapter.d.ts.map +1 -0
  53. package/dist/service/cloudformation/resource/cfn/scheduler/sim-scheduler-cfn-value-adapter.js +36 -0
  54. package/dist/service/cloudformation/resource/cfn/scheduler/sim-scheduler-cfn-value-adapter.js.map +1 -0
  55. package/dist/service/cloudformation/resource/cfn/sim-cfn-resource-value-adapter.d.ts.map +1 -1
  56. package/dist/service/cloudformation/resource/cfn/sim-cfn-resource-value-adapter.js +4 -0
  57. package/dist/service/cloudformation/resource/cfn/sim-cfn-resource-value-adapter.js.map +1 -1
  58. package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-factories.d.ts.map +1 -1
  59. package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-factories.js +8 -0
  60. package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-factories.js.map +1 -1
  61. package/dist/service/cloudfront/controller/cff/sim-cff-applicator.js +2 -2
  62. package/dist/service/cloudfront/controller/cff/sim-cff-applicator.js.map +1 -1
  63. package/dist/service/cloudfront/response-headers-policy/sim-cf-cors-origin-pattern.js +1 -1
  64. package/dist/service/cloudfront/response-headers-policy/sim-cf-cors-origin-pattern.js.map +1 -1
  65. package/dist/service/cognito/serve/sim-cognito-controller.js +1 -1
  66. package/dist/service/cognito/serve/sim-cognito-controller.js.map +1 -1
  67. package/dist/service/dynamodb/command/item/sim-dynamodb-delete-item.js +1 -1
  68. package/dist/service/dynamodb/command/item/sim-dynamodb-delete-item.js.map +1 -1
  69. package/dist/service/dynamodb/command/item/sim-dynamodb-put-item.js +1 -1
  70. package/dist/service/dynamodb/command/item/sim-dynamodb-put-item.js.map +1 -1
  71. package/dist/service/dynamodb/command/item/sim-dynamodb-update-answer.js +1 -1
  72. package/dist/service/dynamodb/command/item/sim-dynamodb-update-answer.js.map +1 -1
  73. package/dist/service/dynamodb/item/sim-dynamodb-number-order.js +2 -2
  74. package/dist/service/dynamodb/item/sim-dynamodb-number-order.js.map +1 -1
  75. package/dist/service/dynamodb/item/sim-dynamodb-number-sum.js +1 -1
  76. package/dist/service/dynamodb/item/sim-dynamodb-number-sum.js.map +1 -1
  77. package/dist/service/eventbridge/bus/sim-event-bus-arn.d.ts +46 -0
  78. package/dist/service/eventbridge/bus/sim-event-bus-arn.d.ts.map +1 -0
  79. package/dist/service/eventbridge/bus/sim-event-bus-arn.js +77 -0
  80. package/dist/service/eventbridge/bus/sim-event-bus-arn.js.map +1 -0
  81. package/dist/service/eventbridge/bus/sim-event-bus-name.d.ts +37 -0
  82. package/dist/service/eventbridge/bus/sim-event-bus-name.d.ts.map +1 -0
  83. package/dist/service/eventbridge/bus/sim-event-bus-name.js +68 -0
  84. package/dist/service/eventbridge/bus/sim-event-bus-name.js.map +1 -0
  85. package/dist/service/eventbridge/bus/sim-event-bus-store.d.ts +34 -0
  86. package/dist/service/eventbridge/bus/sim-event-bus-store.d.ts.map +1 -0
  87. package/dist/service/eventbridge/bus/sim-event-bus-store.js +50 -0
  88. package/dist/service/eventbridge/bus/sim-event-bus-store.js.map +1 -0
  89. package/dist/service/eventbridge/bus/sim-event-bus.d.ts +68 -0
  90. package/dist/service/eventbridge/bus/sim-event-bus.d.ts.map +1 -0
  91. package/dist/service/eventbridge/bus/sim-event-bus.js +69 -0
  92. package/dist/service/eventbridge/bus/sim-event-bus.js.map +1 -0
  93. package/dist/service/eventbridge/cfn/bus/sim-cfn-event-bus-creator.d.ts +25 -0
  94. package/dist/service/eventbridge/cfn/bus/sim-cfn-event-bus-creator.d.ts.map +1 -0
  95. package/dist/service/eventbridge/cfn/bus/sim-cfn-event-bus-creator.js +39 -0
  96. package/dist/service/eventbridge/cfn/bus/sim-cfn-event-bus-creator.js.map +1 -0
  97. package/dist/service/eventbridge/cfn/bus/sim-cfn-event-bus-properties.d.ts +33 -0
  98. package/dist/service/eventbridge/cfn/bus/sim-cfn-event-bus-properties.d.ts.map +1 -0
  99. package/dist/service/eventbridge/cfn/bus/sim-cfn-event-bus-properties.js +78 -0
  100. package/dist/service/eventbridge/cfn/bus/sim-cfn-event-bus-properties.js.map +1 -0
  101. package/dist/service/eventbridge/cfn/rule/sim-cfn-event-rule-creator.d.ts +33 -0
  102. package/dist/service/eventbridge/cfn/rule/sim-cfn-event-rule-creator.d.ts.map +1 -0
  103. package/dist/service/eventbridge/cfn/rule/sim-cfn-event-rule-creator.js +71 -0
  104. package/dist/service/eventbridge/cfn/rule/sim-cfn-event-rule-creator.js.map +1 -0
  105. package/dist/service/eventbridge/cfn/rule/sim-cfn-event-rule-properties.d.ts +61 -0
  106. package/dist/service/eventbridge/cfn/rule/sim-cfn-event-rule-properties.d.ts.map +1 -0
  107. package/dist/service/eventbridge/cfn/rule/sim-cfn-event-rule-properties.js +126 -0
  108. package/dist/service/eventbridge/cfn/rule/sim-cfn-event-rule-properties.js.map +1 -0
  109. package/dist/service/eventbridge/cfn/rule/sim-cfn-event-rule-targets.d.ts +18 -0
  110. package/dist/service/eventbridge/cfn/rule/sim-cfn-event-rule-targets.d.ts.map +1 -0
  111. package/dist/service/eventbridge/cfn/rule/sim-cfn-event-rule-targets.js +75 -0
  112. package/dist/service/eventbridge/cfn/rule/sim-cfn-event-rule-targets.js.map +1 -0
  113. package/dist/service/eventbridge/cfn/sim-cfn-event-bridge-resource-deleter.d.ts +32 -0
  114. package/dist/service/eventbridge/cfn/sim-cfn-event-bridge-resource-deleter.d.ts.map +1 -0
  115. package/dist/service/eventbridge/cfn/sim-cfn-event-bridge-resource-deleter.js +60 -0
  116. package/dist/service/eventbridge/cfn/sim-cfn-event-bridge-resource-deleter.js.map +1 -0
  117. package/dist/service/eventbridge/cfn/sim-cfn-event-bridge-resource-error.d.ts +24 -0
  118. package/dist/service/eventbridge/cfn/sim-cfn-event-bridge-resource-error.d.ts.map +1 -0
  119. package/dist/service/eventbridge/cfn/sim-cfn-event-bridge-resource-error.js +39 -0
  120. package/dist/service/eventbridge/cfn/sim-cfn-event-bridge-resource-error.js.map +1 -0
  121. package/dist/service/eventbridge/cfn/sim-cfn-event-bridge-resource-types.d.ts +10 -0
  122. package/dist/service/eventbridge/cfn/sim-cfn-event-bridge-resource-types.d.ts.map +1 -0
  123. package/dist/service/eventbridge/cfn/sim-cfn-event-bridge-resource-types.js +10 -0
  124. package/dist/service/eventbridge/cfn/sim-cfn-event-bridge-resource-types.js.map +1 -0
  125. package/dist/service/eventbridge/cfn/sim-event-bridge-cfn-resource-factory.d.ts +31 -0
  126. package/dist/service/eventbridge/cfn/sim-event-bridge-cfn-resource-factory.d.ts.map +1 -0
  127. package/dist/service/eventbridge/cfn/sim-event-bridge-cfn-resource-factory.js +51 -0
  128. package/dist/service/eventbridge/cfn/sim-event-bridge-cfn-resource-factory.js.map +1 -0
  129. package/dist/service/eventbridge/command/authorize/sim-event-bridge-authorizer.d.ts +43 -0
  130. package/dist/service/eventbridge/command/authorize/sim-event-bridge-authorizer.d.ts.map +1 -0
  131. package/dist/service/eventbridge/command/authorize/sim-event-bridge-authorizer.js +64 -0
  132. package/dist/service/eventbridge/command/authorize/sim-event-bridge-authorizer.js.map +1 -0
  133. package/dist/service/eventbridge/command/bus/bus.command.d.ts +107 -0
  134. package/dist/service/eventbridge/command/bus/bus.command.d.ts.map +1 -0
  135. package/dist/service/eventbridge/command/bus/bus.command.js +2 -0
  136. package/dist/service/eventbridge/command/bus/bus.command.js.map +1 -0
  137. package/dist/service/eventbridge/command/bus/sim-event-bridge-bus-access.d.ts +62 -0
  138. package/dist/service/eventbridge/command/bus/sim-event-bridge-bus-access.d.ts.map +1 -0
  139. package/dist/service/eventbridge/command/bus/sim-event-bridge-bus-access.js +71 -0
  140. package/dist/service/eventbridge/command/bus/sim-event-bridge-bus-access.js.map +1 -0
  141. package/dist/service/eventbridge/command/bus/sim-event-bridge-bus-commands.d.ts +36 -0
  142. package/dist/service/eventbridge/command/bus/sim-event-bridge-bus-commands.d.ts.map +1 -0
  143. package/dist/service/eventbridge/command/bus/sim-event-bridge-bus-commands.js +44 -0
  144. package/dist/service/eventbridge/command/bus/sim-event-bridge-bus-commands.js.map +1 -0
  145. package/dist/service/eventbridge/command/bus/sim-event-bridge-create-event-bus.d.ts +39 -0
  146. package/dist/service/eventbridge/command/bus/sim-event-bridge-create-event-bus.d.ts.map +1 -0
  147. package/dist/service/eventbridge/command/bus/sim-event-bridge-create-event-bus.js +58 -0
  148. package/dist/service/eventbridge/command/bus/sim-event-bridge-create-event-bus.js.map +1 -0
  149. package/dist/service/eventbridge/command/bus/sim-event-bridge-delete-event-bus.d.ts +43 -0
  150. package/dist/service/eventbridge/command/bus/sim-event-bridge-delete-event-bus.d.ts.map +1 -0
  151. package/dist/service/eventbridge/command/bus/sim-event-bridge-delete-event-bus.js +52 -0
  152. package/dist/service/eventbridge/command/bus/sim-event-bridge-delete-event-bus.js.map +1 -0
  153. package/dist/service/eventbridge/command/bus/sim-event-bridge-listed-bus.d.ts +23 -0
  154. package/dist/service/eventbridge/command/bus/sim-event-bridge-listed-bus.d.ts.map +1 -0
  155. package/dist/service/eventbridge/command/bus/sim-event-bridge-listed-bus.js +36 -0
  156. package/dist/service/eventbridge/command/bus/sim-event-bridge-listed-bus.js.map +1 -0
  157. package/dist/service/eventbridge/command/bus/sim-event-bridge-request-bus-name.d.ts +16 -0
  158. package/dist/service/eventbridge/command/bus/sim-event-bridge-request-bus-name.d.ts.map +1 -0
  159. package/dist/service/eventbridge/command/bus/sim-event-bridge-request-bus-name.js +44 -0
  160. package/dist/service/eventbridge/command/bus/sim-event-bridge-request-bus-name.js.map +1 -0
  161. package/dist/service/eventbridge/command/bus/sim-event-bridge-unsimulated-bus-input.d.ts +11 -0
  162. package/dist/service/eventbridge/command/bus/sim-event-bridge-unsimulated-bus-input.d.ts.map +1 -0
  163. package/dist/service/eventbridge/command/bus/sim-event-bridge-unsimulated-bus-input.js +63 -0
  164. package/dist/service/eventbridge/command/bus/sim-event-bridge-unsimulated-bus-input.js.map +1 -0
  165. package/dist/service/eventbridge/command/put-events/put-events.command.d.ts +46 -0
  166. package/dist/service/eventbridge/command/put-events/put-events.command.d.ts.map +1 -0
  167. package/dist/service/eventbridge/command/put-events/put-events.command.js +2 -0
  168. package/dist/service/eventbridge/command/put-events/put-events.command.js.map +1 -0
  169. package/dist/service/eventbridge/command/put-events/sim-event-bridge-authorized-entries.d.ts +21 -0
  170. package/dist/service/eventbridge/command/put-events/sim-event-bridge-authorized-entries.d.ts.map +1 -0
  171. package/dist/service/eventbridge/command/put-events/sim-event-bridge-authorized-entries.js +17 -0
  172. package/dist/service/eventbridge/command/put-events/sim-event-bridge-authorized-entries.js.map +1 -0
  173. package/dist/service/eventbridge/command/put-events/sim-event-bridge-entry-failure.d.ts +44 -0
  174. package/dist/service/eventbridge/command/put-events/sim-event-bridge-entry-failure.d.ts.map +1 -0
  175. package/dist/service/eventbridge/command/put-events/sim-event-bridge-entry-failure.js +55 -0
  176. package/dist/service/eventbridge/command/put-events/sim-event-bridge-entry-failure.js.map +1 -0
  177. package/dist/service/eventbridge/command/put-events/sim-event-bridge-entry-reader.d.ts +40 -0
  178. package/dist/service/eventbridge/command/put-events/sim-event-bridge-entry-reader.d.ts.map +1 -0
  179. package/dist/service/eventbridge/command/put-events/sim-event-bridge-entry-reader.js +104 -0
  180. package/dist/service/eventbridge/command/put-events/sim-event-bridge-entry-reader.js.map +1 -0
  181. package/dist/service/eventbridge/command/put-events/sim-event-bridge-entry-size.d.ts +26 -0
  182. package/dist/service/eventbridge/command/put-events/sim-event-bridge-entry-size.d.ts.map +1 -0
  183. package/dist/service/eventbridge/command/put-events/sim-event-bridge-entry-size.js +56 -0
  184. package/dist/service/eventbridge/command/put-events/sim-event-bridge-entry-size.js.map +1 -0
  185. package/dist/service/eventbridge/command/put-events/sim-event-bridge-put-events.d.ts +49 -0
  186. package/dist/service/eventbridge/command/put-events/sim-event-bridge-put-events.d.ts.map +1 -0
  187. package/dist/service/eventbridge/command/put-events/sim-event-bridge-put-events.js +63 -0
  188. package/dist/service/eventbridge/command/put-events/sim-event-bridge-put-events.js.map +1 -0
  189. package/dist/service/eventbridge/command/put-events/sim-event-bridge-request-entries.d.ts +15 -0
  190. package/dist/service/eventbridge/command/put-events/sim-event-bridge-request-entries.d.ts.map +1 -0
  191. package/dist/service/eventbridge/command/put-events/sim-event-bridge-request-entries.js +59 -0
  192. package/dist/service/eventbridge/command/put-events/sim-event-bridge-request-entries.js.map +1 -0
  193. package/dist/service/eventbridge/command/rule/rule.command.d.ts +140 -0
  194. package/dist/service/eventbridge/command/rule/rule.command.d.ts.map +1 -0
  195. package/dist/service/eventbridge/command/rule/rule.command.js +2 -0
  196. package/dist/service/eventbridge/command/rule/rule.command.js.map +1 -0
  197. package/dist/service/eventbridge/command/rule/sim-event-bridge-listed-rule.d.ts +17 -0
  198. package/dist/service/eventbridge/command/rule/sim-event-bridge-listed-rule.d.ts.map +1 -0
  199. package/dist/service/eventbridge/command/rule/sim-event-bridge-listed-rule.js +32 -0
  200. package/dist/service/eventbridge/command/rule/sim-event-bridge-listed-rule.js.map +1 -0
  201. package/dist/service/eventbridge/command/rule/sim-event-bridge-put-rule.d.ts +39 -0
  202. package/dist/service/eventbridge/command/rule/sim-event-bridge-put-rule.d.ts.map +1 -0
  203. package/dist/service/eventbridge/command/rule/sim-event-bridge-put-rule.js +53 -0
  204. package/dist/service/eventbridge/command/rule/sim-event-bridge-put-rule.js.map +1 -0
  205. package/dist/service/eventbridge/command/rule/sim-event-bridge-rule-access.d.ts +77 -0
  206. package/dist/service/eventbridge/command/rule/sim-event-bridge-rule-access.d.ts.map +1 -0
  207. package/dist/service/eventbridge/command/rule/sim-event-bridge-rule-access.js +78 -0
  208. package/dist/service/eventbridge/command/rule/sim-event-bridge-rule-access.js.map +1 -0
  209. package/dist/service/eventbridge/command/rule/sim-event-bridge-rule-commands.d.ts +50 -0
  210. package/dist/service/eventbridge/command/rule/sim-event-bridge-rule-commands.d.ts.map +1 -0
  211. package/dist/service/eventbridge/command/rule/sim-event-bridge-rule-commands.js +79 -0
  212. package/dist/service/eventbridge/command/rule/sim-event-bridge-rule-commands.js.map +1 -0
  213. package/dist/service/eventbridge/command/rule/sim-event-bridge-rule-trigger.d.ts +25 -0
  214. package/dist/service/eventbridge/command/rule/sim-event-bridge-rule-trigger.d.ts.map +1 -0
  215. package/dist/service/eventbridge/command/rule/sim-event-bridge-rule-trigger.js +39 -0
  216. package/dist/service/eventbridge/command/rule/sim-event-bridge-rule-trigger.js.map +1 -0
  217. package/dist/service/eventbridge/command/rule/sim-event-bridge-test-event-pattern.d.ts +34 -0
  218. package/dist/service/eventbridge/command/rule/sim-event-bridge-test-event-pattern.d.ts.map +1 -0
  219. package/dist/service/eventbridge/command/rule/sim-event-bridge-test-event-pattern.js +55 -0
  220. package/dist/service/eventbridge/command/rule/sim-event-bridge-test-event-pattern.js.map +1 -0
  221. package/dist/service/eventbridge/command/rule/sim-event-bridge-unsimulated-rule-input.d.ts +10 -0
  222. package/dist/service/eventbridge/command/rule/sim-event-bridge-unsimulated-rule-input.d.ts.map +1 -0
  223. package/dist/service/eventbridge/command/rule/sim-event-bridge-unsimulated-rule-input.js +27 -0
  224. package/dist/service/eventbridge/command/rule/sim-event-bridge-unsimulated-rule-input.js.map +1 -0
  225. package/dist/service/eventbridge/command/sim-event-bridge-command.types.d.ts +5 -0
  226. package/dist/service/eventbridge/command/sim-event-bridge-command.types.d.ts.map +1 -0
  227. package/dist/service/eventbridge/command/sim-event-bridge-command.types.js +2 -0
  228. package/dist/service/eventbridge/command/sim-event-bridge-command.types.js.map +1 -0
  229. package/dist/service/eventbridge/command/sim-event-bridge-commands.d.ts +51 -0
  230. package/dist/service/eventbridge/command/sim-event-bridge-commands.d.ts.map +1 -0
  231. package/dist/service/eventbridge/command/sim-event-bridge-commands.js +106 -0
  232. package/dist/service/eventbridge/command/sim-event-bridge-commands.js.map +1 -0
  233. package/dist/service/eventbridge/command/sim-event-bridge-page.d.ts +24 -0
  234. package/dist/service/eventbridge/command/sim-event-bridge-page.d.ts.map +1 -0
  235. package/dist/service/eventbridge/command/sim-event-bridge-page.js +66 -0
  236. package/dist/service/eventbridge/command/sim-event-bridge-page.js.map +1 -0
  237. package/dist/service/eventbridge/command/sim-event-bridge-request-options.d.ts +12 -0
  238. package/dist/service/eventbridge/command/sim-event-bridge-request-options.d.ts.map +1 -0
  239. package/dist/service/eventbridge/command/sim-event-bridge-request-options.js +2 -0
  240. package/dist/service/eventbridge/command/sim-event-bridge-request-options.js.map +1 -0
  241. package/dist/service/eventbridge/command/target/sim-event-bridge-put-targets.d.ts +29 -0
  242. package/dist/service/eventbridge/command/target/sim-event-bridge-put-targets.d.ts.map +1 -0
  243. package/dist/service/eventbridge/command/target/sim-event-bridge-put-targets.js +45 -0
  244. package/dist/service/eventbridge/command/target/sim-event-bridge-put-targets.js.map +1 -0
  245. package/dist/service/eventbridge/command/target/sim-event-bridge-target-commands.d.ts +43 -0
  246. package/dist/service/eventbridge/command/target/sim-event-bridge-target-commands.d.ts.map +1 -0
  247. package/dist/service/eventbridge/command/target/sim-event-bridge-target-commands.js +79 -0
  248. package/dist/service/eventbridge/command/target/sim-event-bridge-target-commands.js.map +1 -0
  249. package/dist/service/eventbridge/command/target/sim-event-bridge-target-refusals.d.ts +18 -0
  250. package/dist/service/eventbridge/command/target/sim-event-bridge-target-refusals.d.ts.map +1 -0
  251. package/dist/service/eventbridge/command/target/sim-event-bridge-target-refusals.js +36 -0
  252. package/dist/service/eventbridge/command/target/sim-event-bridge-target-refusals.js.map +1 -0
  253. package/dist/service/eventbridge/command/target/sim-event-bridge-unsimulated-target-input.d.ts +6 -0
  254. package/dist/service/eventbridge/command/target/sim-event-bridge-unsimulated-target-input.d.ts.map +1 -0
  255. package/dist/service/eventbridge/command/target/sim-event-bridge-unsimulated-target-input.js +74 -0
  256. package/dist/service/eventbridge/command/target/sim-event-bridge-unsimulated-target-input.js.map +1 -0
  257. package/dist/service/eventbridge/command/target/target.command.d.ts +111 -0
  258. package/dist/service/eventbridge/command/target/target.command.d.ts.map +1 -0
  259. package/dist/service/eventbridge/command/target/target.command.js +2 -0
  260. package/dist/service/eventbridge/command/target/target.command.js.map +1 -0
  261. package/dist/service/eventbridge/delivery/sim-aws-event-bridge-delivery-targets.d.ts +30 -0
  262. package/dist/service/eventbridge/delivery/sim-aws-event-bridge-delivery-targets.d.ts.map +1 -0
  263. package/dist/service/eventbridge/delivery/sim-aws-event-bridge-delivery-targets.js +49 -0
  264. package/dist/service/eventbridge/delivery/sim-aws-event-bridge-delivery-targets.js.map +1 -0
  265. package/dist/service/eventbridge/delivery/sim-event-bridge-delivery-failures.d.ts +45 -0
  266. package/dist/service/eventbridge/delivery/sim-event-bridge-delivery-failures.d.ts.map +1 -0
  267. package/dist/service/eventbridge/delivery/sim-event-bridge-delivery-failures.js +52 -0
  268. package/dist/service/eventbridge/delivery/sim-event-bridge-delivery-failures.js.map +1 -0
  269. package/dist/service/eventbridge/delivery/sim-event-bridge-delivery-function.d.ts +29 -0
  270. package/dist/service/eventbridge/delivery/sim-event-bridge-delivery-function.d.ts.map +1 -0
  271. package/dist/service/eventbridge/delivery/sim-event-bridge-delivery-function.js +55 -0
  272. package/dist/service/eventbridge/delivery/sim-event-bridge-delivery-function.js.map +1 -0
  273. package/dist/service/eventbridge/delivery/sim-event-bridge-delivery-queue.d.ts +23 -0
  274. package/dist/service/eventbridge/delivery/sim-event-bridge-delivery-queue.d.ts.map +1 -0
  275. package/dist/service/eventbridge/delivery/sim-event-bridge-delivery-queue.js +57 -0
  276. package/dist/service/eventbridge/delivery/sim-event-bridge-delivery-queue.js.map +1 -0
  277. package/dist/service/eventbridge/delivery/sim-event-bridge-delivery-topic.d.ts +24 -0
  278. package/dist/service/eventbridge/delivery/sim-event-bridge-delivery-topic.d.ts.map +1 -0
  279. package/dist/service/eventbridge/delivery/sim-event-bridge-delivery-topic.js +58 -0
  280. package/dist/service/eventbridge/delivery/sim-event-bridge-delivery-topic.js.map +1 -0
  281. package/dist/service/eventbridge/delivery/sim-event-bridge-delivery.d.ts +66 -0
  282. package/dist/service/eventbridge/delivery/sim-event-bridge-delivery.d.ts.map +1 -0
  283. package/dist/service/eventbridge/delivery/sim-event-bridge-delivery.js +39 -0
  284. package/dist/service/eventbridge/delivery/sim-event-bridge-delivery.js.map +1 -0
  285. package/dist/service/eventbridge/delivery/sim-event-bridge-no-delivery-targets.d.ts +17 -0
  286. package/dist/service/eventbridge/delivery/sim-event-bridge-no-delivery-targets.d.ts.map +1 -0
  287. package/dist/service/eventbridge/delivery/sim-event-bridge-no-delivery-targets.js +21 -0
  288. package/dist/service/eventbridge/delivery/sim-event-bridge-no-delivery-targets.js.map +1 -0
  289. package/dist/service/eventbridge/delivery/sim-event-bridge-target-delivery.d.ts +29 -0
  290. package/dist/service/eventbridge/delivery/sim-event-bridge-target-delivery.d.ts.map +1 -0
  291. package/dist/service/eventbridge/delivery/sim-event-bridge-target-delivery.js +42 -0
  292. package/dist/service/eventbridge/delivery/sim-event-bridge-target-delivery.js.map +1 -0
  293. package/dist/service/eventbridge/error/sim-event-bridge-delivery.error.d.ts +23 -0
  294. package/dist/service/eventbridge/error/sim-event-bridge-delivery.error.d.ts.map +1 -0
  295. package/dist/service/eventbridge/error/sim-event-bridge-delivery.error.js +23 -0
  296. package/dist/service/eventbridge/error/sim-event-bridge-delivery.error.js.map +1 -0
  297. package/dist/service/eventbridge/error/sim-event-bridge.error.d.ts +83 -0
  298. package/dist/service/eventbridge/error/sim-event-bridge.error.d.ts.map +1 -0
  299. package/dist/service/eventbridge/error/sim-event-bridge.error.js +94 -0
  300. package/dist/service/eventbridge/error/sim-event-bridge.error.js.map +1 -0
  301. package/dist/service/eventbridge/event/sim-event-bridge-event.d.ts +69 -0
  302. package/dist/service/eventbridge/event/sim-event-bridge-event.d.ts.map +1 -0
  303. package/dist/service/eventbridge/event/sim-event-bridge-event.js +62 -0
  304. package/dist/service/eventbridge/event/sim-event-bridge-event.js.map +1 -0
  305. package/dist/service/eventbridge/index.d.ts +16 -0
  306. package/dist/service/eventbridge/index.d.ts.map +1 -0
  307. package/dist/service/eventbridge/index.js +14 -0
  308. package/dist/service/eventbridge/index.js.map +1 -0
  309. package/dist/service/eventbridge/pattern/match/sim-event-affix-match.d.ts +45 -0
  310. package/dist/service/eventbridge/pattern/match/sim-event-affix-match.d.ts.map +1 -0
  311. package/dist/service/eventbridge/pattern/match/sim-event-affix-match.js +74 -0
  312. package/dist/service/eventbridge/pattern/match/sim-event-affix-match.js.map +1 -0
  313. package/dist/service/eventbridge/pattern/match/sim-event-anything-but-match.d.ts +29 -0
  314. package/dist/service/eventbridge/pattern/match/sim-event-anything-but-match.d.ts.map +1 -0
  315. package/dist/service/eventbridge/pattern/match/sim-event-anything-but-match.js +85 -0
  316. package/dist/service/eventbridge/pattern/match/sim-event-anything-but-match.js.map +1 -0
  317. package/dist/service/eventbridge/pattern/match/sim-event-exact-match.d.ts +18 -0
  318. package/dist/service/eventbridge/pattern/match/sim-event-exact-match.d.ts.map +1 -0
  319. package/dist/service/eventbridge/pattern/match/sim-event-exact-match.js +23 -0
  320. package/dist/service/eventbridge/pattern/match/sim-event-exact-match.js.map +1 -0
  321. package/dist/service/eventbridge/pattern/match/sim-event-exists-match.d.ts +35 -0
  322. package/dist/service/eventbridge/pattern/match/sim-event-exists-match.d.ts.map +1 -0
  323. package/dist/service/eventbridge/pattern/match/sim-event-exists-match.js +48 -0
  324. package/dist/service/eventbridge/pattern/match/sim-event-exists-match.js.map +1 -0
  325. package/dist/service/eventbridge/pattern/match/sim-event-numeric-match.d.ts +51 -0
  326. package/dist/service/eventbridge/pattern/match/sim-event-numeric-match.d.ts.map +1 -0
  327. package/dist/service/eventbridge/pattern/match/sim-event-numeric-match.js +107 -0
  328. package/dist/service/eventbridge/pattern/match/sim-event-numeric-match.js.map +1 -0
  329. package/dist/service/eventbridge/pattern/match/sim-event-pattern-match.d.ts +31 -0
  330. package/dist/service/eventbridge/pattern/match/sim-event-pattern-match.d.ts.map +1 -0
  331. package/dist/service/eventbridge/pattern/match/sim-event-pattern-match.js +29 -0
  332. package/dist/service/eventbridge/pattern/match/sim-event-pattern-match.js.map +1 -0
  333. package/dist/service/eventbridge/pattern/sim-event-pattern-field.d.ts +36 -0
  334. package/dist/service/eventbridge/pattern/sim-event-pattern-field.d.ts.map +1 -0
  335. package/dist/service/eventbridge/pattern/sim-event-pattern-field.js +72 -0
  336. package/dist/service/eventbridge/pattern/sim-event-pattern-field.js.map +1 -0
  337. package/dist/service/eventbridge/pattern/sim-event-pattern-node.d.ts +32 -0
  338. package/dist/service/eventbridge/pattern/sim-event-pattern-node.d.ts.map +1 -0
  339. package/dist/service/eventbridge/pattern/sim-event-pattern-node.js +81 -0
  340. package/dist/service/eventbridge/pattern/sim-event-pattern-node.js.map +1 -0
  341. package/dist/service/eventbridge/pattern/sim-event-pattern-operators.d.ts +11 -0
  342. package/dist/service/eventbridge/pattern/sim-event-pattern-operators.d.ts.map +1 -0
  343. package/dist/service/eventbridge/pattern/sim-event-pattern-operators.js +69 -0
  344. package/dist/service/eventbridge/pattern/sim-event-pattern-operators.js.map +1 -0
  345. package/dist/service/eventbridge/pattern/sim-event-pattern-refusals.d.ts +24 -0
  346. package/dist/service/eventbridge/pattern/sim-event-pattern-refusals.d.ts.map +1 -0
  347. package/dist/service/eventbridge/pattern/sim-event-pattern-refusals.js +40 -0
  348. package/dist/service/eventbridge/pattern/sim-event-pattern-refusals.js.map +1 -0
  349. package/dist/service/eventbridge/pattern/sim-event-pattern.d.ts +35 -0
  350. package/dist/service/eventbridge/pattern/sim-event-pattern.d.ts.map +1 -0
  351. package/dist/service/eventbridge/pattern/sim-event-pattern.js +64 -0
  352. package/dist/service/eventbridge/pattern/sim-event-pattern.js.map +1 -0
  353. package/dist/service/eventbridge/routing/sim-event-bridge-router.d.ts +65 -0
  354. package/dist/service/eventbridge/routing/sim-event-bridge-router.d.ts.map +1 -0
  355. package/dist/service/eventbridge/routing/sim-event-bridge-router.js +89 -0
  356. package/dist/service/eventbridge/routing/sim-event-bridge-router.js.map +1 -0
  357. package/dist/service/eventbridge/rule/sim-event-rule-arn.d.ts +17 -0
  358. package/dist/service/eventbridge/rule/sim-event-rule-arn.d.ts.map +1 -0
  359. package/dist/service/eventbridge/rule/sim-event-rule-arn.js +21 -0
  360. package/dist/service/eventbridge/rule/sim-event-rule-arn.js.map +1 -0
  361. package/dist/service/eventbridge/rule/sim-event-rule-name.d.ts +20 -0
  362. package/dist/service/eventbridge/rule/sim-event-rule-name.d.ts.map +1 -0
  363. package/dist/service/eventbridge/rule/sim-event-rule-name.js +43 -0
  364. package/dist/service/eventbridge/rule/sim-event-rule-name.js.map +1 -0
  365. package/dist/service/eventbridge/rule/sim-event-rule-state.d.ts +25 -0
  366. package/dist/service/eventbridge/rule/sim-event-rule-state.d.ts.map +1 -0
  367. package/dist/service/eventbridge/rule/sim-event-rule-state.js +58 -0
  368. package/dist/service/eventbridge/rule/sim-event-rule-state.js.map +1 -0
  369. package/dist/service/eventbridge/rule/sim-event-rule-store.d.ts +40 -0
  370. package/dist/service/eventbridge/rule/sim-event-rule-store.d.ts.map +1 -0
  371. package/dist/service/eventbridge/rule/sim-event-rule-store.js +0 -0
  372. package/dist/service/eventbridge/rule/sim-event-rule-store.js.map +1 -0
  373. package/dist/service/eventbridge/rule/sim-event-rule.d.ts +63 -0
  374. package/dist/service/eventbridge/rule/sim-event-rule.d.ts.map +1 -0
  375. package/dist/service/eventbridge/rule/sim-event-rule.js +64 -0
  376. package/dist/service/eventbridge/rule/sim-event-rule.js.map +1 -0
  377. package/dist/service/eventbridge/schedule/sim-event-bridge-rule-schedules.d.ts +59 -0
  378. package/dist/service/eventbridge/schedule/sim-event-bridge-rule-schedules.d.ts.map +1 -0
  379. package/dist/service/eventbridge/schedule/sim-event-bridge-rule-schedules.js +78 -0
  380. package/dist/service/eventbridge/schedule/sim-event-bridge-rule-schedules.js.map +1 -0
  381. package/dist/service/eventbridge/schedule/sim-event-bridge-schedule.d.ts +23 -0
  382. package/dist/service/eventbridge/schedule/sim-event-bridge-schedule.d.ts.map +1 -0
  383. package/dist/service/eventbridge/schedule/sim-event-bridge-schedule.js +42 -0
  384. package/dist/service/eventbridge/schedule/sim-event-bridge-schedule.js.map +1 -0
  385. package/dist/service/eventbridge/schedule/sim-event-bridge-scheduled-event.d.ts +32 -0
  386. package/dist/service/eventbridge/schedule/sim-event-bridge-scheduled-event.d.ts.map +1 -0
  387. package/dist/service/eventbridge/schedule/sim-event-bridge-scheduled-event.js +36 -0
  388. package/dist/service/eventbridge/schedule/sim-event-bridge-scheduled-event.js.map +1 -0
  389. package/dist/service/eventbridge/sdk/sim-event-bridge-sdk-command-router.d.ts +19 -0
  390. package/dist/service/eventbridge/sdk/sim-event-bridge-sdk-command-router.d.ts.map +1 -0
  391. package/dist/service/eventbridge/sdk/sim-event-bridge-sdk-command-router.js +89 -0
  392. package/dist/service/eventbridge/sdk/sim-event-bridge-sdk-command-router.js.map +1 -0
  393. package/dist/service/eventbridge/sim-event-bridge-inspection.d.ts +63 -0
  394. package/dist/service/eventbridge/sim-event-bridge-inspection.d.ts.map +1 -0
  395. package/dist/service/eventbridge/sim-event-bridge-inspection.js +63 -0
  396. package/dist/service/eventbridge/sim-event-bridge-inspection.js.map +1 -0
  397. package/dist/service/eventbridge/sim-event-bridge.d.ts +129 -0
  398. package/dist/service/eventbridge/sim-event-bridge.d.ts.map +1 -0
  399. package/dist/service/eventbridge/sim-event-bridge.js +184 -0
  400. package/dist/service/eventbridge/sim-event-bridge.js.map +1 -0
  401. package/dist/service/eventbridge/target/sim-event-target-arn.d.ts +51 -0
  402. package/dist/service/eventbridge/target/sim-event-target-arn.d.ts.map +1 -0
  403. package/dist/service/eventbridge/target/sim-event-target-arn.js +114 -0
  404. package/dist/service/eventbridge/target/sim-event-target-arn.js.map +1 -0
  405. package/dist/service/eventbridge/target/sim-event-target-store.d.ts +47 -0
  406. package/dist/service/eventbridge/target/sim-event-target-store.d.ts.map +1 -0
  407. package/dist/service/eventbridge/target/sim-event-target-store.js +71 -0
  408. package/dist/service/eventbridge/target/sim-event-target-store.js.map +1 -0
  409. package/dist/service/eventbridge/target/sim-event-target.d.ts +45 -0
  410. package/dist/service/eventbridge/target/sim-event-target.d.ts.map +1 -0
  411. package/dist/service/eventbridge/target/sim-event-target.js +78 -0
  412. package/dist/service/eventbridge/target/sim-event-target.js.map +1 -0
  413. package/dist/service/iam/credential/sim-iam-access-key-checks.js +2 -2
  414. package/dist/service/iam/credential/sim-iam-access-key-checks.js.map +1 -1
  415. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-path.js +1 -1
  416. package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-path.js.map +1 -1
  417. package/dist/service/lambda/function/sim-lambda-function-arn-parts.js +1 -1
  418. package/dist/service/lambda/function/sim-lambda-function-arn-parts.js.map +1 -1
  419. package/dist/service/s3/notification/destination/sqs/sim-s3-notification-queue-arn.js +1 -1
  420. package/dist/service/s3/notification/destination/sqs/sim-s3-notification-queue-arn.js.map +1 -1
  421. package/dist/service/s3/serve/sim-s3-upload-checksum.js +2 -2
  422. package/dist/service/s3/serve/sim-s3-upload-checksum.js.map +1 -1
  423. package/dist/service/scheduler/cfn/sim-cfn-schedule-properties.d.ts +52 -0
  424. package/dist/service/scheduler/cfn/sim-cfn-schedule-properties.d.ts.map +1 -0
  425. package/dist/service/scheduler/cfn/sim-cfn-schedule-properties.js +124 -0
  426. package/dist/service/scheduler/cfn/sim-cfn-schedule-properties.js.map +1 -0
  427. package/dist/service/scheduler/cfn/sim-cfn-scheduler-resource-error.d.ts +24 -0
  428. package/dist/service/scheduler/cfn/sim-cfn-scheduler-resource-error.d.ts.map +1 -0
  429. package/dist/service/scheduler/cfn/sim-cfn-scheduler-resource-error.js +37 -0
  430. package/dist/service/scheduler/cfn/sim-cfn-scheduler-resource-error.js.map +1 -0
  431. package/dist/service/scheduler/cfn/sim-cfn-scheduler-resource-lookup.d.ts +19 -0
  432. package/dist/service/scheduler/cfn/sim-cfn-scheduler-resource-lookup.d.ts.map +1 -0
  433. package/dist/service/scheduler/cfn/sim-cfn-scheduler-resource-lookup.js +28 -0
  434. package/dist/service/scheduler/cfn/sim-cfn-scheduler-resource-lookup.js.map +1 -0
  435. package/dist/service/scheduler/cfn/sim-scheduler-cfn-resource-factory.d.ts +30 -0
  436. package/dist/service/scheduler/cfn/sim-scheduler-cfn-resource-factory.d.ts.map +1 -0
  437. package/dist/service/scheduler/cfn/sim-scheduler-cfn-resource-factory.js +50 -0
  438. package/dist/service/scheduler/cfn/sim-scheduler-cfn-resource-factory.js.map +1 -0
  439. package/dist/service/scheduler/command/authorize/sim-scheduler-authorizer.d.ts +38 -0
  440. package/dist/service/scheduler/command/authorize/sim-scheduler-authorizer.d.ts.map +1 -0
  441. package/dist/service/scheduler/command/authorize/sim-scheduler-authorizer.js +58 -0
  442. package/dist/service/scheduler/command/authorize/sim-scheduler-authorizer.js.map +1 -0
  443. package/dist/service/scheduler/command/schedule/schedule.command.d.ts +153 -0
  444. package/dist/service/scheduler/command/schedule/schedule.command.d.ts.map +1 -0
  445. package/dist/service/scheduler/command/schedule/schedule.command.js +2 -0
  446. package/dist/service/scheduler/command/schedule/schedule.command.js.map +1 -0
  447. package/dist/service/scheduler/command/schedule/sim-scheduler-create-schedule.d.ts +34 -0
  448. package/dist/service/scheduler/command/schedule/sim-scheduler-create-schedule.d.ts.map +1 -0
  449. package/dist/service/scheduler/command/schedule/sim-scheduler-create-schedule.js +40 -0
  450. package/dist/service/scheduler/command/schedule/sim-scheduler-create-schedule.js.map +1 -0
  451. package/dist/service/scheduler/command/schedule/sim-scheduler-described-schedule.d.ts +21 -0
  452. package/dist/service/scheduler/command/schedule/sim-scheduler-described-schedule.d.ts.map +1 -0
  453. package/dist/service/scheduler/command/schedule/sim-scheduler-described-schedule.js +47 -0
  454. package/dist/service/scheduler/command/schedule/sim-scheduler-described-schedule.js.map +1 -0
  455. package/dist/service/scheduler/command/schedule/sim-scheduler-listed-schedules.d.ts +10 -0
  456. package/dist/service/scheduler/command/schedule/sim-scheduler-listed-schedules.d.ts.map +1 -0
  457. package/dist/service/scheduler/command/schedule/sim-scheduler-listed-schedules.js +17 -0
  458. package/dist/service/scheduler/command/schedule/sim-scheduler-listed-schedules.js.map +1 -0
  459. package/dist/service/scheduler/command/schedule/sim-scheduler-schedule-access.d.ts +62 -0
  460. package/dist/service/scheduler/command/schedule/sim-scheduler-schedule-access.d.ts.map +1 -0
  461. package/dist/service/scheduler/command/schedule/sim-scheduler-schedule-access.js +61 -0
  462. package/dist/service/scheduler/command/schedule/sim-scheduler-schedule-access.js.map +1 -0
  463. package/dist/service/scheduler/command/schedule/sim-scheduler-schedule-commands.d.ts +36 -0
  464. package/dist/service/scheduler/command/schedule/sim-scheduler-schedule-commands.d.ts.map +1 -0
  465. package/dist/service/scheduler/command/schedule/sim-scheduler-schedule-commands.js +49 -0
  466. package/dist/service/scheduler/command/schedule/sim-scheduler-schedule-commands.js.map +1 -0
  467. package/dist/service/scheduler/command/schedule/sim-scheduler-schedule-writer.d.ts +32 -0
  468. package/dist/service/scheduler/command/schedule/sim-scheduler-schedule-writer.d.ts.map +1 -0
  469. package/dist/service/scheduler/command/schedule/sim-scheduler-schedule-writer.js +47 -0
  470. package/dist/service/scheduler/command/schedule/sim-scheduler-schedule-writer.js.map +1 -0
  471. package/dist/service/scheduler/command/schedule/sim-scheduler-unsimulated-input.d.ts +10 -0
  472. package/dist/service/scheduler/command/schedule/sim-scheduler-unsimulated-input.d.ts.map +1 -0
  473. package/dist/service/scheduler/command/schedule/sim-scheduler-unsimulated-input.js +62 -0
  474. package/dist/service/scheduler/command/schedule/sim-scheduler-unsimulated-input.js.map +1 -0
  475. package/dist/service/scheduler/command/schedule/sim-scheduler-unsimulated-target.d.ts +6 -0
  476. package/dist/service/scheduler/command/schedule/sim-scheduler-unsimulated-target.d.ts.map +1 -0
  477. package/dist/service/scheduler/command/schedule/sim-scheduler-unsimulated-target.js +55 -0
  478. package/dist/service/scheduler/command/schedule/sim-scheduler-unsimulated-target.js.map +1 -0
  479. package/dist/service/scheduler/command/schedule/sim-scheduler-update-schedule.d.ts +36 -0
  480. package/dist/service/scheduler/command/schedule/sim-scheduler-update-schedule.d.ts.map +1 -0
  481. package/dist/service/scheduler/command/schedule/sim-scheduler-update-schedule.js +41 -0
  482. package/dist/service/scheduler/command/schedule/sim-scheduler-update-schedule.js.map +1 -0
  483. package/dist/service/scheduler/command/sim-scheduler-command.types.d.ts +2 -0
  484. package/dist/service/scheduler/command/sim-scheduler-command.types.d.ts.map +1 -0
  485. package/dist/service/scheduler/command/sim-scheduler-command.types.js +2 -0
  486. package/dist/service/scheduler/command/sim-scheduler-command.types.js.map +1 -0
  487. package/dist/service/scheduler/command/sim-scheduler-commands.d.ts +33 -0
  488. package/dist/service/scheduler/command/sim-scheduler-commands.d.ts.map +1 -0
  489. package/dist/service/scheduler/command/sim-scheduler-commands.js +57 -0
  490. package/dist/service/scheduler/command/sim-scheduler-commands.js.map +1 -0
  491. package/dist/service/scheduler/command/sim-scheduler-page.d.ts +22 -0
  492. package/dist/service/scheduler/command/sim-scheduler-page.d.ts.map +1 -0
  493. package/dist/service/scheduler/command/sim-scheduler-page.js +64 -0
  494. package/dist/service/scheduler/command/sim-scheduler-page.js.map +1 -0
  495. package/dist/service/scheduler/command/sim-scheduler-request-options.d.ts +12 -0
  496. package/dist/service/scheduler/command/sim-scheduler-request-options.d.ts.map +1 -0
  497. package/dist/service/scheduler/command/sim-scheduler-request-options.js +2 -0
  498. package/dist/service/scheduler/command/sim-scheduler-request-options.js.map +1 -0
  499. package/dist/service/scheduler/delivery/sim-aws-scheduler-delivery-targets.d.ts +33 -0
  500. package/dist/service/scheduler/delivery/sim-aws-scheduler-delivery-targets.d.ts.map +1 -0
  501. package/dist/service/scheduler/delivery/sim-aws-scheduler-delivery-targets.js +56 -0
  502. package/dist/service/scheduler/delivery/sim-aws-scheduler-delivery-targets.js.map +1 -0
  503. package/dist/service/scheduler/delivery/sim-scheduler-delivery-failures.d.ts +53 -0
  504. package/dist/service/scheduler/delivery/sim-scheduler-delivery-failures.d.ts.map +1 -0
  505. package/dist/service/scheduler/delivery/sim-scheduler-delivery-failures.js +60 -0
  506. package/dist/service/scheduler/delivery/sim-scheduler-delivery-failures.js.map +1 -0
  507. package/dist/service/scheduler/delivery/sim-scheduler-delivery-function.d.ts +23 -0
  508. package/dist/service/scheduler/delivery/sim-scheduler-delivery-function.d.ts.map +1 -0
  509. package/dist/service/scheduler/delivery/sim-scheduler-delivery-function.js +45 -0
  510. package/dist/service/scheduler/delivery/sim-scheduler-delivery-function.js.map +1 -0
  511. package/dist/service/scheduler/delivery/sim-scheduler-delivery-queue.d.ts +18 -0
  512. package/dist/service/scheduler/delivery/sim-scheduler-delivery-queue.d.ts.map +1 -0
  513. package/dist/service/scheduler/delivery/sim-scheduler-delivery-queue.js +42 -0
  514. package/dist/service/scheduler/delivery/sim-scheduler-delivery-queue.js.map +1 -0
  515. package/dist/service/scheduler/delivery/sim-scheduler-delivery-topic.d.ts +18 -0
  516. package/dist/service/scheduler/delivery/sim-scheduler-delivery-topic.d.ts.map +1 -0
  517. package/dist/service/scheduler/delivery/sim-scheduler-delivery-topic.js +42 -0
  518. package/dist/service/scheduler/delivery/sim-scheduler-delivery-topic.js.map +1 -0
  519. package/dist/service/scheduler/delivery/sim-scheduler-delivery.d.ts +56 -0
  520. package/dist/service/scheduler/delivery/sim-scheduler-delivery.d.ts.map +1 -0
  521. package/dist/service/scheduler/delivery/sim-scheduler-delivery.js +39 -0
  522. package/dist/service/scheduler/delivery/sim-scheduler-delivery.js.map +1 -0
  523. package/dist/service/scheduler/delivery/sim-scheduler-execution-role.d.ts +34 -0
  524. package/dist/service/scheduler/delivery/sim-scheduler-execution-role.d.ts.map +1 -0
  525. package/dist/service/scheduler/delivery/sim-scheduler-execution-role.js +75 -0
  526. package/dist/service/scheduler/delivery/sim-scheduler-execution-role.js.map +1 -0
  527. package/dist/service/scheduler/delivery/sim-scheduler-no-delivery-targets.d.ts +17 -0
  528. package/dist/service/scheduler/delivery/sim-scheduler-no-delivery-targets.d.ts.map +1 -0
  529. package/dist/service/scheduler/delivery/sim-scheduler-no-delivery-targets.js +21 -0
  530. package/dist/service/scheduler/delivery/sim-scheduler-no-delivery-targets.js.map +1 -0
  531. package/dist/service/scheduler/delivery/sim-scheduler-target-delivery.d.ts +28 -0
  532. package/dist/service/scheduler/delivery/sim-scheduler-target-delivery.d.ts.map +1 -0
  533. package/dist/service/scheduler/delivery/sim-scheduler-target-delivery.js +42 -0
  534. package/dist/service/scheduler/delivery/sim-scheduler-target-delivery.js.map +1 -0
  535. package/dist/service/scheduler/error/sim-scheduler-delivery.error.d.ts +23 -0
  536. package/dist/service/scheduler/error/sim-scheduler-delivery.error.d.ts.map +1 -0
  537. package/dist/service/scheduler/error/sim-scheduler-delivery.error.js +23 -0
  538. package/dist/service/scheduler/error/sim-scheduler-delivery.error.js.map +1 -0
  539. package/dist/service/scheduler/error/sim-scheduler.error.d.ts +64 -0
  540. package/dist/service/scheduler/error/sim-scheduler.error.d.ts.map +1 -0
  541. package/dist/service/scheduler/error/sim-scheduler.error.js +71 -0
  542. package/dist/service/scheduler/error/sim-scheduler.error.js.map +1 -0
  543. package/dist/service/scheduler/index.d.ts +14 -0
  544. package/dist/service/scheduler/index.d.ts.map +1 -0
  545. package/dist/service/scheduler/index.js +13 -0
  546. package/dist/service/scheduler/index.js.map +1 -0
  547. package/dist/service/scheduler/schedule/sim-scheduler-action-after-completion.d.ts +6 -0
  548. package/dist/service/scheduler/schedule/sim-scheduler-action-after-completion.d.ts.map +1 -0
  549. package/dist/service/scheduler/schedule/sim-scheduler-action-after-completion.js +16 -0
  550. package/dist/service/scheduler/schedule/sim-scheduler-action-after-completion.js.map +1 -0
  551. package/dist/service/scheduler/schedule/sim-scheduler-schedule-arn.d.ts +12 -0
  552. package/dist/service/scheduler/schedule/sim-scheduler-schedule-arn.d.ts.map +1 -0
  553. package/dist/service/scheduler/schedule/sim-scheduler-schedule-arn.js +14 -0
  554. package/dist/service/scheduler/schedule/sim-scheduler-schedule-arn.js.map +1 -0
  555. package/dist/service/scheduler/schedule/sim-scheduler-schedule-expression.d.ts +21 -0
  556. package/dist/service/scheduler/schedule/sim-scheduler-schedule-expression.d.ts.map +1 -0
  557. package/dist/service/scheduler/schedule/sim-scheduler-schedule-expression.js +51 -0
  558. package/dist/service/scheduler/schedule/sim-scheduler-schedule-expression.js.map +1 -0
  559. package/dist/service/scheduler/schedule/sim-scheduler-schedule-name.d.ts +30 -0
  560. package/dist/service/scheduler/schedule/sim-scheduler-schedule-name.d.ts.map +1 -0
  561. package/dist/service/scheduler/schedule/sim-scheduler-schedule-name.js +71 -0
  562. package/dist/service/scheduler/schedule/sim-scheduler-schedule-name.js.map +1 -0
  563. package/dist/service/scheduler/schedule/sim-scheduler-schedule-state.d.ts +21 -0
  564. package/dist/service/scheduler/schedule/sim-scheduler-schedule-state.d.ts.map +1 -0
  565. package/dist/service/scheduler/schedule/sim-scheduler-schedule-state.js +39 -0
  566. package/dist/service/scheduler/schedule/sim-scheduler-schedule-state.js.map +1 -0
  567. package/dist/service/scheduler/schedule/sim-scheduler-schedule-store.d.ts +31 -0
  568. package/dist/service/scheduler/schedule/sim-scheduler-schedule-store.d.ts.map +1 -0
  569. package/dist/service/scheduler/schedule/sim-scheduler-schedule-store.js +54 -0
  570. package/dist/service/scheduler/schedule/sim-scheduler-schedule-store.js.map +1 -0
  571. package/dist/service/scheduler/schedule/sim-scheduler-schedule.d.ts +67 -0
  572. package/dist/service/scheduler/schedule/sim-scheduler-schedule.d.ts.map +1 -0
  573. package/dist/service/scheduler/schedule/sim-scheduler-schedule.js +59 -0
  574. package/dist/service/scheduler/schedule/sim-scheduler-schedule.js.map +1 -0
  575. package/dist/service/scheduler/schedule/sim-scheduler-schedules.d.ts +62 -0
  576. package/dist/service/scheduler/schedule/sim-scheduler-schedules.d.ts.map +1 -0
  577. package/dist/service/scheduler/schedule/sim-scheduler-schedules.js +86 -0
  578. package/dist/service/scheduler/schedule/sim-scheduler-schedules.js.map +1 -0
  579. package/dist/service/scheduler/sdk/sim-scheduler-sdk-command-router.d.ts +18 -0
  580. package/dist/service/scheduler/sdk/sim-scheduler-sdk-command-router.d.ts.map +1 -0
  581. package/dist/service/scheduler/sdk/sim-scheduler-sdk-command-router.js +44 -0
  582. package/dist/service/scheduler/sdk/sim-scheduler-sdk-command-router.js.map +1 -0
  583. package/dist/service/scheduler/sim-scheduler-inspection.d.ts +26 -0
  584. package/dist/service/scheduler/sim-scheduler-inspection.d.ts.map +1 -0
  585. package/dist/service/scheduler/sim-scheduler-inspection.js +28 -0
  586. package/dist/service/scheduler/sim-scheduler-inspection.js.map +1 -0
  587. package/dist/service/scheduler/sim-scheduler.d.ts +80 -0
  588. package/dist/service/scheduler/sim-scheduler.d.ts.map +1 -0
  589. package/dist/service/scheduler/sim-scheduler.js +98 -0
  590. package/dist/service/scheduler/sim-scheduler.js.map +1 -0
  591. package/dist/service/scheduler/target/sim-scheduler-target-arn.d.ts +51 -0
  592. package/dist/service/scheduler/target/sim-scheduler-target-arn.d.ts.map +1 -0
  593. package/dist/service/scheduler/target/sim-scheduler-target-arn.js +104 -0
  594. package/dist/service/scheduler/target/sim-scheduler-target-arn.js.map +1 -0
  595. package/dist/service/scheduler/target/sim-scheduler-target.d.ts +40 -0
  596. package/dist/service/scheduler/target/sim-scheduler-target.d.ts.map +1 -0
  597. package/dist/service/scheduler/target/sim-scheduler-target.js +63 -0
  598. package/dist/service/scheduler/target/sim-scheduler-target.js.map +1 -0
  599. package/dist/service/sns/filter/sim-sns-attribute-subject.js +1 -1
  600. package/dist/service/sns/filter/sim-sns-attribute-subject.js.map +1 -1
  601. package/dist/service/sns/filter/sim-sns-filter-refusals.js +1 -1
  602. package/dist/service/sns/filter/sim-sns-filter-refusals.js.map +1 -1
  603. package/dist/service/sns/subscription/sim-sns-queue-endpoint-arn.js +3 -3
  604. package/dist/service/sns/subscription/sim-sns-queue-endpoint-arn.js.map +1 -1
  605. package/dist/service/ssm/parameter/sim-ssm-parameter-encryption.js +1 -1
  606. package/dist/service/ssm/parameter/sim-ssm-parameter-encryption.js.map +1 -1
  607. package/dist/util/schedule/at/sim-at-expression.d.ts +26 -0
  608. package/dist/util/schedule/at/sim-at-expression.d.ts.map +1 -0
  609. package/dist/util/schedule/at/sim-at-expression.js +61 -0
  610. package/dist/util/schedule/at/sim-at-expression.js.map +1 -0
  611. package/dist/util/schedule/cron/sim-cron-expression.d.ts +45 -0
  612. package/dist/util/schedule/cron/sim-cron-expression.d.ts.map +1 -0
  613. package/dist/util/schedule/cron/sim-cron-expression.js +111 -0
  614. package/dist/util/schedule/cron/sim-cron-expression.js.map +1 -0
  615. package/dist/util/schedule/cron/sim-cron-field-bounds.d.ts +14 -0
  616. package/dist/util/schedule/cron/sim-cron-field-bounds.d.ts.map +1 -0
  617. package/dist/util/schedule/cron/sim-cron-field-bounds.js +63 -0
  618. package/dist/util/schedule/cron/sim-cron-field-bounds.js.map +1 -0
  619. package/dist/util/schedule/cron/sim-cron-field-spec.d.ts +38 -0
  620. package/dist/util/schedule/cron/sim-cron-field-spec.d.ts.map +1 -0
  621. package/dist/util/schedule/cron/sim-cron-field-spec.js +85 -0
  622. package/dist/util/schedule/cron/sim-cron-field-spec.js.map +1 -0
  623. package/dist/util/schedule/cron/sim-cron-field.d.ts +31 -0
  624. package/dist/util/schedule/cron/sim-cron-field.d.ts.map +1 -0
  625. package/dist/util/schedule/cron/sim-cron-field.js +83 -0
  626. package/dist/util/schedule/cron/sim-cron-field.js.map +1 -0
  627. package/dist/util/schedule/cron/sim-cron-fields.d.ts +18 -0
  628. package/dist/util/schedule/cron/sim-cron-fields.d.ts.map +1 -0
  629. package/dist/util/schedule/cron/sim-cron-fields.js +26 -0
  630. package/dist/util/schedule/cron/sim-cron-fields.js.map +1 -0
  631. package/dist/util/schedule/cron/sim-cron-refusals.d.ts +39 -0
  632. package/dist/util/schedule/cron/sim-cron-refusals.d.ts.map +1 -0
  633. package/dist/util/schedule/cron/sim-cron-refusals.js +56 -0
  634. package/dist/util/schedule/cron/sim-cron-refusals.js.map +1 -0
  635. package/dist/util/schedule/rate/sim-rate-expression.d.ts +29 -0
  636. package/dist/util/schedule/rate/sim-rate-expression.d.ts.map +1 -0
  637. package/dist/util/schedule/rate/sim-rate-expression.js +114 -0
  638. package/dist/util/schedule/rate/sim-rate-expression.js.map +1 -0
  639. package/dist/util/schedule/sim-schedule-dialect.d.ts +28 -0
  640. package/dist/util/schedule/sim-schedule-dialect.d.ts.map +1 -0
  641. package/dist/util/schedule/sim-schedule-dialect.js +2 -0
  642. package/dist/util/schedule/sim-schedule-dialect.js.map +1 -0
  643. package/dist/util/schedule/sim-schedule.d.ts +30 -0
  644. package/dist/util/schedule/sim-schedule.d.ts.map +1 -0
  645. package/dist/util/schedule/sim-schedule.error.d.ts +20 -0
  646. package/dist/util/schedule/sim-schedule.error.d.ts.map +1 -0
  647. package/dist/util/schedule/sim-schedule.error.js +20 -0
  648. package/dist/util/schedule/sim-schedule.error.js.map +1 -0
  649. package/dist/util/schedule/sim-schedule.js +62 -0
  650. package/dist/util/schedule/sim-schedule.js.map +1 -0
  651. package/package.json +12 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-scheduler-delivery-function.d.ts","sourceRoot":"","sources":["../../../../src/service/scheduler/delivery/sim-scheduler-delivery-function.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,2CAA2C,CAAC;AAK9F,OAAO,EACL,KAAK,2BAA2B,EAEjC,MAAM,6BAA6B,CAAC;AAIrC,UAAU,sCAAsC;IAC9C,QAAQ,CAAC,KAAK,EAAE,4BAA4B,CAAC;CAC9C;AAED;;;;;;;GAOG;AACH,qBAAa,4BAA4B;IACvC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA+B;IAErD,YAAY,UAAU,EAAE,sCAAsC,EAE7D;IAED;;OAEG;IACG,OAAO,CAAC,QAAQ,EAAE,2BAA2B,GAAG,OAAO,CAAC,IAAI,CAAC,CA+BlE;CACF"}
@@ -0,0 +1,45 @@
1
+ import { SimSchedulerDeliveryNotPermitted, SimSchedulerTargetNotFound, } from "../error/sim-scheduler-delivery.error.js";
2
+ import { simSchedulerDeliveryDocument, } from "./sim-scheduler-delivery.js";
3
+ const invokeAction = "lambda:InvokeFunction";
4
+ /**
5
+ * A Lambda function a simulated schedule invokes.
6
+ *
7
+ * The function's own resource policy is not consulted, which is the difference
8
+ * from an EventBridge rule target: the schedule arrives as an assumed role
9
+ * rather than as a service principal, and a role in the same Account needs only
10
+ * its own identity policy to invoke a function.
11
+ */
12
+ export class SimSchedulerDeliveryFunction {
13
+ scope;
14
+ constructor(properties) {
15
+ this.scope = properties.scope;
16
+ }
17
+ /**
18
+ * Invoke the function, if the execution role may.
19
+ */
20
+ async deliver(delivery) {
21
+ const targetArn = delivery.request.schedule.target.arn;
22
+ const simFunction = this.scope
23
+ .lambda()
24
+ .getSimFunctionByName(targetArn.functionName);
25
+ if (simFunction === undefined) {
26
+ throw new SimSchedulerTargetNotFound(`${targetArn.value} is not a simulated Lambda function.`);
27
+ }
28
+ const decision = this.scope.iam().authorize({
29
+ action: invokeAction,
30
+ resource: targetArn.value,
31
+ caller: delivery.caller,
32
+ });
33
+ if (decision.isDenied) {
34
+ throw new SimSchedulerDeliveryNotPermitted(`${delivery.request.schedule.target.roleArn} is not allowed to ` +
35
+ `${invokeAction} on ${targetArn.value}. Grant it in a policy on ` +
36
+ `the execution role.`);
37
+ }
38
+ // Invoked directly rather than through an Invoke command, because the
39
+ // schedule is already inside the background task standing for the
40
+ // asynchronous invocation real Scheduler makes, and because a handler
41
+ // failure has to reach the delivery outcome rather than being swallowed.
42
+ await simFunction.invoke(simSchedulerDeliveryDocument(delivery.request));
43
+ }
44
+ }
45
+ //# sourceMappingURL=sim-scheduler-delivery-function.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-scheduler-delivery-function.js","sourceRoot":"","sources":["../../../../src/service/scheduler/delivery/sim-scheduler-delivery-function.ts"],"names":[],"mappings":"AACA,OAAO,EACL,gCAAgC,EAChC,0BAA0B,GAC3B,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAEL,4BAA4B,GAC7B,MAAM,6BAA6B,CAAC;AAErC,MAAM,YAAY,GAAG,uBAAuB,CAAC;AAM7C;;;;;;;GAOG;AACH,MAAM,OAAO,4BAA4B;IACtB,KAAK,CAA+B;IAErD,YAAY,UAAkD;QAC5D,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO,CAAC,QAAqC;QACjD,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC;QACvD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK;aAC3B,MAAM,EAAE;aACR,oBAAoB,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QAEhD,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,MAAM,IAAI,0BAA0B,CAClC,GAAG,SAAS,CAAC,KAAK,sCAAsC,CACzD,CAAC;QACJ,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC;YAC1C,MAAM,EAAE,YAAY;YACpB,QAAQ,EAAE,SAAS,CAAC,KAAK;YACzB,MAAM,EAAE,QAAQ,CAAC,MAAM;SACxB,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACtB,MAAM,IAAI,gCAAgC,CACxC,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,qBAAqB;gBAC9D,GAAG,YAAY,OAAO,SAAS,CAAC,KAAK,4BAA4B;gBACjE,qBAAqB,CACxB,CAAC;QACJ,CAAC;QAED,sEAAsE;QACtE,kEAAkE;QAClE,sEAAsE;QACtE,yEAAyE;QACzE,MAAM,WAAW,CAAC,MAAM,CAAC,4BAA4B,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3E,CAAC;CACF"}
@@ -0,0 +1,18 @@
1
+ import type { SimAwsAccountRegionContainer } from "../../aws/sim-aws-account-region-scope.js";
2
+ import { type SimSchedulerAssumedDelivery } from "./sim-scheduler-delivery.js";
3
+ interface SimSchedulerDeliveryQueueProperties {
4
+ readonly scope: SimAwsAccountRegionContainer;
5
+ }
6
+ /**
7
+ * An SQS queue a simulated schedule sends to.
8
+ */
9
+ export declare class SimSchedulerDeliveryQueue {
10
+ private readonly scope;
11
+ constructor(properties: SimSchedulerDeliveryQueueProperties);
12
+ /**
13
+ * Send the schedule's input to the queue, if the execution role may.
14
+ */
15
+ deliver(delivery: SimSchedulerAssumedDelivery): Promise<void>;
16
+ }
17
+ export {};
18
+ //# sourceMappingURL=sim-scheduler-delivery-queue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-scheduler-delivery-queue.d.ts","sourceRoot":"","sources":["../../../../src/service/scheduler/delivery/sim-scheduler-delivery-queue.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,2CAA2C,CAAC;AAK9F,OAAO,EACL,KAAK,2BAA2B,EAEjC,MAAM,6BAA6B,CAAC;AAIrC,UAAU,mCAAmC;IAC3C,QAAQ,CAAC,KAAK,EAAE,4BAA4B,CAAC;CAC9C;AAED;;GAEG;AACH,qBAAa,yBAAyB;IACpC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA+B;IAErD,YAAY,UAAU,EAAE,mCAAmC,EAE1D;IAED;;OAEG;IACG,OAAO,CAAC,QAAQ,EAAE,2BAA2B,GAAG,OAAO,CAAC,IAAI,CAAC,CAoClE;CACF"}
@@ -0,0 +1,42 @@
1
+ import { SimSchedulerDeliveryNotPermitted, SimSchedulerTargetNotFound, } from "../error/sim-scheduler-delivery.error.js";
2
+ import { simSchedulerDeliveryJson, } from "./sim-scheduler-delivery.js";
3
+ const sendAction = "sqs:SendMessage";
4
+ /**
5
+ * An SQS queue a simulated schedule sends to.
6
+ */
7
+ export class SimSchedulerDeliveryQueue {
8
+ scope;
9
+ constructor(properties) {
10
+ this.scope = properties.scope;
11
+ }
12
+ /**
13
+ * Send the schedule's input to the queue, if the execution role may.
14
+ */
15
+ async deliver(delivery) {
16
+ const targetArn = delivery.request.schedule.target.arn;
17
+ const queue = this.scope.sqs().findQueue(targetArn.resource);
18
+ if (queue === undefined) {
19
+ throw new SimSchedulerTargetNotFound(`${targetArn.value} is not a simulated SQS queue.`);
20
+ }
21
+ const decision = this.scope.iam().authorize({
22
+ action: sendAction,
23
+ resource: targetArn.value,
24
+ caller: delivery.caller,
25
+ });
26
+ if (decision.isDenied) {
27
+ throw new SimSchedulerDeliveryNotPermitted(`${delivery.request.schedule.target.roleArn} is not allowed to ` +
28
+ `${sendAction} on ${targetArn.value}. Grant it in a policy on the ` +
29
+ `execution role.`);
30
+ }
31
+ // Sent through the ordinary SendMessage path, as the execution role, so a
32
+ // delivered message is the same thing an SDK caller would have sent and is
33
+ // authorized again on the way in.
34
+ await this.scope.sqs().sendMessage({
35
+ input: {
36
+ QueueUrl: queue.arn.url,
37
+ MessageBody: simSchedulerDeliveryJson(delivery.request),
38
+ },
39
+ }, { caller: delivery.caller });
40
+ }
41
+ }
42
+ //# sourceMappingURL=sim-scheduler-delivery-queue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-scheduler-delivery-queue.js","sourceRoot":"","sources":["../../../../src/service/scheduler/delivery/sim-scheduler-delivery-queue.ts"],"names":[],"mappings":"AACA,OAAO,EACL,gCAAgC,EAChC,0BAA0B,GAC3B,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAEL,wBAAwB,GACzB,MAAM,6BAA6B,CAAC;AAErC,MAAM,UAAU,GAAG,iBAAiB,CAAC;AAMrC;;GAEG;AACH,MAAM,OAAO,yBAAyB;IACnB,KAAK,CAA+B;IAErD,YAAY,UAA+C;QACzD,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO,CAAC,QAAqC;QACjD,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC;QACvD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAE7D,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,0BAA0B,CAClC,GAAG,SAAS,CAAC,KAAK,gCAAgC,CACnD,CAAC;QACJ,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC;YAC1C,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,SAAS,CAAC,KAAK;YACzB,MAAM,EAAE,QAAQ,CAAC,MAAM;SACxB,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACtB,MAAM,IAAI,gCAAgC,CACxC,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,qBAAqB;gBAC9D,GAAG,UAAU,OAAO,SAAS,CAAC,KAAK,gCAAgC;gBACnE,iBAAiB,CACpB,CAAC;QACJ,CAAC;QAED,0EAA0E;QAC1E,2EAA2E;QAC3E,kCAAkC;QAClC,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,WAAW,CAChC;YACE,KAAK,EAAE;gBACL,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG;gBACvB,WAAW,EAAE,wBAAwB,CAAC,QAAQ,CAAC,OAAO,CAAC;aACxD;SACF,EACD,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAC5B,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,18 @@
1
+ import type { SimAwsAccountRegionContainer } from "../../aws/sim-aws-account-region-scope.js";
2
+ import { type SimSchedulerAssumedDelivery } from "./sim-scheduler-delivery.js";
3
+ interface SimSchedulerDeliveryTopicProperties {
4
+ readonly scope: SimAwsAccountRegionContainer;
5
+ }
6
+ /**
7
+ * An SNS topic a simulated schedule publishes to.
8
+ */
9
+ export declare class SimSchedulerDeliveryTopic {
10
+ private readonly scope;
11
+ constructor(properties: SimSchedulerDeliveryTopicProperties);
12
+ /**
13
+ * Publish the schedule's input to the topic, if the execution role may.
14
+ */
15
+ deliver(delivery: SimSchedulerAssumedDelivery): Promise<void>;
16
+ }
17
+ export {};
18
+ //# sourceMappingURL=sim-scheduler-delivery-topic.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-scheduler-delivery-topic.d.ts","sourceRoot":"","sources":["../../../../src/service/scheduler/delivery/sim-scheduler-delivery-topic.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,2CAA2C,CAAC;AAK9F,OAAO,EACL,KAAK,2BAA2B,EAEjC,MAAM,6BAA6B,CAAC;AAIrC,UAAU,mCAAmC;IAC3C,QAAQ,CAAC,KAAK,EAAE,4BAA4B,CAAC;CAC9C;AAED;;GAEG;AACH,qBAAa,yBAAyB;IACpC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA+B;IAErD,YAAY,UAAU,EAAE,mCAAmC,EAE1D;IAED;;OAEG;IACG,OAAO,CAAC,QAAQ,EAAE,2BAA2B,GAAG,OAAO,CAAC,IAAI,CAAC,CAoClE;CACF"}
@@ -0,0 +1,42 @@
1
+ import { SimSchedulerDeliveryNotPermitted, SimSchedulerTargetNotFound, } from "../error/sim-scheduler-delivery.error.js";
2
+ import { simSchedulerDeliveryJson, } from "./sim-scheduler-delivery.js";
3
+ const publishAction = "sns:Publish";
4
+ /**
5
+ * An SNS topic a simulated schedule publishes to.
6
+ */
7
+ export class SimSchedulerDeliveryTopic {
8
+ scope;
9
+ constructor(properties) {
10
+ this.scope = properties.scope;
11
+ }
12
+ /**
13
+ * Publish the schedule's input to the topic, if the execution role may.
14
+ */
15
+ async deliver(delivery) {
16
+ const targetArn = delivery.request.schedule.target.arn;
17
+ const topic = this.scope.sns().findTopic(targetArn.resource);
18
+ if (topic === undefined) {
19
+ throw new SimSchedulerTargetNotFound(`${targetArn.value} is not a simulated SNS topic.`);
20
+ }
21
+ const decision = this.scope.iam().authorize({
22
+ action: publishAction,
23
+ resource: targetArn.value,
24
+ caller: delivery.caller,
25
+ });
26
+ if (decision.isDenied) {
27
+ throw new SimSchedulerDeliveryNotPermitted(`${delivery.request.schedule.target.roleArn} is not allowed to ` +
28
+ `${publishAction} on ${targetArn.value}. Grant it in a policy on ` +
29
+ `the execution role.`);
30
+ }
31
+ // Published through the ordinary Publish path, as the execution role, so a
32
+ // delivered message fans out to the topic's subscriptions exactly as an SDK
33
+ // caller's would.
34
+ await this.scope.sns().publish({
35
+ input: {
36
+ TopicArn: topic.arn.value,
37
+ Message: simSchedulerDeliveryJson(delivery.request),
38
+ },
39
+ }, { caller: delivery.caller });
40
+ }
41
+ }
42
+ //# sourceMappingURL=sim-scheduler-delivery-topic.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-scheduler-delivery-topic.js","sourceRoot":"","sources":["../../../../src/service/scheduler/delivery/sim-scheduler-delivery-topic.ts"],"names":[],"mappings":"AACA,OAAO,EACL,gCAAgC,EAChC,0BAA0B,GAC3B,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAEL,wBAAwB,GACzB,MAAM,6BAA6B,CAAC;AAErC,MAAM,aAAa,GAAG,aAAa,CAAC;AAMpC;;GAEG;AACH,MAAM,OAAO,yBAAyB;IACnB,KAAK,CAA+B;IAErD,YAAY,UAA+C;QACzD,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO,CAAC,QAAqC;QACjD,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC;QACvD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAE7D,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,0BAA0B,CAClC,GAAG,SAAS,CAAC,KAAK,gCAAgC,CACnD,CAAC;QACJ,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC;YAC1C,MAAM,EAAE,aAAa;YACrB,QAAQ,EAAE,SAAS,CAAC,KAAK;YACzB,MAAM,EAAE,QAAQ,CAAC,MAAM;SACxB,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACtB,MAAM,IAAI,gCAAgC,CACxC,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,qBAAqB;gBAC9D,GAAG,aAAa,OAAO,SAAS,CAAC,KAAK,4BAA4B;gBAClE,qBAAqB,CACxB,CAAC;QACJ,CAAC;QAED,2EAA2E;QAC3E,4EAA4E;QAC5E,kBAAkB;QAClB,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAC5B;YACE,KAAK,EAAE;gBACL,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK;gBACzB,OAAO,EAAE,wBAAwB,CAAC,QAAQ,CAAC,OAAO,CAAC;aACpD;SACF,EACD,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAC5B,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,56 @@
1
+ import type { SimAwsCaller } from "../../aws/caller/sim-aws-caller.js";
2
+ import type { SimSchedulerSchedule } from "../schedule/sim-scheduler-schedule.js";
3
+ /**
4
+ * The service principal Scheduler assumes an execution role as.
5
+ *
6
+ * This is the principal a role's trust policy has to admit, which is what makes
7
+ * `scheduler.amazonaws.com` the thing to put in an `AssumeRolePolicyDocument`
8
+ * for a schedule to work at all.
9
+ */
10
+ export declare const simSchedulerServicePrincipal = "scheduler.amazonaws.com";
11
+ /**
12
+ * One schedule on its way to its target.
13
+ *
14
+ * The due instant travels with it because a schedule invokes with whatever its
15
+ * target's `Input` says and nothing about when it fired, so the due time is
16
+ * only of interest to whatever records a failure.
17
+ */
18
+ export interface SimSchedulerDeliveryRequest {
19
+ readonly schedule: SimSchedulerSchedule;
20
+ readonly at: Date;
21
+ }
22
+ /**
23
+ * Somewhere a simulated schedule can invoke.
24
+ *
25
+ * One implementation per target service, because what each is asked and what
26
+ * each is handed differ: a function receives an invocation payload, and a queue
27
+ * and a topic receive a message body.
28
+ */
29
+ export interface SimSchedulerDeliveryTargets {
30
+ /**
31
+ * Invoke a schedule's target, refusing if its execution role may not.
32
+ */
33
+ deliver(request: SimSchedulerDeliveryRequest): Promise<void>;
34
+ }
35
+ /**
36
+ * What a target receives, as the JSON text a queue or a topic carries.
37
+ *
38
+ * A schedule has no event of its own, so a target with no `Input` is sent an
39
+ * empty JSON object rather than an envelope describing the schedule. AWS
40
+ * documents that behaviour for a function and says nothing about it for a queue
41
+ * or a topic, so the same answer is used for all three rather than inventing a
42
+ * different one for each.
43
+ */
44
+ export declare function simSchedulerDeliveryJson(request: SimSchedulerDeliveryRequest): string;
45
+ /**
46
+ * What a target receives, as the value a Lambda handler is handed.
47
+ */
48
+ export declare function simSchedulerDeliveryDocument(request: SimSchedulerDeliveryRequest): unknown;
49
+ /**
50
+ * A schedule's target, and the caller its execution role makes it as.
51
+ */
52
+ export interface SimSchedulerAssumedDelivery {
53
+ readonly request: SimSchedulerDeliveryRequest;
54
+ readonly caller: SimAwsCaller;
55
+ }
56
+ //# sourceMappingURL=sim-scheduler-delivery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-scheduler-delivery.d.ts","sourceRoot":"","sources":["../../../../src/service/scheduler/delivery/sim-scheduler-delivery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAElF;;;;;;GAMG;AACH,eAAO,MAAM,4BAA4B,4BAA4B,CAAC;AAEtE;;;;;;GAMG;AACH,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,QAAQ,EAAE,oBAAoB,CAAC;IACxC,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;CACnB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,2BAA2B;IAC1C;;OAEG;IACH,OAAO,CAAC,OAAO,EAAE,2BAA2B,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9D;AAED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,2BAA2B,GACnC,MAAM,CAER;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,2BAA2B,GACnC,OAAO,CAeT;AAED;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,OAAO,EAAE,2BAA2B,CAAC;IAC9C,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;CAC/B"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * The service principal Scheduler assumes an execution role as.
3
+ *
4
+ * This is the principal a role's trust policy has to admit, which is what makes
5
+ * `scheduler.amazonaws.com` the thing to put in an `AssumeRolePolicyDocument`
6
+ * for a schedule to work at all.
7
+ */
8
+ export const simSchedulerServicePrincipal = "scheduler.amazonaws.com";
9
+ /**
10
+ * What a target receives, as the JSON text a queue or a topic carries.
11
+ *
12
+ * A schedule has no event of its own, so a target with no `Input` is sent an
13
+ * empty JSON object rather than an envelope describing the schedule. AWS
14
+ * documents that behaviour for a function and says nothing about it for a queue
15
+ * or a topic, so the same answer is used for all three rather than inventing a
16
+ * different one for each.
17
+ */
18
+ export function simSchedulerDeliveryJson(request) {
19
+ return request.schedule.target.input ?? "{}";
20
+ }
21
+ /**
22
+ * What a target receives, as the value a Lambda handler is handed.
23
+ */
24
+ export function simSchedulerDeliveryDocument(request) {
25
+ const input = request.schedule.target.input;
26
+ if (input === undefined) {
27
+ return {};
28
+ }
29
+ // A target's Input is text rather than JSON as far as AWS is concerned, so
30
+ // one that does not parse is handed over as the string it is instead of
31
+ // failing the invocation.
32
+ try {
33
+ return JSON.parse(input);
34
+ }
35
+ catch {
36
+ return input;
37
+ }
38
+ }
39
+ //# sourceMappingURL=sim-scheduler-delivery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-scheduler-delivery.js","sourceRoot":"","sources":["../../../../src/service/scheduler/delivery/sim-scheduler-delivery.ts"],"names":[],"mappings":"AAGA;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,yBAAyB,CAAC;AA4BtE;;;;;;;;GAQG;AACH,MAAM,UAAU,wBAAwB,CACtC,OAAoC;IAEpC,OAAO,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC;AAC/C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,4BAA4B,CAC1C,OAAoC;IAEpC,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC;IAE5C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,2EAA2E;IAC3E,wEAAwE;IACxE,0BAA0B;IAC1B,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAY,CAAC;IACtC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
@@ -0,0 +1,34 @@
1
+ import type { SimAwsCaller } from "../../aws/caller/sim-aws-caller.js";
2
+ import type { SimAwsAccountId } from "../../aws/sim-aws-account.js";
3
+ import type { SimIam } from "../../iam/sim-iam.js";
4
+ /**
5
+ * Which IAM a role ARN belongs to, and what the role is called there.
6
+ */
7
+ export interface SimSchedulerExecutionRoleTarget {
8
+ readonly accountId: SimAwsAccountId;
9
+ readonly roleName: string;
10
+ readonly roleArn: string;
11
+ }
12
+ /**
13
+ * Read the Account and name out of a schedule's execution role ARN.
14
+ *
15
+ * The ARN was checked for being a role ARN when the schedule was written, so
16
+ * this is reading a known shape rather than validating an unknown one.
17
+ */
18
+ export declare function schedulerExecutionRoleTarget(roleArn: string): SimSchedulerExecutionRoleTarget;
19
+ /**
20
+ * Assume a schedule's execution role, and answer with the caller it makes.
21
+ *
22
+ * This is the whole of what makes Scheduler's execution model different from an
23
+ * EventBridge rule's. A rule reaches its target as the `events.amazonaws.com`
24
+ * service principal and the target's own resource policy decides; a schedule
25
+ * assumes a role, and the role's policies decide. So the two things checked
26
+ * here are the two things that go wrong in a real account: whether the role
27
+ * trusts Scheduler at all, and then, separately, whether it may do the thing.
28
+ *
29
+ * The caller carries both principals. The request is attributed to the session,
30
+ * as it is on AWS, while the policies that apply are the role's, which is
31
+ * exactly the split `SimResolvedCaller` exists for.
32
+ */
33
+ export declare function assumeSchedulerExecutionRole(target: SimSchedulerExecutionRoleTarget, iam: SimIam): Promise<SimAwsCaller>;
34
+ //# sourceMappingURL=sim-scheduler-execution-role.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-scheduler-execution-role.d.ts","sourceRoot":"","sources":["../../../../src/service/scheduler/delivery/sim-scheduler-execution-role.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAGpE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAUnD;;GAEG;AACH,MAAM,WAAW,+BAA+B;IAC9C,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC;IACpC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,MAAM,GACd,+BAA+B,CAIjC;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,4BAA4B,CAChD,MAAM,EAAE,+BAA+B,EACvC,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,YAAY,CAAC,CA+BvB"}
@@ -0,0 +1,75 @@
1
+ import { SimIamAccessDenied } from "../../iam/error/sim-iam.error.js";
2
+ import { IamRoleArnParser } from "../../iam/role/arn/sim-iam-role-arn-parser.js";
3
+ import { AssumeRoleTrustPolicyAuthorizer } from "../../sts/auth-z/assume-role-trust-policy-authorizer.js";
4
+ import { SimSchedulerDeliveryNotPermitted } from "../error/sim-scheduler-delivery.error.js";
5
+ import { simSchedulerServicePrincipal } from "./sim-scheduler-delivery.js";
6
+ /**
7
+ * The session name AWS gives a role Scheduler assumes for an invocation.
8
+ */
9
+ const sessionName = "EventBridgeScheduler";
10
+ /**
11
+ * Read the Account and name out of a schedule's execution role ARN.
12
+ *
13
+ * The ARN was checked for being a role ARN when the schedule was written, so
14
+ * this is reading a known shape rather than validating an unknown one.
15
+ */
16
+ export function schedulerExecutionRoleTarget(roleArn) {
17
+ const parts = new IamRoleArnParser().parse(roleArn);
18
+ return { accountId: parts.accountId, roleName: parts.roleName, roleArn };
19
+ }
20
+ /**
21
+ * Assume a schedule's execution role, and answer with the caller it makes.
22
+ *
23
+ * This is the whole of what makes Scheduler's execution model different from an
24
+ * EventBridge rule's. A rule reaches its target as the `events.amazonaws.com`
25
+ * service principal and the target's own resource policy decides; a schedule
26
+ * assumes a role, and the role's policies decide. So the two things checked
27
+ * here are the two things that go wrong in a real account: whether the role
28
+ * trusts Scheduler at all, and then, separately, whether it may do the thing.
29
+ *
30
+ * The caller carries both principals. The request is attributed to the session,
31
+ * as it is on AWS, while the policies that apply are the role's, which is
32
+ * exactly the split `SimResolvedCaller` exists for.
33
+ */
34
+ export async function assumeSchedulerExecutionRole(target, iam) {
35
+ const role = await roleOrRefuse(target, iam);
36
+ try {
37
+ new AssumeRoleTrustPolicyAuthorizer().authorize({
38
+ roleArn: target.roleArn,
39
+ role,
40
+ targetIam: iam,
41
+ caller: { kind: "service", service: simSchedulerServicePrincipal },
42
+ });
43
+ }
44
+ catch (error) {
45
+ if (error instanceof SimIamAccessDenied) {
46
+ throw new SimSchedulerDeliveryNotPermitted(`The trust policy of ${target.roleArn} does not allow ` +
47
+ `${simSchedulerServicePrincipal} to assume it, so the schedule ` +
48
+ `could not invoke its target. Add it to the role's ` +
49
+ `AssumeRolePolicyDocument.`);
50
+ }
51
+ throw error;
52
+ }
53
+ return {
54
+ kind: "resolved",
55
+ principal: {
56
+ kind: "arn",
57
+ arn: `arn:aws:sts::${target.accountId}:assumed-role/${target.roleName}/${sessionName}`,
58
+ },
59
+ identityPolicyPrincipal: { kind: "arn", arn: target.roleArn },
60
+ };
61
+ }
62
+ /**
63
+ * Load the execution role, refusing when it is not there.
64
+ */
65
+ async function roleOrRefuse(target, iam) {
66
+ try {
67
+ const found = await iam.getRole({ input: { RoleName: target.roleName } });
68
+ return found.Role;
69
+ }
70
+ catch {
71
+ throw new SimSchedulerDeliveryNotPermitted(`${target.roleArn} is not a simulated IAM role, so the schedule could ` +
72
+ `not assume it to invoke its target.`);
73
+ }
74
+ }
75
+ //# sourceMappingURL=sim-scheduler-execution-role.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-scheduler-execution-role.js","sourceRoot":"","sources":["../../../../src/service/scheduler/delivery/sim-scheduler-execution-role.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,+CAA+C,CAAC;AAEjF,OAAO,EAAE,+BAA+B,EAAE,MAAM,yDAAyD,CAAC;AAC1G,OAAO,EAAE,gCAAgC,EAAE,MAAM,0CAA0C,CAAC;AAC5F,OAAO,EAAE,4BAA4B,EAAE,MAAM,6BAA6B,CAAC;AAE3E;;GAEG;AACH,MAAM,WAAW,GAAG,sBAAsB,CAAC;AAW3C;;;;;GAKG;AACH,MAAM,UAAU,4BAA4B,CAC1C,OAAe;IAEf,MAAM,KAAK,GAAG,IAAI,gBAAgB,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAEpD,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,OAAO,EAAE,CAAC;AAC3E,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAChD,MAAuC,EACvC,GAAW;IAEX,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAE7C,IAAI,CAAC;QACH,IAAI,+BAA+B,EAAE,CAAC,SAAS,CAAC;YAC9C,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,IAAI;YACJ,SAAS,EAAE,GAAG;YACd,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,4BAA4B,EAAE;SACnE,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,kBAAkB,EAAE,CAAC;YACxC,MAAM,IAAI,gCAAgC,CACxC,uBAAuB,MAAM,CAAC,OAAO,kBAAkB;gBACrD,GAAG,4BAA4B,iCAAiC;gBAChE,oDAAoD;gBACpD,2BAA2B,CAC9B,CAAC;QACJ,CAAC;QAED,MAAM,KAAK,CAAC;IACd,CAAC;IAED,OAAO;QACL,IAAI,EAAE,UAAU;QAChB,SAAS,EAAE;YACT,IAAI,EAAE,KAAK;YACX,GAAG,EAAE,gBAAgB,MAAM,CAAC,SAAS,iBAAiB,MAAM,CAAC,QAAQ,IAAI,WAAW,EAAE;SACvF;QACD,uBAAuB,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,OAAO,EAAE;KAC9D,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,YAAY,CACzB,MAAuC,EACvC,GAAW;IAEX,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QAE1E,OAAO,KAAK,CAAC,IAAI,CAAC;IACpB,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,gCAAgC,CACxC,GAAG,MAAM,CAAC,OAAO,sDAAsD;YACrE,qCAAqC,CACxC,CAAC;IACJ,CAAC;AACH,CAAC"}
@@ -0,0 +1,17 @@
1
+ import type { SimSchedulerDeliveryRequest, SimSchedulerDeliveryTargets } from "./sim-scheduler-delivery.js";
2
+ /**
3
+ * The targets of a simulated Scheduler built on its own, which are none.
4
+ *
5
+ * A function, queue or topic in another simulated service is only reachable
6
+ * through SimAws, so a `SimScheduler` constructed directly has nowhere to
7
+ * invoke. Every invocation is recorded as a failure saying so, rather than
8
+ * quietly succeeding, because a schedule that appears to have invoked a target
9
+ * that was never reachable is the worst of the possible answers.
10
+ */
11
+ export declare class SimSchedulerNoDeliveryTargets implements SimSchedulerDeliveryTargets {
12
+ /**
13
+ * Refuse the invocation, saying why there was nowhere to make it.
14
+ */
15
+ deliver(request: SimSchedulerDeliveryRequest): Promise<void>;
16
+ }
17
+ //# sourceMappingURL=sim-scheduler-no-delivery-targets.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-scheduler-no-delivery-targets.d.ts","sourceRoot":"","sources":["../../../../src/service/scheduler/delivery/sim-scheduler-no-delivery-targets.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,2BAA2B,EAC3B,2BAA2B,EAC5B,MAAM,6BAA6B,CAAC;AAErC;;;;;;;;GAQG;AACH,qBAAa,6BAA8B,YAAW,2BAA2B;IAC/E;;OAEG;IACH,OAAO,CAAC,OAAO,EAAE,2BAA2B,GAAG,OAAO,CAAC,IAAI,CAAC,CAQ3D;CACF"}
@@ -0,0 +1,21 @@
1
+ import { SimSchedulerTargetNotFound } from "../error/sim-scheduler-delivery.error.js";
2
+ /**
3
+ * The targets of a simulated Scheduler built on its own, which are none.
4
+ *
5
+ * A function, queue or topic in another simulated service is only reachable
6
+ * through SimAws, so a `SimScheduler` constructed directly has nowhere to
7
+ * invoke. Every invocation is recorded as a failure saying so, rather than
8
+ * quietly succeeding, because a schedule that appears to have invoked a target
9
+ * that was never reachable is the worst of the possible answers.
10
+ */
11
+ export class SimSchedulerNoDeliveryTargets {
12
+ /**
13
+ * Refuse the invocation, saying why there was nowhere to make it.
14
+ */
15
+ deliver(request) {
16
+ return Promise.reject(new SimSchedulerTargetNotFound(`This simulated Scheduler has no targets to invoke, so ` +
17
+ `${request.schedule.target.arn.value} was not reached. Reach ` +
18
+ `Scheduler through SimAws for a schedule that invokes.`));
19
+ }
20
+ }
21
+ //# sourceMappingURL=sim-scheduler-no-delivery-targets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-scheduler-no-delivery-targets.js","sourceRoot":"","sources":["../../../../src/service/scheduler/delivery/sim-scheduler-no-delivery-targets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,0CAA0C,CAAC;AAMtF;;;;;;;;GAQG;AACH,MAAM,OAAO,6BAA6B;IACxC;;OAEG;IACH,OAAO,CAAC,OAAoC;QAC1C,OAAO,OAAO,CAAC,MAAM,CACnB,IAAI,0BAA0B,CAC5B,wDAAwD;YACtD,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,0BAA0B;YAC9D,uDAAuD,CAC1D,CACF,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,28 @@
1
+ import type { SimSchedulerDeliveryRequest, SimSchedulerDeliveryTargets } from "./sim-scheduler-delivery.js";
2
+ import { type SimSchedulerDeliveryFailure } from "./sim-scheduler-delivery-failures.js";
3
+ interface SimSchedulerTargetDeliveryProperties {
4
+ readonly endpoints: SimSchedulerDeliveryTargets;
5
+ }
6
+ /**
7
+ * Makes one invocation and keeps whatever went wrong.
8
+ *
9
+ * A failure is recorded rather than thrown, because these run as background
10
+ * tasks and one left rejected would fail an unrelated
11
+ * `backgroundTasksComplete()`, or an unrelated `advanceBy(...)`. Real Scheduler
12
+ * has nowhere to report a failed invocation to either.
13
+ */
14
+ export declare class SimSchedulerTargetDelivery {
15
+ private readonly endpoints;
16
+ private readonly failures;
17
+ constructor(properties: SimSchedulerTargetDeliveryProperties);
18
+ /**
19
+ * Every invocation that could not be made.
20
+ */
21
+ get deliveryFailures(): readonly SimSchedulerDeliveryFailure[];
22
+ /**
23
+ * Invoke one schedule's target.
24
+ */
25
+ deliver(request: SimSchedulerDeliveryRequest): Promise<void>;
26
+ }
27
+ export {};
28
+ //# sourceMappingURL=sim-scheduler-target-delivery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-scheduler-target-delivery.d.ts","sourceRoot":"","sources":["../../../../src/service/scheduler/delivery/sim-scheduler-target-delivery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,2BAA2B,EAC3B,2BAA2B,EAC5B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,KAAK,2BAA2B,EAEjC,MAAM,sCAAsC,CAAC;AAE9C,UAAU,oCAAoC;IAC5C,QAAQ,CAAC,SAAS,EAAE,2BAA2B,CAAC;CACjD;AAED;;;;;;;GAOG;AACH,qBAAa,0BAA0B;IACrC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA8B;IACxD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAsC;IAE/D,YAAY,UAAU,EAAE,oCAAoC,EAE3D;IAED;;OAEG;IACH,IAAI,gBAAgB,IAAI,SAAS,2BAA2B,EAAE,CAE7D;IAED;;OAEG;IACG,OAAO,CAAC,OAAO,EAAE,2BAA2B,GAAG,OAAO,CAAC,IAAI,CAAC,CAejE;CACF"}
@@ -0,0 +1,42 @@
1
+ import { SimSchedulerDeliveryFailures, } from "./sim-scheduler-delivery-failures.js";
2
+ /**
3
+ * Makes one invocation and keeps whatever went wrong.
4
+ *
5
+ * A failure is recorded rather than thrown, because these run as background
6
+ * tasks and one left rejected would fail an unrelated
7
+ * `backgroundTasksComplete()`, or an unrelated `advanceBy(...)`. Real Scheduler
8
+ * has nowhere to report a failed invocation to either.
9
+ */
10
+ export class SimSchedulerTargetDelivery {
11
+ endpoints;
12
+ failures = new SimSchedulerDeliveryFailures();
13
+ constructor(properties) {
14
+ this.endpoints = properties.endpoints;
15
+ }
16
+ /**
17
+ * Every invocation that could not be made.
18
+ */
19
+ get deliveryFailures() {
20
+ return this.failures.all;
21
+ }
22
+ /**
23
+ * Invoke one schedule's target.
24
+ */
25
+ async deliver(request) {
26
+ try {
27
+ await this.endpoints.deliver(request);
28
+ }
29
+ catch (error) {
30
+ const schedule = request.schedule;
31
+ this.failures.record({
32
+ scheduleName: schedule.name.value,
33
+ scheduleArn: schedule.arn,
34
+ targetArn: schedule.target.arn.value,
35
+ roleArn: schedule.target.roleArn,
36
+ at: request.at,
37
+ error,
38
+ });
39
+ }
40
+ }
41
+ }
42
+ //# sourceMappingURL=sim-scheduler-target-delivery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-scheduler-target-delivery.js","sourceRoot":"","sources":["../../../../src/service/scheduler/delivery/sim-scheduler-target-delivery.ts"],"names":[],"mappings":"AAIA,OAAO,EAEL,4BAA4B,GAC7B,MAAM,sCAAsC,CAAC;AAM9C;;;;;;;GAOG;AACH,MAAM,OAAO,0BAA0B;IACpB,SAAS,CAA8B;IACvC,QAAQ,GAAG,IAAI,4BAA4B,EAAE,CAAC;IAE/D,YAAY,UAAgD;QAC1D,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;IACxC,CAAC;IAED;;OAEG;IACH,IAAI,gBAAgB;QAClB,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO,CAAC,OAAoC;QAChD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACxC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;YAElC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;gBACnB,YAAY,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK;gBACjC,WAAW,EAAE,QAAQ,CAAC,GAAG;gBACzB,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK;gBACpC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO;gBAChC,EAAE,EAAE,OAAO,CAAC,EAAE;gBACd,KAAK;aACN,CAAC,CAAC;QACL,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,23 @@
1
+ import { SimSchedulerError } from "./sim-scheduler.error.js";
2
+ /**
3
+ * A schedule's target is not a simulated resource.
4
+ *
5
+ * Real Scheduler has nowhere to report this to either: the schedule was
6
+ * created against an ARN, and nothing checks that the ARN names anything until
7
+ * the moment of invocation.
8
+ */
9
+ export declare class SimSchedulerTargetNotFound extends SimSchedulerError {
10
+ readonly name = "TargetNotFound";
11
+ }
12
+ /**
13
+ * A schedule's execution role would not have this invocation.
14
+ *
15
+ * Either the role does not trust Scheduler to assume it, or its policies do not
16
+ * allow the action on the target. The two are told apart by the message,
17
+ * because they are fixed in different places: one is the role's trust policy
18
+ * and the other is the policy attached to it.
19
+ */
20
+ export declare class SimSchedulerDeliveryNotPermitted extends SimSchedulerError {
21
+ readonly name = "DeliveryNotPermitted";
22
+ }
23
+ //# sourceMappingURL=sim-scheduler-delivery.error.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-scheduler-delivery.error.d.ts","sourceRoot":"","sources":["../../../../src/service/scheduler/error/sim-scheduler-delivery.error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D;;;;;;GAMG;AACH,qBAAa,0BAA2B,SAAQ,iBAAiB;IAC/D,SAAyB,IAAI,oBAAoB;CAClD;AAED;;;;;;;GAOG;AACH,qBAAa,gCAAiC,SAAQ,iBAAiB;IACrE,SAAyB,IAAI,0BAA0B;CACxD"}
@@ -0,0 +1,23 @@
1
+ import { SimSchedulerError } from "./sim-scheduler.error.js";
2
+ /**
3
+ * A schedule's target is not a simulated resource.
4
+ *
5
+ * Real Scheduler has nowhere to report this to either: the schedule was
6
+ * created against an ARN, and nothing checks that the ARN names anything until
7
+ * the moment of invocation.
8
+ */
9
+ export class SimSchedulerTargetNotFound extends SimSchedulerError {
10
+ name = "TargetNotFound";
11
+ }
12
+ /**
13
+ * A schedule's execution role would not have this invocation.
14
+ *
15
+ * Either the role does not trust Scheduler to assume it, or its policies do not
16
+ * allow the action on the target. The two are told apart by the message,
17
+ * because they are fixed in different places: one is the role's trust policy
18
+ * and the other is the policy attached to it.
19
+ */
20
+ export class SimSchedulerDeliveryNotPermitted extends SimSchedulerError {
21
+ name = "DeliveryNotPermitted";
22
+ }
23
+ //# sourceMappingURL=sim-scheduler-delivery.error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-scheduler-delivery.error.js","sourceRoot":"","sources":["../../../../src/service/scheduler/error/sim-scheduler-delivery.error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D;;;;;;GAMG;AACH,MAAM,OAAO,0BAA2B,SAAQ,iBAAiB;IACtC,IAAI,GAAG,gBAAgB,CAAC;CAClD;AAED;;;;;;;GAOG;AACH,MAAM,OAAO,gCAAiC,SAAQ,iBAAiB;IAC5C,IAAI,GAAG,sBAAsB,CAAC;CACxD"}