@distrohelena/canton-typescript-sdk 0.1.32 → 0.1.35

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (121) hide show
  1. package/README.md +220 -9
  2. package/dist/cjs/client/external-party-activation-client.js +20 -10
  3. package/dist/cjs/core/errors/active-contracts-traversal-error.js +12 -0
  4. package/dist/cjs/core/polling/poll-until-async.js +26 -0
  5. package/dist/cjs/core/types/active-contracts-traversal-options.js +26 -0
  6. package/dist/cjs/core/types/command-deduplication-period.js +2 -0
  7. package/dist/cjs/core/types/operation-deadline.js +42 -0
  8. package/dist/cjs/core/types/requests/allocate-party-request.js +2 -0
  9. package/dist/cjs/core/types/requests/finalize-decentralized-party-request.js +6 -0
  10. package/dist/cjs/core/types/requests/submit-command-request.js +43 -0
  11. package/dist/cjs/core/types/requests/wait-for-party-hosting-request.js +40 -0
  12. package/dist/cjs/index.js +13 -27
  13. package/dist/cjs/query/grpc/grpc-contract-query-client.js +33 -16
  14. package/dist/cjs/services/party-management/decentralized-party-lifecycle.js +28 -3
  15. package/dist/cjs/services/party-management/party-management-service-client.js +3 -0
  16. package/dist/cjs/services/state/state-service-client.js +1 -1
  17. package/dist/cjs/services/topology-aggregation/topology-aggregation-service-client.js +36 -0
  18. package/dist/cjs/transports/grpc/grpc-channel-factory.js +5 -7
  19. package/dist/cjs/transports/grpc/grpc-transport.js +31 -15
  20. package/dist/cjs/transports/grpc/mappers/command-deduplication-mapper.js +22 -0
  21. package/dist/cjs/transports/grpc/mappers/commands-mapper.js +3 -4
  22. package/dist/cjs/transports/grpc/mappers/interactive-command-mapper.js +5 -3
  23. package/dist/cjs/transports/grpc/mappers/parties-mapper.js +1 -12
  24. package/dist/cjs/transports/json/mappers/commands-mapper.js +5 -1
  25. package/dist/cjs/transports/json/mappers/parties-mapper.js +1 -0
  26. package/dist/client/external-party-activation-client.js +20 -10
  27. package/dist/client/external-party-activation-response.d.ts +1 -1
  28. package/dist/core/errors/active-contracts-traversal-error.d.ts +5 -0
  29. package/dist/core/errors/active-contracts-traversal-error.js +8 -0
  30. package/dist/core/polling/poll-until-async.d.ts +10 -0
  31. package/dist/core/polling/poll-until-async.js +23 -0
  32. package/dist/core/transports/transport.interface.d.ts +11 -3
  33. package/dist/core/types/active-contracts-traversal-options.d.ts +11 -0
  34. package/dist/core/types/active-contracts-traversal-options.js +22 -0
  35. package/dist/core/types/command-deduplication-period.d.ts +7 -0
  36. package/dist/core/types/command-deduplication-period.js +1 -0
  37. package/dist/core/types/operation-deadline.d.ts +13 -0
  38. package/dist/core/types/operation-deadline.js +38 -0
  39. package/dist/core/types/requests/allocate-party-request.d.ts +2 -0
  40. package/dist/core/types/requests/allocate-party-request.js +2 -0
  41. package/dist/core/types/requests/finalize-decentralized-party-request.d.ts +6 -0
  42. package/dist/core/types/requests/finalize-decentralized-party-request.js +6 -0
  43. package/dist/core/types/requests/submit-command-request.d.ts +5 -0
  44. package/dist/core/types/requests/submit-command-request.js +43 -0
  45. package/dist/core/types/requests/wait-for-party-hosting-request.d.ts +14 -0
  46. package/dist/core/types/requests/wait-for-party-hosting-request.js +36 -0
  47. package/dist/index.d.ts +5 -11
  48. package/dist/index.js +4 -11
  49. package/dist/query/grpc/grpc-contract-query-client.js +33 -16
  50. package/dist/services/party-management/decentralized-party-lifecycle.d.ts +1 -1
  51. package/dist/services/party-management/decentralized-party-lifecycle.js +28 -3
  52. package/dist/services/party-management/party-management-service-client.js +3 -0
  53. package/dist/services/state/state-service-client.d.ts +1 -1
  54. package/dist/services/state/state-service-client.js +1 -1
  55. package/dist/services/topology-aggregation/topology-aggregation-service-client.d.ts +4 -1
  56. package/dist/services/topology-aggregation/topology-aggregation-service-client.js +36 -0
  57. package/dist/services/topology-manager-read/topology-manager-read-service-client.d.ts +3 -1
  58. package/dist/services/user-management/user-management-service-client.d.ts +7 -1
  59. package/dist/transports/grpc/grpc-channel-factory.d.ts +0 -1
  60. package/dist/transports/grpc/grpc-channel-factory.js +5 -7
  61. package/dist/transports/grpc/grpc-transport.d.ts +10 -3
  62. package/dist/transports/grpc/grpc-transport.js +31 -15
  63. package/dist/transports/grpc/mappers/command-deduplication-mapper.d.ts +5 -0
  64. package/dist/transports/grpc/mappers/command-deduplication-mapper.js +19 -0
  65. package/dist/transports/grpc/mappers/commands-mapper.js +3 -4
  66. package/dist/transports/grpc/mappers/interactive-command-mapper.js +5 -3
  67. package/dist/transports/grpc/mappers/parties-mapper.d.ts +3 -7
  68. package/dist/transports/grpc/mappers/parties-mapper.js +1 -10
  69. package/dist/transports/json/json-transport.d.ts +10 -5
  70. package/dist/transports/json/mappers/commands-mapper.js +5 -1
  71. package/dist/transports/json/mappers/parties-mapper.d.ts +1 -0
  72. package/dist/transports/json/mappers/parties-mapper.js +1 -0
  73. package/node/participant-358-synchronizer.mjs +174 -0
  74. package/node/start-local-participant-358.sh +214 -0
  75. package/node/stop-local-participant-358.sh +18 -0
  76. package/node/test-participant-358-sidecar-smoke.sh +19 -0
  77. package/node/test-participant-358-sidecar.sh +113 -0
  78. package/package.json +18 -2
  79. package/dist/cjs/core/types/health-check-status.js +0 -10
  80. package/dist/cjs/core/types/requests/get-ledger-api-version-request.js +0 -6
  81. package/dist/cjs/core/types/requests/get-package-references-request.js +0 -10
  82. package/dist/cjs/core/types/requests/get-participant-id-request.js +0 -7
  83. package/dist/cjs/core/types/requests/get-participant-status-request.js +0 -6
  84. package/dist/cjs/core/types/requests/health-check-request.js +0 -10
  85. package/dist/cjs/core/types/responses/get-ledger-api-version-response.js +0 -12
  86. package/dist/cjs/core/types/responses/get-package-references-response.js +0 -10
  87. package/dist/cjs/core/types/responses/get-participant-id-response.js +0 -10
  88. package/dist/cjs/core/types/responses/get-participant-status-response.js +0 -12
  89. package/dist/cjs/core/types/responses/health-check-response.js +0 -10
  90. package/dist/cjs/transports/grpc/mappers/health-mapper.js +0 -24
  91. package/dist/cjs/transports/grpc/mappers/participant-status-mapper.js +0 -58
  92. package/dist/core/types/health-check-status.d.ts +0 -6
  93. package/dist/core/types/health-check-status.js +0 -7
  94. package/dist/core/types/requests/get-ledger-api-version-request.d.ts +0 -2
  95. package/dist/core/types/requests/get-ledger-api-version-request.js +0 -2
  96. package/dist/core/types/requests/get-package-references-request.d.ts +0 -6
  97. package/dist/core/types/requests/get-package-references-request.js +0 -6
  98. package/dist/core/types/requests/get-participant-id-request.d.ts +0 -3
  99. package/dist/core/types/requests/get-participant-id-request.js +0 -3
  100. package/dist/core/types/requests/get-participant-status-request.d.ts +0 -2
  101. package/dist/core/types/requests/get-participant-status-request.js +0 -2
  102. package/dist/core/types/requests/health-check-request.d.ts +0 -6
  103. package/dist/core/types/requests/health-check-request.js +0 -6
  104. package/dist/core/types/responses/get-ledger-api-version-response.d.ts +0 -8
  105. package/dist/core/types/responses/get-ledger-api-version-response.js +0 -8
  106. package/dist/core/types/responses/get-package-references-response.d.ts +0 -7
  107. package/dist/core/types/responses/get-package-references-response.js +0 -6
  108. package/dist/core/types/responses/get-participant-id-response.d.ts +0 -6
  109. package/dist/core/types/responses/get-participant-id-response.js +0 -6
  110. package/dist/core/types/responses/get-participant-status-response.d.ts +0 -10
  111. package/dist/core/types/responses/get-participant-status-response.js +0 -8
  112. package/dist/core/types/responses/health-check-response.d.ts +0 -7
  113. package/dist/core/types/responses/health-check-response.js +0 -6
  114. package/dist/transports/grpc/mappers/health-mapper.d.ts +0 -5
  115. package/dist/transports/grpc/mappers/health-mapper.js +0 -21
  116. package/dist/transports/grpc/mappers/participant-status-mapper.d.ts +0 -5
  117. package/dist/transports/grpc/mappers/participant-status-mapper.js +0 -54
  118. package/node/.generated/start-local/additional-config.extra-participants.conf +0 -72
  119. package/node/.generated/start-local/additional-config.extra-validators.conf +0 -105
  120. package/node/.generated/start-local/compose-extra-participants.yaml +0 -366
  121. package/node/.generated/start-local/extra-participants.env +0 -88
