effect 4.0.0-beta.20 → 4.0.0-beta.21
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/dist/Effect.d.ts +92 -1
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +30 -1
- package/dist/Effect.js.map +1 -1
- package/dist/Schedule.d.ts.map +1 -1
- package/dist/Schedule.js +4 -1
- package/dist/Schedule.js.map +1 -1
- package/dist/SchemaAST.js +6 -6
- package/dist/SchemaAST.js.map +1 -1
- package/dist/Stream.js +1 -1
- package/dist/TxPubSub.d.ts +4 -4
- package/dist/TxPubSub.d.ts.map +1 -1
- package/dist/internal/effect.js +38 -0
- package/dist/internal/effect.js.map +1 -1
- package/dist/unstable/ai/McpServer.js +2 -1
- package/dist/unstable/ai/McpServer.js.map +1 -1
- package/dist/unstable/http/HttpEffect.js +2 -2
- package/dist/unstable/http/HttpEffect.js.map +1 -1
- package/dist/unstable/http/HttpMiddleware.js +2 -2
- package/dist/unstable/http/HttpMiddleware.js.map +1 -1
- package/dist/unstable/http/HttpServerRequest.d.ts +1 -1
- package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
- package/dist/unstable/http/internal/preResponseHandler.js +2 -2
- package/dist/unstable/http/internal/preResponseHandler.js.map +1 -1
- package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
- package/dist/unstable/workflow/Workflow.js +1 -1
- package/dist/unstable/workflow/Workflow.js.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.d.ts +5 -1
- package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.js +5 -1
- package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
- package/package.json +1 -1
- package/src/Effect.ts +100 -1
- package/src/Schedule.ts +4 -1
- package/src/SchemaAST.ts +6 -6
- package/src/Stream.ts +1 -1
- package/src/TxPubSub.ts +4 -4
- package/src/internal/effect.ts +84 -0
- package/src/unstable/ai/McpServer.ts +2 -1
- package/src/unstable/http/HttpEffect.ts +2 -2
- package/src/unstable/http/HttpMiddleware.ts +3 -3
- package/src/unstable/http/HttpServerRequest.ts +1 -1
- package/src/unstable/http/internal/preResponseHandler.ts +3 -3
- package/src/unstable/workflow/Workflow.ts +5 -1
- package/src/unstable/workflow/WorkflowEngine.ts +5 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorkflowEngine.js","names":["Effect","Exit","Fiber","FiberMap","Latch","Layer","Option","Schedule","Schema","Scope","ServiceMap","Workflow","WorkflowEngine","Service","WorkflowInstance","initial","workflow","executionId","of","scope","makeUnsafe","suspended","interrupted","cause","undefined","activityState","count","latch","options","register","fnUntraced","execute","services","payload","suspend","pipe","updateServices","input","merge","self","opts","suspendedRetrySchedule","defaultRetrySchedule","annotateCurrentSpan","result","parentInstance","serviceOption","isSome","instance","value","addFinalizer","_tag","void","interrupt","discard","run","parent","getOrUndefined","wrapActivityResult","exit","sleep","toStepWithSleep","catch","die","name","poll","resume","activityExecute","activity","attempt","orDie","decodeEffect","exitSchema","toJsonExit","Complete","deferredResult","deferred","withSpan","attributes","captureStackTrace","deferredDone","workflowName","deferredName","encodeEffect","_","scheduleClock","clock","exponential","either","spaced","layer","effect","gen","workflows","Map","executions","activities","state","get","fiber","pollUnsafe","entry","onExit","withFiber","interruptible","intoResult","provideService","engine","tap","forkIn","deferredResults","clocks","make","set","fail","join","_workflow","activityId","activityInstance","executeEncoded","succeed","id","has","delay","duration","onlyIfMissing","asVoid","map"],"sources":["../../../src/unstable/workflow/WorkflowEngine.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"WorkflowEngine.js","names":["Effect","Exit","Fiber","FiberMap","Latch","Layer","Option","Schedule","Schema","Scope","ServiceMap","Workflow","WorkflowEngine","Service","WorkflowInstance","initial","workflow","executionId","of","scope","makeUnsafe","suspended","interrupted","cause","undefined","activityState","count","latch","options","register","fnUntraced","execute","services","payload","suspend","pipe","updateServices","input","merge","self","opts","suspendedRetrySchedule","defaultRetrySchedule","annotateCurrentSpan","result","parentInstance","serviceOption","isSome","instance","value","addFinalizer","_tag","void","interrupt","discard","run","parent","getOrUndefined","wrapActivityResult","exit","sleep","toStepWithSleep","catch","die","name","poll","resume","activityExecute","activity","attempt","orDie","decodeEffect","exitSchema","toJsonExit","Complete","deferredResult","deferred","withSpan","attributes","captureStackTrace","deferredDone","workflowName","deferredName","encodeEffect","_","scheduleClock","clock","exponential","either","spaced","layerMemory","effect","gen","workflows","Map","executions","activities","state","get","fiber","pollUnsafe","entry","onExit","withFiber","interruptible","intoResult","provideService","engine","tap","forkIn","deferredResults","clocks","make","set","fail","join","_workflow","activityId","activityInstance","executeEncoded","succeed","id","has","delay","duration","onlyIfMissing","asVoid","map"],"sources":["../../../src/unstable/workflow/WorkflowEngine.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
package/src/Effect.ts
CHANGED
|
@@ -743,7 +743,6 @@ export declare namespace All {
|
|
|
743
743
|
* ```
|
|
744
744
|
*
|
|
745
745
|
* @see {@link forEach} for iterating over elements and applying an effect.
|
|
746
|
-
* @see {@link allWith} for a data-last version of this function.
|
|
747
746
|
*
|
|
748
747
|
* @since 2.0.0
|
|
749
748
|
* @category Collecting
|
|
@@ -1063,6 +1062,106 @@ export const validate: {
|
|
|
1063
1062
|
): Effect<void, Arr.NonEmptyArray<E>, R>
|
|
1064
1063
|
} = internal.validate
|
|
1065
1064
|
|
|
1065
|
+
/**
|
|
1066
|
+
* Returns the first element that satisfies an effectful predicate.
|
|
1067
|
+
*
|
|
1068
|
+
* The predicate receives the element and its index. Evaluation short-circuits
|
|
1069
|
+
* as soon as an element matches.
|
|
1070
|
+
*
|
|
1071
|
+
* @example
|
|
1072
|
+
* ```ts
|
|
1073
|
+
* import { Effect } from "effect"
|
|
1074
|
+
*
|
|
1075
|
+
* const program = Effect.findFirst([1, 2, 3, 4], (n) => Effect.succeed(n > 2))
|
|
1076
|
+
*
|
|
1077
|
+
* Effect.runPromise(program).then(console.log)
|
|
1078
|
+
* // { _id: 'Option', _tag: 'Some', value: 3 }
|
|
1079
|
+
* ```
|
|
1080
|
+
*
|
|
1081
|
+
* @since 2.0.0
|
|
1082
|
+
* @category Collecting
|
|
1083
|
+
*/
|
|
1084
|
+
export const findFirst: {
|
|
1085
|
+
/**
|
|
1086
|
+
* Returns the first element that satisfies an effectful predicate.
|
|
1087
|
+
*
|
|
1088
|
+
* The predicate receives the element and its index. Evaluation short-circuits
|
|
1089
|
+
* as soon as an element matches.
|
|
1090
|
+
*
|
|
1091
|
+
* @example
|
|
1092
|
+
* ```ts
|
|
1093
|
+
* import { Effect } from "effect"
|
|
1094
|
+
*
|
|
1095
|
+
* const program = Effect.findFirst([1, 2, 3, 4], (n) => Effect.succeed(n > 2))
|
|
1096
|
+
*
|
|
1097
|
+
* Effect.runPromise(program).then(console.log)
|
|
1098
|
+
* // { _id: 'Option', _tag: 'Some', value: 3 }
|
|
1099
|
+
* ```
|
|
1100
|
+
*
|
|
1101
|
+
* @since 2.0.0
|
|
1102
|
+
* @category Collecting
|
|
1103
|
+
*/
|
|
1104
|
+
<A, E, R>(predicate: (a: NoInfer<A>, i: number) => Effect<boolean, E, R>): (elements: Iterable<A>) => Effect<Option<A>, E, R>
|
|
1105
|
+
/**
|
|
1106
|
+
* Returns the first element that satisfies an effectful predicate.
|
|
1107
|
+
*
|
|
1108
|
+
* The predicate receives the element and its index. Evaluation short-circuits
|
|
1109
|
+
* as soon as an element matches.
|
|
1110
|
+
*
|
|
1111
|
+
* @example
|
|
1112
|
+
* ```ts
|
|
1113
|
+
* import { Effect } from "effect"
|
|
1114
|
+
*
|
|
1115
|
+
* const program = Effect.findFirst([1, 2, 3, 4], (n) => Effect.succeed(n > 2))
|
|
1116
|
+
*
|
|
1117
|
+
* Effect.runPromise(program).then(console.log)
|
|
1118
|
+
* // { _id: 'Option', _tag: 'Some', value: 3 }
|
|
1119
|
+
* ```
|
|
1120
|
+
*
|
|
1121
|
+
* @since 2.0.0
|
|
1122
|
+
* @category Collecting
|
|
1123
|
+
*/
|
|
1124
|
+
<A, E, R>(
|
|
1125
|
+
elements: Iterable<A>,
|
|
1126
|
+
predicate: (a: NoInfer<A>, i: number) => Effect<boolean, E, R>
|
|
1127
|
+
): Effect<Option<A>, E, R>
|
|
1128
|
+
} = internal.findFirst
|
|
1129
|
+
|
|
1130
|
+
/**
|
|
1131
|
+
* Returns the first value that passes an effectful `FilterEffect`.
|
|
1132
|
+
*
|
|
1133
|
+
* The filter receives the element and index. Evaluation short-circuits on the
|
|
1134
|
+
* first `Result.succeed` and returns the transformed value in `Option.some`.
|
|
1135
|
+
*
|
|
1136
|
+
* @since 4.0.0
|
|
1137
|
+
* @category Collecting
|
|
1138
|
+
*/
|
|
1139
|
+
export const findFirstFilter: {
|
|
1140
|
+
/**
|
|
1141
|
+
* Returns the first value that passes an effectful `FilterEffect`.
|
|
1142
|
+
*
|
|
1143
|
+
* The filter receives the element and index. Evaluation short-circuits on the
|
|
1144
|
+
* first `Result.succeed` and returns the transformed value in `Option.some`.
|
|
1145
|
+
*
|
|
1146
|
+
* @since 4.0.0
|
|
1147
|
+
* @category Collecting
|
|
1148
|
+
*/
|
|
1149
|
+
<A, B, X, E, R>(filter: Filter.FilterEffect<NoInfer<A>, B, X, E, R, [i: number]>): (elements: Iterable<A>) => Effect<Option<B>, E, R>
|
|
1150
|
+
/**
|
|
1151
|
+
* Returns the first value that passes an effectful `FilterEffect`.
|
|
1152
|
+
*
|
|
1153
|
+
* The filter receives the element and index. Evaluation short-circuits on the
|
|
1154
|
+
* first `Result.succeed` and returns the transformed value in `Option.some`.
|
|
1155
|
+
*
|
|
1156
|
+
* @since 4.0.0
|
|
1157
|
+
* @category Collecting
|
|
1158
|
+
*/
|
|
1159
|
+
<A, B, X, E, R>(
|
|
1160
|
+
elements: Iterable<A>,
|
|
1161
|
+
filter: Filter.FilterEffect<NoInfer<A>, B, X, E, R, [i: number]>
|
|
1162
|
+
): Effect<Option<B>, E, R>
|
|
1163
|
+
} = internal.findFirstFilter
|
|
1164
|
+
|
|
1066
1165
|
/**
|
|
1067
1166
|
* Executes an effectful operation for each element in an `Iterable`.
|
|
1068
1167
|
*
|
package/src/Schedule.ts
CHANGED
|
@@ -4828,7 +4828,10 @@ export const reduce: {
|
|
|
4828
4828
|
Pull.matchEffect(step(now, input), {
|
|
4829
4829
|
onSuccess([output, delay]) {
|
|
4830
4830
|
const next = combine(state, output)
|
|
4831
|
-
if (!isEffect(next))
|
|
4831
|
+
if (!isEffect(next)) {
|
|
4832
|
+
state = next
|
|
4833
|
+
return effect.succeed([next, delay] as [State, Duration.Duration])
|
|
4834
|
+
}
|
|
4832
4835
|
return effect.map(next, (nextState) => {
|
|
4833
4836
|
state = nextState
|
|
4834
4837
|
return [nextState, delay]
|
package/src/SchemaAST.ts
CHANGED
|
@@ -1455,20 +1455,20 @@ export class Arrays extends Base {
|
|
|
1455
1455
|
// handle post rest elements
|
|
1456
1456
|
// ---------------------------------------------
|
|
1457
1457
|
for (let j = 0; j < tail.length; j++) {
|
|
1458
|
-
i
|
|
1459
|
-
if (len <
|
|
1458
|
+
const index = i + j
|
|
1459
|
+
if (len < index) {
|
|
1460
1460
|
continue
|
|
1461
1461
|
} else {
|
|
1462
1462
|
const tailj = tail[j]
|
|
1463
1463
|
const keyAnnotations = tailj.ast.context?.annotations
|
|
1464
|
-
const eff = tailj.parser(Option.some(input[
|
|
1464
|
+
const eff = tailj.parser(Option.some(input[index]), options)
|
|
1465
1465
|
const exit = effectIsExit(eff) ? eff : yield* Effect.exit(eff)
|
|
1466
1466
|
if (exit._tag === "Failure") {
|
|
1467
1467
|
const issueRest = Cause.findError(exit.cause)
|
|
1468
1468
|
if (Result.isFailure(issueRest)) {
|
|
1469
1469
|
return yield* exit
|
|
1470
1470
|
}
|
|
1471
|
-
const issue = new Issue.Pointer([
|
|
1471
|
+
const issue = new Issue.Pointer([index], issueRest.success)
|
|
1472
1472
|
if (errorsAllOption) {
|
|
1473
1473
|
if (issues) issues.push(issue)
|
|
1474
1474
|
else issues = [issue]
|
|
@@ -1476,9 +1476,9 @@ export class Arrays extends Base {
|
|
|
1476
1476
|
return yield* Effect.fail(new Issue.Composite(ast, oinput, [issue]))
|
|
1477
1477
|
}
|
|
1478
1478
|
} else if (exit.value._tag === "Some") {
|
|
1479
|
-
output[
|
|
1479
|
+
output[index] = exit.value.value
|
|
1480
1480
|
} else {
|
|
1481
|
-
const issue = new Issue.Pointer([
|
|
1481
|
+
const issue = new Issue.Pointer([index], new Issue.MissingKey(keyAnnotations))
|
|
1482
1482
|
if (errorsAllOption) {
|
|
1483
1483
|
if (issues) issues.push(issue)
|
|
1484
1484
|
else issues = [issue]
|
package/src/Stream.ts
CHANGED
|
@@ -16556,7 +16556,7 @@ export const withSpan: {
|
|
|
16556
16556
|
} = function() {
|
|
16557
16557
|
const dataFirst = isStream(arguments[0])
|
|
16558
16558
|
const name = dataFirst ? arguments[1] : arguments[0]
|
|
16559
|
-
const options = addSpanStackTrace(dataFirst ? arguments[
|
|
16559
|
+
const options = addSpanStackTrace(dataFirst ? arguments[2] : arguments[1])
|
|
16560
16560
|
if (dataFirst) {
|
|
16561
16561
|
const self = arguments[0] as Stream<any, any, any>
|
|
16562
16562
|
return fromChannel(Channel.withSpan(self.channel, name, options))
|
package/src/TxPubSub.ts
CHANGED
|
@@ -430,7 +430,7 @@ export const publish: {
|
|
|
430
430
|
* @since 4.0.0
|
|
431
431
|
* @category mutations
|
|
432
432
|
*/
|
|
433
|
-
<A>(value: A): (self: TxPubSub<A>) => Effect.Effect<boolean>
|
|
433
|
+
<A>(value: A): (self: TxPubSub<A>) => Effect.Effect<boolean, never, Effect.Transaction>
|
|
434
434
|
// =============================================================================
|
|
435
435
|
// Mutations
|
|
436
436
|
// =============================================================================
|
|
@@ -470,7 +470,7 @@ export const publish: {
|
|
|
470
470
|
* @since 4.0.0
|
|
471
471
|
* @category mutations
|
|
472
472
|
*/
|
|
473
|
-
<A>(self: TxPubSub<A>, value: A): Effect.Effect<boolean>
|
|
473
|
+
<A>(self: TxPubSub<A>, value: A): Effect.Effect<boolean, never, Effect.Transaction>
|
|
474
474
|
} = dual(
|
|
475
475
|
2,
|
|
476
476
|
<A>(self: TxPubSub<A>, value: A): Effect.Effect<boolean, never, Effect.Transaction> =>
|
|
@@ -546,7 +546,7 @@ export const publishAll: {
|
|
|
546
546
|
* @since 4.0.0
|
|
547
547
|
* @category mutations
|
|
548
548
|
*/
|
|
549
|
-
<A>(values: Iterable<A>): (self: TxPubSub<A>) => Effect.Effect<boolean>
|
|
549
|
+
<A>(values: Iterable<A>): (self: TxPubSub<A>) => Effect.Effect<boolean, never, Effect.Transaction>
|
|
550
550
|
/**
|
|
551
551
|
* Publishes all messages from an iterable to all current subscribers.
|
|
552
552
|
*
|
|
@@ -575,7 +575,7 @@ export const publishAll: {
|
|
|
575
575
|
* @since 4.0.0
|
|
576
576
|
* @category mutations
|
|
577
577
|
*/
|
|
578
|
-
<A>(self: TxPubSub<A>, values: Iterable<A>): Effect.Effect<boolean>
|
|
578
|
+
<A>(self: TxPubSub<A>, values: Iterable<A>): Effect.Effect<boolean, never, Effect.Transaction>
|
|
579
579
|
} = dual(
|
|
580
580
|
2,
|
|
581
581
|
<A>(self: TxPubSub<A>, values: Iterable<A>): Effect.Effect<boolean, never, Effect.Transaction> =>
|
package/src/internal/effect.ts
CHANGED
|
@@ -4289,6 +4289,90 @@ export const validate: {
|
|
|
4289
4289
|
)
|
|
4290
4290
|
)
|
|
4291
4291
|
|
|
4292
|
+
/** @internal */
|
|
4293
|
+
export const findFirst: {
|
|
4294
|
+
<A, E, R>(
|
|
4295
|
+
predicate: (a: NoInfer<A>, i: number) => Effect.Effect<boolean, E, R>
|
|
4296
|
+
): (elements: Iterable<A>) => Effect.Effect<Option.Option<A>, E, R>
|
|
4297
|
+
<A, E, R>(
|
|
4298
|
+
elements: Iterable<A>,
|
|
4299
|
+
predicate: (a: NoInfer<A>, i: number) => Effect.Effect<boolean, E, R>
|
|
4300
|
+
): Effect.Effect<Option.Option<A>, E, R>
|
|
4301
|
+
} = dual(
|
|
4302
|
+
(args) => isIterable(args[0]) && !isEffect(args[0]),
|
|
4303
|
+
<A, E, R>(
|
|
4304
|
+
elements: Iterable<A>,
|
|
4305
|
+
predicate: (a: A, i: number) => Effect.Effect<boolean, E, R>
|
|
4306
|
+
): Effect.Effect<Option.Option<A>, E, R> =>
|
|
4307
|
+
suspend(() => {
|
|
4308
|
+
const iterator = elements[Symbol.iterator]()
|
|
4309
|
+
const next = iterator.next()
|
|
4310
|
+
if (!next.done) {
|
|
4311
|
+
return findFirstLoop(iterator, 0, predicate, next.value)
|
|
4312
|
+
}
|
|
4313
|
+
return succeed(Option.none())
|
|
4314
|
+
})
|
|
4315
|
+
)
|
|
4316
|
+
|
|
4317
|
+
const findFirstLoop = <A, E, R>(
|
|
4318
|
+
iterator: Iterator<A>,
|
|
4319
|
+
index: number,
|
|
4320
|
+
predicate: (a: A, i: number) => Effect.Effect<boolean, E, R>,
|
|
4321
|
+
value: A
|
|
4322
|
+
): Effect.Effect<Option.Option<A>, E, R> =>
|
|
4323
|
+
flatMap(predicate(value, index), (keep) => {
|
|
4324
|
+
if (keep) {
|
|
4325
|
+
return succeed(Option.some(value))
|
|
4326
|
+
}
|
|
4327
|
+
const next = iterator.next()
|
|
4328
|
+
if (!next.done) {
|
|
4329
|
+
return findFirstLoop(iterator, index + 1, predicate, next.value)
|
|
4330
|
+
}
|
|
4331
|
+
return succeed(Option.none())
|
|
4332
|
+
})
|
|
4333
|
+
|
|
4334
|
+
/** @internal */
|
|
4335
|
+
export const findFirstFilter: {
|
|
4336
|
+
<A, B, X, E, R>(
|
|
4337
|
+
filter: Filter.FilterEffect<NoInfer<A>, B, X, E, R, [i: number]>
|
|
4338
|
+
): (elements: Iterable<A>) => Effect.Effect<Option.Option<B>, E, R>
|
|
4339
|
+
<A, B, X, E, R>(
|
|
4340
|
+
elements: Iterable<A>,
|
|
4341
|
+
filter: Filter.FilterEffect<NoInfer<A>, B, X, E, R, [i: number]>
|
|
4342
|
+
): Effect.Effect<Option.Option<B>, E, R>
|
|
4343
|
+
} = dual(
|
|
4344
|
+
(args) => isIterable(args[0]) && !isEffect(args[0]),
|
|
4345
|
+
<A, B, X, E, R>(
|
|
4346
|
+
elements: Iterable<A>,
|
|
4347
|
+
filter: Filter.FilterEffect<A, B, X, E, R, [i: number]>
|
|
4348
|
+
): Effect.Effect<Option.Option<B>, E, R> =>
|
|
4349
|
+
suspend(() => {
|
|
4350
|
+
const iterator = elements[Symbol.iterator]()
|
|
4351
|
+
const next = iterator.next()
|
|
4352
|
+
if (!next.done) {
|
|
4353
|
+
return findFirstFilterLoop(iterator, 0, filter, next.value)
|
|
4354
|
+
}
|
|
4355
|
+
return succeed(Option.none())
|
|
4356
|
+
})
|
|
4357
|
+
)
|
|
4358
|
+
|
|
4359
|
+
const findFirstFilterLoop = <A, B, X, E, R>(
|
|
4360
|
+
iterator: Iterator<A>,
|
|
4361
|
+
index: number,
|
|
4362
|
+
filter: Filter.FilterEffect<A, B, X, E, R, [i: number]>,
|
|
4363
|
+
value: A
|
|
4364
|
+
): Effect.Effect<Option.Option<B>, E, R> =>
|
|
4365
|
+
flatMap(filter(value, index), (result) => {
|
|
4366
|
+
if (Result.isSuccess(result)) {
|
|
4367
|
+
return succeed(Option.some(result.success))
|
|
4368
|
+
}
|
|
4369
|
+
const next = iterator.next()
|
|
4370
|
+
if (!next.done) {
|
|
4371
|
+
return findFirstFilterLoop(iterator, index + 1, filter, next.value)
|
|
4372
|
+
}
|
|
4373
|
+
return succeed(Option.none())
|
|
4374
|
+
})
|
|
4375
|
+
|
|
4292
4376
|
/** @internal */
|
|
4293
4377
|
export const whileLoop: <A, E, R>(options: {
|
|
4294
4378
|
readonly while: LazyArg<boolean>
|
|
@@ -1057,7 +1057,8 @@ const compileUriTemplate = (segments: TemplateStringsArray, ...schemas: Readonly
|
|
|
1057
1057
|
const key = String(i)
|
|
1058
1058
|
arr.push(toCodecStringTree)
|
|
1059
1059
|
routerPath += `:${key}${segment.replace(":", "::")}`
|
|
1060
|
-
const
|
|
1060
|
+
const schema = schemas[i]
|
|
1061
|
+
const paramName = isParam(schema) ? (schema as Param<string, Schema.Top>).name : `param${key}`
|
|
1061
1062
|
params[paramName] = toCodecStringTree
|
|
1062
1063
|
uriPath += `{${paramName}}${segment}`
|
|
1063
1064
|
}
|
|
@@ -37,7 +37,7 @@ export const toHandled = <E, R, EH, RH>(
|
|
|
37
37
|
const fiber = Fiber.getCurrent()!
|
|
38
38
|
reportCauseUnsafe(fiber, cause)
|
|
39
39
|
const request = ServiceMap.getUnsafe(fiber.services, HttpServerRequest)
|
|
40
|
-
const handler = requestPreResponseHandlers.get(request)
|
|
40
|
+
const handler = requestPreResponseHandlers.get(request.source)
|
|
41
41
|
const cont = cause.reasons.length === 0 ? Effect.succeed(response) : Effect.failCause(cause)
|
|
42
42
|
if (handler === undefined) {
|
|
43
43
|
;(request as any)[handledSymbol] = true
|
|
@@ -60,7 +60,7 @@ export const toHandled = <E, R, EH, RH>(
|
|
|
60
60
|
onSuccess: (response) => {
|
|
61
61
|
const fiber = Fiber.getCurrent()!
|
|
62
62
|
const request = ServiceMap.getUnsafe(fiber.services, HttpServerRequest)
|
|
63
|
-
const handler = requestPreResponseHandlers.get(request)
|
|
63
|
+
const handler = requestPreResponseHandlers.get(request.source)
|
|
64
64
|
if (handler === undefined) {
|
|
65
65
|
;(request as any)[handledSymbol] = true
|
|
66
66
|
return Effect.mapEager(handleResponse(request, response), () => response)
|
|
@@ -46,7 +46,7 @@ export declare namespace HttpMiddleware {
|
|
|
46
46
|
*/
|
|
47
47
|
export const make = <M extends HttpMiddleware>(middleware: M): M => middleware
|
|
48
48
|
|
|
49
|
-
const loggerDisabledRequests = new WeakSet<
|
|
49
|
+
const loggerDisabledRequests = new WeakSet<object>()
|
|
50
50
|
|
|
51
51
|
/**
|
|
52
52
|
* @since 4.0.0
|
|
@@ -55,7 +55,7 @@ const loggerDisabledRequests = new WeakSet<HttpServerRequest>()
|
|
|
55
55
|
export const withLoggerDisabled = <A, E, R>(self: Effect.Effect<A, E, R>): Effect.Effect<A, E, R | HttpServerRequest> =>
|
|
56
56
|
Effect.withFiber((fiber) => {
|
|
57
57
|
const request = ServiceMap.getUnsafe(fiber.services, HttpServerRequest)
|
|
58
|
-
loggerDisabledRequests.add(request)
|
|
58
|
+
loggerDisabledRequests.add(request.source)
|
|
59
59
|
return self
|
|
60
60
|
})
|
|
61
61
|
|
|
@@ -97,7 +97,7 @@ export const logger: <E, R>(
|
|
|
97
97
|
const request = ServiceMap.getUnsafe(fiber.services, HttpServerRequest)
|
|
98
98
|
return Effect.withLogSpan(
|
|
99
99
|
Effect.flatMap(Effect.exit(httpApp), (exit) => {
|
|
100
|
-
if (loggerDisabledRequests.has(request)) {
|
|
100
|
+
if (loggerDisabledRequests.has(request.source)) {
|
|
101
101
|
return exit
|
|
102
102
|
} else if (exit._tag === "Failure") {
|
|
103
103
|
const [response, cause] = causeResponseStripped(exit.cause)
|
|
@@ -43,7 +43,7 @@ export const TypeId = "~effect/http/HttpServerRequest"
|
|
|
43
43
|
*/
|
|
44
44
|
export interface HttpServerRequest extends HttpIncomingMessage.HttpIncomingMessage<HttpServerError> {
|
|
45
45
|
readonly [TypeId]: typeof TypeId
|
|
46
|
-
readonly source:
|
|
46
|
+
readonly source: object
|
|
47
47
|
readonly url: string
|
|
48
48
|
readonly originalUrl: string
|
|
49
49
|
readonly method: HttpMethod
|
|
@@ -3,13 +3,13 @@ import type { PreResponseHandler } from "../HttpEffect.ts"
|
|
|
3
3
|
import type { HttpServerRequest } from "../HttpServerRequest.ts"
|
|
4
4
|
|
|
5
5
|
/** @internal */
|
|
6
|
-
export const requestPreResponseHandlers = new WeakMap<
|
|
6
|
+
export const requestPreResponseHandlers = new WeakMap<object, PreResponseHandler>()
|
|
7
7
|
|
|
8
8
|
/** @internal */
|
|
9
9
|
export const appendPreResponseHandlerUnsafe = (request: HttpServerRequest, handler: PreResponseHandler): void => {
|
|
10
|
-
const prev = requestPreResponseHandlers.get(request)
|
|
10
|
+
const prev = requestPreResponseHandlers.get(request.source)
|
|
11
11
|
const next: PreResponseHandler = prev ?
|
|
12
12
|
(request, response) => Effect.flatMap(prev(request, response), (response) => handler(request, response))
|
|
13
13
|
: handler
|
|
14
|
-
requestPreResponseHandlers.set(request, next)
|
|
14
|
+
requestPreResponseHandlers.set(request.source, next)
|
|
15
15
|
}
|
|
@@ -374,7 +374,11 @@ export const make = <
|
|
|
374
374
|
return yield* engine.register(self, execute)
|
|
375
375
|
})
|
|
376
376
|
),
|
|
377
|
-
executionId: (payload) =>
|
|
377
|
+
executionId: (payload) =>
|
|
378
|
+
Effect.flatMap(
|
|
379
|
+
Effect.sync(() => self.payloadSchema.makeUnsafe(payload)),
|
|
380
|
+
makeExecutionId
|
|
381
|
+
),
|
|
378
382
|
withCompensation
|
|
379
383
|
}
|
|
380
384
|
|
|
@@ -502,10 +502,14 @@ const defaultRetrySchedule = Schedule.exponential(200, 1.5).pipe(
|
|
|
502
502
|
)
|
|
503
503
|
|
|
504
504
|
/**
|
|
505
|
+
* A in-memory implementation of the WorkflowEngine. This is useful for testing
|
|
506
|
+
* and local development, but is not suitable for production use as it does not
|
|
507
|
+
* provide durability guarantees.
|
|
508
|
+
*
|
|
505
509
|
* @since 4.0.0
|
|
506
510
|
* @category Layers
|
|
507
511
|
*/
|
|
508
|
-
export const
|
|
512
|
+
export const layerMemory: Layer.Layer<WorkflowEngine> = Layer.effect(WorkflowEngine)(
|
|
509
513
|
Effect.gen(function*() {
|
|
510
514
|
const scope = yield* Effect.scope
|
|
511
515
|
|