@effect/platform 0.46.2 → 0.47.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/PlatformLogger/package.json +6 -0
- package/Socket/package.json +6 -0
- package/dist/cjs/Http/Router.js.map +1 -1
- package/dist/cjs/Http/ServerRequest.js +11 -1
- package/dist/cjs/Http/ServerRequest.js.map +1 -1
- package/dist/cjs/PlatformLogger.js +57 -0
- package/dist/cjs/PlatformLogger.js.map +1 -0
- package/dist/cjs/Socket.js +212 -0
- package/dist/cjs/Socket.js.map +1 -0
- package/dist/cjs/index.js +5 -1
- package/dist/cjs/internal/http/router.js +5 -4
- package/dist/cjs/internal/http/router.js.map +1 -1
- package/dist/cjs/internal/http/serverRequest.js +15 -1
- package/dist/cjs/internal/http/serverRequest.js.map +1 -1
- package/dist/cjs/internal/platformLogger.js +46 -0
- package/dist/cjs/internal/platformLogger.js.map +1 -0
- package/dist/cjs/internal/worker.js.map +1 -1
- package/dist/dts/Http/Router.d.ts +39 -37
- package/dist/dts/Http/Router.d.ts.map +1 -1
- package/dist/dts/Http/ServerRequest.d.ts +14 -0
- package/dist/dts/Http/ServerRequest.d.ts.map +1 -1
- package/dist/dts/PlatformLogger.d.ts +41 -0
- package/dist/dts/PlatformLogger.d.ts.map +1 -0
- package/dist/dts/Socket.d.ts +111 -0
- package/dist/dts/Socket.d.ts.map +1 -0
- package/dist/dts/index.d.ts +8 -0
- package/dist/dts/index.d.ts.map +1 -1
- package/dist/dts/internal/http/router.d.ts +1 -2
- package/dist/dts/internal/http/router.d.ts.map +1 -1
- package/dist/dts/internal/platformLogger.d.ts +2 -0
- package/dist/dts/internal/platformLogger.d.ts.map +1 -0
- package/dist/esm/Http/Router.js.map +1 -1
- package/dist/esm/Http/ServerRequest.js +10 -0
- package/dist/esm/Http/ServerRequest.js.map +1 -1
- package/dist/esm/PlatformLogger.js +26 -0
- package/dist/esm/PlatformLogger.js.map +1 -0
- package/dist/esm/Socket.js +166 -0
- package/dist/esm/Socket.js.map +1 -0
- package/dist/esm/index.js +8 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/internal/http/router.js +5 -4
- package/dist/esm/internal/http/router.js.map +1 -1
- package/dist/esm/internal/http/serverRequest.js +13 -0
- package/dist/esm/internal/http/serverRequest.js.map +1 -1
- package/dist/esm/internal/platformLogger.js +15 -0
- package/dist/esm/internal/platformLogger.js.map +1 -0
- package/dist/esm/internal/worker.js.map +1 -1
- package/package.json +20 -3
- package/src/Http/Router.ts +40 -147
- package/src/Http/ServerRequest.ts +25 -0
- package/src/PlatformLogger.ts +59 -0
- package/src/Socket.ts +291 -0
- package/src/index.ts +10 -0
- package/src/internal/http/router.ts +86 -38
- package/src/internal/http/serverRequest.ts +16 -0
- package/src/internal/platformLogger.ts +42 -0
- package/src/internal/worker.ts +5 -1
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 1.0.0
|
|
3
|
+
*/
|
|
4
|
+
import * as Cause from "effect/Cause";
|
|
5
|
+
import * as Channel from "effect/Channel";
|
|
6
|
+
import * as Chunk from "effect/Chunk";
|
|
7
|
+
import * as Context from "effect/Context";
|
|
8
|
+
import * as Effect from "effect/Effect";
|
|
9
|
+
import * as Layer from "effect/Layer";
|
|
10
|
+
import * as Scope from "effect/Scope";
|
|
11
|
+
/**
|
|
12
|
+
* @since 1.0.0
|
|
13
|
+
* @category type ids
|
|
14
|
+
*/
|
|
15
|
+
export declare const SocketTypeId: unique symbol;
|
|
16
|
+
/**
|
|
17
|
+
* @since 1.0.0
|
|
18
|
+
* @category type ids
|
|
19
|
+
*/
|
|
20
|
+
export type SocketTypeId = typeof SocketTypeId;
|
|
21
|
+
/**
|
|
22
|
+
* @since 1.0.0
|
|
23
|
+
* @category tags
|
|
24
|
+
*/
|
|
25
|
+
export declare const Socket: Context.Tag<Socket, Socket>;
|
|
26
|
+
/**
|
|
27
|
+
* @since 1.0.0
|
|
28
|
+
* @category models
|
|
29
|
+
*/
|
|
30
|
+
export interface Socket {
|
|
31
|
+
readonly [SocketTypeId]: SocketTypeId;
|
|
32
|
+
readonly run: <R, E, _>(handler: (_: Uint8Array) => Effect.Effect<_, E, R>) => Effect.Effect<void, SocketError | E, R>;
|
|
33
|
+
readonly writer: Effect.Effect<(chunk: Uint8Array) => Effect.Effect<void>, never, Scope.Scope>;
|
|
34
|
+
}
|
|
35
|
+
declare const SocketError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").Equals<A, {}> extends true ? void : { readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }) => Cause.YieldableError & {
|
|
36
|
+
readonly _tag: "SocketError";
|
|
37
|
+
} & Readonly<A>;
|
|
38
|
+
/**
|
|
39
|
+
* @since 1.0.0
|
|
40
|
+
* @category errors
|
|
41
|
+
*/
|
|
42
|
+
export declare class SocketError extends SocketError_base<{
|
|
43
|
+
readonly reason: "Write" | "Read" | "Open" | "Close";
|
|
44
|
+
readonly error: unknown;
|
|
45
|
+
}> {
|
|
46
|
+
/**
|
|
47
|
+
* @since 1.0.0
|
|
48
|
+
*/
|
|
49
|
+
toString(): string;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* @since 1.0.0
|
|
53
|
+
* @category combinators
|
|
54
|
+
*/
|
|
55
|
+
export declare const toChannel: <IE>(self: Socket) => Channel.Channel<Chunk.Chunk<Uint8Array>, Chunk.Chunk<Uint8Array>, SocketError | IE, IE, void, unknown, never>;
|
|
56
|
+
/**
|
|
57
|
+
* @since 1.0.0
|
|
58
|
+
* @category combinators
|
|
59
|
+
*/
|
|
60
|
+
export declare const toChannelWith: <IE = never>() => (self: Socket) => Channel.Channel<Chunk.Chunk<Uint8Array>, Chunk.Chunk<Uint8Array>, SocketError | IE, IE, void, unknown, never>;
|
|
61
|
+
/**
|
|
62
|
+
* @since 1.0.0
|
|
63
|
+
* @category constructors
|
|
64
|
+
*/
|
|
65
|
+
export declare const makeChannel: <IE = never>() => Channel.Channel<Chunk.Chunk<Uint8Array>, Chunk.Chunk<Uint8Array>, SocketError | IE, IE, void, unknown, Socket>;
|
|
66
|
+
/**
|
|
67
|
+
* @since 1.0.0
|
|
68
|
+
*/
|
|
69
|
+
export declare const defaultCloseCodeIsError: (code: number) => boolean;
|
|
70
|
+
/**
|
|
71
|
+
* @since 1.0.0
|
|
72
|
+
* @category tags
|
|
73
|
+
*/
|
|
74
|
+
export interface WebSocket {
|
|
75
|
+
readonly _: unique symbol;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* @since 1.0.0
|
|
79
|
+
* @category tags
|
|
80
|
+
*/
|
|
81
|
+
export declare const WebSocket: Context.Tag<WebSocket, globalThis.WebSocket>;
|
|
82
|
+
/**
|
|
83
|
+
* @since 1.0.0
|
|
84
|
+
* @category constructors
|
|
85
|
+
*/
|
|
86
|
+
export declare const makeWebSocket: (url: string | Effect.Effect<string>, options?: {
|
|
87
|
+
readonly closeCodeIsError?: ((code: number) => boolean) | undefined;
|
|
88
|
+
} | undefined) => Effect.Effect<Socket>;
|
|
89
|
+
/**
|
|
90
|
+
* @since 1.0.0
|
|
91
|
+
* @category constructors
|
|
92
|
+
*/
|
|
93
|
+
export declare const fromWebSocket: (acquire: Effect.Effect<globalThis.WebSocket, SocketError, Scope.Scope>, options?: {
|
|
94
|
+
readonly closeCodeIsError?: ((code: number) => boolean) | undefined;
|
|
95
|
+
} | undefined) => Effect.Effect<Socket>;
|
|
96
|
+
/**
|
|
97
|
+
* @since 1.0.0
|
|
98
|
+
* @category constructors
|
|
99
|
+
*/
|
|
100
|
+
export declare const makeWebSocketChannel: <IE = never>(url: string, options?: {
|
|
101
|
+
readonly closeCodeIsError?: ((code: number) => boolean) | undefined;
|
|
102
|
+
} | undefined) => Channel.Channel<Chunk.Chunk<Uint8Array>, Chunk.Chunk<Uint8Array>, SocketError | IE, IE, void, unknown, never>;
|
|
103
|
+
/**
|
|
104
|
+
* @since 1.0.0
|
|
105
|
+
* @category layers
|
|
106
|
+
*/
|
|
107
|
+
export declare const layerWebSocket: (url: string, options?: {
|
|
108
|
+
readonly closeCodeIsError?: ((code: number) => boolean) | undefined;
|
|
109
|
+
} | undefined) => Layer.Layer<Socket>;
|
|
110
|
+
export {};
|
|
111
|
+
//# sourceMappingURL=Socket.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Socket.d.ts","sourceRoot":"","sources":["../../src/Socket.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AACzC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AAEzC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAGvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAErC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAIrC;;;GAGG;AACH,eAAO,MAAM,YAAY,eAAwC,CAAA;AAEjE;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,OAAO,YAAY,CAAA;AAE9C;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAE9C,CAAA;AAED;;;GAGG;AACH,MAAM,WAAW,MAAM;IACrB,QAAQ,CAAC,CAAC,YAAY,CAAC,EAAE,YAAY,CAAA;IACrC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EACpB,OAAO,EAAE,CAAC,CAAC,EAAE,UAAU,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAC/C,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,WAAW,GAAG,CAAC,EAAE,CAAC,CAAC,CAAA;IAC5C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,UAAU,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;CAC/F;;;;AAED;;;GAGG;AACH,qBAAa,WAAY,SAAQ,iBAAgC;IAC/D,QAAQ,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAA;IACpD,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAA;CACxB,CAAC;IACA;;OAEG;IACH,QAAQ,IAAI,MAAM;CAGnB;AAED;;;GAGG;AACH,eAAO,MAAM,SAAS,aACd,MAAM,kHA8CX,CAAA;AAEH;;;GAGG;AACH,eAAO,MAAM,aAAa,2BAElB,MAAM,kHAEG,CAAA;AAEjB;;;GAGG;AACH,eAAO,MAAM,WAAW,kIAQoC,CAAA;AAE5D;;GAEG;AACH,eAAO,MAAM,uBAAuB,SAAU,MAAM,YAAmC,CAAA;AAEvF;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,CAAC,EAAE,OAAO,MAAM,CAAA;CAC1B;AAED;;;GAGG;AACH,eAAO,MAAM,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,UAAU,CAAC,SAAS,CAElE,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,aAAa,QAAS,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC;wCAC5B,MAAM,KAAK,OAAO;kBACnD,aAAa,CAAC,MAAM,CAarB,CAAA;AAEH;;;GAGG;AACH,eAAO,MAAM,aAAa,YACf,aAAa,CAAC,oBAAoB,EAAE,WAAW,EAAE,WAAW,CAAC;wCAEjC,MAAM,KAAK,OAAO;kBAEtD,aAAa,CAAC,MAAM,CA2EnB,CAAA;AAEJ;;;GAGG;AACH,eAAO,MAAM,oBAAoB,oBAC1B,MAAM;wCAE0B,MAAM,KAAK,OAAO;+HAKtD,CAAA;AAEH;;;GAGG;AACH,eAAO,MAAM,cAAc,QAAS,MAAM;wCACL,MAAM,KAAK,OAAO;kBACnD,WAAW,CAAC,MAAM,CAAsD,CAAA"}
|
package/dist/dts/index.d.ts
CHANGED
|
@@ -34,10 +34,18 @@ export * as KeyValueStore from "./KeyValueStore.js";
|
|
|
34
34
|
* @since 1.0.0
|
|
35
35
|
*/
|
|
36
36
|
export * as Path from "./Path.js";
|
|
37
|
+
/**
|
|
38
|
+
* @since 1.0.0
|
|
39
|
+
*/
|
|
40
|
+
export * as PlatformLogger from "./PlatformLogger.js";
|
|
37
41
|
/**
|
|
38
42
|
* @since 1.0.0
|
|
39
43
|
*/
|
|
40
44
|
export * as Runtime from "./Runtime.js";
|
|
45
|
+
/**
|
|
46
|
+
* @since 1.0.0
|
|
47
|
+
*/
|
|
48
|
+
export * as Socket from "./Socket.js";
|
|
41
49
|
/**
|
|
42
50
|
* @since 1.0.0
|
|
43
51
|
*/
|
package/dist/dts/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AAEvC;;GAEG;AACH,OAAO,KAAK,eAAe,MAAM,sBAAsB,CAAA;AAEvD;;GAEG;AACH,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAE3C;;GAEG;AACH,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AAEnC;;GAEG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAE7C;;GAEG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAE7C;;GAEG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAE7C;;GAEG;AACH,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAA;AAEnD;;GAEG;AACH,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AAEjC;;GAEG;AACH,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AAEvC;;GAEG;AACH,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AAEzC;;GAEG;AACH,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AAEzC;;GAEG;AACH,OAAO,KAAK,YAAY,MAAM,mBAAmB,CAAA;AAEjD;;GAEG;AACH,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC;;GAEG;AACH,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAE/C;;GAEG;AACH,OAAO,KAAK,YAAY,MAAM,mBAAmB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AAEvC;;GAEG;AACH,OAAO,KAAK,eAAe,MAAM,sBAAsB,CAAA;AAEvD;;GAEG;AACH,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAE3C;;GAEG;AACH,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AAEnC;;GAEG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAE7C;;GAEG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAE7C;;GAEG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAE7C;;GAEG;AACH,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAA;AAEnD;;GAEG;AACH,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AAEjC;;GAEG;AACH,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA;AAErD;;GAEG;AACH,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AAEvC;;GAEG;AACH,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC;;GAEG;AACH,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AAEzC;;GAEG;AACH,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AAEzC;;GAEG;AACH,OAAO,KAAK,YAAY,MAAM,mBAAmB,CAAA;AAEjD;;GAEG;AACH,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC;;GAEG;AACH,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAE/C;;GAEG;AACH,OAAO,KAAK,YAAY,MAAM,mBAAmB,CAAA"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import * as Context from "effect/Context";
|
|
2
2
|
import type * as Router from "../../Http/Router.js";
|
|
3
|
-
|
|
4
|
-
export declare const provideService: (<T extends Context.Tag<any, any>>(tag: T, service: Context.Tag.Service<T>) => <R, E>(self: Router.Router<R, E>) => Router.Router<Exclude<Exclude<R, Context.Tag.Identifier<T>>, import("effect/Scope").Scope | ServerRequest.ServerRequest | Router.RouteContext>, E>) & (<R_1, E_1, T_1 extends Context.Tag<any, any>>(self: Router.Router<R_1, E_1>, tag: T_1, service: Context.Tag.Service<T_1>) => Router.Router<Exclude<Exclude<R_1, Context.Tag.Identifier<T_1>>, import("effect/Scope").Scope | ServerRequest.ServerRequest | Router.RouteContext>, E_1>);
|
|
3
|
+
export declare const provideService: (<T extends Context.Tag<any, any>>(tag: T, service: Context.Tag.Service<T>) => <R, E>(self: Router.Router<R, E>) => Router.Router<Exclude<R, Context.Tag.Identifier<T>>, E>) & (<R_1, E_1, T_1 extends Context.Tag<any, any>>(self: Router.Router<R_1, E_1>, tag: T_1, service: Context.Tag.Service<T_1>) => Router.Router<Exclude<R_1, Context.Tag.Identifier<T_1>>, E_1>);
|
|
5
4
|
//# sourceMappingURL=router.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../../src/internal/http/router.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../../src/internal/http/router.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AAUzC,OAAO,KAAK,KAAK,MAAM,MAAM,sBAAsB,CAAA;AAgcnD,eAAO,MAAM,cAAc,6WAgBkF,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"platformLogger.d.ts","sourceRoot":"","sources":["../../../src/internal/platformLogger.ts"],"names":[],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Router.js","names":["internal","TypeId","RouteTypeId","RouteContextTypeId","RouteContext","params","searchParams","schemaParams","schemaPathParams","schemaSearchParams","empty","fromIterable","makeRoute","prefixAll","concat","mount","mountApp","route","all","get","post","patch","put","del","head","options","use","catchAll","catchAllCause","catchTag","catchTags","provideService","provideServiceEffect"],"sources":["../../../src/Http/Router.ts"],"sourcesContent":[null],"mappings":"AAWA,OAAO,KAAKA,QAAQ,MAAM,4BAA4B;AAOtD;;;;AAIA,OAAO,MAAMC,MAAM,GAAkBD,QAAQ,CAACC,MAAM;
|
|
1
|
+
{"version":3,"file":"Router.js","names":["internal","TypeId","RouteTypeId","RouteContextTypeId","RouteContext","params","searchParams","schemaParams","schemaPathParams","schemaSearchParams","empty","fromIterable","makeRoute","prefixAll","concat","mount","mountApp","route","all","get","post","patch","put","del","head","options","use","catchAll","catchAllCause","catchTag","catchTags","provideService","provideServiceEffect"],"sources":["../../../src/Http/Router.ts"],"sourcesContent":[null],"mappings":"AAWA,OAAO,KAAKA,QAAQ,MAAM,4BAA4B;AAOtD;;;;AAIA,OAAO,MAAMC,MAAM,GAAkBD,QAAQ,CAACC,MAAM;AA8BpD;;;;AAIA,OAAO,MAAMC,WAAW,GAAkBF,QAAQ,CAACE,WAAW;AAwC9D;;;;AAIA,OAAO,MAAMC,kBAAkB,GAAkBH,QAAQ,CAACG,kBAAkB;AAmB5E;;;;AAIA,OAAO,MAAMC,YAAY,GAA4CJ,QAAQ,CAACI,YAAY;AAE1F;;;;AAIA,OAAO,MAAMC,MAAM,GAIfL,QAAQ,CAACK,MAAM;AAEnB;;;;AAIA,OAAO,MAAMC,YAAY,GAIrBN,QAAQ,CAACM,YAAY;AAEzB;;;;AAIA,OAAO,MAAMC,YAAY,GAEyCP,QAAQ,CAACO,YAAY;AAEvF;;;;AAIA,OAAO,MAAMC,gBAAgB,GAEqCR,QAAQ,CAACQ,gBAAgB;AAE3F;;;;AAIA,OAAO,MAAMC,kBAAkB,GAEmCT,QAAQ,CAACS,kBAAkB;AAE7F;;;;AAIA,OAAO,MAAMC,KAAK,GAAyBV,QAAQ,CAACU,KAAK;AAEzD;;;;AAIA,OAAO,MAAMC,YAAY,GAGvBX,QAAQ,CAACW,YAAY;AAEvB;;;;AAIA,OAAO,MAAMC,SAAS,GAKgEZ,QAAQ,CAACY,SAAS;AAExG;;;;AAIA,OAAO,MAAMC,SAAS,GAGlBb,QAAQ,CAACa,SAAS;AAEtB;;;;AAIA,OAAO,MAAMC,MAAM,GAQfd,QAAQ,CAACc,MAAM;AAEnB;;;;AAIA,OAAO,MAAMC,KAAK,GAGdf,QAAQ,CAACe,KAAK;AAElB;;;;AAIA,OAAO,MAAMC,QAAQ,GAsBjBhB,QAAQ,CAACgB,QAAQ;AAErB;;;;AAIA,OAAO,MAAMC,KAAK,GAcdjB,QAAQ,CAACiB,KAAK;AAElB;;;;AAIA,OAAO,MAAMC,GAAG,GAYZlB,QAAQ,CAACkB,GAAG;AAEhB;;;;AAIA,OAAO,MAAMC,GAAG,GAYZnB,QAAQ,CAACmB,GAAG;AAEhB;;;;AAIA,OAAO,MAAMC,IAAI,GAYbpB,QAAQ,CAACoB,IAAI;AAEjB;;;;AAIA,OAAO,MAAMC,KAAK,GAYdrB,QAAQ,CAACqB,KAAK;AAElB;;;;AAIA,OAAO,MAAMC,GAAG,GAYZtB,QAAQ,CAACsB,GAAG;AAEhB;;;;AAIA,OAAO,MAAMC,GAAG,GAYZvB,QAAQ,CAACuB,GAAG;AAEhB;;;;AAIA,OAAO,MAAMC,IAAI,GAYbxB,QAAQ,CAACwB,IAAI;AAEjB;;;;AAIA,OAAO,MAAMC,OAAO,GAYhBzB,QAAQ,CAACyB,OAAO;AAEpB;;;;AAIA,OAAO,MAAMC,GAAG,GAQZ1B,QAAQ,CAAC0B,GAAG;AAEhB;;;;AAIA,OAAO,MAAMC,QAAQ,GAQjB3B,QAAQ,CAAC2B,QAAQ;AAErB;;;;AAIA,OAAO,MAAMC,aAAa,GAQtB5B,QAAQ,CAAC4B,aAAa;AAE1B;;;;AAIA,OAAO,MAAMC,QAAQ,GAYjB7B,QAAQ,CAAC6B,QAAQ;AAErB;;;;AAIA,OAAO,MAAMC,SAAS,GA6ClB9B,QAAQ,CAAC8B,SAAS;AAEtB;;;;AAIA,OAAO,MAAMC,cAAc,GAUvB/B,QAAQ,CAAC+B,cAAc;AAE3B;;;;AAIA,OAAO,MAAMC,oBAAoB,GAoB7BhC,QAAQ,CAACgC,oBAAoB"}
|
|
@@ -20,6 +20,16 @@ export const ServerRequest = internal.serverRequestTag;
|
|
|
20
20
|
* @category accessors
|
|
21
21
|
*/
|
|
22
22
|
export const persistedMultipart = internal.multipartPersisted;
|
|
23
|
+
/**
|
|
24
|
+
* @since 1.0.0
|
|
25
|
+
* @category accessors
|
|
26
|
+
*/
|
|
27
|
+
export const upgrade = internal.upgrade;
|
|
28
|
+
/**
|
|
29
|
+
* @since 1.0.0
|
|
30
|
+
* @category accessors
|
|
31
|
+
*/
|
|
32
|
+
export const upgradeChannel = internal.upgradeChannel;
|
|
23
33
|
/**
|
|
24
34
|
* @since 1.0.0
|
|
25
35
|
* @category schema
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ServerRequest.js","names":["internal","maxBodySize","TypeId","ServerRequest","serverRequestTag","persistedMultipart","multipartPersisted","schemaHeaders","schemaBodyJson","schemaBodyForm","schemaBodyUrlParams","schemaBodyMultipart","schemaBodyFormJson","fromWeb"],"sources":["../../../src/Http/ServerRequest.ts"],"sourcesContent":[null],"mappings":"
|
|
1
|
+
{"version":3,"file":"ServerRequest.js","names":["internal","maxBodySize","TypeId","ServerRequest","serverRequestTag","persistedMultipart","multipartPersisted","upgrade","upgradeChannel","schemaHeaders","schemaBodyJson","schemaBodyForm","schemaBodyUrlParams","schemaBodyMultipart","schemaBodyFormJson","fromWeb"],"sources":["../../../src/Http/ServerRequest.ts"],"sourcesContent":[null],"mappings":"AAYA,OAAO,KAAKA,QAAQ,MAAM,mCAAmC;AAS7D;AACE;;;;AAIAC,WAAW,QACN,sBAAsB;AAE7B;;;;AAIA,OAAO,MAAMC,MAAM,GAAkBF,QAAQ,CAACE,MAAM;AAqCpD;;;;AAIA,OAAO,MAAMC,aAAa,GAA8CH,QAAQ,CAACI,gBAAgB;AAEjG;;;;AAIA,OAAO,MAAMC,kBAAkB,GAI3BL,QAAQ,CAACM,kBAAkB;AAE/B;;;;AAIA,OAAO,MAAMC,OAAO,GAAoEP,QAAQ,CAACO,OAAO;AAExG;;;;AAIA,OAAO,MAAMC,cAAc,GAQvBR,QAAQ,CAACQ,cAAc;AAE3B;;;;AAIA,OAAO,MAAMC,aAAa,GAEyCT,QAAQ,CAACS,aAAa;AAEzF;;;;AAIA,OAAO,MAAMC,cAAc,GAE6DV,QAAQ,CAACU,cAAc;AAE/G;;;;AAIA,OAAO,MAAMC,cAAc,GAMvBX,QAAQ,CAACW,cAAc;AAE3B;;;;AAIA,OAAO,MAAMC,mBAAmB,GAEwDZ,QAAQ,CAACY,mBAAmB;AAEpH;;;;AAIA,OAAO,MAAMC,mBAAmB,GAM5Bb,QAAQ,CAACa,mBAAmB;AAEhC;;;;AAIA,OAAO,MAAMC,kBAAkB,GAQ3Bd,QAAQ,CAACc,kBAAkB;AAE/B;;;;AAIA,OAAO,MAAMC,OAAO,GAAwCf,QAAQ,CAACe,OAAO"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import * as internal from "./internal/platformLogger.js";
|
|
2
|
+
/**
|
|
3
|
+
* Create a Logger from another string Logger that writes to the specified file.
|
|
4
|
+
*
|
|
5
|
+
* @since 1.0.0
|
|
6
|
+
* @example
|
|
7
|
+
* import { PlatformLogger } from "@effect/platform"
|
|
8
|
+
* import { NodeFileSystem, NodeRuntime } from "@effect/platform-node"
|
|
9
|
+
* import { Effect, Layer, Logger } from "effect"
|
|
10
|
+
*
|
|
11
|
+
* const fileLogger = Logger.logfmtLogger.pipe(
|
|
12
|
+
* PlatformLogger.toFile("log.txt")
|
|
13
|
+
* )
|
|
14
|
+
* const LoggerLive = Logger.replaceScoped(Logger.defaultLogger, fileLogger).pipe(
|
|
15
|
+
* Layer.provide(NodeFileSystem.layer)
|
|
16
|
+
* )
|
|
17
|
+
*
|
|
18
|
+
* Effect.log("a").pipe(
|
|
19
|
+
* Effect.zipRight(Effect.log("b")),
|
|
20
|
+
* Effect.zipRight(Effect.log("c")),
|
|
21
|
+
* Effect.provide(LoggerLive),
|
|
22
|
+
* NodeRuntime.runMain
|
|
23
|
+
* )
|
|
24
|
+
*/
|
|
25
|
+
export const toFile = internal.toFile;
|
|
26
|
+
//# sourceMappingURL=PlatformLogger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PlatformLogger.js","names":["internal","toFile"],"sources":["../../src/PlatformLogger.ts"],"sourcesContent":[null],"mappings":"AASA,OAAO,KAAKA,QAAQ,MAAM,8BAA8B;AAExD;;;;;;;;;;;;;;;;;;;;;;;AAuBA,OAAO,MAAMC,MAAM,GAwBfD,QAAQ,CAACC,MAAM"}
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 1.0.0
|
|
3
|
+
*/
|
|
4
|
+
import * as Cause from "effect/Cause";
|
|
5
|
+
import * as Channel from "effect/Channel";
|
|
6
|
+
import * as Chunk from "effect/Chunk";
|
|
7
|
+
import * as Context from "effect/Context";
|
|
8
|
+
import * as Data from "effect/Data";
|
|
9
|
+
import * as Effect from "effect/Effect";
|
|
10
|
+
import * as Exit from "effect/Exit";
|
|
11
|
+
import * as FiberSet from "effect/FiberSet";
|
|
12
|
+
import * as Layer from "effect/Layer";
|
|
13
|
+
import * as Queue from "effect/Queue";
|
|
14
|
+
import * as Scope from "effect/Scope";
|
|
15
|
+
import IsoWebSocket from "isomorphic-ws";
|
|
16
|
+
/**
|
|
17
|
+
* @since 1.0.0
|
|
18
|
+
* @category type ids
|
|
19
|
+
*/
|
|
20
|
+
export const SocketTypeId = /*#__PURE__*/Symbol.for("@effect/platform/Socket");
|
|
21
|
+
/**
|
|
22
|
+
* @since 1.0.0
|
|
23
|
+
* @category tags
|
|
24
|
+
*/
|
|
25
|
+
export const Socket = /*#__PURE__*/Context.GenericTag("@effect/platform/Socket");
|
|
26
|
+
/**
|
|
27
|
+
* @since 1.0.0
|
|
28
|
+
* @category errors
|
|
29
|
+
*/
|
|
30
|
+
export class SocketError extends Data.TaggedError("SocketError") {
|
|
31
|
+
/**
|
|
32
|
+
* @since 1.0.0
|
|
33
|
+
*/
|
|
34
|
+
toString() {
|
|
35
|
+
return `SocketError: ${this.reason} - ${this.error}`;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* @since 1.0.0
|
|
40
|
+
* @category combinators
|
|
41
|
+
*/
|
|
42
|
+
export const toChannel = self => Channel.unwrap(Effect.gen(function* (_) {
|
|
43
|
+
const writeScope = yield* _(Scope.make());
|
|
44
|
+
const write = yield* _(Scope.extend(self.writer, writeScope));
|
|
45
|
+
const exitQueue = yield* _(Queue.unbounded());
|
|
46
|
+
const input = {
|
|
47
|
+
awaitRead: () => Effect.unit,
|
|
48
|
+
emit(chunk) {
|
|
49
|
+
return Effect.catchAllCause(Effect.forEach(chunk, write, {
|
|
50
|
+
discard: true
|
|
51
|
+
}), cause => Queue.offer(exitQueue, Exit.failCause(cause)));
|
|
52
|
+
},
|
|
53
|
+
error(error) {
|
|
54
|
+
return Effect.zipRight(Scope.close(writeScope, Exit.unit), Queue.offer(exitQueue, Exit.failCause(error)));
|
|
55
|
+
},
|
|
56
|
+
done() {
|
|
57
|
+
return Scope.close(writeScope, Exit.unit);
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
yield* _(self.run(data => Queue.offer(exitQueue, Exit.succeed(Chunk.of(data)))), Effect.zipRight(Effect.failCause(Cause.empty)), Effect.exit, Effect.tap(exit => Queue.offer(exitQueue, exit)), Effect.fork);
|
|
61
|
+
const loop = Channel.flatMap(Queue.take(exitQueue), Exit.match({
|
|
62
|
+
onFailure: cause => Cause.isEmptyType(cause) ? Channel.unit : Channel.failCause(cause),
|
|
63
|
+
onSuccess: chunk => Channel.zipRight(Channel.write(chunk), loop)
|
|
64
|
+
}));
|
|
65
|
+
return Channel.embedInput(loop, input);
|
|
66
|
+
}));
|
|
67
|
+
/**
|
|
68
|
+
* @since 1.0.0
|
|
69
|
+
* @category combinators
|
|
70
|
+
*/
|
|
71
|
+
export const toChannelWith = () => self => toChannel(self);
|
|
72
|
+
/**
|
|
73
|
+
* @since 1.0.0
|
|
74
|
+
* @category constructors
|
|
75
|
+
*/
|
|
76
|
+
export const makeChannel = () => Channel.unwrap(Effect.map(Socket, toChannelWith()));
|
|
77
|
+
/**
|
|
78
|
+
* @since 1.0.0
|
|
79
|
+
*/
|
|
80
|
+
export const defaultCloseCodeIsError = code => code !== 1000 && code !== 1006;
|
|
81
|
+
/**
|
|
82
|
+
* @since 1.0.0
|
|
83
|
+
* @category tags
|
|
84
|
+
*/
|
|
85
|
+
export const WebSocket = /*#__PURE__*/Context.GenericTag("@effect/platform/Socket/WebSocket");
|
|
86
|
+
/**
|
|
87
|
+
* @since 1.0.0
|
|
88
|
+
* @category constructors
|
|
89
|
+
*/
|
|
90
|
+
export const makeWebSocket = (url, options) => fromWebSocket(Effect.acquireRelease(Effect.map(typeof url === "string" ? Effect.succeed(url) : url, url => {
|
|
91
|
+
const WS = "WebSocket" in globalThis ? globalThis.WebSocket : IsoWebSocket;
|
|
92
|
+
return new WS(url);
|
|
93
|
+
}), ws => Effect.sync(() => ws.close())), options);
|
|
94
|
+
/**
|
|
95
|
+
* @since 1.0.0
|
|
96
|
+
* @category constructors
|
|
97
|
+
*/
|
|
98
|
+
export const fromWebSocket = (acquire, options) => Effect.gen(function* (_) {
|
|
99
|
+
const closeCodeIsError = options?.closeCodeIsError ?? defaultCloseCodeIsError;
|
|
100
|
+
const sendQueue = yield* _(Queue.unbounded());
|
|
101
|
+
const run = handler => Effect.gen(function* (_) {
|
|
102
|
+
const ws = yield* _(acquire);
|
|
103
|
+
const encoder = new TextEncoder();
|
|
104
|
+
const fiberSet = yield* _(FiberSet.make());
|
|
105
|
+
const run = yield* _(FiberSet.runtime(fiberSet)(), Effect.provideService(WebSocket, ws));
|
|
106
|
+
ws.onmessage = event => {
|
|
107
|
+
run(handler(event.data instanceof Uint8Array ? event.data : typeof event.data === "string" ? encoder.encode(event.data) : new Uint8Array(event.data)));
|
|
108
|
+
};
|
|
109
|
+
if (ws.readyState !== IsoWebSocket.OPEN) {
|
|
110
|
+
yield* _(Effect.async(resume => {
|
|
111
|
+
ws.onopen = () => {
|
|
112
|
+
resume(Effect.unit);
|
|
113
|
+
};
|
|
114
|
+
ws.onerror = error_ => {
|
|
115
|
+
resume(Effect.fail(new SocketError({
|
|
116
|
+
reason: "Open",
|
|
117
|
+
error: error_.message
|
|
118
|
+
})));
|
|
119
|
+
};
|
|
120
|
+
}));
|
|
121
|
+
}
|
|
122
|
+
yield* _(Queue.take(sendQueue), Effect.tap(chunk => Effect.try({
|
|
123
|
+
try: () => ws.send(chunk),
|
|
124
|
+
catch: error => Effect.fail(new SocketError({
|
|
125
|
+
reason: "Write",
|
|
126
|
+
error: error.message
|
|
127
|
+
}))
|
|
128
|
+
})), Effect.forever, Effect.fork);
|
|
129
|
+
yield* _(Effect.async(resume => {
|
|
130
|
+
ws.onclose = event => {
|
|
131
|
+
if (closeCodeIsError(event.code)) {
|
|
132
|
+
resume(Effect.fail(new SocketError({
|
|
133
|
+
reason: "Close",
|
|
134
|
+
error: event
|
|
135
|
+
})));
|
|
136
|
+
} else {
|
|
137
|
+
resume(Effect.unit);
|
|
138
|
+
}
|
|
139
|
+
};
|
|
140
|
+
ws.onerror = error => {
|
|
141
|
+
resume(Effect.fail(new SocketError({
|
|
142
|
+
reason: "Read",
|
|
143
|
+
error: error.message
|
|
144
|
+
})));
|
|
145
|
+
};
|
|
146
|
+
}), Effect.raceFirst(FiberSet.join(fiberSet)));
|
|
147
|
+
}).pipe(Effect.scoped);
|
|
148
|
+
const write = chunk => Queue.offer(sendQueue, chunk);
|
|
149
|
+
const writer = Effect.succeed(write);
|
|
150
|
+
return Socket.of({
|
|
151
|
+
[SocketTypeId]: SocketTypeId,
|
|
152
|
+
run,
|
|
153
|
+
writer
|
|
154
|
+
});
|
|
155
|
+
});
|
|
156
|
+
/**
|
|
157
|
+
* @since 1.0.0
|
|
158
|
+
* @category constructors
|
|
159
|
+
*/
|
|
160
|
+
export const makeWebSocketChannel = (url, options) => Channel.unwrapScoped(Effect.map(makeWebSocket(url, options), toChannelWith()));
|
|
161
|
+
/**
|
|
162
|
+
* @since 1.0.0
|
|
163
|
+
* @category layers
|
|
164
|
+
*/
|
|
165
|
+
export const layerWebSocket = (url, options) => Layer.scoped(Socket, makeWebSocket(url, options));
|
|
166
|
+
//# sourceMappingURL=Socket.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Socket.js","names":["Cause","Channel","Chunk","Context","Data","Effect","Exit","FiberSet","Layer","Queue","Scope","IsoWebSocket","SocketTypeId","Symbol","for","Socket","GenericTag","SocketError","TaggedError","toString","reason","error","toChannel","self","unwrap","gen","_","writeScope","make","write","extend","writer","exitQueue","unbounded","input","awaitRead","unit","emit","chunk","catchAllCause","forEach","discard","cause","offer","failCause","zipRight","close","done","run","data","succeed","of","empty","exit","tap","fork","loop","flatMap","take","match","onFailure","isEmptyType","onSuccess","embedInput","toChannelWith","makeChannel","map","defaultCloseCodeIsError","code","WebSocket","makeWebSocket","url","options","fromWebSocket","acquireRelease","WS","globalThis","ws","sync","acquire","closeCodeIsError","sendQueue","handler","encoder","TextEncoder","fiberSet","runtime","provideService","onmessage","event","Uint8Array","encode","readyState","OPEN","async","resume","onopen","onerror","error_","fail","message","try","send","catch","forever","onclose","raceFirst","join","pipe","scoped","makeWebSocketChannel","unwrapScoped","layerWebSocket"],"sources":["../../src/Socket.ts"],"sourcesContent":[null],"mappings":"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"}
|
package/dist/esm/index.js
CHANGED
|
@@ -34,10 +34,18 @@ export * as KeyValueStore from "./KeyValueStore.js";
|
|
|
34
34
|
* @since 1.0.0
|
|
35
35
|
*/
|
|
36
36
|
export * as Path from "./Path.js";
|
|
37
|
+
/**
|
|
38
|
+
* @since 1.0.0
|
|
39
|
+
*/
|
|
40
|
+
export * as PlatformLogger from "./PlatformLogger.js";
|
|
37
41
|
/**
|
|
38
42
|
* @since 1.0.0
|
|
39
43
|
*/
|
|
40
44
|
export * as Runtime from "./Runtime.js";
|
|
45
|
+
/**
|
|
46
|
+
* @since 1.0.0
|
|
47
|
+
*/
|
|
48
|
+
export * as Socket from "./Socket.js";
|
|
41
49
|
/**
|
|
42
50
|
* @since 1.0.0
|
|
43
51
|
*/
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["Command","CommandExecutor","Effectify","Error","FileSystem","HttpClient","HttpServer","KeyValueStore","Path","Runtime","Template","Terminal","Transferable","Worker","WorkerError","WorkerRunner"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,OAAO,KAAKA,OAAO,MAAM,cAAc;AAEvC;;;AAGA,OAAO,KAAKC,eAAe,MAAM,sBAAsB;AAEvD;;;AAGA,OAAO,KAAKC,SAAS,MAAM,gBAAgB;AAE3C;;;AAGA,OAAO,KAAKC,KAAK,MAAM,YAAY;AAEnC;;;AAGA,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAE7C;;;AAGA,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAE7C;;;AAGA,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAE7C;;;AAGA,OAAO,KAAKC,aAAa,MAAM,oBAAoB;AAEnD;;;AAGA,OAAO,KAAKC,IAAI,MAAM,WAAW;AAEjC;;;AAGA,OAAO,KAAKC,OAAO,MAAM,cAAc;AAEvC;;;AAGA,OAAO,KAAKC,QAAQ,MAAM,eAAe;AAEzC;;;AAGA,OAAO,KAAKC,QAAQ,MAAM,eAAe;AAEzC;;;AAGA,OAAO,KAAKC,YAAY,MAAM,mBAAmB;AAEjD;;;AAGA,OAAO,KAAKC,MAAM,MAAM,aAAa;AAErC;;;AAGA,OAAO,KAAKC,WAAW,MAAM,kBAAkB;AAE/C;;;AAGA,OAAO,KAAKC,YAAY,MAAM,mBAAmB"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["Command","CommandExecutor","Effectify","Error","FileSystem","HttpClient","HttpServer","KeyValueStore","Path","PlatformLogger","Runtime","Socket","Template","Terminal","Transferable","Worker","WorkerError","WorkerRunner"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,OAAO,KAAKA,OAAO,MAAM,cAAc;AAEvC;;;AAGA,OAAO,KAAKC,eAAe,MAAM,sBAAsB;AAEvD;;;AAGA,OAAO,KAAKC,SAAS,MAAM,gBAAgB;AAE3C;;;AAGA,OAAO,KAAKC,KAAK,MAAM,YAAY;AAEnC;;;AAGA,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAE7C;;;AAGA,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAE7C;;;AAGA,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAE7C;;;AAGA,OAAO,KAAKC,aAAa,MAAM,oBAAoB;AAEnD;;;AAGA,OAAO,KAAKC,IAAI,MAAM,WAAW;AAEjC;;;AAGA,OAAO,KAAKC,cAAc,MAAM,qBAAqB;AAErD;;;AAGA,OAAO,KAAKC,OAAO,MAAM,cAAc;AAEvC;;;AAGA,OAAO,KAAKC,MAAM,MAAM,aAAa;AAErC;;;AAGA,OAAO,KAAKC,QAAQ,MAAM,eAAe;AAEzC;;;AAGA,OAAO,KAAKC,QAAQ,MAAM,eAAe;AAEzC;;;AAGA,OAAO,KAAKC,YAAY,MAAM,mBAAmB;AAEjD;;;AAGA,OAAO,KAAKC,MAAM,MAAM,aAAa;AAErC;;;AAGA,OAAO,KAAKC,WAAW,MAAM,kBAAkB;AAE/C;;;AAGA,OAAO,KAAKC,YAAY,MAAM,mBAAmB"}
|
|
@@ -6,6 +6,7 @@ import * as Effectable from "effect/Effectable";
|
|
|
6
6
|
import { dual } from "effect/Function";
|
|
7
7
|
import * as Inspectable from "effect/Inspectable";
|
|
8
8
|
import * as Option from "effect/Option";
|
|
9
|
+
import * as Predicate from "effect/Predicate";
|
|
9
10
|
import * as FindMyWay from "find-my-way-ts";
|
|
10
11
|
import * as Error from "../../Http/ServerError.js";
|
|
11
12
|
import * as ServerRequest from "../../Http/ServerRequest.js";
|
|
@@ -71,7 +72,7 @@ class RouterImpl extends Effectable.StructuralClass {
|
|
|
71
72
|
}
|
|
72
73
|
const toHttpApp = self => {
|
|
73
74
|
const router = FindMyWay.make();
|
|
74
|
-
const mounts = Chunk.toReadonlyArray(self.mounts);
|
|
75
|
+
const mounts = Chunk.toReadonlyArray(self.mounts).map(([path, app, options]) => [path, new RouteContextImpl(new RouteImpl("*", options?.includePrefix ? `${path}/*` : "/*", app, options?.includePrefix ? Option.none() : Option.some(path)), {}, {}), options]);
|
|
75
76
|
const mountsLen = mounts.length;
|
|
76
77
|
Chunk.forEach(self.routes, route => {
|
|
77
78
|
if (route.method === "*") {
|
|
@@ -83,9 +84,9 @@ const toHttpApp = self => {
|
|
|
83
84
|
return Effect.flatMap(ServerRequest.ServerRequest, request => {
|
|
84
85
|
if (mountsLen > 0) {
|
|
85
86
|
for (let i = 0; i < mountsLen; i++) {
|
|
86
|
-
const [path,
|
|
87
|
+
const [path, context, options] = mounts[i];
|
|
87
88
|
if (request.url.startsWith(path)) {
|
|
88
|
-
return Effect.provideService(
|
|
89
|
+
return Effect.provideService(Effect.provideService(context.route.handler, RouteContext, context), ServerRequest.ServerRequest, options?.includePrefix ? request : sliceRequestUrl(request, path));
|
|
89
90
|
}
|
|
90
91
|
}
|
|
91
92
|
}
|
|
@@ -154,7 +155,7 @@ export const prefixAll = /*#__PURE__*/dual(2, (self, prefix) => {
|
|
|
154
155
|
/** @internal */
|
|
155
156
|
export const mount = /*#__PURE__*/dual(3, (self, path, that) => concat(self, prefixAll(that, path)));
|
|
156
157
|
/** @internal */
|
|
157
|
-
export const mountApp = /*#__PURE__*/dual(
|
|
158
|
+
export const mountApp = /*#__PURE__*/dual(args => Predicate.hasProperty(args[0], TypeId), (self, path, that, options) => new RouterImpl(self.routes, Chunk.append(self.mounts, [removeTrailingSlash(path), that, options])));
|
|
158
159
|
/** @internal */
|
|
159
160
|
export const route = method => dual(3, (self, path, handler) => new RouterImpl(Chunk.append(self.routes, new RouteImpl(method, path, handler)), self.mounts));
|
|
160
161
|
/** @internal */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"router.js","names":["Schema","Chunk","Context","Effect","Effectable","dual","Inspectable","Option","FindMyWay","Error","ServerRequest","TypeId","Symbol","for","RouteTypeId","RouteContextTypeId","RouteContext","GenericTag","params","map","_","searchParams","schemaParams","schema","parse","decodeUnknown","flatMap","schemaPathParams","schemaSearchParams","RouterImpl","StructuralClass","routes","mounts","constructor","httpApp","toHttpApp","commit","toJSON","_id","toString","format","NodeInspectSymbol","self","router","make","toReadonlyArray","mountsLen","length","forEach","route","method","all","path","on","request","i","app","url","startsWith","provideService","sliceRequestUrl","result","find","undefined","fail","RouteNotFound","handler","prefix","_tag","value","mapInputContext","context","add","RouteContextImpl","prefexLen","modify","slice","RouteImpl","none","empty","fromIterable","makeRoute","concat","that","appendAll","removeTrailingSlash","endsWith","prefixAll","orElse","some","mount","mountApp","append","get","post","put","patch","del","head","options","use","f","catchAll","catchAllCause","catchTag","k","catchTags","cases","tag","service","provideServiceEffect","effect"],"sources":["../../../../src/internal/http/router.ts"],"sourcesContent":[null],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"router.js","names":["Schema","Chunk","Context","Effect","Effectable","dual","Inspectable","Option","Predicate","FindMyWay","Error","ServerRequest","TypeId","Symbol","for","RouteTypeId","RouteContextTypeId","RouteContext","GenericTag","params","map","_","searchParams","schemaParams","schema","parse","decodeUnknown","flatMap","schemaPathParams","schemaSearchParams","RouterImpl","StructuralClass","routes","mounts","constructor","httpApp","toHttpApp","commit","toJSON","_id","toString","format","NodeInspectSymbol","self","router","make","toReadonlyArray","path","app","options","RouteContextImpl","RouteImpl","includePrefix","none","some","mountsLen","length","forEach","route","method","all","on","request","i","context","url","startsWith","provideService","handler","sliceRequestUrl","result","find","undefined","fail","RouteNotFound","prefix","_tag","value","mapInputContext","add","prefexLen","modify","slice","empty","fromIterable","makeRoute","concat","that","appendAll","removeTrailingSlash","endsWith","prefixAll","orElse","mount","mountApp","args","hasProperty","append","get","post","put","patch","del","head","use","f","catchAll","catchAllCause","catchTag","k","catchTags","cases","tag","service","provideServiceEffect","effect"],"sources":["../../../../src/internal/http/router.ts"],"sourcesContent":[null],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import * as Channel from "effect/Channel";
|
|
1
2
|
import * as Context from "effect/Context";
|
|
2
3
|
import * as Effect from "effect/Effect";
|
|
3
4
|
import * as Option from "effect/Option";
|
|
@@ -7,11 +8,16 @@ import * as IncomingMessage from "../../Http/IncomingMessage.js";
|
|
|
7
8
|
import * as Multipart from "../../Http/Multipart.js";
|
|
8
9
|
import * as Error from "../../Http/ServerError.js";
|
|
9
10
|
import * as UrlParams from "../../Http/UrlParams.js";
|
|
11
|
+
import * as Socket from "../../Socket.js";
|
|
10
12
|
/** @internal */
|
|
11
13
|
export const TypeId = /*#__PURE__*/Symbol.for("@effect/platform/Http/ServerRequest");
|
|
12
14
|
/** @internal */
|
|
13
15
|
export const serverRequestTag = /*#__PURE__*/Context.GenericTag("@effect/platform/Http/ServerRequest");
|
|
14
16
|
/** @internal */
|
|
17
|
+
export const upgrade = /*#__PURE__*/Effect.flatMap(serverRequestTag, request => request.upgrade);
|
|
18
|
+
/** @internal */
|
|
19
|
+
export const upgradeChannel = () => Channel.unwrap(Effect.map(upgrade, Socket.toChannelWith()));
|
|
20
|
+
/** @internal */
|
|
15
21
|
export const multipartPersisted = /*#__PURE__*/Effect.flatMap(serverRequestTag, request => request.multipart);
|
|
16
22
|
/** @internal */
|
|
17
23
|
export const schemaHeaders = schema => {
|
|
@@ -165,5 +171,12 @@ class ServerRequestImpl {
|
|
|
165
171
|
})));
|
|
166
172
|
return this.arrayBufferEffect;
|
|
167
173
|
}
|
|
174
|
+
get upgrade() {
|
|
175
|
+
return Effect.fail(Error.RequestError({
|
|
176
|
+
request: this,
|
|
177
|
+
reason: "Decode",
|
|
178
|
+
error: "Not an upgradeable ServerRequest"
|
|
179
|
+
}));
|
|
180
|
+
}
|
|
168
181
|
}
|
|
169
182
|
//# sourceMappingURL=serverRequest.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serverRequest.js","names":["Context","Effect","Option","Stream","Headers","IncomingMessage","Multipart","Error","UrlParams","TypeId","Symbol","for","serverRequestTag","GenericTag","
|
|
1
|
+
{"version":3,"file":"serverRequest.js","names":["Channel","Context","Effect","Option","Stream","Headers","IncomingMessage","Multipart","Error","UrlParams","Socket","TypeId","Symbol","for","serverRequestTag","GenericTag","upgrade","flatMap","request","upgradeChannel","unwrap","map","toChannelWith","multipartPersisted","multipart","schemaHeaders","schema","parse","schemaBodyJson","isMultipart","headers","toLowerCase","includes","schemaBodyForm","parseMultipart","schemaPersisted","parseUrlParams","schemaBodyUrlParams","schemaBodyMultipart","schemaBodyFormJson","schemaJson","field","mapError","error","RequestError","reason","urlParamsBody","fromWeb","ServerRequestImpl","url","source","headersOverride","remoteAddressOverride","constructor","modify","options","remoteAddress","method","toUpperCase","originalUrl","some","none","fromInput","stream","body","fromReadableStream","_","fail","textEffect","text","runSync","cached","tryPromise","try","catch","json","tryMap","JSON","URLSearchParams","multipartEffect","toPersisted","multipartStream","pipeThroughChannel","MultipartError","makeChannel","arrayBufferEffect","arrayBuffer"],"sources":["../../../../src/internal/http/serverRequest.ts"],"sourcesContent":[null],"mappings":"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"}
|