@effect/platform 0.55.7 → 0.57.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/dist/cjs/Http/ClientRequest.js +11 -1
- package/dist/cjs/Http/ClientRequest.js.map +1 -1
- package/dist/cjs/Http/Headers.js +3 -3
- package/dist/cjs/Http/Headers.js.map +1 -1
- package/dist/cjs/Http/UrlParams.js +4 -1
- package/dist/cjs/Http/UrlParams.js.map +1 -1
- package/dist/cjs/KeyValueStore.js.map +1 -1
- package/dist/cjs/Worker.js.map +1 -1
- package/dist/cjs/internal/http/client.js +1 -1
- package/dist/cjs/internal/http/client.js.map +1 -1
- package/dist/cjs/internal/http/clientRequest.js +37 -16
- package/dist/cjs/internal/http/clientRequest.js.map +1 -1
- package/dist/cjs/internal/keyValueStore.js +44 -41
- package/dist/cjs/internal/keyValueStore.js.map +1 -1
- package/dist/cjs/internal/worker.js +24 -15
- package/dist/cjs/internal/worker.js.map +1 -1
- package/dist/dts/Http/ClientRequest.d.ts +35 -7
- package/dist/dts/Http/ClientRequest.d.ts.map +1 -1
- package/dist/dts/Http/Headers.d.ts +3 -3
- package/dist/dts/Http/Headers.d.ts.map +1 -1
- package/dist/dts/Http/UrlParams.d.ts +1 -1
- package/dist/dts/Http/UrlParams.d.ts.map +1 -1
- package/dist/dts/KeyValueStore.d.ts +2 -1
- package/dist/dts/KeyValueStore.d.ts.map +1 -1
- package/dist/dts/Worker.d.ts +15 -4
- package/dist/dts/Worker.d.ts.map +1 -1
- package/dist/esm/Http/ClientRequest.js +10 -0
- package/dist/esm/Http/ClientRequest.js.map +1 -1
- package/dist/esm/Http/Headers.js +3 -3
- package/dist/esm/Http/Headers.js.map +1 -1
- package/dist/esm/Http/UrlParams.js +4 -1
- package/dist/esm/Http/UrlParams.js.map +1 -1
- package/dist/esm/KeyValueStore.js.map +1 -1
- package/dist/esm/Worker.js.map +1 -1
- package/dist/esm/internal/http/client.js +1 -1
- package/dist/esm/internal/http/client.js.map +1 -1
- package/dist/esm/internal/http/clientRequest.js +35 -15
- package/dist/esm/internal/http/clientRequest.js.map +1 -1
- package/dist/esm/internal/keyValueStore.js +44 -41
- package/dist/esm/internal/keyValueStore.js.map +1 -1
- package/dist/esm/internal/worker.js +24 -15
- package/dist/esm/internal/worker.js.map +1 -1
- package/package.json +3 -3
- package/src/Http/ClientRequest.ts +37 -7
- package/src/Http/Headers.ts +15 -7
- package/src/Http/UrlParams.ts +4 -2
- package/src/KeyValueStore.ts +4 -1
- package/src/Worker.ts +19 -6
- package/src/internal/http/client.ts +1 -1
- package/src/internal/http/clientRequest.ts +75 -10
- package/src/internal/keyValueStore.ts +6 -5
- package/src/internal/worker.ts +39 -23
|
@@ -118,46 +118,49 @@ const storageError = props => PlatformError.SystemError({
|
|
|
118
118
|
...props
|
|
119
119
|
});
|
|
120
120
|
/** @internal */
|
|
121
|
-
export const layerStorage =
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
121
|
+
export const layerStorage = evaluate => Layer.sync(keyValueStoreTag, () => {
|
|
122
|
+
const storage = evaluate();
|
|
123
|
+
return make({
|
|
124
|
+
get: key => Effect.try({
|
|
125
|
+
try: () => Option.fromNullable(storage.getItem(key)),
|
|
126
|
+
catch: () => storageError({
|
|
127
|
+
pathOrDescriptor: key,
|
|
128
|
+
method: "get",
|
|
129
|
+
message: `Unable to get item with key ${key}`
|
|
130
|
+
})
|
|
131
|
+
}),
|
|
132
|
+
set: (key, value) => Effect.try({
|
|
133
|
+
try: () => storage.setItem(key, value),
|
|
134
|
+
catch: () => storageError({
|
|
135
|
+
pathOrDescriptor: key,
|
|
136
|
+
method: "set",
|
|
137
|
+
message: `Unable to set item with key ${key}`
|
|
138
|
+
})
|
|
139
|
+
}),
|
|
140
|
+
remove: key => Effect.try({
|
|
141
|
+
try: () => storage.removeItem(key),
|
|
142
|
+
catch: () => storageError({
|
|
143
|
+
pathOrDescriptor: key,
|
|
144
|
+
method: "remove",
|
|
145
|
+
message: `Unable to remove item with key ${key}`
|
|
146
|
+
})
|
|
147
|
+
}),
|
|
148
|
+
clear: Effect.try({
|
|
149
|
+
try: () => storage.clear(),
|
|
150
|
+
catch: () => storageError({
|
|
151
|
+
pathOrDescriptor: "clear",
|
|
152
|
+
method: "clear",
|
|
153
|
+
message: `Unable to clear storage`
|
|
154
|
+
})
|
|
155
|
+
}),
|
|
156
|
+
size: Effect.try({
|
|
157
|
+
try: () => storage.length,
|
|
158
|
+
catch: () => storageError({
|
|
159
|
+
pathOrDescriptor: "size",
|
|
160
|
+
method: "size",
|
|
161
|
+
message: `Unable to get size`
|
|
162
|
+
})
|
|
160
163
|
})
|
|
161
|
-
})
|
|
162
|
-
})
|
|
164
|
+
});
|
|
165
|
+
});
|
|
163
166
|
//# sourceMappingURL=keyValueStore.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keyValueStore.js","names":["Schema","Context","Effect","dual","pipe","Layer","Option","PlatformError","FileSystem","Path","TypeId","Symbol","for","keyValueStoreTag","GenericTag","make","impl","of","has","key","map","get","isSome","isEmpty","size","modify","f","flatMap","o","isNone","succeedNone","newValue","value","as","set","some","forSchema","schema","makeSchemaStore","prefix","self","remove","SchemaStoreTypeId","store","jsonSchema","parseJson","parse","decodeUnknown","encode","match","onNone","onSome","asSome","json","clear","layerMemory","sync","Map","fromNullable","delete","layerFileSystem","directory","effect","gen","_","fs","path","keyPath","join","encodeURIComponent","exists","makeDirectory","recursive","readFileString","catchTag","sysError","reason","succeed","none","fail","writeFileString","zipRight","readDirectory","files","length","layerSchema","tagIdentifier","tag","layer","storageError","props","SystemError","module","layerStorage","storage","try","getItem","catch","pathOrDescriptor","method","message","setItem","removeItem"],"sources":["../../../src/internal/keyValueStore.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAO,KAAKA,MAAM,MAAM,uBAAuB;AAC/C,OAAO,KAAKC,OAAO,MAAM,gBAAgB;AACzC,OAAO,KAAKC,MAAM,MAAM,eAAe;
|
|
1
|
+
{"version":3,"file":"keyValueStore.js","names":["Schema","Context","Effect","dual","pipe","Layer","Option","PlatformError","FileSystem","Path","TypeId","Symbol","for","keyValueStoreTag","GenericTag","make","impl","of","has","key","map","get","isSome","isEmpty","size","modify","f","flatMap","o","isNone","succeedNone","newValue","value","as","set","some","forSchema","schema","makeSchemaStore","prefix","self","remove","SchemaStoreTypeId","store","jsonSchema","parseJson","parse","decodeUnknown","encode","match","onNone","onSome","asSome","json","clear","layerMemory","sync","Map","fromNullable","delete","layerFileSystem","directory","effect","gen","_","fs","path","keyPath","join","encodeURIComponent","exists","makeDirectory","recursive","readFileString","catchTag","sysError","reason","succeed","none","fail","writeFileString","zipRight","readDirectory","files","length","layerSchema","tagIdentifier","tag","layer","storageError","props","SystemError","module","layerStorage","evaluate","storage","try","getItem","catch","pathOrDescriptor","method","message","setItem","removeItem"],"sources":["../../../src/internal/keyValueStore.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -44,7 +44,6 @@ export const makeManager = /*#__PURE__*/Effect.gen(function* () {
|
|
|
44
44
|
spawn({
|
|
45
45
|
encode,
|
|
46
46
|
initialMessage,
|
|
47
|
-
permits = 1,
|
|
48
47
|
queue,
|
|
49
48
|
transfers = _ => []
|
|
50
49
|
}) {
|
|
@@ -52,7 +51,6 @@ export const makeManager = /*#__PURE__*/Effect.gen(function* () {
|
|
|
52
51
|
const spawn = yield* _(Spawner);
|
|
53
52
|
const id = idCounter++;
|
|
54
53
|
let requestIdCounter = 0;
|
|
55
|
-
const semaphore = Effect.unsafeMakeSemaphore(permits);
|
|
56
54
|
const requestMap = new Map();
|
|
57
55
|
const sendQueue = yield* Effect.acquireRelease(Queue.unbounded(), Queue.shutdown);
|
|
58
56
|
const collector = Transferable.unsafeMakeCollector();
|
|
@@ -117,13 +115,13 @@ export const makeManager = /*#__PURE__*/Effect.gen(function* () {
|
|
|
117
115
|
return Stream.fromChannel(loop);
|
|
118
116
|
});
|
|
119
117
|
const executeEffect = request => Effect.acquireUseRelease(executeAcquire(request), ([, queue]) => Effect.flatMap(Queue.take(queue), Exit.map(Arr.unsafeGet(0))), executeRelease);
|
|
120
|
-
yield*
|
|
118
|
+
yield* outbound.take.pipe(Effect.flatMap(([id, request, span]) => Effect.fork(Effect.suspend(() => {
|
|
121
119
|
const result = requestMap.get(id);
|
|
122
120
|
if (!result) return Effect.void;
|
|
123
121
|
const transferables = transfers(request);
|
|
124
122
|
const spanTuple = Option.getOrUndefined(Option.map(span, span => [span.traceId, span.spanId, span.sampled]));
|
|
125
123
|
return pipe(Effect.flatMap(wrappedEncode(request), payload => sendQueue.offer([[id, 0, payload, spanTuple], [...transferables, ...collector.unsafeRead()]])), Effect.catchAllCause(cause => Queue.offer(result[0], Exit.failCause(cause))), Effect.zipRight(Deferred.await(result[1])));
|
|
126
|
-
})
|
|
124
|
+
}))), Effect.forever, Effect.forkScoped, Effect.interruptible);
|
|
127
125
|
if (initialMessage) {
|
|
128
126
|
yield* Effect.sync(initialMessage).pipe(Effect.flatMap(executeEffect), Effect.mapError(error => new WorkerError({
|
|
129
127
|
reason: "spawn",
|
|
@@ -146,22 +144,30 @@ export const makePool = options => Effect.gen(function* () {
|
|
|
146
144
|
const manager = yield* WorkerManager;
|
|
147
145
|
const workers = new Set();
|
|
148
146
|
const acquire = pipe(manager.spawn(options), Effect.tap(worker => Effect.sync(() => workers.add(worker))), Effect.tap(worker => Effect.addFinalizer(() => Effect.sync(() => workers.delete(worker)))), options.onCreate ? Effect.tap(options.onCreate) : identity);
|
|
149
|
-
const backing = yield* Pool.
|
|
147
|
+
const backing = "minSize" in options ? yield* Pool.makeWithTTL({
|
|
150
148
|
acquire,
|
|
151
|
-
|
|
149
|
+
min: options.minSize,
|
|
150
|
+
max: options.maxSize,
|
|
151
|
+
concurrency: options.concurrency,
|
|
152
|
+
targetUtilization: options.targetUtilization,
|
|
153
|
+
timeToLive: options.timeToLive
|
|
154
|
+
}) : yield* Pool.make({
|
|
155
|
+
acquire,
|
|
156
|
+
size: options.size,
|
|
157
|
+
concurrency: options.concurrency,
|
|
158
|
+
targetUtilization: options.targetUtilization
|
|
152
159
|
});
|
|
153
|
-
const get = Effect.scoped(backing.get);
|
|
154
160
|
const pool = {
|
|
155
161
|
backing,
|
|
156
162
|
broadcast: message => Effect.forEach(workers, worker => worker.executeEffect(message), {
|
|
157
163
|
concurrency: "unbounded",
|
|
158
164
|
discard: true
|
|
159
165
|
}),
|
|
160
|
-
execute: message => Stream.
|
|
161
|
-
executeEffect: message => Effect.flatMap(get, worker => worker.executeEffect(message))
|
|
166
|
+
execute: message => Stream.unwrapScoped(Effect.map(backing.get, worker => worker.execute(message))),
|
|
167
|
+
executeEffect: message => Effect.scoped(Effect.flatMap(backing.get, worker => worker.executeEffect(message)))
|
|
162
168
|
};
|
|
163
169
|
// report any spawn errors
|
|
164
|
-
yield* get;
|
|
170
|
+
yield* Effect.scoped(backing.get);
|
|
165
171
|
return pool;
|
|
166
172
|
});
|
|
167
173
|
/** @internal */
|
|
@@ -206,23 +212,26 @@ export const makePoolSerialized = options => Effect.gen(function* () {
|
|
|
206
212
|
acquire,
|
|
207
213
|
min: options.minSize,
|
|
208
214
|
max: options.maxSize,
|
|
215
|
+
concurrency: options.concurrency,
|
|
216
|
+
targetUtilization: options.targetUtilization,
|
|
209
217
|
timeToLive: options.timeToLive
|
|
210
218
|
}) : Pool.make({
|
|
211
219
|
acquire,
|
|
212
|
-
size: options.size
|
|
220
|
+
size: options.size,
|
|
221
|
+
concurrency: options.concurrency,
|
|
222
|
+
targetUtilization: options.targetUtilization
|
|
213
223
|
});
|
|
214
|
-
const get = Effect.scoped(backing.get);
|
|
215
224
|
const pool = {
|
|
216
225
|
backing,
|
|
217
226
|
broadcast: message => Effect.forEach(workers, worker => worker.executeEffect(message), {
|
|
218
227
|
concurrency: "unbounded",
|
|
219
228
|
discard: true
|
|
220
229
|
}),
|
|
221
|
-
execute: message => Stream.
|
|
222
|
-
executeEffect: message => Effect.flatMap(get, worker => worker.executeEffect(message))
|
|
230
|
+
execute: message => Stream.unwrapScoped(Effect.map(backing.get, worker => worker.execute(message))),
|
|
231
|
+
executeEffect: message => Effect.scoped(Effect.flatMap(backing.get, worker => worker.executeEffect(message)))
|
|
223
232
|
};
|
|
224
233
|
// report any spawn errors
|
|
225
|
-
yield* get;
|
|
234
|
+
yield* Effect.scoped(backing.get);
|
|
226
235
|
return pool;
|
|
227
236
|
});
|
|
228
237
|
/** @internal */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker.js","names":["Schema","Serializable","Arr","Cause","Channel","Chunk","Context","Deferred","Effect","Exit","Fiber","identity","pipe","Layer","Option","Pool","Queue","Schedule","Stream","Tracer","Transferable","WorkerError","defaultQueue","map","unbounded","queue","offer","id","item","span","take","shutdown","PlatformWorkerTypeId","Symbol","for","PlatformWorker","GenericTag","WorkerManagerTypeId","WorkerManager","Spawner","makeManager","gen","platform","idCounter","of","spawn","encode","initialMessage","permits","transfers","_","requestIdCounter","semaphore","unsafeMakeSemaphore","requestMap","Map","sendQueue","acquireRelease","collector","unsafeMakeCollector","wrappedEncode","message","zipRight","clear","provideService","Collector","succeed","outbound","addFinalizer","readyLatch","make","backing","send","flatMap","forever","msg","complete","void","handleMessage","all","join","fiber","await","concurrency","scoped","onError","cause","forEach","values","failCause","retry","spaced","annotateLogs","package","module","interruptible","forkScoped","empty","discard","sync","response","suspend","get","length","fail","decodeCause","executeAcquire","request","tap","serviceOption","ParentSpan","filter","_tag","deferred","set","executeRelease","exit","release","delete","isFailure","execute","loop","match","onFailure","isEmpty","onSuccess","value","write","unsafeFromArray","fromChannel","executeEffect","acquireUseRelease","unsafeGet","andThen","result","transferables","spanTuple","getOrUndefined","traceId","spanId","sampled","payload","unsafeRead","catchAllCause","ensuring","fork","mapError","error","reason","parallelFinalizers","layerManager","effect","makePool","options","manager","workers","Set","acquire","worker","add","onCreate","size","pool","broadcast","unwrap","makePoolLayer","tag","makeSerialized","serialize","parseSuccess","decode","successSchema","parseFailure","failureSchema","catchAll","mapEffect","matchEffect","makePoolSerialized","makeWithTTL","min","minSize","max","maxSize","timeToLive","makePoolSerializedLayer","layerSpawner","spawner"],"sources":["../../../src/internal/worker.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"worker.js","names":["Schema","Serializable","Arr","Cause","Channel","Chunk","Context","Deferred","Effect","Exit","Fiber","identity","pipe","Layer","Option","Pool","Queue","Schedule","Stream","Tracer","Transferable","WorkerError","defaultQueue","map","unbounded","queue","offer","id","item","span","take","shutdown","PlatformWorkerTypeId","Symbol","for","PlatformWorker","GenericTag","WorkerManagerTypeId","WorkerManager","Spawner","makeManager","gen","platform","idCounter","of","spawn","encode","initialMessage","transfers","_","requestIdCounter","requestMap","Map","sendQueue","acquireRelease","collector","unsafeMakeCollector","wrappedEncode","message","zipRight","clear","provideService","Collector","succeed","outbound","addFinalizer","readyLatch","make","backing","send","flatMap","forever","msg","complete","void","handleMessage","all","join","fiber","await","concurrency","scoped","onError","cause","forEach","values","failCause","retry","spaced","annotateLogs","package","module","interruptible","forkScoped","empty","discard","sync","response","suspend","get","length","fail","decodeCause","executeAcquire","request","tap","serviceOption","ParentSpan","filter","_tag","deferred","set","executeRelease","exit","release","delete","isFailure","execute","loop","match","onFailure","isEmpty","onSuccess","value","write","unsafeFromArray","fromChannel","executeEffect","acquireUseRelease","unsafeGet","fork","result","transferables","spanTuple","getOrUndefined","traceId","spanId","sampled","payload","unsafeRead","catchAllCause","mapError","error","reason","parallelFinalizers","layerManager","effect","makePool","options","manager","workers","Set","acquire","worker","add","onCreate","makeWithTTL","min","minSize","max","maxSize","targetUtilization","timeToLive","size","pool","broadcast","unwrapScoped","makePoolLayer","tag","makeSerialized","serialize","parseSuccess","decode","successSchema","parseFailure","failureSchema","catchAll","mapEffect","matchEffect","makePoolSerialized","makePoolSerializedLayer","layerSpawner","spawner"],"sources":["../../../src/internal/worker.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@effect/platform",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.57.0",
|
|
4
4
|
"description": "Unified interfaces for common platform-specific services",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -15,8 +15,8 @@
|
|
|
15
15
|
"path-browserify": "^1.0.1"
|
|
16
16
|
},
|
|
17
17
|
"peerDependencies": {
|
|
18
|
-
"@effect/schema": "^0.67.
|
|
19
|
-
"effect": "^3.
|
|
18
|
+
"@effect/schema": "^0.67.22",
|
|
19
|
+
"effect": "^3.3.1"
|
|
20
20
|
},
|
|
21
21
|
"publishConfig": {
|
|
22
22
|
"provenance": true
|
|
@@ -5,6 +5,7 @@ import type { ParseOptions } from "@effect/schema/AST"
|
|
|
5
5
|
import type * as Schema from "@effect/schema/Schema"
|
|
6
6
|
import type * as Effect from "effect/Effect"
|
|
7
7
|
import type { Inspectable } from "effect/Inspectable"
|
|
8
|
+
import type * as Option from "effect/Option"
|
|
8
9
|
import type { Scope } from "effect/Scope"
|
|
9
10
|
import type * as Stream from "effect/Stream"
|
|
10
11
|
import type * as PlatformError from "../Error.js"
|
|
@@ -41,6 +42,7 @@ export interface ClientRequest
|
|
|
41
42
|
readonly method: Method
|
|
42
43
|
readonly url: string
|
|
43
44
|
readonly urlParams: UrlParams.UrlParams
|
|
45
|
+
readonly hash: Option.Option<string>
|
|
44
46
|
readonly headers: Headers.Headers
|
|
45
47
|
readonly body: Body.Body
|
|
46
48
|
}
|
|
@@ -51,8 +53,9 @@ export interface ClientRequest
|
|
|
51
53
|
*/
|
|
52
54
|
export interface Options {
|
|
53
55
|
readonly method?: Method | undefined
|
|
54
|
-
readonly url?: string | undefined
|
|
56
|
+
readonly url?: string | URL | undefined
|
|
55
57
|
readonly urlParams?: UrlParams.Input | undefined
|
|
58
|
+
readonly hash?: string | undefined
|
|
56
59
|
readonly headers?: Headers.Input | undefined
|
|
57
60
|
readonly body?: Body.Body | undefined
|
|
58
61
|
readonly accept?: string | undefined
|
|
@@ -204,7 +207,7 @@ export const acceptJson: (self: ClientRequest) => ClientRequest = internal.accep
|
|
|
204
207
|
*/
|
|
205
208
|
export const setUrl: {
|
|
206
209
|
(url: string | URL): (self: ClientRequest) => ClientRequest
|
|
207
|
-
(self: ClientRequest, url: string): ClientRequest
|
|
210
|
+
(self: ClientRequest, url: string | URL): ClientRequest
|
|
208
211
|
} = internal.setUrl
|
|
209
212
|
|
|
210
213
|
/**
|
|
@@ -212,7 +215,7 @@ export const setUrl: {
|
|
|
212
215
|
* @category combinators
|
|
213
216
|
*/
|
|
214
217
|
export const prependUrl: {
|
|
215
|
-
(path: string
|
|
218
|
+
(path: string): (self: ClientRequest) => ClientRequest
|
|
216
219
|
(self: ClientRequest, path: string): ClientRequest
|
|
217
220
|
} = internal.prependUrl
|
|
218
221
|
|
|
@@ -238,25 +241,52 @@ export const updateUrl: {
|
|
|
238
241
|
* @since 1.0.0
|
|
239
242
|
* @category combinators
|
|
240
243
|
*/
|
|
241
|
-
export const setUrlParam
|
|
244
|
+
export const setUrlParam: {
|
|
245
|
+
(key: string, value: string): (self: ClientRequest) => ClientRequest
|
|
246
|
+
(self: ClientRequest, key: string, value: string): ClientRequest
|
|
247
|
+
} = internal.setUrlParam
|
|
248
|
+
|
|
249
|
+
/**
|
|
250
|
+
* @since 1.0.0
|
|
251
|
+
* @category combinators
|
|
252
|
+
*/
|
|
253
|
+
export const setUrlParams: {
|
|
254
|
+
(input: UrlParams.Input): (self: ClientRequest) => ClientRequest
|
|
255
|
+
(self: ClientRequest, input: UrlParams.Input): ClientRequest
|
|
256
|
+
} = internal.setUrlParams
|
|
242
257
|
|
|
243
258
|
/**
|
|
244
259
|
* @since 1.0.0
|
|
245
260
|
* @category combinators
|
|
246
261
|
*/
|
|
247
|
-
export const
|
|
262
|
+
export const appendUrlParam: {
|
|
263
|
+
(key: string, value: string): (self: ClientRequest) => ClientRequest
|
|
264
|
+
(self: ClientRequest, key: string, value: string): ClientRequest
|
|
265
|
+
} = internal.appendUrlParam
|
|
266
|
+
|
|
267
|
+
/**
|
|
268
|
+
* @since 1.0.0
|
|
269
|
+
* @category combinators
|
|
270
|
+
*/
|
|
271
|
+
export const appendUrlParams: {
|
|
272
|
+
(input: UrlParams.Input): (self: ClientRequest) => ClientRequest
|
|
273
|
+
(self: ClientRequest, input: UrlParams.Input): ClientRequest
|
|
274
|
+
} = internal.appendUrlParams
|
|
248
275
|
|
|
249
276
|
/**
|
|
250
277
|
* @since 1.0.0
|
|
251
278
|
* @category combinators
|
|
252
279
|
*/
|
|
253
|
-
export const
|
|
280
|
+
export const setHash: {
|
|
281
|
+
(hash: string): (self: ClientRequest) => ClientRequest
|
|
282
|
+
(self: ClientRequest, hash: string): ClientRequest
|
|
283
|
+
} = internal.setHash
|
|
254
284
|
|
|
255
285
|
/**
|
|
256
286
|
* @since 1.0.0
|
|
257
287
|
* @category combinators
|
|
258
288
|
*/
|
|
259
|
-
export const
|
|
289
|
+
export const removeHash: (self: ClientRequest) => ClientRequest = internal.removeHash
|
|
260
290
|
|
|
261
291
|
/**
|
|
262
292
|
* @since 1.0.0
|
package/src/Http/Headers.ts
CHANGED
|
@@ -8,7 +8,7 @@ import { globalValue } from "effect/GlobalValue"
|
|
|
8
8
|
import type * as Option from "effect/Option"
|
|
9
9
|
import * as Predicate from "effect/Predicate"
|
|
10
10
|
import * as Record from "effect/Record"
|
|
11
|
-
import * as
|
|
11
|
+
import * as Redacted from "effect/Redacted"
|
|
12
12
|
import * as String from "effect/String"
|
|
13
13
|
import type { Mutable } from "effect/Types"
|
|
14
14
|
|
|
@@ -205,22 +205,30 @@ export const remove: {
|
|
|
205
205
|
* @category combinators
|
|
206
206
|
*/
|
|
207
207
|
export const redact: {
|
|
208
|
-
(
|
|
209
|
-
|
|
208
|
+
(
|
|
209
|
+
key: string | RegExp | ReadonlyArray<string | RegExp>
|
|
210
|
+
): (self: Headers) => Record<string, string | Redacted.Redacted>
|
|
211
|
+
(
|
|
212
|
+
self: Headers,
|
|
213
|
+
key: string | RegExp | ReadonlyArray<string | RegExp>
|
|
214
|
+
): Record<string, string | Redacted.Redacted>
|
|
210
215
|
} = dual(
|
|
211
216
|
2,
|
|
212
|
-
(
|
|
213
|
-
|
|
217
|
+
(
|
|
218
|
+
self: Headers,
|
|
219
|
+
key: string | RegExp | ReadonlyArray<string | RegExp>
|
|
220
|
+
): Record<string, string | Redacted.Redacted> => {
|
|
221
|
+
const out: Record<string, string | Redacted.Redacted> = { ...self }
|
|
214
222
|
const modify = (key: string | RegExp) => {
|
|
215
223
|
if (typeof key === "string") {
|
|
216
224
|
const k = key.toLowerCase()
|
|
217
225
|
if (k in self) {
|
|
218
|
-
out[k] =
|
|
226
|
+
out[k] = Redacted.make(self[k])
|
|
219
227
|
}
|
|
220
228
|
} else {
|
|
221
229
|
for (const name in self) {
|
|
222
230
|
if (key.test(name)) {
|
|
223
|
-
out[name] =
|
|
231
|
+
out[name] = Redacted.make(self[name])
|
|
224
232
|
}
|
|
225
233
|
}
|
|
226
234
|
}
|
package/src/Http/UrlParams.ts
CHANGED
|
@@ -207,7 +207,7 @@ export const toString = (self: UrlParams): string => new URLSearchParams(self as
|
|
|
207
207
|
* @since 1.0.0
|
|
208
208
|
* @category constructors
|
|
209
209
|
*/
|
|
210
|
-
export const makeUrl = (url: string, params: UrlParams): Either.Either<URL, Error> => {
|
|
210
|
+
export const makeUrl = (url: string, params: UrlParams, hash: Option.Option<string>): Either.Either<URL, Error> => {
|
|
211
211
|
try {
|
|
212
212
|
const urlInstance = new URL(url, baseUrl())
|
|
213
213
|
for (let i = 0; i < params.length; i++) {
|
|
@@ -216,7 +216,9 @@ export const makeUrl = (url: string, params: UrlParams): Either.Either<URL, Erro
|
|
|
216
216
|
urlInstance.searchParams.append(key, value)
|
|
217
217
|
}
|
|
218
218
|
}
|
|
219
|
-
|
|
219
|
+
if (hash._tag === "Some") {
|
|
220
|
+
urlInstance.hash = hash.value
|
|
221
|
+
}
|
|
220
222
|
return Either.right(urlInstance)
|
|
221
223
|
} catch (e) {
|
|
222
224
|
return Either.left(e as Error)
|
package/src/KeyValueStore.ts
CHANGED
|
@@ -5,6 +5,7 @@ import type * as ParseResult from "@effect/schema/ParseResult"
|
|
|
5
5
|
import type * as Schema from "@effect/schema/Schema"
|
|
6
6
|
import type * as Context from "effect/Context"
|
|
7
7
|
import type * as Effect from "effect/Effect"
|
|
8
|
+
import type { LazyArg } from "effect/Function"
|
|
8
9
|
import type * as Layer from "effect/Layer"
|
|
9
10
|
import type * as Option from "effect/Option"
|
|
10
11
|
import type * as PlatformError from "./Error.js"
|
|
@@ -213,4 +214,6 @@ export const layerSchema: <A, I, R>(
|
|
|
213
214
|
* @category layers
|
|
214
215
|
* @see https://developer.mozilla.org/en-US/docs/Web/API/Web_Storage_API
|
|
215
216
|
*/
|
|
216
|
-
export const layerStorage: (
|
|
217
|
+
export const layerStorage: (
|
|
218
|
+
evaluate: LazyArg<Storage>
|
|
219
|
+
) => Layer.Layer<KeyValueStore> = internal.layerStorage
|
package/src/Worker.ts
CHANGED
|
@@ -108,7 +108,6 @@ export declare namespace Worker {
|
|
|
108
108
|
readonly transfers?: ((message: I) => ReadonlyArray<unknown>) | undefined
|
|
109
109
|
readonly queue?: WorkerQueue<I> | undefined
|
|
110
110
|
readonly initialMessage?: LazyArg<I> | undefined
|
|
111
|
-
readonly permits?: number | undefined
|
|
112
111
|
}
|
|
113
112
|
|
|
114
113
|
/**
|
|
@@ -157,10 +156,21 @@ export declare namespace WorkerPool {
|
|
|
157
156
|
* @since 1.0.0
|
|
158
157
|
* @category models
|
|
159
158
|
*/
|
|
160
|
-
export
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
159
|
+
export type Options<I> =
|
|
160
|
+
& Worker.Options<I>
|
|
161
|
+
& ({
|
|
162
|
+
readonly onCreate?: (worker: Worker<I, unknown, unknown>) => Effect.Effect<void, WorkerError>
|
|
163
|
+
readonly size: number
|
|
164
|
+
readonly concurrency?: number | undefined
|
|
165
|
+
readonly targetUtilization?: number | undefined
|
|
166
|
+
} | {
|
|
167
|
+
readonly onCreate?: (worker: Worker<I, unknown, unknown>) => Effect.Effect<void, WorkerError>
|
|
168
|
+
readonly minSize: number
|
|
169
|
+
readonly maxSize: number
|
|
170
|
+
readonly concurrency?: number | undefined
|
|
171
|
+
readonly targetUtilization?: number | undefined
|
|
172
|
+
readonly timeToLive: Duration.DurationInput
|
|
173
|
+
})
|
|
164
174
|
}
|
|
165
175
|
|
|
166
176
|
/**
|
|
@@ -270,7 +280,6 @@ export declare namespace SerializedWorker {
|
|
|
270
280
|
* @category models
|
|
271
281
|
*/
|
|
272
282
|
export interface BaseOptions<I> {
|
|
273
|
-
readonly permits?: number | undefined
|
|
274
283
|
readonly queue?: WorkerQueue<I> | undefined
|
|
275
284
|
}
|
|
276
285
|
}
|
|
@@ -312,10 +321,14 @@ export declare namespace SerializedWorkerPool {
|
|
|
312
321
|
& ({
|
|
313
322
|
readonly onCreate?: (worker: Worker<I, unknown, unknown>) => Effect.Effect<void, WorkerError>
|
|
314
323
|
readonly size: number
|
|
324
|
+
readonly concurrency?: number | undefined
|
|
325
|
+
readonly targetUtilization?: number | undefined
|
|
315
326
|
} | {
|
|
316
327
|
readonly onCreate?: (worker: Worker<I, unknown, unknown>) => Effect.Effect<void, WorkerError>
|
|
317
328
|
readonly minSize: number
|
|
318
329
|
readonly maxSize: number
|
|
330
|
+
readonly concurrency?: number | undefined
|
|
331
|
+
readonly targetUtilization?: number | undefined
|
|
319
332
|
readonly timeToLive: Duration.DurationInput
|
|
320
333
|
})
|
|
321
334
|
}
|
|
@@ -126,7 +126,7 @@ export const makeDefault = (
|
|
|
126
126
|
const scope = Context.unsafeGet(fiber.getFiberRef(FiberRef.currentContext), Scope.Scope)
|
|
127
127
|
const controller = new AbortController()
|
|
128
128
|
const addAbort = Scope.addFinalizer(scope, Effect.sync(() => controller.abort()))
|
|
129
|
-
const urlResult = UrlParams.makeUrl(request.url, request.urlParams)
|
|
129
|
+
const urlResult = UrlParams.makeUrl(request.url, request.urlParams, request.hash)
|
|
130
130
|
if (urlResult._tag === "Left") {
|
|
131
131
|
return Effect.fail(new Error.RequestError({ request, reason: "InvalidUrl", error: urlResult.left }))
|
|
132
132
|
}
|