@zvndev/powdb-client 0.3.5 → 0.5.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/CHANGELOG.md CHANGED
@@ -6,12 +6,53 @@ All notable changes to `@zvndev/powdb-client`.
6
6
 
7
7
  | Client version | Compatible PowDB server | Notes |
8
8
  |---|---|---|
9
- | 0.3.x | 0.3.x 0.4.x | Wire protocol v1. The client warns only on a major-version mismatch, so any `0.x` server connects. Minor server bumps may add new opcodes; the client tolerates unknown response codes by surfacing `PowDBError`. Pin both ends. |
9
+ | 0.5.x | 0.4.7+ | Adds `client.query(powql, params)` for `$N` parameter binding. The `QueryWithParams` (`0x04`) wire message is only understood by server 0.4.7; parameterized queries against an older server error out. Plain `query(powql)` calls remain compatible with 0.3.x–0.4.x. |
10
+ | 0.4.x | 0.3.x – 0.4.x | Wire protocol v1 plus the optional Connect `username` field. **Multi-user mode requires client ≥0.4.0 AND server ≥0.4.6** (the server enforces roles as of 0.4.6; 0.4.5 accepted the username but did not enforce `readonly`). When `user` is omitted the Connect frame is byte-identical to the 0.3.x shape, so legacy shared-password and no-auth servers work unchanged. |
11
+ | 0.3.x | 0.3.x – 0.4.x | Wire protocol v1. The client warns only on a major-version mismatch, so any `0.x` server connects. Minor server bumps may add new opcodes; the client tolerates unknown response codes by surfacing `PowDBError`. Pin both ends. **Caveat:** the 0.3.x client has no `user` option, so it cannot authenticate to a 0.4.5+ server running in **multi-user mode** (the server requires a username once any named user is defined). Shared-password mode works fine. |
10
12
 
11
13
  The client warns on major-version mismatch with the server during the
12
14
  handshake. Within `0.x`, treat any minor-version skew between client and
13
15
  server as best-effort and pin both ends.
14
16
 
17
+ ## [0.5.0] — 2026-06-10
18
+
19
+ ### Added
20
+ - **Parameter binding** — `client.query(powql, params)` accepts a second
21
+ argument of positional values bound to `$1`, `$2`, … placeholders in the
22
+ PowQL text. Values are sent as a typed parameter list in the new
23
+ `QueryWithParams` (`0x04`) wire message and bound at the token level on the
24
+ server, so they are injection-inert and byte-faithful (a value containing
25
+ PowQL syntax is stored verbatim, never re-parsed). Requires server ≥0.4.7.
26
+
27
+ ### Compatibility
28
+ - Parameterized queries require **server ≥0.4.7**. Plain `query(powql)` (no
29
+ params) is unchanged and still works against 0.3.x–0.4.x servers.
30
+
31
+ ## [0.4.0] — 2026-06-09
32
+
33
+ ### Added
34
+ - `user` option on `ClientOptions` (and therefore `PoolOptions`) for
35
+ multi-user authentication. The username is sent as a length-prefixed
36
+ string appended after the password in the Connect frame, mirroring
37
+ `crates/server/src/protocol.rs`. When omitted, the frame stays
38
+ byte-identical to the 0.3.x legacy shape, so older servers are unaffected.
39
+ - Live integration suite (`pnpm run test:auth`) covering readwrite/readonly
40
+ roles, `permission denied` on readonly writes, and `auth_failed` on
41
+ missing user / wrong password / unknown user.
42
+
43
+ ### Changed
44
+ - Version jumps to **0.4.0** (semver-minor for a feature in 0.x), which also
45
+ intentionally aligns the client's minor with the server's: multi-user mode
46
+ end-to-end requires client ≥0.4.0 and server ≥0.4.6.
47
+ - The exported `Message` Connect variant now carries `username: string | null`.
48
+ Callers constructing Connect frames directly via `encode(...)` must add the
49
+ field (pass `null` for legacy behaviour).
50
+
51
+ ### Fixed
52
+ - `sourceMap`/`declarationMap` disabled in `tsconfig.json` — the tarball no
53
+ longer ships 12 dead `.map` files (they pointed at `src/`, which the 0.3.4
54
+ `files` allowlist already excluded, so they were broken references).
55
+
15
56
  ## [0.3.5] — 2026-06-05
16
57
 
17
58
  ### Fixed
package/README.md CHANGED
@@ -60,6 +60,57 @@ escapeIdent("User"); // → "User" (throws on invalid)
60
60
 
61
61
  `escapeLiteral` accepts `string | number | bigint | boolean | null`. It rejects `NaN`/`Infinity`, `undefined`, objects, arrays, symbols, and `Date` — convert those yourself before passing them in.
62
62
 
63
+ ### Parameter binding (`$N`)
64
+
65
+ For the strongest separation between code and data, pass values as positional `$N` parameters instead of interpolating them. The server binds each placeholder at the **token level** — a string becomes a literal token, never interpolated text — so an injection-shaped value is inert and can never change the query's shape. Placeholders are 1-based (`?` is not a placeholder; `??` is the COALESCE operator).
66
+
67
+ ```typescript
68
+ // Values are passed as the second argument, in $1, $2, … order.
69
+ await client.query("insert User { name := $1, email := $2, age := $3 }", [
70
+ name,
71
+ email,
72
+ age,
73
+ ]);
74
+
75
+ const r = await client.query("User filter .email = $1 { .name }", [email]);
76
+
77
+ // null binds PowQL null; numbers bind as int when integral, float otherwise;
78
+ // bigint always binds as int.
79
+ await client.query("insert User { name := $1, age := $2 }", ["Dana", null]);
80
+ ```
81
+
82
+ `QueryParam` is `string | number | bigint | boolean | null`. The params form sends the `QueryWithParams` (0x04) wire message and **requires powdb-server >= 0.4.7**. The plain `query(q)` and `query(q, { signal })` forms are unchanged.
83
+
84
+ ## Authentication
85
+
86
+ For servers using the legacy shared password (`POWDB_PASSWORD`), pass
87
+ `password` alone. For servers with named users (multi-user mode), pass
88
+ `user` + `password`:
89
+
90
+ ```typescript
91
+ const client = await Client.connect({
92
+ host: "localhost",
93
+ port: 5433,
94
+ user: "alice", // named user (multi-user mode)
95
+ password: "s3cret",
96
+ });
97
+ ```
98
+
99
+ Roles are enforced server-side: a `readonly` user's writes are rejected with
100
+ a `PowDBError` (`code: "query_failed"`, message containing `permission
101
+ denied`) — the connection stays usable for reads. A missing or wrong
102
+ `user`/`password` rejects the handshake with `code: "auth_failed"`.
103
+
104
+ Version matrix for multi-user mode:
105
+
106
+ | | Requirement |
107
+ |---|---|
108
+ | Client | ≥0.4.0 (adds the `user` option) |
109
+ | Server | ≥0.4.6 (enforces roles; 0.4.5 accepted usernames but did not enforce `readonly`) |
110
+
111
+ When `user` is omitted the Connect frame is byte-identical to the 0.3.x
112
+ client's, so legacy shared-password and no-auth servers work unchanged.
113
+
63
114
  ## Connection pooling
