effect-app 4.0.0-beta.6 → 4.0.0-beta.61

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 (130) hide show
  1. package/CHANGELOG.md +267 -0
  2. package/dist/Config.d.ts +7 -0
  3. package/dist/Config.d.ts.map +1 -0
  4. package/dist/Config.js +6 -0
  5. package/dist/ConfigProvider.d.ts +39 -0
  6. package/dist/ConfigProvider.d.ts.map +1 -0
  7. package/dist/ConfigProvider.js +42 -0
  8. package/dist/{ServiceMap.d.ts → Context.d.ts} +9 -12
  9. package/dist/Context.d.ts.map +1 -0
  10. package/dist/Context.js +87 -0
  11. package/dist/Effect.d.ts +8 -7
  12. package/dist/Effect.d.ts.map +1 -1
  13. package/dist/Effect.js +3 -2
  14. package/dist/Layer.d.ts +5 -4
  15. package/dist/Layer.d.ts.map +1 -1
  16. package/dist/Layer.js +1 -1
  17. package/dist/Operations.d.ts +51 -15
  18. package/dist/Operations.d.ts.map +1 -1
  19. package/dist/Pure.d.ts +2 -2
  20. package/dist/Pure.d.ts.map +1 -1
  21. package/dist/Pure.js +13 -13
  22. package/dist/Schema/Class.d.ts +39 -1
  23. package/dist/Schema/Class.d.ts.map +1 -1
  24. package/dist/Schema/Class.js +89 -12
  25. package/dist/Schema/SpecialJsonSchema.d.ts +40 -0
  26. package/dist/Schema/SpecialJsonSchema.d.ts.map +1 -0
  27. package/dist/Schema/SpecialJsonSchema.js +199 -0
  28. package/dist/Schema/SpecialOpenApi.d.ts +30 -0
  29. package/dist/Schema/SpecialOpenApi.d.ts.map +1 -0
  30. package/dist/Schema/SpecialOpenApi.js +120 -0
  31. package/dist/Schema/brand.d.ts +8 -5
  32. package/dist/Schema/brand.d.ts.map +1 -1
  33. package/dist/Schema/brand.js +1 -1
  34. package/dist/Schema/email.d.ts.map +1 -1
  35. package/dist/Schema/email.js +4 -3
  36. package/dist/Schema/ext.d.ts +142 -44
  37. package/dist/Schema/ext.d.ts.map +1 -1
  38. package/dist/Schema/ext.js +145 -35
  39. package/dist/Schema/moreStrings.d.ts.map +1 -1
  40. package/dist/Schema/moreStrings.js +6 -4
  41. package/dist/Schema/numbers.d.ts +8 -8
  42. package/dist/Schema/numbers.js +2 -2
  43. package/dist/Schema/phoneNumber.d.ts.map +1 -1
  44. package/dist/Schema/phoneNumber.js +3 -2
  45. package/dist/Schema.d.ts +21 -54
  46. package/dist/Schema.d.ts.map +1 -1
  47. package/dist/Schema.js +43 -64
  48. package/dist/client/apiClientFactory.d.ts +3 -3
  49. package/dist/client/apiClientFactory.d.ts.map +1 -1
  50. package/dist/client/apiClientFactory.js +12 -13
  51. package/dist/client/errors.d.ts +8 -0
  52. package/dist/client/errors.d.ts.map +1 -1
  53. package/dist/client/errors.js +35 -10
  54. package/dist/client/makeClient.d.ts +13 -12
  55. package/dist/client/makeClient.d.ts.map +1 -1
  56. package/dist/client/makeClient.js +5 -2
  57. package/dist/http/Request.d.ts.map +1 -1
  58. package/dist/http/Request.js +5 -5
  59. package/dist/ids.d.ts +1 -1
  60. package/dist/ids.d.ts.map +1 -1
  61. package/dist/ids.js +1 -1
  62. package/dist/index.d.ts +6 -8
  63. package/dist/index.d.ts.map +1 -1
  64. package/dist/index.js +7 -9
  65. package/dist/middleware.d.ts +2 -2
  66. package/dist/middleware.d.ts.map +1 -1
  67. package/dist/middleware.js +3 -3
  68. package/dist/rpc/MiddlewareMaker.d.ts +4 -3
  69. package/dist/rpc/MiddlewareMaker.d.ts.map +1 -1
  70. package/dist/rpc/MiddlewareMaker.js +6 -5
  71. package/dist/rpc/RpcContextMap.d.ts +2 -2
  72. package/dist/rpc/RpcContextMap.d.ts.map +1 -1
  73. package/dist/rpc/RpcContextMap.js +4 -4
  74. package/dist/rpc/RpcMiddleware.d.ts +4 -3
  75. package/dist/rpc/RpcMiddleware.d.ts.map +1 -1
  76. package/dist/rpc/RpcMiddleware.js +1 -1
  77. package/dist/utils/gen.d.ts +1 -1
  78. package/dist/utils/gen.d.ts.map +1 -1
  79. package/dist/utils/logger.d.ts +2 -2
  80. package/dist/utils/logger.d.ts.map +1 -1
  81. package/dist/utils/logger.js +3 -3
  82. package/dist/utils.d.ts +18 -0
  83. package/dist/utils.d.ts.map +1 -1
  84. package/dist/utils.js +24 -5
  85. package/package.json +29 -17
  86. package/src/Config.ts +14 -0
  87. package/src/ConfigProvider.ts +48 -0
  88. package/src/{ServiceMap.ts → Context.ts} +16 -17
  89. package/src/Effect.ts +11 -9
  90. package/src/Layer.ts +5 -4
  91. package/src/Pure.ts +17 -18
  92. package/src/Schema/Class.ts +114 -16
  93. package/src/Schema/SpecialJsonSchema.ts +216 -0
  94. package/src/Schema/SpecialOpenApi.ts +126 -0
  95. package/src/Schema/brand.ts +13 -7
  96. package/src/Schema/email.ts +4 -2
  97. package/src/Schema/ext.ts +222 -57
  98. package/src/Schema/moreStrings.ts +10 -6
  99. package/src/Schema/numbers.ts +2 -2
  100. package/src/Schema/phoneNumber.ts +3 -1
  101. package/src/Schema.ts +79 -103
  102. package/src/client/apiClientFactory.ts +16 -19
  103. package/src/client/errors.ts +46 -12
  104. package/src/client/makeClient.ts +32 -12
  105. package/src/http/Request.ts +7 -4
  106. package/src/ids.ts +1 -1
  107. package/src/index.ts +6 -9
  108. package/src/middleware.ts +2 -2
  109. package/src/rpc/MiddlewareMaker.ts +7 -6
  110. package/src/rpc/RpcContextMap.ts +6 -5
  111. package/src/rpc/RpcMiddleware.ts +5 -4
  112. package/src/utils/gen.ts +1 -1
  113. package/src/utils/logger.ts +2 -2
  114. package/src/utils.ts +26 -4
  115. package/test/dist/moreStrings.test.d.ts.map +1 -0
  116. package/test/dist/rpc.test.d.ts.map +1 -1
  117. package/test/dist/special.test.d.ts.map +1 -0
  118. package/test/moreStrings.test.ts +17 -0
  119. package/test/rpc.test.ts +26 -5
  120. package/test/schema.test.ts +292 -1
  121. package/test/special.test.ts +525 -0
  122. package/test/utils.test.ts +1 -1
  123. package/tsconfig.base.json +0 -1
  124. package/tsconfig.json +0 -1
  125. package/dist/ServiceMap.d.ts.map +0 -1
  126. package/dist/ServiceMap.js +0 -91
  127. package/dist/Struct.d.ts +0 -44
  128. package/dist/Struct.d.ts.map +0 -1
  129. package/dist/Struct.js +0 -29
  130. package/src/Struct.ts +0 -54
