@effect-aws/client-ec2 1.10.9 → 2.0.0-beta.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 (42) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +3 -3
  3. package/dist/dts/EC2ClientInstance.d.ts +2 -2
  4. package/dist/dts/EC2ClientInstance.d.ts.map +1 -1
  5. package/dist/dts/EC2Service.d.ts +780 -754
  6. package/dist/dts/EC2Service.d.ts.map +1 -1
  7. package/dist/dts/EC2ServiceConfig.d.ts.map +1 -1
  8. package/dist/dts/Errors.d.ts +7 -4
  9. package/dist/dts/Errors.d.ts.map +1 -1
  10. package/dist/esm/EC2ClientInstance.js +3 -3
  11. package/dist/esm/EC2ClientInstance.js.map +1 -1
  12. package/dist/esm/EC2Service.js +10 -3
  13. package/dist/esm/EC2Service.js.map +1 -1
  14. package/dist/esm/EC2ServiceConfig.js +5 -6
  15. package/dist/esm/EC2ServiceConfig.js.map +1 -1
  16. package/dist/esm/Errors.js +2 -1
  17. package/dist/esm/Errors.js.map +1 -1
  18. package/package.json +8 -14
  19. package/src/EC2ClientInstance.ts +4 -4
  20. package/src/EC2Service.ts +857 -752
  21. package/src/EC2ServiceConfig.ts +6 -7
  22. package/src/Errors.ts +5 -4
  23. package/dist/cjs/EC2ClientInstance.d.ts +0 -24
  24. package/dist/cjs/EC2ClientInstance.d.ts.map +0 -1
  25. package/dist/cjs/EC2ClientInstance.js +0 -50
  26. package/dist/cjs/EC2ClientInstance.js.map +0 -1
  27. package/dist/cjs/EC2Service.d.ts +0 -3042
  28. package/dist/cjs/EC2Service.d.ts.map +0 -1
  29. package/dist/cjs/EC2Service.js +0 -806
  30. package/dist/cjs/EC2Service.js.map +0 -1
  31. package/dist/cjs/EC2ServiceConfig.d.ts +0 -25
  32. package/dist/cjs/EC2ServiceConfig.d.ts.map +0 -1
  33. package/dist/cjs/EC2ServiceConfig.js +0 -35
  34. package/dist/cjs/EC2ServiceConfig.js.map +0 -1
  35. package/dist/cjs/Errors.d.ts +0 -11
  36. package/dist/cjs/Errors.d.ts.map +0 -1
  37. package/dist/cjs/Errors.js +0 -6
  38. package/dist/cjs/Errors.js.map +0 -1
  39. package/dist/cjs/index.d.ts +0 -44
  40. package/dist/cjs/index.d.ts.map +0 -1
  41. package/dist/cjs/index.js +0 -56
  42. package/dist/cjs/index.js.map +0 -1
@@ -3,18 +3,17 @@
3
3
  */
4
4
  import type { EC2ClientConfig } from "@aws-sdk/client-ec2";
5
5
  import { ServiceLogger } from "@effect-aws/commons";
6
- import { Effect, FiberRef, Layer } from "effect";
6
+ import { Effect, Layer, ServiceMap } from "effect";
7
7
  import { dual } from "effect/Function";
8
- import { globalValue } from "effect/GlobalValue";
9
8
  import type { EC2Service } from "./EC2Service.js";
10
9
 
11
10
  /**
12
11
  * @since 1.0.0
13
12
  * @category ec2 service config
14
13
  */
