@kensio/yulin 0.40.0 → 0.41.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 (129) hide show
  1. package/README.md +1 -0
  2. package/dist/sdk/router/resolve-sim-sdk-command-router.d.ts.map +1 -1
  3. package/dist/sdk/router/resolve-sim-sdk-command-router.js +3 -0
  4. package/dist/sdk/router/resolve-sim-sdk-command-router.js.map +1 -1
  5. package/dist/service/aws/factory/sim-aws-service-factory.d.ts +8 -0
  6. package/dist/service/aws/factory/sim-aws-service-factory.d.ts.map +1 -1
  7. package/dist/service/aws/factory/sim-aws-service-factory.js +14 -0
  8. package/dist/service/aws/factory/sim-aws-service-factory.js.map +1 -1
  9. package/dist/service/aws/sim-aws-account-region-scope.d.ts +5 -0
  10. package/dist/service/aws/sim-aws-account-region-scope.d.ts.map +1 -1
  11. package/dist/service/aws/sim-aws-account-region-scope.js +6 -0
  12. package/dist/service/aws/sim-aws-account-region-scope.js.map +1 -1
  13. package/dist/service/aws/sim-aws.d.ts +5 -0
  14. package/dist/service/aws/sim-aws.d.ts.map +1 -1
  15. package/dist/service/aws/sim-aws.js +6 -0
  16. package/dist/service/aws/sim-aws.js.map +1 -1
  17. package/dist/service/ssm/command/authorize/sim-ssm-authorizer.d.ts +44 -0
  18. package/dist/service/ssm/command/authorize/sim-ssm-authorizer.d.ts.map +1 -0
  19. package/dist/service/ssm/command/authorize/sim-ssm-authorizer.js +65 -0
  20. package/dist/service/ssm/command/authorize/sim-ssm-authorizer.js.map +1 -0
  21. package/dist/service/ssm/command/parameter/parameter.command.d.ts +98 -0
  22. package/dist/service/ssm/command/parameter/parameter.command.d.ts.map +1 -0
  23. package/dist/service/ssm/command/parameter/parameter.command.js +2 -0
  24. package/dist/service/ssm/command/parameter/parameter.command.js.map +1 -0
  25. package/dist/service/ssm/command/parameter/query.command.d.ts +85 -0
  26. package/dist/service/ssm/command/parameter/query.command.d.ts.map +1 -0
  27. package/dist/service/ssm/command/parameter/query.command.js +2 -0
  28. package/dist/service/ssm/command/parameter/query.command.js.map +1 -0
  29. package/dist/service/ssm/command/parameter/sim-ssm-delete-parameter-commands.d.ts +38 -0
  30. package/dist/service/ssm/command/parameter/sim-ssm-delete-parameter-commands.d.ts.map +1 -0
  31. package/dist/service/ssm/command/parameter/sim-ssm-delete-parameter-commands.js +62 -0
  32. package/dist/service/ssm/command/parameter/sim-ssm-delete-parameter-commands.js.map +1 -0
  33. package/dist/service/ssm/command/parameter/sim-ssm-describe-parameters.d.ts +43 -0
  34. package/dist/service/ssm/command/parameter/sim-ssm-describe-parameters.d.ts.map +1 -0
  35. package/dist/service/ssm/command/parameter/sim-ssm-describe-parameters.js +63 -0
  36. package/dist/service/ssm/command/parameter/sim-ssm-describe-parameters.js.map +1 -0
  37. package/dist/service/ssm/command/parameter/sim-ssm-get-parameter-commands.d.ts +37 -0
  38. package/dist/service/ssm/command/parameter/sim-ssm-get-parameter-commands.d.ts.map +1 -0
  39. package/dist/service/ssm/command/parameter/sim-ssm-get-parameter-commands.js +59 -0
  40. package/dist/service/ssm/command/parameter/sim-ssm-get-parameter-commands.js.map +1 -0
  41. package/dist/service/ssm/command/parameter/sim-ssm-get-parameters-by-path.d.ts +34 -0
  42. package/dist/service/ssm/command/parameter/sim-ssm-get-parameters-by-path.d.ts.map +1 -0
  43. package/dist/service/ssm/command/parameter/sim-ssm-get-parameters-by-path.js +50 -0
  44. package/dist/service/ssm/command/parameter/sim-ssm-get-parameters-by-path.js.map +1 -0
  45. package/dist/service/ssm/command/parameter/sim-ssm-parameter-names.d.ts +5 -0
  46. package/dist/service/ssm/command/parameter/sim-ssm-parameter-names.d.ts.map +1 -0
  47. package/dist/service/ssm/command/parameter/sim-ssm-parameter-names.js +22 -0
  48. package/dist/service/ssm/command/parameter/sim-ssm-parameter-names.js.map +1 -0
  49. package/dist/service/ssm/command/parameter/sim-ssm-parameter-page.d.ts +35 -0
  50. package/dist/service/ssm/command/parameter/sim-ssm-parameter-page.d.ts.map +1 -0
  51. package/dist/service/ssm/command/parameter/sim-ssm-parameter-page.js +51 -0
  52. package/dist/service/ssm/command/parameter/sim-ssm-parameter-page.js.map +1 -0
  53. package/dist/service/ssm/command/parameter/sim-ssm-parameter-reader.d.ts +49 -0
  54. package/dist/service/ssm/command/parameter/sim-ssm-parameter-reader.d.ts.map +1 -0
  55. package/dist/service/ssm/command/parameter/sim-ssm-parameter-reader.js +55 -0
  56. package/dist/service/ssm/command/parameter/sim-ssm-parameter-reader.js.map +1 -0
  57. package/dist/service/ssm/command/parameter/sim-ssm-parameter-view.d.ts +33 -0
  58. package/dist/service/ssm/command/parameter/sim-ssm-parameter-view.d.ts.map +1 -0
  59. package/dist/service/ssm/command/parameter/sim-ssm-parameter-view.js +55 -0
  60. package/dist/service/ssm/command/parameter/sim-ssm-parameter-view.js.map +1 -0
  61. package/dist/service/ssm/command/parameter/sim-ssm-put-parameter.d.ts +34 -0
  62. package/dist/service/ssm/command/parameter/sim-ssm-put-parameter.d.ts.map +1 -0
  63. package/dist/service/ssm/command/parameter/sim-ssm-put-parameter.js +49 -0
  64. package/dist/service/ssm/command/parameter/sim-ssm-put-parameter.js.map +1 -0
  65. package/dist/service/ssm/command/parameter/sim-ssm-unsimulated-put-options.d.ts +19 -0
  66. package/dist/service/ssm/command/parameter/sim-ssm-unsimulated-put-options.d.ts.map +1 -0
  67. package/dist/service/ssm/command/parameter/sim-ssm-unsimulated-put-options.js +48 -0
  68. package/dist/service/ssm/command/parameter/sim-ssm-unsimulated-put-options.js.map +1 -0
  69. package/dist/service/ssm/command/sim-ssm-command.types.d.ts +6 -0
  70. package/dist/service/ssm/command/sim-ssm-command.types.d.ts.map +1 -0
  71. package/dist/service/ssm/command/sim-ssm-command.types.js +2 -0
  72. package/dist/service/ssm/command/sim-ssm-command.types.js.map +1 -0
  73. package/dist/service/ssm/error/sim-ssm.error.d.ts +88 -0
  74. package/dist/service/ssm/error/sim-ssm.error.d.ts.map +1 -0
  75. package/dist/service/ssm/error/sim-ssm.error.js +101 -0
  76. package/dist/service/ssm/error/sim-ssm.error.js.map +1 -0
  77. package/dist/service/ssm/index.d.ts +10 -0
  78. package/dist/service/ssm/index.d.ts.map +1 -0
  79. package/dist/service/ssm/index.js +10 -0
  80. package/dist/service/ssm/index.js.map +1 -0
  81. package/dist/service/ssm/parameter/sim-ssm-parameter-arn.d.ts +33 -0
  82. package/dist/service/ssm/parameter/sim-ssm-parameter-arn.d.ts.map +1 -0
  83. package/dist/service/ssm/parameter/sim-ssm-parameter-arn.js +34 -0
  84. package/dist/service/ssm/parameter/sim-ssm-parameter-arn.js.map +1 -0
  85. package/dist/service/ssm/parameter/sim-ssm-parameter-name.d.ts +48 -0
  86. package/dist/service/ssm/parameter/sim-ssm-parameter-name.d.ts.map +1 -0
  87. package/dist/service/ssm/parameter/sim-ssm-parameter-name.js +117 -0
  88. package/dist/service/ssm/parameter/sim-ssm-parameter-name.js.map +1 -0
  89. package/dist/service/ssm/parameter/sim-ssm-parameter-path.d.ts +36 -0
  90. package/dist/service/ssm/parameter/sim-ssm-parameter-path.d.ts.map +1 -0
  91. package/dist/service/ssm/parameter/sim-ssm-parameter-path.js +56 -0
  92. package/dist/service/ssm/parameter/sim-ssm-parameter-path.js.map +1 -0
  93. package/dist/service/ssm/parameter/sim-ssm-parameter-selector.d.ts +34 -0
  94. package/dist/service/ssm/parameter/sim-ssm-parameter-selector.d.ts.map +1 -0
  95. package/dist/service/ssm/parameter/sim-ssm-parameter-selector.js +63 -0
  96. package/dist/service/ssm/parameter/sim-ssm-parameter-selector.js.map +1 -0
  97. package/dist/service/ssm/parameter/sim-ssm-parameter-store.d.ts +46 -0
  98. package/dist/service/ssm/parameter/sim-ssm-parameter-store.d.ts.map +1 -0
  99. package/dist/service/ssm/parameter/sim-ssm-parameter-store.js +66 -0
  100. package/dist/service/ssm/parameter/sim-ssm-parameter-store.js.map +1 -0
  101. package/dist/service/ssm/parameter/sim-ssm-parameter-type.d.ts +25 -0
  102. package/dist/service/ssm/parameter/sim-ssm-parameter-type.d.ts.map +1 -0
  103. package/dist/service/ssm/parameter/sim-ssm-parameter-type.js +42 -0
  104. package/dist/service/ssm/parameter/sim-ssm-parameter-type.js.map +1 -0
  105. package/dist/service/ssm/parameter/sim-ssm-parameter-value.d.ts +14 -0
  106. package/dist/service/ssm/parameter/sim-ssm-parameter-value.d.ts.map +1 -0
  107. package/dist/service/ssm/parameter/sim-ssm-parameter-value.js +36 -0
  108. package/dist/service/ssm/parameter/sim-ssm-parameter-value.js.map +1 -0
  109. package/dist/service/ssm/parameter/sim-ssm-parameter-version.d.ts +40 -0
  110. package/dist/service/ssm/parameter/sim-ssm-parameter-version.d.ts.map +1 -0
  111. package/dist/service/ssm/parameter/sim-ssm-parameter-version.js +32 -0
  112. package/dist/service/ssm/parameter/sim-ssm-parameter-version.js.map +1 -0
  113. package/dist/service/ssm/parameter/sim-ssm-parameter-writer.d.ts +52 -0
  114. package/dist/service/ssm/parameter/sim-ssm-parameter-writer.d.ts.map +1 -0
  115. package/dist/service/ssm/parameter/sim-ssm-parameter-writer.js +79 -0
  116. package/dist/service/ssm/parameter/sim-ssm-parameter-writer.js.map +1 -0
  117. package/dist/service/ssm/parameter/sim-ssm-parameter.d.ts +41 -0
  118. package/dist/service/ssm/parameter/sim-ssm-parameter.d.ts.map +1 -0
  119. package/dist/service/ssm/parameter/sim-ssm-parameter.js +57 -0
  120. package/dist/service/ssm/parameter/sim-ssm-parameter.js.map +1 -0
  121. package/dist/service/ssm/sdk/sim-ssm-sdk-command-router.d.ts +18 -0
  122. package/dist/service/ssm/sdk/sim-ssm-sdk-command-router.d.ts.map +1 -0
  123. package/dist/service/ssm/sdk/sim-ssm-sdk-command-router.js +52 -0
  124. package/dist/service/ssm/sdk/sim-ssm-sdk-command-router.js.map +1 -0
  125. package/dist/service/ssm/sim-ssm.d.ts +77 -0
  126. package/dist/service/ssm/sim-ssm.d.ts.map +1 -0
  127. package/dist/service/ssm/sim-ssm.js +129 -0
  128. package/dist/service/ssm/sim-ssm.js.map +1 -0
  129. package/package.json +6 -1