package/CHANGELOG.md CHANGED
@@ -1,5 +1,272 @@
1
1
  # @effect-app/prelude
2
2
 
3
+ ## 4.0.0-beta.61
4
+
5
+ ## 4.0.0-beta.60
6
+
7
+ ## 4.0.0-beta.59
8
+
9
+ ### Patch Changes
10
+
11
+ - cec026d: update packages
12
+
13
+ ## 4.0.0-beta.58
14
+
15
+ ## 4.0.0-beta.57
16
+
17
+ ## 4.0.0-beta.56
18
+
19
+ ## 4.0.0-beta.55
20
+
21
+ ## 4.0.0-beta.54
22
+
23
+ ### Patch Changes
24
+
25
+ - d867272: the return of `Context`
26
+
27
+ ## 4.0.0-beta.53
28
+
29
+ ### Patch Changes
30
+
31
+ - ee9694e: fix type issue?
32
+
33
+ ## 4.0.0-beta.52
34
+
35
+ ### Minor Changes
36
+
37
+ - 6252808: Add `ReadonlySetFromArray` and `ReadonlyMapFromArray` schema transformations that decode from annotated arrays to Set/Map. Update `ReadonlySet` and `ReadonlyMap` to use these internally.
38
+
39
+ ## 4.0.0-beta.51
40
+
41
+ ## 4.0.0-beta.50
42
+
43
+ ## 4.0.0-beta.49
44
+
45
+ ### Patch Changes
46
+
47
+ - e585c9c: fix config nested
48
+
49
+ ## 4.0.0-beta.48
50
+
51
+ ### Patch Changes
52
+
53
+ - 0c88f78: Remove `TaggedError` compatibility re-export, use `TaggedErrorClass` directly
54
+
55
+ ## 4.0.0-beta.47
56
+
57
+ ### Patch Changes
58
+
59
+ - 3365758: workaround effect error messages
60
+
61
+ ## 4.0.0-beta.46
62
+
63
+ ## 4.0.0-beta.45
64
+
65
+ ### Patch Changes
66
+
67
+ - 10b55ff: update packages
68
+
69
+ ## 4.0.0-beta.44
70
+
71
+ ### Patch Changes
72
+
73
+ - a37aa38: Update to effect beta 43
74
+
75
+ ## 4.0.0-beta.43
76
+
77
+ ## 4.0.0-beta.42
78
+
79
+ ## 4.0.0-beta.41
80
+
81
+ ## 4.0.0-beta.40
82
+
83
+ ## 4.0.0-beta.39
84
+
85
+ ### Patch Changes
86
+
87
+ - 10e90d5: fix: TaggedRequest should be an Opaque Schema Class
88
+
89
+ ## 4.0.0-beta.38
90
+
91
+ ### Patch Changes
92
+
93
+ - 0b3e00e: fix bug
94
+
95
+ ## 4.0.0-beta.37
96
+
97
+ ### Patch Changes
98
+
99
+ - 947fe20: fix input date
100
+
101
+ ## 4.0.0-beta.36
102
+
103
+ ## 4.0.0-beta.35
104
+
105
+ ## 4.0.0-beta.34
106
+
107
+ ### Patch Changes
108
+
109
+ - 8c645d5: update to latest effect
110
+
111
+ ## 4.0.0-beta.33
112
+
113
+ ### Patch Changes
114
+
115
+ - 4b95009: use Finite instead of Number
116
+
117
+ ## 4.0.0-beta.32
118
+
119
+ ### Patch Changes
120
+
121
+ - 01d862a: again
122
+
123
+ ## 4.0.0-beta.31
124
+
125
+ ### Patch Changes
126
+
127
+ - 6b6d601: fix ForceVOid
128
+
129
+ ## 4.0.0-beta.30
130
+
131
+ ### Patch Changes
132
+
133
+ - 5ec1f45: fix ForceVoid for real
134
+
135
+ ## 4.0.0-beta.29
136
+
137
+ ### Patch Changes
138
+
139
+ - a899d46: Replace `ForceVoid` in `makeClient` with a typed codec transformation instead of an unsafe cast.
140
+
141
+ ## 4.0.0-beta.28
142
+
143
+ ### Patch Changes
144
+
145
+ - 0099208: Refactor `Pure` helpers to use typed `useSync` calls instead of unsafe casts.
146
+
147
+ ## 4.0.0-beta.27
148
+
149
+ ### Patch Changes
150
+
151
+ - 601a1ff: update effect to 4.0.0-beta.37 and drop the Schema Class disableValidation workaround now that the patched effect schema covers it
152
+
153
+ ## 4.0.0-beta.26
154
+
155
+ ### Patch Changes
156
+
157
+ - 4da28e2: Change `Schema.Class` and `Schema.TaggedClass` wrappers to default constructor options to `{ disableValidation: true }`.
158
+
159
+ This avoids strict class identifier validation by default when constructing wrapper classes (for example passing a compatible view class), while keeping existing behavior when explicit options are provided.
160
+
161
+ ## 4.0.0-beta.25
162
+
163
+ ### Patch Changes
164
+
165
+ - 6282d4b: Update `Effect.allLower` to call `svc.asEffect()` when available, ensuring service entries are normalized before `Effect.all` evaluation.
166
+
167
+ ## 4.0.0-beta.24
168
+
169
+ ### Patch Changes
170
+
171
+ - 32f71bf: Fix `Schema.TaggedUnion(...).tags` extraction for class-based members (for example `TaggedClass`) by using a local AST sentinel walker instead of relying on internal effect APIs.
172
+
173
+ Add tests covering:
174
+
175
+ - `TaggedUnion` with `encodeKeys`-wrapped members
176
+ - `TaggedUnion` with `TaggedClass` members
177
+
178
+ ## 4.0.0-beta.23
179
+
180
+ ### Patch Changes
181
+
182
+ - ea08a79: remove `fields` constraint from TaggedUnion/tags helpers, extract `_tag` via AST walk instead
183
+
184
+ ## 4.0.0-beta.22
185
+
186
+ ## 4.0.0-beta.21
187
+
188
+ ### Patch Changes
189
+
190
+ - 0d349e7: Align effect-app tagged union helpers with Effect v4 by delegating to the native tagged union utilities, exposing v4-style `cases` and `guards`, and preserving the local `tags` helper.
191
+ - 75c72ee: update effect to 4.0.0-beta.36, adapt to Option<A> revert from A | undefined
192
+
193
+ ## 4.0.0-beta.20
194
+
195
+ ### Patch Changes
196
+
197
+ - aa921db: Fix `TaggedRequest` no-config error type inference so requests without a third argument infer the same default error schema as requests with explicit success config.
198
+
199
+ ## 4.0.0-beta.19
200
+
201
+ ### Patch Changes
202
+
203
+ - ffc10a4: Migrate `Schema/ext` context helpers to Effect v4 by implementing `provide` and `contextFromServices` with proper service subtraction across decoding and encoding requirements.
204
+
205
+ ## 4.0.0-beta.18
206
+
207
+ ### Patch Changes
208
+
209
+ - e9dbbdd: Tighten schema helper generics in `Schema/ext.ts` so default-related helpers accept properly named schema type parameters instead of bare `S.Top` inputs.
210
+
211
+ ## 4.0.0-beta.17
212
+
213
+ ### Patch Changes
214
+
215
+ - c8a6a3f: fix TaggedUnion
216
+
217
+ ## 4.0.0-beta.16
218
+
219
+ ### Patch Changes
220
+
221
+ - 56db2c4: fix: isA
222
+
223
+ ## 4.0.0-beta.15
224
+
225
+ ### Patch Changes
226
+
227
+ - 20186b6: Migrate schema arbitrary annotations to Effect v4 `toArbitrary` and cover `StringId` generation with a fast-check test.
228
+
229
+ ## 4.0.0-beta.14
230
+
231
+ ## 4.0.0-beta.13
232
+
233
+ ### Patch Changes
234
+
235
+ - 16de88c: remove hopefully obsolete Struct overrides
236
+ - 1c3c541: Update Effect dependencies to 4.0.0-beta.31 across workspace packages.
237
+ - de2359d: Update Effect dependencies to 4.0.0-beta.28 across workspace packages.
238
+ - 0d72f34: Update Effect dependencies to 4.0.0-beta.29 across workspace packages.
239
+
240
+ ## 4.0.0-beta.12
241
+
242
+ ### Patch Changes
243
+
244
+ - 622d54a: Configure Changesets fixed versioning for public packages.
245
+
246
+ ## 4.0.0-beta.10
247
+
248
+ ### Patch Changes
249
+
250
+ - 01c70d0: update all teh tings
251
+
252
+ ## 4.0.0-beta.9
253
+
254
+ ### Patch Changes
255
+
256
+ - 5727372: switch to NdJson
257
+
258
+ ## 4.0.0-beta.8
259
+
260
+ ### Patch Changes
261
+
262
+ - 1f336bc: fix RequestName
263
+
264
+ ## 4.0.0-beta.7
265
+
266
+ ### Patch Changes
267
+
268
+ - 62b4989: fix request attr
269
+
3
270
  ## 4.0.0-beta.6
