@effect-aws/client-iam 1.3.0 → 1.4.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # @effect-aws/client-iam
2
2
 
3
+ ## 1.4.1
4
+
5
+ ### Patch Changes
6
+
7
+ - [#75](https://github.com/floydspace/effect-aws/pull/75) [`9dc170d`](https://github.com/floydspace/effect-aws/commit/9dc170d975c04888bbc7ca7b241b4b5265668fb5) Thanks [@godu](https://github.com/godu)! - export the HttpHandlerOptions type
8
+
9
+ ## 1.4.0
10
+
11
+ ### Minor Changes
12
+
13
+ - [`e540420`](https://github.com/floydspace/effect-aws/commit/e5404208c2438e1e1546637a8edbbdc1c9468850) Thanks [@floydspace](https://github.com/floydspace)! - integrate aws-sdk abort signal with effect interruption
14
+
3
15
  ## 1.3.0
4
16
 
5
17
  ### Minor Changes
package/README.md CHANGED
@@ -1 +1,85 @@
1
- # replace this
1
+ # @effect-aws/client-iam
2
+
3
+ [![npm version](https://img.shields.io/npm/v/%40effect-aws%2Fclient-iam?color=brightgreen&label=npm%20package)](https://www.npmjs.com/package/@effect-aws/client-iam)
4
+ [![npm downloads](https://img.shields.io/npm/dm/%40effect-aws%2Fclient-iam)](https://www.npmjs.com/package/@effect-aws/client-iam)
5
+
6
+ ## Installation
7
+
8
+ ```bash
9
+ npm install --save @effect-aws/client-iam
10
+ ```
11
+
12
+ ## Usage
13
+
14
+ With default IAMClient instance:
15
+
16
+ ```typescript
17
+ import { IAMService, DefaultIAMServiceLayer } from "@effect-aws/client-iam";
18
+
19
+ const program = IAMService.createRole(args);
20
+
21
+ const result = pipe(
22
+ program,
23
+ Effect.provide(DefaultIAMServiceLayer),
24
+ Effect.runPromise,
25
+ );
26
+ ```
27
+
28
+ With custom IAMClient instance:
29
+
30
+ ```typescript
31
+ import {
32
+ IAMService,
33
+ BaseIAMServiceLayer,
34
+ IAMClientInstance,
35
+ } from "@effect-aws/client-iam";
36
+
37
+ const program = IAMService.createRole(args);
38
+
39
+ const IAMClientInstanceLayer = Layer.succeed(
40
+ IAMClientInstance,
41
+ new IAMClient({ region: "eu-central-1" }),
42
+ );
43
+
44
+ const result = await pipe(
45
+ program,
46
+ Effect.provide(BaseIAMServiceLayer),
47
+ Effect.provide(IAMClientInstanceLayer),
48
+ Effect.runPromise,
49
+ );
50
+ ```
51
+
52
+ With custom IAMClient configuration:
53
+
54
+ ```typescript
55
+ import {
56
+ IAMService,
57
+ BaseIAMServiceLayer,
58
+ DefaultIAMClientConfigLayer,
59
+ IAMClientInstance,
60
+ IAMClientInstanceConfig,
61
+ } from "@effect-aws/client-iam";
62
+
63
+ const program = IAMService.createRole(args);
64
+
65
+ const IAMClientInstanceLayer = Layer.provide(
66
+ Layer.effect(
67
+ IAMClientInstance,
68
+ IAMClientInstanceConfig.pipe(
69
+ Effect.map(
70
+ (config) => new IAMClient({ ...config, region: "eu-central-1" }),
71
+ ),
72
+ ),
73
+ ),
74
+ DefaultIAMClientConfigLayer,
75
+ );
76
+
77
+ const result = await pipe(
78
+ program,
79
+ Effect.provide(BaseIAMServiceLayer),
80
+ Effect.provide(IAMClientInstanceLayer),
81
+ Effect.runPromiseExit,
82
+ );
83
+ ```
84
+
85
+ or map over `DefaultIAMClientConfigLayer` layer context and update the configuration...