@fairmint/canton-node-sdk 0.0.222 → 0.0.224
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/bin/canton-localnet +182 -0
- package/build/src/generated/apps/common/src/main/openapi/common-external.d.ts +295 -0
- package/build/src/generated/apps/common/src/main/openapi/common-external.d.ts.map +1 -0
- package/build/src/generated/apps/common/src/main/openapi/common-external.js +7 -0
- package/build/src/generated/apps/common/src/main/openapi/common-external.js.map +1 -0
- package/build/src/generated/apps/common/src/main/openapi/common-internal.d.ts +204 -0
- package/build/src/generated/apps/common/src/main/openapi/common-internal.d.ts.map +1 -0
- package/build/src/generated/apps/common/src/main/openapi/common-internal.js +7 -0
- package/build/src/generated/apps/common/src/main/openapi/common-internal.js.map +1 -0
- package/build/src/generated/apps/scan/src/main/openapi/scan-stream-server.d.ts +73 -0
- package/build/src/generated/apps/scan/src/main/openapi/scan-stream-server.d.ts.map +1 -0
- package/build/src/generated/apps/scan/src/main/openapi/scan-stream-server.js +7 -0
- package/build/src/generated/apps/scan/src/main/openapi/scan-stream-server.js.map +1 -0
- package/build/src/generated/apps/scan/src/main/openapi/scan.d.ts +4969 -0
- package/build/src/generated/apps/scan/src/main/openapi/scan.d.ts.map +1 -0
- package/build/src/generated/apps/scan/src/main/openapi/scan.js +7 -0
- package/build/src/generated/apps/scan/src/main/openapi/scan.js.map +1 -0
- package/build/src/generated/apps/splitwell/src/main/openapi/splitwell-internal.d.ts +636 -0
- package/build/src/generated/apps/splitwell/src/main/openapi/splitwell-internal.d.ts.map +1 -0
- package/build/src/generated/apps/splitwell/src/main/openapi/splitwell-internal.js +7 -0
- package/build/src/generated/apps/splitwell/src/main/openapi/splitwell-internal.js.map +1 -0
- package/build/src/generated/apps/sv/src/main/openapi/sv-internal.d.ts +2024 -0
- package/build/src/generated/apps/sv/src/main/openapi/sv-internal.d.ts.map +1 -0
- package/build/src/generated/apps/sv/src/main/openapi/sv-internal.js +7 -0
- package/build/src/generated/apps/sv/src/main/openapi/sv-internal.js.map +1 -0
- package/build/src/generated/apps/validator/src/main/openapi/ans-external.d.ts +189 -0
- package/build/src/generated/apps/validator/src/main/openapi/ans-external.d.ts.map +1 -0
- package/build/src/generated/apps/validator/src/main/openapi/ans-external.js +7 -0
- package/build/src/generated/apps/validator/src/main/openapi/ans-external.js.map +1 -0
- package/build/src/generated/apps/validator/src/main/openapi/scan-proxy.d.ts +969 -0
- package/build/src/generated/apps/validator/src/main/openapi/scan-proxy.d.ts.map +1 -0
- package/build/src/generated/apps/validator/src/main/openapi/scan-proxy.js +7 -0
- package/build/src/generated/apps/validator/src/main/openapi/scan-proxy.js.map +1 -0
- package/build/src/generated/apps/validator/src/main/openapi/validator-internal.d.ts +1230 -0
- package/build/src/generated/apps/validator/src/main/openapi/validator-internal.d.ts.map +1 -0
- package/build/src/generated/apps/validator/src/main/openapi/validator-internal.js +7 -0
- package/build/src/generated/apps/validator/src/main/openapi/validator-internal.js.map +1 -0
- package/build/src/generated/apps/wallet/src/main/openapi/wallet-external.d.ts +535 -0
- package/build/src/generated/apps/wallet/src/main/openapi/wallet-external.d.ts.map +1 -0
- package/build/src/generated/apps/wallet/src/main/openapi/wallet-external.js +7 -0
- package/build/src/generated/apps/wallet/src/main/openapi/wallet-external.js.map +1 -0
- package/build/src/generated/apps/wallet/src/main/openapi/wallet-internal.d.ts +2521 -0
- package/build/src/generated/apps/wallet/src/main/openapi/wallet-internal.d.ts.map +1 -0
- package/build/src/generated/apps/wallet/src/main/openapi/wallet-internal.js +7 -0
- package/build/src/generated/apps/wallet/src/main/openapi/wallet-internal.js.map +1 -0
- package/package.json +18 -8
- package/scripts/localnet-cloud.sh +180 -17
- package/.gitmodules +0 -6
- package/.nvmrc +0 -1
- package/scripts/collapse-manifest.ts +0 -66
- package/scripts/generate-all-client-methods.ts +0 -332
- package/scripts/generate-openapi-types.ts +0 -46
- package/scripts/generate-operation-tests.ts +0 -198
- package/scripts/grant-user-rights.ts +0 -213
- package/scripts/list-identity-providers.ts +0 -46
- package/scripts/localnet/localnet-cloud.sh +0 -5
- package/scripts/localnet/localnet-status.sh +0 -5
- package/scripts/localnet/setup-localnet.sh +0 -5
- package/scripts/localnet/setup-quickstart-localnet.sh +0 -5
- package/scripts/localnet/start-localnet.sh +0 -5
- package/scripts/localnet/stop-localnet.sh +0 -5
- package/scripts/localnet-status.sh +0 -5
- package/scripts/prepare-release.ts +0 -222
- package/scripts/revoke-user-rights.ts +0 -219
- package/scripts/setup-localnet.sh +0 -5
- package/scripts/setup-quickstart-localnet.sh +0 -5
- package/scripts/start-localnet.sh +0 -5
- package/scripts/stop-localnet.sh +0 -5
|
@@ -1,219 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env tsx
|
|
2
|
-
import 'dotenv/config';
|
|
3
|
-
import { CantonRuntime, EnvLoader, LedgerJsonApiClient, ValidatorApiClient } from '../src';
|
|
4
|
-
import type { RevokeUserRightsParams } from '../src/clients/ledger-json-api/schemas/operations/users';
|
|
5
|
-
import type { NetworkType } from '../src/core/types';
|
|
6
|
-
|
|
7
|
-
/** Rights type expected by grant/revoke APIs (with value wrapper) */
|
|
8
|
-
type RevokableRight = NonNullable<RevokeUserRightsParams['rights']>[number];
|
|
9
|
-
|
|
10
|
-
/** Create party-specific rights for revoke operation */
|
|
11
|
-
function createPartyRightsForRevoke(partyId: string): RevokableRight[] {
|
|
12
|
-
return [
|
|
13
|
-
{
|
|
14
|
-
kind: {
|
|
15
|
-
CanActAs: { value: { party: partyId } },
|
|
16
|
-
},
|
|
17
|
-
},
|
|
18
|
-
];
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
/** Create admin rights for revoke operation */
|
|
22
|
-
function createAdminRightsForRevoke(): RevokableRight[] {
|
|
23
|
-
return [
|
|
24
|
-
{
|
|
25
|
-
kind: {
|
|
26
|
-
ParticipantAdmin: { value: {} },
|
|
27
|
-
},
|
|
28
|
-
},
|
|
29
|
-
];
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
/** Create CanExecuteAsAnyParty rights for revoke operation */
|
|
33
|
-
function createExecuteAsAnyPartyRightsForRevoke(): RevokableRight[] {
|
|
34
|
-
return [
|
|
35
|
-
{
|
|
36
|
-
kind: {
|
|
37
|
-
CanExecuteAsAnyParty: { value: {} },
|
|
38
|
-
},
|
|
39
|
-
},
|
|
40
|
-
];
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
/** Create CanReadAsAnyParty rights for revoke operation */
|
|
44
|
-
function createReadAsAnyPartyRightsForRevoke(): RevokableRight[] {
|
|
45
|
-
return [
|
|
46
|
-
{
|
|
47
|
-
kind: {
|
|
48
|
-
CanReadAsAnyParty: { value: {} },
|
|
49
|
-
},
|
|
50
|
-
},
|
|
51
|
-
];
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
async function main(): Promise<void> {
|
|
55
|
-
console.log('=== Revoke User Rights Utility ===\n');
|
|
56
|
-
|
|
57
|
-
// Parse command line arguments
|
|
58
|
-
const args = process.argv.slice(2);
|
|
59
|
-
|
|
60
|
-
if (args.includes('--help') || args.includes('-h')) {
|
|
61
|
-
console.log(`
|
|
62
|
-
Usage: tsx scripts/revoke-user-rights.ts [options]
|
|
63
|
-
|
|
64
|
-
Options:
|
|
65
|
-
--user-id <id> User ID to revoke rights from (defaults to authenticated user)
|
|
66
|
-
--party-id <id> Party ID for party-specific rights (optional)
|
|
67
|
-
--admin Revoke ParticipantAdmin rights
|
|
68
|
-
--execute-any-party Revoke CanExecuteAsAnyParty rights
|
|
69
|
-
--read-any-party Revoke CanReadAsAnyParty rights
|
|
70
|
-
--network <network> Target network (devnet|testnet|mainnet, defaults to CANTON_CURRENT_NETWORK)
|
|
71
|
-
--provider <provider> Target provider (defaults to CANTON_CURRENT_PROVIDER)
|
|
72
|
-
--help, -h Show this help message
|
|
73
|
-
|
|
74
|
-
Examples:
|
|
75
|
-
# Revoke admin rights from authenticated user (uses current network/provider from env)
|
|
76
|
-
npm run revoke-user-rights -- --admin
|
|
77
|
-
|
|
78
|
-
# Revoke CanExecuteAsAnyParty rights from authenticated user
|
|
79
|
-
npm run revoke-user-rights -- --execute-any-party
|
|
80
|
-
|
|
81
|
-
# Revoke CanReadAsAnyParty rights from authenticated user
|
|
82
|
-
npm run revoke-user-rights -- --read-any-party
|
|
83
|
-
|
|
84
|
-
# Revoke admin rights from specific user on devnet/intellect
|
|
85
|
-
npm run revoke-user-rights -- --user-id "5" --admin --network devnet --provider intellect
|
|
86
|
-
|
|
87
|
-
# Revoke party rights from authenticated user
|
|
88
|
-
npm run revoke-user-rights -- --party-id "alice::party1"
|
|
89
|
-
`);
|
|
90
|
-
process.exit(0);
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
// Parse arguments
|
|
94
|
-
const userIdIndex = args.indexOf('--user-id');
|
|
95
|
-
const targetUserId = userIdIndex !== -1 ? args[userIdIndex + 1] : undefined;
|
|
96
|
-
|
|
97
|
-
const partyIdIndex = args.indexOf('--party-id');
|
|
98
|
-
const partyId = partyIdIndex !== -1 ? args[partyIdIndex + 1] : undefined;
|
|
99
|
-
|
|
100
|
-
const admin = args.includes('--admin');
|
|
101
|
-
const executeAnyParty = args.includes('--execute-any-party');
|
|
102
|
-
const readAnyParty = args.includes('--read-any-party');
|
|
103
|
-
|
|
104
|
-
const networkIndex = args.indexOf('--network');
|
|
105
|
-
const network = networkIndex !== -1 ? (args[networkIndex + 1] as NetworkType) : undefined;
|
|
106
|
-
|
|
107
|
-
const providerIndex = args.indexOf('--provider');
|
|
108
|
-
const provider = providerIndex !== -1 ? args[providerIndex + 1] : undefined;
|
|
109
|
-
|
|
110
|
-
// Determine which rights to revoke
|
|
111
|
-
let rights: RevokableRight[];
|
|
112
|
-
let rightsType: string;
|
|
113
|
-
|
|
114
|
-
if (partyId) {
|
|
115
|
-
rights = createPartyRightsForRevoke(partyId);
|
|
116
|
-
rightsType = 'Party Rights (CanActAs)';
|
|
117
|
-
} else if (executeAnyParty) {
|
|
118
|
-
rights = createExecuteAsAnyPartyRightsForRevoke();
|
|
119
|
-
rightsType = 'CanExecuteAsAnyParty';
|
|
120
|
-
} else if (readAnyParty) {
|
|
121
|
-
rights = createReadAsAnyPartyRightsForRevoke();
|
|
122
|
-
rightsType = 'CanReadAsAnyParty';
|
|
123
|
-
} else if (admin) {
|
|
124
|
-
rights = createAdminRightsForRevoke();
|
|
125
|
-
rightsType = 'ParticipantAdmin';
|
|
126
|
-
} else {
|
|
127
|
-
console.error(
|
|
128
|
-
'Error: You must specify which rights to revoke (--admin, --execute-any-party, --read-any-party, or --party-id)'
|
|
129
|
-
);
|
|
130
|
-
process.exit(1);
|
|
131
|
-
}
|
|
132
|
-
|
|
133
|
-
console.log('Configuration:');
|
|
134
|
-
console.log(` Network: ${network ?? 'from CANTON_CURRENT_NETWORK'}`);
|
|
135
|
-
console.log(` Provider: ${provider ?? 'from CANTON_CURRENT_PROVIDER'}`);
|
|
136
|
-
if (targetUserId) {
|
|
137
|
-
console.log(` Target User ID: ${targetUserId}`);
|
|
138
|
-
} else {
|
|
139
|
-
console.log(` Target User ID: <will auto-detect from authenticated user>`);
|
|
140
|
-
}
|
|
141
|
-
if (partyId) {
|
|
142
|
-
console.log(` Party ID: ${partyId}`);
|
|
143
|
-
}
|
|
144
|
-
console.log(` Rights Type: ${rightsType}\n`);
|
|
145
|
-
|
|
146
|
-
try {
|
|
147
|
-
const configOptions = {
|
|
148
|
-
...(network !== undefined && { network }),
|
|
149
|
-
...(provider !== undefined && { provider }),
|
|
150
|
-
};
|
|
151
|
-
const runtime = new CantonRuntime(EnvLoader.getConfig('LEDGER_JSON_API', configOptions));
|
|
152
|
-
const client = new LedgerJsonApiClient(runtime);
|
|
153
|
-
const validatorClient = new ValidatorApiClient(runtime);
|
|
154
|
-
|
|
155
|
-
console.log(`Connected to Ledger JSON API`);
|
|
156
|
-
|
|
157
|
-
// If no target user ID provided, get the authenticated user
|
|
158
|
-
let resolvedUserId: string;
|
|
159
|
-
if (!targetUserId) {
|
|
160
|
-
console.log('Fetching authenticated user ID...');
|
|
161
|
-
const authenticatedUser = await validatorClient.getValidatorUserInfo();
|
|
162
|
-
resolvedUserId = authenticatedUser.user_name;
|
|
163
|
-
console.log(`Using authenticated user: ${resolvedUserId}`);
|
|
164
|
-
} else {
|
|
165
|
-
resolvedUserId = targetUserId;
|
|
166
|
-
console.log(`Target user: ${resolvedUserId}`);
|
|
167
|
-
}
|
|
168
|
-
|
|
169
|
-
console.log(`\nRights to revoke: ${JSON.stringify(rights, null, 2)}`);
|
|
170
|
-
|
|
171
|
-
// Check current rights
|
|
172
|
-
console.log('\nChecking current rights...');
|
|
173
|
-
try {
|
|
174
|
-
const currentRights = await client.listUserRights({
|
|
175
|
-
userId: resolvedUserId,
|
|
176
|
-
});
|
|
177
|
-
console.log(`Current rights count: ${currentRights.rights?.length ?? 0}`);
|
|
178
|
-
} catch (error) {
|
|
179
|
-
console.log(`Could not list current rights: ${error instanceof Error ? error.message : String(error)}`);
|
|
180
|
-
}
|
|
181
|
-
|
|
182
|
-
// Revoke the rights
|
|
183
|
-
console.log('\nRevoking rights...');
|
|
184
|
-
const result = await client.revokeUserRights({
|
|
185
|
-
userId: resolvedUserId,
|
|
186
|
-
rights,
|
|
187
|
-
});
|
|
188
|
-
|
|
189
|
-
console.log(`\n✓ Successfully revoked ${result.newlyRevokedRights?.length ?? 0} rights`);
|
|
190
|
-
if (result.newlyRevokedRights && result.newlyRevokedRights.length > 0) {
|
|
191
|
-
console.log(`\nNewly revoked rights:`);
|
|
192
|
-
console.log(JSON.stringify(result.newlyRevokedRights, null, 2));
|
|
193
|
-
} else {
|
|
194
|
-
console.log('\n(No rights were revoked - they may not have existed)');
|
|
195
|
-
}
|
|
196
|
-
|
|
197
|
-
// Verify by listing rights again
|
|
198
|
-
console.log('\nVerifying...');
|
|
199
|
-
const finalRights = await client.listUserRights({
|
|
200
|
-
userId: resolvedUserId,
|
|
201
|
-
});
|
|
202
|
-
console.log(`Final rights count: ${finalRights.rights?.length ?? 0}`);
|
|
203
|
-
|
|
204
|
-
console.log('\n✓ Done!');
|
|
205
|
-
} catch (error) {
|
|
206
|
-
console.error('\n✗ Failed to revoke rights:');
|
|
207
|
-
console.error(` ${error instanceof Error ? error.message : String(error)}`);
|
|
208
|
-
if (error instanceof Error && error.stack) {
|
|
209
|
-
console.error(`\nStack trace:`);
|
|
210
|
-
console.error(error.stack);
|
|
211
|
-
}
|
|
212
|
-
process.exit(1);
|
|
213
|
-
}
|
|
214
|
-
}
|
|
215
|
-
|
|
216
|
-
main().catch((error) => {
|
|
217
|
-
console.error('Fatal error:', error);
|
|
218
|
-
process.exit(1);
|
|
219
|
-
});
|