@cef-ai/vault-sdk 0.1.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 +122 -0
- package/dist/agreements/gar-client.d.ts +28 -0
- package/dist/agreements/gar-client.d.ts.map +1 -0
- package/dist/agreements/gar-client.js +21 -0
- package/dist/agreements/gar-client.js.map +1 -0
- package/dist/agreements/index.d.ts +7 -0
- package/dist/agreements/index.d.ts.map +1 -0
- package/dist/agreements/index.js +5 -0
- package/dist/agreements/index.js.map +1 -0
- package/dist/agreements/payload.d.ts +38 -0
- package/dist/agreements/payload.d.ts.map +1 -0
- package/dist/agreements/payload.js +20 -0
- package/dist/agreements/payload.js.map +1 -0
- package/dist/agreements/sign.d.ts +31 -0
- package/dist/agreements/sign.d.ts.map +1 -0
- package/dist/agreements/sign.js +38 -0
- package/dist/agreements/sign.js.map +1 -0
- package/dist/auth/no-auth.d.ts +9 -0
- package/dist/auth/no-auth.d.ts.map +1 -0
- package/dist/auth/no-auth.js +14 -0
- package/dist/auth/no-auth.js.map +1 -0
- package/dist/auth/provider.d.ts +31 -0
- package/dist/auth/provider.d.ts.map +1 -0
- package/dist/auth/provider.js +2 -0
- package/dist/auth/provider.js.map +1 -0
- package/dist/auth/wallet.d.ts +15 -0
- package/dist/auth/wallet.d.ts.map +1 -0
- package/dist/auth/wallet.js +33 -0
- package/dist/auth/wallet.js.map +1 -0
- package/dist/client.d.ts +48 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +64 -0
- package/dist/client.js.map +1 -0
- package/dist/core/canonical.d.ts +16 -0
- package/dist/core/canonical.d.ts.map +1 -0
- package/dist/core/canonical.js +39 -0
- package/dist/core/canonical.js.map +1 -0
- package/dist/core/endpoints.d.ts +27 -0
- package/dist/core/endpoints.d.ts.map +1 -0
- package/dist/core/endpoints.js +28 -0
- package/dist/core/endpoints.js.map +1 -0
- package/dist/core/errors.d.ts +13 -0
- package/dist/core/errors.d.ts.map +1 -0
- package/dist/core/errors.js +29 -0
- package/dist/core/errors.js.map +1 -0
- package/dist/core/http.d.ts +31 -0
- package/dist/core/http.d.ts.map +1 -0
- package/dist/core/http.js +82 -0
- package/dist/core/http.js.map +1 -0
- package/dist/core/types.d.ts +135 -0
- package/dist/core/types.d.ts.map +1 -0
- package/dist/core/types.js +2 -0
- package/dist/core/types.js.map +1 -0
- package/dist/fluent/agent-connection.d.ts +28 -0
- package/dist/fluent/agent-connection.d.ts.map +1 -0
- package/dist/fluent/agent-connection.js +52 -0
- package/dist/fluent/agent-connection.js.map +1 -0
- package/dist/fluent/cubby.d.ts +12 -0
- package/dist/fluent/cubby.d.ts.map +1 -0
- package/dist/fluent/cubby.js +20 -0
- package/dist/fluent/cubby.js.map +1 -0
- package/dist/fluent/job.d.ts +20 -0
- package/dist/fluent/job.d.ts.map +1 -0
- package/dist/fluent/job.js +24 -0
- package/dist/fluent/job.js.map +1 -0
- package/dist/fluent/scope.d.ts +27 -0
- package/dist/fluent/scope.d.ts.map +1 -0
- package/dist/fluent/scope.js +40 -0
- package/dist/fluent/scope.js.map +1 -0
- package/dist/fluent/subscribe.d.ts +24 -0
- package/dist/fluent/subscribe.d.ts.map +1 -0
- package/dist/fluent/subscribe.js +46 -0
- package/dist/fluent/subscribe.js.map +1 -0
- package/dist/fluent/vault.d.ts +68 -0
- package/dist/fluent/vault.d.ts.map +1 -0
- package/dist/fluent/vault.js +98 -0
- package/dist/fluent/vault.js.map +1 -0
- package/dist/index.d.ts +22 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +17 -0
- package/dist/index.js.map +1 -0
- package/dist/internal/agents.d.ts +21 -0
- package/dist/internal/agents.d.ts.map +1 -0
- package/dist/internal/agents.js +30 -0
- package/dist/internal/agents.js.map +1 -0
- package/dist/internal/browse.d.ts +31 -0
- package/dist/internal/browse.d.ts.map +1 -0
- package/dist/internal/browse.js +32 -0
- package/dist/internal/browse.js.map +1 -0
- package/dist/internal/cubbies.d.ts +15 -0
- package/dist/internal/cubbies.d.ts.map +1 -0
- package/dist/internal/cubbies.js +20 -0
- package/dist/internal/cubbies.js.map +1 -0
- package/dist/internal/events.d.ts +8 -0
- package/dist/internal/events.d.ts.map +1 -0
- package/dist/internal/events.js +17 -0
- package/dist/internal/events.js.map +1 -0
- package/dist/internal/health.d.ts +12 -0
- package/dist/internal/health.d.ts.map +1 -0
- package/dist/internal/health.js +16 -0
- package/dist/internal/health.js.map +1 -0
- package/dist/internal/marketplace.d.ts +25 -0
- package/dist/internal/marketplace.d.ts.map +1 -0
- package/dist/internal/marketplace.js +22 -0
- package/dist/internal/marketplace.js.map +1 -0
- package/dist/internal/scopes.d.ts +21 -0
- package/dist/internal/scopes.d.ts.map +1 -0
- package/dist/internal/scopes.js +19 -0
- package/dist/internal/scopes.js.map +1 -0
- package/dist/internal/vaults.d.ts +17 -0
- package/dist/internal/vaults.d.ts.map +1 -0
- package/dist/internal/vaults.js +19 -0
- package/dist/internal/vaults.js.map +1 -0
- package/dist/internal-exports.d.ts +11 -0
- package/dist/internal-exports.d.ts.map +1 -0
- package/dist/internal-exports.js +13 -0
- package/dist/internal-exports.js.map +1 -0
- package/dist/wallet/adapter.d.ts +15 -0
- package/dist/wallet/adapter.d.ts.map +1 -0
- package/dist/wallet/adapter.js +6 -0
- package/dist/wallet/adapter.js.map +1 -0
- package/dist/wallet/cere-internal/index.d.ts +4 -0
- package/dist/wallet/cere-internal/index.d.ts.map +1 -0
- package/dist/wallet/cere-internal/index.js +4 -0
- package/dist/wallet/cere-internal/index.js.map +1 -0
- package/dist/wallet/cere-internal/json-signer.d.ts +34 -0
- package/dist/wallet/cere-internal/json-signer.d.ts.map +1 -0
- package/dist/wallet/cere-internal/json-signer.js +78 -0
- package/dist/wallet/cere-internal/json-signer.js.map +1 -0
- package/dist/wallet/cere-internal/signer.d.ts +51 -0
- package/dist/wallet/cere-internal/signer.d.ts.map +1 -0
- package/dist/wallet/cere-internal/signer.js +33 -0
- package/dist/wallet/cere-internal/signer.js.map +1 -0
- package/dist/wallet/cere-internal/uri-signer.d.ts +28 -0
- package/dist/wallet/cere-internal/uri-signer.d.ts.map +1 -0
- package/dist/wallet/cere-internal/uri-signer.js +68 -0
- package/dist/wallet/cere-internal/uri-signer.js.map +1 -0
- package/dist/wallet/cere.d.ts +22 -0
- package/dist/wallet/cere.d.ts.map +1 -0
- package/dist/wallet/cere.js +55 -0
- package/dist/wallet/cere.js.map +1 -0
- package/dist/wallet/keypair.d.ts +12 -0
- package/dist/wallet/keypair.d.ts.map +1 -0
- package/dist/wallet/keypair.js +24 -0
- package/dist/wallet/keypair.js.map +1 -0
- package/package.json +40 -0
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
// src/core/canonical.ts
|
|
2
|
+
const enc = new TextEncoder();
|
|
3
|
+
export const nowRFC3339 = () => new Date().toISOString();
|
|
4
|
+
export function ensure0xHex(s) {
|
|
5
|
+
return s.startsWith("0x") ? s : `0x${s}`;
|
|
6
|
+
}
|
|
7
|
+
export function strip0xHex(s) {
|
|
8
|
+
return s.startsWith("0x") ? s.slice(2) : s;
|
|
9
|
+
}
|
|
10
|
+
export function bytesToHex(b) {
|
|
11
|
+
let s = "";
|
|
12
|
+
for (let i = 0; i < b.length; i++)
|
|
13
|
+
s += b[i].toString(16).padStart(2, "0");
|
|
14
|
+
return s;
|
|
15
|
+
}
|
|
16
|
+
export function encodeBase64Url(bytes) {
|
|
17
|
+
let bin = "";
|
|
18
|
+
for (let i = 0; i < bytes.length; i++)
|
|
19
|
+
bin += String.fromCharCode(bytes[i]);
|
|
20
|
+
const b64 = (typeof btoa === "function" ? btoa : nodeBtoa)(bin);
|
|
21
|
+
return b64.replace(/\+/g, "-").replace(/\//g, "_").replace(/=+$/g, "");
|
|
22
|
+
}
|
|
23
|
+
function nodeBtoa(s) { return Buffer.from(s, "binary").toString("base64"); }
|
|
24
|
+
export function stampBody(body, clock = nowRFC3339) {
|
|
25
|
+
const stamped = { ...(body ?? {}) };
|
|
26
|
+
if (typeof stamped.timestamp !== "string")
|
|
27
|
+
stamped.timestamp = clock();
|
|
28
|
+
return { body: stamped, bytes: enc.encode(JSON.stringify(stamped)) };
|
|
29
|
+
}
|
|
30
|
+
export function buildPreamble(method, path, query, clock = nowRFC3339) {
|
|
31
|
+
const preamble = JSON.stringify({
|
|
32
|
+
method: method.toUpperCase(),
|
|
33
|
+
path,
|
|
34
|
+
query,
|
|
35
|
+
timestamp: clock(),
|
|
36
|
+
});
|
|
37
|
+
return { preamble, bytes: enc.encode(preamble) };
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=canonical.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"canonical.js","sourceRoot":"","sources":["../../src/core/canonical.ts"],"names":[],"mappings":"AAAA,wBAAwB;AACxB,MAAM,GAAG,GAAG,IAAI,WAAW,EAAE,CAAC;AAE9B,MAAM,CAAC,MAAM,UAAU,GAAG,GAAW,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AAEjE,MAAM,UAAU,WAAW,CAAC,CAAS;IACnC,OAAO,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;AAC3C,CAAC;AACD,MAAM,UAAU,UAAU,CAAC,CAAS;IAClC,OAAO,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC7C,CAAC;AACD,MAAM,UAAU,UAAU,CAAC,CAAa;IACtC,IAAI,CAAC,GAAG,EAAE,CAAC;IAAC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE;QAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACxF,OAAO,CAAC,CAAC;AACX,CAAC;AACD,MAAM,UAAU,eAAe,CAAC,KAAiB;IAC/C,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE;QAAE,GAAG,IAAI,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC;IAC7E,MAAM,GAAG,GAAG,CAAC,OAAO,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC;IAChE,OAAO,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AACzE,CAAC;AACD,SAAS,QAAQ,CAAC,CAAS,IAAY,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;AAG5F,MAAM,UAAU,SAAS,CACvB,IAAyC,EACzC,QAAsB,UAAU;IAEhC,MAAM,OAAO,GAA4B,EAAE,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,CAAC;IAC7D,IAAI,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ;QAAE,OAAO,CAAC,SAAS,GAAG,KAAK,EAAE,CAAC;IACvE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;AACvE,CAAC;AAGD,MAAM,UAAU,aAAa,CAC3B,MAAc,EACd,IAAY,EACZ,KAAa,EACb,QAAsB,UAAU;IAEhC,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;QAC9B,MAAM,EAAE,MAAM,CAAC,WAAW,EAAE;QAC5B,IAAI;QACJ,KAAK;QACL,SAAS,EAAE,KAAK,EAAE;KACnB,CAAC,CAAC;IACH,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;AACnD,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export declare const endpoints: {
|
|
2
|
+
readonly vaults: () => string;
|
|
3
|
+
readonly vault: (v: string) => string;
|
|
4
|
+
readonly vaultCredentials: (v: string) => string;
|
|
5
|
+
readonly scopes: (v: string) => string;
|
|
6
|
+
readonly scope: (v: string, s: string) => string;
|
|
7
|
+
readonly agents: (v: string) => string;
|
|
8
|
+
readonly agent: (v: string, a: string) => string;
|
|
9
|
+
readonly scopeEvents: (v: string, s: string) => string;
|
|
10
|
+
readonly scopeStreams: (v: string, s: string) => string;
|
|
11
|
+
readonly stream: (v: string, s: string, ctx: string) => string;
|
|
12
|
+
readonly streamEvents: (v: string, s: string, ctx: string) => string;
|
|
13
|
+
readonly jobs: (v: string) => string;
|
|
14
|
+
readonly job: (v: string, j: string) => string;
|
|
15
|
+
readonly agentJobs: (v: string, a: string) => string;
|
|
16
|
+
readonly jobActivities: (v: string, j: string) => string;
|
|
17
|
+
readonly jobActivity: (v: string, j: string, a: string) => string;
|
|
18
|
+
readonly cubbyQuery: (v: string, s: string, alias: string) => string;
|
|
19
|
+
readonly cubbyExec: (v: string, s: string, alias: string) => string;
|
|
20
|
+
readonly marketplaceAgent: (a: string) => string;
|
|
21
|
+
readonly marketplaceAgentVersion: (a: string, v: string) => string;
|
|
22
|
+
readonly health: () => string;
|
|
23
|
+
readonly ready: () => string;
|
|
24
|
+
readonly metrics: () => string;
|
|
25
|
+
};
|
|
26
|
+
export type Endpoints = typeof endpoints;
|
|
27
|
+
//# sourceMappingURL=endpoints.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"endpoints.d.ts","sourceRoot":"","sources":["../../src/core/endpoints.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,SAAS;;wBAET,MAAM;mCACK,MAAM;yBAChB,MAAM;wBACP,MAAM,KAAK,MAAM;yBAChB,MAAM;wBACP,MAAM,KAAK,MAAM;8BACX,MAAM,KAAK,MAAM;+BAChB,MAAM,KAAK,MAAM;yBACvB,MAAM,KAAK,MAAM,OAAO,MAAM;+BAExB,MAAM,KAAK,MAAM,OAAO,MAAM;uBAEtC,MAAM;sBACP,MAAM,KAAK,MAAM;4BACX,MAAM,KAAK,MAAM;gCACb,MAAM,KAAK,MAAM;8BACnB,MAAM,KAAK,MAAM,KAAK,MAAM;6BAE7B,MAAM,KAAK,MAAM,SAAS,MAAM;4BAEjC,MAAM,KAAK,MAAM,SAAS,MAAM;mCAEzB,MAAM;0CACC,MAAM,KAAK,MAAM;;;;CAKtC,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
const API_BASE = "/api/v1";
|
|
2
|
+
const seg = (s) => encodeURIComponent(s);
|
|
3
|
+
export const endpoints = {
|
|
4
|
+
vaults: () => `${API_BASE}/vaults`,
|
|
5
|
+
vault: (v) => `${API_BASE}/vaults/${seg(v)}`,
|
|
6
|
+
vaultCredentials: (v) => `${API_BASE}/vaults/${seg(v)}/credentials`,
|
|
7
|
+
scopes: (v) => `${API_BASE}/vaults/${seg(v)}/scopes`,
|
|
8
|
+
scope: (v, s) => `${API_BASE}/vaults/${seg(v)}/scopes/${seg(s)}`,
|
|
9
|
+
agents: (v) => `${API_BASE}/vaults/${seg(v)}/agents`,
|
|
10
|
+
agent: (v, a) => `${API_BASE}/vaults/${seg(v)}/agents/${seg(a)}`,
|
|
11
|
+
scopeEvents: (v, s) => `${API_BASE}/vaults/${seg(v)}/scopes/${seg(s)}/events`,
|
|
12
|
+
scopeStreams: (v, s) => `${API_BASE}/vaults/${seg(v)}/scopes/${seg(s)}/streams`,
|
|
13
|
+
stream: (v, s, ctx) => `${API_BASE}/vaults/${seg(v)}/scopes/${seg(s)}/streams/${seg(ctx)}`,
|
|
14
|
+
streamEvents: (v, s, ctx) => `${API_BASE}/vaults/${seg(v)}/scopes/${seg(s)}/streams/${seg(ctx)}/events`,
|
|
15
|
+
jobs: (v) => `${API_BASE}/vaults/${seg(v)}/jobs`,
|
|
16
|
+
job: (v, j) => `${API_BASE}/vaults/${seg(v)}/jobs/${seg(j)}`,
|
|
17
|
+
agentJobs: (v, a) => `${API_BASE}/vaults/${seg(v)}/agents/${seg(a)}/jobs`,
|
|
18
|
+
jobActivities: (v, j) => `${API_BASE}/vaults/${seg(v)}/jobs/${seg(j)}/activities`,
|
|
19
|
+
jobActivity: (v, j, a) => `${API_BASE}/vaults/${seg(v)}/jobs/${seg(j)}/activities/${seg(a)}`,
|
|
20
|
+
cubbyQuery: (v, s, alias) => `${API_BASE}/vaults/${seg(v)}/scopes/${seg(s)}/cubbies/${seg(alias)}/query`,
|
|
21
|
+
cubbyExec: (v, s, alias) => `${API_BASE}/vaults/${seg(v)}/scopes/${seg(s)}/cubbies/${seg(alias)}/exec`,
|
|
22
|
+
marketplaceAgent: (a) => `${API_BASE}/marketplace/agents/${seg(a)}`,
|
|
23
|
+
marketplaceAgentVersion: (a, v) => `${API_BASE}/marketplace/agents/${seg(a)}/versions/${seg(v)}`,
|
|
24
|
+
health: () => `/health`,
|
|
25
|
+
ready: () => `/ready`,
|
|
26
|
+
metrics: () => `/metrics`,
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=endpoints.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"endpoints.js","sourceRoot":"","sources":["../../src/core/endpoints.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export declare class VaultRequestError extends Error {
|
|
2
|
+
readonly status?: number | undefined;
|
|
3
|
+
readonly code?: string | number | undefined;
|
|
4
|
+
constructor(message: string, status?: number | undefined, code?: string | number | undefined);
|
|
5
|
+
}
|
|
6
|
+
export declare class VaultNotImplementedError extends VaultRequestError {
|
|
7
|
+
constructor(message?: string);
|
|
8
|
+
}
|
|
9
|
+
export declare class VaultSignerRequiredError extends Error {
|
|
10
|
+
constructor(message?: string);
|
|
11
|
+
}
|
|
12
|
+
export declare function mapResponseError(status: number, body: unknown): VaultRequestError;
|
|
13
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/core/errors.ts"],"names":[],"mappings":"AACA,qBAAa,iBAAkB,SAAQ,KAAK;aAGxB,MAAM,CAAC,EAAE,MAAM;aACf,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM;gBAFtC,OAAO,EAAE,MAAM,EACC,MAAM,CAAC,EAAE,MAAM,YAAA,EACf,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,YAAA;CAEzC;AAED,qBAAa,wBAAyB,SAAQ,iBAAiB;gBACjD,OAAO,SAAmC;CAIvD;AAED,qBAAa,wBAAyB,SAAQ,KAAK;gBAE/C,OAAO,SAAyE;CAEnF;AAID,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,iBAAiB,CAMjF"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
// src/core/errors.ts
|
|
2
|
+
export class VaultRequestError extends Error {
|
|
3
|
+
status;
|
|
4
|
+
code;
|
|
5
|
+
constructor(message, status, code) {
|
|
6
|
+
super(message);
|
|
7
|
+
this.status = status;
|
|
8
|
+
this.code = code;
|
|
9
|
+
this.name = "VaultRequestError";
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
export class VaultNotImplementedError extends VaultRequestError {
|
|
13
|
+
constructor(message = "Endpoint not implemented (501)") {
|
|
14
|
+
super(message, 501, "NOT_IMPLEMENTED");
|
|
15
|
+
this.name = "VaultNotImplementedError";
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
export class VaultSignerRequiredError extends Error {
|
|
19
|
+
constructor(message = "Vault signing requires a wallet adapter that implements sign(bytes).") { super(message); this.name = "VaultSignerRequiredError"; }
|
|
20
|
+
}
|
|
21
|
+
export function mapResponseError(status, body) {
|
|
22
|
+
const parsed = body && typeof body === "object" ? body : undefined;
|
|
23
|
+
const message = parsed?.error?.message ?? `Request failed with status ${status}`;
|
|
24
|
+
const code = parsed?.error?.code;
|
|
25
|
+
if (status === 501)
|
|
26
|
+
return new VaultNotImplementedError(message);
|
|
27
|
+
return new VaultRequestError(message, status, code);
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/core/errors.ts"],"names":[],"mappings":"AAAA,qBAAqB;AACrB,MAAM,OAAO,iBAAkB,SAAQ,KAAK;IAGxB;IACA;IAHlB,YACE,OAAe,EACC,MAAe,EACf,IAAsB;QACpC,KAAK,CAAC,OAAO,CAAC,CAAC;QAFD,WAAM,GAAN,MAAM,CAAS;QACf,SAAI,GAAJ,IAAI,CAAkB;QACpB,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;IAAC,CAAC;CACvD;AAED,MAAM,OAAO,wBAAyB,SAAQ,iBAAiB;IAC7D,YAAY,OAAO,GAAG,gCAAgC;QACpD,KAAK,CAAC,OAAO,EAAE,GAAG,EAAE,iBAAiB,CAAC,CAAC;QACvC,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAC;IACzC,CAAC;CACF;AAED,MAAM,OAAO,wBAAyB,SAAQ,KAAK;IACjD,YACE,OAAO,GAAG,sEAAsE,IAC9E,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAC,CAAC,CAAC;CAC9D;AAID,MAAM,UAAU,gBAAgB,CAAC,MAAc,EAAE,IAAa;IAC5D,MAAM,MAAM,GAAG,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAE,IAAoB,CAAC,CAAC,CAAC,SAAS,CAAC;IACpF,MAAM,OAAO,GAAG,MAAM,EAAE,KAAK,EAAE,OAAO,IAAI,8BAA8B,MAAM,EAAE,CAAC;IACjF,MAAM,IAAI,GAAG,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC;IACjC,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,IAAI,wBAAwB,CAAC,OAAO,CAAC,CAAC;IACjE,OAAO,IAAI,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;AACtD,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { AuthProvider } from "../auth/provider.js";
|
|
2
|
+
export type FetchLike = typeof fetch;
|
|
3
|
+
export type QueryValue = string | number | boolean | undefined | null;
|
|
4
|
+
export type QueryMap = Record<string, QueryValue>;
|
|
5
|
+
export interface VaultHttpClientConfig {
|
|
6
|
+
url: string;
|
|
7
|
+
/** Default auth provider applied to every call unless overridden per-call. */
|
|
8
|
+
auth?: AuthProvider;
|
|
9
|
+
fetch?: FetchLike;
|
|
10
|
+
timeoutMs?: number;
|
|
11
|
+
}
|
|
12
|
+
export interface SendOptions {
|
|
13
|
+
body?: Record<string, unknown>;
|
|
14
|
+
query?: QueryMap;
|
|
15
|
+
/** Per-call auth override. Pass `new NoAuth()` for public endpoints on an authed client. */
|
|
16
|
+
auth?: AuthProvider;
|
|
17
|
+
}
|
|
18
|
+
export declare class VaultHttpClient {
|
|
19
|
+
private readonly baseUrl;
|
|
20
|
+
private readonly defaultAuth;
|
|
21
|
+
private readonly fetchFn;
|
|
22
|
+
private readonly timeoutMs;
|
|
23
|
+
constructor(config: VaultHttpClientConfig);
|
|
24
|
+
/**
|
|
25
|
+
* Generic transport. Resource classes call this directly. Public + private
|
|
26
|
+
* routes share the same path; per-call `opts.auth` switches between them.
|
|
27
|
+
*/
|
|
28
|
+
send<T>(method: string, path: string, opts?: SendOptions): Promise<T>;
|
|
29
|
+
private buildUrl;
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=http.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/core/http.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD,MAAM,MAAM,SAAS,GAAG,OAAO,KAAK,CAAC;AAGrC,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,IAAI,CAAC;AACtE,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AAElD,MAAM,WAAW,qBAAqB;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,8EAA8E;IAC9E,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,4FAA4F;IAC5F,IAAI,CAAC,EAAE,YAAY,CAAC;CACrB;AAKD,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAe;IAC3C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAY;IACpC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;gBAEvB,MAAM,EAAE,qBAAqB;IAQzC;;;OAGG;IACG,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,WAAgB,GAAG,OAAO,CAAC,CAAC,CAAC;IA4C/E,OAAO,CAAC,QAAQ;CAWjB"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
// src/core/http.ts
|
|
2
|
+
import { mapResponseError, VaultRequestError } from "./errors.js";
|
|
3
|
+
import { NoAuth } from "../auth/no-auth.js";
|
|
4
|
+
const DEFAULT_TIMEOUT_MS = 30_000;
|
|
5
|
+
const NO_AUTH = new NoAuth();
|
|
6
|
+
export class VaultHttpClient {
|
|
7
|
+
baseUrl;
|
|
8
|
+
defaultAuth;
|
|
9
|
+
fetchFn;
|
|
10
|
+
timeoutMs;
|
|
11
|
+
constructor(config) {
|
|
12
|
+
if (!config.url)
|
|
13
|
+
throw new Error("VaultHttpClient: `url` is required");
|
|
14
|
+
this.baseUrl = config.url.replace(/\/$/, "");
|
|
15
|
+
this.defaultAuth = config.auth ?? NO_AUTH;
|
|
16
|
+
this.fetchFn = config.fetch ?? fetch.bind(globalThis);
|
|
17
|
+
this.timeoutMs = config.timeoutMs ?? DEFAULT_TIMEOUT_MS;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Generic transport. Resource classes call this directly. Public + private
|
|
21
|
+
* routes share the same path; per-call `opts.auth` switches between them.
|
|
22
|
+
*/
|
|
23
|
+
async send(method, path, opts = {}) {
|
|
24
|
+
const url = this.buildUrl(path, opts.query);
|
|
25
|
+
const auth = opts.auth ?? this.defaultAuth;
|
|
26
|
+
const outcome = await auth.authenticate({
|
|
27
|
+
method,
|
|
28
|
+
path: url.pathname,
|
|
29
|
+
query: url.search.replace(/^\?/, ""),
|
|
30
|
+
body: opts.body,
|
|
31
|
+
});
|
|
32
|
+
const headers = { Accept: "application/json", ...outcome.headers };
|
|
33
|
+
const ctrl = new AbortController();
|
|
34
|
+
const timer = setTimeout(() => ctrl.abort(), this.timeoutMs);
|
|
35
|
+
let res;
|
|
36
|
+
try {
|
|
37
|
+
res = await this.fetchFn(url.toString(), {
|
|
38
|
+
method,
|
|
39
|
+
headers,
|
|
40
|
+
body: outcome.body,
|
|
41
|
+
signal: ctrl.signal,
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
catch (err) {
|
|
45
|
+
if (err instanceof Error && err.name === "AbortError") {
|
|
46
|
+
throw new VaultRequestError(`Request timed out after ${this.timeoutMs}ms`, 0, "TIMEOUT");
|
|
47
|
+
}
|
|
48
|
+
throw new VaultRequestError(err instanceof Error ? err.message : "Network error", 0, "NETWORK_ERROR");
|
|
49
|
+
}
|
|
50
|
+
finally {
|
|
51
|
+
clearTimeout(timer);
|
|
52
|
+
}
|
|
53
|
+
if (res.status === 204)
|
|
54
|
+
return undefined;
|
|
55
|
+
const text = await res.text();
|
|
56
|
+
let parsed = null;
|
|
57
|
+
if (text) {
|
|
58
|
+
try {
|
|
59
|
+
parsed = JSON.parse(text);
|
|
60
|
+
}
|
|
61
|
+
catch {
|
|
62
|
+
parsed = text;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
if (res.ok)
|
|
66
|
+
return parsed;
|
|
67
|
+
throw mapResponseError(res.status, parsed);
|
|
68
|
+
}
|
|
69
|
+
buildUrl(path, query) {
|
|
70
|
+
const joined = path.startsWith("/") ? `${this.baseUrl}${path}` : `${this.baseUrl}/${path}`;
|
|
71
|
+
const url = new URL(joined);
|
|
72
|
+
if (query) {
|
|
73
|
+
for (const [k, v] of Object.entries(query)) {
|
|
74
|
+
if (v === undefined || v === null || v === "")
|
|
75
|
+
continue;
|
|
76
|
+
url.searchParams.set(k, String(v));
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
return url;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
//# sourceMappingURL=http.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/core/http.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
export type VaultSigType = "ed25519" | "sr25519";
|
|
2
|
+
export interface VaultRecord {
|
|
3
|
+
vaultId: string;
|
|
4
|
+
walletPubkey: string;
|
|
5
|
+
bucketId: string;
|
|
6
|
+
gatewayEndpoint: string;
|
|
7
|
+
region: string;
|
|
8
|
+
credentialExpiresAt: string;
|
|
9
|
+
createdAt: string;
|
|
10
|
+
scopes: Scope[];
|
|
11
|
+
}
|
|
12
|
+
export interface Scope {
|
|
13
|
+
name: string;
|
|
14
|
+
displayName?: string;
|
|
15
|
+
streamLabel?: string;
|
|
16
|
+
createdAt: string;
|
|
17
|
+
}
|
|
18
|
+
export type AgentConnectionStatus = "provisioning" | "active" | "revoking" | "revoked";
|
|
19
|
+
export interface AgentConnection {
|
|
20
|
+
vaultId: string;
|
|
21
|
+
agentId: string;
|
|
22
|
+
scope: string;
|
|
23
|
+
version: string;
|
|
24
|
+
asPubKey: string;
|
|
25
|
+
cubbyAliases: string[];
|
|
26
|
+
status: AgentConnectionStatus;
|
|
27
|
+
manifest?: unknown;
|
|
28
|
+
createdAt: string;
|
|
29
|
+
updatedAt: string;
|
|
30
|
+
}
|
|
31
|
+
export type EventRole = "source" | "user" | "agent";
|
|
32
|
+
export type IngestOrigin = "client" | "user" | "agent" | "replay";
|
|
33
|
+
export interface VaultEvent<P = unknown> {
|
|
34
|
+
eventId: string;
|
|
35
|
+
type: string;
|
|
36
|
+
role: EventRole;
|
|
37
|
+
vaultId: string;
|
|
38
|
+
scope: string;
|
|
39
|
+
context: string;
|
|
40
|
+
from?: string;
|
|
41
|
+
target?: string;
|
|
42
|
+
correlationId?: string;
|
|
43
|
+
payload: P;
|
|
44
|
+
metadata?: Record<string, unknown>;
|
|
45
|
+
parents?: string[];
|
|
46
|
+
timestamp: string;
|
|
47
|
+
ingestOrigin: IngestOrigin;
|
|
48
|
+
asPubKey?: string;
|
|
49
|
+
agentId?: string;
|
|
50
|
+
jobId?: string;
|
|
51
|
+
activityId?: string;
|
|
52
|
+
}
|
|
53
|
+
export interface EventInput<P = unknown> {
|
|
54
|
+
type: string;
|
|
55
|
+
role?: EventRole;
|
|
56
|
+
context: string;
|
|
57
|
+
payload: P;
|
|
58
|
+
target?: string;
|
|
59
|
+
correlationId?: string;
|
|
60
|
+
metadata?: Record<string, unknown>;
|
|
61
|
+
parents?: string[];
|
|
62
|
+
timestamp?: string;
|
|
63
|
+
}
|
|
64
|
+
export interface PublishResult {
|
|
65
|
+
accepted: string[];
|
|
66
|
+
rejected: {
|
|
67
|
+
eventId?: string;
|
|
68
|
+
reason: string;
|
|
69
|
+
code?: string;
|
|
70
|
+
}[];
|
|
71
|
+
}
|
|
72
|
+
export interface StreamSummary {
|
|
73
|
+
context: string;
|
|
74
|
+
status: string;
|
|
75
|
+
eventCount: number;
|
|
76
|
+
firstSeen: string;
|
|
77
|
+
lastSeen: string;
|
|
78
|
+
}
|
|
79
|
+
export interface StreamsListResponse {
|
|
80
|
+
items: StreamSummary[];
|
|
81
|
+
}
|
|
82
|
+
export interface EventsPage<P = unknown> {
|
|
83
|
+
items: VaultEvent<P>[];
|
|
84
|
+
hasMore: boolean;
|
|
85
|
+
nextCursor?: string;
|
|
86
|
+
}
|
|
87
|
+
export type JobState = "queued" | "throttled" | "processing" | "completed" | "failed" | "cancelled" | "dead" | "active";
|
|
88
|
+
export interface Job {
|
|
89
|
+
jobId: string;
|
|
90
|
+
vaultId: string;
|
|
91
|
+
agentId?: string;
|
|
92
|
+
scope?: string;
|
|
93
|
+
context?: string;
|
|
94
|
+
state: JobState;
|
|
95
|
+
causedByEventId?: string;
|
|
96
|
+
parentJobId?: string;
|
|
97
|
+
createdAt: string;
|
|
98
|
+
updatedAt?: string;
|
|
99
|
+
}
|
|
100
|
+
export type ActivityState = "pending" | "dispatched" | "running" | "completed" | "failed";
|
|
101
|
+
export interface Activity {
|
|
102
|
+
activityId: string;
|
|
103
|
+
jobId: string;
|
|
104
|
+
state: ActivityState;
|
|
105
|
+
startedAt?: string;
|
|
106
|
+
endedAt?: string;
|
|
107
|
+
}
|
|
108
|
+
export interface JobsPage {
|
|
109
|
+
items: Job[];
|
|
110
|
+
nextCursor?: string;
|
|
111
|
+
hasMore: boolean;
|
|
112
|
+
}
|
|
113
|
+
export interface ActivitiesPage {
|
|
114
|
+
items: Activity[];
|
|
115
|
+
nextCursor?: string;
|
|
116
|
+
hasMore: boolean;
|
|
117
|
+
}
|
|
118
|
+
export interface CubbyQueryResponse<Row = unknown[]> {
|
|
119
|
+
columns: string[];
|
|
120
|
+
rows: Row[];
|
|
121
|
+
}
|
|
122
|
+
export interface CubbyExecResponse {
|
|
123
|
+
rowsAffected?: number;
|
|
124
|
+
lastInsertId?: number | string;
|
|
125
|
+
[key: string]: unknown;
|
|
126
|
+
}
|
|
127
|
+
export interface ConnectAgentRequest {
|
|
128
|
+
agentId: string;
|
|
129
|
+
version: string;
|
|
130
|
+
manifestCid: string;
|
|
131
|
+
scope: string;
|
|
132
|
+
settings: Record<string, unknown>;
|
|
133
|
+
agreementSignature: string;
|
|
134
|
+
}
|
|
135
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { VaultHttpClient } from "../core/http.js";
|
|
2
|
+
import { type ListJobsOptions } from "../internal/browse.js";
|
|
3
|
+
import type { AgentConnection, AgentConnectionStatus, JobsPage } from "../core/types.js";
|
|
4
|
+
import { CubbyHandle } from "./cubby.js";
|
|
5
|
+
export declare class AgentConnectionHandle implements AgentConnection {
|
|
6
|
+
private readonly http;
|
|
7
|
+
private readonly vaultIdRoot;
|
|
8
|
+
readonly vaultId: string;
|
|
9
|
+
readonly agentId: string;
|
|
10
|
+
readonly scope: string;
|
|
11
|
+
readonly version: string;
|
|
12
|
+
readonly asPubKey: string;
|
|
13
|
+
readonly cubbyAliases: string[];
|
|
14
|
+
readonly status: AgentConnectionStatus;
|
|
15
|
+
readonly manifest?: unknown;
|
|
16
|
+
readonly createdAt: string;
|
|
17
|
+
readonly updatedAt: string;
|
|
18
|
+
private readonly api;
|
|
19
|
+
private readonly browse;
|
|
20
|
+
constructor(http: VaultHttpClient, vaultIdRoot: string, record: AgentConnection);
|
|
21
|
+
cubby(alias: string): CubbyHandle;
|
|
22
|
+
update(settings: Record<string, unknown>): Promise<AgentConnectionHandle>;
|
|
23
|
+
disconnect(): Promise<void>;
|
|
24
|
+
jobs: {
|
|
25
|
+
list: (o?: ListJobsOptions) => Promise<JobsPage>;
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=agent-connection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-connection.d.ts","sourceRoot":"","sources":["../../src/fluent/agent-connection.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEvD,OAAO,EAAU,KAAK,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,KAAK,EAAE,eAAe,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACzF,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,qBAAa,qBAAsB,YAAW,eAAe;IAgBzD,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAhB9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,qBAAqB,CAAC;IACvC,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAE3B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;gBAGb,IAAI,EAAE,eAAe,EACrB,WAAW,EAAE,MAAM,EACpC,MAAM,EAAE,eAAe;IAgBzB,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW;IAS3B,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAK/E,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B,IAAI;mBACQ,eAAe,KAAQ,OAAO,CAAC,QAAQ,CAAC;MAElD;CACH"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { Agents } from "../internal/agents.js";
|
|
2
|
+
import { Browse } from "../internal/browse.js";
|
|
3
|
+
import { CubbyHandle } from "./cubby.js";
|
|
4
|
+
export class AgentConnectionHandle {
|
|
5
|
+
http;
|
|
6
|
+
vaultIdRoot;
|
|
7
|
+
vaultId;
|
|
8
|
+
agentId;
|
|
9
|
+
scope;
|
|
10
|
+
version;
|
|
11
|
+
asPubKey;
|
|
12
|
+
cubbyAliases;
|
|
13
|
+
status;
|
|
14
|
+
manifest;
|
|
15
|
+
createdAt;
|
|
16
|
+
updatedAt;
|
|
17
|
+
api;
|
|
18
|
+
browse;
|
|
19
|
+
constructor(http, vaultIdRoot, record) {
|
|
20
|
+
this.http = http;
|
|
21
|
+
this.vaultIdRoot = vaultIdRoot;
|
|
22
|
+
this.vaultId = record.vaultId;
|
|
23
|
+
this.agentId = record.agentId;
|
|
24
|
+
this.scope = record.scope;
|
|
25
|
+
this.version = record.version;
|
|
26
|
+
this.asPubKey = record.asPubKey;
|
|
27
|
+
this.cubbyAliases = record.cubbyAliases;
|
|
28
|
+
this.status = record.status;
|
|
29
|
+
this.manifest = record.manifest;
|
|
30
|
+
this.createdAt = record.createdAt;
|
|
31
|
+
this.updatedAt = record.updatedAt;
|
|
32
|
+
this.api = new Agents(http);
|
|
33
|
+
this.browse = new Browse(http);
|
|
34
|
+
}
|
|
35
|
+
cubby(alias) {
|
|
36
|
+
if (!this.cubbyAliases.includes(alias)) {
|
|
37
|
+
throw new Error(`agent ${this.agentId} has no cubby "${alias}". Declared aliases: ${this.cubbyAliases.join(", ") || "(none)"}`);
|
|
38
|
+
}
|
|
39
|
+
return new CubbyHandle(this.http, this.vaultIdRoot, this.scope, alias);
|
|
40
|
+
}
|
|
41
|
+
async update(settings) {
|
|
42
|
+
const updated = await this.api.update(this.vaultIdRoot, this.agentId, settings);
|
|
43
|
+
return new AgentConnectionHandle(this.http, this.vaultIdRoot, updated);
|
|
44
|
+
}
|
|
45
|
+
disconnect() {
|
|
46
|
+
return this.api.disconnect(this.vaultIdRoot, this.agentId);
|
|
47
|
+
}
|
|
48
|
+
jobs = {
|
|
49
|
+
list: (o = {}) => this.browse.listAgentJobs(this.vaultIdRoot, this.agentId, o),
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=agent-connection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-connection.js","sourceRoot":"","sources":["../../src/fluent/agent-connection.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAwB,MAAM,uBAAuB,CAAC;AAErE,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,MAAM,OAAO,qBAAqB;IAgBb;IACA;IAhBV,OAAO,CAAS;IAChB,OAAO,CAAS;IAChB,KAAK,CAAS;IACd,OAAO,CAAS;IAChB,QAAQ,CAAS;IACjB,YAAY,CAAW;IACvB,MAAM,CAAwB;IAC9B,QAAQ,CAAW;IACnB,SAAS,CAAS;IAClB,SAAS,CAAS;IAEV,GAAG,CAAS;IACZ,MAAM,CAAS;IAEhC,YACmB,IAAqB,EACrB,WAAmB,EACpC,MAAuB;QAFN,SAAI,GAAJ,IAAI,CAAiB;QACrB,gBAAW,GAAX,WAAW,CAAQ;QAGpC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QAChC,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;QACxC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC5B,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QAChC,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QAClC,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QAClC,IAAI,CAAC,GAAG,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,KAAa;QACjB,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CACb,SAAS,IAAI,CAAC,OAAO,kBAAkB,KAAK,wBAAwB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,EAAE,CAC/G,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACzE,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,QAAiC;QAC5C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAChF,OAAO,IAAI,qBAAqB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACzE,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC7D,CAAC;IAED,IAAI,GAAG;QACL,IAAI,EAAE,CAAC,IAAqB,EAAE,EAAqB,EAAE,CACnD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;KAC/D,CAAC;CACH"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { VaultHttpClient } from "../core/http.js";
|
|
2
|
+
import type { CubbyExecResponse, CubbyQueryResponse } from "../core/types.js";
|
|
3
|
+
export declare class CubbyHandle {
|
|
4
|
+
private readonly vaultId;
|
|
5
|
+
private readonly scope;
|
|
6
|
+
readonly alias: string;
|
|
7
|
+
private readonly api;
|
|
8
|
+
constructor(http: VaultHttpClient, vaultId: string, scope: string, alias: string);
|
|
9
|
+
query<Row = unknown[]>(sql: string, params?: unknown[]): Promise<CubbyQueryResponse<Row>>;
|
|
10
|
+
exec(sql: string, params?: unknown[]): Promise<CubbyExecResponse>;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=cubby.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cubby.d.ts","sourceRoot":"","sources":["../../src/fluent/cubby.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAE9E,qBAAa,WAAW;IAIpB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,KAAK;aACN,KAAK,EAAE,MAAM;IAL/B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAU;gBAE5B,IAAI,EAAE,eAAe,EACJ,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACd,KAAK,EAAE,MAAM;IAI/B,KAAK,CAAC,GAAG,GAAG,OAAO,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,GAAE,OAAO,EAAO,GAAG,OAAO,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;IAG7F,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,GAAE,OAAO,EAAO,GAAG,OAAO,CAAC,iBAAiB,CAAC;CAGtE"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Cubbies } from "../internal/cubbies.js";
|
|
2
|
+
export class CubbyHandle {
|
|
3
|
+
vaultId;
|
|
4
|
+
scope;
|
|
5
|
+
alias;
|
|
6
|
+
api;
|
|
7
|
+
constructor(http, vaultId, scope, alias) {
|
|
8
|
+
this.vaultId = vaultId;
|
|
9
|
+
this.scope = scope;
|
|
10
|
+
this.alias = alias;
|
|
11
|
+
this.api = new Cubbies(http);
|
|
12
|
+
}
|
|
13
|
+
query(sql, params = []) {
|
|
14
|
+
return this.api.query(this.vaultId, this.scope, this.alias, sql, params);
|
|
15
|
+
}
|
|
16
|
+
exec(sql, params = []) {
|
|
17
|
+
return this.api.exec(this.vaultId, this.scope, this.alias, sql, params);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=cubby.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cubby.js","sourceRoot":"","sources":["../../src/fluent/cubby.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAGjD,MAAM,OAAO,WAAW;IAIH;IACA;IACD;IALD,GAAG,CAAU;IAC9B,YACE,IAAqB,EACJ,OAAe,EACf,KAAa,EACd,KAAa;QAFZ,YAAO,GAAP,OAAO,CAAQ;QACf,UAAK,GAAL,KAAK,CAAQ;QACd,UAAK,GAAL,KAAK,CAAQ;QAE7B,IAAI,CAAC,GAAG,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IACD,KAAK,CAAkB,GAAW,EAAE,SAAoB,EAAE;QACxD,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAM,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;IAChF,CAAC;IACD,IAAI,CAAC,GAAW,EAAE,SAAoB,EAAE;QACtC,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;IAC1E,CAAC;CACF"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { VaultHttpClient } from "../core/http.js";
|
|
2
|
+
import { type ListActivitiesOptions } from "../internal/browse.js";
|
|
3
|
+
import type { Activity, ActivitiesPage, Job } from "../core/types.js";
|
|
4
|
+
export declare class JobHandle {
|
|
5
|
+
private readonly vaultId;
|
|
6
|
+
readonly jobId: string;
|
|
7
|
+
private readonly browse;
|
|
8
|
+
constructor(http: VaultHttpClient, vaultId: string, jobId: string);
|
|
9
|
+
get(): Promise<Job>;
|
|
10
|
+
activities: {
|
|
11
|
+
list: (o?: ListActivitiesOptions) => Promise<ActivitiesPage>;
|
|
12
|
+
get: (a: string) => Promise<Activity>;
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* Walk caused-by edges. Server tree route is not yet implemented (returns
|
|
16
|
+
* 501); the SDK throws a clear error so callers can branch.
|
|
17
|
+
*/
|
|
18
|
+
tree(): never;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=job.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"job.d.ts","sourceRoot":"","sources":["../../src/fluent/job.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAU,KAAK,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC3E,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AAEtE,qBAAa,SAAS;IAIlB,OAAO,CAAC,QAAQ,CAAC,OAAO;aACR,KAAK,EAAE,MAAM;IAJ/B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;gBAE9B,IAAI,EAAE,eAAe,EACJ,OAAO,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM;IAI/B,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;IACnB,UAAU;mBACE,qBAAqB,KAAQ,OAAO,CAAC,cAAc,CAAC;iBAErD,MAAM,KAAG,OAAO,CAAC,QAAQ,CAAC;MACnC;IACF;;;OAGG;IACH,IAAI,IAAI,KAAK;CAKd"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { Browse } from "../internal/browse.js";
|
|
2
|
+
export class JobHandle {
|
|
3
|
+
vaultId;
|
|
4
|
+
jobId;
|
|
5
|
+
browse;
|
|
6
|
+
constructor(http, vaultId, jobId) {
|
|
7
|
+
this.vaultId = vaultId;
|
|
8
|
+
this.jobId = jobId;
|
|
9
|
+
this.browse = new Browse(http);
|
|
10
|
+
}
|
|
11
|
+
get() { return this.browse.getJob(this.vaultId, this.jobId); }
|
|
12
|
+
activities = {
|
|
13
|
+
list: (o = {}) => this.browse.listActivities(this.vaultId, this.jobId, o),
|
|
14
|
+
get: (a) => this.browse.getActivity(this.vaultId, this.jobId, a),
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* Walk caused-by edges. Server tree route is not yet implemented (returns
|
|
18
|
+
* 501); the SDK throws a clear error so callers can branch.
|
|
19
|
+
*/
|
|
20
|
+
tree() {
|
|
21
|
+
throw new Error("JobHandle.tree() requires the orchestrator's tree route which is not yet implemented (returns 501).");
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=job.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"job.js","sourceRoot":"","sources":["../../src/fluent/job.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAA8B,MAAM,uBAAuB,CAAC;AAG3E,MAAM,OAAO,SAAS;IAID;IACD;IAJD,MAAM,CAAS;IAChC,YACE,IAAqB,EACJ,OAAe,EAChB,KAAa;QADZ,YAAO,GAAP,OAAO,CAAQ;QAChB,UAAK,GAAL,KAAK,CAAQ;QAE7B,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IACD,GAAG,KAAmB,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC5E,UAAU,GAAG;QACX,IAAI,EAAE,CAAC,IAA2B,EAAE,EAA2B,EAAE,CAC/D,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QACzD,GAAG,EAAE,CAAC,CAAS,EAAqB,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;KAC5F,CAAC;IACF;;;OAGG;IACH,IAAI;QACF,MAAM,IAAI,KAAK,CACb,qGAAqG,CACtG,CAAC;IACJ,CAAC;CACF"}
|