effect 4.0.3 → 4.0.4
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/AGENTS.md +24 -0
- package/CLAUDE.md +24 -0
- package/ai-docs/package.json +2 -2
- package/ai-docs/src/52_graphql/10_basics.ts +111 -0
- package/ai-docs/src/52_graphql/20_testing.ts +45 -0
- package/ai-docs/src/52_graphql/30_batching.ts +116 -0
- package/ai-docs/src/52_graphql/40_aliased-batching.ts +122 -0
- package/ai-docs/src/52_graphql/50_errors-and-retries.ts +74 -0
- package/ai-docs/src/52_graphql/index.md +6 -0
- package/dist/Context.d.ts.map +1 -1
- package/dist/Context.js +9 -0
- package/dist/Context.js.map +1 -1
- package/dist/RequestResolver.d.ts.map +1 -1
- package/dist/RequestResolver.js +4 -10
- package/dist/RequestResolver.js.map +1 -1
- package/dist/Scheduler.d.ts +9 -0
- package/dist/Scheduler.d.ts.map +1 -1
- package/dist/Scheduler.js +9 -0
- package/dist/Scheduler.js.map +1 -1
- package/dist/Schema.d.ts +8 -0
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +7 -0
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaGetter.d.ts +4 -0
- package/dist/SchemaGetter.d.ts.map +1 -1
- package/dist/SchemaGetter.js +52 -33
- package/dist/SchemaGetter.js.map +1 -1
- package/dist/Sink.d.ts.map +1 -1
- package/dist/Sink.js +38 -17
- package/dist/Sink.js.map +1 -1
- package/dist/Stream.d.ts +11 -0
- package/dist/Stream.d.ts.map +1 -1
- package/dist/Stream.js +16 -1
- package/dist/Stream.js.map +1 -1
- package/dist/Utils.js +8 -3
- package/dist/Utils.js.map +1 -1
- package/dist/ai/AnthropicStructuredOutput.js +0 -2
- package/dist/ai/AnthropicStructuredOutput.js.map +1 -1
- package/dist/ai/Chat.d.ts +2 -2
- package/dist/ai/Chat.d.ts.map +1 -1
- package/dist/ai/LanguageModel.d.ts +38 -7
- package/dist/ai/LanguageModel.d.ts.map +1 -1
- package/dist/ai/LanguageModel.js +25 -7
- package/dist/ai/LanguageModel.js.map +1 -1
- package/dist/ai/McpServer.d.ts +55 -0
- package/dist/ai/McpServer.d.ts.map +1 -1
- package/dist/ai/McpServer.js +132 -22
- package/dist/ai/McpServer.js.map +1 -1
- package/dist/ai/Prompt.d.ts.map +1 -1
- package/dist/ai/Prompt.js +28 -5
- package/dist/ai/Prompt.js.map +1 -1
- package/dist/ai/Response.d.ts +4 -3
- package/dist/ai/Response.d.ts.map +1 -1
- package/dist/ai/Response.js.map +1 -1
- package/dist/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
- package/dist/cluster/ClusterWorkflowEngine.js +46 -8
- package/dist/cluster/ClusterWorkflowEngine.js.map +1 -1
- package/dist/cluster/Sharding.d.ts.map +1 -1
- package/dist/cluster/Sharding.js +6 -4
- package/dist/cluster/Sharding.js.map +1 -1
- package/dist/encoding/Sse.d.ts +6 -0
- package/dist/encoding/Sse.d.ts.map +1 -1
- package/dist/encoding/Sse.js +62 -70
- package/dist/encoding/Sse.js.map +1 -1
- package/dist/graphql/GraphQL.d.ts +349 -0
- package/dist/graphql/GraphQL.d.ts.map +1 -0
- package/dist/graphql/GraphQL.js +207 -0
- package/dist/graphql/GraphQL.js.map +1 -0
- package/dist/graphql/GraphQLClient.d.ts +562 -0
- package/dist/graphql/GraphQLClient.d.ts.map +1 -0
- package/dist/graphql/GraphQLClient.js +498 -0
- package/dist/graphql/GraphQLClient.js.map +1 -0
- package/dist/graphql/GraphQLClientError.d.ts +445 -0
- package/dist/graphql/GraphQLClientError.d.ts.map +1 -0
- package/dist/graphql/GraphQLClientError.js +479 -0
- package/dist/graphql/GraphQLClientError.js.map +1 -0
- package/dist/graphql/GraphQLGroup.d.ts +118 -0
- package/dist/graphql/GraphQLGroup.d.ts.map +1 -0
- package/dist/graphql/GraphQLGroup.js +109 -0
- package/dist/graphql/GraphQLGroup.js.map +1 -0
- package/dist/graphql/GraphQLMiddleware.d.ts +249 -0
- package/dist/graphql/GraphQLMiddleware.d.ts.map +1 -0
- package/dist/graphql/GraphQLMiddleware.js +130 -0
- package/dist/graphql/GraphQLMiddleware.js.map +1 -0
- package/dist/graphql/GraphQLProtocol.d.ts +731 -0
- package/dist/graphql/GraphQLProtocol.d.ts.map +1 -0
- package/dist/graphql/GraphQLProtocol.js +719 -0
- package/dist/graphql/GraphQLProtocol.js.map +1 -0
- package/dist/graphql/GraphQLResolver.d.ts +453 -0
- package/dist/graphql/GraphQLResolver.d.ts.map +1 -0
- package/dist/graphql/GraphQLResolver.js +552 -0
- package/dist/graphql/GraphQLResolver.js.map +1 -0
- package/dist/graphql/index.d.ts +40 -0
- package/dist/graphql/index.d.ts.map +1 -0
- package/dist/graphql/index.js +41 -0
- package/dist/graphql/index.js.map +1 -0
- package/dist/http/HttpClient.d.ts +15 -0
- package/dist/http/HttpClient.d.ts.map +1 -1
- package/dist/http/HttpClient.js +24 -10
- package/dist/http/HttpClient.js.map +1 -1
- package/dist/http/HttpEffect.d.ts.map +1 -1
- package/dist/http/HttpEffect.js +14 -7
- package/dist/http/HttpEffect.js.map +1 -1
- package/dist/http/HttpMiddleware.d.ts.map +1 -1
- package/dist/http/HttpMiddleware.js +31 -32
- package/dist/http/HttpMiddleware.js.map +1 -1
- package/dist/http/HttpRouter.d.ts +35 -0
- package/dist/http/HttpRouter.d.ts.map +1 -1
- package/dist/http/HttpRouter.js +35 -0
- package/dist/http/HttpRouter.js.map +1 -1
- package/dist/http/HttpServerResponse.d.ts +8 -6
- package/dist/http/HttpServerResponse.d.ts.map +1 -1
- package/dist/http/HttpServerResponse.js +27 -16
- package/dist/http/HttpServerResponse.js.map +1 -1
- package/dist/http/Multipart.d.ts.map +1 -1
- package/dist/http/Multipart.js +15 -1
- package/dist/http/Multipart.js.map +1 -1
- package/dist/http-api/HttpApiScalar.d.ts +5 -0
- package/dist/http-api/HttpApiScalar.d.ts.map +1 -1
- package/dist/http-api/HttpApiScalar.js.map +1 -1
- package/dist/internal/dateTime.js +40 -35
- package/dist/internal/dateTime.js.map +1 -1
- package/dist/internal/effect.js +8 -3
- package/dist/internal/effect.js.map +1 -1
- package/dist/internal/graphql.d.ts +2 -0
- package/dist/internal/graphql.d.ts.map +1 -0
- package/dist/internal/graphql.js +195 -0
- package/dist/internal/graphql.js.map +1 -0
- package/dist/internal/graphqlHeaders.d.ts +4 -0
- package/dist/internal/graphqlHeaders.d.ts.map +1 -0
- package/dist/internal/graphqlHeaders.js +11 -0
- package/dist/internal/graphqlHeaders.js.map +1 -0
- package/dist/internal/request.js +20 -1
- package/dist/internal/request.js.map +1 -1
- package/dist/internal/schema/toCodeDocument.js +4 -1
- package/dist/internal/schema/toCodeDocument.js.map +1 -1
- package/dist/internal/schema/toJsonSchemaDocument.js +29 -5
- package/dist/internal/schema/toJsonSchemaDocument.js.map +1 -1
- package/dist/internal/version.js +1 -1
- package/dist/net/Host.d.ts +49 -0
- package/dist/net/Host.d.ts.map +1 -1
- package/dist/net/Host.js +55 -0
- package/dist/net/Host.js.map +1 -1
- package/dist/net/NetAddress.d.ts +8 -0
- package/dist/net/NetAddress.d.ts.map +1 -1
- package/dist/net/NetAddress.js +8 -0
- package/dist/net/NetAddress.js.map +1 -1
- package/dist/rpc/RpcServer.d.ts.map +1 -1
- package/dist/rpc/RpcServer.js +36 -9
- package/dist/rpc/RpcServer.js.map +1 -1
- package/dist/socket/Socket.d.ts +6 -0
- package/dist/socket/Socket.d.ts.map +1 -1
- package/dist/socket/Socket.js.map +1 -1
- package/dist/workflow/DurableDeferred.d.ts.map +1 -1
- package/dist/workflow/DurableDeferred.js +32 -3
- package/dist/workflow/DurableDeferred.js.map +1 -1
- package/dist/workflow/WorkflowEngine.d.ts +24 -2
- package/dist/workflow/WorkflowEngine.d.ts.map +1 -1
- package/dist/workflow/WorkflowEngine.js +11 -2
- package/dist/workflow/WorkflowEngine.js.map +1 -1
- package/package.json +6 -3
- package/src/Context.ts +9 -0
- package/src/RequestResolver.ts +4 -10
- package/src/Scheduler.ts +9 -0
- package/src/Schema.ts +8 -0
- package/src/SchemaGetter.ts +47 -35
- package/src/Sink.ts +45 -18
- package/src/Stream.ts +33 -4
- package/src/Utils.ts +8 -5
- package/src/ai/AnthropicStructuredOutput.ts +2 -2
- package/src/ai/Chat.ts +2 -2
- package/src/ai/LanguageModel.ts +96 -24
- package/src/ai/McpServer.ts +244 -90
- package/src/ai/Prompt.ts +24 -10
- package/src/ai/Response.ts +6 -3
- package/src/cluster/ClusterWorkflowEngine.ts +51 -12
- package/src/cluster/Sharding.ts +12 -9
- package/src/encoding/Sse.ts +69 -79
- package/src/graphql/GraphQL.ts +494 -0
- package/src/graphql/GraphQLClient.ts +912 -0
- package/src/graphql/GraphQLClientError.ts +542 -0
- package/src/graphql/GraphQLGroup.ts +167 -0
- package/src/graphql/GraphQLMiddleware.ts +253 -0
- package/src/graphql/GraphQLProtocol.ts +1286 -0
- package/src/graphql/GraphQLResolver.ts +1010 -0
- package/src/graphql/index.ts +48 -0
- package/src/http/HttpClient.ts +54 -10
- package/src/http/HttpEffect.ts +11 -5
- package/src/http/HttpMiddleware.ts +33 -34
- package/src/http/HttpRouter.ts +35 -0
- package/src/http/HttpServerResponse.ts +28 -16
- package/src/http/Multipart.ts +17 -1
- package/src/http-api/HttpApiScalar.ts +5 -0
- package/src/internal/dateTime.ts +13 -10
- package/src/internal/effect.ts +8 -3
- package/src/internal/graphql.ts +263 -0
- package/src/internal/graphqlHeaders.ts +11 -0
- package/src/internal/request.ts +31 -3
- package/src/internal/schema/toCodeDocument.ts +7 -1
- package/src/internal/schema/toJsonSchemaDocument.ts +34 -2
- package/src/internal/version.ts +1 -1
- package/src/net/Host.ts +72 -0
- package/src/net/NetAddress.ts +9 -0
- package/src/rpc/RpcServer.ts +55 -15
- package/src/socket/Socket.ts +6 -0
- package/src/workflow/DurableDeferred.ts +43 -5
- package/src/workflow/WorkflowEngine.ts +48 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorkflowEngine.js","names":[],"sources":["../../src/workflow/WorkflowEngine.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"WorkflowEngine.js","names":[],"sources":["../../src/workflow/WorkflowEngine.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "effect",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "4.0.
|
|
4
|
+
"version": "4.0.4",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"description": "The missing standard library for TypeScript, for writing production-grade software.",
|
|
7
7
|
"homepage": "https://effect.website",
|
|
@@ -46,6 +46,7 @@
|
|
|
46
46
|
"./persistence": "./dist/persistence/index.js",
|
|
47
47
|
"./process": "./dist/process/index.js",
|
|
48
48
|
"./reactivity": "./dist/reactivity/index.js",
|
|
49
|
+
"./graphql": "./dist/graphql/index.js",
|
|
49
50
|
"./rpc": "./dist/rpc/index.js",
|
|
50
51
|
"./schema": "./dist/schema/index.js",
|
|
51
52
|
"./socket": "./dist/socket/index.js",
|
|
@@ -74,13 +75,15 @@
|
|
|
74
75
|
"provenance": true
|
|
75
76
|
},
|
|
76
77
|
"devDependencies": {
|
|
77
|
-
"@types/node": "^26.6.
|
|
78
|
+
"@types/node": "^26.6.5",
|
|
78
79
|
"ajv": "^8.20.0",
|
|
79
80
|
"ajv-draft-04": "^1.0.0",
|
|
80
81
|
"ast-types": "^0.16.3",
|
|
82
|
+
"esbuild": "^0.28.2",
|
|
81
83
|
"immer": "^11.1.21",
|
|
84
|
+
"miniflare": "5.20260925.0-alpha",
|
|
82
85
|
"protobufjs": "^8.8.0",
|
|
83
|
-
"tinybench": "^6.2.
|
|
86
|
+
"tinybench": "^6.2.1",
|
|
84
87
|
"valibot": "^1.5.0"
|
|
85
88
|
},
|
|
86
89
|
"scripts": {
|
package/src/Context.ts
CHANGED
|
@@ -1986,6 +1986,15 @@ export const pick = <S extends ReadonlyArray<Key<any, any>>>(
|
|
|
1986
1986
|
...services: S
|
|
1987
1987
|
) =>
|
|
1988
1988
|
<Services>(self: Context<Services>): Context<Services & Service.Identifier<S[number]>> => {
|
|
1989
|
+
if (services.length <= 1) {
|
|
1990
|
+
const map = new Map<string, unknown>()
|
|
1991
|
+
if (services.length === 1) {
|
|
1992
|
+
const key = services[0].key
|
|
1993
|
+
const value = lookup(self, key)
|
|
1994
|
+
if (value !== notFound) map.set(key, value)
|
|
1995
|
+
}
|
|
1996
|
+
return makeUnsafe(map)
|
|
1997
|
+
}
|
|
1989
1998
|
const keep = new Set(services.map((key) => key.key))
|
|
1990
1999
|
return withFlat(self, (map) =>
|
|
1991
2000
|
map.forEach((_, key) => {
|
package/src/RequestResolver.ts
CHANGED
|
@@ -311,16 +311,10 @@ export const makeGrouped = <A extends Request.Any, K>(options: {
|
|
|
311
311
|
})
|
|
312
312
|
|
|
313
313
|
const hashGroupKey = <A, K>(get: (entry: Request.Entry<A>) => K) => {
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
if (okey._tag === "Some") {
|
|
319
|
-
return okey.value
|
|
320
|
-
}
|
|
321
|
-
MutableHashMap.set(groupKeys, key, key)
|
|
322
|
-
return key
|
|
323
|
-
}
|
|
314
|
+
// Pending batches match equal keys, so they share one batch.
|
|
315
|
+
const batchKey = (entry: Request.Entry<A>): unknown => get(entry)
|
|
316
|
+
internal.equalBatchKeys.add(batchKey)
|
|
317
|
+
return batchKey
|
|
324
318
|
}
|
|
325
319
|
|
|
326
320
|
/**
|
package/src/Scheduler.ts
CHANGED
|
@@ -160,6 +160,15 @@ class PriorityBuckets {
|
|
|
160
160
|
* operation counts to decide when fibers should yield, and is the default
|
|
161
161
|
* scheduler implementation.
|
|
162
162
|
*
|
|
163
|
+
* **Gotchas**
|
|
164
|
+
*
|
|
165
|
+
* On Cloudflare Workers, request-owned scheduler timers can be discarded,
|
|
166
|
+
* leaving shared fibers suspended. Use `new MixedScheduler("sync")` for the
|
|
167
|
+
* whole application; see `HttpRouter.toWebHandler` for a recipe.
|
|
168
|
+
* Sync mode does not yield to the event loop: CPU-heavy work delays other
|
|
169
|
+
* requests, and I/O-polling loops can exhaust the CPU limit. It does not fix
|
|
170
|
+
* request-owned timers (such as `Effect.sleep`) or request-bound async contexts.
|
|
171
|
+
*
|
|
163
172
|
* @stability stable
|
|
164
173
|
* @category models
|
|
165
174
|
* @since 2.0.0
|
package/src/Schema.ts
CHANGED
|
@@ -4029,6 +4029,7 @@ export declare namespace StructWithRest {
|
|
|
4029
4029
|
*/
|
|
4030
4030
|
type Objects = Constraint & {
|
|
4031
4031
|
readonly ast: SchemaAST.Objects
|
|
4032
|
+
readonly Encoded: object
|
|
4032
4033
|
}
|
|
4033
4034
|
/**
|
|
4034
4035
|
* Readonly list of record schemas that provide the additional index signatures
|
|
@@ -4198,6 +4199,13 @@ export interface StructWithRest<
|
|
|
4198
4199
|
*
|
|
4199
4200
|
* **Gotchas**
|
|
4200
4201
|
*
|
|
4202
|
+
* The base schema must have an object-shaped encoded type. Whole-object
|
|
4203
|
+
* transformations are not supported, even with an empty rest array. Apply
|
|
4204
|
+
* transformations such as `Schema.fromJsonString` to the completed
|
|
4205
|
+
* `StructWithRest` schema instead. Object-shaped encoded types alone do not
|
|
4206
|
+
* guarantee compatibility: unsupported encodings are still rejected at runtime.
|
|
4207
|
+
* Transformations on individual fields remain supported.
|
|
4208
|
+
*
|
|
4201
4209
|
* TypeScript index signatures also apply to fixed keys. `StructWithRest` does
|
|
4202
4210
|
* not reject incompatible fixed fields at the call site; use
|
|
4203
4211
|
* `StructWithRest.ValidateRecords` when you want an explicit type-level
|
package/src/SchemaGetter.ts
CHANGED
|
@@ -2264,6 +2264,8 @@ function bracketPathToTokens(bracketPath: string): Array<string | number> {
|
|
|
2264
2264
|
.map((part) => (Arr.isCanonicalArrayIndex(part) ? globalThis.Number(part) : part))
|
|
2265
2265
|
}
|
|
2266
2266
|
|
|
2267
|
+
const MAX_ARRAY_HOLES = 20
|
|
2268
|
+
|
|
2267
2269
|
/**
|
|
2268
2270
|
* Builds a nested tree object from a list of bracket-path entries.
|
|
2269
2271
|
*
|
|
@@ -2287,6 +2289,10 @@ function bracketPathToTokens(bracketPath: string): Array<string | number> {
|
|
|
2287
2289
|
* - `""` → real empty key
|
|
2288
2290
|
* - Numeric bracket segments become array indices only when they are valid
|
|
2289
2291
|
* JavaScript array-index strings; otherwise they remain object keys.
|
|
2292
|
+
* - An indexed container becomes an array only when it has at most 20 holes
|
|
2293
|
+
* (missing indices below its highest index). Otherwise it is returned as an
|
|
2294
|
+
* object keyed by the index strings, so untrusted input such as
|
|
2295
|
+
* `a[4294967294]` cannot produce huge sparse arrays.
|
|
2290
2296
|
* - Duplicate keys for the same path are merged into arrays.
|
|
2291
2297
|
* - If a structural path conflicts with a previous leaf or a different container
|
|
2292
2298
|
* type, the later structural path replaces the conflicting value.
|
|
@@ -2319,43 +2325,31 @@ export function makeTreeRecord<A>(
|
|
|
2319
2325
|
const out: any = {}
|
|
2320
2326
|
const containers = new WeakSet<object>()
|
|
2321
2327
|
const duplicates = new WeakSet<object>()
|
|
2322
|
-
|
|
2323
|
-
|
|
2324
|
-
|
|
2325
|
-
if (containers.has(current) && Array.isArray(current) === shouldBeArray) {
|
|
2326
|
-
return current
|
|
2327
|
-
}
|
|
2328
|
-
const container = shouldBeArray ? [] : {}
|
|
2329
|
-
containers.add(container)
|
|
2330
|
-
InternalRecord.assignProperty(self, key, container)
|
|
2331
|
-
return container
|
|
2332
|
-
}
|
|
2328
|
+
// Indexed containers are built as plain objects so that large indices never
|
|
2329
|
+
// allocate sparse arrays, and are materialized once all entries are applied
|
|
2330
|
+
const indexed = new Map<object, { readonly parent: any; readonly key: PropertyKey; length: number }>()
|
|
2333
2331
|
|
|
2334
2332
|
bracketPathEntries.forEach(([key, value]) => {
|
|
2335
2333
|
const tokens = bracketPathToTokens(key)
|
|
2336
2334
|
let cur: any = out
|
|
2337
|
-
tokens.
|
|
2338
|
-
const
|
|
2339
|
-
|
|
2340
|
-
|
|
2341
|
-
if (
|
|
2342
|
-
|
|
2343
|
-
|
|
2344
|
-
|
|
2345
|
-
|
|
2346
|
-
|
|
2347
|
-
|
|
2348
|
-
|
|
2349
|
-
|
|
2350
|
-
|
|
2351
|
-
|
|
2352
|
-
|
|
2353
|
-
// convert it to an array to support multiple values for the same key
|
|
2354
|
-
const hasOwn = Object.hasOwn(cur, token)
|
|
2355
|
-
if (hasOwn && Array.isArray(cur[token]) && (containers.has(cur[token]) || duplicates.has(cur[token]))) {
|
|
2356
|
-
cur[token].push(value)
|
|
2335
|
+
for (let i = 0; i < tokens.length; i++) {
|
|
2336
|
+
const state = indexed.get(cur)
|
|
2337
|
+
// Resolve "[]" to the next index before handling leaves or containers
|
|
2338
|
+
const token = tokens[i] === "" && state !== undefined ? state.length : tokens[i]
|
|
2339
|
+
if (state !== undefined && typeof token === "number") {
|
|
2340
|
+
state.length = Math.max(state.length, token + 1)
|
|
2341
|
+
}
|
|
2342
|
+
const hasOwn = Object.hasOwn(cur, token)
|
|
2343
|
+
const current = hasOwn ? cur[token] : undefined
|
|
2344
|
+
|
|
2345
|
+
if (i === tokens.length - 1) {
|
|
2346
|
+
const currentState = indexed.get(current)
|
|
2347
|
+
if (currentState !== undefined) {
|
|
2348
|
+
InternalRecord.assignProperty(current, currentState.length++, value)
|
|
2349
|
+
} else if (duplicates.has(current)) {
|
|
2350
|
+
current.push(value)
|
|
2357
2351
|
} else if (hasOwn) {
|
|
2358
|
-
const values = [
|
|
2352
|
+
const values = [current, value]
|
|
2359
2353
|
duplicates.add(values)
|
|
2360
2354
|
InternalRecord.assignProperty(cur, token, values)
|
|
2361
2355
|
} else {
|
|
@@ -2363,12 +2357,30 @@ export function makeTreeRecord<A>(
|
|
|
2363
2357
|
}
|
|
2364
2358
|
} else {
|
|
2365
2359
|
const next = tokens[i + 1]
|
|
2366
|
-
// if next is a number OR "" (from []), we are building an array
|
|
2367
2360
|
const shouldBeArray = typeof next === "number" || next === ""
|
|
2368
|
-
|
|
2361
|
+
if (containers.has(current) && indexed.has(current) === shouldBeArray) {
|
|
2362
|
+
cur = current
|
|
2363
|
+
} else {
|
|
2364
|
+
const container = {}
|
|
2365
|
+
containers.add(container)
|
|
2366
|
+
if (shouldBeArray) {
|
|
2367
|
+
indexed.set(container, { parent: cur, key: token, length: 0 })
|
|
2368
|
+
}
|
|
2369
|
+
InternalRecord.assignProperty(cur, token, container)
|
|
2370
|
+
cur = container
|
|
2371
|
+
}
|
|
2369
2372
|
}
|
|
2370
|
-
}
|
|
2373
|
+
}
|
|
2371
2374
|
})
|
|
2375
|
+
|
|
2376
|
+
// Children are created after their parents, so materializing in reverse
|
|
2377
|
+
// creation order replaces every nested container before its parent is copied
|
|
2378
|
+
for (const [builder, { key, length, parent }] of Array.from(indexed).reverse()) {
|
|
2379
|
+
// A later conflicting path may have replaced the container in its parent
|
|
2380
|
+
if (parent[key] === builder && length - Object.keys(builder).length <= MAX_ARRAY_HOLES) {
|
|
2381
|
+
InternalRecord.assignProperty(parent, key, Object.assign(new Array(length), builder))
|
|
2382
|
+
}
|
|
2383
|
+
}
|
|
2372
2384
|
return out
|
|
2373
2385
|
}
|
|
2374
2386
|
|
package/src/Sink.ts
CHANGED
|
@@ -2177,13 +2177,24 @@ export const takeWhileFilterEffect = <In, Out, X, E, R>(
|
|
|
2177
2177
|
* @since 4.0.0
|
|
2178
2178
|
*/
|
|
2179
2179
|
export const takeUntil = <In>(predicate: Predicate<In>): Sink<Array<In>, In, In> =>
|
|
2180
|
-
|
|
2181
|
-
|
|
2182
|
-
return
|
|
2183
|
-
|
|
2184
|
-
|
|
2185
|
-
|
|
2186
|
-
|
|
2180
|
+
fromTransform((upstream) => {
|
|
2181
|
+
const out = Arr.empty<In>()
|
|
2182
|
+
return upstream.pipe(
|
|
2183
|
+
Effect.flatMap((arr) => {
|
|
2184
|
+
for (let i = 0; i < arr.length; i++) {
|
|
2185
|
+
out.push(arr[i])
|
|
2186
|
+
if (predicate(arr[i])) {
|
|
2187
|
+
const leftover: NonEmptyReadonlyArray<In> | undefined = (i + 1) < arr.length
|
|
2188
|
+
? arr.slice(i + 1) as Arr.NonEmptyArray<In>
|
|
2189
|
+
: undefined
|
|
2190
|
+
return Cause.done([out, leftover] as const)
|
|
2191
|
+
}
|
|
2192
|
+
}
|
|
2193
|
+
return Effect.void
|
|
2194
|
+
}),
|
|
2195
|
+
Effect.forever({ disableYield: true }),
|
|
2196
|
+
Pull.catchDone((end) => Effect.succeed<End<Array<In>, In>>(end ?? [out]))
|
|
2197
|
+
)
|
|
2187
2198
|
})
|
|
2188
2199
|
|
|
2189
2200
|
/**
|
|
@@ -2201,17 +2212,33 @@ export const takeUntil = <In>(predicate: Predicate<In>): Sink<Array<In>, In, In>
|
|
|
2201
2212
|
export const takeUntilEffect = <In, E, R>(
|
|
2202
2213
|
predicate: (input: In) => Effect.Effect<boolean, E, R>
|
|
2203
2214
|
): Sink<Array<In>, In, In, E, R> =>
|
|
2204
|
-
|
|
2205
|
-
|
|
2206
|
-
|
|
2207
|
-
|
|
2208
|
-
|
|
2209
|
-
|
|
2210
|
-
|
|
2211
|
-
|
|
2212
|
-
|
|
2213
|
-
|
|
2214
|
-
|
|
2215
|
+
fromTransform((upstream) => {
|
|
2216
|
+
const out = Arr.empty<In>()
|
|
2217
|
+
let leftover: NonEmptyReadonlyArray<In> | undefined = undefined
|
|
2218
|
+
return upstream.pipe(
|
|
2219
|
+
Effect.flatMap((arr) => {
|
|
2220
|
+
let i = 0
|
|
2221
|
+
return Effect.whileLoop({
|
|
2222
|
+
while: () => i < arr.length,
|
|
2223
|
+
body: () => {
|
|
2224
|
+
const input = arr[i++]
|
|
2225
|
+
return Effect.flatMap(predicate(input), (matched) => {
|
|
2226
|
+
out.push(input)
|
|
2227
|
+
if (!matched) {
|
|
2228
|
+
return Effect.void
|
|
2229
|
+
}
|
|
2230
|
+
if (i < arr.length) {
|
|
2231
|
+
leftover = arr.slice(i) as Arr.NonEmptyArray<In>
|
|
2232
|
+
}
|
|
2233
|
+
return Cause.done()
|
|
2234
|
+
})
|
|
2235
|
+
},
|
|
2236
|
+
step: constVoid
|
|
2237
|
+
})
|
|
2238
|
+
}),
|
|
2239
|
+
Effect.forever({ disableYield: true }),
|
|
2240
|
+
Pull.catchDone(() => Effect.succeed([out, leftover] as const))
|
|
2241
|
+
)
|
|
2215
2242
|
})
|
|
2216
2243
|
|
|
2217
2244
|
/**
|
package/src/Stream.ts
CHANGED
|
@@ -20767,6 +20767,9 @@ export const mkUint8Array = <E, R>(self: Stream<Uint8Array, E, R>): Effect.Effec
|
|
|
20767
20767
|
*
|
|
20768
20768
|
* See https://developer.mozilla.org/en-US/docs/Web/API/ReadableStream.
|
|
20769
20769
|
*
|
|
20770
|
+
* When `signal` aborts, the stream is interrupted even if the reader has
|
|
20771
|
+
* stopped pulling, and the `ReadableStream` closes.
|
|
20772
|
+
*
|
|
20770
20773
|
* **Example** (Converting to a ReadableStream with services)
|
|
20771
20774
|
*
|
|
20772
20775
|
* ```ts import.meta.vitest
|
|
@@ -20795,6 +20798,9 @@ export const toReadableStreamWith: {
|
|
|
20795
20798
|
*
|
|
20796
20799
|
* See https://developer.mozilla.org/en-US/docs/Web/API/ReadableStream.
|
|
20797
20800
|
*
|
|
20801
|
+
* When `signal` aborts, the stream is interrupted even if the reader has
|
|
20802
|
+
* stopped pulling, and the `ReadableStream` closes.
|
|
20803
|
+
*
|
|
20798
20804
|
* **Example** (Converting to a ReadableStream with services)
|
|
20799
20805
|
*
|
|
20800
20806
|
* ```ts import.meta.vitest
|
|
@@ -20812,7 +20818,10 @@ export const toReadableStreamWith: {
|
|
|
20812
20818
|
*/
|
|
20813
20819
|
<A, XR>(
|
|
20814
20820
|
context: Context.Context<XR>,
|
|
20815
|
-
options?: {
|
|
20821
|
+
options?: {
|
|
20822
|
+
readonly strategy?: QueuingStrategy<A> | undefined
|
|
20823
|
+
readonly signal?: AbortSignal | undefined
|
|
20824
|
+
}
|
|
20816
20825
|
): <E, R extends XR>(self: Stream<A, E, R>) => ReadableStream<A>
|
|
20817
20826
|
/**
|
|
20818
20827
|
* Converts the stream to a `ReadableStream` using the provided services.
|
|
@@ -20826,6 +20835,9 @@ export const toReadableStreamWith: {
|
|
|
20826
20835
|
*
|
|
20827
20836
|
* See https://developer.mozilla.org/en-US/docs/Web/API/ReadableStream.
|
|
20828
20837
|
*
|
|
20838
|
+
* When `signal` aborts, the stream is interrupted even if the reader has
|
|
20839
|
+
* stopped pulling, and the `ReadableStream` closes.
|
|
20840
|
+
*
|
|
20829
20841
|
* **Example** (Converting to a ReadableStream with services)
|
|
20830
20842
|
*
|
|
20831
20843
|
* ```ts import.meta.vitest
|
|
@@ -20844,18 +20856,28 @@ export const toReadableStreamWith: {
|
|
|
20844
20856
|
<A, E, XR, R extends XR>(
|
|
20845
20857
|
self: Stream<A, E, R>,
|
|
20846
20858
|
context: Context.Context<XR>,
|
|
20847
|
-
options?: {
|
|
20859
|
+
options?: {
|
|
20860
|
+
readonly strategy?: QueuingStrategy<A> | undefined
|
|
20861
|
+
readonly signal?: AbortSignal | undefined
|
|
20862
|
+
}
|
|
20848
20863
|
): ReadableStream<A>
|
|
20849
20864
|
} = dual(
|
|
20850
20865
|
(args) => isStream(args[0]),
|
|
20851
20866
|
<A, E, XR, R extends XR>(
|
|
20852
20867
|
self: Stream<A, E, R>,
|
|
20853
20868
|
context: Context.Context<XR>,
|
|
20854
|
-
options?: {
|
|
20869
|
+
options?: {
|
|
20870
|
+
readonly strategy?: QueuingStrategy<A> | undefined
|
|
20871
|
+
readonly signal?: AbortSignal | undefined
|
|
20872
|
+
}
|
|
20855
20873
|
): ReadableStream<A> => {
|
|
20856
20874
|
let currentResolve: (() => void) | undefined = undefined
|
|
20857
20875
|
let fiber: Fiber.Fiber<void, E> | undefined = undefined
|
|
20876
|
+
let cancelled = false
|
|
20858
20877
|
const latch = Latch.makeUnsafe(false)
|
|
20878
|
+
const signal = options?.signal
|
|
20879
|
+
// Interrupting the fiber directly also stops a consumer waiting for a pull.
|
|
20880
|
+
const onAbort = () => fiber!.interruptUnsafe()
|
|
20859
20881
|
|
|
20860
20882
|
return new ReadableStream<A>({
|
|
20861
20883
|
start(controller) {
|
|
@@ -20872,12 +20894,18 @@ export const toReadableStreamWith: {
|
|
|
20872
20894
|
context
|
|
20873
20895
|
))
|
|
20874
20896
|
fiber.addObserver((exit) => {
|
|
20875
|
-
|
|
20897
|
+
signal?.removeEventListener("abort", onAbort)
|
|
20898
|
+
if (cancelled) return
|
|
20899
|
+
if (exit._tag === "Failure" && signal?.aborted !== true) {
|
|
20876
20900
|
controller.error(Cause.squash(exit.cause))
|
|
20877
20901
|
} else {
|
|
20878
20902
|
controller.close()
|
|
20879
20903
|
}
|
|
20880
20904
|
})
|
|
20905
|
+
if (signal !== undefined && fiber.pollUnsafe() === undefined) {
|
|
20906
|
+
if (signal.aborted) onAbort()
|
|
20907
|
+
else signal.addEventListener("abort", onAbort, { once: true })
|
|
20908
|
+
}
|
|
20881
20909
|
},
|
|
20882
20910
|
pull() {
|
|
20883
20911
|
return new Promise<void>((resolve) => {
|
|
@@ -20887,6 +20915,7 @@ export const toReadableStreamWith: {
|
|
|
20887
20915
|
},
|
|
20888
20916
|
cancel() {
|
|
20889
20917
|
if (!fiber) return
|
|
20918
|
+
cancelled = true
|
|
20890
20919
|
return Effect.runPromise(Effect.asVoid(Fiber.interrupt(fiber)))
|
|
20891
20920
|
}
|
|
20892
20921
|
}, options?.strategy)
|
package/src/Utils.ts
CHANGED
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
* @since 2.0.0
|
|
13
13
|
*/
|
|
14
14
|
import type { Kind, TypeLambda } from "./HKT.ts"
|
|
15
|
-
import { getStackTraceLimit } from "./internal/stackTraceLimit.ts"
|
|
15
|
+
import { getStackTraceLimit, setStackTraceLimit } from "./internal/stackTraceLimit.ts"
|
|
16
16
|
import type * as Types from "./Types.ts"
|
|
17
17
|
|
|
18
18
|
/**
|
|
@@ -209,10 +209,13 @@ const pickInternalCall = (): <A>(body: () => A) => A => {
|
|
|
209
209
|
}
|
|
210
210
|
}
|
|
211
211
|
|
|
212
|
-
const
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
212
|
+
const limit = getStackTraceLimit()
|
|
213
|
+
if (limit === 0) return forced[InternalTypeId]
|
|
214
|
+
// Only the callback and internal call frames are needed for detection.
|
|
215
|
+
setStackTraceLimit(2)
|
|
216
|
+
const error = standard[InternalTypeId](() => new Error())
|
|
217
|
+
setStackTraceLimit(limit)
|
|
218
|
+
return error.stack?.includes(InternalTypeId) === true ? standard[InternalTypeId] : forced[InternalTypeId]
|
|
216
219
|
}
|
|
217
220
|
|
|
218
221
|
/** @internal */
|
|
@@ -14,8 +14,8 @@ import type * as JsonSchema from "../JsonSchema.ts"
|
|
|
14
14
|
import * as Rec from "../Record.ts"
|
|
15
15
|
import * as Schema from "../Schema.ts"
|
|
16
16
|
import * as InternalStructuredOutput from "./internal/structured-output.ts"
|
|
17
|
-
import * as LanguageModel from "./LanguageModel.ts"
|
|
18
|
-
import * as OpenAiStructuredOutput from "./OpenAiStructuredOutput.ts"
|
|
17
|
+
import type * as LanguageModel from "./LanguageModel.ts"
|
|
18
|
+
import type * as OpenAiStructuredOutput from "./OpenAiStructuredOutput.ts"
|
|
19
19
|
|
|
20
20
|
/**
|
|
21
21
|
* Converts a `Schema.Codec` to Anthropic structured-output JSON Schema and a
|
package/src/ai/Chat.ts
CHANGED
|
@@ -228,7 +228,7 @@ export interface Chat {
|
|
|
228
228
|
<Options extends NoExcessProperties<LanguageModel.GenerateTextOptions<{}>, Options>>(
|
|
229
229
|
options: Options & { readonly toolkit?: undefined } & LanguageModel.GenerateTextOptions<{}>
|
|
230
230
|
): Effect.Effect<
|
|
231
|
-
LanguageModel.GenerateTextResponse<{}
|
|
231
|
+
LanguageModel.GenerateTextResponse<{}, LanguageModel.ExtractToolParametersModeWithoutToolkit<Options>>,
|
|
232
232
|
LanguageModel.ExtractError<Options>,
|
|
233
233
|
LanguageModel.LanguageModel | LanguageModel.ExtractServices<Options>
|
|
234
234
|
>
|
|
@@ -310,7 +310,7 @@ export interface Chat {
|
|
|
310
310
|
<Options extends NoExcessProperties<LanguageModel.GenerateTextOptions<{}>, Options>>(
|
|
311
311
|
options: Options & { readonly toolkit?: undefined } & LanguageModel.GenerateTextOptions<{}>
|
|
312
312
|
): Stream.Stream<
|
|
313
|
-
Response.StreamPart<{}
|
|
313
|
+
Response.StreamPart<{}, LanguageModel.ExtractToolParametersModeWithoutToolkit<Options>>,
|
|
314
314
|
LanguageModel.ExtractError<Options>,
|
|
315
315
|
LanguageModel.LanguageModel | LanguageModel.ExtractServices<Options>
|
|
316
316
|
>
|