15
- const currentEC2ServiceConfig = globalValue(
14
+ const currentEC2ServiceConfig = ServiceMap.Reference<EC2Service.Config>(
16
15
  "@effect-aws/client-ec2/currentEC2ServiceConfig",
17
- () => FiberRef.unsafeMake<EC2Service.Config>({}),
16
+ { defaultValue: () => ({}) },
18
17
  );
19
18
 
20
19
  /**
@@ -27,21 +26,21 @@ export const withEC2ServiceConfig: {
27
26
  } = dual(
28
27
  2,
29
28
  <A, E, R>(effect: Effect.Effect<A, E, R>, config: EC2Service.Config): Effect.Effect<A, E, R> =>
30
- Effect.locally(effect, currentEC2ServiceConfig, config),
29
+ Effect.provideService(effect, currentEC2ServiceConfig, config),
31
30
  );
32
31
 
33
32
  /**
34
33
  * @since 1.0.0
35
34
  * @category ec2 service config
36
35
  */
37
- export const setEC2ServiceConfig = (config: EC2Service.Config) => Layer.locallyScoped(currentEC2ServiceConfig, config);
36
+ export const setEC2ServiceConfig = (config: EC2Service.Config) => Layer.succeed(currentEC2ServiceConfig, config);
38
37
 
39
38
  /**
40
39
  * @since 1.0.0
41
40
  * @category adapters
42
41
  */
43
42
  export const toEC2ClientConfig: Effect.Effect<EC2ClientConfig> = Effect.gen(function*() {
44
- const { logger: serviceLogger, ...config } = yield* FiberRef.get(currentEC2ServiceConfig);
43
+ const { logger: serviceLogger, ...config } = yield* currentEC2ServiceConfig;
45
44
 
46
45
  const logger = serviceLogger === true
47
46
  ? yield* ServiceLogger.toClientLogger(ServiceLogger.defaultServiceLogger)
package/src/Errors.ts CHANGED
@@ -2,9 +2,10 @@ import type { EC2ServiceException } from "@aws-sdk/client-ec2";
2
2
  import type { TaggedException } from "@effect-aws/commons";
3
3
  import { Data } from "effect";
4
4
 
5
- export type EC2ServiceError = TaggedException<
6
- EC2ServiceException & { name: "EC2ServiceError" }
7
- >;
8
- export const EC2ServiceError = Data.tagged<EC2ServiceError>("EC2ServiceError");
5
+ export class EC2ServiceError extends Data.TaggedError("EC2ServiceError")<
6
+ TaggedException<
7
+ EC2ServiceException & { name: "EC2ServiceError" }
8
+ >
9
+ > {}
9
10
 
10
11
  export type SdkError = TaggedException<Error & { name: "SdkError" }>;
@@ -1,24 +0,0 @@
1
- /**
2
- * @since 1.0.0
3
- */
4
- import { EC2Client } from "@aws-sdk/client-ec2";
5
- import { Context, Effect, Layer } from "effect";
6
- declare const EC2ClientInstance_base: Context.TagClass<EC2ClientInstance, "@effect-aws/client-ec2/EC2ClientInstance", EC2Client>;
7
- /**
8
- * @since 1.0.0
9
- * @category tags
10
- */
11
- export declare class EC2ClientInstance extends EC2ClientInstance_base {
12
- }
13
- /**
14
- * @since 1.0.0
15
- * @category constructors
16
- */
17
- export declare const make: Effect.Effect<EC2Client, never, import("effect/Scope").Scope>;
18
- /**
19
- * @since 1.0.0
20
- * @category layers
21
- */
22
- export declare const layer: Layer.Layer<EC2ClientInstance, never, never>;
23
- export {};
24
- //# sourceMappingURL=EC2ClientInstance.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EC2ClientInstance.d.ts","sourceRoot":"","sources":["../../src/EC2ClientInstance.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;;AAGhD;;;GAGG;AACH,qBAAa,iBAAkB,SAAQ,sBAEN;CAAG;AAEpC;;;GAGG;AACH,eAAO,MAAM,IAAI,+DAOhB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,KAAK,8CAAwC,CAAC"}
@@ -1,50 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.layer = exports.make = exports.EC2ClientInstance = void 0;
27
- /**
28
- * @since 1.0.0
29
- */
30
- const client_ec2_1 = require("@aws-sdk/client-ec2");
31
- const effect_1 = require("effect");
32
- const EC2ServiceConfig = __importStar(require("./EC2ServiceConfig.js"));
33
- /**
34
- * @since 1.0.0
35
- * @category tags
36
- */
37
- class EC2ClientInstance extends effect_1.Context.Tag("@effect-aws/client-ec2/EC2ClientInstance")() {
38
- }
39
- exports.EC2ClientInstance = EC2ClientInstance;
40
- /**
41
- * @since 1.0.0
42
- * @category constructors
43
- */
44
- exports.make = effect_1.Effect.flatMap(EC2ServiceConfig.toEC2ClientConfig, (config) => effect_1.Effect.acquireRelease(effect_1.Effect.sync(() => new client_ec2_1.EC2Client(config)), (client) => effect_1.Effect.sync(() => client.destroy())));
45
- /**
46
- * @since 1.0.0
47
- * @category layers
48
- */
49
- exports.layer = effect_1.Layer.scoped(EC2ClientInstance, exports.make);
50
- //# sourceMappingURL=EC2ClientInstance.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EC2ClientInstance.js","sourceRoot":"","sources":["../../src/EC2ClientInstance.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;GAEG;AACH,oDAAgD;AAChD,mCAAgD;AAChD,wEAA0D;AAE1D;;;GAGG;AACH,MAAa,iBAAkB,SAAQ,gBAAO,CAAC,GAAG,CAChD,0CAA0C,CAC3C,EAAgC;CAAG;AAFpC,8CAEoC;AAEpC;;;GAGG;AACU,QAAA,IAAI,GAAG,eAAM,CAAC,OAAO,CAChC,gBAAgB,CAAC,iBAAiB,EAClC,CAAC,MAAM,EAAE,EAAE,CACT,eAAM,CAAC,cAAc,CACnB,eAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,sBAAS,CAAC,MAAM,CAAC,CAAC,EACxC,CAAC,MAAM,EAAE,EAAE,CAAC,eAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAChD,CACJ,CAAC;AAEF;;;GAGG;AACU,QAAA,KAAK,GAAG,cAAK,CAAC,MAAM,CAAC,iBAAiB,EAAE,YAAI,CAAC,CAAC"}