effect 3.12.11 → 3.13.0
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.
- package/README.md +38 -49
- package/dist/cjs/Channel.js.map +1 -1
- package/dist/cjs/DateTime.js +17 -1
- package/dist/cjs/DateTime.js.map +1 -1
- package/dist/cjs/Differ.js.map +1 -1
- package/dist/cjs/Duration.js +128 -1
- package/dist/cjs/Duration.js.map +1 -1
- package/dist/cjs/Effect.js +175 -37
- package/dist/cjs/Effect.js.map +1 -1
- package/dist/cjs/Either.js +2 -1
- package/dist/cjs/Either.js.map +1 -1
- package/dist/cjs/FiberHandle.js +54 -21
- package/dist/cjs/FiberHandle.js.map +1 -1
- package/dist/cjs/FiberMap.js +51 -24
- package/dist/cjs/FiberMap.js.map +1 -1
- package/dist/cjs/FiberSet.js +50 -17
- package/dist/cjs/FiberSet.js.map +1 -1
- package/dist/cjs/HashMap.js +19 -1
- package/dist/cjs/HashMap.js.map +1 -1
- package/dist/cjs/HashSet.js +9 -1
- package/dist/cjs/HashSet.js.map +1 -1
- package/dist/cjs/Layer.js +21 -1
- package/dist/cjs/Layer.js.map +1 -1
- package/dist/cjs/Match.js +659 -38
- package/dist/cjs/Match.js.map +1 -1
- package/dist/cjs/RcMap.js +11 -1
- package/dist/cjs/RcMap.js.map +1 -1
- package/dist/cjs/Reloadable.js.map +1 -1
- package/dist/cjs/STM.js.map +1 -1
- package/dist/cjs/Schedule.js +1074 -309
- package/dist/cjs/Schedule.js.map +1 -1
- package/dist/cjs/Schema.js +73 -1
- package/dist/cjs/Schema.js.map +1 -1
- package/dist/cjs/Stream.js.map +1 -1
- package/dist/cjs/internal/channel.js.map +1 -1
- package/dist/cjs/internal/core-effect.js.map +1 -1
- package/dist/cjs/internal/core.js +27 -3
- package/dist/cjs/internal/core.js.map +1 -1
- package/dist/cjs/internal/dateTime.js +4 -1
- package/dist/cjs/internal/dateTime.js.map +1 -1
- package/dist/cjs/internal/differ.js +4 -0
- package/dist/cjs/internal/differ.js.map +1 -1
- package/dist/cjs/internal/effect/circular.js +3 -2
- package/dist/cjs/internal/effect/circular.js.map +1 -1
- package/dist/cjs/internal/fiberRuntime.js +21 -7
- package/dist/cjs/internal/fiberRuntime.js.map +1 -1
- package/dist/cjs/internal/hashMap.js +10 -1
- package/dist/cjs/internal/hashMap.js.map +1 -1
- package/dist/cjs/internal/keyedPool.js +1 -1
- package/dist/cjs/internal/keyedPool.js.map +1 -1
- package/dist/cjs/internal/layer.js.map +1 -1
- package/dist/cjs/internal/rcMap.js +86 -56
- package/dist/cjs/internal/rcMap.js.map +1 -1
- package/dist/cjs/internal/reloadable.js.map +1 -1
- package/dist/cjs/internal/schedule.js.map +1 -1
- package/dist/cjs/internal/sink.js.map +1 -1
- package/dist/cjs/internal/stm/stm.js.map +1 -1
- package/dist/cjs/internal/stream.js.map +1 -1
- package/dist/cjs/internal/version.js +1 -1
- package/dist/cjs/internal/version.js.map +1 -1
- package/dist/dts/Channel.d.ts +4 -4
- package/dist/dts/Channel.d.ts.map +1 -1
- package/dist/dts/DateTime.d.ts +16 -0
- package/dist/dts/DateTime.d.ts.map +1 -1
- package/dist/dts/Differ.d.ts +2 -1
- package/dist/dts/Differ.d.ts.map +1 -1
- package/dist/dts/Duration.d.ts +64 -0
- package/dist/dts/Duration.d.ts.map +1 -1
- package/dist/dts/Effect.d.ts +402 -30
- package/dist/dts/Effect.d.ts.map +1 -1
- package/dist/dts/Either.d.ts +7 -0
- package/dist/dts/Either.d.ts.map +1 -1
- package/dist/dts/FiberHandle.d.ts +26 -0
- package/dist/dts/FiberHandle.d.ts.map +1 -1
- package/dist/dts/FiberMap.d.ts +26 -0
- package/dist/dts/FiberMap.d.ts.map +1 -1
- package/dist/dts/FiberSet.d.ts +25 -0
- package/dist/dts/FiberSet.d.ts.map +1 -1
- package/dist/dts/HashMap.d.ts +38 -0
- package/dist/dts/HashMap.d.ts.map +1 -1
- package/dist/dts/HashSet.d.ts +7 -0
- package/dist/dts/HashSet.d.ts.map +1 -1
- package/dist/dts/Layer.d.ts +32 -13
- package/dist/dts/Layer.d.ts.map +1 -1
- package/dist/dts/Match.d.ts +731 -48
- package/dist/dts/Match.d.ts.map +1 -1
- package/dist/dts/RcMap.d.ts +32 -0
- package/dist/dts/RcMap.d.ts.map +1 -1
- package/dist/dts/Reloadable.d.ts +13 -13
- package/dist/dts/Reloadable.d.ts.map +1 -1
- package/dist/dts/STM.d.ts +4 -4
- package/dist/dts/STM.d.ts.map +1 -1
- package/dist/dts/Schedule.d.ts +2294 -633
- package/dist/dts/Schedule.d.ts.map +1 -1
- package/dist/dts/Schema.d.ts +40 -4
- package/dist/dts/Schema.d.ts.map +1 -1
- package/dist/dts/Stream.d.ts +8 -8
- package/dist/dts/Stream.d.ts.map +1 -1
- package/dist/dts/Trie.d.ts +7 -7
- package/dist/dts/Trie.d.ts.map +1 -1
- package/dist/dts/index.d.ts +25 -0
- package/dist/dts/index.d.ts.map +1 -1
- package/dist/dts/internal/stm/stm.d.ts +2 -2
- package/dist/dts/internal/stm/stm.d.ts.map +1 -1
- package/dist/esm/Channel.js.map +1 -1
- package/dist/esm/DateTime.js +16 -0
- package/dist/esm/DateTime.js.map +1 -1
- package/dist/esm/Differ.js.map +1 -1
- package/dist/esm/Duration.js +124 -0
- package/dist/esm/Duration.js.map +1 -1
- package/dist/esm/Effect.js +170 -32
- package/dist/esm/Effect.js.map +1 -1
- package/dist/esm/Either.js +7 -0
- package/dist/esm/Either.js.map +1 -1
- package/dist/esm/FiberHandle.js +48 -18
- package/dist/esm/FiberHandle.js.map +1 -1
- package/dist/esm/FiberMap.js +46 -22
- package/dist/esm/FiberMap.js.map +1 -1
- package/dist/esm/FiberSet.js +45 -15
- package/dist/esm/FiberSet.js.map +1 -1
- package/dist/esm/HashMap.js +17 -0
- package/dist/esm/HashMap.js.map +1 -1
- package/dist/esm/HashSet.js +7 -0
- package/dist/esm/HashSet.js.map +1 -1
- package/dist/esm/Layer.js +20 -0
- package/dist/esm/Layer.js.map +1 -1
- package/dist/esm/Match.js +665 -40
- package/dist/esm/Match.js.map +1 -1
- package/dist/esm/RcMap.js +10 -0
- package/dist/esm/RcMap.js.map +1 -1
- package/dist/esm/Reloadable.js.map +1 -1
- package/dist/esm/STM.js.map +1 -1
- package/dist/esm/Schedule.js +1074 -309
- package/dist/esm/Schedule.js.map +1 -1
- package/dist/esm/Schema.js +71 -0
- package/dist/esm/Schema.js.map +1 -1
- package/dist/esm/Stream.js.map +1 -1
- package/dist/esm/index.js +25 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/internal/channel.js.map +1 -1
- package/dist/esm/internal/core-effect.js.map +1 -1
- package/dist/esm/internal/core.js +23 -0
- package/dist/esm/internal/core.js.map +1 -1
- package/dist/esm/internal/dateTime.js +2 -0
- package/dist/esm/internal/dateTime.js.map +1 -1
- package/dist/esm/internal/differ.js +4 -0
- package/dist/esm/internal/differ.js.map +1 -1
- package/dist/esm/internal/effect/circular.js +3 -2
- package/dist/esm/internal/effect/circular.js.map +1 -1
- package/dist/esm/internal/fiberRuntime.js +18 -5
- package/dist/esm/internal/fiberRuntime.js.map +1 -1
- package/dist/esm/internal/hashMap.js +9 -0
- package/dist/esm/internal/hashMap.js.map +1 -1
- package/dist/esm/internal/keyedPool.js +1 -1
- package/dist/esm/internal/keyedPool.js.map +1 -1
- package/dist/esm/internal/layer.js.map +1 -1
- package/dist/esm/internal/rcMap.js +85 -55
- package/dist/esm/internal/rcMap.js.map +1 -1
- package/dist/esm/internal/reloadable.js.map +1 -1
- package/dist/esm/internal/schedule.js.map +1 -1
- package/dist/esm/internal/sink.js.map +1 -1
- package/dist/esm/internal/stm/stm.js.map +1 -1
- package/dist/esm/internal/stream.js.map +1 -1
- package/dist/esm/internal/version.js +1 -1
- package/dist/esm/internal/version.js.map +1 -1
- package/package.json +2 -1
- package/src/Channel.ts +14 -17
- package/src/DateTime.ts +17 -8
- package/src/Differ.ts +2 -1
- package/src/Duration.ts +147 -0
- package/src/Effect.ts +528 -140
- package/src/Either.ts +9 -0
- package/src/FiberHandle.ts +95 -35
- package/src/FiberMap.ts +104 -39
- package/src/FiberSet.ts +93 -24
- package/src/HashMap.ts +40 -0
- package/src/HashSet.ts +8 -0
- package/src/Layer.ts +94 -40
- package/src/Match.ts +733 -49
- package/src/RcMap.ts +34 -0
- package/src/Reloadable.ts +17 -27
- package/src/STM.ts +10 -17
- package/src/Schedule.ts +2325 -653
- package/src/Schema.ts +81 -4
- package/src/Stream.ts +26 -33
- package/src/Trie.ts +7 -7
- package/src/index.ts +25 -0
- package/src/internal/channel.ts +37 -39
- package/src/internal/core-effect.ts +84 -84
- package/src/internal/core.ts +80 -0
- package/src/internal/dateTime.ts +3 -0
- package/src/internal/differ.ts +4 -0
- package/src/internal/effect/circular.ts +3 -2
- package/src/internal/fiberRuntime.ts +31 -6
- package/src/internal/hashMap.ts +16 -0
- package/src/internal/keyedPool.ts +1 -1
- package/src/internal/layer.ts +52 -52
- package/src/internal/rcMap.ts +131 -89
- package/src/internal/reloadable.ts +25 -28
- package/src/internal/schedule.ts +29 -23
- package/src/internal/sink.ts +16 -15
- package/src/internal/stm/stm.ts +54 -46
- package/src/internal/stream.ts +100 -100
- package/src/internal/version.ts +1 -1
package/src/RcMap.ts
CHANGED
|
@@ -183,3 +183,37 @@ export const get: {
|
|
|
183
183
|
* @category combinators
|
|
184
184
|
*/
|
|
185
185
|
export const keys: <K, A, E>(self: RcMap<K, A, E>) => Effect.Effect<Array<K>, E> = internal.keys
|
|
186
|
+
|
|
187
|
+
/**
|
|
188
|
+
* @since 3.13.0
|
|
189
|
+
* @category combinators
|
|
190
|
+
*/
|
|
191
|
+
export const invalidate: {
|
|
192
|
+
/**
|
|
193
|
+
* @since 3.13.0
|
|
194
|
+
* @category combinators
|
|
195
|
+
*/
|
|
196
|
+
<K>(key: K): <A, E>(self: RcMap<K, A, E>) => Effect.Effect<void>
|
|
197
|
+
/**
|
|
198
|
+
* @since 3.13.0
|
|
199
|
+
* @category combinators
|
|
200
|
+
*/
|
|
201
|
+
<K, A, E>(self: RcMap<K, A, E>, key: K): Effect.Effect<void>
|
|
202
|
+
} = internal.invalidate
|
|
203
|
+
|
|
204
|
+
/**
|
|
205
|
+
* @since 3.13.0
|
|
206
|
+
* @category combinators
|
|
207
|
+
*/
|
|
208
|
+
export const touch: {
|
|
209
|
+
/**
|
|
210
|
+
* @since 3.13.0
|
|
211
|
+
* @category combinators
|
|
212
|
+
*/
|
|
213
|
+
<K>(key: K): <A, E>(self: RcMap<K, A, E>) => Effect.Effect<void>
|
|
214
|
+
/**
|
|
215
|
+
* @since 3.13.0
|
|
216
|
+
* @category combinators
|
|
217
|
+
*/
|
|
218
|
+
<K, A, E>(self: RcMap<K, A, E>, key: K): Effect.Effect<void>
|
|
219
|
+
} = internal.touch
|
package/src/Reloadable.ts
CHANGED
|
@@ -62,13 +62,10 @@ export declare namespace Reloadable {
|
|
|
62
62
|
* @since 2.0.0
|
|
63
63
|
* @category constructors
|
|
64
64
|
*/
|
|
65
|
-
export const auto: <
|
|
66
|
-
tag:
|
|
67
|
-
options: {
|
|
68
|
-
|
|
69
|
-
readonly schedule: Schedule.Schedule<unknown, unknown, R>
|
|
70
|
-
}
|
|
71
|
-
) => Layer.Layer<Reloadable<Context.Tag.Identifier<Out>>, E, In | R> = internal.auto
|
|
65
|
+
export const auto: <I, S, E, In, R>(
|
|
66
|
+
tag: Context.Tag<I, S>,
|
|
67
|
+
options: { readonly layer: Layer.Layer<I, E, In>; readonly schedule: Schedule.Schedule<unknown, unknown, R> }
|
|
68
|
+
) => Layer.Layer<Reloadable<I>, E, R | In> = internal.auto
|
|
72
69
|
|
|
73
70
|
/**
|
|
74
71
|
* Makes a new reloadable service from a layer that describes the construction
|
|
@@ -78,13 +75,13 @@ export const auto: <Out extends Context.Tag<any, any>, E, In, R>(
|
|
|
78
75
|
* @since 2.0.0
|
|
79
76
|
* @category constructors
|
|
80
77
|
*/
|
|
81
|
-
export const autoFromConfig: <
|
|
82
|
-
tag:
|
|
78
|
+
export const autoFromConfig: <I, S, E, In, R>(
|
|
79
|
+
tag: Context.Tag<I, S>,
|
|
83
80
|
options: {
|
|
84
|
-
readonly layer: Layer.Layer<
|
|
81
|
+
readonly layer: Layer.Layer<I, E, In>
|
|
85
82
|
readonly scheduleFromConfig: (context: Context.Context<In>) => Schedule.Schedule<unknown, unknown, R>
|
|
86
83
|
}
|
|
87
|
-
) => Layer.Layer<Reloadable<
|
|
84
|
+
) => Layer.Layer<Reloadable<I>, E, R | In> = internal.autoFromConfig
|
|
88
85
|
|
|
89
86
|
/**
|
|
90
87
|
* Retrieves the current version of the reloadable service.
|
|
@@ -92,9 +89,7 @@ export const autoFromConfig: <Out extends Context.Tag<any, any>, E, In, R>(
|
|
|
92
89
|
* @since 2.0.0
|
|
93
90
|
* @category getters
|
|
94
91
|
*/
|
|
95
|
-
export const get: <
|
|
96
|
-
tag: T
|
|
97
|
-
) => Effect.Effect<Context.Tag.Service<T>, never, Reloadable<Context.Tag.Identifier<T>>> = internal.get
|
|
92
|
+
export const get: <I, S>(tag: Context.Tag<I, S>) => Effect.Effect<S, never, Reloadable<I>> = internal.get
|
|
98
93
|
|
|
99
94
|
/**
|
|
100
95
|
* Makes a new reloadable service from a layer that describes the construction
|
|
@@ -103,10 +98,10 @@ export const get: <T extends Context.Tag<any, any>>(
|
|
|
103
98
|
* @since 2.0.0
|
|
104
99
|
* @category constructors
|
|
105
100
|
*/
|
|
106
|
-
export const manual: <
|
|
107
|
-
tag:
|
|
108
|
-
options: { readonly layer: Layer.Layer<
|
|
109
|
-
) => Layer.Layer<Reloadable<
|
|
101
|
+
export const manual: <I, S, In, E>(
|
|
102
|
+
tag: Context.Tag<I, S>,
|
|
103
|
+
options: { readonly layer: Layer.Layer<I, E, In> }
|
|
104
|
+
) => Layer.Layer<Reloadable<I>, E, In> = internal.manual
|
|
110
105
|
|
|
111
106
|
/**
|
|
112
107
|
* Reloads the specified service.
|
|
@@ -114,17 +109,13 @@ export const manual: <Out extends Context.Tag<any, any>, In, E>(
|
|
|
114
109
|
* @since 2.0.0
|
|
115
110
|
* @category constructors
|
|
116
111
|
*/
|
|
117
|
-
export const reload: <
|
|
118
|
-
tag: T
|
|
119
|
-
) => Effect.Effect<void, unknown, Reloadable<Context.Tag.Identifier<T>>> = internal.reload
|
|
112
|
+
export const reload: <I, S>(tag: Context.Tag<I, S>) => Effect.Effect<void, unknown, Reloadable<I>> = internal.reload
|
|
120
113
|
|
|
121
114
|
/**
|
|
122
115
|
* @since 2.0.0
|
|
123
116
|
* @category context
|
|
124
117
|
*/
|
|
125
|
-
export const tag: <
|
|
126
|
-
tag: T
|
|
127
|
-
) => Context.Tag<Reloadable<Context.Tag.Identifier<T>>, Reloadable<Context.Tag.Service<T>>> = internal.reloadableTag
|
|
118
|
+
export const tag: <I, S>(tag: Context.Tag<I, S>) => Context.Tag<Reloadable<I>, Reloadable<S>> = internal.reloadableTag
|
|
128
119
|
|
|
129
120
|
/**
|
|
130
121
|
* Forks the reload of the service in the background, ignoring any errors.
|
|
@@ -132,6 +123,5 @@ export const tag: <T extends Context.Tag<any, any>>(
|
|
|
132
123
|
* @since 2.0.0
|
|
133
124
|
* @category constructors
|
|
134
125
|
*/
|
|
135
|
-
export const reloadFork: <
|
|
136
|
-
|
|
137
|
-
) => Effect.Effect<void, unknown, Reloadable<Context.Tag.Identifier<T>>> = internal.reloadFork
|
|
126
|
+
export const reloadFork: <I, S>(tag: Context.Tag<I, S>) => Effect.Effect<void, unknown, Reloadable<I>> =
|
|
127
|
+
internal.reloadFork
|
package/src/STM.ts
CHANGED
|
@@ -2094,10 +2094,7 @@ export const provideService: {
|
|
|
2094
2094
|
* @since 2.0.0
|
|
2095
2095
|
* @category context
|
|
2096
2096
|
*/
|
|
2097
|
-
<
|
|
2098
|
-
tag: T,
|
|
2099
|
-
resource: Context.Tag.Service<T>
|
|
2100
|
-
): <A, E, R>(self: STM<A, E, R>) => STM<A, E, Exclude<R, Context.Tag.Identifier<T>>>
|
|
2097
|
+
<I, S>(tag: Context.Tag<I, S>, resource: NoInfer<S>): <A, E, R>(self: STM<A, E, R>) => STM<A, E, Exclude<R, I>>
|
|
2101
2098
|
/**
|
|
2102
2099
|
* Provides the effect with the single service it requires. If the transactional
|
|
2103
2100
|
* effect requires more than one service use `provideEnvironment` instead.
|
|
@@ -2105,11 +2102,7 @@ export const provideService: {
|
|
|
2105
2102
|
* @since 2.0.0
|
|
2106
2103
|
* @category context
|
|
2107
2104
|
*/
|
|
2108
|
-
<A, E, R,
|
|
2109
|
-
self: STM<A, E, R>,
|
|
2110
|
-
tag: T,
|
|
2111
|
-
resource: Context.Tag.Service<T>
|
|
2112
|
-
): STM<A, E, Exclude<R, Context.Tag.Identifier<T>>>
|
|
2105
|
+
<A, E, R, I, S>(self: STM<A, E, R>, tag: Context.Tag<I, S>, resource: NoInfer<S>): STM<A, E, Exclude<R, I>>
|
|
2113
2106
|
} = stm.provideService
|
|
2114
2107
|
|
|
2115
2108
|
/**
|
|
@@ -2127,10 +2120,10 @@ export const provideServiceSTM: {
|
|
|
2127
2120
|
* @since 2.0.0
|
|
2128
2121
|
* @category context
|
|
2129
2122
|
*/
|
|
2130
|
-
<
|
|
2131
|
-
tag:
|
|
2132
|
-
stm: STM<
|
|
2133
|
-
): <A, E, R>(self: STM<A, E, R>) => STM<A, E1 | E, R1 | Exclude<R,
|
|
2123
|
+
<I, S, E1, R1>(
|
|
2124
|
+
tag: Context.Tag<I, S>,
|
|
2125
|
+
stm: STM<NoInfer<S>, E1, R1>
|
|
2126
|
+
): <A, E, R>(self: STM<A, E, R>) => STM<A, E1 | E, R1 | Exclude<R, I>>
|
|
2134
2127
|
/**
|
|
2135
2128
|
* Provides the effect with the single service it requires. If the transactional
|
|
2136
2129
|
* effect requires more than one service use `provideEnvironment` instead.
|
|
@@ -2138,11 +2131,11 @@ export const provideServiceSTM: {
|
|
|
2138
2131
|
* @since 2.0.0
|
|
2139
2132
|
* @category context
|
|
2140
2133
|
*/
|
|
2141
|
-
<A, E, R,
|
|
2134
|
+
<A, E, R, I, S, E1, R1>(
|
|
2142
2135
|
self: STM<A, E, R>,
|
|
2143
|
-
tag:
|
|
2144
|
-
stm: STM<
|
|
2145
|
-
): STM<A,
|
|
2136
|
+
tag: Context.Tag<I, S>,
|
|
2137
|
+
stm: STM<NoInfer<S>, E1, R1>
|
|
2138
|
+
): STM<A, E1 | E, R1 | Exclude<R, I>>
|
|
2146
2139
|
} = stm.provideServiceSTM
|
|
2147
2140
|
|
|
2148
2141
|
/**
|