4
271
 
5
272
  ### Patch Changes
@@ -0,0 +1,7 @@
1
+ import { type Config } from "effect/Config";
2
+ export declare const nested: {
3
+ (name: string): <A>(self: Config<A>) => Config<A>;
4
+ <A>(self: Config<A>, name: string): Config<A>;
5
+ };
6
+ export * from "effect/Config";
7
+ //# sourceMappingURL=Config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../src/Config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAQ,MAAM,eAAe,CAAA;AAKjD,eAAO,MAAM,MAAM,EAAE;IACnB,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,CAAA;IACjD,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;CAI9C,CAAA;AAED,cAAc,eAAe,CAAA"}
package/dist/Config.js ADDED
@@ -0,0 +1,6 @@
1
+ import { make } from "effect/Config";
2
+ import { dual } from "effect/Function";
3
+ import * as ConfigProvider from "./ConfigProvider.js";
4
+ export const nested = dual(2, (self, name) => make((provider) => self.parse(ConfigProvider.nested(provider, name))));
5
+ export * from "effect/Config";
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL0NvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWUsSUFBSSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ2pELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUV0QyxPQUFPLEtBQUssY0FBYyxNQUFNLHFCQUFxQixDQUFBO0FBRXJELE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FHZixJQUFJLENBQ04sQ0FBQyxFQUNELENBQUksSUFBZSxFQUFFLElBQVksRUFBYSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FDdkgsQ0FBQTtBQUVELGNBQWMsZUFBZSxDQUFBIn0=
@@ -0,0 +1,39 @@
1
+ import { type ConfigProvider, type Path } from "effect/ConfigProvider";
2
+ /**
3
+ * Scopes a provider so that all lookups are prefixed with the given path
4
+ * segments.
5
+ *
6
+ * When to use:
7
+ * - Namespacing config under a prefix like `"app"` or `"database"`.
8
+ * - Reusing the same provider shape for multiple sub-configs.
9
+ *
10
+ * Accepts a single string or a full `Path` array. The prefix is prepended
11
+ * *after* any `mapInput` transformation runs, so ordering matters when
12
+ * composing with {@link mapInput} or {@link constantCase}.
13
+ *
14
+ * Supports both data-last and data-first calling conventions.
15
+ *
16
+ * **Example** (Nesting under a prefix)
17
+ *
18
+ * ```ts
19
+ * import { ConfigProvider } from "effect"
20
+ *
21
+ * const provider = ConfigProvider.fromEnv({
22
+ * env: { APP_HOST: "localhost", APP_PORT: "3000" }
23
+ * })
24
+ *
25
+ * // Lookups for ["HOST"] now resolve to ["APP", "HOST"]
26
+ * const scoped = ConfigProvider.nested(provider, "APP")
27
+ * ```
28
+ *
29
+ * @see {@link mapInput} – for arbitrary path transformations
30
+ *
31
+ * @category Combinators
32
+ * @since 4.0.0
33
+ */
34
+ export declare const nested: {
35
+ (prefix: string | Path): (self: ConfigProvider) => ConfigProvider;
36
+ (self: ConfigProvider, prefix: string | Path): ConfigProvider;
37
+ };
38
+ export * from "effect/ConfigProvider";
39
+ //# sourceMappingURL=ConfigProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfigProvider.d.ts","sourceRoot":"","sources":["../src/ConfigProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAQ,KAAK,IAAI,EAAE,MAAM,uBAAuB,CAAA;AAG5E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,eAAO,MAAM,MAAM,EAAE;IACnB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,CAAC,IAAI,EAAE,cAAc,KAAK,cAAc,CAAA;IACjE,CAAC,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,cAAc,CAAA;CAQ9D,CAAA;AAED,cAAc,uBAAuB,CAAA"}
@@ -0,0 +1,42 @@
1
+ import { make } from "effect/ConfigProvider";
2
+ import { dual } from "effect/Function";
3
+ /**
4
+ * Scopes a provider so that all lookups are prefixed with the given path
5
+ * segments.
6
+ *
7
+ * When to use:
8
+ * - Namespacing config under a prefix like `"app"` or `"database"`.
9
+ * - Reusing the same provider shape for multiple sub-configs.
10
+ *
11
+ * Accepts a single string or a full `Path` array. The prefix is prepended
12
+ * *after* any `mapInput` transformation runs, so ordering matters when
13
+ * composing with {@link mapInput} or {@link constantCase}.
14
+ *
15
+ * Supports both data-last and data-first calling conventions.
16
+ *
17
+ * **Example** (Nesting under a prefix)
18
+ *
19
+ * ```ts
20
+ * import { ConfigProvider } from "effect"
21
+ *
22
+ * const provider = ConfigProvider.fromEnv({
23
+ * env: { APP_HOST: "localhost", APP_PORT: "3000" }
24
+ * })
25
+ *
26
+ * // Lookups for ["HOST"] now resolve to ["APP", "HOST"]
27
+ * const scoped = ConfigProvider.nested(provider, "APP")
28
+ * ```
29
+ *
30
+ * @see {@link mapInput} – for arbitrary path transformations
31
+ *
32
+ * @category Combinators
33
+ * @since 4.0.0
34
+ */
35
+ export const nested = dual(2, (self, prefix) => {
36
+ let path = typeof prefix === "string" ? [prefix] : prefix;
37
+ if (self.mapInput)
38
+ path = self.mapInput(path);
39
+ return make(self.get, self.mapInput, self.prefix ? [...self.prefix, ...path] : path);
40
+ });
41
+ export * from "effect/ConfigProvider";
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29uZmlnUHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvQ29uZmlnUHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF1QixJQUFJLEVBQWEsTUFBTSx1QkFBdUIsQ0FBQTtBQUM1RSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFFdEM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0ErQkc7QUFDSCxNQUFNLENBQUMsTUFBTSxNQUFNLEdBR2YsSUFBSSxDQUNOLENBQUMsRUFDRCxDQUFDLElBQW9CLEVBQUUsTUFBcUIsRUFBa0IsRUFBRTtJQUM5RCxJQUFJLElBQUksR0FBUyxPQUFPLE1BQU0sS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQTtJQUMvRCxJQUFJLElBQUksQ0FBQyxRQUFRO1FBQUUsSUFBSSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDN0MsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFBO0FBQ3RGLENBQUMsQ0FDRixDQUFBO0FBRUQsY0FBYyx1QkFBdUIsQ0FBQSJ9
@@ -1,15 +1,12 @@
1
- /**
2
- * We're doing the long way around here with assignTag, TagBase & TagBaseTagged,
3
- * because there's a typescript compiler issue where it will complain about Equal.symbol, and Hash.symbol not being accessible.
4
- * https://github.com/microsoft/TypeScript/issues/52644
5
- */
6
1
  import { type Effect, Layer, type Scope, type Types } from "effect";
