effect 4.0.0-beta.26 → 4.0.0-beta.27

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 (57) hide show
  1. package/dist/Cause.d.ts +1 -1
  2. package/dist/Data.d.ts +2 -2
  3. package/dist/Data.js +2 -2
  4. package/dist/Effect.d.ts +31 -22
  5. package/dist/Effect.d.ts.map +1 -1
  6. package/dist/Effect.js +14 -11
  7. package/dist/Effect.js.map +1 -1
  8. package/dist/ErrorReporter.d.ts +2 -4
  9. package/dist/ErrorReporter.d.ts.map +1 -1
  10. package/dist/ErrorReporter.js +1 -3
  11. package/dist/ErrorReporter.js.map +1 -1
  12. package/dist/Layer.d.ts +112 -117
  13. package/dist/Layer.d.ts.map +1 -1
  14. package/dist/Layer.js +43 -44
  15. package/dist/Layer.js.map +1 -1
  16. package/dist/LayerMap.d.ts +4 -4
  17. package/dist/LayerMap.js +3 -3
  18. package/dist/ManagedRuntime.d.ts +1 -1
  19. package/dist/ManagedRuntime.js +1 -1
  20. package/dist/Metric.d.ts +2 -4
  21. package/dist/Metric.d.ts.map +1 -1
  22. package/dist/Metric.js +2 -4
  23. package/dist/Metric.js.map +1 -1
  24. package/dist/Schedule.d.ts +36 -36
  25. package/dist/Schedule.js +14 -14
  26. package/dist/index.d.ts +1 -1
  27. package/dist/index.js +1 -1
  28. package/dist/unstable/cli/CliError.d.ts +4 -4
  29. package/dist/unstable/cli/CliError.js +4 -4
  30. package/dist/unstable/cli/Primitive.d.ts +1 -1
  31. package/dist/unstable/cli/Primitive.js +1 -1
  32. package/dist/unstable/http/Headers.d.ts +16 -0
  33. package/dist/unstable/http/Headers.d.ts.map +1 -1
  34. package/dist/unstable/http/Headers.js +11 -0
  35. package/dist/unstable/http/Headers.js.map +1 -1
  36. package/dist/unstable/httpapi/HttpApiBuilder.js +5 -0
  37. package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
  38. package/dist/unstable/schema/Model.d.ts +21 -0
  39. package/dist/unstable/schema/Model.d.ts.map +1 -1
  40. package/dist/unstable/schema/Model.js +15 -0
  41. package/dist/unstable/schema/Model.js.map +1 -1
  42. package/package.json +1 -1
  43. package/src/Cause.ts +1 -1
  44. package/src/Data.ts +2 -2
  45. package/src/Effect.ts +31 -22
  46. package/src/ErrorReporter.ts +2 -4
  47. package/src/Layer.ts +112 -117
  48. package/src/LayerMap.ts +4 -4
  49. package/src/ManagedRuntime.ts +1 -1
  50. package/src/Metric.ts +2 -4
  51. package/src/Schedule.ts +36 -36
  52. package/src/index.ts +1 -1
  53. package/src/unstable/cli/CliError.ts +4 -4
  54. package/src/unstable/cli/Primitive.ts +1 -1
  55. package/src/unstable/http/Headers.ts +34 -0
  56. package/src/unstable/httpapi/HttpApiBuilder.ts +3 -0
  57. package/src/unstable/schema/Model.ts +31 -0
package/dist/Cause.d.ts CHANGED
@@ -1129,7 +1129,7 @@ export declare const pretty: <E>(cause: Cause<E>) => string;
1129
1129
  * const error = new Cause.NoSuchElementError("not found")
1130
1130
  *
1131
1131
  * const program = Effect.gen(function*() {
1132
- * yield* error // fails the effect with NoSuchElementError
1132
+ * return yield* error // fails the effect with NoSuchElementError
1133
1133
  * })