64
115
 
65
116
  For multi-query workloads (web servers, batch jobs), use `Pool`:
@@ -239,11 +290,15 @@ Returns a `Promise<Client>`. Options:
239
290
  | `host` | `string` | *(required)* | Server hostname or IP |
240
291
  | `port` | `number` | *(required)* | Server port |
241
292
  | `dbName` | `string` | `"default"` | Database name |
242
- | `password` | `string \| null` | `null` | Server password (if auth is enabled) |
293
+ | `password` | `string \| null` | `null` | Password shared (`POWDB_PASSWORD`) or the named user's |
294
+ | `user` | `string` | *(omitted)* | User name for multi-user servers (see Authentication above). Omit for shared-password / no-auth servers |
243
295
  | `connectTimeoutMs` | `number` | `5000` | Connection timeout in milliseconds |
244
296
  | `tls` | `boolean \| tls.ConnectionOptions` | `false` | Enable TLS; `true` uses system defaults, or pass a `tls.connect` options object |
245
297
 
246
- ### `client.query(query, opts?)`
298
+ > **Multi-user servers:** requires client ≥0.4.0 (`user` option) and server
299
+ > ≥0.4.6 (enforced roles). See the version matrix under Authentication.
300
+
301
+ ### `client.query(query, params?, opts?)`
247
302
 
248
303
  Sends a PowQL query and returns a `Promise<QueryResult>`:
249
304
 
@@ -251,6 +306,8 @@ Sends a PowQL query and returns a `Promise<QueryResult>`:
251
306
  - `{ kind: "scalar", value: string }` — for aggregates (`count`, `sum`, `avg`, etc.)
252
307
  - `{ kind: "ok", affected: bigint }` — for mutations (`insert`, `update`, `delete`)
253
308
 
309
+ `params?: QueryParam[]` — positional values bound to `$1`, `$2`, … placeholders (see Parameter binding above; requires server ≥0.4.7). When omitted, the plain query path is used. The legacy two-argument `query(q, { signal })` form is still accepted — an array second argument is treated as params, an object as options.
310
+
254
311
  `opts.signal?: AbortSignal` — aborts the returned promise (see Cancellation above).
255
312
 
256
313
  Throws a `PowDBError` (see Structured errors above) on any failure.
