@canton-network/wallet-gateway-remote 0.5.1 → 0.6.1

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 (55) hide show
  1. package/README.md +8 -0
  2. package/dist/auth/jwt-auth-service.d.ts.map +1 -1
  3. package/dist/auth/jwt-auth-service.js +2 -3
  4. package/dist/auth/jwt-unsafe-auth-service.d.ts.map +1 -1
  5. package/dist/auth/jwt-unsafe-auth-service.js +2 -3
  6. package/dist/config/Config.d.ts +61 -659
  7. package/dist/config/Config.d.ts.map +1 -1
  8. package/dist/config/Config.js +2 -0
  9. package/dist/config/Config.test.js +7 -10
  10. package/dist/config/ConfigUtils.d.ts.map +1 -1
  11. package/dist/config/ConfigUtils.js +59 -1
  12. package/dist/dapp-api/controller.d.ts.map +1 -1
  13. package/dist/dapp-api/controller.js +55 -30
  14. package/dist/dapp-api/rpc-gen/typings.d.ts +30 -3
  15. package/dist/dapp-api/rpc-gen/typings.d.ts.map +1 -1
  16. package/dist/dapp-api/server.test.js +2 -0
  17. package/dist/init.d.ts.map +1 -1
  18. package/dist/init.js +50 -2
  19. package/dist/ledger/party-allocation-service.d.ts +20 -0
  20. package/dist/ledger/party-allocation-service.d.ts.map +1 -1
  21. package/dist/ledger/party-allocation-service.js +22 -2
  22. package/dist/ledger/party-allocation-service.test.js +9 -5
  23. package/dist/ledger/wallet-sync-service.d.ts.map +1 -1
  24. package/dist/ledger/wallet-sync-service.js +1 -0
  25. package/dist/user-api/controller.d.ts +2 -1
  26. package/dist/user-api/controller.d.ts.map +1 -1
  27. package/dist/user-api/controller.js +119 -88
  28. package/dist/user-api/rpc-gen/index.d.ts +6 -3
  29. package/dist/user-api/rpc-gen/index.d.ts.map +1 -1
  30. package/dist/user-api/rpc-gen/index.js +2 -1
  31. package/dist/user-api/rpc-gen/typings.d.ts +96 -33
  32. package/dist/user-api/rpc-gen/typings.d.ts.map +1 -1
  33. package/dist/user-api/server.test.js +5 -6
  34. package/dist/utils.d.ts +9 -0
  35. package/dist/utils.d.ts.map +1 -0
  36. package/dist/utils.js +18 -0
  37. package/dist/web/frontend/404/index.html +2 -2
  38. package/dist/web/frontend/approve/index.html +4 -4
  39. package/dist/web/frontend/assets/{404-C4ltj2Y3.js → 404-CT3y_TOo.js} +1 -1
  40. package/dist/web/frontend/assets/{approve-Drc1zW1z.js → approve-aBUJf8IZ.js} +1 -1
  41. package/dist/web/frontend/assets/{callback-BBgKxZBh.js → callback-F-xYJVy-.js} +1 -1
  42. package/dist/web/frontend/assets/{handle-errors-C_r_-A1k.js → handle-errors-C5Ovml71.js} +1 -1
  43. package/dist/web/frontend/assets/{index-_AVK9fEz.js → index-CkNk7mKn.js} +168 -123
  44. package/dist/web/frontend/assets/login-BbI2P4fJ.js +159 -0
  45. package/dist/web/frontend/assets/{networks-DSlcKT60.js → networks-amJnI8M-.js} +13 -9
  46. package/dist/web/frontend/assets/{state-BahUv9dS.js → state-DvPMGcqb.js} +2 -2
  47. package/dist/web/frontend/assets/wallets-DC9a3FFG.js +244 -0
  48. package/dist/web/frontend/callback/index.html +2 -2
  49. package/dist/web/frontend/index.html +1 -1
  50. package/dist/web/frontend/login/index.html +3 -3
  51. package/dist/web/frontend/networks/index.html +4 -4
  52. package/dist/web/frontend/wallets/index.html +4 -4
  53. package/package.json +18 -16
  54. package/dist/web/frontend/assets/login-x46HxVRr.js +0 -159
  55. package/dist/web/frontend/assets/wallets-BXR4V066.js +0 -214
@@ -4,10 +4,11 @@
4
4
  /* eslint-disable @typescript-eslint/no-unused-vars */
5
5
  import { LedgerClient } from '@canton-network/core-ledger-client';
6
6
  import buildController from './rpc-gen/index.js';
7
- import { assertConnected, AuthTokenProvider, } from '@canton-network/core-wallet-auth';
7
+ import { assertConnected, authSchema, AuthTokenProvider, } from '@canton-network/core-wallet-auth';
8
8
  import { SigningProvider, } from '@canton-network/core-signing-lib';
9
9
  import { PartyAllocationService, } from '../ledger/party-allocation-service.js';
10
10
  import { WalletSyncService } from '../ledger/wallet-sync-service.js';