package/dist/cjs/index.js CHANGED
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ExternalPartySigningAlgorithmSpec = exports.ExternalPartySignatureFormat = exports.ExternalPartySignature = exports.ExternalPartyOnboardingTransaction = exports.ExternalPartyCryptoKeyFormat = exports.TransportKind = exports.TransportCapability = exports.SignCommandResult = exports.SignCommandRequest = exports.BearerTokenAuthProvider = exports.SynchronizerConnectivityServiceClient = exports.VersionServiceClient = exports.UserManagementServiceClient = exports.UpdateServiceClient = exports.TrafficControlServiceClient = exports.TopologyManagerWriteServiceClient = exports.TopologyManagerReadServiceClient = exports.TopologyAggregationServiceClient = exports.StateServiceClient = exports.ResourceManagementServiceClient = exports.PruningServiceClient = exports.PartyManagementServiceClient = exports.ParticipantStatusServiceClient = exports.ParticipantRepairServiceClient = exports.ParticipantPackageServiceClient = exports.ParticipantPartyManagementServiceClient = exports.ParticipantInspectionServiceClient = exports.PackageServiceClient = exports.PackageManagementServiceClient = exports.IdentityProviderConfigServiceClient = exports.IdentityInitializationServiceClient = exports.HealthServiceClient = exports.EventQueryServiceClient = exports.ContractServiceClient = exports.CommandSubmissionServiceClient = exports.CommandServiceClient = exports.CommandInspectionServiceClient = exports.CommandCompletionServiceClient = exports.ExternalPartyActivationResponse = exports.ExternalPartyActivationRequest = exports.ExternalPartyActivationClient = exports.CantonClientOptions = exports.CantonHashingClient = exports.PqsSchemaProfileError = exports.PqsQueryError = exports.QueryCapabilityError = exports.MemoryQueryCache = exports.QuerySource = exports.CantonManager = exports.CantonClient = void 0;
4
- exports.ParticipantModuleDescription = exports.ParticipantDarDescription = exports.PackageReference = exports.PackageMetadataFilter = exports.RequestOptions = exports.ReceivedAcsCommitmentState = exports.ReceivedAcsCommitmentPerSynchronizer = exports.ReceivedAcsCommitment = exports.PruningSchedule = exports.ParticipantPruningSchedule = exports.PendingOperationMetadata = exports.PackageStatus = exports.HealthCheckStatus = exports.CantonHashPurpose = exports.HashFunction = exports.PackageFormat = exports.OffsetCheckpoint = exports.ObjectMeta = exports.LedgerUser = exports.KnownPackageDetails = exports.IdentityProviderConfig = exports.UserRightKind = exports.EventStreamKind = exports.DamlParty = exports.DamlNumeric = exports.ContractCreated = exports.ContractArchived = exports.CounterParticipantInfo = exports.CommitmentTimeRange = exports.CommitmentInterval = exports.Completion = exports.CommandUpdateSummary = exports.CommandTiming = exports.CommandStatus = exports.CommandState = exports.CommandRequestStatistics = exports.CommandInspectionContract = exports.ConnectedSynchronizerStatus = exports.ConnectedSynchronizer = exports.ConnectedSynchronizerHealth = exports.AdminTopologyQueueStatus = exports.AdminNotInitializedStatus = exports.AdminNotInitializedExternalInputKind = exports.AdminNodeStatus = exports.AdminComponentStatus = exports.AdminComponentHealthKind = exports.SubmissionMode = exports.GrpcChannelSecurity = exports.ExternalPartySigningPublicKey = exports.ExternalPartySigningKeySpec = void 0;
5
- exports.TopologySignatureDelegation = exports.TopologyForceFlag = exports.TopologyPublicKey = exports.TopologyPartyResult = exports.TopologyPartyParticipantSynchronizerPermission = exports.TopologyPartyParticipant = exports.TopologyMappingResult = exports.TopologyMappingOperation = exports.TopologyMappingCode = exports.TopologyKeyOwnerResult = exports.MultiTopologyTransactionSignature = exports.GeneratedTopologyTransaction = exports.TopologyEncryptionPublicKey = exports.ExternalTopologySignature = exports.TopologyDuration = exports.TopologyBaseResult = exports.TopologyBaseQuery = exports.SynchronizerTrustCertificate = exports.SequencerSynchronizerState = exports.PartyToParticipantParticipant = exports.PartyToParticipantOnboarding = exports.PartyToParticipant = exports.PartyToKeyMapping = exports.PartyHostingLimits = exports.ParticipantSynchronizerPermission = exports.ParticipantSynchronizerLimits = exports.ParticipantPermission = exports.OwnerToKeyMapping = exports.OnboardingRestriction = exports.NamespaceDelegationRestrictionKind = exports.NamespaceDelegationRestriction = exports.NamespaceDelegation = exports.MediatorSynchronizerState = exports.LsuSequencerConnectionSuccessor = exports.LsuSequencerConnection = exports.LsuAnnouncement = exports.DynamicSynchronizerParameters = exports.DynamicSequencingParameters = exports.DecentralizedNamespaceDefinition = exports.AcsCommitmentsCatchUpConfig = exports.WaitCommitmentsSetup = exports.TopologyStateFilter = exports.SynchronizerTimeRange = exports.SlowCounterParticipantSynchronizerConfig = exports.SentAcsCommitmentState = exports.SentAcsCommitmentPerSynchronizer = exports.SentAcsCommitment = exports.SdkCommand = exports.SafeToPruneCommitmentState = exports.ParticipantPackageDescription = void 0;
6
- exports.ListDecentralizedNamespaceDefinitionRequest = exports.ListAllRequest = exports.ListPackagesRequest = exports.HealthCheckRequest = exports.GetCommandStatusRequest = exports.GetActiveContractsRequest = exports.GetActiveContractsPageRequest = exports.GetDarRequest = exports.GetDarContentsRequest = exports.AssembleSignedTopologyTransactionsRequest = exports.SubmitCommandTransactionResponse = exports.DamlRecord = exports.DamlEnum = exports.DamlVariant = exports.DamlGenMap = exports.DamlTextMap = exports.DamlTimestamp = exports.DamlDate = exports.DamlUnit = exports.DamlContractId = exports.PreparedCommandSubmission = exports.DisclosedContract = exports.AllocatePartyRequest = exports.CreateExternalPartyRequest = exports.PreparedDecentralizedParty = exports.FinalizeDecentralizedPartyRequest = exports.CreateDecentralizedPartyRequest = exports.ExerciseCommand = exports.ExerciseByKeyCommand = exports.CreateCommand = exports.CreateAndExerciseCommand = exports.SignedTopologyTransaction = exports.PreparedTopologyTransaction = exports.VettedPackages = exports.VettedPackage = exports.TrafficControlParameters = exports.TopologyVettedPackages = exports.TopologyVettedPackage = exports.TopologyTransactions = exports.TopologyTransactionItem = exports.TopologyTransactionSignature = exports.TopologyTimeRange = exports.TopologyStoreTemporary = exports.TopologyStoreSynchronizer = exports.TopologyStoreKind = exports.TopologyStoreId = exports.TopologyStoreAuthorized = exports.TopologySigningPublicKey = exports.TopologySigningKeysWithThreshold = exports.TopologySignatureFormat = void 0;
7
- exports.GetParticipantStatusResponse = exports.GetLedgerEndResponse = exports.GetLatestPrunedOffsetsResponse = exports.GetIdentityProviderConfigResponse = exports.GetLedgerApiVersionResponse = exports.HealthCheckResponse = exports.GetCommandStatusResponse = exports.GetConnectedSynchronizersResponse = exports.GetActiveContractsPageResponse = exports.GetDarResponse = exports.GetDarContentsResponse = exports.AllocatePartyResponse = exports.UploadDarFileRequest = exports.GrantUserRightsRequest = exports.TopologyListPartiesRequest = exports.SubmitCommandRequest = exports.ListUsersRequest = exports.ListUserRightsRequest = exports.ListKeyOwnersRequest = exports.ListIdentityProviderConfigsRequest = exports.ListDarsRequest = exports.ListKnownPackagesRequest = exports.ListKnownPartiesRequest = exports.TopologyListVettedPackagesRequest = exports.ListSynchronizerTrustCertificateRequest = exports.ListSynchronizerParametersStateRequest = exports.ListSequencingParametersStateRequest = exports.ListSequencerSynchronizerStateRequest = exports.ListPartyToParticipantRequest = exports.ListPartyToKeyMappingRequest = exports.ListVettedPackagesRequest = exports.ListPartyHostingLimitsRequest = exports.ListParticipantSynchronizerPermissionRequest = exports.ListOwnerToKeyMappingRequest = exports.ListNamespaceDelegationRequest = exports.ListMediatorSynchronizerStateRequest = exports.ListLsuSequencerConnectionSuccessorRequest = exports.ListLsuAnnouncementRequest = exports.GetUserRequest = exports.GetPartiesRequest = exports.GetLedgerEndRequest = exports.GetLatestPrunedOffsetsRequest = exports.GetConnectedSynchronizersRequest = exports.GetParticipantIdRequest = exports.GetPackageStatusRequest = exports.GetPackageReferencesRequest = exports.GetPackageRequest = exports.GetParticipantStatusRequest = exports.GetIdentityProviderConfigRequest = exports.GetLedgerApiVersionRequest = void 0;
8
- exports.EndpointNotConfiguredError = exports.ObjectDisposedError = exports.NotSupportedError = exports.ConflictError = exports.TimeoutError = exports.SigningError = exports.GrpcTransportError = exports.TransportError = exports.AuthorizationError = exports.AuthenticationError = exports.ValidationError = exports.CantonError = exports.SynchronizerTime = exports.ParticipantNodeStatus = exports.PartyDetails = exports.UploadDarFileResponse = exports.GrantUserRightsResponse = exports.SubmitCommandResponse = exports.TopologyListPartiesResponse = exports.TopologyListVettedPackagesResponse = exports.ListVettedPackagesResponse = exports.ListUsersResponse = exports.ListUserRightsResponse = exports.ListSynchronizerTrustCertificateResponse = exports.ListSynchronizerParametersStateResponse = exports.ListSequencingParametersStateResponse = exports.ListSequencerSynchronizerStateResponse = exports.ListPartyToParticipantResponse = exports.ListPartyToKeyMappingResponse = exports.ListPartyHostingLimitsResponse = exports.ListParticipantSynchronizerPermissionResponse = exports.ListKeyOwnersResponse = exports.ListKnownPartiesResponse = exports.ListKnownPackagesResponse = exports.ListIdentityProviderConfigsResponse = exports.ListDarsResponse = exports.ListPackagesResponse = exports.ListOwnerToKeyMappingResponse = exports.ListNamespaceDelegationResponse = exports.ListMediatorSynchronizerStateResponse = exports.ListLsuSequencerConnectionSuccessorResponse = exports.ListLsuAnnouncementResponse = exports.ListDecentralizedNamespaceDefinitionResponse = exports.ListAllResponse = exports.GetUserResponse = exports.GetPartiesResponse = exports.GetPackageStatusResponse = exports.GetPackageReferencesResponse = exports.GetPackageResponse = exports.GetParticipantIdResponse = void 0;
4
+ exports.ParticipantDarDescription = exports.PackageReference = exports.PackageMetadataFilter = exports.ActiveContractsTraversalOptions = exports.OperationDeadline = exports.RequestOptions = exports.ReceivedAcsCommitmentState = exports.ReceivedAcsCommitmentPerSynchronizer = exports.ReceivedAcsCommitment = exports.PruningSchedule = exports.ParticipantPruningSchedule = exports.PendingOperationMetadata = exports.PackageStatus = exports.CantonHashPurpose = exports.HashFunction = exports.PackageFormat = exports.OffsetCheckpoint = exports.ObjectMeta = exports.LedgerUser = exports.KnownPackageDetails = exports.IdentityProviderConfig = exports.UserRightKind = exports.EventStreamKind = exports.DamlParty = exports.DamlNumeric = exports.ContractCreated = exports.ContractArchived = exports.CounterParticipantInfo = exports.CommitmentTimeRange = exports.CommitmentInterval = exports.Completion = exports.CommandUpdateSummary = exports.CommandTiming = exports.CommandStatus = exports.CommandState = exports.CommandRequestStatistics = exports.CommandInspectionContract = exports.ConnectedSynchronizerStatus = exports.ConnectedSynchronizer = exports.ConnectedSynchronizerHealth = exports.AdminTopologyQueueStatus = exports.AdminNotInitializedStatus = exports.AdminNotInitializedExternalInputKind = exports.AdminNodeStatus = exports.AdminComponentStatus = exports.AdminComponentHealthKind = exports.SubmissionMode = exports.GrpcChannelSecurity = exports.ExternalPartySigningPublicKey = exports.ExternalPartySigningKeySpec = void 0;
5
+ exports.TopologyForceFlag = exports.TopologyPublicKey = exports.TopologyPartyResult = exports.TopologyPartyParticipantSynchronizerPermission = exports.TopologyPartyParticipant = exports.TopologyMappingResult = exports.TopologyMappingOperation = exports.TopologyMappingCode = exports.TopologyKeyOwnerResult = exports.MultiTopologyTransactionSignature = exports.GeneratedTopologyTransaction = exports.TopologyEncryptionPublicKey = exports.ExternalTopologySignature = exports.TopologyDuration = exports.TopologyBaseResult = exports.TopologyBaseQuery = exports.SynchronizerTrustCertificate = exports.SequencerSynchronizerState = exports.PartyToParticipantParticipant = exports.PartyToParticipantOnboarding = exports.PartyToParticipant = exports.PartyToKeyMapping = exports.PartyHostingLimits = exports.ParticipantSynchronizerPermission = exports.ParticipantSynchronizerLimits = exports.ParticipantPermission = exports.OwnerToKeyMapping = exports.OnboardingRestriction = exports.NamespaceDelegationRestrictionKind = exports.NamespaceDelegationRestriction = exports.NamespaceDelegation = exports.MediatorSynchronizerState = exports.LsuSequencerConnectionSuccessor = exports.LsuSequencerConnection = exports.LsuAnnouncement = exports.DynamicSynchronizerParameters = exports.DynamicSequencingParameters = exports.DecentralizedNamespaceDefinition = exports.AcsCommitmentsCatchUpConfig = exports.WaitCommitmentsSetup = exports.TopologyStateFilter = exports.SynchronizerTimeRange = exports.SlowCounterParticipantSynchronizerConfig = exports.SentAcsCommitmentState = exports.SentAcsCommitmentPerSynchronizer = exports.SentAcsCommitment = exports.SdkCommand = exports.SafeToPruneCommitmentState = exports.ParticipantPackageDescription = exports.ParticipantModuleDescription = void 0;
6
+ exports.ListDecentralizedNamespaceDefinitionRequest = exports.ListAllRequest = exports.ListPackagesRequest = exports.GetCommandStatusRequest = exports.GetActiveContractsRequest = exports.GetActiveContractsPageRequest = exports.GetDarRequest = exports.GetDarContentsRequest = exports.AssembleSignedTopologyTransactionsRequest = exports.SubmitCommandTransactionResponse = exports.DamlRecord = exports.DamlEnum = exports.DamlVariant = exports.DamlGenMap = exports.DamlTextMap = exports.DamlTimestamp = exports.DamlDate = exports.DamlUnit = exports.DamlContractId = exports.PreparedCommandSubmission = exports.DisclosedContract = exports.AllocatePartyRequest = exports.CreateExternalPartyRequest = exports.PreparedDecentralizedParty = exports.FinalizeDecentralizedPartyRequest = exports.CreateDecentralizedPartyRequest = exports.ExerciseCommand = exports.ExerciseByKeyCommand = exports.CreateCommand = exports.CreateAndExerciseCommand = exports.SignedTopologyTransaction = exports.PreparedTopologyTransaction = exports.VettedPackages = exports.VettedPackage = exports.TrafficControlParameters = exports.TopologyVettedPackages = exports.TopologyVettedPackage = exports.TopologyTransactions = exports.TopologyTransactionItem = exports.TopologyTransactionSignature = exports.TopologyTimeRange = exports.TopologyStoreTemporary = exports.TopologyStoreSynchronizer = exports.TopologyStoreKind = exports.TopologyStoreId = exports.TopologyStoreAuthorized = exports.TopologySigningPublicKey = exports.TopologySigningKeysWithThreshold = exports.TopologySignatureFormat = exports.TopologySignatureDelegation = void 0;
7
+ exports.ListDecentralizedNamespaceDefinitionResponse = exports.ListAllResponse = exports.GetUserResponse = exports.GetPartiesResponse = exports.GetPackageStatusResponse = exports.GetPackageResponse = exports.GetLedgerEndResponse = exports.GetLatestPrunedOffsetsResponse = exports.GetIdentityProviderConfigResponse = exports.GetCommandStatusResponse = exports.GetConnectedSynchronizersResponse = exports.GetActiveContractsPageResponse = exports.GetDarResponse = exports.GetDarContentsResponse = exports.AllocatePartyResponse = exports.UploadDarFileRequest = exports.GrantUserRightsRequest = exports.WaitForPartyHostingRequest = exports.TopologyListPartiesRequest = exports.SubmitCommandRequest = exports.ListUsersRequest = exports.ListUserRightsRequest = exports.ListKeyOwnersRequest = exports.ListIdentityProviderConfigsRequest = exports.ListDarsRequest = exports.ListKnownPackagesRequest = exports.ListKnownPartiesRequest = exports.TopologyListVettedPackagesRequest = exports.ListSynchronizerTrustCertificateRequest = exports.ListSynchronizerParametersStateRequest = exports.ListSequencingParametersStateRequest = exports.ListSequencerSynchronizerStateRequest = exports.ListPartyToParticipantRequest = exports.ListPartyToKeyMappingRequest = exports.ListVettedPackagesRequest = exports.ListPartyHostingLimitsRequest = exports.ListParticipantSynchronizerPermissionRequest = exports.ListOwnerToKeyMappingRequest = exports.ListNamespaceDelegationRequest = exports.ListMediatorSynchronizerStateRequest = exports.ListLsuSequencerConnectionSuccessorRequest = exports.ListLsuAnnouncementRequest = exports.GetUserRequest = exports.GetPartiesRequest = exports.GetLedgerEndRequest = exports.GetLatestPrunedOffsetsRequest = exports.GetConnectedSynchronizersRequest = exports.GetPackageStatusRequest = exports.GetPackageRequest = exports.GetIdentityProviderConfigRequest = void 0;
8
+ exports.EndpointNotConfiguredError = exports.ObjectDisposedError = exports.NotSupportedError = exports.ConflictError = exports.TimeoutError = exports.SigningError = exports.GrpcTransportError = exports.TransportError = exports.AuthorizationError = exports.AuthenticationError = exports.ActiveContractsTraversalError = exports.ValidationError = exports.CantonError = exports.SynchronizerTime = exports.ParticipantNodeStatus = exports.PartyDetails = exports.UploadDarFileResponse = exports.GrantUserRightsResponse = exports.SubmitCommandResponse = exports.TopologyListPartiesResponse = exports.TopologyListVettedPackagesResponse = exports.ListVettedPackagesResponse = exports.ListUsersResponse = exports.ListUserRightsResponse = exports.ListSynchronizerTrustCertificateResponse = exports.ListSynchronizerParametersStateResponse = exports.ListSequencingParametersStateResponse = exports.ListSequencerSynchronizerStateResponse = exports.ListPartyToParticipantResponse = exports.ListPartyToKeyMappingResponse = exports.ListPartyHostingLimitsResponse = exports.ListParticipantSynchronizerPermissionResponse = exports.ListKeyOwnersResponse = exports.ListKnownPartiesResponse = exports.ListKnownPackagesResponse = exports.ListIdentityProviderConfigsResponse = exports.ListDarsResponse = exports.ListPackagesResponse = exports.ListOwnerToKeyMappingResponse = exports.ListNamespaceDelegationResponse = exports.ListMediatorSynchronizerStateResponse = exports.ListLsuSequencerConnectionSuccessorResponse = exports.ListLsuAnnouncementResponse = void 0;
9
9
  var canton_client_js_1 = require("./client/canton-client.js");
