@thingd/sdk 0.74.3 → 0.75.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 +19 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/stores/native-thing-store.d.ts +2 -1
- package/dist/stores/native-thing-store.d.ts.map +1 -1
- package/dist/stores/native-thing-store.js +9 -2
- package/dist/thingd.d.ts +5 -0
- package/dist/thingd.d.ts.map +1 -1
- package/dist/thingd.js +8 -2
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -21,6 +21,25 @@ const obj = await db.get("notes", "hello");
|
|
|
21
21
|
console.log(obj); // { id: "hello", text: "Hello world", collection: "notes", version: 1, ... }
|
|
22
22
|
```
|
|
23
23
|
|
|
24
|
+
### Optional native storage encryption
|
|
25
|
+
|
|
26
|
+
Native persistent storage accepts a 64-character hexadecimal representation of
|
|
27
|
+
a 32-byte encryption key:
|
|
28
|
+
|
|
29
|
+
```typescript
|
|
30
|
+
const db = await ThingD.open({
|
|
31
|
+
driver: "native",
|
|
32
|
+
path: "./thingd-data",
|
|
33
|
+
encryption: { key: process.env.THINGD_ENCRYPTION_KEY },
|
|
34
|
+
});
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
The key is required every time an encrypted database is reopened. Memory and
|
|
38
|
+
cloud drivers reject this local option. Do not commit keys or put them in MCP
|
|
39
|
+
configuration; inject them through the deployment environment. Storage
|
|
40
|
+
encryption does not change object, event, queue, graph, vector, search, REST,
|
|
41
|
+
or MCP APIs.
|
|
42
|
+
|
|
24
43
|
## Subpath imports
|
|
25
44
|
|
|
26
45
|
```typescript
|
package/dist/index.d.ts
CHANGED
|
@@ -6,7 +6,7 @@ export type { CloudThingStoreOptions } from "./stores/cloud-thing-store.js";
|
|
|
6
6
|
export { CloudThingStore } from "./stores/cloud-thing-store.js";
|
|
7
7
|
export { InMemoryThingStore } from "./stores/in-memory-thing-store.js";
|
|
8
8
|
export { NativeThingStore } from "./stores/native-thing-store.js";
|
|
9
|
-
export type { ThingDDriver, ThingDOpenConfig, ThingDOpenOptions } from "./thingd.js";
|
|
9
|
+
export type { ThingDDriver, ThingDEncryptionOptions, ThingDOpenConfig, ThingDOpenOptions, } from "./thingd.js";
|
|
10
10
|
export { ThingD } from "./thingd.js";
|
|
11
11
|
export type { AggregateFunction, AggregateGroupResult, AggregateOptions, AggregateResult, BackupCapableThingStore, CollectionSchema, ConnectorAuth, ConnectorSchema, ConnectorSyncOptions, ConnectorSyncResult, FieldSchema, FilterOperator, Link, LinkDirection, LinkQueryOptions, ListEventsOptions, ListObjectsOptions, LocalThingDConnection, MemoryEvent, MemoryObject, MemoryQueue, MemorySearchOptions, MemorySearchResult, NlqIntent, NlqOptions, NlqResult, PutOptions, QueueClaimOptions, QueueJob, QueueJobOptions, QueueJobPayload, QueueJobResult, QueueJobStatus, QueueNackOptions, ReconnectableThingStore, Schedule, ScheduleContext, ScheduleEvent, ScheduleHandler, ScheduleIntervalOptions, ScheduleOnceOptions, ScheduleOptions, SchedulerEventType, SchedulerFacade, SchedulerListener, SchedulerStats, SchemaOptions, SortBy, SortDirection, StoredMemoryEvent, StoredMemoryObject, ThingDConnection, ThingDeleteResult, ThingStore, TimeBucket, TimeSeriesBucket, TimeSeriesOptions, TimeSeriesResult, VectorSearchHit, VectorSearchOptions, WalCheckpointResult, } from "./types.js";
|
|
12
12
|
export { SDK_VERSION } from "./version.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,UAAU,EACV,wBAAwB,EACxB,qBAAqB,EACrB,KAAK,0BAA0B,EAC/B,8BAA8B,EAC9B,mBAAmB,EACnB,4BAA4B,EAC5B,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,KAAK,yBAAyB,EAC9B,KAAK,sBAAsB,GAC5B,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,iBAAiB,EACjB,WAAW,EACX,aAAa,EACb,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,SAAS,EACT,QAAQ,GACT,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,YAAY,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,UAAU,EACV,wBAAwB,EACxB,qBAAqB,EACrB,KAAK,0BAA0B,EAC/B,8BAA8B,EAC9B,mBAAmB,EACnB,4BAA4B,EAC5B,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,KAAK,yBAAyB,EAC9B,KAAK,sBAAsB,GAC5B,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,iBAAiB,EACjB,WAAW,EACX,aAAa,EACb,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,SAAS,EACT,QAAQ,GACT,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,YAAY,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,YAAY,EACV,YAAY,EACZ,uBAAuB,EACvB,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,YAAY,EACV,iBAAiB,EACjB,oBAAoB,EACpB,gBAAgB,EAChB,eAAe,EACf,uBAAuB,EACvB,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,oBAAoB,EACpB,mBAAmB,EACnB,WAAW,EACX,cAAc,EACd,IAAI,EACJ,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,qBAAqB,EACrB,WAAW,EACX,YAAY,EACZ,WAAW,EACX,mBAAmB,EACnB,kBAAkB,EAClB,SAAS,EACT,UAAU,EACV,SAAS,EACT,UAAU,EACV,iBAAiB,EACjB,QAAQ,EACR,eAAe,EACf,eAAe,EACf,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,uBAAuB,EACvB,QAAQ,EACR,eAAe,EACf,aAAa,EACb,eAAe,EACf,uBAAuB,EACvB,mBAAmB,EACnB,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,aAAa,EACb,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,EACjB,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import type { AggregateOptions, AggregateResult, CollectionSchema, ListEventsOptions, ListObjectsOptions, MemoryEvent, MemoryObject, MemorySearchOptions, MemorySearchResult, PutOptions, QueueClaimOptions, QueueJob, QueueJobOptions, QueueJobPayload, QueueJobResult, QueueNackOptions, SchemaOptions, StoredMemoryEvent, StoredMemoryObject, ThingDeleteResult, ThingStore, TimeSeriesOptions, TimeSeriesResult, VectorSearchHit, VectorSearchOptions } from "../types.js";
|
|
2
2
|
export declare class NativeThingStore implements ThingStore {
|
|
3
3
|
private readonly binding;
|
|
4
|
-
static open(path: string): Promise<NativeThingStore>;
|
|
4
|
+
static open(path: string, encryptionKey?: string): Promise<NativeThingStore>;
|
|
5
5
|
static isAvailable(): Promise<boolean>;
|
|
6
|
+
static reencrypt(sourcePath: string, destinationPath: string, sourceKey?: string, destinationKey?: string): Promise<void>;
|
|
6
7
|
static getLoadedPath(): Promise<string | undefined>;
|
|
7
8
|
private constructor();
|
|
8
9
|
close(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"native-thing-store.d.ts","sourceRoot":"","sources":["../../src/stores/native-thing-store.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,WAAW,EACX,YAAY,EACZ,mBAAmB,EACnB,kBAAkB,EAClB,UAAU,EACV,iBAAiB,EACjB,QAAQ,EACR,eAAe,EACf,eAAe,EACf,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,EACjB,UAAU,EACV,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,mBAAmB,EACpB,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"native-thing-store.d.ts","sourceRoot":"","sources":["../../src/stores/native-thing-store.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,WAAW,EACX,YAAY,EACZ,mBAAmB,EACnB,kBAAkB,EAClB,UAAU,EACV,iBAAiB,EACjB,QAAQ,EACR,eAAe,EACf,eAAe,EACf,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,EACjB,UAAU,EACV,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,mBAAmB,EACpB,MAAM,aAAa,CAAC;AAuLrB,qBAAa,gBAAiB,YAAW,UAAU;IAkC7B,OAAO,CAAC,QAAQ,CAAC,OAAO;IAjC5C,OAAa,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAGjF;IAED,OAAa,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC,CAO3C;IAED,OAAa,SAAS,CACpB,UAAU,EAAE,MAAM,EAClB,eAAe,EAAE,MAAM,EACvB,SAAS,CAAC,EAAE,MAAM,EAClB,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,IAAI,CAAC,CAGf;IAED,OAAa,aAAa,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAOxD;IAED,OAAO,eAAkE;IAEnE,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAE3B;IAEK,GAAG,CACP,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,YAAY,EACpB,OAAO,CAAC,EAAE,UAAU,GACnB,OAAO,CAAC,kBAAkB,CAAC,CAW7B;IAEK,GAAG,CAAC,CAAC,GAAG,kBAAkB,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAInF;IAEK,QAAQ,CAAC,CAAC,GAAG,kBAAkB,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,CAI/F;IAEK,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAIvE;IAEK,WAAW,CAAC,CAAC,GAAG,kBAAkB,EACtC,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,CAAC,EAAE,CAAC,CAed;IAEK,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAMhF;IAEK,UAAU,CAAC,CAAC,GAAG,iBAAiB,EACpC,MAAM,CAAC,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,CAAC,EAAE,CAAC,CAId;IAEK,OAAO,CACX,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,eAAe,EACxB,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,QAAQ,CAAC,CAanB;IAEK,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAIvF;IAEK,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAElE;IAEK,OAAO,CACX,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,gBAAqB,GAC7B,OAAO,CAAC,cAAc,CAAC,CAQzB;IAEK,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAEjD;IAEK,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAIrD;IAEK,YAAY,CAChB,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,EAAE,EACrB,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,eAAe,EAAE,CAAC,CA2B5B;IAEK,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,mBAAwB,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC,CA8C5F;IAEK,eAAe,CACnB,OAAO,EAAE,KAAK,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,GAC/D,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAI/B;IAEK,iBAAiB,CACrB,MAAM,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,GACjE,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAI9B;IAEK,aAAa,CACjB,IAAI,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,GAC7F,OAAO,CAAC,QAAQ,EAAE,CAAC,CAIrB;IAEK,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC,CAEpC;IAEK,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAElE;IAEK,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC,CAEnC;IAEK,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC,CAEvC;IAEK,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC,CAErC;IAEK,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAElC;IAEK,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAKzF;IAEK,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAGpE;IAEK,UAAU,CACd,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,MAAM,EACf,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,OAAO,aAAa,EAAE,IAAI,CAAC,CAMrC;IAEK,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAE7C;IAEK,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,aAAa,EAAE,IAAI,GAAG,IAAI,CAAC,CAGpE;IAEK,YAAY,CAChB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,OAAO,aAAa,EAAE,aAAa,EAC9C,OAAO,EAAE,OAAO,aAAa,EAAE,gBAAgB,GAC9C,OAAO,CAAC,OAAO,aAAa,EAAE,IAAI,EAAE,CAAC,CAIvC;IAEK,eAAe,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAEzC;IAEK,WAAW,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAErC;IAEK,UAAU,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAEpC;IAEK,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAElE;IAEK,WAAW,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAEpD;IAEK,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC,CAWvF;IAEK,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAa1F;IAEK,MAAM,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAGtF;CACF"}
|
|
@@ -4,9 +4,9 @@ const DEFAULT_LEASE_MS = 30_000;
|
|
|
4
4
|
const NATIVE_PACKAGE_NAME = "@thingd/native";
|
|
5
5
|
export class NativeThingStore {
|
|
6
6
|
binding;
|
|
7
|
-
static async open(path) {
|
|
7
|
+
static async open(path, encryptionKey) {
|
|
8
8
|
const native = await loadNativeModule();
|
|
9
|
-
return new NativeThingStore(native.NativeThingStore.open(path));
|
|
9
|
+
return new NativeThingStore(native.NativeThingStore.open(path, encryptionKey));
|
|
10
10
|
}
|
|
11
11
|
static async isAvailable() {
|
|
12
12
|
try {
|
|
@@ -17,6 +17,10 @@ export class NativeThingStore {
|
|
|
17
17
|
return false;
|
|
18
18
|
}
|
|
19
19
|
}
|
|
20
|
+
static async reencrypt(sourcePath, destinationPath, sourceKey, destinationKey) {
|
|
21
|
+
const native = await loadNativeModule();
|
|
22
|
+
native.reencrypt(sourcePath, destinationPath, sourceKey, destinationKey);
|
|
23
|
+
}
|
|
20
24
|
static async getLoadedPath() {
|
|
21
25
|
try {
|
|
22
26
|
const native = await loadNativeModule();
|
|
@@ -228,6 +232,7 @@ async function loadNativeModule() {
|
|
|
228
232
|
const binding = require(customPath);
|
|
229
233
|
return {
|
|
230
234
|
NativeThingStore: binding.NativeThingStore,
|
|
235
|
+
reencrypt: binding.reencrypt,
|
|
231
236
|
loadedPath: customPath,
|
|
232
237
|
};
|
|
233
238
|
}
|
|
@@ -240,6 +245,7 @@ async function loadNativeModule() {
|
|
|
240
245
|
const mod = (await import(NATIVE_PACKAGE_NAME));
|
|
241
246
|
return {
|
|
242
247
|
NativeThingStore: mod.NativeThingStore,
|
|
248
|
+
reencrypt: mod.reencrypt,
|
|
243
249
|
loadedPath: mod.loadedPath,
|
|
244
250
|
};
|
|
245
251
|
}
|
|
@@ -268,6 +274,7 @@ async function loadNativeModule() {
|
|
|
268
274
|
if (binding?.NativeThingStore) {
|
|
269
275
|
return {
|
|
270
276
|
NativeThingStore: binding.NativeThingStore,
|
|
277
|
+
reencrypt: binding.reencrypt,
|
|
271
278
|
loadedPath: candidate,
|
|
272
279
|
};
|
|
273
280
|
}
|
package/dist/thingd.d.ts
CHANGED
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
import type { AggregateOptions, AggregateResult, CollectionSchema, ConnectorAuth, ConnectorSchema, ConnectorSyncOptions, ConnectorSyncResult, ListEventsOptions, ListObjectsOptions, LocalThingDConnection, MemoryEvent, MemoryObject, MemoryQueue, MemorySearchOptions, MemorySearchResult, NlqOptions, NlqResult, PutOptions, SchedulerFacade, SchemaOptions, StoredMemoryEvent, StoredMemoryObject, ThingDeleteResult, ThingStore, TimeSeriesOptions, TimeSeriesResult, VectorSearchHit, VectorSearchOptions } from "./types.js";
|
|
2
2
|
export type ThingDDriver = "memory" | "native" | "cloud";
|
|
3
|
+
export type ThingDEncryptionOptions = {
|
|
4
|
+
/** 64 hexadecimal characters representing a 32-byte key. */
|
|
5
|
+
key?: string;
|
|
6
|
+
};
|
|
3
7
|
export type ThingDOpenOptions = {
|
|
4
8
|
driver?: ThingDDriver;
|
|
5
9
|
store?: ThingStore;
|
|
@@ -8,6 +12,7 @@ export type ThingDOpenOptions = {
|
|
|
8
12
|
apiKey?: string;
|
|
9
13
|
/** Cloud instance slug for multi-instance routing. Passed as X-Instance-Slug header. */
|
|
10
14
|
instanceSlug?: string;
|
|
15
|
+
encryption?: ThingDEncryptionOptions;
|
|
11
16
|
};
|
|
12
17
|
export type ThingDOpenConfig = ThingDOpenOptions & {
|
|
13
18
|
path?: string;
|
package/dist/thingd.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"thingd.d.ts","sourceRoot":"","sources":["../src/thingd.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,qBAAqB,EACrB,WAAW,EACX,YAAY,EACZ,WAAW,EACX,mBAAmB,EACnB,kBAAkB,EAClB,UAAU,EACV,SAAS,EACT,UAAU,EAKV,eAAe,EACf,aAAa,EACb,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,EACjB,UAAU,EACV,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,mBAAmB,EACpB,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEzD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wEAAwE;IACxE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,wFAAwF;IACxF,YAAY,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"thingd.d.ts","sourceRoot":"","sources":["../src/thingd.ts"],"names":[],"mappings":"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"}
|
package/dist/thingd.js
CHANGED
|
@@ -212,23 +212,29 @@ async function openStore(path, options) {
|
|
|
212
212
|
return options.store;
|
|
213
213
|
}
|
|
214
214
|
if (options.driver === "cloud") {
|
|
215
|
+
if (options.encryption) {
|
|
216
|
+
throw new Error("Encryption options are only supported by the native persistent driver");
|
|
217
|
+
}
|
|
215
218
|
return HttpThingStore.open({
|
|
216
219
|
url: path,
|
|
217
220
|
authToken: options.authToken,
|
|
218
221
|
instanceSlug: options.instanceSlug,
|
|
219
222
|
});
|
|
220
223
|
}
|
|
224
|
+
if (options.driver === "memory" && options.encryption) {
|
|
225
|
+
throw new Error("Encryption options are only supported by the native persistent driver");
|
|
226
|
+
}
|
|
221
227
|
const hasNative = await NativeThingStore.isAvailable();
|
|
222
228
|
if (options.driver === "native") {
|
|
223
229
|
if (!hasNative) {
|
|
224
230
|
throw new Error(`The native thingd driver is not available. Install @thingd/native with "npm install @thingd/native". For monorepo development: "pnpm --filter thingd-native build".`);
|
|
225
231
|
}
|
|
226
|
-
return NativeThingStore.open(path);
|
|
232
|
+
return NativeThingStore.open(path, options.encryption?.key);
|
|
227
233
|
}
|
|
228
234
|
// Auto-detect and promote file paths to native store when available, with a warning fallback to memory.
|
|
229
235
|
if (!options.driver && path !== ":memory:") {
|
|
230
236
|
if (hasNative) {
|
|
231
|
-
return NativeThingStore.open(path);
|
|
237
|
+
return NativeThingStore.open(path, options.encryption?.key);
|
|
232
238
|
}
|
|
233
239
|
console.warn(`Warning: The native thingd driver is not available. Falling back to the temporary in-memory store. Data will not persist. Run "pnpm --filter @thingd/native build" or install "@thingd/native" to enable native persistence.`);
|
|
234
240
|
}
|
package/dist/version.d.ts
CHANGED
package/dist/version.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@thingd/sdk",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.75.0",
|
|
4
4
|
"description": "A fast object-first data engine for applications and AI agents.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"author": "Sayan Mohsin",
|
|
@@ -67,7 +67,7 @@
|
|
|
67
67
|
"README.md"
|
|
68
68
|
],
|
|
69
69
|
"dependencies": {
|
|
70
|
-
"@modelcontextprotocol/sdk": "^1.
|
|
70
|
+
"@modelcontextprotocol/sdk": "^1.30.0",
|
|
71
71
|
"zod": "^4.4.3"
|
|
72
72
|
},
|
|
73
73
|
"optionalDependencies": {
|