@qlever-llc/trellis 0.6.0 → 0.7.0-rc.2
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 +6 -2
- package/esm/auth/device_activation.d.ts +194 -0
- package/esm/auth/device_activation.d.ts.map +1 -0
- package/esm/auth/{workload_activation.js → device_activation.js} +85 -60
- package/esm/auth/mod.d.ts +2 -2
- package/esm/auth/mod.d.ts.map +1 -1
- package/esm/auth/mod.js +2 -2
- package/esm/auth/protocol.d.ts +175 -72
- package/esm/auth/protocol.d.ts.map +1 -1
- package/esm/auth/protocol.js +126 -78
- package/esm/contracts/mod.d.ts +22 -2
- package/esm/contracts/mod.d.ts.map +1 -1
- package/esm/contracts/mod.js +30 -4
- package/esm/contracts/protocol.d.ts +34 -0
- package/esm/contracts/protocol.d.ts.map +1 -1
- package/esm/contracts/protocol.js +15 -0
- package/esm/server/deno.d.ts +1 -6
- package/esm/server/deno.d.ts.map +1 -1
- package/esm/server/deno.js +1 -16
- package/esm/server/mod.d.ts +3 -2
- package/esm/server/mod.d.ts.map +1 -1
- package/esm/server/mod.js +2 -2
- package/esm/server/node.d.ts +1 -6
- package/esm/server/node.d.ts.map +1 -1
- package/esm/server/node.js +1 -16
- package/esm/server/service.d.ts +32 -10
- package/esm/server/service.d.ts.map +1 -1
- package/esm/server/service.js +188 -41
- package/esm/server/transfer.d.ts +41 -0
- package/esm/server/transfer.d.ts.map +1 -0
- package/esm/server/transfer.js +418 -0
- package/esm/telemetry/init.d.ts +4 -0
- package/esm/telemetry/init.d.ts.map +1 -0
- package/esm/telemetry/init.js +7 -0
- package/esm/telemetry/mod.d.ts +1 -2
- package/esm/telemetry/mod.d.ts.map +1 -1
- package/esm/telemetry/mod.js +1 -2
- package/esm/telemetry/runtime.d.ts.map +1 -1
- package/esm/telemetry/runtime.js +9 -5
- package/esm/telemetry/trellis.d.ts +0 -1
- package/esm/telemetry/trellis.d.ts.map +1 -1
- package/esm/telemetry/trellis.js +0 -6
- package/esm/trellis/_sdk/activity/contract.d.ts +1 -1
- package/esm/trellis/_sdk/activity/contract.d.ts.map +1 -1
- package/esm/trellis/_sdk/activity/contract.js +2 -2
- package/esm/trellis/_sdk/activity/types.d.ts +1 -1
- package/esm/trellis/_sdk/activity/types.js +1 -1
- package/esm/trellis/_sdk/auth/api.d.ts.map +1 -1
- package/esm/trellis/_sdk/auth/api.js +132 -110
- package/esm/trellis/_sdk/auth/contract.d.ts +1 -1
- package/esm/trellis/_sdk/auth/contract.d.ts.map +1 -1
- package/esm/trellis/_sdk/auth/contract.js +2 -2
- package/esm/trellis/_sdk/auth/schemas.d.ts +4212 -3069
- package/esm/trellis/_sdk/auth/schemas.d.ts.map +1 -1
- package/esm/trellis/_sdk/auth/schemas.js +144 -125
- package/esm/trellis/_sdk/auth/types.d.ts +417 -267
- package/esm/trellis/_sdk/auth/types.d.ts.map +1 -1
- package/esm/trellis/_sdk/auth/types.js +1 -1
- package/esm/trellis/_sdk/core/contract.d.ts +1 -1
- package/esm/trellis/_sdk/core/contract.d.ts.map +1 -1
- package/esm/trellis/_sdk/core/contract.js +2 -2
- package/esm/trellis/_sdk/core/schemas.d.ts +122 -0
- package/esm/trellis/_sdk/core/schemas.d.ts.map +1 -1
- package/esm/trellis/_sdk/core/schemas.js +4 -4
- package/esm/trellis/_sdk/core/types.d.ts +18 -1
- package/esm/trellis/_sdk/core/types.d.ts.map +1 -1
- package/esm/trellis/_sdk/core/types.js +1 -1
- package/esm/trellis/_sdk/state/_dnt.polyfills.d.ts +12 -0
- package/esm/trellis/_sdk/state/_dnt.polyfills.d.ts.map +1 -0
- package/esm/trellis/_sdk/state/_dnt.polyfills.js +15 -0
- package/esm/trellis/_sdk/state/api.d.ts +10 -0
- package/esm/trellis/_sdk/state/api.d.ts.map +1 -0
- package/esm/trellis/_sdk/state/api.js +71 -0
- package/esm/trellis/_sdk/state/contract.d.ts +8 -0
- package/esm/trellis/_sdk/state/contract.d.ts.map +1 -0
- package/esm/trellis/_sdk/state/contract.js +59 -0
- package/esm/trellis/_sdk/state/mod.d.ts +7 -0
- package/esm/trellis/_sdk/state/mod.d.ts.map +1 -0
- package/esm/trellis/_sdk/state/mod.js +5 -0
- package/esm/trellis/_sdk/state/package.json +3 -0
- package/esm/trellis/_sdk/state/schemas.d.ts +1437 -0
- package/esm/trellis/_sdk/state/schemas.d.ts.map +1 -0
- package/esm/trellis/_sdk/state/schemas.js +62 -0
- package/esm/trellis/_sdk/state/types.d.ts +206 -0
- package/esm/trellis/_sdk/state/types.d.ts.map +1 -0
- package/esm/trellis/_sdk/state/types.js +3 -0
- package/esm/trellis/client_connect.d.ts +53 -0
- package/esm/trellis/client_connect.d.ts.map +1 -0
- package/esm/trellis/client_connect.js +300 -0
- package/esm/trellis/contract.d.ts +1 -7
- package/esm/trellis/contract.d.ts.map +1 -1
- package/esm/trellis/contract.js +1 -12
- package/esm/trellis/device.d.ts +41 -0
- package/esm/trellis/device.d.ts.map +1 -0
- package/esm/trellis/device.js +209 -0
- package/esm/trellis/errors/AuthError.d.ts +1 -1
- package/esm/trellis/errors/AuthError.js +9 -9
- package/esm/trellis/errors/StoreError.d.ts +22 -0
- package/esm/trellis/errors/StoreError.d.ts.map +1 -0
- package/esm/trellis/errors/StoreError.js +41 -0
- package/esm/trellis/errors/TransferError.d.ts +22 -0
- package/esm/trellis/errors/TransferError.d.ts.map +1 -0
- package/esm/trellis/errors/TransferError.js +41 -0
- package/esm/trellis/errors/index.d.ts +8 -0
- package/esm/trellis/errors/index.d.ts.map +1 -1
- package/esm/trellis/errors/index.js +8 -0
- package/esm/trellis/index.d.ts +10 -4
- package/esm/trellis/index.d.ts.map +1 -1
- package/esm/trellis/index.js +6 -4
- package/esm/trellis/kv.d.ts +2 -0
- package/esm/trellis/kv.d.ts.map +1 -1
- package/esm/trellis/kv.js +6 -0
- package/esm/trellis/models/trellis/TrellisError.d.ts +15 -1
- package/esm/trellis/models/trellis/TrellisError.d.ts.map +1 -1
- package/esm/trellis/models/trellis/TrellisError.js +4 -0
- package/esm/trellis/runtime_transport.d.ts +12 -0
- package/esm/trellis/runtime_transport.d.ts.map +1 -0
- package/esm/trellis/runtime_transport.js +35 -0
- package/esm/trellis/sdk/state.d.ts +4 -0
- package/esm/trellis/sdk/state.d.ts.map +1 -0
- package/esm/trellis/sdk/state.js +3 -0
- package/esm/trellis/store.d.ts +51 -0
- package/esm/trellis/store.d.ts.map +1 -0
- package/esm/trellis/store.js +310 -0
- package/esm/trellis/tracing.js +1 -1
- package/esm/trellis/transfer.d.ts +118 -0
- package/esm/trellis/transfer.d.ts.map +1 -0
- package/esm/trellis/transfer.js +357 -0
- package/esm/trellis/trellis.d.ts +3 -0
- package/esm/trellis/trellis.d.ts.map +1 -1
- package/esm/trellis/trellis.js +48 -17
- package/package.json +8 -3
- package/script/auth/device_activation.d.ts +194 -0
- package/script/auth/device_activation.d.ts.map +1 -0
- package/script/auth/{workload_activation.js → device_activation.js} +99 -74
- package/script/auth/mod.d.ts +2 -2
- package/script/auth/mod.d.ts.map +1 -1
- package/script/auth/mod.js +84 -76
- package/script/auth/protocol.d.ts +175 -72
- package/script/auth/protocol.d.ts.map +1 -1
- package/script/auth/protocol.js +129 -81
- package/script/contracts/mod.d.ts +22 -2
- package/script/contracts/mod.d.ts.map +1 -1
- package/script/contracts/mod.js +32 -4
- package/script/contracts/protocol.d.ts +34 -0
- package/script/contracts/protocol.d.ts.map +1 -1
- package/script/contracts/protocol.js +16 -1
- package/script/telemetry/init.d.ts +4 -0
- package/script/telemetry/init.d.ts.map +1 -0
- package/script/telemetry/init.js +11 -0
- package/script/telemetry/mod.d.ts +1 -2
- package/script/telemetry/mod.d.ts.map +1 -1
- package/script/telemetry/mod.js +1 -4
- package/script/telemetry/runtime.d.ts.map +1 -1
- package/script/telemetry/runtime.js +9 -28
- package/script/telemetry/trellis.d.ts +0 -1
- package/script/telemetry/trellis.d.ts.map +1 -1
- package/script/telemetry/trellis.js +0 -7
- package/script/trellis/_sdk/activity/contract.d.ts +1 -1
- package/script/trellis/_sdk/activity/contract.d.ts.map +1 -1
- package/script/trellis/_sdk/activity/contract.js +2 -2
- package/script/trellis/_sdk/activity/types.d.ts +1 -1
- package/script/trellis/_sdk/activity/types.js +1 -1
- package/script/trellis/_sdk/auth/api.d.ts.map +1 -1
- package/script/trellis/_sdk/auth/api.js +132 -110
- package/script/trellis/_sdk/auth/contract.d.ts +1 -1
- package/script/trellis/_sdk/auth/contract.d.ts.map +1 -1
- package/script/trellis/_sdk/auth/contract.js +2 -2
- package/script/trellis/_sdk/auth/schemas.d.ts +4212 -3069
- package/script/trellis/_sdk/auth/schemas.d.ts.map +1 -1
- package/script/trellis/_sdk/auth/schemas.js +144 -125
- package/script/trellis/_sdk/auth/types.d.ts +417 -267
- package/script/trellis/_sdk/auth/types.d.ts.map +1 -1
- package/script/trellis/_sdk/auth/types.js +1 -1
- package/script/trellis/_sdk/core/contract.d.ts +1 -1
- package/script/trellis/_sdk/core/contract.d.ts.map +1 -1
- package/script/trellis/_sdk/core/contract.js +2 -2
- package/script/trellis/_sdk/core/schemas.d.ts +122 -0
- package/script/trellis/_sdk/core/schemas.d.ts.map +1 -1
- package/script/trellis/_sdk/core/schemas.js +4 -4
- package/script/trellis/_sdk/core/types.d.ts +18 -1
- package/script/trellis/_sdk/core/types.d.ts.map +1 -1
- package/script/trellis/_sdk/core/types.js +1 -1
- package/script/trellis/_sdk/state/_dnt.polyfills.d.ts +12 -0
- package/script/trellis/_sdk/state/_dnt.polyfills.d.ts.map +1 -0
- package/script/trellis/_sdk/state/_dnt.polyfills.js +16 -0
- package/script/trellis/_sdk/state/api.d.ts +10 -0
- package/script/trellis/_sdk/state/api.d.ts.map +1 -0
- package/script/trellis/_sdk/state/api.js +74 -0
- package/script/trellis/_sdk/state/contract.d.ts +8 -0
- package/script/trellis/_sdk/state/contract.d.ts.map +1 -0
- package/script/trellis/_sdk/state/contract.js +62 -0
- package/script/trellis/_sdk/state/mod.d.ts +7 -0
- package/script/trellis/_sdk/state/mod.d.ts.map +1 -0
- package/script/trellis/_sdk/state/mod.js +30 -0
- package/script/trellis/_sdk/state/package.json +3 -0
- package/script/trellis/_sdk/state/schemas.d.ts +1437 -0
- package/script/trellis/_sdk/state/schemas.d.ts.map +1 -0
- package/script/trellis/_sdk/state/schemas.js +65 -0
- package/script/trellis/_sdk/state/types.d.ts +206 -0
- package/script/trellis/_sdk/state/types.d.ts.map +1 -0
- package/script/trellis/_sdk/state/types.js +6 -0
- package/script/trellis/client_connect.d.ts +53 -0
- package/script/trellis/client_connect.d.ts.map +1 -0
- package/script/trellis/client_connect.js +304 -0
- package/script/trellis/contract.d.ts +1 -7
- package/script/trellis/contract.d.ts.map +1 -1
- package/script/trellis/contract.js +1 -12
- package/script/trellis/device.d.ts +41 -0
- package/script/trellis/device.d.ts.map +1 -0
- package/script/trellis/device.js +213 -0
- package/script/trellis/errors/AuthError.d.ts +1 -1
- package/script/trellis/errors/AuthError.js +9 -9
- package/script/trellis/errors/StoreError.d.ts +22 -0
- package/script/trellis/errors/StoreError.d.ts.map +1 -0
- package/script/trellis/errors/StoreError.js +48 -0
- package/script/trellis/errors/TransferError.d.ts +22 -0
- package/script/trellis/errors/TransferError.d.ts.map +1 -0
- package/script/trellis/errors/TransferError.js +48 -0
- package/script/trellis/errors/index.d.ts +8 -0
- package/script/trellis/errors/index.d.ts.map +1 -1
- package/script/trellis/errors/index.js +13 -1
- package/script/trellis/index.d.ts +10 -4
- package/script/trellis/index.d.ts.map +1 -1
- package/script/trellis/index.js +17 -6
- package/script/trellis/kv.d.ts +2 -0
- package/script/trellis/kv.d.ts.map +1 -1
- package/script/trellis/kv.js +6 -0
- package/script/trellis/models/trellis/TrellisError.d.ts +15 -1
- package/script/trellis/models/trellis/TrellisError.d.ts.map +1 -1
- package/script/trellis/models/trellis/TrellisError.js +4 -0
- package/script/trellis/runtime_transport.d.ts +12 -0
- package/script/trellis/runtime_transport.d.ts.map +1 -0
- package/script/trellis/runtime_transport.js +37 -0
- package/script/trellis/store.d.ts +51 -0
- package/script/trellis/store.d.ts.map +1 -0
- package/script/trellis/store.js +316 -0
- package/script/trellis/tracing.js +1 -1
- package/script/trellis/transfer.d.ts +118 -0
- package/script/trellis/transfer.d.ts.map +1 -0
- package/script/trellis/transfer.js +367 -0
- package/script/trellis/trellis.d.ts +3 -0
- package/script/trellis/trellis.d.ts.map +1 -1
- package/script/trellis/trellis.js +48 -17
- package/esm/auth/workload_activation.d.ts +0 -192
- package/esm/auth/workload_activation.d.ts.map +0 -1
- package/esm/trellis/workload.d.ts +0 -45
- package/esm/trellis/workload.d.ts.map +0 -1
- package/esm/trellis/workload.js +0 -144
- package/script/auth/workload_activation.d.ts +0 -192
- package/script/auth/workload_activation.d.ts.map +0 -1
- package/script/trellis/workload.d.ts +0 -45
- package/script/trellis/workload.d.ts.map +0 -1
- package/script/trellis/workload.js +0 -172
package/esm/contracts/mod.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { canonicalizeJson, digestJson, isJsonValue, sha256Base64urlSync, } from "./canonical.js";
|
|
2
2
|
import { schema, unwrapSchema, } from "./runtime.js";
|
|
3
3
|
import { assertDataPointersExistAndAreTokenable, } from "./schema_pointers.js";
|
|
4
|
-
export { ContractJobQueueResourceSchema, ContractJobsResourceSchema, ContractKvResourceSchema, ContractResourceBindingsSchema, ContractResourcesSchema, ContractSchemaRefSchema, ContractStreamResourceSchema, EventHeaderSchema, InstalledServiceContractSchema, IsoDateSchema, JobsQueueBindingSchema, JobsResourceBindingSchema, KvResourceBindingSchema, PaginatedSchema, StreamResourceBindingSchema, } from "./protocol.js";
|
|
4
|
+
export { ContractJobQueueResourceSchema, ContractJobsResourceSchema, ContractKvResourceSchema, ContractResourceBindingsSchema, ContractResourcesSchema, ContractSchemaRefSchema, ContractStoreResourceSchema, ContractStreamResourceSchema, EventHeaderSchema, InstalledServiceContractSchema, IsoDateSchema, JobsQueueBindingSchema, JobsResourceBindingSchema, KvResourceBindingSchema, StoreResourceBindingSchema, PaginatedSchema, StreamResourceBindingSchema, } from "./protocol.js";
|
|
5
5
|
export const CONTRACT_FORMAT_V1 = "trellis.contract.v1";
|
|
6
6
|
export const CATALOG_FORMAT_V1 = "trellis.catalog.v1";
|
|
7
7
|
const CONTRACT_MODULE_METADATA = Symbol.for("@qlever-llc/trellis-contracts/contract-module");
|
|
@@ -43,7 +43,7 @@ function eventSubject(name, version, params) {
|
|
|
43
43
|
return `events.${version}.${name}${suffix}`;
|
|
44
44
|
}
|
|
45
45
|
function emitResources(resources) {
|
|
46
|
-
if (!resources?.kv && !resources?.streams && !resources?.jobs) {
|
|
46
|
+
if (!resources?.kv && !resources?.store && !resources?.streams && !resources?.jobs) {
|
|
47
47
|
return undefined;
|
|
48
48
|
}
|
|
49
49
|
return {
|
|
@@ -63,6 +63,24 @@ function emitResources(resources) {
|
|
|
63
63
|
])),
|
|
64
64
|
}
|
|
65
65
|
: {}),
|
|
66
|
+
...(resources.store
|
|
67
|
+
? {
|
|
68
|
+
store: Object.fromEntries(Object.entries(resources.store).map(([alias, resource]) => [
|
|
69
|
+
alias,
|
|
70
|
+
{
|
|
71
|
+
purpose: resource.purpose,
|
|
72
|
+
required: resource.required ?? true,
|
|
73
|
+
ttlMs: resource.ttlMs ?? 0,
|
|
74
|
+
...(resource.maxObjectBytes !== undefined
|
|
75
|
+
? { maxObjectBytes: resource.maxObjectBytes }
|
|
76
|
+
: {}),
|
|
77
|
+
...(resource.maxTotalBytes !== undefined
|
|
78
|
+
? { maxTotalBytes: resource.maxTotalBytes }
|
|
79
|
+
: {}),
|
|
80
|
+
},
|
|
81
|
+
])),
|
|
82
|
+
}
|
|
83
|
+
: {}),
|
|
66
84
|
...(resources.streams
|
|
67
85
|
? {
|
|
68
86
|
streams: Object.fromEntries(Object.entries(resources.streams).map(([alias, resource]) => [
|
|
@@ -169,7 +187,8 @@ function emitContract(source) {
|
|
|
169
187
|
? Object.fromEntries(Object.entries(source.operations).map(([name, operation]) => {
|
|
170
188
|
const emitted = {
|
|
171
189
|
version: operation.version,
|
|
172
|
-
subject: operation.subject ??
|
|
190
|
+
subject: operation.subject ??
|
|
191
|
+
operationSubject(name, operation.version),
|
|
173
192
|
input: { ...operation.input },
|
|
174
193
|
};
|
|
175
194
|
if (operation.progress) {
|
|
@@ -262,6 +281,7 @@ function emitContract(source) {
|
|
|
262
281
|
id: source.id,
|
|
263
282
|
displayName: source.displayName,
|
|
264
283
|
description: source.description,
|
|
284
|
+
kind: source.kind,
|
|
265
285
|
...(source.schemas ? { schemas: cloneSchemas(source.schemas) } : {}),
|
|
266
286
|
...(uses ? { uses } : {}),
|
|
267
287
|
...(rpc ? { rpc } : {}),
|
|
@@ -416,7 +436,12 @@ function normalizeUses(uses) {
|
|
|
416
436
|
};
|
|
417
437
|
}
|
|
418
438
|
const manifestUses = {};
|
|
419
|
-
const usedApi = {
|
|
439
|
+
const usedApi = {
|
|
440
|
+
rpc: {},
|
|
441
|
+
operations: {},
|
|
442
|
+
events: {},
|
|
443
|
+
subjects: {},
|
|
444
|
+
};
|
|
420
445
|
for (const [alias, useValue] of Object.entries(uses)) {
|
|
421
446
|
const contractModule = getContractModuleFromUse(alias, useValue);
|
|
422
447
|
if (useValue.contract !== contractModule.CONTRACT_ID) {
|
|
@@ -502,6 +527,7 @@ export function defineContract(source) {
|
|
|
502
527
|
id: source.id,
|
|
503
528
|
displayName: source.displayName,
|
|
504
529
|
description: source.description,
|
|
530
|
+
kind: source.kind,
|
|
505
531
|
...(source.schemas ? { schemas: source.schemas } : {}),
|
|
506
532
|
...(manifestUses ? { uses: manifestUses } : {}),
|
|
507
533
|
...(source.rpc ? { rpc: source.rpc } : {}),
|
|
@@ -7,6 +7,14 @@ export declare const ContractKvResourceSchema: Type.TObject<{
|
|
|
7
7
|
maxValueBytes: Type.TOptional<Type.TInteger>;
|
|
8
8
|
}>;
|
|
9
9
|
export type ContractKvResource = Static<typeof ContractKvResourceSchema>;
|
|
10
|
+
export declare const ContractStoreResourceSchema: Type.TObject<{
|
|
11
|
+
purpose: Type.TString;
|
|
12
|
+
required: Type.TOptional<Type.TBoolean>;
|
|
13
|
+
ttlMs: Type.TOptional<Type.TInteger>;
|
|
14
|
+
maxObjectBytes: Type.TOptional<Type.TInteger>;
|
|
15
|
+
maxTotalBytes: Type.TOptional<Type.TInteger>;
|
|
16
|
+
}>;
|
|
17
|
+
export type ContractStoreResource = Static<typeof ContractStoreResourceSchema>;
|
|
10
18
|
export declare const ContractStreamResourceSchema: Type.TObject<{
|
|
11
19
|
purpose: Type.TString;
|
|
12
20
|
required: Type.TOptional<Type.TBoolean>;
|
|
@@ -73,6 +81,13 @@ export declare const ContractResourcesSchema: Type.TObject<{
|
|
|
73
81
|
ttlMs: Type.TOptional<Type.TInteger>;
|
|
74
82
|
maxValueBytes: Type.TOptional<Type.TInteger>;
|
|
75
83
|
}>>>;
|
|
84
|
+
store: Type.TOptional<Type.TRecord<"^.*$", Type.TObject<{
|
|
85
|
+
purpose: Type.TString;
|
|
86
|
+
required: Type.TOptional<Type.TBoolean>;
|
|
87
|
+
ttlMs: Type.TOptional<Type.TInteger>;
|
|
88
|
+
maxObjectBytes: Type.TOptional<Type.TInteger>;
|
|
89
|
+
maxTotalBytes: Type.TOptional<Type.TInteger>;
|
|
90
|
+
}>>>;
|
|
76
91
|
streams: Type.TOptional<Type.TRecord<"^.*$", Type.TObject<{
|
|
77
92
|
purpose: Type.TString;
|
|
78
93
|
required: Type.TOptional<Type.TBoolean>;
|
|
@@ -117,6 +132,13 @@ export declare const KvResourceBindingSchema: Type.TObject<{
|
|
|
117
132
|
maxValueBytes: Type.TOptional<Type.TInteger>;
|
|
118
133
|
}>;
|
|
119
134
|
export type KvResourceBinding = Static<typeof KvResourceBindingSchema>;
|
|
135
|
+
export declare const StoreResourceBindingSchema: Type.TObject<{
|
|
136
|
+
name: Type.TString;
|
|
137
|
+
ttlMs: Type.TInteger;
|
|
138
|
+
maxObjectBytes: Type.TOptional<Type.TInteger>;
|
|
139
|
+
maxTotalBytes: Type.TOptional<Type.TInteger>;
|
|
140
|
+
}>;
|
|
141
|
+
export type StoreResourceBinding = Static<typeof StoreResourceBindingSchema>;
|
|
120
142
|
export declare const StreamResourceBindingSchema: Type.TObject<{
|
|
121
143
|
name: Type.TString;
|
|
122
144
|
retention: Type.TOptional<Type.TString>;
|
|
@@ -187,6 +209,12 @@ export declare const ContractResourceBindingsSchema: Type.TObject<{
|
|
|
187
209
|
ttlMs: Type.TInteger;
|
|
188
210
|
maxValueBytes: Type.TOptional<Type.TInteger>;
|
|
189
211
|
}>>>;
|
|
212
|
+
store: Type.TOptional<Type.TRecord<"^.*$", Type.TObject<{
|
|
213
|
+
name: Type.TString;
|
|
214
|
+
ttlMs: Type.TInteger;
|
|
215
|
+
maxObjectBytes: Type.TOptional<Type.TInteger>;
|
|
216
|
+
maxTotalBytes: Type.TOptional<Type.TInteger>;
|
|
217
|
+
}>>>;
|
|
190
218
|
streams: Type.TOptional<Type.TRecord<"^.*$", Type.TObject<{
|
|
191
219
|
name: Type.TString;
|
|
192
220
|
retention: Type.TOptional<Type.TString>;
|
|
@@ -239,6 +267,12 @@ export declare const InstalledServiceContractSchema: Type.TObject<{
|
|
|
239
267
|
ttlMs: Type.TInteger;
|
|
240
268
|
maxValueBytes: Type.TOptional<Type.TInteger>;
|
|
241
269
|
}>>>;
|
|
270
|
+
store: Type.TOptional<Type.TRecord<"^.*$", Type.TObject<{
|
|
271
|
+
name: Type.TString;
|
|
272
|
+
ttlMs: Type.TInteger;
|
|
273
|
+
maxObjectBytes: Type.TOptional<Type.TInteger>;
|
|
274
|
+
maxTotalBytes: Type.TOptional<Type.TInteger>;
|
|
275
|
+
}>>>;
|
|
242
276
|
streams: Type.TOptional<Type.TRecord<"^.*$", Type.TObject<{
|
|
243
277
|
name: Type.TString;
|
|
244
278
|
retention: Type.TOptional<Type.TString>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../src/contracts/protocol.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAE,KAAK,MAAM,EAAE,MAAM,SAAS,CAAC;AAmB5C,eAAO,MAAM,wBAAwB;;;;;;EAMF,CAAC;AAEpC,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAEzE,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;EAgBN,CAAC;AAEpC,MAAM,MAAM,sBAAsB,GAAG,MAAM,CACzC,OAAO,4BAA4B,CACpC,CAAC;AAEF,eAAO,MAAM,uBAAuB;;EAED,CAAC;AAEpC,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAEvE,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;EAWR,CAAC;AAEpC,MAAM,MAAM,wBAAwB,GAAG,MAAM,CAC3C,OAAO,8BAA8B,CACtC,CAAC;AAEF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;EAKJ,CAAC;AAEpC,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE7E,eAAO,MAAM,uBAAuB
|
|
1
|
+
{"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../src/contracts/protocol.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAE,KAAK,MAAM,EAAE,MAAM,SAAS,CAAC;AAmB5C,eAAO,MAAM,wBAAwB;;;;;;EAMF,CAAC;AAEpC,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAEzE,eAAO,MAAM,2BAA2B;;;;;;EAML,CAAC;AAEpC,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAE/E,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;EAgBN,CAAC;AAEpC,MAAM,MAAM,sBAAsB,GAAG,MAAM,CACzC,OAAO,4BAA4B,CACpC,CAAC;AAEF,eAAO,MAAM,uBAAuB;;EAED,CAAC;AAEpC,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAEvE,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;EAWR,CAAC;AAEpC,MAAM,MAAM,wBAAwB,GAAG,MAAM,CAC3C,OAAO,8BAA8B,CACtC,CAAC;AAEF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;EAKJ,CAAC;AAEpC,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE7E,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAWlC,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAEvE,eAAO,MAAM,uBAAuB;;;;;EAKD,CAAC;AAEpC,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAEvE,eAAO,MAAM,0BAA0B;;;;;EAKJ,CAAC;AAEpC,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE7E,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;EAgBL,CAAC;AAEpC,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAE/E,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;EAeA,CAAC;AAEpC,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAErE,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;EAGH,CAAC;AAEpC,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE3E,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAWzC,CAAC;AAEH,MAAM,MAAM,wBAAwB,GAAG,MAAM,CAC3C,OAAO,8BAA8B,CACtC,CAAC;AAEF,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAIR,CAAC;AAEpC,MAAM,MAAM,wBAAwB,GAAG,MAAM,CAC3C,OAAO,8BAA8B,CACtC,CAAC;AAEF,eAAO,MAAM,aAAa,iCAIsB,CAAC;AAEjD,eAAO,MAAM,iBAAiB;;;;;EAK5B,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE3D,eAAO,MAAM,eAAe;;;;;;EAM1B,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,eAAe,CAAC,CAAC"}
|
|
@@ -19,6 +19,13 @@ export const ContractKvResourceSchema = Type.Object({
|
|
|
19
19
|
ttlMs: Type.Optional(Type.Integer({ minimum: 0, default: 0 })),
|
|
20
20
|
maxValueBytes: Type.Optional(Type.Integer({ minimum: 1 })),
|
|
21
21
|
}, { additionalProperties: false });
|
|
22
|
+
export const ContractStoreResourceSchema = Type.Object({
|
|
23
|
+
purpose: Type.String({ minLength: 1 }),
|
|
24
|
+
required: Type.Optional(Type.Boolean({ default: true })),
|
|
25
|
+
ttlMs: Type.Optional(Type.Integer({ minimum: 0, default: 0 })),
|
|
26
|
+
maxObjectBytes: Type.Optional(Type.Integer({ minimum: 1 })),
|
|
27
|
+
maxTotalBytes: Type.Optional(Type.Integer({ minimum: 1 })),
|
|
28
|
+
}, { additionalProperties: false });
|
|
22
29
|
export const ContractStreamResourceSchema = Type.Object({
|
|
23
30
|
purpose: Type.String({ minLength: 1 }),
|
|
24
31
|
required: Type.Optional(Type.Boolean({ default: true })),
|
|
@@ -56,6 +63,7 @@ export const ContractJobsResourceSchema = Type.Object({
|
|
|
56
63
|
}, { additionalProperties: false });
|
|
57
64
|
export const ContractResourcesSchema = Type.Object({
|
|
58
65
|
kv: Type.Optional(Type.Record(Type.String({ minLength: 1 }), ContractKvResourceSchema)),
|
|
66
|
+
store: Type.Optional(Type.Record(Type.String({ minLength: 1 }), ContractStoreResourceSchema)),
|
|
59
67
|
streams: Type.Optional(Type.Record(Type.String({ minLength: 1 }), ContractStreamResourceSchema)),
|
|
60
68
|
jobs: Type.Optional(ContractJobsResourceSchema),
|
|
61
69
|
});
|
|
@@ -65,6 +73,12 @@ export const KvResourceBindingSchema = Type.Object({
|
|
|
65
73
|
ttlMs: Type.Integer({ minimum: 0 }),
|
|
66
74
|
maxValueBytes: Type.Optional(Type.Integer({ minimum: 1 })),
|
|
67
75
|
}, { additionalProperties: false });
|
|
76
|
+
export const StoreResourceBindingSchema = Type.Object({
|
|
77
|
+
name: Type.String({ minLength: 1 }),
|
|
78
|
+
ttlMs: Type.Integer({ minimum: 0 }),
|
|
79
|
+
maxObjectBytes: Type.Optional(Type.Integer({ minimum: 1 })),
|
|
80
|
+
maxTotalBytes: Type.Optional(Type.Integer({ minimum: 1 })),
|
|
81
|
+
}, { additionalProperties: false });
|
|
68
82
|
export const StreamResourceBindingSchema = Type.Object({
|
|
69
83
|
name: Type.String({ minLength: 1 }),
|
|
70
84
|
retention: Type.Optional(Type.String({ minLength: 1 })),
|
|
@@ -104,6 +118,7 @@ export const JobsResourceBindingSchema = Type.Object({
|
|
|
104
118
|
}, { additionalProperties: false });
|
|
105
119
|
export const ContractResourceBindingsSchema = Type.Object({
|
|
106
120
|
kv: Type.Optional(Type.Record(Type.String({ minLength: 1 }), KvResourceBindingSchema)),
|
|
121
|
+
store: Type.Optional(Type.Record(Type.String({ minLength: 1 }), StoreResourceBindingSchema)),
|
|
107
122
|
streams: Type.Optional(Type.Record(Type.String({ minLength: 1 }), StreamResourceBindingSchema)),
|
|
108
123
|
jobs: Type.Optional(JobsResourceBindingSchema),
|
|
109
124
|
});
|
package/esm/server/deno.d.ts
CHANGED
|
@@ -1,7 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
import type { TrellisServiceRuntimeDeps } from "./runtime.js";
|
|
3
|
-
import type { ServiceContract, TrellisServiceConnectOpts } from "./service.js";
|
|
4
|
-
export declare function connectService<TOwnedApi extends TrellisAPI, TTrellisApi extends TrellisAPI = TOwnedApi>(contract: ServiceContract<TOwnedApi, TTrellisApi>, name: string, opts: Omit<TrellisServiceConnectOpts<TOwnedApi, TTrellisApi>, "server"> & {
|
|
5
|
-
server: Omit<TrellisServiceConnectOpts<TOwnedApi, TTrellisApi>["server"], "api" | "trellisApi">;
|
|
6
|
-
}, deps?: Partial<TrellisServiceRuntimeDeps>): Promise<import("./service.js").TrellisService<TOwnedApi, TTrellisApi>>;
|
|
1
|
+
export { KVHandle, type ResourceBindingKV, type ResourceBindingStream, type ResourceBindings, type ServiceContract, type ServiceTrellis, TrellisService, type TrellisServiceConnectOpts, } from "./service.js";
|
|
7
2
|
//# sourceMappingURL=deno.d.ts.map
|
package/esm/server/deno.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deno.d.ts","sourceRoot":"","sources":["../../src/server/deno.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"deno.d.ts","sourceRoot":"","sources":["../../src/server/deno.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC1B,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,cAAc,EACd,KAAK,yBAAyB,GAC/B,MAAM,cAAc,CAAC"}
|
package/esm/server/deno.js
CHANGED
|
@@ -1,16 +1 @@
|
|
|
1
|
-
|
|
2
|
-
import { connect, credsAuthenticator } from "@nats-io/transport-deno";
|
|
3
|
-
import { connectService as connectServiceWithRuntime } from "./service.js";
|
|
4
|
-
const denoRuntimeDeps = {
|
|
5
|
-
connect: connect,
|
|
6
|
-
credsAuthenticator: credsAuthenticator,
|
|
7
|
-
readFileSync: (path) => dntShim.Deno.readFileSync(path),
|
|
8
|
-
};
|
|
9
|
-
// This Deno entrypoint keeps the default Deno runtime wiring out of the shared
|
|
10
|
-
// server core so the root `@qlever-llc/trellis` package can stay multi-runtime.
|
|
11
|
-
export function connectService(contract, name, opts, deps) {
|
|
12
|
-
return connectServiceWithRuntime(contract, name, opts, {
|
|
13
|
-
...denoRuntimeDeps,
|
|
14
|
-
...deps,
|
|
15
|
-
});
|
|
16
|
-
}
|
|
1
|
+
export { KVHandle, TrellisService, } from "./service.js";
|
package/esm/server/mod.d.ts
CHANGED
|
@@ -10,8 +10,9 @@ export { TrellisServer } from "@qlever-llc/trellis/server/runtime";
|
|
|
10
10
|
export { type HealthCheckFn, type HealthCheckResult, type HealthResponse, runAllHealthChecks, runHealthCheck, } from "./health.js";
|
|
11
11
|
export { mountStandardHealthRpc } from "./health_rpc.js";
|
|
12
12
|
export { HealthCheckResultSchema, HealthResponseSchema, HealthRpcSchema, } from "./health_schemas.js";
|
|
13
|
-
export { connectService as connectNodeService, } from "./node.js";
|
|
14
13
|
export type { NatsConnectFn, NatsConnectOpts, ReadFileSyncFn, TrellisServiceRuntimeDeps, } from "./runtime.js";
|
|
15
|
-
export {
|
|
14
|
+
export { KVHandle, StoreHandle, type ResourceBindingKV, type ResourceBindingStore, type ResourceBindingStream, type ResourceBindings, type ServiceContract, type ServiceTrellis, TrellisService, type TrellisServiceConnectOpts, } from "./service.js";
|
|
15
|
+
export { ServiceTransfer } from "./transfer.js";
|
|
16
|
+
export type { InitiateDownloadArgs, InitiateUploadArgs, TransferStoreHandle, } from "./transfer.js";
|
|
16
17
|
export { createEventContext, type EventContext, type EventHandler, type GroupedSubscription, isGroupedSubscription, type MultiEventSubscription, type MultiSubscribeOpts, type OrderingGroup, type SingleSubscription, type SubscribeOpts, } from "./subscription.js";
|
|
17
18
|
//# sourceMappingURL=mod.d.ts.map
|
package/esm/server/mod.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../src/server/mod.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AAEnE,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,kBAAkB,EAClB,cAAc,GACf,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,eAAe,GAChB,MAAM,qBAAqB,CAAC;AAC7B,
|
|
1
|
+
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../src/server/mod.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AAEnE,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,kBAAkB,EAClB,cAAc,GACf,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,eAAe,GAChB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EACV,aAAa,EACb,eAAe,EACf,cAAc,EACd,yBAAyB,GAC1B,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,QAAQ,EACR,WAAW,EACX,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAC1B,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,cAAc,EACd,KAAK,yBAAyB,GAC/B,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,YAAY,EACV,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,kBAAkB,EAClB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,mBAAmB,EACxB,qBAAqB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,aAAa,GACnB,MAAM,mBAAmB,CAAC"}
|
package/esm/server/mod.js
CHANGED
|
@@ -11,7 +11,7 @@ export { TrellisServer } from "@qlever-llc/trellis/server/runtime";
|
|
|
11
11
|
export { runAllHealthChecks, runHealthCheck, } from "./health.js";
|
|
12
12
|
export { mountStandardHealthRpc } from "./health_rpc.js";
|
|
13
13
|
export { HealthCheckResultSchema, HealthResponseSchema, HealthRpcSchema, } from "./health_schemas.js";
|
|
14
|
-
export {
|
|
15
|
-
export {
|
|
14
|
+
export { KVHandle, StoreHandle, TrellisService, } from "./service.js";
|
|
15
|
+
export { ServiceTransfer } from "./transfer.js";
|
|
16
16
|
// Re-export subscription types
|
|
17
17
|
export { createEventContext, isGroupedSubscription, } from "./subscription.js";
|
package/esm/server/node.d.ts
CHANGED
|
@@ -1,7 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
import type { TrellisServiceRuntimeDeps } from "./runtime.js";
|
|
3
|
-
import type { ServiceContract, TrellisServiceConnectOpts } from "./service.js";
|
|
4
|
-
export declare function connectService<TOwnedApi extends TrellisAPI, TTrellisApi extends TrellisAPI = TOwnedApi>(contract: ServiceContract<TOwnedApi, TTrellisApi>, name: string, opts: Omit<TrellisServiceConnectOpts<TOwnedApi, TTrellisApi>, "server"> & {
|
|
5
|
-
server: Omit<TrellisServiceConnectOpts<TOwnedApi, TTrellisApi>["server"], "api" | "trellisApi">;
|
|
6
|
-
}, deps?: Partial<TrellisServiceRuntimeDeps>): Promise<import("./service.js").TrellisService<TOwnedApi, TTrellisApi>>;
|
|
1
|
+
export { KVHandle, type ResourceBindingKV, type ResourceBindingStream, type ResourceBindings, type ServiceContract, type ServiceTrellis, TrellisService, type TrellisServiceConnectOpts, } from "./service.js";
|
|
7
2
|
//# sourceMappingURL=node.d.ts.map
|
package/esm/server/node.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/server/node.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/server/node.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC1B,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,cAAc,EACd,KAAK,yBAAyB,GAC/B,MAAM,cAAc,CAAC"}
|
package/esm/server/node.js
CHANGED
|
@@ -1,16 +1 @@
|
|
|
1
|
-
|
|
2
|
-
import { connect, credsAuthenticator, } from "@nats-io/transport-node";
|
|
3
|
-
import { connectService as connectServiceWithRuntime } from "./service.js";
|
|
4
|
-
const nodeRuntimeDeps = {
|
|
5
|
-
connect: connect,
|
|
6
|
-
credsAuthenticator: credsAuthenticator,
|
|
7
|
-
readFileSync: (path) => new Uint8Array(readFileSync(path)),
|
|
8
|
-
};
|
|
9
|
-
// This Node entrypoint mirrors the Deno adapter so service authors can use the
|
|
10
|
-
// same high-level API from npm without pulling in Deno-only transports.
|
|
11
|
-
export function connectService(contract, name, opts, deps) {
|
|
12
|
-
return connectServiceWithRuntime(contract, name, opts, {
|
|
13
|
-
...nodeRuntimeDeps,
|
|
14
|
-
...deps,
|
|
15
|
-
});
|
|
16
|
-
}
|
|
1
|
+
export { KVHandle, TrellisService, } from "./service.js";
|
package/esm/server/service.d.ts
CHANGED
|
@@ -1,14 +1,16 @@
|
|
|
1
|
-
import type
|
|
2
|
-
import { type KVError, type OperationRegistration, Trellis, TypedKV } from "@qlever-llc/trellis";
|
|
1
|
+
import { type NatsConnection } from "@nats-io/nats-core";
|
|
2
|
+
import { type KVError, type OperationRegistration, type StoreError, Trellis, TypedKV, TypedStore } from "@qlever-llc/trellis";
|
|
3
3
|
import { type TrellisServerFor } from "@qlever-llc/trellis/server/runtime";
|
|
4
4
|
import { type TrellisAuth as SessionAuth } from "@qlever-llc/trellis/auth";
|
|
5
|
-
import type
|
|
5
|
+
import { type InferSchemaType } from "@qlever-llc/trellis/contracts";
|
|
6
|
+
import type { TrellisAPI } from "@qlever-llc/trellis/contracts";
|
|
6
7
|
import { type Result } from "@qlever-llc/result";
|
|
7
8
|
import type { Logger } from "pino";
|
|
8
|
-
import type
|
|
9
|
+
import { type TSchema } from "typebox";
|
|
9
10
|
import type { HealthCheckFn } from "./health.js";
|
|
10
11
|
import { type ResourceBindingJobs } from "@qlever-llc/trellis-jobs";
|
|
11
12
|
import type { NatsConnectOpts, TrellisServiceRuntimeDeps } from "./runtime.js";
|
|
13
|
+
import { ServiceTransfer } from "./transfer.js";
|
|
12
14
|
type ExtraNatsConnectOpts = Omit<NatsConnectOpts, "servers" | "token" | "inboxPrefix" | "authenticator">;
|
|
13
15
|
type RpcMethodName<TA extends TrellisAPI> = keyof TA["rpc"] & string;
|
|
14
16
|
type RpcMethodInput<TA extends TrellisAPI, M extends RpcMethodName<TA>> = InferSchemaType<TA["rpc"][M]["input"]>;
|
|
@@ -32,12 +34,19 @@ export type ResourceBindingKV = {
|
|
|
32
34
|
ttlMs: number;
|
|
33
35
|
maxValueBytes?: number;
|
|
34
36
|
};
|
|
37
|
+
export type ResourceBindingStore = {
|
|
38
|
+
name: string;
|
|
39
|
+
ttlMs: number;
|
|
40
|
+
maxObjectBytes?: number;
|
|
41
|
+
maxTotalBytes?: number;
|
|
42
|
+
};
|
|
35
43
|
export type ResourceBindingStream = {
|
|
36
44
|
name: string;
|
|
37
45
|
[key: string]: unknown;
|
|
38
46
|
};
|
|
39
47
|
export type ResourceBindings = {
|
|
40
48
|
kv: Record<string, ResourceBindingKV>;
|
|
49
|
+
store: Record<string, ResourceBindingStore>;
|
|
41
50
|
streams: Record<string, ResourceBindingStream>;
|
|
42
51
|
jobs?: ResourceBindingJobs;
|
|
43
52
|
};
|
|
@@ -47,7 +56,13 @@ export declare class KVHandle {
|
|
|
47
56
|
constructor(nc: NatsConnection, binding: ResourceBindingKV);
|
|
48
57
|
open<S extends TSchema>(schema: S): Promise<Result<TypedKV<S>, KVError>>;
|
|
49
58
|
}
|
|
50
|
-
export
|
|
59
|
+
export declare class StoreHandle {
|
|
60
|
+
#private;
|
|
61
|
+
readonly binding: ResourceBindingStore;
|
|
62
|
+
constructor(nc: NatsConnection, binding: ResourceBindingStore);
|
|
63
|
+
open(): Promise<Result<TypedStore, StoreError>>;
|
|
64
|
+
}
|
|
65
|
+
type TrellisServiceRuntimeConnectOpts<TOwnedApi extends TrellisAPI = TrellisAPI, TTrellisApi extends TrellisAPI = TOwnedApi> = {
|
|
51
66
|
/**
|
|
52
67
|
* Session key seed (base64url Ed25519 private key seed) used to derive the service session key.
|
|
53
68
|
* If you already have a `TrellisAuth` object, pass it via `auth` instead.
|
|
@@ -82,6 +97,13 @@ export type TrellisServiceConnectOpts<TOwnedApi extends TrellisAPI = TrellisAPI,
|
|
|
82
97
|
};
|
|
83
98
|
server: TrellisServerCreateOpts<TOwnedApi, TTrellisApi>;
|
|
84
99
|
};
|
|
100
|
+
export type TrellisServiceConnectOpts<TOwnedApi extends TrellisAPI = TrellisAPI, TTrellisApi extends TrellisAPI = TOwnedApi> = {
|
|
101
|
+
trellisUrl: string;
|
|
102
|
+
contract: ServiceContract<TOwnedApi, TTrellisApi>;
|
|
103
|
+
name: string;
|
|
104
|
+
sessionKeySeed: string;
|
|
105
|
+
server?: Omit<TrellisServerCreateOpts<TOwnedApi, TTrellisApi>, "api" | "trellisApi">;
|
|
106
|
+
};
|
|
85
107
|
export type ServiceTrellis<TOwnedApi extends TrellisAPI, TTrellisApi extends TrellisAPI> = Omit<Trellis<TTrellisApi>, "mount"> & Pick<TrellisServerFor<TOwnedApi & TTrellisApi>, "mount">;
|
|
86
108
|
type RequestOpts = {
|
|
87
109
|
timeout?: number;
|
|
@@ -101,11 +123,14 @@ export declare class TrellisService<TOwnedApi extends TrellisAPI = TrellisAPI, T
|
|
|
101
123
|
readonly server: TrellisServerFor<TOwnedApi & TTrellisApi>;
|
|
102
124
|
readonly operations: TrellisServerFor<TOwnedApi & TTrellisApi>["operations"];
|
|
103
125
|
readonly trellis: ServiceTrellis<TOwnedApi, TTrellisApi>;
|
|
126
|
+
readonly transfer: ServiceTransfer;
|
|
104
127
|
readonly kv: Record<string, KVHandle>;
|
|
128
|
+
readonly store: Record<string, StoreHandle>;
|
|
105
129
|
readonly streams: Record<string, ResourceBindingStream>;
|
|
106
130
|
readonly jobs?: ResourceBindingJobs;
|
|
107
|
-
|
|
108
|
-
static connect<TOwnedApi extends TrellisAPI = TrellisAPI, TTrellisApi extends TrellisAPI = TOwnedApi>(
|
|
131
|
+
constructor(name: string, auth: SessionAuth, nc: NatsConnection, server: TrellisServerFor<TOwnedApi & TTrellisApi>, trellis: ServiceTrellis<TOwnedApi, TTrellisApi>, bindings: ResourceBindings);
|
|
132
|
+
static connect<TOwnedApi extends TrellisAPI = TrellisAPI, TTrellisApi extends TrellisAPI = TOwnedApi>(args: TrellisServiceConnectOpts<TOwnedApi, TTrellisApi>, deps?: Partial<TrellisServiceRuntimeDeps>): Promise<TrellisService<TOwnedApi, TTrellisApi>>;
|
|
133
|
+
static connectInternal<TOwnedApi extends TrellisAPI = TrellisAPI, TTrellisApi extends TrellisAPI = TOwnedApi>(name: string, opts: TrellisServiceRuntimeConnectOpts<TOwnedApi, TTrellisApi> & {
|
|
109
134
|
contractId?: string;
|
|
110
135
|
contractDigest?: string;
|
|
111
136
|
}, deps: TrellisServiceRuntimeDeps): Promise<TrellisService<TOwnedApi, TTrellisApi>>;
|
|
@@ -114,8 +139,5 @@ export declare class TrellisService<TOwnedApi extends TrellisAPI = TrellisAPI, T
|
|
|
114
139
|
requestOrThrow<M extends RpcMethodName<TTrellisApi>>(method: M, input: RpcMethodInput<TTrellisApi, M>, opts?: RequestOpts): Promise<RpcMethodOutput<TTrellisApi, M>>;
|
|
115
140
|
operation<O extends keyof (TOwnedApi & TTrellisApi)["operations"] & string>(operation: O): OperationRegistration<InferSchemaType<(TOwnedApi & TTrellisApi)["operations"][O]["input"]>>;
|
|
116
141
|
}
|
|
117
|
-
export declare function connectService<TOwnedApi extends TrellisAPI, TTrellisApi extends TrellisAPI>(contract: ServiceContract<TOwnedApi, TTrellisApi>, name: string, opts: Omit<TrellisServiceConnectOpts<TOwnedApi, TTrellisApi>, "server"> & {
|
|
118
|
-
server: Omit<TrellisServiceConnectOpts<TOwnedApi, TTrellisApi>["server"], "api" | "trellisApi">;
|
|
119
|
-
}, deps: TrellisServiceRuntimeDeps): Promise<TrellisService<TOwnedApi, TTrellisApi>>;
|
|
120
142
|
export {};
|
|
121
143
|
//# sourceMappingURL=service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/server/service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/server/service.ts"],"names":[],"mappings":"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"}
|