@effect/platform 0.69.13 → 0.69.15

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.
@@ -8,7 +8,7 @@ var Chunk = _interopRequireWildcard(require("effect/Chunk"));
8
8
  var Context = _interopRequireWildcard(require("effect/Context"));
9
9
  var Effect = _interopRequireWildcard(require("effect/Effect"));
10
10
  var Encoding = _interopRequireWildcard(require("effect/Encoding"));
11
- var FiberRef = _interopRequireWildcard(require("effect/FiberRef"));
11
+ var Fiber = _interopRequireWildcard(require("effect/Fiber"));
12
12
  var _Function = require("effect/Function");
13
13
  var _GlobalValue = require("effect/GlobalValue");
14
14
  var HashMap = _interopRequireWildcard(require("effect/HashMap"));
@@ -116,12 +116,13 @@ const httpApp = exports.httpApp = /*#__PURE__*/Effect.gen(function* () {
116
116
  const toWebHandler = (layer, options) => {
117
117
  const runtime = ManagedRuntime.make(Layer.merge(layer, Router.Live), options?.memoMap);
118
118
  let handlerCached;
119
- const handlerPromise = httpApp.pipe(Effect.bindTo("httpApp"), Effect.bind("runtime", () => runtime.runtimeEffect), Effect.map(({
120
- httpApp,
121
- runtime
122
- }) => HttpApp.toWebHandlerRuntime(runtime)(options?.middleware ? options.middleware(httpApp) : httpApp)), Effect.tap(handler => {
119
+ const handlerPromise = Effect.gen(function* () {
120
+ const app = yield* httpApp;
121
+ const rt = yield* runtime.runtimeEffect;
122
+ const handler = HttpApp.toWebHandlerRuntime(rt)(options?.middleware ? options.middleware(app) : app);
123
123
  handlerCached = handler;
124
- }), runtime.runPromise);
124
+ return handler;
125
+ }).pipe(runtime.runPromise);
125
126
  function handler(request) {
126
127
  if (handlerCached !== undefined) {
127
128
  return handlerCached(request);
@@ -233,27 +234,28 @@ const handlerToRoute = (endpoint_, middleware, handler, isFullResponse) => {
233
234
  const decodeHeaders = Option.map(endpoint.headersSchema, Schema.decodeUnknown);
234
235
  const decodeUrlParams = Option.map(endpoint.urlParamsSchema, Schema.decodeUnknown);
235
236
  const encodeSuccess = Schema.encode(makeSuccessSchema(endpoint.successSchema));
236
- return HttpRouter.makeRoute(endpoint.method, endpoint.path, applyMiddleware(middleware, Effect.withFiberRuntime(fiber => {
237
- const context = fiber.getFiberRef(FiberRef.currentContext);
238
- const request = Context.unsafeGet(context, HttpServerRequest.HttpServerRequest);
237
+ return HttpRouter.makeRoute(endpoint.method, endpoint.path, applyMiddleware(middleware, Effect.gen(function* () {
238
+ const fiber = Option.getOrThrow(Fiber.getCurrentFiber());
239
+ const context = fiber.currentContext;
240
+ const httpRequest = Context.unsafeGet(context, HttpServerRequest.HttpServerRequest);
239
241
  const routeContext = Context.unsafeGet(context, HttpRouter.RouteContext);
240
242
  const urlParams = Context.unsafeGet(context, HttpServerRequest.ParsedSearchParams);
241
- return (decodePath._tag === "Some" ? decodePath.value(routeContext.params) : Effect.succeed(routeContext.params)).pipe(Effect.bindTo("pathParams"), decodePayload._tag === "Some" ? Effect.bind("payload", _ => Effect.flatMap(requestPayload(request, urlParams, isMultipart), decodePayload.value)) : _Function.identity, decodeHeaders._tag === "Some" ? Effect.bind("headers", _ => decodeHeaders.value(request.headers)) : _Function.identity, decodeUrlParams._tag === "Some" ? Effect.bind("urlParams", _ => decodeUrlParams.value(urlParams)) : _Function.identity, Effect.flatMap(input => {
242
- const request = {
243
- path: input.pathParams
244
- };
245
- if ("payload" in input) {
246
- request.payload = input.payload;
247
- }
248
- if ("headers" in input) {
249
- request.headers = input.headers;
250
- }
251
- if ("urlParams" in input) {
252
- request.urlParams = input.urlParams;
253
- }
254
- return handler(request);
255
- }), isFullResponse ? _Function.identity : Effect.flatMap(encodeSuccess), Effect.catchIf(ParseResult.isParseError, _HttpApiError.HttpApiDecodeError.refailParseError));
256
- })));
243
+ const request = {};
244
+ if (decodePath._tag === "Some") {
245
+ request.path = yield* decodePath.value(routeContext.params);
246
+ }
247
+ if (decodePayload._tag === "Some") {
248
+ request.payload = yield* Effect.flatMap(requestPayload(httpRequest, urlParams, isMultipart), decodePayload.value);
249
+ }
250
+ if (decodeHeaders._tag === "Some") {
251
+ request.headers = yield* decodeHeaders.value(httpRequest.headers);
252
+ }
253
+ if (decodeUrlParams._tag === "Some") {
254
+ request.urlParams = yield* decodeUrlParams.value(urlParams);
255
+ }
256
+ const response = isFullResponse ? yield* handler(request) : yield* Effect.flatMap(handler(request), encodeSuccess);
257
+ return response;
258
+ }).pipe(Effect.catchIf(ParseResult.isParseError, _HttpApiError.HttpApiDecodeError.refailParseError))));
257
259
  };
258
260
  const applyMiddleware = (middleware, handler) => {
259
261
  for (const entry of middleware.values()) {
@@ -1 +1 @@
1
- {"version":3,"file":"HttpApiBuilder.js","names":["Chunk","_interopRequireWildcard","require","Context","Effect","Encoding","FiberRef","_Function","_GlobalValue","HashMap","HashSet","Layer","ManagedRuntime","Option","ParseResult","_Pipeable","Redacted","Schema","_Unify","HttpApi","_HttpApiError","HttpApiMiddleware","HttpApiSchema","HttpApp","HttpMethod","HttpMiddleware","HttpRouter","HttpServer","HttpServerRequest","HttpServerResponse","OpenApi","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","Router","Tag","exports","api","effect","Api","map","context","serve","middleware","httpApp","pipe","app","unwrapEffect","provide","Live","gen","makeMiddlewareMap","middlewares","router","applyMiddleware","apiMiddleware","serviceOption","Middleware","errorSchema","makeErrorSchema","encodeError","encodeUnknown","_tag","value","identity","catchAll","error","matchEffect","onFailure","die","onSuccess","succeed","toWebHandler","layer","options","runtime","make","merge","memoMap","handlerCached","handlerPromise","bindTo","bind","runtimeEffect","toWebHandlerRuntime","tap","handler","runPromise","request","undefined","then","dispose","HandlersTypeId","Symbol","for","HandlersProto","_Endpoints","pipeArguments","arguments","handle","name","endpoint","unsafeGet","group","endpoints","makeHandlers","handlers","append","withFullResponse","handleRaw","self","create","groupName","build","use","groups","result","empty","isEffect","groupMiddleware","routes","item","push","handlerToRoute","mapInputContext","input","concat","fromIterable","_api","_groupName","_name","f","requestPayload","urlParams","isMultipart","hasBody","method","orDie","multipart","json","initial","Map","forEach","tag","key","endpoint_","isFullResponse","decodePath","pathSchema","decodeUnknown","payloadSchema","schema","getMultipart","ast","getOrElse","decodePayload","decodeHeaders","headersSchema","decodeUrlParams","urlParamsSchema","encodeSuccess","encode","makeSuccessSchema","successSchema","makeRoute","path","withFiberRuntime","fiber","getFiberRef","currentContext","routeContext","RouteContext","ParsedSearchParams","params","_","flatMap","headers","pathParams","payload","catchIf","isParseError","HttpApiDecodeError","refailParseError","entry","values","SecurityTypeId","makeSecurityMiddleware","optional","previous","provides","provideService","provideServiceEffect","zipRight","securityMiddlewareCache","globalValue","security","entries","decode","securityDecode","void","responseSchema","declare","isServerResponse","schemas","Set","deunionize","Union","Array","from","toResponseSuccess","toResponseError","decodeForbidden","__","fail","Forbidden","toResponseSchema","getStatus","cache","schemaToResponse","data","isEmpty","isVoid","to","status","encoding","getEncoding","kind","mapError","contentType","Type","text","uint8Array","transform","transformOrFail","getStatusSuccessAST","getStatusErrorAST","middlewareAdd","current","getOption","withContext","middlewareAddNoContext","args","apiFirst","isHttpApi","add","middlewareScoped","scoped","middlewareCors","cors","middlewareOpenApi","spec","fromApi","response","bearerLen","length","authorization","slice","Struct","String","unify","in","schemaSearchParams","schemaCookies","schemaHeaders","match","username","password","decodeBase64String","header","parts","split","securitySetCookie","stringValue","appendPreResponseHandler","_req","setCookie","secure","httpOnly"],"sources":["../../src/HttpApiBuilder.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"HttpApiBuilder.js","names":["Chunk","_interopRequireWildcard","require","Context","Effect","Encoding","Fiber","_Function","_GlobalValue","HashMap","HashSet","Layer","ManagedRuntime","Option","ParseResult","_Pipeable","Redacted","Schema","_Unify","HttpApi","_HttpApiError","HttpApiMiddleware","HttpApiSchema","HttpApp","HttpMethod","HttpMiddleware","HttpRouter","HttpServer","HttpServerRequest","HttpServerResponse","OpenApi","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","Router","Tag","exports","api","effect","Api","map","context","serve","middleware","httpApp","pipe","app","unwrapEffect","provide","Live","gen","makeMiddlewareMap","middlewares","router","applyMiddleware","apiMiddleware","serviceOption","Middleware","errorSchema","makeErrorSchema","encodeError","encodeUnknown","_tag","value","identity","catchAll","error","matchEffect","onFailure","die","onSuccess","succeed","toWebHandler","layer","options","runtime","make","merge","memoMap","handlerCached","handlerPromise","rt","runtimeEffect","handler","toWebHandlerRuntime","runPromise","request","undefined","then","dispose","HandlersTypeId","Symbol","for","HandlersProto","_Endpoints","pipeArguments","arguments","handle","name","endpoint","unsafeGet","group","endpoints","makeHandlers","handlers","append","withFullResponse","handleRaw","self","create","groupName","build","use","groups","result","empty","isEffect","groupMiddleware","routes","item","push","handlerToRoute","mapInputContext","input","concat","fromIterable","_api","_groupName","_name","f","requestPayload","urlParams","isMultipart","hasBody","method","orDie","multipart","json","initial","Map","forEach","tag","key","endpoint_","isFullResponse","decodePath","pathSchema","decodeUnknown","payloadSchema","schema","getMultipart","ast","getOrElse","decodePayload","decodeHeaders","headersSchema","decodeUrlParams","urlParamsSchema","encodeSuccess","encode","makeSuccessSchema","successSchema","makeRoute","path","fiber","getOrThrow","getCurrentFiber","currentContext","httpRequest","routeContext","RouteContext","ParsedSearchParams","params","payload","flatMap","headers","response","catchIf","isParseError","HttpApiDecodeError","refailParseError","entry","values","SecurityTypeId","makeSecurityMiddleware","optional","previous","provides","provideService","_","provideServiceEffect","zipRight","securityMiddlewareCache","globalValue","security","entries","decode","securityDecode","void","responseSchema","declare","isServerResponse","schemas","Set","deunionize","Union","Array","from","toResponseSuccess","toResponseError","decodeForbidden","__","fail","Forbidden","toResponseSchema","getStatus","cache","schemaToResponse","data","isEmpty","isVoid","to","status","encoding","getEncoding","kind","mapError","contentType","Type","text","uint8Array","transform","transformOrFail","getStatusSuccessAST","getStatusErrorAST","middlewareAdd","current","getOption","withContext","middlewareAddNoContext","args","apiFirst","isHttpApi","add","middlewareScoped","scoped","middlewareCors","cors","middlewareOpenApi","spec","fromApi","bearerLen","length","authorization","slice","Struct","String","unify","in","schemaSearchParams","schemaCookies","schemaHeaders","match","username","password","decodeBase64String","header","parts","split","securitySetCookie","stringValue","appendPreResponseHandler","_req","setCookie","secure","httpOnly"],"sources":["../../src/HttpApiBuilder.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -48,6 +48,7 @@ const make = (api, options) => Effect.gen(function* () {
48
48
  const decodeMap = {
49
49
  orElse: statusOrElse
50
50
  };
51
+ const decodeResponse = HttpClientResponse.matchStatus(decodeMap);
51
52
  errors.forEach((ast, status) => {
52
53
  if (ast._tag === "None") {
53
54
  decodeMap[status] = statusCodeError;
@@ -66,7 +67,10 @@ const make = (api, options) => Effect.gen(function* () {
66
67
  (group.topLevel ? client : client[group.identifier])[endpoint.name] = request => {
67
68
  const url = request && request.path ? makeUrl(request.path) : endpoint.path;
68
69
  const baseRequest = HttpClientRequest.make(endpoint.method)(url);
69
- return (isMultipart ? Effect.succeed(baseRequest.pipe(HttpClientRequest.bodyFormData(request.payload))) : encodePayload._tag === "Some" ? encodePayload.value(request.payload).pipe(Effect.flatMap(payload => HttpMethod.hasBody(endpoint.method) ? HttpClientRequest.bodyJson(baseRequest, payload) : Effect.succeed(HttpClientRequest.setUrlParams(baseRequest, payload))), Effect.orDie) : Effect.succeed(baseRequest)).pipe(encodeHeaders._tag === "Some" ? Effect.flatMap(httpRequest => encodeHeaders.value(request.headers).pipe(Effect.orDie, Effect.map(headers => HttpClientRequest.setHeaders(httpRequest, headers)))) : _Function.identity, encodeUrlParams._tag === "Some" ? Effect.flatMap(httpRequest => encodeUrlParams.value(request.urlParams).pipe(Effect.orDie, Effect.map(params => HttpClientRequest.appendUrlParams(httpRequest, params)))) : _Function.identity, Effect.flatMap(httpClient.execute), Effect.flatMap(HttpClientResponse.matchStatus(decodeMap)), options?.transformResponse === undefined ? _Function.identity : options.transformResponse, Effect.scoped, Effect.catchIf(ParseResult.isParseError, Effect.die), Effect.mapInputContext(input => Context.merge(context, input)));
70
+ return (isMultipart ? Effect.succeed(baseRequest.pipe(HttpClientRequest.bodyFormData(request.payload))) : encodePayload._tag === "Some" ? encodePayload.value(request.payload).pipe(Effect.flatMap(payload => HttpMethod.hasBody(endpoint.method) ? HttpClientRequest.bodyJson(baseRequest, payload) : Effect.succeed(HttpClientRequest.setUrlParams(baseRequest, payload))), Effect.orDie) : Effect.succeed(baseRequest)).pipe(encodeHeaders._tag === "Some" ? Effect.flatMap(httpRequest => encodeHeaders.value(request.headers).pipe(Effect.orDie, Effect.map(headers => HttpClientRequest.setHeaders(httpRequest, headers)))) : _Function.identity, encodeUrlParams._tag === "Some" ? Effect.flatMap(httpRequest => encodeUrlParams.value(request.urlParams).pipe(Effect.orDie, Effect.map(params => HttpClientRequest.appendUrlParams(httpRequest, params)))) : _Function.identity, Effect.flatMap(httpClient.execute), Effect.flatMap(response => {
71
+ const value = options?.transformResponse === undefined ? decodeResponse(response) : options.transformResponse(decodeResponse(response));
72
+ return request?.withResponse === true ? Effect.map(value, value => [value, response]) : value;
73
+ }), Effect.scoped, Effect.catchIf(ParseResult.isParseError, Effect.die), Effect.mapInputContext(input => Context.merge(context, input)));
70
74
  };
71
75
  }
72
76
  });
@@ -1 +1 @@
1
- {"version":3,"file":"HttpApiClient.js","names":["Context","_interopRequireWildcard","require","Effect","_Function","Option","ParseResult","Schema","HttpApi","HttpApiSchema","HttpClient","HttpClientError","HttpClientRequest","HttpClientResponse","HttpMethod","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","make","api","options","gen","context","httpClient","pipe","baseUrl","undefined","identity","mapRequest","prependUrl","transformClient","client","reflect","onGroup","group","topLevel","identifier","onEndpoint","endpoint","errors","successes","makeUrl","compilePath","path","decodeMap","orElse","statusOrElse","forEach","ast","status","_tag","statusCodeError","decode","schemaToResponse","value","response","flatMap","fail","responseAsVoid","isMultipart","payloadSchema","map","schema","getMultipart","getOrElse","encodePayload","filter","encodeUnknown","encodeHeaders","headersSchema","encodeUrlParams","urlParamsSchema","name","request","url","baseRequest","method","succeed","bodyFormData","payload","hasBody","bodyJson","setUrlParams","orDie","httpRequest","headers","setHeaders","urlParams","params","appendUrlParams","execute","matchStatus","transformResponse","scoped","catchIf","isParseError","die","mapInputContext","input","merge","exports","paramsRegex","segments","split","len","length","_","encoding","getEncoding","decodeUnknown","kind","responseJson","schemaBodyUrlParams","arrayBuffer","buffer","Uint8Array","text","void","try","JSON","parse","catch","cause","ResponseError","reason","_response"],"sources":["../../src/HttpApiClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"HttpApiClient.js","names":["Context","_interopRequireWildcard","require","Effect","_Function","Option","ParseResult","Schema","HttpApi","HttpApiSchema","HttpClient","HttpClientError","HttpClientRequest","HttpClientResponse","HttpMethod","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","make","api","options","gen","context","httpClient","pipe","baseUrl","undefined","identity","mapRequest","prependUrl","transformClient","client","reflect","onGroup","group","topLevel","identifier","onEndpoint","endpoint","errors","successes","makeUrl","compilePath","path","decodeMap","orElse","statusOrElse","decodeResponse","matchStatus","forEach","ast","status","_tag","statusCodeError","decode","schemaToResponse","value","response","flatMap","fail","responseAsVoid","isMultipart","payloadSchema","map","schema","getMultipart","getOrElse","encodePayload","filter","encodeUnknown","encodeHeaders","headersSchema","encodeUrlParams","urlParamsSchema","name","request","url","baseRequest","method","succeed","bodyFormData","payload","hasBody","bodyJson","setUrlParams","orDie","httpRequest","headers","setHeaders","urlParams","params","appendUrlParams","execute","transformResponse","withResponse","scoped","catchIf","isParseError","die","mapInputContext","input","merge","exports","paramsRegex","segments","split","len","length","_","encoding","getEncoding","decodeUnknown","kind","responseJson","schemaBodyUrlParams","arrayBuffer","buffer","Uint8Array","text","void","try","JSON","parse","catch","cause","ResponseError","reason","_response"],"sources":["../../src/HttpApiClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"HttpApiEndpoint.js","names":["Context","_interopRequireWildcard","require","HashSet","Option","_Pipeable","Predicate","Schema","HttpApiSchema","HttpRouter","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","TypeId","exports","Symbol","for","isHttpApiEndpoint","hasProperty","Proto","pipe","pipeArguments","arguments","addSuccess","schema","annotations","status","getStatusSuccess","makeProto","successSchema","NoContent","UnionUnify","addError","errorSchema","getStatusError","setPayload","payloadSchema","some","setPath","pathSchema","setUrlParams","urlParamsSchema","setHeaders","headersSchema","prefix","path","prefixPath","middleware","failure","middlewares","add","annotate","tag","value","annotateContext","context","merge","options","assign","create","make","method","name","none","Never","empty","post","put","patch","del"],"sources":["../../src/HttpApiEndpoint.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"HttpApiEndpoint.js","names":["Context","_interopRequireWildcard","require","HashSet","Option","_Pipeable","Predicate","Schema","HttpApiSchema","HttpRouter","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","TypeId","exports","Symbol","for","isHttpApiEndpoint","hasProperty","Proto","pipe","pipeArguments","arguments","addSuccess","schema","annotations","status","getStatusSuccess","makeProto","successSchema","NoContent","UnionUnify","addError","errorSchema","getStatusError","setPayload","payloadSchema","some","setPath","pathSchema","setUrlParams","urlParamsSchema","setHeaders","headersSchema","prefix","path","prefixPath","middleware","failure","middlewares","add","annotate","tag","value","annotateContext","context","merge","options","assign","create","make","method","name","none","Never","empty","post","put","patch","del"],"sources":["../../src/HttpApiEndpoint.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -129,36 +129,30 @@ class SocketCloseError extends /*#__PURE__*/(0, _Error.TypeIdError)(SocketErrorT
129
129
  * @category combinators
130
130
  */
131
131
  exports.SocketCloseError = SocketCloseError;
132
- const toChannelMap = (self, f) => Effect.scope.pipe(Effect.bindTo("scope"), Effect.bind("mailbox", () => Mailbox.make()), Effect.bind("writeScope", ({
133
- scope
134
- }) => Scope.fork(scope, ExecutionStrategy.sequential)), Effect.bind("write", ({
135
- writeScope
136
- }) => Scope.extend(self.writer, writeScope)), Effect.let("input", ({
137
- mailbox,
138
- write,
139
- writeScope
140
- }) => ({
141
- awaitRead: () => Effect.void,
142
- emit(chunk) {
143
- return Effect.catchAllCause(Effect.forEach(chunk, write, {
144
- discard: true
145
- }), cause => mailbox.failCause(cause));
146
- },
147
- error(error) {
148
- return Effect.zipRight(Scope.close(writeScope, Exit.void), mailbox.failCause(error));
149
- },
150
- done() {
151
- return Scope.close(writeScope, Exit.void);
152
- }
153
- })), Effect.tap(({
154
- mailbox,
155
- scope
156
- }) => self.runRaw(data => {
157
- mailbox.unsafeOffer(f(data));
158
- }).pipe(Mailbox.into(mailbox), Effect.forkIn(scope), Effect.interruptible)), Effect.map(({
159
- input,
160
- mailbox
161
- }) => Channel.embedInput(Mailbox.toChannel(mailbox), input)), Channel.unwrapScoped);
132
+ const toChannelMap = (self, f) => Effect.gen(function* () {
133
+ const scope = yield* Effect.scope;
134
+ const mailbox = yield* Mailbox.make();
135
+ const writeScope = yield* Scope.fork(scope, ExecutionStrategy.sequential);
136
+ const write = yield* Scope.extend(self.writer, writeScope);
137
+ const input = {
138
+ awaitRead: () => Effect.void,
139
+ emit(chunk) {
140
+ return Effect.catchAllCause(Effect.forEach(chunk, write, {
141
+ discard: true
142
+ }), cause => mailbox.failCause(cause));
143
+ },
144
+ error(error) {
145
+ return Effect.zipRight(Scope.close(writeScope, Exit.void), mailbox.failCause(error));
146
+ },
147
+ done() {
148
+ return Scope.close(writeScope, Exit.void);
149
+ }
150
+ };
151
+ yield* self.runRaw(data => {
152
+ mailbox.unsafeOffer(f(data));
153
+ }).pipe(Mailbox.into(mailbox), Effect.forkIn(scope), Effect.interruptible);
154
+ return Channel.embedInput(Mailbox.toChannel(mailbox), input);
155
+ }).pipe(Channel.unwrapScoped);
162
156
  /**
163
157
  * @since 1.0.0
164
158
  * @category combinators
@@ -219,17 +213,14 @@ const makeWebSocket = (url, options) => fromWebSocket(Effect.acquireRelease((typ
219
213
  * @category constructors
220
214
  */
221
215
  exports.makeWebSocket = makeWebSocket;
222
- const fromWebSocket = (acquire, options) => Effect.withFiberRuntime(fiber => Effect.map(Queue.dropping(fiber.getFiberRef(currentSendQueueCapacity)), sendQueue => {
223
- const acquireContext = fiber.getFiberRef(FiberRef.currentContext);
216
+ const fromWebSocket = (acquire, options) => Effect.withFiberRuntime(fiber => Effect.gen(function* () {
217
+ const sendQueue = yield* Queue.dropping(fiber.getFiberRef(currentSendQueueCapacity));
218
+ const acquireContext = fiber.currentContext;
224
219
  const closeCodeIsError = options?.closeCodeIsError ?? defaultCloseCodeIsError;
225
- const runRaw = handler => acquire.pipe(Effect.bindTo("ws"), Effect.bind("fiberSet", () => FiberSet.make()), Effect.bind("run", ({
226
- fiberSet,
227
- ws
228
- }) => Effect.provideService(FiberSet.runtime(fiberSet)(), WebSocket, ws)), Effect.tap(({
229
- fiberSet,
230
- run,
231
- ws
232
- }) => {
220
+ const runRaw = handler => Effect.gen(function* () {
221
+ const fiberSet = yield* FiberSet.make();
222
+ const ws = yield* acquire;
223
+ const run = yield* Effect.provideService(FiberSet.runtime(fiberSet)(), WebSocket, ws);
233
224
  let open = false;
234
225
  function onMessage(event) {
235
226
  if (event.data instanceof Blob) {
@@ -272,7 +263,7 @@ const fromWebSocket = (acquire, options) => Effect.withFiberRuntime(fiber => Eff
272
263
  }, {
273
264
  once: true
274
265
  });
275
- return Deferred.await(openDeferred).pipe(Effect.timeoutFail({
266
+ yield* Deferred.await(openDeferred).pipe(Effect.timeoutFail({
276
267
  duration: options?.openTimeout ?? 10000,
277
268
  onTimeout: () => new SocketGenericError({
278
269
  reason: "OpenTimeout",
@@ -281,26 +272,22 @@ const fromWebSocket = (acquire, options) => Effect.withFiberRuntime(fiber => Eff
281
272
  }), Effect.raceFirst(FiberSet.join(fiberSet)));
282
273
  }
283
274
  open = true;
284
- return Effect.void;
285
- }), Effect.tap(({
286
- fiberSet,
287
- ws
288
- }) => Queue.take(sendQueue).pipe(Effect.tap(chunk => isCloseEvent(chunk) ? Effect.failSync(() => {
289
- ws.close(chunk.code, chunk.reason);
290
- return new SocketCloseError({
291
- reason: "Close",
292
- code: chunk.code,
293
- closeReason: chunk.reason
294
- });
295
- }) : Effect.try({
296
- try: () => ws.send(chunk),
297
- catch: cause => new SocketGenericError({
298
- reason: "Write",
299
- cause
300
- })
301
- })), Effect.forever, FiberSet.run(fiberSet))), Effect.tap(({
302
- fiberSet
303
- }) => Effect.catchIf(FiberSet.join(fiberSet), SocketCloseError.isClean(_ => !closeCodeIsError(_)), _ => Effect.void)), Effect.mapInputContext(input => Context.merge(acquireContext, input)), Effect.scoped, Effect.interruptible);
275
+ yield* Queue.take(sendQueue).pipe(Effect.tap(chunk => isCloseEvent(chunk) ? Effect.failSync(() => {
276
+ ws.close(chunk.code, chunk.reason);
277
+ return new SocketCloseError({
278
+ reason: "Close",
279
+ code: chunk.code,
280
+ closeReason: chunk.reason
281
+ });
282
+ }) : Effect.try({
283
+ try: () => ws.send(chunk),
284
+ catch: cause => new SocketGenericError({
285
+ reason: "Write",
286
+ cause
287
+ })
288
+ })), Effect.forever, FiberSet.run(fiberSet));
289
+ return yield* FiberSet.join(fiberSet).pipe(Effect.catchIf(SocketCloseError.isClean(_ => !closeCodeIsError(_)), _ => Effect.void));
290
+ }).pipe(Effect.mapInputContext(input => Context.merge(acquireContext, input)), Effect.scoped, Effect.interruptible);
304
291
  const encoder = new TextEncoder();
305
292
  const run = handler => runRaw(data => typeof data === "string" ? handler(encoder.encode(data)) : handler(data));
306
293
  const write = chunk => Queue.offer(sendQueue, chunk);
@@ -334,48 +321,42 @@ const currentSendQueueCapacity = exports.currentSendQueueCapacity = /*#__PURE__*
334
321
  * @since 1.0.0
335
322
  * @category constructors
336
323
  */
337
- const fromTransformStream = (acquire, options) => {
324
+ const fromTransformStream = (acquire, options) => Effect.withFiberRuntime(fiber => Effect.gen(function* () {
338
325
  const EOF = Symbol();
339
- return Effect.withFiberRuntime(fiber => Effect.map(Queue.dropping(fiber.getFiberRef(currentSendQueueCapacity)), sendQueue => {
340
- const acquireContext = fiber.getFiberRef(FiberRef.currentContext);
341
- const closeCodeIsError = options?.closeCodeIsError ?? defaultCloseCodeIsError;
342
- const runRaw = handler => acquire.pipe(Effect.bindTo("stream"), Effect.bind("reader", ({
343
- stream
344
- }) => Effect.acquireRelease(Effect.sync(() => stream.readable.getReader()), reader => Effect.promise(() => reader.cancel()).pipe(Effect.tap(() => {
326
+ const sendQueue = yield* Queue.dropping(fiber.getFiberRef(currentSendQueueCapacity));
327
+ const acquireContext = fiber.currentContext;
328
+ const closeCodeIsError = options?.closeCodeIsError ?? defaultCloseCodeIsError;
329
+ const runRaw = handler => Effect.gen(function* () {
330
+ const stream = yield* acquire;
331
+ const reader = yield* Effect.acquireRelease(Effect.sync(() => stream.readable.getReader()), reader => Effect.promise(() => reader.cancel()).pipe(Effect.tap(() => {
345
332
  reader.releaseLock();
346
- })))), Effect.bind("writer", ({
347
- stream
348
- }) => Effect.acquireRelease(Effect.sync(() => stream.writable.getWriter()), reader => Effect.sync(() => reader.releaseLock()))), Effect.bind("fiberSet", () => FiberSet.make()), Effect.tap(({
349
- fiberSet,
350
- writer
351
- }) => {
352
- const encoder = new TextEncoder();
353
- return Queue.take(sendQueue).pipe(Effect.tap(chunk => {
354
- if (chunk === EOF || isCloseEvent(chunk)) {
355
- return Effect.zipRight(Effect.promise(() => writer.close()), chunk === EOF ? Effect.interrupt : Effect.fail(new SocketCloseError({
356
- reason: "Close",
357
- code: chunk.code,
358
- closeReason: chunk.reason
359
- })));
360
- }
361
- return Effect.try({
362
- try: () => {
363
- if (typeof chunk === "string") {
364
- writer.write(encoder.encode(chunk));
365
- } else {
366
- writer.write(chunk);
367
- }
368
- },
369
- catch: cause => new SocketGenericError({
370
- reason: "Write",
371
- cause
372
- })
373
- });
374
- }), Effect.forever, FiberSet.run(fiberSet));
375
- }), Effect.tap(({
376
- fiberSet,
377
- reader
378
- }) => Effect.tryPromise({
333
+ })));
334
+ const writer = yield* Effect.acquireRelease(Effect.sync(() => stream.writable.getWriter()), reader => Effect.sync(() => reader.releaseLock()));
335
+ const fiberSet = yield* FiberSet.make();
336
+ const encoder = new TextEncoder();
337
+ yield* Queue.take(sendQueue).pipe(Effect.tap(chunk => {
338
+ if (chunk === EOF || isCloseEvent(chunk)) {
339
+ return Effect.zipRight(Effect.promise(() => writer.close()), chunk === EOF ? Effect.interrupt : Effect.fail(new SocketCloseError({
340
+ reason: "Close",
341
+ code: chunk.code,
342
+ closeReason: chunk.reason
343
+ })));
344
+ }
345
+ return Effect.try({
346
+ try: () => {
347
+ if (typeof chunk === "string") {
348
+ writer.write(encoder.encode(chunk));
349
+ } else {
350
+ writer.write(chunk);
351
+ }
352
+ },
353
+ catch: cause => new SocketGenericError({
354
+ reason: "Write",
355
+ cause
356
+ })
357
+ });
358
+ }), Effect.forever, FiberSet.run(fiberSet));
359
+ yield* Effect.tryPromise({
379
360
  try: () => reader.read(),
380
361
  catch: cause => new SocketGenericError({
381
362
  reason: "Read",
@@ -389,20 +370,19 @@ const fromTransformStream = (acquire, options) => {
389
370
  }));
390
371
  }
391
372
  return handler(result.value);
392
- }), Effect.forever, FiberSet.run(fiberSet))), Effect.tap(({
393
- fiberSet
394
- }) => Effect.catchIf(FiberSet.join(fiberSet), SocketCloseError.isClean(_ => !closeCodeIsError(_)), _ => Effect.void)), Effect.mapInputContext(input => Context.merge(acquireContext, input)), Effect.scoped, Effect.interruptible);
395
- const encoder = new TextEncoder();
396
- const run = handler => runRaw(data => typeof data === "string" ? handler(encoder.encode(data)) : handler(data));
397
- const write = chunk => Queue.offer(sendQueue, chunk);
398
- const writer = Effect.acquireRelease(Effect.succeed(write), () => Queue.offer(sendQueue, EOF));
399
- return Socket.of({
400
- [TypeId]: TypeId,
401
- run,
402
- runRaw,
403
- writer
404
- });
405
- }));
406
- };
373
+ }), Effect.forever, FiberSet.run(fiberSet));
374
+ return yield* FiberSet.join(fiberSet).pipe(Effect.catchIf(SocketCloseError.isClean(_ => !closeCodeIsError(_)), _ => Effect.void));
375
+ }).pipe(Effect.mapInputContext(input => Context.merge(acquireContext, input)), Effect.scoped, Effect.interruptible);
376
+ const encoder = new TextEncoder();
377
+ const run = handler => runRaw(data => typeof data === "string" ? handler(encoder.encode(data)) : handler(data));
378
+ const write = chunk => Queue.offer(sendQueue, chunk);
379
+ const writer = Effect.acquireRelease(Effect.succeed(write), () => Queue.offer(sendQueue, EOF));
380
+ return Socket.of({
381
+ [TypeId]: TypeId,
382
+ run,
383
+ runRaw,
384
+ writer
385
+ });
386
+ }));
407
387
  exports.fromTransformStream = fromTransformStream;
408
388
  //# sourceMappingURL=Socket.js.map