zydecodb 0.9.0-beta.6 → 0.9.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/README.md CHANGED
@@ -57,6 +57,25 @@ try {
57
57
  - **TLS.** Pass `tls: true` for system CA defaults, or a `tls.ConnectionOptions`
58
58
  object for custom roots / SNI / `rejectUnauthorized`.
59
59
 
60
+ ## Optimistic concurrency
61
+
62
+ ```ts
63
+ const got = await users.getWithRevision(id);
64
+ got!.doc.age = (got!.doc.age as number) + 1;
65
+ try {
66
+ await users.replaceOneIfMatch(id, got!.doc, got!.revision);
67
+ } catch (err) {
68
+ if (err instanceof ConflictError) {
69
+ // re-read and retry, or merge
70
+ } else throw err;
71
+ }
72
+ ```
73
+
74
+ Also: `findWithRevision`, `updateByIdIfMatch`. Revisions are opaque `bigint`
75
+ values. Stale/missing documents throw `ConflictError`. Against an older server
76
+ these methods fail with a protocol error instead of silently becoming
77
+ unconditional writes.
78
+
60
79
  ## Durability
61
80
 
62
81
  Writes are durable (fsync-on-commit) by default. For latency-sensitive,
package/dist/client.d.ts CHANGED
@@ -49,12 +49,27 @@ export declare class Client {
49
49
  get(key: Buffer): Promise<Buffer | null>;
50
50
  put(key: Buffer, value: Buffer, expiresAt?: number | bigint): Promise<bigint>;
51
51
  delete(key: Buffer): Promise<boolean>;
52
- defineIndex(collection: string, index: string, fields: string[], unique: boolean, ifNotExists?: boolean): Promise<boolean>;
53
- putDocument(collection: string, docId: string, body: Buffer, relaxed: boolean): Promise<bigint>;
52
+ defineIndex(collection: string, index: string, fields: string[], unique: boolean, ifNotExists?: boolean, expireAfterSeconds?: number | bigint): Promise<boolean>;
53
+ putDocument(collection: string, docId: string, body: Buffer, relaxed: boolean, expiresAt?: number | bigint): Promise<bigint>;
54
54
  deleteDocument(collection: string, docId: string): Promise<boolean>;
55
55
  getDocument(collection: string, docId: string): Promise<Buffer | null>;
56
+ /** Fetch one document and its opaque revision, or null if absent. */
57
+ getDocumentWithRevision(collection: string, docId: string): Promise<{
58
+ body: Buffer;
59
+ revision: bigint;
60
+ } | null>;
61
+ /** Conditional replace; stale/missing revision → Conflict. Returns new revision. */
62
+ putDocumentIfMatch(collection: string, docId: string, body: Buffer, relaxed: boolean, ifMatch: bigint | number, expiresAt?: number | bigint): Promise<bigint>;
63
+ /** Conditional by-id update; returns the new revision. */
64
+ updateDocumentIfMatch(collection: string, docId: string, update: Buffer, relaxed: boolean, ifMatch: bigint | number): Promise<bigint>;
56
65
  /** Returns the raw JSON bodies of matching documents, auto-paginating. */
57
66
  find(collection: string, filter: Buffer, opts?: FindOptions): Promise<Buffer[]>;
67
+ /** Like find, but each row includes its opaque revision (bigint). */
68
+ findWithRevision(collection: string, filter: Buffer, opts?: FindOptions): Promise<{
69
+ body: Buffer;
70
+ revision: bigint;
71
+ }[]>;
72
+ private findRows;
58
73
  update(collection: string, filter: Buffer, update: Buffer, multi: boolean, relaxed: boolean, upsert?: boolean): Promise<UpdateResult>;
59
74
  deleteByFilter(collection: string, filter: Buffer, multi: boolean, relaxed: boolean): Promise<number>;
60
75
  count(collection: string, filter: Buffer): Promise<number>;
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAG7C,OAAO,EAoBL,KAAK,UAAU,EACf,KAAK,OAAO,EACb,MAAM,eAAe,CAAC;AAEvB,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,oDAAoD;IACpD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,2EAA2E;IAC3E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,GAAG,CAAC,EAAE,SAAS,CAAC;CACjB;AAOD,MAAM,WAAW,WAAW;IAC1B,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC;IACjB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAID;;;;;GAKG;AACH,qBAAa,MAAM;IACjB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAiB;IACtC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;gBAE1B,OAAO,SAAmB,EAAE,OAAO,GAAE,aAAkB;IAenE,KAAK,IAAI,IAAI;IAIb,OAAO,CAAC,OAAO;YAKD,OAAO;IAsCf,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAIrB,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAOzC,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IASxC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,GAAE,MAAM,GAAG,MAAU,GAAG,OAAO,CAAC,MAAM,CAAC;IAUhF,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAUrC,WAAW,CACf,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EAAE,EAChB,MAAM,EAAE,OAAO,EACf,WAAW,UAAO,EAClB,kBAAkB,GAAE,MAAM,GAAG,MAAU,GACtC,OAAO,CAAC,OAAO,CAAC;IAgBb,WAAW,CACf,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,OAAO,EAChB,SAAS,GAAE,MAAM,GAAG,MAAU,GAC7B,OAAO,CAAC,MAAM,CAAC;IAUZ,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAUnE,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAS5E,qEAAqE;IAC/D,uBAAuB,CAC3B,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAWrD,oFAAoF;IAC9E,kBAAkB,CACtB,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,MAAM,GAAG,MAAM,EACxB,SAAS,GAAE,MAAM,GAAG,MAAU,GAC7B,OAAO,CAAC,MAAM,CAAC;IAiBlB,0DAA0D;IACpD,qBAAqB,CACzB,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,MAAM,GAAG,MAAM,GACvB,OAAO,CAAC,MAAM,CAAC;IAgBlB,0EAA0E;IACpE,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,GAAE,WAAgB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAKzF,qEAAqE;IAC/D,gBAAgB,CACpB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,WAAgB,GACrB,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;YAKlC,QAAQ;IAsChB,MAAM,CACV,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,OAAO,EAChB,MAAM,UAAQ,GACb,OAAO,CAAC,YAAY,CAAC;IAUlB,cAAc,CAClB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,MAAM,CAAC;IAUZ,KAAK,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAO1D,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAUrF,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU;CAGrC;AAED;;;GAGG;AACH,wBAAgB,UAAU,IAAI,MAAM,CAMnC"}
package/dist/client.js CHANGED
@@ -2,7 +2,7 @@ import { randomBytes } from "node:crypto";
2
2
  import { Collection } from "./collection.js";
3
3
  import { ConnectionError, fromStatus, ServerBusyError, ZydecoError } from "./errors.js";
4
4
  import { ConnectionPool } from "./pool.js";
5
- import { Cmd, decodePage, encodeCount, encodeDelete, encodeDistinct, encodeDocDel, encodeDocPut, encodeFind, encodeIndexDef, encodeQueryById, encodeUpdate, encodePut, encodeKey, Proj, Status, } from "./protocol.js";
5
+ import { Cmd, decodeDocGetRevResponse, decodePage, decodePageWithRevision, encodeCount, encodeDelete, encodeDistinct, encodeDocDel, encodeDocPut, encodeDocPutIfMatch, encodeDocUpdateIfMatch, encodeFind, encodeIndexDef, encodeQueryById, encodeUpdate, encodePut, encodeKey, Proj, Status, } from "./protocol.js";
6
6
  const sleep = (ms) => new Promise((r) => setTimeout(r, ms));
7
7
  /**
8
8
  * A pooled, retrying ZydecoDB client. Safe to share across the whole process.
@@ -88,8 +88,8 @@ export class Client {
88
88
  const out = await this.execute(Cmd.Del, encodeKey(key), "Delete", { retryable: false });
89
89
  return out !== null && out.length > 0 && out[0] !== 0;
90
90
  }
91
- async defineIndex(collection, index, fields, unique, ifNotExists = true) {
92
- const payload = encodeIndexDef(collection, index, fields, unique);
91
+ async defineIndex(collection, index, fields, unique, ifNotExists = true, expireAfterSeconds = 0) {
92
+ const payload = encodeIndexDef(collection, index, fields, unique, expireAfterSeconds);
93
93
  const conn = await this.pool.acquire();
94
94
  let res;
95
95
  try {
@@ -106,8 +106,8 @@ export class Client {
106
106
  throw fromStatus(res.status, "IndexDef", res.body);
107
107
  return true;
108
108
  }
109
- async putDocument(collection, docId, body, relaxed) {
110
- const out = await this.execute(Cmd.DocPut, encodeDocPut(collection, Buffer.from(docId, "utf8"), body, relaxed), "DocPut", { retryable: true });
109
+ async putDocument(collection, docId, body, relaxed, expiresAt = 0) {
110
+ const out = await this.execute(Cmd.DocPut, encodeDocPut(collection, Buffer.from(docId, "utf8"), body, relaxed, expiresAt), "DocPut", { retryable: true });
111
111
  return decodeU64(out, "DocPut");
112
112
  }
113
113
  async deleteDocument(collection, docId) {
@@ -117,8 +117,34 @@ export class Client {
117
117
  async getDocument(collection, docId) {
118
118
  return this.execute(Cmd.Query, encodeQueryById(collection, Buffer.from(docId, "utf8")), "Query", { retryable: true, notFoundNull: true });
119
119
  }
120
+ /** Fetch one document and its opaque revision, or null if absent. */
121
+ async getDocumentWithRevision(collection, docId) {
122
+ const out = await this.execute(Cmd.DocGetRev, encodeQueryById(collection, Buffer.from(docId, "utf8")), "DocGetRev", { retryable: true, notFoundNull: true });
123
+ if (out === null)
124
+ return null;
125
+ return decodeDocGetRevResponse(out);
126
+ }
127
+ /** Conditional replace; stale/missing revision → Conflict. Returns new revision. */
128
+ async putDocumentIfMatch(collection, docId, body, relaxed, ifMatch, expiresAt = 0) {
129
+ const out = await this.execute(Cmd.DocPutIfMatch, encodeDocPutIfMatch(collection, Buffer.from(docId, "utf8"), body, relaxed, ifMatch, expiresAt), "DocPutIfMatch", { retryable: false });
130
+ return decodeU64(out, "DocPutIfMatch");
131
+ }
132
+ /** Conditional by-id update; returns the new revision. */
133
+ async updateDocumentIfMatch(collection, docId, update, relaxed, ifMatch) {
134
+ const out = await this.execute(Cmd.DocUpdateIfMatch, encodeDocUpdateIfMatch(collection, Buffer.from(docId, "utf8"), update, relaxed, ifMatch), "DocUpdateIfMatch", { retryable: false });
135
+ return decodeU64(out, "DocUpdateIfMatch");
136
+ }
120
137
  /** Returns the raw JSON bodies of matching documents, auto-paginating. */
121
138
  async find(collection, filter, opts = {}) {
139
+ const rows = await this.findRows(collection, filter, opts, false);
140
+ return rows.map((r) => r.body);
141
+ }
142
+ /** Like find, but each row includes its opaque revision (bigint). */
143
+ async findWithRevision(collection, filter, opts = {}) {
144
+ const rows = await this.findRows(collection, filter, opts, true);
145
+ return rows.map((r) => ({ body: r.body, revision: r.revision }));
146
+ }
147
+ async findRows(collection, filter, opts, withRev) {
122
148
  const pageSize = opts.pageSize && opts.pageSize > 0 ? opts.pageSize : 100;
123
149
  const limit = opts.limit ?? 0;
124
150
  const projection = opts.projection ?? { mode: Proj.None, fields: [] };
@@ -127,6 +153,8 @@ export class Client {
127
153
  let cursor = Buffer.alloc(0);
128
154
  let yielded = 0;
129
155
  const results = [];
156
+ const cmd = withRev ? Cmd.FindRev : Cmd.Find;
157
+ const op = withRev ? "FindRev" : "Find";
130
158
  for (;;) {
131
159
  let want = pageSize;
132
160
  if (limit !== 0) {
@@ -136,11 +164,11 @@ export class Client {
136
164
  want = Math.min(want, remaining);
137
165
  }
138
166
  const payload = encodeFind(collection, filter, sort, projection, skip, want, cursor);
139
- const body = await this.execute(Cmd.Find, payload, "Find", { retryable: true });
140
- const page = decodePage(body);
167
+ const body = await this.execute(cmd, payload, op, { retryable: true });
168
+ const page = withRev ? decodePageWithRevision(body) : decodePage(body);
141
169
  skip = 0; // applied on the first page; the cursor carries it onward
142
170
  for (const row of page.rows) {
143
- results.push(row.body);
171
+ results.push({ body: row.body, revision: row.revision });
144
172
  yielded++;
145
173
  if (limit !== 0 && yielded >= limit)
146
174
  return results;
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
@@ -25,12 +25,23 @@ export declare class Collection {
25
25
  * Create a secondary index over one or more dotted field paths. Returns false
26
26
  * if the index already existed.
27
27
  */
28
- createIndex(fields: string[], unique?: boolean): Promise<boolean>;
29
- /** Insert a document, generating "_id" if absent. Returns the id. */
30
- insertOne(document: Document, relaxed?: boolean): Promise<string>;
28
+ /** `expireAfterSeconds` marks a TTL index (field = unix millis); 0 = not TTL. */
29
+ createIndex(fields: string[], unique?: boolean, expireAfterSeconds?: number | bigint): Promise<boolean>;
30
+ /** Insert a document, generating "_id" if absent. Returns the id.
31
+ * `expiresAt` is absolute unix millis; 0 means never expires. */
32
+ insertOne(document: Document, relaxed?: boolean, expiresAt?: number | bigint): Promise<string>;
31
33
  insertMany(documents: Document[]): Promise<string[]>;
32
- /** Insert or fully replace the document at docId. */
33
- replaceOne(docId: string, document: Document, relaxed?: boolean): Promise<bigint>;
34
+ /** Insert or fully replace the document at docId.
35
+ * `expiresAt` is absolute unix millis; 0 means never expires. */
36
+ replaceOne(docId: string, document: Document, relaxed?: boolean, expiresAt?: number | bigint): Promise<bigint>;
37
+ /**
38
+ * Replace only when `ifMatch` equals the current revision. Stale/missing →
39
+ * Conflict. Against older servers this fails with ProtocolError rather than
40
+ * becoming an unconditional write.
41
+ */
42
+ replaceOneIfMatch(docId: string, document: Document, ifMatch: bigint | number, relaxed?: boolean, expiresAt?: number | bigint): Promise<bigint>;
43
+ /** Partial update by id when `ifMatch` equals the current revision. */
44
+ updateByIdIfMatch(docId: string, update: Document, ifMatch: bigint | number, relaxed?: boolean): Promise<bigint>;
34
45
  updateOne(filter: Document, update: Document, relaxed?: boolean, upsert?: boolean): Promise<UpdateResult>;
35
46
  updateMany(filter: Document, update: Document, relaxed?: boolean, upsert?: boolean): Promise<UpdateResult>;
36
47
  deleteOne(filter: Document, relaxed?: boolean): Promise<number>;
@@ -41,6 +52,16 @@ export declare class Collection {
41
52
  findOne(filter: Document | null, opts?: QueryOptions): Promise<Document | null>;
42
53
  /** Fetch one document directly by id (fast path), or null if absent. */
43
54
  get(docId: string): Promise<Document | null>;
55
+ /** Fetch one document and its opaque revision, or null if absent. */
56
+ getWithRevision(docId: string): Promise<{
57
+ doc: Document;
58
+ revision: bigint;
59
+ } | null>;
60
+ /** Like find, but each result includes its opaque revision. */
61
+ findWithRevision(filter: Document | null, opts?: QueryOptions): Promise<{
62
+ doc: Document;
63
+ revision: bigint;
64
+ }[]>;
44
65
  countDocuments(filter?: Document | null): Promise<number>;
45
66
  distinct(field: string, filter?: Document | null): Promise<unknown[]>;
46
67
  }
@@ -1 +1 @@
1
- {"version":3,"file":"collection.d.ts","sourceRoot":"","sources":["../src/collection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGxD,OAAO,EAAyB,KAAK,OAAO,EAAE,MAAM,eAAe,CAAC;AAEpE,6EAA6E;AAC7E,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE/C,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC;IACjB,qEAAqE;IACrE,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,4BAA4B;IAC5B,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAID;;;;GAIG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;gBAEV,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IAKxC;;;OAGG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,MAAM,UAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;IAK/D,qEAAqE;IAC/D,SAAS,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,UAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;IAO/D,UAAU,CAAC,SAAS,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAM1D,qDAAqD;IACrD,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,UAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;IAK/E,SAAS,CACP,MAAM,EAAE,QAAQ,EAChB,MAAM,EAAE,QAAQ,EAChB,OAAO,UAAQ,EACf,MAAM,UAAQ,GACb,OAAO,CAAC,YAAY,CAAC;IAWxB,UAAU,CACR,MAAM,EAAE,QAAQ,EAChB,MAAM,EAAE,QAAQ,EAChB,OAAO,UAAQ,EACf,MAAM,UAAQ,GACb,OAAO,CAAC,YAAY,CAAC;IAWxB,SAAS,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,UAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;IAI7D,UAAU,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,UAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;IAI9D,yDAAyD;IACnD,IAAI,CAAC,MAAM,EAAE,QAAQ,GAAG,IAAI,EAAE,IAAI,GAAE,YAAiB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAWjF,iEAAiE;IAC3D,OAAO,CAAC,MAAM,EAAE,QAAQ,GAAG,IAAI,EAAE,IAAI,GAAE,YAAiB,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAKzF,wEAAwE;IAClE,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAKlD,cAAc,CAAC,MAAM,GAAE,QAAQ,GAAG,IAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IAI/D,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,GAAE,QAAQ,GAAG,IAAW,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;CAG5E"}
1
+ {"version":3,"file":"collection.d.ts","sourceRoot":"","sources":["../src/collection.ts"],"names":[],"mappings":"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"}
@@ -18,15 +18,17 @@ export class Collection {
18
18
  * Create a secondary index over one or more dotted field paths. Returns false
19
19
  * if the index already existed.
20
20
  */
21
- createIndex(fields, unique = false) {
21
+ /** `expireAfterSeconds` marks a TTL index (field = unix millis); 0 = not TTL. */
22
+ createIndex(fields, unique = false, expireAfterSeconds = 0) {
22
23
  const indexName = "by_" + fields.map((f) => f.replaceAll(".", "_")).join("_");
23
- return this.client.defineIndex(this.name, indexName, fields, unique);
24
+ return this.client.defineIndex(this.name, indexName, fields, unique, true, expireAfterSeconds);
24
25
  }
25
- /** Insert a document, generating "_id" if absent. Returns the id. */
26
- async insertOne(document, relaxed = false) {
26
+ /** Insert a document, generating "_id" if absent. Returns the id.
27
+ * `expiresAt` is absolute unix millis; 0 means never expires. */
28
+ async insertOne(document, relaxed = false, expiresAt = 0) {
27
29
  const id = typeof document._id === "string" && document._id ? document._id : generateId();
28
30
  const doc = { ...document, _id: id };
29
- await this.client.putDocument(this.name, id, jsonBytes(doc), relaxed);
31
+ await this.client.putDocument(this.name, id, jsonBytes(doc), relaxed, expiresAt);
30
32
  return id;
31
33
  }
32
34
  async insertMany(documents) {
@@ -35,10 +37,24 @@ export class Collection {
35
37
  ids.push(await this.insertOne(d));
36
38
  return ids;
37
39
  }
38
- /** Insert or fully replace the document at docId. */
39
- replaceOne(docId, document, relaxed = false) {
40
+ /** Insert or fully replace the document at docId.
41
+ * `expiresAt` is absolute unix millis; 0 means never expires. */
42
+ replaceOne(docId, document, relaxed = false, expiresAt = 0) {
40
43
  const doc = { ...document, _id: docId };
41
- return this.client.putDocument(this.name, docId, jsonBytes(doc), relaxed);
44
+ return this.client.putDocument(this.name, docId, jsonBytes(doc), relaxed, expiresAt);
45
+ }
46
+ /**
47
+ * Replace only when `ifMatch` equals the current revision. Stale/missing →
48
+ * Conflict. Against older servers this fails with ProtocolError rather than
49
+ * becoming an unconditional write.
50
+ */
51
+ replaceOneIfMatch(docId, document, ifMatch, relaxed = false, expiresAt = 0) {
52
+ const doc = { ...document, _id: docId };
53
+ return this.client.putDocumentIfMatch(this.name, docId, jsonBytes(doc), relaxed, ifMatch, expiresAt);
54
+ }
55
+ /** Partial update by id when `ifMatch` equals the current revision. */
56
+ updateByIdIfMatch(docId, update, ifMatch, relaxed = false) {
57
+ return this.client.updateDocumentIfMatch(this.name, docId, jsonBytes(update), relaxed, ifMatch);
42
58
  }
43
59
  updateOne(filter, update, relaxed = false, upsert = false) {
44
60
  return this.client.update(this.name, filterBytes(filter), jsonBytes(update), false, relaxed, upsert);
@@ -73,6 +89,30 @@ export class Collection {
73
89
  const body = await this.client.getDocument(this.name, docId);
74
90
  return body === null ? null : JSON.parse(body.toString("utf8"));
75
91
  }
92
+ /** Fetch one document and its opaque revision, or null if absent. */
93
+ async getWithRevision(docId) {
94
+ const got = await this.client.getDocumentWithRevision(this.name, docId);
95
+ if (got === null)
96
+ return null;
97
+ return {
98
+ doc: JSON.parse(got.body.toString("utf8")),
99
+ revision: got.revision,
100
+ };
101
+ }
102
+ /** Like find, but each result includes its opaque revision. */
103
+ async findWithRevision(filter, opts = {}) {
104
+ const rows = await this.client.findWithRevision(this.name, filterBytes(filter), {
105
+ sort: opts.sort,
106
+ projection: projection(opts),
107
+ skip: opts.skip,
108
+ limit: opts.limit,
109
+ pageSize: opts.pageSize,
110
+ });
111
+ return rows.map((r) => ({
112
+ doc: r.body.length ? JSON.parse(r.body.toString("utf8")) : {},
113
+ revision: r.revision,
114
+ }));
115
+ }
76
116
  countDocuments(filter = null) {
77
117
  return this.client.count(this.name, filterBytes(filter));
78
118
  }
@@ -1 +1 @@
1
- {"version":3,"file":"collection.js","sourceRoot":"","sources":["../src/collection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"collection.js","sourceRoot":"","sources":["../src/collection.ts"],"names":[],"mappings":"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"}
package/dist/errors.d.ts CHANGED
@@ -31,6 +31,12 @@ export declare class ServerBusyError extends ServerError {
31
31
  /** The server rejected the request as malformed or invalid. */
32
32
  export declare class InvalidRequestError extends ServerError {
33
33
  }
34
+ /** A write/admission policy rejection (quota, status 0x09). */
35
+ export declare class PolicyError extends ServerError {
36
+ }
37
+ /** On-disk format the server cannot read (status 0x0A). */
38
+ export declare class UnsupportedFormatError extends ServerError {
39
+ }
34
40
  /** Build the most specific ServerError for a non-OK response. */
35
41
  export declare function fromStatus(status: number, op: string, payload: Buffer): ServerError;
36
42
  //# sourceMappingURL=errors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAEA,wDAAwD;AACxD,qBAAa,WAAY,SAAQ,KAAK;CAAG;AAEzC;;;GAGG;AACH,qBAAa,eAAgB,SAAQ,WAAW;gBAClC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;CAI3D;AAED;;;GAGG;AACH,qBAAa,WAAY,SAAQ,WAAW;IAC1C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;gBAER,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAOvD;AAED,0EAA0E;AAC1E,qBAAa,aAAc,SAAQ,WAAW;CAAG;AAEjD,sDAAsD;AACtD,qBAAa,SAAU,SAAQ,WAAW;CAAG;AAE7C,wEAAwE;AACxE,qBAAa,eAAgB,SAAQ,WAAW;CAAG;AAEnD,+DAA+D;AAC/D,qBAAa,mBAAoB,SAAQ,WAAW;CAAG;AAEvD,iEAAiE;AACjE,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,WAAW,CAiBnF"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAEA,wDAAwD;AACxD,qBAAa,WAAY,SAAQ,KAAK;CAAG;AAEzC;;;GAGG;AACH,qBAAa,eAAgB,SAAQ,WAAW;gBAClC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;CAI3D;AAED;;;GAGG;AACH,qBAAa,WAAY,SAAQ,WAAW;IAC1C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;gBAER,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAOvD;AAED,0EAA0E;AAC1E,qBAAa,aAAc,SAAQ,WAAW;CAAG;AAEjD,sDAAsD;AACtD,qBAAa,SAAU,SAAQ,WAAW;CAAG;AAE7C,wEAAwE;AACxE,qBAAa,eAAgB,SAAQ,WAAW;CAAG;AAEnD,+DAA+D;AAC/D,qBAAa,mBAAoB,SAAQ,WAAW;CAAG;AAEvD,+DAA+D;AAC/D,qBAAa,WAAY,SAAQ,WAAW;CAAG;AAE/C,2DAA2D;AAC3D,qBAAa,sBAAuB,SAAQ,WAAW;CAAG;AAE1D,iEAAiE;AACjE,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,WAAW,CAqBnF"}
package/dist/errors.js CHANGED
@@ -39,6 +39,12 @@ export class ServerBusyError extends ServerError {
39
39
  /** The server rejected the request as malformed or invalid. */
40
40
  export class InvalidRequestError extends ServerError {
41
41
  }
42
+ /** A write/admission policy rejection (quota, status 0x09). */
43
+ export class PolicyError extends ServerError {
44
+ }
45
+ /** On-disk format the server cannot read (status 0x0A). */
46
+ export class UnsupportedFormatError extends ServerError {
47
+ }
42
48
  /** Build the most specific ServerError for a non-OK response. */
43
49
  export function fromStatus(status, op, payload) {
44
50
  const detail = payload.length ? payload.toString("utf8") : "";
@@ -54,6 +60,10 @@ export function fromStatus(status, op, payload) {
54
60
  case Status.InvalidKey:
55
61
  case Status.InvalidValue:
56
62
  return new InvalidRequestError(op, status, detail);
63
+ case Status.PolicyRejected:
64
+ return new PolicyError(op, status, detail);
65
+ case Status.UnsupportedFormat:
66
+ return new UnsupportedFormatError(op, status, detail);
57
67
  default:
58
68
  return new ServerError(op, status, detail);
59
69
  }
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEnD,wDAAwD;AACxD,MAAM,OAAO,WAAY,SAAQ,KAAK;CAAG;AAEzC;;;GAGG;AACH,MAAM,OAAO,eAAgB,SAAQ,WAAW;IAC9C,YAAY,OAAe,EAAE,OAA6B;QACxD,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAChC,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,OAAO,WAAY,SAAQ,WAAW;IACjC,MAAM,CAAS;IACf,EAAE,CAAS;IAEpB,YAAY,EAAU,EAAE,MAAc,EAAE,MAAc;QACpD,MAAM,IAAI,GAAG,GAAG,EAAE,YAAY,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QACnD,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC;QAC1B,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;CACF;AAED,0EAA0E;AAC1E,MAAM,OAAO,aAAc,SAAQ,WAAW;CAAG;AAEjD,sDAAsD;AACtD,MAAM,OAAO,SAAU,SAAQ,WAAW;CAAG;AAE7C,wEAAwE;AACxE,MAAM,OAAO,eAAgB,SAAQ,WAAW;CAAG;AAEnD,+DAA+D;AAC/D,MAAM,OAAO,mBAAoB,SAAQ,WAAW;CAAG;AAEvD,iEAAiE;AACjE,MAAM,UAAU,UAAU,CAAC,MAAc,EAAE,EAAU,EAAE,OAAe;IACpE,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9D,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,MAAM,CAAC,QAAQ;YAClB,OAAO,IAAI,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAC/C,KAAK,MAAM,CAAC,YAAY,CAAC;QACzB,KAAK,MAAM,CAAC,SAAS;YACnB,OAAO,IAAI,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAC3C,KAAK,MAAM,CAAC,UAAU;YACpB,OAAO,IAAI,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QACjD,KAAK,MAAM,CAAC,aAAa,CAAC;QAC1B,KAAK,MAAM,CAAC,UAAU,CAAC;QACvB,KAAK,MAAM,CAAC,YAAY;YACtB,OAAO,IAAI,mBAAmB,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QACrD;YACE,OAAO,IAAI,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEnD,wDAAwD;AACxD,MAAM,OAAO,WAAY,SAAQ,KAAK;CAAG;AAEzC;;;GAGG;AACH,MAAM,OAAO,eAAgB,SAAQ,WAAW;IAC9C,YAAY,OAAe,EAAE,OAA6B;QACxD,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAChC,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,OAAO,WAAY,SAAQ,WAAW;IACjC,MAAM,CAAS;IACf,EAAE,CAAS;IAEpB,YAAY,EAAU,EAAE,MAAc,EAAE,MAAc;QACpD,MAAM,IAAI,GAAG,GAAG,EAAE,YAAY,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QACnD,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC;QAC1B,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;CACF;AAED,0EAA0E;AAC1E,MAAM,OAAO,aAAc,SAAQ,WAAW;CAAG;AAEjD,sDAAsD;AACtD,MAAM,OAAO,SAAU,SAAQ,WAAW;CAAG;AAE7C,wEAAwE;AACxE,MAAM,OAAO,eAAgB,SAAQ,WAAW;CAAG;AAEnD,+DAA+D;AAC/D,MAAM,OAAO,mBAAoB,SAAQ,WAAW;CAAG;AAEvD,+DAA+D;AAC/D,MAAM,OAAO,WAAY,SAAQ,WAAW;CAAG;AAE/C,2DAA2D;AAC3D,MAAM,OAAO,sBAAuB,SAAQ,WAAW;CAAG;AAE1D,iEAAiE;AACjE,MAAM,UAAU,UAAU,CAAC,MAAc,EAAE,EAAU,EAAE,OAAe;IACpE,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9D,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,MAAM,CAAC,QAAQ;YAClB,OAAO,IAAI,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAC/C,KAAK,MAAM,CAAC,YAAY,CAAC;QACzB,KAAK,MAAM,CAAC,SAAS;YACnB,OAAO,IAAI,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAC3C,KAAK,MAAM,CAAC,UAAU;YACpB,OAAO,IAAI,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QACjD,KAAK,MAAM,CAAC,aAAa,CAAC;QAC1B,KAAK,MAAM,CAAC,UAAU,CAAC;QACvB,KAAK,MAAM,CAAC,YAAY;YACtB,OAAO,IAAI,mBAAmB,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QACrD,KAAK,MAAM,CAAC,cAAc;YACxB,OAAO,IAAI,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAC7C,KAAK,MAAM,CAAC,iBAAiB;YAC3B,OAAO,IAAI,sBAAsB,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QACxD;YACE,OAAO,IAAI,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC"}
package/dist/index.d.ts CHANGED
@@ -2,6 +2,6 @@ export { Client, generateId } from "./client.ts";
2
2
  export type { ClientOptions, FindOptions, UpdateResult } from "./client.ts";
3
3
  export { Collection } from "./collection.ts";
4
4
  export type { Document, QueryOptions } from "./collection.ts";
5
- export { AuthError, ConflictError, ConnectionError, InvalidRequestError, ServerBusyError, ServerError, ZydecoError, } from "./errors.ts";
5
+ export { AuthError, ConflictError, ConnectionError, InvalidRequestError, PolicyError, ServerBusyError, ServerError, UnsupportedFormatError, ZydecoError, } from "./errors.ts";
6
6
  export type { Projection, Row, SortKey } from "./protocol.ts";
7
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACjD,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,YAAY,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EACL,SAAS,EACT,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,eAAe,EACf,WAAW,EACX,WAAW,GACZ,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACjD,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,YAAY,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EACL,SAAS,EACT,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,WAAW,EACX,eAAe,EACf,WAAW,EACX,sBAAsB,EACtB,WAAW,GACZ,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC"}
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
1
  export { Client, generateId } from "./client.js";
2
2
  export { Collection } from "./collection.js";
3
- export { AuthError, ConflictError, ConnectionError, InvalidRequestError, ServerBusyError, ServerError, ZydecoError, } from "./errors.js";
3
+ export { AuthError, ConflictError, ConnectionError, InvalidRequestError, PolicyError, ServerBusyError, ServerError, UnsupportedFormatError, ZydecoError, } from "./errors.js";
4
4
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEjD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EACL,SAAS,EACT,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,eAAe,EACf,WAAW,EACX,WAAW,GACZ,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEjD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EACL,SAAS,EACT,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,WAAW,EACX,eAAe,EACf,WAAW,EACX,sBAAsB,EACtB,WAAW,GACZ,MAAM,aAAa,CAAC"}
@@ -17,6 +17,10 @@ export declare const Cmd: {
17
17
  readonly Update: 36;
18
18
  readonly Delete: 37;
19
19
  readonly Count: 38;
20
+ readonly DocGetRev: 39;
21
+ readonly FindRev: 40;
22
+ readonly DocPutIfMatch: 41;
23
+ readonly DocUpdateIfMatch: 42;
20
24
  readonly IndexDef: 48;
21
25
  readonly SessionInit: 64;
22
26
  readonly Ping: 240;
@@ -50,14 +54,19 @@ export declare function encodePut(key: Buffer, value: Buffer, expiresAt?: number
50
54
  /** Build a Key payload for Get/Del. */
51
55
  export declare function encodeKey(key: Buffer): Buffer;
52
56
  /**
53
- * DocPut payload: [collection][doc_id][body][flags]. `body` is already-
54
- * serialized JSON (the codec treats it as opaque bytes).
57
+ * DocPut payload: [collection][doc_id][body][flags][optional expires_at u64 BE].
58
+ * `body` is already-serialized JSON (the codec treats it as opaque bytes).
59
+ * `expiresAt` is absolute unix millis; 0 omits the trailer (never expires).
55
60
  */
56
- export declare function encodeDocPut(collection: string, docId: Buffer, body: Buffer, relaxed: boolean): Buffer;
61
+ export declare function encodeDocPut(collection: string, docId: Buffer, body: Buffer, relaxed: boolean, expiresAt?: number | bigint): Buffer;
62
+ /** Conditional replace: [collection][doc_id][body][flags][if_match u64][optional expires_at]. */
63
+ export declare function encodeDocPutIfMatch(collection: string, docId: Buffer, body: Buffer, relaxed: boolean, ifMatch: bigint | number, expiresAt?: number | bigint): Buffer;
64
+ /** Conditional by-id update: [collection][doc_id][update][flags][if_match u64]. */
65
+ export declare function encodeDocUpdateIfMatch(collection: string, docId: Buffer, update: Buffer, relaxed: boolean, ifMatch: bigint | number): Buffer;
57
66
  /** DocDel payload: [collection][doc_id]. */
58
67
  export declare function encodeDocDel(collection: string, docId: Buffer): Buffer;
59
- /** IndexDef payload: [collection][index][unique u8][field_count u32]{[field]}. */
60
- export declare function encodeIndexDef(collection: string, index: string, fields: string[], unique: boolean): Buffer;
68
+ /** IndexDef payload: [collection][index][unique u8][field_count u32]{[field]}[optional expire_after_seconds u64]. */
69
+ export declare function encodeIndexDef(collection: string, index: string, fields: string[], unique: boolean, expireAfterSeconds?: number | bigint): Buffer;
61
70
  /** By-id Query payload: [mode][collection][doc_id]. */
62
71
  export declare function encodeQueryById(collection: string, docId: Buffer): Buffer;
63
72
  /**
@@ -90,6 +99,8 @@ export declare function encodeDistinct(collection: string, filter: Buffer, field
90
99
  export interface Row {
91
100
  docId: Buffer;
92
101
  body: Buffer;
102
+ /** Present only when decoded via {@link decodePageWithRevision}. */
103
+ revision?: bigint;
93
104
  }
94
105
  /** A decoded response page. `cursor` is null when there are no more pages. */
95
106
  export interface Page {
@@ -98,4 +109,11 @@ export interface Page {
98
109
  }
99
110
  /** Decode a response page: [row_count u32]{[doc_id][body]}[cursor]. */
100
111
  export declare function decodePage(buf: Buffer): Page;
112
+ /** Decode a FindRev page (each row appends an 8-byte revision). */
113
+ export declare function decodePageWithRevision(buf: Buffer): Page;
114
+ /** Decode a DocGetRev response: [body lp][revision u64 BE]. */
115
+ export declare function decodeDocGetRevResponse(buf: Buffer): {
116
+ body: Buffer;
117
+ revision: bigint;
118
+ };
101
119
  //# sourceMappingURL=protocol.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"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"}
package/dist/protocol.js CHANGED
@@ -18,6 +18,10 @@ export const Cmd = {
18
18
  Update: 0x24,
19
19
  Delete: 0x25,
20
20
  Count: 0x26,
21
+ DocGetRev: 0x27,
22
+ FindRev: 0x28,
23
+ DocPutIfMatch: 0x29,
24
+ DocUpdateIfMatch: 0x2a,
21
25
  IndexDef: 0x30,
22
26
  SessionInit: 0x40,
23
27
  Ping: 0xf0,
@@ -125,21 +129,54 @@ function utf8(s) {
125
129
  return Buffer.from(s, "utf8");
126
130
  }
127
131
  /**
128
- * DocPut payload: [collection][doc_id][body][flags]. `body` is already-
129
- * serialized JSON (the codec treats it as opaque bytes).
132
+ * DocPut payload: [collection][doc_id][body][flags][optional expires_at u64 BE].
133
+ * `body` is already-serialized JSON (the codec treats it as opaque bytes).
134
+ * `expiresAt` is absolute unix millis; 0 omits the trailer (never expires).
130
135
  */
131
- export function encodeDocPut(collection, docId, body, relaxed) {
132
- return Buffer.concat([lp(utf8(collection)), lp(docId), lp(body), flag(relaxed)]);
136
+ export function encodeDocPut(collection, docId, body, relaxed, expiresAt = 0) {
137
+ const parts = [lp(utf8(collection)), lp(docId), lp(body), flag(relaxed)];
138
+ const exp = BigInt(expiresAt);
139
+ if (exp !== 0n) {
140
+ const e = Buffer.allocUnsafe(8);
141
+ e.writeBigUInt64BE(exp, 0);
142
+ parts.push(e);
143
+ }
144
+ return Buffer.concat(parts);
145
+ }
146
+ /** Conditional replace: [collection][doc_id][body][flags][if_match u64][optional expires_at]. */
147
+ export function encodeDocPutIfMatch(collection, docId, body, relaxed, ifMatch, expiresAt = 0) {
148
+ const m = Buffer.allocUnsafe(8);
149
+ m.writeBigUInt64BE(BigInt(ifMatch), 0);
150
+ const parts = [lp(utf8(collection)), lp(docId), lp(body), flag(relaxed), m];
151
+ const exp = BigInt(expiresAt);
152
+ if (exp !== 0n) {
153
+ const e = Buffer.allocUnsafe(8);
154
+ e.writeBigUInt64BE(exp, 0);
155
+ parts.push(e);
156
+ }
157
+ return Buffer.concat(parts);
158
+ }
159
+ /** Conditional by-id update: [collection][doc_id][update][flags][if_match u64]. */
160
+ export function encodeDocUpdateIfMatch(collection, docId, update, relaxed, ifMatch) {
161
+ const m = Buffer.allocUnsafe(8);
162
+ m.writeBigUInt64BE(BigInt(ifMatch), 0);
163
+ return Buffer.concat([lp(utf8(collection)), lp(docId), lp(update), flag(relaxed), m]);
133
164
  }
134
165
  /** DocDel payload: [collection][doc_id]. */
135
166
  export function encodeDocDel(collection, docId) {
136
167
  return Buffer.concat([lp(utf8(collection)), lp(docId)]);
137
168
  }
138
- /** IndexDef payload: [collection][index][unique u8][field_count u32]{[field]}. */
139
- export function encodeIndexDef(collection, index, fields, unique) {
169
+ /** IndexDef payload: [collection][index][unique u8][field_count u32]{[field]}[optional expire_after_seconds u64]. */
170
+ export function encodeIndexDef(collection, index, fields, unique, expireAfterSeconds = 0) {
140
171
  const parts = [lp(utf8(collection)), lp(utf8(index)), boolByte(unique), u32(fields.length)];
141
172
  for (const f of fields)
142
173
  parts.push(lp(utf8(f)));
174
+ const exp = BigInt(expireAfterSeconds);
175
+ if (exp !== 0n) {
176
+ const e = Buffer.allocUnsafe(8);
177
+ e.writeBigUInt64BE(exp, 0);
178
+ parts.push(e);
179
+ }
143
180
  return Buffer.concat(parts);
144
181
  }
145
182
  /** By-id Query payload: [mode][collection][doc_id]. */
@@ -208,6 +245,13 @@ export function encodeDistinct(collection, filter, field) {
208
245
  }
209
246
  /** Decode a response page: [row_count u32]{[doc_id][body]}[cursor]. */
210
247
  export function decodePage(buf) {
248
+ return decodePageInner(buf, false);
249
+ }
250
+ /** Decode a FindRev page (each row appends an 8-byte revision). */
251
+ export function decodePageWithRevision(buf) {
252
+ return decodePageInner(buf, true);
253
+ }
254
+ function decodePageInner(buf, withRevision) {
211
255
  let off = 0;
212
256
  const need = (n) => {
213
257
  if (off + n > buf.length)
@@ -230,7 +274,13 @@ export function decodePage(buf) {
230
274
  need(blen);
231
275
  const body = buf.subarray(off, off + blen);
232
276
  off += blen;
233
- rows.push({ docId, body });
277
+ let revision;
278
+ if (withRevision) {
279
+ need(8);
280
+ revision = buf.readBigUInt64BE(off);
281
+ off += 8;
282
+ }
283
+ rows.push({ docId, body, revision });
234
284
  }
235
285
  need(4);
236
286
  const clen = buf.readUInt32BE(off);
@@ -239,4 +289,15 @@ export function decodePage(buf) {
239
289
  const cursorBytes = buf.subarray(off, off + clen);
240
290
  return { rows, cursor: cursorBytes.length === 0 ? null : cursorBytes };
241
291
  }
292
+ /** Decode a DocGetRev response: [body lp][revision u64 BE]. */
293
+ export function decodeDocGetRevResponse(buf) {
294
+ if (buf.length < 4)
295
+ throw new Error("zydecodb: payload truncated");
296
+ const blen = buf.readUInt32BE(0);
297
+ if (buf.length < 4 + blen + 8)
298
+ throw new Error("zydecodb: payload truncated");
299
+ const body = buf.subarray(4, 4 + blen);
300
+ const revision = buf.readBigUInt64BE(4 + blen);
301
+ return { body, revision };
302
+ }
242
303
  //# sourceMappingURL=protocol.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zydecodb",
3
- "version": "0.9.0-beta.6",
3
+ "version": "0.9.0",
4
4
  "description": "Official TypeScript/Node driver for ZydecoDB.",
5
5
  "license": "MIT",
6
6
  "author": "Dataparade",