@effect-aws/ssm 1.0.2 → 1.1.1

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.
@@ -0,0 +1,6 @@
1
+ {
2
+ "main": "../dist/cjs/ConfigProvider.js",
3
+ "module": "../dist/esm/ConfigProvider.js",
4
+ "types": "../dist/dts/ConfigProvider.d.ts",
5
+ "sideEffects": []
6
+ }
package/LICENSE CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2024 Victor Korzunin
1
+ Copyright (c) 2025 Victor Korzunin
2
2
 
3
3
  Permission is hereby granted, free of charge, to any person obtaining a copy
4
4
  of this software and associated documentation files (the "Software"), to deal
@@ -2,7 +2,8 @@
2
2
  * @since 1.0.0
3
3
  */
4
4
  import { SSMService } from "@effect-aws/client-ssm";
5
- import { ConfigProvider, Layer } from "effect";
5
+ import type { Layer } from "effect";
6
+ import { ConfigProvider } from "effect";
6
7
  /**
7
8
  * A config provider that loads configuration from AWS Systems Manager Parameter Store.
8
9
  *
@@ -13,3 +14,4 @@ export declare const fromParameterStore: (config?: {
13
14
  pathDelim?: string;
14
15
  serviceLayer?: Layer.Layer<SSMService, never, never>;
15
16
  }) => ConfigProvider.ConfigProvider;
17
+ //# sourceMappingURL=ConfigProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfigProvider.d.ts","sourceRoot":"","sources":["../../src/ConfigProvider.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,KAAK,EAAU,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC5C,OAAO,EAIL,cAAc,EAMf,MAAM,QAAQ,CAAC;AAEhB;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,YAAa;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,KAAK,CAAC,UAAU,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;CACtD,KAAG,eAAe,cA4GlB,CAAC"}
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.fromParameterStore = void 0;
4
+ /**
5
+ * @since 1.0.0
6
+ */
7
+ const client_ssm_1 = require("@effect-aws/client-ssm");
8
+ const effect_1 = require("effect");
9
+ /**
10
+ * A config provider that loads configuration from AWS Systems Manager Parameter Store.
11
+ *
12
+ * @since 1.0.0
13
+ * @category constructors
14
+ */
15
+ const fromParameterStore = (config) => {
16
+ const { pathDelim, serviceLayer } = Object.assign({}, { pathDelim: "_", serviceLayer: client_ssm_1.SSMService.defaultLayer }, config);
17
+ const makePathString = (path) => (0, effect_1.pipe)(path, effect_1.Array.join(pathDelim));
18
+ const unmakePathString = (pathString) => pathString.split(pathDelim);
19
+ const load = (path, primitive) => {
20
+ const pathString = makePathString(path);
21
+ return client_ssm_1.SSMService.getParameter({
22
+ Name: pathString,
23
+ WithDecryption: true,
24
+ }).pipe(effect_1.Effect.flatMap((value) => effect_1.Option.fromNullable(value.Parameter?.Value)), effect_1.Effect.catchTag("ParameterNotFound", () => effect_1.Effect.fail(effect_1.ConfigError.MissingData(path, `Expected ${pathString} parameter to exist in AWS Systems Manager Parameter Store`))), effect_1.Effect.catchTag("ParameterVersionNotFound", () => effect_1.Effect.fail(effect_1.ConfigError.MissingData(path, `Expected ${pathString} parameter version to exist in AWS Systems Manager Parameter Store`))), effect_1.Effect.catchTag("NoSuchElementException", () => effect_1.Effect.fail(effect_1.ConfigError.MissingData(path, `Expected ${pathString} to exist in AWS Systems Manager Parameter Store`))), effect_1.Effect.catchTag("InvalidKeyId", () => effect_1.Effect.fail(effect_1.ConfigError.InvalidData(path, "Invalid key ID when retrieving configuration from AWS Systems Manager Parameter Store"))), effect_1.Effect.catchAllCause((cause) => effect_1.Cause.isFailType(cause) && effect_1.ConfigError.isConfigError(cause.error)
25
+ ? effect_1.Effect.fail(cause.error)
26
+ : effect_1.Effect.fail(effect_1.ConfigError.SourceUnavailable(path, "Failed to load configuration from AWS Systems Manager Parameter Store", cause))), effect_1.Effect.flatMap((value) => (0, effect_1.pipe)(primitive.parse(value), effect_1.Effect.mapBoth({
27
+ onFailure: effect_1.ConfigError.prefixed(path),
28
+ onSuccess: effect_1.Array.of,
29
+ }))), effect_1.Effect.provide(serviceLayer));
30
+ };
31
+ const enumerateChildren = (path) => client_ssm_1.SSMService.describeParameters({}).pipe(effect_1.Effect.flatMap((params) => effect_1.Option.fromNullable(params.Parameters)), effect_1.Effect.map(effect_1.Array.map((param) => effect_1.Option.fromNullable(param.Name))), effect_1.Effect.flatMap(effect_1.Option.all), effect_1.Effect.orDie, effect_1.Effect.map((keys) => {
32
+ const keyPaths = keys.map(unmakePathString);
33
+ const filteredKeyPaths = keyPaths
34
+ .filter((keyPath) => {
35
+ for (let i = 0; i < path.length; i++) {
36
+ const pathComponent = (0, effect_1.pipe)(path, effect_1.Array.unsafeGet(i));
37
+ const currentElement = keyPath[i];
38
+ if (currentElement === undefined ||
39
+ pathComponent !== currentElement) {
40
+ return false;
41
+ }
42
+ }
43
+ return true;
44
+ })
45
+ .flatMap((keyPath) => keyPath.slice(path.length, path.length + 1));
46
+ return effect_1.HashSet.fromIterable(filteredKeyPaths);
47
+ }), effect_1.Effect.provide(serviceLayer));
48
+ return effect_1.ConfigProvider.fromFlat(effect_1.ConfigProvider.makeFlat({
49
+ load,
50
+ enumerateChildren,
51
+ patch: effect_1.ConfigProviderPathPatch.empty,
52
+ }));
53
+ };
54
+ exports.fromParameterStore = fromParameterStore;
55
+ //# sourceMappingURL=ConfigProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfigProvider.js","sourceRoot":"","sources":["../../src/ConfigProvider.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ export * from "./ConfigProvider.js";
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,qBAAqB,CAAC"}
@@ -14,5 +14,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./ConfigProvider"), exports);
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG1EQUFpQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL0NvbmZpZ1Byb3ZpZGVyXCI7XG4iXX0=
17
+ /**
18
+ * @since 1.0.0
19
+ */
20
+ __exportStar(require("./ConfigProvider.js"), exports);
21
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA;;GAEG;AACH,sDAAoC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ import { SSMService } from "@effect-aws/client-ssm";
5
+ import type { Layer } from "effect";
6
+ import { ConfigProvider } from "effect";
7
+ /**
8
+ * A config provider that loads configuration from AWS Systems Manager Parameter Store.
9
+ *
10
+ * @since 1.0.0
11
+ * @category constructors
12
+ */
13
+ export declare const fromParameterStore: (config?: {
14
+ pathDelim?: string;
15
+ serviceLayer?: Layer.Layer<SSMService, never, never>;
16
+ }) => ConfigProvider.ConfigProvider;
17
+ //# sourceMappingURL=ConfigProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfigProvider.d.ts","sourceRoot":"","sources":["../../src/ConfigProvider.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,KAAK,EAAU,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC5C,OAAO,EAIL,cAAc,EAMf,MAAM,QAAQ,CAAC;AAEhB;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,YAAa;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,KAAK,CAAC,UAAU,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;CACtD,KAAG,eAAe,cA4GlB,CAAC"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ export * from "./ConfigProvider.js";
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,qBAAqB,CAAC"}
@@ -0,0 +1,51 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ import { SSMService } from "@effect-aws/client-ssm";
5
+ import { Array, Cause, ConfigError, ConfigProvider, ConfigProviderPathPatch, Effect, HashSet, Option, pipe, } from "effect";
6
+ /**
7
+ * A config provider that loads configuration from AWS Systems Manager Parameter Store.
8
+ *
9
+ * @since 1.0.0
10
+ * @category constructors
11
+ */
12
+ export const fromParameterStore = (config) => {
13
+ const { pathDelim, serviceLayer } = Object.assign({}, { pathDelim: "_", serviceLayer: SSMService.defaultLayer }, config);
14
+ const makePathString = (path) => pipe(path, Array.join(pathDelim));
15
+ const unmakePathString = (pathString) => pathString.split(pathDelim);
16
+ const load = (path, primitive) => {
17
+ const pathString = makePathString(path);
18
+ return SSMService.getParameter({
19
+ Name: pathString,
20
+ WithDecryption: true,
21
+ }).pipe(Effect.flatMap((value) => Option.fromNullable(value.Parameter?.Value)), Effect.catchTag("ParameterNotFound", () => Effect.fail(ConfigError.MissingData(path, `Expected ${pathString} parameter to exist in AWS Systems Manager Parameter Store`))), Effect.catchTag("ParameterVersionNotFound", () => Effect.fail(ConfigError.MissingData(path, `Expected ${pathString} parameter version to exist in AWS Systems Manager Parameter Store`))), Effect.catchTag("NoSuchElementException", () => Effect.fail(ConfigError.MissingData(path, `Expected ${pathString} to exist in AWS Systems Manager Parameter Store`))), Effect.catchTag("InvalidKeyId", () => Effect.fail(ConfigError.InvalidData(path, "Invalid key ID when retrieving configuration from AWS Systems Manager Parameter Store"))), Effect.catchAllCause((cause) => Cause.isFailType(cause) && ConfigError.isConfigError(cause.error)
22
+ ? Effect.fail(cause.error)
23
+ : Effect.fail(ConfigError.SourceUnavailable(path, "Failed to load configuration from AWS Systems Manager Parameter Store", cause))), Effect.flatMap((value) => pipe(primitive.parse(value), Effect.mapBoth({
24
+ onFailure: ConfigError.prefixed(path),
25
+ onSuccess: Array.of,
26
+ }))), Effect.provide(serviceLayer));
27
+ };
28
+ const enumerateChildren = (path) => SSMService.describeParameters({}).pipe(Effect.flatMap((params) => Option.fromNullable(params.Parameters)), Effect.map(Array.map((param) => Option.fromNullable(param.Name))), Effect.flatMap(Option.all), Effect.orDie, Effect.map((keys) => {
29
+ const keyPaths = keys.map(unmakePathString);
30
+ const filteredKeyPaths = keyPaths
31
+ .filter((keyPath) => {
32
+ for (let i = 0; i < path.length; i++) {
33
+ const pathComponent = pipe(path, Array.unsafeGet(i));
34
+ const currentElement = keyPath[i];
35
+ if (currentElement === undefined ||
36
+ pathComponent !== currentElement) {
37
+ return false;
38
+ }
39
+ }
40
+ return true;
41
+ })
42
+ .flatMap((keyPath) => keyPath.slice(path.length, path.length + 1));
43
+ return HashSet.fromIterable(filteredKeyPaths);
44
+ }), Effect.provide(serviceLayer));
45
+ return ConfigProvider.fromFlat(ConfigProvider.makeFlat({
46
+ load,
47
+ enumerateChildren,
48
+ patch: ConfigProviderPathPatch.empty,
49
+ }));
50
+ };
51
+ //# sourceMappingURL=ConfigProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfigProvider.js","sourceRoot":"","sources":["../../src/ConfigProvider.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ export * from "./ConfigProvider.js";
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,qBAAqB,CAAC"}
@@ -0,0 +1,4 @@
1
+ {
2
+ "type": "module",
3
+ "sideEffects": []
4
+ }
package/package.json CHANGED
@@ -1,53 +1,44 @@
1
1
  {
2
2
  "name": "@effect-aws/ssm",
3
+ "version": "1.1.1",
4
+ "description": "Effectful AWS SSM functions",
5
+ "license": "MIT",
6
+ "repository": {
7
+ "type": "git",
8
+ "url": "github:floydspace/effect-aws",
9
+ "directory": "packages/ssm"
10
+ },
11
+ "sideEffects": [],
3
12
  "author": {
4
13
  "name": "Victor Korzunin",
5
- "email": "ifloydrose@gmail.com",
6
- "organization": false
7
- },
8
- "devDependencies": {
9
- "@aws-sdk/client-ssm": "^3",
10
- "@fluffy-spoon/substitute": "^1.208.0",
11
- "@types/node": "^18",
12
- "@typescript-eslint/eslint-plugin": "^7",
13
- "@typescript-eslint/parser": "^7",
14
- "effect": "3.0.0",
15
- "eslint": "^8",
16
- "eslint-config-prettier": "^9.1.0",
17
- "eslint-import-resolver-typescript": "^3.6.1",
18
- "eslint-plugin-import": "^2.29.1",
19
- "eslint-plugin-prettier": "^5.2.1",
20
- "prettier": "^3.2.5",
21
- "typescript": "^5.4.2",
22
- "vitest": "^2.0.5",
23
- "@effect-aws/client-ssm": "^1.2.0"
14
+ "email": "ifloydrose@gmail.com"
24
15
  },
16
+ "homepage": "https://floydspace.github.io/effect-aws/docs/ssm",
25
17
  "peerDependencies": {
26
- "@effect-aws/client-ssm": "^1.0.0",
27
- "effect": ">=3.0.0 <4.0.0"
18
+ "effect": ">=3.0.4 <4.0.0",
19
+ "@effect-aws/client-ssm": "^1.9.3"
28
20
  },
29
- "main": "lib/index.js",
30
- "license": "MIT",
31
- "homepage": "https://floydspace.github.io/effect-aws",
32
- "publishConfig": {
33
- "access": "public"
21
+ "main": "./dist/cjs/index.js",
22
+ "module": "./dist/esm/index.js",
23
+ "types": "./dist/dts/index.d.ts",
24
+ "exports": {
25
+ "./package.json": "./package.json",
26
+ ".": {
27
+ "types": "./dist/dts/index.d.ts",
28
+ "import": "./dist/esm/index.js",
29
+ "default": "./dist/cjs/index.js"
30
+ },
31
+ "./ConfigProvider": {
32
+ "types": "./dist/dts/ConfigProvider.d.ts",
33
+ "import": "./dist/esm/ConfigProvider.js",
34
+ "default": "./dist/cjs/ConfigProvider.js"
35
+ }
34
36
  },
35
- "version": "1.0.2",
36
- "types": "lib/index.d.ts",
37
- "module": "lib/esm/index.js",
38
- "sideEffects": [],
39
- "//": "~~ Generated by projen. To modify, edit .projenrc.js and run \"npx projen\".",
40
- "scripts": {
41
- "build": "npx projen build",
42
- "compile": "npx projen compile",
43
- "default": "npx projen default",
44
- "eslint": "npx projen eslint",
45
- "package": "npx projen package",
46
- "post-compile": "npx projen post-compile",
47
- "pre-compile": "npx projen pre-compile",
48
- "test": "npx projen test",
49
- "test:watch": "npx projen test:watch",
50
- "watch": "npx projen watch",
51
- "docgen": "docgen"
37
+ "typesVersions": {
38
+ "*": {
39
+ "ConfigProvider": [
40
+ "./dist/dts/ConfigProvider.d.ts"
41
+ ]
42
+ }
52
43
  }
53
44
  }
@@ -0,0 +1,135 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ import { SSMService } from "@effect-aws/client-ssm";
5
+ import type { Config, Layer } from "effect";
6
+ import {
7
+ Array,
8
+ Cause,
9
+ ConfigError,
10
+ ConfigProvider,
11
+ ConfigProviderPathPatch,
12
+ Effect,
13
+ HashSet,
14
+ Option,
15
+ pipe,
16
+ } from "effect";
17
+
18
+ /**
19
+ * A config provider that loads configuration from AWS Systems Manager Parameter Store.
20
+ *
21
+ * @since 1.0.0
22
+ * @category constructors
23
+ */
24
+ export const fromParameterStore = (config?: {
25
+ pathDelim?: string;
26
+ serviceLayer?: Layer.Layer<SSMService, never, never>;
27
+ }): ConfigProvider.ConfigProvider => {
28
+ const { pathDelim, serviceLayer } = Object.assign(
29
+ {},
30
+ { pathDelim: "_", serviceLayer: SSMService.defaultLayer },
31
+ config,
32
+ );
33
+ const makePathString = (path: ReadonlyArray<string>): string => pipe(path, Array.join(pathDelim));
34
+ const unmakePathString = (pathString: string): ReadonlyArray<string> => pathString.split(pathDelim);
35
+
36
+ const load = <A>(
37
+ path: ReadonlyArray<string>,
38
+ primitive: Config.Config.Primitive<A>,
39
+ ): Effect.Effect<Array<A>, ConfigError.ConfigError> => {
40
+ const pathString = makePathString(path);
41
+ return SSMService.getParameter({
42
+ Name: pathString,
43
+ WithDecryption: true,
44
+ }).pipe(
45
+ Effect.flatMap((value) => Option.fromNullable(value.Parameter?.Value)),
46
+ Effect.catchTag("ParameterNotFound", () =>
47
+ Effect.fail(
48
+ ConfigError.MissingData(
49
+ path as Array<string>,
50
+ `Expected ${pathString} parameter to exist in AWS Systems Manager Parameter Store`,
51
+ ),
52
+ )),
53
+ Effect.catchTag("ParameterVersionNotFound", () =>
54
+ Effect.fail(
55
+ ConfigError.MissingData(
56
+ path as Array<string>,
57
+ `Expected ${pathString} parameter version to exist in AWS Systems Manager Parameter Store`,
58
+ ),
59
+ )),
60
+ Effect.catchTag("NoSuchElementException", () =>
61
+ Effect.fail(
62
+ ConfigError.MissingData(
63
+ path as Array<string>,
64
+ `Expected ${pathString} to exist in AWS Systems Manager Parameter Store`,
65
+ ),
66
+ )),
67
+ Effect.catchTag("InvalidKeyId", () =>
68
+ Effect.fail(
69
+ ConfigError.InvalidData(
70
+ path as Array<string>,
71
+ "Invalid key ID when retrieving configuration from AWS Systems Manager Parameter Store",
72
+ ),
73
+ )),
74
+ Effect.catchAllCause((cause) =>
75
+ Cause.isFailType(cause) && ConfigError.isConfigError(cause.error)
76
+ ? Effect.fail(cause.error)
77
+ : Effect.fail(
78
+ ConfigError.SourceUnavailable(
79
+ path as Array<string>,
80
+ "Failed to load configuration from AWS Systems Manager Parameter Store",
81
+ cause,
82
+ ),
83
+ )
84
+ ),
85
+ Effect.flatMap((value) =>
86
+ pipe(
87
+ primitive.parse(value),
88
+ Effect.mapBoth({
89
+ onFailure: ConfigError.prefixed(path as Array<string>),
90
+ onSuccess: Array.of,
91
+ }),
92
+ )
93
+ ),
94
+ Effect.provide(serviceLayer),
95
+ );
96
+ };
97
+
98
+ const enumerateChildren = (
99
+ path: ReadonlyArray<string>,
100
+ ): Effect.Effect<HashSet.HashSet<string>, ConfigError.ConfigError> =>
101
+ SSMService.describeParameters({}).pipe(
102
+ Effect.flatMap((params) => Option.fromNullable(params.Parameters)),
103
+ Effect.map(Array.map((param) => Option.fromNullable(param.Name))),
104
+ Effect.flatMap(Option.all),
105
+ Effect.orDie,
106
+ Effect.map((keys) => {
107
+ const keyPaths = keys.map(unmakePathString);
108
+ const filteredKeyPaths = keyPaths
109
+ .filter((keyPath) => {
110
+ for (let i = 0; i < path.length; i++) {
111
+ const pathComponent = pipe(path, Array.unsafeGet(i));
112
+ const currentElement = keyPath[i];
113
+ if (
114
+ currentElement === undefined ||
115
+ pathComponent !== currentElement
116
+ ) {
117
+ return false;
118
+ }
119
+ }
120
+ return true;
121
+ })
122
+ .flatMap((keyPath) => keyPath.slice(path.length, path.length + 1));
123
+ return HashSet.fromIterable(filteredKeyPaths);
124
+ }),
125
+ Effect.provide(serviceLayer),
126
+ );
127
+
128
+ return ConfigProvider.fromFlat(
129
+ ConfigProvider.makeFlat({
130
+ load,
131
+ enumerateChildren,
132
+ patch: ConfigProviderPathPatch.empty,
133
+ }),
134
+ );
135
+ };
package/src/index.ts ADDED
@@ -0,0 +1,4 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ export * from "./ConfigProvider.js";
package/CHANGELOG.md DELETED
@@ -1,24 +0,0 @@
1
- # @effect-aws/ssm
2
-
3
- ## 1.0.2
4
-
5
- ### Patch Changes
6
-
7
- - [`cc97eae`](https://github.com/floydspace/effect-aws/commit/cc97eaed1f8df72b8e7fde05069e8ce8eaac578f) Thanks [@floydspace](https://github.com/floydspace)! - simplify layers configuration (closes #78)
8
-
9
- ## 1.0.1
10
-
11
- ### Patch Changes
12
-
13
- - [`f45941d`](https://github.com/floydspace/effect-aws/commit/f45941d6f31b505ce22d6ca196b0c89bc2aa68e2) Thanks [@floydspace](https://github.com/floydspace)! - **ConfigProvider** get parameter with decryption by default
14
-
15
- ## 1.0.0
16
-
17
- ### Major Changes
18
-
19
- - [`225585c`](https://github.com/floydspace/effect-aws/commit/225585c0f1d5070de3f7b8effb721742a90f7619) Thanks [@floydspace](https://github.com/floydspace)! - Implement `fromParameterStore` ConfigProvider constructor
20
-
21
- ### Patch Changes
22
-
23
- - Updated dependencies [[`b22c449`](https://github.com/floydspace/effect-aws/commit/b22c44924a2fdf2892b7a08f4ec7f3df2c154b8a)]:
24
- - @effect-aws/client-ssm@1.0.0
package/docgen.json DELETED
@@ -1,8 +0,0 @@
1
- {
2
- "$schema": "../../node_modules/@effect/docgen/schema.json",
3
- "exclude": [
4
- "src/index.ts",
5
- "src/Errors.ts"
6
- ],
7
- "//": "~~ Generated by projen. To modify, edit .projenrc.js and run \"npx projen\"."
8
- }
@@ -1,55 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.fromParameterStore = void 0;
4
- /**
5
- * @since 1.0.0
6
- */
7
- const client_ssm_1 = require("@effect-aws/client-ssm");
8
- const effect_1 = require("effect");
9
- /**
10
- * A config provider that loads configuration from AWS Systems Manager Parameter Store.
11
- *
12
- * @since 1.0.0
13
- * @category constructors
14
- */
15
- const fromParameterStore = (config) => {
16
- const { pathDelim, serviceLayer } = Object.assign({}, { pathDelim: "_", serviceLayer: client_ssm_1.DefaultSSMServiceLayer }, config);
17
- const makePathString = (path) => (0, effect_1.pipe)(path, effect_1.Array.join(pathDelim));
18
- const unmakePathString = (pathString) => pathString.split(pathDelim);
19
- const load = (path, primitive) => {
20
- const pathString = makePathString(path);
21
- return client_ssm_1.SSMService.getParameter({
22
- Name: pathString,
23
- WithDecryption: true,
24
- }).pipe(effect_1.Effect.flatMap((value) => { var _a; return effect_1.Option.fromNullable((_a = value.Parameter) === null || _a === void 0 ? void 0 : _a.Value); }), effect_1.Effect.catchTag("ParameterNotFound", () => effect_1.Effect.fail(effect_1.ConfigError.MissingData(path, `Expected ${pathString} parameter to exist in AWS Systems Manager Parameter Store`))), effect_1.Effect.catchTag("ParameterVersionNotFound", () => effect_1.Effect.fail(effect_1.ConfigError.MissingData(path, `Expected ${pathString} parameter version to exist in AWS Systems Manager Parameter Store`))), effect_1.Effect.catchTag("NoSuchElementException", () => effect_1.Effect.fail(effect_1.ConfigError.MissingData(path, `Expected ${pathString} to exist in AWS Systems Manager Parameter Store`))), effect_1.Effect.catchTag("InvalidKeyId", () => effect_1.Effect.fail(effect_1.ConfigError.InvalidData(path, "Invalid key ID when retrieving configuration from AWS Systems Manager Parameter Store"))), effect_1.Effect.catchAllCause((cause) => effect_1.Cause.isFailType(cause) && effect_1.ConfigError.isConfigError(cause.error)
25
- ? effect_1.Effect.fail(cause.error)
26
- : effect_1.Effect.fail(effect_1.ConfigError.SourceUnavailable(path, "Failed to load configuration from AWS Systems Manager Parameter Store", cause))), effect_1.Effect.flatMap((value) => (0, effect_1.pipe)(primitive.parse(value), effect_1.Effect.mapBoth({
27
- onFailure: effect_1.ConfigError.prefixed(path),
28
- onSuccess: effect_1.Array.of,
29
- }))), effect_1.Effect.provide(serviceLayer));
30
- };
31
- const enumerateChildren = (path) => client_ssm_1.SSMService.describeParameters({}).pipe(effect_1.Effect.flatMap((params) => effect_1.Option.fromNullable(params.Parameters)), effect_1.Effect.map(effect_1.Array.map((param) => effect_1.Option.fromNullable(param.Name))), effect_1.Effect.flatMap(effect_1.Option.all), effect_1.Effect.orDie, effect_1.Effect.map((keys) => {
32
- const keyPaths = keys.map(unmakePathString);
33
- const filteredKeyPaths = keyPaths
34
- .filter((keyPath) => {
35
- for (let i = 0; i < path.length; i++) {
36
- const pathComponent = (0, effect_1.pipe)(path, effect_1.Array.unsafeGet(i));
37
- const currentElement = keyPath[i];
38
- if (currentElement === undefined ||
39
- pathComponent !== currentElement) {
40
- return false;
41
- }
42
- }
43
- return true;
44
- })
45
- .flatMap((keyPath) => keyPath.slice(path.length, path.length + 1));
46
- return effect_1.HashSet.fromIterable(filteredKeyPaths);
47
- }), effect_1.Effect.provide(serviceLayer));
48
- return effect_1.ConfigProvider.fromFlat(effect_1.ConfigProvider.makeFlat({
49
- load,
50
- enumerateChildren,
51
- patch: effect_1.ConfigProviderPathPatch.empty,
52
- }));
53
- };
54
- exports.fromParameterStore = fromParameterStore;
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29uZmlnUHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvQ29uZmlnUHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUE7O0dBRUc7QUFDSCx1REFBNEU7QUFDNUUsbUNBWWdCO0FBRWhCOzs7OztHQUtHO0FBQ0ksTUFBTSxrQkFBa0IsR0FBRyxDQUFDLE1BR2xDLEVBQWlDLEVBQUU7SUFDbEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUMvQyxFQUFFLEVBQ0YsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLFlBQVksRUFBRSxtQ0FBc0IsRUFBRSxFQUN4RCxNQUFNLENBQ1AsQ0FBQztJQUNGLE1BQU0sY0FBYyxHQUFHLENBQUMsSUFBMkIsRUFBVSxFQUFFLENBQzdELElBQUEsYUFBSSxFQUFDLElBQUksRUFBRSxjQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFDcEMsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLFVBQWtCLEVBQXlCLEVBQUUsQ0FDckUsVUFBVSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUU5QixNQUFNLElBQUksR0FBRyxDQUNYLElBQTJCLEVBQzNCLFNBQXFDLEVBQ2EsRUFBRTtRQUNwRCxNQUFNLFVBQVUsR0FBRyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDeEMsT0FBTyx1QkFBVSxDQUFDLFlBQVksQ0FBQztZQUM3QixJQUFJLEVBQUUsVUFBVTtZQUNoQixjQUFjLEVBQUUsSUFBSTtTQUNyQixDQUFDLENBQUMsSUFBSSxDQUNMLGVBQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxXQUFDLE9BQUEsZUFBTSxDQUFDLFlBQVksQ0FBQyxNQUFBLEtBQUssQ0FBQyxTQUFTLDBDQUFFLEtBQUssQ0FBQyxDQUFBLEVBQUEsQ0FBQyxFQUN0RSxlQUFNLENBQUMsUUFBUSxDQUFDLG1CQUFtQixFQUFFLEdBQUcsRUFBRSxDQUN4QyxlQUFNLENBQUMsSUFBSSxDQUNULG9CQUFXLENBQUMsV0FBVyxDQUNyQixJQUFxQixFQUNyQixZQUFZLFVBQVUsNERBQTRELENBQ25GLENBQ0YsQ0FDRixFQUNELGVBQU0sQ0FBQyxRQUFRLENBQUMsMEJBQTBCLEVBQUUsR0FBRyxFQUFFLENBQy9DLGVBQU0sQ0FBQyxJQUFJLENBQ1Qsb0JBQVcsQ0FBQyxXQUFXLENBQ3JCLElBQXFCLEVBQ3JCLFlBQVksVUFBVSxvRUFBb0UsQ0FDM0YsQ0FDRixDQUNGLEVBQ0QsZUFBTSxDQUFDLFFBQVEsQ0FBQyx3QkFBd0IsRUFBRSxHQUFHLEVBQUUsQ0FDN0MsZUFBTSxDQUFDLElBQUksQ0FDVCxvQkFBVyxDQUFDLFdBQVcsQ0FDckIsSUFBcUIsRUFDckIsWUFBWSxVQUFVLGtEQUFrRCxDQUN6RSxDQUNGLENBQ0YsRUFDRCxlQUFNLENBQUMsUUFBUSxDQUFDLGNBQWMsRUFBRSxHQUFHLEVBQUUsQ0FDbkMsZUFBTSxDQUFDLElBQUksQ0FDVCxvQkFBVyxDQUFDLFdBQVcsQ0FDckIsSUFBcUIsRUFDckIsdUZBQXVGLENBQ3hGLENBQ0YsQ0FDRixFQUNELGVBQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUM3QixjQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxJQUFJLG9CQUFXLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUM7WUFDL0QsQ0FBQyxDQUFDLGVBQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQztZQUMxQixDQUFDLENBQUMsZUFBTSxDQUFDLElBQUksQ0FDVCxvQkFBVyxDQUFDLGlCQUFpQixDQUMzQixJQUFxQixFQUNyQix1RUFBdUUsRUFDdkUsS0FBSyxDQUNOLENBQ0YsQ0FDTixFQUNELGVBQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUN2QixJQUFBLGFBQUksRUFDRixTQUFTLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUN0QixlQUFNLENBQUMsT0FBTyxDQUFDO1lBQ2IsU0FBUyxFQUFFLG9CQUFXLENBQUMsUUFBUSxDQUFDLElBQXFCLENBQUM7WUFDdEQsU0FBUyxFQUFFLGNBQUssQ0FBQyxFQUFFO1NBQ3BCLENBQUMsQ0FDSCxDQUNGLEVBQ0QsZUFBTSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FDN0IsQ0FBQztJQUNKLENBQUMsQ0FBQztJQUVGLE1BQU0saUJBQWlCLEdBQUcsQ0FDeEIsSUFBMkIsRUFDc0MsRUFBRSxDQUNuRSx1QkFBVSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FDcEMsZUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsZUFBTSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsRUFDbEUsZUFBTSxDQUFDLEdBQUcsQ0FBQyxjQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxlQUFNLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQ2pFLGVBQU0sQ0FBQyxPQUFPLENBQUMsZUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUMxQixlQUFNLENBQUMsS0FBSyxFQUNaLGVBQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtRQUNsQixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDNUMsTUFBTSxnQkFBZ0IsR0FBRyxRQUFRO2FBQzlCLE1BQU0sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFO1lBQ2xCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7Z0JBQ3JDLE1BQU0sYUFBYSxHQUFHLElBQUEsYUFBSSxFQUFDLElBQUksRUFBRSxjQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ3JELE1BQU0sY0FBYyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDbEMsSUFDRSxjQUFjLEtBQUssU0FBUztvQkFDNUIsYUFBYSxLQUFLLGNBQWMsRUFDaEMsQ0FBQztvQkFDRCxPQUFPLEtBQUssQ0FBQztnQkFDZixDQUFDO1lBQ0gsQ0FBQztZQUNELE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQyxDQUFDO2FBQ0QsT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3JFLE9BQU8sZ0JBQU8sQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNoRCxDQUFDLENBQUMsRUFDRixlQUFNLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUM3QixDQUFDO0lBRUosT0FBTyx1QkFBYyxDQUFDLFFBQVEsQ0FDNUIsdUJBQWMsQ0FBQyxRQUFRLENBQUM7UUFDdEIsSUFBSTtRQUNKLGlCQUFpQjtRQUNqQixLQUFLLEVBQUUsZ0NBQXVCLENBQUMsS0FBSztLQUNyQyxDQUFDLENBQ0gsQ0FBQztBQUNKLENBQUMsQ0FBQztBQXJIVyxRQUFBLGtCQUFrQixzQkFxSDdCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqL1xuaW1wb3J0IHsgRGVmYXVsdFNTTVNlcnZpY2VMYXllciwgU1NNU2VydmljZSB9IGZyb20gXCJAZWZmZWN0LWF3cy9jbGllbnQtc3NtXCI7XG5pbXBvcnQge1xuICBBcnJheSxcbiAgQ2F1c2UsXG4gIENvbmZpZyxcbiAgQ29uZmlnRXJyb3IsXG4gIENvbmZpZ1Byb3ZpZGVyLFxuICBDb25maWdQcm92aWRlclBhdGhQYXRjaCxcbiAgRWZmZWN0LFxuICBIYXNoU2V0LFxuICBMYXllcixcbiAgT3B0aW9uLFxuICBwaXBlLFxufSBmcm9tIFwiZWZmZWN0XCI7XG5cbi8qKlxuICogQSBjb25maWcgcHJvdmlkZXIgdGhhdCBsb2FkcyBjb25maWd1cmF0aW9uIGZyb20gQVdTIFN5c3RlbXMgTWFuYWdlciBQYXJhbWV0ZXIgU3RvcmUuXG4gKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgY29uc3RydWN0b3JzXG4gKi9cbmV4cG9ydCBjb25zdCBmcm9tUGFyYW1ldGVyU3RvcmUgPSAoY29uZmlnPzoge1xuICBwYXRoRGVsaW0/OiBzdHJpbmc7XG4gIHNlcnZpY2VMYXllcj86IExheWVyLkxheWVyPFNTTVNlcnZpY2UsIG5ldmVyLCBuZXZlcj47XG59KTogQ29uZmlnUHJvdmlkZXIuQ29uZmlnUHJvdmlkZXIgPT4ge1xuICBjb25zdCB7IHBhdGhEZWxpbSwgc2VydmljZUxheWVyIH0gPSBPYmplY3QuYXNzaWduKFxuICAgIHt9LFxuICAgIHsgcGF0aERlbGltOiBcIl9cIiwgc2VydmljZUxheWVyOiBEZWZhdWx0U1NNU2VydmljZUxheWVyIH0sXG4gICAgY29uZmlnLFxuICApO1xuICBjb25zdCBtYWtlUGF0aFN0cmluZyA9IChwYXRoOiBSZWFkb25seUFycmF5PHN0cmluZz4pOiBzdHJpbmcgPT5cbiAgICBwaXBlKHBhdGgsIEFycmF5LmpvaW4ocGF0aERlbGltKSk7XG4gIGNvbnN0IHVubWFrZVBhdGhTdHJpbmcgPSAocGF0aFN0cmluZzogc3RyaW5nKTogUmVhZG9ubHlBcnJheTxzdHJpbmc+ID0+XG4gICAgcGF0aFN0cmluZy5zcGxpdChwYXRoRGVsaW0pO1xuXG4gIGNvbnN0IGxvYWQgPSA8QT4oXG4gICAgcGF0aDogUmVhZG9ubHlBcnJheTxzdHJpbmc+LFxuICAgIHByaW1pdGl2ZTogQ29uZmlnLkNvbmZpZy5QcmltaXRpdmU8QT4sXG4gICk6IEVmZmVjdC5FZmZlY3Q8QXJyYXk8QT4sIENvbmZpZ0Vycm9yLkNvbmZpZ0Vycm9yPiA9PiB7XG4gICAgY29uc3QgcGF0aFN0cmluZyA9IG1ha2VQYXRoU3RyaW5nKHBhdGgpO1xuICAgIHJldHVybiBTU01TZXJ2aWNlLmdldFBhcmFtZXRlcih7XG4gICAgICBOYW1lOiBwYXRoU3RyaW5nLFxuICAgICAgV2l0aERlY3J5cHRpb246IHRydWUsXG4gICAgfSkucGlwZShcbiAgICAgIEVmZmVjdC5mbGF0TWFwKCh2YWx1ZSkgPT4gT3B0aW9uLmZyb21OdWxsYWJsZSh2YWx1ZS5QYXJhbWV0ZXI/LlZhbHVlKSksXG4gICAgICBFZmZlY3QuY2F0Y2hUYWcoXCJQYXJhbWV0ZXJOb3RGb3VuZFwiLCAoKSA9PlxuICAgICAgICBFZmZlY3QuZmFpbChcbiAgICAgICAgICBDb25maWdFcnJvci5NaXNzaW5nRGF0YShcbiAgICAgICAgICAgIHBhdGggYXMgQXJyYXk8c3RyaW5nPixcbiAgICAgICAgICAgIGBFeHBlY3RlZCAke3BhdGhTdHJpbmd9IHBhcmFtZXRlciB0byBleGlzdCBpbiBBV1MgU3lzdGVtcyBNYW5hZ2VyIFBhcmFtZXRlciBTdG9yZWAsXG4gICAgICAgICAgKSxcbiAgICAgICAgKSxcbiAgICAgICksXG4gICAgICBFZmZlY3QuY2F0Y2hUYWcoXCJQYXJhbWV0ZXJWZXJzaW9uTm90Rm91bmRcIiwgKCkgPT5cbiAgICAgICAgRWZmZWN0LmZhaWwoXG4gICAgICAgICAgQ29uZmlnRXJyb3IuTWlzc2luZ0RhdGEoXG4gICAgICAgICAgICBwYXRoIGFzIEFycmF5PHN0cmluZz4sXG4gICAgICAgICAgICBgRXhwZWN0ZWQgJHtwYXRoU3RyaW5nfSBwYXJhbWV0ZXIgdmVyc2lvbiB0byBleGlzdCBpbiBBV1MgU3lzdGVtcyBNYW5hZ2VyIFBhcmFtZXRlciBTdG9yZWAsXG4gICAgICAgICAgKSxcbiAgICAgICAgKSxcbiAgICAgICksXG4gICAgICBFZmZlY3QuY2F0Y2hUYWcoXCJOb1N1Y2hFbGVtZW50RXhjZXB0aW9uXCIsICgpID0+XG4gICAgICAgIEVmZmVjdC5mYWlsKFxuICAgICAgICAgIENvbmZpZ0Vycm9yLk1pc3NpbmdEYXRhKFxuICAgICAgICAgICAgcGF0aCBhcyBBcnJheTxzdHJpbmc+LFxuICAgICAgICAgICAgYEV4cGVjdGVkICR7cGF0aFN0cmluZ30gdG8gZXhpc3QgaW4gQVdTIFN5c3RlbXMgTWFuYWdlciBQYXJhbWV0ZXIgU3RvcmVgLFxuICAgICAgICAgICksXG4gICAgICAgICksXG4gICAgICApLFxuICAgICAgRWZmZWN0LmNhdGNoVGFnKFwiSW52YWxpZEtleUlkXCIsICgpID0+XG4gICAgICAgIEVmZmVjdC5mYWlsKFxuICAgICAgICAgIENvbmZpZ0Vycm9yLkludmFsaWREYXRhKFxuICAgICAgICAgICAgcGF0aCBhcyBBcnJheTxzdHJpbmc+LFxuICAgICAgICAgICAgXCJJbnZhbGlkIGtleSBJRCB3aGVuIHJldHJpZXZpbmcgY29uZmlndXJhdGlvbiBmcm9tIEFXUyBTeXN0ZW1zIE1hbmFnZXIgUGFyYW1ldGVyIFN0b3JlXCIsXG4gICAgICAgICAgKSxcbiAgICAgICAgKSxcbiAgICAgICksXG4gICAgICBFZmZlY3QuY2F0Y2hBbGxDYXVzZSgoY2F1c2UpID0+XG4gICAgICAgIENhdXNlLmlzRmFpbFR5cGUoY2F1c2UpICYmIENvbmZpZ0Vycm9yLmlzQ29uZmlnRXJyb3IoY2F1c2UuZXJyb3IpXG4gICAgICAgICAgPyBFZmZlY3QuZmFpbChjYXVzZS5lcnJvcilcbiAgICAgICAgICA6IEVmZmVjdC5mYWlsKFxuICAgICAgICAgICAgICBDb25maWdFcnJvci5Tb3VyY2VVbmF2YWlsYWJsZShcbiAgICAgICAgICAgICAgICBwYXRoIGFzIEFycmF5PHN0cmluZz4sXG4gICAgICAgICAgICAgICAgXCJGYWlsZWQgdG8gbG9hZCBjb25maWd1cmF0aW9uIGZyb20gQVdTIFN5c3RlbXMgTWFuYWdlciBQYXJhbWV0ZXIgU3RvcmVcIixcbiAgICAgICAgICAgICAgICBjYXVzZSxcbiAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICksXG4gICAgICApLFxuICAgICAgRWZmZWN0LmZsYXRNYXAoKHZhbHVlKSA9PlxuICAgICAgICBwaXBlKFxuICAgICAgICAgIHByaW1pdGl2ZS5wYXJzZSh2YWx1ZSksXG4gICAgICAgICAgRWZmZWN0Lm1hcEJvdGgoe1xuICAgICAgICAgICAgb25GYWlsdXJlOiBDb25maWdFcnJvci5wcmVmaXhlZChwYXRoIGFzIEFycmF5PHN0cmluZz4pLFxuICAgICAgICAgICAgb25TdWNjZXNzOiBBcnJheS5vZixcbiAgICAgICAgICB9KSxcbiAgICAgICAgKSxcbiAgICAgICksXG4gICAgICBFZmZlY3QucHJvdmlkZShzZXJ2aWNlTGF5ZXIpLFxuICAgICk7XG4gIH07XG5cbiAgY29uc3QgZW51bWVyYXRlQ2hpbGRyZW4gPSAoXG4gICAgcGF0aDogUmVhZG9ubHlBcnJheTxzdHJpbmc+LFxuICApOiBFZmZlY3QuRWZmZWN0PEhhc2hTZXQuSGFzaFNldDxzdHJpbmc+LCBDb25maWdFcnJvci5Db25maWdFcnJvcj4gPT5cbiAgICBTU01TZXJ2aWNlLmRlc2NyaWJlUGFyYW1ldGVycyh7fSkucGlwZShcbiAgICAgIEVmZmVjdC5mbGF0TWFwKChwYXJhbXMpID0+IE9wdGlvbi5mcm9tTnVsbGFibGUocGFyYW1zLlBhcmFtZXRlcnMpKSxcbiAgICAgIEVmZmVjdC5tYXAoQXJyYXkubWFwKChwYXJhbSkgPT4gT3B0aW9uLmZyb21OdWxsYWJsZShwYXJhbS5OYW1lKSkpLFxuICAgICAgRWZmZWN0LmZsYXRNYXAoT3B0aW9uLmFsbCksXG4gICAgICBFZmZlY3Qub3JEaWUsXG4gICAgICBFZmZlY3QubWFwKChrZXlzKSA9PiB7XG4gICAgICAgIGNvbnN0IGtleVBhdGhzID0ga2V5cy5tYXAodW5tYWtlUGF0aFN0cmluZyk7XG4gICAgICAgIGNvbnN0IGZpbHRlcmVkS2V5UGF0aHMgPSBrZXlQYXRoc1xuICAgICAgICAgIC5maWx0ZXIoKGtleVBhdGgpID0+IHtcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcGF0aC5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICBjb25zdCBwYXRoQ29tcG9uZW50ID0gcGlwZShwYXRoLCBBcnJheS51bnNhZmVHZXQoaSkpO1xuICAgICAgICAgICAgICBjb25zdCBjdXJyZW50RWxlbWVudCA9IGtleVBhdGhbaV07XG4gICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICBjdXJyZW50RWxlbWVudCA9PT0gdW5kZWZpbmVkIHx8XG4gICAgICAgICAgICAgICAgcGF0aENvbXBvbmVudCAhPT0gY3VycmVudEVsZW1lbnRcbiAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICB9KVxuICAgICAgICAgIC5mbGF0TWFwKChrZXlQYXRoKSA9PiBrZXlQYXRoLnNsaWNlKHBhdGgubGVuZ3RoLCBwYXRoLmxlbmd0aCArIDEpKTtcbiAgICAgICAgcmV0dXJuIEhhc2hTZXQuZnJvbUl0ZXJhYmxlKGZpbHRlcmVkS2V5UGF0aHMpO1xuICAgICAgfSksXG4gICAgICBFZmZlY3QucHJvdmlkZShzZXJ2aWNlTGF5ZXIpLFxuICAgICk7XG5cbiAgcmV0dXJuIENvbmZpZ1Byb3ZpZGVyLmZyb21GbGF0KFxuICAgIENvbmZpZ1Byb3ZpZGVyLm1ha2VGbGF0KHtcbiAgICAgIGxvYWQsXG4gICAgICBlbnVtZXJhdGVDaGlsZHJlbixcbiAgICAgIHBhdGNoOiBDb25maWdQcm92aWRlclBhdGhQYXRjaC5lbXB0eSxcbiAgICB9KSxcbiAgKTtcbn07XG4iXX0=
@@ -1,51 +0,0 @@
1
- /**
2
- * @since 1.0.0
3
- */
4
- import { DefaultSSMServiceLayer, SSMService } from "@effect-aws/client-ssm";
5
- import { Array, Cause, ConfigError, ConfigProvider, ConfigProviderPathPatch, Effect, HashSet, Option, pipe, } from "effect";
6
- /**
7
- * A config provider that loads configuration from AWS Systems Manager Parameter Store.
8
- *
9
- * @since 1.0.0
10
- * @category constructors
11
- */
12
- export const fromParameterStore = (config) => {
13
- const { pathDelim, serviceLayer } = Object.assign({}, { pathDelim: "_", serviceLayer: DefaultSSMServiceLayer }, config);
14
- const makePathString = (path) => pipe(path, Array.join(pathDelim));
15
- const unmakePathString = (pathString) => pathString.split(pathDelim);
16
- const load = (path, primitive) => {
17
- const pathString = makePathString(path);
18
- return SSMService.getParameter({
19
- Name: pathString,
20
- WithDecryption: true,
21
- }).pipe(Effect.flatMap((value) => { var _a; return Option.fromNullable((_a = value.Parameter) === null || _a === void 0 ? void 0 : _a.Value); }), Effect.catchTag("ParameterNotFound", () => Effect.fail(ConfigError.MissingData(path, `Expected ${pathString} parameter to exist in AWS Systems Manager Parameter Store`))), Effect.catchTag("ParameterVersionNotFound", () => Effect.fail(ConfigError.MissingData(path, `Expected ${pathString} parameter version to exist in AWS Systems Manager Parameter Store`))), Effect.catchTag("NoSuchElementException", () => Effect.fail(ConfigError.MissingData(path, `Expected ${pathString} to exist in AWS Systems Manager Parameter Store`))), Effect.catchTag("InvalidKeyId", () => Effect.fail(ConfigError.InvalidData(path, "Invalid key ID when retrieving configuration from AWS Systems Manager Parameter Store"))), Effect.catchAllCause((cause) => Cause.isFailType(cause) && ConfigError.isConfigError(cause.error)
22
- ? Effect.fail(cause.error)
23
- : Effect.fail(ConfigError.SourceUnavailable(path, "Failed to load configuration from AWS Systems Manager Parameter Store", cause))), Effect.flatMap((value) => pipe(primitive.parse(value), Effect.mapBoth({
24
- onFailure: ConfigError.prefixed(path),
25
- onSuccess: Array.of,
26
- }))), Effect.provide(serviceLayer));
27
- };
28
- const enumerateChildren = (path) => SSMService.describeParameters({}).pipe(Effect.flatMap((params) => Option.fromNullable(params.Parameters)), Effect.map(Array.map((param) => Option.fromNullable(param.Name))), Effect.flatMap(Option.all), Effect.orDie, Effect.map((keys) => {
29
- const keyPaths = keys.map(unmakePathString);
30
- const filteredKeyPaths = keyPaths
31
- .filter((keyPath) => {
32
- for (let i = 0; i < path.length; i++) {
33
- const pathComponent = pipe(path, Array.unsafeGet(i));
34
- const currentElement = keyPath[i];
35
- if (currentElement === undefined ||
36
- pathComponent !== currentElement) {
37
- return false;
38
- }
39
- }
40
- return true;
41
- })
42
- .flatMap((keyPath) => keyPath.slice(path.length, path.length + 1));
43
- return HashSet.fromIterable(filteredKeyPaths);
44
- }), Effect.provide(serviceLayer));
45
- return ConfigProvider.fromFlat(ConfigProvider.makeFlat({
46
- load,
47
- enumerateChildren,
48
- patch: ConfigProviderPathPatch.empty,
49
- }));
50
- };
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29uZmlnUHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvQ29uZmlnUHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsVUFBVSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUUsT0FBTyxFQUNMLEtBQUssRUFDTCxLQUFLLEVBRUwsV0FBVyxFQUNYLGNBQWMsRUFDZCx1QkFBdUIsRUFDdkIsTUFBTSxFQUNOLE9BQU8sRUFFUCxNQUFNLEVBQ04sSUFBSSxHQUNMLE1BQU0sUUFBUSxDQUFDO0FBRWhCOzs7OztHQUtHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsQ0FBQyxNQUdsQyxFQUFpQyxFQUFFO0lBQ2xDLE1BQU0sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FDL0MsRUFBRSxFQUNGLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxZQUFZLEVBQUUsc0JBQXNCLEVBQUUsRUFDeEQsTUFBTSxDQUNQLENBQUM7SUFDRixNQUFNLGNBQWMsR0FBRyxDQUFDLElBQTJCLEVBQVUsRUFBRSxDQUM3RCxJQUFJLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUNwQyxNQUFNLGdCQUFnQixHQUFHLENBQUMsVUFBa0IsRUFBeUIsRUFBRSxDQUNyRSxVQUFVLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBRTlCLE1BQU0sSUFBSSxHQUFHLENBQ1gsSUFBMkIsRUFDM0IsU0FBcUMsRUFDYSxFQUFFO1FBQ3BELE1BQU0sVUFBVSxHQUFHLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN4QyxPQUFPLFVBQVUsQ0FBQyxZQUFZLENBQUM7WUFDN0IsSUFBSSxFQUFFLFVBQVU7WUFDaEIsY0FBYyxFQUFFLElBQUk7U0FDckIsQ0FBQyxDQUFD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QUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7Z0JBQ3JDLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNyRCxNQUFNLGNBQWMsR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2xDLElBQ0UsY0FBYyxLQUFLLFNBQVM7b0JBQzVCLGFBQWEsS0FBSyxjQUFjLEVBQ2hDLENBQUM7b0JBQ0QsT0FBTyxLQUFLLENBQUM7Z0JBQ2YsQ0FBQztZQUNILENBQUM7WUFDRCxPQUFPLElBQUksQ0FBQztRQUNkLENBQUMsQ0FBQzthQUNELE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNyRSxPQUFPLE9BQU8sQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNoRCxDQUFDLENBQUMsRUFDRixNQUFNLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUM3QixDQUFDO0lBRUosT0FBTyxjQUFjLENBQUMsUUFBUSxDQUM1QixjQUFjLENBQUMsUUFBUSxDQUFDO1FBQ3RCLElBQUk7UUFDSixpQkFBaUI7UUFDakIsS0FBSyxFQUFFLHVCQUF1QixDQUFDLEtBQUs7S0FDckMsQ0FBQyxDQUNILENBQUM7QUFDSixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBzaW5jZSAxLjAuMFxuICovXG5pbXBvcnQgeyBEZWZhdWx0U1NNU2VydmljZUxheWVyLCBTU01TZXJ2aWNlIH0gZnJvbSBcIkBlZmZlY3QtYXdzL2NsaWVudC1zc21cIjtcbmltcG9ydCB7XG4gIEFycmF5LFxuICBDYXVzZSxcbiAgQ29uZmlnLFxuICBDb25maWdFcnJvcixcbiAgQ29uZmlnUHJvdmlkZXIsXG4gIENvbmZpZ1Byb3ZpZGVyUGF0aFBhdGNoLFxuICBFZmZlY3QsXG4gIEhhc2hTZXQsXG4gIExheWVyLFxuICBPcHRpb24sXG4gIHBpcGUsXG59IGZyb20gXCJlZmZlY3RcIjtcblxuLyoqXG4gKiBBIGNvbmZpZyBwcm92aWRlciB0aGF0IGxvYWRzIGNvbmZpZ3VyYXRpb24gZnJvbSBBV1MgU3lzdGVtcyBNYW5hZ2VyIFBhcmFtZXRlciBTdG9yZS5cbiAqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBjb25zdHJ1Y3RvcnNcbiAqL1xuZXhwb3J0IGNvbnN0IGZyb21QYXJhbWV0ZXJTdG9yZSA9IChjb25maWc/OiB7XG4gIHBhdGhEZWxpbT86IHN0cmluZztcbiAgc2VydmljZUxheWVyPzogTGF5ZXIuTGF5ZXI8U1NNU2VydmljZSwgbmV2ZXIsIG5ldmVyPjtcbn0pOiBDb25maWdQcm92aWRlci5Db25maWdQcm92aWRlciA9PiB7XG4gIGNvbnN0IHsgcGF0aERlbGltLCBzZXJ2aWNlTGF5ZXIgfSA9IE9iamVjdC5hc3NpZ24oXG4gICAge30sXG4gICAgeyBwYXRoRGVsaW06IFwiX1wiLCBzZXJ2aWNlTGF5ZXI6IERlZmF1bHRTU01TZXJ2aWNlTGF5ZXIgfSxcbiAgICBjb25maWcsXG4gICk7XG4gIGNvbnN0IG1ha2VQYXRoU3RyaW5nID0gKHBhdGg6IFJlYWRvbmx5QXJyYXk8c3RyaW5nPik6IHN0cmluZyA9PlxuICAgIHBpcGUocGF0aCwgQXJyYXkuam9pbihwYXRoRGVsaW0pKTtcbiAgY29uc3QgdW5tYWtlUGF0aFN0cmluZyA9IChwYXRoU3RyaW5nOiBzdHJpbmcpOiBSZWFkb25seUFycmF5PHN0cmluZz4gPT5cbiAgICBwYXRoU3RyaW5nLnNwbGl0KHBhdGhEZWxpbSk7XG5cbiAgY29uc3QgbG9hZCA9IDxBPihcbiAgICBwYXRoOiBSZWFkb25seUFycmF5PHN0cmluZz4sXG4gICAgcHJpbWl0aXZlOiBDb25maWcuQ29uZmlnLlByaW1pdGl2ZTxBPixcbiAgKTogRWZmZWN0LkVmZmVjdDxBcnJheTxBPiwgQ29uZmlnRXJyb3IuQ29uZmlnRXJyb3I+ID0+IHtcbiAgICBjb25zdCBwYXRoU3RyaW5nID0gbWFrZVBhdGhTdHJpbmcocGF0aCk7XG4gICAgcmV0dXJuIFNTTVNlcnZpY2UuZ2V0UGFyYW1ldGVyKHtcbiAgICAgIE5hbWU6IHBhdGhTdHJpbmcsXG4gICAgICBXaXRoRGVjcnlwdGlvbjogdHJ1ZSxcbiAgICB9KS5waXBlKFxuICAgICAgRWZmZWN0LmZsYXRNYXAoKHZhbHVlKSA9PiBPcHRpb24uZnJvbU51bGxhYmxlKHZhbHVlLlBhcmFtZXRlcj8uVmFsdWUpKSxcbiAgICAgIEVmZmVjdC5jYXRjaFRhZyhcIlBhcmFtZXRlck5vdEZvdW5kXCIsICgpID0+XG4gICAgICAgIEVmZmVjdC5mYWlsKFxuICAgICAgICAgIENvbmZpZ0Vycm9yLk1pc3NpbmdEYXRhKFxuICAgICAgICAgICAgcGF0aCBhcyBBcnJheTxzdHJpbmc+LFxuICAgICAgICAgICAgYEV4cGVjdGVkICR7cGF0aFN0cmluZ30gcGFyYW1ldGVyIHRvIGV4aXN0IGluIEFXUyBTeXN0ZW1zIE1hbmFnZXIgUGFyYW1ldGVyIFN0b3JlYCxcbiAgICAgICAgICApLFxuICAgICAgICApLFxuICAgICAgKSxcbiAgICAgIEVmZmVjdC5jYXRjaFRhZyhcIlBhcmFtZXRlclZlcnNpb25Ob3RGb3VuZFwiLCAoKSA9PlxuICAgICAgICBFZmZlY3QuZmFpbChcbiAgICAgICAgICBDb25maWdFcnJvci5NaXNzaW5nRGF0YShcbiAgICAgICAgICAgIHBhdGggYXMgQXJyYXk8c3RyaW5nPixcbiAgICAgICAgICAgIGBFeHBlY3RlZCAke3BhdGhTdHJpbmd9IHBhcmFtZXRlciB2ZXJzaW9uIHRvIGV4aXN0IGluIEFXUyBTeXN0ZW1zIE1hbmFnZXIgUGFyYW1ldGVyIFN0b3JlYCxcbiAgICAgICAgICApLFxuICAgICAgICApLFxuICAgICAgKSxcbiAgICAgIEVmZmVjdC5jYXRjaFRhZyhcIk5vU3VjaEVsZW1lbnRFeGNlcHRpb25cIiwgKCkgPT5cbiAgICAgICAgRWZmZWN0LmZhaWwoXG4gICAgICAgICAgQ29uZmlnRXJyb3IuTWlzc2luZ0RhdGEoXG4gICAgICAgICAgICBwYXRoIGFzIEFycmF5PHN0cmluZz4sXG4gICAgICAgICAgICBgRXhwZWN0ZWQgJHtwYXRoU3RyaW5nfSB0byBleGlzdCBpbiBBV1MgU3lzdGVtcyBNYW5hZ2VyIFBhcmFtZXRlciBTdG9yZWAsXG4gICAgICAgICAgKSxcbiAgICAgICAgKSxcbiAgICAgICksXG4gICAgICBFZmZlY3QuY2F0Y2hUYWcoXCJJbnZhbGlkS2V5SWRcIiwgKCkgPT5cbiAgICAgICAgRWZmZWN0LmZhaWwoXG4gICAgICAgICAgQ29uZmlnRXJyb3IuSW52YWxpZERhdGEoXG4gICAgICAgICAgICBwYXRoIGFzIEFycmF5PHN0cmluZz4sXG4gICAgICAgICAgICBcIkludmFsaWQga2V5IElEIHdoZW4gcmV0cmlldmluZyBjb25maWd1cmF0aW9uIGZyb20gQVdTIFN5c3RlbXMgTWFuYWdlciBQYXJhbWV0ZXIgU3RvcmVcIixcbiAgICAgICAgICApLFxuICAgICAgICApLFxuICAgICAgKSxcbiAgICAgIEVmZmVjdC5jYXRjaEFsbENhdXNlKChjYXVzZSkgPT5cbiAgICAgICAgQ2F1c2UuaXNGYWlsVHlwZShjYXVzZSkgJiYgQ29uZmlnRXJyb3IuaXNDb25maWdFcnJvcihjYXVzZS5lcnJvcilcbiAgICAgICAgICA/IEVmZmVjdC5mYWlsKGNhdXNlLmVycm9yKVxuICAgICAgICAgIDogRWZmZWN0LmZhaWwoXG4gICAgICAgICAgICAgIENvbmZpZ0Vycm9yLlNvdXJjZVVuYXZhaWxhYmxlKFxuICAgICAgICAgICAgICAgIHBhdGggYXMgQXJyYXk8c3RyaW5nPixcbiAgICAgICAgICAgICAgICBcIkZhaWxlZCB0byBsb2FkIGNvbmZpZ3VyYXRpb24gZnJvbSBBV1MgU3lzdGVtcyBNYW5hZ2VyIFBhcmFtZXRlciBTdG9yZVwiLFxuICAgICAgICAgICAgICAgIGNhdXNlLFxuICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgKSxcbiAgICAgICksXG4gICAgICBFZmZlY3QuZmxhdE1hcCgodmFsdWUpID0+XG4gICAgICAgIHBpcGUoXG4gICAgICAgICAgcHJpbWl0aXZlLnBhcnNlKHZhbHVlKSxcbiAgICAgICAgICBFZmZlY3QubWFwQm90aCh7XG4gICAgICAgICAgICBvbkZhaWx1cmU6IENvbmZpZ0Vycm9yLnByZWZpeGVkKHBhdGggYXMgQXJyYXk8c3RyaW5nPiksXG4gICAgICAgICAgICBvblN1Y2Nlc3M6IEFycmF5Lm9mLFxuICAgICAgICAgIH0pLFxuICAgICAgICApLFxuICAgICAgKSxcbiAgICAgIEVmZmVjdC5wcm92aWRlKHNlcnZpY2VMYXllciksXG4gICAgKTtcbiAgfTtcblxuICBjb25zdCBlbnVtZXJhdGVDaGlsZHJlbiA9IChcbiAgICBwYXRoOiBSZWFkb25seUFycmF5PHN0cmluZz4sXG4gICk6IEVmZmVjdC5FZmZlY3Q8SGFzaFNldC5IYXNoU2V0PHN0cmluZz4sIENvbmZpZ0Vycm9yLkNvbmZpZ0Vycm9yPiA9PlxuICAgIFNTTVNlcnZpY2UuZGVzY3JpYmVQYXJhbWV0ZXJzKHt9KS5waXBlKFxuICAgICAgRWZmZWN0LmZsYXRNYXAoKHBhcmFtcykgPT4gT3B0aW9uLmZyb21OdWxsYWJsZShwYXJhbXMuUGFyYW1ldGVycykpLFxuICAgICAgRWZmZWN0Lm1hcChBcnJheS5tYXAoKHBhcmFtKSA9PiBPcHRpb24uZnJvbU51bGxhYmxlKHBhcmFtLk5hbWUpKSksXG4gICAgICBFZmZlY3QuZmxhdE1hcChPcHRpb24uYWxsKSxcbiAgICAgIEVmZmVjdC5vckRpZSxcbiAgICAgIEVmZmVjdC5tYXAoKGtleXMpID0+IHtcbiAgICAgICAgY29uc3Qga2V5UGF0aHMgPSBrZXlzLm1hcCh1bm1ha2VQYXRoU3RyaW5nKTtcbiAgICAgICAgY29uc3QgZmlsdGVyZWRLZXlQYXRocyA9IGtleVBhdGhzXG4gICAgICAgICAgLmZpbHRlcigoa2V5UGF0aCkgPT4ge1xuICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwYXRoLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgIGNvbnN0IHBhdGhDb21wb25lbnQgPSBwaXBlKHBhdGgsIEFycmF5LnVuc2FmZUdldChpKSk7XG4gICAgICAgICAgICAgIGNvbnN0IGN1cnJlbnRFbGVtZW50ID0ga2V5UGF0aFtpXTtcbiAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgIGN1cnJlbnRFbGVtZW50ID09PSB1bmRlZmluZWQgfHxcbiAgICAgICAgICAgICAgICBwYXRoQ29tcG9uZW50ICE9PSBjdXJyZW50RWxlbWVudFxuICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgIH0pXG4gICAgICAgICAgLmZsYXRNYXAoKGtleVBhdGgpID0+IGtleVBhdGguc2xpY2UocGF0aC5sZW5ndGgsIHBhdGgubGVuZ3RoICsgMSkpO1xuICAgICAgICByZXR1cm4gSGFzaFNldC5mcm9tSXRlcmFibGUoZmlsdGVyZWRLZXlQYXRocyk7XG4gICAgICB9KSxcbiAgICAgIEVmZmVjdC5wcm92aWRlKHNlcnZpY2VMYXllciksXG4gICAgKTtcblxuICByZXR1cm4gQ29uZmlnUHJvdmlkZXIuZnJvbUZsYXQoXG4gICAgQ29uZmlnUHJvdmlkZXIubWFrZUZsYXQoe1xuICAgICAgbG9hZCxcbiAgICAgIGVudW1lcmF0ZUNoaWxkcmVuLFxuICAgICAgcGF0Y2g6IENvbmZpZ1Byb3ZpZGVyUGF0aFBhdGNoLmVtcHR5LFxuICAgIH0pLFxuICApO1xufTtcbiJdfQ==
package/lib/esm/index.js DELETED
@@ -1,2 +0,0 @@
1
- export * from "./ConfigProvider";
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxrQkFBa0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL0NvbmZpZ1Byb3ZpZGVyXCI7XG4iXX0=
package/lib/index.d.ts DELETED
@@ -1 +0,0 @@
1
- export * from "./ConfigProvider";
package/project.json DELETED
@@ -1,80 +0,0 @@
1
- {
2
- "name": "@effect-aws/ssm",
3
- "root": "packages/ssm",
4
- "targets": {
5
- "default": {
6
- "executor": "nx:run-commands",
7
- "options": {
8
- "command": "pnpm exec projen default",
9
- "cwd": "packages/ssm"
10
- }
11
- },
12
- "pre-compile": {
13
- "executor": "nx:run-commands",
14
- "options": {
15
- "command": "pnpm exec projen pre-compile",
16
- "cwd": "packages/ssm"
17
- }
18
- },
19
- "compile": {
20
- "executor": "nx:run-commands",
21
- "options": {
22
- "command": "pnpm exec projen compile",
23
- "cwd": "packages/ssm"
24
- }
25
- },
26
- "post-compile": {
27
- "executor": "nx:run-commands",
28
- "options": {
29
- "command": "pnpm exec projen post-compile",
30
- "cwd": "packages/ssm"
31
- }
32
- },
33
- "test": {
34
- "executor": "nx:run-commands",
35
- "options": {
36
- "command": "pnpm exec projen test",
37
- "cwd": "packages/ssm"
38
- }
39
- },
40
- "package": {
41
- "executor": "nx:run-commands",
42
- "options": {
43
- "command": "pnpm exec projen package",
44
- "cwd": "packages/ssm"
45
- }
46
- },
47
- "build": {
48
- "executor": "nx:run-commands",
49
- "options": {
50
- "command": "pnpm exec projen build",
51
- "cwd": "packages/ssm"
52
- }
53
- },
54
- "watch": {
55
- "executor": "nx:run-commands",
56
- "options": {
57
- "command": "pnpm exec projen watch",
58
- "cwd": "packages/ssm"
59
- }
60
- },
61
- "eslint": {
62
- "executor": "nx:run-commands",
63
- "options": {
64
- "command": "pnpm exec projen eslint",
65
- "cwd": "packages/ssm"
66
- }
67
- },
68
- "test:watch": {
69
- "executor": "nx:run-commands",
70
- "options": {
71
- "command": "pnpm exec projen test:watch",
72
- "cwd": "packages/ssm"
73
- }
74
- }
75
- },
76
- "implicitDependencies": [
77
- "@effect-aws/client-ssm"
78
- ],
79
- "//": "~~ Generated by projen. To modify, edit .projenrc.js and run \"npx projen\"."
80
- }
package/vitest.config.ts DELETED
@@ -1,3 +0,0 @@
1
- import configShared from "../../vitest.shared";
2
-
3
- export default configShared;