@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.
Files changed (70) hide show
  1. package/README.md +37 -0
  2. package/dist/config/Config.d.ts +19 -15
  3. package/dist/config/Config.d.ts.map +1 -1
  4. package/dist/config/Config.js +7 -3
  5. package/dist/config/Config.test.js +8 -8
  6. package/dist/config/ConfigUtils.js +6 -6
  7. package/dist/dapp-api/controller.d.ts +7 -6
  8. package/dist/dapp-api/controller.d.ts.map +1 -1
  9. package/dist/dapp-api/controller.js +75 -50
  10. package/dist/dapp-api/rpc-gen/index.d.ts +21 -18
  11. package/dist/dapp-api/rpc-gen/index.d.ts.map +1 -1
  12. package/dist/dapp-api/rpc-gen/index.js +7 -6
  13. package/dist/dapp-api/rpc-gen/typings.d.ts +69 -101
  14. package/dist/dapp-api/rpc-gen/typings.d.ts.map +1 -1
  15. package/dist/dapp-api/server.d.ts.map +1 -1
  16. package/dist/dapp-api/server.js +52 -45
  17. package/dist/dapp-api/server.test.js +1 -5
  18. package/dist/example-config.d.ts +3 -0
  19. package/dist/example-config.d.ts.map +1 -1
  20. package/dist/example-config.js +4 -1
  21. package/dist/index.d.ts.map +1 -1
  22. package/dist/index.js +11 -1
  23. package/dist/init.d.ts.map +1 -1
  24. package/dist/init.js +52 -5
  25. package/dist/ledger/wallet-sync-service.d.ts.map +1 -1
  26. package/dist/ledger/wallet-sync-service.js +30 -20
  27. package/dist/ledger/wallet-sync-service.test.js +339 -0
  28. package/dist/middleware/jwtAuth.d.ts.map +1 -1
  29. package/dist/middleware/jwtAuth.js +3 -1
  30. package/dist/user-api/controller.d.ts +3 -1
  31. package/dist/user-api/controller.d.ts.map +1 -1
  32. package/dist/user-api/controller.js +128 -47
  33. package/dist/user-api/rpc-gen/index.d.ts +6 -0
  34. package/dist/user-api/rpc-gen/index.d.ts.map +1 -1
  35. package/dist/user-api/rpc-gen/index.js +2 -0
  36. package/dist/user-api/rpc-gen/typings.d.ts +37 -24
  37. package/dist/user-api/rpc-gen/typings.d.ts.map +1 -1
  38. package/dist/user-api/server.d.ts +1 -1
  39. package/dist/user-api/server.d.ts.map +1 -1
  40. package/dist/user-api/server.js +2 -2
  41. package/dist/user-api/server.test.js +1 -1
  42. package/dist/utils.d.ts +0 -1
  43. package/dist/utils.d.ts.map +1 -1
  44. package/dist/web/frontend/404/index.html +2 -3
  45. package/dist/web/frontend/approve/index.html +4 -5
  46. package/dist/web/frontend/assets/404-BQsvObfu.js +8 -0
  47. package/dist/web/frontend/assets/approve-BLORPbEM.js +17 -0
  48. package/dist/web/frontend/assets/{callback-B-wmBVDs.js → callback-C7kRcm3U.js} +1 -1
  49. package/dist/web/frontend/assets/index-DPbaEEZi.js +1722 -0
  50. package/dist/web/frontend/assets/{decode-CLJkuAIr.js → index-NP2zGQqX.js} +1 -1
  51. package/dist/web/frontend/assets/login-p5H_f9In.js +7 -0
  52. package/dist/web/frontend/assets/settings-89wZp5vZ.js +37 -0
  53. package/dist/web/frontend/assets/{state-CziDYJOu.js → state-TjGUBiUh.js} +1 -1
  54. package/dist/web/frontend/assets/transactions-BnROcA2_.js +28 -0
  55. package/dist/web/frontend/assets/wallets-TPeR2lS2.js +63 -0
  56. package/dist/web/frontend/callback/index.html +2 -3
  57. package/dist/web/frontend/index.html +1 -2
  58. package/dist/web/frontend/login/index.html +3 -4
  59. package/dist/web/frontend/settings/index.html +3 -4
  60. package/dist/web/frontend/transactions/index.html +4 -5
  61. package/dist/web/frontend/wallets/index.html +3 -4
  62. package/package.json +26 -21
  63. package/dist/web/frontend/assets/404-C5sXhYIJ.js +0 -16
  64. package/dist/web/frontend/assets/approve-DLsPdBvo.js +0 -227
  65. package/dist/web/frontend/assets/index-CxDOwxiY.css +0 -1
  66. package/dist/web/frontend/assets/index-Dfw8gEND.js +0 -1158
  67. package/dist/web/frontend/assets/login-BiJNU2kh.js +0 -186
  68. package/dist/web/frontend/assets/settings-B8ayu_0I.js +0 -28
  69. package/dist/web/frontend/assets/transactions-D2Yx5LYD.js +0 -140
  70. 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 Wallet Gateway.
