@opendatalabs/personal-server-ts-server 0.0.1-canary.a9babfc → 0.0.1-canary.b033bdb
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/dist/api-auth.d.ts +17 -0
- package/dist/api-auth.d.ts.map +1 -0
- package/dist/api-auth.js +77 -0
- package/dist/api-auth.js.map +1 -0
- package/dist/api.d.ts +3 -0
- package/dist/api.d.ts.map +1 -1
- package/dist/api.js +2 -0
- package/dist/api.js.map +1 -1
- package/dist/app.d.ts +12 -1
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js +42 -2
- package/dist/app.js.map +1 -1
- package/dist/bootstrap.d.ts +5 -3
- package/dist/bootstrap.d.ts.map +1 -1
- package/dist/bootstrap.js +43 -26
- package/dist/bootstrap.js.map +1 -1
- package/dist/client.d.ts +17 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +226 -0
- package/dist/client.js.map +1 -0
- package/dist/config/defaults.d.ts +12 -0
- package/dist/config/defaults.d.ts.map +1 -0
- package/dist/config/defaults.js +14 -0
- package/dist/config/defaults.js.map +1 -0
- package/dist/config/index.d.ts +4 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +4 -0
- package/dist/config/index.js.map +1 -0
- package/dist/config/loader.d.ts +8 -0
- package/dist/config/loader.d.ts.map +1 -0
- package/dist/config/loader.js +74 -0
- package/dist/config/loader.js.map +1 -0
- package/dist/config/paths.d.ts +9 -0
- package/dist/config/paths.d.ts.map +1 -0
- package/dist/config/paths.js +22 -0
- package/dist/config/paths.js.map +1 -0
- package/dist/hono-context.d.ts +1 -1
- package/dist/hono-context.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/keys/server-account.d.ts +28 -0
- package/dist/keys/server-account.d.ts.map +1 -0
- package/dist/keys/server-account.js +48 -0
- package/dist/keys/server-account.js.map +1 -0
- package/dist/logger/index.d.ts +5 -0
- package/dist/logger/index.d.ts.map +1 -0
- package/dist/logger/index.js +9 -0
- package/dist/logger/index.js.map +1 -0
- package/dist/logging/access-log.d.ts +15 -0
- package/dist/logging/access-log.d.ts.map +1 -0
- package/dist/logging/access-log.js +25 -0
- package/dist/logging/access-log.js.map +1 -0
- package/dist/logging/access-reader.d.ts +19 -0
- package/dist/logging/access-reader.d.ts.map +1 -0
- package/dist/logging/access-reader.js +50 -0
- package/dist/logging/access-reader.js.map +1 -0
- package/dist/middleware/access-log.d.ts.map +1 -1
- package/dist/middleware/access-log.js +8 -2
- package/dist/middleware/access-log.js.map +1 -1
- package/dist/middleware/builder-check.d.ts +1 -1
- package/dist/middleware/builder-check.d.ts.map +1 -1
- package/dist/middleware/data-read-policy.d.ts +11 -0
- package/dist/middleware/data-read-policy.d.ts.map +1 -0
- package/dist/middleware/data-read-policy.js +39 -0
- package/dist/middleware/data-read-policy.js.map +1 -0
- package/dist/middleware/web3-auth.d.ts +4 -7
- package/dist/middleware/web3-auth.d.ts.map +1 -1
- package/dist/middleware/web3-auth.js +16 -92
- package/dist/middleware/web3-auth.js.map +1 -1
- package/dist/migrations/local-state.d.ts +21 -0
- package/dist/migrations/local-state.d.ts.map +1 -0
- package/dist/migrations/local-state.js +106 -0
- package/dist/migrations/local-state.js.map +1 -0
- package/dist/routes/access-logs.d.ts +5 -0
- package/dist/routes/access-logs.d.ts.map +1 -1
- package/dist/routes/access-logs.js +10 -17
- package/dist/routes/access-logs.js.map +1 -1
- package/dist/routes/auth-device.d.ts +24 -15
- package/dist/routes/auth-device.d.ts.map +1 -1
- package/dist/routes/auth-device.js +121 -152
- package/dist/routes/auth-device.js.map +1 -1
- package/dist/routes/data.d.ts +8 -1
- package/dist/routes/data.d.ts.map +1 -1
- package/dist/routes/data.js +25 -201
- package/dist/routes/data.js.map +1 -1
- package/dist/routes/grants.d.ts +5 -1
- package/dist/routes/grants.d.ts.map +1 -1
- package/dist/routes/grants.js +12 -195
- package/dist/routes/grants.js.map +1 -1
- package/dist/routes/health.d.ts +7 -1
- package/dist/routes/health.d.ts.map +1 -1
- package/dist/routes/health.js +24 -1
- package/dist/routes/health.js.map +1 -1
- package/dist/routes/oauth-token.d.ts +56 -0
- package/dist/routes/oauth-token.d.ts.map +1 -0
- package/dist/routes/oauth-token.js +49 -0
- package/dist/routes/oauth-token.js.map +1 -0
- package/dist/routes/sync.d.ts +5 -0
- package/dist/routes/sync.d.ts.map +1 -1
- package/dist/routes/sync.js +11 -39
- package/dist/routes/sync.js.map +1 -1
- package/dist/routes/ui-config.d.ts.map +1 -1
- package/dist/routes/ui-config.js +17 -82
- package/dist/routes/ui-config.js.map +1 -1
- package/dist/routes/ui-registration.d.ts +7 -0
- package/dist/routes/ui-registration.d.ts.map +1 -0
- package/dist/routes/ui-registration.js +209 -0
- package/dist/routes/ui-registration.js.map +1 -0
- package/dist/routes/ui.d.ts +1 -0
- package/dist/routes/ui.d.ts.map +1 -1
- package/dist/routes/ui.js +46 -4
- package/dist/routes/ui.js.map +1 -1
- package/dist/storage/hierarchy.d.ts +16 -0
- package/dist/storage/hierarchy.d.ts.map +1 -0
- package/dist/storage/hierarchy.js +60 -0
- package/dist/storage/hierarchy.js.map +1 -0
- package/dist/storage/index-manager.d.ts +37 -0
- package/dist/storage/index-manager.d.ts.map +1 -0
- package/dist/storage/index-manager.js +134 -0
- package/dist/storage/index-manager.js.map +1 -0
- package/dist/storage/index-schema.d.ts +5 -0
- package/dist/storage/index-schema.d.ts.map +1 -0
- package/dist/storage/index-schema.js +48 -0
- package/dist/storage/index-schema.js.map +1 -0
- package/dist/storage/node-data-storage.d.ts +9 -0
- package/dist/storage/node-data-storage.d.ts.map +1 -0
- package/dist/storage/node-data-storage.js +48 -0
- package/dist/storage/node-data-storage.js.map +1 -0
- package/dist/sync-cursor.d.ts +15 -0
- package/dist/sync-cursor.d.ts.map +1 -0
- package/dist/sync-cursor.js +71 -0
- package/dist/sync-cursor.js.map +1 -0
- package/dist/token-store.d.ts.map +1 -1
- package/dist/token-store.js +1 -0
- package/dist/token-store.js.map +1 -1
- package/dist/ui/browser_tls_rustls_bg.wasm +0 -0
- package/dist/ui/index.html +1920 -0
- package/dist/ui/ps-lite-debug.d.ts +62 -0
- package/dist/ui/ps-lite-debug.d.ts.map +1 -0
- package/dist/ui/ps-lite-debug.js +55095 -0
- package/dist/ui/ps-lite-debug.js.map +1 -0
- package/package.json +20 -6
- package/dist/middleware/grant-check.d.ts +0 -12
- package/dist/middleware/grant-check.d.ts.map +0 -1
- package/dist/middleware/grant-check.js +0 -90
- package/dist/middleware/grant-check.js.map +0 -1
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { type SessionTokenVerifierPort } from "@opendatalabs/personal-server-ts-core/auth";
|
|
2
|
+
import type { PersonalServerApiAuthPort } from "@opendatalabs/personal-server-ts-core/api";
|
|
3
|
+
import type { DataStoragePort, FeeVerifierPort, RuntimeAvailabilityPort } from "@opendatalabs/personal-server-ts-core/ports";
|
|
4
|
+
import type { GatewayClient } from "@opendatalabs/vana-sdk/node";
|
|
5
|
+
export interface ServerApiAuthDeps {
|
|
6
|
+
serverOrigin: string | (() => string);
|
|
7
|
+
serverOwner?: `0x${string}`;
|
|
8
|
+
gateway: GatewayClient;
|
|
9
|
+
devToken?: string;
|
|
10
|
+
accessToken?: string;
|
|
11
|
+
tokenStore?: SessionTokenVerifierPort;
|
|
12
|
+
dataStorage?: Pick<DataStoragePort, "findEntry">;
|
|
13
|
+
feeVerifier?: FeeVerifierPort;
|
|
14
|
+
runtimeAvailability?: RuntimeAvailabilityPort;
|
|
15
|
+
}
|
|
16
|
+
export declare function createServerApiAuth(deps: ServerApiAuthDeps): PersonalServerApiAuthPort;
|
|
17
|
+
//# sourceMappingURL=api-auth.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-auth.d.ts","sourceRoot":"","sources":["../src/api-auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,wBAAwB,EAC9B,MAAM,4CAA4C,CAAC;AACpD,OAAO,KAAK,EACV,yBAAyB,EAE1B,MAAM,2CAA2C,CAAC;AAOnD,OAAO,KAAK,EACV,eAAe,EACf,eAAe,EACf,uBAAuB,EACxB,MAAM,6CAA6C,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAEjE,MAAM,WAAW,iBAAiB;IAChC,YAAY,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,CAAC;IACtC,WAAW,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;IAC5B,OAAO,EAAE,aAAa,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,wBAAwB,CAAC;IACtC,WAAW,CAAC,EAAE,IAAI,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;IACjD,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,mBAAmB,CAAC,EAAE,uBAAuB,CAAC;CAC/C;AA6CD,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,iBAAiB,GACtB,yBAAyB,CAoD3B"}
|
package/dist/api-auth.js
ADDED
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { authenticateRequest, } from "@opendatalabs/personal-server-ts-core/auth";
|
|
2
|
+
import { verifyDataReadPolicy } from "@opendatalabs/personal-server-ts-core/policy";
|
|
3
|
+
import { NotOwnerError, ProtocolError, UnregisteredBuilderError, } from "@opendatalabs/personal-server-ts-core/errors";
|
|
4
|
+
function serverNotConfigured() {
|
|
5
|
+
return new ProtocolError(500, "SERVER_NOT_CONFIGURED", "Server owner address not configured. Set VANA_MASTER_KEY_SIGNATURE environment variable.");
|
|
6
|
+
}
|
|
7
|
+
function isOwner(signer, serverOwner) {
|
|
8
|
+
return Boolean(serverOwner && signer.toLowerCase() === serverOwner.toLowerCase());
|
|
9
|
+
}
|
|
10
|
+
async function authenticate(request, deps) {
|
|
11
|
+
return authenticateRequest({
|
|
12
|
+
request,
|
|
13
|
+
serverOrigin: deps.serverOrigin,
|
|
14
|
+
devToken: deps.devToken,
|
|
15
|
+
accessToken: deps.accessToken,
|
|
16
|
+
sessionTokenVerifier: deps.tokenStore,
|
|
17
|
+
serverOwner: deps.serverOwner,
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
async function assertRegisteredBuilder(gateway, signer) {
|
|
21
|
+
if ("isRegisteredBuilder" in gateway) {
|
|
22
|
+
if (await gateway.isRegisteredBuilder(signer))
|
|
23
|
+
return;
|
|
24
|
+
throw new UnregisteredBuilderError();
|
|
25
|
+
}
|
|
26
|
+
const builder = await gateway.getBuilder(signer);
|
|
27
|
+
if (!builder)
|
|
28
|
+
throw new UnregisteredBuilderError();
|
|
29
|
+
}
|
|
30
|
+
export function createServerApiAuth(deps) {
|
|
31
|
+
return {
|
|
32
|
+
async authorizeOwner(request) {
|
|
33
|
+
const result = await authenticate(request, deps);
|
|
34
|
+
if (result.isPolicyBypass)
|
|
35
|
+
return;
|
|
36
|
+
if (!deps.serverOwner)
|
|
37
|
+
throw serverNotConfigured();
|
|
38
|
+
if (!isOwner(result.auth.signer, deps.serverOwner)) {
|
|
39
|
+
throw new NotOwnerError({
|
|
40
|
+
signer: result.auth.signer,
|
|
41
|
+
expected: deps.serverOwner,
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
},
|
|
45
|
+
async authorizeBuilderList(request) {
|
|
46
|
+
const result = await authenticate(request, deps);
|
|
47
|
+
if (result.isPolicyBypass ||
|
|
48
|
+
isOwner(result.auth.signer, deps.serverOwner)) {
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
await assertRegisteredBuilder(deps.gateway, result.auth.signer);
|
|
52
|
+
},
|
|
53
|
+
async authorizeBuilderRead(input) {
|
|
54
|
+
const result = await authenticate(input.request, deps);
|
|
55
|
+
if (result.isPolicyBypass) {
|
|
56
|
+
return { builder: result.auth.signer, grantId: "policy-bypass" };
|
|
57
|
+
}
|
|
58
|
+
const selectedEntry = deps.dataStorage?.findEntry({
|
|
59
|
+
scope: input.scope,
|
|
60
|
+
fileId: input.fileId,
|
|
61
|
+
});
|
|
62
|
+
const grant = await verifyDataReadPolicy({
|
|
63
|
+
signer: result.auth.signer,
|
|
64
|
+
grantId: result.auth.payload.grantId ?? input.grantId,
|
|
65
|
+
requestedScope: input.scope,
|
|
66
|
+
fileId: input.fileId ?? selectedEntry?.fileId ?? undefined,
|
|
67
|
+
}, {
|
|
68
|
+
authSessionVerifier: deps.gateway,
|
|
69
|
+
grantVerifier: deps.gateway,
|
|
70
|
+
feeVerifier: deps.feeVerifier,
|
|
71
|
+
runtimeAvailability: deps.runtimeAvailability,
|
|
72
|
+
});
|
|
73
|
+
return { builder: result.auth.signer, grantId: grant.id };
|
|
74
|
+
},
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=api-auth.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-auth.js","sourceRoot":"","sources":["../src/api-auth.ts"],"names":[],"mappings":"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"}
|
package/dist/api.d.ts
CHANGED
|
@@ -1,2 +1,5 @@
|
|
|
1
1
|
export { createServer, type CreateServerOptions, type ServerContext, } from "./bootstrap.js";
|
|
2
|
+
export { startPersonalServer, type StartPersonalServerNodeOptions, } from "./client.js";
|
|
3
|
+
export type { PersonalServerHandle, PersonalServerInfo, PersonalServerRegistrationRequest, PersonalServerStatus, } from "@opendatalabs/personal-server-ts-core/client";
|
|
4
|
+
export { DEFAULT_ROOT_PATH, DEFAULT_CONFIG_PATH, DEFAULT_DATA_DIR, DEFAULT_SERVER_DIR, DEFAULT_VANA_DIR, expandHomePath, loadConfig, resolveRootPath, type LoadConfigOptions, } from "./config/index.js";
|
|
2
5
|
//# sourceMappingURL=api.d.ts.map
|
package/dist/api.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,KAAK,mBAAmB,EACxB,KAAK,aAAa,GACnB,MAAM,gBAAgB,CAAC"}
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,KAAK,mBAAmB,EACxB,KAAK,aAAa,GACnB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,mBAAmB,EACnB,KAAK,8BAA8B,GACpC,MAAM,aAAa,CAAC;AACrB,YAAY,EACV,oBAAoB,EACpB,kBAAkB,EAClB,iCAAiC,EACjC,oBAAoB,GACrB,MAAM,8CAA8C,CAAC;AACtD,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,eAAe,EACf,KAAK,iBAAiB,GACvB,MAAM,mBAAmB,CAAC"}
|
package/dist/api.js
CHANGED
|
@@ -1,2 +1,4 @@
|
|
|
1
1
|
export { createServer, } from "./bootstrap.js";
|
|
2
|
+
export { startPersonalServer, } from "./client.js";
|
|
3
|
+
export { DEFAULT_ROOT_PATH, DEFAULT_CONFIG_PATH, DEFAULT_DATA_DIR, DEFAULT_SERVER_DIR, DEFAULT_VANA_DIR, expandHomePath, loadConfig, resolveRootPath, } from "./config/index.js";
|
|
2
4
|
//# sourceMappingURL=api.js.map
|
package/dist/api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,GAGb,MAAM,gBAAgB,CAAC"}
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,GAGb,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,mBAAmB,GAEpB,MAAM,aAAa,CAAC;AAOrB,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,eAAe,GAEhB,MAAM,mBAAmB,CAAC"}
|
package/dist/app.d.ts
CHANGED
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
import { Hono } from "hono";
|
|
2
2
|
import type { IndexManager } from "@opendatalabs/personal-server-ts-core/storage/index";
|
|
3
3
|
import type { HierarchyManagerOptions } from "@opendatalabs/personal-server-ts-core/storage/hierarchy";
|
|
4
|
-
import type { GatewayClient } from "@opendatalabs/
|
|
4
|
+
import type { DataPortabilityGatewayConfig, GatewayClient } from "@opendatalabs/vana-sdk/node";
|
|
5
|
+
import type { ServerConfig } from "@opendatalabs/personal-server-ts-core/schemas";
|
|
5
6
|
import type { AccessLogWriter } from "@opendatalabs/personal-server-ts-core/logging/access-log";
|
|
6
7
|
import type { AccessLogReader } from "@opendatalabs/personal-server-ts-core/logging/access-reader";
|
|
7
8
|
import { type HealthDeps } from "./routes/health.js";
|
|
8
9
|
import type { SyncManager } from "@opendatalabs/personal-server-ts-core/sync";
|
|
9
10
|
import type { ServerSigner } from "@opendatalabs/personal-server-ts-core/signing";
|
|
11
|
+
import type { DataStoragePort, FeeVerifierPort, RuntimeAvailabilityPort } from "@opendatalabs/personal-server-ts-core/ports";
|
|
10
12
|
import type { TokenStore } from "./token-store.js";
|
|
11
13
|
import type { Logger } from "pino";
|
|
12
14
|
export interface IdentityInfo {
|
|
@@ -25,15 +27,24 @@ export interface AppDeps {
|
|
|
25
27
|
serverOwner?: `0x${string}`;
|
|
26
28
|
identity?: IdentityInfo;
|
|
27
29
|
gateway: GatewayClient;
|
|
30
|
+
gatewayConfig?: DataPortabilityGatewayConfig & {
|
|
31
|
+
url?: string;
|
|
32
|
+
};
|
|
33
|
+
config?: ServerConfig;
|
|
28
34
|
accessLogWriter: AccessLogWriter;
|
|
29
35
|
accessLogReader: AccessLogReader;
|
|
30
36
|
cloudMode?: boolean;
|
|
31
37
|
devToken?: string;
|
|
38
|
+
ownerSignature?: `0x${string}`;
|
|
39
|
+
ownerPrivateKey?: `0x${string}`;
|
|
32
40
|
accessToken?: string;
|
|
33
41
|
configPath?: string;
|
|
34
42
|
syncManager?: SyncManager | null;
|
|
35
43
|
serverSigner?: ServerSigner;
|
|
36
44
|
tokenStore?: TokenStore;
|
|
45
|
+
feeVerifier?: FeeVerifierPort;
|
|
46
|
+
runtimeAvailability?: RuntimeAvailabilityPort;
|
|
47
|
+
dataStorage?: DataStoragePort;
|
|
37
48
|
getTunnelStatus?: HealthDeps["getTunnelStatus"];
|
|
38
49
|
}
|
|
39
50
|
export declare function createApp(deps: AppDeps): Hono;
|
package/dist/app.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAG5B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qDAAqD,CAAC;AACxF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,yDAAyD,CAAC;AACvG,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAG5B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qDAAqD,CAAC;AACxF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,yDAAyD,CAAC;AACvG,OAAO,KAAK,EACV,4BAA4B,EAC5B,aAAa,EACd,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+CAA+C,CAAC;AAClF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0DAA0D,CAAC;AAChG,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6DAA6D,CAAC;AACnG,OAAO,EAAe,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAalE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4CAA4C,CAAC;AAC9E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+CAA+C,CAAC;AAClF,OAAO,KAAK,EACV,eAAe,EACf,eAAe,EACf,uBAAuB,EACxB,MAAM,6CAA6C,CAAC;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAEnC,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,KAAK,MAAM,EAAE,CAAC;IACvB,SAAS,EAAE,KAAK,MAAM,EAAE,CAAC;IACzB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED,MAAM,WAAW,OAAO;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;IAChB,YAAY,EAAE,YAAY,CAAC;IAC3B,gBAAgB,EAAE,uBAAuB,CAAC;IAC1C,YAAY,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,CAAC;IACtC,mBAAmB,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC;IAC1D,WAAW,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;IAC5B,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,OAAO,EAAE,aAAa,CAAC;IACvB,aAAa,CAAC,EAAE,4BAA4B,GAAG;QAAE,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAChE,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,eAAe,EAAE,eAAe,CAAC;IACjC,eAAe,EAAE,eAAe,CAAC;IACjC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;IAC/B,eAAe,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IACjC,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,mBAAmB,CAAC,EAAE,uBAAuB,CAAC;IAC9C,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,eAAe,CAAC,EAAE,UAAU,CAAC,iBAAiB,CAAC,CAAC;CACjD;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,CAwM7C"}
|
package/dist/app.js
CHANGED
|
@@ -7,8 +7,10 @@ import { grantsRoutes } from "./routes/grants.js";
|
|
|
7
7
|
import { accessLogsRoutes } from "./routes/access-logs.js";
|
|
8
8
|
import { syncRoutes } from "./routes/sync.js";
|
|
9
9
|
import { uiConfigRoutes } from "./routes/ui-config.js";
|
|
10
|
+
import { uiRegistrationRoutes } from "./routes/ui-registration.js";
|
|
10
11
|
import { uiRoute } from "./routes/ui.js";
|
|
11
|
-
import { authDeviceRoutes } from "./routes/auth-device.js";
|
|
12
|
+
import { authDeviceRoutes, createDeviceSessionLookup, } from "./routes/auth-device.js";
|
|
13
|
+
import { oauthTokenRoutes } from "./routes/oauth-token.js";
|
|
12
14
|
export function createApp(deps) {
|
|
13
15
|
const app = new Hono();
|
|
14
16
|
// CORS — allow all origins for browser-based clients
|
|
@@ -22,11 +24,14 @@ export function createApp(deps) {
|
|
|
22
24
|
app.route("/", healthRoute({
|
|
23
25
|
version: deps.version,
|
|
24
26
|
startedAt: deps.startedAt,
|
|
27
|
+
serverOrigin: deps.serverOrigin,
|
|
25
28
|
serverOwner: deps.serverOwner,
|
|
26
29
|
identity: deps.identity,
|
|
27
30
|
gateway: deps.gateway,
|
|
31
|
+
gatewayConfig: deps.gatewayConfig,
|
|
28
32
|
logger: deps.logger,
|
|
29
33
|
getTunnelStatus: deps.getTunnelStatus,
|
|
34
|
+
runtimeAvailability: deps.runtimeAvailability,
|
|
30
35
|
}));
|
|
31
36
|
// Mount data routes (ingest + read + delete)
|
|
32
37
|
app.route("/v1/data", dataRoutes({
|
|
@@ -38,18 +43,26 @@ export function createApp(deps) {
|
|
|
38
43
|
gateway: deps.gateway,
|
|
39
44
|
accessLogWriter: deps.accessLogWriter,
|
|
40
45
|
devToken: deps.devToken,
|
|
46
|
+
accessToken: deps.accessToken,
|
|
41
47
|
tokenStore: deps.tokenStore,
|
|
42
48
|
syncManager: deps.syncManager ?? null,
|
|
49
|
+
feeVerifier: deps.feeVerifier,
|
|
50
|
+
runtimeAvailability: deps.runtimeAvailability,
|
|
51
|
+
dataStorage: deps.dataStorage,
|
|
52
|
+
mountPath: "/v1/data",
|
|
43
53
|
}));
|
|
44
54
|
// Mount grants routes (POST /verify is public, GET / and POST / need owner auth)
|
|
45
55
|
app.route("/v1/grants", grantsRoutes({
|
|
46
56
|
logger: deps.logger,
|
|
47
57
|
gateway: deps.gateway,
|
|
58
|
+
gatewayConfig: deps.gatewayConfig,
|
|
48
59
|
serverOwner: deps.serverOwner,
|
|
49
60
|
serverOrigin: deps.serverOrigin,
|
|
50
61
|
devToken: deps.devToken,
|
|
62
|
+
accessToken: deps.accessToken,
|
|
51
63
|
tokenStore: deps.tokenStore,
|
|
52
64
|
serverSigner: deps.serverSigner,
|
|
65
|
+
mountPath: "/v1/grants",
|
|
53
66
|
}));
|
|
54
67
|
// Mount access-logs routes (all owner auth)
|
|
55
68
|
app.route("/v1/access-logs", accessLogsRoutes({
|
|
@@ -57,17 +70,23 @@ export function createApp(deps) {
|
|
|
57
70
|
accessLogReader: deps.accessLogReader,
|
|
58
71
|
serverOrigin: deps.serverOrigin,
|
|
59
72
|
serverOwner: deps.serverOwner,
|
|
73
|
+
gateway: deps.gateway,
|
|
60
74
|
devToken: deps.devToken,
|
|
75
|
+
accessToken: deps.accessToken,
|
|
61
76
|
tokenStore: deps.tokenStore,
|
|
77
|
+
mountPath: "/v1/access-logs",
|
|
62
78
|
}));
|
|
63
79
|
// Mount sync routes (all owner auth)
|
|
64
80
|
app.route("/v1/sync", syncRoutes({
|
|
65
81
|
logger: deps.logger,
|
|
66
82
|
serverOrigin: deps.serverOrigin,
|
|
67
83
|
serverOwner: deps.serverOwner,
|
|
84
|
+
gateway: deps.gateway,
|
|
68
85
|
devToken: deps.devToken,
|
|
86
|
+
accessToken: deps.accessToken,
|
|
69
87
|
tokenStore: deps.tokenStore,
|
|
70
88
|
syncManager: deps.syncManager ?? null,
|
|
89
|
+
mountPath: "/v1/sync",
|
|
71
90
|
}));
|
|
72
91
|
// Mount login flow v2 routes (self-hosted CLI auth, no auth required)
|
|
73
92
|
if (deps.tokenStore) {
|
|
@@ -81,16 +100,37 @@ export function createApp(deps) {
|
|
|
81
100
|
accessToken: deps.accessToken,
|
|
82
101
|
allowInteractiveLogin: !deps.cloudMode,
|
|
83
102
|
}));
|
|
103
|
+
// RFC 6749 token endpoint. Replaces ad-hoc `/auth/device/token` semantics
|
|
104
|
+
// with a standard OAuth2 surface that supports both the cloud
|
|
105
|
+
// control-plane `client_credentials` grant and the CLI device-code grant.
|
|
106
|
+
app.route("/oauth/token", oauthTokenRoutes({
|
|
107
|
+
logger: deps.logger,
|
|
108
|
+
tokenStore: deps.tokenStore,
|
|
109
|
+
controlPlaneSecret: deps.accessToken,
|
|
110
|
+
deviceSessions: createDeviceSessionLookup(),
|
|
111
|
+
}));
|
|
84
112
|
}
|
|
85
113
|
// Mount dev UI routes when dev token is available
|
|
86
114
|
if (deps.devToken) {
|
|
87
|
-
app.route("/ui", uiRoute({
|
|
115
|
+
app.route("/ui", uiRoute({
|
|
116
|
+
devToken: deps.devToken,
|
|
117
|
+
psLiteBootstrap: deps.ownerSignature
|
|
118
|
+
? {
|
|
119
|
+
ownerSignature: deps.ownerSignature,
|
|
120
|
+
config: deps.config,
|
|
121
|
+
}
|
|
122
|
+
: null,
|
|
123
|
+
}));
|
|
88
124
|
if (deps.configPath) {
|
|
89
125
|
app.route("/ui/api", uiConfigRoutes({
|
|
90
126
|
devToken: deps.devToken,
|
|
91
127
|
configPath: deps.configPath,
|
|
92
128
|
}));
|
|
93
129
|
}
|
|
130
|
+
app.route("/ui/api", uiRegistrationRoutes({
|
|
131
|
+
devToken: deps.devToken,
|
|
132
|
+
ownerPrivateKey: deps.ownerPrivateKey,
|
|
133
|
+
}));
|
|
94
134
|
}
|
|
95
135
|
// Global error handler
|
|
96
136
|
app.onError((err, c) => {
|
package/dist/app.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,8CAA8C,CAAC;
|
|
1
|
+
{"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"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"}
|
package/dist/bootstrap.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { ServerConfig } from "@opendatalabs/personal-server-ts-core/schemas";
|
|
2
|
-
import { type Logger } from "
|
|
3
|
-
import { type IndexManager } from "
|
|
4
|
-
import type { GatewayClient } from "@opendatalabs/
|
|
2
|
+
import { type Logger } from "./logger/index.js";
|
|
3
|
+
import { type IndexManager } from "./storage/index-manager.js";
|
|
4
|
+
import type { GatewayClient } from "@opendatalabs/vana-sdk/node";
|
|
5
5
|
import type { AccessLogReader } from "@opendatalabs/personal-server-ts-core/logging/access-reader";
|
|
6
6
|
import type { ServerAccount } from "@opendatalabs/personal-server-ts-core/keys";
|
|
7
7
|
import type { ServerSigner } from "@opendatalabs/personal-server-ts-core/signing";
|
|
@@ -33,6 +33,8 @@ export interface CreateServerOptions {
|
|
|
33
33
|
/** @deprecated Use rootPath instead. */
|
|
34
34
|
serverDir?: string;
|
|
35
35
|
dataDir?: string;
|
|
36
|
+
ownerSignature?: `0x${string}`;
|
|
37
|
+
gatewayClient?: GatewayClient;
|
|
36
38
|
}
|
|
37
39
|
export declare function createServer(config: ServerConfig, options?: CreateServerOptions): Promise<ServerContext>;
|
|
38
40
|
//# sourceMappingURL=bootstrap.d.ts.map
|
package/dist/bootstrap.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+CAA+C,CAAC;
|
|
1
|
+
{"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+CAA+C,CAAC;AAElF,OAAO,EAAgB,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE9D,OAAO,EAEL,KAAK,YAAY,EAClB,MAAM,4BAA4B,CAAC;AAGpC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAGjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6DAA6D,CAAC;AAMnG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAEhF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+CAA+C,CAAC;AAElF,OAAO,EAEL,KAAK,WAAW,EACjB,MAAM,4CAA4C,CAAC;AAEpD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAKjC,OAAO,EAAE,aAAa,EAAoB,MAAM,mBAAmB,CAAC;AAGpE,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,IAAI,CAAC;IACV,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,YAAY,CAAC;IACrB,SAAS,EAAE,IAAI,CAAC;IAChB,YAAY,EAAE,YAAY,CAAC;IAC3B,aAAa,EAAE,aAAa,CAAC;IAC7B,eAAe,EAAE,eAAe,CAAC;IACjC,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,WAAW,EAAE,WAAW,GAAG,IAAI,CAAC;IAChC,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,sBAAsB,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;IACjD,sBAAsB,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAClD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,uBAAuB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7C,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wCAAwC;IACxC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;IAC/B,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B;AA0BD,wBAAsB,YAAY,CAChC,MAAM,EAAE,YAAY,EACpB,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,aAAa,CAAC,CA4UxB"}
|
package/dist/bootstrap.js
CHANGED
|
@@ -4,20 +4,25 @@ import { randomUUID } from "node:crypto";
|
|
|
4
4
|
import { join } from "node:path";
|
|
5
5
|
const require = createRequire(import.meta.url);
|
|
6
6
|
const pkg = require("../package.json");
|
|
7
|
-
import { DEFAULT_ROOT_PATH, resolveRootPath
|
|
8
|
-
import { createLogger
|
|
9
|
-
import { initializeDatabase
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
7
|
+
import { DEFAULT_ROOT_PATH, resolveRootPath } from "./config/index.js";
|
|
8
|
+
import { createLogger } from "./logger/index.js";
|
|
9
|
+
import { initializeDatabase } from "./storage/index-schema.js";
|
|
10
|
+
import { createIndexManager, } from "./storage/index-manager.js";
|
|
11
|
+
import { createGatewayClient } from "@opendatalabs/vana-sdk/node";
|
|
12
|
+
import { createAccessLogWriter } from "./logging/access-log.js";
|
|
13
|
+
import { createAccessLogReader } from "./logging/access-reader.js";
|
|
14
|
+
import { deriveMasterKey, recoverServerOwner, } from "@opendatalabs/vana-sdk/node";
|
|
15
|
+
import { loadOrCreateServerAccount } from "./keys/server-account.js";
|
|
16
|
+
import { createServerSigner } from "@opendatalabs/personal-server-ts-core/signing";
|
|
17
|
+
import { createSyncCursor } from "./sync-cursor.js";
|
|
18
|
+
import { createSyncManager, } from "@opendatalabs/personal-server-ts-core/sync";
|
|
19
|
+
import { createVanaSyncStorageAdapter } from "@opendatalabs/personal-server-ts-core/storage/adapters";
|
|
17
20
|
import { createApp } from "./app.js";
|
|
18
21
|
import { generateDevToken } from "./dev-token.js";
|
|
22
|
+
import { migrateLocalState } from "./migrations/local-state.js";
|
|
19
23
|
import { createTokenStore } from "./token-store.js";
|
|
20
24
|
import { TunnelManager, ensureFrpcBinary } from "./tunnel/index.js";
|
|
25
|
+
import { createNodeDataStorage } from "./storage/node-data-storage.js";
|
|
21
26
|
const DEFAULT_LOCAL_APPROVAL_PORT = 34127;
|
|
22
27
|
function resolveLocalApprovalPort(serverPort) {
|
|
23
28
|
const raw = process.env.LOCAL_AUTH_PORT;
|
|
@@ -43,14 +48,26 @@ export async function createServer(config, options) {
|
|
|
43
48
|
const dataDir = options?.dataDir ?? join(storageRoot, "data");
|
|
44
49
|
const indexPath = join(storageRoot, "index.db");
|
|
45
50
|
const configPath = join(storageRoot, "config.json");
|
|
51
|
+
const syncCursorPath = join(storageRoot, "sync-cursor.json");
|
|
52
|
+
const tokensPath = join(storageRoot, "tokens.json");
|
|
46
53
|
await mkdir(storageRoot, { recursive: true });
|
|
47
54
|
await mkdir(dataDir, { recursive: true });
|
|
48
55
|
const db = initializeDatabase(indexPath);
|
|
56
|
+
await migrateLocalState({
|
|
57
|
+
storageRoot,
|
|
58
|
+
dataDir,
|
|
59
|
+
configPath,
|
|
60
|
+
syncCursorPath,
|
|
61
|
+
tokensPath,
|
|
62
|
+
});
|
|
49
63
|
const indexManager = createIndexManager(db);
|
|
50
64
|
const hierarchyOptions = { dataDir };
|
|
51
|
-
const
|
|
65
|
+
const dataStorage = createNodeDataStorage({ indexManager, hierarchyOptions });
|
|
66
|
+
const gatewayClient = options?.gatewayClient ?? createGatewayClient(config.gateway.url);
|
|
52
67
|
// Derive server owner from VANA_MASTER_KEY_SIGNATURE env var
|
|
53
|
-
const masterKeySignature =
|
|
68
|
+
const masterKeySignature = options?.ownerSignature ??
|
|
69
|
+
process.env.VANA_MASTER_KEY_SIGNATURE;
|
|
70
|
+
const ownerPrivateKey = process.env.VANA_OWNER_PRIVATE_KEY;
|
|
54
71
|
let serverOwner;
|
|
55
72
|
let serverAccount;
|
|
56
73
|
let serverSigner;
|
|
@@ -121,19 +138,16 @@ export async function createServer(config, options) {
|
|
|
121
138
|
serverAccount &&
|
|
122
139
|
serverSigner) {
|
|
123
140
|
const masterKey = deriveMasterKey(masterKeySignature);
|
|
124
|
-
const
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
signer: requestSigner,
|
|
141
|
+
const storageAdapter = createVanaSyncStorageAdapter({
|
|
142
|
+
config,
|
|
143
|
+
serverOwner,
|
|
144
|
+
serverAccount,
|
|
145
|
+
});
|
|
146
|
+
const cursor = createSyncCursor(syncCursorPath, {
|
|
147
|
+
legacyConfigPath: configPath,
|
|
132
148
|
});
|
|
133
|
-
const cursor = createSyncCursor(configPath);
|
|
134
149
|
const uploadDeps = {
|
|
135
|
-
|
|
136
|
-
hierarchyOptions,
|
|
150
|
+
storage: dataStorage,
|
|
137
151
|
storageAdapter,
|
|
138
152
|
gateway: gatewayClient,
|
|
139
153
|
signer: serverSigner,
|
|
@@ -142,8 +156,7 @@ export async function createServer(config, options) {
|
|
|
142
156
|
logger,
|
|
143
157
|
};
|
|
144
158
|
const downloadDeps = {
|
|
145
|
-
|
|
146
|
-
hierarchyOptions,
|
|
159
|
+
storage: dataStorage,
|
|
147
160
|
storageAdapter,
|
|
148
161
|
gateway: gatewayClient,
|
|
149
162
|
cursor,
|
|
@@ -165,7 +178,6 @@ export async function createServer(config, options) {
|
|
|
165
178
|
// Generate ephemeral dev token when devUi is enabled
|
|
166
179
|
const devToken = config.devUi.enabled ? generateDevToken() : undefined;
|
|
167
180
|
// Token store for /auth/device flow (self-hosted CLI auth)
|
|
168
|
-
const tokensPath = join(storageRoot, "tokens.json");
|
|
169
181
|
const tokenStore = createTokenStore(tokensPath, logger);
|
|
170
182
|
const cloudMode = process.env.CLOUD_MODE === "true";
|
|
171
183
|
const localApprovalPort = cloudMode
|
|
@@ -187,10 +199,15 @@ export async function createServer(config, options) {
|
|
|
187
199
|
serverOwner,
|
|
188
200
|
identity,
|
|
189
201
|
gateway: gatewayClient,
|
|
202
|
+
gatewayConfig: config.gateway,
|
|
203
|
+
config,
|
|
190
204
|
accessLogWriter,
|
|
191
205
|
accessLogReader,
|
|
206
|
+
dataStorage,
|
|
192
207
|
cloudMode,
|
|
193
208
|
devToken,
|
|
209
|
+
ownerSignature: masterKeySignature,
|
|
210
|
+
ownerPrivateKey,
|
|
194
211
|
accessToken,
|
|
195
212
|
tokenStore,
|
|
196
213
|
configPath,
|
package/dist/bootstrap.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,GAAG,GAAG,OAAO,CAAC,iBAAiB,CAAwB,CAAC;AAE9D,OAAO,
|
|
1
|
+
{"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"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"}
|
package/dist/client.d.ts
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { ServerConfig } from "@opendatalabs/personal-server-ts-core/schemas";
|
|
2
|
+
import { type PersonalServerHandle, type PersonalServerStatus } from "@opendatalabs/personal-server-ts-core/client";
|
|
3
|
+
import type { GatewayClient } from "@opendatalabs/vana-sdk/node";
|
|
4
|
+
import { type CreateServerOptions } from "./bootstrap.js";
|
|
5
|
+
import { type LoadConfigOptions } from "./config/index.js";
|
|
6
|
+
export interface StartPersonalServerNodeOptions extends Pick<CreateServerOptions, "rootPath" | "dataDir" | "ownerSignature">, LoadConfigOptions {
|
|
7
|
+
config?: ServerConfig;
|
|
8
|
+
configDefaults?: Partial<ServerConfig>;
|
|
9
|
+
port?: number;
|
|
10
|
+
hostname?: string;
|
|
11
|
+
localApproval?: boolean;
|
|
12
|
+
startBackgroundServices?: boolean;
|
|
13
|
+
gatewayClient?: GatewayClient;
|
|
14
|
+
onStatus?: (status: PersonalServerStatus) => void;
|
|
15
|
+
}
|
|
16
|
+
export declare function startPersonalServer(options?: StartPersonalServerNodeOptions): Promise<PersonalServerHandle>;
|
|
17
|
+
//# sourceMappingURL=client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+CAA+C,CAAC;AAClF,OAAO,EAML,KAAK,oBAAoB,EAMzB,KAAK,oBAAoB,EAE1B,MAAM,8CAA8C,CAAC;AACtD,OAAO,KAAK,EACV,aAAa,EAEd,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAgB,KAAK,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACxE,OAAO,EAAc,KAAK,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAKvE,MAAM,WAAW,8BACf,SACE,IAAI,CAAC,mBAAmB,EAAE,UAAU,GAAG,SAAS,GAAG,gBAAgB,CAAC,EACpE,iBAAiB;IACnB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,cAAc,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IACvC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,CAAC;CACnD;AAED,wBAAsB,mBAAmB,CACvC,OAAO,GAAE,8BAAmC,GAC3C,OAAO,CAAC,oBAAoB,CAAC,CAqL/B"}
|