11
+ import { networkStatus } from '../utils.js';
11
12
  export const userController = (kernelInfo, store, notificationService, authContext, drivers, _logger) => {
12
13
  const logger = _logger.child({ component: 'user-controller' });
13
14
  return buildController({
@@ -16,79 +17,18 @@ export const userController = (kernelInfo, store, notificationService, authConte
16
17
  const ledgerApi = {
17
18
  baseUrl: network.ledgerApi ?? '',
18
19
  };
19
- let auth;
20
- if (network.auth.type === 'implicit') {
21
- auth = {
22
- type: 'implicit',
23
- identityProviderId: network.auth.identityProviderId,
24
- issuer: network.auth.issuer ?? '',
25
- configUrl: network.auth.configUrl ?? '',
26
- audience: network.auth.audience ?? '',
27
- scope: network.auth.scope ?? '',
28
- clientId: network.auth.clientId ?? '',
29
- admin: {
30
- clientId: network.auth.admin?.clientId ?? '',
31
- clientSecret: network.auth.admin?.clientSecret ?? '',
32
- },
33
- };
34
- }
35
- else if (network.auth.type === 'password') {
36
- auth = {
37
- type: 'password',
38
- identityProviderId: network.auth.identityProviderId,
39
- issuer: network.auth.issuer ?? '',
40
- configUrl: network.auth.configUrl ?? '',
41
- tokenUrl: network.auth.tokenUrl ?? '',
42
- grantType: network.auth.grantType ?? '',
43
- scope: network.auth.scope ?? '',
44
- clientId: network.auth.clientId ?? '',
45
- audience: network.auth.audience ?? '',
46
- admin: {
47
- clientId: network.auth.admin?.clientId ?? '',
48
- clientSecret: network.auth.admin?.clientSecret ?? '',
49
- },
50
- };
51
- }
52
- else if (network.auth.type === 'client_credentials') {
53
- auth = {
54
- type: 'client_credentials',
55
- identityProviderId: network.auth.identityProviderId,
56
- issuer: network.auth.issuer ?? '',
57
- configUrl: network.auth.configUrl ?? '',
58
- audience: network.auth.audience ?? '',
59
- scope: network.auth.scope ?? '',
60
- clientId: network.auth.clientId ?? '',
61
- clientSecret: network.auth.clientSecret ?? '',
62
- admin: {
63
- clientId: network.auth.admin?.clientId ?? '',
64
- clientSecret: network.auth.admin?.clientSecret ?? '',
65
- },
66
- };
67
- }
68
- else if (network.auth.type === 'self_signed') {
69
- auth = {
70
- type: 'self_signed',
71
- identityProviderId: network.auth.identityProviderId,
72
- issuer: network.auth.issuer ?? '',
73
- audience: network.auth.audience ?? '',
74
- scope: network.auth.scope ?? '',
75
- clientId: network.auth.clientId ?? '',
76
- clientSecret: network.auth.clientSecret ?? '',
77
- admin: {
78
- clientId: network.auth.admin?.clientId ?? '',
79
- clientSecret: network.auth.admin?.clientSecret ?? '',
80
- },
81
- };
82
- }
83
- else {
84
- throw new Error(`Unsupported auth type: ${network.auth.type}`);
85
- }
20
+ const auth = authSchema.parse(network.auth);
21
+ const adminAuth = network.adminAuth
22
+ ? authSchema.parse(network.adminAuth)
23
+ : undefined;
86
24
  const newNetwork = {
87
25
  name: network.name,
88
26
  id: network.id,
89
27
  description: network.description,
90
28
  synchronizerId: network.synchronizerId,
29
+ identityProviderId: network.identityProviderId,
91
30
  auth,
31
+ adminAuth,
92
32
  ledgerApi,
93
33
  };
94
34
  // TODO: Add an explicit updateNetwork method to the User API spec and controller
@@ -105,32 +45,39 @@ export const userController = (kernelInfo, store, notificationService, authConte
105
45
  await store.removeNetwork(params.networkName);
106
46
  return null;
107
47
  },
48
+ listNetworks: async () => Promise.resolve({ networks: await store.listNetworks() }),
49
+ listIdps: async () => Promise.resolve({ idps: await store.listIdps() }),
108
50
  createWallet: async (params) => {
109
51
  logger.info(`Allocating party with params: ${JSON.stringify(params)}`);
52
+ const { signingProviderId, signingProviderContext, primary, networkId, partyHint, } = params;
110
53
  const userId = assertConnected(authContext).userId;
111
54
  const notifier = notificationService.getNotifier(userId);
112
55
  const network = await store.getCurrentNetwork();
113
56
  if (network === undefined) {
114
57
  throw new Error('No network session found');
115
58
  }
116
- const tokenProvider = new AuthTokenProvider(network.auth, logger);
59
+ const idp = await store.getIdp(network.identityProviderId);
60
+ const tokenProvider = new AuthTokenProvider(idp, network.auth, network.adminAuth, logger);
117
61
  const partyAllocator = new PartyAllocationService(network.synchronizerId, tokenProvider, network.ledgerApi.baseUrl, logger);
118
- const driver = drivers[params.signingProviderId]?.controller(userId);
62
+ const driver = drivers[signingProviderId]?.controller(userId);
119
63
  if (!driver) {
120
- throw new Error(`Signing provider ${params.signingProviderId} not supported`);
64
+ throw new Error(`Signing provider ${signingProviderId} not supported`);
121
65
  }
122
66
  let party;
123
67
  let publicKey;
124
- switch (params.signingProviderId) {
68
+ let txId = '';
69
+ let walletStatus = 'allocated';
70
+ let topologyTransactions = [];
71
+ switch (signingProviderId) {
125
72
  case SigningProvider.PARTICIPANT: {
126
- party = await partyAllocator.allocateParty(userId, params.partyHint);
73
+ party = await partyAllocator.allocateParty(userId, partyHint);
127
74
  break;
128
75
  }
129
76
  case SigningProvider.WALLET_KERNEL: {
130
77
  const key = await driver.createKey({
131
- name: params.partyHint,
78
+ name: partyHint,
132
79
  });
133
- party = await partyAllocator.allocateParty(userId, params.partyHint, key.publicKey, async (hash) => {
80
+ party = await partyAllocator.allocateParty(userId, partyHint, key.publicKey, async (hash) => {
134
81
  const { signature } = await driver.signTransaction({
135
82
  tx: '',
136
83
  txHash: hash,
@@ -141,23 +88,95 @@ export const userController = (kernelInfo, store, notificationService, authConte
141
88
  publicKey = key.publicKey;
142
89
  break;
143
90
  }
91
+ case SigningProvider.FIREBLOCKS: {
92
+ const keys = await driver.getKeys();
93
+ const key = keys?.keys?.find((k) => k.name === 'Canton Party');
94
+ if (!key)
95
+ throw new Error('Fireblocks key not found');
96
+ if (signingProviderContext) {
97
+ walletStatus = 'created';
98
+ const { signature, status } = await driver.getTransaction({
99
+ userId,
100
+ txId: signingProviderContext.externalTxId,
101
+ });
102
+ if (!['pending', 'signed'].includes(status)) {
103
+ await store.removeWallet(signingProviderContext.partyId);
104
+ }
105
+ if (signature) {
106
+ await partyAllocator.allocatePartyWithExistingWallet(signingProviderContext.namespace, signingProviderContext.topologyTransactions.split(', '), Buffer.from(signature, 'hex').toString('base64'), userId);
107
+ walletStatus = 'allocated';
108
+ }
109
+ party = {
110
+ partyId: signingProviderContext.partyId,
111
+ namespace: signingProviderContext.namespace,
112
+ hint: partyHint,
113
+ };
114
+ }
115
+ else {
116
+ const formattedPublicKey = Buffer.from(key.publicKey, 'hex').toString('base64');
117
+ const namespace = partyAllocator.createFingerprintFromKey(formattedPublicKey);
118
+ const transactions = await partyAllocator.generateTopologyTransactions(partyHint, formattedPublicKey);
119
+ topologyTransactions =
120
+ transactions.topologyTransactions;
121
+ let partyId = '';
122
+ const { status, txId: id } = await driver.signTransaction({
123
+ tx: '',
124
+ txHash: Buffer.from(transactions.multiHash, 'base64').toString('hex'),
125
+ publicKey: key.publicKey,
126
+ });
127
+ if (status === 'signed') {
128
+ const { signature } = await driver.getTransaction({
129
+ userId,
130
+ txId: id,
131
+ });
132
+ partyId =
133
+ await partyAllocator.allocatePartyWithExistingWallet(namespace, transactions.topologyTransactions, Buffer.from(signature, 'hex').toString('base64'), userId);
134
+ }
135
+ else {
136
+ txId = id;
137
+ walletStatus = 'created';
138
+ }
139
+ party = {
140
+ partyId,
141
+ namespace,
142
+ hint: partyHint,
143
+ };
144
+ }
145
+ publicKey = key.publicKey;
146
+ break;
147
+ }
144
148
  default:
145
- throw new Error(`Unsupported signing provider: ${params.signingProviderId}`);
149
+ throw new Error(`Unsupported signing provider: ${signingProviderId}`);
146
150
  }
151
+ const { partyId, ...partyArgs } = party;
147
152
  const wallet = {
148
- signingProviderId: params.signingProviderId,
149
- networkId: params.networkId,
150
- primary: params.primary ?? false,
151
- publicKey: publicKey || party.namespace,
152
- ...party,
153
+ signingProviderId,
154
+ networkId,
155
+ primary: primary ?? false,
156
+ publicKey: publicKey || partyArgs.namespace,
157
+ externalTxId: txId,
158
+ topologyTransactions: topologyTransactions?.join(', ') ?? '',
159
+ status: walletStatus,
160
+ partyId: partyId !== ''
161
+ ? partyId
162
+ : `${partyArgs.hint}::${partyArgs.namespace}`,
163
+ ...partyArgs,
153
164
  };
154
- await store.addWallet(wallet);
165
+ if (signingProviderContext && walletStatus === 'allocated') {
166
+ await store.updateWallet({
167
+ partyId: wallet.partyId,
168
+ status: wallet.status,
169
+ });
170
+ }
171
+ else if (!signingProviderContext) {
172
+ await store.addWallet(wallet);
173
+ }
155
174
  const wallets = await store.getWallets();
156
175
  notifier?.emit('accountsChanged', wallets);
157
176
  return { wallet };
158
177
  },
159
178
  setPrimaryWallet: async (params) => {
160
- store.setPrimaryWallet(params.partyId);
179
+ await store.setPrimaryWallet(params.partyId);
161
180
  const notifier = authContext?.userId
162
181
  ? notificationService.getNotifier(authContext.userId)
163
182
  : undefined;
@@ -310,7 +329,6 @@ export const userController = (kernelInfo, store, notificationService, authConte
310
329
  throw new Error(`Unsupported signing provider: ${wallet.signingProviderId}`);
311
330
  }
312
331
  },
313
- listNetworks: async () => Promise.resolve({ networks: await store.listNetworks() }),
314
332
  addSession: async function (params) {
315
333
  try {
316
334
  await store.setSession({
@@ -321,15 +339,23 @@ export const userController = (kernelInfo, store, notificationService, authConte
321
339
  // Assumption: `setSession` calls `assertConnected`, so its safe to declare that the authContext is defined.
322
340
  const { userId, accessToken } = authContext;
323
341
  const notifier = notificationService.getNotifier(userId);
342
+ const ledgerClient = new LedgerClient(new URL(network.ledgerApi.baseUrl), logger, false, accessToken);
343
+ const status = await networkStatus(ledgerClient);
324
344
  notifier.emit('onConnected', {
325
- kernel: kernelInfo,
345
+ status: {
346
+ kernel: kernelInfo,
347
+ isConnected: true,
348
+ isNetworkConnected: status.isConnected,
349
+ networkReason: status.reason ? status.reason : 'OK',
350
+ networkId: network.id,
351
+ },
326
352
  sessionToken: accessToken,
327
- networkId: network.id,
328
353
  });
329
354
  return Promise.resolve({
330
355
  accessToken,
331
356
  network,
332
- status: 'connected',
357
+ status: status.isConnected ? 'connected' : 'disconnected',
358
+ reason: status.reason ? status.reason : 'OK',
333
359
  });
334
360
  }
335
361
  catch (error) {
@@ -343,12 +369,17 @@ export const userController = (kernelInfo, store, notificationService, authConte
343
369
  return { sessions: [] };
344
370
  }
345
371
  const network = await store.getNetwork(session.network);
372
+ const ledgerClient = new LedgerClient(new URL(network.ledgerApi.baseUrl), logger, false, authContext.accessToken);
373
+ const status = await networkStatus(ledgerClient);
346
374
  return {
347
375
  sessions: [
348
376
  {
349
377
  network,
350
378
  accessToken: authContext.accessToken,
351
- status: 'connected',
379
+ status: status.isConnected
380
+ ? 'connected'
381
+ : 'disconnected',
382
+ reason: status.reason ? status.reason : 'OK',
352
383
  },
353
384
  ],
354
385
  };
@@ -1,5 +1,7 @@
1
1
  import { AddNetwork } from './typings.js';
2
2
  import { RemoveNetwork } from './typings.js';
3
+ import { ListNetworks } from './typings.js';
4
+ import { ListIdps } from './typings.js';
3
5
  import { CreateWallet } from './typings.js';
4
6
  import { SetPrimaryWallet } from './typings.js';
5
7
  import { RemoveWallet } from './typings.js';
@@ -7,12 +9,13 @@ import { ListWallets } from './typings.js';
7
9
  import { SyncWallets } from './typings.js';
8
10
  import { Sign } from './typings.js';
9
11
  import { Execute } from './typings.js';
10
- import { ListNetworks } from './typings.js';
11
12
  import { AddSession } from './typings.js';
12
13
  import { ListSessions } from './typings.js';
13
14
  export type Methods = {
14
15
  addNetwork: AddNetwork;
15
16
  removeNetwork: RemoveNetwork;
17
+ listNetworks: ListNetworks;
18
+ listIdps: ListIdps;
16
19
  createWallet: CreateWallet;
17
20
  setPrimaryWallet: SetPrimaryWallet;
18
21
  removeWallet: RemoveWallet;
@@ -20,13 +23,14 @@ export type Methods = {
20
23
  syncWallets: SyncWallets;
21
24
  sign: Sign;
22
25
  execute: Execute;
23
- listNetworks: ListNetworks;
24
26
  addSession: AddSession;
25
27
  listSessions: ListSessions;
26
28
  };
27
29
  declare function buildController(methods: Methods): {
28
30
  addNetwork: AddNetwork;
29
31
  removeNetwork: RemoveNetwork;
32
+ listNetworks: ListNetworks;
33
+ listIdps: ListIdps;
30
34
  createWallet: CreateWallet;
31
35
  setPrimaryWallet: SetPrimaryWallet;
32
36
  removeWallet: RemoveWallet;
@@ -34,7 +38,6 @@ declare function buildController(methods: Methods): {
34
38
  syncWallets: SyncWallets;
35
39
  sign: Sign;
36
40
  execute: Execute;
37
- listNetworks: ListNetworks;
38
41
  addSession: AddSession;
39
42
  listSessions: ListSessions;
40
43
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/user-api/rpc-gen/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC1C,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AACnC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAE3C,MAAM,MAAM,OAAO,GAAG;IAClB,UAAU,EAAE,UAAU,CAAA;IACtB,aAAa,EAAE,aAAa,CAAA;IAC5B,YAAY,EAAE,YAAY,CAAA;IAC1B,gBAAgB,EAAE,gBAAgB,CAAA;IAClC,YAAY,EAAE,YAAY,CAAA;IAC1B,WAAW,EAAE,WAAW,CAAA;IACxB,WAAW,EAAE,WAAW,CAAA;IACxB,IAAI,EAAE,IAAI,CAAA;IACV,OAAO,EAAE,OAAO,CAAA;IAChB,YAAY,EAAE,YAAY,CAAA;IAC1B,UAAU,EAAE,UAAU,CAAA;IACtB,YAAY,EAAE,YAAY,CAAA;CAC7B,CAAA;AAED,iBAAS,eAAe,CAAC,OAAO,EAAE,OAAO;;;;;;;;;;;;;EAexC;AAED,eAAe,eAAe,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/user-api/rpc-gen/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC1C,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AACnC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAE3C,MAAM,MAAM,OAAO,GAAG;IAClB,UAAU,EAAE,UAAU,CAAA;IACtB,aAAa,EAAE,aAAa,CAAA;IAC5B,YAAY,EAAE,YAAY,CAAA;IAC1B,QAAQ,EAAE,QAAQ,CAAA;IAClB,YAAY,EAAE,YAAY,CAAA;IAC1B,gBAAgB,EAAE,gBAAgB,CAAA;IAClC,YAAY,EAAE,YAAY,CAAA;IAC1B,WAAW,EAAE,WAAW,CAAA;IACxB,WAAW,EAAE,WAAW,CAAA;IACxB,IAAI,EAAE,IAAI,CAAA;IACV,OAAO,EAAE,OAAO,CAAA;IAChB,UAAU,EAAE,UAAU,CAAA;IACtB,YAAY,EAAE,YAAY,CAAA;CAC7B,CAAA;AAED,iBAAS,eAAe,CAAC,OAAO,EAAE,OAAO;;;;;;;;;;;;;;EAgBxC;AAED,eAAe,eAAe,CAAA"}
@@ -4,6 +4,8 @@ function buildController(methods) {
4
4
  return {
5
5
  addNetwork: methods.addNetwork,
6
6
  removeNetwork: methods.removeNetwork,
7
+ listNetworks: methods.listNetworks,
8
+ listIdps: methods.listIdps,
7
9
  createWallet: methods.createWallet,
8
10
  setPrimaryWallet: methods.setPrimaryWallet,
9
11
  removeWallet: methods.removeWallet,
@@ -11,7 +13,6 @@ function buildController(methods) {
11
13
  syncWallets: methods.syncWallets,
12
14
  sign: methods.sign,
13
15
  execute: methods.execute,
14
- listNetworks: methods.listNetworks,
15
16
  addSession: methods.addSession,
16
17
  listSessions: methods.listSessions,
17
18
  };
@@ -22,39 +22,30 @@ export type Description = string;
22
22
  *
23
23
  */
24
24
  export type SynchronizerId = string;
25
- export type Type = string;
25
+ /**
26
+ *
27
+ * Identity Provider ID
28
+ *
29
+ */
26
30
  export type IdentityProviderId = string;
27
- export type TokenUrl = string;
28
- export type GrantType = string;
31
+ export type Method = string;
29
32
  export type Scope = string;
30
33
  export type ClientId = string;
31
34
  export type ClientSecret = string;
32
35
  export type Issuer = string;
33
- export type ConfigUrl = string;
34
36
  export type Audience = string;
35
- export interface Admin {
36
- clientId: ClientId;
37
- clientSecret: ClientSecret;
38
- [k: string]: any;
39
- }
40
37
  /**
41
38
  *
42
- * Represents the type of auth (implicit or password) for a specified network
39
+ * Represents the type of auth for a specified network
43
40
  *
44
41
  */
45
42
  export interface Auth {
46
- authType?: Type;
47
- identityProviderId: IdentityProviderId;
48
- tokenUrl?: TokenUrl;
49
- grantType?: GrantType;
50
- scope?: Scope;
51
- clientId?: ClientId;
43
+ method: Method;
44
+ scope: Scope;
45
+ clientId: ClientId;
52
46
  clientSecret?: ClientSecret;
53
- issuer: Issuer;
54
- configUrl: ConfigUrl;
55
- audience?: Audience;
56
- admin?: Admin;
57
- [k: string]: any;
47
+ issuer?: Issuer;
48
+ audience: Audience;
58
49
  }
59
50
  /**
60
51
  *
@@ -72,7 +63,9 @@ export interface Network {
72
63
  name: Name;
73
64
  description: Description;
74
65
  synchronizerId: SynchronizerId;
66
+ identityProviderId: IdentityProviderId;
75
67
  auth: Auth;
68
+ adminAuth?: Auth;
76
69
  ledgerApi: LedgerApi;
77
70
  }
78
71
  /**
@@ -100,6 +93,36 @@ export type PartyHint = string;
100
93
  */
101
94
  export type SigningProviderId = string;
102
95
  export type PartyId = string;
96
+ /**
97
+ *
98
+ * Unique identifier of the signed transaction given by the Signing Provider. This may not be the same as the internal txId given by the Wallet Gateway.
99
+ *
100
+ */
101
+ export type ExternalTxId = string;
102
+ /**
103
+ *
104
+ * The topology transactions
105
+ *
106
+ */
107
+ export type TopologyTransactions = string;
108
+ /**
109
+ *
110
+ * The namespace of the party.
111
+ *
112
+ */
113
+ export type Namespace = string;
114
+ /**
115
+ *
116
+ * Indicates that the wallet has been created in the database but hasn't yet been allocated by the participant.
117
+ *
118
+ */
119
+ export interface SigningProviderContext {
120
+ partyId: PartyId;
121
+ externalTxId: ExternalTxId;
122
+ topologyTransactions: TopologyTransactions;
123
+ namespace: Namespace;
124
+ [k: string]: any;
125
+ }
103
126
  /**
104
127
  *
105
128
  * Filter wallets by network IDs.
@@ -132,24 +155,49 @@ export type PreparedTransactionHash = string;
132
155
  export type CommandId = string;
133
156
  export type Signature = string;
134
157
  export type SignedBy = string;
158
+ export type Networks = Network[];
135
159
  /**
136
160
  *
137
- * The party hint and name of the wallet.
161
+ * ID of the identity provider
138
162
  *
139
163
  */
140
- export type Hint = string;
164
+ export type Id = string;
141
165
  /**
142
166
  *
143
- * The public key of the party.
167
+ * Type of identity provider (OAuth2 or Self-Signed)
144
168
  *
145
169
  */
146
- export type PublicKey = string;
170
+ export type Type = string;
147
171
  /**
148
172
  *
149
- * The namespace of the party.
173
+ * URL to fetch the identity provider configuration
150
174
  *
151
175
  */
152
- export type Namespace = string;
176
+ export type ConfigUrl = string;
177
+ /**
178
+ *
179
+ * Structure representing the Identity Providers
180
+ *
181
+ */
182
+ export interface Idp {
183
+ id: Id;
184
+ type: Type;
185
+ issuer: Issuer;
186
+ configUrl?: ConfigUrl;
187
+ }
188
+ export type Idps = Idp[];
189
+ /**
190
+ *
191
+ * The party hint and name of the wallet.
192
+ *
193
+ */
194
+ export type Hint = string;
195
+ /**
196
+ *
197
+ * The public key of the party.
198
+ *
199
+ */
200
+ export type PublicKey = string;
153
201
  /**
154
202
  *
155
203
  * Structure representing a wallet
@@ -163,11 +211,12 @@ export interface Wallet {
163
211
  namespace: Namespace;
164
212
  networkId: NetworkId;
165
213
  signingProviderId: SigningProviderId;
214
+ externalTxId?: ExternalTxId;
215
+ topologyTransactions?: TopologyTransactions;
166
216
  [k: string]: any;
167
217
  }
168
218
  export type Added = Wallet[];
169
219
  export type Removed = Wallet[];
170
- export type Networks = Network[];
171
220
  /**
172
221
  *
173
222
  * The access token for the session.
@@ -175,6 +224,12 @@ export type Networks = Network[];
175
224
  */
176
225
  export type AccessToken = string;
177
226
  export type Status = 'connected' | 'disconnected';
227
+ /**
228
+ *
229
+ * The reason for the current status.
230
+ *
231
+ */
232
+ export type Reason = string;
178
233
  /**
179
234
  *
180
235
  * Structure representing the connected network session
@@ -184,6 +239,7 @@ export interface Session {
184
239
  network: Network;
185
240
  accessToken: AccessToken;
186
241
  status: Status;
242
+ reason?: Reason;
187
243
  }
188
244
  export type Sessions = Session[];
189
245
  export interface AddNetworkParams {
@@ -199,6 +255,7 @@ export interface CreateWalletParams {
199
255
  partyHint: PartyHint;
200
256
  networkId: NetworkId;
201
257
  signingProviderId: SigningProviderId;
258
+ signingProviderContext?: SigningProviderContext;
202
259
  [k: string]: any;
203
260
  }
204
261
  export interface SetPrimaryWalletParams {
@@ -237,6 +294,14 @@ export interface AddSessionParams {
237
294
  *
238
295
  */
239
296
  export type Null = null;
297
+ export interface ListNetworksResult {
298
+ networks: Networks;
299
+ [k: string]: any;
300
+ }
301
+ export interface ListIdpsResult {
302
+ idps: Idps;
303
+ [k: string]: any;
304
+ }
240
305
  export interface CreateWalletResult {
241
306
  wallet: Wallet;
242
307
  [k: string]: any;
@@ -269,10 +334,6 @@ export interface SignResult {
269
334
  export interface ExecuteResult {
270
335
  [key: string]: any;
271
336
  }
272
- export interface ListNetworksResult {
273
- networks: Networks;
274
- [k: string]: any;
275
- }
276
337
  /**
277
338
  *
278
339
  * Structure representing the connected network session
@@ -282,6 +343,7 @@ export interface AddSessionResult {
282
343
  network: Network;
283
344
  accessToken: AccessToken;
284
345
  status: Status;
346
+ reason?: Reason;
285
347
  }
286
348
  export interface ListSessionsResult {
287
349
  sessions: Sessions;
@@ -294,6 +356,8 @@ export interface ListSessionsResult {
294
356
  */
295
357
  export type AddNetwork = (params: AddNetworkParams) => Promise<Null>;
296
358
  export type RemoveNetwork = (params: RemoveNetworkParams) => Promise<Null>;
359
+ export type ListNetworks = () => Promise<ListNetworksResult>;
360
+ export type ListIdps = () => Promise<ListIdpsResult>;
297
361
  export type CreateWallet = (params: CreateWalletParams) => Promise<CreateWalletResult>;
298
362
  export type SetPrimaryWallet = (params: SetPrimaryWalletParams) => Promise<Null>;
299
363
  export type RemoveWallet = (params: RemoveWalletParams) => Promise<RemovePartyResult>;
@@ -301,7 +365,6 @@ export type ListWallets = (params: ListWalletsParams) => Promise<ListWalletsResu
301
365
  export type SyncWallets = () => Promise<SyncWalletsResult>;
302
366
  export type Sign = (params: SignParams) => Promise<SignResult>;
303
367
  export type Execute = (params: ExecuteParams) => Promise<ExecuteResult>;
304
- export type ListNetworks = () => Promise<ListNetworksResult>;
305
368
  export type AddSession = (params: AddSessionParams) => Promise<AddSessionResult>;
306
369
  export type ListSessions = () => Promise<ListSessionsResult>;
307
370
  //# sourceMappingURL=typings.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"typings.d.ts","sourceRoot":"","sources":["../../../src/user-api/rpc-gen/typings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"typings.d.ts","sourceRoot":"","sources":["../../../src/user-api/rpc-gen/typings.ts"],"names":[],"mappings":"AAKA;;;;GAIG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,CAAA;AAC9B;;;;GAIG;AACH,MAAM,MAAM,IAAI,GAAG,MAAM,CAAA;AACzB;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,CAAA;AAChC;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAA;AACnC;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAA;AACvC,MAAM,MAAM,MAAM,GAAG,MAAM,CAAA;AAC3B,MAAM,MAAM,KAAK,GAAG,MAAM,CAAA;AAC1B,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAA;AAC7B,MAAM,MAAM,YAAY,GAAG,MAAM,CAAA;AACjC,MAAM,MAAM,MAAM,GAAG,MAAM,CAAA;AAC3B,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAA;AAC7B;;;;GAIG;AACH,MAAM,WAAW,IAAI;IACjB,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,KAAK,CAAA;IACZ,QAAQ,EAAE,QAAQ,CAAA;IAClB,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,QAAQ,CAAA;CACrB;AACD;;;;GAIG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,CAAA;AAC9B;;;;GAIG;AACH,MAAM,WAAW,OAAO;IACpB,EAAE,EAAE,SAAS,CAAA;IACb,IAAI,EAAE,IAAI,CAAA;IACV,WAAW,EAAE,WAAW,CAAA;IACxB,cAAc,EAAE,cAAc,CAAA;IAC9B,kBAAkB,EAAE,kBAAkB,CAAA;IACtC,IAAI,EAAE,IAAI,CAAA;IACV,SAAS,CAAC,EAAE,IAAI,CAAA;IAChB,SAAS,EAAE,SAAS,CAAA;CACvB;AACD;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,CAAA;AAChC;;;;GAIG;AACH,MAAM,MAAM,OAAO,GAAG,OAAO,CAAA;AAC7B;;;;GAIG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,CAAA;AAC9B;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAA;AACtC,MAAM,MAAM,OAAO,GAAG,MAAM,CAAA;AAC5B;;;;GAIG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,CAAA;AACjC;;;;GAIG;AACH,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAA;AACzC;;;;GAIG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,CAAA;AAC9B;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACnC,OAAO,EAAE,OAAO,CAAA;IAChB,YAAY,EAAE,YAAY,CAAA;IAC1B,oBAAoB,EAAE,oBAAoB,CAAA;IAC1C,SAAS,EAAE,SAAS,CAAA;IACpB,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;CACnB;AACD;;;;GAIG;AACH,MAAM,MAAM,UAAU,GAAG,SAAS,EAAE,CAAA;AACpC;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,GAAG,iBAAiB,EAAE,CAAA;AACpD;;;;GAIG;AACH,MAAM,WAAW,YAAY;IACzB,UAAU,CAAC,EAAE,UAAU,CAAA;IACvB,kBAAkB,CAAC,EAAE,kBAAkB,CAAA;IACvC,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;CACnB;AACD,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAA;AACxC,MAAM,MAAM,uBAAuB,GAAG,MAAM,CAAA;AAC5C;;;;GAIG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,CAAA;AAC9B,MAAM,MAAM,SAAS,GAAG,MAAM,CAAA;AAC9B,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAA;AAC7B,MAAM,MAAM,QAAQ,GAAG,OAAO,EAAE,CAAA;AAChC;;;;GAIG;AACH,MAAM,MAAM,EAAE,GAAG,MAAM,CAAA;AACvB;;;;GAIG;AACH,MAAM,MAAM,IAAI,GAAG,MAAM,CAAA;AACzB;;;;GAIG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,CAAA;AAC9B;;;;GAIG;AACH,MAAM,WAAW,GAAG;IAChB,EAAE,EAAE,EAAE,CAAA;IACN,IAAI,EAAE,IAAI,CAAA;IACV,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,CAAC,EAAE,SAAS,CAAA;CACxB;AACD,MAAM,MAAM,IAAI,GAAG,GAAG,EAAE,CAAA;AACxB;;;;GAIG;AACH,MAAM,MAAM,IAAI,GAAG,MAAM,CAAA;AACzB;;;;GAIG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,CAAA;AAC9B;;;;GAIG;AACH,MAAM,WAAW,MAAM;IACnB,OAAO,EAAE,OAAO,CAAA;IAChB,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,EAAE,IAAI,CAAA;IACV,SAAS,EAAE,SAAS,CAAA;IACpB,SAAS,EAAE,SAAS,CAAA;IACpB,SAAS,EAAE,SAAS,CAAA;IACpB,iBAAiB,EAAE,iBAAiB,CAAA;IACpC,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B,oBAAoB,CAAC,EAAE,oBAAoB,CAAA;IAC3C,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;CACnB;AACD,MAAM,MAAM,KAAK,GAAG,MAAM,EAAE,CAAA;AAC5B,MAAM,MAAM,OAAO,GAAG,MAAM,EAAE,CAAA;AAC9B;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,CAAA;AAChC,MAAM,MAAM,MAAM,GAAG,WAAW,GAAG,cAAc,CAAA;AACjD;;;;GAIG;AACH,MAAM,MAAM,MAAM,GAAG,MAAM,CAAA;AAC3B;;;;GAIG;AACH,MAAM,WAAW,OAAO;IACpB,OAAO,EAAE,OAAO,CAAA;IAChB,WAAW,EAAE,WAAW,CAAA;IACxB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;CAClB;AACD,MAAM,MAAM,QAAQ,GAAG,OAAO,EAAE,CAAA;AAChC,MAAM,WAAW,gBAAgB;IAC7B,OAAO,EAAE,OAAO,CAAA;IAChB,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;CACnB;AACD,MAAM,WAAW,mBAAmB;IAChC,WAAW,EAAE,WAAW,CAAA;IACxB,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;CACnB;AACD,MAAM,WAAW,kBAAkB;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,SAAS,EAAE,SAAS,CAAA;IACpB,SAAS,EAAE,SAAS,CAAA;IACpB,iBAAiB,EAAE,iBAAiB,CAAA;IACpC,sBAAsB,CAAC,EAAE,sBAAsB,CAAA;IAC/C,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;CACnB;AACD,MAAM,WAAW,sBAAsB;IACnC,OAAO,EAAE,OAAO,CAAA;IAChB,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;CACnB;AACD,MAAM,WAAW,kBAAkB;IAC/B,OAAO,EAAE,OAAO,CAAA;IAChB,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;CACnB;AACD,MAAM,WAAW,iBAAiB;IAC9B,MAAM,CAAC,EAAE,YAAY,CAAA;IACrB,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;CACnB;AACD,MAAM,WAAW,UAAU;IACvB,mBAAmB,EAAE,mBAAmB,CAAA;IACxC,uBAAuB,EAAE,uBAAuB,CAAA;IAChD,SAAS,EAAE,SAAS,CAAA;IACpB,OAAO,EAAE,OAAO,CAAA;IAChB,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;CACnB;AACD,MAAM,WAAW,aAAa;IAC1B,SAAS,EAAE,SAAS,CAAA;IACpB,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,EAAE,SAAS,CAAA;IACpB,QAAQ,EAAE,QAAQ,CAAA;IAClB,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;CACnB;AACD,MAAM,WAAW,gBAAgB;IAC7B,SAAS,EAAE,SAAS,CAAA;IACpB,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;CACnB;AACD;;;;GAIG;AACH,MAAM,MAAM,IAAI,GAAG,IAAI,CAAA;AACvB,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,EAAE,QAAQ,CAAA;IAClB,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;CACnB;AACD,MAAM,WAAW,cAAc;IAC3B,IAAI,EAAE,IAAI,CAAA;IACV,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;CACnB;AACD,MAAM,WAAW,kBAAkB;IAC/B,MAAM,EAAE,MAAM,CAAA;IACd,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;CACnB;AACD,MAAM,WAAW,iBAAiB;IAC9B,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CACrB;AACD;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,MAAM,EAAE,CAAA;AACxC;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAC9B,KAAK,EAAE,KAAK,CAAA;IACZ,OAAO,EAAE,OAAO,CAAA;IAChB,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;CACnB;AACD,MAAM,WAAW,UAAU;IACvB,SAAS,EAAE,SAAS,CAAA;IACpB,OAAO,EAAE,OAAO,CAAA;IAChB,QAAQ,EAAE,QAAQ,CAAA;IAClB,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;CACnB;AACD,MAAM,WAAW,aAAa;IAC1B,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CACrB;AACD;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC7B,OAAO,EAAE,OAAO,CAAA;IAChB,WAAW,EAAE,WAAW,CAAA;IACxB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;CAClB;AACD,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,EAAE,QAAQ,CAAA;IAClB,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;CACnB;AACD;;;;GAIG;AAEH,MAAM,MAAM,UAAU,GAAG,CAAC,MAAM,EAAE,gBAAgB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;AACpE,MAAM,MAAM,aAAa,GAAG,CAAC,MAAM,EAAE,mBAAmB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;AAC1E,MAAM,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,kBAAkB,CAAC,CAAA;AAC5D,MAAM,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,CAAA;AACpD,MAAM,MAAM,YAAY,GAAG,CACvB,MAAM,EAAE,kBAAkB,KACzB,OAAO,CAAC,kBAAkB,CAAC,CAAA;AAChC,MAAM,MAAM,gBAAgB,GAAG,CAAC,MAAM,EAAE,sBAAsB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;AAChF,MAAM,MAAM,YAAY,GAAG,CACvB,MAAM,EAAE,kBAAkB,KACzB,OAAO,CAAC,iBAAiB,CAAC,CAAA;AAC/B,MAAM,MAAM,WAAW,GAAG,CACtB,MAAM,EAAE,iBAAiB,KACxB,OAAO,CAAC,iBAAiB,CAAC,CAAA;AAC/B,MAAM,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,iBAAiB,CAAC,CAAA;AAC1D,MAAM,MAAM,IAAI,GAAG,CAAC,MAAM,EAAE,UAAU,KAAK,OAAO,CAAC,UAAU,CAAC,CAAA;AAC9D,MAAM,MAAM,OAAO,GAAG,CAAC,MAAM,EAAE,aAAa,KAAK,OAAO,CAAC,aAAa,CAAC,CAAA;AACvE,MAAM,MAAM,UAAU,GAAG,CAAC,MAAM,EAAE,gBAAgB,KAAK,OAAO,CAAC,gBAAgB,CAAC,CAAA;AAChF,MAAM,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,kBAAkB,CAAC,CAAA"}
@@ -30,10 +30,9 @@ test('call listNetworks rpc', async () => {
30
30
  .set('Accept', 'application/json');
31
31
  const json = await response.body.result;
32
32
  expect(response.statusCode).toBe(200);
33
- expect(json.networks.length).toBe(5);
34
- expect(json.networks[0].name).toBe('Local (password IDP)');
35
- expect(json.networks[1].name).toBe('Local (OAuth IDP)');
36
- expect(json.networks[2].name).toBe('Local (OAuth IDP - Client Credentials)');
37
- expect(json.networks[3].name).toBe('Local (Self signed)');
38
- expect(json.networks[4].name).toBe('Devnet (Auth0)');
33
+ expect(json.networks.length).toBe(4);
34
+ expect(json.networks[0].name).toBe('Local (OAuth IDP)');
35
+ expect(json.networks[1].name).toBe('Local (OAuth IDP - Client Credentials)');
36
+ expect(json.networks[2].name).toBe('Local (Self signed)');
37
+ expect(json.networks[3].name).toBe('Devnet (Auth0)');
39
38
  });