© 2026 Hedgehog Software, LLC
/** * @class HttpClientService * @description Provides an HTTP client service that filters responses with successful status codes. */ export class HttpClientService extends E.Service<HttpClientService>()("HttpClientService", { dependencies: [FetchHttpClient.layer], effect: E.gen(function* () { const client = (yield* HttpClient.HttpClient).pipe( HttpClient.filterStatusOk, ); return client; }), }) {}
export const makeClient = Effect.gen(function*() { const baseClient = yield* HttpClientService const client = baseClient.pipe( HttpClient.mapRequest(HttpClientRequest.prependUrl("http://localhost:3000/rpc")) ) return RpcResolver.toClient(HttpRpcResolver.make<AppRouter>(client)) })
baseClient
HttpClientService
HttpClient.HttpClient.With<HttpClientError, Scope>