@econ-v1/app-sdk 7.6.64 → 7.6.66
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.
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* they become. Everything here is data; `classifySpecifier` is the only
|
|
4
4
|
* decision function.
|
|
5
5
|
*/
|
|
6
|
-
export declare const BURGER_MODULES: readonly ["burger:host", "burger:fs", "burger:fs/promises", "burger:path", "burger:os", "burger:worker_threads", "burger:crypto", "burger:buffer", "burger:sqlite", "burger:zlib", "burger:async_hooks", "burger:zod", "burger:test"];
|
|
6
|
+
export declare const BURGER_MODULES: readonly ["burger:host", "burger:fs", "burger:fs/promises", "burger:path", "burger:os", "burger:worker_threads", "burger:crypto", "burger:buffer", "burger:sqlite", "burger:zlib", "burger:async_hooks", "burger:zod", "burger:net", "burger:tls", "burger:dns/promises", "burger:test"];
|
|
7
7
|
export type BurgerModule = (typeof BURGER_MODULES)[number];
|
|
8
8
|
/** C5/C6 "Aliased from" columns (plus `fs/promises`, the module form of `fs.promises`). */
|
|
9
9
|
export declare const ALIASES: ReadonlyMap<string, BurgerModule>;
|
|
@@ -42,6 +42,12 @@ export declare const NODE_BUILTINS: ReadonlySet<string>;
|
|
|
42
42
|
* `burger:zod` (node-app-burger ADR 015, >= 0.3.12) has no `node:`/`bun:`
|
|
43
43
|
* alias: an app imports it by name (`import { install } from "burger:zod";
|
|
44
44
|
* install(z);`) to compile its zod 3 schemas into plain check functions.
|
|
45
|
+
*
|
|
46
|
+
* SOCKET PACK (node-app-burger ADR 018, >= 0.3.15): `burger:net`, `burger:tls`
|
|
47
|
+
* and `burger:dns/promises` are a client subset, what node-app-api-store's
|
|
48
|
+
* timed HTTP client (ADR-120) uses: `net.connect`/`createConnection`, `isIP`,
|
|
49
|
+
* `Socket` (no `createServer`), `tls.connect` with certificate checks always
|
|
50
|
+
* on (`rejectUnauthorized: false` throws), and `lookup`.
|
|
45
51
|
*/
|
|
46
52
|
export declare const BURGER_EXPORTS: Readonly<Record<BurgerModule, readonly string[]>>;
|
|
47
53
|
/**
|
package/dist/burger-build/cli.js
CHANGED
|
@@ -35,6 +35,9 @@ var BURGER_MODULES = [
|
|
|
35
35
|
"burger:zlib",
|
|
36
36
|
"burger:async_hooks",
|
|
37
37
|
"burger:zod",
|
|
38
|
+
"burger:net",
|
|
39
|
+
"burger:tls",
|
|
40
|
+
"burger:dns/promises",
|
|
38
41
|
"burger:test"
|
|
39
42
|
];
|
|
40
43
|
var ALIASES = new Map([
|
|
@@ -57,7 +60,13 @@ var ALIASES = new Map([
|
|
|
57
60
|
["zlib", "burger:zlib"],
|
|
58
61
|
["node:async_hooks", "burger:async_hooks"],
|
|
59
62
|
["async_hooks", "burger:async_hooks"],
|
|
60
|
-
["bun:test", "burger:test"]
|
|
63
|
+
["bun:test", "burger:test"],
|
|
64
|
+
["node:net", "burger:net"],
|
|
65
|
+
["net", "burger:net"],
|
|
66
|
+
["node:tls", "burger:tls"],
|
|
67
|
+
["tls", "burger:tls"],
|
|
68
|
+
["node:dns/promises", "burger:dns/promises"],
|
|
69
|
+
["dns/promises", "burger:dns/promises"]
|
|
61
70
|
]);
|
|
62
71
|
var NODE_BUILTINS = new Set([
|
|
63
72
|
"_http_agent",
|
|
@@ -218,6 +227,9 @@ var BURGER_EXPORTS = {
|
|
|
218
227
|
],
|
|
219
228
|
"burger:async_hooks": ["AsyncLocalStorage"],
|
|
220
229
|
"burger:zod": ["install", "compile"],
|
|
230
|
+
"burger:net": ["Socket", "connect", "createConnection", "isIP", "isIPv4", "isIPv6"],
|
|
231
|
+
"burger:tls": ["TLSSocket", "connect"],
|
|
232
|
+
"burger:dns/promises": ["lookup"],
|
|
221
233
|
"burger:test": [
|
|
222
234
|
"describe",
|
|
223
235
|
"test",
|
|
@@ -243,7 +255,10 @@ var BURGER_DEFAULT_EXPORT = {
|
|
|
243
255
|
"burger:sqlite": true,
|
|
244
256
|
"burger:zlib": true,
|
|
245
257
|
"burger:async_hooks": true,
|
|
246
|
-
"burger:zod": true
|
|
258
|
+
"burger:zod": true,
|
|
259
|
+
"burger:net": true,
|
|
260
|
+
"burger:tls": true,
|
|
261
|
+
"burger:dns/promises": true
|
|
247
262
|
};
|
|
248
263
|
var BURGER_MODULE_SET = new Set(BURGER_MODULES);
|
|
249
264
|
function classifySpecifier(specifier) {
|
|
@@ -30,6 +30,9 @@ var BURGER_MODULES = [
|
|
|
30
30
|
"burger:zlib",
|
|
31
31
|
"burger:async_hooks",
|
|
32
32
|
"burger:zod",
|
|
33
|
+
"burger:net",
|
|
34
|
+
"burger:tls",
|
|
35
|
+
"burger:dns/promises",
|
|
33
36
|
"burger:test"
|
|
34
37
|
];
|
|
35
38
|
var ALIASES = new Map([
|
|
@@ -52,7 +55,13 @@ var ALIASES = new Map([
|
|
|
52
55
|
["zlib", "burger:zlib"],
|
|
53
56
|
["node:async_hooks", "burger:async_hooks"],
|
|
54
57
|
["async_hooks", "burger:async_hooks"],
|
|
55
|
-
["bun:test", "burger:test"]
|
|
58
|
+
["bun:test", "burger:test"],
|
|
59
|
+
["node:net", "burger:net"],
|
|
60
|
+
["net", "burger:net"],
|
|
61
|
+
["node:tls", "burger:tls"],
|
|
62
|
+
["tls", "burger:tls"],
|
|
63
|
+
["node:dns/promises", "burger:dns/promises"],
|
|
64
|
+
["dns/promises", "burger:dns/promises"]
|
|
56
65
|
]);
|
|
57
66
|
var NODE_BUILTINS = new Set([
|
|
58
67
|
"_http_agent",
|
|
@@ -213,6 +222,9 @@ var BURGER_EXPORTS = {
|
|
|
213
222
|
],
|
|
214
223
|
"burger:async_hooks": ["AsyncLocalStorage"],
|
|
215
224
|
"burger:zod": ["install", "compile"],
|
|
225
|
+
"burger:net": ["Socket", "connect", "createConnection", "isIP", "isIPv4", "isIPv6"],
|
|
226
|
+
"burger:tls": ["TLSSocket", "connect"],
|
|
227
|
+
"burger:dns/promises": ["lookup"],
|
|
216
228
|
"burger:test": [
|
|
217
229
|
"describe",
|
|
218
230
|
"test",
|
|
@@ -238,7 +250,10 @@ var BURGER_DEFAULT_EXPORT = {
|
|
|
238
250
|
"burger:sqlite": true,
|
|
239
251
|
"burger:zlib": true,
|
|
240
252
|
"burger:async_hooks": true,
|
|
241
|
-
"burger:zod": true
|
|
253
|
+
"burger:zod": true,
|
|
254
|
+
"burger:net": true,
|
|
255
|
+
"burger:tls": true,
|
|
256
|
+
"burger:dns/promises": true
|
|
242
257
|
};
|
|
243
258
|
var BURGER_MODULE_SET = new Set(BURGER_MODULES);
|
|
244
259
|
function classifySpecifier(specifier) {
|
|
@@ -24,3 +24,10 @@ declare module "zlib" { export * from "burger:zlib"; export { default } from "bu
|
|
|
24
24
|
declare module "node:async_hooks" { export * from "burger:async_hooks"; export { default } from "burger:async_hooks"; }
|
|
25
25
|
declare module "async_hooks" { export * from "burger:async_hooks"; export { default } from "burger:async_hooks"; }
|
|
26
26
|
declare module "bun:test" { export * from "burger:test"; }
|
|
27
|
+
// Socket pack (node-app-burger ADR 018, >= 0.3.15): the client subset of net, tls and dns/promises.
|
|
28
|
+
declare module "node:net" { export * from "burger:net"; export { default } from "burger:net"; }
|
|
29
|
+
declare module "net" { export * from "burger:net"; export { default } from "burger:net"; }
|
|
30
|
+
declare module "node:tls" { export * from "burger:tls"; export { default } from "burger:tls"; }
|
|
31
|
+
declare module "tls" { export * from "burger:tls"; export { default } from "burger:tls"; }
|
|
32
|
+
declare module "node:dns/promises" { export * from "burger:dns/promises"; export { default } from "burger:dns/promises"; }
|
|
33
|
+
declare module "dns/promises" { export * from "burger:dns/promises"; export { default } from "burger:dns/promises"; }
|
|
@@ -511,6 +511,198 @@ declare module "burger:zod" {
|
|
|
511
511
|
export default burgerZod;
|
|
512
512
|
}
|
|
513
513
|
|
|
514
|
+
/** Socket pack (node-app-burger ADR 018, >= 0.3.15): the client subset of `node:net` that
|
|
515
|
+
* node-app-api-store's timed HTTP client (ADR-120) uses. No servers, no IPC paths, no
|
|
516
|
+
* `allowHalfOpen`. At most 32 open sockets per app (one more fails with `EMFILE`). */
|
|
517
|
+
declare module "burger:net" {
|
|
518
|
+
import type { Buffer, BufferEncoding } from "burger:buffer";
|
|
519
|
+
|
|
520
|
+
export interface SocketConnectOpts {
|
|
521
|
+
port: number | string;
|
|
522
|
+
host?: string;
|
|
523
|
+
noDelay?: boolean;
|
|
524
|
+
}
|
|
525
|
+
|
|
526
|
+
export interface SocketAddress {
|
|
527
|
+
address: string;
|
|
528
|
+
family: "IPv4" | "IPv6";
|
|
529
|
+
port: number;
|
|
530
|
+
}
|
|
531
|
+
|
|
532
|
+
export interface SocketEvents {
|
|
533
|
+
connect: [];
|
|
534
|
+
ready: [];
|
|
535
|
+
data: [data: Buffer];
|
|
536
|
+
end: [];
|
|
537
|
+
finish: [];
|
|
538
|
+
drain: [];
|
|
539
|
+
error: [error: Error];
|
|
540
|
+
close: [hadError: boolean];
|
|
541
|
+
lookup: [error: Error | null, address: string, family: number, host: string];
|
|
542
|
+
}
|
|
543
|
+
|
|
544
|
+
type Listener<Args extends unknown[]> = (...args: Args) => void;
|
|
545
|
+
/** Any listener: every function type is assignable to it. */
|
|
546
|
+
export type AnyListener = (...args: never[]) => void;
|
|
547
|
+
|
|
548
|
+
/** A TCP client socket: Node's net.Socket events and methods, the part a client uses. */
|
|
549
|
+
export class Socket {
|
|
550
|
+
constructor(options?: { noDelay?: boolean });
|
|
551
|
+
readonly connecting: boolean;
|
|
552
|
+
readonly destroyed: boolean;
|
|
553
|
+
readonly pending: boolean;
|
|
554
|
+
readonly readable: boolean;
|
|
555
|
+
readonly writable: boolean;
|
|
556
|
+
readonly readyState: "opening" | "open" | "readOnly" | "writeOnly" | "closed";
|
|
557
|
+
readonly remoteAddress: string | undefined;
|
|
558
|
+
readonly remotePort: number | undefined;
|
|
559
|
+
readonly remoteFamily: "IPv4" | "IPv6" | undefined;
|
|
560
|
+
readonly localAddress: string | undefined;
|
|
561
|
+
readonly localPort: number | undefined;
|
|
562
|
+
readonly localFamily: "IPv4" | "IPv6" | undefined;
|
|
563
|
+
readonly bytesRead: number;
|
|
564
|
+
readonly bytesWritten: number;
|
|
565
|
+
connect(options: SocketConnectOpts, connectListener?: () => void): this;
|
|
566
|
+
connect(port: number, host?: string, connectListener?: () => void): this;
|
|
567
|
+
/** `false` once 16 KiB wait to be sent; `drain` follows when they are gone. */
|
|
568
|
+
write(data: string | Uint8Array, callback?: (error: Error | null) => void): boolean;
|
|
569
|
+
write(data: string | Uint8Array, encoding?: BufferEncoding, callback?: (error: Error | null) => void): boolean;
|
|
570
|
+
end(callback?: () => void): this;
|
|
571
|
+
end(data: string | Uint8Array, callback?: () => void): this;
|
|
572
|
+
end(data: string | Uint8Array, encoding?: BufferEncoding, callback?: () => void): this;
|
|
573
|
+
destroy(error?: Error): this;
|
|
574
|
+
pause(): this;
|
|
575
|
+
resume(): this;
|
|
576
|
+
isPaused(): boolean;
|
|
577
|
+
setNoDelay(noDelay?: boolean): this;
|
|
578
|
+
ref(): this;
|
|
579
|
+
unref(): this;
|
|
580
|
+
address(): SocketAddress | Record<string, never>;
|
|
581
|
+
on<Name extends keyof SocketEvents>(event: Name, listener: Listener<SocketEvents[Name]>): this;
|
|
582
|
+
on(event: string | symbol, listener: AnyListener): this;
|
|
583
|
+
addListener<Name extends keyof SocketEvents>(event: Name, listener: Listener<SocketEvents[Name]>): this;
|
|
584
|
+
addListener(event: string | symbol, listener: AnyListener): this;
|
|
585
|
+
prependListener<Name extends keyof SocketEvents>(event: Name, listener: Listener<SocketEvents[Name]>): this;
|
|
586
|
+
prependListener(event: string | symbol, listener: AnyListener): this;
|
|
587
|
+
once<Name extends keyof SocketEvents>(event: Name, listener: Listener<SocketEvents[Name]>): this;
|
|
588
|
+
once(event: string | symbol, listener: AnyListener): this;
|
|
589
|
+
prependOnceListener<Name extends keyof SocketEvents>(event: Name, listener: Listener<SocketEvents[Name]>): this;
|
|
590
|
+
prependOnceListener(event: string | symbol, listener: AnyListener): this;
|
|
591
|
+
off(event: string | symbol, listener: AnyListener): this;
|
|
592
|
+
removeListener(event: string | symbol, listener: AnyListener): this;
|
|
593
|
+
removeAllListeners(event?: string | symbol): this;
|
|
594
|
+
emit(event: string | symbol, ...args: unknown[]): boolean;
|
|
595
|
+
listenerCount(event: string | symbol, listener?: AnyListener): number;
|
|
596
|
+
listeners(event: string | symbol): AnyListener[];
|
|
597
|
+
rawListeners(event: string | symbol): AnyListener[];
|
|
598
|
+
eventNames(): Array<string | symbol>;
|
|
599
|
+
setMaxListeners(n: number): this;
|
|
600
|
+
getMaxListeners(): number;
|
|
601
|
+
}
|
|
602
|
+
|
|
603
|
+
export function connect(options: SocketConnectOpts, connectListener?: () => void): Socket;
|
|
604
|
+
export function connect(port: number, host?: string, connectListener?: () => void): Socket;
|
|
605
|
+
export function createConnection(options: SocketConnectOpts, connectListener?: () => void): Socket;
|
|
606
|
+
export function createConnection(port: number, host?: string, connectListener?: () => void): Socket;
|
|
607
|
+
/** 4, 6, or 0 when `input` is no IP address (Node's patterns, zone ids included). */
|
|
608
|
+
export function isIP(input: string): number;
|
|
609
|
+
export function isIPv4(input: string): boolean;
|
|
610
|
+
export function isIPv6(input: string): boolean;
|
|
611
|
+
|
|
612
|
+
type SocketClass = Socket;
|
|
613
|
+
type SocketConnectOptsType = SocketConnectOpts;
|
|
614
|
+
const net: {
|
|
615
|
+
Socket: typeof Socket;
|
|
616
|
+
connect: typeof connect;
|
|
617
|
+
createConnection: typeof createConnection;
|
|
618
|
+
isIP: typeof isIP;
|
|
619
|
+
isIPv4: typeof isIPv4;
|
|
620
|
+
isIPv6: typeof isIPv6;
|
|
621
|
+
};
|
|
622
|
+
/** `net.Socket` as a type through the default import, as Node's typings allow. */
|
|
623
|
+
namespace net {
|
|
624
|
+
export type Socket = SocketClass;
|
|
625
|
+
export type SocketConnectOpts = SocketConnectOptsType;
|
|
626
|
+
}
|
|
627
|
+
export default net;
|
|
628
|
+
}
|
|
629
|
+
|
|
630
|
+
/** Socket pack (node-app-burger ADR 018, >= 0.3.15): `tls.connect` over rustls, Mozilla's roots
|
|
631
|
+
* plus `NODE_EXTRA_CA_CERTS`, certificate and host checks always on. `rejectUnauthorized: false`
|
|
632
|
+
* and the options that change the handshake (`key`, `cert`, `ciphers`, `minVersion`, ...) throw. */
|
|
633
|
+
declare module "burger:tls" {
|
|
634
|
+
import type { Buffer } from "burger:buffer";
|
|
635
|
+
import { Socket, type AnyListener, type SocketEvents } from "burger:net";
|
|
636
|
+
|
|
637
|
+
export interface ConnectionOptions {
|
|
638
|
+
host?: string;
|
|
639
|
+
port?: number;
|
|
640
|
+
/** A connected or connecting `net.Socket` to run the handshake over. */
|
|
641
|
+
socket?: Socket;
|
|
642
|
+
/** The name the certificate is checked against and sent as SNI. */
|
|
643
|
+
servername?: string;
|
|
644
|
+
ALPNProtocols?: Array<string | Uint8Array> | Uint8Array;
|
|
645
|
+
/** PEM certificates that replace the bundled roots, as Node's `ca`. */
|
|
646
|
+
ca?: string | Buffer | Array<string | Buffer>;
|
|
647
|
+
noDelay?: boolean;
|
|
648
|
+
/** Only `true` (the default) is accepted. */
|
|
649
|
+
rejectUnauthorized?: true;
|
|
650
|
+
}
|
|
651
|
+
|
|
652
|
+
export interface TLSSocketEvents extends SocketEvents {
|
|
653
|
+
secureConnect: [];
|
|
654
|
+
}
|
|
655
|
+
|
|
656
|
+
type Listener<Args extends unknown[]> = (...args: Args) => void;
|
|
657
|
+
|
|
658
|
+
export class TLSSocket extends Socket {
|
|
659
|
+
readonly encrypted: true;
|
|
660
|
+
readonly authorized: boolean;
|
|
661
|
+
readonly authorizationError: Error | null;
|
|
662
|
+
/** The protocol the server chose by ALPN, or `false`. */
|
|
663
|
+
readonly alpnProtocol: string | false;
|
|
664
|
+
/** "TLSv1.3" or "TLSv1.2" once connected; `null` before. */
|
|
665
|
+
getProtocol(): string | null;
|
|
666
|
+
on<Name extends keyof TLSSocketEvents>(event: Name, listener: Listener<TLSSocketEvents[Name]>): this;
|
|
667
|
+
on(event: string | symbol, listener: AnyListener): this;
|
|
668
|
+
once<Name extends keyof TLSSocketEvents>(event: Name, listener: Listener<TLSSocketEvents[Name]>): this;
|
|
669
|
+
once(event: string | symbol, listener: AnyListener): this;
|
|
670
|
+
}
|
|
671
|
+
|
|
672
|
+
export function connect(options: ConnectionOptions, secureConnectListener?: () => void): TLSSocket;
|
|
673
|
+
export function connect(port: number, host?: string, options?: ConnectionOptions, secureConnectListener?: () => void): TLSSocket;
|
|
674
|
+
export function connect(port: number, options?: ConnectionOptions, secureConnectListener?: () => void): TLSSocket;
|
|
675
|
+
|
|
676
|
+
type TLSSocketClass = TLSSocket;
|
|
677
|
+
type ConnectionOptionsType = ConnectionOptions;
|
|
678
|
+
const tls: { TLSSocket: typeof TLSSocket; connect: typeof connect };
|
|
679
|
+
/** `tls.ConnectionOptions` and `tls.TLSSocket` as types through the default import. */
|
|
680
|
+
namespace tls {
|
|
681
|
+
export type TLSSocket = TLSSocketClass;
|
|
682
|
+
export type ConnectionOptions = ConnectionOptionsType;
|
|
683
|
+
}
|
|
684
|
+
export default tls;
|
|
685
|
+
}
|
|
686
|
+
|
|
687
|
+
/** Socket pack (node-app-burger ADR 018, >= 0.3.15): `lookup` from `node:dns/promises`,
|
|
688
|
+
* `getaddrinfo` off the app thread and not cached. `node:dns` itself is not provided. */
|
|
689
|
+
declare module "burger:dns/promises" {
|
|
690
|
+
export interface LookupAddress {
|
|
691
|
+
address: string;
|
|
692
|
+
family: number;
|
|
693
|
+
}
|
|
694
|
+
|
|
695
|
+
export interface LookupOptions {
|
|
696
|
+
family?: 0 | 4 | 6 | "IPv4" | "IPv6";
|
|
697
|
+
all?: boolean;
|
|
698
|
+
}
|
|
699
|
+
|
|
700
|
+
export function lookup(hostname: string, options: LookupOptions & { all: true }): Promise<LookupAddress[]>;
|
|
701
|
+
export function lookup(hostname: string, options?: LookupOptions | 0 | 4 | 6): Promise<LookupAddress>;
|
|
702
|
+
const dnsPromises: { lookup: typeof lookup };
|
|
703
|
+
export default dnsPromises;
|
|
704
|
+
}
|
|
705
|
+
|
|
514
706
|
declare module "burger:buffer" {
|
|
515
707
|
export type BufferEncoding = "utf8" | "utf-8" | "hex" | "base64" | "base64url" | "latin1" | "binary" | "ascii";
|
|
516
708
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@econ-v1/app-sdk",
|
|
3
|
-
"version": "7.6.
|
|
3
|
+
"version": "7.6.66",
|
|
4
4
|
"description": "TypeScript SDK for building Node mini-app plugins (Bun runtime) on the Lightning-powered marketplace daemon",
|
|
5
5
|
"license": "MIT OR Apache-2.0",
|
|
6
6
|
"author": "Node contributors",
|