@distrohelena/canton-typescript-sdk 0.1.12 → 0.1.14
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/client/service-registry.js +6 -6
- package/dist/core/transports/transport.interface.d.ts +30 -172
- package/dist/core/types/command-inspection-contract.d.ts +3 -2
- package/dist/core/types/commands/create-and-exercise-command.d.ts +8 -6
- package/dist/core/types/commands/create-and-exercise-command.js +9 -5
- package/dist/core/types/commands/create-command.d.ts +6 -4
- package/dist/core/types/commands/create-command.js +7 -3
- package/dist/core/types/commands/exercise-by-key-command.d.ts +5 -4
- package/dist/core/types/commands/exercise-by-key-command.js +3 -3
- package/dist/core/types/commands/exercise-command.d.ts +5 -4
- package/dist/core/types/commands/exercise-command.js +3 -3
- package/dist/core/types/sdk-command.d.ts +6 -4
- package/dist/debugger/replay/ledger-replay-environment-builder.d.ts +2 -4
- package/dist/debugger/replay/ledger-replay-environment-builder.js +4 -4
- package/dist/debugger/replay/replay-artifact-resolver.d.ts +1 -2
- package/dist/debugger/replay/replay-artifact-resolver.js +3 -4
- package/dist/debugger/replay/replay-update-loader.d.ts +2 -3
- package/dist/debugger/replay/replay-update-loader.js +5 -3
- package/dist/index.d.ts +1 -91
- package/dist/index.js +0 -89
- package/dist/protobuf/index.js +2344 -0
- package/dist/services/command-completion/command-completion-service-client.d.ts +3 -3
- package/dist/services/command-completion/command-completion-service-client.js +5 -2
- package/dist/services/command-inspection/command-inspection-service-client.d.ts +1 -2
- package/dist/services/commands/command-payload-builder.js +11 -5
- package/dist/services/contract/contract-service-client.d.ts +1 -2
- package/dist/services/event-query/event-query-service-client.d.ts +1 -2
- package/dist/services/health/health-service-client.d.ts +1 -2
- package/dist/services/identity-initialization/identity-initialization-service-client.d.ts +1 -4
- package/dist/services/identity-provider-config/identity-provider-config-service-client.d.ts +1 -4
- package/dist/services/package/package-service-client.d.ts +1 -8
- package/dist/services/package-management/package-management-service-client.d.ts +1 -4
- package/dist/services/participant-inspection/participant-inspection-service-client.d.ts +1 -16
- package/dist/services/participant-package/participant-package-service-client.d.ts +1 -12
- package/dist/services/participant-party-management/participant-party-management-service-client.d.ts +1 -6
- package/dist/services/participant-repair/participant-repair-service-client.d.ts +1 -2
- package/dist/services/participant-status/participant-status-service-client.d.ts +2 -3
- package/dist/services/party-management/party-management-service-client.d.ts +2 -8
- package/dist/services/party-management/party-management-service-client.js +2 -4
- package/dist/services/pruning/pruning-service-client.d.ts +4 -8
- package/dist/services/resource-management/resource-management-service-client.d.ts +1 -2
- package/dist/services/state/state-service-client.d.ts +1 -8
- package/dist/services/synchronizer-connectivity/synchronizer-connectivity-service-client.d.ts +1 -6
- package/dist/services/topology-aggregation/topology-aggregation-service-client.d.ts +2 -4
- package/dist/services/topology-manager-read/topology-manager-read-service-client.d.ts +1 -36
- package/dist/services/topology-manager-write/topology-manager-write-service-client.d.ts +1 -4
- package/dist/services/traffic-control/traffic-control-service-client.d.ts +1 -2
- package/dist/services/update/update-service-client.d.ts +6 -14
- package/dist/services/update/update-service-client.js +5 -2
- package/dist/services/user-management/user-management-service-client.d.ts +1 -8
- package/dist/services/version/version-service-client.d.ts +1 -2
- package/dist/testing/daml/daml-choice-action-arbitrary.d.ts +2 -1
- package/dist/testing/daml/daml-choice-action-arbitrary.js +4 -1
- package/dist/testing/daml/daml-create-action-arbitrary.d.ts +2 -1
- package/dist/testing/daml/daml-create-action-arbitrary.js +4 -1
- package/dist/testing/runtime/declarative-action-executor.js +3 -2
- package/dist/testing/targets/target.d.ts +12 -11
- package/dist/testing/targets/target.js +15 -12
- package/dist/transports/grpc/grpc-channel-factory.d.ts +13 -8
- package/dist/transports/grpc/grpc-channel-factory.js +54 -6
- package/dist/transports/grpc/grpc-transport.d.ts +87 -220
- package/dist/transports/grpc/grpc-transport.js +138 -236
- package/dist/transports/grpc/mappers/command-inspection-mapper.js +5 -9
- package/dist/transports/grpc/mappers/commands-mapper.d.ts +3 -3
- package/dist/transports/grpc/mappers/commands-mapper.js +39 -40
- package/dist/transports/grpc/mappers/{command-completion-mapper.d.ts → completion-mapper.d.ts} +0 -8
- package/dist/transports/grpc/mappers/{command-completion-mapper.js → completion-mapper.js} +0 -25
- package/dist/transports/grpc/mappers/contracts-mapper.d.ts +0 -6
- package/dist/transports/grpc/mappers/contracts-mapper.js +0 -12
- package/dist/transports/grpc/mappers/packages-mapper.d.ts +0 -25
- package/dist/transports/grpc/mappers/packages-mapper.js +0 -106
- package/dist/transports/grpc/mappers/pruning-mapper.d.ts +1 -18
- package/dist/transports/grpc/mappers/pruning-mapper.js +1 -48
- package/dist/transports/grpc/mappers/topology-common-mapper.d.ts +1 -8
- package/dist/transports/grpc/mappers/topology-common-mapper.js +0 -21
- package/dist/transports/grpc/mappers/topology-manager-read-mapper.d.ts +1 -9
- package/dist/transports/grpc/mappers/topology-manager-read-mapper.js +1 -19
- package/dist/transports/grpc/mappers/topology-manager-write-mapper.d.ts +1 -9
- package/dist/transports/grpc/mappers/topology-manager-write-mapper.js +0 -34
- package/dist/transports/json/json-transport.d.ts +52 -142
- package/dist/transports/json/json-transport.js +27 -34
- package/dist/transports/json/mappers/commands-mapper.js +18 -9
- package/dist/transports/json/mappers/users-mapper.d.ts +5 -1
- package/dist/transports/json/mappers/users-mapper.js +17 -6
- package/package.json +5 -1
- package/dist/core/types/completion-stream-response.d.ts +0 -10
- package/dist/core/types/completion-stream-response.js +0 -8
- package/dist/core/types/participant-connected-synchronizer.d.ts +0 -12
- package/dist/core/types/participant-connected-synchronizer.js +0 -12
- package/dist/core/types/registered-synchronizer-connection-config.d.ts +0 -25
- package/dist/core/types/registered-synchronizer-connection-config.js +0 -23
- package/dist/core/types/registered-synchronizer-connection-grpc.d.ts +0 -10
- package/dist/core/types/registered-synchronizer-connection-grpc.js +0 -13
- package/dist/core/types/registered-synchronizer-connection-pool-delays.d.ts +0 -13
- package/dist/core/types/registered-synchronizer-connection-pool-delays.js +0 -12
- package/dist/core/types/registered-synchronizer-connection.d.ts +0 -11
- package/dist/core/types/registered-synchronizer-connection.js +0 -10
- package/dist/core/types/registered-synchronizer-predecessor.d.ts +0 -10
- package/dist/core/types/registered-synchronizer-predecessor.js +0 -10
- package/dist/core/types/registered-synchronizer-sequencer-connections.d.ts +0 -20
- package/dist/core/types/registered-synchronizer-sequencer-connections.js +0 -18
- package/dist/core/types/registered-synchronizer-status.d.ts +0 -9
- package/dist/core/types/registered-synchronizer-status.js +0 -10
- package/dist/core/types/registered-synchronizer-submission-request-amplification.d.ts +0 -13
- package/dist/core/types/registered-synchronizer-submission-request-amplification.js +0 -12
- package/dist/core/types/registered-synchronizer-subscription-liveness-limits.d.ts +0 -9
- package/dist/core/types/registered-synchronizer-subscription-liveness-limits.js +0 -8
- package/dist/core/types/registered-synchronizer-time-proof-request-config.d.ts +0 -11
- package/dist/core/types/registered-synchronizer-time-proof-request-config.js +0 -10
- package/dist/core/types/registered-synchronizer-time-tracker-config.d.ts +0 -14
- package/dist/core/types/registered-synchronizer-time-tracker-config.js +0 -12
- package/dist/core/types/registered-synchronizer.d.ts +0 -17
- package/dist/core/types/registered-synchronizer.js +0 -14
- package/dist/core/types/requests/add-party-async-request.d.ts +0 -27
- package/dist/core/types/requests/add-party-async-request.js +0 -25
- package/dist/core/types/requests/clear-party-onboarding-flag-request.d.ts +0 -13
- package/dist/core/types/requests/clear-party-onboarding-flag-request.js +0 -12
- package/dist/core/types/requests/count-in-flight-request.d.ts +0 -6
- package/dist/core/types/requests/count-in-flight-request.js +0 -6
- package/dist/core/types/requests/create-temporary-topology-store-request.d.ts +0 -8
- package/dist/core/types/requests/create-temporary-topology-store-request.js +0 -8
- package/dist/core/types/requests/current-time-request.d.ts +0 -2
- package/dist/core/types/requests/current-time-request.js +0 -2
- package/dist/core/types/requests/drop-temporary-topology-store-request.d.ts +0 -7
- package/dist/core/types/requests/drop-temporary-topology-store-request.js +0 -6
- package/dist/core/types/requests/get-completions-request.d.ts +0 -8
- package/dist/core/types/requests/get-completions-request.js +0 -8
- package/dist/core/types/requests/get-config-for-slow-counter-participants-request.d.ts +0 -6
- package/dist/core/types/requests/get-config-for-slow-counter-participants-request.js +0 -6
- package/dist/core/types/requests/get-contract-request.d.ts +0 -8
- package/dist/core/types/requests/get-contract-request.js +0 -8
- package/dist/core/types/requests/get-events-by-contract-id-request.d.ts +0 -8
- package/dist/core/types/requests/get-events-by-contract-id-request.js +0 -8
- package/dist/core/types/requests/get-highest-offset-by-timestamp-request.d.ts +0 -10
- package/dist/core/types/requests/get-highest-offset-by-timestamp-request.js +0 -10
- package/dist/core/types/requests/get-id-request.d.ts +0 -2
- package/dist/core/types/requests/get-id-request.js +0 -2
- package/dist/core/types/requests/get-intervals-behind-for-counter-participants-request.d.ts +0 -10
- package/dist/core/types/requests/get-intervals-behind-for-counter-participants-request.js +0 -10
- package/dist/core/types/requests/get-no-wait-commitments-from-request.d.ts +0 -8
- package/dist/core/types/requests/get-no-wait-commitments-from-request.js +0 -8
- package/dist/core/types/requests/get-package-contents-request.d.ts +0 -6
- package/dist/core/types/requests/get-package-contents-request.js +0 -6
- package/dist/core/types/requests/get-participant-pruning-schedule-request.d.ts +0 -2
- package/dist/core/types/requests/get-participant-pruning-schedule-request.js +0 -2
- package/dist/core/types/requests/get-pruning-schedule-request.d.ts +0 -2
- package/dist/core/types/requests/get-pruning-schedule-request.js +0 -2
- package/dist/core/types/requests/get-resource-limits-request.d.ts +0 -2
- package/dist/core/types/requests/get-resource-limits-request.js +0 -2
- package/dist/core/types/requests/get-safe-pruning-offset-request.d.ts +0 -11
- package/dist/core/types/requests/get-safe-pruning-offset-request.js +0 -11
- package/dist/core/types/requests/get-synchronizer-id-request.d.ts +0 -6
- package/dist/core/types/requests/get-synchronizer-id-request.js +0 -6
- package/dist/core/types/requests/get-update-by-hash-request.d.ts +0 -8
- package/dist/core/types/requests/get-update-by-hash-request.js +0 -8
- package/dist/core/types/requests/get-update-by-id-request.d.ts +0 -8
- package/dist/core/types/requests/get-update-by-id-request.js +0 -8
- package/dist/core/types/requests/get-update-by-offset-request.d.ts +0 -8
- package/dist/core/types/requests/get-update-by-offset-request.js +0 -8
- package/dist/core/types/requests/get-updates-page-request.d.ts +0 -16
- package/dist/core/types/requests/get-updates-page-request.js +0 -16
- package/dist/core/types/requests/get-updates-request.d.ts +0 -12
- package/dist/core/types/requests/get-updates-request.js +0 -12
- package/dist/core/types/requests/inspect-commitment-contracts-request.d.ts +0 -12
- package/dist/core/types/requests/inspect-commitment-contracts-request.js +0 -12
- package/dist/core/types/requests/list-all-v2-request.d.ts +0 -12
- package/dist/core/types/requests/list-all-v2-request.js +0 -10
- package/dist/core/types/requests/list-available-stores-request.d.ts +0 -3
- package/dist/core/types/requests/list-available-stores-request.js +0 -5
- package/dist/core/types/requests/list-connected-synchronizers-request.d.ts +0 -2
- package/dist/core/types/requests/list-connected-synchronizers-request.js +0 -2
- package/dist/core/types/requests/list-pending-operations-request.d.ts +0 -12
- package/dist/core/types/requests/list-pending-operations-request.js +0 -12
- package/dist/core/types/requests/list-registered-synchronizers-request.d.ts +0 -6
- package/dist/core/types/requests/list-registered-synchronizers-request.js +0 -6
- package/dist/core/types/requests/lookup-offset-by-time-request.d.ts +0 -6
- package/dist/core/types/requests/lookup-offset-by-time-request.js +0 -6
- package/dist/core/types/requests/lookup-received-acs-commitments-request.d.ts +0 -14
- package/dist/core/types/requests/lookup-received-acs-commitments-request.js +0 -12
- package/dist/core/types/requests/lookup-sent-acs-commitments-request.d.ts +0 -14
- package/dist/core/types/requests/lookup-sent-acs-commitments-request.js +0 -12
- package/dist/core/types/requests/open-commitment-request.d.ts +0 -12
- package/dist/core/types/requests/open-commitment-request.js +0 -13
- package/dist/core/types/requests/participant-list-packages-request.d.ts +0 -8
- package/dist/core/types/requests/participant-list-packages-request.js +0 -8
- package/dist/core/types/requests/traffic-control-state-request.d.ts +0 -6
- package/dist/core/types/requests/traffic-control-state-request.js +0 -6
- package/dist/core/types/resource-limits.d.ts +0 -10
- package/dist/core/types/resource-limits.js +0 -12
- package/dist/core/types/responses/add-party-async-response.d.ts +0 -6
- package/dist/core/types/responses/add-party-async-response.js +0 -6
- package/dist/core/types/responses/clear-party-onboarding-flag-response.d.ts +0 -8
- package/dist/core/types/responses/clear-party-onboarding-flag-response.js +0 -8
- package/dist/core/types/responses/count-in-flight-response.d.ts +0 -8
- package/dist/core/types/responses/count-in-flight-response.js +0 -8
- package/dist/core/types/responses/create-temporary-topology-store-response.d.ts +0 -7
- package/dist/core/types/responses/create-temporary-topology-store-response.js +0 -6
- package/dist/core/types/responses/current-time-response.d.ts +0 -6
- package/dist/core/types/responses/current-time-response.js +0 -6
- package/dist/core/types/responses/drop-temporary-topology-store-response.d.ts +0 -3
- package/dist/core/types/responses/drop-temporary-topology-store-response.js +0 -5
- package/dist/core/types/responses/get-config-for-slow-counter-participants-response.d.ts +0 -7
- package/dist/core/types/responses/get-config-for-slow-counter-participants-response.js +0 -6
- package/dist/core/types/responses/get-contract-response.d.ts +0 -6
- package/dist/core/types/responses/get-contract-response.js +0 -6
- package/dist/core/types/responses/get-events-by-contract-id-response.d.ts +0 -10
- package/dist/core/types/responses/get-events-by-contract-id-response.js +0 -8
- package/dist/core/types/responses/get-highest-offset-by-timestamp-response.d.ts +0 -6
- package/dist/core/types/responses/get-highest-offset-by-timestamp-response.js +0 -6
- package/dist/core/types/responses/get-id-response.d.ts +0 -8
- package/dist/core/types/responses/get-id-response.js +0 -8
- package/dist/core/types/responses/get-intervals-behind-for-counter-participants-response.d.ts +0 -7
- package/dist/core/types/responses/get-intervals-behind-for-counter-participants-response.js +0 -6
- package/dist/core/types/responses/get-no-wait-commitments-from-response.d.ts +0 -9
- package/dist/core/types/responses/get-no-wait-commitments-from-response.js +0 -8
- package/dist/core/types/responses/get-package-contents-response.d.ts +0 -14
- package/dist/core/types/responses/get-package-contents-response.js +0 -12
- package/dist/core/types/responses/get-participant-pruning-schedule-response.d.ts +0 -7
- package/dist/core/types/responses/get-participant-pruning-schedule-response.js +0 -6
- package/dist/core/types/responses/get-pruning-schedule-response.d.ts +0 -7
- package/dist/core/types/responses/get-pruning-schedule-response.js +0 -6
- package/dist/core/types/responses/get-resource-limits-response.d.ts +0 -7
- package/dist/core/types/responses/get-resource-limits-response.js +0 -6
- package/dist/core/types/responses/get-safe-pruning-offset-response.d.ts +0 -8
- package/dist/core/types/responses/get-safe-pruning-offset-response.js +0 -8
- package/dist/core/types/responses/get-synchronizer-id-response.d.ts +0 -8
- package/dist/core/types/responses/get-synchronizer-id-response.js +0 -8
- package/dist/core/types/responses/get-update-by-hash-response.d.ts +0 -6
- package/dist/core/types/responses/get-update-by-hash-response.js +0 -6
- package/dist/core/types/responses/get-update-by-id-response.d.ts +0 -6
- package/dist/core/types/responses/get-update-by-id-response.js +0 -6
- package/dist/core/types/responses/get-update-by-offset-response.d.ts +0 -6
- package/dist/core/types/responses/get-update-by-offset-response.js +0 -6
- package/dist/core/types/responses/get-updates-page-response.d.ts +0 -12
- package/dist/core/types/responses/get-updates-page-response.js +0 -12
- package/dist/core/types/responses/inspect-commitment-contracts-response.d.ts +0 -6
- package/dist/core/types/responses/inspect-commitment-contracts-response.js +0 -6
- package/dist/core/types/responses/list-all-v2-response.d.ts +0 -7
- package/dist/core/types/responses/list-all-v2-response.js +0 -6
- package/dist/core/types/responses/list-available-stores-response.d.ts +0 -7
- package/dist/core/types/responses/list-available-stores-response.js +0 -6
- package/dist/core/types/responses/list-connected-synchronizers-response.d.ts +0 -7
- package/dist/core/types/responses/list-connected-synchronizers-response.js +0 -6
- package/dist/core/types/responses/list-pending-operations-response.d.ts +0 -7
- package/dist/core/types/responses/list-pending-operations-response.js +0 -6
- package/dist/core/types/responses/list-registered-synchronizers-response.d.ts +0 -7
- package/dist/core/types/responses/list-registered-synchronizers-response.js +0 -6
- package/dist/core/types/responses/lookup-offset-by-time-response.d.ts +0 -6
- package/dist/core/types/responses/lookup-offset-by-time-response.js +0 -6
- package/dist/core/types/responses/lookup-received-acs-commitments-response.d.ts +0 -7
- package/dist/core/types/responses/lookup-received-acs-commitments-response.js +0 -6
- package/dist/core/types/responses/lookup-sent-acs-commitments-response.d.ts +0 -7
- package/dist/core/types/responses/lookup-sent-acs-commitments-response.js +0 -6
- package/dist/core/types/responses/open-commitment-response.d.ts +0 -6
- package/dist/core/types/responses/open-commitment-response.js +0 -6
- package/dist/core/types/responses/participant-list-packages-response.d.ts +0 -7
- package/dist/core/types/responses/participant-list-packages-response.js +0 -6
- package/dist/core/types/responses/traffic-control-state-response.d.ts +0 -7
- package/dist/core/types/responses/traffic-control-state-response.js +0 -6
- package/dist/core/types/traffic-state.d.ts +0 -16
- package/dist/core/types/traffic-state.js +0 -16
- package/dist/services/command-completion/completion-observer.interface.d.ts +0 -3
- package/dist/services/command-completion/completion-observer.interface.js +0 -1
- package/dist/transports/grpc/mappers/event-query-mapper.d.ts +0 -5
- package/dist/transports/grpc/mappers/event-query-mapper.js +0 -25
- package/dist/transports/grpc/mappers/events-mapper.d.ts +0 -10
- package/dist/transports/grpc/mappers/events-mapper.js +0 -48
- package/dist/transports/grpc/mappers/identity-initialization-mapper.d.ts +0 -10
- package/dist/transports/grpc/mappers/identity-initialization-mapper.js +0 -19
- package/dist/transports/grpc/mappers/participant-inspection-mapper.d.ts +0 -33
- package/dist/transports/grpc/mappers/participant-inspection-mapper.js +0 -244
- package/dist/transports/grpc/mappers/participant-party-management-mapper.d.ts +0 -13
- package/dist/transports/grpc/mappers/participant-party-management-mapper.js +0 -69
- package/dist/transports/grpc/mappers/participant-repair-mapper.d.ts +0 -6
- package/dist/transports/grpc/mappers/participant-repair-mapper.js +0 -36
- package/dist/transports/grpc/mappers/resource-management-mapper.d.ts +0 -5
- package/dist/transports/grpc/mappers/resource-management-mapper.js +0 -16
- package/dist/transports/grpc/mappers/synchronizer-connectivity-mapper.d.ts +0 -13
- package/dist/transports/grpc/mappers/synchronizer-connectivity-mapper.js +0 -179
- package/dist/transports/grpc/mappers/traffic-control-mapper.d.ts +0 -5
- package/dist/transports/grpc/mappers/traffic-control-mapper.js +0 -25
- package/dist/transports/grpc/mappers/update-read-mapper.d.ts +0 -33
- package/dist/transports/grpc/mappers/update-read-mapper.js +0 -67
|
@@ -3,9 +3,10 @@ import { CampaignExecutableAction } from "../campaign/campaign-runner.js";
|
|
|
3
3
|
import { ResolvedDeclarativeCreateTarget } from "../targets/target.js";
|
|
4
4
|
import { DamlTestingCatalog } from "./daml-testing-catalog.js";
|
|
5
5
|
import { DamlTestingValue } from "./daml-value-arbitrary.js";
|
|
6
|
+
import type { TemplateId } from "../../query/model-types.js";
|
|
6
7
|
export interface DeclarativeCreateAction extends CampaignExecutableAction {
|
|
7
8
|
readonly payload: Readonly<Record<string, DamlTestingValue>>;
|
|
8
|
-
readonly templateId:
|
|
9
|
+
readonly templateId: TemplateId;
|
|
9
10
|
}
|
|
10
11
|
export interface DeclarativeCreateActionGenerationOptions {
|
|
11
12
|
readonly fieldArbitraries?: Readonly<Record<string, fc.Arbitrary<DamlTestingValue>>>;
|
|
@@ -7,7 +7,7 @@ import { createDamlValueArbitrary } from "./daml-value-arbitrary.js";
|
|
|
7
7
|
* adapter.
|
|
8
8
|
*/
|
|
9
9
|
export function createDeclarativeCreateActionArbitrary(catalog, target, options = {}) {
|
|
10
|
-
const template = catalog.getTemplate(target.templateId);
|
|
10
|
+
const template = catalog.getTemplate(formatTemplateId(target.templateId));
|
|
11
11
|
if (template === undefined) {
|
|
12
12
|
throw new TestingConfigurationError(`Declarative target '${target.key}' does not exist in the DAML catalog.`);
|
|
13
13
|
}
|
|
@@ -32,3 +32,6 @@ export function createDeclarativeCreateActionArbitrary(catalog, target, options
|
|
|
32
32
|
templateId: target.templateId,
|
|
33
33
|
}));
|
|
34
34
|
}
|
|
35
|
+
function formatTemplateId(templateId) {
|
|
36
|
+
return `${templateId.packageId}:${templateId.moduleName}:${templateId.entityName}`;
|
|
37
|
+
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { CreateCommand } from "../../core/types/commands/create-command.js";
|
|
2
2
|
import { ExerciseCommand } from "../../core/types/commands/exercise-command.js";
|
|
3
|
+
import { DamlRecord } from "../../core/types/daml-values.js";
|
|
3
4
|
import { SubmitCommandRequest } from "../../core/types/requests/submit-command-request.js";
|
|
4
5
|
import { TestingConfigurationError } from "../errors/testing-configuration-error.js";
|
|
5
6
|
import { toCampaignMetricOutcome, } from "./canton-test-runtime.js";
|
|
@@ -15,7 +16,7 @@ export async function executeDeclarativeActionAsync(init) {
|
|
|
15
16
|
? await createExerciseCommandAsync(init.action, init.resolveContractIdAsync)
|
|
16
17
|
: new CreateCommand({
|
|
17
18
|
templateId: init.action.templateId,
|
|
18
|
-
|
|
19
|
+
createArguments: new DamlRecord({ ...init.action.payload }),
|
|
19
20
|
});
|
|
20
21
|
return toCampaignMetricOutcome(await init.runtime.submitAndWaitAsync(init.action.actor, new SubmitCommandRequest({
|
|
21
22
|
applicationId: init.applicationId,
|
|
@@ -36,6 +37,6 @@ async function createExerciseCommandAsync(action, resolveContractIdAsync) {
|
|
|
36
37
|
templateId: action.templateId,
|
|
37
38
|
contractId,
|
|
38
39
|
choice: action.choice,
|
|
39
|
-
|
|
40
|
+
choiceArgument: action.argument,
|
|
40
41
|
});
|
|
41
42
|
}
|
|
@@ -1,24 +1,25 @@
|
|
|
1
1
|
import { DamlTestingCatalog } from "../daml/daml-testing-catalog.js";
|
|
2
|
+
import type { TemplateId } from "../../query/model-types.js";
|
|
2
3
|
export interface TemplateTarget {
|
|
3
4
|
readonly allChoices?: true;
|
|
4
5
|
readonly actors: readonly string[];
|
|
5
6
|
readonly choices: readonly string[];
|
|
6
7
|
readonly kind: "template";
|
|
7
|
-
readonly templateId:
|
|
8
|
+
readonly templateId: TemplateId;
|
|
8
9
|
}
|
|
9
10
|
export interface TemplateCreateTarget {
|
|
10
11
|
readonly actors: readonly string[];
|
|
11
12
|
readonly kind: "template-create";
|
|
12
|
-
readonly templateId:
|
|
13
|
+
readonly templateId: TemplateId;
|
|
13
14
|
}
|
|
14
15
|
export interface ExcludedChoiceTarget {
|
|
15
16
|
readonly choice: string;
|
|
16
17
|
readonly kind: "exclude-choice";
|
|
17
|
-
readonly templateId:
|
|
18
|
+
readonly templateId: TemplateId;
|
|
18
19
|
}
|
|
19
20
|
export interface ExcludedTemplateTarget {
|
|
20
21
|
readonly kind: "exclude-template";
|
|
21
|
-
readonly templateId:
|
|
22
|
+
readonly templateId: TemplateId;
|
|
22
23
|
}
|
|
23
24
|
export interface TemplateTargetBuilder {
|
|
24
25
|
allChoices(): TemplateTarget;
|
|
@@ -30,20 +31,20 @@ export interface ResolvedDeclarativeChoiceTarget {
|
|
|
30
31
|
readonly actors: readonly string[];
|
|
31
32
|
readonly choice: string;
|
|
32
33
|
readonly key: string;
|
|
33
|
-
readonly templateId:
|
|
34
|
+
readonly templateId: TemplateId;
|
|
34
35
|
}
|
|
35
36
|
export interface ResolvedDeclarativeCreateTarget {
|
|
36
37
|
readonly actors: readonly string[];
|
|
37
38
|
readonly key: string;
|
|
38
39
|
readonly kind: "create";
|
|
39
|
-
readonly templateId:
|
|
40
|
+
readonly templateId: TemplateId;
|
|
40
41
|
}
|
|
41
42
|
export type ResolvedDeclarativeTarget = ResolvedDeclarativeChoiceTarget | ResolvedDeclarativeCreateTarget;
|
|
42
|
-
export declare function targetTemplate(templateId:
|
|
43
|
+
export declare function targetTemplate(templateId: TemplateId): TemplateTargetBuilder;
|
|
43
44
|
/** Builds one immutable declarative template-choice target without a builder chain. */
|
|
44
|
-
export declare function targetChoice(templateId:
|
|
45
|
+
export declare function targetChoice(templateId: TemplateId, choice: string, actors: readonly string[]): TemplateTarget;
|
|
45
46
|
/** Builds one immutable declarative contract-create target without a builder chain. */
|
|
46
|
-
export declare function targetCreate(templateId:
|
|
47
|
-
export declare function excludeChoice(templateId:
|
|
48
|
-
export declare function excludeTemplate(templateId:
|
|
47
|
+
export declare function targetCreate(templateId: TemplateId, actors: readonly string[]): TemplateCreateTarget;
|
|
48
|
+
export declare function excludeChoice(templateId: TemplateId, choice: string): ExcludedChoiceTarget;
|
|
49
|
+
export declare function excludeTemplate(templateId: TemplateId): ExcludedTemplateTarget;
|
|
49
50
|
export declare function resolveDeclarativeTargets(catalog: DamlTestingCatalog, descriptors: readonly (TemplateTarget | TemplateCreateTarget | ExcludedChoiceTarget | ExcludedTemplateTarget)[]): readonly ResolvedDeclarativeTarget[];
|
|
@@ -67,50 +67,50 @@ export function resolveDeclarativeTargets(catalog, descriptors) {
|
|
|
67
67
|
if (descriptor.kind === "template") {
|
|
68
68
|
continue;
|
|
69
69
|
}
|
|
70
|
-
const template = catalog.getTemplate(descriptor.templateId);
|
|
70
|
+
const template = catalog.getTemplate(formatTemplateId(descriptor.templateId));
|
|
71
71
|
if (template === undefined) {
|
|
72
|
-
throw new TestingConfigurationError(`Declarative target '${descriptor.templateId}' is absent from the DAML catalog.`);
|
|
72
|
+
throw new TestingConfigurationError(`Declarative target '${formatTemplateId(descriptor.templateId)}' is absent from the DAML catalog.`);
|
|
73
73
|
}
|
|
74
74
|
else if (descriptor.kind === "exclude-choice"
|
|
75
75
|
&& !template.choices.includes(descriptor.choice)) {
|
|
76
|
-
throw new TestingConfigurationError(`Declarative target '${descriptor.templateId}:${descriptor.choice}' is absent from the DAML catalog.`);
|
|
76
|
+
throw new TestingConfigurationError(`Declarative target '${formatTemplateId(descriptor.templateId)}:${descriptor.choice}' is absent from the DAML catalog.`);
|
|
77
77
|
}
|
|
78
78
|
}
|
|
79
79
|
const excludedTemplates = new Set(descriptors
|
|
80
80
|
.filter((descriptor) => descriptor.kind === "exclude-template")
|
|
81
|
-
.map((descriptor) => descriptor.templateId));
|
|
81
|
+
.map((descriptor) => formatTemplateId(descriptor.templateId)));
|
|
82
82
|
const excluded = new Set(descriptors
|
|
83
83
|
.filter((descriptor) => descriptor.kind === "exclude-choice")
|
|
84
|
-
.map((descriptor) => `${descriptor.templateId}:${descriptor.choice}`));
|
|
84
|
+
.map((descriptor) => `${formatTemplateId(descriptor.templateId)}:${descriptor.choice}`));
|
|
85
85
|
return descriptors
|
|
86
86
|
.filter((descriptor) => descriptor.kind === "template" || descriptor.kind === "template-create")
|
|
87
87
|
.flatMap((descriptor) => {
|
|
88
|
-
const template = catalog.getTemplate(descriptor.templateId);
|
|
88
|
+
const template = catalog.getTemplate(formatTemplateId(descriptor.templateId));
|
|
89
89
|
if (template === undefined) {
|
|
90
|
-
throw new TestingConfigurationError(`Declarative target '${descriptor.templateId}' is absent from the DAML catalog.`);
|
|
90
|
+
throw new TestingConfigurationError(`Declarative target '${formatTemplateId(descriptor.templateId)}' is absent from the DAML catalog.`);
|
|
91
91
|
}
|
|
92
92
|
else if (descriptor.kind === "template-create") {
|
|
93
93
|
return [Object.freeze({
|
|
94
|
-
key: `${descriptor.templateId}:create`,
|
|
94
|
+
key: `${formatTemplateId(descriptor.templateId)}:create`,
|
|
95
95
|
templateId: descriptor.templateId,
|
|
96
96
|
actors: descriptor.actors,
|
|
97
97
|
kind: "create",
|
|
98
98
|
})];
|
|
99
99
|
}
|
|
100
100
|
else {
|
|
101
|
-
if (descriptor.allChoices === true && excludedTemplates.has(descriptor.templateId)) {
|
|
101
|
+
if (descriptor.allChoices === true && excludedTemplates.has(formatTemplateId(descriptor.templateId))) {
|
|
102
102
|
return [];
|
|
103
103
|
}
|
|
104
104
|
const choices = (descriptor.allChoices === true
|
|
105
|
-
? template.choices.filter((choice) => !excluded.has(`${descriptor.templateId}:${choice}`))
|
|
105
|
+
? template.choices.filter((choice) => !excluded.has(`${formatTemplateId(descriptor.templateId)}:${choice}`))
|
|
106
106
|
: descriptor.choices);
|
|
107
107
|
const missingChoice = choices.find((choice) => !template.choices.includes(choice));
|
|
108
108
|
if (missingChoice !== undefined) {
|
|
109
|
-
throw new TestingConfigurationError(`Declarative target '${descriptor.templateId}:${missingChoice}' is absent from the DAML catalog.`);
|
|
109
|
+
throw new TestingConfigurationError(`Declarative target '${formatTemplateId(descriptor.templateId)}:${missingChoice}' is absent from the DAML catalog.`);
|
|
110
110
|
}
|
|
111
111
|
return choices
|
|
112
112
|
.map((choice) => Object.freeze({
|
|
113
|
-
key: `${descriptor.templateId}:${choice}`,
|
|
113
|
+
key: `${formatTemplateId(descriptor.templateId)}:${choice}`,
|
|
114
114
|
templateId: descriptor.templateId,
|
|
115
115
|
choice,
|
|
116
116
|
actors: descriptor.actors,
|
|
@@ -119,3 +119,6 @@ export function resolveDeclarativeTargets(catalog, descriptors) {
|
|
|
119
119
|
})
|
|
120
120
|
.sort((left, right) => left.key.localeCompare(right.key));
|
|
121
121
|
}
|
|
122
|
+
function formatTemplateId(templateId) {
|
|
123
|
+
return `${templateId.packageId}:${templateId.moduleName}:${templateId.entityName}`;
|
|
124
|
+
}
|
|
@@ -27,6 +27,10 @@ import { IEventQueryServiceClient } from "./generated/canton/com/daml/ledger/api
|
|
|
27
27
|
import { IStateServiceClient } from "./generated/canton/com/daml/ledger/api/v2/state_service.client.js";
|
|
28
28
|
import { IUpdateServiceClient } from "./generated/canton/com/daml/ledger/api/v2/update_service.client.js";
|
|
29
29
|
import { IHealthClient } from "./generated/canton/google/grpc/health/v1/health.client.js";
|
|
30
|
+
import { GetCompletionsRequest as GrpcGetCompletionsRequest, CompletionStreamResponse as GrpcCompletionStreamResponse } from "./generated/canton/com/daml/ledger/api/v2/command_completion_service.js";
|
|
31
|
+
import { GetContractRequest as GrpcGetContractRequest, GetContractResponse as GrpcGetContractResponse } from "./generated/canton/com/daml/ledger/api/v2/contract_service.js";
|
|
32
|
+
import { GetEventsByContractIdRequest as GrpcGetEventsByContractIdRequest, GetEventsByContractIdResponse as GrpcGetEventsByContractIdResponse } from "./generated/canton/com/daml/ledger/api/v2/event_query_service.js";
|
|
33
|
+
import { GetUpdatesRequest, GetUpdateByHashRequest as GrpcGetUpdateByHashRequest, GetUpdateByIdRequest as GrpcGetUpdateByIdRequest, GetUpdateByOffsetRequest as GrpcGetUpdateByOffsetRequest, GetUpdateResponse as GrpcGetUpdateResponse, GetUpdatesResponse, GetUpdatesPageRequest as GrpcGetUpdatesPageRequest, GetUpdatesPageResponse as GrpcGetUpdatesPageResponse } from "./generated/canton/com/daml/ledger/api/v2/update_service.js";
|
|
30
34
|
import { RequestOptions } from "../../core/types/request-options.js";
|
|
31
35
|
import { GrpcChannelSecurity } from "../../core/types/grpc-channel-security.js";
|
|
32
36
|
export interface GrpcOperations {
|
|
@@ -110,18 +114,19 @@ export interface GrpcOperations {
|
|
|
110
114
|
listAllV2Async?(request: unknown, options?: RequestOptions): Promise<unknown>;
|
|
111
115
|
topologyListPartiesAsync?(request: unknown, options?: RequestOptions): Promise<unknown>;
|
|
112
116
|
listKeyOwnersAsync?(request: unknown, options?: RequestOptions): Promise<unknown>;
|
|
113
|
-
getContractAsync?(request:
|
|
114
|
-
getEventsByContractIdAsync?(request:
|
|
117
|
+
getContractAsync?(request: GrpcGetContractRequest, options?: RequestOptions): Promise<GrpcGetContractResponse>;
|
|
118
|
+
getEventsByContractIdAsync?(request: GrpcGetEventsByContractIdRequest, options?: RequestOptions): Promise<GrpcGetEventsByContractIdResponse>;
|
|
115
119
|
queryContractsAsync(request: unknown, options?: RequestOptions): Promise<unknown>;
|
|
120
|
+
getActiveContractsPageAsync?(request: unknown, options?: RequestOptions): Promise<unknown>;
|
|
116
121
|
getConnectedSynchronizersAsync?(request: unknown, options?: RequestOptions): Promise<unknown>;
|
|
117
122
|
getLedgerEndAsync?(request: unknown, options?: RequestOptions): Promise<unknown>;
|
|
118
123
|
getLatestPrunedOffsetsAsync?(request: unknown, options?: RequestOptions): Promise<unknown>;
|
|
119
|
-
|
|
120
|
-
getUpdateByOffsetAsync?(request:
|
|
121
|
-
getUpdateByIdAsync?(request:
|
|
122
|
-
getUpdateByHashAsync?(request:
|
|
123
|
-
getUpdatesPageAsync?(request:
|
|
124
|
-
getCompletionsAsync?(request:
|
|
124
|
+
getUpdatesAsync(request: GetUpdatesRequest, options?: RequestOptions): AsyncIterable<GetUpdatesResponse>;
|
|
125
|
+
getUpdateByOffsetAsync?(request: GrpcGetUpdateByOffsetRequest, options?: RequestOptions): Promise<GrpcGetUpdateResponse>;
|
|
126
|
+
getUpdateByIdAsync?(request: GrpcGetUpdateByIdRequest, options?: RequestOptions): Promise<GrpcGetUpdateResponse>;
|
|
127
|
+
getUpdateByHashAsync?(request: GrpcGetUpdateByHashRequest, options?: RequestOptions): Promise<GrpcGetUpdateResponse>;
|
|
128
|
+
getUpdatesPageAsync?(request: GrpcGetUpdatesPageRequest, options?: RequestOptions): Promise<GrpcGetUpdatesPageResponse>;
|
|
129
|
+
getCompletionsAsync?(request: GrpcGetCompletionsRequest, options?: RequestOptions): AsyncIterable<GrpcCompletionStreamResponse>;
|
|
125
130
|
prepareSubmissionAsync?(request: unknown, options?: RequestOptions): Promise<unknown>;
|
|
126
131
|
executeSubmissionAndWaitAsync?(request: unknown, options?: RequestOptions): Promise<unknown>;
|
|
127
132
|
submitCommandAsync(request: unknown, options?: RequestOptions): Promise<unknown>;
|
|
@@ -423,6 +423,10 @@ export function createGrpcOperations(options, endpoint, grpcChannelSecurity, dep
|
|
|
423
423
|
const callOptions = await buildCallOptionsForLedgerSurfaceAsync(options, requestOptions);
|
|
424
424
|
return await unwrapUnaryResponse(stateServiceClient.getActiveContractsPage(request, callOptions));
|
|
425
425
|
},
|
|
426
|
+
async getActiveContractsPageAsync(request, requestOptions) {
|
|
427
|
+
const callOptions = await buildCallOptionsForLedgerSurfaceAsync(options, requestOptions);
|
|
428
|
+
return await unwrapUnaryResponse(stateServiceClient.getActiveContractsPage(request, callOptions));
|
|
429
|
+
},
|
|
426
430
|
async getConnectedSynchronizersAsync(request, requestOptions) {
|
|
427
431
|
const callOptions = await buildCallOptionsForLedgerSurfaceAsync(options, requestOptions);
|
|
428
432
|
return await unwrapUnaryResponse(stateServiceClient.getConnectedSynchronizers(request, callOptions));
|
|
@@ -435,9 +439,8 @@ export function createGrpcOperations(options, endpoint, grpcChannelSecurity, dep
|
|
|
435
439
|
const callOptions = await buildCallOptionsForLedgerSurfaceAsync(options, requestOptions);
|
|
436
440
|
return await unwrapUnaryResponse(stateServiceClient.getLatestPrunedOffsets(request, callOptions));
|
|
437
441
|
},
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
return await collectServerResponsesAsync(updateServiceClient.getUpdates(request, callOptions));
|
|
442
|
+
getUpdatesAsync(request, requestOptions) {
|
|
443
|
+
return streamServerResponsesAsync(async () => updateServiceClient.getUpdates(request, await buildCallOptionsForLedgerSurfaceAsync(options, requestOptions)));
|
|
441
444
|
},
|
|
442
445
|
async getUpdateByOffsetAsync(request, requestOptions) {
|
|
443
446
|
const callOptions = await buildCallOptionsForLedgerSurfaceAsync(options, requestOptions);
|
|
@@ -455,9 +458,8 @@ export function createGrpcOperations(options, endpoint, grpcChannelSecurity, dep
|
|
|
455
458
|
const callOptions = await buildCallOptionsForLedgerSurfaceAsync(options, requestOptions);
|
|
456
459
|
return await unwrapUnaryResponse(updateServiceClient.getUpdatesPage(request, callOptions));
|
|
457
460
|
},
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
return await collectServerResponsesAsync(commandCompletionServiceClient.getCompletions(request, callOptions));
|
|
461
|
+
getCompletionsAsync(request, requestOptions) {
|
|
462
|
+
return streamServerResponsesAsync(async () => commandCompletionServiceClient.getCompletions(request, await buildCallOptionsForLedgerSurfaceAsync(options, requestOptions)));
|
|
461
463
|
},
|
|
462
464
|
async submitCommandAsync(request, requestOptions) {
|
|
463
465
|
const callOptions = await buildCallOptionsForLedgerSurfaceAsync(options, requestOptions);
|
|
@@ -500,6 +502,9 @@ function wrapGrpcOperations(operations, onGrpcError) {
|
|
|
500
502
|
if (typeof operation !== "function") {
|
|
501
503
|
return operation;
|
|
502
504
|
}
|
|
505
|
+
if (property === "getUpdatesAsync" || property === "getCompletionsAsync") {
|
|
506
|
+
return (...args) => wrapGrpcStream(() => operation.apply(target, args), onGrpcError);
|
|
507
|
+
}
|
|
503
508
|
return async (...args) => {
|
|
504
509
|
try {
|
|
505
510
|
return await operation.apply(target, args);
|
|
@@ -521,6 +526,26 @@ function wrapGrpcOperations(operations, onGrpcError) {
|
|
|
521
526
|
},
|
|
522
527
|
});
|
|
523
528
|
}
|
|
529
|
+
async function* wrapGrpcStream(createStream, onGrpcError) {
|
|
530
|
+
try {
|
|
531
|
+
for await (const response of createStream()) {
|
|
532
|
+
yield response;
|
|
533
|
+
}
|
|
534
|
+
}
|
|
535
|
+
catch (error) {
|
|
536
|
+
throw notifyGrpcError(error, onGrpcError);
|
|
537
|
+
}
|
|
538
|
+
}
|
|
539
|
+
function notifyGrpcError(error, onGrpcError) {
|
|
540
|
+
const parsedError = GrpcTransportError.fromUnknown(error);
|
|
541
|
+
if (parsedError === undefined)
|
|
542
|
+
return error;
|
|
543
|
+
try {
|
|
544
|
+
onGrpcError?.(parsedError);
|
|
545
|
+
}
|
|
546
|
+
catch { /* observers do not replace failures */ }
|
|
547
|
+
return parsedError;
|
|
548
|
+
}
|
|
524
549
|
async function unwrapUnaryResponse(call) {
|
|
525
550
|
return await call.response;
|
|
526
551
|
}
|
|
@@ -537,3 +562,26 @@ async function collectServerResponsesAsync(call) {
|
|
|
537
562
|
await call.status;
|
|
538
563
|
return responses;
|
|
539
564
|
}
|
|
565
|
+
async function* streamServerResponsesAsync(createCall) {
|
|
566
|
+
let call;
|
|
567
|
+
let exhausted = false;
|
|
568
|
+
let iterator;
|
|
569
|
+
try {
|
|
570
|
+
call = await createCall();
|
|
571
|
+
iterator = call.responses[Symbol.asyncIterator]();
|
|
572
|
+
while (true) {
|
|
573
|
+
const next = await iterator.next();
|
|
574
|
+
if (next.done)
|
|
575
|
+
break;
|
|
576
|
+
yield next.value;
|
|
577
|
+
}
|
|
578
|
+
exhausted = true;
|
|
579
|
+
await call.status;
|
|
580
|
+
}
|
|
581
|
+
finally {
|
|
582
|
+
if (!exhausted && call !== undefined) {
|
|
583
|
+
await iterator.return?.();
|
|
584
|
+
void call.status.catch(() => undefined);
|
|
585
|
+
}
|
|
586
|
+
}
|
|
587
|
+
}
|