@effect-aws/client-ivs 1.10.5

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 (53) hide show
  1. package/Errors/package.json +6 -0
  2. package/IvsClientInstance/package.json +6 -0
  3. package/IvsService/package.json +6 -0
  4. package/IvsServiceConfig/package.json +6 -0
  5. package/LICENSE +19 -0
  6. package/README.md +58 -0
  7. package/dist/cjs/Errors.d.ts +17 -0
  8. package/dist/cjs/Errors.d.ts.map +1 -0
  9. package/dist/cjs/Errors.js +16 -0
  10. package/dist/cjs/Errors.js.map +1 -0
  11. package/dist/cjs/IvsClientInstance.d.ts +24 -0
  12. package/dist/cjs/IvsClientInstance.d.ts.map +1 -0
  13. package/dist/cjs/IvsClientInstance.js +50 -0
  14. package/dist/cjs/IvsClientInstance.js.map +1 -0
  15. package/dist/cjs/IvsService.d.ts +186 -0
  16. package/dist/cjs/IvsService.d.ts.map +1 -0
  17. package/dist/cjs/IvsService.js +94 -0
  18. package/dist/cjs/IvsService.js.map +1 -0
  19. package/dist/cjs/IvsServiceConfig.d.ts +25 -0
  20. package/dist/cjs/IvsServiceConfig.d.ts.map +1 -0
  21. package/dist/cjs/IvsServiceConfig.js +35 -0
  22. package/dist/cjs/IvsServiceConfig.js.map +1 -0
  23. package/dist/cjs/index.d.ts +44 -0
  24. package/dist/cjs/index.d.ts.map +1 -0
  25. package/dist/cjs/index.js +56 -0
  26. package/dist/cjs/index.js.map +1 -0
  27. package/dist/dts/Errors.d.ts +17 -0
  28. package/dist/dts/Errors.d.ts.map +1 -0
  29. package/dist/dts/IvsClientInstance.d.ts +24 -0
  30. package/dist/dts/IvsClientInstance.d.ts.map +1 -0
  31. package/dist/dts/IvsService.d.ts +186 -0
  32. package/dist/dts/IvsService.d.ts.map +1 -0
  33. package/dist/dts/IvsServiceConfig.d.ts +25 -0
  34. package/dist/dts/IvsServiceConfig.d.ts.map +1 -0
  35. package/dist/dts/index.d.ts +44 -0
  36. package/dist/dts/index.d.ts.map +1 -0
  37. package/dist/esm/Errors.js +13 -0
  38. package/dist/esm/Errors.js.map +1 -0
  39. package/dist/esm/IvsClientInstance.js +23 -0
  40. package/dist/esm/IvsClientInstance.js.map +1 -0
  41. package/dist/esm/IvsService.js +67 -0
  42. package/dist/esm/IvsService.js.map +1 -0
  43. package/dist/esm/IvsServiceConfig.js +31 -0
  44. package/dist/esm/IvsServiceConfig.js.map +1 -0
  45. package/dist/esm/index.js +27 -0
  46. package/dist/esm/index.js.map +1 -0
  47. package/dist/esm/package.json +4 -0
  48. package/package.json +71 -0
  49. package/src/Errors.ts +38 -0
  50. package/src/IvsClientInstance.ts +33 -0
  51. package/src/IvsService.ts +725 -0
  52. package/src/IvsServiceConfig.ts +51 -0
  53. package/src/index.ts +50 -0
@@ -0,0 +1,51 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ import type { IvsClientConfig } from "@aws-sdk/client-ivs";
5
+ import { ServiceLogger } from "@effect-aws/commons";
6
+ import { Effect, FiberRef, Layer } from "effect";
7
+ import { dual } from "effect/Function";
8
+ import { globalValue } from "effect/GlobalValue";
9
+ import type { IvsService } from "./IvsService.js";
10
+
11
+ /**
12
+ * @since 1.0.0
13
+ * @category ivs service config
14
+ */
15
+ const currentIvsServiceConfig = globalValue(
16
+ "@effect-aws/client-ivs/currentIvsServiceConfig",
17
+ () => FiberRef.unsafeMake<IvsService.Config>({}),
18
+ );
19
+
20
+ /**
21
+ * @since 1.0.0
22
+ * @category ivs service config
23
+ */
24
+ export const withIvsServiceConfig: {
25
+ (config: IvsService.Config): <A, E, R>(effect: Effect.Effect<A, E, R>) => Effect.Effect<A, E, R>;
26
+ <A, E, R>(effect: Effect.Effect<A, E, R>, config: IvsService.Config): Effect.Effect<A, E, R>;
27
+ } = dual(
28
+ 2,
29
+ <A, E, R>(effect: Effect.Effect<A, E, R>, config: IvsService.Config): Effect.Effect<A, E, R> =>
30
+ Effect.locally(effect, currentIvsServiceConfig, config),
31
+ );
32
+
33
+ /**
34
+ * @since 1.0.0
35
+ * @category ivs service config
36
+ */
37
+ export const setIvsServiceConfig = (config: IvsService.Config) => Layer.locallyScoped(currentIvsServiceConfig, config);
38
+
39
+ /**
40
+ * @since 1.0.0
41
+ * @category adapters
42
+ */
43
+ export const toIvsClientConfig: Effect.Effect<IvsClientConfig> = Effect.gen(function*() {
44
+ const { logger: serviceLogger, ...config } = yield* FiberRef.get(currentIvsServiceConfig);
45
+
46
+ const logger = serviceLogger === true
47
+ ? yield* ServiceLogger.toClientLogger(ServiceLogger.defaultServiceLogger)
48
+ : (serviceLogger ? yield* ServiceLogger.toClientLogger(ServiceLogger.make(serviceLogger)) : undefined);
49
+
50
+ return { logger, ...config };
51
+ });
package/src/index.ts ADDED
@@ -0,0 +1,50 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ import { IvsService } from "./IvsService.js";
5
+
6
+ /**
7
+ * @since 1.0.0
8
+ */
9
+ export * from "./Errors.js";
10
+
11
+ /**
12
+ * @since 1.0.0
13
+ */
14
+ export * as IvsClientInstance from "./IvsClientInstance.js";
15
+
16
+ /**
17
+ * @since 1.0.0
18
+ */
19
+ export * as IvsServiceConfig from "./IvsServiceConfig.js";
20
+
21
+ /**
22
+ * @since 1.0.0
23
+ */
24
+ export * from "./IvsService.js";
25
+
26
+ /**
27
+ * @since 1.0.0
28
+ * @category exports
29
+ * @alias IvsService
30
+ */
31
+ export declare namespace Ivs {
32
+ /**
33
+ * @since 1.0.0
34
+ * @alias IvsService.Config
35
+ */
36
+ export type Config = IvsService.Config;
37
+
38
+ /**
39
+ * @since 1.0.0
40
+ * @alias IvsService.Type
41
+ */
42
+ export type Type = IvsService.Type;
43
+ }
44
+
45
+ /**
46
+ * @since 1.0.0
47
+ * @category exports
48
+ * @alias IvsService
49
+ */
50
+ export const Ivs = IvsService;