@superblocksteam/sdk 2.0.0-next.82 → 2.0.0-next.84
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/socket/handlers.d.ts +2 -2
- package/dist/socket/handlers.d.ts.map +1 -1
- package/dist/socket/handlers.js.map +1 -1
- package/dist/socket/index.d.ts.map +1 -1
- package/dist/socket/index.js +11 -4
- package/dist/socket/index.js.map +1 -1
- package/package.json +4 -4
- package/src/socket/handlers.ts +109 -105
- package/src/socket/index.ts +22 -10
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { MethodHandlers } from "../types/index.js";
|
|
2
|
-
import type { ClientMethods, ServerMethods } from "@superblocksteam/shared";
|
|
2
|
+
import type { ClientMethods, ServerMethods, RequestContextBase } from "@superblocksteam/shared";
|
|
3
3
|
export type ResponseMeta = {
|
|
4
4
|
status: number;
|
|
5
5
|
success: boolean;
|
|
@@ -13,6 +13,6 @@ type APIResponseError = {
|
|
|
13
13
|
export declare function createRequestHandlers({ agentUrl, token, }: {
|
|
14
14
|
token: string;
|
|
15
15
|
agentUrl?: string;
|
|
16
|
-
}): MethodHandlers<ClientMethods, ServerMethods,
|
|
16
|
+
}): MethodHandlers<ClientMethods, ServerMethods, RequestContextBase>;
|
|
17
17
|
export {};
|
|
18
18
|
//# sourceMappingURL=handlers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../src/socket/handlers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAA0B,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAChF,OAAO,KAAK,EAGV,aAAa,EACb,aAAa,
|
|
1
|
+
{"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../src/socket/handlers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAA0B,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAChF,OAAO,KAAK,EAGV,aAAa,EACb,aAAa,EACb,kBAAkB,EACnB,MAAM,yBAAyB,CAAC;AAKjC,MAAM,MAAM,YAAY,GAAG;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,gBAAgB,CAAC;CAC1B,CAAC;AAEF,KAAK,gBAAgB,GAAG;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,wBAAgB,qBAAqB,CAAC,EACpC,QAAQ,EACR,KAAK,GACN,EAAE;IACD,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,oEA8HA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../src/socket/handlers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../src/socket/handlers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/socket/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/socket/index.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,KAAK,EAGV,aAAa,EACd,MAAM,yBAAyB,CAAC;AAEjC,MAAM,MAAM,mBAAmB,GAAG,aAAa,CAAC,aAAa,CAAC,CAAC;AAE/D,wBAAsB,yBAAyB,CAAC,EAC9C,kBAAkB,EAClB,QAAQ,EACR,KAAK,GACN,EAAE;IACD,kBAAkB,EAAE,MAAM,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAkC/B"}
|
package/dist/socket/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { connectWebSocket, createISocketClient, ISocketWithClientAuth, } from "@superblocksteam/shared";
|
|
2
2
|
import tracer from "../dev-utils/dev-tracer.js";
|
|
3
3
|
import { createRequestHandlers } from "./handlers.js";
|
|
4
4
|
export async function connectToISocketRPCServer({ superblocksBaseUrl, agentUrl, token, }) {
|
|
@@ -20,9 +20,16 @@ export async function connectToISocketRPCServer({ superblocksBaseUrl, agentUrl,
|
|
|
20
20
|
else if (wsUrl.hostname === "localhost") {
|
|
21
21
|
wsUrl.hostname = "127.0.0.1";
|
|
22
22
|
}
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
23
|
+
const ws = await connectWebSocket(wsUrl.href);
|
|
24
|
+
const isocket = new ISocketWithClientAuth(ws, authorization, requestHandlers, [], tracer, {
|
|
25
|
+
timeouts: {
|
|
26
|
+
connectionTimeoutInSeconds: 6 * 60, // 6 minutes
|
|
27
|
+
noResponseTimeoutInSeconds: 5 * 60, // 5 minutes
|
|
28
|
+
},
|
|
29
|
+
onClose: () => {
|
|
30
|
+
// Noop
|
|
31
|
+
},
|
|
26
32
|
});
|
|
33
|
+
return createISocketClient(isocket);
|
|
27
34
|
}
|
|
28
35
|
//# sourceMappingURL=index.js.map
|
package/dist/socket/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/socket/index.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/socket/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,yBAAyB,CAAC;AACjC,OAAO,MAAM,MAAM,4BAA4B,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAUtD,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAAC,EAC9C,kBAAkB,EAClB,QAAQ,EACR,KAAK,GAKN;IACC,MAAM,eAAe,GAAG,qBAAqB,CAAC;QAC5C,QAAQ;QACR,KAAK;KACN,CAAC,CAAC;IACH,MAAM,aAAa,GAAG,UAAU,KAAK,EAAE,CAAC;IACxC,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,eAAe,EAAE,kBAAkB,CAAC,CAAC;IAC3D,IAAI,KAAK,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QAC/B,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC;IACzB,CAAC;SAAM,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACvC,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC;IAC1B,CAAC;IAED,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;QACvE,KAAK,CAAC,IAAI,GAAG,gBAAgB,CAAC;IAChC,CAAC;SAAM,IAAI,KAAK,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;QAC1C,KAAK,CAAC,QAAQ,GAAG,WAAW,CAAC;IAC/B,CAAC;IAED,MAAM,EAAE,GAAG,MAAM,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC9C,MAAM,OAAO,GAAG,IAAI,qBAAqB,CAIvC,EAAE,EAAE,aAAa,EAAE,eAAe,EAAE,EAAE,EAAE,MAAM,EAAE;QAChD,QAAQ,EAAE;YACR,0BAA0B,EAAE,CAAC,GAAG,EAAE,EAAE,YAAY;YAChD,0BAA0B,EAAE,CAAC,GAAG,EAAE,EAAE,YAAY;SACjD;QACD,OAAO,EAAE,GAAG,EAAE;YACZ,OAAO;QACT,CAAC;KACF,CAAC,CAAC;IACH,OAAO,mBAAmB,CAAC,OAAO,CAAC,CAAC;AACtC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@superblocksteam/sdk",
|
|
3
|
-
"version": "2.0.0-next.
|
|
3
|
+
"version": "2.0.0-next.84",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Superblocks JS SDK",
|
|
6
6
|
"homepage": "https://www.superblocks.com",
|
|
@@ -30,9 +30,9 @@
|
|
|
30
30
|
"@opentelemetry/semantic-conventions": "^1.28.0",
|
|
31
31
|
"@rollup/wasm-node": "^4.35.0",
|
|
32
32
|
"@superblocksteam/bucketeer-sdk": "0.5.0",
|
|
33
|
-
"@superblocksteam/shared": "0.
|
|
34
|
-
"@superblocksteam/util": "2.0.0-next.
|
|
35
|
-
"@superblocksteam/vite-plugin-file-sync": "2.0.0-next.
|
|
33
|
+
"@superblocksteam/shared": "0.9149.0",
|
|
34
|
+
"@superblocksteam/util": "2.0.0-next.84",
|
|
35
|
+
"@superblocksteam/vite-plugin-file-sync": "2.0.0-next.84",
|
|
36
36
|
"@vitejs/plugin-react": "^4.3.4",
|
|
37
37
|
"axios": "^1.4.0",
|
|
38
38
|
"chokidar": "^4.0.3",
|
package/src/socket/handlers.ts
CHANGED
|
@@ -5,6 +5,7 @@ import type {
|
|
|
5
5
|
ApiToVerify,
|
|
6
6
|
ClientMethods,
|
|
7
7
|
ServerMethods,
|
|
8
|
+
RequestContextBase,
|
|
8
9
|
} from "@superblocksteam/shared";
|
|
9
10
|
import type { Signature } from "@superblocksteam/util";
|
|
10
11
|
|
|
@@ -29,18 +30,49 @@ export function createRequestHandlers({
|
|
|
29
30
|
token: string;
|
|
30
31
|
agentUrl?: string;
|
|
31
32
|
}) {
|
|
32
|
-
const requestHandlers: MethodHandlers<
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
33
|
+
const requestHandlers: MethodHandlers<
|
|
34
|
+
ClientMethods,
|
|
35
|
+
ServerMethods,
|
|
36
|
+
RequestContextBase
|
|
37
|
+
> = {
|
|
38
|
+
v1: {
|
|
39
|
+
signing: {
|
|
40
|
+
signApplication: [
|
|
41
|
+
async ({
|
|
42
|
+
branchName,
|
|
43
|
+
toSign,
|
|
44
|
+
}: {
|
|
45
|
+
branchName: string;
|
|
46
|
+
toSign: AppToSign;
|
|
47
|
+
}) => {
|
|
48
|
+
if (!agentUrl) {
|
|
49
|
+
throw new Error(
|
|
50
|
+
"Agent url not specified. This shouldn't happen.",
|
|
51
|
+
);
|
|
52
|
+
}
|
|
53
|
+
const signature = await signResource({
|
|
54
|
+
agentUrl,
|
|
55
|
+
token: token,
|
|
38
56
|
branchName,
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
57
|
+
resource: {
|
|
58
|
+
literal: {
|
|
59
|
+
data: toSign.rootHash,
|
|
60
|
+
},
|
|
61
|
+
},
|
|
62
|
+
});
|
|
63
|
+
return { signature: signature };
|
|
64
|
+
},
|
|
65
|
+
],
|
|
66
|
+
signApis: [
|
|
67
|
+
async ({
|
|
68
|
+
branchName,
|
|
69
|
+
toSign,
|
|
70
|
+
}: {
|
|
71
|
+
branchName: string;
|
|
72
|
+
toSign: ApiToSign[];
|
|
73
|
+
}) => {
|
|
74
|
+
const signatures: Signature[] = [];
|
|
75
|
+
for (const { apiPb } of toSign) {
|
|
44
76
|
if (!agentUrl) {
|
|
45
77
|
throw new Error(
|
|
46
78
|
"Agent url not specified. This shouldn't happen.",
|
|
@@ -50,105 +82,77 @@ export function createRequestHandlers({
|
|
|
50
82
|
agentUrl,
|
|
51
83
|
token: token,
|
|
52
84
|
branchName,
|
|
53
|
-
resource: {
|
|
54
|
-
literal: {
|
|
55
|
-
data: toSign.rootHash,
|
|
56
|
-
},
|
|
57
|
-
},
|
|
85
|
+
resource: { api: apiPb as any },
|
|
58
86
|
});
|
|
59
|
-
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
const signature = await signResource({
|
|
78
|
-
agentUrl,
|
|
79
|
-
token: token,
|
|
80
|
-
branchName,
|
|
81
|
-
resource: { api: apiPb as any },
|
|
82
|
-
});
|
|
83
|
-
signatures.push(signature);
|
|
87
|
+
signatures.push(signature);
|
|
88
|
+
}
|
|
89
|
+
return { signatures };
|
|
90
|
+
},
|
|
91
|
+
],
|
|
92
|
+
verifyApplication: [
|
|
93
|
+
async ({
|
|
94
|
+
branchName,
|
|
95
|
+
toVerify,
|
|
96
|
+
}: {
|
|
97
|
+
branchName: string;
|
|
98
|
+
toVerify: AppToVerify;
|
|
99
|
+
}) => {
|
|
100
|
+
try {
|
|
101
|
+
if (!agentUrl) {
|
|
102
|
+
throw new Error(
|
|
103
|
+
"Agent url not specified. This shouldn't happen.",
|
|
104
|
+
);
|
|
84
105
|
}
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
toVerify: AppToVerify;
|
|
95
|
-
}) => {
|
|
96
|
-
try {
|
|
97
|
-
if (!agentUrl) {
|
|
98
|
-
throw new Error(
|
|
99
|
-
"Agent url not specified. This shouldn't happen.",
|
|
100
|
-
);
|
|
101
|
-
}
|
|
102
|
-
await verifyResources({
|
|
103
|
-
agentUrl,
|
|
104
|
-
token,
|
|
105
|
-
branchName,
|
|
106
|
-
resources: [
|
|
107
|
-
{
|
|
108
|
-
literal: {
|
|
109
|
-
data: toVerify.rootHash,
|
|
110
|
-
signature: toVerify.signature,
|
|
111
|
-
},
|
|
106
|
+
await verifyResources({
|
|
107
|
+
agentUrl,
|
|
108
|
+
token,
|
|
109
|
+
branchName,
|
|
110
|
+
resources: [
|
|
111
|
+
{
|
|
112
|
+
literal: {
|
|
113
|
+
data: toVerify.rootHash,
|
|
114
|
+
signature: toVerify.signature,
|
|
112
115
|
},
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
|
|
116
|
+
},
|
|
117
|
+
],
|
|
118
|
+
});
|
|
119
|
+
return { ok: true };
|
|
120
|
+
} catch {
|
|
121
|
+
return { ok: false };
|
|
122
|
+
}
|
|
123
|
+
},
|
|
124
|
+
],
|
|
121
125
|
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
}
|
|
136
|
-
await verifyResources({
|
|
137
|
-
agentUrl,
|
|
138
|
-
token,
|
|
139
|
-
branchName,
|
|
140
|
-
resources: toVerify.map(({ apiPb }) => ({
|
|
141
|
-
api: apiPb as any,
|
|
142
|
-
})),
|
|
143
|
-
});
|
|
144
|
-
return { ok: true };
|
|
145
|
-
} catch {
|
|
146
|
-
return { ok: false };
|
|
126
|
+
verifyApi: [
|
|
127
|
+
async ({
|
|
128
|
+
branchName,
|
|
129
|
+
toVerify,
|
|
130
|
+
}: {
|
|
131
|
+
branchName: string;
|
|
132
|
+
toVerify: ApiToVerify[];
|
|
133
|
+
}) => {
|
|
134
|
+
try {
|
|
135
|
+
if (!agentUrl) {
|
|
136
|
+
throw new Error(
|
|
137
|
+
"Agent url not specified. This shouldn't happen.",
|
|
138
|
+
);
|
|
147
139
|
}
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
140
|
+
await verifyResources({
|
|
141
|
+
agentUrl,
|
|
142
|
+
token,
|
|
143
|
+
branchName,
|
|
144
|
+
resources: toVerify.map(({ apiPb }) => ({
|
|
145
|
+
api: apiPb as any,
|
|
146
|
+
})),
|
|
147
|
+
});
|
|
148
|
+
return { ok: true };
|
|
149
|
+
} catch {
|
|
150
|
+
return { ok: false };
|
|
151
|
+
}
|
|
152
|
+
},
|
|
153
|
+
],
|
|
151
154
|
},
|
|
152
|
-
}
|
|
155
|
+
},
|
|
156
|
+
};
|
|
153
157
|
return requestHandlers;
|
|
154
158
|
}
|
package/src/socket/index.ts
CHANGED
|
@@ -1,8 +1,16 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {
|
|
2
|
+
connectWebSocket,
|
|
3
|
+
createISocketClient,
|
|
4
|
+
ISocketWithClientAuth,
|
|
5
|
+
} from "@superblocksteam/shared";
|
|
2
6
|
import tracer from "../dev-utils/dev-tracer.js";
|
|
3
7
|
import { createRequestHandlers } from "./handlers.js";
|
|
4
8
|
import type { ISocketClient } from "../types/index.js";
|
|
5
|
-
import type {
|
|
9
|
+
import type {
|
|
10
|
+
ClientMethods,
|
|
11
|
+
RequestContextBase,
|
|
12
|
+
ServerMethods,
|
|
13
|
+
} from "@superblocksteam/shared";
|
|
6
14
|
|
|
7
15
|
export type StdISocketRPCClient = ISocketClient<ServerMethods>;
|
|
8
16
|
|
|
@@ -33,15 +41,19 @@ export async function connectToISocketRPCServer({
|
|
|
33
41
|
wsUrl.hostname = "127.0.0.1";
|
|
34
42
|
}
|
|
35
43
|
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
{
|
|
44
|
+
const ws = await connectWebSocket(wsUrl.href);
|
|
45
|
+
const isocket = new ISocketWithClientAuth<
|
|
46
|
+
ClientMethods,
|
|
47
|
+
ServerMethods,
|
|
48
|
+
RequestContextBase
|
|
49
|
+
>(ws, authorization, requestHandlers, [], tracer, {
|
|
50
|
+
timeouts: {
|
|
43
51
|
connectionTimeoutInSeconds: 6 * 60, // 6 minutes
|
|
44
52
|
noResponseTimeoutInSeconds: 5 * 60, // 5 minutes
|
|
45
53
|
},
|
|
46
|
-
|
|
54
|
+
onClose: () => {
|
|
55
|
+
// Noop
|
|
56
|
+
},
|
|
57
|
+
});
|
|
58
|
+
return createISocketClient(isocket);
|
|
47
59
|
}
|