@kaito-http/core 4.0.0-beta.2 → 4.0.0-beta.21

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.
@@ -0,0 +1,38 @@
1
+ import {
2
+ BaseSchema,
3
+ KArray,
4
+ KBoolean,
5
+ KLiteral,
6
+ KNull,
7
+ KNumber,
8
+ KObject,
9
+ KObjectFromURLSearchParams,
10
+ KRef,
11
+ KScalar,
12
+ KString,
13
+ KUnion,
14
+ ParseContext,
15
+ STRING_FORMAT_REGEXES,
16
+ SchemaError,
17
+ isPrimitiveJSONValue,
18
+ k
19
+ } from "../chunk-TL3E52YN.js";
20
+ export {
21
+ BaseSchema,
22
+ KArray,
23
+ KBoolean,
24
+ KLiteral,
25
+ KNull,
26
+ KNumber,
27
+ KObject,
28
+ KObjectFromURLSearchParams,
29
+ KRef,
30
+ KScalar,
31
+ KString,
32
+ KUnion,
33
+ ParseContext,
34
+ STRING_FORMAT_REGEXES,
35
+ SchemaError,
36
+ isPrimitiveJSONValue,
37
+ k
38
+ };
@@ -43,23 +43,20 @@ var KaitoSSEResponse = class extends Response {
43
43
  }
44
44
  };
45
45
  function sseEventToString(event) {
46
- let result = "";
46
+ const lines = [];
47
47
  if (event.event) {
48
- result += `event:${event.event}
49
- `;
48
+ lines.push(`event:${event.event}`);
50
49
  }
51
50
  if (event.id) {
52
- result += `id:${event.id}
53
- `;
51
+ lines.push(`id:${event.id}`);
54
52
  }
55
53
  if (event.retry) {
56
- result += `retry:${event.retry}
57
- `;
54
+ lines.push(`retry:${event.retry}`);
58
55
  }
59
56
  if (event.data !== void 0) {
60
- result += `data:${JSON.stringify(event.data)}`;
57
+ lines.push(`data:${JSON.stringify(event.data)}`);
61
58
  }
62
- return result;
59
+ return lines.join("\n");
63
60
  }
