@effect/platform 0.58.27 → 0.59.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/Error.js +1 -25
- package/dist/cjs/Error.js.map +1 -1
- package/dist/cjs/HttpClientError.js +5 -6
- package/dist/cjs/HttpClientError.js.map +1 -1
- package/dist/cjs/HttpServerError.js +6 -5
- package/dist/cjs/HttpServerError.js.map +1 -1
- package/dist/cjs/Multipart.js.map +1 -1
- package/dist/cjs/Socket.js +11 -11
- package/dist/cjs/Socket.js.map +1 -1
- package/dist/cjs/Worker.js +10 -1
- package/dist/cjs/Worker.js.map +1 -1
- package/dist/cjs/WorkerError.js +13 -4
- package/dist/cjs/WorkerError.js.map +1 -1
- package/dist/cjs/WorkerRunner.js +6 -1
- package/dist/cjs/WorkerRunner.js.map +1 -1
- package/dist/cjs/internal/httpClient.js +7 -7
- package/dist/cjs/internal/httpClient.js.map +1 -1
- package/dist/cjs/internal/httpClientResponse.js +13 -13
- package/dist/cjs/internal/httpClientResponse.js.map +1 -1
- package/dist/cjs/internal/httpServerRequest.js +16 -16
- package/dist/cjs/internal/httpServerRequest.js.map +1 -1
- package/dist/cjs/internal/multipart.js +16 -16
- package/dist/cjs/internal/multipart.js.map +1 -1
- package/dist/cjs/internal/worker.js +126 -59
- package/dist/cjs/internal/worker.js.map +1 -1
- package/dist/cjs/internal/workerRunner.js +39 -65
- package/dist/cjs/internal/workerRunner.js.map +1 -1
- package/dist/dts/Error.d.ts +0 -10
- package/dist/dts/Error.d.ts.map +1 -1
- package/dist/dts/HttpClientError.d.ts +6 -8
- package/dist/dts/HttpClientError.d.ts.map +1 -1
- package/dist/dts/HttpServerError.d.ts +10 -13
- package/dist/dts/HttpServerError.d.ts.map +1 -1
- package/dist/dts/Multipart.d.ts +3 -2
- package/dist/dts/Multipart.d.ts.map +1 -1
- package/dist/dts/Socket.d.ts +2 -4
- package/dist/dts/Socket.d.ts.map +1 -1
- package/dist/dts/Worker.d.ts +27 -27
- package/dist/dts/Worker.d.ts.map +1 -1
- package/dist/dts/WorkerError.d.ts +2 -2
- package/dist/dts/WorkerError.d.ts.map +1 -1
- package/dist/dts/WorkerRunner.d.ts +8 -5
- package/dist/dts/WorkerRunner.d.ts.map +1 -1
- package/dist/esm/Error.js +0 -23
- package/dist/esm/Error.js.map +1 -1
- package/dist/esm/HttpClientError.js +5 -6
- package/dist/esm/HttpClientError.js.map +1 -1
- package/dist/esm/HttpServerError.js +7 -6
- package/dist/esm/HttpServerError.js.map +1 -1
- package/dist/esm/Multipart.js.map +1 -1
- package/dist/esm/Socket.js +12 -12
- package/dist/esm/Socket.js.map +1 -1
- package/dist/esm/Worker.js +9 -0
- package/dist/esm/Worker.js.map +1 -1
- package/dist/esm/WorkerError.js +13 -4
- package/dist/esm/WorkerError.js.map +1 -1
- package/dist/esm/WorkerRunner.js +5 -0
- package/dist/esm/WorkerRunner.js.map +1 -1
- package/dist/esm/internal/httpClient.js +7 -7
- package/dist/esm/internal/httpClient.js.map +1 -1
- package/dist/esm/internal/httpClientResponse.js +13 -13
- package/dist/esm/internal/httpClientResponse.js.map +1 -1
- package/dist/esm/internal/httpServerRequest.js +16 -16
- package/dist/esm/internal/httpServerRequest.js.map +1 -1
- package/dist/esm/internal/multipart.js +17 -17
- package/dist/esm/internal/multipart.js.map +1 -1
- package/dist/esm/internal/worker.js +124 -57
- package/dist/esm/internal/worker.js.map +1 -1
- package/dist/esm/internal/workerRunner.js +38 -65
- package/dist/esm/internal/workerRunner.js.map +1 -1
- package/package.json +3 -3
- package/src/Error.ts +0 -38
- package/src/HttpClientError.ts +13 -6
- package/src/HttpServerError.ts +17 -6
- package/src/Multipart.ts +3 -2
- package/src/Socket.ts +10 -9
- package/src/Worker.ts +32 -29
- package/src/WorkerError.ts +15 -8
- package/src/WorkerRunner.ts +15 -8
- package/src/internal/httpClient.ts +7 -7
- package/src/internal/httpClientResponse.ts +13 -13
- package/src/internal/httpServerRequest.ts +15 -15
- package/src/internal/multipart.ts +16 -15
- package/src/internal/worker.ts +193 -146
- package/src/internal/workerRunner.ts +106 -139
|
@@ -89,10 +89,10 @@ export const schemaBodyFormJson = (schema, options) => {
|
|
|
89
89
|
const parseUrlParams = UrlParams.schemaJson(schema, options);
|
|
90
90
|
return field => Effect.flatMap(serverRequestTag, request => {
|
|
91
91
|
if (isMultipart(request)) {
|
|
92
|
-
return Effect.flatMap(Effect.mapError(request.multipart,
|
|
92
|
+
return Effect.flatMap(Effect.mapError(request.multipart, cause => new Error.RequestError({
|
|
93
93
|
request,
|
|
94
94
|
reason: "Decode",
|
|
95
|
-
|
|
95
|
+
cause
|
|
96
96
|
})), parseMultipart(field));
|
|
97
97
|
}
|
|
98
98
|
return Effect.flatMap(request.urlParamsBody, parseUrlParams(field));
|
|
@@ -147,14 +147,14 @@ class ServerRequestImpl extends Inspectable.Class {
|
|
|
147
147
|
return this.cachedCookies = Cookies.parseHeader(this.headers.cookie ?? "");
|
|
148
148
|
}
|
|
149
149
|
get stream() {
|
|
150
|
-
return this.source.body ? Stream.fromReadableStream(() => this.source.body,
|
|
150
|
+
return this.source.body ? Stream.fromReadableStream(() => this.source.body, cause => new Error.RequestError({
|
|
151
151
|
request: this,
|
|
152
152
|
reason: "Decode",
|
|
153
|
-
|
|
153
|
+
cause
|
|
154
154
|
})) : Stream.fail(new Error.RequestError({
|
|
155
155
|
request: this,
|
|
156
156
|
reason: "Decode",
|
|
157
|
-
|
|
157
|
+
description: "can not create stream from empty body"
|
|
158
158
|
}));
|
|
159
159
|
}
|
|
160
160
|
textEffect;
|
|
@@ -164,10 +164,10 @@ class ServerRequestImpl extends Inspectable.Class {
|
|
|
164
164
|
}
|
|
165
165
|
this.textEffect = Effect.runSync(Effect.cached(Effect.tryPromise({
|
|
166
166
|
try: () => this.source.text(),
|
|
167
|
-
catch:
|
|
167
|
+
catch: cause => new Error.RequestError({
|
|
168
168
|
request: this,
|
|
169
169
|
reason: "Decode",
|
|
170
|
-
|
|
170
|
+
cause
|
|
171
171
|
})
|
|
172
172
|
})));
|
|
173
173
|
return this.textEffect;
|
|
@@ -175,20 +175,20 @@ class ServerRequestImpl extends Inspectable.Class {
|
|
|
175
175
|
get json() {
|
|
176
176
|
return Effect.tryMap(this.text, {
|
|
177
177
|
try: _ => JSON.parse(_),
|
|
178
|
-
catch:
|
|
178
|
+
catch: cause => new Error.RequestError({
|
|
179
179
|
request: this,
|
|
180
180
|
reason: "Decode",
|
|
181
|
-
|
|
181
|
+
cause
|
|
182
182
|
})
|
|
183
183
|
});
|
|
184
184
|
}
|
|
185
185
|
get urlParamsBody() {
|
|
186
186
|
return Effect.flatMap(this.text, _ => Effect.try({
|
|
187
187
|
try: () => UrlParams.fromInput(new URLSearchParams(_)),
|
|
188
|
-
catch:
|
|
188
|
+
catch: cause => new Error.RequestError({
|
|
189
189
|
request: this,
|
|
190
190
|
reason: "Decode",
|
|
191
|
-
|
|
191
|
+
cause
|
|
192
192
|
})
|
|
193
193
|
}));
|
|
194
194
|
}
|
|
@@ -201,9 +201,9 @@ class ServerRequestImpl extends Inspectable.Class {
|
|
|
201
201
|
return this.multipartEffect;
|
|
202
202
|
}
|
|
203
203
|
get multipartStream() {
|
|
204
|
-
return Stream.pipeThroughChannel(Stream.mapError(this.stream,
|
|
204
|
+
return Stream.pipeThroughChannel(Stream.mapError(this.stream, cause => new Multipart.MultipartError({
|
|
205
205
|
reason: "InternalError",
|
|
206
|
-
|
|
206
|
+
cause
|
|
207
207
|
})), Multipart.makeChannel(this.headers));
|
|
208
208
|
}
|
|
209
209
|
arrayBufferEffect;
|
|
@@ -213,10 +213,10 @@ class ServerRequestImpl extends Inspectable.Class {
|
|
|
213
213
|
}
|
|
214
214
|
this.arrayBufferEffect = Effect.runSync(Effect.cached(Effect.tryPromise({
|
|
215
215
|
try: () => this.source.arrayBuffer(),
|
|
216
|
-
catch:
|
|
216
|
+
catch: cause => new Error.RequestError({
|
|
217
217
|
request: this,
|
|
218
218
|
reason: "Decode",
|
|
219
|
-
|
|
219
|
+
cause
|
|
220
220
|
})
|
|
221
221
|
})));
|
|
222
222
|
return this.arrayBufferEffect;
|
|
@@ -225,7 +225,7 @@ class ServerRequestImpl extends Inspectable.Class {
|
|
|
225
225
|
return Effect.fail(new Error.RequestError({
|
|
226
226
|
request: this,
|
|
227
227
|
reason: "Decode",
|
|
228
|
-
|
|
228
|
+
description: "Not an upgradeable ServerRequest"
|
|
229
229
|
}));
|
|
230
230
|
}
|
|
231
231
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"httpServerRequest.js","names":["Schema","Channel","Context","Effect","Inspectable","Option","Stream","Cookies","Headers","IncomingMessage","Error","Multipart","Socket","UrlParams","TypeId","Symbol","for","serverRequestTag","GenericTag","parsedSearchParamsTag","upgrade","flatMap","request","upgradeChannel","unwrap","map","toChannelWith","multipartPersisted","multipart","searchParamsFromURL","url","out","key","value","searchParams","entries","entry","undefined","Array","isArray","push","schemaCookies","schema","options","parse","decodeUnknown","req","cookies","schemaHeaders","schemaSearchParams","schemaBodyJson","isMultipart","headers","toLowerCase","includes","schemaBodyForm","parseMultipart","schemaPersisted","parseUrlParams","schemaBodyUrlParams","schemaBodyMultipart","schemaBodyFormJson","schemaJson","field","mapError","error","RequestError","reason","urlParamsBody","fromWeb","ServerRequestImpl","Class","source","headersOverride","remoteAddressOverride","constructor","toJSON","inspect","_id","method","originalUrl","modify","remoteAddress","toUpperCase","some","none","fromInput","cachedCookies","parseHeader","cookie","stream","body","fromReadableStream","_","fail","textEffect","text","runSync","cached","tryPromise","try","catch","json","tryMap","JSON","URLSearchParams","multipartEffect","toPersisted","multipartStream","pipeThroughChannel","MultipartError","makeChannel","arrayBufferEffect","arrayBuffer","toURL","self","host","protocol","URL"],"sources":["../../../src/internal/httpServerRequest.ts"],"sourcesContent":[null],"mappings":"AAEA,OAAO,KAAKA,MAAM,MAAM,uBAAuB;AAC/C,OAAO,KAAKC,OAAO,MAAM,gBAAgB;AACzC,OAAO,KAAKC,OAAO,MAAM,gBAAgB;AACzC,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,WAAW,MAAM,oBAAoB;AACjD,OAAO,KAAKC,MAAM,MAAM,eAAe;AAGvC,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,OAAO,MAAM,eAAe;AAExC,OAAO,KAAKC,OAAO,MAAM,eAAe;AACxC,OAAO,KAAKC,eAAe,MAAM,2BAA2B;AAE5D,OAAO,KAAKC,KAAK,MAAM,uBAAuB;AAE9C,OAAO,KAAKC,SAAS,MAAM,iBAAiB;AAE5C,OAAO,KAAKC,MAAM,MAAM,cAAc;AACtC,OAAO,KAAKC,SAAS,MAAM,iBAAiB;AAE5C;AACA,OAAO,MAAMC,MAAM,gBAAyBC,MAAM,CAACC,GAAG,CAAC,oCAAoC,CAAyB;AAEpH;AACA,OAAO,MAAMC,gBAAgB,gBAAGf,OAAO,CAACgB,UAAU,CAChD,oCAAoC,CACrC;AAED;AACA,OAAO,MAAMC,qBAAqB,gBAAGjB,OAAO,CAACgB,UAAU,CAGrD,uDAAuD,CAAC;AAE1D;AACA,OAAO,MAAME,OAAO,gBAAGjB,MAAM,CAACkB,OAAO,CAACJ,gBAAgB,EAAGK,OAAO,IAAKA,OAAO,CAACF,OAAO,CAAC;AAErF;AACA,OAAO,MAAMG,cAAc,GAAGA,CAAA,KAAkBtB,OAAO,CAACuB,MAAM,CAACrB,MAAM,CAACsB,GAAG,CAACL,OAAO,EAAER,MAAM,CAACc,aAAa,EAAM,CAAC,CAAC;AAE/G;AACA,OAAO,MAAMC,kBAAkB,gBAAGxB,MAAM,CAACkB,OAAO,CAACJ,gBAAgB,EAAGK,OAAO,IAAKA,OAAO,CAACM,SAAS,CAAC;AAElG;AACA,OAAO,MAAMC,mBAAmB,GAAIC,GAAQ,IAAoD;EAC9F,MAAMC,GAAG,GAA2C,EAAE;EACtD,KAAK,MAAM,CAACC,GAAG,EAAEC,KAAK,CAAC,IAAIH,GAAG,CAACI,YAAY,CAACC,OAAO,EAAE,EAAE;IACrD,MAAMC,KAAK,GAAGL,GAAG,CAACC,GAAG,CAAC;IACtB,IAAII,KAAK,KAAKC,SAAS,EAAE;MACvB,IAAIC,KAAK,CAACC,OAAO,CAACH,KAAK,CAAC,EAAE;QACxBA,KAAK,CAACI,IAAI,CAACP,KAAK,CAAC;MACnB,CAAC,MAAM;QACLF,GAAG,CAACC,GAAG,CAAC,GAAG,CAACI,KAAK,EAAEH,KAAK,CAAC;MAC3B;IACF,CAAC,MAAM;MACLF,GAAG,CAACC,GAAG,CAAC,GAAGC,KAAK;IAClB;EACF;EACA,OAAOF,GAAG;AACZ,CAAC;AAED;AACA,OAAO,MAAMU,aAAa,GAAGA,CAC3BC,MAA8B,EAC9BC,OAAkC,KAChC;EACF,MAAMC,KAAK,GAAG5C,MAAM,CAAC6C,aAAa,CAACH,MAAM,EAAEC,OAAO,CAAC;EACnD,OAAOxC,MAAM,CAACkB,OAAO,CAACJ,gBAAgB,EAAG6B,GAAG,IAAKF,KAAK,CAACE,GAAG,CAACC,OAAO,CAAC,CAAC;AACtE,CAAC;AAED;AACA,OAAO,MAAMC,aAAa,GAAGA,CAC3BN,MAA8B,EAC9BC,OAAkC,KAChC;EACF,MAAMC,KAAK,GAAGnC,eAAe,CAACuC,aAAa,CAACN,MAAM,EAAEC,OAAO,CAAC;EAC5D,OAAOxC,MAAM,CAACkB,OAAO,CAACJ,gBAAgB,EAAE2B,KAAK,CAAC;AAChD,CAAC;AAED;AACA,OAAO,MAAMK,kBAAkB,GAAGA,CAChCP,MAA8B,EAC9BC,OAAkC,KAChC;EACF,MAAMC,KAAK,GAAG5C,MAAM,CAAC6C,aAAa,CAACH,MAAM,EAAEC,OAAO,CAAC;EACnD,OAAOxC,MAAM,CAACkB,OAAO,CAACF,qBAAqB,EAAEyB,KAAK,CAAC;AACrD,CAAC;AAED;AACA,OAAO,MAAMM,cAAc,GAAGA,CAAUR,MAA8B,EAAEC,OAAkC,KAAI;EAC5G,MAAMC,KAAK,GAAGnC,eAAe,CAACyC,cAAc,CAACR,MAAM,EAAEC,OAAO,CAAC;EAC7D,OAAOxC,MAAM,CAACkB,OAAO,CAACJ,gBAAgB,EAAE2B,KAAK,CAAC;AAChD,CAAC;AAED,MAAMO,WAAW,GAAI7B,OAAwC,IAC3DA,OAAO,CAAC8B,OAAO,CAAC,cAAc,CAAC,EAAEC,WAAW,EAAE,CAACC,QAAQ,CAAC,qBAAqB,CAAC;AAEhF;AACA,OAAO,MAAMC,cAAc,GAAGA,CAC5Bb,MAA8B,EAC9BC,OAAkC,KAChC;EACF,MAAMa,cAAc,GAAG7C,SAAS,CAAC8C,eAAe,CAACf,MAAM,EAAEC,OAAO,CAAC;EACjE,MAAMe,cAAc,GAAGjD,eAAe,CAACkD,mBAAmB,CAACjB,MAAkC,EAAEC,OAAO,CAAC;EACvG,OAAOxC,MAAM,CAACkB,OAAO,CAACJ,gBAAgB,EAAGK,OAAO,IAI5C;IACF,IAAI6B,WAAW,CAAC7B,OAAO,CAAC,EAAE;MACxB,OAAOnB,MAAM,CAACkB,OAAO,CAACC,OAAO,CAACM,SAAS,EAAE4B,cAAc,CAAC;IAC1D;IACA,OAAOE,cAAc,CAACpC,OAAO,CAAC;EAChC,CAAC,CAAC;AACJ,CAAC;AAED;AACA,OAAO,MAAMqC,mBAAmB,GAAGA,CACjCjB,MAA8B,EAC9BC,OAAkC,KAChC;EACF,MAAMC,KAAK,GAAGnC,eAAe,CAACkD,mBAAmB,CAACjB,MAAM,EAAEC,OAAO,CAAC;EAClE,OAAOxC,MAAM,CAACkB,OAAO,CAACJ,gBAAgB,EAAE2B,KAAK,CAAC;AAChD,CAAC;AAED;AACA,OAAO,MAAMgB,mBAAmB,GAAGA,CACjClB,MAA8B,EAC9BC,OAAkC,KAChC;EACF,MAAMC,KAAK,GAAGjC,SAAS,CAAC8C,eAAe,CAACf,MAAM,EAAEC,OAAO,CAAC;EACxD,OAAOxC,MAAM,CAACkB,OAAO,CAACM,kBAAkB,EAAEiB,KAAK,CAAC;AAClD,CAAC;AAED;AACA,OAAO,MAAMiB,kBAAkB,GAAGA,CAAUnB,MAA8B,EAAEC,OAAkC,KAAI;EAChH,MAAMa,cAAc,GAAG7C,SAAS,CAACmD,UAAU,CAACpB,MAAM,EAAEC,OAAO,CAAC;EAC5D,MAAMe,cAAc,GAAG7C,SAAS,CAACiD,UAAU,CAACpB,MAAM,EAAEC,OAAO,CAAC;EAC5D,OAAQoB,KAAa,IACnB5D,MAAM,CAACkB,OAAO,CACZJ,gBAAgB,EAEdK,OAAO,IAKL;IACF,IAAI6B,WAAW,CAAC7B,OAAO,CAAC,EAAE;MACxB,OAAOnB,MAAM,CAACkB,OAAO,CACnBlB,MAAM,CAAC6D,QAAQ,CAAC1C,OAAO,CAACM,SAAS,EAAGqC,KAAK,IACvC,IAAIvD,KAAK,CAACwD,YAAY,CAAC;QACrB5C,OAAO;QACP6C,MAAM,EAAE,QAAQ;QAChBF;OACD,CAAC,CAAC,EACLT,cAAc,CAACO,KAAK,CAAC,CACtB;IACH;IACA,OAAO5D,MAAM,CAACkB,OAAO,CAACC,OAAO,CAAC8C,aAAa,EAAEV,cAAc,CAACK,KAAK,CAAC,CAAC;EACrE,CAAC,CACF;AACL,CAAC;AAED;AACA,OAAO,MAAMM,OAAO,GAAI/C,OAA2B,IACjD,IAAIgD,iBAAiB,CAAChD,OAAO,EAAEA,OAAO,CAACQ,GAAG,CAAC;AAE7C,MAAMwC,iBAAkB,SAAQlE,WAAW,CAACmE,KAAK;EAIpCC,MAAA;EACA1C,GAAA;EACF2C,eAAA;EACCC,qBAAA;EAND,CAAC5D,MAAM;EACP,CAACL,eAAe,CAACK,MAAM;EAChC6D,YACWH,MAAe,EACf1C,GAAW,EACb2C,eAAiC,EAChCC,qBAA8B;IAEtC,KAAK,EAAE;IALE,KAAAF,MAAM,GAANA,MAAM;IACN,KAAA1C,GAAG,GAAHA,GAAG;IACL,KAAA2C,eAAe,GAAfA,eAAe;IACd,KAAAC,qBAAqB,GAArBA,qBAAqB;IAG7B,IAAI,CAAC5D,MAAM,CAAC,GAAGA,MAAM;IACrB,IAAI,CAACL,eAAe,CAACK,MAAM,CAAC,GAAGL,eAAe,CAACK,MAAM;EACvD;EACA8D,MAAMA,CAAA;IACJ,OAAOnE,eAAe,CAACoE,OAAO,CAAC,IAAI,EAAE;MACnCC,GAAG,EAAE,oCAAoC;MACzCC,MAAM,EAAE,IAAI,CAACA,MAAM;MACnBjD,GAAG,EAAE,IAAI,CAACkD;KACX,CAAC;EACJ;EACAC,MAAMA,CACJtC,OAIC;IAED,OAAO,IAAI2B,iBAAiB,CAC1B,IAAI,CAACE,MAAM,EACX7B,OAAO,CAACb,GAAG,IAAI,IAAI,CAACA,GAAG,EACvBa,OAAO,CAACS,OAAO,IAAI,IAAI,CAACqB,eAAe,EACvC9B,OAAO,CAACuC,aAAa,IAAI,IAAI,CAACR,qBAAqB,CACpD;EACH;EACA,IAAIK,MAAMA,CAAA;IACR,OAAO,IAAI,CAACP,MAAM,CAACO,MAAM,CAACI,WAAW,EAAgB;EACvD;EACA,IAAIH,WAAWA,CAAA;IACb,OAAO,IAAI,CAACR,MAAM,CAAC1C,GAAG;EACxB;EACA,IAAIoD,aAAaA,CAAA;IACf,OAAO,IAAI,CAACR,qBAAqB,GAAGrE,MAAM,CAAC+E,IAAI,CAAC,IAAI,CAACV,qBAAqB,CAAC,GAAGrE,MAAM,CAACgF,IAAI,EAAE;EAC7F;EACA,IAAIjC,OAAOA,CAAA;IACT,IAAI,CAACqB,eAAe,KAAKjE,OAAO,CAAC8E,SAAS,CAAC,IAAI,CAACd,MAAM,CAACpB,OAAO,CAAC;IAC/D,OAAO,IAAI,CAACqB,eAAe;EAC7B;EAEQc,aAAa;EACrB,IAAIxC,OAAOA,CAAA;IACT,IAAI,IAAI,CAACwC,aAAa,EAAE;MACtB,OAAO,IAAI,CAACA,aAAa;IAC3B;IACA,OAAO,IAAI,CAACA,aAAa,GAAGhF,OAAO,CAACiF,WAAW,CAAC,IAAI,CAACpC,OAAO,CAACqC,MAAM,IAAI,EAAE,CAAC;EAC5E;EAEA,IAAIC,MAAMA,CAAA;IACR,OAAO,IAAI,CAAClB,MAAM,CAACmB,IAAI,GACnBrF,MAAM,CAACsF,kBAAkB,CAAC,MAAM,IAAI,CAACpB,MAAM,CAACmB,IAAW,EAAGE,CAAC,IAC3D,IAAInF,KAAK,CAACwD,YAAY,CAAC;MACrB5C,OAAO,EAAE,IAAI;MACb6C,MAAM,EAAE,QAAQ;MAChBF,KAAK,EAAE4B;KACR,CAAC,CAAC,GACHvF,MAAM,CAACwF,IAAI,CACX,IAAIpF,KAAK,CAACwD,YAAY,CAAC;MACrB5C,OAAO,EAAE,IAAI;MACb6C,MAAM,EAAE,QAAQ;MAChBF,KAAK,EAAE;KACR,CAAC,CACH;EACL;EAEQ8B,UAAU;EAClB,IAAIC,IAAIA,CAAA;IACN,IAAI,IAAI,CAACD,UAAU,EAAE;MACnB,OAAO,IAAI,CAACA,UAAU;IACxB;IACA,IAAI,CAACA,UAAU,GAAG5F,MAAM,CAAC8F,OAAO,CAAC9F,MAAM,CAAC+F,MAAM,CAC5C/F,MAAM,CAACgG,UAAU,CAAC;MAChBC,GAAG,EAAEA,CAAA,KAAM,IAAI,CAAC5B,MAAM,CAACwB,IAAI,EAAE;MAC7BK,KAAK,EAAGpC,KAAK,IACX,IAAIvD,KAAK,CAACwD,YAAY,CAAC;QACrB5C,OAAO,EAAE,IAAI;QACb6C,MAAM,EAAE,QAAQ;QAChBF;OACD;KACJ,CAAC,CACH,CAAC;IACF,OAAO,IAAI,CAAC8B,UAAU;EACxB;EAEA,IAAIO,IAAIA,CAAA;IACN,OAAOnG,MAAM,CAACoG,MAAM,CAAC,IAAI,CAACP,IAAI,EAAE;MAC9BI,GAAG,EAAGP,CAAC,IAAKW,IAAI,CAAC5D,KAAK,CAACiD,CAAC,CAAY;MACpCQ,KAAK,EAAGpC,KAAK,IACX,IAAIvD,KAAK,CAACwD,YAAY,CAAC;QACrB5C,OAAO,EAAE,IAAI;QACb6C,MAAM,EAAE,QAAQ;QAChBF;OACD;KACJ,CAAC;EACJ;EAEA,IAAIG,aAAaA,CAAA;IACf,OAAOjE,MAAM,CAACkB,OAAO,CAAC,IAAI,CAAC2E,IAAI,EAAGH,CAAC,IACjC1F,MAAM,CAACiG,GAAG,CAAC;MACTA,GAAG,EAAEA,CAAA,KAAMvF,SAAS,CAACyE,SAAS,CAAC,IAAImB,eAAe,CAACZ,CAAC,CAAC,CAAC;MACtDQ,KAAK,EAAGpC,KAAK,IACX,IAAIvD,KAAK,CAACwD,YAAY,CAAC;QACrB5C,OAAO,EAAE,IAAI;QACb6C,MAAM,EAAE,QAAQ;QAChBF;OACD;KACJ,CAAC,CAAC;EACP;EAEQyC,eAAe;EAOvB,IAAI9E,SAASA,CAAA;IAKX,IAAI,IAAI,CAAC8E,eAAe,EAAE;MACxB,OAAO,IAAI,CAACA,eAAe;IAC7B;IACA,IAAI,CAACA,eAAe,GAAGvG,MAAM,CAAC8F,OAAO,CAAC9F,MAAM,CAAC+F,MAAM,CACjDvF,SAAS,CAACgG,WAAW,CAAC,IAAI,CAACC,eAAe,CAAC,CAC5C,CAAC;IACF,OAAO,IAAI,CAACF,eAAe;EAC7B;EAEA,IAAIE,eAAeA,CAAA;IACjB,OAAOtG,MAAM,CAACuG,kBAAkB,CAC9BvG,MAAM,CAAC0D,QAAQ,CAAC,IAAI,CAAC0B,MAAM,EAAGzB,KAAK,IAAK,IAAItD,SAAS,CAACmG,cAAc,CAAC;MAAE3C,MAAM,EAAE,eAAe;MAAEF;IAAK,CAAE,CAAC,CAAC,EACzGtD,SAAS,CAACoG,WAAW,CAAC,IAAI,CAAC3D,OAAO,CAAC,CACpC;EACH;EAEQ4D,iBAAiB;EACzB,IAAIC,WAAWA,CAAA;IACb,IAAI,IAAI,CAACA,WAAW,EAAE;MACpB,OAAO,IAAI,CAACA,WAAW;IACzB;IACA,IAAI,CAACD,iBAAiB,GAAG7G,MAAM,CAAC8F,OAAO,CAAC9F,MAAM,CAAC+F,MAAM,CACnD/F,MAAM,CAACgG,UAAU,CAAC;MAChBC,GAAG,EAAEA,CAAA,KAAM,IAAI,CAAC5B,MAAM,CAACyC,WAAW,EAAE;MACpCZ,KAAK,EAAGpC,KAAK,IACX,IAAIvD,KAAK,CAACwD,YAAY,CAAC;QACrB5C,OAAO,EAAE,IAAI;QACb6C,MAAM,EAAE,QAAQ;QAChBF;OACD;KACJ,CAAC,CACH,CAAC;IACF,OAAO,IAAI,CAAC+C,iBAAiB;EAC/B;EAEA,IAAI5F,OAAOA,CAAA;IACT,OAAOjB,MAAM,CAAC2F,IAAI,CAChB,IAAIpF,KAAK,CAACwD,YAAY,CAAC;MACrB5C,OAAO,EAAE,IAAI;MACb6C,MAAM,EAAE,QAAQ;MAChBF,KAAK,EAAE;KACR,CAAC,CACH;EACH;;AAGF;AACA,OAAO,MAAMiD,KAAK,GAAIC,IAAqC,IAAwB;EACjF,MAAMC,IAAI,GAAGD,IAAI,CAAC/D,OAAO,CAACgE,IAAI,IAAI,WAAW;EAC7C,MAAMC,QAAQ,GAAGF,IAAI,CAAC/D,OAAO,CAAC,mBAAmB,CAAC,KAAK,OAAO,GAAG,OAAO,GAAG,MAAM;EACjF,IAAI;IACF,OAAO/C,MAAM,CAAC+E,IAAI,CAAC,IAAIkC,GAAG,CAACH,IAAI,CAACrF,GAAG,EAAE,GAAGuF,QAAQ,MAAMD,IAAI,EAAE,CAAC,CAAC;EAChE,CAAC,CAAC,OAAOvB,CAAC,EAAE;IACV,OAAOxF,MAAM,CAACgF,IAAI,EAAE;EACtB;AACF,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"httpServerRequest.js","names":["Schema","Channel","Context","Effect","Inspectable","Option","Stream","Cookies","Headers","IncomingMessage","Error","Multipart","Socket","UrlParams","TypeId","Symbol","for","serverRequestTag","GenericTag","parsedSearchParamsTag","upgrade","flatMap","request","upgradeChannel","unwrap","map","toChannelWith","multipartPersisted","multipart","searchParamsFromURL","url","out","key","value","searchParams","entries","entry","undefined","Array","isArray","push","schemaCookies","schema","options","parse","decodeUnknown","req","cookies","schemaHeaders","schemaSearchParams","schemaBodyJson","isMultipart","headers","toLowerCase","includes","schemaBodyForm","parseMultipart","schemaPersisted","parseUrlParams","schemaBodyUrlParams","schemaBodyMultipart","schemaBodyFormJson","schemaJson","field","mapError","cause","RequestError","reason","urlParamsBody","fromWeb","ServerRequestImpl","Class","source","headersOverride","remoteAddressOverride","constructor","toJSON","inspect","_id","method","originalUrl","modify","remoteAddress","toUpperCase","some","none","fromInput","cachedCookies","parseHeader","cookie","stream","body","fromReadableStream","fail","description","textEffect","text","runSync","cached","tryPromise","try","catch","json","tryMap","_","JSON","URLSearchParams","multipartEffect","toPersisted","multipartStream","pipeThroughChannel","MultipartError","makeChannel","arrayBufferEffect","arrayBuffer","toURL","self","host","protocol","URL"],"sources":["../../../src/internal/httpServerRequest.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -12,7 +12,7 @@ import * as Predicate from "effect/Predicate";
|
|
|
12
12
|
import * as Queue from "effect/Queue";
|
|
13
13
|
import * as Stream from "effect/Stream";
|
|
14
14
|
import * as MP from "multipasta";
|
|
15
|
-
import {
|
|
15
|
+
import { TypeIdError } from "../Error.js";
|
|
16
16
|
import * as FileSystem from "../FileSystem.js";
|
|
17
17
|
import * as IncomingMessage from "../HttpIncomingMessage.js";
|
|
18
18
|
import * as Path from "../Path.js";
|
|
@@ -29,9 +29,9 @@ export const isPersistedFile = u => Predicate.hasProperty(u, TypeId) && Predicat
|
|
|
29
29
|
/** @internal */
|
|
30
30
|
export const ErrorTypeId = /*#__PURE__*/Symbol.for("@effect/platform/Multipart/MultipartError");
|
|
31
31
|
/** @internal */
|
|
32
|
-
export class MultipartError extends
|
|
32
|
+
export class MultipartError extends TypeIdError(ErrorTypeId, "MultipartError") {
|
|
33
33
|
get message() {
|
|
34
|
-
return
|
|
34
|
+
return this.reason;
|
|
35
35
|
}
|
|
36
36
|
}
|
|
37
37
|
/** @internal */
|
|
@@ -168,37 +168,37 @@ const makeFromQueue = (config, queue) => Channel.suspend(() => {
|
|
|
168
168
|
});
|
|
169
169
|
return Channel.embedInput(partsChannel, input);
|
|
170
170
|
});
|
|
171
|
-
function convertError(
|
|
172
|
-
switch (
|
|
171
|
+
function convertError(cause) {
|
|
172
|
+
switch (cause._tag) {
|
|
173
173
|
case "ReachedLimit":
|
|
174
174
|
{
|
|
175
|
-
switch (
|
|
175
|
+
switch (cause.limit) {
|
|
176
176
|
case "MaxParts":
|
|
177
177
|
{
|
|
178
178
|
return new MultipartError({
|
|
179
179
|
reason: "TooManyParts",
|
|
180
|
-
|
|
180
|
+
cause
|
|
181
181
|
});
|
|
182
182
|
}
|
|
183
183
|
case "MaxFieldSize":
|
|
184
184
|
{
|
|
185
185
|
return new MultipartError({
|
|
186
186
|
reason: "FieldTooLarge",
|
|
187
|
-
|
|
187
|
+
cause
|
|
188
188
|
});
|
|
189
189
|
}
|
|
190
190
|
case "MaxPartSize":
|
|
191
191
|
{
|
|
192
192
|
return new MultipartError({
|
|
193
193
|
reason: "FileTooLarge",
|
|
194
|
-
|
|
194
|
+
cause
|
|
195
195
|
});
|
|
196
196
|
}
|
|
197
197
|
case "MaxTotalSize":
|
|
198
198
|
{
|
|
199
199
|
return new MultipartError({
|
|
200
200
|
reason: "BodyTooLarge",
|
|
201
|
-
|
|
201
|
+
cause
|
|
202
202
|
});
|
|
203
203
|
}
|
|
204
204
|
}
|
|
@@ -207,7 +207,7 @@ function convertError(error) {
|
|
|
207
207
|
{
|
|
208
208
|
return new MultipartError({
|
|
209
209
|
reason: "Parse",
|
|
210
|
-
|
|
210
|
+
cause
|
|
211
211
|
});
|
|
212
212
|
}
|
|
213
213
|
}
|
|
@@ -263,9 +263,9 @@ class FileImpl extends PartBase {
|
|
|
263
263
|
};
|
|
264
264
|
}
|
|
265
265
|
}
|
|
266
|
-
const defaultWriteFile = (path, file) => Effect.flatMap(FileSystem.FileSystem, fs => Effect.mapError(Stream.run(file.content, fs.sink(path)),
|
|
266
|
+
const defaultWriteFile = (path, file) => Effect.flatMap(FileSystem.FileSystem, fs => Effect.mapError(Stream.run(file.content, fs.sink(path)), cause => new MultipartError({
|
|
267
267
|
reason: "InternalError",
|
|
268
|
-
|
|
268
|
+
cause
|
|
269
269
|
})));
|
|
270
270
|
/** @internal */
|
|
271
271
|
export const toPersisted = (stream, writeFile = defaultWriteFile) => pipe(Effect.Do, Effect.bind("fs", () => FileSystem.FileSystem), Effect.bind("path", () => Path.Path), Effect.bind("dir", ({
|
|
@@ -287,13 +287,13 @@ export const toPersisted = (stream, writeFile = defaultWriteFile) => pipe(Effect
|
|
|
287
287
|
persisted[part.key].push(new PersistedFileImpl(file.key, file.name, file.contentType, path));
|
|
288
288
|
return Effect.as(writeFile(path, file), persisted);
|
|
289
289
|
})), Effect.catchTags({
|
|
290
|
-
SystemError:
|
|
290
|
+
SystemError: cause => Effect.fail(new MultipartError({
|
|
291
291
|
reason: "InternalError",
|
|
292
|
-
|
|
292
|
+
cause
|
|
293
293
|
})),
|
|
294
|
-
BadArgument:
|
|
294
|
+
BadArgument: cause => Effect.fail(new MultipartError({
|
|
295
295
|
reason: "InternalError",
|
|
296
|
-
|
|
296
|
+
cause
|
|
297
297
|
}))
|
|
298
298
|
}));
|
|
299
299
|
class PersistedFileImpl extends PartBase {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multipart.js","names":["Schema","Cause","Channel","Chunk","Effect","FiberRef","dual","flow","pipe","globalValue","Inspectable","Option","Predicate","Queue","Stream","MP","RefailError","FileSystem","IncomingMessage","Path","TypeId","Symbol","for","isPart","u","hasProperty","isField","_tag","isFile","isPersistedFile","isTagged","ErrorTypeId","MultipartError","message","reason","maxParts","unsafeMake","none","withMaxParts","effect","count","locally","maxFieldSize","Size","withMaxFieldSize","size","maxFileSize","withMaxFileSize","map","fieldMimeTypes","make","withFieldMimeTypes","mimeTypes","fromIterable","FileSchema","declare","identifier","FilesSchema","Array","SingleFileSchema","transform","itemsCount","strict","decode","file","encode","schemaPersisted","schema","options","parse","decodeUnknown","persisted","schemaJson","fromJson","parseJson","field","Struct","_","makeConfig","headers","all","get","getOrUndefined","Number","maxPartSize","maxTotalSize","maxBodySize","length","undefined","info","some","contentType","includes","defaultIsFile","makeChannel","bufferSize","acquireUseRelease","bounded","config","queue","makeFromQueue","shutdown","suspend","error","partsBuffer","partsFinished","input","awaitRead","void","emit","element","offer","cause","done","_value","parser","onField","value","push","FieldImpl","name","decodeField","onFile","chunks","finished","take","zipRight","pump","chunk","unsafeFromArray","write","FileImpl","onError","error_","fail","convertError","onDone","flatMap","sync","end","forEach","buf","takeParts","parts","partsChannel","failCause","embedInput","limit","PartBase","Class","constructor","key","toJSON","_id","content","channel","filename","fromChannel","defaultWriteFile","path","fs","mapError","run","sink","toPersisted","stream","writeFile","Do","bind","makeTempDirectoryScoped","dir","path_","runFoldEffect","Object","create","part","succeed","join","basename","slice","isArray","PersistedFileImpl","as","catchTags","SystemError","BadArgument"],"sources":["../../../src/internal/multipart.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"multipart.js","names":["Schema","Cause","Channel","Chunk","Effect","FiberRef","dual","flow","pipe","globalValue","Inspectable","Option","Predicate","Queue","Stream","MP","TypeIdError","FileSystem","IncomingMessage","Path","TypeId","Symbol","for","isPart","u","hasProperty","isField","_tag","isFile","isPersistedFile","isTagged","ErrorTypeId","MultipartError","message","reason","maxParts","unsafeMake","none","withMaxParts","effect","count","locally","maxFieldSize","Size","withMaxFieldSize","size","maxFileSize","withMaxFileSize","map","fieldMimeTypes","make","withFieldMimeTypes","mimeTypes","fromIterable","FileSchema","declare","identifier","FilesSchema","Array","SingleFileSchema","transform","itemsCount","strict","decode","file","encode","schemaPersisted","schema","options","parse","decodeUnknown","persisted","schemaJson","fromJson","parseJson","field","Struct","_","makeConfig","headers","all","get","getOrUndefined","Number","maxPartSize","maxTotalSize","maxBodySize","length","undefined","info","some","contentType","includes","defaultIsFile","makeChannel","bufferSize","acquireUseRelease","bounded","config","queue","makeFromQueue","shutdown","suspend","error","partsBuffer","partsFinished","input","awaitRead","void","emit","element","offer","cause","done","_value","parser","onField","value","push","FieldImpl","name","decodeField","onFile","chunks","finished","take","zipRight","pump","chunk","unsafeFromArray","write","FileImpl","onError","error_","fail","convertError","onDone","flatMap","sync","end","forEach","buf","takeParts","parts","partsChannel","failCause","embedInput","limit","PartBase","Class","constructor","key","toJSON","_id","content","channel","filename","fromChannel","defaultWriteFile","path","fs","mapError","run","sink","toPersisted","stream","writeFile","Do","bind","makeTempDirectoryScoped","dir","path_","runFoldEffect","Object","create","part","succeed","join","basename","slice","isArray","PersistedFileImpl","as","catchTags","SystemError","BadArgument"],"sources":["../../../src/internal/multipart.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import * as Schema from "@effect/schema/Schema";
|
|
2
2
|
import * as Serializable from "@effect/schema/Serializable";
|
|
3
|
-
import * as Arr from "effect/Array";
|
|
4
3
|
import * as Cause from "effect/Cause";
|
|
5
4
|
import * as Channel from "effect/Channel";
|
|
6
5
|
import * as Chunk from "effect/Chunk";
|
|
@@ -8,24 +7,20 @@ import * as Context from "effect/Context";
|
|
|
8
7
|
import * as Deferred from "effect/Deferred";
|
|
9
8
|
import * as Effect from "effect/Effect";
|
|
10
9
|
import * as Exit from "effect/Exit";
|
|
11
|
-
import * as
|
|
10
|
+
import * as FiberRef from "effect/FiberRef";
|
|
11
|
+
import * as FiberSet from "effect/FiberSet";
|
|
12
12
|
import { identity, pipe } from "effect/Function";
|
|
13
13
|
import * as Layer from "effect/Layer";
|
|
14
14
|
import * as Option from "effect/Option";
|
|
15
15
|
import * as Pool from "effect/Pool";
|
|
16
16
|
import * as Queue from "effect/Queue";
|
|
17
17
|
import * as Schedule from "effect/Schedule";
|
|
18
|
+
import * as Scope from "effect/Scope";
|
|
18
19
|
import * as Stream from "effect/Stream";
|
|
19
20
|
import * as Tracer from "effect/Tracer";
|
|
20
21
|
import * as Transferable from "../Transferable.js";
|
|
21
22
|
import { WorkerError } from "../WorkerError.js";
|
|
22
23
|
/** @internal */
|
|
23
|
-
export const defaultQueue = () => Effect.map(Queue.unbounded(), queue => ({
|
|
24
|
-
offer: (id, item, span) => Queue.offer(queue, [id, item, span]),
|
|
25
|
-
take: Queue.take(queue),
|
|
26
|
-
shutdown: Queue.shutdown(queue)
|
|
27
|
-
}));
|
|
28
|
-
/** @internal */
|
|
29
24
|
export const PlatformWorkerTypeId = /*#__PURE__*/Symbol.for("@effect/platform/Worker/PlatformWorker");
|
|
30
25
|
/** @internal */
|
|
31
26
|
export const PlatformWorker = /*#__PURE__*/Context.GenericTag("@effect/platform/Worker/PlatformWorker");
|
|
@@ -43,38 +38,26 @@ export const makeManager = /*#__PURE__*/Effect.gen(function* () {
|
|
|
43
38
|
[WorkerManagerTypeId]: WorkerManagerTypeId,
|
|
44
39
|
spawn({
|
|
45
40
|
encode,
|
|
46
|
-
initialMessage
|
|
47
|
-
queue,
|
|
48
|
-
transfers = _ => []
|
|
41
|
+
initialMessage
|
|
49
42
|
}) {
|
|
50
43
|
return Effect.gen(function* (_) {
|
|
51
|
-
const spawn = yield* _(Spawner);
|
|
52
44
|
const id = idCounter++;
|
|
53
45
|
let requestIdCounter = 0;
|
|
54
46
|
const requestMap = new Map();
|
|
55
|
-
const sendQueue = yield* Effect.acquireRelease(Queue.unbounded(), Queue.shutdown);
|
|
56
47
|
const collector = Transferable.unsafeMakeCollector();
|
|
57
48
|
const wrappedEncode = encode ? message => Effect.zipRight(collector.clear, Effect.provideService(encode(message), Transferable.Collector, collector)) : Effect.succeed;
|
|
58
|
-
const
|
|
59
|
-
yield*
|
|
60
|
-
yield*
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
return Deferred.complete(readyLatch, Effect.void);
|
|
67
|
-
}
|
|
68
|
-
return handleMessage(msg[1]);
|
|
69
|
-
}), Effect.forever);
|
|
70
|
-
return yield* Effect.all([Fiber.join(backing.fiber), Effect.zipRight(Deferred.await(readyLatch), send), take], {
|
|
71
|
-
concurrency: "unbounded"
|
|
72
|
-
});
|
|
73
|
-
}).pipe(Effect.scoped, Effect.onError(cause => Effect.forEach(requestMap.values(), ([queue]) => Queue.offer(queue, Exit.failCause(cause)))), Effect.retry(Schedule.spaced(1000)), Effect.annotateLogs({
|
|
49
|
+
const readyLatch = yield* Deferred.make();
|
|
50
|
+
const backing = yield* platform.spawn(id);
|
|
51
|
+
yield* backing.run(message => {
|
|
52
|
+
if (message[0] === 0) {
|
|
53
|
+
return Deferred.complete(readyLatch, Effect.void);
|
|
54
|
+
}
|
|
55
|
+
return handleMessage(message[1]);
|
|
56
|
+
}).pipe(Effect.onError(cause => Effect.forEach(requestMap.values(), queue => Deferred.DeferredTypeId in queue ? Deferred.failCause(queue, cause) : Queue.offer(queue, Exit.failCause(cause)))), Effect.retry(Schedule.spaced(1000)), Effect.annotateLogs({
|
|
74
57
|
package: "@effect/platform",
|
|
75
58
|
module: "Worker"
|
|
76
59
|
}), Effect.interruptible, Effect.forkScoped);
|
|
77
|
-
yield* Effect.addFinalizer(() => Effect.zipRight(Effect.forEach(requestMap.values(), (
|
|
60
|
+
yield* Effect.addFinalizer(() => Effect.zipRight(Effect.forEach(requestMap.values(), queue => Deferred.DeferredTypeId in queue ? Deferred.interrupt(queue) : Queue.offer(queue, Exit.failCause(Cause.empty)), {
|
|
78
61
|
discard: true
|
|
79
62
|
}), Effect.sync(() => requestMap.clear())));
|
|
80
63
|
const handleMessage = response => Effect.suspend(() => {
|
|
@@ -84,48 +67,62 @@ export const makeManager = /*#__PURE__*/Effect.gen(function* () {
|
|
|
84
67
|
// data
|
|
85
68
|
case 0:
|
|
86
69
|
{
|
|
87
|
-
return
|
|
70
|
+
return Deferred.DeferredTypeId in queue ? Deferred.succeed(queue, response[2][0]) : Queue.offer(queue, Exit.succeed(response[2]));
|
|
88
71
|
}
|
|
89
72
|
// end
|
|
90
73
|
case 1:
|
|
91
74
|
{
|
|
92
|
-
|
|
75
|
+
if (response.length === 2) {
|
|
76
|
+
return Deferred.DeferredTypeId in queue ? Deferred.interrupt(queue) : Queue.offer(queue, Exit.failCause(Cause.empty));
|
|
77
|
+
}
|
|
78
|
+
return Deferred.DeferredTypeId in queue ? Deferred.succeed(queue, response[2][0]) : Effect.zipRight(Queue.offer(queue, Exit.succeed(response[2])), Queue.offer(queue, Exit.failCause(Cause.empty)));
|
|
93
79
|
}
|
|
94
80
|
// error / defect
|
|
95
81
|
case 2:
|
|
96
82
|
case 3:
|
|
97
83
|
{
|
|
98
|
-
|
|
84
|
+
if (response[1] === 2) {
|
|
85
|
+
return Deferred.DeferredTypeId in queue ? Deferred.fail(queue, response[2]) : Queue.offer(queue, Exit.fail(response[2]));
|
|
86
|
+
}
|
|
87
|
+
const cause = WorkerError.decodeCause(response[2]);
|
|
88
|
+
return Deferred.DeferredTypeId in queue ? Deferred.failCause(queue, cause) : Queue.offer(queue, Exit.failCause(cause));
|
|
99
89
|
}
|
|
100
90
|
}
|
|
101
91
|
});
|
|
102
|
-
const executeAcquire = request
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
92
|
+
const executeAcquire = (request, makeQueue) => Effect.withFiberRuntime(fiber => {
|
|
93
|
+
const context = fiber.getFiberRef(FiberRef.currentContext);
|
|
94
|
+
const span = Context.getOption(context, Tracer.ParentSpan).pipe(Option.filter(span => span._tag === "Span"));
|
|
95
|
+
const id = requestIdCounter++;
|
|
96
|
+
return makeQueue.pipe(Effect.tap(queue => {
|
|
97
|
+
requestMap.set(id, queue);
|
|
98
|
+
return wrappedEncode(request).pipe(Effect.tap(payload => backing.send([id, 0, payload, span._tag === "Some" ? [span.value.traceId, span.value.spanId, span.value.sampled] : undefined], collector.unsafeRead())), Effect.catchAllCause(cause => Deferred.DeferredTypeId in queue ? Deferred.failCause(queue, cause) : Queue.offer(queue, Exit.failCause(cause))));
|
|
99
|
+
}), Effect.map(queue => ({
|
|
100
|
+
id,
|
|
101
|
+
queue
|
|
102
|
+
})));
|
|
103
|
+
});
|
|
104
|
+
const executeRelease = ({
|
|
105
|
+
id
|
|
106
|
+
}, exit) => {
|
|
107
|
+
const release = Effect.sync(() => requestMap.delete(id));
|
|
108
|
+
return Exit.isFailure(exit) ? Effect.zipRight(Effect.orDie(backing.send([id, 1])), release) : release;
|
|
109
109
|
};
|
|
110
|
-
const execute = request => Stream.
|
|
110
|
+
const execute = request => Stream.fromChannel(Channel.acquireUseRelease(executeAcquire(request, Queue.unbounded()), ({
|
|
111
|
+
queue
|
|
112
|
+
}) => {
|
|
111
113
|
const loop = Channel.flatMap(Queue.take(queue), Exit.match({
|
|
112
114
|
onFailure: cause => Cause.isEmpty(cause) ? Channel.void : Channel.failCause(cause),
|
|
113
115
|
onSuccess: value => Channel.flatMap(Channel.write(Chunk.unsafeFromArray(value)), () => loop)
|
|
114
116
|
}));
|
|
115
|
-
return
|
|
116
|
-
});
|
|
117
|
-
const executeEffect = request => Effect.acquireUseRelease(executeAcquire(request
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
if (!result) return Effect.void;
|
|
121
|
-
const transferables = transfers(request);
|
|
122
|
-
const spanTuple = Option.getOrUndefined(Option.map(span, span => [span.traceId, span.spanId, span.sampled]));
|
|
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])));
|
|
124
|
-
}))), Effect.forever, Effect.forkScoped, Effect.interruptible);
|
|
117
|
+
return loop;
|
|
118
|
+
}, executeRelease));
|
|
119
|
+
const executeEffect = request => Effect.acquireUseRelease(executeAcquire(request, Deferred.make()), ({
|
|
120
|
+
queue
|
|
121
|
+
}) => Deferred.await(queue), executeRelease);
|
|
125
122
|
if (initialMessage) {
|
|
126
|
-
yield* Effect.sync(initialMessage).pipe(Effect.flatMap(executeEffect), Effect.mapError(
|
|
123
|
+
yield* Effect.sync(initialMessage).pipe(Effect.flatMap(executeEffect), Effect.mapError(cause => new WorkerError({
|
|
127
124
|
reason: "spawn",
|
|
128
|
-
|
|
125
|
+
cause
|
|
129
126
|
})));
|
|
130
127
|
}
|
|
131
128
|
return {
|
|
@@ -133,7 +130,7 @@ export const makeManager = /*#__PURE__*/Effect.gen(function* () {
|
|
|
133
130
|
execute,
|
|
134
131
|
executeEffect
|
|
135
132
|
};
|
|
136
|
-
})
|
|
133
|
+
});
|
|
137
134
|
}
|
|
138
135
|
});
|
|
139
136
|
});
|
|
@@ -143,7 +140,7 @@ export const layerManager = /*#__PURE__*/Layer.effect(WorkerManager, makeManager
|
|
|
143
140
|
export const makePool = options => Effect.gen(function* () {
|
|
144
141
|
const manager = yield* WorkerManager;
|
|
145
142
|
const workers = new Set();
|
|
146
|
-
const acquire = pipe(manager.spawn(options), Effect.tap(worker => Effect.sync(() => workers.add(worker))
|
|
143
|
+
const acquire = pipe(manager.spawn(options), Effect.tap(worker => Effect.acquireRelease(Effect.sync(() => workers.add(worker)), () => Effect.sync(() => workers.delete(worker)))), options.onCreate ? Effect.tap(options.onCreate) : identity);
|
|
147
144
|
const backing = "minSize" in options ? yield* Pool.makeWithTTL({
|
|
148
145
|
acquire,
|
|
149
146
|
min: options.minSize,
|
|
@@ -178,9 +175,9 @@ export const makeSerialized = options => Effect.gen(function* () {
|
|
|
178
175
|
const backing = yield* manager.spawn({
|
|
179
176
|
...options,
|
|
180
177
|
encode(message) {
|
|
181
|
-
return Effect.mapError(Serializable.serialize(message),
|
|
178
|
+
return Effect.mapError(Serializable.serialize(message), cause => new WorkerError({
|
|
182
179
|
reason: "encode",
|
|
183
|
-
|
|
180
|
+
cause
|
|
184
181
|
}));
|
|
185
182
|
}
|
|
186
183
|
});
|
|
@@ -238,4 +235,74 @@ export const makePoolSerialized = options => Effect.gen(function* () {
|
|
|
238
235
|
export const makePoolSerializedLayer = (tag, options) => Layer.scoped(tag, makePoolSerialized(options));
|
|
239
236
|
/** @internal */
|
|
240
237
|
export const layerSpawner = spawner => Layer.succeed(Spawner, spawner);
|
|
238
|
+
/** @internal */
|
|
239
|
+
export const makePlatform = () => options => PlatformWorker.of({
|
|
240
|
+
[PlatformWorkerTypeId]: PlatformWorkerTypeId,
|
|
241
|
+
spawn(id) {
|
|
242
|
+
return Effect.gen(function* (_) {
|
|
243
|
+
const spawn = yield* Spawner;
|
|
244
|
+
let currentPort;
|
|
245
|
+
const buffer = [];
|
|
246
|
+
const run = handler => Effect.uninterruptibleMask(restore => Scope.make().pipe(Effect.bindTo("scope"), Effect.bind("port", ({
|
|
247
|
+
scope
|
|
248
|
+
}) => options.setup({
|
|
249
|
+
worker: spawn(id),
|
|
250
|
+
scope
|
|
251
|
+
})), Effect.tap(({
|
|
252
|
+
port,
|
|
253
|
+
scope
|
|
254
|
+
}) => {
|
|
255
|
+
currentPort = port;
|
|
256
|
+
return Scope.addFinalizer(scope, Effect.sync(() => {
|
|
257
|
+
currentPort = undefined;
|
|
258
|
+
}));
|
|
259
|
+
}), Effect.bind("fiberSet", ({
|
|
260
|
+
scope
|
|
261
|
+
}) => FiberSet.make().pipe(Scope.extend(scope))), Effect.bind("runFork", ({
|
|
262
|
+
fiberSet
|
|
263
|
+
}) => FiberSet.runtime(fiberSet)()), Effect.tap(({
|
|
264
|
+
fiberSet,
|
|
265
|
+
port,
|
|
266
|
+
runFork,
|
|
267
|
+
scope
|
|
268
|
+
}) => options.listen({
|
|
269
|
+
port,
|
|
270
|
+
scope,
|
|
271
|
+
emit(data) {
|
|
272
|
+
runFork(handler(data));
|
|
273
|
+
},
|
|
274
|
+
deferred: fiberSet.deferred
|
|
275
|
+
})), Effect.tap(({
|
|
276
|
+
port
|
|
277
|
+
}) => {
|
|
278
|
+
if (buffer.length > 0) {
|
|
279
|
+
for (const [message, transfers] of buffer) {
|
|
280
|
+
port.postMessage([0, message], transfers);
|
|
281
|
+
}
|
|
282
|
+
buffer.length = 0;
|
|
283
|
+
}
|
|
284
|
+
}), Effect.flatMap(({
|
|
285
|
+
fiberSet,
|
|
286
|
+
scope
|
|
287
|
+
}) => restore(FiberSet.join(fiberSet)).pipe(Effect.ensuring(Scope.close(scope, Exit.void))))));
|
|
288
|
+
const send = (message, transfers) => Effect.try({
|
|
289
|
+
try: () => {
|
|
290
|
+
if (currentPort === undefined) {
|
|
291
|
+
buffer.push([message, transfers]);
|
|
292
|
+
} else {
|
|
293
|
+
currentPort.postMessage([0, message], transfers);
|
|
294
|
+
}
|
|
295
|
+
},
|
|
296
|
+
catch: cause => new WorkerError({
|
|
297
|
+
reason: "send",
|
|
298
|
+
cause
|
|
299
|
+
})
|
|
300
|
+
});
|
|
301
|
+
return {
|
|
302
|
+
run,
|
|
303
|
+
send
|
|
304
|
+
};
|
|
305
|
+
});
|
|
306
|
+
}
|
|
307
|
+
});
|
|
241
308
|
//# sourceMappingURL=worker.js.map
|