@@ -0,0 +1,55 @@
1
+ import { SimSsmParameterNotFound, SimSsmParameterVersionNotFound, } from "../../error/sim-ssm.error.js";
2
+ import { SimSsmParameterName } from "../../parameter/sim-ssm-parameter-name.js";
3
+ import { SimSsmParameterSelector } from "../../parameter/sim-ssm-parameter-selector.js";
4
+ import { SimSsmParameterView } from "./sim-ssm-parameter-view.js";
5
+ /**
6
+ * Resolves one requested parameter name to the value a read reports.
7
+ *
8
+ * GetParameter and GetParameters differ only in what they do when a name
9
+ * resolves to nothing, so everything before that point belongs here.
10
+ */
11
+ export class SimSsmParameterReader {
12
+ parameters;
13
+ authorizer;
14
+ view = new SimSsmParameterView();
15
+ constructor(properties) {
16
+ this.parameters = properties.parameters;
17
+ this.authorizer = properties.authorizer;
18
+ }
19
+ /**
20
+ * Read one requested name, authorizing it before resolving it.
21
+ *
22
+ * Authorization comes first because real IAM evaluates a request before the
23
+ * service sees it: a caller with no permission is refused whether or not the
24
+ * parameter exists, rather than being told it is missing.
25
+ */
26
+ read(action, requested, caller) {
27
+ const selector = new SimSsmParameterSelector(requested);
28
+ this.authorizer.authorizeParameterResource(action, SimSsmParameterName.resourceFor(selector.name), caller);
29
+ const parameter = this.parameters.require(selector.name);
30
+ return {
31
+ name: parameter.name.value,
32
+ output: this.view.value(parameter, selector.versionOf(parameter), selector.selector),
33
+ };
34
+ }
35
+ /**
36
+ * Read one name of a batch, reporting a name that resolves to nothing as
37
+ * invalid rather than failing the whole request.
38
+ *
39
+ * A refused authorization still throws, because one name the caller may not
40
+ * read fails the whole batch on real AWS.
41
+ */
42
+ readOrInvalid(action, requested, caller) {
43
+ try {
44
+ return this.read(action, requested, caller);
45
+ }
46
+ catch (error) {
47
+ if (error instanceof SimSsmParameterNotFound ||
48
+ error instanceof SimSsmParameterVersionNotFound) {
49
+ return undefined;
50
+ }
51
+ throw error;
52
+ }
53
+ }
54
+ }
55
+ //# sourceMappingURL=sim-ssm-parameter-reader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-ssm-parameter-reader.js","sourceRoot":"","sources":["../../../../../src/service/ssm/command/parameter/sim-ssm-parameter-reader.ts"],"names":[],"mappings":"AACA,OAAO,EACL,uBAAuB,EACvB,8BAA8B,GAC/B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAChF,OAAO,EAAE,uBAAuB,EAAE,MAAM,+CAA+C,CAAC;AAIxF,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAmBlE;;;;;GAKG;AACH,MAAM,OAAO,qBAAqB;IACf,UAAU,CAAuB;IACjC,UAAU,CAAmB;IAC7B,IAAI,GAAG,IAAI,mBAAmB,EAAE,CAAC;IAElD,YAAY,UAA2C;QACrD,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;QACxC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;IAC1C,CAAC;IAED;;;;;;OAMG;IACH,IAAI,CACF,MAAc,EACd,SAAiB,EACjB,MAAgC;QAEhC,MAAM,QAAQ,GAAG,IAAI,uBAAuB,CAAC,SAAS,CAAC,CAAC;QAExD,IAAI,CAAC,UAAU,CAAC,0BAA0B,CACxC,MAAM,EACN,mBAAmB,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,EAC9C,MAAM,CACP,CAAC;QAEF,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEzD,OAAO;YACL,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,KAAK;YAC1B,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CACrB,SAAS,EACT,QAAQ,CAAC,SAAS,CAAC,SAAS,CAAC,EAC7B,QAAQ,CAAC,QAAQ,CAClB;SACF,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,aAAa,CACX,MAAc,EACd,SAAiB,EACjB,MAAgC;QAEhC,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;QAC9C,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,IACE,KAAK,YAAY,uBAAuB;gBACxC,KAAK,YAAY,8BAA8B,EAC/C,CAAC;gBACD,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,33 @@
1
+ import type { SimSsmParameter } from "../../parameter/sim-ssm-parameter.js";
2
+ import type { SimSsmParameterVersion } from "../../parameter/sim-ssm-parameter-version.js";
3
+ import type { SimSsmParameterMetadata, SimSsmParameterOutput } from "./parameter.command.js";
4
+ /**
5
+ * The tier every simulated parameter is in.
6
+ *
7
+ * The advanced tier is not simulated, so nothing here can be in it.
8
+ */
9
+ export declare const standardTier = "Standard";
10
+ /**
11
+ * Converts a stored parameter into the shapes Parameter Store reports it in.
12
+ *
13
+ * There are two, and the difference is the point: the value-carrying shape
14
+ * that GetParameter returns, and the metadata-only shape that
15
+ * DescribeParameters returns. Building both here keeps them agreeing about
16
+ * everything they share.
17
+ */
18
+ export declare class SimSsmParameterView {
19
+ /**
20
+ * The parameter shape that carries a value.
21
+ *
22
+ * `Selector` is only reported when the request asked for a version or a
23
+ * label, as real Parameter Store only reports it then.
24
+ */
25
+ value(parameter: SimSsmParameter, version: SimSsmParameterVersion, selector?: string): SimSsmParameterOutput;
26
+ /**
27
+ * The parameter shape that carries no value.
28
+ *
29
+ * `Policies` is always empty because parameter policies are not simulated.
30
+ */
31
+ metadata(parameter: SimSsmParameter): SimSsmParameterMetadata;
32
+ }
33
+ //# sourceMappingURL=sim-ssm-parameter-view.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-ssm-parameter-view.d.ts","sourceRoot":"","sources":["../../../../../src/service/ssm/command/parameter/sim-ssm-parameter-view.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AAC3F,OAAO,KAAK,EACV,uBAAuB,EACvB,qBAAqB,EACtB,MAAM,wBAAwB,CAAC;AAEhC;;;;GAIG;AACH,eAAO,MAAM,YAAY,aAAa,CAAC;AAEvC;;;;;;;GAOG;AACH,qBAAa,mBAAmB;IAC9B;;;;;OAKG;IACH,KAAK,CACH,SAAS,EAAE,eAAe,EAC1B,OAAO,EAAE,sBAAsB,EAC/B,QAAQ,CAAC,EAAE,MAAM,GAChB,qBAAqB,CAWvB;IAED;;;;OAIG;IACH,QAAQ,CAAC,SAAS,EAAE,eAAe,GAAG,uBAAuB,CAe5D;CACF"}
@@ -0,0 +1,55 @@
1
+ /**
2
+ * The tier every simulated parameter is in.
3
+ *
4
+ * The advanced tier is not simulated, so nothing here can be in it.
5
+ */
6
+ export const standardTier = "Standard";
7
+ /**
8
+ * Converts a stored parameter into the shapes Parameter Store reports it in.
9
+ *
10
+ * There are two, and the difference is the point: the value-carrying shape
11
+ * that GetParameter returns, and the metadata-only shape that
12
+ * DescribeParameters returns. Building both here keeps them agreeing about
13
+ * everything they share.
14
+ */
15
+ export class SimSsmParameterView {
16
+ /**
17
+ * The parameter shape that carries a value.
18
+ *
19
+ * `Selector` is only reported when the request asked for a version or a
20
+ * label, as real Parameter Store only reports it then.
21
+ */
22
+ value(parameter, version, selector) {
23
+ return {
24
+ ARN: parameter.arn.value,
25
+ Name: parameter.name.value,
26
+ Type: parameter.type.value,
27
+ Value: version.value.value,
28
+ Version: version.version,
29
+ DataType: version.dataType,
30
+ LastModifiedDate: version.lastModifiedDate,
31
+ Selector: selector,
32
+ };
33
+ }
34
+ /**
35
+ * The parameter shape that carries no value.
36
+ *
37
+ * `Policies` is always empty because parameter policies are not simulated.
38
+ */
39
+ metadata(parameter) {
40
+ const version = parameter.currentVersion;
41
+ return {
42
+ ARN: parameter.arn.value,
43
+ Name: parameter.name.value,
44
+ Type: parameter.type.value,
45
+ Version: version.version,
46
+ DataType: version.dataType,
47
+ Description: version.description,
48
+ LastModifiedDate: version.lastModifiedDate,
49
+ LastModifiedUser: version.lastModifiedUser,
50
+ Policies: [],
51
+ Tier: standardTier,
52
+ };
53
+ }
54
+ }
55
+ //# sourceMappingURL=sim-ssm-parameter-view.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-ssm-parameter-view.js","sourceRoot":"","sources":["../../../../../src/service/ssm/command/parameter/sim-ssm-parameter-view.ts"],"names":[],"mappings":"AAOA;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,UAAU,CAAC;AAEvC;;;;;;;GAOG;AACH,MAAM,OAAO,mBAAmB;IAC9B;;;;;OAKG;IACH,KAAK,CACH,SAA0B,EAC1B,OAA+B,EAC/B,QAAiB;QAEjB,OAAO;YACL,GAAG,EAAE,SAAS,CAAC,GAAG,CAAC,KAAK;YACxB,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,KAAK;YAC1B,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,KAAK;YAC1B,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK;YAC1B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;YAC1C,QAAQ,EAAE,QAAQ;SACnB,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,QAAQ,CAAC,SAA0B;QACjC,MAAM,OAAO,GAAG,SAAS,CAAC,cAAc,CAAC;QAEzC,OAAO;YACL,GAAG,EAAE,SAAS,CAAC,GAAG,CAAC,KAAK;YACxB,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,KAAK;YAC1B,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,KAAK;YAC1B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;YAC1C,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;YAC1C,QAAQ,EAAE,EAAE;YACZ,IAAI,EAAE,YAAY;SACnB,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,34 @@
1
+ import type { SimAwsCaller } from "../../../aws/caller/sim-aws-caller.js";
2
+ import type { SimAwsAccountRegionScope } from "../../../aws/sim-aws-account-region-scope.js";
3
+ import type { SimSsmParameterWriter } from "../../parameter/sim-ssm-parameter-writer.js";
4
+ import type { SimSsmAuthorizer } from "../authorize/sim-ssm-authorizer.js";
5
+ import type { SimPutParameterCommand, SimPutParameterCommandOutput } from "./parameter.command.js";
6
+ interface SimSsmPutParameterProperties {
7
+ readonly writer: SimSsmParameterWriter;
8
+ readonly authorizer: SimSsmAuthorizer;
9
+ readonly accountRegionScope: SimAwsAccountRegionScope;
10
+ }
11
+ interface SimSsmPutParameterOptions {
12
+ readonly caller?: SimAwsCaller;
13
+ }
14
+ /**
15
+ * The PutParameter command.
16
+ *
17
+ * The name is validated before anything else happens, because the name is
18
+ * what the request authorizes against: a policy allowing the caller to write
19
+ * `/myapp/prod/*` has to be evaluated against the ARN the parameter is about
20
+ * to have, whether or not it exists yet.
21
+ */
22
+ export declare class SimSsmPutParameter {
23
+ private readonly writer;
24
+ private readonly authorizer;
25
+ private readonly accountRegionScope;
26
+ private readonly unsimulatedOptions;
27
+ constructor(properties: SimSsmPutParameterProperties);
28
+ /**
29
+ * Create or update a parameter.
30
+ */
31
+ handle(command: SimPutParameterCommand, options?: SimSsmPutParameterOptions): SimPutParameterCommandOutput;
32
+ }
33
+ export {};
34
+ //# sourceMappingURL=sim-ssm-put-parameter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-ssm-put-parameter.d.ts","sourceRoot":"","sources":["../../../../../src/service/ssm/command/parameter/sim-ssm-put-parameter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,8CAA8C,CAAC;AAE7F,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;AACzF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,KAAK,EACV,sBAAsB,EACtB,4BAA4B,EAC7B,MAAM,wBAAwB,CAAC;AAIhC,UAAU,4BAA4B;IACpC,QAAQ,CAAC,MAAM,EAAE,qBAAqB,CAAC;IACvC,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAC;IACtC,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,CAAC;CACvD;AAED,UAAU,yBAAyB;IACjC,QAAQ,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC;CAChC;AAED;;;;;;;GAOG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAwB;IAC/C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAmB;IAC9C,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA2B;IAC9D,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAqC;IAExE,YAAY,UAAU,EAAE,4BAA4B,EAInD;IAED;;OAEG;IACH,MAAM,CACJ,OAAO,EAAE,sBAAsB,EAC/B,OAAO,CAAC,EAAE,yBAAyB,GAClC,4BAA4B,CA8B9B;CACF"}
@@ -0,0 +1,49 @@
1
+ import { SimSsmParameterName } from "../../parameter/sim-ssm-parameter-name.js";
2
+ import { standardTier } from "./sim-ssm-parameter-view.js";
3
+ import { SimSsmUnsimulatedPutOptions } from "./sim-ssm-unsimulated-put-options.js";
4
+ /**
5
+ * The PutParameter command.
6
+ *
7
+ * The name is validated before anything else happens, because the name is
8
+ * what the request authorizes against: a policy allowing the caller to write
9
+ * `/myapp/prod/*` has to be evaluated against the ARN the parameter is about
10
+ * to have, whether or not it exists yet.
11
+ */
12
+ export class SimSsmPutParameter {
13
+ writer;
14
+ authorizer;
15
+ accountRegionScope;
16
+ unsimulatedOptions = new SimSsmUnsimulatedPutOptions();
17
+ constructor(properties) {
18
+ this.writer = properties.writer;
19
+ this.authorizer = properties.authorizer;
20
+ this.accountRegionScope = properties.accountRegionScope;
21
+ }
22
+ /**
23
+ * Create or update a parameter.
24
+ */
25
+ handle(command, options) {
26
+ const { input } = command;
27
+ this.unsimulatedOptions.refuseIn(input);
28
+ const name = new SimSsmParameterName({
29
+ name: input.Name,
30
+ accountRegionScope: this.accountRegionScope,
31
+ });
32
+ const caller = this.authorizer.authorizeParameterResource("ssm:PutParameter", name.resource, options?.caller);
33
+ const version = this.writer.write({
34
+ name,
35
+ value: input.Value,
36
+ type: input.Type,
37
+ overwrite: input.Overwrite,
38
+ description: input.Description,
39
+ dataType: input.DataType,
40
+ lastModifiedUser: caller.arn,
41
+ });
42
+ return {
43
+ $metadata: {},
44
+ Version: version.version,
45
+ Tier: standardTier,
46
+ };
47
+ }
48
+ }
49
+ //# sourceMappingURL=sim-ssm-put-parameter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-ssm-put-parameter.js","sourceRoot":"","sources":["../../../../../src/service/ssm/command/parameter/sim-ssm-put-parameter.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAOhF,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AAYnF;;;;;;;GAOG;AACH,MAAM,OAAO,kBAAkB;IACZ,MAAM,CAAwB;IAC9B,UAAU,CAAmB;IAC7B,kBAAkB,CAA2B;IAC7C,kBAAkB,GAAG,IAAI,2BAA2B,EAAE,CAAC;IAExE,YAAY,UAAwC;QAClD,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;QAChC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;QACxC,IAAI,CAAC,kBAAkB,GAAG,UAAU,CAAC,kBAAkB,CAAC;IAC1D,CAAC;IAED;;OAEG;IACH,MAAM,CACJ,OAA+B,EAC/B,OAAmC;QAEnC,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;QAE1B,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAExC,MAAM,IAAI,GAAG,IAAI,mBAAmB,CAAC;YACnC,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;SAC5C,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,0BAA0B,CACvD,kBAAkB,EAClB,IAAI,CAAC,QAAQ,EACb,OAAO,EAAE,MAAM,CAChB,CAAC;QAEF,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;YAChC,IAAI;YACJ,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,gBAAgB,EAAE,MAAM,CAAC,GAAG;SAC7B,CAAC,CAAC;QAEH,OAAO;YACL,SAAS,EAAE,EAAE;YACb,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,IAAI,EAAE,YAAY;SACnB,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,19 @@
1
+ import type { SimPutParameterCommandInput } from "./parameter.command.js";
2
+ /**
3
+ * Refuses the PutParameter options this simulation does not model.
4
+ *
5
+ * Every one of these changes what the parameter does on real AWS, so ignoring
6
+ * any of them would let a request succeed here and behave differently in a
7
+ * deployment. An AllowedPattern that is quietly dropped is the clearest case:
8
+ * the value it was meant to reject would be stored without complaint.
9
+ */
10
+ export declare class SimSsmUnsimulatedPutOptions {
11
+ /**
12
+ * Refuse a request carrying an option this simulation cannot honour.
13
+ */
14
+ refuseIn(input: SimPutParameterCommandInput): void;
15
+ private refuseTier;
16
+ private refuseDataType;
17
+ private refuse;
18
+ }
19
+ //# sourceMappingURL=sim-ssm-unsimulated-put-options.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-ssm-unsimulated-put-options.d.ts","sourceRoot":"","sources":["../../../../../src/service/ssm/command/parameter/sim-ssm-unsimulated-put-options.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAG1E;;;;;;;GAOG;AACH,qBAAa,2BAA2B;IACtC;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,2BAA2B,GAAG,IAAI,CAWjD;IAED,OAAO,CAAC,UAAU;IAYlB,OAAO,CAAC,cAAc;IAYtB,OAAO,CAAC,MAAM;CAUf"}
@@ -0,0 +1,48 @@
1
+ import { SimSsmValidationException } from "../../error/sim-ssm.error.js";
2
+ import { ssmTextDataType } from "../../parameter/sim-ssm-parameter-version.js";
3
+ import { standardTier } from "./sim-ssm-parameter-view.js";
4
+ /**
5
+ * Refuses the PutParameter options this simulation does not model.
6
+ *
7
+ * Every one of these changes what the parameter does on real AWS, so ignoring
8
+ * any of them would let a request succeed here and behave differently in a
9
+ * deployment. An AllowedPattern that is quietly dropped is the clearest case:
10
+ * the value it was meant to reject would be stored without complaint.
11
+ */
12
+ export class SimSsmUnsimulatedPutOptions {
13
+ /**
14
+ * Refuse a request carrying an option this simulation cannot honour.
15
+ */
16
+ refuseIn(input) {
17
+ this.refuseTier(input.Tier);
18
+ this.refuseDataType(input.DataType);
19
+ this.refuse("AllowedPattern", input.AllowedPattern, "value validation");
20
+ this.refuse("Policies", input.Policies, "parameter policies");
21
+ this.refuse("Tags", input.Tags, "parameter tags");
22
+ this.refuse("KeyId", input.KeyId, "encryption, which only applies to SecureString parameters");
23
+ }
24
+ refuseTier(tier) {
25
+ if (tier === undefined || tier === standardTier) {
26
+ return;
27
+ }
28
+ throw new SimSsmValidationException(`Parameter Tier '${tier}' is not simulated: only the ${standardTier} ` +
29
+ `tier is, so a parameter here holds at most 4KB and carries no ` +
30
+ `policies`);
31
+ }
32
+ refuseDataType(dataType) {
33
+ if (dataType === undefined || dataType === ssmTextDataType) {
34
+ return;
35
+ }
36
+ throw new SimSsmValidationException(`Parameter DataType '${dataType}' is not simulated: real Parameter ` +
37
+ `Store validates such a value against another service, which this ` +
38
+ `simulation cannot do. Only '${ssmTextDataType}' is supported.`);
39
+ }
40
+ refuse(option, value, feature) {
41
+ if (value === undefined) {
42
+ return;
43
+ }
44
+ throw new SimSsmValidationException(`PutParameter ${option} is not simulated: ${feature} would be ignored ` +
45
+ `here and applied on real AWS`);
46
+ }
47
+ }
48
+ //# sourceMappingURL=sim-ssm-unsimulated-put-options.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-ssm-unsimulated-put-options.js","sourceRoot":"","sources":["../../../../../src/service/ssm/command/parameter/sim-ssm-unsimulated-put-options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,8CAA8C,CAAC;AAE/E,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D;;;;;;;GAOG;AACH,MAAM,OAAO,2BAA2B;IACtC;;OAEG;IACH,QAAQ,CAAC,KAAkC;QACzC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACpC,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,KAAK,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;QACxE,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC;QAC9D,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;QAClD,IAAI,CAAC,MAAM,CACT,OAAO,EACP,KAAK,CAAC,KAAK,EACX,2DAA2D,CAC5D,CAAC;IACJ,CAAC;IAEO,UAAU,CAAC,IAAwB;QACzC,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;YAChD,OAAO;QACT,CAAC;QAED,MAAM,IAAI,yBAAyB,CACjC,mBAAmB,IAAI,gCAAgC,YAAY,GAAG;YACpE,gEAAgE;YAChE,UAAU,CACb,CAAC;IACJ,CAAC;IAEO,cAAc,CAAC,QAA4B;QACjD,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,eAAe,EAAE,CAAC;YAC3D,OAAO;QACT,CAAC;QAED,MAAM,IAAI,yBAAyB,CACjC,uBAAuB,QAAQ,qCAAqC;YAClE,mEAAmE;YACnE,+BAA+B,eAAe,iBAAiB,CAClE,CAAC;IACJ,CAAC;IAEO,MAAM,CAAC,MAAc,EAAE,KAAc,EAAE,OAAe;QAC5D,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,OAAO;QACT,CAAC;QAED,MAAM,IAAI,yBAAyB,CACjC,gBAAgB,MAAM,sBAAsB,OAAO,oBAAoB;YACrE,8BAA8B,CACjC,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * The sim SSM Command types, gathered for the service facade.
3
+ */
4
+ export type { SimDeleteParameterCommand, SimDeleteParameterCommandInput, SimDeleteParameterCommandOutput, SimDeleteParametersCommand, SimDeleteParametersCommandInput, SimDeleteParametersCommandOutput, SimPutParameterCommand, SimPutParameterCommandInput, SimPutParameterCommandOutput, SimSsmParameterMetadata, SimSsmParameterOutput, SimSsmTag, } from "./parameter/parameter.command.js";
5
+ export type { SimDescribeParametersCommand, SimDescribeParametersCommandInput, SimDescribeParametersCommandOutput, SimGetParameterCommand, SimGetParameterCommandInput, SimGetParameterCommandOutput, SimGetParametersByPathCommand, SimGetParametersByPathCommandInput, SimGetParametersByPathCommandOutput, SimGetParametersCommand, SimGetParametersCommandInput, SimGetParametersCommandOutput, SimSsmParameterFilter, } from "./parameter/query.command.js";
6
+ //# sourceMappingURL=sim-ssm-command.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-ssm-command.types.d.ts","sourceRoot":"","sources":["../../../../src/service/ssm/command/sim-ssm-command.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,YAAY,EACV,yBAAyB,EACzB,8BAA8B,EAC9B,+BAA+B,EAC/B,0BAA0B,EAC1B,+BAA+B,EAC/B,gCAAgC,EAChC,sBAAsB,EACtB,2BAA2B,EAC3B,4BAA4B,EAC5B,uBAAuB,EACvB,qBAAqB,EACrB,SAAS,GACV,MAAM,kCAAkC,CAAC;AAC1C,YAAY,EACV,4BAA4B,EAC5B,iCAAiC,EACjC,kCAAkC,EAClC,sBAAsB,EACtB,2BAA2B,EAC3B,4BAA4B,EAC5B,6BAA6B,EAC7B,kCAAkC,EAClC,mCAAmC,EACnC,uBAAuB,EACvB,4BAA4B,EAC5B,6BAA6B,EAC7B,qBAAqB,GACtB,MAAM,8BAA8B,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=sim-ssm-command.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-ssm-command.types.js","sourceRoot":"","sources":["../../../../src/service/ssm/command/sim-ssm-command.types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,88 @@
1
+ /**
2
+ * Minimal metadata shape for simulated SSM errors.
3
+ */
4
+ export interface SimSsmErrorMetadata {
5
+ readonly httpStatusCode?: number;
6
+ }
7
+ /**
8
+ * Base class for simulated SSM errors.
9
+ */
10
+ export declare class SimSsmError extends Error {
11
+ readonly $metadata: SimSsmErrorMetadata;
12
+ constructor(message: string, $metadata?: SimSsmErrorMetadata);
13
+ }
14
+ /**
15
+ * Simulated SSM ParameterNotFound error.
16
+ *
17
+ * Real Parameter Store reports an unknown parameter name and an unknown label
18
+ * this way.
19
+ */
20
+ export declare class SimSsmParameterNotFound extends SimSsmError {
21
+ readonly name = "ParameterNotFound";
22
+ constructor(message: string);
23
+ }
24
+ /**
25
+ * Simulated SSM ParameterVersionNotFound error.
26
+ *
27
+ * This is what a numbered version selector produces when the parameter exists
28
+ * but that version of it does not.
29
+ */
30
+ export declare class SimSsmParameterVersionNotFound extends SimSsmError {
31
+ readonly name = "ParameterVersionNotFound";
32
+ constructor(message: string);
33
+ }
34
+ /**
35
+ * Simulated SSM ParameterAlreadyExists error.
36
+ *
37
+ * PutParameter produces this when the name is taken and the request did not
38
+ * ask to overwrite.
39
+ */
40
+ export declare class SimSsmParameterAlreadyExists extends SimSsmError {
41
+ readonly name = "ParameterAlreadyExists";
42
+ constructor(message: string);
43
+ }
44
+ /**
45
+ * Simulated SSM ParameterPatternMismatchException error.
46
+ *
47
+ * This is the failure a malformed parameter name produces: disallowed
48
+ * characters, a hierarchy without its leading slash, or a reserved prefix.
49
+ */
50
+ export declare class SimSsmParameterPatternMismatchException extends SimSsmError {
51
+ readonly name = "ParameterPatternMismatchException";
52
+ constructor(message: string);
53
+ }
54
+ /**
55
+ * Simulated SSM HierarchyLevelLimitExceededException error.
56
+ */
57
+ export declare class SimSsmHierarchyLevelLimitExceededException extends SimSsmError {
58
+ readonly name = "HierarchyLevelLimitExceededException";
59
+ constructor(message: string);
60
+ }
61
+ /**
62
+ * Simulated SSM HierarchyTypeMismatchException error.
63
+ *
64
+ * Parameter Store refuses to change the type of an existing parameter, so an
65
+ * overwrite naming a different type fails rather than converting it.
66
+ */
67
+ export declare class SimSsmHierarchyTypeMismatchException extends SimSsmError {
68
+ readonly name = "HierarchyTypeMismatchException";
69
+ constructor(message: string);
70
+ }
71
+ /**
72
+ * Simulated SSM UnsupportedParameterType error.
73
+ */
74
+ export declare class SimSsmUnsupportedParameterType extends SimSsmError {
75
+ readonly name = "UnsupportedParameterType";
76
+ constructor(message: string);
77
+ }
78
+ /**
79
+ * Simulated SSM ValidationException error.
80
+ *
81
+ * Real Parameter Store reports a missing or malformed request input this way,
82
+ * and it is also what this simulation refuses an unsimulated input with.
83
+ */
84
+ export declare class SimSsmValidationException extends SimSsmError {
85
+ readonly name = "ValidationException";
86
+ constructor(message: string);
87
+ }
88
+ //# sourceMappingURL=sim-ssm.error.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-ssm.error.d.ts","sourceRoot":"","sources":["../../../../src/service/ssm/error/sim-ssm.error.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;CAClC;AAED;;GAEG;AACH,qBAAa,WAAY,SAAQ,KAAK;aAGlB,SAAS,EAAE,mBAAmB;IAFhD,YACE,OAAO,EAAE,MAAM,EACC,SAAS,GAAE,mBAAwB,EAGpD;CACF;AAED;;;;;GAKG;AACH,qBAAa,uBAAwB,SAAQ,WAAW;IACtD,SAAyB,IAAI,uBAAuB;IAEpD,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;;;;GAKG;AACH,qBAAa,8BAA+B,SAAQ,WAAW;IAC7D,SAAyB,IAAI,8BAA8B;IAE3D,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;;;;GAKG;AACH,qBAAa,4BAA6B,SAAQ,WAAW;IAC3D,SAAyB,IAAI,4BAA4B;IAEzD,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;;;;GAKG;AACH,qBAAa,uCAAwC,SAAQ,WAAW;IACtE,SAAyB,IAAI,uCAAuC;IAEpE,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;GAEG;AACH,qBAAa,0CAA2C,SAAQ,WAAW;IACzE,SAAyB,IAAI,0CAA0C;IAEvE,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;;;;GAKG;AACH,qBAAa,oCAAqC,SAAQ,WAAW;IACnE,SAAyB,IAAI,oCAAoC;IAEjE,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;GAEG;AACH,qBAAa,8BAA+B,SAAQ,WAAW;IAC7D,SAAyB,IAAI,8BAA8B;IAE3D,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;;;;GAKG;AACH,qBAAa,yBAA0B,SAAQ,WAAW;IACxD,SAAyB,IAAI,yBAAyB;IAEtD,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF"}
@@ -0,0 +1,101 @@
1
+ /**
2
+ * Base class for simulated SSM errors.
3
+ */
4
+ export class SimSsmError extends Error {
5
+ $metadata;
6
+ constructor(message, $metadata = {}) {
7
+ super(message);
8
+ this.$metadata = $metadata;
9
+ }
10
+ }
11
+ /**
12
+ * Simulated SSM ParameterNotFound error.
13
+ *
14
+ * Real Parameter Store reports an unknown parameter name and an unknown label
15
+ * this way.
16
+ */
17
+ export class SimSsmParameterNotFound extends SimSsmError {
18
+ name = "ParameterNotFound";
19
+ constructor(message) {
20
+ super(message, { httpStatusCode: 400 });
21
+ }
22
+ }
23
+ /**
24
+ * Simulated SSM ParameterVersionNotFound error.
25
+ *
26
+ * This is what a numbered version selector produces when the parameter exists
27
+ * but that version of it does not.
28
+ */
29
+ export class SimSsmParameterVersionNotFound extends SimSsmError {
30
+ name = "ParameterVersionNotFound";
31
+ constructor(message) {
32
+ super(message, { httpStatusCode: 400 });
33
+ }
34
+ }
35
+ /**
36
+ * Simulated SSM ParameterAlreadyExists error.
37
+ *
38
+ * PutParameter produces this when the name is taken and the request did not
39
+ * ask to overwrite.
40
+ */
41
+ export class SimSsmParameterAlreadyExists extends SimSsmError {
42
+ name = "ParameterAlreadyExists";
43
+ constructor(message) {
44
+ super(message, { httpStatusCode: 400 });
45
+ }
46
+ }
47
+ /**
48
+ * Simulated SSM ParameterPatternMismatchException error.
49
+ *
50
+ * This is the failure a malformed parameter name produces: disallowed
51
+ * characters, a hierarchy without its leading slash, or a reserved prefix.
52
+ */
53
+ export class SimSsmParameterPatternMismatchException extends SimSsmError {
54
+ name = "ParameterPatternMismatchException";
55
+ constructor(message) {
56
+ super(message, { httpStatusCode: 400 });
57
+ }
58
+ }
59
+ /**
60
+ * Simulated SSM HierarchyLevelLimitExceededException error.
61
+ */
62
+ export class SimSsmHierarchyLevelLimitExceededException extends SimSsmError {
63
+ name = "HierarchyLevelLimitExceededException";
64
+ constructor(message) {
65
+ super(message, { httpStatusCode: 400 });
66
+ }
67
+ }
68
+ /**
69
+ * Simulated SSM HierarchyTypeMismatchException error.
70
+ *
71
+ * Parameter Store refuses to change the type of an existing parameter, so an
72
+ * overwrite naming a different type fails rather than converting it.
73
+ */
74
+ export class SimSsmHierarchyTypeMismatchException extends SimSsmError {
75
+ name = "HierarchyTypeMismatchException";
76
+ constructor(message) {
77
+ super(message, { httpStatusCode: 400 });
78
+ }
79
+ }
80
+ /**
81
+ * Simulated SSM UnsupportedParameterType error.
82
+ */
83
+ export class SimSsmUnsupportedParameterType extends SimSsmError {
84
+ name = "UnsupportedParameterType";
85
+ constructor(message) {
86
+ super(message, { httpStatusCode: 400 });
87
+ }
88
+ }
89
+ /**
90
+ * Simulated SSM ValidationException error.
91
+ *
92
+ * Real Parameter Store reports a missing or malformed request input this way,
93
+ * and it is also what this simulation refuses an unsimulated input with.
94
+ */
95
+ export class SimSsmValidationException extends SimSsmError {
96
+ name = "ValidationException";
97
+ constructor(message) {
98
+ super(message, { httpStatusCode: 400 });
99
+ }
100
+ }
101
+ //# sourceMappingURL=sim-ssm.error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-ssm.error.js","sourceRoot":"","sources":["../../../../src/service/ssm/error/sim-ssm.error.ts"],"names":[],"mappings":"AAOA;;GAEG;AACH,MAAM,OAAO,WAAY,SAAQ,KAAK;IAGlB,SAAS;IAF3B,YACE,OAAe,EACC,SAAS,GAAwB,EAAE;QAEnD,KAAK,CAAC,OAAO,CAAC,CAAC;yBAFC,SAAS;IAG3B,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,OAAO,uBAAwB,SAAQ,WAAW;IAC7B,IAAI,GAAG,mBAAmB,CAAC;IAEpD,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1C,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,OAAO,8BAA+B,SAAQ,WAAW;IACpC,IAAI,GAAG,0BAA0B,CAAC;IAE3D,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1C,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,OAAO,4BAA6B,SAAQ,WAAW;IAClC,IAAI,GAAG,wBAAwB,CAAC;IAEzD,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1C,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,OAAO,uCAAwC,SAAQ,WAAW;IAC7C,IAAI,GAAG,mCAAmC,CAAC;IAEpE,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1C,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,0CAA2C,SAAQ,WAAW;IAChD,IAAI,GAAG,sCAAsC,CAAC;IAEvE,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1C,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,OAAO,oCAAqC,SAAQ,WAAW;IAC1C,IAAI,GAAG,gCAAgC,CAAC;IAEjE,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1C,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,8BAA+B,SAAQ,WAAW;IACpC,IAAI,GAAG,0BAA0B,CAAC;IAE3D,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1C,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,OAAO,yBAA0B,SAAQ,WAAW;IAC/B,IAAI,GAAG,qBAAqB,CAAC;IAEtD,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1C,CAAC;CACF"}
@@ -0,0 +1,10 @@
1
+ export { SimSsm, type SimSsmRequestOptions } from "./sim-ssm.js";
2
+ export { SimSsmParameter } from "./parameter/sim-ssm-parameter.js";
3
+ export { SimSsmParameterArn } from "./parameter/sim-ssm-parameter-arn.js";
4
+ export { SimSsmParameterName } from "./parameter/sim-ssm-parameter-name.js";
5
+ export { SimSsmParameterPath } from "./parameter/sim-ssm-parameter-path.js";
6
+ export { SimSsmParameterType, type SimSsmParameterTypeName, } from "./parameter/sim-ssm-parameter-type.js";
7
+ export { SimSsmParameterValue } from "./parameter/sim-ssm-parameter-value.js";
8
+ export { SimSsmParameterVersion, ssmTextDataType, } from "./parameter/sim-ssm-parameter-version.js";
9
+ export { SimSsmError, SimSsmHierarchyLevelLimitExceededException, SimSsmHierarchyTypeMismatchException, SimSsmParameterAlreadyExists, SimSsmParameterNotFound, SimSsmParameterPatternMismatchException, SimSsmParameterVersionNotFound, SimSsmUnsupportedParameterType, SimSsmValidationException, } from "./error/sim-ssm.error.js";
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/service/ssm/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,KAAK,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAC5E,OAAO,EACL,mBAAmB,EACnB,KAAK,uBAAuB,GAC7B,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAC9E,OAAO,EACL,sBAAsB,EACtB,eAAe,GAChB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EACL,WAAW,EACX,0CAA0C,EAC1C,oCAAoC,EACpC,4BAA4B,EAC5B,uBAAuB,EACvB,uCAAuC,EACvC,8BAA8B,EAC9B,8BAA8B,EAC9B,yBAAyB,GAC1B,MAAM,0BAA0B,CAAC"}
@@ -0,0 +1,10 @@
1
+ export { SimSsm } from "./sim-ssm.js";
2
+ export { SimSsmParameter } from "./parameter/sim-ssm-parameter.js";
3
+ export { SimSsmParameterArn } from "./parameter/sim-ssm-parameter-arn.js";
4
+ export { SimSsmParameterName } from "./parameter/sim-ssm-parameter-name.js";
5
+ export { SimSsmParameterPath } from "./parameter/sim-ssm-parameter-path.js";
6
+ export { SimSsmParameterType, } from "./parameter/sim-ssm-parameter-type.js";
7
+ export { SimSsmParameterValue } from "./parameter/sim-ssm-parameter-value.js";
8
+ export { SimSsmParameterVersion, ssmTextDataType, } from "./parameter/sim-ssm-parameter-version.js";
9
+ export { SimSsmError, SimSsmHierarchyLevelLimitExceededException, SimSsmHierarchyTypeMismatchException, SimSsmParameterAlreadyExists, SimSsmParameterNotFound, SimSsmParameterPatternMismatchException, SimSsmParameterVersionNotFound, SimSsmUnsupportedParameterType, SimSsmValidationException, } from "./error/sim-ssm.error.js";
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/service/ssm/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAA6B,MAAM,cAAc,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAC5E,OAAO,EACL,mBAAmB,GAEpB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAC9E,OAAO,EACL,sBAAsB,EACtB,eAAe,GAChB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EACL,WAAW,EACX,0CAA0C,EAC1C,oCAAoC,EACpC,4BAA4B,EAC5B,uBAAuB,EACvB,uCAAuC,EACvC,8BAA8B,EAC9B,8BAA8B,EAC9B,yBAAyB,GAC1B,MAAM,0BAA0B,CAAC"}
@@ -0,0 +1,33 @@
1
+ import type { SimAwsAccountRegionScope } from "../../aws/sim-aws-account-region-scope.js";
2
+ /**
3
+ * The part of a parameter ARN that comes before the parameter's own name.
4
+ *
5
+ * It ends in a slash, and the name follows it with its own leading slash
6
+ * dropped, so `/myapp/prod/db-host` becomes `...:parameter/myapp/prod/db-host`
7
+ * rather than `...:parameter//myapp/prod/db-host`.
8
+ */
9
+ export declare function ssmParameterArnPrefix(accountRegionScope: SimAwsAccountRegionScope): string;
10
+ interface SimSsmParameterArnProperties {
11
+ readonly resource: string;
12
+ readonly accountRegionScope: SimAwsAccountRegionScope;
13
+ }
14
+ /**
15
+ * The ARN of one simulated parameter.
16
+ *
17
+ * The single detail worth getting right here is the leading slash. A
18
+ * hierarchical parameter name starts with one and its ARN does not repeat it,
19
+ * so an IAM policy written as `...:parameter//myapp/prod/db-host` matches
20
+ * nothing. Building the ARN in one place is what makes a policy that works
21
+ * here one that would work on real AWS.
22
+ */
23
+ export declare class SimSsmParameterArn {
24
+ /**
25
+ * The parameter name with its leading slash dropped, which is the part of
26
+ * the ARN after `parameter/`.
27
+ */
28
+ readonly resource: string;
29
+ readonly value: string;
30
+ constructor(properties: SimSsmParameterArnProperties);
31
+ }
32
+ export {};
33
+ //# sourceMappingURL=sim-ssm-parameter-arn.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-ssm-parameter-arn.d.ts","sourceRoot":"","sources":["../../../../src/service/ssm/parameter/sim-ssm-parameter-arn.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AAE1F;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,kBAAkB,EAAE,wBAAwB,GAC3C,MAAM,CAIR;AAED,UAAU,4BAA4B;IACpC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,CAAC;CACvD;AAED;;;;;;;;GAQG;AACH,qBAAa,kBAAkB;IAC7B;;;OAGG;IACH,SAAgB,QAAQ,EAAE,MAAM,CAAC;IAEjC,SAAgB,KAAK,EAAE,MAAM,CAAC;IAE9B,YAAY,UAAU,EAAE,4BAA4B,EAInD;CACF"}