10
10
  Object.defineProperty(exports, "CantonClient", { enumerable: true, get: function () { return canton_client_js_1.CantonClient; } });
11
11
  var canton_manager_js_1 = require("./query/canton-manager.js");
@@ -180,8 +180,6 @@ var hash_function_js_1 = require("./core/types/hash-function.js");
180
180
  Object.defineProperty(exports, "HashFunction", { enumerable: true, get: function () { return hash_function_js_1.HashFunction; } });
181
181
  var canton_hash_purpose_js_1 = require("./core/types/canton-hash-purpose.js");
182
182
  Object.defineProperty(exports, "CantonHashPurpose", { enumerable: true, get: function () { return canton_hash_purpose_js_1.CantonHashPurpose; } });
183
- var health_check_status_js_1 = require("./core/types/health-check-status.js");
184
- Object.defineProperty(exports, "HealthCheckStatus", { enumerable: true, get: function () { return health_check_status_js_1.HealthCheckStatus; } });
185
183
  var package_status_js_1 = require("./core/types/package-status.js");
186
184
  Object.defineProperty(exports, "PackageStatus", { enumerable: true, get: function () { return package_status_js_1.PackageStatus; } });
187
185
  var pending_operation_metadata_js_1 = require("./core/types/pending-operation-metadata.js");
