anchordb 1.0.6 → 1.2.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 +49 -0
- package/dist/cjs/core/anchor-db.d.ts +18 -3
- package/dist/cjs/core/anchor-db.d.ts.map +1 -1
- package/dist/cjs/core/anchor-db.js +26 -12
- package/dist/cjs/core/anchor-db.js.map +1 -1
- package/dist/cjs/core/runtime.d.ts +11 -0
- package/dist/cjs/core/runtime.d.ts.map +1 -1
- package/dist/cjs/index.d.ts +3 -1
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +4 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/inspector/agent.d.ts +31 -1
- package/dist/cjs/inspector/agent.d.ts.map +1 -1
- package/dist/cjs/inspector/agent.js +91 -2
- package/dist/cjs/inspector/agent.js.map +1 -1
- package/dist/cjs/inspector/client.d.ts +18 -1
- package/dist/cjs/inspector/client.d.ts.map +1 -1
- package/dist/cjs/inspector/client.js +14 -0
- package/dist/cjs/inspector/client.js.map +1 -1
- package/dist/cjs/inspector/protocol.d.ts +35 -1
- package/dist/cjs/inspector/protocol.d.ts.map +1 -1
- package/dist/cjs/inspector/protocol.js.map +1 -1
- package/dist/cjs/inspector/relay-connection.d.ts +61 -0
- package/dist/cjs/inspector/relay-connection.d.ts.map +1 -0
- package/dist/cjs/inspector/relay-connection.js +149 -0
- package/dist/cjs/inspector/relay-connection.js.map +1 -0
- package/dist/cjs/model/model.d.ts.map +1 -1
- package/dist/cjs/model/model.js +18 -1
- package/dist/cjs/model/model.js.map +1 -1
- package/dist/esm/core/anchor-db.d.ts +18 -3
- package/dist/esm/core/anchor-db.d.ts.map +1 -1
- package/dist/esm/core/anchor-db.js +26 -12
- package/dist/esm/core/anchor-db.js.map +1 -1
- package/dist/esm/core/runtime.d.ts +11 -0
- package/dist/esm/core/runtime.d.ts.map +1 -1
- package/dist/esm/index.d.ts +3 -1
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/inspector/agent.d.ts +31 -1
- package/dist/esm/inspector/agent.d.ts.map +1 -1
- package/dist/esm/inspector/agent.js +91 -2
- package/dist/esm/inspector/agent.js.map +1 -1
- package/dist/esm/inspector/client.d.ts +18 -1
- package/dist/esm/inspector/client.d.ts.map +1 -1
- package/dist/esm/inspector/client.js +14 -0
- package/dist/esm/inspector/client.js.map +1 -1
- package/dist/esm/inspector/protocol.d.ts +35 -1
- package/dist/esm/inspector/protocol.d.ts.map +1 -1
- package/dist/esm/inspector/protocol.js.map +1 -1
- package/dist/esm/inspector/relay-connection.d.ts +61 -0
- package/dist/esm/inspector/relay-connection.d.ts.map +1 -0
- package/dist/esm/inspector/relay-connection.js +144 -0
- package/dist/esm/inspector/relay-connection.js.map +1 -0
- package/dist/esm/model/model.d.ts.map +1 -1
- package/dist/esm/model/model.js +18 -1
- package/dist/esm/model/model.js.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,55 @@ All notable changes to the `anchordb` packages.
|
|
|
5
5
|
This project follows [semantic versioning](https://semver.org/). While the version is `0.x`, minor
|
|
6
6
|
releases may contain breaking changes.
|
|
7
7
|
|
|
8
|
+
## 1.2.0
|
|
9
|
+
|
|
10
|
+
Anchor Lens can create and drop indexes, and a malformed `_id` is refused instead of stored. Both
|
|
11
|
+
found while testing Lens on a phone.
|
|
12
|
+
|
|
13
|
+
- **Create Index and Drop Index on the inspector protocol.** `InspectorClient.createIndex(collection,
|
|
14
|
+
key, options)` and `dropIndex(collection, name)`, routed through `Model.createIndex()` and
|
|
15
|
+
`dropIndex()`. Agents had advertised `indexes:write` with no method behind it. Keys are checked
|
|
16
|
+
(`1` or `-1`, no `$` fields), read-only sessions refuse both, a unique index over values that already
|
|
17
|
+
collide fails with `duplicate_key`, and `_id_` cannot be dropped.
|
|
18
|
+
- **`getSchema(collection)` on the inspector protocol** — a declared model's fields with their type,
|
|
19
|
+
required flag, enum and plain default, nested objects as dotted paths. What Lens needs to offer
|
|
20
|
+
"Add all fields" on Insert document. Validator functions and function defaults are not sent; a
|
|
21
|
+
collection with no declared model returns no fields.
|
|
22
|
+
- **An insert stored an object `_id` as "[object Object]".** Insert skipped the `_id` handling updates
|
|
23
|
+
apply, and storage keys rows by the id's string form — so Extended JSON pasted into Lens, with
|
|
24
|
+
`{ "$oid": … }` read as a plain object, produced such a row, and every such document would have
|
|
25
|
+
collided on it. Objects that are not ObjectIds are now refused with a `CastError`. Strings and
|
|
26
|
+
numbers are kept, as the driver keeps them.
|
|
27
|
+
|
|
28
|
+
## 1.1.0
|
|
29
|
+
|
|
30
|
+
**Anchor Lens can read other apps.** Pointing Lens at a second app on a real phone found every step of
|
|
31
|
+
that path broken or missing.
|
|
32
|
+
|
|
33
|
+
- **`inspector: { enabled, relayUrl }` did nothing.** It ran a production check and never connected.
|
|
34
|
+
With `relayUrl` set the database now publishes itself to `anchor-relay` on construction, stays
|
|
35
|
+
connected, reconnects after a drop, and reports pairing codes through `inspector.onPairing` and the
|
|
36
|
+
`inspector:pairing` / `inspector:state` events. `db.inspector` exposes the connection, and
|
|
37
|
+
`connectInspectorToRelay(db, options)` does the same at runtime.
|
|
38
|
+
- **Pairing asked for a 32-character hex challenge, typed on a phone.** The agent now sends it with
|
|
39
|
+
`connect` as `ConnectResult.challenge` — a nonce, not a secret; the code never leaves the app — and
|
|
40
|
+
opens a fresh pairing window, announcing its code, when the last one was spent or expired. Lens types
|
|
41
|
+
only the code.
|
|
42
|
+
- **The production guard never fired on React Native.** It read `process.env.NODE_ENV` through
|
|
43
|
+
`globalThis`, which Metro does not inline, so a release build looked like development. `__DEV__ ===
|
|
44
|
+
false` now counts as production too.
|
|
45
|
+
- **`anchordb-relay`:**
|
|
46
|
+
- With `--host 0.0.0.0` it printed `ws://0.0.0.0:9440` — the listen address, which no device can
|
|
47
|
+
dial. It now prints the machine's network addresses.
|
|
48
|
+
- It prints the Lens link as a QR code in the terminal.
|
|
49
|
+
- `--room <id>` fixes the room, so an app built with the agent URL survives relay restarts.
|
|
50
|
+
- The room it printed was reclaimed after 30 idle minutes, so an app connecting later got "unknown
|
|
51
|
+
room". It is now kept for the life of the relay.
|
|
52
|
+
- Stopping it hung while an app or Lens was connected: neither `wss.close` nor `http.close` ends
|
|
53
|
+
established connections. They are now terminated.
|
|
54
|
+
- Tested over real sockets: a relay server, an app publishing with `connectInspectorToRelay`, and a Lens
|
|
55
|
+
client that pairs with only the code, reads and writes, then shuts down cleanly.
|
|
56
|
+
|
|
8
57
|
## 1.0.6
|
|
9
58
|
|
|
10
59
|
Crash on launch in React Native apps that load `anchordb` before `anchordb-react`.
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { HybridLogicalClock } from "./hlc.js";
|
|
2
2
|
import { TypedEmitter } from "../events/emitter.js";
|
|
3
|
+
import type { PairingInfo } from "../inspector/auth.js";
|
|
4
|
+
import { type RelayInspector } from "../inspector/relay-connection.js";
|
|
3
5
|
import { TimeService } from "../timestamps/index.js";
|
|
4
6
|
import { Schema } from "../schema/schema.js";
|
|
5
7
|
import { Model } from "../model/model.js";
|
|
@@ -24,7 +26,15 @@ export interface SyncConfig {
|
|
|
24
26
|
}
|
|
25
27
|
export interface InspectorConfig {
|
|
26
28
|
enabled: boolean;
|
|
29
|
+
/**
|
|
30
|
+
* The agent URL `anchor-relay` prints — `ws://<laptop-ip>:9440/relay?room=<room>&role=agent`. When set,
|
|
31
|
+
* the database connects to the relay on construction and stays connected, so Anchor Lens can open it.
|
|
32
|
+
*/
|
|
27
33
|
relayUrl?: string;
|
|
34
|
+
/** Every new pairing code. Show it on screen: Lens asks for it. Also emitted as `inspector:pairing`. */
|
|
35
|
+
onPairing?: (pairing: PairingInfo) => void;
|
|
36
|
+
/** Refuse every write from Lens. */
|
|
37
|
+
readOnly?: boolean;
|
|
28
38
|
authentication?: {
|
|
29
39
|
mode: "temporary-token";
|
|
30
40
|
ttlSeconds?: number;
|
|
@@ -64,6 +74,7 @@ export declare class AnchorDB {
|
|
|
64
74
|
readonly time: TimeService;
|
|
65
75
|
readonly config: AnchorDBConfig;
|
|
66
76
|
private readonly emitter;
|
|
77
|
+
private inspectorValue;
|
|
67
78
|
private readonly models;
|
|
68
79
|
private readonly constructors;
|
|
69
80
|
private readonly clockInstance;
|
|
@@ -79,6 +90,8 @@ export declare class AnchorDB {
|
|
|
79
90
|
get syncEnabled(): boolean;
|
|
80
91
|
get clientId(): string;
|
|
81
92
|
get adapter(): DatabaseAdapter;
|
|
93
|
+
/** The live relay connection for Anchor Lens, when `inspector.relayUrl` is configured. */
|
|
94
|
+
get inspector(): RelayInspector | null;
|
|
82
95
|
/** Exposed for the sync engine, which must stamp and advance the same clock the models use. */
|
|
83
96
|
get clock(): HybridLogicalClock;
|
|
84
97
|
/** Opened lazily on first use, so construction never does I/O. */
|
|
@@ -144,10 +157,12 @@ export declare class AnchorDB {
|
|
|
144
157
|
private runtimeCache;
|
|
145
158
|
private runtime;
|
|
146
159
|
/**
|
|
147
|
-
*
|
|
148
|
-
*
|
|
160
|
+
* Start the inspector described by the config.
|
|
161
|
+
*
|
|
162
|
+
* With a `relayUrl` the database publishes itself to Anchor Lens through the relay. Without one it
|
|
163
|
+
* only runs the production check, as before — an app wiring an `InspectorAgent` by hand still gets it.
|
|
149
164
|
*/
|
|
150
|
-
private
|
|
165
|
+
private startInspector;
|
|
151
166
|
}
|
|
152
167
|
/** Alias matching the brief's original naming. */
|
|
153
168
|
export declare const LocalDB: typeof AnchorDB;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anchor-db.d.ts","sourceRoot":"","sources":["../../../src/core/anchor-db.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"anchor-db.d.ts","sourceRoot":"","sources":["../../../src/core/anchor-db.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@ const errors_ts_1 = require("./errors.js");
|
|
|
5
5
|
const hlc_ts_1 = require("./hlc.js");
|
|
6
6
|
const uuid_ts_1 = require("./uuid.js");
|
|
7
7
|
const emitter_ts_1 = require("../events/emitter.js");
|
|
8
|
+
const relay_connection_ts_1 = require("../inspector/relay-connection.js");
|
|
8
9
|
const index_ts_1 = require("../timestamps/index.js");
|
|
9
10
|
const timezone_ts_1 = require("../timestamps/timezone.js");
|
|
10
11
|
const schema_ts_1 = require("../schema/schema.js");
|
|
@@ -27,6 +28,7 @@ const memory_ts_1 = require("../storage/adapters/memory.js");
|
|
|
27
28
|
class AnchorDB {
|
|
28
29
|
constructor(config) {
|
|
29
30
|
this.emitter = new emitter_ts_1.TypedEmitter();
|
|
31
|
+
this.inspectorValue = null;
|
|
30
32
|
this.models = new Map();
|
|
31
33
|
this.constructors = new Map();
|
|
32
34
|
this.openPromise = null;
|
|
@@ -71,7 +73,7 @@ class AnchorDB {
|
|
|
71
73
|
this.adapterInstance = config.adapter ?? new memory_ts_1.MemoryAdapter(config.name);
|
|
72
74
|
this.syncStatusValue = config.sync ? "idle" : "disabled";
|
|
73
75
|
if (config.inspector?.enabled)
|
|
74
|
-
this.
|
|
76
|
+
this.inspectorValue = this.startInspector(config.inspector);
|
|
75
77
|
}
|
|
76
78
|
/** True when a `sync` block was supplied. */
|
|
77
79
|
get syncEnabled() {
|
|
@@ -83,6 +85,10 @@ class AnchorDB {
|
|
|
83
85
|
get adapter() {
|
|
84
86
|
return this.adapterInstance;
|
|
85
87
|
}
|
|
88
|
+
/** The live relay connection for Anchor Lens, when `inspector.relayUrl` is configured. */
|
|
89
|
+
get inspector() {
|
|
90
|
+
return this.inspectorValue;
|
|
91
|
+
}
|
|
86
92
|
/** Exposed for the sync engine, which must stamp and advance the same clock the models use. */
|
|
87
93
|
get clock() {
|
|
88
94
|
return this.clockInstance;
|
|
@@ -111,6 +117,7 @@ class AnchorDB {
|
|
|
111
117
|
async close() {
|
|
112
118
|
if (this.closed)
|
|
113
119
|
return;
|
|
120
|
+
await this.inspectorValue?.close();
|
|
114
121
|
if (this.openPromise) {
|
|
115
122
|
await this.openPromise;
|
|
116
123
|
await this.adapterInstance.setState("anchor:hlc", encodeClock(this.clockInstance));
|
|
@@ -254,19 +261,26 @@ class AnchorDB {
|
|
|
254
261
|
return this.runtimeCache;
|
|
255
262
|
}
|
|
256
263
|
/**
|
|
257
|
-
*
|
|
258
|
-
*
|
|
264
|
+
* Start the inspector described by the config.
|
|
265
|
+
*
|
|
266
|
+
* With a `relayUrl` the database publishes itself to Anchor Lens through the relay. Without one it
|
|
267
|
+
* only runs the production check, as before — an app wiring an `InspectorAgent` by hand still gets it.
|
|
259
268
|
*/
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
"Anchor Lens and must not ship in a release build. If this is deliberate (an internal build, " +
|
|
265
|
-
"say), set inspector.allowInProduction: true to acknowledge it.");
|
|
269
|
+
startInspector(inspector) {
|
|
270
|
+
if (!inspector.relayUrl) {
|
|
271
|
+
(0, relay_connection_ts_1.assertInspectorAllowed)(this.name, inspector.allowInProduction);
|
|
272
|
+
return null;
|
|
266
273
|
}
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
274
|
+
return (0, relay_connection_ts_1.connectInspectorToRelay)(this, {
|
|
275
|
+
relayUrl: inspector.relayUrl,
|
|
276
|
+
...(inspector.allowInProduction ? { allowInProduction: true } : {}),
|
|
277
|
+
...(inspector.readOnly ? { readOnly: true } : {}),
|
|
278
|
+
onPairing: (pairing) => {
|
|
279
|
+
this.emitter.emit("inspector:pairing", pairing);
|
|
280
|
+
inspector.onPairing?.(pairing);
|
|
281
|
+
},
|
|
282
|
+
onStateChange: (state, detail) => this.emitter.emit("inspector:state", { state, ...(detail !== undefined ? { detail } : {}) }),
|
|
283
|
+
});
|
|
270
284
|
}
|
|
271
285
|
}
|
|
272
286
|
exports.AnchorDB = AnchorDB;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anchor-db.js","sourceRoot":"","sources":["../../../src/core/anchor-db.ts"],"names":[],"mappings":";;;AAAA,2CAAgD;AAChD,qCAA8C;AAC9C,uCAA6C;AAC7C,qDAAoD;
|
|
1
|
+
{"version":3,"file":"anchor-db.js","sourceRoot":"","sources":["../../../src/core/anchor-db.ts"],"names":[],"mappings":"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"}
|
|
@@ -63,6 +63,17 @@ export interface AnchorEvents extends Record<string, unknown> {
|
|
|
63
63
|
"auth:expired": {
|
|
64
64
|
at: string;
|
|
65
65
|
};
|
|
66
|
+
/** A new code for pairing Anchor Lens, when `inspector.relayUrl` is set. Put it on screen. */
|
|
67
|
+
"inspector:pairing": {
|
|
68
|
+
code: string;
|
|
69
|
+
challenge: string;
|
|
70
|
+
expiresAt: string;
|
|
71
|
+
};
|
|
72
|
+
/** The relay connection behind `inspector.relayUrl`. */
|
|
73
|
+
"inspector:state": {
|
|
74
|
+
state: "connecting" | "open" | "closed";
|
|
75
|
+
detail?: string;
|
|
76
|
+
};
|
|
66
77
|
}
|
|
67
78
|
/**
|
|
68
79
|
* The shared services a Model needs, passed as one object so Model never reaches back into AnchorDB.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../src/core/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AACnD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AACpE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE/C,8FAA8F;AAC9F,MAAM,WAAW,YAAa,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC3D,MAAM,EAAE;QACN,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;QACtD,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;KAC1C,CAAC;IACF,eAAe,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IACrD,MAAM,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;IACvB,OAAO,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;IACxB,YAAY,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAClC,eAAe,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IACpD,eAAe,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3F,YAAY,EAAE;QAAE,KAAK,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IACvD,QAAQ,EAAE;QACR,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAC;QACtC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC/B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAChC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC/B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACnC,CAAC;IACF,uBAAuB,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IACtF,eAAe,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC;IAC9G,cAAc,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../src/core/runtime.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/index.d.ts
CHANGED
|
@@ -68,10 +68,12 @@ export type { InspectorAuthOptions, PairingInfo, Session } from "./inspector/aut
|
|
|
68
68
|
export { createInProcessTransportPair } from "./inspector/transports/in-process.js";
|
|
69
69
|
export { WebSocketTransport } from "./inspector/transports/websocket.js";
|
|
70
70
|
export type { WebSocketLike, WebSocketTransportOptions } from "./inspector/transports/websocket.js";
|
|
71
|
+
export { agentRelayUrl, connectInspectorToRelay } from "./inspector/relay-connection.js";
|
|
72
|
+
export type { RelayInspector, RelayInspectorOptions, RelayInspectorState } from "./inspector/relay-connection.js";
|
|
71
73
|
export { INSPECTOR_PROTOCOL_VERSION, makeRequest, makeResponse, makeError, makeEvent, isRequest, isResponse, isEvent, } from "./inspector/protocol.js";
|
|
72
74
|
export { BRIDGE_PROTOCOL_VERSION, BridgeError, MongoBridgeClient, bridgeUrl, bridgeUrlFromRelay, redactMongoUri, } from "./inspector/bridge.js";
|
|
73
75
|
export type { BridgeConnectResult, BridgeErrorCode, BridgeOp, BridgeReadResult, BridgeRequest, BridgeResponse, BridgeWriteMode, BridgeWriteResult, MongoBridgeClientOptions, MongoCollectionInfo, } from "./inspector/bridge.js";
|
|
74
|
-
export type { BulkWriteSummary, CollectionSummary, ConflictRecord, ConnectResult, DocumentPage, InspectorCapability, InspectorError, InspectorErrorCode, InspectorEvent, InspectorEventName, InspectorMessage, InspectorMethod, InspectorRequest, InspectorResponse, InspectorStats, InspectorTransport, } from "./inspector/protocol.js";
|
|
76
|
+
export type { BulkWriteSummary, CollectionSchema, CollectionSummary, ConflictRecord, ConnectResult, DocumentPage, InspectorCapability, InspectorError, InspectorErrorCode, InspectorEvent, SchemaField, InspectorEventName, InspectorMessage, InspectorMethod, InspectorRequest, InspectorResponse, InspectorStats, InspectorTransport, } from "./inspector/protocol.js";
|
|
75
77
|
export { observe, observeQuery, observeSyncStatus } from "./reactive/live-query.js";
|
|
76
78
|
export type { LiveObserver, LiveQueryOptions, LiveSubscription } from "./reactive/live-query.js";
|
|
77
79
|
export { SqlAdapterBase } from "./storage/adapters/sql-base.js";
|
package/dist/cjs/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/index.js
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
exports.getPath = exports.flattenPaths = exports.deepClone = exports.compareValues = exports.updatedPaths = exports.listUpdateOperators = exports.registerUpdateOperator = exports.applyUpdate = exports.listQueryOperators = exports.registerQueryOperator = exports.extractConstraints = exports.matchesFilter = exports.MemoryAdapter = exports.TypedEmitter = exports.zonedTimeToUtc = exports.toUtcIso = exports.parseZonedTimeToUtc = exports.isValidTimeZone = exports.formatInTimeZone = exports.detectDeviceTimeZone = exports.assertValidTimeZone = exports.TimeService = exports.duplicateKeyError = exports.ValidatorError = exports.ValidationError = exports.StrictModeError = exports.MongoServerError = exports.DUPLICATE_KEY_CODE = exports.DocumentNotFoundError = exports.CastError = exports.BulkWriteError = exports.AnchorConfigError = exports.AnchorError = exports.encodeHlc = exports.decodeHlc = exports.compareHlcStamps = exports.compareHlc = exports.HybridLogicalClock = exports.generateClientId = exports.uuidv7 = exports.ObjectId = exports.Query = exports.Model = exports.validateDocument = exports.castValue = exports.castDocument = exports.SchemaTypes = exports.Schema = exports.LocalDB = exports.AnchorDB = void 0;
|
|
10
10
|
exports.createModelConstructor = exports.AnchorDocument = exports.StorageAggregationSource = exports.MISSING = exports.isPortableOperator = exports.listExpressionOperators = exports.registerExpressionOperator = exports.evaluateExpression = exports.planPushdown = exports.validatePipeline = exports.runPipeline = exports.toCsv = exports.parseCsvRows = exports.looksLikeCsv = exports.inferCsvValue = exports.fromCsv = exports.csvHeaders = exports.mongoimportCommand = exports.importDatabase = exports.importCollection = exports.exportDatabase = exports.exportCollection = exports.detectImportFormat = exports.parseEJSON = exports.stringifyEJSON = exports.fromEJSON = exports.toEJSON = exports.ServerWinsStrategy = exports.LastWriteWinsStrategy = exports.FieldLevelStrategy = exports.CustomStrategy = exports.ConflictStrategyRegistry = exports.ClientWinsStrategy = exports.SyncTransportError = exports.SyncAuthError = exports.PROTOCOL_VERSION = exports.MemorySyncServer = exports.RestSyncAdapter = exports.SHADOW_COLLECTION = exports.SyncEngine = exports.QUEUE_COLLECTION = exports.MutationQueue = exports.attachSync = exports.NULL_SENTINEL = exports.defaultIndexName = exports.extractIndexKeys = exports.valuesEqual = exports.unsetPath = exports.setPath = exports.hasPath = void 0;
|
|
11
|
-
exports.IndexedDbAdapter = exports.SqlAdapterBase = exports.observeSyncStatus = exports.observeQuery = exports.observe = exports.redactMongoUri = exports.bridgeUrlFromRelay = exports.bridgeUrl = exports.MongoBridgeClient = exports.BridgeError = exports.BRIDGE_PROTOCOL_VERSION = exports.isEvent = exports.isResponse = exports.isRequest = exports.makeEvent = exports.makeError = exports.makeResponse = exports.makeRequest = exports.INSPECTOR_PROTOCOL_VERSION = exports.WebSocketTransport = exports.createInProcessTransportPair = exports.timingSafeEqual = exports.hmacSha256 = exports.InspectorAuth = exports.InspectorClientError = exports.InspectorClient = exports.InspectorRequestError = exports.InspectorAgent = exports.castFilter = void 0;
|
|
11
|
+
exports.IndexedDbAdapter = exports.SqlAdapterBase = exports.observeSyncStatus = exports.observeQuery = exports.observe = exports.redactMongoUri = exports.bridgeUrlFromRelay = exports.bridgeUrl = exports.MongoBridgeClient = exports.BridgeError = exports.BRIDGE_PROTOCOL_VERSION = exports.isEvent = exports.isResponse = exports.isRequest = exports.makeEvent = exports.makeError = exports.makeResponse = exports.makeRequest = exports.INSPECTOR_PROTOCOL_VERSION = exports.connectInspectorToRelay = exports.agentRelayUrl = exports.WebSocketTransport = exports.createInProcessTransportPair = exports.timingSafeEqual = exports.hmacSha256 = exports.InspectorAuth = exports.InspectorClientError = exports.InspectorClient = exports.InspectorRequestError = exports.InspectorAgent = exports.castFilter = void 0;
|
|
12
12
|
var anchor_db_ts_1 = require("./core/anchor-db.js");
|
|
13
13
|
Object.defineProperty(exports, "AnchorDB", { enumerable: true, get: function () { return anchor_db_ts_1.AnchorDB; } });
|
|
14
14
|
Object.defineProperty(exports, "LocalDB", { enumerable: true, get: function () { return anchor_db_ts_1.LocalDB; } });
|
|
@@ -164,6 +164,9 @@ var in_process_ts_1 = require("./inspector/transports/in-process.js");
|
|
|
164
164
|
Object.defineProperty(exports, "createInProcessTransportPair", { enumerable: true, get: function () { return in_process_ts_1.createInProcessTransportPair; } });
|
|
165
165
|
var websocket_ts_1 = require("./inspector/transports/websocket.js");
|
|
166
166
|
Object.defineProperty(exports, "WebSocketTransport", { enumerable: true, get: function () { return websocket_ts_1.WebSocketTransport; } });
|
|
167
|
+
var relay_connection_ts_1 = require("./inspector/relay-connection.js");
|
|
168
|
+
Object.defineProperty(exports, "agentRelayUrl", { enumerable: true, get: function () { return relay_connection_ts_1.agentRelayUrl; } });
|
|
169
|
+
Object.defineProperty(exports, "connectInspectorToRelay", { enumerable: true, get: function () { return relay_connection_ts_1.connectInspectorToRelay; } });
|
|
167
170
|
var protocol_ts_2 = require("./inspector/protocol.js");
|
|
168
171
|
Object.defineProperty(exports, "INSPECTOR_PROTOCOL_VERSION", { enumerable: true, get: function () { return protocol_ts_2.INSPECTOR_PROTOCOL_VERSION; } });
|
|
169
172
|
Object.defineProperty(exports, "makeRequest", { enumerable: true, get: function () { return protocol_ts_2.makeRequest; } });
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,6 +9,13 @@ export interface InspectorAgentOptions {
|
|
|
9
9
|
anchorVersion?: string;
|
|
10
10
|
/** Conflicts to retain for the Lens conflict viewer. */
|
|
11
11
|
conflictHistory?: number;
|
|
12
|
+
/**
|
|
13
|
+
* Called with every new pairing code, so the app can put it on screen.
|
|
14
|
+
*
|
|
15
|
+
* The code must reach the developer through the app, never through the relay or a QR code — that
|
|
16
|
+
* is what makes photographing the QR insufficient to pair.
|
|
17
|
+
*/
|
|
18
|
+
onPairing?: (pairing: PairingInfo) => void;
|
|
12
19
|
}
|
|
13
20
|
export declare class InspectorAgent {
|
|
14
21
|
readonly auth: InspectorAuth;
|
|
@@ -21,7 +28,7 @@ export declare class InspectorAgent {
|
|
|
21
28
|
private detach;
|
|
22
29
|
private lastSyncAt;
|
|
23
30
|
constructor(db: AnchorDB, options?: InspectorAgentOptions);
|
|
24
|
-
/** Begin a pairing window
|
|
31
|
+
/** Begin a pairing window, invalidating any unused code, and announce it through `onPairing`. */
|
|
25
32
|
startPairing(): PairingInfo;
|
|
26
33
|
capabilities(): InspectorCapability[];
|
|
27
34
|
/** Attach a transport. Multiple may be attached at once (§45). */
|
|
@@ -31,6 +38,14 @@ export declare class InspectorAgent {
|
|
|
31
38
|
private toErrorResponse;
|
|
32
39
|
private dispatch;
|
|
33
40
|
private connect;
|
|
41
|
+
/**
|
|
42
|
+
* The challenge of the open pairing window — opening one, and announcing its code, if none is.
|
|
43
|
+
*
|
|
44
|
+
* A code is single-use and short-lived, so by the time Lens connects the one the app first showed
|
|
45
|
+
* may be spent or expired. Issuing a fresh one here means the developer always has a live code on
|
|
46
|
+
* the app's screen at the moment Lens asks for it.
|
|
47
|
+
*/
|
|
48
|
+
private openChallenge;
|
|
34
49
|
private authenticate;
|
|
35
50
|
/** The challenge a client signs. Exposed so a transport can hand it over during pairing. */
|
|
36
51
|
challenge(): string | null;
|
|
@@ -46,6 +61,21 @@ export declare class InspectorAgent {
|
|
|
46
61
|
private declaredModel;
|
|
47
62
|
private getStats;
|
|
48
63
|
private getIndexes;
|
|
64
|
+
/**
|
|
65
|
+
* A collection's declared shape, for Lens's "Add all fields" on Insert document.
|
|
66
|
+
*
|
|
67
|
+
* Only what a form needs: path, type, required, enum and a plain default. Validator functions and
|
|
68
|
+
* hooks cannot cross the wire and are left out. A collection with no declared model has no fields.
|
|
69
|
+
*/
|
|
70
|
+
private getSchema;
|
|
71
|
+
/**
|
|
72
|
+
* Compass's Create Index, through `Model.createIndex()`.
|
|
73
|
+
*
|
|
74
|
+
* Agents advertised `indexes:write` long before any method stood behind it, so Lens held a capability it
|
|
75
|
+
* could not use. The key and options arrive from the network, so they are checked here.
|
|
76
|
+
*/
|
|
77
|
+
private createIndex;
|
|
78
|
+
private dropIndex;
|
|
49
79
|
/** Paged, always. The cap is enforced here, not trusted from the client (§34). */
|
|
50
80
|
private getDocuments;
|
|
51
81
|
private getDocument;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../../src/inspector/agent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../../src/inspector/agent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAQrD,OAAO,EAAE,aAAa,EAAE,KAAK,oBAAoB,EAAE,KAAK,WAAW,EAAE,MAAM,WAAW,CAAC;AACvF,OAAO,EAYL,KAAK,mBAAmB,EAIxB,KAAK,kBAAkB,EAExB,MAAM,eAAe,CAAC;AAsBvB,MAAM,WAAW,qBAAqB;IACpC,IAAI,CAAC,EAAE,oBAAoB,CAAC;IAC5B,2FAA2F;IAC3F,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,wDAAwD;IACxD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,CAAC;CAC5C;AAED,qBAAa,cAAc;IACzB,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAW;IAC9B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAwB;IAC7C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAiC;IAC5D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA6C;IAC3E,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAiC;IAC5D,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAwB;IAClD,OAAO,CAAC,MAAM,CAAyB;IACvC,OAAO,CAAC,UAAU,CAAqB;gBAE3B,EAAE,EAAE,QAAQ,EAAE,OAAO,GAAE,qBAA0B;IAO7D,iGAAiG;IACjG,YAAY,IAAI,WAAW;IAM3B,YAAY,IAAI,mBAAmB,EAAE;IAgBrC,kEAAkE;IAClE,MAAM,CAAC,SAAS,EAAE,kBAAkB,GAAG,MAAM,IAAI;IAY3C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;YAUd,MAAM;IAuBpB,OAAO,CAAC,eAAe;YAeT,QAAQ;IAkGtB,OAAO,CAAC,OAAO;IAkBf;;;;;;OAMG;IACH,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,YAAY;IAmBpB,4FAA4F;IAC5F,SAAS,IAAI,MAAM,GAAG,IAAI;IAM1B,OAAO,CAAC,KAAK;YAYC,cAAc;IAiB5B;;;;;;OAMG;IACH,OAAO,CAAC,aAAa;YAKP,QAAQ;YAkBR,UAAU;IAIxB;;;;;OAKG;IACH,OAAO,CAAC,SAAS;IA8BjB;;;;;OAKG;YACW,WAAW;YAsBX,SAAS;IAKvB,kFAAkF;YACpE,YAAY;YAgBZ,WAAW;YAMX,cAAc;YAKd,cAAc;YAYd,cAAc;IAI5B;;;;;;OAMG;YACW,UAAU;IA2BxB,8EAA8E;YAChE,UAAU;YAaV,aAAa;YAgBb,SAAS;YAMT,YAAY;YAMZ,aAAa;IAW3B;;;;;;OAMG;YACW,eAAe;IAU7B,OAAO,CAAC,UAAU;CAmCnB;AAiCD,qBAAa,qBAAsB,SAAQ,KAAK;IAC9C,QAAQ,CAAC,IAAI,EAAE,iBAAiB,GAAG,cAAc,GAAG,aAAa,GAAG,WAAW,GAAG,oBAAoB,CAAC;gBAC3F,IAAI,EAAE,qBAAqB,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,MAAM;CAKjE"}
|
|
@@ -39,6 +39,7 @@ const export_import_ts_1 = require("../interop/export-import.js");
|
|
|
39
39
|
const queue_ts_1 = require("../sync/queue.js");
|
|
40
40
|
const engine_ts_1 = require("../sync/engine.js");
|
|
41
41
|
const path_ts_1 = require("../query/path.js");
|
|
42
|
+
const schema_ts_1 = require("../schema/schema.js");
|
|
42
43
|
const auth_ts_1 = require("./auth.js");
|
|
43
44
|
const protocol_ts_1 = require("./protocol.js");
|
|
44
45
|
/**
|
|
@@ -71,9 +72,11 @@ class InspectorAgent {
|
|
|
71
72
|
this.auth = new auth_ts_1.InspectorAuth(options.auth ?? {});
|
|
72
73
|
this.wireEvents();
|
|
73
74
|
}
|
|
74
|
-
/** Begin a pairing window
|
|
75
|
+
/** Begin a pairing window, invalidating any unused code, and announce it through `onPairing`. */
|
|
75
76
|
startPairing() {
|
|
76
|
-
|
|
77
|
+
const pairing = this.auth.startPairing();
|
|
78
|
+
this.opts.onPairing?.(pairing);
|
|
79
|
+
return pairing;
|
|
77
80
|
}
|
|
78
81
|
capabilities() {
|
|
79
82
|
const base = [
|
|
@@ -166,6 +169,8 @@ class InspectorAgent {
|
|
|
166
169
|
return this.getStats();
|
|
167
170
|
case "getIndexes":
|
|
168
171
|
return this.getIndexes(String(params.collection));
|
|
172
|
+
case "getSchema":
|
|
173
|
+
return this.getSchema(String(params.collection));
|
|
169
174
|
case "getDocuments":
|
|
170
175
|
return this.getDocuments(params);
|
|
171
176
|
case "getDocument":
|
|
@@ -182,6 +187,10 @@ class InspectorAgent {
|
|
|
182
187
|
return this.deleteMany(String(params.collection), params.filter ?? {}, params.all === true);
|
|
183
188
|
case "deleteDocument":
|
|
184
189
|
return this.deleteDocument(String(params.collection), String(params.documentId));
|
|
190
|
+
case "createIndex":
|
|
191
|
+
return this.createIndex(String(params.collection), params.key, params.options);
|
|
192
|
+
case "dropIndex":
|
|
193
|
+
return this.dropIndex(String(params.collection), String(params.name));
|
|
185
194
|
case "aggregate":
|
|
186
195
|
return this.model(String(params.collection)).aggregate(params.pipeline ?? []);
|
|
187
196
|
case "explain":
|
|
@@ -227,8 +236,19 @@ class InspectorAgent {
|
|
|
227
236
|
readOnly: this.opts.readOnly ?? false,
|
|
228
237
|
},
|
|
229
238
|
requiresAuth: !this.auth.isDisabled,
|
|
239
|
+
...(this.auth.isDisabled ? {} : { challenge: this.openChallenge() }),
|
|
230
240
|
};
|
|
231
241
|
}
|
|
242
|
+
/**
|
|
243
|
+
* The challenge of the open pairing window — opening one, and announcing its code, if none is.
|
|
244
|
+
*
|
|
245
|
+
* A code is single-use and short-lived, so by the time Lens connects the one the app first showed
|
|
246
|
+
* may be spent or expired. Issuing a fresh one here means the developer always has a live code on
|
|
247
|
+
* the app's screen at the moment Lens asks for it.
|
|
248
|
+
*/
|
|
249
|
+
openChallenge() {
|
|
250
|
+
return this.auth.currentChallenge() ?? this.startPairing().challenge;
|
|
251
|
+
}
|
|
232
252
|
authenticate(transport, params) {
|
|
233
253
|
const session = this.auth.authenticate(String(params.proof ?? ""), String(params.clientName ?? "Anchor Lens"));
|
|
234
254
|
if (!session) {
|
|
@@ -301,6 +321,73 @@ class InspectorAgent {
|
|
|
301
321
|
async getIndexes(collection) {
|
|
302
322
|
return this.model(collection).listIndexes();
|
|
303
323
|
}
|
|
324
|
+
/**
|
|
325
|
+
* A collection's declared shape, for Lens's "Add all fields" on Insert document.
|
|
326
|
+
*
|
|
327
|
+
* Only what a form needs: path, type, required, enum and a plain default. Validator functions and
|
|
328
|
+
* hooks cannot cross the wire and are left out. A collection with no declared model has no fields.
|
|
329
|
+
*/
|
|
330
|
+
getSchema(collection) {
|
|
331
|
+
const declared = this.declaredModel(collection);
|
|
332
|
+
if (!declared) {
|
|
333
|
+
return { modelName: null, fields: [], timestamps: { createdAt: null, updatedAt: null }, versionKey: false };
|
|
334
|
+
}
|
|
335
|
+
const schema = declared.schema;
|
|
336
|
+
const fields = [];
|
|
337
|
+
const walk = (paths, prefix) => {
|
|
338
|
+
for (const [name, def] of paths) {
|
|
339
|
+
if (name === "_id")
|
|
340
|
+
continue;
|
|
341
|
+
const path = prefix ? `${prefix}.${name}` : name;
|
|
342
|
+
if (def.instance === "Embedded" && def.schema instanceof schema_ts_1.Schema) {
|
|
343
|
+
walk(def.schema.paths, path);
|
|
344
|
+
continue;
|
|
345
|
+
}
|
|
346
|
+
fields.push({
|
|
347
|
+
path,
|
|
348
|
+
type: def.instance,
|
|
349
|
+
required: def.required,
|
|
350
|
+
...(def.arrayType ? { items: def.arrayType.instance } : {}),
|
|
351
|
+
...(def.enumValues ? { enum: [...def.enumValues] } : {}),
|
|
352
|
+
...(def.hasDefault && typeof def.defaultValue !== "function" ? { default: def.defaultValue } : {}),
|
|
353
|
+
...(typeof def.ref === "string" ? { ref: def.ref } : {}),
|
|
354
|
+
});
|
|
355
|
+
}
|
|
356
|
+
};
|
|
357
|
+
walk(schema.paths, "");
|
|
358
|
+
return { modelName: declared.modelName, fields, timestamps: schema.timestampFields, versionKey: schema.versionKey };
|
|
359
|
+
}
|
|
360
|
+
/**
|
|
361
|
+
* Compass's Create Index, through `Model.createIndex()`.
|
|
362
|
+
*
|
|
363
|
+
* Agents advertised `indexes:write` long before any method stood behind it, so Lens held a capability it
|
|
364
|
+
* could not use. The key and options arrive from the network, so they are checked here.
|
|
365
|
+
*/
|
|
366
|
+
async createIndex(collection, key, options) {
|
|
367
|
+
if (key === null || typeof key !== "object" || Array.isArray(key) || Object.keys(key).length === 0) {
|
|
368
|
+
throw new InspectorRequestError("bad_request", 'An index needs at least one field, e.g. { "email": 1 }.');
|
|
369
|
+
}
|
|
370
|
+
for (const [path, direction] of Object.entries(key)) {
|
|
371
|
+
if (path.startsWith("$")) {
|
|
372
|
+
throw new InspectorRequestError("bad_request", `"${path}" cannot be indexed: field names cannot start with $.`);
|
|
373
|
+
}
|
|
374
|
+
if (direction !== 1 && direction !== -1) {
|
|
375
|
+
throw new InspectorRequestError("bad_request", `The direction for "${path}" must be 1 or -1.`);
|
|
376
|
+
}
|
|
377
|
+
}
|
|
378
|
+
const o = (options ?? {});
|
|
379
|
+
const name = await this.model(collection).createIndex(key, {
|
|
380
|
+
...(o.unique === true ? { unique: true } : {}),
|
|
381
|
+
...(o.sparse === true ? { sparse: true } : {}),
|
|
382
|
+
...(typeof o.name === "string" && o.name.trim() !== "" ? { name: o.name.trim() } : {}),
|
|
383
|
+
...(typeof o.expireAfterSeconds === "number" ? { expireAfterSeconds: o.expireAfterSeconds } : {}),
|
|
384
|
+
});
|
|
385
|
+
return { name };
|
|
386
|
+
}
|
|
387
|
+
async dropIndex(collection, name) {
|
|
388
|
+
await this.model(collection).dropIndex(name);
|
|
389
|
+
return { dropped: name };
|
|
390
|
+
}
|
|
304
391
|
/** Paged, always. The cap is enforced here, not trusted from the client (§34). */
|
|
305
392
|
async getDocuments(params) {
|
|
306
393
|
const collection = String(params.collection);
|
|
@@ -457,6 +544,8 @@ const MUTATING = new Set([
|
|
|
457
544
|
"deleteDocument",
|
|
458
545
|
"updateMany",
|
|
459
546
|
"deleteMany",
|
|
547
|
+
"createIndex",
|
|
548
|
+
"dropIndex",
|
|
460
549
|
"importCollection",
|
|
461
550
|
"resolveConflict",
|
|
462
551
|
"retryMutation",
|