92
+ * The unique identifier of the Provider.
88
93
  *
89
94
  */
90
- export type Id = string;
95
+ export type ProviderId = string;
91
96
  /**
92
97
  *
93
- * The type of client that implements the Wallet Gateway.
98
+ * The version of the Provider.
94
99
  *
95
100
  */
96
- export type ClientType = 'browser' | 'desktop' | 'mobile' | 'remote';
101
+ export type Version = string;
97
102
  /**
98
103
  *
99
- * The URL of the Wallet Gateway.
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 Wallet Gateway.
122
+ * Represents a Provider.
112
123
  *
113
124
  */
114
- export interface KernelInfo {
115
- id: Id;
116
- clientType: ClientType;
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 BaseUrl = string;
174
+ export type LedgerApiUrl = string;
151
175
  /**
152
176
  *
153
- * Ledger API configuration.
177
+ * JWT authentication token.
154
178
  *
155
179
  */
156
- export interface LedgerApiConfig {
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?: LedgerApiConfig;
168
- [k: string]: any;
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
- * Structure representing the result of a prepareReturn call
208
+ * The signature of the transaction.
222
209
  *
223
210
  */
224
- export interface JsPrepareSubmissionResponse {
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 PrepareReturnParams {
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
- * Structure representing the request for prepare and execute calls
402
+ * Request to sign a message.
434
403
  *
435
404
  */
436
- export interface PrepareExecuteParams {
437
- commandId?: CommandId;
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 type StatusEventAsync = StatusEvent & ConnectResult;
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
- [k: string]: any;
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 RequestAccountsResult = Wallet[];
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<StatusEventAsync>;
473
+ export type Connect = () => Promise<ConnectResult>;
507
474
  export type Disconnect = () => Promise<Null>;
508
- export type DarsAvailable = () => Promise<DarsAvailableResult>;
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 OnConnected = () => Promise<StatusEvent>;
479
+ export type Connected = () => Promise<StatusEvent>;
513
480
  export type OnStatusChanged = () => Promise<StatusEvent>;
514
- export type OnAccountsChanged = () => Promise<AccountsChangedEvent>;
515
- export type RequestAccounts = () => Promise<RequestAccountsResult>;
516
- export type OnTxChanged = () => Promise<TxChangedEvent>;
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":"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"}
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;AAE7B,OAAO,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAA;AAC5E,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAE9D,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,kGAsFlC,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"}
@@ -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
- import { Server as SocketIoServer } from 'socket.io';
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.store, pino(sink()));
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',
@@ -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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,wBA0FkB"}
1
+ {"version":3,"file":"example-config.d.ts","sourceRoot":"","sources":["../src/example-config.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,wBA6FkB"}
@@ -11,7 +11,8 @@ export default {
11
11
  userPath: '/api/v0/user',
12
12
  allowedOrigins: '*',
13
13
  requestSizeLimit: '5mb',
14
- requestRateLimit: 100,
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',
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AA2DA,QAAA,MAAM,OAAO;;;;;;CAAiB,CAAA;AAE9B,MAAM,MAAM,UAAU,GAAG,OAAO,OAAO,CAAA"}
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);
@@ -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;AAmFvC,wBAAsB,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,iBAoIhE"}
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"}