@effect-aws/client-s3 1.6.0 → 1.9.3

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 (68) hide show
  1. package/Errors/package.json +6 -0
  2. package/S3ClientInstance/package.json +6 -0
  3. package/S3Service/package.json +6 -0
  4. package/S3ServiceConfig/package.json +6 -0
  5. package/{lib → dist/cjs}/Errors.d.ts +6 -10
  6. package/dist/cjs/Errors.d.ts.map +1 -0
  7. package/dist/cjs/Errors.js +23 -0
  8. package/dist/cjs/Errors.js.map +1 -0
  9. package/dist/cjs/S3ClientInstance.d.ts +24 -0
  10. package/dist/cjs/S3ClientInstance.d.ts.map +1 -0
  11. package/dist/cjs/S3ClientInstance.js +50 -0
  12. package/dist/cjs/S3ClientInstance.js.map +1 -0
  13. package/{lib → dist/cjs}/S3Service.d.ts +17 -137
  14. package/dist/cjs/S3Service.d.ts.map +1 -0
  15. package/dist/cjs/S3Service.js +164 -0
  16. package/dist/cjs/S3Service.js.map +1 -0
  17. package/dist/cjs/S3ServiceConfig.d.ts +25 -0
  18. package/dist/cjs/S3ServiceConfig.d.ts.map +1 -0
  19. package/dist/cjs/S3ServiceConfig.js +35 -0
  20. package/dist/cjs/S3ServiceConfig.js.map +1 -0
  21. package/dist/cjs/index.d.ts +39 -0
  22. package/dist/cjs/index.d.ts.map +1 -0
  23. package/dist/cjs/index.js +56 -0
  24. package/dist/cjs/index.js.map +1 -0
  25. package/dist/dts/Errors.d.ts +25 -0
  26. package/dist/dts/Errors.d.ts.map +1 -0
  27. package/dist/dts/S3ClientInstance.d.ts +24 -0
  28. package/dist/dts/S3ClientInstance.d.ts.map +1 -0
  29. package/dist/dts/S3Service.d.ts +446 -0
  30. package/dist/dts/S3Service.d.ts.map +1 -0
  31. package/dist/dts/S3ServiceConfig.d.ts +25 -0
  32. package/dist/dts/S3ServiceConfig.d.ts.map +1 -0
  33. package/dist/dts/index.d.ts +39 -0
  34. package/dist/dts/index.d.ts.map +1 -0
  35. package/dist/esm/Errors.js +20 -0
  36. package/dist/esm/Errors.js.map +1 -0
  37. package/dist/esm/S3ClientInstance.js +23 -0
  38. package/dist/esm/S3ClientInstance.js.map +1 -0
  39. package/dist/esm/S3Service.js +137 -0
  40. package/dist/esm/S3Service.js.map +1 -0
  41. package/dist/esm/S3ServiceConfig.js +31 -0
  42. package/dist/esm/S3ServiceConfig.js.map +1 -0
  43. package/dist/esm/index.js +27 -0
  44. package/dist/esm/index.js.map +1 -0
  45. package/dist/esm/package.json +4 -0
  46. package/package.json +61 -44
  47. package/src/Errors.ts +56 -0
  48. package/src/S3ClientInstance.ts +33 -0
  49. package/src/S3Service.ts +1584 -0
  50. package/src/S3ServiceConfig.ts +51 -0
  51. package/src/index.ts +44 -0
  52. package/CHANGELOG.md +0 -137
  53. package/docgen.json +0 -8
  54. package/lib/Errors.js +0 -22
  55. package/lib/S3ClientInstance.d.ts +0 -31
  56. package/lib/S3ClientInstance.js +0 -57
  57. package/lib/S3ClientInstanceConfig.d.ts +0 -23
  58. package/lib/S3ClientInstanceConfig.js +0 -44
  59. package/lib/S3Service.js +0 -192
  60. package/lib/esm/Errors.js +0 -19
  61. package/lib/esm/S3ClientInstance.js +0 -30
  62. package/lib/esm/S3ClientInstanceConfig.js +0 -40
  63. package/lib/esm/S3Service.js +0 -188
  64. package/lib/esm/index.js +0 -5
  65. package/lib/index.d.ts +0 -4
  66. package/lib/index.js +0 -21
  67. package/project.json +0 -77
  68. package/vitest.config.ts +0 -3
