@fairmint/canton-node-sdk 0.0.237 → 0.0.239
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/build/src/clients/ledger-json-api/LedgerJsonApiClient.generated.d.ts +51 -51
- package/build/src/clients/ledger-json-api/LedgerJsonApiClient.generated.d.ts.map +1 -1
- package/build/src/clients/ledger-json-api/LedgerJsonApiClient.generated.js +51 -51
- package/build/src/clients/ledger-json-api/LedgerJsonApiClient.generated.js.map +1 -1
- package/build/src/clients/ledger-json-api/operations/v2/commands/async/submit.d.ts +26 -26
- package/build/src/clients/ledger-json-api/operations/v2/commands/completions.d.ts +1 -2
- package/build/src/clients/ledger-json-api/operations/v2/commands/completions.d.ts.map +1 -1
- package/build/src/clients/ledger-json-api/operations/v2/commands/completions.js +2 -2
- package/build/src/clients/ledger-json-api/operations/v2/commands/completions.js.map +1 -1
- package/build/src/clients/ledger-json-api/operations/v2/commands/submit-and-wait-for-transaction.d.ts +26 -26
- package/build/src/clients/ledger-json-api/operations/v2/events/get-events-by-contract-id.d.ts.map +1 -1
- package/build/src/clients/ledger-json-api/operations/v2/events/get-events-by-contract-id.js +1 -0
- package/build/src/clients/ledger-json-api/operations/v2/events/get-events-by-contract-id.js.map +1 -1
- package/build/src/clients/ledger-json-api/operations/v2/interactive-submission/get-preferred-packages.d.ts.map +1 -1
- package/build/src/clients/ledger-json-api/operations/v2/interactive-submission/get-preferred-packages.js +1 -0
- package/build/src/clients/ledger-json-api/operations/v2/interactive-submission/get-preferred-packages.js.map +1 -1
- package/build/src/clients/ledger-json-api/operations/v2/interactive-submission/prepare.d.ts.map +1 -1
- package/build/src/clients/ledger-json-api/operations/v2/interactive-submission/prepare.js +1 -0
- package/build/src/clients/ledger-json-api/operations/v2/interactive-submission/prepare.js.map +1 -1
- package/build/src/clients/ledger-json-api/operations/v2/parties/aggregate-parties.d.ts +2 -2
- package/build/src/clients/ledger-json-api/operations/v2/parties/aggregate-parties.d.ts.map +1 -1
- package/build/src/clients/ledger-json-api/operations/v2/parties/aggregate-parties.js +25 -8
- package/build/src/clients/ledger-json-api/operations/v2/parties/aggregate-parties.js.map +1 -1
- package/build/src/clients/ledger-json-api/operations/v2/parties/external/generate-topology.d.ts.map +1 -1
- package/build/src/clients/ledger-json-api/operations/v2/parties/external/generate-topology.js +1 -0
- package/build/src/clients/ledger-json-api/operations/v2/parties/external/generate-topology.js.map +1 -1
- package/build/src/clients/ledger-json-api/operations/v2/parties/get.d.ts +2 -2
- package/build/src/clients/ledger-json-api/operations/v2/parties/get.d.ts.map +1 -1
- package/build/src/clients/ledger-json-api/operations/v2/parties/get.js +3 -2
- package/build/src/clients/ledger-json-api/operations/v2/parties/get.js.map +1 -1
- package/build/src/clients/ledger-json-api/operations/v2/parties/list.d.ts +2 -2
- package/build/src/clients/ledger-json-api/operations/v2/parties/list.d.ts.map +1 -1
- package/build/src/clients/ledger-json-api/operations/v2/parties/list.js +3 -2
- package/build/src/clients/ledger-json-api/operations/v2/parties/list.js.map +1 -1
- package/build/src/clients/ledger-json-api/operations/v2/updates/get-transaction-by-id.d.ts.map +1 -1
- package/build/src/clients/ledger-json-api/operations/v2/updates/get-transaction-by-id.js +1 -0
- package/build/src/clients/ledger-json-api/operations/v2/updates/get-transaction-by-id.js.map +1 -1
- package/build/src/clients/ledger-json-api/operations/v2/updates/get-transaction-by-offset.d.ts.map +1 -1
- package/build/src/clients/ledger-json-api/operations/v2/updates/get-transaction-by-offset.js +1 -0
- package/build/src/clients/ledger-json-api/operations/v2/updates/get-transaction-by-offset.js.map +1 -1
- package/build/src/clients/ledger-json-api/operations/v2/updates/get-update-by-id.d.ts.map +1 -1
- package/build/src/clients/ledger-json-api/operations/v2/updates/get-update-by-id.js +1 -0
- package/build/src/clients/ledger-json-api/operations/v2/updates/get-update-by-id.js.map +1 -1
- package/build/src/clients/ledger-json-api/operations/v2/updates/get-update-by-offset.d.ts.map +1 -1
- package/build/src/clients/ledger-json-api/operations/v2/updates/get-update-by-offset.js +1 -0
- package/build/src/clients/ledger-json-api/operations/v2/updates/get-update-by-offset.js.map +1 -1
- package/build/src/clients/scan-api/ScanApiClient.d.ts +7 -6
- package/build/src/clients/scan-api/ScanApiClient.d.ts.map +1 -1
- package/build/src/clients/scan-api/ScanApiClient.generated.d.ts +64 -61
- package/build/src/clients/scan-api/ScanApiClient.generated.d.ts.map +1 -1
- package/build/src/clients/scan-api/ScanApiClient.generated.js +63 -61
- package/build/src/clients/scan-api/ScanApiClient.generated.js.map +1 -1
- package/build/src/clients/scan-api/ScanApiClient.js +75 -35
- package/build/src/clients/scan-api/ScanApiClient.js.map +1 -1
- package/build/src/clients/scan-api/index.d.ts +1 -0
- package/build/src/clients/scan-api/index.d.ts.map +1 -1
- package/build/src/clients/scan-api/index.js.map +1 -1
- package/build/src/clients/scan-api/operations/v0/registry/allocation-instruction/v1/get-allocation-factory-from-registry.d.ts.map +1 -1
- package/build/src/clients/scan-api/operations/v0/registry/allocation-instruction/v1/get-allocation-factory-from-registry.js +1 -0
- package/build/src/clients/scan-api/operations/v0/registry/allocation-instruction/v1/get-allocation-factory-from-registry.js.map +1 -1
- package/build/src/clients/scan-api/operations/v0/scan.d.ts +17 -9
- package/build/src/clients/scan-api/operations/v0/scan.d.ts.map +1 -1
- package/build/src/clients/scan-api/operations/v0/scan.js +42 -5
- package/build/src/clients/scan-api/operations/v0/scan.js.map +1 -1
- package/build/src/clients/validator-api/ValidatorApiClient.generated.d.ts +63 -60
- package/build/src/clients/validator-api/ValidatorApiClient.generated.d.ts.map +1 -1
- package/build/src/clients/validator-api/ValidatorApiClient.generated.js +62 -60
- package/build/src/clients/validator-api/ValidatorApiClient.generated.js.map +1 -1
- package/build/src/clients/validator-api/index.d.ts +2 -0
- package/build/src/clients/validator-api/index.d.ts.map +1 -1
- package/build/src/clients/validator-api/index.js +8 -1
- package/build/src/clients/validator-api/index.js.map +1 -1
- package/build/src/clients/validator-api/operations/v0/admin/generate-external-party-topology.d.ts.map +1 -1
- package/build/src/clients/validator-api/operations/v0/admin/generate-external-party-topology.js +1 -0
- package/build/src/clients/validator-api/operations/v0/admin/generate-external-party-topology.js.map +1 -1
- package/build/src/clients/validator-api/operations/v0/admin/get-decentralized-synchronizer-connection-config.d.ts +9 -0
- package/build/src/clients/validator-api/operations/v0/admin/get-decentralized-synchronizer-connection-config.d.ts.map +1 -0
- package/build/src/clients/validator-api/operations/v0/admin/get-decentralized-synchronizer-connection-config.js +18 -0
- package/build/src/clients/validator-api/operations/v0/admin/get-decentralized-synchronizer-connection-config.js.map +1 -0
- package/build/src/clients/validator-api/operations/v0/admin/index.d.ts +1 -0
- package/build/src/clients/validator-api/operations/v0/admin/index.d.ts.map +1 -1
- package/build/src/clients/validator-api/operations/v0/admin/index.js +1 -0
- package/build/src/clients/validator-api/operations/v0/admin/index.js.map +1 -1
- package/build/src/clients/validator-api/operations/v0/admin/prepare-accept-external-party-setup-proposal.d.ts.map +1 -1
- package/build/src/clients/validator-api/operations/v0/admin/prepare-accept-external-party-setup-proposal.js +1 -0
- package/build/src/clients/validator-api/operations/v0/admin/prepare-accept-external-party-setup-proposal.js.map +1 -1
- package/build/src/clients/validator-api/operations/v0/admin/prepare-transfer-preapproval-send.d.ts.map +1 -1
- package/build/src/clients/validator-api/operations/v0/admin/prepare-transfer-preapproval-send.js +1 -0
- package/build/src/clients/validator-api/operations/v0/admin/prepare-transfer-preapproval-send.js.map +1 -1
- package/build/src/clients/validator-api/operations/v0/ans/get-rules.d.ts.map +1 -1
- package/build/src/clients/validator-api/operations/v0/ans/get-rules.js +1 -0
- package/build/src/clients/validator-api/operations/v0/ans/get-rules.js.map +1 -1
- package/build/src/clients/validator-api/operations/v0/scan-proxy/get-member-traffic-status.d.ts +2 -1
- package/build/src/clients/validator-api/operations/v0/scan-proxy/get-member-traffic-status.d.ts.map +1 -1
- package/build/src/clients/validator-api/operations/v0/scan-proxy/get-member-traffic-status.js +47 -9
- package/build/src/clients/validator-api/operations/v0/scan-proxy/get-member-traffic-status.js.map +1 -1
- package/build/src/clients/validator-api/operations/v0/scan-proxy/registry/allocation-instruction/v1/get-allocation-factory.d.ts.map +1 -1
- package/build/src/clients/validator-api/operations/v0/scan-proxy/registry/allocation-instruction/v1/get-allocation-factory.js +1 -0
- package/build/src/clients/validator-api/operations/v0/scan-proxy/registry/allocation-instruction/v1/get-allocation-factory.js.map +1 -1
- package/build/src/clients/validator-api/operations/v0/scan-proxy/registry/allocations/v1/get-allocation-cancel-context.d.ts.map +1 -1
- package/build/src/clients/validator-api/operations/v0/scan-proxy/registry/allocations/v1/get-allocation-cancel-context.js +1 -0
- package/build/src/clients/validator-api/operations/v0/scan-proxy/registry/allocations/v1/get-allocation-cancel-context.js.map +1 -1
- package/build/src/clients/validator-api/operations/v0/scan-proxy/registry/allocations/v1/get-allocation-transfer-context.d.ts.map +1 -1
- package/build/src/clients/validator-api/operations/v0/scan-proxy/registry/allocations/v1/get-allocation-transfer-context.js +1 -0
- package/build/src/clients/validator-api/operations/v0/scan-proxy/registry/allocations/v1/get-allocation-transfer-context.js.map +1 -1
- package/build/src/clients/validator-api/operations/v0/scan-proxy/registry/allocations/v1/get-allocation-withdraw-context.d.ts.map +1 -1
- package/build/src/clients/validator-api/operations/v0/scan-proxy/registry/allocations/v1/get-allocation-withdraw-context.js +1 -0
- package/build/src/clients/validator-api/operations/v0/scan-proxy/registry/allocations/v1/get-allocation-withdraw-context.js.map +1 -1
- package/build/src/clients/validator-api/operations/v0/scan-proxy/registry/transfer-instruction/v1/get-transfer-factory.d.ts.map +1 -1
- package/build/src/clients/validator-api/operations/v0/scan-proxy/registry/transfer-instruction/v1/get-transfer-factory.js +1 -0
- package/build/src/clients/validator-api/operations/v0/scan-proxy/registry/transfer-instruction/v1/get-transfer-factory.js.map +1 -1
- package/build/src/clients/validator-api/operations/v0/scan-proxy/registry/transfer-instruction/v1/get-transfer-instruction-accept-context.d.ts.map +1 -1
- package/build/src/clients/validator-api/operations/v0/scan-proxy/registry/transfer-instruction/v1/get-transfer-instruction-accept-context.js +1 -0
- package/build/src/clients/validator-api/operations/v0/scan-proxy/registry/transfer-instruction/v1/get-transfer-instruction-accept-context.js.map +1 -1
- package/build/src/clients/validator-api/operations/v0/scan-proxy/registry/transfer-instruction/v1/get-transfer-instruction-reject-context.d.ts.map +1 -1
- package/build/src/clients/validator-api/operations/v0/scan-proxy/registry/transfer-instruction/v1/get-transfer-instruction-reject-context.js +1 -0
- package/build/src/clients/validator-api/operations/v0/scan-proxy/registry/transfer-instruction/v1/get-transfer-instruction-reject-context.js.map +1 -1
- package/build/src/clients/validator-api/operations/v0/scan-proxy/registry/transfer-instruction/v1/get-transfer-instruction-withdraw-context.d.ts.map +1 -1
- package/build/src/clients/validator-api/operations/v0/scan-proxy/registry/transfer-instruction/v1/get-transfer-instruction-withdraw-context.js +1 -0
- package/build/src/clients/validator-api/operations/v0/scan-proxy/registry/transfer-instruction/v1/get-transfer-instruction-withdraw-context.js.map +1 -1
- package/build/src/clients/validator-api/operations/v0/wallet/buy-traffic-requests/get-status.d.ts.map +1 -1
- package/build/src/clients/validator-api/operations/v0/wallet/buy-traffic-requests/get-status.js +1 -0
- package/build/src/clients/validator-api/operations/v0/wallet/buy-traffic-requests/get-status.js.map +1 -1
- package/build/src/clients/validator-api/operations/v0/wallet/transfer-offers/get-status.d.ts.map +1 -1
- package/build/src/clients/validator-api/operations/v0/wallet/transfer-offers/get-status.js +1 -0
- package/build/src/clients/validator-api/operations/v0/wallet/transfer-offers/get-status.js.map +1 -1
- package/build/src/clients/validator-api/schemas/api/admin.d.ts +15 -0
- package/build/src/clients/validator-api/schemas/api/admin.d.ts.map +1 -0
- package/build/src/clients/validator-api/schemas/api/admin.js +27 -0
- package/build/src/clients/validator-api/schemas/api/admin.js.map +1 -0
- package/build/src/clients/validator-api/schemas/api/index.d.ts +1 -0
- package/build/src/clients/validator-api/schemas/api/index.d.ts.map +1 -1
- package/build/src/clients/validator-api/schemas/api/index.js +2 -0
- package/build/src/clients/validator-api/schemas/api/index.js.map +1 -1
- package/build/src/core/BaseClient.d.ts +5 -4
- package/build/src/core/BaseClient.d.ts.map +1 -1
- package/build/src/core/BaseClient.js +8 -8
- package/build/src/core/BaseClient.js.map +1 -1
- package/build/src/core/errors.d.ts +26 -1
- package/build/src/core/errors.d.ts.map +1 -1
- package/build/src/core/errors.js +30 -9
- package/build/src/core/errors.js.map +1 -1
- package/build/src/core/http/HttpClient.d.ts +41 -31
- package/build/src/core/http/HttpClient.d.ts.map +1 -1
- package/build/src/core/http/HttpClient.js +391 -118
- package/build/src/core/http/HttpClient.js.map +1 -1
- package/build/src/core/http/abort.d.ts +9 -0
- package/build/src/core/http/abort.d.ts.map +1 -0
- package/build/src/core/http/abort.js +54 -0
- package/build/src/core/http/abort.js.map +1 -0
- package/build/src/core/http/index.d.ts +1 -0
- package/build/src/core/http/index.d.ts.map +1 -1
- package/build/src/core/http/index.js +1 -0
- package/build/src/core/http/index.js.map +1 -1
- package/build/src/core/http/request-retry.d.ts +130 -0
- package/build/src/core/http/request-retry.d.ts.map +1 -0
- package/build/src/core/http/request-retry.js +14 -0
- package/build/src/core/http/request-retry.js.map +1 -0
- package/build/src/core/http/request-value.d.ts +5 -0
- package/build/src/core/http/request-value.d.ts.map +1 -0
- package/build/src/core/http/request-value.js +63 -0
- package/build/src/core/http/request-value.js.map +1 -0
- package/build/src/core/operations/ApiOperation.d.ts +7 -5
- package/build/src/core/operations/ApiOperation.d.ts.map +1 -1
- package/build/src/core/operations/ApiOperation.js +19 -11
- package/build/src/core/operations/ApiOperation.js.map +1 -1
- package/build/src/core/operations/ApiOperationFactory.d.ts +20 -4
- package/build/src/core/operations/ApiOperationFactory.d.ts.map +1 -1
- package/build/src/core/operations/ApiOperationFactory.js +48 -8
- package/build/src/core/operations/ApiOperationFactory.js.map +1 -1
- package/build/src/core/operations/index.d.ts +2 -0
- package/build/src/core/operations/index.d.ts.map +1 -1
- package/build/src/core/operations/index.js +2 -0
- package/build/src/core/operations/index.js.map +1 -1
- package/build/src/core/operations/operation-execute-options.d.ts +68 -0
- package/build/src/core/operations/operation-execute-options.d.ts.map +1 -0
- package/build/src/core/operations/operation-execute-options.js +36 -0
- package/build/src/core/operations/operation-execute-options.js.map +1 -0
- package/build/src/core/operations/operation-request-options.d.ts +15 -0
- package/build/src/core/operations/operation-request-options.d.ts.map +1 -0
- package/build/src/core/operations/operation-request-options.js +106 -0
- package/build/src/core/operations/operation-request-options.js.map +1 -0
- package/build/src/utils/mining/mining-rounds.d.ts +4 -3
- package/build/src/utils/mining/mining-rounds.d.ts.map +1 -1
- package/build/src/utils/mining/mining-rounds.js +4 -4
- package/build/src/utils/mining/mining-rounds.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/clients/validator-api/schemas/api/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iBAAiB;AACjB,2CAAyB;AAEzB,yCAAyC;AACzC,wCAAsB;AAEtB,qBAAqB;AACrB,+CAA6B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/clients/validator-api/schemas/api/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gBAAgB;AAChB,0CAAwB;AAExB,iBAAiB;AACjB,2CAAyB;AAEzB,yCAAyC;AACzC,wCAAsB;AAEtB,qBAAqB;AACrB,+CAA6B"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { type PartyId, type UserId } from './branded-types';
|
|
2
2
|
import { HttpClient } from './http/HttpClient';
|
|
3
|
+
import { type HttpReadRequestOptions, type HttpRequestOptions } from './http/request-retry';
|
|
3
4
|
import { type CantonRuntime } from './runtime';
|
|
4
5
|
import { type ApiType, type ClientConfig, type NetworkType, type PartialProviderConfig, type ProviderType, type RequestConfig } from './types';
|
|
5
6
|
/** Abstract base class providing common functionality for all API clients */
|
|
@@ -28,10 +29,10 @@ export declare abstract class BaseClient {
|
|
|
28
29
|
* proactive token refresh (e.g., at 50% of lifetime or 2 minutes before expiry, whichever is later).
|
|
29
30
|
*/
|
|
30
31
|
getTokenLifetimeMs(): number | null;
|
|
31
|
-
makeGetRequest<T>(url: string, config?: RequestConfig): Promise<T>;
|
|
32
|
-
makePostRequest<T>(url: string, data:
|
|
33
|
-
makeDeleteRequest<T>(url: string, config?: RequestConfig): Promise<T>;
|
|
34
|
-
makePatchRequest<T>(url: string, data:
|
|
32
|
+
makeGetRequest<T>(url: string, config?: RequestConfig, options?: HttpReadRequestOptions<undefined>): Promise<T>;
|
|
33
|
+
makePostRequest<T, Body = unknown>(url: string, data: Body, config?: RequestConfig, options?: HttpRequestOptions<Body>): Promise<T>;
|
|
34
|
+
makeDeleteRequest<T>(url: string, config?: RequestConfig, options?: HttpRequestOptions<undefined>): Promise<T>;
|
|
35
|
+
makePatchRequest<T, Body = unknown>(url: string, data: Body, config?: RequestConfig, options?: HttpRequestOptions<Body>): Promise<T>;
|
|
35
36
|
getLogger(): import('./logging').Logger | undefined;
|
|
36
37
|
getApiUrl(): string;
|
|
37
38
|
getPartyId(): PartyId;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseClient.d.ts","sourceRoot":"","sources":["../../../src/core/BaseClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAE5D,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,
|
|
1
|
+
{"version":3,"file":"BaseClient.d.ts","sourceRoot":"","sources":["../../../src/core/BaseClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAE5D,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,KAAK,sBAAsB,EAAE,KAAK,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC5F,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,qBAAqB,EAC1B,KAAK,YAAY,EACjB,KAAK,aAAa,EACnB,MAAM,SAAS,CAAC;AAEjB,6EAA6E;AAC7E,8BAAsB,UAAU;IAC9B,SAAS,CAAC,MAAM,EAAE,qBAAqB,CAAC;IACxC,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC;IAC3B,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC;IACrC,SAAS,CAAC,OAAO,EAAE,aAAa,CAAC;IACjC,SAAS,CAAC,UAAU,EAAE,UAAU,CAAC;IAEjC,YAAY,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EA8BnD;IAEY,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC,CAM3C;IAED;;;OAGG;IACI,UAAU,IAAI,IAAI,CAMxB;IAED;;;OAGG;IACI,kBAAkB,IAAI,MAAM,GAAG,IAAI,CAMzC;IAED,sHAAsH;IAC/G,gBAAgB,IAAI,MAAM,GAAG,IAAI,CAMvC;IAED;;;OAGG;IACI,kBAAkB,IAAI,MAAM,GAAG,IAAI,CAMzC;IAEY,cAAc,CAAC,CAAC,EAC3B,GAAG,EAAE,MAAM,EACX,MAAM,GAAE,aAAkB,EAC1B,OAAO,GAAE,sBAAsB,CAAC,SAAS,CAAM,GAC9C,OAAO,CAAC,CAAC,CAAC,CAEZ;IAEY,eAAe,CAAC,CAAC,EAAE,IAAI,GAAG,OAAO,EAC5C,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,IAAI,EACV,MAAM,GAAE,aAAkB,EAC1B,OAAO,GAAE,kBAAkB,CAAC,IAAI,CAAM,GACrC,OAAO,CAAC,CAAC,CAAC,CAEZ;IAEY,iBAAiB,CAAC,CAAC,EAC9B,GAAG,EAAE,MAAM,EACX,MAAM,GAAE,aAAkB,EAC1B,OAAO,GAAE,kBAAkB,CAAC,SAAS,CAAM,GAC1C,OAAO,CAAC,CAAC,CAAC,CAEZ;IAEY,gBAAgB,CAAC,CAAC,EAAE,IAAI,GAAG,OAAO,EAC7C,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,IAAI,EACV,MAAM,GAAE,aAAkB,EAC1B,OAAO,GAAE,kBAAkB,CAAC,IAAI,CAAM,GACrC,OAAO,CAAC,CAAC,CAAC,CAEZ;IAEM,SAAS,IAAI,OAAO,WAAW,EAAE,MAAM,GAAG,SAAS,CAEzD;IAEM,SAAS,IAAI,MAAM,CAMzB;IAEM,UAAU,IAAI,OAAO,CAU3B;IAED;;;OAGG;IACI,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAEjD;IAEM,SAAS,IAAI,MAAM,GAAG,SAAS,CAOrC;IAEM,iBAAiB,IAAI,SAAS,MAAM,EAAE,CAI5C;IAEM,cAAc,CAAC,iBAAiB,GAAE,SAAS,MAAM,EAAO,GAAG,MAAM,EAAE,CAWzE;IAEM,UAAU,IAAI,WAAW,CAE/B;IAEM,WAAW,IAAI,YAAY,GAAG,SAAS,CAE7C;IAEM,UAAU,IAAI,aAAa,CAEjC;IAEM,eAAe,IAAI,MAAM,CAE/B;IAEM,UAAU,IAAI,MAAM,CAE1B;IAEM,UAAU,IAAI,OAAO,CAE3B;CACF"}
|
|
@@ -78,17 +78,17 @@ class BaseClient {
|
|
|
78
78
|
}
|
|
79
79
|
return this.runtime.getAuthenticationManager(this.config.authUrl, apiConfig.auth).getTokenLifetimeMs();
|
|
80
80
|
}
|
|
81
|
-
async makeGetRequest(url, config = {}) {
|
|
82
|
-
return this.httpClient.makeGetRequest(url, config);
|
|
81
|
+
async makeGetRequest(url, config = {}, options = {}) {
|
|
82
|
+
return this.httpClient.makeGetRequest(url, config, options);
|
|
83
83
|
}
|
|
84
|
-
async makePostRequest(url, data, config = {}) {
|
|
85
|
-
return this.httpClient.makePostRequest(url, data, config);
|
|
84
|
+
async makePostRequest(url, data, config = {}, options = {}) {
|
|
85
|
+
return this.httpClient.makePostRequest(url, data, config, options);
|
|
86
86
|
}
|
|
87
|
-
async makeDeleteRequest(url, config = {}) {
|
|
88
|
-
return this.httpClient.makeDeleteRequest(url, config);
|
|
87
|
+
async makeDeleteRequest(url, config = {}, options = {}) {
|
|
88
|
+
return this.httpClient.makeDeleteRequest(url, config, options);
|
|
89
89
|
}
|
|
90
|
-
async makePatchRequest(url, data, config = {}) {
|
|
91
|
-
return this.httpClient.makePatchRequest(url, data, config);
|
|
90
|
+
async makePatchRequest(url, data, config = {}, options = {}) {
|
|
91
|
+
return this.httpClient.makePatchRequest(url, data, config, options);
|
|
92
92
|
}
|
|
93
93
|
getLogger() {
|
|
94
94
|
return this.clientConfig.logger;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseClient.js","sourceRoot":"","sources":["../../../src/core/BaseClient.ts"],"names":[],"mappings":";;;AACA,qCAA8C;AAC9C,kDAA+C;
|
|
1
|
+
{"version":3,"file":"BaseClient.js","sourceRoot":"","sources":["../../../src/core/BaseClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,6 +24,7 @@ export declare const ErrorCode: {
|
|
|
24
24
|
readonly API_ERROR: 'API_ERROR';
|
|
25
25
|
readonly VALIDATION_ERROR: 'VALIDATION_ERROR';
|
|
26
26
|
readonly NETWORK_ERROR: 'NETWORK_ERROR';
|
|
27
|
+
readonly UNKNOWN_MUTATION_OUTCOME: 'UNKNOWN_MUTATION_OUTCOME';
|
|
27
28
|
};
|
|
28
29
|
export type ErrorCodeType = (typeof ErrorCode)[keyof typeof ErrorCode];
|
|
29
30
|
/**
|
|
@@ -67,6 +68,30 @@ export declare class NetworkError extends CantonError {
|
|
|
67
68
|
readonly name: string;
|
|
68
69
|
constructor(message: string, context?: ErrorContext);
|
|
69
70
|
}
|
|
71
|
+
/** HTTP methods whose requests may have changed server state before the response was lost. */
|
|
72
|
+
export type MutationHttpMethod = 'POST' | 'PATCH' | 'DELETE';
|
|
73
|
+
/** Safe, redacted details for a mutation whose server-side outcome cannot be determined. */
|
|
74
|
+
export interface UnknownMutationOutcomeDetails {
|
|
75
|
+
readonly method: MutationHttpMethod;
|
|
76
|
+
readonly endpoint: string;
|
|
77
|
+
readonly attempts: number;
|
|
78
|
+
readonly attemptIdentifiers?: readonly string[];
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Error thrown when a mutation was dispatched but the transport could not determine whether the server applied it.
|
|
82
|
+
*
|
|
83
|
+
* Request bodies, signatures, and tokens are deliberately excluded from the message and serializable context. Callers
|
|
84
|
+
* may opt into a retry strategy and supply explicitly redacted attempt identifiers when an operation is safe to retry.
|
|
85
|
+
*/
|
|
86
|
+
export declare class UnknownMutationOutcomeError extends CantonError {
|
|
87
|
+
readonly name: string;
|
|
88
|
+
readonly method: MutationHttpMethod;
|
|
89
|
+
readonly endpoint: string;
|
|
90
|
+
readonly attempts: number;
|
|
91
|
+
readonly attemptIdentifiers: readonly string[];
|
|
92
|
+
readonly cause: Error;
|
|
93
|
+
constructor(details: UnknownMutationOutcomeDetails, cause: Error);
|
|
94
|
+
}
|
|
70
95
|
/** Error codes for operation-specific errors. */
|
|
71
96
|
export declare const OperationErrorCode: {
|
|
72
97
|
readonly MISSING_CONTRACT: 'MISSING_CONTRACT';
|
|
@@ -86,7 +111,7 @@ export declare class OperationError extends CantonError {
|
|
|
86
111
|
}
|
|
87
112
|
/** Normalize a Canton SDK-shaped error into serializable details for logging or API responses. */
|
|
88
113
|
export declare function normalizeCantonError(error: unknown): NormalizedCantonErrorDetails | null;
|
|
89
|
-
/** Return true when a Canton
|
|
114
|
+
/** Return true when a Canton response proves that a mutation was rejected, independently from retryability. */
|
|
90
115
|
export declare function isDefiniteCantonMutationRejection(error: unknown): boolean;
|
|
91
116
|
/** Read Canton's structured mutation-outcome signal when the API supplies one. */
|
|
92
117
|
export declare function readCantonDefiniteAnswer(error: unknown): boolean | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/core/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAE/D,mDAAmD;AACnD,MAAM,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAE7D,qEAAqE;AACrE,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,gDAAgD;AAChD,eAAO,MAAM,SAAS;aACpB,YAAY,EAAE,cAAc;aAC5B,mBAAmB,EAAE,qBAAqB;aAC1C,oBAAoB,EAAE,sBAAsB;aAC5C,SAAS,EAAE,WAAW;aACtB,gBAAgB,EAAE,kBAAkB;aACpC,aAAa,EAAE,eAAe;
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/core/errors.ts"],"names":[],"mappings":"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"}
|
package/build/src/core/errors.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.OperationError = exports.OperationErrorCode = exports.NetworkError = exports.ValidationError = exports.ApiError = exports.AuthenticationError = exports.ConfigurationError = exports.CantonError = exports.ErrorCode = void 0;
|
|
3
|
+
exports.OperationError = exports.OperationErrorCode = exports.UnknownMutationOutcomeError = exports.NetworkError = exports.ValidationError = exports.ApiError = exports.AuthenticationError = exports.ConfigurationError = exports.CantonError = exports.ErrorCode = void 0;
|
|
4
4
|
exports.normalizeCantonError = normalizeCantonError;
|
|
5
5
|
exports.isDefiniteCantonMutationRejection = isDefiniteCantonMutationRejection;
|
|
6
6
|
exports.readCantonDefiniteAnswer = readCantonDefiniteAnswer;
|
|
@@ -13,6 +13,7 @@ exports.ErrorCode = {
|
|
|
13
13
|
API_ERROR: 'API_ERROR',
|
|
14
14
|
VALIDATION_ERROR: 'VALIDATION_ERROR',
|
|
15
15
|
NETWORK_ERROR: 'NETWORK_ERROR',
|
|
16
|
+
UNKNOWN_MUTATION_OUTCOME: 'UNKNOWN_MUTATION_OUTCOME',
|
|
16
17
|
};
|
|
17
18
|
/**
|
|
18
19
|
* Base error class for all Canton SDK errors. Extends `@hardlydifficult/rest-client`'s `RestClientError` so errors are
|
|
@@ -75,6 +76,32 @@ class NetworkError extends CantonError {
|
|
|
75
76
|
}
|
|
76
77
|
}
|
|
77
78
|
exports.NetworkError = NetworkError;
|
|
79
|
+
/**
|
|
80
|
+
* Error thrown when a mutation was dispatched but the transport could not determine whether the server applied it.
|
|
81
|
+
*
|
|
82
|
+
* Request bodies, signatures, and tokens are deliberately excluded from the message and serializable context. Callers
|
|
83
|
+
* may opt into a retry strategy and supply explicitly redacted attempt identifiers when an operation is safe to retry.
|
|
84
|
+
*/
|
|
85
|
+
class UnknownMutationOutcomeError extends CantonError {
|
|
86
|
+
constructor(details, cause) {
|
|
87
|
+
const attemptIdentifiers = Object.freeze([...(details.attemptIdentifiers ?? [])]);
|
|
88
|
+
const context = {
|
|
89
|
+
method: details.method,
|
|
90
|
+
endpoint: details.endpoint,
|
|
91
|
+
attempts: details.attempts,
|
|
92
|
+
...(attemptIdentifiers.length > 0 ? { attemptIdentifiers } : {}),
|
|
93
|
+
};
|
|
94
|
+
super(`The outcome of ${details.method} ${details.endpoint} is unknown after ${details.attempts} request attempt${details.attempts === 1 ? '' : 's'}`, exports.ErrorCode.UNKNOWN_MUTATION_OUTCOME, context);
|
|
95
|
+
this.name = 'UnknownMutationOutcomeError';
|
|
96
|
+
this.method = details.method;
|
|
97
|
+
this.endpoint = details.endpoint;
|
|
98
|
+
this.attempts = details.attempts;
|
|
99
|
+
this.attemptIdentifiers = attemptIdentifiers;
|
|
100
|
+
this.cause = cause;
|
|
101
|
+
Object.defineProperty(this, 'cause', { enumerable: false });
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
exports.UnknownMutationOutcomeError = UnknownMutationOutcomeError;
|
|
78
105
|
/** Error codes for operation-specific errors. */
|
|
79
106
|
exports.OperationErrorCode = {
|
|
80
107
|
MISSING_CONTRACT: 'MISSING_CONTRACT',
|
|
@@ -101,6 +128,7 @@ const CANTON_SDK_ERROR_NAMES = new Set([
|
|
|
101
128
|
'ConfigurationError',
|
|
102
129
|
'NetworkError',
|
|
103
130
|
'OperationError',
|
|
131
|
+
'UnknownMutationOutcomeError',
|
|
104
132
|
'ValidationError',
|
|
105
133
|
]);
|
|
106
134
|
/** Normalize a Canton SDK-shaped error into serializable details for logging or API responses. */
|
|
@@ -124,14 +152,12 @@ function normalizeCantonError(error) {
|
|
|
124
152
|
...(context !== undefined ? { context, response: context } : {}),
|
|
125
153
|
};
|
|
126
154
|
}
|
|
127
|
-
/** Return true when a Canton
|
|
155
|
+
/** Return true when a Canton response proves that a mutation was rejected, independently from retryability. */
|
|
128
156
|
function isDefiniteCantonMutationRejection(error) {
|
|
129
157
|
const details = normalizeCantonError(error);
|
|
130
158
|
const status = details?.status;
|
|
131
159
|
if (status === undefined)
|
|
132
160
|
return false;
|
|
133
|
-
if (isRetryableCantonApiCode(status, details?.code))
|
|
134
|
-
return false;
|
|
135
161
|
return status >= 400 && status < 500 && status !== 408 && status !== 425 && status !== 429;
|
|
136
162
|
}
|
|
137
163
|
/** Read Canton's structured mutation-outcome signal when the API supplies one. */
|
|
@@ -147,11 +173,6 @@ function readDefiniteAnswerProperty(source) {
|
|
|
147
173
|
const value = source['definiteAnswer'] ?? source['definite_answer'];
|
|
148
174
|
return typeof value === 'boolean' ? value : undefined;
|
|
149
175
|
}
|
|
150
|
-
/** Return true when a Canton API status/code pair is known to be transient. */
|
|
151
|
-
function isRetryableCantonApiCode(status, code) {
|
|
152
|
-
return ((status === 400 && code === 'UNKNOWN_CONTRACT_SYNCHRONIZERS') ||
|
|
153
|
-
(status === 409 && code === 'SEQUENCER_BACKPRESSURE'));
|
|
154
|
-
}
|
|
155
176
|
/** Read normalized error context from current and legacy SDK error fields. */
|
|
156
177
|
function readErrorContext(source) {
|
|
157
178
|
const { context } = source;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/core/errors.ts"],"names":[],"mappings":";;;;;;AAAA,8DAA+D;AAqB/D,gDAAgD;AACnC,QAAA,SAAS,GAAG;IACvB,YAAY,EAAE,cAAc;IAC5B,mBAAmB,EAAE,qBAAqB;IAC1C,oBAAoB,EAAE,sBAAsB;IAC5C,SAAS,EAAE,WAAW;IACtB,gBAAgB,EAAE,kBAAkB;IACpC,aAAa,EAAE,eAAe;
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/core/errors.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { type Logger } from '../logging';
|
|
2
2
|
import { type RequestConfig } from '../types';
|
|
3
|
+
import { type HttpReadRequestOptions, type HttpRequestOptions } from './request-retry';
|
|
3
4
|
export interface HttpClientRetryConfig {
|
|
4
|
-
/** Number of retries after the initial attempt. */
|
|
5
|
+
/** Number of retries after the initial attempt for requests explicitly classified as semantic reads. */
|
|
5
6
|
readonly maxRetries: number;
|
|
6
|
-
/** Delay between retries in milliseconds. */
|
|
7
|
+
/** Delay between read-only retries in milliseconds. */
|
|
7
8
|
readonly delayMs: number;
|
|
8
9
|
}
|
|
9
|
-
/** Handles HTTP requests with authentication, logging, and
|
|
10
|
+
/** Handles HTTP requests with authentication, logging, cancellation, and explicit retry safety. */
|
|
10
11
|
export declare class HttpClient {
|
|
11
12
|
private readonly axiosInstance;
|
|
12
13
|
private readonly bearerTokenProvider;
|
|
@@ -15,40 +16,49 @@ export declare class HttpClient {
|
|
|
15
16
|
private static readonly CAUSE_TRUNCATE_LENGTH;
|
|
16
17
|
private static readonly CONTEXT_VALUE_TRUNCATE_LENGTH;
|
|
17
18
|
private static readonly MAX_CONTEXT_KEYS;
|
|
19
|
+
private static readonly MAX_ATTEMPT_IDENTIFIER_LENGTH;
|
|
18
20
|
constructor(logger?: Logger, bearerTokenProvider?: () => Promise<string>);
|
|
21
|
+
/** Configure the default retry policy used only by requests classified as semantic reads. */
|
|
19
22
|
setRetryConfig(config: HttpClientRetryConfig): void;
|
|
20
|
-
makeGetRequest<T>(url: string, config?: RequestConfig,
|
|
21
|
-
makePostRequest<T>(url: string, data:
|
|
22
|
-
makeDeleteRequest<T>(url: string, config?: RequestConfig,
|
|
23
|
-
makePatchRequest<T>(url: string, data:
|
|
23
|
+
makeGetRequest<T>(url: string, config?: RequestConfig, options?: HttpReadRequestOptions<undefined>): Promise<T>;
|
|
24
|
+
makePostRequest<T, Body = unknown>(url: string, data: Body, config?: RequestConfig, options?: HttpRequestOptions<Body>): Promise<T>;
|
|
25
|
+
makeDeleteRequest<T>(url: string, config?: RequestConfig, options?: HttpRequestOptions<undefined>): Promise<T>;
|
|
26
|
+
makePatchRequest<T, Body = unknown>(url: string, data: Body, config?: RequestConfig, options?: HttpRequestOptions<Body>): Promise<T>;
|
|
27
|
+
private makeRequest;
|
|
28
|
+
private resolveRetryStrategy;
|
|
29
|
+
private validateMaxAttempts;
|
|
30
|
+
private shouldRetry;
|
|
31
|
+
private waitForRetry;
|
|
32
|
+
private createAttemptContext;
|
|
33
|
+
private createReadonlyBody;
|
|
34
|
+
private cloneBody;
|
|
35
|
+
/** Convert a deeply readonly callback result back into an isolated mutable transport snapshot. */
|
|
36
|
+
private cloneDerivedBody;
|
|
37
|
+
private dispatchRequest;
|
|
24
38
|
private buildHeaders;
|
|
25
|
-
|
|
39
|
+
/** Invoke logging as a detached observer. Logger behavior can never affect request control flow. */
|
|
40
|
+
private observeLog;
|
|
41
|
+
/** Isolate logger-owned values so a custom logger cannot mutate request or response control-flow state. */
|
|
42
|
+
private createLogSnapshot;
|
|
43
|
+
/** Remove credentials from logger-owned header snapshots without changing dispatch headers. */
|
|
44
|
+
private redactSensitiveLogHeaders;
|
|
45
|
+
private logFailedRequest;
|
|
46
|
+
private logRetry;
|
|
26
47
|
private handleRequestError;
|
|
27
|
-
/**
|
|
28
|
-
* Formats a context object into a summary string for error messages. Shows up to MAX_CONTEXT_KEYS keys with truncated
|
|
29
|
-
* values.
|
|
30
|
-
*/
|
|
48
|
+
/** Formats a context object into a summary string. Shows up to MAX_CONTEXT_KEYS keys with truncated values. */
|
|
31
49
|
private formatContextSummary;
|
|
32
|
-
/**
|
|
33
|
-
* Safely converts a context value to a string representation. Handles null, undefined, strings, and objects (with
|
|
34
|
-
* circular reference protection).
|
|
35
|
-
*/
|
|
50
|
+
/** Safely converts a context value to a string representation. */
|
|
36
51
|
private stringifyContextValue;
|
|
37
|
-
/**
|
|
38
|
-
* Determines whether a request error is retryable. Retries on:
|
|
39
|
-
*
|
|
40
|
-
* - HTTP 404 (transient during Canton node restarts)
|
|
41
|
-
* - HTTP 5xx server errors
|
|
42
|
-
* - Network errors
|
|
43
|
-
* - Canton-specific transient errors: UNKNOWN_CONTRACT_SYNCHRONIZERS (400), SEQUENCER_BACKPRESSURE (409), HTTP 503
|
|
44
|
-
*/
|
|
52
|
+
/** Return true for transport failures that the SDK has historically classified as transient. */
|
|
45
53
|
private isRetryableError;
|
|
46
|
-
|
|
47
|
-
private
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
private
|
|
54
|
+
private classifyRequestError;
|
|
55
|
+
private toTerminalError;
|
|
56
|
+
private preservePriorAmbiguity;
|
|
57
|
+
private hasAmbiguousAttempt;
|
|
58
|
+
private normalizeCallbackError;
|
|
59
|
+
private redactEndpoint;
|
|
60
|
+
private redactAttemptIdentifier;
|
|
61
|
+
private isCanceledError;
|
|
62
|
+
private abortableSleep;
|
|
53
63
|
}
|
|
54
64
|
//# sourceMappingURL=HttpClient.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HttpClient.d.ts","sourceRoot":"","sources":["../../../../src/core/http/HttpClient.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"HttpClient.d.ts","sourceRoot":"","sources":["../../../../src/core/http/HttpClient.ts"],"names":[],"mappings":"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"}
|