package/dist/errors.d.ts CHANGED
@@ -41,4 +41,3 @@ export declare class PowDBError extends Error {
41
41
  * to branch on `.code` but TypeScript sees `unknown`.
42
42
  */
43
43
  export declare function isPowDBError(err: unknown): err is PowDBError;
44
- //# sourceMappingURL=errors.d.ts.map
package/dist/errors.js CHANGED
@@ -29,4 +29,3 @@ export class PowDBError extends Error {
29
29
  export function isPowDBError(err) {
30
30
  return err instanceof PowDBError;
31
31
  }
32
- //# sourceMappingURL=errors.js.map
package/dist/escape.d.ts CHANGED
@@ -52,4 +52,3 @@ export declare function escapeLiteral(value: string | number | bigint | boolean
52
52
  * const q = powql`insert ${ident(table)} { name := ${userName} }`;
53
53
  */
54
54
  export declare function powql(strings: TemplateStringsArray, ...values: unknown[]): string;
55
- //# sourceMappingURL=escape.d.ts.map
package/dist/escape.js CHANGED
@@ -121,4 +121,3 @@ function describe(value) {
121
121
  return "object";
122
122
  return t;
123
123
  }
124
- //# sourceMappingURL=escape.js.map
package/dist/index.d.ts CHANGED
@@ -18,7 +18,7 @@ import * as tls from "node:tls";
18
18
  import { EventEmitter } from "node:events";
19
19
  import { type TypedRow, type TypedSchema } from "./typed.js";
20
20
  /** Client library version. Compared to the server's reported version. */
21
- export declare const CLIENT_VERSION = "0.3.5";
21
+ export declare const CLIENT_VERSION = "0.4.0";
22
22
  export type QueryResult = {
23
23
  kind: "rows";
24
24
  columns: string[];
@@ -33,11 +33,27 @@ export type QueryResult = {
33
33
  kind: "message";
34
34
  message: string;
35
35
  };
36
+ /**
37
+ * A value bound to a positional `$N` placeholder in {@link Client.query}.
38
+ *
39
+ * The server binds these at the token level — a string is substituted as a
40
+ * literal token, never interpolated — so injection-shaped input is inert.
41
+ * Numbers bind as ints when integral and floats otherwise; `bigint` always
42
+ * binds as an int; `null` binds PowQL `null`.
43
+ */
44
+ export type QueryParam = string | number | bigint | boolean | null;
36
45
  export interface ClientOptions {
37
46
  host: string;
38
47
  port: number;
39
48
  dbName?: string;
40
49
  password?: string | null;
50
+ /**
51
+ * User name for multi-user authentication. Servers ≥0.4.5 with named users
52
+ * defined require a `(user, password)` pair; role enforcement (readonly vs
53
+ * readwrite) requires server ≥0.4.6. Omit for legacy shared-password or
54
+ * no-auth servers — the Connect frame is then byte-identical to 0.3.x.
55
+ */
56
+ user?: string;
41
57
  /** Connection timeout in ms. Defaults to 5000. */
42
58
  connectTimeoutMs?: number;
43
59
  /**
@@ -93,7 +109,9 @@ export declare class Client extends EventEmitter<ClientEvents> {
93
109
  * destroyed — the server will still eventually send its reply, which we
94
110
  * silently discard so other in-flight queries keep working.
95
111
  */
96
- query(query: string, opts?: {
112
+ query(query: string, paramsOrOpts?: QueryParam[] | {
113
+ signal?: AbortSignal;
114
+ }, maybeOpts?: {
97
115
  signal?: AbortSignal;
98
116
  }): Promise<QueryResult>;
99
117
  /**
@@ -141,8 +159,8 @@ export declare class Client extends EventEmitter<ClientEvents> {
141
159
  private onClose;
142
160
  }
143
161
  export { encode, tryDecode } from "./protocol.js";
144
- export type { Message } from "./protocol.js";
145
- export { MAX_PAYLOAD_SIZE, MAX_ROWS, MAX_COLUMNS, } from "./protocol.js";
162
+ export type { Message, WireParam } from "./protocol.js";
163
+ export { MAX_PAYLOAD_SIZE, MAX_ROWS, MAX_COLUMNS, MAX_PARAMS, } from "./protocol.js";
146
164
  export { escapeLiteral, escapeIdent, ident, powql, PowqlIdent, } from "./escape.js";
147
165
  export { Pool } from "./pool.js";
148
166
  export type { PoolOptions } from "./pool.js";
@@ -150,4 +168,3 @@ export { PowDBError, isPowDBError } from "./errors.js";
150
168
  export type { PowDBErrorCode } from "./errors.js";
151
169
  export { coerceValue, coerceRow, coerceRows, } from "./typed.js";
152
170
  export type { ColumnType, TypedSchema, TypedRow, Coerced, } from "./typed.js";
153
- //# sourceMappingURL=index.d.ts.map
package/dist/index.js CHANGED
@@ -17,11 +17,30 @@
17
17
  import * as net from "node:net";
18
18
  import * as tls from "node:tls";
19
19
  import { EventEmitter } from "node:events";
20
- import { encode, tryDecode } from "./protocol.js";
20
+ import { encode, tryDecode, } from "./protocol.js";
21
21
  import { PowDBError } from "./errors.js";
22
22
  import { coerceRows, } from "./typed.js";
23
23
  /** Client library version. Compared to the server's reported version. */
24
- export const CLIENT_VERSION = "0.3.5";
24
+ export const CLIENT_VERSION = "0.4.0";
25
+ /** Map a JS {@link QueryParam} to its wire encoding. */
26
+ function toWireParam(p) {
27
+ if (p === null)
28
+ return { tag: "null" };
29
+ switch (typeof p) {
30
+ case "string":
31
+ return { tag: "str", value: p };
32
+ case "boolean":
33
+ return { tag: "bool", value: p };
34
+ case "bigint":
35
+ return { tag: "int", value: p };
36
+ case "number":
37
+ return Number.isInteger(p)
38
+ ? { tag: "int", value: BigInt(p) }
39
+ : { tag: "float", value: p };
40
+ default:
41
+ throw new PowDBError(`unsupported query parameter type: ${typeof p}`, "protocol_error");
42
+ }
43
+ }
25
44
  /** Module-level set of host:port pairs we've already warned about. */
26
45
  const versionWarnings = new Set();
27
46
  /** Extract the major component of a dotted version string, e.g. "0.2.0" → "0". */
@@ -63,7 +82,7 @@ export class Client extends EventEmitter {
63
82
  }
64
83
  /** Open a connection, send Connect, wait for ConnectOk. */
65
84
  static async connect(opts) {
66
- const { host, port, dbName = "default", password = null, connectTimeoutMs = 5000, tls: tlsOpt = false, } = opts;
85
+ const { host, port, dbName = "default", password = null, user, connectTimeoutMs = 5000, tls: tlsOpt = false, } = opts;
67
86
  const socket = await openSocket(host, port, connectTimeoutMs, tlsOpt);
68
87
  // We need to read the initial ConnectOk before wiring up the normal
69
88
  // pending-queue machinery, so we do a one-shot handshake here.
@@ -110,7 +129,7 @@ export class Client extends EventEmitter {
110
129
  socket.on("error", onError);
111
130
  socket.on("close", onClose);
112
131
  });
113
- socket.write(encode({ type: "Connect", dbName, password }));
132
+ socket.write(encode({ type: "Connect", dbName, password, username: user ?? null }));
114
133
  const reply = await handshake;
115
134
  if (reply.type === "Error") {
116
135
  socket.destroy();
@@ -143,10 +162,23 @@ export class Client extends EventEmitter {
143
162
  * destroyed — the server will still eventually send its reply, which we
144
163
  * silently discard so other in-flight queries keep working.
145
164
  */
146
- async query(query, opts) {
165
+ async query(query, paramsOrOpts, maybeOpts) {
166
+ // Disambiguate the two overloads:
167
+ // query(q) — no params, no opts
168
+ // query(q, opts) — legacy 2-arg opts form (back-compat)
169
+ // query(q, params) — positional $N parameters
170
+ // query(q, params, opts) — params + opts
171
+ const hasParams = Array.isArray(paramsOrOpts);
172
+ const params = hasParams ? paramsOrOpts : undefined;
173
+ const opts = hasParams
174
+ ? maybeOpts
175
+ : paramsOrOpts;
147
176
  const start = Date.now();
148
177
  try {
149
- const reply = await this.send({ type: "Query", query }, opts);
178
+ const request = params === undefined
179
+ ? { type: "Query", query }
180
+ : { type: "QueryWithParams", query, params: params.map(toWireParam) };
181
+ const reply = await this.send(request, opts);
150
182
  let result;
151
183
  switch (reply.type) {
152
184
  case "ResultRows":
@@ -515,9 +547,8 @@ function openSocket(host, port, timeoutMs, tlsOpt) {
515
547
  });
516
548
  }
517
549
  export { encode, tryDecode } from "./protocol.js";
518
- export { MAX_PAYLOAD_SIZE, MAX_ROWS, MAX_COLUMNS, } from "./protocol.js";
550
+ export { MAX_PAYLOAD_SIZE, MAX_ROWS, MAX_COLUMNS, MAX_PARAMS, } from "./protocol.js";
519
551
  export { escapeLiteral, escapeIdent, ident, powql, PowqlIdent, } from "./escape.js";
520
552
  export { Pool } from "./pool.js";
521
553
  export { PowDBError, isPowDBError } from "./errors.js";
522
554
  export { coerceValue, coerceRow, coerceRows, } from "./typed.js";
523
- //# sourceMappingURL=index.js.map
package/dist/pool.d.ts CHANGED
@@ -121,4 +121,3 @@ export declare class Pool {
121
121
  close(): Promise<void>;
122
122
  private drainWaiters;
123
123
  }
124
- //# sourceMappingURL=pool.d.ts.map
package/dist/pool.js CHANGED
@@ -312,4 +312,3 @@ export class Pool {
312
312
  }
313
313
  }
314
314
  }
315
- //# sourceMappingURL=pool.js.map
@@ -9,6 +9,12 @@
9
9
  export declare const MSG_CONNECT = 1;
10
10
  export declare const MSG_CONNECT_OK = 2;
11
11
  export declare const MSG_QUERY = 3;
12
+ /**
13
+ * Query carrying positional `$N` parameters. Pure protocol addition: old
14
+ * servers reject it with the existing "unknown message type" error, and the
15
+ * plain `MSG_QUERY` frame is unchanged. Requires powdb-server ≥ 0.4.7.
16
+ */
17
+ export declare const MSG_QUERY_PARAMS = 4;
12
18
  export declare const MSG_RESULT_ROWS = 7;
13
19
  export declare const MSG_RESULT_SCALAR = 8;
14
20
  export declare const MSG_RESULT_OK = 9;
@@ -23,16 +29,54 @@ export declare const MAX_PAYLOAD_SIZE: number;
23
29
  export declare const MAX_ROWS = 10000000;
24
30
  /** Maximum number of columns allowed in a result set. */
25
31
  export declare const MAX_COLUMNS = 4096;
32
+ /** Maximum number of bound parameters in a QueryWithParams message. */
33
+ export declare const MAX_PARAMS = 4096;
34
+ /**
35
+ * A positional parameter value for {@link MSG_QUERY_PARAMS}. Wire encoding
36
+ * per param: a 1-byte tag followed by the body —
37
+ * `0` null (no body), `1` int (8B LE i64), `2` float (8B LE f64),
38
+ * `3` bool (1B), `4` str (length-prefixed UTF-8).
39
+ *
40
+ * Integral numbers are sent as ints, non-integral numbers as floats; `null`
41
+ * binds PowQL `null`. `bigint` is always an int.
42
+ */
43
+ export type WireParam = {
44
+ tag: "null";
45
+ } | {
46
+ tag: "int";
47
+ value: bigint;
48
+ } | {
49
+ tag: "float";
50
+ value: number;
51
+ } | {
52
+ tag: "bool";
53
+ value: boolean;
54
+ } | {
55
+ tag: "str";
56
+ value: string;
57
+ };
26
58
  export type Message = {
27
59
  type: "Connect";
28
60
  dbName: string;
29
61
  password: string | null;
62
+ /**
63
+ * Optional user name for multi-user authentication (server ≥0.4.6
64
+ * enforces roles). Encoded as a length-prefixed string appended AFTER
65
+ * the password field. When `null` the field is omitted entirely, so the
66
+ * frame is byte-identical to the pre-username (0.3.x) shape and old
67
+ * servers accept it unchanged.
68
+ */
69
+ username: string | null;
30
70
  } | {
31
71
  type: "ConnectOk";
32
72
  version: string;
33
73
  } | {
34
74
  type: "Query";
35
75
  query: string;
76
+ } | {
77
+ type: "QueryWithParams";
78
+ query: string;
79
+ params: WireParam[];
36
80
  } | {
37
81
  type: "ResultRows";
38
82
  columns: string[];
@@ -66,4 +110,3 @@ export declare function tryDecode(buf: Buffer): {
66
110
  msg: Message;
67
111
  consumed: number;
68
112
  } | null;
69
- //# sourceMappingURL=protocol.d.ts.map
package/dist/protocol.js CHANGED
@@ -9,6 +9,12 @@
9
9
  export const MSG_CONNECT = 0x01;
10
10
  export const MSG_CONNECT_OK = 0x02;
11
11
  export const MSG_QUERY = 0x03;
12
+ /**
13
+ * Query carrying positional `$N` parameters. Pure protocol addition: old
14
+ * servers reject it with the existing "unknown message type" error, and the
15
+ * plain `MSG_QUERY` frame is unchanged. Requires powdb-server ≥ 0.4.7.
16
+ */
17
+ export const MSG_QUERY_PARAMS = 0x04;
12
18
  export const MSG_RESULT_ROWS = 0x07;
13
19
  export const MSG_RESULT_SCALAR = 0x08;
14
20
  export const MSG_RESULT_OK = 0x09;
@@ -24,6 +30,8 @@ export const MAX_PAYLOAD_SIZE = 64 * 1024 * 1024;
24
30
  export const MAX_ROWS = 10_000_000;
25
31
  /** Maximum number of columns allowed in a result set. */
26
32
  export const MAX_COLUMNS = 4096;
33
+ /** Maximum number of bound parameters in a QueryWithParams message. */
34
+ export const MAX_PARAMS = 4096;
27
35
  // ───── Encoding ────────────────────────────────────────────────────────────
28
36
  export function encode(msg) {
29
37
  let msgType;
@@ -32,7 +40,15 @@ export function encode(msg) {
32
40
  case "Connect": {
33
41
  const dbBuf = encodeString(msg.dbName);
34
42
  const pwBuf = msg.password === null ? u32LE(0) : encodeString(msg.password);
35
- payload = Buffer.concat([dbBuf, pwBuf]);
43
+ // Username rides after the password (append-only extension, mirrors
44
+ // crates/server/src/protocol.rs). The server reads it only when bytes
45
+ // remain after the password, so omitting it when null keeps the frame
46
+ // byte-identical to the legacy 0.3.x shape.
47
+ const parts = [dbBuf, pwBuf];
48
+ if (msg.username !== null) {
49
+ parts.push(encodeString(msg.username));
50
+ }
51
+ payload = Buffer.concat(parts);
36
52
  msgType = MSG_CONNECT;
37
53
  break;
38
54
  }
@@ -44,6 +60,42 @@ export function encode(msg) {
44
60
  payload = encodeString(msg.query);
45
61
  msgType = MSG_QUERY;
46
62
  break;
63
+ case "QueryWithParams": {
64
+ const parts = [encodeString(msg.query)];
65
+ const count = Buffer.alloc(2);
66
+ count.writeUInt16LE(msg.params.length, 0);
67
+ parts.push(count);
68
+ for (const p of msg.params) {
69
+ switch (p.tag) {
70
+ case "null":
71
+ parts.push(Buffer.from([0]));
72
+ break;
73
+ case "int": {
74
+ const b = Buffer.alloc(9);
75
+ b.writeUInt8(1, 0);
76
+ b.writeBigInt64LE(p.value, 1);
77
+ parts.push(b);
78
+ break;
79
+ }
80
+ case "float": {
81
+ const b = Buffer.alloc(9);
82
+ b.writeUInt8(2, 0);
83
+ b.writeDoubleLE(p.value, 1);
84
+ parts.push(b);
85
+ break;
86
+ }
87
+ case "bool":
88
+ parts.push(Buffer.from([3, p.value ? 1 : 0]));
89
+ break;
90
+ case "str":
91
+ parts.push(Buffer.from([4]), encodeString(p.value));
92
+ break;
93
+ }
94
+ }
95
+ payload = Buffer.concat(parts);
96
+ msgType = MSG_QUERY_PARAMS;
97
+ break;
98
+ }
47
99
  case "ResultRows": {
48
100
  const parts = [];
49
101
  const colCount = Buffer.alloc(2);
@@ -129,12 +181,50 @@ function decodePayload(msgType, payload) {
129
181
  const p = decodeString(payload, cursor);
130
182
  password = p.length === 0 ? null : p;
131
183
  }
132
- return { type: "Connect", dbName, password };
184
+ // Optional trailing username (mirror the server: present only when
185
+ // bytes remain after the password; empty string means null).
186
+ let username = null;
187
+ if (cursor.pos < payload.length) {
188
+ const u = decodeString(payload, cursor);
189
+ username = u.length === 0 ? null : u;
190
+ }
191
+ return { type: "Connect", dbName, password, username };
133
192
  }
134
193
  case MSG_CONNECT_OK:
135
194
  return { type: "ConnectOk", version: decodeString(payload, cursor) };
136
195
  case MSG_QUERY:
137
196
  return { type: "Query", query: decodeString(payload, cursor) };
197
+ case MSG_QUERY_PARAMS: {
198
+ const query = decodeString(payload, cursor);
199
+ const count = readU16(payload, cursor, "param count");
200
+ if (count > MAX_PARAMS) {
201
+ throw new Error(`too many parameters: ${count} (max ${MAX_PARAMS})`);
202
+ }
203
+ const params = [];
204
+ for (let i = 0; i < count; i++) {
205
+ const tag = readU8(payload, cursor, "param tag");
206
+ switch (tag) {
207
+ case 0:
208
+ params.push({ tag: "null" });
209
+ break;
210
+ case 1:
211
+ params.push({ tag: "int", value: readI64(payload, cursor, "int param") });
212
+ break;
213
+ case 2:
214
+ params.push({ tag: "float", value: readF64(payload, cursor, "float param") });
215
+ break;
216
+ case 3:
217
+ params.push({ tag: "bool", value: readU8(payload, cursor, "bool param") !== 0 });
218
+ break;
219
+ case 4:
220
+ params.push({ tag: "str", value: decodeString(payload, cursor) });
221
+ break;
222
+ default:
223
+ throw new Error(`unknown param tag: ${tag}`);
224
+ }
225
+ }
226
+ return { type: "QueryWithParams", query, params };
227
+ }
138
228
  case MSG_RESULT_ROWS: {
139
229
  const colCount = readU16(payload, cursor, "column count");
140
230
  if (colCount > MAX_COLUMNS) {
@@ -198,6 +288,30 @@ function decodeString(buf, cursor) {
198
288
  cursor.pos += len;
199
289
  return s;
200
290
  }
291
+ function readU8(buf, cursor, label) {
292
+ if (cursor.pos + 1 > buf.length) {
293
+ throw new Error(`truncated ${label}`);
294
+ }
295
+ const value = buf.readUInt8(cursor.pos);
296
+ cursor.pos += 1;
297
+ return value;
298
+ }
299
+ function readI64(buf, cursor, label) {
300
+ if (cursor.pos + 8 > buf.length) {
301
+ throw new Error(`truncated ${label}`);
302
+ }
303
+ const value = buf.readBigInt64LE(cursor.pos);
304
+ cursor.pos += 8;
305
+ return value;
306
+ }
307
+ function readF64(buf, cursor, label) {
308
+ if (cursor.pos + 8 > buf.length) {
309
+ throw new Error(`truncated ${label}`);
310
+ }
311
+ const value = buf.readDoubleLE(cursor.pos);
312
+ cursor.pos += 8;
313
+ return value;
314
+ }
201
315
  function readU16(buf, cursor, label) {
202
316
  if (cursor.pos + 2 > buf.length) {
203
317
  throw new Error(`truncated ${label}`);
@@ -227,4 +341,3 @@ function u32LE(n) {
227
341
  b.writeUInt32LE(n, 0);
228
342
  return b;
229
343
  }
230
- //# sourceMappingURL=protocol.js.map
package/dist/typed.d.ts CHANGED
@@ -47,4 +47,3 @@ export declare function coerceValue(column: string, raw: string, type: ColumnTyp
47
47
  export declare function coerceRow(columns: string[], values: string[], schema: TypedSchema): TypedRow;
48
48
  /** Coerce every row in a rows-result into typed objects. */
49
49
  export declare function coerceRows(columns: string[], rows: string[][], schema: TypedSchema): TypedRow[];
50
- //# sourceMappingURL=typed.d.ts.map
package/dist/typed.js CHANGED
@@ -98,4 +98,3 @@ export function coerceRow(columns, values, schema) {
98
98
  export function coerceRows(columns, rows, schema) {
99
99
  return rows.map((r) => coerceRow(columns, r, schema));
100
100
  }
101
- //# sourceMappingURL=typed.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zvndev/powdb-client",
3
- "version": "0.3.5",
3
+ "version": "0.5.0",
4
4
  "description": "TypeScript client for PowDB (PowQL wire protocol)",
5
5
  "type": "module",
6
6
  "packageManager": "pnpm@10.29.3",
@@ -51,6 +51,7 @@
51
51
  "test": "tsx test/run-with-server.ts test/client.test.ts",
52
52
  "test:escape": "tsx test/escape.test.ts",
53
53
  "test:protocol": "tsx test/protocol.test.ts",
54
+ "test:auth": "tsx test/auth.test.ts",
54
55
  "test:pool": "tsx test/run-with-server.ts test/pool.test.ts",
55
56
  "test:typed": "tsx test/typed.test.ts",
56
57
  "test:errors": "tsx test/errors.test.ts",
@@ -59,8 +60,8 @@
59
60
  "prepublishOnly": "npm run build"
60
61
  },
61
62
  "devDependencies": {
62
- "@types/node": "^22",
63
+ "@types/node": "^25",
63
64
  "tsx": "^4",
64
- "typescript": "^5.6"
65
+ "typescript": "^6.0"
65
66
  }
66
67
  }
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,MAAM,cAAc;AACxB,wEAAwE;AACtE,gBAAgB;AAClB,uFAAuF;GACrF,aAAa;AACf,8EAA8E;GAC5E,cAAc;AAChB,0EAA0E;GACxE,SAAS;AACX,qGAAqG;GACnG,eAAe;AACjB,sFAAsF;GACpF,gBAAgB;AAClB,uDAAuD;GACrD,QAAQ;AACV,wDAAwD;GACtD,SAAS;AACX,kDAAkD;GAChD,sBAAsB,CAAC;AAE3B;;;;GAIG;AACH,qBAAa,UAAW,SAAQ,KAAK;IACnC,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;gBAElB,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;CAQjF;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,UAAU,CAE5D"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAsBH;;;;GAIG;AACH,MAAM,OAAO,UAAW,SAAQ,KAAK;IAC1B,IAAI,CAAiB;IAE9B,YAAY,OAAe,EAAE,IAAoB,EAAE,OAA6B;QAC9E,sEAAsE;QACtE,KAAK,CAAC,OAAO,EAAE,OAAuB,CAAC,CAAC;QACxC,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,oEAAoE;QACpE,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC;IACpD,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,GAAY;IACvC,OAAO,GAAG,YAAY,UAAU,CAAC;AACnC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"escape.d.ts","sourceRoot":"","sources":["../src/escape.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAIH,6FAA6F;AAC7F,qBAAa,UAAU;aACO,IAAI,EAAE,MAAM;gBAAZ,IAAI,EAAE,MAAM;CACzC;AAED,4FAA4F;AAC5F,wBAAgB,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAE9C;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAehD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAC3B,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAC/C,MAAM,CA+BR;AAED;;;;;;GAMG;AACH,wBAAgB,KAAK,CACnB,OAAO,EAAE,oBAAoB,EAC7B,GAAG,MAAM,EAAE,OAAO,EAAE,GACnB,MAAM,CAOR"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"escape.js","sourceRoot":"","sources":["../src/escape.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,GAAG,MAAM,UAAU,CAAC;AAChC,OAAO,KAAK,GAAG,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,SAAS,EAAgB,MAAM,eAAe,CAAC;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EACL,UAAU,GAGX,MAAM,YAAY,CAAC;AAEpB,yEAAyE;AACzE,MAAM,CAAC,MAAM,cAAc,GAAG,OAAO,CAAC;AA8BtC,sEAAsE;AACtE,MAAM,eAAe,GAAG,IAAI,GAAG,EAAU,CAAC;AAE1C,kFAAkF;AAClF,SAAS,OAAO,CAAC,OAAe;IAC9B,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACjC,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AACtD,CAAC;AAED;;;;GAIG;AACH,SAAS,UAAU,CAAC,MAAoB;IACtC,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC1C,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC;QACxB,IAAI,CAAC,YAAY,KAAK;YAAE,OAAO,CAAC,CAAC;QACjC,OAAO,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IAC9C,CAAC;IACD,OAAO,IAAI,UAAU,CAAC,mBAAmB,EAAE,SAAS,CAAC,CAAC;AACxD,CAAC;AA0BD,MAAM,OAAO,MAAO,SAAQ,YAA0B;IACnC,MAAM,CAAa;IACpC,qEAAqE;IACpD,MAAM,GAAa,EAAE,CAAC;IACvC,yDAAyD;IACjD,QAAQ,GAAG,CAAC,CAAC;IACJ,OAAO,GAAc,EAAE,CAAC;IACjC,MAAM,GAAG,KAAK,CAAC;IACf,UAAU,GAAiB,IAAI,CAAC;IAE/B,aAAa,CAAS;IAE/B,YAAoB,MAAkB,EAAE,aAAqB;QAC3D,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QAEnC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACtD,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;QACpD,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IACpD,CAAC;IAED,2DAA2D;IAC3D,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAmB;QACtC,MAAM,EACJ,IAAI,EACJ,IAAI,EACJ,MAAM,GAAG,SAAS,EAClB,QAAQ,GAAG,IAAI,EACf,gBAAgB,GAAG,IAAI,EACvB,GAAG,EAAE,MAAM,GAAG,KAAK,GACpB,GAAG,IAAI,CAAC;QAET,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,CAAC,CAAC;QAEtE,oEAAoE;QACpE,+DAA+D;QAC/D,MAAM,SAAS,GAAG,IAAI,OAAO,CAAU,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACzD,IAAI,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC9B,MAAM,OAAO,GAAG,GAAG,EAAE;gBACnB,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;gBACtC,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBACxC,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC1C,CAAC,CAAC;YACF,MAAM,MAAM,GAAG,CAAC,KAAa,EAAE,EAAE;gBAC/B,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;gBAC1C,IAAI,OAAkD,CAAC;gBACvD,IAAI,CAAC;oBACH,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;gBAC/B,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,OAAO,EAAE,CAAC;oBACV,MAAM,CAAC,GAAY,CAAC,CAAC;oBACrB,OAAO;gBACT,CAAC;gBACD,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;oBACrB,OAAO,EAAE,CAAC;oBACV,gEAAgE;oBAChE,iEAAiE;oBACjE,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;oBACpD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACxB,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;oBAC3B,CAAC;oBACD,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBACvB,CAAC;YACH,CAAC,CAAC;YACF,MAAM,OAAO,GAAG,CAAC,GAAU,EAAE,EAAE;gBAC7B,OAAO,EAAE,CAAC;gBACV,MAAM,CAAC,GAAG,CAAC,CAAC;YACd,CAAC,CAAC;YACF,kEAAkE;YAClE,kEAAkE;YAClE,MAAM,OAAO,GAAG,GAAG,EAAE;gBACnB,OAAO,EAAE,CAAC;gBACV,MAAM,CAAC,IAAI,UAAU,CAAC,oCAAoC,EAAE,gBAAgB,CAAC,CAAC,CAAC;YACjF,CAAC,CAAC;YACF,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAC1B,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC5B,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;QAC5D,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC;QAE9B,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC3B,MAAM,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,IAAI,UAAU,CAAC,mBAAmB,KAAK,CAAC,OAAO,EAAE,EAAE,aAAa,CAAC,CAAC;QAC1E,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YAC/B,MAAM,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,IAAI,UAAU,CAAC,2BAA2B,KAAK,CAAC,IAAI,EAAE,EAAE,gBAAgB,CAAC,CAAC;QAClF,CAAC;QAED,kEAAkE;QAClE,kEAAkE;QAClE,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC3C,MAAM,WAAW,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;QAC5C,IAAI,WAAW,KAAK,WAAW,EAAE,CAAC;YAChC,MAAM,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC;YAC9B,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC9B,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACzB,OAAO,CAAC,IAAI,CACV,0BAA0B,KAAK,CAAC,OAAO,WAAW,WAAW,IAAI;oBAC/D,uBAAuB,cAAc,WAAW,WAAW,KAAK;oBAChE,gCAAgC,CACnC,CAAC;YACJ,CAAC;QACH,CAAC;QAED,OAAO,IAAI,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IAC3C,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,KAAK,CACT,KAAa,EACb,IAA+B;QAE/B,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,CAAC,CAAC;YAC9D,IAAI,MAAmB,CAAC;YACxB,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;gBACnB,KAAK,YAAY;oBACf,MAAM,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;oBACpE,MAAM;gBACR,KAAK,cAAc;oBACjB,MAAM,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC;oBAChD,MAAM;gBACR,KAAK,UAAU;oBACb,MAAM,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;oBAClD,MAAM;gBACR,KAAK,eAAe;oBAClB,MAAM,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;oBACrD,MAAM;gBACR,KAAK,OAAO;oBACV,MAAM,IAAI,UAAU,CAAC,iBAAiB,KAAK,CAAC,OAAO,EAAE,EAAE,cAAc,CAAC,CAAC;gBACzE;oBACE,MAAM,IAAI,UAAU,CAAC,qBAAqB,KAAK,CAAC,IAAI,EAAE,EAAE,gBAAgB,CAAC,CAAC;YAC9E,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;gBACjB,KAAK;gBACL,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;gBAC9B,EAAE,EAAE,IAAI;gBACR,IAAI,EAAE,MAAM,CAAC,IAAI;aAClB,CAAC,CAAC;YACH,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;gBACjB,KAAK;gBACL,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;gBAC9B,EAAE,EAAE,KAAK;gBACT,KAAK,EAAE,GAAY;aACpB,CAAC,CAAC;YACH,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,UAAU,CACd,KAAa,EACb,MAAmB,EACnB,IAA+B;QAE/B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAC7C,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC3B,MAAM,IAAI,UAAU,CAClB,yCAAyC,MAAM,CAAC,IAAI,EAAE,EACtD,cAAc,CACf,CAAC;QACJ,CAAC;QACD,OAAO,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACzD,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CACH,KAAa,EACb,IAKC;QAED,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,UAAU,CAClB,sCAAsC,IAAI,CAAC,UAAU,EAAE,EACvD,gBAAgB,CACjB,CAAC;QACJ,CAAC;QACD,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,IAAI,QAAQ,GAAG,KAAK,CAAC;QAErB,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE;YACtB,IAAI,OAAO,IAAI,QAAQ;gBAAE,OAAO;YAChC,QAAQ,GAAG,IAAI,CAAC;YAChB,IAAI,CAAC;gBACH,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAClC,IAAI,CAAC,OAAO;oBAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAC/B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,OAAO;oBAAE,OAAO;gBACpB,IAAI,IAAI,CAAC,OAAO;oBAAE,IAAI,CAAC,OAAO,CAAC,GAAY,CAAC,CAAC;gBAC7C,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;oBACrB,OAAO,GAAG,IAAI,CAAC;oBACf,aAAa,CAAC,MAAM,CAAC,CAAC;oBACtB,OAAO;gBACT,CAAC;YACH,CAAC;oBAAS,CAAC;gBACT,QAAQ,GAAG,KAAK,CAAC;YACnB,CAAC;QACH,CAAC,CAAC;QAEF,sEAAsE;QACtE,qCAAqC;QACrC,KAAK,IAAI,EAAE,CAAC;QACZ,MAAM,MAAM,GAAmB,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAClE,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,UAAU;YAAE,MAAM,CAAC,KAAK,EAAE,CAAC;QAEvD,OAAO;YACL,IAAI,EAAE,GAAG,EAAE;gBACT,OAAO,GAAG,IAAI,CAAC;gBACf,aAAa,CAAC,MAAM,CAAC,CAAC;YACxB,CAAC;SACF,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO;QACxB,IAAI,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC;QACpD,CAAC;QAAC,MAAM,CAAC;YACP,4CAA4C;QAC9C,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;YAClC,IAAI,IAAI,GAAG,KAAK,CAAC;YACjB,MAAM,MAAM,GAAG,GAAG,EAAE;gBAClB,IAAI,IAAI;oBAAE,OAAO;gBACjB,IAAI,GAAG,IAAI,CAAC;gBACZ,YAAY,CAAC,KAAK,CAAC,CAAC;gBACpB,OAAO,EAAE,CAAC;YACZ,CAAC,CAAC;YACF,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC5B,8DAA8D;gBAC9D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACtB,MAAM,EAAE,CAAC;YACX,CAAC,EAAE,KAAK,CAAC,CAAC;YACV,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,UAAU;gBAAE,KAAK,CAAC,KAAK,EAAE,CAAC;YACrD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,4EAA4E;IAEpE,IAAI,CACV,GAAY,EACZ,IAA+B;QAE/B,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,OAAO,OAAO,CAAC,MAAM,CACnB,IAAI,CAAC,UAAU,IAAI,IAAI,UAAU,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAChE,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,CAAC;QAE5B,wEAAwE;QACxE,0DAA0D;QAC1D,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;YACpB,OAAO,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;QAC5C,CAAC;QAED,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,KAAK,GAAY;gBACrB,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;oBACb,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;oBACrB,OAAO,CAAC,CAAC,CAAC,CAAC;gBACb,CAAC;gBACD,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE;oBACZ,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;oBACrB,MAAM,CAAC,CAAC,CAAC,CAAC;gBACZ,CAAC;gBACD,OAAO,EAAE,KAAK;aACf,CAAC;YACF,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAEzB,IAAI,OAAO,GAAwB,IAAI,CAAC;YACxC,IAAI,MAAM,EAAE,CAAC;gBACX,OAAO,GAAG,GAAG,EAAE;oBACb,IAAI,KAAK,CAAC,OAAO;wBAAE,OAAO;oBAC1B,gEAAgE;oBAChE,+DAA+D;oBAC/D,oDAAoD;oBACpD,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;oBACrB,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;gBAC7B,CAAC,CAAC;gBACF,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC1D,gEAAgE;gBAChE,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC;gBAClC,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC;gBAChC,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC,EAAE,EAAE;oBACpB,IAAI,OAAO;wBAAE,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;oBAC1D,WAAW,CAAC,CAAC,CAAC,CAAC;gBACjB,CAAC,CAAC;gBACF,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,EAAE;oBACnB,IAAI,OAAO;wBAAE,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;oBAC1D,UAAU,CAAC,CAAC,CAAC,CAAC;gBAChB,CAAC,CAAC;YACJ,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE;gBACrC,IAAI,GAAG,EAAE,CAAC;oBACR,IAAI,KAAK,CAAC,OAAO;wBAAE,OAAO;oBAC1B,+DAA+D;oBAC/D,4DAA4D;oBAC5D,EAAE;oBACF,8DAA8D;oBAC9D,iEAAiE;oBACjE,8DAA8D;oBAC9D,kDAAkD;oBAClD,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;oBACxC,IAAI,GAAG,KAAK,CAAC,CAAC;wBAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;oBAC5C,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACpB,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,MAAM,CAAC,KAAa;QAC1B,iEAAiE;QACjE,+CAA+C;QAC/C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxB,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,MAAM,CAAC;QAE9B,OAAO,IAAI,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC;YACzB,kEAAkE;YAClE,oCAAoC;YACpC,IAAI,IAAY,CAAC;YACjB,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC7B,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC;YACzB,CAAC;iBAAM,CAAC;gBACN,kEAAkE;gBAClE,gEAAgE;gBAChE,mCAAmC;gBACnC,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,IAAI,CAAC,EAAE,CAAC;oBACrD,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAClB,CAAC;gBACD,8DAA8D;gBAC9D,+DAA+D;gBAC/D,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC;gBAC9B,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;oBACtB,MAAM,UAAU,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;oBACzC,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,GAAG,UAAU,EAAE,CAAC;wBACnC,IAAI,GAAG,KAAK,CAAC;oBACf,CAAC;yBAAM,IAAI,IAAI,CAAC,QAAQ,IAAI,CAAC,GAAG,UAAU,EAAE,CAAC;wBAC3C,IAAI,CAAC,QAAQ,EAAE,CAAC;wBAChB,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC;oBACzB,CAAC;yBAAM,CAAC;wBACN,gEAAgE;wBAChE,MAAM;oBACR,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,6DAA6D;oBAC7D,MAAM;gBACR,CAAC;YACH,CAAC;YAED,IAAI,OAAkD,CAAC;YACvD,IAAI,CAAC;gBACH,OAAO,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;YAC5B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC,OAAO,CAAC,GAAY,CAAC,CAAC;gBAC3B,OAAO;YACT,CAAC;YACD,IAAI,OAAO,KAAK,IAAI;gBAAE,MAAM;YAE5B,qEAAqE;YACrE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAE/B,kEAAkE;YAClE,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBAChC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;gBAC5C,SAAS;YACX,CAAC;YAED,iEAAiE;YACjE,mEAAmE;YACnE,4CAA4C;YAC5C,IAAI,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACjC,OAAO,KAAK,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;gBAC9B,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YAC/B,CAAC;YACD,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,iEAAiE;gBACjE,iDAAiD;gBACjD,IAAI,CAAC,OAAO,CACV,IAAI,UAAU,CAAC,uCAAuC,EAAE,gBAAgB,CAAC,CAC1E,CAAC;gBACF,OAAO;YACT,CAAC;YACD,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;IAED,qDAAqD;IAC7C,QAAQ;QACd,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC;YAAE,OAAO;QACpC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACzD,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QACvB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3B,CAAC;IAED,oDAAoD;IAC5C,OAAO,CAAC,CAAS;QACvB,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,OAAO,SAAS,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC;YAC7B,IAAI,IAAI,CAAC,MAAM,IAAI,SAAS,EAAE,CAAC;gBAC7B,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC;gBACzB,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC;gBAC7B,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YACtB,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;gBAC1C,IAAI,CAAC,QAAQ,IAAI,SAAS,CAAC;gBAC3B,SAAS,GAAG,CAAC,CAAC;YAChB,CAAC;QACH,CAAC;IACH,CAAC;IAEO,OAAO,CAAC,GAAiB;QAC/B,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;QAChC,IAAI,IAAI,CAAC,MAAM,IAAI,GAAG,KAAK,IAAI;YAAE,OAAO;QACxC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;QACtB,MAAM,KAAK,GAAG,GAAG,IAAI,IAAI,UAAU,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAC;QACnE,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAG,CAAC;YACpC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;gBACnB,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtB,CAAC;QACH,CAAC;QACD,IAAI,UAAU,EAAE,CAAC;YACf,iEAAiE;YACjE,8DAA8D;YAC9D,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;CACF;AAED,SAAS,UAAU,CACjB,IAAY,EACZ,IAAY,EACZ,SAAiB,EACjB,MAAuC;IAEvC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,IAAI,MAAkB,CAAC;QACvB,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5B,MAAM,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,CAAC,IAAI,UAAU,CAAC,yBAAyB,SAAS,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;QAC5E,CAAC,EAAE,SAAS,CAAC,CAAC;QAEd,MAAM,SAAS,GAAG,GAAG,EAAE;YACrB,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACxB,qEAAqE;YACrE,gDAAgD;YAChD,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAClC,OAAO,CAAC,MAAM,CAAC,CAAC;QAClB,CAAC,CAAC;QACF,MAAM,OAAO,GAAG,CAAC,GAAU,EAAE,EAAE;YAC7B,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,kEAAkE;YAClE,sEAAsE;YACtE,MAAM,CAAC,IAAI,UAAU,CAAC,mBAAmB,GAAG,CAAC,OAAO,EAAE,EAAE,gBAAgB,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;QAC7F,CAAC,CAAC;QAEF,IAAI,MAAM,EAAE,CAAC;YACX,0EAA0E;YAC1E,wEAAwE;YACxE,oCAAoC;YACpC,MAAM,UAAU,GACd,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;YAChC,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;YACpD,MAAM,GAAG,OAAO,CAAC;YACjB,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;YACzC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACjC,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YAC1B,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YAClC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC9B,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAElD,OAAO,EACL,gBAAgB,EAChB,QAAQ,EACR,WAAW,GACZ,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,aAAa,EACb,WAAW,EACX,KAAK,EACL,KAAK,EACL,UAAU,GACX,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAGjC,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGvD,OAAO,EACL,WAAW,EACX,SAAS,EACT,UAAU,GACX,MAAM,YAAY,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"pool.d.ts","sourceRoot":"","sources":["../src/pool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,MAAM,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AAGxD,MAAM,WAAW,WAAY,SAAQ,aAAa;IAChD,8CAA8C;IAC9C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,6CAA6C;IAC7C,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mEAAmE;IACnE,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAuDD;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,IAAI;IACf,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAgB;IACrC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAS;IAE7C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAgB;IAC5C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAgB;IACxC;gFAC4E;IAC5E,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA0B;IAChD,OAAO,CAAC,IAAI,CAAK;IACjB,OAAO,CAAC,OAAO,CAAS;gBAEZ,IAAI,EAAE,WAAW;IA8B7B;;;OAGG;IACH,OAAO,CAAC,OAAO;IASf,8CAA8C;IAC9C,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,mDAAmD;IACnD,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,iDAAiD;IACjD,IAAI,MAAM,IAAI,OAAO,CAEpB;IAED;;;;;;OAMG;IACG,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;IA+ChC;;;;;;OAMG;IACH,OAAO,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAwBxB;;;;OAIG;IACH,OAAO,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAiBxB;;;;OAIG;IACG,UAAU,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAY9D;;;;;;;OAOG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAsB5B,OAAO,CAAC,YAAY;CA+BrB"}
package/dist/pool.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"pool.js","sourceRoot":"","sources":["../src/pool.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,eAAO,MAAM,WAAW,IAAO,CAAC;AAChC,eAAO,MAAM,cAAc,IAAO,CAAC;AACnC,eAAO,MAAM,SAAS,IAAO,CAAC;AAC9B,eAAO,MAAM,eAAe,IAAO,CAAC;AACpC,eAAO,MAAM,iBAAiB,IAAO,CAAC;AACtC,eAAO,MAAM,aAAa,IAAO,CAAC;AAClC,eAAO,MAAM,SAAS,KAAO,CAAC;AAC9B,eAAO,MAAM,cAAc,KAAO,CAAC;AACnC,eAAO,MAAM,cAAc,KAAO,CAAC;AACnC,eAAO,MAAM,QAAQ,KAAO,CAAC;AAC7B,eAAO,MAAM,QAAQ,KAAO,CAAC;AAI7B,2DAA2D;AAC3D,eAAO,MAAM,gBAAgB,QAAmB,CAAC;AAEjD,iEAAiE;AACjE,eAAO,MAAM,QAAQ,WAAa,CAAC;AAEnC,yDAAyD;AACzD,eAAO,MAAM,WAAW,OAAO,CAAC;AAEhC,MAAM,MAAM,OAAO,GACf;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAC5D;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACtC;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAChC;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAA;CAAE,GAC3D;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACvC;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACtC;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAC1C;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAClC;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,GACtB;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChB;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAIrB,wBAAgB,MAAM,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAyE3C;AAID;;;;GAIG;AACH,wBAAgB,SAAS,CACvB,GAAG,EAAE,MAAM,GACV;IAAE,GAAG,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAc3C"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"typed.d.ts","sourceRoot":"","sources":["../src/typed.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAIH;;;GAGG;AACH,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,OAAO,GAAG,MAAM,GAAG,KAAK,GAAG,UAAU,GAAG,MAAM,CAAC;AAEhF,0FAA0F;AAC1F,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AAErD,kGAAkG;AAClG,MAAM,MAAM,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC;AAEvE,oDAAoD;AACpD,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE/C;;;;GAIG;AACH,wBAAgB,WAAW,CACzB,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,UAAU,GAAG,SAAS,GAC3B,OAAO,CAqET;AAED;;;GAGG;AACH,wBAAgB,SAAS,CACvB,OAAO,EAAE,MAAM,EAAE,EACjB,MAAM,EAAE,MAAM,EAAE,EAChB,MAAM,EAAE,WAAW,GAClB,QAAQ,CAOV;AAED,4DAA4D;AAC5D,wBAAgB,UAAU,CACxB,OAAO,EAAE,MAAM,EAAE,EACjB,IAAI,EAAE,MAAM,EAAE,EAAE,EAChB,MAAM,EAAE,WAAW,GAClB,QAAQ,EAAE,CAEZ"}
package/dist/typed.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"typed.js","sourceRoot":"","sources":["../src/typed.ts"],"names":[],"mappings":"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"}