7
- import * as ServiceMap from "effect/ServiceMap";
8
- import { Yieldable } from "./Effect.js";
2
+ import * as SM from "effect/ServiceMap";
3
+ import { type Yieldable } from "./Effect.js";
9
4
  export * from "effect/ServiceMap";
10
- export interface Opaque<Self extends object, in out Shape extends object> extends ServiceMap.Key<Self, Self>, Yieldable<Opaque<Self, Shape>, Self, never, Self> {
11
- of(self: Shape): Self;
12
- serviceMap(self: Shape): ServiceMap.ServiceMap<Self>;
5
+ export { type ServiceMap as Context } from "effect/ServiceMap";
6
+ export { isServiceMap as isContext } from "effect/ServiceMap";
7
+ export interface Opaque<Self extends object, in out Shape extends object> extends SM.Key<Self, Self>, Yieldable<Opaque<Self, Shape>, Self, never, Self> {
8
+ of(this: void, self: Shape): Self;
9
+ serviceMap(self: Shape): SM.ServiceMap<Self>;
13
10
  toLayer: <E, R>(eff: Effect.Effect<Shape, E, R>) => Layer.Layer<Self, E, Exclude<R, Scope.Scope>>;
14
11
  use<A, E, R>(f: (service: Shape) => Effect.Effect<A, E, R>): Effect.Effect<A, E, R | Self>;
15
12
  useSync<A>(f: (service: Shape) => A): Effect.Effect<A, never, Self>;
@@ -32,7 +29,7 @@ export interface OpaqueClass<Self extends object, in out Identifier extends stri
32
29
  export declare const Opaque: {
33
30
  <Self extends object, Shape extends object>(): <const Identifier extends string, E, R = Types.unassigned, Args extends ReadonlyArray<any> = never>(id: Identifier, options?: {
34
31
  readonly make: ((...args: Args) => Effect.Effect<Shape, E, R>) | Effect.Effect<Shape, E, R> | undefined;
35
- } | undefined) => OpaqueClass<Self, Identifier, Shape> & ([Types.unassigned] extends [R] ? unknown : {
32
+ }) => OpaqueClass<Self, Identifier, Shape> & ([Types.unassigned] extends [R] ? unknown : {
36
33
  readonly make: [Args] extends [never] ? Effect.Effect<Shape, E, R> : (...args: Args) => Effect.Effect<Shape, E, R>;
37
34
  });
38
35
  <Self extends object>(): <const Identifier extends string, Make extends Effect.Effect<any, any, any> | ((...args: any) => Effect.Effect<any, any, any>)>(id: Identifier, options: {
@@ -41,4 +38,4 @@ export declare const Opaque: {
41
38
  readonly make: Make;
42
39
  };
43
40
  };
44
- //# sourceMappingURL=ServiceMap.d.ts.map
41
+ //# sourceMappingURL=Context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Context.d.ts","sourceRoot":"","sources":["../src/Context.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,87 @@
1
+ /* eslint-disable @typescript-eslint/no-explicit-any */
2
+ import { Layer } from "effect";
3
+ import * as SM from "effect/ServiceMap";
4
+ export * from "effect/ServiceMap";
5
+ export { isServiceMap as isContext } from "effect/ServiceMap";
6
+ // export interface OpaqueMake<Self extends object, in out Shape extends object, E, R>
7
+ // extends SM.Service<Self, Self>
8
+ // {
9
+ // // temp while sorting out https://github.com/Effect-TS/effect-smol/pull/1534
10
+ // of(self: Shape): Self
11
+ // serviceMap2(self: Shape): SM.ServiceMap<Self>
12
+ // // a version that leverages the Shape -> Self conversion
13
+ // toLayer: {
14
+ // <E, R>(
15
+ // eff: Effect.Effect<Shape, E, R>
16
+ // ): Layer.Layer<Self, E, Exclude<R, Scope.Scope>>
17
+ // (): Layer.Layer<Self, E, Exclude<R, Scope.Scope>>
18
+ // }
19
+ // }
20
+ export function assignTag(key, creationError) {
21
+ return (cls) => {
22
+ const tag = SM.Service(key);
23
+ let fields = tag;
24
+ if (Reflect.ownKeys(cls).includes("key")) {
25
+ const { key, ...rest } = tag;
26
+ fields = rest;
27
+ }
28
+ const t = Object.assign(cls, Object.getPrototypeOf(tag), fields);
29
+ if (!creationError) {
30
+ const limit = Error.stackTraceLimit;
31
+ Error.stackTraceLimit = 2;
32
+ creationError = new Error();
33
+ Error.stackTraceLimit = limit;
34
+ }
35
+ // the stack is used to get the location of the tag definition, if a service is not found in the registry
36
+ Object.defineProperty(t, "stack", {
37
+ get() {
38
+ return creationError.stack;
39
+ }
40
+ });
41
+ return t;
42
+ };
43
+ }
44
+ /**
45
+ * Only use this in very specific cases where using dependencies directly is prefered, like inside command handlers.
46
+ */
47
+ export const proxify = (Tag) => () => {
48
+ const cache = new Map();
49
+ const done = new Proxy(Tag, {
50
+ get(_target, prop, _receiver) {
51
+ if (prop === "use") {
52
+ // @ts-expect-error abc
53
+ return (body) => Tag.use(body);
54
+ }
55
+ if (prop in Tag) {
56
+ return Tag[prop];
57
+ }
58
+ if (cache.has(prop)) {
59
+ return cache.get(prop);
60
+ }
61
+ const fn = (...args) => Tag.use((s) => s[prop](...args));
62
+ const cn = Tag.use((s) => s[prop]);
63
+ // @effect-diagnostics effect/floatingEffect:off
64
+ Object.assign(fn, cn);
65
+ Object.setPrototypeOf(fn, Object.getPrototypeOf(cn));
66
+ cache.set(prop, fn);
67
+ return fn;
68
+ }
69
+ });
70
+ return done;
71
+ };
72
+ export const TypeId = "~ServiceMap.Opaque";
73
+ // export interface OpaqueClassMake<Self extends object, in out Identifier extends string, Shape extends object, E, R>
74
+ // extends OpaqueMake<Self, Shape, E, R>
75
+ // {
76
+ // new(_: never): Shape & { readonly [TypeId]: Identifier }
77
+ // readonly key: Identifier
78
+ // }
79
+ export const Opaque = () => (id, options) => {
80
+ const svc = SM.Service()(id, options);
81
+ return Object.assign(svc, {
82
+ toLayer: (eff) => {
83
+ return Layer.effect(svc, eff);
84
+ }
85
+ });
86
+ };
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29udGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9Db250ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUV2RCxPQUFPLEVBQWUsS0FBSyxFQUEwQixNQUFNLFFBQVEsQ0FBQTtBQUNuRSxPQUFPLEtBQUssRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBR3ZDLGNBQWMsbUJBQW1CLENBQUE7QUFHakMsT0FBTyxFQUFFLFlBQVksSUFBSSxTQUFTLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQWU3RCxzRkFBc0Y7QUFDdEYsbUNBQW1DO0FBQ25DLElBQUk7QUFDSixpRkFBaUY7QUFDakYsMEJBQTBCO0FBQzFCLGtEQUFrRDtBQUNsRCw2REFBNkQ7QUFDN0QsZUFBZTtBQUNmLGNBQWM7QUFDZCx3Q0FBd0M7QUFDeEMsdURBQXVEO0FBQ3ZELHdEQUF3RDtBQUN4RCxNQUFNO0FBQ04sSUFBSTtBQUVKLE1BQU0sVUFBVSxTQUFTLENBQ3ZCLEdBQVcsRUFDWCxhQUFxQjtJQUVyQixPQUFPLENBQW1CLEdBQU0sRUFBaUMsRUFBRTtRQUNqRSxNQUFNLEdBQUcsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFvQixHQUFHLENBQUMsQ0FBQTtRQUM5QyxJQUFJLE1BQU0sR0FBRyxHQUFHLENBQUE7UUFDaEIsSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3pDLE1BQU0sRUFBRSxHQUFHLEVBQUUsR0FBRyxJQUFJLEVBQUUsR0FBRyxHQUFHLENBQUE7WUFDNUIsTUFBTSxHQUFHLElBQVcsQ0FBQTtRQUN0QixDQUFDO1FBQ0QsTUFBTSxDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsTUFBTSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FBQTtRQUNoRSxJQUFJLENBQUMsYUFBYSxFQUFFLENB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
package/dist/Effect.d.ts CHANGED
@@ -1,8 +1,9 @@
1
- import { Effect, Option, Ref, type ServiceMap } from "effect";
1
+ import { Effect, Option, Ref } from "effect";
2
2
  import * as Def from "effect/Deferred";
3
3
  import * as Fiber from "effect/Fiber";
4
4
  import type { Scope } from "effect/Scope";
5
5
  import type { Semaphore } from "effect/Semaphore";
6
+ import type * as Context from "./Context.js";
6
7
  export * from "effect/Effect";
7
8
  export type { Effect } from "effect/Effect";
8
9
  export declare function flatMapOption<R, E, A, R2, E2, A2>(self: Effect.Effect<Option.Option<A>, E, R>, fm: (a: A) => Effect.Effect<A2, E2, R2>): Effect.Effect<Option.Option<A2>, E | E2, R | R2>;
@@ -28,8 +29,8 @@ export declare const await_: <A, E>(self: Def.Deferred<A, E>) => Effect.Effect<A
28
29
  */
29
30
  export declare function modifyWithPermitWithEffect<A>(ref: Ref.Ref<A>, semaphore: Semaphore): <R, E, A2>(mod: (a: A) => Effect.Effect<readonly [A2, A], E, R>) => Effect.Effect<A2, E, R>;
30
31
  export declare function joinAll<E, A>(fibers: Iterable<Fiber.Fiber<A, E>>): Effect.Effect<readonly A[], E>;
31
- type ServiceA<T> = T extends Effect.Effect<infer S, any, any> ? S : T extends ServiceMap.Service<any, infer S> ? S : never;
32
- type ServiceR<T> = T extends Effect.Effect<any, any, infer R> ? R : T extends ServiceMap.Service<infer I, any> ? I : never;
32
+ type ServiceA<T> = T extends Effect.Effect<infer S, any, any> ? S : T extends Context.Service<any, infer S> ? S : never;
33
+ type ServiceR<T> = T extends Effect.Effect<any, any, infer R> ? R : T extends Context.Service<infer I, any> ? I : never;
33
34
  type ServiceE<T> = T extends Effect.Effect<any, infer E, any> ? E : never;
34
35
  type ValuesR<T> = T extends {
35
36
  [s: string]: infer S;
@@ -54,12 +55,12 @@ type ValuesE<T> = T extends {
54
55
  export interface EffectUnunified<R, E, A> extends Effect.Effect<R, E, A> {
55
56
  }
56
57
  export type LowerFirst<S extends PropertyKey> = S extends `${infer First}${infer Rest}` ? `${Lowercase<First>}${Rest}` : S;
57
- export type LowerServices<T extends Record<string, ServiceMap.Service<any, any> | Effect.Effect<any, any, any>>> = {
58
+ export type LowerServices<T extends Record<string, Context.Service<any, any> | Effect.Effect<any, any, any>>> = {
58
59
  [key in keyof T as LowerFirst<key>]: ServiceA<T[key]>;
59
60
  };
60
- export declare function allLower<T extends Record<string, ServiceMap.Service<any, any> | Effect.Effect<any, any, any>>>(services: T): Effect.Effect<LowerServices<T>, ValuesE<T>, ValuesR<T>>;
61
- export declare function allLowerWith<T extends Record<string, ServiceMap.Service<any, any> | Effect.Effect<any, any, any>>, A>(services: T, fn: (services: LowerServices<T>) => A): Effect.Effect<A, ValuesE<T>, ValuesR<T>>;
62
- export declare function allLowerWithEffect<T extends Record<string, ServiceMap.Service<any, any> | Effect.Effect<any, any, any>>, R, E, A>(services: T, fn: (services: LowerServices<T>) => Effect.Effect<A, E, R>): Effect.Effect<A, E | ValuesE<T>, R | ValuesR<T>>;
61
+ export declare function allLower<T extends Record<string, Context.Service<any, any> | Effect.Effect<any, any, any>>>(services: T): Effect.Effect<LowerServices<T>, ValuesE<T>, ValuesR<T>>;
62
+ export declare function allLowerWith<T extends Record<string, Context.Service<any, any> | Effect.Effect<any, any, any>>, A>(services: T, fn: (services: LowerServices<T>) => A): Effect.Effect<A, ValuesE<T>, ValuesR<T>>;
63
+ export declare function allLowerWithEffect<T extends Record<string, Context.Service<any, any> | Effect.Effect<any, any, any>>, R, E, A>(services: T, fn: (services: LowerServices<T>) => Effect.Effect<A, E, R>): Effect.Effect<A, E | ValuesE<T>, R | ValuesR<T>>;
63
64
  /**
64
65
  * Recovers from all errors.
65
66
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Effect.d.ts","sourceRoot":"","sources":["../src/Effect.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Effect.d.ts","sourceRoot":"","sources":["../src/Effect.ts"],"names":[],"mappings":"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"}
package/dist/Effect.js CHANGED
@@ -71,7 +71,8 @@ export function joinAll(fibers) {
71
71
  export function allLower(services) {
72
72
  return Effect.all(typedKeysOf(services).reduce((prev, cur) => {
73
73
  const svc = services[cur];
74
- prev[(cur[0].toLowerCase() + cur.slice(1))] = svc; // "_id" in svc && svc._id === TagTypeId ? svc : svc
74
+ prev[(cur[0].toLowerCase() + cur.slice(1))] =
75
+ "asEffect" in svc ? svc.asEffect() : svc;
75
76
  return prev;
76
77
  }, {}), { concurrency: "inherit" });
77
78
  }
@@ -99,4 +100,4 @@ export function annotateLogscoped(key, value) {
99
100
  export function annotateLogsScoped(kvps) {
100
101
  return Effect.annotateLogsScoped(kvps);
101
102
  }
102
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRWZmZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL0VmZmVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx1REFBdUQ7QUFDdkQseUNBQXlDO0FBQ3pDLDZEQUE2RDtBQUU3RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQW1CLE1BQU0sUUFBUSxDQUFBO0FBQzdELE9BQU8sS0FBSyxHQUFHLE1BQU0saUJBQWlCLENBQUE7QUFDdEMsT0FBTyxLQUFLLEtBQUssTUFBTSxjQUFjLENBQUE7QUFHckMsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNyQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBRXhDLGNBQWMsZUFBZSxDQUFBO0FBSTdCLE1BQU0sVUFBVSxhQUFhLENBQzNCLElBQTJDLEVBQzNDLEVBQXVDO0lBRXZDLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUNoQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRTtRQUNkLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUM5QyxNQUFNLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUM7S0FDOUMsQ0FBQyxDQUFDLENBQUE7QUFDUCxDQUFDO0FBRUQsTUFBTSxVQUFVLFNBQVMsQ0FDdkIsSUFBMkMsRUFDM0MsRUFBdUM7SUFFdkMsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQ2hDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFO1FBQ2QsTUFBTSxF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
103
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRWZmZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL0VmZmVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx1REFBdUQ7QUFDdkQseUNBQXlDO0FBQ3pDLDZEQUE2RDtBQUU3RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsTUFBTSxRQUFRLENBQUE7QUFDNUMsT0FBTyxLQUFLLEdBQUcsTUFBTSxpQkFBaUIsQ0FBQTtBQUN0QyxPQUFPLEtBQUssS0FBSyxNQUFNLGNBQWMsQ0FBQTtBQUlyQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3JDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFFeEMsY0FBYyxlQUFlLENBQUE7QUFJN0IsTUFBTSxVQUFVLGFBQWEsQ0FDM0IsSUFBMkMsRUFDM0MsRUFBdUM7SUFFdkMsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQ2hDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFO1FBQ2QsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzlDLE1BQU0sRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQztLQUM5QyxDQUFDLENBQUMsQ0FBQTtBQUNQLENBQUM7QUFFRCxNQUFNLFVBQVUsU0FBUyxDQUN2QixJQUEyQyxFQUMzQyxFQUF1QztJQUV2QyxPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FDaEMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUU7UUFDZCxNQUFNLEVB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
package/dist/Layer.d.ts CHANGED
@@ -1,5 +1,6 @@
1
- import { type Array, Effect, Layer, type Scope, type ServiceMap, type Types } from "effect";
1
+ import { type Array, Effect, Layer, type Scope, type Types } from "effect";
2
2
  import { type Yieldable } from "effect/Effect";
3
+ import type * as Context from "./Context.js";
3
4
  import { type EffectGenUtils } from "./utils/gen.js";
4
5
  export * from "effect/Layer";
5
6
  type Make<S, E = never, R = never> = DependenciesOpt & (MakeEff<S, E, R> | MakeGenNo<S> | MakeGen<S, E, R>);
@@ -17,7 +18,7 @@ type MakeErr<Opts> = Opts extends {
17
18
  } ? EffectGenUtils.Error<Opts["make"]> : never;
18
19
  type MakeContext<Opts> = Opts extends {
19
20
  make: () => any;
20
- } ? EffectGenUtils.ServiceMap<Opts["make"]> : never;
21
+ } ? EffectGenUtils.Context<Opts["make"]> : never;
21
22
  type DependenciesOpt = {
22
23
  dependencies?: Array.NonEmptyReadonlyArray<Layer.Any>;
23
24
  };
@@ -35,7 +36,7 @@ type PackedLayers<I, Opts> = Layer.Layer<I, MakeErr<Opts> | MakeDepsE<Opts>, Exc
35
36
  };
36
37
  type PackedOrUnpackedLayer<I, Opts> = Opts extends Dependencies ? PackedLayers<I, Opts> & {} : Layer.Layer<I, MakeErr<Opts>, MakeContext<Opts>>;
37
38
  export declare const make: {
38
- <I, S>(tag: ServiceMap.Service<I, S>): <Opts extends Make<Types.NoInfer<S>, any, any>>(options: Opts) => PackedOrUnpackedLayer<I, Opts>;
39
- <I, S, Opts extends Make<Types.NoInfer<S>, any, any>>(tag: ServiceMap.Service<I, S>, options: Opts): PackedOrUnpackedLayer<I, Opts>;
39
+ <I, S>(tag: Context.Service<I, S>): <Opts extends Make<Types.NoInfer<S>, any, any>>(options: Opts) => PackedOrUnpackedLayer<I, Opts>;
40
+ <I, S, Opts extends Make<Types.NoInfer<S>, any, any>>(tag: Context.Service<I, S>, options: Opts): PackedOrUnpackedLayer<I, Opts>;
40
41
  };
41
42
  //# sourceMappingURL=Layer.d.ts.map