1134
1134
  * ```
1135
1135
  *
package/dist/Data.d.ts CHANGED
@@ -875,7 +875,7 @@ export declare const taggedEnum: {
875
875
  * }> {}
876
876
  *
877
877
  * const program = Effect.gen(function*() {
878
- * yield* new NetworkError({ code: 500, message: "timeout" })
878
+ * return yield* new NetworkError({ code: 500, message: "timeout" })
879
879
  * })
880
880
  *
881
881
  * // The effect fails with a NetworkError
@@ -916,7 +916,7 @@ export declare const Error: new <A extends Record<string, any> = {}>(args: Types
916
916
  * }> {}
917
917
  *
918
918
  * const program = Effect.gen(function*() {
919
- * yield* new NotFound({ resource: "/users/42" })
919
+ * return yield* new NotFound({ resource: "/users/42" })
920
920
  * })
921
921
  *
922
922
  * const recovered = program.pipe(
package/dist/Data.js CHANGED
@@ -185,7 +185,7 @@ function taggedMatch() {
185
185
  * }> {}
186
186
  *
187
187
  * const program = Effect.gen(function*() {
188
- * yield* new NetworkError({ code: 500, message: "timeout" })
188
+ * return yield* new NetworkError({ code: 500, message: "timeout" })
189
189
  * })
190
190
  *
191
191
  * // The effect fails with a NetworkError
@@ -224,7 +224,7 @@ export const Error = core.Error;
224
224
  * }> {}
225
225
  *
226
226
  * const program = Effect.gen(function*() {
227
- * yield* new NotFound({ resource: "/users/42" })
227
+ * return yield* new NotFound({ resource: "/users/42" })
228
228
  * })
229
229
  *
230
230
  * const recovered = program.pipe(
package/dist/Effect.d.ts CHANGED
@@ -2200,17 +2200,17 @@ export declare const fromOption: <A>(option: Option<A>) => Effect<A, Cause.NoSuc
2200
2200
  * ```ts
2201
2201
  * import { Console, Effect } from "effect"
2202
2202
  *