@@ -0,0 +1,51 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ import type { S3ClientConfig } from "@aws-sdk/client-s3";
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 { S3Service } from "./S3Service.js";
10
+
11
+ /**
12
+ * @since 1.0.0
13
+ * @category s3 service config
14
+ */
15
+ const currentS3ServiceConfig = globalValue(
16
+ "@effect-aws/client-s3/currentS3ServiceConfig",
17
+ () => FiberRef.unsafeMake<S3Service.Config>({}),
18
+ );
19
+
20
+ /**
21
+ * @since 1.0.0
22
+ * @category s3 service config
23
+ */
24
+ export const withS3ServiceConfig: {
25
+ (config: S3Service.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: S3Service.Config): Effect.Effect<A, E, R>;
27
+ } = dual(
28
+ 2,
29
+ <A, E, R>(effect: Effect.Effect<A, E, R>, config: S3Service.Config): Effect.Effect<A, E, R> =>
30
+ Effect.locally(effect, currentS3ServiceConfig, config),
31
+ );
32
+
33
+ /**
34
+ * @since 1.0.0
35
+ * @category s3 service config
36
+ */
37
+ export const setS3ServiceConfig = (config: S3Service.Config) => Layer.locallyScoped(currentS3ServiceConfig, config);
38
+
39
+ /**
40
+ * @since 1.0.0
41
+ * @category adapters
42
+ */
43
+ export const toS3ClientConfig: Effect.Effect<S3ClientConfig> = Effect.gen(function*() {
44
+ const { logger: serviceLogger, ...config } = yield* FiberRef.get(currentS3ServiceConfig);
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,44 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ import { S3Service } from "./S3Service.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 S3ClientInstance from "./S3ClientInstance.js";
15
+
16
+ /**
17
+ * @since 1.0.0
18
+ */
19
+ export * as S3ServiceConfig from "./S3ServiceConfig.js";
20
+
21
+ /**
22
+ * @since 1.0.0
23
+ */
24
+ export * from "./S3Service.js";
25
+
26
+ /**
27
+ * @since 1.0.0
28
+ * @category exports
29
+ * @alias S3Service
30
+ */
31
+ export declare namespace S3 {
32
+ /**
33
+ * @since 1.0.0
34
+ * @alias S3Service.Config
35
+ */
36
+ export type Config = S3Service.Config;
37
+ }
38
+
39
+ /**
40
+ * @since 1.0.0
41
+ * @category exports
42
+ * @alias S3Service
43
+ */
44
+ export const S3 = S3Service;
package/CHANGELOG.md DELETED
@@ -1,137 +0,0 @@
1
- # @effect-aws/client-s3
2
-
3
- ## 1.6.0
4
-
5
- ### Minor Changes
6
-
7
- - [`ca9ea34`](https://github.com/floydspace/effect-aws/commit/ca9ea3451567a2ab25a5919ea79b9169605890d6) Thanks [@floydspace](https://github.com/floydspace)! - updates is sdk client functions
8
-
9
- - [#93](https://github.com/floydspace/effect-aws/pull/93) [`a96fbd8`](https://github.com/floydspace/effect-aws/commit/a96fbd8840a7a6cfb795a2a6ab96aa32d32a3525) Thanks [@godu](https://github.com/godu)! - Destroy client after layer lifecycle to release idle connections.
10
-
11
- ## 1.5.1
12
-
13
- ### Patch Changes
14
-
15
- - [`a17e239`](https://github.com/floydspace/effect-aws/commit/a17e239530a7050459b78b4781a4c8ce8dcbc32b) Thanks [@floydspace](https://github.com/floydspace)! - Fix service level function types exporting when using overloading
16
-
17
- ## 1.5.0
18
-
19
- ### Minor Changes
20
-
21
- - [#80](https://github.com/floydspace/effect-aws/pull/80) [`4b16fbe`](https://github.com/floydspace/effect-aws/commit/4b16fbebce8131df7798ee92f43cf6b7df3e907c) Thanks [@floydspace](https://github.com/floydspace)! - simplify layers configuration (closes #78)
22
-
23
- ## 1.4.1
24
-
25
- ### Patch Changes
26
-
27
- - [#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
28
-
29
- ## 1.4.0
30
-
31
- ### Minor Changes
32
-
33
- - [`dfddb5a`](https://github.com/floydspace/effect-aws/commit/dfddb5a5f1f3c2bacb27ddbfbe9b65e1a5cea6e7) Thanks [@floydspace](https://github.com/floydspace)! - replace generic tag with effect tag for ec2 and s3 services
34
-
35
- - [`e540420`](https://github.com/floydspace/effect-aws/commit/e5404208c2438e1e1546637a8edbbdc1c9468850) Thanks [@floydspace](https://github.com/floydspace)! - integrate aws-sdk abort signal with effect interruption
36
-
37
- ## 1.3.0
38
-
39
- ### Minor Changes
40
-
41
- - [`0cfcda0`](https://github.com/floydspace/effect-aws/commit/0cfcda0d5617916d966807f5d5120df9ba461c12) Thanks [@floydspace](https://github.com/floydspace)! - upgrade effect to v3
42
-
43
- ## 1.2.0
44
-
45
- ### Minor Changes
46
-
47
- - [#42](https://github.com/floydspace/effect-aws/pull/42) [`2fd893a`](https://github.com/floydspace/effect-aws/commit/2fd893abe4bcc2b4d7c3bc346cc618ca704171f3) Thanks [@godu](https://github.com/godu)! - extended errors in s3 service
48
-
49
- ## 1.1.1
50
-
51
- ### Patch Changes
52
-
53
- - [`b2f00db`](https://github.com/floydspace/effect-aws/commit/b2f00db5fdffaa74bcb124324db7313bd4f218df) Thanks [@floydspace](https://github.com/floydspace)! - update effect peer version
54
-
55
- ## 1.1.0
56
-
57
- ### Minor Changes
58
-
59
- - [`82eaea7`](https://github.com/floydspace/effect-aws/commit/82eaea778048c9ebba98682196448b0aa1586d2e) Thanks [@floydspace](https://github.com/floydspace)! - upgrade effect to v2.3 and fix breaking changes
60
-
61
- ## 1.0.2
62
-
63
- ### Patch Changes
64
-
65
- - [`88676ae`](https://github.com/floydspace/effect-aws/commit/88676ae3a5f7fa514cab58ba83a50a0774be1aa1) Thanks [@floydspace](https://github.com/floydspace)! - use effect@~2.2 as maximum allowed peer version
66
-
67
- ## 1.0.1
68
-
69
- ### Patch Changes
70
-
71
- - [#29](https://github.com/floydspace/effect-aws/pull/29) [`4b6c521`](https://github.com/floydspace/effect-aws/commit/4b6c521206c8ff76ff878938f6b90ee474cc8da2) Thanks [@godu](https://github.com/godu)! - improve tree shaking by using sideEffects flag
72
-
73
- ## 1.0.0
74
-
75
- ### Major Changes
76
-
77
- - [`3e5d0b3`](https://github.com/floydspace/effect-aws/commit/3e5d0b3b3882e0aa6d07bc06432990551316ac30) Thanks [@floydspace](https://github.com/floydspace)! - Upgrade to effect v2 and release stable version
78
-
79
- ## 0.7.0
80
-
81
- ### Minor Changes
82
-
83
- - [`744df3c`](https://github.com/floydspace/effect-aws/commit/744df3ca6406b3a35e3066d5fe11ca7082c4c454) Thanks [@floydspace](https://github.com/floydspace)! - upgrade effect dependency
84
-
85
- ## 0.6.0
86
-
87
- ### Minor Changes
88
-
89
- - [`0a969d8`](https://github.com/floydspace/effect-aws/commit/0a969d8a74c3bf1b87ff6a1c8bf689af849797e1) Thanks [@floydspace](https://github.com/floydspace)! - upgrade effect peer version
90
-
91
- ## 0.5.0
92
-
93
- ### Minor Changes
94
-
95
- - [`280d8bd`](https://github.com/floydspace/effect-aws/commit/280d8bd6686d6e7a2b73322a047e8eb22263b1e1) Thanks [@floydspace](https://github.com/floydspace)! - add an ability return presined url for getObject and putObject
96
-
97
- - [`c3b6768`](https://github.com/floydspace/effect-aws/commit/c3b6768ec54b62e05f8fbb771cb890ba6aee27c2) Thanks [@floydspace](https://github.com/floydspace)! - return tagged errors in the failure channel
98
-
99
- ### Patch Changes
100
-
101
- - [`280d8bd`](https://github.com/floydspace/effect-aws/commit/280d8bd6686d6e7a2b73322a047e8eb22263b1e1) Thanks [@floydspace](https://github.com/floydspace)! - upgrade dependencies
102
-
103
- ## 0.4.1
104
-
105
- ### Patch Changes
106
-
107
- - [`6b99904`](https://github.com/floydspace/effect-aws/commit/6b9990497bdb20f240d8261b6382db421e9a3ec2) Thanks [@floydspace](https://github.com/floydspace)! - as @mikearnaldi said: "we should really never do tacit passing"
108
-
109
- ## 0.4.0
110
-
111
- ### Minor Changes
112
-
113
- - [#14](https://github.com/floydspace/effect-aws/pull/14) [`cddfb74`](https://github.com/floydspace/effect-aws/commit/cddfb74a00b10a13ccfe3749e90961119c4f0906) Thanks [@floydspace](https://github.com/floydspace)! - upgrade effect version to the next one
114
-
115
- ## 0.3.0
116
-
117
- ### Minor Changes
118
-
119
- - [`d7d6c50`](https://github.com/floydspace/effect-aws/commit/d7d6c500de9aa538f76a5b8cfc9ffac741210d33) Thanks [@floydspace](https://github.com/floydspace)! - introduce tagged clients options for better narrowing
120
-
121
- ## 0.2.1
122
-
123
- ### Patch Changes
124
-
125
- - [`f7e9e3e`](https://github.com/floydspace/effect-aws/commit/f7e9e3ed4c2cb5dc0e0b9e0895278307a182a0d2) Thanks [@floydspace](https://github.com/floydspace)! - correct way of propagating default logger instance inside S3Client, thanks to @mikearnaldi
126
-
127
- ## 0.2.0
128
-
129
- ### Minor Changes
130
-
131
- - [`73d43f9`](https://github.com/floydspace/effect-aws/commit/73d43f94752109bdad9682b8260e8f84ac8c6d5b) Thanks [@floydspace](https://github.com/floydspace)! - add an ability to provide S3Client configuration through layer, and provide default logger as part of default configuration
132
-
133
- ## 0.1.0
134
-
135
- ### Minor Changes
136
-
137
- - [`fa8be3e`](https://github.com/floydspace/effect-aws/commit/fa8be3ed0dcd2109b831f233f3edf6bece65b914) Thanks [@floydspace](https://github.com/floydspace)! - Implemented basic Effectful S3 client
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
- }
package/lib/Errors.js DELETED
@@ -1,22 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SdkError = exports.S3ServiceError = exports.AllServiceErrors = void 0;
4
- const effect_1 = require("effect");
5
- exports.AllServiceErrors = [
6
- "BucketAlreadyExists",
7
- "BucketAlreadyOwnedByYou",
8
- "EncryptionTypeMismatch",
9
- "InvalidObjectState",
10
- "InvalidRequest",
11
- "InvalidWriteOffset",
12
- "NoSuchBucket",
13
- "NoSuchKey",
14
- "NoSuchUpload",
15
- "NotFound",
16
- "ObjectAlreadyInActiveTierError",
17
- "ObjectNotInActiveTierError",
18
- "TooManyParts",
19
- ];
20
- exports.S3ServiceError = effect_1.Data.tagged("S3ServiceError");
21
- exports.SdkError = effect_1.Data.tagged("SdkError");
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL0Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFnQkEsbUNBQThCO0FBRWpCLFFBQUEsZ0JBQWdCLEdBQUc7SUFDOUIscUJBQXFCO0lBQ3JCLHlCQUF5QjtJQUN6Qix3QkFBd0I7SUFDeEIsb0JBQW9CO0lBQ3BCLGdCQUFnQjtJQUNoQixvQkFBb0I7SUFDcEIsY0FBYztJQUNkLFdBQVc7SUFDWCxjQUFjO0lBQ2QsVUFBVTtJQUNWLGdDQUFnQztJQUNoQyw0QkFBNEI7SUFDNUIsY0FBYztDQUNmLENBQUM7QUEyQlcsUUFBQSxjQUFjLEdBQUcsYUFBSSxDQUFDLE1BQU0sQ0FBaUIsZ0JBQWdCLENBQUMsQ0FBQztBQUUvRCxRQUFBLFFBQVEsR0FBRyxhQUFJLENBQUMsTUFBTSxDQUFXLFVBQVUsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUge1xuICBCdWNrZXRBbHJlYWR5RXhpc3RzLFxuICBCdWNrZXRBbHJlYWR5T3duZWRCeVlvdSxcbiAgRW5jcnlwdGlvblR5cGVNaXNtYXRjaCxcbiAgSW52YWxpZE9iamVjdFN0YXRlLFxuICBJbnZhbGlkUmVxdWVzdCxcbiAgSW52YWxpZFdyaXRlT2Zmc2V0LFxuICBOb1N1Y2hCdWNrZXQsXG4gIE5vU3VjaEtleSxcbiAgTm9TdWNoVXBsb2FkLFxuICBOb3RGb3VuZCxcbiAgT2JqZWN0QWxyZWFkeUluQWN0aXZlVGllckVycm9yIGFzIE9iamVjdEFscmVhZHlJbkFjdGl2ZVRpZXJFeGNlcHRpb24sXG4gIE9iamVjdE5vdEluQWN0aXZlVGllckVycm9yIGFzIE9iamVjdE5vdEluQWN0aXZlVGllckV4Y2VwdGlvbixcbiAgUzNTZXJ2aWNlRXhjZXB0aW9uLFxuICBUb29NYW55UGFydHMsXG59IGZyb20gXCJAYXdzLXNkay9jbGllbnQtczNcIjtcbmltcG9ydCB7IERhdGEgfSBmcm9tIFwiZWZmZWN0XCI7XG5cbmV4cG9ydCBjb25zdCBBbGxTZXJ2aWNlRXJyb3JzID0gW1xuICBcIkJ1Y2tldEFscmVhZHlFeGlzdHNcIixcbiAgXCJCdWNrZXRBbHJlYWR5T3duZWRCeVlvdVwiLFxuICBcIkVuY3J5cHRpb25UeXBlTWlzbWF0Y2hcIixcbiAgXCJJbnZhbGlkT2JqZWN0U3RhdGVcIixcbiAgXCJJbnZhbGlkUmVxdWVzdFwiLFxuICBcIkludmFsaWRXcml0ZU9mZnNldFwiLFxuICBcIk5vU3VjaEJ1Y2tldFwiLFxuICBcIk5vU3VjaEtleVwiLFxuICBcIk5vU3VjaFVwbG9hZFwiLFxuICBcIk5vdEZvdW5kXCIsXG4gIFwiT2JqZWN0QWxyZWFkeUluQWN0aXZlVGllckVycm9yXCIsXG4gIFwiT2JqZWN0Tm90SW5BY3RpdmVUaWVyRXJyb3JcIixcbiAgXCJUb29NYW55UGFydHNcIixcbl07XG5cbmV4cG9ydCB0eXBlIFRhZ2dlZEV4Y2VwdGlvbjxUIGV4dGVuZHMgeyBuYW1lOiBzdHJpbmcgfT4gPSBUICYge1xuICByZWFkb25seSBfdGFnOiBUW1wibmFtZVwiXTtcbn07XG5cbmV4cG9ydCB0eXBlIEJ1Y2tldEFscmVhZHlFeGlzdHNFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxCdWNrZXRBbHJlYWR5RXhpc3RzPjtcbmV4cG9ydCB0eXBlIEJ1Y2tldEFscmVhZHlPd25lZEJ5WW91RXJyb3IgPVxuICBUYWdnZWRFeGNlcHRpb248QnVja2V0QWxyZWFkeU93bmVkQnlZb3U+O1xuZXhwb3J0IHR5cGUgRW5jcnlwdGlvblR5cGVNaXNtYXRjaEVycm9yID1cbiAgVGFnZ2VkRXhjZXB0aW9uPEVuY3J5cHRpb25UeXBlTWlzbWF0Y2g+O1xuZXhwb3J0IHR5cGUgSW52YWxpZE9iamVjdFN0YXRlRXJyb3IgPSBUYWdnZWRFeGNlcHRpb248SW52YWxpZE9iamVjdFN0YXRlPjtcbmV4cG9ydCB0eXBlIEludmFsaWRSZXF1ZXN0RXJyb3IgPSBUYWdnZWRFeGNlcHRpb248SW52YWxpZFJlcXVlc3Q+O1xuZXhwb3J0IHR5cGUgSW52YWxpZFdyaXRlT2Zmc2V0RXJyb3IgPSBUYWdnZWRFeGNlcHRpb248SW52YWxpZFdyaXRlT2Zmc2V0PjtcbmV4cG9ydCB0eXBlIE5vU3VjaEJ1Y2tldEVycm9yID0gVGFnZ2VkRXhjZXB0aW9uPE5vU3VjaEJ1Y2tldD47XG5leHBvcnQgdHlwZSBOb1N1Y2hLZXlFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxOb1N1Y2hLZXk+O1xuZXhwb3J0IHR5cGUgTm9TdWNoVXBsb2FkRXJyb3IgPSBUYWdnZWRFeGNlcHRpb248Tm9TdWNoVXBsb2FkPjtcbmV4cG9ydCB0eXBlIE5vdEZvdW5kRXJyb3IgPSBUYWdnZWRFeGNlcHRpb248Tm90Rm91bmQ+O1xuZXhwb3J0IHR5cGUgT2JqZWN0QWxyZWFkeUluQWN0aXZlVGllckVycm9yID1cbiAgVGFnZ2VkRXhjZXB0aW9uPE9iamVjdEFscmVhZHlJbkFjdGl2ZVRpZXJFeGNlcHRpb24+O1xuZXhwb3J0IHR5cGUgT2JqZWN0Tm90SW5BY3RpdmVUaWVyRXJyb3IgPVxuICBUYWdnZWRFeGNlcHRpb248T2JqZWN0Tm90SW5BY3RpdmVUaWVyRXhjZXB0aW9uPjtcbmV4cG9ydCB0eXBlIFRvb01hbnlQYXJ0c0Vycm9yID0gVGFnZ2VkRXhjZXB0aW9uPFRvb01hbnlQYXJ0cz47XG5cbmV4cG9ydCB0eXBlIFMzU2VydmljZUVycm9yID0gVGFnZ2VkRXhjZXB0aW9uPFxuICBTM1NlcnZpY2VFeGNlcHRpb24gJiB7IG5hbWU6IFwiUzNTZXJ2aWNlRXJyb3JcIiB9XG4+O1xuZXhwb3J0IGNvbnN0IFMzU2VydmljZUVycm9yID0gRGF0YS50YWdnZWQ8UzNTZXJ2aWNlRXJyb3I+KFwiUzNTZXJ2aWNlRXJyb3JcIik7XG5leHBvcnQgdHlwZSBTZGtFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxFcnJvciAmIHsgbmFtZTogXCJTZGtFcnJvclwiIH0+O1xuZXhwb3J0IGNvbnN0IFNka0Vycm9yID0gRGF0YS50YWdnZWQ8U2RrRXJyb3I+KFwiU2RrRXJyb3JcIik7XG4iXX0=
@@ -1,31 +0,0 @@
1
- /**
2
- * @since 1.0.0
3
- */
4
- import { S3Client } from "@aws-sdk/client-s3";
5
- import * as Context from "effect/Context";
6
- import * as Effect from "effect/Effect";
7
- import * as Layer from "effect/Layer";
8
- import { S3ClientInstanceConfig } from "./S3ClientInstanceConfig";
9
- declare const S3ClientInstance_base: Context.TagClass<S3ClientInstance, "@effect-aws/client-s3/S3ClientInstance", S3Client>;
10
- /**
11
- * @since 1.0.0
12
- * @category tags
13
- */
14
- export declare class S3ClientInstance extends S3ClientInstance_base {
15
- }
16
- /**
17
- * @since 1.0.0
18
- * @category constructors
19
- */
20
- export declare const makeS3ClientInstance: Effect.Effect<S3Client, never, import("effect/Scope").Scope | S3ClientInstanceConfig>;
21
- /**
22
- * @since 1.0.0
23
- * @category layers
24
- */
25
- export declare const S3ClientInstanceLayer: Layer.Layer<S3ClientInstance, never, S3ClientInstanceConfig>;
26
- /**
27
- * @since 1.0.0
28
- * @category layers
29
- */
30
- export declare const DefaultS3ClientInstanceLayer: Layer.Layer<S3ClientInstance, never, never>;
31
- export {};
@@ -1,57 +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.DefaultS3ClientInstanceLayer = exports.S3ClientInstanceLayer = exports.makeS3ClientInstance = exports.S3ClientInstance = void 0;
27
- /**
28
- * @since 1.0.0
29
- */
30
- const client_s3_1 = require("@aws-sdk/client-s3");
31
- const Context = __importStar(require("effect/Context"));
32
- const Effect = __importStar(require("effect/Effect"));
33
- const Layer = __importStar(require("effect/Layer"));
34
- const S3ClientInstanceConfig_1 = require("./S3ClientInstanceConfig");
35
- /**
36
- * @since 1.0.0
37
- * @category tags
38
- */
39
- class S3ClientInstance extends Context.Tag("@effect-aws/client-s3/S3ClientInstance")() {
40
- }
41
- exports.S3ClientInstance = S3ClientInstance;
42
- /**
43
- * @since 1.0.0
44
- * @category constructors
45
- */
46
- exports.makeS3ClientInstance = Effect.flatMap(S3ClientInstanceConfig_1.S3ClientInstanceConfig, (config) => Effect.acquireRelease(Effect.sync(() => new client_s3_1.S3Client(config)), (client) => Effect.sync(() => client.destroy())));
47
- /**
48
- * @since 1.0.0
49
- * @category layers
50
- */
51
- exports.S3ClientInstanceLayer = Layer.scoped(S3ClientInstance, exports.makeS3ClientInstance);
52
- /**
53
- * @since 1.0.0
54
- * @category layers
55
- */
56
- exports.DefaultS3ClientInstanceLayer = exports.S3ClientInstanceLayer.pipe(Layer.provide(S3ClientInstanceConfig_1.DefaultS3ClientConfigLayer));
57
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUzNDbGllbnRJbnN0YW5jZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9TM0NsaWVudEluc3RhbmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7O0dBRUc7QUFDSCxrREFBOEM7QUFDOUMsd0RBQTBDO0FBQzFDLHNEQUF3QztBQUN4QyxvREFBc0M7QUFDdEMscUVBR2tDO0FBRWxDOzs7R0FHRztBQUNILE1BQWEsZ0JBQWlCLFNBQVEsT0FBTyxDQUFDLEdBQUcsQ0FDL0Msd0NBQXdDLENBQ3pDLEVBQThCO0NBQUc7QUFGbEMsNENBRWtDO0FBRWxDOzs7R0FHRztBQUNVLFFBQUEsb0JBQW9CLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FDaEQsK0NBQXNCLEVBQ3RCLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FDVCxNQUFNLENBQUMsY0FBYyxDQUNuQixNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksb0JBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUN2QyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FDaEQsQ0FDSixDQUFDO0FBRUY7OztHQUdHO0FBQ1UsUUFBQSxxQkFBcUIsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUMvQyxnQkFBZ0IsRUFDaEIsNEJBQW9CLENBQ3JCLENBQUM7QUFFRjs7O0dBR0c7QUFDVSxRQUFBLDRCQUE0QixHQUFHLDZCQUFxQixDQUFDLElBQUksQ0FDcEUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxtREFBMEIsQ0FBQyxDQUMxQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqL1xuaW1wb3J0IHsgUzNDbGllbnQgfSBmcm9tIFwiQGF3cy1zZGsvY2xpZW50LXMzXCI7XG5pbXBvcnQgKiBhcyBDb250ZXh0IGZyb20gXCJlZmZlY3QvQ29udGV4dFwiO1xuaW1wb3J0ICogYXMgRWZmZWN0IGZyb20gXCJlZmZlY3QvRWZmZWN0XCI7XG5pbXBvcnQgKiBhcyBMYXllciBmcm9tIFwiZWZmZWN0L0xheWVyXCI7XG5pbXBvcnQge1xuICBEZWZhdWx0UzNDbGllbnRDb25maWdMYXllcixcbiAgUzNDbGllbnRJbnN0YW5jZUNvbmZpZyxcbn0gZnJvbSBcIi4vUzNDbGllbnRJbnN0YW5jZUNvbmZpZ1wiO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IHRhZ3NcbiAqL1xuZXhwb3J0IGNsYXNzIFMzQ2xpZW50SW5zdGFuY2UgZXh0ZW5kcyBDb250ZXh0LlRhZyhcbiAgXCJAZWZmZWN0LWF3cy9jbGllbnQtczMvUzNDbGllbnRJbnN0YW5jZVwiLFxuKTxTM0NsaWVudEluc3RhbmNlLCBTM0NsaWVudD4oKSB7fVxuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGNvbnN0cnVjdG9yc1xuICovXG5leHBvcnQgY29uc3QgbWFrZVMzQ2xpZW50SW5zdGFuY2UgPSBFZmZlY3QuZmxhdE1hcChcbiAgUzNDbGllbnRJbnN0YW5jZUNvbmZpZyxcbiAgKGNvbmZpZykgPT5cbiAgICBFZmZlY3QuYWNxdWlyZVJlbGVhc2UoXG4gICAgICBFZmZlY3Quc3luYygoKSA9PiBuZXcgUzNDbGllbnQoY29uZmlnKSksXG4gICAgICAoY2xpZW50KSA9PiBFZmZlY3Quc3luYygoKSA9PiBjbGllbnQuZGVzdHJveSgpKSxcbiAgICApLFxuKTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqL1xuZXhwb3J0IGNvbnN0IFMzQ2xpZW50SW5zdGFuY2VMYXllciA9IExheWVyLnNjb3BlZChcbiAgUzNDbGllbnRJbnN0YW5jZSxcbiAgbWFrZVMzQ2xpZW50SW5zdGFuY2UsXG4pO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGxheWVyc1xuICovXG5leHBvcnQgY29uc3QgRGVmYXVsdFMzQ2xpZW50SW5zdGFuY2VMYXllciA9IFMzQ2xpZW50SW5zdGFuY2VMYXllci5waXBlKFxuICBMYXllci5wcm92aWRlKERlZmF1bHRTM0NsaWVudENvbmZpZ0xheWVyKSxcbik7XG4iXX0=
@@ -1,23 +0,0 @@
1
- /**
2
- * @since 1.0.0
3
- */
4
- import type { S3ClientConfig } from "@aws-sdk/client-s3";
5
- import { Context, Effect, Layer } from "effect";
6
- declare const S3ClientInstanceConfig_base: Context.TagClass<S3ClientInstanceConfig, "@effect-aws/client-s3/S3ClientInstanceConfig", S3ClientConfig>;
7
- /**
8
- * @since 1.0.0
9
- * @category tags
10
- */
11
- export declare class S3ClientInstanceConfig extends S3ClientInstanceConfig_base {
12
- }
13
- /**
14
- * @since 1.0.0
15
- * @category constructors
16
- */
17
- export declare const makeDefaultS3ClientInstanceConfig: Effect.Effect<S3ClientConfig>;
18
- /**
19
- * @since 1.0.0
20
- * @category layers
21
- */
22
- export declare const DefaultS3ClientConfigLayer: Layer.Layer<S3ClientInstanceConfig, never, never>;
23
- export {};
@@ -1,44 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DefaultS3ClientConfigLayer = exports.makeDefaultS3ClientInstanceConfig = exports.S3ClientInstanceConfig = void 0;
4
- const effect_1 = require("effect");
5
- /**
6
- * @since 1.0.0
7
- * @category tags
8
- */
9
- class S3ClientInstanceConfig extends effect_1.Context.Tag("@effect-aws/client-s3/S3ClientInstanceConfig")() {
10
- }
11
- exports.S3ClientInstanceConfig = S3ClientInstanceConfig;
12
- /**
13
- * @since 1.0.0
14
- * @category constructors
15
- */
16
- exports.makeDefaultS3ClientInstanceConfig = effect_1.Effect.gen(function* (_) {
17
- const runtime = yield* _(effect_1.Effect.runtime());
18
- const runSync = effect_1.Runtime.runSync(runtime);
19
- return {
20
- logger: {
21
- info(m) {
22
- effect_1.Effect.logInfo(m).pipe(runSync);
23
- },
24
- warn(m) {
25
- effect_1.Effect.logWarning(m).pipe(runSync);
26
- },
27
- error(m) {
28
- effect_1.Effect.logError(m).pipe(runSync);
29
- },
30
- debug(m) {
31
- effect_1.Effect.logDebug(m).pipe(runSync);
32
- },
33
- trace(m) {
34
- effect_1.Effect.logTrace(m).pipe(runSync);
35
- },
36
- },
37
- };
38
- });
39
- /**
40
- * @since 1.0.0
41
- * @category layers
42
- */
43
- exports.DefaultS3ClientConfigLayer = effect_1.Layer.effect(S3ClientInstanceConfig, exports.makeDefaultS3ClientInstanceConfig);
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUzNDbGllbnRJbnN0YW5jZUNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9TM0NsaWVudEluc3RhbmNlQ29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUlBLG1DQUF5RDtBQUV6RDs7O0dBR0c7QUFDSCxNQUFhLHNCQUF1QixTQUFRLGdCQUFPLENBQUMsR0FBRyxDQUNyRCw4Q0FBOEMsQ0FDL0MsRUFBMEM7Q0FBRztBQUY5Qyx3REFFOEM7QUFFOUM7OztHQUdHO0FBQ1UsUUFBQSxpQ0FBaUMsR0FDNUMsZUFBTSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO0lBQ3JCLE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxlQUFNLENBQUMsT0FBTyxFQUFTLENBQUMsQ0FBQztJQUNsRCxNQUFNLE9BQU8sR0FBRyxnQkFBTyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUV6QyxPQUFPO1FBQ0wsTUFBTSxFQUFFO1lBQ04sSUFBSSxDQUFDLENBQUM7Z0JBQ0osZUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDbEMsQ0FBQztZQUNELElBQUksQ0FBQyxDQUFDO2dCQUNKLGVBQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3JDLENBQUM7WUFDRCxLQUFLLENBQUMsQ0FBQztnQkFDTCxlQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNuQyxDQUFDO1lBQ0QsS0FBSyxDQUFDLENBQUM7Z0JBQ0wsZUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDbkMsQ0FBQztZQUNELEtBQUssQ0FBQyxDQUFDO2dCQUNMLGVBQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ25DLENBQUM7U0FDRjtLQUNGLENBQUM7QUFDSixDQUFDLENBQUMsQ0FBQztBQUVMOzs7R0FHRztBQUNVLFFBQUEsMEJBQTBCLEdBQUcsY0FBSyxDQUFDLE1BQU0sQ0FDcEQsc0JBQXNCLEVBQ3RCLHlDQUFpQyxDQUNsQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqL1xuaW1wb3J0IHR5cGUgeyBTM0NsaWVudENvbmZpZyB9IGZyb20gXCJAYXdzLXNkay9jbGllbnQtczNcIjtcbmltcG9ydCB7IENvbnRleHQsIEVmZmVjdCwgTGF5ZXIsIFJ1bnRpbWUgfSBmcm9tIFwiZWZmZWN0XCI7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgdGFnc1xuICovXG5leHBvcnQgY2xhc3MgUzNDbGllbnRJbnN0YW5jZUNvbmZpZyBleHRlbmRzIENvbnRleHQuVGFnKFxuICBcIkBlZmZlY3QtYXdzL2NsaWVudC1zMy9TM0NsaWVudEluc3RhbmNlQ29uZmlnXCIsXG4pPFMzQ2xpZW50SW5zdGFuY2VDb25maWcsIFMzQ2xpZW50Q29uZmlnPigpIHt9XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgY29uc3RydWN0b3JzXG4gKi9cbmV4cG9ydCBjb25zdCBtYWtlRGVmYXVsdFMzQ2xpZW50SW5zdGFuY2VDb25maWc6IEVmZmVjdC5FZmZlY3Q8UzNDbGllbnRDb25maWc+ID1cbiAgRWZmZWN0LmdlbihmdW5jdGlvbiogKF8pIHtcbiAgICBjb25zdCBydW50aW1lID0geWllbGQqIF8oRWZmZWN0LnJ1bnRpbWU8bmV2ZXI+KCkpO1xuICAgIGNvbnN0IHJ1blN5bmMgPSBSdW50aW1lLnJ1blN5bmMocnVudGltZSk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgbG9nZ2VyOiB7XG4gICAgICAgIGluZm8obSkge1xuICAgICAgICAgIEVmZmVjdC5sb2dJbmZvKG0pLnBpcGUocnVuU3luYyk7XG4gICAgICAgIH0sXG4gICAgICAgIHdhcm4obSkge1xuICAgICAgICAgIEVmZmVjdC5sb2dXYXJuaW5nKG0pLnBpcGUocnVuU3luYyk7XG4gICAgICAgIH0sXG4gICAgICAgIGVycm9yKG0pIHtcbiAgICAgICAgICBFZmZlY3QubG9nRXJyb3IobSkucGlwZShydW5TeW5jKTtcbiAgICAgICAgfSxcbiAgICAgICAgZGVidWcobSkge1xuICAgICAgICAgIEVmZmVjdC5sb2dEZWJ1ZyhtKS5waXBlKHJ1blN5bmMpO1xuICAgICAgICB9LFxuICAgICAgICB0cmFjZShtKSB7XG4gICAgICAgICAgRWZmZWN0LmxvZ1RyYWNlKG0pLnBpcGUocnVuU3luYyk7XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH07XG4gIH0pO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGxheWVyc1xuICovXG5leHBvcnQgY29uc3QgRGVmYXVsdFMzQ2xpZW50Q29uZmlnTGF5ZXIgPSBMYXllci5lZmZlY3QoXG4gIFMzQ2xpZW50SW5zdGFuY2VDb25maWcsXG4gIG1ha2VEZWZhdWx0UzNDbGllbnRJbnN0YW5jZUNvbmZpZyxcbik7XG4iXX0=