@@ -198,6 +196,10 @@ var received_acs_commitment_state_js_1 = require("./core/types/received-acs-comm
198
196
  Object.defineProperty(exports, "ReceivedAcsCommitmentState", { enumerable: true, get: function () { return received_acs_commitment_state_js_1.ReceivedAcsCommitmentState; } });
199
197
  var request_options_js_1 = require("./core/types/request-options.js");
200
198
  Object.defineProperty(exports, "RequestOptions", { enumerable: true, get: function () { return request_options_js_1.RequestOptions; } });
199
+ var operation_deadline_js_1 = require("./core/types/operation-deadline.js");
200
+ Object.defineProperty(exports, "OperationDeadline", { enumerable: true, get: function () { return operation_deadline_js_1.OperationDeadline; } });
201
+ var active_contracts_traversal_options_js_1 = require("./core/types/active-contracts-traversal-options.js");
202
+ Object.defineProperty(exports, "ActiveContractsTraversalOptions", { enumerable: true, get: function () { return active_contracts_traversal_options_js_1.ActiveContractsTraversalOptions; } });
201
203
  var package_metadata_filter_js_1 = require("./core/types/package-metadata-filter.js");
202
204
  Object.defineProperty(exports, "PackageMetadataFilter", { enumerable: true, get: function () { return package_metadata_filter_js_1.PackageMetadataFilter; } });
203
205
  var package_reference_js_1 = require("./core/types/package-reference.js");
@@ -390,28 +392,18 @@ var get_active_contracts_request_js_1 = require("./core/types/requests/get-activ
390
392
  Object.defineProperty(exports, "GetActiveContractsRequest", { enumerable: true, get: function () { return get_active_contracts_request_js_1.GetActiveContractsRequest; } });
391
393
  var get_command_status_request_js_1 = require("./core/types/requests/get-command-status-request.js");
392
394
  Object.defineProperty(exports, "GetCommandStatusRequest", { enumerable: true, get: function () { return get_command_status_request_js_1.GetCommandStatusRequest; } });
393
- var health_check_request_js_1 = require("./core/types/requests/health-check-request.js");
394
- Object.defineProperty(exports, "HealthCheckRequest", { enumerable: true, get: function () { return health_check_request_js_1.HealthCheckRequest; } });
395
395
  var list_packages_request_js_1 = require("./core/types/requests/list-packages-request.js");
396
396
  Object.defineProperty(exports, "ListPackagesRequest", { enumerable: true, get: function () { return list_packages_request_js_1.ListPackagesRequest; } });
397
397
  var list_all_request_js_1 = require("./core/types/requests/list-all-request.js");
398
398
  Object.defineProperty(exports, "ListAllRequest", { enumerable: true, get: function () { return list_all_request_js_1.ListAllRequest; } });
399
399
  var list_decentralized_namespace_definition_request_js_1 = require("./core/types/requests/list-decentralized-namespace-definition-request.js");
400
400
  Object.defineProperty(exports, "ListDecentralizedNamespaceDefinitionRequest", { enumerable: true, get: function () { return list_decentralized_namespace_definition_request_js_1.ListDecentralizedNamespaceDefinitionRequest; } });
401
- var get_ledger_api_version_request_js_1 = require("./core/types/requests/get-ledger-api-version-request.js");
402
- Object.defineProperty(exports, "GetLedgerApiVersionRequest", { enumerable: true, get: function () { return get_ledger_api_version_request_js_1.GetLedgerApiVersionRequest; } });
403
401
  var get_identity_provider_config_request_js_1 = require("./core/types/requests/get-identity-provider-config-request.js");
404
402
  Object.defineProperty(exports, "GetIdentityProviderConfigRequest", { enumerable: true, get: function () { return get_identity_provider_config_request_js_1.GetIdentityProviderConfigRequest; } });
405
- var get_participant_status_request_js_1 = require("./core/types/requests/get-participant-status-request.js");
406
- Object.defineProperty(exports, "GetParticipantStatusRequest", { enumerable: true, get: function () { return get_participant_status_request_js_1.GetParticipantStatusRequest; } });
407
403
  var get_package_request_js_1 = require("./core/types/requests/get-package-request.js");
408
404
  Object.defineProperty(exports, "GetPackageRequest", { enumerable: true, get: function () { return get_package_request_js_1.GetPackageRequest; } });
409
- var get_package_references_request_js_1 = require("./core/types/requests/get-package-references-request.js");
410
- Object.defineProperty(exports, "GetPackageReferencesRequest", { enumerable: true, get: function () { return get_package_references_request_js_1.GetPackageReferencesRequest; } });
411
405
  var get_package_status_request_js_1 = require("./core/types/requests/get-package-status-request.js");
412
406
  Object.defineProperty(exports, "GetPackageStatusRequest", { enumerable: true, get: function () { return get_package_status_request_js_1.GetPackageStatusRequest; } });
413
- var get_participant_id_request_js_1 = require("./core/types/requests/get-participant-id-request.js");
414
- Object.defineProperty(exports, "GetParticipantIdRequest", { enumerable: true, get: function () { return get_participant_id_request_js_1.GetParticipantIdRequest; } });
415
407
  var get_connected_synchronizers_request_js_1 = require("./core/types/requests/get-connected-synchronizers-request.js");
416
408
  Object.defineProperty(exports, "GetConnectedSynchronizersRequest", { enumerable: true, get: function () { return get_connected_synchronizers_request_js_1.GetConnectedSynchronizersRequest; } });
417
409
  var get_latest_pruned_offsets_request_js_1 = require("./core/types/requests/get-latest-pruned-offsets-request.js");
@@ -470,6 +462,8 @@ var submit_command_request_js_1 = require("./core/types/requests/submit-command-
470
462
  Object.defineProperty(exports, "SubmitCommandRequest", { enumerable: true, get: function () { return submit_command_request_js_1.SubmitCommandRequest; } });
471
463
  var topology_list_parties_request_js_1 = require("./core/types/requests/topology-list-parties-request.js");
472
464
  Object.defineProperty(exports, "TopologyListPartiesRequest", { enumerable: true, get: function () { return topology_list_parties_request_js_1.TopologyListPartiesRequest; } });
465
+ var wait_for_party_hosting_request_js_1 = require("./core/types/requests/wait-for-party-hosting-request.js");
466
+ Object.defineProperty(exports, "WaitForPartyHostingRequest", { enumerable: true, get: function () { return wait_for_party_hosting_request_js_1.WaitForPartyHostingRequest; } });
473
467
  var grant_user_rights_request_js_1 = require("./core/types/requests/grant-user-rights-request.js");
474
468
  Object.defineProperty(exports, "GrantUserRightsRequest", { enumerable: true, get: function () { return grant_user_rights_request_js_1.GrantUserRightsRequest; } });
475
469
  var upload_dar_file_request_js_1 = require("./core/types/requests/upload-dar-file-request.js");
@@ -486,24 +480,14 @@ var get_connected_synchronizers_response_js_1 = require("./core/types/responses/
486
480
  Object.defineProperty(exports, "GetConnectedSynchronizersResponse", { enumerable: true, get: function () { return get_connected_synchronizers_response_js_1.GetConnectedSynchronizersResponse; } });
487
481
  var get_command_status_response_js_1 = require("./core/types/responses/get-command-status-response.js");
488
482
  Object.defineProperty(exports, "GetCommandStatusResponse", { enumerable: true, get: function () { return get_command_status_response_js_1.GetCommandStatusResponse; } });
489
- var health_check_response_js_1 = require("./core/types/responses/health-check-response.js");
490
- Object.defineProperty(exports, "HealthCheckResponse", { enumerable: true, get: function () { return health_check_response_js_1.HealthCheckResponse; } });
491
- var get_ledger_api_version_response_js_1 = require("./core/types/responses/get-ledger-api-version-response.js");
492
- Object.defineProperty(exports, "GetLedgerApiVersionResponse", { enumerable: true, get: function () { return get_ledger_api_version_response_js_1.GetLedgerApiVersionResponse; } });
493
483
  var get_identity_provider_config_response_js_1 = require("./core/types/responses/get-identity-provider-config-response.js");
494
484
  Object.defineProperty(exports, "GetIdentityProviderConfigResponse", { enumerable: true, get: function () { return get_identity_provider_config_response_js_1.GetIdentityProviderConfigResponse; } });
495
485
  var get_latest_pruned_offsets_response_js_1 = require("./core/types/responses/get-latest-pruned-offsets-response.js");
496
486
  Object.defineProperty(exports, "GetLatestPrunedOffsetsResponse", { enumerable: true, get: function () { return get_latest_pruned_offsets_response_js_1.GetLatestPrunedOffsetsResponse; } });
497
487
  var get_ledger_end_response_js_1 = require("./core/types/responses/get-ledger-end-response.js");
498
488
  Object.defineProperty(exports, "GetLedgerEndResponse", { enumerable: true, get: function () { return get_ledger_end_response_js_1.GetLedgerEndResponse; } });
499
- var get_participant_status_response_js_1 = require("./core/types/responses/get-participant-status-response.js");
500
- Object.defineProperty(exports, "GetParticipantStatusResponse", { enumerable: true, get: function () { return get_participant_status_response_js_1.GetParticipantStatusResponse; } });
501
- var get_participant_id_response_js_1 = require("./core/types/responses/get-participant-id-response.js");
502
- Object.defineProperty(exports, "GetParticipantIdResponse", { enumerable: true, get: function () { return get_participant_id_response_js_1.GetParticipantIdResponse; } });
503
489
  var get_package_response_js_1 = require("./core/types/responses/get-package-response.js");
504
490
  Object.defineProperty(exports, "GetPackageResponse", { enumerable: true, get: function () { return get_package_response_js_1.GetPackageResponse; } });
505
- var get_package_references_response_js_1 = require("./core/types/responses/get-package-references-response.js");
506
- Object.defineProperty(exports, "GetPackageReferencesResponse", { enumerable: true, get: function () { return get_package_references_response_js_1.GetPackageReferencesResponse; } });
507
491
  var get_package_status_response_js_1 = require("./core/types/responses/get-package-status-response.js");
508
492
  Object.defineProperty(exports, "GetPackageStatusResponse", { enumerable: true, get: function () { return get_package_status_response_js_1.GetPackageStatusResponse; } });
509
493
  var get_parties_response_js_1 = require("./core/types/responses/get-parties-response.js");
@@ -578,6 +562,8 @@ var canton_error_js_1 = require("./core/errors/canton-error.js");
578
562
  Object.defineProperty(exports, "CantonError", { enumerable: true, get: function () { return canton_error_js_1.CantonError; } });
579
563
  var validation_error_js_1 = require("./core/errors/validation-error.js");
580
564
  Object.defineProperty(exports, "ValidationError", { enumerable: true, get: function () { return validation_error_js_1.ValidationError; } });
565
+ var active_contracts_traversal_error_js_1 = require("./core/errors/active-contracts-traversal-error.js");
566
+ Object.defineProperty(exports, "ActiveContractsTraversalError", { enumerable: true, get: function () { return active_contracts_traversal_error_js_1.ActiveContractsTraversalError; } });
581
567
  var authentication_error_js_1 = require("./core/errors/authentication-error.js");
582
568
  Object.defineProperty(exports, "AuthenticationError", { enumerable: true, get: function () { return authentication_error_js_1.AuthenticationError; } });
583
569
  var authorization_error_js_1 = require("./core/errors/authorization-error.js");
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.GrpcContractQueryClient = void 0;
4
- const get_active_contracts_page_request_js_1 = require("../../core/types/requests/get-active-contracts-page-request.js");
4
+ const contracts_mapper_js_1 = require("../../transports/grpc/mappers/contracts-mapper.js");
5
5
  const query_capability_error_js_1 = require("../errors/query-capability-error.js");
6
6
  const query_source_js_1 = require("../query-source.js");
7
7
  class GrpcContractQueryClient {
@@ -61,8 +61,9 @@ class GrpcContractQueryClient {
61
61
  let rows = snapshot.filter((row) => args.where?.contractId?.equals === undefined
62
62
  ? true
63
63
  : row.contractId === args.where.contractId.equals);
64
- if (args.where?.payload !== undefined)
64
+ if (args.where?.payload !== undefined) {
65
65
  rows = rows.filter((row) => matchesPayload(row.payload, args.where.payload));
66
+ }
66
67
  return rows;
67
68
  }
68
69
  unsupported(operation) {
@@ -94,7 +95,7 @@ class GrpcContractQueryClient {
94
95
  let pageToken;
95
96
  let activeAtOffset;
96
97
  do {
97
- const response = await this.stateService.getActiveContractsPageAsync(new get_active_contracts_page_request_js_1.GetActiveContractsPageRequest(parties === undefined
98
+ const response = await this.stateService.getActiveContractsPageAsync((0, contracts_mapper_js_1.mapGrpcQueryContractsRequest)(parties === undefined
98
99
  ? { allParties: true, activeAtOffset, pageToken }
99
100
  : { parties, activeAtOffset, pageToken }));
100
101
  activeAtOffset ??= response.activeAtOffset;
@@ -111,14 +112,17 @@ class GrpcContractQueryClient {
111
112
  }
112
113
  exports.GrpcContractQueryClient = GrpcContractQueryClient;
113
114
  function hasUnsupportedFilter(where) {
114
- if (where === undefined)
115
+ if (where === undefined) {
115
116
  return false;
116
- if ("and" in where || "or" in where || "not" in where || "createdEventOffset" in where || "createdAt" in where || "archivedEventOffset" in where || "archivedAt" in where)
117
+ }
118
+ else if ("and" in where || "or" in where || "not" in where || "createdEventOffset" in where || "createdAt" in where || "archivedEventOffset" in where || "archivedAt" in where) {
117
119
  return true;
120
+ }
118
121
  for (const field of ["contractId", "templateId"]) {
119
122
  const filter = where[field];
120
- if (filter !== undefined && Object.keys(filter).some((key) => key !== "equals"))
123
+ if (filter !== undefined && Object.keys(filter).some((key) => key !== "equals")) {
121
124
  return true;
125
+ }
122
126
  }
123
127
  return false;
124
128
  }
@@ -140,22 +144,35 @@ function mapGrpcContract(value) {
140
144
  }
141
145
  function matchesPayload(value, filter) {
142
146
  const match = filter.match;
143
- if (match === undefined)
147
+ if (match === undefined) {
144
148
  return false;
149
+ }
145
150
  const visit = (current, node) => Object.entries(node).every(([key, child]) => {
146
151
  const next = current !== null && typeof current === "object" ? current[key] : undefined;
147
152
  const predicate = child;
148
- if (Object.keys(predicate).some((name) => ["equals", "lt", "lte", "gt", "gte", "like", "ilike"].includes(name)))
153
+ if (Object.keys(predicate).some((name) => ["equals", "lt", "lte", "gt", "gte", "like", "ilike"].includes(name))) {
149
154
  return compare(String(next ?? ""), predicate);
155
+ }
150
156
  return visit(next, predicate);
151
157
  });
152
158
  return visit(value, match);
153
159
  }
154
- function compare(value, filter) { if (filter.equals !== undefined)
155
- return value === filter.equals; if (filter.like !== undefined || filter.ilike !== undefined) {
156
- const pattern = String(filter.like ?? filter.ilike).replace(/[.*+?^${}()|[\]\\]/g, "\\$&").replaceAll("%", ".*").replaceAll("_", ".");
157
- return new RegExp(`^${pattern}$`, filter.ilike === undefined ? "" : "i").test(value);
158
- } if (filter.lt !== undefined)
159
- return value < String(filter.lt); if (filter.lte !== undefined)
160
- return value <= String(filter.lte); if (filter.gt !== undefined)
161
- return value > String(filter.gt); return value >= String(filter.gte); }
160
+ function compare(value, filter) {
161
+ if (filter.equals !== undefined) {
162
+ return value === filter.equals;
163
+ }
164
+ else if (filter.like !== undefined || filter.ilike !== undefined) {
165
+ const pattern = String(filter.like ?? filter.ilike).replace(/[.*+?^${}()|[\]\\]/g, "\\$&").replaceAll("%", ".*").replaceAll("_", ".");
166
+ return new RegExp(`^${pattern}$`, filter.ilike === undefined ? "" : "i").test(value);
167
+ }
168
+ else if (filter.lt !== undefined) {
169
+ return value < String(filter.lt);
170
+ }
171
+ else if (filter.lte !== undefined) {
172
+ return value <= String(filter.lte);
173
+ }
174
+ else if (filter.gt !== undefined) {
175
+ return value > String(filter.gt);
176
+ }
177
+ return value >= String(filter.gte);
178
+ }
@@ -15,6 +15,17 @@ async function prepareDecentralizedPartyAsync(request, localParticipant, topolog
15
15
  const partyId = `${request.partyHint}::${decentralizedNamespace}`;
16
16
  const owners = request.owners.map(toTopologyKey);
17
17
  const partyKeys = request.partySigningKeys.map(toTopologyKey);
18
+ const store = {
19
+ store: {
20
+ oneofKind: "synchronizer",
21
+ synchronizer: {
22
+ kind: {
23
+ oneofKind: "id",
24
+ id: request.synchronizer,
25
+ },
26
+ },
27
+ },
28
+ };
18
29
  const participants = [
19
30
  {
20
31
  participantUid: localParticipant.participantId,
@@ -30,6 +41,7 @@ async function prepareDecentralizedPartyAsync(request, localParticipant, topolog
30
41
  {
31
42
  operation: topology_js_1.Enums_TopologyChangeOp.ADD_REPLACE,
32
43
  serial: 1,
44
+ store,
33
45
  mapping: {
34
46
  mapping: {
35
47
  oneofKind: "decentralizedNamespaceDefinition",
@@ -41,14 +53,15 @@ async function prepareDecentralizedPartyAsync(request, localParticipant, topolog
41
53
  },
42
54
  },
43
55
  },
44
- ...owners.map((targetKey) => ({
56
+ ...owners.map((targetKey, index) => ({
45
57
  operation: topology_js_1.Enums_TopologyChangeOp.ADD_REPLACE,
46
58
  serial: 1,
59
+ store,
47
60
  mapping: {
48
61
  mapping: {
49
62
  oneofKind: "namespaceDelegation",
50
63
  namespaceDelegation: {
51
- namespace: decentralizedNamespace,
64
+ namespace: ownerFingerprints[index],
52
65
  targetKey,
53
66
  isRootDelegation: true,
54
67
  restriction: { oneofKind: undefined },
@@ -59,6 +72,7 @@ async function prepareDecentralizedPartyAsync(request, localParticipant, topolog
59
72
  {
60
73
  operation: topology_js_1.Enums_TopologyChangeOp.ADD_REPLACE,
61
74
  serial: 1,
75
+ store,
62
76
  mapping: {
63
77
  mapping: {
64
78
  oneofKind: "partyToParticipant",
@@ -101,7 +115,18 @@ async function prepareDecentralizedPartyAsync(request, localParticipant, topolog
101
115
  }))]
102
116
  : ownerRequests;
103
117
  });
104
- return new finalize_decentralized_party_request_js_1.PreparedDecentralizedParty({ synchronizer: request.synchronizer, partyId, decentralizedNamespace, ownerThreshold: request.ownerThreshold, partySigningThreshold: request.partySigningThreshold, transactions, signingRequests });
118
+ return new finalize_decentralized_party_request_js_1.PreparedDecentralizedParty({
119
+ synchronizer: request.synchronizer,
120
+ partyId,
121
+ decentralizedNamespace,
122
+ ownerThreshold: request.ownerThreshold,
123
+ partySigningThreshold: request.partySigningThreshold,
124
+ identityProviderId: request.identityProviderId,
125
+ waitForAllocation: request.waitForAllocation,
126
+ userId: request.userId,
127
+ transactions,
128
+ signingRequests,
129
+ });
105
130
  }
106
131
  function fingerprintFor(value) {
107
132
  const fingerprint = (0, canton_hash_js_1.computeCantonPublicKeyFingerprint)(value.publicKey.keyData, value.publicKey.format);
@@ -70,6 +70,9 @@ class PartyManagementServiceClient {
70
70
  signatures: (signaturesByHash.get(toHex(transaction.transactionHash)) ?? []).map(toGeneratedSignature),
71
71
  })),
72
72
  multiHashSignatures: [],
73
+ identityProviderId: prepared.identityProviderId,
74
+ waitForAllocation: prepared.waitForAllocation,
75
+ userId: prepared.userId,
73
76
  }), _options);
74
77
  }
75
78
  /** Creates a decentralized party using the per-key callbacks in the request. */
@@ -7,7 +7,7 @@ class StateServiceClient {
7
7
  this.transport = transport;
8
8
  void this.transport;
9
9
  }
10
- /** Reads a page of active contracts. gRPC supports template and interface filters; JSON supports template queries only. */
10
+ /** Reads a page of active contracts. Supported on gRPC; JSON rejects it. */
11
11
  getActiveContractsPageAsync(request, options) {
12
12
  return this.transport.getActiveContractsPageAsync(request, options);
13
13
  }
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TopologyAggregationServiceClient = void 0;
4
+ const poll_until_async_js_1 = require("../../core/polling/poll-until-async.js");
5
+ const topology_aggregation_service_js_1 = require("../../transports/grpc/generated/canton/com/digitalasset/canton/topology/admin/v30/topology_aggregation_service.js");
4
6
  class TopologyAggregationServiceClient {
5
7
  transport;
6
8
  constructor(transport) {
@@ -11,9 +13,43 @@ class TopologyAggregationServiceClient {
11
13
  listPartiesAsync(request, options) {
12
14
  return this.transport.topologyListPartiesAsync(request, options);
13
15
  }
16
+ /** Waits for exact aggregated party hosting information. Supported on gRPC; JSON rejects it. */
17
+ async waitForPartyHostingAsync(request, options) {
18
+ const response = await (0, poll_until_async_js_1.pollUntilAsync)({
19
+ timeoutMs: request.timeoutMs,
20
+ pollIntervalMs: request.pollIntervalMs,
21
+ readAsync: () => this.listPartiesAsync(topology_aggregation_service_js_1.ListPartiesRequest.create({
22
+ limit: 1,
23
+ synchronizerIds: [request.synchronizerId],
24
+ filterParty: request.partyId,
25
+ filterParticipant: request.participantId,
26
+ }), options),
27
+ match: value => findPartyHosting(value.results, request) !== undefined,
28
+ createTimeoutError: lastObserved => new Error(`Timed out waiting for party hosting for '${request.partyId}'; expected participant '${request.participantId}' on synchronizer '${request.synchronizerId}'; last observed hosting: ${formatHosting(lastObserved?.results ?? [])}.`),
29
+ });
30
+ const result = findPartyHosting(response.results, request);
31
+ if (result === undefined) {
32
+ throw new Error("Party hosting wait completed without a matching result.");
33
+ }
34
+ return result;
35
+ }
14
36
  /** Lists aggregated key owner information. Supported on gRPC; JSON rejects it. */
15
37
  listKeyOwnersAsync(request, options) {
16
38
  return this.transport.listKeyOwnersAsync(request, options);
17
39
  }
18
40
  }
19
41
  exports.TopologyAggregationServiceClient = TopologyAggregationServiceClient;
42
+ function findPartyHosting(results, request) {
43
+ return results.find(result => result.party === request.partyId &&
44
+ result.participants.some(participant => participant.participantUid === request.participantId &&
45
+ participant.synchronizers.some(permission => permission.synchronizerId === request.synchronizerId)));
46
+ }
47
+ function formatHosting(results) {
48
+ if (results.length === 0) {
49
+ return "none";
50
+ }
51
+ return results.slice(0, 5).map(result => {
52
+ const participants = result.participants.slice(0, 5).flatMap(participant => participant.synchronizers.slice(0, 5).map(synchronizer => `${participant.participantUid}@${synchronizer.synchronizerId}`));
53
+ return `party='${result.party}', participants=[${participants.join(", ")}]`;
54
+ }).join("; ");
55
+ }
@@ -426,10 +426,6 @@ function createGrpcOperations(options, endpoint, grpcChannelSecurity, dependenci
426
426
  const callOptions = await buildCallOptionsForLedgerSurfaceAsync(options, requestOptions);
427
427
  return await unwrapUnaryResponse(stateServiceClient.getActiveContractsPage(request, callOptions));
428
428
  },
429
- async getActiveContractsPageAsync(request, requestOptions) {
430
- const callOptions = await buildCallOptionsForLedgerSurfaceAsync(options, requestOptions);
431
- return await unwrapUnaryResponse(stateServiceClient.getActiveContractsPage(request, callOptions));
432
- },
433
429
  async getConnectedSynchronizersAsync(request, requestOptions) {
434
430
  const callOptions = await buildCallOptionsForLedgerSurfaceAsync(options, requestOptions);
435
431
  return await unwrapUnaryResponse(stateServiceClient.getConnectedSynchronizers(request, callOptions));
@@ -509,7 +505,7 @@ function wrapGrpcOperations(operations, onGrpcError) {
509
505
  if (typeof operation !== "function") {
510
506
  return operation;
511
507
  }
512
- if (property === "getUpdatesAsync" || property === "getCompletionsAsync") {
508
+ else if (property === "getUpdatesAsync" || property === "getCompletionsAsync") {
513
509
  return (...args) => wrapGrpcStream(() => operation.apply(target, args), onGrpcError);
514
510
  }
515
511
  return async (...args) => {
@@ -545,8 +541,9 @@ async function* wrapGrpcStream(createStream, onGrpcError) {
545
541
  }
546
542
  function notifyGrpcError(error, onGrpcError) {
547
543
  const parsedError = grpc_transport_error_js_1.GrpcTransportError.fromUnknown(error);
548
- if (parsedError === undefined)
544
+ if (parsedError === undefined) {
549
545
  return error;
546
+ }
550
547
  try {
551
548
  onGrpcError?.(parsedError);
552
549
  }
@@ -579,8 +576,9 @@ async function* streamServerResponsesAsync(createCall) {
579
576
  iterator = responseIterator;
580
577
  while (true) {
581
578
  const next = await responseIterator.next();
582
- if (next.done)
579
+ if (next.done) {
583
580
  break;
581
+ }
584
582
  yield next.value;
585
583
  }
586
584
  exhausted = true;
@@ -14,6 +14,8 @@ const grpc_channel_factory_js_1 = require("./grpc-channel-factory.js");
14
14
  const commands_mapper_js_1 = require("./mappers/commands-mapper.js");
15
15
  const interactive_command_mapper_js_1 = require("./mappers/interactive-command-mapper.js");
16
16
  const parties_mapper_js_1 = require("./mappers/parties-mapper.js");
17
+ const topology_manager_read_mapper_js_1 = require("./mappers/topology-manager-read-mapper.js");
18
+ const users_mapper_js_1 = require("./mappers/users-mapper.js");
17
19
  const object_disposed_error_js_1 = require("../../core/errors/object-disposed-error.js");
18
20
  class GrpcTransport {
19
21
  operations;
@@ -88,15 +90,18 @@ class GrpcTransport {
88
90
  }
89
91
  async getUserAsync(request, options) {
90
92
  this.throwIfDisposed();
91
- return (await this.operations.getUserAsync(request, options));
93
+ const payload = await this.operations.getUserAsync((0, users_mapper_js_1.mapGrpcGetUserRequest)(request), options);
94
+ return (0, users_mapper_js_1.mapGrpcGetUser)(payload);
92
95
  }
93
96
  async listUsersAsync(request, options) {
94
97
  this.throwIfDisposed();
95
- return (await this.operations.listUsersAsync(request, options));
98
+ const payload = await this.operations.listUsersAsync((0, users_mapper_js_1.mapGrpcListUsersRequest)(request), options);
99
+ return (0, users_mapper_js_1.mapGrpcListUsers)(payload);
96
100
  }
97
101
  async listUserRightsAsync(request, options) {
98
102
  this.throwIfDisposed();
99
- return (await this.operations.listUserRightsAsync(request, options));
103
+ const payload = await this.operations.listUserRightsAsync((0, users_mapper_js_1.mapGrpcListUserRightsRequest)(request), options);
104
+ return (0, users_mapper_js_1.mapGrpcListUserRights)(payload);
100
105
  }
101
106
  async uploadDarFileAsync(request, options) {
102
107
  this.throwIfDisposed();
@@ -377,12 +382,12 @@ class GrpcTransport {
377
382
  this.throwIfDisposed();
378
383
  let payload;
379
384
  try {
380
- payload = await this.operations.listPartyToParticipantAsync(request, options);
385
+ payload = await this.operations.listPartyToParticipantAsync((0, topology_manager_read_mapper_js_1.mapGrpcListPartyToParticipantRequest)(request), options);
381
386
  }
382
387
  catch (error) {
383
388
  this.throwPartyTopologyReadCompatibilityError(error, "topologyManagerReadService.listPartyToParticipantAsync");
384
389
  }
385
- return payload;
390
+ return (0, topology_manager_read_mapper_js_1.mapGrpcListPartyToParticipantResponse)(payload);
386
391
  }
387
392
  async listSynchronizerParametersStateAsync(request, options) {
388
393
  this.throwIfDisposed();
@@ -441,7 +446,7 @@ class GrpcTransport {
441
446
  }
442
447
  async getActiveContractsPageAsync(request, options) {
443
448
  this.throwIfDisposed();
444
- return (await this.operations.getActiveContractsPageAsync(request, options));
449
+ return (await this.operations.queryContractsAsync(request, options));
445
450
  }
446
451
  async getConnectedSynchronizersAsync(request, options) {
447
452
  this.throwIfDisposed();
@@ -498,7 +503,7 @@ class GrpcTransport {
498
503
  else if (!this.operations.executeSubmissionAndWaitAsync) {
499
504
  throw new not_supported_error_js_1.NotSupportedError("interactive gRPC command signing is not available on this transport");
500
505
  }
501
- const commandId = (0, node_crypto_1.randomUUID)();
506
+ const commandId = request.commandId ?? (0, node_crypto_1.randomUUID)();
502
507
  const submissionId = (0, node_crypto_1.randomUUID)();
503
508
  const prepared = await this.operations.prepareSubmissionAsync((0, interactive_command_mapper_js_1.mapGrpcPrepareSubmissionRequest)(request, commandId), options);
504
509
  if (!prepared.preparedTransaction) {
@@ -509,8 +514,9 @@ class GrpcTransport {
509
514
  }
510
515
  const signerResults = await Promise.all(request.actAs.map(async (party) => {
511
516
  const partySigner = "signAsync" in signer ? signer : signer[party];
512
- if (partySigner === undefined)
517
+ if (partySigner === undefined) {
513
518
  throw new validation_error_js_1.ValidationError(`interactive command signing requires a signer for ${party}`);
519
+ }
514
520
  return { party, result: await partySigner.signAsync(new sign_command_request_js_1.SignCommandRequest({ payload: prepared.preparedTransactionHash, party, algorithmHint: "ed25519" })) };
515
521
  }));
516
522
  const executed = await this.operations.executeSubmissionAndWaitAsync((0, interactive_command_mapper_js_1.mapGrpcExecuteSubmissionAndWaitRequest)({
@@ -524,23 +530,33 @@ class GrpcTransport {
524
530
  }
525
531
  async submitCommandForTransactionAsync(request, options) {
526
532
  this.throwIfDisposed();
527
- if (!this.operations.submitCommandForTransactionAsync)
533
+ if (!this.operations.submitCommandForTransactionAsync) {
528
534
  throw new not_supported_error_js_1.NotSupportedError("transaction-returning command submission is not available on this transport");
535
+ }
529
536
  return (0, commands_mapper_js_1.mapGrpcSubmitCommandTransaction)(await this.operations.submitCommandForTransactionAsync((0, commands_mapper_js_1.mapGrpcSubmitCommandForTransactionRequest)(request), options));
530
537
  }
531
538
  async prepareCommandAsync(request, options) {
532
- if (!this.operations.prepareSubmissionAsync)
539
+ if (!this.operations.prepareSubmissionAsync) {
533
540
  throw new not_supported_error_js_1.NotSupportedError("interactive gRPC command signing is not available on this transport");
534
- const prepared = await this.operations.prepareSubmissionAsync((0, interactive_command_mapper_js_1.mapGrpcPrepareSubmissionRequest)(request, (0, node_crypto_1.randomUUID)()), options);
535
- if (!prepared.preparedTransaction || prepared.preparedTransactionHash.length === 0)
541
+ }
542
+ const commandId = request.commandId ?? (0, node_crypto_1.randomUUID)();
543
+ const prepared = await this.operations.prepareSubmissionAsync((0, interactive_command_mapper_js_1.mapGrpcPrepareSubmissionRequest)(request, commandId), options);
544
+ if (!prepared.preparedTransaction || prepared.preparedTransactionHash.length === 0) {
536
545
  throw new validation_error_js_1.ValidationError("interactive prepare submission returned an incomplete result");
546
+ }
537
547
  return new prepared_command_submission_js_1.PreparedCommandSubmission(request, prepared.preparedTransaction, prepared.preparedTransactionHash, prepared.hashingSchemeVersion);
538
548
  }
539
549
  async executePreparedCommandAndWaitAsync(prepared, signatures, options) {
540
- if (!this.operations.executeSubmissionAndWaitAsync)
550
+ if (!this.operations.executeSubmissionAndWaitAsync) {
541
551
  throw new not_supported_error_js_1.NotSupportedError("interactive gRPC command signing is not available on this transport");
542
- const signerResults = prepared.request.actAs.map((party) => { const result = signatures[party]; if (!result)
543
- throw new validation_error_js_1.ValidationError(`interactive command signing requires a signature for ${party}`); return { party, result }; });
552
+ }
553
+ const signerResults = prepared.request.actAs.map((party) => {
554
+ const result = signatures[party];
555
+ if (!result) {
556
+ throw new validation_error_js_1.ValidationError(`interactive command signing requires a signature for ${party}`);
557
+ }
558
+ return { party, result };
559
+ });
544
560
  const result = await this.operations.executeSubmissionAndWaitAsync((0, interactive_command_mapper_js_1.mapGrpcExecuteSubmissionAndWaitRequest)({ request: prepared.request, preparedTransaction: prepared.transaction, hashingSchemeVersion: prepared.hashingSchemeVersion, submissionId: (0, node_crypto_1.randomUUID)(), signerResults }), options);
545
561
  return (0, interactive_command_mapper_js_1.mapGrpcInteractiveSubmitCommand)(result);
546
562
  }
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.mapGrpcDeduplicationPeriod = mapGrpcDeduplicationPeriod;
4
+ const validation_error_js_1 = require("../../../core/errors/validation-error.js");
5
+ function mapGrpcDeduplicationPeriod(period, options) {
6
+ if (period === undefined) {
7
+ return { oneofKind: undefined };
8
+ }
9
+ else if (period.kind === "duration") {
10
+ return {
11
+ oneofKind: "deduplicationDuration",
12
+ deduplicationDuration: { seconds: String(period.seconds), nanos: 0 },
13
+ };
14
+ }
15
+ else if (!options.allowParticipantBegin && period.offset === "0") {
16
+ throw new validation_error_js_1.ValidationError("interactive command deduplication offsets must be positive");
17
+ }
18
+ return {
19
+ oneofKind: "deduplicationOffset",
20
+ deduplicationOffset: period.offset,
21
+ };
22
+ }
@@ -20,16 +20,15 @@ const exercise_by_key_command_js_1 = require("../../../core/types/commands/exerc
20
20
  const exercise_command_js_1 = require("../../../core/types/commands/exercise-command.js");
21
21
  const submit_command_response_js_1 = require("../../../core/types/responses/submit-command-response.js");
22
22
  const submit_command_transaction_response_js_1 = require("../../../core/types/responses/submit-command-transaction-response.js");
23
+ const command_deduplication_mapper_js_1 = require("./command-deduplication-mapper.js");
23
24
  function mapGrpcSubmitCommandRequest(request) {
24
25
  return {
25
26
  commands: {
26
27
  workflowId: "",
27
28
  userId: request.userId ?? "",
28
- commandId: (0, node_crypto_1.randomUUID)(),
29
+ commandId: request.commandId ?? (0, node_crypto_1.randomUUID)(),
29
30
  commands: [mapGrpcLedgerCommand(request.command)],
30
- deduplicationPeriod: {
31
- oneofKind: undefined,
32
- },
31
+ deduplicationPeriod: (0, command_deduplication_mapper_js_1.mapGrpcDeduplicationPeriod)(request.deduplicationPeriod, { allowParticipantBegin: true }),
33
32
  actAs: [...request.actAs],
34
33
  readAs: [...request.readAs],
35
34
  submissionId: "",
@@ -7,8 +7,12 @@ exports.mapGrpcSignature = mapGrpcSignature;
7
7
  const validation_error_js_1 = require("../../../core/errors/validation-error.js");
8
8
  const submit_command_response_js_1 = require("../../../core/types/responses/submit-command-response.js");
9
9
  const crypto_js_1 = require("../generated/canton/com/daml/ledger/api/v2/crypto.js");
10
+ const command_deduplication_mapper_js_1 = require("./command-deduplication-mapper.js");
10
11
  const commands_mapper_js_1 = require("./commands-mapper.js");
11
12
  function mapGrpcPrepareSubmissionRequest(request, commandId) {
13
+ (0, command_deduplication_mapper_js_1.mapGrpcDeduplicationPeriod)(request.deduplicationPeriod, {
14
+ allowParticipantBegin: false,
15
+ });
12
16
  return {
13
17
  userId: request.userId ?? "",
14
18
  commandId,
@@ -28,9 +32,7 @@ function mapGrpcExecuteSubmissionAndWaitRequest(init) {
28
32
  partySignatures: {
29
33
  signatures: init.signerResults.map(({ party, result }) => ({ party, signatures: [mapGrpcSignature(result)] })),
30
34
  },
31
- deduplicationPeriod: {
32
- oneofKind: undefined,
33
- },
35
+ deduplicationPeriod: (0, command_deduplication_mapper_js_1.mapGrpcDeduplicationPeriod)(init.request.deduplicationPeriod, { allowParticipantBegin: false }),
34
36
  submissionId: init.submissionId,
35
37
  userId: init.request.userId ?? "",
36
38
  hashingSchemeVersion: init.hashingSchemeVersion,