effect 4.0.0-beta.82 → 4.0.0-beta.84

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 (199) hide show
  1. package/dist/Array.d.ts +64 -64
  2. package/dist/Array.js +26 -26
  3. package/dist/Cache.d.ts +1 -1
  4. package/dist/Cache.js +1 -1
  5. package/dist/Cause.d.ts +68 -68
  6. package/dist/Cause.js +47 -47
  7. package/dist/Channel.d.ts +5 -5
  8. package/dist/Channel.js +3 -3
  9. package/dist/Clock.d.ts +1 -1
  10. package/dist/Clock.js +1 -1
  11. package/dist/Combiner.d.ts +9 -9
  12. package/dist/Combiner.js +8 -8
  13. package/dist/Config.d.ts +15 -94
  14. package/dist/Config.d.ts.map +1 -1
  15. package/dist/Config.js +22 -70
  16. package/dist/Config.js.map +1 -1
  17. package/dist/ConfigProvider.d.ts +58 -74
  18. package/dist/ConfigProvider.d.ts.map +1 -1
  19. package/dist/ConfigProvider.js +66 -41
  20. package/dist/ConfigProvider.js.map +1 -1
  21. package/dist/Console.d.ts +1 -1
  22. package/dist/Console.js +1 -1
  23. package/dist/Data.d.ts +15 -15
  24. package/dist/Data.js +3 -3
  25. package/dist/DateTime.d.ts +6 -6
  26. package/dist/DateTime.js +2 -2
  27. package/dist/Duration.d.ts +3 -3
  28. package/dist/Duration.js +3 -3
  29. package/dist/Effect.d.ts +84 -45
  30. package/dist/Effect.d.ts.map +1 -1
  31. package/dist/Effect.js +72 -33
  32. package/dist/Effect.js.map +1 -1
  33. package/dist/Equal.d.ts +7 -7
  34. package/dist/Equal.js +5 -5
  35. package/dist/Equivalence.d.ts +17 -17
  36. package/dist/Equivalence.js +13 -13
  37. package/dist/Exit.d.ts +3 -3
  38. package/dist/Exit.js +3 -3
  39. package/dist/Formatter.d.ts +5 -5
  40. package/dist/Formatter.js +4 -4
  41. package/dist/Function.d.ts +10 -10
  42. package/dist/Function.js +3 -3
  43. package/dist/HashMap.d.ts +3 -3
  44. package/dist/HashMap.js +1 -1
  45. package/dist/Iterable.d.ts +6 -6
  46. package/dist/Iterable.js +2 -2
  47. package/dist/JsonPatch.d.ts +2 -2
  48. package/dist/Layer.d.ts +1 -1
  49. package/dist/Layer.js +1 -1
  50. package/dist/Logger.d.ts +1 -1
  51. package/dist/Logger.js +1 -1
  52. package/dist/Match.d.ts +8 -8
  53. package/dist/Match.js +8 -8
  54. package/dist/Metric.d.ts +3 -3
  55. package/dist/Metric.js +3 -3
  56. package/dist/Optic.d.ts +30 -30
  57. package/dist/Optic.js +12 -12
  58. package/dist/Option.d.ts +7 -7
  59. package/dist/Option.js +7 -7
  60. package/dist/Order.d.ts +23 -23
  61. package/dist/Order.js +20 -20
  62. package/dist/Pool.d.ts +1 -1
  63. package/dist/Pool.js +1 -1
  64. package/dist/Predicate.d.ts +88 -88
  65. package/dist/Predicate.js +47 -47
  66. package/dist/PubSub.d.ts +3 -3
  67. package/dist/PubSub.js +3 -3
  68. package/dist/Reducer.d.ts +1 -1
  69. package/dist/Reducer.js +1 -1
  70. package/dist/Result.d.ts +18 -18
  71. package/dist/Result.js +8 -8
  72. package/dist/Runtime.d.ts +1 -1
  73. package/dist/Runtime.js +1 -1
  74. package/dist/Schema.d.ts +265 -120
  75. package/dist/Schema.d.ts.map +1 -1
  76. package/dist/Schema.js +285 -116
  77. package/dist/Schema.js.map +1 -1
  78. package/dist/SchemaAST.d.ts +1 -1
  79. package/dist/SchemaAST.d.ts.map +1 -1
  80. package/dist/SchemaAST.js +13 -9
  81. package/dist/SchemaAST.js.map +1 -1
  82. package/dist/SchemaGetter.d.ts +48 -48
  83. package/dist/SchemaGetter.js +44 -44
  84. package/dist/SchemaIssue.d.ts +3 -3
  85. package/dist/SchemaIssue.js +3 -3
  86. package/dist/SchemaParser.d.ts +122 -22
  87. package/dist/SchemaParser.d.ts.map +1 -1
  88. package/dist/SchemaParser.js +186 -50
  89. package/dist/SchemaParser.js.map +1 -1
  90. package/dist/SchemaRepresentation.d.ts +1 -1
  91. package/dist/SchemaRepresentation.d.ts.map +1 -1
  92. package/dist/SchemaRepresentation.js +96 -2
  93. package/dist/SchemaRepresentation.js.map +1 -1
  94. package/dist/SchemaTransformation.d.ts +20 -20
  95. package/dist/SchemaTransformation.js +18 -18
  96. package/dist/Stream.d.ts +3 -3
  97. package/dist/Stream.js +2 -2
  98. package/dist/Stream.js.map +1 -1
  99. package/dist/String.d.ts +1 -1
  100. package/dist/String.js +1 -1
  101. package/dist/Struct.d.ts +1 -1
  102. package/dist/Struct.js +1 -1
  103. package/dist/Types.d.ts +13 -13
  104. package/dist/internal/effect.js +23 -10
  105. package/dist/internal/effect.js.map +1 -1
  106. package/dist/internal/schema/cause.d.ts +2 -0
  107. package/dist/internal/schema/cause.d.ts.map +1 -0
  108. package/dist/internal/schema/cause.js +24 -0
  109. package/dist/internal/schema/cause.js.map +1 -0
  110. package/dist/internal/schema/schema.d.ts +8 -4
  111. package/dist/internal/schema/schema.d.ts.map +1 -1
  112. package/dist/internal/schema/schema.js +21 -8
  113. package/dist/internal/schema/schema.js.map +1 -1
  114. package/dist/testing/TestSchema.d.ts +3 -3
  115. package/dist/testing/TestSchema.js +1 -1
  116. package/dist/unstable/ai/AiError.d.ts +1 -1
  117. package/dist/unstable/ai/AiError.js +1 -1
  118. package/dist/unstable/ai/Chat.d.ts +1 -1
  119. package/dist/unstable/ai/Chat.js +1 -1
  120. package/dist/unstable/cli/Prompt.js +2 -2
  121. package/dist/unstable/cli/Prompt.js.map +1 -1
  122. package/dist/unstable/httpapi/HttpApiScalar.d.ts +2 -2
  123. package/dist/unstable/httpapi/HttpApiSchema.d.ts +39 -0
  124. package/dist/unstable/httpapi/HttpApiSchema.d.ts.map +1 -1
  125. package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
  126. package/dist/unstable/rpc/Rpc.d.ts +1 -1
  127. package/dist/unstable/rpc/Rpc.js +1 -1
  128. package/dist/unstable/rpc/RpcGroup.d.ts.map +1 -1
  129. package/dist/unstable/rpc/RpcGroup.js +3 -4
  130. package/dist/unstable/rpc/RpcGroup.js.map +1 -1
  131. package/dist/unstable/sql/SqlResolver.d.ts.map +1 -1
  132. package/dist/unstable/sql/SqlResolver.js +15 -2
  133. package/dist/unstable/sql/SqlResolver.js.map +1 -1
  134. package/dist/unstable/workflow/Activity.d.ts +1 -0
  135. package/dist/unstable/workflow/Activity.d.ts.map +1 -1
  136. package/dist/unstable/workflow/Activity.js +1 -0
  137. package/dist/unstable/workflow/Activity.js.map +1 -1
  138. package/dist/unstable/workflow/WorkflowEngine.js +1 -1
  139. package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
  140. package/package.json +1 -1
  141. package/src/Array.ts +65 -65
  142. package/src/Cache.ts +1 -1
  143. package/src/Cause.ts +68 -68
  144. package/src/Channel.ts +5 -5
  145. package/src/Clock.ts +1 -1
  146. package/src/Combiner.ts +9 -9
  147. package/src/Config.ts +40 -108
  148. package/src/ConfigProvider.ts +139 -100
  149. package/src/Console.ts +1 -1
  150. package/src/Data.ts +15 -15
  151. package/src/DateTime.ts +6 -6
  152. package/src/Duration.ts +3 -3
  153. package/src/Effect.ts +89 -45
  154. package/src/Equal.ts +7 -7
  155. package/src/Equivalence.ts +17 -17
  156. package/src/Exit.ts +3 -3
  157. package/src/Formatter.ts +5 -5
  158. package/src/Function.ts +10 -10
  159. package/src/HashMap.ts +3 -3
  160. package/src/Iterable.ts +6 -6
  161. package/src/JsonPatch.ts +2 -2
  162. package/src/Layer.ts +1 -1
  163. package/src/Logger.ts +1 -1
  164. package/src/Match.ts +8 -8
  165. package/src/Metric.ts +3 -3
  166. package/src/Optic.ts +30 -30
  167. package/src/Option.ts +7 -7
  168. package/src/Order.ts +23 -23
  169. package/src/Pool.ts +1 -1
  170. package/src/Predicate.ts +88 -88
  171. package/src/PubSub.ts +3 -3
  172. package/src/Reducer.ts +1 -1
  173. package/src/Result.ts +20 -20
  174. package/src/Runtime.ts +1 -1
  175. package/src/Schema.ts +314 -131
  176. package/src/SchemaAST.ts +20 -11
  177. package/src/SchemaGetter.ts +48 -48
  178. package/src/SchemaIssue.ts +3 -3
  179. package/src/SchemaParser.ts +197 -58
  180. package/src/SchemaRepresentation.ts +73 -3
  181. package/src/SchemaTransformation.ts +20 -20
  182. package/src/Stream.ts +4 -4
  183. package/src/String.ts +1 -1
  184. package/src/Struct.ts +1 -1
  185. package/src/Types.ts +13 -13
  186. package/src/internal/effect.ts +29 -10
  187. package/src/internal/schema/cause.ts +26 -0
  188. package/src/internal/schema/schema.ts +36 -10
  189. package/src/testing/TestSchema.ts +3 -3
  190. package/src/unstable/ai/AiError.ts +1 -1
  191. package/src/unstable/ai/Chat.ts +1 -1
  192. package/src/unstable/cli/Prompt.ts +1 -1
  193. package/src/unstable/httpapi/HttpApiScalar.ts +2 -2
  194. package/src/unstable/httpapi/HttpApiSchema.ts +18 -6
  195. package/src/unstable/rpc/Rpc.ts +1 -1
  196. package/src/unstable/rpc/RpcGroup.ts +3 -4
  197. package/src/unstable/sql/SqlResolver.ts +15 -2
  198. package/src/unstable/workflow/Activity.ts +2 -0
  199. package/src/unstable/workflow/WorkflowEngine.ts +1 -1
