@canton-network/wallet-gateway-remote 0.17.3 → 0.19.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 +37 -0
- package/dist/config/Config.d.ts +19 -15
- package/dist/config/Config.d.ts.map +1 -1
- package/dist/config/Config.js +7 -3
- package/dist/config/Config.test.js +8 -8
- package/dist/config/ConfigUtils.js +6 -6
- package/dist/dapp-api/controller.d.ts +7 -6
- package/dist/dapp-api/controller.d.ts.map +1 -1
- package/dist/dapp-api/controller.js +75 -50
- package/dist/dapp-api/rpc-gen/index.d.ts +21 -18
- package/dist/dapp-api/rpc-gen/index.d.ts.map +1 -1
- package/dist/dapp-api/rpc-gen/index.js +7 -6
- package/dist/dapp-api/rpc-gen/typings.d.ts +69 -101
- package/dist/dapp-api/rpc-gen/typings.d.ts.map +1 -1
- package/dist/dapp-api/server.d.ts.map +1 -1
- package/dist/dapp-api/server.js +52 -45
- package/dist/dapp-api/server.test.js +1 -5
- package/dist/example-config.d.ts +3 -0
- package/dist/example-config.d.ts.map +1 -1
- package/dist/example-config.js +4 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +11 -1
- package/dist/init.d.ts.map +1 -1
- package/dist/init.js +52 -5
- package/dist/ledger/wallet-sync-service.d.ts.map +1 -1
- package/dist/ledger/wallet-sync-service.js +30 -20
- package/dist/ledger/wallet-sync-service.test.js +339 -0
- package/dist/middleware/jwtAuth.d.ts.map +1 -1
- package/dist/middleware/jwtAuth.js +3 -1
- package/dist/user-api/controller.d.ts +3 -1
- package/dist/user-api/controller.d.ts.map +1 -1
- package/dist/user-api/controller.js +128 -47
- package/dist/user-api/rpc-gen/index.d.ts +6 -0
- package/dist/user-api/rpc-gen/index.d.ts.map +1 -1
- package/dist/user-api/rpc-gen/index.js +2 -0
- package/dist/user-api/rpc-gen/typings.d.ts +37 -24
- package/dist/user-api/rpc-gen/typings.d.ts.map +1 -1
- package/dist/user-api/server.d.ts +1 -1
- package/dist/user-api/server.d.ts.map +1 -1
- package/dist/user-api/server.js +2 -2
- package/dist/user-api/server.test.js +1 -1
- package/dist/utils.d.ts +0 -1
- package/dist/utils.d.ts.map +1 -1
- package/dist/web/frontend/404/index.html +2 -3
- package/dist/web/frontend/approve/index.html +4 -5
- package/dist/web/frontend/assets/404-BQsvObfu.js +8 -0
- package/dist/web/frontend/assets/approve-BLORPbEM.js +17 -0
- package/dist/web/frontend/assets/{callback-B-wmBVDs.js → callback-C7kRcm3U.js} +1 -1
- package/dist/web/frontend/assets/index-DPbaEEZi.js +1722 -0
- package/dist/web/frontend/assets/{decode-CLJkuAIr.js → index-NP2zGQqX.js} +1 -1
- package/dist/web/frontend/assets/login-p5H_f9In.js +7 -0
- package/dist/web/frontend/assets/settings-89wZp5vZ.js +37 -0
- package/dist/web/frontend/assets/{state-CziDYJOu.js → state-TjGUBiUh.js} +1 -1
- package/dist/web/frontend/assets/transactions-BnROcA2_.js +28 -0
- package/dist/web/frontend/assets/wallets-TPeR2lS2.js +63 -0
- package/dist/web/frontend/callback/index.html +2 -3
- package/dist/web/frontend/index.html +1 -2
- package/dist/web/frontend/login/index.html +3 -4
- package/dist/web/frontend/settings/index.html +3 -4
- package/dist/web/frontend/transactions/index.html +4 -5
- package/dist/web/frontend/wallets/index.html +3 -4
- package/package.json +26 -21
- package/dist/web/frontend/assets/404-C5sXhYIJ.js +0 -16
- package/dist/web/frontend/assets/approve-DLsPdBvo.js +0 -227
- package/dist/web/frontend/assets/index-CxDOwxiY.css +0 -1
- package/dist/web/frontend/assets/index-Dfw8gEND.js +0 -1158
- package/dist/web/frontend/assets/login-BiJNU2kh.js +0 -186
- package/dist/web/frontend/assets/settings-B8ayu_0I.js +0 -28
- package/dist/web/frontend/assets/transactions-D2Yx5LYD.js +0 -140
- package/dist/web/frontend/assets/wallets-nCed0fPk.js +0 -266
|
@@ -64,7 +64,6 @@ export interface DisclosedContract {
|
|
|
64
64
|
contractId?: ContractId;
|
|
65
65
|
createdEventBlob: CreatedEventBlob;
|
|
66
66
|
synchronizerId?: SynchronizerId;
|
|
67
|
-
[k: string]: any;
|
|
68
67
|
}
|
|
69
68
|
/**
|
|
70
69
|
*
|
|
@@ -79,24 +78,36 @@ export type PackageId = string;
|
|
|
79
78
|
*
|
|
80
79
|
*/
|
|
81
80
|
export type PackageIdSelectionPreference = PackageId[];
|
|
81
|
+
/**
|
|
82
|
+
*
|
|
83
|
+
* The message to sign.
|
|
84
|
+
*
|
|
85
|
+
*/
|
|
86
|
+
export type Message = string;
|
|
82
87
|
export type RequestMethod = 'GET' | 'POST' | 'PUT' | 'DELETE';
|
|
83
88
|
export type Resource = string;
|
|
84
89
|
export type Body = string;
|
|
85
90
|
/**
|
|
86
91
|
*
|
|
87
|
-
* The unique identifier of the
|
|
92
|
+
* The unique identifier of the Provider.
|
|
88
93
|
*
|
|
89
94
|
*/
|
|
90
|
-
export type
|
|
95
|
+
export type ProviderId = string;
|
|
91
96
|
/**
|
|
92
97
|
*
|
|
93
|
-
* The
|
|
98
|
+
* The version of the Provider.
|
|
94
99
|
*
|
|
95
100
|
*/
|
|
96
|
-
export type
|
|
101
|
+
export type Version = string;
|
|
97
102
|
/**
|
|
98
103
|
*
|
|
99
|
-
* The
|
|
104
|
+
* The type of client that implements the Provider.
|
|
105
|
+
*
|
|
106
|
+
*/
|
|
107
|
+
export type ProviderType = 'browser' | 'desktop' | 'mobile' | 'remote';
|
|
108
|
+
/**
|
|
109
|
+
*
|
|
110
|
+
* The URL of the Wallet Provider.
|
|
100
111
|
*
|
|
101
112
|
*/
|
|
102
113
|
export type Url = string;
|
|
@@ -108,15 +119,15 @@ export type Url = string;
|
|
|
108
119
|
export type UserUrl = string;
|
|
109
120
|
/**
|
|
110
121
|
*
|
|
111
|
-
* Represents a
|
|
122
|
+
* Represents a Provider.
|
|
112
123
|
*
|
|
113
124
|
*/
|
|
114
|
-
export interface
|
|
115
|
-
id:
|
|
116
|
-
|
|
125
|
+
export interface Provider {
|
|
126
|
+
id: ProviderId;
|
|
127
|
+
version?: Version;
|
|
128
|
+
providerType?: ProviderType;
|
|
117
129
|
url?: Url;
|
|
118
130
|
userUrl?: UserUrl;
|
|
119
|
-
[k: string]: any;
|
|
120
131
|
}
|
|
121
132
|
/**
|
|
122
133
|
*
|
|
@@ -124,6 +135,12 @@ export interface KernelInfo {
|
|
|
124
135
|
*
|
|
125
136
|
*/
|
|
126
137
|
export type IsConnected = boolean;
|
|
138
|
+
/**
|
|
139
|
+
*
|
|
140
|
+
* Reason for the wallet state, e.g., 'no signing provider matched'.
|
|
141
|
+
*
|
|
142
|
+
*/
|
|
143
|
+
export type Reason = string;
|
|
127
144
|
/**
|
|
128
145
|
*
|
|
129
146
|
* Whether or not a connection to a network is established.
|
|
@@ -136,6 +153,13 @@ export type IsNetworkConnected = boolean;
|
|
|
136
153
|
*
|
|
137
154
|
*/
|
|
138
155
|
export type NetworkReason = string;
|
|
156
|
+
export interface ConnectResult {
|
|
157
|
+
isConnected: IsConnected;
|
|
158
|
+
reason?: Reason;
|
|
159
|
+
isNetworkConnected: IsNetworkConnected;
|
|
160
|
+
networkReason?: NetworkReason;
|
|
161
|
+
userUrl?: UserUrl;
|
|
162
|
+
}
|
|
139
163
|
/**
|
|
140
164
|
*
|
|
141
165
|
* The network ID the wallet corresponds to.
|
|
@@ -147,16 +171,13 @@ export type NetworkId = string;
|
|
|
147
171
|
* The base URL of the ledger API.
|
|
148
172
|
*
|
|
149
173
|
*/
|
|
150
|
-
export type
|
|
174
|
+
export type LedgerApiUrl = string;
|
|
151
175
|
/**
|
|
152
176
|
*
|
|
153
|
-
*
|
|
177
|
+
* JWT authentication token.
|
|
154
178
|
*
|
|
155
179
|
*/
|
|
156
|
-
export
|
|
157
|
-
baseUrl: BaseUrl;
|
|
158
|
-
[k: string]: any;
|
|
159
|
-
}
|
|
180
|
+
export type AccessToken = string;
|
|
160
181
|
/**
|
|
161
182
|
*
|
|
162
183
|
* Network information, if connected to a network.
|
|
@@ -164,15 +185,9 @@ export interface LedgerApiConfig {
|
|
|
164
185
|
*/
|
|
165
186
|
export interface Network {
|
|
166
187
|
networkId: NetworkId;
|
|
167
|
-
ledgerApi?:
|
|
168
|
-
|
|
188
|
+
ledgerApi?: LedgerApiUrl;
|
|
189
|
+
accessToken?: AccessToken;
|
|
169
190
|
}
|
|
170
|
-
/**
|
|
171
|
-
*
|
|
172
|
-
* JWT authentication token.
|
|
173
|
-
*
|
|
174
|
-
*/
|
|
175
|
-
export type AccessToken = string;
|
|
176
191
|
/**
|
|
177
192
|
*
|
|
178
193
|
* The user identifier.
|
|
@@ -187,45 +202,13 @@ export type UserId = string;
|
|
|
187
202
|
export interface Session {
|
|
188
203
|
accessToken: AccessToken;
|
|
189
204
|
userId: UserId;
|
|
190
|
-
[k: string]: any;
|
|
191
205
|
}
|
|
192
|
-
export interface StatusEvent {
|
|
193
|
-
kernel: KernelInfo;
|
|
194
|
-
isConnected: IsConnected;
|
|
195
|
-
isNetworkConnected: IsNetworkConnected;
|
|
196
|
-
networkReason?: NetworkReason;
|
|
197
|
-
network?: Network;
|
|
198
|
-
session?: Session;
|
|
199
|
-
[k: string]: any;
|
|
200
|
-
}
|
|
201
|
-
export interface ConnectResult {
|
|
202
|
-
userUrl: UserUrl;
|
|
203
|
-
[k: string]: any;
|
|
204
|
-
}
|
|
205
|
-
export type Dar = string;
|
|
206
|
-
export type Dars = Dar[];
|
|
207
|
-
/**
|
|
208
|
-
*
|
|
209
|
-
* The prepared transaction data.
|
|
210
|
-
*
|
|
211
|
-
*/
|
|
212
|
-
export type PreparedTransaction = string;
|
|
213
|
-
/**
|
|
214
|
-
*
|
|
215
|
-
* The hash of the prepared transaction.
|
|
216
|
-
*
|
|
217
|
-
*/
|
|
218
|
-
export type PreparedTransactionHash = string;
|
|
219
206
|
/**
|
|
220
207
|
*
|
|
221
|
-
*
|
|
208
|
+
* The signature of the transaction.
|
|
222
209
|
*
|
|
223
210
|
*/
|
|
224
|
-
export
|
|
225
|
-
preparedTransaction?: PreparedTransaction;
|
|
226
|
-
preparedTransactionHash?: PreparedTransactionHash;
|
|
227
|
-
[k: string]: any;
|
|
228
|
-
}
|
|
211
|
+
export type Signature = string;
|
|
229
212
|
export type Response = string;
|
|
230
213
|
/**
|
|
231
214
|
*
|
|
@@ -287,12 +270,6 @@ export type TopologyTransactions = string;
|
|
|
287
270
|
*
|
|
288
271
|
*/
|
|
289
272
|
export type Disabled = boolean;
|
|
290
|
-
/**
|
|
291
|
-
*
|
|
292
|
-
* Reason for the wallet state, e.g., 'no signing provider matched'.
|
|
293
|
-
*
|
|
294
|
-
*/
|
|
295
|
-
export type Reason = string;
|
|
296
273
|
/**
|
|
297
274
|
*
|
|
298
275
|
* Structure representing a wallet
|
|
@@ -311,7 +288,6 @@ export interface Wallet {
|
|
|
311
288
|
topologyTransactions?: TopologyTransactions;
|
|
312
289
|
disabled?: Disabled;
|
|
313
290
|
reason?: Reason;
|
|
314
|
-
[k: string]: any;
|
|
315
291
|
}
|
|
316
292
|
/**
|
|
317
293
|
*
|
|
@@ -334,12 +310,6 @@ export interface TxChangedPendingEvent {
|
|
|
334
310
|
*
|
|
335
311
|
*/
|
|
336
312
|
export type StatusSigned = 'signed';
|
|
337
|
-
/**
|
|
338
|
-
*
|
|
339
|
-
* The signature of the transaction.
|
|
340
|
-
*
|
|
341
|
-
*/
|
|
342
|
-
export type Signature = string;
|
|
343
313
|
/**
|
|
344
314
|
*
|
|
345
315
|
* The identifier of the provider that signed the transaction.
|
|
@@ -418,7 +388,7 @@ export interface TxChangedFailedEvent {
|
|
|
418
388
|
* Structure representing the request for prepare and execute calls
|
|
419
389
|
*
|
|
420
390
|
*/
|
|
421
|
-
export interface
|
|
391
|
+
export interface PrepareExecuteParams {
|
|
422
392
|
commandId?: CommandId;
|
|
423
393
|
commands: JsCommands;
|
|
424
394
|
actAs?: ActAs;
|
|
@@ -426,22 +396,14 @@ export interface PrepareReturnParams {
|
|
|
426
396
|
disclosedContracts?: DisclosedContracts;
|
|
427
397
|
synchronizerId?: SynchronizerId;
|
|
428
398
|
packageIdSelectionPreference?: PackageIdSelectionPreference;
|
|
429
|
-
[k: string]: any;
|
|
430
399
|
}
|
|
431
400
|
/**
|
|
432
401
|
*
|
|
433
|
-
*
|
|
402
|
+
* Request to sign a message.
|
|
434
403
|
*
|
|
435
404
|
*/
|
|
436
|
-
export interface
|
|
437
|
-
|
|
438
|
-
commands: JsCommands;
|
|
439
|
-
actAs?: ActAs;
|
|
440
|
-
readAs?: ReadAs;
|
|
441
|
-
disclosedContracts?: DisclosedContracts;
|
|
442
|
-
synchronizerId?: SynchronizerId;
|
|
443
|
-
packageIdSelectionPreference?: PackageIdSelectionPreference;
|
|
444
|
-
[k: string]: any;
|
|
405
|
+
export interface SignMessageParams {
|
|
406
|
+
message: Message;
|
|
445
407
|
}
|
|
446
408
|
/**
|
|
447
409
|
*
|
|
@@ -452,23 +414,29 @@ export interface LedgerApiParams {
|
|
|
452
414
|
requestMethod: RequestMethod;
|
|
453
415
|
resource: Resource;
|
|
454
416
|
body?: Body;
|
|
455
|
-
[k: string]: any;
|
|
456
417
|
}
|
|
457
|
-
export
|
|
418
|
+
export interface StatusEvent {
|
|
419
|
+
provider: Provider;
|
|
420
|
+
connection: ConnectResult;
|
|
421
|
+
network?: Network;
|
|
422
|
+
session?: Session;
|
|
423
|
+
}
|
|
458
424
|
/**
|
|
459
425
|
*
|
|
460
426
|
* Represents a null value, used in responses where no data is returned.
|
|
461
427
|
*
|
|
462
428
|
*/
|
|
463
429
|
export type Null = null;
|
|
464
|
-
export interface DarsAvailableResult {
|
|
465
|
-
dars: Dars;
|
|
466
|
-
[k: string]: any;
|
|
467
|
-
}
|
|
468
|
-
export type PrepareReturnResult = any;
|
|
469
430
|
export interface PrepareExecuteResult {
|
|
470
431
|
userUrl: UserUrl;
|
|
471
|
-
|
|
432
|
+
}
|
|
433
|
+
/**
|
|
434
|
+
*
|
|
435
|
+
* Result of signing a message.
|
|
436
|
+
*
|
|
437
|
+
*/
|
|
438
|
+
export interface SignMessageResult {
|
|
439
|
+
signature: Signature;
|
|
472
440
|
}
|
|
473
441
|
/**
|
|
474
442
|
*
|
|
@@ -477,7 +445,6 @@ export interface PrepareExecuteResult {
|
|
|
477
445
|
*/
|
|
478
446
|
export interface LedgerApiResult {
|
|
479
447
|
response: Response;
|
|
480
|
-
[k: string]: any;
|
|
481
448
|
}
|
|
482
449
|
/**
|
|
483
450
|
*
|
|
@@ -490,7 +457,7 @@ export type AccountsChangedEvent = Wallet[];
|
|
|
490
457
|
* An array of accounts that the user has authorized the dapp to access..
|
|
491
458
|
*
|
|
492
459
|
*/
|
|
493
|
-
export type
|
|
460
|
+
export type ListAccountsResult = Wallet[];
|
|
494
461
|
/**
|
|
495
462
|
*
|
|
496
463
|
* Event emitted when a transaction changes.
|
|
@@ -503,15 +470,16 @@ export type TxChangedEvent = TxChangedPendingEvent | TxChangedSignedEvent | TxCh
|
|
|
503
470
|
*
|
|
504
471
|
*/
|
|
505
472
|
export type Status = () => Promise<StatusEvent>;
|
|
506
|
-
export type Connect = () => Promise<
|
|
473
|
+
export type Connect = () => Promise<ConnectResult>;
|
|
507
474
|
export type Disconnect = () => Promise<Null>;
|
|
508
|
-
export type
|
|
509
|
-
export type PrepareReturn = (params: PrepareReturnParams) => Promise<PrepareReturnResult>;
|
|
475
|
+
export type GetActiveNetwork = () => Promise<Network>;
|
|
510
476
|
export type PrepareExecute = (params: PrepareExecuteParams) => Promise<PrepareExecuteResult>;
|
|
477
|
+
export type SignMessage = (params: SignMessageParams) => Promise<SignMessageResult>;
|
|
511
478
|
export type LedgerApi = (params: LedgerApiParams) => Promise<LedgerApiResult>;
|
|
512
|
-
export type
|
|
479
|
+
export type Connected = () => Promise<StatusEvent>;
|
|
513
480
|
export type OnStatusChanged = () => Promise<StatusEvent>;
|
|
514
|
-
export type
|
|
515
|
-
export type
|
|
516
|
-
export type
|
|
481
|
+
export type AccountsChanged = () => Promise<AccountsChangedEvent>;
|
|
482
|
+
export type GetPrimaryAccount = () => Promise<Wallet>;
|
|
483
|
+
export type ListAccounts = () => Promise<ListAccountsResult>;
|
|
484
|
+
export type TxChanged = () => Promise<TxChangedEvent>;
|
|
517
485
|
//# sourceMappingURL=typings.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typings.d.ts","sourceRoot":"","sources":["../../../src/dapp-api/rpc-gen/typings.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"typings.d.ts","sourceRoot":"","sources":["../../../src/dapp-api/rpc-gen/typings.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/dapp-api/server.ts"],"names":[],"mappings":"AAGA,OAAO,OAAO,MAAM,SAAS,CAAA;AAG7B,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAG7B,OAAO,EAAE,KAAK,EAAE,MAAM,mCAAmC,CAAA;AACzD,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAA;AACzE,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/dapp-api/server.ts"],"names":[],"mappings":"AAGA,OAAO,OAAO,MAAM,SAAS,CAAA;AAG7B,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAG7B,OAAO,EAAE,KAAK,EAAE,MAAM,mCAAmC,CAAA;AACzD,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAA;AACzE,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAC7B,OAAO,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAA;AAC5E,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAO9D,eAAO,MAAM,IAAI,GACb,OAAO,MAAM,EACb,KAAK,OAAO,CAAC,OAAO,EACpB,QAAQ,MAAM,EACd,QAAQ,MAAM,EACd,YAAY,UAAU,EACtB,SAAS,MAAM,EACf,SAAS,MAAM,EACf,cAAc,YAAY,EAC1B,qBAAqB,mBAAmB,EACxC,aAAa,WAAW,EACxB,OAAO,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,kGAuFlC,CAAA"}
|
package/dist/dapp-api/server.js
CHANGED
|
@@ -3,11 +3,62 @@
|
|
|
3
3
|
import cors from 'cors';
|
|
4
4
|
import { dappController } from './controller.js';
|
|
5
5
|
import { jsonRpcHandler } from '../middleware/jsonRpcHandler.js';
|
|
6
|
-
|
|
6
|
+
function writeSSE(res, event, data) {
|
|
7
|
+
res.write(`event: ${event}\n`);
|
|
8
|
+
res.write(`data: ${JSON.stringify(data)}\n\n`);
|
|
9
|
+
}
|
|
7
10
|
export const dapp = (route, app, logger, server, kernelInfo, dappUrl, userUrl, serverConfig, notificationService, authService, store) => {
|
|
8
11
|
app.use(cors({
|
|
9
12
|
origin: serverConfig.allowedOrigins,
|
|
10
13
|
}));
|
|
14
|
+
// SSE endpoint for real-time notifications (must be registered before the JSON-RPC route)
|
|
15
|
+
app.get(`${route}/events`, async (req, res) => {
|
|
16
|
+
const context = req.authContext;
|
|
17
|
+
if (!context) {
|
|
18
|
+
res.status(401).json({ error: 'Unauthenticated' });
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
const newStore = store.withAuthContext(context);
|
|
22
|
+
const session = await newStore.getSession();
|
|
23
|
+
const sessionId = session?.id;
|
|
24
|
+
if (!sessionId) {
|
|
25
|
+
res.status(401).json({ error: 'No session' });
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
logger.debug(`SSE connected for user: ${context.userId} with session ID: ${sessionId}`);
|
|
29
|
+
res.setHeader('Content-Type', 'text/event-stream');
|
|
30
|
+
res.setHeader('Cache-Control', 'no-cache');
|
|
31
|
+
res.setHeader('Connection', 'keep-alive');
|
|
32
|
+
res.setHeader('X-Accel-Buffering', 'no');
|
|
33
|
+
res.flushHeaders?.();
|
|
34
|
+
const notifier = notificationService.getNotifier(context.userId);
|
|
35
|
+
const onAccountsChanged = (...event) => {
|
|
36
|
+
writeSSE(res, 'accountsChanged', event);
|
|
37
|
+
};
|
|
38
|
+
const onStatusChanged = (...event) => {
|
|
39
|
+
logger.debug({ sessionId }, 'Emitting statusChanged event via SSE');
|
|
40
|
+
writeSSE(res, 'statusChanged', event);
|
|
41
|
+
};
|
|
42
|
+
const onConnected = (...event) => {
|
|
43
|
+
writeSSE(res, 'connected', event);
|
|
44
|
+
};
|
|
45
|
+
const onTxChanged = (...event) => {
|
|
46
|
+
writeSSE(res, 'txChanged', event);
|
|
47
|
+
};
|
|
48
|
+
notifier.on('accountsChanged', onAccountsChanged);
|
|
49
|
+
notifier.on('connected', onConnected);
|
|
50
|
+
notifier.on('statusChanged', onStatusChanged);
|
|
51
|
+
notifier.on('txChanged', onTxChanged);
|
|
52
|
+
const cleanup = () => {
|
|
53
|
+
logger.debug('SSE client disconnected');
|
|
54
|
+
notifier.removeListener('accountsChanged', onAccountsChanged);
|
|
55
|
+
notifier.removeListener('connected', onConnected);
|
|
56
|
+
notifier.removeListener('statusChanged', onStatusChanged);
|
|
57
|
+
notifier.removeListener('txChanged', onTxChanged);
|
|
58
|
+
};
|
|
59
|
+
req.on('close', cleanup);
|
|
60
|
+
req.on('error', cleanup);
|
|
61
|
+
});
|
|
11
62
|
app.use(route, (req, res, next) => {
|
|
12
63
|
const origin = req.headers.origin ?? null;
|
|
13
64
|
jsonRpcHandler({
|
|
@@ -15,49 +66,5 @@ export const dapp = (route, app, logger, server, kernelInfo, dappUrl, userUrl, s
|
|
|
15
66
|
logger,
|
|
16
67
|
})(req, res, next);
|
|
17
68
|
});
|
|
18
|
-
const io = new SocketIoServer(server, {
|
|
19
|
-
cors: {
|
|
20
|
-
origin: serverConfig.allowedOrigins,
|
|
21
|
-
methods: ['GET', 'POST'],
|
|
22
|
-
},
|
|
23
|
-
});
|
|
24
|
-
io.on('connection', async (socket) => {
|
|
25
|
-
let sessionId = undefined;
|
|
26
|
-
const context = await authService.verifyToken(socket.handshake.auth.token);
|
|
27
|
-
if (context !== undefined) {
|
|
28
|
-
const newStore = store.withAuthContext(context);
|
|
29
|
-
const session = await newStore.getSession();
|
|
30
|
-
sessionId = session?.id;
|
|
31
|
-
}
|
|
32
|
-
if (context && sessionId) {
|
|
33
|
-
socket.join(sessionId);
|
|
34
|
-
logger.debug(`Socket.io connected for user: ${context.userId} with session ID: ${sessionId}`);
|
|
35
|
-
const notifier = notificationService.getNotifier(context.userId);
|
|
36
|
-
const onAccountsChanged = (...event) => {
|
|
37
|
-
io.to(sessionId).emit('accountsChanged', ...event);
|
|
38
|
-
};
|
|
39
|
-
const onStatusChanged = (...event) => {
|
|
40
|
-
logger.debug({ sessionId }, 'Emitting statusChanged event via Socket.io');
|
|
41
|
-
io.to(sessionId).emit('statusChanged', ...event);
|
|
42
|
-
};
|
|
43
|
-
const onConnected = (...event) => {
|
|
44
|
-
io.to(sessionId).emit('onConnected', ...event);
|
|
45
|
-
};
|
|
46
|
-
const onTxChanged = (...event) => {
|
|
47
|
-
io.to(sessionId).emit('txChanged', ...event);
|
|
48
|
-
};
|
|
49
|
-
notifier.on('accountsChanged', onAccountsChanged);
|
|
50
|
-
notifier.on('onConnected', onConnected);
|
|
51
|
-
notifier.on('statusChanged', onStatusChanged);
|
|
52
|
-
notifier.on('txChanged', onTxChanged);
|
|
53
|
-
socket.on('disconnect', () => {
|
|
54
|
-
logger.debug('Socket.io client disconnected');
|
|
55
|
-
notifier.removeListener('accountsChanged', onAccountsChanged);
|
|
56
|
-
notifier.removeListener('onConnected', onConnected);
|
|
57
|
-
notifier.removeListener('statusChanged', onStatusChanged);
|
|
58
|
-
notifier.removeListener('txChanged', onTxChanged);
|
|
59
|
-
});
|
|
60
|
-
}
|
|
61
|
-
});
|
|
62
69
|
return server;
|
|
63
70
|
};
|
|
@@ -18,7 +18,7 @@ const authService = {
|
|
|
18
18
|
};
|
|
19
19
|
const configPath = '../test/config.json';
|
|
20
20
|
const config = ConfigUtils.loadConfigFile(configPath);
|
|
21
|
-
const store = new StoreInternal(config.
|
|
21
|
+
const store = new StoreInternal(config.bootstrap, pino(sink()));
|
|
22
22
|
const notificationService = new NotificationService(pino(sink()));
|
|
23
23
|
test('call connect rpc', async () => {
|
|
24
24
|
const app = express();
|
|
@@ -35,10 +35,6 @@ test('call connect rpc', async () => {
|
|
|
35
35
|
id: 0,
|
|
36
36
|
jsonrpc: '2.0',
|
|
37
37
|
result: {
|
|
38
|
-
kernel: {
|
|
39
|
-
id: 'remote-da',
|
|
40
|
-
clientType: 'remote',
|
|
41
|
-
},
|
|
42
38
|
isConnected: false,
|
|
43
39
|
isNetworkConnected: false,
|
|
44
40
|
networkReason: 'Unauthenticated',
|
package/dist/example-config.d.ts
CHANGED
|
@@ -10,6 +10,7 @@ declare const _default: {
|
|
|
10
10
|
allowedOrigins: "*";
|
|
11
11
|
requestSizeLimit: string;
|
|
12
12
|
requestRateLimit: number;
|
|
13
|
+
admin: string;
|
|
13
14
|
};
|
|
14
15
|
signingStore: {
|
|
15
16
|
connection: {
|
|
@@ -22,6 +23,8 @@ declare const _default: {
|
|
|
22
23
|
type: "sqlite";
|
|
23
24
|
database: string;
|
|
24
25
|
};
|
|
26
|
+
};
|
|
27
|
+
bootstrap: {
|
|
25
28
|
idps: ({
|
|
26
29
|
id: string;
|
|
27
30
|
type: "self_signed";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"example-config.d.ts","sourceRoot":"","sources":["../src/example-config.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"example-config.d.ts","sourceRoot":"","sources":["../src/example-config.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,wBA6FkB"}
|
package/dist/example-config.js
CHANGED
|
@@ -11,7 +11,8 @@ export default {
|
|
|
11
11
|
userPath: '/api/v0/user',
|
|
12
12
|
allowedOrigins: '*',
|
|
13
13
|
requestSizeLimit: '5mb',
|
|
14
|
-
requestRateLimit:
|
|
14
|
+
requestRateLimit: 10000,
|
|
15
|
+
admin: 'sub',
|
|
15
16
|
},
|
|
16
17
|
signingStore: {
|
|
17
18
|
connection: {
|
|
@@ -24,6 +25,8 @@ export default {
|
|
|
24
25
|
type: 'sqlite',
|
|
25
26
|
database: 'store.sqlite',
|
|
26
27
|
},
|
|
28
|
+
},
|
|
29
|
+
bootstrap: {
|
|
27
30
|
idps: [
|
|
28
31
|
{
|
|
29
32
|
id: 'idp-example-self-signed',
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AA4DA,QAAA,MAAM,OAAO;;;;;;CAAiB,CAAA;AAE9B,MAAM,MAAM,UAAU,GAAG,OAAO,OAAO,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
import { Option, Command } from '@commander-js/extra-typings';
|
|
5
5
|
import { initialize } from './init.js';
|
|
6
6
|
import { createCLI } from '@canton-network/core-wallet-store-sql';
|
|
7
|
+
import { createCLI as createSigningCLI } from '@canton-network/core-signing-store-sql';
|
|
7
8
|
import { ConfigUtils } from './config/ConfigUtils.js';
|
|
8
9
|
import pino from 'pino';
|
|
9
10
|
import z from 'zod';
|
|
@@ -52,11 +53,20 @@ const options = program.opts();
|
|
|
52
53
|
let db = new Command('db')
|
|
53
54
|
.description('Database management commands')
|
|
54
55
|
.allowUnknownOption(true);
|
|
56
|
+
let signingDb = new Command('signing-db')
|
|
57
|
+
.description('Signing database management commands')
|
|
58
|
+
.allowUnknownOption(true);
|
|
55
59
|
const hasDb = process.argv.slice(2).includes('db');
|
|
56
60
|
if (hasDb) {
|
|
57
61
|
const config = ConfigUtils.loadConfigFile(options.config);
|
|
58
|
-
db = createCLI(config.store);
|
|
62
|
+
db = createCLI(config.store, config.bootstrap);
|
|
63
|
+
}
|
|
64
|
+
const hasSigningDb = process.argv.slice(2).includes('signing-db');
|
|
65
|
+
if (hasSigningDb) {
|
|
66
|
+
const config = ConfigUtils.loadConfigFile(options.config);
|
|
67
|
+
signingDb = createSigningCLI(config.signingStore);
|
|
59
68
|
}
|
|
60
69
|
program.addCommand(db.name('db'));
|
|
70
|
+
program.addCommand(signingDb.name('signing-db'));
|
|
61
71
|
// Now parse normally for execution/help
|
|
62
72
|
program.parseAsync(process.argv);
|
package/dist/init.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAqB7B,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAqB7B,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAyIvC,wBAAsB,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,iBA0IhE"}
|