64
61
  var SSEController = class {
65
62
  controller;
@@ -1,3 +1,6 @@
1
+ import { JSONValue } from '../schema/schema.cjs';
2
+ import 'openapi3-ts/oas31';
3
+
1
4
  declare class KaitoSSEResponse<_T> extends Response {
2
5
  constructor(body: ReadableStream<string>, init?: ResponseInit);
3
6
  get [Symbol.toStringTag](): string;
@@ -17,20 +20,20 @@ type SSEEvent<T, E extends string> = ({
17
20
  * @param event The SSE Event
18
21
  * @returns A stringified version
19
22
  */
20
- declare function sseEventToString(event: SSEEvent<unknown, string>): string;
21
- declare class SSEController<U, E extends string> implements Disposable {
23
+ declare function sseEventToString(event: SSEEvent<JSONValue, string>): string;
24
+ declare class SSEController<U extends JSONValue, E extends string, T extends SSEEvent<U, E>> implements Disposable {
22
25
  private readonly controller;
23
26
  constructor(controller: ReadableStreamDefaultController<string>);
24
- enqueue(event: SSEEvent<U, E>): void;
27
+ enqueue(event: T): void;
25
28
  close(): void;
26
29
  [Symbol.dispose](): void;
27
30
  }
28
- interface SSESource<U, E extends string> {
31
+ interface SSESource<U extends JSONValue, E extends string, T extends SSEEvent<U, E>> {
29
32
  cancel?: UnderlyingSourceCancelCallback;
30
- start?(controller: SSEController<U, E>): Promise<void>;
31
- pull?(controller: SSEController<U, E>): Promise<void>;
33
+ start?(controller: SSEController<U, E, T>): Promise<void>;
34
+ pull?(controller: SSEController<U, E, T>): Promise<void>;
32
35
  }
33
- declare function sse<U, E extends string, T extends SSEEvent<U, E>>(source: SSESource<U, E> | AsyncGenerator<T, unknown, unknown> | (() => AsyncGenerator<T, unknown, unknown>)): KaitoSSEResponse<T>;
34
- declare function sseFromAnyReadable<R, U, E extends string>(stream: ReadableStream<R>, transform: (chunk: R) => SSEEvent<U, E>): KaitoSSEResponse<SSEEvent<U, E>>;
36
+ declare function sse<U extends JSONValue, E extends string, T extends SSEEvent<U, E>>(source: SSESource<U, E, T> | AsyncGenerator<T, unknown, unknown> | (() => AsyncGenerator<T, unknown, unknown>)): KaitoSSEResponse<T>;
37
+ declare function sseFromAnyReadable<R, U extends JSONValue, E extends string>(stream: ReadableStream<R>, transform: (chunk: R) => SSEEvent<U, E>): KaitoSSEResponse<SSEEvent<U, E>>;
35
38
 
36
39
  export { KaitoSSEResponse, SSEController, type SSEEvent, type SSESource, sse, sseEventToString, sseFromAnyReadable };
@@ -1,3 +1,6 @@
1
+ import { JSONValue } from '../schema/schema.js';
2
+ import 'openapi3-ts/oas31';
3
+
1
4
  declare class KaitoSSEResponse<_T> extends Response {
2
5
  constructor(body: ReadableStream<string>, init?: ResponseInit);
3
6
  get [Symbol.toStringTag](): string;
@@ -17,20 +20,20 @@ type SSEEvent<T, E extends string> = ({
17
20
  * @param event The SSE Event
18
21
  * @returns A stringified version
19
22
  */
20
- declare function sseEventToString(event: SSEEvent<unknown, string>): string;
21
- declare class SSEController<U, E extends string> implements Disposable {
23
+ declare function sseEventToString(event: SSEEvent<JSONValue, string>): string;
24
+ declare class SSEController<U extends JSONValue, E extends string, T extends SSEEvent<U, E>> implements Disposable {
22
25
  private readonly controller;
23
26
  constructor(controller: ReadableStreamDefaultController<string>);
24
- enqueue(event: SSEEvent<U, E>): void;
27
+ enqueue(event: T): void;
25
28
  close(): void;
26
29
  [Symbol.dispose](): void;
27
30
  }
28
- interface SSESource<U, E extends string> {
31
+ interface SSESource<U extends JSONValue, E extends string, T extends SSEEvent<U, E>> {
29
32
  cancel?: UnderlyingSourceCancelCallback;
30
- start?(controller: SSEController<U, E>): Promise<void>;
31
- pull?(controller: SSEController<U, E>): Promise<void>;
33
+ start?(controller: SSEController<U, E, T>): Promise<void>;
34
+ pull?(controller: SSEController<U, E, T>): Promise<void>;
32
35
  }
33
- declare function sse<U, E extends string, T extends SSEEvent<U, E>>(source: SSESource<U, E> | AsyncGenerator<T, unknown, unknown> | (() => AsyncGenerator<T, unknown, unknown>)): KaitoSSEResponse<T>;
34
- declare function sseFromAnyReadable<R, U, E extends string>(stream: ReadableStream<R>, transform: (chunk: R) => SSEEvent<U, E>): KaitoSSEResponse<SSEEvent<U, E>>;
36
+ declare function sse<U extends JSONValue, E extends string, T extends SSEEvent<U, E>>(source: SSESource<U, E, T> | AsyncGenerator<T, unknown, unknown> | (() => AsyncGenerator<T, unknown, unknown>)): KaitoSSEResponse<T>;
37
+ declare function sseFromAnyReadable<R, U extends JSONValue, E extends string>(stream: ReadableStream<R>, transform: (chunk: R) => SSEEvent<U, E>): KaitoSSEResponse<SSEEvent<U, E>>;
35
38
 
36
39
  export { KaitoSSEResponse, SSEController, type SSEEvent, type SSESource, sse, sseEventToString, sseFromAnyReadable };
@@ -15,23 +15,20 @@ var KaitoSSEResponse = class extends Response {
15
15
  }
16
16
  };
17
17
  function sseEventToString(event) {
18
- let result = "";
18
+ const lines = [];
19
19
  if (event.event) {
20
- result += `event:${event.event}
21
- `;
20
+ lines.push(`event:${event.event}`);
22
21
  }
23
22
  if (event.id) {
24
- result += `id:${event.id}
25
- `;
23
+ lines.push(`id:${event.id}`);
26
24
  }
27
25
  if (event.retry) {
28
- result += `retry:${event.retry}
29
- `;
26
+ lines.push(`retry:${event.retry}`);
30
27
  }
31
28
  if (event.data !== void 0) {
32
- result += `data:${JSON.stringify(event.data)}`;
29
+ lines.push(`data:${JSON.stringify(event.data)}`);
33
30
  }
34
- return result;
31
+ return lines.join("\n");
35
32
  }
36
33
  var SSEController = class {
37
34
  controller;
package/package.json CHANGED
@@ -1,12 +1,16 @@
1
1
  {
2
2
  "name": "@kaito-http/core",
3
- "version": "4.0.0-beta.2",
3
+ "type": "module",
4
+ "version": "4.0.0-beta.21",
4
5
  "author": "Alistair Smith <hi@alistair.sh>",
5
6
  "repository": "https://github.com/kaito-http/kaito",
7
+ "dependencies": {
8
+ "openapi3-ts": "^4.5.0"
9
+ },
6
10
  "devDependencies": {
7
11
  "@arethetypeswrong/cli": "^0.17.2",
8
12
  "tsup": "^8.3.5",
9
- "typescript": "^5.7.3"
13
+ "typescript": "5.9.2"
10
14
  },
11
15
  "exports": {
12
16
  "./package.json": "./package.json",
@@ -43,12 +47,5 @@
43
47
  "build": "tsup",
44
48
  "attw": "attw --profile node16 --pack .",
45
49
  "test": "node --test --import=tsx ./src/**/*.test.ts"
46
- },
47
- "type": "module",
48
- "peerDependencies": {
49
- "zod": "^3.24.1"
50
- },
51
- "dependencies": {
52
- "zod-openapi": "^4.2.3"
53
50
  }
54
51
  }