2203
- * const input: string | null = null
2204
- *
2205
- * const program = Effect.gen(function*() {
2203
+ * const program = Effect.fn(function*(input: string | null) {
2206
2204
  * const value = yield* Effect.fromNullishOr(input)
2207
2205
  * yield* Console.log(value)
2208
- * }).pipe(
2206
+ * },
2209
2207
  * Effect.catch(() => Console.log("missing"))
2210
2208
  * )
2211
2209
  *
2212
- * Effect.runPromise(program)
2210
+ * Effect.runPromise(program(null))
2213
2211
  * // Output: missing
2212
+ * Effect.runPromise(program("hello"))
2213
+ * // Output: hello
2214
2214
  * ```
2215
2215
  *
2216
2216
  * @since 4.0.0
@@ -6096,7 +6096,7 @@ export declare const tapDefect: {
6096
6096
  * attempts++
6097
6097
  * yield* Console.log(`Attempt ${attempts}`)
6098
6098
  * if (attempts < 3) {
6099
- * yield* Effect.fail("Not ready")
6099
+ * return yield* Effect.fail("Not ready")
6100
6100
  * }
6101
6101
  * return "Ready"
6102
6102
  * })
@@ -6820,7 +6820,10 @@ export declare const ignoreCause: <Arg extends Effect<any, any, any> | {
6820
6820
  *
6821
6821
  * const fetchUrl = Effect.gen(function*() {
6822
6822
  * const endpoint = yield* Effect.service(Endpoint)
6823
- * return endpoint.url === "bad" ? yield* Effect.fail("Unavailable") : endpoint.url
6823
+ * if (endpoint.url === "bad") {
6824
+ * return yield* Effect.fail("Unavailable")
6825
+ * }
6826
+ * return endpoint.url
6824
6827
  * })
6825
6828
  *
6826
6829
  * const plan = ExecutionPlan.make(
@@ -6851,7 +6854,10 @@ export declare const withExecutionPlan: {
6851
6854
  *
6852
6855
  * const fetchUrl = Effect.gen(function*() {
6853
6856
  * const endpoint = yield* Effect.service(Endpoint)
6854
- * return endpoint.url === "bad" ? yield* Effect.fail("Unavailable") : endpoint.url
6857
+ * if (endpoint.url === "bad") {
6858
+ * return yield* Effect.fail("Unavailable")
6859
+ * }
6860
+ * return endpoint.url
6855
6861
  * })
6856
6862
  *
6857
6863
  * const plan = ExecutionPlan.make(
@@ -6887,7 +6893,10 @@ export declare const withExecutionPlan: {
6887
6893
  *
6888
6894
  * const fetchUrl = Effect.gen(function*() {
6889
6895
  * const endpoint = yield* Effect.service(Endpoint)
6890
- * return endpoint.url === "bad" ? yield* Effect.fail("Unavailable") : endpoint.url
6896
+ * if (endpoint.url === "bad") {
6897
+ * return yield* Effect.fail("Unavailable")
6898
+ * }
6899
+ * return endpoint.url
6891
6900
  * })
6892
6901
  *
6893
6902
  * const plan = ExecutionPlan.make(
@@ -9612,7 +9621,7 @@ export declare const isSuccess: <A, E, R>(self: Effect<A, E, R>) => Effect<boole
9612
9621
  * @since 2.0.0
9613
9622
  * @category Environment
9614
9623
  */
9615
- export declare const services: <R>() => Effect<ServiceMap.ServiceMap<R>, never, R>;
9624
+ export declare const services: <R = never>() => Effect<ServiceMap.ServiceMap<R>, never, R>;
9616
9625
  /**
9617
9626
  * Transforms the current service map using the provided function.
9618
9627
  *
@@ -9674,7 +9683,7 @@ export declare const servicesWith: <R, A, E, R2>(f: (services: ServiceMap.Servic
9674
9683
  * const Database = ServiceMap.Service<Database>("Database")
9675
9684
  *
9676
9685
  * const DatabaseLive = Layer.succeed(Database)({
9677
- * query: (sql: string) => Effect.succeed(`Result for: ${sql}`)
9686
+ * query: Effect.fn("Database.query")((sql: string) => Effect.succeed(`Result for: ${sql}`))
9678
9687
  * })
9679
9688
  *
9680
9689
  * const program = Effect.gen(function*() {
@@ -9708,7 +9717,7 @@ export declare const provide: {
9708
9717
  * const Database = ServiceMap.Service<Database>("Database")
9709
9718
  *
9710
9719
  * const DatabaseLive = Layer.succeed(Database)({
9711
- * query: (sql: string) => Effect.succeed(`Result for: ${sql}`)
9720
+ * query: Effect.fn("Database.query")((sql: string) => Effect.succeed(`Result for: ${sql}`))
9712
9721
  * })
9713
9722
  *
9714
9723
  * const program = Effect.gen(function*() {
@@ -9744,7 +9753,7 @@ export declare const provide: {
9744
9753
  * const Database = ServiceMap.Service<Database>("Database")
9745
9754
  *
9746
9755
  * const DatabaseLive = Layer.succeed(Database)({
9747
- * query: (sql: string) => Effect.succeed(`Result for: ${sql}`)
9756
+ * query: Effect.fn("Database.query")((sql: string) => Effect.succeed(`Result for: ${sql}`))
9748
9757
  * })
9749
9758
  *
9750
9759
  * const program = Effect.gen(function*() {
@@ -9780,7 +9789,7 @@ export declare const provide: {
9780
9789
  * const Database = ServiceMap.Service<Database>("Database")
9781
9790
  *
9782
9791
  * const DatabaseLive = Layer.succeed(Database)({
9783
- * query: (sql: string) => Effect.succeed(`Result for: ${sql}`)
9792
+ * query: Effect.fn("Database.query")((sql: string) => Effect.succeed(`Result for: ${sql}`))
9784
9793
  * })
9785
9794
  *
9786
9795
  * const program = Effect.gen(function*() {
@@ -9814,7 +9823,7 @@ export declare const provide: {
9814
9823
  * const Database = ServiceMap.Service<Database>("Database")
9815
9824
  *
9816
9825
  * const DatabaseLive = Layer.succeed(Database)({
9817
- * query: (sql: string) => Effect.succeed(`Result for: ${sql}`)
9826
+ * query: Effect.fn("Database.query")((sql: string) => Effect.succeed(`Result for: ${sql}`))
9818
9827
  * })
9819
9828
  *
9820
9829
  * const program = Effect.gen(function*() {
@@ -9850,7 +9859,7 @@ export declare const provide: {
9850
9859
  * const Database = ServiceMap.Service<Database>("Database")
9851
9860
  *
9852
9861
  * const DatabaseLive = Layer.succeed(Database)({
9853
- * query: (sql: string) => Effect.succeed(`Result for: ${sql}`)
9862
+ * query: Effect.fn("Database.query")((sql: string) => Effect.succeed(`Result for: ${sql}`))
9854
9863
  * })
9855
9864
  *
9856
9865
  * const program = Effect.gen(function*() {
@@ -9886,7 +9895,7 @@ export declare const provide: {
9886
9895
  * const Database = ServiceMap.Service<Database>("Database")
9887
9896
  *
9888
9897
  * const DatabaseLive = Layer.succeed(Database)({
9889
- * query: (sql: string) => Effect.succeed(`Result for: ${sql}`)
9898
+ * query: Effect.fn("Database.query")((sql: string) => Effect.succeed(`Result for: ${sql}`))
9890
9899
  * })
9891
9900
  *
9892
9901
  * const program = Effect.gen(function*() {
@@ -12059,8 +12068,8 @@ export declare const cachedInvalidateWithTTL: {
12059
12068
  * import { Effect } from "effect"
12060
12069
  *
12061
12070
  * const program = Effect.gen(function*() {
12062
- * yield* Effect.interrupt
12063
- * yield* Effect.succeed("This won't execute")
12071
+ * return yield* Effect.interrupt
12072
+ * yield* Effect.succeed("This won't execute and is unreachable")
12064
12073
  * })
12065
12074
  *
12066
12075
  * Effect.runPromise(program).catch(console.error)
@@ -12829,7 +12838,7 @@ export declare const repeat: {
12829
12838
  * attempt++
12830
12839
  * if (attempt <= 2) {
12831
12840
  * yield* Console.log(`Attempt ${attempt} failed`)
12832
- * yield* Effect.fail(`Error ${attempt}`)
12841
+ * return yield* Effect.fail(`Error ${attempt}`)
12833
12842
  * }
12834
12843
  * yield* Console.log(`Attempt ${attempt} succeeded`)
12835
12844
  * return "success"
@@ -12879,7 +12888,7 @@ export declare const repeatOrElse: {
12879
12888
  * attempt++
12880
12889
  * if (attempt <= 2) {
12881
12890
  * yield* Console.log(`Attempt ${attempt} failed`)
12882
- * yield* Effect.fail(`Error ${attempt}`)
12891
+ * return yield* Effect.fail(`Error ${attempt}`)
12883
12892
  * }
12884
12893
  * yield* Console.log(`Attempt ${attempt} succeeded`)
12885
12894
  * return "success"
@@ -12929,7 +12938,7 @@ export declare const repeatOrElse: {
12929
12938
  * attempt++
12930
12939
  * if (attempt <= 2) {
12931
12940
  * yield* Console.log(`Attempt ${attempt} failed`)
12932
- * yield* Effect.fail(`Error ${attempt}`)
12941
+ * return yield* Effect.fail(`Error ${attempt}`)
12933
12942
  * }
12934
12943
  * yield* Console.log(`Attempt ${attempt} succeeded`)
12935
12944
  * return "success"