@@ -161,7 +161,7 @@ declare const SourceError_base: new <A extends Record<string, any> = {}>(args: i
161
161
  * **Gotchas**
162
162
  *
163
163
  * Do not use `SourceError` for "key not found". That case is represented by
164
- * returning `undefined` from `load` or `get`.
164
+ * returning `undefined` from `load`.
165
165
  *
166
166
  * **Example** (Failing with a SourceError)
167
167
  *
@@ -175,8 +175,8 @@ declare const SourceError_base: new <A extends Record<string, any> = {}>(args: i
175
175
  * )
176
176
  * ```
177
177
  *
178
- * @see {@link ConfigProvider} – the interface whose `load`/`get` may fail
179
- * with this error
178
+ * @see {@link ConfigProvider} – the interface whose `load` may fail with this
179
+ * error
180
180
  *
181
181
  * @category models
182
182
  * @since 4.0.0
@@ -218,13 +218,10 @@ export type Path = ReadonlyArray<string | number>;
218
218
  *
219
219
  * **Details**
220
220
  *
221
- * `load(path)` resolves `mapInput` and `prefix` transformations, then
222
- * delegates to `get`. This is what the `Config` module calls. `get(path)` is
223
- * raw access to the underlying store without path transformations.
224
- * `mapInput` and `prefix` are optional path transformations set by
225
- * {@link mapInput} and {@link nested}. All methods return
226
- * `Effect<Node | undefined, SourceError>`: `undefined` means "not found" and
227
- * `SourceError` means the source itself failed.
221
+ * `load(path)` is the semantic lookup operation used by the `Config` module.
222
+ * It applies provider transformations and composition before consulting the
223
+ * underlying source. `undefined` means "not found" and `SourceError` means the
224
+ * source itself failed.
228
225
  *
229
226
  * @see {@link make} – construct a provider from a lookup function
230
227
  * @see {@link orElse} – compose providers with fallback
@@ -243,31 +240,6 @@ export interface ConfigProvider extends Pipeable {
243
240
  * reading the backing source.
244
241
  */
245
242
  readonly load: (path: Path) => Effect.Effect<Node | undefined, SourceError>;
246
- /**
247
- * Raw access to the underlying source.
248
- *
249
- * **When to use**
250
- *
251
- * Use to read from the backing source without applying this provider's path
252
- * transformations.
253
- */
254
- readonly get: (path: Path) => Effect.Effect<Node | undefined, SourceError>;
255
- /**
256
- * Function to map the input path.
257
- *
258
- * **When to use**
259
- *
260
- * Use to store the path transformation applied before raw provider lookup.
261
- */
262
- readonly mapInput: ((path: Path) => Path) | undefined;
263
- /**
264
- * Prefix to add to the input path.
265
- *
266
- * **When to use**
267
- *
268
- * Use to store the path prefix applied before raw provider lookup.
269
- */
270
- readonly prefix: Path | undefined;
271
243
  }
272
244
  /**
273
245
  * Context reference for the active raw configuration provider, registered in the context with a
@@ -316,11 +288,7 @@ export declare const ConfigProvider: Context.Reference<ConfigProvider>;
316
288
  * `Effect<Node | undefined, SourceError>`. Return `undefined` when the path
317
289
  * does not exist; fail with `SourceError` only for actual I/O errors.
318
290
  *
319
- * The optional `mapInput` and `prefix` parameters are wired into the
320
- * resulting `load` method so that combinators like {@link mapInput} and
321
- * {@link nested} can compose without wrapping `get`.
322
- *
323
- * **Example** (A simple in-memory provider)
291
+ * **Example** (Creating a simple in-memory provider)
324
292
  *
325
293
  * ```ts
326
294
  * import { ConfigProvider, Effect } from "effect"
@@ -345,7 +313,7 @@ export declare const ConfigProvider: Context.Reference<ConfigProvider>;
345
313
  * @category constructors
346
314
  * @since 2.0.0
347
315
  */
348
- export declare function make(get: (path: Path) => Effect.Effect<Node | undefined, SourceError>, mapInput?: (path: Path) => Path, prefix?: Path): ConfigProvider;
316
+ export declare function make(get: (path: Path) => Effect.Effect<Node | undefined, SourceError>): ConfigProvider;
349
317
  /**
350
318
  * Returns a provider that falls back to `that` when `self` returns `undefined`
351
319
  * for a path.
@@ -357,7 +325,9 @@ export declare function make(get: (path: Path) => Effect.Effect<Node | undefined
357
325
  *
358
326
  * **Details**
359
327
  *
360
- * Supports both data-last and data-first calling conventions.
328
+ * Each provider keeps its own path transformations. If the combined provider
329
+ * is later transformed with {@link mapInput} or {@link nested}, the
330
+ * transformation is applied to both sides.
361
331
  *
362
332
  * **Gotchas**
363
333
  *
@@ -394,7 +364,9 @@ export declare const orElse: {
394
364
  *
395
365
  * **Details**
396
366
  *
397
- * Supports both data-last and data-first calling conventions.
367
+ * Each provider keeps its own path transformations. If the combined provider
368
+ * is later transformed with {@link mapInput} or {@link nested}, the
369
+ * transformation is applied to both sides.
398
370
  *
399
371
  * **Gotchas**
400
372
  *
@@ -431,7 +403,9 @@ export declare const orElse: {
431
403
  *
432
404
  * **Details**
433
405
  *
434
- * Supports both data-last and data-first calling conventions.
406
+ * Each provider keeps its own path transformations. If the combined provider
407
+ * is later transformed with {@link mapInput} or {@link nested}, the
408
+ * transformation is applied to both sides.
435
409
  *
436
410
  * **Gotchas**
437
411
  *
@@ -468,10 +442,11 @@ export declare const orElse: {
468
442
  *
469
443
  * **Details**
470
444
  *
471
- * The function `f` receives the full path and must return a new path. If the
472
- * provider already has a `mapInput`, the functions compose: the existing
473
- * mapping runs first, then `f`. Supports both data-last and data-first calling
474
- * conventions.
445
+ * The function `f` receives the whole path produced by earlier provider
446
+ * transformations and must return a new path. Lookup path transformations
447
+ * compose in application order: the existing transformation runs first, then
448
+ * `f` runs. For providers composed with {@link orElse}, the transformation is
449
+ * applied to each operand.
475
450
  *
476
451
  * **Example** (Uppercasing path segments)
477
452
  *
@@ -506,10 +481,11 @@ export declare const mapInput: {
506
481
  *
507
482
  * **Details**
508
483
  *
509
- * The function `f` receives the full path and must return a new path. If the
510
- * provider already has a `mapInput`, the functions compose: the existing
511
- * mapping runs first, then `f`. Supports both data-last and data-first calling
512
- * conventions.
484
+ * The function `f` receives the whole path produced by earlier provider
485
+ * transformations and must return a new path. Lookup path transformations
486
+ * compose in application order: the existing transformation runs first, then
487
+ * `f` runs. For providers composed with {@link orElse}, the transformation is
488
+ * applied to each operand.
513
489
  *
514
490
  * **Example** (Uppercasing path segments)
515
491
  *
@@ -544,10 +520,11 @@ export declare const mapInput: {
544
520
  *
545
521
  * **Details**
546
522
  *
547
- * The function `f` receives the full path and must return a new path. If the
548
- * provider already has a `mapInput`, the functions compose: the existing
549
- * mapping runs first, then `f`. Supports both data-last and data-first calling
550
- * conventions.
523
+ * The function `f` receives the whole path produced by earlier provider
524
+ * transformations and must return a new path. Lookup path transformations
525
+ * compose in application order: the existing transformation runs first, then
526
+ * `f` runs. For providers composed with {@link orElse}, the transformation is
527
+ * applied to each operand.
551
528
  *
552
529
  * **Example** (Uppercasing path segments)
553
530
  *
@@ -615,14 +592,16 @@ export declare const constantCase: (self: ConfigProvider) => ConfigProvider;
615
592
  *
616
593
  * **Details**
617
594
  *
618
- * Accepts a single string or a full `Path` array. Supports both data-last and
619
- * data-first calling conventions.
595
+ * Accepts a single string or a full `Path` array. For providers composed with
596
+ * {@link orElse}, the prefix is applied to each operand. Supports both
597
+ * data-last and data-first calling conventions.
620
598
  *
621
599
  * **Gotchas**
622
600
  *
623
- * The prefix is prepended after any `mapInput` transformation runs, so
624
- * ordering matters when composing with {@link mapInput} or
625
- * {@link constantCase}.
601
+ * Ordering matters when composing with {@link mapInput} or
602
+ * {@link constantCase}. Later provider transformations run after earlier ones:
603
+ * a later `nested` becomes the outer prefix, and a later `mapInput` sees the
604
+ * whole path produced by previous transformations.
626
605
  *
627
606
  * **Example** (Nesting under a prefix)
628
607
  *
@@ -654,14 +633,16 @@ export declare const nested: {
654
633
  *
655
634
  * **Details**
656
635
  *
657
- * Accepts a single string or a full `Path` array. Supports both data-last and
658
- * data-first calling conventions.
636
+ * Accepts a single string or a full `Path` array. For providers composed with
637
+ * {@link orElse}, the prefix is applied to each operand. Supports both
638
+ * data-last and data-first calling conventions.
659
639
  *
660
640
  * **Gotchas**
661
641
  *
662
- * The prefix is prepended after any `mapInput` transformation runs, so
663
- * ordering matters when composing with {@link mapInput} or
664
- * {@link constantCase}.
642
+ * Ordering matters when composing with {@link mapInput} or
643
+ * {@link constantCase}. Later provider transformations run after earlier ones:
644
+ * a later `nested` becomes the outer prefix, and a later `mapInput` sees the
645
+ * whole path produced by previous transformations.
665
646
  *
666
647
  * **Example** (Nesting under a prefix)
667
648
  *
@@ -693,14 +674,16 @@ export declare const nested: {
693
674
  *
694
675
  * **Details**
695
676
  *
696
- * Accepts a single string or a full `Path` array. Supports both data-last and
697
- * data-first calling conventions.
677
+ * Accepts a single string or a full `Path` array. For providers composed with
678
+ * {@link orElse}, the prefix is applied to each operand. Supports both
679
+ * data-last and data-first calling conventions.
698
680
  *
699
681
  * **Gotchas**
700
682
  *
701
- * The prefix is prepended after any `mapInput` transformation runs, so
702
- * ordering matters when composing with {@link mapInput} or
703
- * {@link constantCase}.
683
+ * Ordering matters when composing with {@link mapInput} or
684
+ * {@link constantCase}. Later provider transformations run after earlier ones:
685
+ * a later `nested` becomes the outer prefix, and a later `mapInput` sees the
686
+ * whole path produced by previous transformations.
704
687
  *
705
688
  * **Example** (Nesting under a prefix)
706
689
  *
@@ -735,7 +718,7 @@ export declare const nested: {
735
718
  * Accepts either a plain `ConfigProvider` or an `Effect` that produces one.
736
719
  * When given an Effect, it is evaluated once when the layer is built.
737
720
  *
738
- * **Example** (Using a JSON object as the config source)
721
+ * **Example** (Reading config from a JSON object)
739
722
  *
740
723
  * ```ts
741
724
  * import { Config, ConfigProvider, Effect, Layer } from "effect"
@@ -983,8 +966,9 @@ export declare const fromDotEnv: (options?: {
983
966
  *
984
967
  * Resolution tries a regular file first and returns a `Value` node with
985
968
  * trimmed file contents. If the file read fails, it tries a directory and
986
- * returns a `Record` node with immediate child names as keys. If both fail, it
987
- * returns `SourceError`.
969
+ * returns a `Record` node with immediate child names as keys. If both fail with
970
+ * `NotFound`, it returns `undefined`. Other platform failures return
971
+ * `SourceError`.
988
972
  *
989
973
  * Requires `Path` and `FileSystem` in the Effect context. Defaults to root
990
974
  * path `/`; override with `{ rootPath: "/etc/config" }`.
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigProvider.d.ts","sourceRoot":"","sources":["../src/ConfigProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ConfigProvider.d.ts","sourceRoot":"","sources":["../src/ConfigProvider.ts"],"names":[],"mappings":"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"}
@@ -136,7 +136,7 @@ export function makeArray(length, value) {
136
136
  * **Gotchas**
137
137
  *
138
138
  * Do not use `SourceError` for "key not found". That case is represented by
139
- * returning `undefined` from `load` or `get`.
139
+ * returning `undefined` from `load`.
140
140
  *
141
141
  * **Example** (Failing with a SourceError)
142
142
  *
@@ -150,8 +150,8 @@ export function makeArray(length, value) {
150
150
  * )
151
151
  * ```
152
152
  *
153
- * @see {@link ConfigProvider} – the interface whose `load`/`get` may fail
154
- * with this error
153
+ * @see {@link ConfigProvider} – the interface whose `load` may fail with this
154
+ * error
155
155
  *
156
156
  * @category models
157
157
  * @since 4.0.0
@@ -200,6 +200,29 @@ const Proto = {
200
200
  };
201
201
  }
202
202
  };
203
+ const identityPath = path => path;
204
+ function makeProvider(state, load) {
205
+ const self = Object.create(Proto);
206
+ self.state = state;
207
+ self.load = load;
208
+ return self;
209
+ }
210
+ function makeSource(get, transform) {
211
+ const state = {
212
+ _tag: "Source",
213
+ get,
214
+ transform
215
+ };
216
+ return makeProvider(state, path => state.get(state.transform(path)));
217
+ }
218
+ function makeOrElse(first, second) {
219
+ const state = {
220
+ _tag: "OrElse",
221
+ first,
222
+ second
223
+ };
224
+ return makeProvider(state, path => Effect.flatMap(state.first.load(path), node => node ? Effect.succeed(node) : state.second.load(path)));
225
+ }
203
226
  /**
204
227
  * Creates a `ConfigProvider` from a raw lookup function.
205
228
  *
@@ -214,11 +237,7 @@ const Proto = {
214
237
  * `Effect<Node | undefined, SourceError>`. Return `undefined` when the path
215
238
  * does not exist; fail with `SourceError` only for actual I/O errors.
216
239
  *
217
- * The optional `mapInput` and `prefix` parameters are wired into the
218
- * resulting `load` method so that combinators like {@link mapInput} and
219
- * {@link nested} can compose without wrapping `get`.
220
- *
221
- * **Example** (A simple in-memory provider)
240
+ * **Example** (Creating a simple in-memory provider)
222
241
  *
223
242
  * ```ts
224
243
  * import { ConfigProvider, Effect } from "effect"
@@ -243,17 +262,8 @@ const Proto = {
243
262
  * @category constructors
244
263
  * @since 2.0.0
245
264
  */
246
- export function make(get, mapInput, prefix) {
247
- const self = Object.create(Proto);
248
- self.get = get;
249
- self.mapInput = mapInput;
250
- self.prefix = prefix;
251
- self.load = path => {
252
- if (mapInput) path = mapInput(path);
253
- if (prefix) path = [...prefix, ...path];
254
- return get(path);
255
- };
256
- return self;
265
+ export function make(get) {
266
+ return makeSource(get, identityPath);
257
267
  }
258
268
  /**
259
269
  * Returns a provider that falls back to `that` when `self` returns `undefined`
@@ -266,7 +276,9 @@ export function make(get, mapInput, prefix) {
266
276
  *
267
277
  * **Details**
268
278
  *
269
- * Supports both data-last and data-first calling conventions.
279
+ * Each provider keeps its own path transformations. If the combined provider
280
+ * is later transformed with {@link mapInput} or {@link nested}, the
281
+ * transformation is applied to both sides.
270
282
  *
271
283
  * **Gotchas**
272
284
  *
@@ -291,7 +303,7 @@ export function make(get, mapInput, prefix) {
291
303
  * @category combinators
292
304
  * @since 2.0.0
293
305
  */
294
- export const orElse = /*#__PURE__*/dual(2, (self, that) => make(path => Effect.flatMap(self.get(path), node => node ? Effect.succeed(node) : that.get(path))));
306
+ export const orElse = /*#__PURE__*/dual(2, (self, that) => makeOrElse(self, that));
295
307
  /**
296
308
  * Transforms the path segments before they reach the underlying store.
297
309
  *
@@ -302,10 +314,11 @@ export const orElse = /*#__PURE__*/dual(2, (self, that) => make(path => Effect.f
302
314
  *
303
315
  * **Details**
304
316
  *
305
- * The function `f` receives the full path and must return a new path. If the
306
- * provider already has a `mapInput`, the functions compose: the existing
307
- * mapping runs first, then `f`. Supports both data-last and data-first calling
308
- * conventions.
317
+ * The function `f` receives the whole path produced by earlier provider
318
+ * transformations and must return a new path. Lookup path transformations
319
+ * compose in application order: the existing transformation runs first, then
320
+ * `f` runs. For providers composed with {@link orElse}, the transformation is
321
+ * applied to each operand.
309
322
  *
310
323
  * **Example** (Uppercasing path segments)
311
324
  *
@@ -330,7 +343,13 @@ export const orElse = /*#__PURE__*/dual(2, (self, that) => make(path => Effect.f
330
343
  * @since 4.0.0
331
344
  */
332
345
  export const mapInput = /*#__PURE__*/dual(2, (self, f) => {
333
- return make(self.get, self.mapInput ? flow(self.mapInput, f) : f, self.prefix ? f(self.prefix) : undefined);
346
+ const state = self.state;
347
+ switch (state._tag) {
348
+ case "Source":
349
+ return makeSource(state.get, flow(state.transform, f));
350
+ case "OrElse":
351
+ return makeOrElse(mapInput(state.first, f), mapInput(state.second, f));
352
+ }
334
353
  });
335
354
  /**
336
355
  * Converts all string path segments to `CONSTANT_CASE` before lookup.
@@ -374,14 +393,16 @@ export const constantCase = /*#__PURE__*/mapInput(path => path.map(seg => typeof
374
393
  *
375
394
  * **Details**
376
395
  *
377
- * Accepts a single string or a full `Path` array. Supports both data-last and
378
- * data-first calling conventions.
396
+ * Accepts a single string or a full `Path` array. For providers composed with
397
+ * {@link orElse}, the prefix is applied to each operand. Supports both
398
+ * data-last and data-first calling conventions.
379
399
  *
380
400
  * **Gotchas**
381
401
  *
382
- * The prefix is prepended after any `mapInput` transformation runs, so
383
- * ordering matters when composing with {@link mapInput} or
384
- * {@link constantCase}.
402
+ * Ordering matters when composing with {@link mapInput} or
403
+ * {@link constantCase}. Later provider transformations run after earlier ones:
404
+ * a later `nested` becomes the outer prefix, and a later `mapInput` sees the
405
+ * whole path produced by previous transformations.
385
406
  *
386
407
  * **Example** (Nesting under a prefix)
387
408
  *
@@ -403,7 +424,13 @@ export const constantCase = /*#__PURE__*/mapInput(path => path.map(seg => typeof
403
424
  */
404
425
  export const nested = /*#__PURE__*/dual(2, (self, prefix) => {
405
426
  const path = typeof prefix === "string" ? [prefix] : prefix;
406
- return make(self.get, self.mapInput, self.prefix ? [...self.prefix, ...path] : path);
427
+ const state = self.state;
428
+ switch (state._tag) {
429
+ case "Source":
430
+ return makeSource(state.get, flow(state.transform, input => [...path, ...input]));
431
+ case "OrElse":
432
+ return makeOrElse(nested(state.first, path), nested(state.second, path));
433
+ }
407
434
  });
408
435
  /**
409
436
  * Provides a layer that installs a `ConfigProvider` as the active provider for
@@ -418,7 +445,7 @@ export const nested = /*#__PURE__*/dual(2, (self, prefix) => {
418
445
  * Accepts either a plain `ConfigProvider` or an `Effect` that produces one.
419
446
  * When given an Effect, it is evaluated once when the layer is built.
420
447
  *
421
- * **Example** (Using a JSON object as the config source)
448
+ * **Example** (Reading config from a JSON object)
422
449
  *
423
450
  * ```ts
424
451
  * import { Config, ConfigProvider, Effect, Layer } from "effect"
@@ -825,8 +852,9 @@ export const fromDotEnv = /*#__PURE__*/Effect.fnUntraced(function* (options) {
825
852
  *
826
853
  * Resolution tries a regular file first and returns a `Value` node with
827
854
  * trimmed file contents. If the file read fails, it tries a directory and
828
- * returns a `Record` node with immediate child names as keys. If both fail, it
829
- * returns `SourceError`.
855
+ * returns a `Record` node with immediate child names as keys. If both fail with
856
+ * `NotFound`, it returns `undefined`. Other platform failures return
857
+ * `SourceError`.
830
858
  *
831
859
  * Requires `Path` and `FileSystem` in the Effect context. Defaults to root
832
860
  * path `/`; override with `{ rootPath: "/etc/config" }`.
@@ -859,15 +887,12 @@ export const fromDir = /*#__PURE__*/Effect.fnUntraced(function* (options) {
859
887
  // Try reading as a *file*
860
888
  const asFile = fs.readFileString(fullPath).pipe(Effect.map(content => makeValue(content.trim())));
861
889
  // If not a file, try reading as a *directory*
862
- const asDirectory = fs.readDirectory(fullPath).pipe(Effect.map(entries => {
863
- // Support both string paths and DirEntry-like objects
864
- const keys = entries.map(e => typeof e === "string" ? platformPath.basename(e) : format(e?.name ?? ""));
865
- return makeRecord(new Set(keys));
866
- }));
867
- return asFile.pipe(Effect.catch(() => asDirectory), Effect.mapError(cause => new SourceError({
890
+ const asDirectory = fs.readDirectory(fullPath).pipe(Effect.map(entries => makeRecord(new Set(entries.map(entry => platformPath.basename(entry))))));
891
+ return asFile.pipe(Effect.catch(fileCause => asDirectory.pipe(Effect.catch(dirCause => isNotFound(fileCause) && isNotFound(dirCause) ? Effect.succeed(undefined) : Effect.fail(isNotFound(fileCause) ? dirCause : fileCause)))), Effect.mapError(cause => new SourceError({
868
892
  message: `Failed to read file at ${platformPath.join(rootPath, ...path.map(String))}`,
869
893
  cause
870
894
  })));
871
895
  });
872
896
  });
897
+ const isNotFound = cause => cause.reason._tag === "NotFound";
873
898
  //# sourceMappingURL=ConfigProvider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigProvider.js","names":["Context","Data","Effect","FileSystem","format","dual","flow","PipeInspectableProto","Layer","Path_","Predicate","Str","makeValue","value","_tag","makeRecord","keys","makeArray","length","SourceError","TaggedError","ConfigProvider","Reference","defaultValue","fromEnv","Proto","toJSON","_id","make","get","mapInput","prefix","self","Object","create","load","path","orElse","that","flatMap","node","succeed","f","undefined","constantCase","map","seg","nested","layer","isEffect","effect","layerAdd","options","gen","current","configProvider","asPrimary","fromUnknown","root","nodeAtJson","cur","Array","isArray","Number","isInteger","isObject","hasOwn","describeUnknown","u","String","Set","env","globalThis","process","import","meta","trie","buildEnvTrie","nodeAtEnv","name","entries","segments","split","children","NUMERIC_INDEX","key","join","leafValue","trieNode","trieNodeAt","allNumeric","every","k","test","Math","max","parseInt","fromDotEnvContents","lines","parseDotEnvContents","expandVariables","dotEnvExpand","DOT_ENV_LINE","obj","replace","match","exec","trim","maybeQuote","parsed","newParsed","configKey","interpolate","envValue","lastUnescapedDollarSignIndex","searchLast","rightMostGroup","slice","matchGroup","_","group","variableName","str","rgx","matches","from","matchAll","index","fromDotEnv","fnUntraced","fs","content","readFileString","fromDir","platformPath","Path","rootPath","fullPath","asFile","pipe","asDirectory","readDirectory","e","basename","catch","mapError","cause","message"],"sources":["../src/ConfigProvider.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"ConfigProvider.js","names":["Context","Data","Effect","FileSystem","format","dual","flow","PipeInspectableProto","Layer","Path_","Predicate","Str","makeValue","value","_tag","makeRecord","keys","makeArray","length","SourceError","TaggedError","ConfigProvider","Reference","defaultValue","fromEnv","Proto","toJSON","_id","identityPath","path","makeProvider","state","load","self","Object","create","makeSource","get","transform","makeOrElse","first","second","flatMap","node","succeed","make","orElse","that","mapInput","f","constantCase","map","seg","nested","prefix","input","layer","isEffect","effect","layerAdd","options","gen","current","configProvider","asPrimary","fromUnknown","root","nodeAtJson","cur","undefined","Array","isArray","Number","isInteger","isObject","hasOwn","describeUnknown","u","String","Set","env","globalThis","process","import","meta","trie","buildEnvTrie","nodeAtEnv","name","entries","segments","split","children","NUMERIC_INDEX","key","join","leafValue","trieNode","trieNodeAt","allNumeric","every","k","test","Math","max","parseInt","fromDotEnvContents","lines","parseDotEnvContents","expandVariables","dotEnvExpand","DOT_ENV_LINE","obj","replace","match","exec","trim","maybeQuote","parsed","newParsed","configKey","interpolate","envValue","lastUnescapedDollarSignIndex","searchLast","rightMostGroup","slice","matchGroup","_","group","variableName","str","rgx","matches","from","matchAll","index","fromDotEnv","fnUntraced","fs","content","readFileString","fromDir","platformPath","Path","rootPath","fullPath","asFile","pipe","asDirectory","readDirectory","entry","basename","catch","fileCause","dirCause","isNotFound","fail","mapError","cause","message","reason"],"sources":["../src/ConfigProvider.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/dist/Console.d.ts CHANGED
@@ -72,7 +72,7 @@ export declare const Console: Context.Reference<Console>;
72
72
  /**
73
73
  * Creates an Effect that provides access to the current console service and lets you perform operations with it within an Effect context.
74
74
  *
75
- * **Example** (Using the current console service)
75
+ * **Example** (Accessing the current console service)
76
76
  *
77
77
  * ```ts
78
78
  * import { Console, Effect } from "effect"
package/dist/Console.js CHANGED
@@ -34,7 +34,7 @@ export const Console = effect.ConsoleRef;
34
34
  /**
35
35
  * Creates an Effect that provides access to the current console service and lets you perform operations with it within an Effect context.
36
36
  *
37
- * **Example** (Using the current console service)
37
+ * **Example** (Accessing the current console service)
38
38
  *
39
39
  * ```ts
40
40
  * import { Console, Effect } from "effect"