@oakbun/ws 0.1.0 → 0.1.1
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/index.d.ts +998 -0
- package/package.json +4 -4
- package/dist/core/src/adapter/mysql.d.ts +0 -21
- package/dist/core/src/adapter/mysql.d.ts.map +0 -1
- package/dist/core/src/adapter/postgres.d.ts +0 -16
- package/dist/core/src/adapter/postgres.d.ts.map +0 -1
- package/dist/core/src/adapter/resolve.d.ts +0 -16
- package/dist/core/src/adapter/resolve.d.ts.map +0 -1
- package/dist/core/src/adapter/sqlite.d.ts +0 -17
- package/dist/core/src/adapter/sqlite.d.ts.map +0 -1
- package/dist/core/src/adapter/types.d.ts +0 -29
- package/dist/core/src/adapter/types.d.ts.map +0 -1
- package/dist/core/src/app/audit-wiring.d.ts +0 -6
- package/dist/core/src/app/audit-wiring.d.ts.map +0 -1
- package/dist/core/src/app/body-size-limit.d.ts +0 -29
- package/dist/core/src/app/body-size-limit.d.ts.map +0 -1
- package/dist/core/src/app/compression.d.ts +0 -25
- package/dist/core/src/app/compression.d.ts.map +0 -1
- package/dist/core/src/app/cookies.d.ts +0 -17
- package/dist/core/src/app/cookies.d.ts.map +0 -1
- package/dist/core/src/app/cors.d.ts +0 -65
- package/dist/core/src/app/cors.d.ts.map +0 -1
- package/dist/core/src/app/csrf.d.ts +0 -52
- package/dist/core/src/app/csrf.d.ts.map +0 -1
- package/dist/core/src/app/health.d.ts +0 -36
- package/dist/core/src/app/health.d.ts.map +0 -1
- package/dist/core/src/app/index.d.ts +0 -282
- package/dist/core/src/app/index.d.ts.map +0 -1
- package/dist/core/src/app/logger.d.ts +0 -4
- package/dist/core/src/app/logger.d.ts.map +0 -1
- package/dist/core/src/app/middleware.d.ts +0 -20
- package/dist/core/src/app/middleware.d.ts.map +0 -1
- package/dist/core/src/app/module.d.ts +0 -273
- package/dist/core/src/app/module.d.ts.map +0 -1
- package/dist/core/src/app/plugin.d.ts +0 -112
- package/dist/core/src/app/plugin.d.ts.map +0 -1
- package/dist/core/src/app/rate-limit.d.ts +0 -76
- package/dist/core/src/app/rate-limit.d.ts.map +0 -1
- package/dist/core/src/app/request-id.d.ts +0 -52
- package/dist/core/src/app/request-id.d.ts.map +0 -1
- package/dist/core/src/app/router.d.ts +0 -6
- package/dist/core/src/app/router.d.ts.map +0 -1
- package/dist/core/src/app/scalar.d.ts +0 -40
- package/dist/core/src/app/scalar.d.ts.map +0 -1
- package/dist/core/src/app/secure-headers.d.ts +0 -48
- package/dist/core/src/app/secure-headers.d.ts.map +0 -1
- package/dist/core/src/app/system-ctx.d.ts +0 -3
- package/dist/core/src/app/system-ctx.d.ts.map +0 -1
- package/dist/core/src/app/types.d.ts +0 -277
- package/dist/core/src/app/types.d.ts.map +0 -1
- package/dist/core/src/cli/config/types.d.ts +0 -31
- package/dist/core/src/cli/config/types.d.ts.map +0 -1
- package/dist/core/src/cli/index.d.ts +0 -3
- package/dist/core/src/cli/index.d.ts.map +0 -1
- package/dist/core/src/client/error.d.ts +0 -8
- package/dist/core/src/client/error.d.ts.map +0 -1
- package/dist/core/src/client/index.d.ts +0 -33
- package/dist/core/src/client/index.d.ts.map +0 -1
- package/dist/core/src/client/proxy.d.ts +0 -88
- package/dist/core/src/client/proxy.d.ts.map +0 -1
- package/dist/core/src/client/test-client.d.ts +0 -30
- package/dist/core/src/client/test-client.d.ts.map +0 -1
- package/dist/core/src/cron/index.d.ts +0 -73
- package/dist/core/src/cron/index.d.ts.map +0 -1
- package/dist/core/src/db/index.d.ts +0 -281
- package/dist/core/src/db/index.d.ts.map +0 -1
- package/dist/core/src/db/migrations/diff.d.ts +0 -5
- package/dist/core/src/db/migrations/diff.d.ts.map +0 -1
- package/dist/core/src/db/migrations/generator.d.ts +0 -26
- package/dist/core/src/db/migrations/generator.d.ts.map +0 -1
- package/dist/core/src/db/migrations/index.d.ts +0 -9
- package/dist/core/src/db/migrations/index.d.ts.map +0 -1
- package/dist/core/src/db/migrations/introspect.d.ts +0 -8
- package/dist/core/src/db/migrations/introspect.d.ts.map +0 -1
- package/dist/core/src/db/migrations/migrator.d.ts +0 -10
- package/dist/core/src/db/migrations/migrator.d.ts.map +0 -1
- package/dist/core/src/db/migrations/runner.d.ts +0 -7
- package/dist/core/src/db/migrations/runner.d.ts.map +0 -1
- package/dist/core/src/db/migrations/tracker.d.ts +0 -7
- package/dist/core/src/db/migrations/tracker.d.ts.map +0 -1
- package/dist/core/src/db/migrations/types.d.ts +0 -70
- package/dist/core/src/db/migrations/types.d.ts.map +0 -1
- package/dist/core/src/db/sql.d.ts +0 -148
- package/dist/core/src/db/sql.d.ts.map +0 -1
- package/dist/core/src/errors/index.d.ts +0 -30
- package/dist/core/src/errors/index.d.ts.map +0 -1
- package/dist/core/src/events/handler.d.ts +0 -42
- package/dist/core/src/events/handler.d.ts.map +0 -1
- package/dist/core/src/events/index.d.ts +0 -48
- package/dist/core/src/events/index.d.ts.map +0 -1
- package/dist/core/src/hooks/executor.d.ts +0 -20
- package/dist/core/src/hooks/executor.d.ts.map +0 -1
- package/dist/core/src/hooks/types.d.ts +0 -10
- package/dist/core/src/hooks/types.d.ts.map +0 -1
- package/dist/core/src/index.d.ts +0 -83
- package/dist/core/src/index.d.ts.map +0 -1
- package/dist/core/src/model/index.d.ts +0 -24
- package/dist/core/src/model/index.d.ts.map +0 -1
- package/dist/core/src/openapi/generator.d.ts +0 -58
- package/dist/core/src/openapi/generator.d.ts.map +0 -1
- package/dist/core/src/openapi/zod-to-schema.d.ts +0 -4
- package/dist/core/src/openapi/zod-to-schema.d.ts.map +0 -1
- package/dist/core/src/resource/errors.d.ts +0 -2
- package/dist/core/src/resource/errors.d.ts.map +0 -1
- package/dist/core/src/resource/index.d.ts +0 -98
- package/dist/core/src/resource/index.d.ts.map +0 -1
- package/dist/core/src/resource/zod-table.d.ts +0 -6
- package/dist/core/src/resource/zod-table.d.ts.map +0 -1
- package/dist/core/src/schema/audit.d.ts +0 -25
- package/dist/core/src/schema/audit.d.ts.map +0 -1
- package/dist/core/src/schema/column.d.ts +0 -31
- package/dist/core/src/schema/column.d.ts.map +0 -1
- package/dist/core/src/schema/table.d.ts +0 -68
- package/dist/core/src/schema/table.d.ts.map +0 -1
- package/dist/core/src/service/index.d.ts +0 -27
- package/dist/core/src/service/index.d.ts.map +0 -1
- package/dist/ws/src/adapter.d.ts +0 -56
- package/dist/ws/src/adapter.d.ts.map +0 -1
- package/dist/ws/src/index.d.ts +0 -5
- package/dist/ws/src/index.d.ts.map +0 -1
- package/dist/ws/src/module-augment.d.ts +0 -7
- package/dist/ws/src/module-augment.d.ts.map +0 -1
- package/dist/ws/src/types.d.ts +0 -87
- package/dist/ws/src/types.d.ts.map +0 -1
package/dist/ws/src/types.d.ts
DELETED
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
import type { ZodTypeAny } from 'zod';
|
|
2
|
-
import type { AuthPayload } from 'oakbun';
|
|
3
|
-
import type { BoundVelnDB } from '../../core/src/db/index';
|
|
4
|
-
export interface WsCtx<TData = unknown> {
|
|
5
|
-
/** Matched path params, e.g. { roomId: '42' } for /rooms/:roomId */
|
|
6
|
-
params: Record<string, string>;
|
|
7
|
-
/** Parsed query string from the upgrade request */
|
|
8
|
-
query: Record<string, string | string[]>;
|
|
9
|
-
/**
|
|
10
|
-
* The Bun ServerWebSocket — use ws.send(), ws.close(), ws.subscribe(), etc.
|
|
11
|
-
* Typed with `data: WsCtxData` so ws.data carries ctx.user etc.
|
|
12
|
-
*/
|
|
13
|
-
ws: import('bun').ServerWebSocket<WsCtxData>;
|
|
14
|
-
/**
|
|
15
|
-
* Validated & typed message payload.
|
|
16
|
-
* Only set inside onMessage() when a message schema was defined.
|
|
17
|
-
* Undefined in open / close / drain.
|
|
18
|
-
*/
|
|
19
|
-
data: TData;
|
|
20
|
-
/** Set by jwtPlugin when registered on the app. undefined otherwise. */
|
|
21
|
-
user?: AuthPayload;
|
|
22
|
-
/** Set by dbPlugin when registered on the app. undefined otherwise. */
|
|
23
|
-
db?: BoundVelnDB;
|
|
24
|
-
}
|
|
25
|
-
export interface WsCtxData {
|
|
26
|
-
_wsPath: string;
|
|
27
|
-
params: Record<string, string>;
|
|
28
|
-
query: Record<string, string | string[]>;
|
|
29
|
-
user?: AuthPayload;
|
|
30
|
-
db?: BoundVelnDB;
|
|
31
|
-
[key: string]: unknown;
|
|
32
|
-
_data?: unknown;
|
|
33
|
-
}
|
|
34
|
-
export interface WsHandlers<TMsg = unknown> {
|
|
35
|
-
/** Called when a client opens a connection. ctx.data is undefined here. */
|
|
36
|
-
open?: (ctx: WsCtx<undefined>) => void | Promise<void>;
|
|
37
|
-
/**
|
|
38
|
-
* Called for each incoming message.
|
|
39
|
-
* If a message schema was provided, ctx.data is the validated & typed payload.
|
|
40
|
-
*/
|
|
41
|
-
message?: (ctx: WsCtx<TMsg>, raw: string | Uint8Array) => void | Promise<void>;
|
|
42
|
-
/**
|
|
43
|
-
* Called when a client disconnects.
|
|
44
|
-
* code: WebSocket close code; reason: human-readable string.
|
|
45
|
-
*/
|
|
46
|
-
close?: (ctx: WsCtx<undefined>, code: number, reason: string) => void | Promise<void>;
|
|
47
|
-
/** Called when the send buffer is drained and more data can be written. */
|
|
48
|
-
drain?: (ctx: WsCtx<undefined>) => void | Promise<void>;
|
|
49
|
-
}
|
|
50
|
-
/** Stored internally — one entry per registered WS path. */
|
|
51
|
-
export interface WsRoute {
|
|
52
|
-
/** Registered path pattern, e.g. '/chat' or '/rooms/:id' */
|
|
53
|
-
path: string;
|
|
54
|
-
/** Optional Zod schema to parse incoming messages */
|
|
55
|
-
messageSchema?: ZodTypeAny;
|
|
56
|
-
handlers: WsHandlers<any>;
|
|
57
|
-
/** Reference to the originating module (null for app-level) */
|
|
58
|
-
_module: unknown | null;
|
|
59
|
-
/** Index signature — satisfies WsRouteShape from core */
|
|
60
|
-
[key: string]: unknown;
|
|
61
|
-
}
|
|
62
|
-
/**
|
|
63
|
-
* WsRouteHandler — passed to app.ws() / module.ws().
|
|
64
|
-
*
|
|
65
|
-
* Usage (no schema):
|
|
66
|
-
* app.ws('/chat', { open(ctx) { ... }, message(ctx, raw) { ... } })
|
|
67
|
-
*
|
|
68
|
-
* Usage (with Zod schema — message is typed):
|
|
69
|
-
* app.ws('/chat', {
|
|
70
|
-
* message: z.object({ text: z.string() }),
|
|
71
|
-
* handlers: {
|
|
72
|
-
* message(ctx, raw) { ctx.data.text // ← typed }
|
|
73
|
-
* }
|
|
74
|
-
* })
|
|
75
|
-
*/
|
|
76
|
-
export type WsRouteHandler<TMsg = unknown> = WsHandlers<TMsg> | WsRouteHandlerWithSchema<TMsg>;
|
|
77
|
-
export interface WsRouteHandlerWithSchema<TMsg = unknown> {
|
|
78
|
-
/** Zod schema for incoming messages. Parsed before onMessage is called. */
|
|
79
|
-
message: ZodTypeAny;
|
|
80
|
-
/** Lifecycle callbacks — message(ctx) receives the validated & typed payload */
|
|
81
|
-
handlers: WsHandlers<TMsg>;
|
|
82
|
-
}
|
|
83
|
-
export declare function normalizeWsHandler<TMsg>(handler: WsRouteHandler<TMsg>): {
|
|
84
|
-
messageSchema?: ZodTypeAny;
|
|
85
|
-
handlers: WsHandlers<TMsg>;
|
|
86
|
-
};
|
|
87
|
-
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.ts"],"names":[],"mappings":"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"}
|