@fairmint/canton-fairmint-sdk 0.0.54 → 0.0.56
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/clients/json-api/sdkHelper.d.ts +4 -24
- package/dist/clients/json-api/sdkHelper.d.ts.map +1 -1
- package/dist/clients/json-api/sdkHelper.js +8 -75
- package/dist/clients/json-api/sdkHelper.js.map +1 -1
- package/dist/clients/postgres-db-api/fairmint-db/base.d.ts.map +1 -1
- package/dist/clients/postgres-db-api/fairmint-db/base.js +4 -1
- package/dist/clients/postgres-db-api/fairmint-db/base.js.map +1 -1
- package/dist/clients/shared/config.d.ts +14 -0
- package/dist/clients/shared/config.d.ts.map +1 -1
- package/dist/clients/shared/config.js +34 -7
- package/dist/clients/shared/config.js.map +1 -1
- package/dist/clients/shared/index.d.ts +1 -0
- package/dist/clients/shared/index.d.ts.map +1 -1
- package/dist/clients/shared/index.js +1 -0
- package/dist/clients/shared/index.js.map +1 -1
- package/dist/clients/shared/runtime.d.ts +29 -0
- package/dist/clients/shared/runtime.d.ts.map +1 -0
- package/dist/clients/shared/runtime.js +163 -0
- package/dist/clients/shared/runtime.js.map +1 -0
- package/dist/clients/validator-api/index.d.ts +3 -1
- package/dist/clients/validator-api/index.d.ts.map +1 -1
- package/dist/clients/validator-api/index.js +6 -52
- package/dist/clients/validator-api/index.js.map +1 -1
- package/package.json +2 -2
|
@@ -1,28 +1,8 @@
|
|
|
1
1
|
import { LedgerJsonApiClient } from '@fairmint/canton-node-sdk';
|
|
2
2
|
import { OcpClient } from '@open-captable-protocol/canton';
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
*
|
|
7
|
-
* @param network Network type (devnet | mainnet)
|
|
8
|
-
* @param providerType Provider type (intellect | 5n | 5n-broker)
|
|
9
|
-
* @returns Configured LedgerJsonApiClient instance
|
|
10
|
-
*/
|
|
11
|
-
export declare function createLedgerJsonApiClient(network: NetworkType, providerType: ProviderType): LedgerJsonApiClient;
|
|
12
|
-
/**
|
|
13
|
-
* Extract the LedgerJsonApiClient from an OcpClient with proper typing This ensures type compatibility when passing the
|
|
14
|
-
* client to other functions
|
|
15
|
-
*
|
|
16
|
-
* @param ocpClient The OcpClient instance
|
|
17
|
-
* @returns The LedgerJsonApiClient instance with proper typing
|
|
18
|
-
*/
|
|
3
|
+
import { CantonClientRuntime } from '../shared/runtime';
|
|
4
|
+
export { CantonClientRuntime, createCantonClientRuntime, } from '../shared/runtime';
|
|
5
|
+
export declare function createLedgerJsonApiClient(runtime: CantonClientRuntime): LedgerJsonApiClient;
|
|
19
6
|
export declare function getLedgerClientFromOcp(ocpClient: OcpClient): LedgerJsonApiClient;
|
|
20
|
-
|
|
21
|
-
* Create an OcpClient instance using EnvLoader for scripts
|
|
22
|
-
*
|
|
23
|
-
* @param network Network type (devnet | mainnet)
|
|
24
|
-
* @param providerType Provider type (intellect | 5n | 5n-broker)
|
|
25
|
-
* @returns Configured OcpClient instance
|
|
26
|
-
*/
|
|
27
|
-
export declare function createOcpClient(network: NetworkType, providerType: ProviderType): OcpClient;
|
|
7
|
+
export declare function createOcpClient(runtime: CantonClientRuntime): OcpClient;
|
|
28
8
|
//# sourceMappingURL=sdkHelper.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdkHelper.d.ts","sourceRoot":"","sources":["../../../src/clients/json-api/sdkHelper.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"sdkHelper.d.ts","sourceRoot":"","sources":["../../../src/clients/json-api/sdkHelper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,OAAO,EACL,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,mBAAmB,CAAC;AAE3B,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,mBAAmB,GAC3B,mBAAmB,CAErB;AAED,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,SAAS,GACnB,mBAAmB,CAErB;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,mBAAmB,GAAG,SAAS,CAEvE"}
|
|
@@ -1,86 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createCantonClientRuntime = exports.CantonClientRuntime = void 0;
|
|
3
4
|
exports.createLedgerJsonApiClient = createLedgerJsonApiClient;
|
|
4
5
|
exports.getLedgerClientFromOcp = getLedgerClientFromOcp;
|
|
5
6
|
exports.createOcpClient = createOcpClient;
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
function
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
`Check your environment variables.`);
|
|
12
|
-
}
|
|
13
|
-
return value;
|
|
7
|
+
var runtime_1 = require("../shared/runtime");
|
|
8
|
+
Object.defineProperty(exports, "CantonClientRuntime", { enumerable: true, get: function () { return runtime_1.CantonClientRuntime; } });
|
|
9
|
+
Object.defineProperty(exports, "createCantonClientRuntime", { enumerable: true, get: function () { return runtime_1.createCantonClientRuntime; } });
|
|
10
|
+
function createLedgerJsonApiClient(runtime) {
|
|
11
|
+
return runtime.createLedgerJsonApiClient();
|
|
14
12
|
}
|
|
15
|
-
/**
|
|
16
|
-
* Create a LedgerJsonApiClient instance using EnvLoader for scripts
|
|
17
|
-
*
|
|
18
|
-
* @param network Network type (devnet | mainnet)
|
|
19
|
-
* @param providerType Provider type (intellect | 5n | 5n-broker)
|
|
20
|
-
* @returns Configured LedgerJsonApiClient instance
|
|
21
|
-
*/
|
|
22
|
-
function createLedgerJsonApiClient(network, providerType) {
|
|
23
|
-
const envLoader = canton_node_sdk_1.EnvLoader.getInstance();
|
|
24
|
-
// Cast to SDK types - these are compatible but may have different type definitions
|
|
25
|
-
const sdkNetwork = network;
|
|
26
|
-
const sdkProvider = providerType;
|
|
27
|
-
return new canton_node_sdk_1.LedgerJsonApiClient({
|
|
28
|
-
network: sdkNetwork,
|
|
29
|
-
provider: sdkProvider,
|
|
30
|
-
authUrl: envLoader.getAuthUrl(sdkNetwork, sdkProvider),
|
|
31
|
-
apis: {
|
|
32
|
-
LEDGER_JSON_API: {
|
|
33
|
-
apiUrl: requireEnv(envLoader.getApiUri('LEDGER_JSON_API', sdkNetwork, sdkProvider), `CANTON_${sdkNetwork.toUpperCase()}_${sdkProvider.toUpperCase()}_LEDGER_JSON_API_URI`),
|
|
34
|
-
auth: {
|
|
35
|
-
clientId: envLoader.getApiClientId('LEDGER_JSON_API', sdkNetwork, sdkProvider) ?? '',
|
|
36
|
-
clientSecret: envLoader.getApiClientSecret('LEDGER_JSON_API', sdkNetwork, sdkProvider) ?? '',
|
|
37
|
-
grantType: 'client_credentials',
|
|
38
|
-
},
|
|
39
|
-
partyId: envLoader.getPartyId(sdkNetwork, sdkProvider),
|
|
40
|
-
},
|
|
41
|
-
},
|
|
42
|
-
logger: new canton_node_sdk_1.FileLogger(),
|
|
43
|
-
});
|
|
44
|
-
}
|
|
45
|
-
/**
|
|
46
|
-
* Extract the LedgerJsonApiClient from an OcpClient with proper typing This ensures type compatibility when passing the
|
|
47
|
-
* client to other functions
|
|
48
|
-
*
|
|
49
|
-
* @param ocpClient The OcpClient instance
|
|
50
|
-
* @returns The LedgerJsonApiClient instance with proper typing
|
|
51
|
-
*/
|
|
52
13
|
function getLedgerClientFromOcp(ocpClient) {
|
|
53
|
-
// Type assertion to handle potential duplicate type definitions from node_modules
|
|
54
14
|
return ocpClient.client;
|
|
55
15
|
}
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
*
|
|
59
|
-
* @param network Network type (devnet | mainnet)
|
|
60
|
-
* @param providerType Provider type (intellect | 5n | 5n-broker)
|
|
61
|
-
* @returns Configured OcpClient instance
|
|
62
|
-
*/
|
|
63
|
-
function createOcpClient(network, providerType) {
|
|
64
|
-
const envLoader = canton_node_sdk_1.EnvLoader.getInstance();
|
|
65
|
-
// Cast to SDK types - these are compatible but may have different type definitions
|
|
66
|
-
const sdkNetwork = network;
|
|
67
|
-
const sdkProvider = providerType;
|
|
68
|
-
return new canton_1.OcpClient({
|
|
69
|
-
network: sdkNetwork,
|
|
70
|
-
provider: sdkProvider,
|
|
71
|
-
authUrl: envLoader.getAuthUrl(sdkNetwork, sdkProvider),
|
|
72
|
-
apis: {
|
|
73
|
-
LEDGER_JSON_API: {
|
|
74
|
-
apiUrl: requireEnv(envLoader.getApiUri('LEDGER_JSON_API', sdkNetwork, sdkProvider), `CANTON_${sdkNetwork.toUpperCase()}_${sdkProvider.toUpperCase()}_LEDGER_JSON_API_URI`),
|
|
75
|
-
auth: {
|
|
76
|
-
clientId: envLoader.getApiClientId('LEDGER_JSON_API', sdkNetwork, sdkProvider) ?? '',
|
|
77
|
-
clientSecret: envLoader.getApiClientSecret('LEDGER_JSON_API', sdkNetwork, sdkProvider) ?? '',
|
|
78
|
-
grantType: 'client_credentials',
|
|
79
|
-
},
|
|
80
|
-
partyId: envLoader.getPartyId(sdkNetwork, sdkProvider),
|
|
81
|
-
},
|
|
82
|
-
},
|
|
83
|
-
logger: new canton_node_sdk_1.FileLogger(),
|
|
84
|
-
});
|
|
16
|
+
function createOcpClient(runtime) {
|
|
17
|
+
return runtime.createOcpClient();
|
|
85
18
|
}
|
|
86
19
|
//# sourceMappingURL=sdkHelper.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdkHelper.js","sourceRoot":"","sources":["../../../src/clients/json-api/sdkHelper.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sdkHelper.js","sourceRoot":"","sources":["../../../src/clients/json-api/sdkHelper.ts"],"names":[],"mappings":";;;AASA,8DAIC;AAED,wDAIC;AAED,0CAEC;AAnBD,6CAG2B;AAFzB,8GAAA,mBAAmB,OAAA;AACnB,oHAAA,yBAAyB,OAAA;AAG3B,SAAgB,yBAAyB,CACvC,OAA4B;IAE5B,OAAO,OAAO,CAAC,yBAAyB,EAAE,CAAC;AAC7C,CAAC;AAED,SAAgB,sBAAsB,CACpC,SAAoB;IAEpB,OAAO,SAAS,CAAC,MAAM,CAAC;AAC1B,CAAC;AAED,SAAgB,eAAe,CAAC,OAA4B;IAC1D,OAAO,OAAO,CAAC,eAAe,EAAE,CAAC;AACnC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../../src/clients/postgres-db-api/fairmint-db/base.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,KAAK,UAAU,EAAE,KAAK,UAAU,EAAE,MAAM,IAAI,CAAC;AAC5D,OAAO,
|
|
1
|
+
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../../src/clients/postgres-db-api/fairmint-db/base.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,KAAK,UAAU,EAAE,KAAK,UAAU,EAAE,MAAM,IAAI,CAAC;AAC5D,OAAO,EAEL,cAAc,EACf,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAC1B,KAAK,0BAA0B,EAC/B,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC1B,KAAK,0BAA0B,EAChC,MAAM,UAAU,CAAC;AAElB;;;GAGG;AACH,qBAAa,cAAc;IACzB,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IAC9B,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAC1C,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;gBAE5B,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,WAAW;IAMpE,SAAS,CAAC,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAI1C,SAAS,CAAC,iBAAiB,CAAC,GAAG,EAAE,mBAAmB,GAAG,cAAc;IAuBrE,SAAS,CAAC,qBAAqB,CAC7B,GAAG,EAAE,0BAA0B,GAC9B,qBAAqB;IAyBxB,SAAS,CAAC,kBAAkB,CAAC,GAAG,EAAE,oBAAoB,GAAG,eAAe;IAcxE,SAAS,CAAC,cAAc,CAAC,GAAG,EAAE,gBAAgB,GAAG,WAAW;IAoB5D,SAAS,CAAC,wBAAwB,CAChC,GAAG,EAAE,0BAA0B,GAC9B,qBAAqB;CAczB;AA4BD;;;;;;;;;GASG;AACH,wBAAgB,+BAA+B,CAC7C,gBAAgB,EAAE,MAAM,GACvB,UAAU,CAOZ;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,WAAW,GAAG;IAC1D,IAAI,EAAE,IAAI,CAAC;IACX,MAAM,EAAE,cAAc,CAAC;CACxB,CAqBA;AAED,OAAO,EAAE,IAAI,EAAE,KAAK,UAAU,EAAE,CAAC"}
|
|
@@ -164,7 +164,10 @@ function createFairmintDbPool(network) {
|
|
|
164
164
|
const config = new config_1.ProviderConfig();
|
|
165
165
|
const databaseUrl = config.getDatabaseUrl(network);
|
|
166
166
|
if (!databaseUrl) {
|
|
167
|
-
|
|
167
|
+
const envNetwork = (0, config_1.fairmintAppDatabaseEnvNetwork)(network);
|
|
168
|
+
throw new Error(network === 'staging'
|
|
169
|
+
? `Fairmint database URL for staging is not configured. Staging uses production app DB — set POSTGRES_DB_URL_MAINNET.`
|
|
170
|
+
: `Fairmint database URL for ${network} is not configured. Please set POSTGRES_DB_URL_${envNetwork.toUpperCase()} environment variable.`);
|
|
168
171
|
}
|
|
169
172
|
const pool = new pg_1.Pool(buildFairmintPostgresPoolConfig(databaseUrl));
|
|
170
173
|
pool.on('error', err => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../src/clients/postgres-db-api/fairmint-db/base.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../src/clients/postgres-db-api/fairmint-db/base.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,18 @@
|
|
|
1
1
|
import { type CantonPartyRole, type NetworkType, type OperationalPartyProvider, type ProviderType } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Canton JSON API / Validator API credential namespace for a logical CLI network.
|
|
4
|
+
*
|
|
5
|
+
* The `staging` CLI mode uses **devnet** participant env vars (`CANTON_DEVNET_*`). No `CANTON_STAGING_*` vars are
|
|
6
|
+
* required.
|
|
7
|
+
*/
|
|
8
|
+
export declare function cantonCredentialsNetwork(network: NetworkType): 'devnet' | 'mainnet';
|
|
9
|
+
/**
|
|
10
|
+
* Fairmint **application** Postgres env key for a logical CLI network.
|
|
11
|
+
*
|
|
12
|
+
* `staging` reads production app data (`POSTGRES_DB_URL_MAINNET`) while still filtering `canton_parties.network =
|
|
13
|
+
* 'staging'` in SQL.
|
|
14
|
+
*/
|
|
15
|
+
export declare function fairmintAppDatabaseEnvNetwork(network: NetworkType): 'devnet' | 'mainnet';
|
|
2
16
|
export declare function getPartyProviderForRole(role: CantonPartyRole): OperationalPartyProvider;
|
|
3
17
|
export declare function getIssuerPartyProvider(): Extract<ProviderType, '5n'>;
|
|
4
18
|
export declare class ProviderConfig {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/clients/shared/config.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,WAAW,EAChB,KAAK,wBAAwB,EAC7B,KAAK,YAAY,EAClB,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/clients/shared/config.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,WAAW,EAChB,KAAK,wBAAwB,EAC7B,KAAK,YAAY,EAClB,MAAM,SAAS,CAAC;AAqBjB;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,WAAW,GACnB,QAAQ,GAAG,SAAS,CAEtB;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,WAAW,GACnB,QAAQ,GAAG,SAAS,CAEtB;AAeD,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,eAAe,GACpB,wBAAwB,CAE1B;AAED,wBAAgB,sBAAsB,IAAI,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,CAEpE;AAwBD,qBAAa,cAAc;;IAKzB,iBAAiB,IAAI,WAAW;IAchC,kBAAkB,IAAI,YAAY;IAelC,cAAc,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAqB/C,gCAAgC,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IA0BjE,OAAO,CAAC,SAAS;CAqBlB"}
|
|
@@ -37,6 +37,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
39
|
exports.ProviderConfig = void 0;
|
|
40
|
+
exports.cantonCredentialsNetwork = cantonCredentialsNetwork;
|
|
41
|
+
exports.fairmintAppDatabaseEnvNetwork = fairmintAppDatabaseEnvNetwork;
|
|
40
42
|
exports.getPartyProviderForRole = getPartyProviderForRole;
|
|
41
43
|
exports.getIssuerPartyProvider = getIssuerPartyProvider;
|
|
42
44
|
const dotenv_1 = __importDefault(require("dotenv"));
|
|
@@ -58,6 +60,24 @@ function isValidNetwork(value) {
|
|
|
58
60
|
function isValidProvider(value) {
|
|
59
61
|
return VALID_PROVIDERS.includes(value);
|
|
60
62
|
}
|
|
63
|
+
/**
|
|
64
|
+
* Canton JSON API / Validator API credential namespace for a logical CLI network.
|
|
65
|
+
*
|
|
66
|
+
* The `staging` CLI mode uses **devnet** participant env vars (`CANTON_DEVNET_*`). No `CANTON_STAGING_*` vars are
|
|
67
|
+
* required.
|
|
68
|
+
*/
|
|
69
|
+
function cantonCredentialsNetwork(network) {
|
|
70
|
+
return network === 'staging' ? 'devnet' : network;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Fairmint **application** Postgres env key for a logical CLI network.
|
|
74
|
+
*
|
|
75
|
+
* `staging` reads production app data (`POSTGRES_DB_URL_MAINNET`) while still filtering `canton_parties.network =
|
|
76
|
+
* 'staging'` in SQL.
|
|
77
|
+
*/
|
|
78
|
+
function fairmintAppDatabaseEnvNetwork(network) {
|
|
79
|
+
return network === 'staging' ? 'mainnet' : network;
|
|
80
|
+
}
|
|
61
81
|
/**
|
|
62
82
|
* Provider assignments for Canton actor roles.
|
|
63
83
|
*
|
|
@@ -119,12 +139,15 @@ class ProviderConfig {
|
|
|
119
139
|
}
|
|
120
140
|
// Helper method to get database URL for a specific network
|
|
121
141
|
getDatabaseUrl(network) {
|
|
122
|
-
const targetNetwork = network ?? this.getCurrentNetwork();
|
|
123
|
-
const
|
|
142
|
+
const targetNetwork = (network ?? this.getCurrentNetwork());
|
|
143
|
+
const envNetwork = fairmintAppDatabaseEnvNetwork(targetNetwork);
|
|
144
|
+
const envKey = `POSTGRES_DB_URL_${envNetwork.toUpperCase()}`;
|
|
124
145
|
const databaseUrl = process.env[envKey] ?? null;
|
|
125
146
|
if (!databaseUrl) {
|
|
126
147
|
console.log(process.env);
|
|
127
|
-
console.error(
|
|
148
|
+
console.error(targetNetwork === 'staging'
|
|
149
|
+
? `Database URL not found for staging (uses production app DB). Set POSTGRES_DB_URL_MAINNET.`
|
|
150
|
+
: `Database URL not found for network ${targetNetwork}. Environment variable ${envKey} is not set.`);
|
|
128
151
|
}
|
|
129
152
|
return databaseUrl;
|
|
130
153
|
}
|
|
@@ -138,12 +161,16 @@ class ProviderConfig {
|
|
|
138
161
|
return sharedUrl;
|
|
139
162
|
}
|
|
140
163
|
// Fall back to network-specific URL for backward compatibility
|
|
141
|
-
const targetNetwork = network ?? this.getCurrentNetwork();
|
|
142
|
-
const
|
|
164
|
+
const targetNetwork = (network ?? this.getCurrentNetwork());
|
|
165
|
+
const urlNetwork = cantonCredentialsNetwork(targetNetwork);
|
|
166
|
+
const envKey = `CANTON_TRANSACTIONS_DB_URL_${urlNetwork.toUpperCase()}`;
|
|
143
167
|
const databaseUrl = process.env[envKey] ?? null;
|
|
144
168
|
if (!databaseUrl) {
|
|
145
|
-
console.error(
|
|
146
|
-
`
|
|
169
|
+
console.error(targetNetwork === 'staging'
|
|
170
|
+
? `Canton transactions database URL not found for staging (uses devnet CantonOps DB). ` +
|
|
171
|
+
`Set CANTON_TRANSACTIONS_DB_URL or CANTON_TRANSACTIONS_DB_URL_DEVNET.`
|
|
172
|
+
: `Canton transactions database URL not found. ` +
|
|
173
|
+
`Please set either CANTON_TRANSACTIONS_DB_URL (shared) or ${envKey} (network-specific).`);
|
|
147
174
|
}
|
|
148
175
|
return databaseUrl;
|
|
149
176
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/clients/shared/config.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/clients/shared/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/clients/shared/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/clients/shared/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC"}
|
|
@@ -15,5 +15,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./config"), exports);
|
|
18
|
+
__exportStar(require("./runtime"), exports);
|
|
18
19
|
__exportStar(require("./types"), exports);
|
|
19
20
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/clients/shared/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,0CAAwB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/clients/shared/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,4CAA0B;AAC1B,0CAAwB"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { LedgerJsonApiClient, ValidatorApiClient } from '@fairmint/canton-node-sdk';
|
|
2
|
+
import { OcpClient } from '@open-captable-protocol/canton';
|
|
3
|
+
import { cantonCredentialsNetwork } from './config';
|
|
4
|
+
import { type NetworkType, type ProviderType } from './types';
|
|
5
|
+
type CredentialsNetwork = ReturnType<typeof cantonCredentialsNetwork>;
|
|
6
|
+
export declare class CantonClientRuntime {
|
|
7
|
+
readonly logicalNetwork: NetworkType;
|
|
8
|
+
readonly credentialsNetwork: CredentialsNetwork;
|
|
9
|
+
readonly providerType: ProviderType;
|
|
10
|
+
private readonly envLoader;
|
|
11
|
+
private readonly authUrl;
|
|
12
|
+
private readonly logger;
|
|
13
|
+
private ledgerSourceClient?;
|
|
14
|
+
private validatorSourceClient?;
|
|
15
|
+
private ledgerApiConfig?;
|
|
16
|
+
private validatorApiConfig?;
|
|
17
|
+
constructor(network: NetworkType, providerType: ProviderType);
|
|
18
|
+
private getValidatorProvider;
|
|
19
|
+
private getLedgerApiConfig;
|
|
20
|
+
private getValidatorApiConfig;
|
|
21
|
+
private getLedgerSourceClient;
|
|
22
|
+
private getValidatorSourceClient;
|
|
23
|
+
createLedgerJsonApiClient(): LedgerJsonApiClient;
|
|
24
|
+
createValidatorApiClient(): ValidatorApiClient;
|
|
25
|
+
createOcpClient(): OcpClient;
|
|
26
|
+
}
|
|
27
|
+
export declare function createCantonClientRuntime(network: NetworkType, providerType: ProviderType): CantonClientRuntime;
|
|
28
|
+
export {};
|
|
29
|
+
//# sourceMappingURL=runtime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../src/clients/shared/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,mBAAmB,EACnB,kBAAkB,EAInB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAC3D,OAAO,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,YAAY,EAAE,MAAM,SAAS,CAAC;AAG9D,KAAK,kBAAkB,GAAG,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAAC;AA4JtE,qBAAa,mBAAmB;IAC9B,SAAgB,cAAc,EAAE,WAAW,CAAC;IAC5C,SAAgB,kBAAkB,EAAE,kBAAkB,CAAC;IACvD,SAAgB,YAAY,EAAE,YAAY,CAAC;IAE3C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAY;IACtC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAa;IACpC,OAAO,CAAC,kBAAkB,CAAC,CAAsB;IACjD,OAAO,CAAC,qBAAqB,CAAC,CAAqB;IACnD,OAAO,CAAC,eAAe,CAAC,CAAY;IACpC,OAAO,CAAC,kBAAkB,CAAC,CAAY;gBAE3B,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY;IAiB5D,OAAO,CAAC,oBAAoB;IAI5B,OAAO,CAAC,kBAAkB;IAY1B,OAAO,CAAC,qBAAqB;IAc7B,OAAO,CAAC,qBAAqB;IAiB7B,OAAO,CAAC,wBAAwB;IAiBzB,yBAAyB,IAAI,mBAAmB;IAqBhD,wBAAwB,IAAI,kBAAkB;IAsB9C,eAAe,IAAI,SAAS;CAoBpC;AAED,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,WAAW,EACpB,YAAY,EAAE,YAAY,GACzB,mBAAmB,CAErB"}
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CantonClientRuntime = void 0;
|
|
4
|
+
exports.createCantonClientRuntime = createCantonClientRuntime;
|
|
5
|
+
const canton_node_sdk_1 = require("@fairmint/canton-node-sdk");
|
|
6
|
+
const canton_1 = require("@open-captable-protocol/canton");
|
|
7
|
+
const config_1 = require("./config");
|
|
8
|
+
function requireEnv(value, envDescription) {
|
|
9
|
+
if (!value || value.trim() === '') {
|
|
10
|
+
throw new Error(`Missing required configuration: ${envDescription}. ` +
|
|
11
|
+
`Check your environment variables.`);
|
|
12
|
+
}
|
|
13
|
+
return value;
|
|
14
|
+
}
|
|
15
|
+
function createDerivedAuthConfig(auth, tokenGenerator) {
|
|
16
|
+
if (auth.clientId.trim() === '' &&
|
|
17
|
+
auth.bearerToken === undefined &&
|
|
18
|
+
auth.tokenGenerator === undefined) {
|
|
19
|
+
return auth;
|
|
20
|
+
}
|
|
21
|
+
return {
|
|
22
|
+
grantType: 'client_credentials',
|
|
23
|
+
clientId: auth.clientId,
|
|
24
|
+
...(auth.audience ? { audience: auth.audience } : {}),
|
|
25
|
+
...(auth.scope ? { scope: auth.scope } : {}),
|
|
26
|
+
tokenGenerator,
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
function createClientConfig(network, providerType, authUrl, apiType, apiConfig, logger) {
|
|
30
|
+
return {
|
|
31
|
+
network,
|
|
32
|
+
provider: providerType,
|
|
33
|
+
authUrl,
|
|
34
|
+
apis: {
|
|
35
|
+
[apiType]: apiConfig,
|
|
36
|
+
},
|
|
37
|
+
logger,
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
function createLedgerApiConfig(envLoader, network, providerType) {
|
|
41
|
+
return {
|
|
42
|
+
apiUrl: requireEnv(envLoader.getApiUri('LEDGER_JSON_API', network, providerType), `CANTON_${network.toUpperCase()}_${providerType.toUpperCase()}_LEDGER_JSON_API_URI`),
|
|
43
|
+
auth: {
|
|
44
|
+
grantType: 'client_credentials',
|
|
45
|
+
clientId: envLoader.getApiClientId('LEDGER_JSON_API', network, providerType) ??
|
|
46
|
+
'',
|
|
47
|
+
clientSecret: envLoader.getApiClientSecret('LEDGER_JSON_API', network, providerType) ?? '',
|
|
48
|
+
},
|
|
49
|
+
partyId: envLoader.getPartyId(network, providerType),
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
function createValidatorAuthConfig(envLoader, network, providerType) {
|
|
53
|
+
const clientId = envLoader.getApiClientId('VALIDATOR_API', network, providerType);
|
|
54
|
+
const clientSecret = envLoader.getApiClientSecret('VALIDATOR_API', network, providerType);
|
|
55
|
+
const username = envLoader.getApiUsername('VALIDATOR_API', network, providerType);
|
|
56
|
+
const password = envLoader.getApiPassword('VALIDATOR_API', network, providerType);
|
|
57
|
+
if (!clientId) {
|
|
58
|
+
throw new Error('Missing required environment configuration for ValidatorApiClient');
|
|
59
|
+
}
|
|
60
|
+
const hasClientCredentials = Boolean(clientSecret);
|
|
61
|
+
const hasPasswordGrant = Boolean(username && password);
|
|
62
|
+
if (!hasClientCredentials && !hasPasswordGrant) {
|
|
63
|
+
throw new Error('Must provide either clientId+clientSecret or clientId+username+password');
|
|
64
|
+
}
|
|
65
|
+
if (hasPasswordGrant && !clientSecret && username && password) {
|
|
66
|
+
return {
|
|
67
|
+
grantType: 'password',
|
|
68
|
+
clientId,
|
|
69
|
+
username,
|
|
70
|
+
password,
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
return {
|
|
74
|
+
grantType: 'client_credentials',
|
|
75
|
+
clientId,
|
|
76
|
+
clientSecret,
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
function createValidatorApiConfig(envLoader, network, providerType) {
|
|
80
|
+
const apiUrl = envLoader.getApiUri('VALIDATOR_API', network, providerType);
|
|
81
|
+
if (!apiUrl) {
|
|
82
|
+
throw new Error('Missing required environment configuration for ValidatorApiClient');
|
|
83
|
+
}
|
|
84
|
+
return {
|
|
85
|
+
apiUrl,
|
|
86
|
+
auth: createValidatorAuthConfig(envLoader, network, providerType),
|
|
87
|
+
partyId: envLoader.getPartyId(network, providerType),
|
|
88
|
+
userId: envLoader.getUserId(network, providerType),
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
class CantonClientRuntime {
|
|
92
|
+
constructor(network, providerType) {
|
|
93
|
+
const envLoader = canton_node_sdk_1.EnvLoader.getInstance();
|
|
94
|
+
const credentialsNetwork = (0, config_1.cantonCredentialsNetwork)(network);
|
|
95
|
+
const authUrl = requireEnv(envLoader.getAuthUrl(credentialsNetwork, providerType), `CANTON_${credentialsNetwork.toUpperCase()}_${providerType.toUpperCase()}_AUTH_URL`);
|
|
96
|
+
const logger = new canton_node_sdk_1.FileLogger();
|
|
97
|
+
this.logicalNetwork = network;
|
|
98
|
+
this.credentialsNetwork = credentialsNetwork;
|
|
99
|
+
this.providerType = providerType;
|
|
100
|
+
this.envLoader = envLoader;
|
|
101
|
+
this.authUrl = authUrl;
|
|
102
|
+
this.logger = logger;
|
|
103
|
+
}
|
|
104
|
+
getValidatorProvider() {
|
|
105
|
+
return this.providerType === '5n-broker' ? '5n' : this.providerType;
|
|
106
|
+
}
|
|
107
|
+
getLedgerApiConfig() {
|
|
108
|
+
if (this.ledgerApiConfig === undefined) {
|
|
109
|
+
this.ledgerApiConfig = createLedgerApiConfig(this.envLoader, this.credentialsNetwork, this.providerType);
|
|
110
|
+
}
|
|
111
|
+
return this.ledgerApiConfig;
|
|
112
|
+
}
|
|
113
|
+
getValidatorApiConfig() {
|
|
114
|
+
if (this.validatorApiConfig === undefined) {
|
|
115
|
+
this.validatorApiConfig = createValidatorApiConfig(this.envLoader, this.credentialsNetwork, this.getValidatorProvider());
|
|
116
|
+
}
|
|
117
|
+
return this.validatorApiConfig;
|
|
118
|
+
}
|
|
119
|
+
// Initialize source clients lazily so runtime creation stays valid for
|
|
120
|
+
// ledger-only or validator-only consumers.
|
|
121
|
+
getLedgerSourceClient() {
|
|
122
|
+
if (this.ledgerSourceClient === undefined) {
|
|
123
|
+
this.ledgerSourceClient = new canton_node_sdk_1.LedgerJsonApiClient(createClientConfig(this.credentialsNetwork, this.providerType, this.authUrl, 'LEDGER_JSON_API', this.getLedgerApiConfig(), this.logger));
|
|
124
|
+
}
|
|
125
|
+
return this.ledgerSourceClient;
|
|
126
|
+
}
|
|
127
|
+
getValidatorSourceClient() {
|
|
128
|
+
if (this.validatorSourceClient === undefined) {
|
|
129
|
+
this.validatorSourceClient = new canton_node_sdk_1.ValidatorApiClient(createClientConfig(this.credentialsNetwork, this.getValidatorProvider(), this.authUrl, 'VALIDATOR_API', this.getValidatorApiConfig(), this.logger));
|
|
130
|
+
}
|
|
131
|
+
return this.validatorSourceClient;
|
|
132
|
+
}
|
|
133
|
+
createLedgerJsonApiClient() {
|
|
134
|
+
const ledgerApiConfig = this.getLedgerApiConfig();
|
|
135
|
+
const ledgerSourceClient = this.getLedgerSourceClient();
|
|
136
|
+
return new canton_node_sdk_1.LedgerJsonApiClient(createClientConfig(this.credentialsNetwork, this.providerType, this.authUrl, 'LEDGER_JSON_API', {
|
|
137
|
+
...ledgerApiConfig,
|
|
138
|
+
auth: createDerivedAuthConfig(ledgerApiConfig.auth, async () => ledgerSourceClient.authenticate()),
|
|
139
|
+
}, this.logger));
|
|
140
|
+
}
|
|
141
|
+
createValidatorApiClient() {
|
|
142
|
+
const validatorProvider = this.getValidatorProvider();
|
|
143
|
+
const validatorApiConfig = this.getValidatorApiConfig();
|
|
144
|
+
const validatorSourceClient = this.getValidatorSourceClient();
|
|
145
|
+
return new canton_node_sdk_1.ValidatorApiClient(createClientConfig(this.credentialsNetwork, validatorProvider, this.authUrl, 'VALIDATOR_API', {
|
|
146
|
+
...validatorApiConfig,
|
|
147
|
+
auth: createDerivedAuthConfig(validatorApiConfig.auth, async () => validatorSourceClient.authenticate()),
|
|
148
|
+
}, this.logger));
|
|
149
|
+
}
|
|
150
|
+
createOcpClient() {
|
|
151
|
+
const ledgerApiConfig = this.getLedgerApiConfig();
|
|
152
|
+
const ledgerSourceClient = this.getLedgerSourceClient();
|
|
153
|
+
return new canton_1.OcpClient(createClientConfig(this.credentialsNetwork, this.providerType, this.authUrl, 'LEDGER_JSON_API', {
|
|
154
|
+
...ledgerApiConfig,
|
|
155
|
+
auth: createDerivedAuthConfig(ledgerApiConfig.auth, async () => ledgerSourceClient.authenticate()),
|
|
156
|
+
}, this.logger));
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
exports.CantonClientRuntime = CantonClientRuntime;
|
|
160
|
+
function createCantonClientRuntime(network, providerType) {
|
|
161
|
+
return new CantonClientRuntime(network, providerType);
|
|
162
|
+
}
|
|
163
|
+
//# sourceMappingURL=runtime.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../../src/clients/shared/runtime.ts"],"names":[],"mappings":";;;AAyUA,8DAKC;AA9UD,+DAQmC;AACnC,2DAA2D;AAC3D,qCAAoD;AAMpD,SAAS,UAAU,CAAC,KAAyB,EAAE,cAAsB;IACnE,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CACb,mCAAmC,cAAc,IAAI;YACnD,mCAAmC,CACtC,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,uBAAuB,CAC9B,IAAgB,EAChB,cAAqC;IAErC,IACE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE;QAC3B,IAAI,CAAC,WAAW,KAAK,SAAS;QAC9B,IAAI,CAAC,cAAc,KAAK,SAAS,EACjC,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,SAAS,EAAE,oBAAoB;QAC/B,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrD,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5C,cAAc;KACf,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CACzB,OAA2B,EAC3B,YAA0B,EAC1B,OAAe,EACf,OAAsB,EACtB,SAAoB,EACpB,MAAkB;IAElB,OAAO;QACL,OAAO;QACP,QAAQ,EAAE,YAAY;QACtB,OAAO;QACP,IAAI,EAAE;YACJ,CAAC,OAAO,CAAC,EAAE,SAAS;SACrB;QACD,MAAM;KACP,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAC5B,SAAoB,EACpB,OAA2B,EAC3B,YAA0B;IAE1B,OAAO;QACL,MAAM,EAAE,UAAU,CAChB,SAAS,CAAC,SAAS,CAAC,iBAAiB,EAAE,OAAO,EAAE,YAAY,CAAC,EAC7D,UAAU,OAAO,CAAC,WAAW,EAAE,IAAI,YAAY,CAAC,WAAW,EAAE,sBAAsB,CACpF;QACD,IAAI,EAAE;YACJ,SAAS,EAAE,oBAAoB;YAC/B,QAAQ,EACN,SAAS,CAAC,cAAc,CAAC,iBAAiB,EAAE,OAAO,EAAE,YAAY,CAAC;gBAClE,EAAE;YACJ,YAAY,EACV,SAAS,CAAC,kBAAkB,CAC1B,iBAAiB,EACjB,OAAO,EACP,YAAY,CACb,IAAI,EAAE;SACV;QACD,OAAO,EAAE,SAAS,CAAC,UAAU,CAAC,OAAO,EAAE,YAAY,CAAC;KACrD,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAChC,SAAoB,EACpB,OAA2B,EAC3B,YAAuD;IAEvD,MAAM,QAAQ,GAAG,SAAS,CAAC,cAAc,CACvC,eAAe,EACf,OAAO,EACP,YAAY,CACb,CAAC;IACF,MAAM,YAAY,GAAG,SAAS,CAAC,kBAAkB,CAC/C,eAAe,EACf,OAAO,EACP,YAAY,CACb,CAAC;IACF,MAAM,QAAQ,GAAG,SAAS,CAAC,cAAc,CACvC,eAAe,EACf,OAAO,EACP,YAAY,CACb,CAAC;IACF,MAAM,QAAQ,GAAG,SAAS,CAAC,cAAc,CACvC,eAAe,EACf,OAAO,EACP,YAAY,CACb,CAAC;IAEF,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CACb,mEAAmE,CACpE,CAAC;IACJ,CAAC;IAED,MAAM,oBAAoB,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IACnD,MAAM,gBAAgB,GAAG,OAAO,CAAC,QAAQ,IAAI,QAAQ,CAAC,CAAC;IAEvD,IAAI,CAAC,oBAAoB,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC/C,MAAM,IAAI,KAAK,CACb,yEAAyE,CAC1E,CAAC;IACJ,CAAC;IAED,IAAI,gBAAgB,IAAI,CAAC,YAAY,IAAI,QAAQ,IAAI,QAAQ,EAAE,CAAC;QAC9D,OAAO;YACL,SAAS,EAAE,UAAU;YACrB,QAAQ;YACR,QAAQ;YACR,QAAQ;SACT,CAAC;IACJ,CAAC;IAED,OAAO;QACL,SAAS,EAAE,oBAAoB;QAC/B,QAAQ;QACR,YAAY;KACb,CAAC;AACJ,CAAC;AAED,SAAS,wBAAwB,CAC/B,SAAoB,EACpB,OAA2B,EAC3B,YAAuD;IAEvD,MAAM,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,eAAe,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;IAE3E,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CACb,mEAAmE,CACpE,CAAC;IACJ,CAAC;IAED,OAAO;QACL,MAAM;QACN,IAAI,EAAE,yBAAyB,CAAC,SAAS,EAAE,OAAO,EAAE,YAAY,CAAC;QACjE,OAAO,EAAE,SAAS,CAAC,UAAU,CAAC,OAAO,EAAE,YAAY,CAAC;QACpD,MAAM,EAAE,SAAS,CAAC,SAAS,CAAC,OAAO,EAAE,YAAY,CAAC;KACnD,CAAC;AACJ,CAAC;AAED,MAAa,mBAAmB;IAa9B,YAAY,OAAoB,EAAE,YAA0B;QAC1D,MAAM,SAAS,GAAG,2BAAS,CAAC,WAAW,EAAE,CAAC;QAC1C,MAAM,kBAAkB,GAAG,IAAA,iCAAwB,EAAC,OAAO,CAAC,CAAC;QAC7D,MAAM,OAAO,GAAG,UAAU,CACxB,SAAS,CAAC,UAAU,CAAC,kBAAkB,EAAE,YAAY,CAAC,EACtD,UAAU,kBAAkB,CAAC,WAAW,EAAE,IAAI,YAAY,CAAC,WAAW,EAAE,WAAW,CACpF,CAAC;QACF,MAAM,MAAM,GAAG,IAAI,4BAAU,EAAE,CAAC;QAEhC,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC;QAC9B,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QAC7C,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAEO,oBAAoB;QAC1B,OAAO,IAAI,CAAC,YAAY,KAAK,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC;IACtE,CAAC;IAEO,kBAAkB;QACxB,IAAI,IAAI,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;YACvC,IAAI,CAAC,eAAe,GAAG,qBAAqB,CAC1C,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,kBAAkB,EACvB,IAAI,CAAC,YAAY,CAClB,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAEO,qBAAqB;QAC3B,IAAI,IAAI,CAAC,kBAAkB,KAAK,SAAS,EAAE,CAAC;YAC1C,IAAI,CAAC,kBAAkB,GAAG,wBAAwB,CAChD,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,kBAAkB,EACvB,IAAI,CAAC,oBAAoB,EAAE,CAC5B,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACjC,CAAC;IAED,uEAAuE;IACvE,2CAA2C;IACnC,qBAAqB;QAC3B,IAAI,IAAI,CAAC,kBAAkB,KAAK,SAAS,EAAE,CAAC;YAC1C,IAAI,CAAC,kBAAkB,GAAG,IAAI,qCAAmB,CAC/C,kBAAkB,CAChB,IAAI,CAAC,kBAAkB,EACvB,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,OAAO,EACZ,iBAAiB,EACjB,IAAI,CAAC,kBAAkB,EAAE,EACzB,IAAI,CAAC,MAAM,CACZ,CACF,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACjC,CAAC;IAEO,wBAAwB;QAC9B,IAAI,IAAI,CAAC,qBAAqB,KAAK,SAAS,EAAE,CAAC;YAC7C,IAAI,CAAC,qBAAqB,GAAG,IAAI,oCAAkB,CACjD,kBAAkB,CAChB,IAAI,CAAC,kBAAkB,EACvB,IAAI,CAAC,oBAAoB,EAAE,EAC3B,IAAI,CAAC,OAAO,EACZ,eAAe,EACf,IAAI,CAAC,qBAAqB,EAAE,EAC5B,IAAI,CAAC,MAAM,CACZ,CACF,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACpC,CAAC;IAEM,yBAAyB;QAC9B,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAClD,MAAM,kBAAkB,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAExD,OAAO,IAAI,qCAAmB,CAC5B,kBAAkB,CAChB,IAAI,CAAC,kBAAkB,EACvB,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,OAAO,EACZ,iBAAiB,EACjB;YACE,GAAG,eAAe;YAClB,IAAI,EAAE,uBAAuB,CAAC,eAAe,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,CAC7D,kBAAkB,CAAC,YAAY,EAAE,CAClC;SACF,EACD,IAAI,CAAC,MAAM,CACZ,CACF,CAAC;IACJ,CAAC;IAEM,wBAAwB;QAC7B,MAAM,iBAAiB,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;QACtD,MAAM,kBAAkB,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;QACxD,MAAM,qBAAqB,GAAG,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAE9D,OAAO,IAAI,oCAAkB,CAC3B,kBAAkB,CAChB,IAAI,CAAC,kBAAkB,EACvB,iBAAiB,EACjB,IAAI,CAAC,OAAO,EACZ,eAAe,EACf;YACE,GAAG,kBAAkB;YACrB,IAAI,EAAE,uBAAuB,CAAC,kBAAkB,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,CAChE,qBAAqB,CAAC,YAAY,EAAE,CACrC;SACF,EACD,IAAI,CAAC,MAAM,CACZ,CACF,CAAC;IACJ,CAAC;IAEM,eAAe;QACpB,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAClD,MAAM,kBAAkB,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAExD,OAAO,IAAI,kBAAS,CAClB,kBAAkB,CAChB,IAAI,CAAC,kBAAkB,EACvB,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,OAAO,EACZ,iBAAiB,EACjB;YACE,GAAG,eAAe;YAClB,IAAI,EAAE,uBAAuB,CAAC,eAAe,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,CAC7D,kBAAkB,CAAC,YAAY,EAAE,CAClC;SACF,EACD,IAAI,CAAC,MAAM,CACZ,CACF,CAAC;IACJ,CAAC;CACF;AA7JD,kDA6JC;AAED,SAAgB,yBAAyB,CACvC,OAAoB,EACpB,YAA0B;IAE1B,OAAO,IAAI,mBAAmB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;AACxD,CAAC"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
export * from '../shared/config';
|
|
2
2
|
import { ValidatorApiClient } from '@fairmint/canton-node-sdk';
|
|
3
|
-
|
|
3
|
+
import { CantonClientRuntime } from '../shared/runtime';
|
|
4
|
+
export { CantonClientRuntime, createCantonClientRuntime, } from '../shared/runtime';
|
|
5
|
+
export declare function createValidatorApiClient(runtime: CantonClientRuntime): ValidatorApiClient;
|
|
4
6
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/clients/validator-api/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AAEjC,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/clients/validator-api/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AAEjC,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,OAAO,EACL,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,mBAAmB,CAAC;AAE3B,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,mBAAmB,GAC3B,kBAAkB,CAEpB"}
|
|
@@ -14,59 +14,13 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.createCantonClientRuntime = exports.CantonClientRuntime = void 0;
|
|
17
18
|
exports.createValidatorApiClient = createValidatorApiClient;
|
|
18
19
|
__exportStar(require("../shared/config"), exports);
|
|
19
|
-
|
|
20
|
-
function
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
const clientSecret = envLoader.getApiClientSecret('VALIDATOR_API', network, providerType);
|
|
25
|
-
const authUrl = envLoader.getAuthUrl(network, providerType);
|
|
26
|
-
const partyId = envLoader.getPartyId(network, providerType);
|
|
27
|
-
const userId = envLoader.getUserId(network, providerType);
|
|
28
|
-
const username = envLoader.getApiUsername('VALIDATOR_API', network, providerType);
|
|
29
|
-
const password = envLoader.getApiPassword('VALIDATOR_API', network, providerType);
|
|
30
|
-
if (!apiUrl || !authUrl || !clientId) {
|
|
31
|
-
throw new Error('Missing required environment configuration for ValidatorApiClient');
|
|
32
|
-
}
|
|
33
|
-
// Validate authentication method
|
|
34
|
-
const hasClientCredentials = clientId && clientSecret;
|
|
35
|
-
const hasPasswordGrant = username && password && clientId;
|
|
36
|
-
if (!hasClientCredentials && !hasPasswordGrant) {
|
|
37
|
-
throw new Error('Must provide either clientId+clientSecret or clientId+username+password');
|
|
38
|
-
}
|
|
39
|
-
// Build auth config based on grant type (discriminated union)
|
|
40
|
-
let auth;
|
|
41
|
-
if (hasPasswordGrant && !clientSecret) {
|
|
42
|
-
auth = {
|
|
43
|
-
grantType: 'password',
|
|
44
|
-
clientId,
|
|
45
|
-
username,
|
|
46
|
-
password,
|
|
47
|
-
};
|
|
48
|
-
}
|
|
49
|
-
else {
|
|
50
|
-
auth = {
|
|
51
|
-
grantType: 'client_credentials',
|
|
52
|
-
clientId,
|
|
53
|
-
clientSecret,
|
|
54
|
-
};
|
|
55
|
-
}
|
|
56
|
-
const clientConfig = {
|
|
57
|
-
network,
|
|
58
|
-
provider: providerType,
|
|
59
|
-
authUrl,
|
|
60
|
-
apis: {
|
|
61
|
-
VALIDATOR_API: {
|
|
62
|
-
apiUrl,
|
|
63
|
-
auth,
|
|
64
|
-
partyId,
|
|
65
|
-
userId,
|
|
66
|
-
},
|
|
67
|
-
},
|
|
68
|
-
logger: new canton_node_sdk_1.FileLogger(),
|
|
69
|
-
};
|
|
70
|
-
return new canton_node_sdk_1.ValidatorApiClient(clientConfig);
|
|
20
|
+
var runtime_1 = require("../shared/runtime");
|
|
21
|
+
Object.defineProperty(exports, "CantonClientRuntime", { enumerable: true, get: function () { return runtime_1.CantonClientRuntime; } });
|
|
22
|
+
Object.defineProperty(exports, "createCantonClientRuntime", { enumerable: true, get: function () { return runtime_1.createCantonClientRuntime; } });
|
|
23
|
+
function createValidatorApiClient(runtime) {
|
|
24
|
+
return runtime.createValidatorApiClient();
|
|
71
25
|
}
|
|
72
26
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/clients/validator-api/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/clients/validator-api/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAUA,4DAIC;AAdD,mDAAiC;AAKjC,6CAG2B;AAFzB,8GAAA,mBAAmB,OAAA;AACnB,oHAAA,yBAAyB,OAAA;AAG3B,SAAgB,wBAAwB,CACtC,OAA4B;IAE5B,OAAO,OAAO,CAAC,wBAAwB,EAAE,CAAC;AAC5C,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fairmint/canton-fairmint-sdk",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.56",
|
|
4
4
|
"description": "Shared SDK utilities for Canton blockchain integration",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -56,7 +56,7 @@
|
|
|
56
56
|
},
|
|
57
57
|
"devDependencies": {
|
|
58
58
|
"@eslint/eslintrc": "3.3.3",
|
|
59
|
-
"@fairmint/canton-node-sdk": "0.0.
|
|
59
|
+
"@fairmint/canton-node-sdk": "0.0.195",
|
|
60
60
|
"@fairmint/open-captable-protocol-daml-js": "0.2.137",
|
|
61
61
|
"@open-captable-protocol/canton": "0.2.259",
|
|
62
62
|
"@types/jest": "30.0.0",
|