@distrohelena/canton-typescript-sdk 0.1.33 → 0.1.36

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 (115) hide show
  1. package/README.md +211 -18
  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 +12 -1
  15. package/dist/cjs/services/party-management/party-management-service-client.js +3 -0
  16. package/dist/cjs/services/state/state-service-client.js +57 -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 +12 -1
  52. package/dist/services/party-management/party-management-service-client.js +3 -0
  53. package/dist/services/state/state-service-client.d.ts +5 -1
  54. package/dist/services/state/state-service-client.js +57 -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 +33 -1
  74. package/node/start-local-participant-358.sh +33 -3
  75. package/node/test-participant-358-sidecar.sh +31 -1
  76. package/package.json +15 -1
  77. package/dist/cjs/core/types/health-check-status.js +0 -10
  78. package/dist/cjs/core/types/requests/get-ledger-api-version-request.js +0 -6
  79. package/dist/cjs/core/types/requests/get-package-references-request.js +0 -10
  80. package/dist/cjs/core/types/requests/get-participant-id-request.js +0 -7
  81. package/dist/cjs/core/types/requests/get-participant-status-request.js +0 -6
  82. package/dist/cjs/core/types/requests/health-check-request.js +0 -10
  83. package/dist/cjs/core/types/responses/get-ledger-api-version-response.js +0 -12
  84. package/dist/cjs/core/types/responses/get-package-references-response.js +0 -10
  85. package/dist/cjs/core/types/responses/get-participant-id-response.js +0 -10
  86. package/dist/cjs/core/types/responses/get-participant-status-response.js +0 -12
  87. package/dist/cjs/core/types/responses/health-check-response.js +0 -10
  88. package/dist/cjs/transports/grpc/mappers/health-mapper.js +0 -24
  89. package/dist/cjs/transports/grpc/mappers/participant-status-mapper.js +0 -58
  90. package/dist/core/types/health-check-status.d.ts +0 -6
  91. package/dist/core/types/health-check-status.js +0 -7
  92. package/dist/core/types/requests/get-ledger-api-version-request.d.ts +0 -2
  93. package/dist/core/types/requests/get-ledger-api-version-request.js +0 -2
  94. package/dist/core/types/requests/get-package-references-request.d.ts +0 -6
  95. package/dist/core/types/requests/get-package-references-request.js +0 -6
  96. package/dist/core/types/requests/get-participant-id-request.d.ts +0 -3
  97. package/dist/core/types/requests/get-participant-id-request.js +0 -3
  98. package/dist/core/types/requests/get-participant-status-request.d.ts +0 -2
  99. package/dist/core/types/requests/get-participant-status-request.js +0 -2
  100. package/dist/core/types/requests/health-check-request.d.ts +0 -6
  101. package/dist/core/types/requests/health-check-request.js +0 -6
  102. package/dist/core/types/responses/get-ledger-api-version-response.d.ts +0 -8
  103. package/dist/core/types/responses/get-ledger-api-version-response.js +0 -8
  104. package/dist/core/types/responses/get-package-references-response.d.ts +0 -7
  105. package/dist/core/types/responses/get-package-references-response.js +0 -6
  106. package/dist/core/types/responses/get-participant-id-response.d.ts +0 -6
  107. package/dist/core/types/responses/get-participant-id-response.js +0 -6
  108. package/dist/core/types/responses/get-participant-status-response.d.ts +0 -10
  109. package/dist/core/types/responses/get-participant-status-response.js +0 -8
  110. package/dist/core/types/responses/health-check-response.d.ts +0 -7
  111. package/dist/core/types/responses/health-check-response.js +0 -6
  112. package/dist/transports/grpc/mappers/health-mapper.d.ts +0 -5
  113. package/dist/transports/grpc/mappers/health-mapper.js +0 -21
  114. package/dist/transports/grpc/mappers/participant-status-mapper.d.ts +0 -5
  115. package/dist/transports/grpc/mappers/participant-status-mapper.js +0 -54
package/dist/index.d.ts CHANGED
@@ -70,6 +70,7 @@ export { ConnectedSynchronizerHealth } from "./core/types/connected-synchronizer
70
70
  export { ConnectedSynchronizer } from "./core/types/connected-synchronizer.js";
71
71
  export { ConnectedSynchronizerStatus } from "./core/types/connected-synchronizer-status.js";
72
72
  export { CommandInspectionContract } from "./core/types/command-inspection-contract.js";
73
+ export type { CommandDeduplicationPeriod } from "./core/types/command-deduplication-period.js";
73
74
  export { CommandRequestStatistics } from "./core/types/command-request-statistics.js";
74
75
  export { CommandState } from "./core/types/command-state.js";
75
76
  export { CommandStatus } from "./core/types/command-status.js";
@@ -93,7 +94,6 @@ export { OffsetCheckpoint } from "./core/types/offset-checkpoint.js";
93
94
  export { PackageFormat } from "./core/types/package-format.js";
94
95
  export { HashFunction } from "./core/types/hash-function.js";
95
96
  export { CantonHashPurpose } from "./core/types/canton-hash-purpose.js";
96
- export { HealthCheckStatus } from "./core/types/health-check-status.js";
97
97
  export { PackageStatus } from "./core/types/package-status.js";
98
98
  export { PendingOperationMetadata } from "./core/types/pending-operation-metadata.js";
99
99
  export { ParticipantPruningSchedule } from "./core/types/participant-pruning-schedule.js";
@@ -102,6 +102,8 @@ export { ReceivedAcsCommitment } from "./core/types/received-acs-commitment.js";
102
102
  export { ReceivedAcsCommitmentPerSynchronizer } from "./core/types/received-acs-commitment-per-synchronizer.js";
103
103
  export { ReceivedAcsCommitmentState } from "./core/types/received-acs-commitment-state.js";
104
104
  export { RequestOptions } from "./core/types/request-options.js";
105
+ export { OperationDeadline } from "./core/types/operation-deadline.js";
106
+ export { ActiveContractsTraversalOptions } from "./core/types/active-contracts-traversal-options.js";
105
107
  export { PackageMetadataFilter } from "./core/types/package-metadata-filter.js";
106
108
  export { PackageReference } from "./core/types/package-reference.js";
107
109
  export { ParticipantDarDescription } from "./core/types/participant-dar-description.js";
@@ -199,17 +201,12 @@ export { GetDarRequest } from "./core/types/requests/get-dar-request.js";
199
201
  export { GetActiveContractsPageRequest } from "./core/types/requests/get-active-contracts-page-request.js";
200
202
  export { GetActiveContractsRequest } from "./core/types/requests/get-active-contracts-request.js";
201
203
  export { GetCommandStatusRequest } from "./core/types/requests/get-command-status-request.js";
202
- export { HealthCheckRequest } from "./core/types/requests/health-check-request.js";
203
204
  export { ListPackagesRequest } from "./core/types/requests/list-packages-request.js";
204
205
  export { ListAllRequest } from "./core/types/requests/list-all-request.js";
205
206
  export { ListDecentralizedNamespaceDefinitionRequest } from "./core/types/requests/list-decentralized-namespace-definition-request.js";
206
- export { GetLedgerApiVersionRequest } from "./core/types/requests/get-ledger-api-version-request.js";
207
207
  export { GetIdentityProviderConfigRequest } from "./core/types/requests/get-identity-provider-config-request.js";
208
- export { GetParticipantStatusRequest } from "./core/types/requests/get-participant-status-request.js";
209
208
  export { GetPackageRequest } from "./core/types/requests/get-package-request.js";
210
- export { GetPackageReferencesRequest } from "./core/types/requests/get-package-references-request.js";
211
209
  export { GetPackageStatusRequest } from "./core/types/requests/get-package-status-request.js";
212
- export { GetParticipantIdRequest } from "./core/types/requests/get-participant-id-request.js";
213
210
  export { GetConnectedSynchronizersRequest } from "./core/types/requests/get-connected-synchronizers-request.js";
214
211
  export { GetLatestPrunedOffsetsRequest } from "./core/types/requests/get-latest-pruned-offsets-request.js";
215
212
  export { GetLedgerEndRequest } from "./core/types/requests/get-ledger-end-request.js";
@@ -239,6 +236,7 @@ export { ListUserRightsRequest } from "./core/types/requests/list-user-rights-re
239
236
  export { ListUsersRequest } from "./core/types/requests/list-users-request.js";
240
237
  export { SubmitCommandRequest } from "./core/types/requests/submit-command-request.js";
241
238
  export { TopologyListPartiesRequest } from "./core/types/requests/topology-list-parties-request.js";
239
+ export { WaitForPartyHostingRequest } from "./core/types/requests/wait-for-party-hosting-request.js";
242
240
  export { GrantUserRightsRequest } from "./core/types/requests/grant-user-rights-request.js";
243
241
  export type { UserRightAssignment } from "./core/types/requests/grant-user-rights-request.js";
244
242
  export { UploadDarFileRequest } from "./core/types/requests/upload-dar-file-request.js";
@@ -248,15 +246,10 @@ export { GetDarResponse } from "./core/types/responses/get-dar-response.js";
248
246
  export { GetActiveContractsPageResponse } from "./core/types/responses/get-active-contracts-page-response.js";
249
247
  export { GetConnectedSynchronizersResponse } from "./core/types/responses/get-connected-synchronizers-response.js";
250
248
  export { GetCommandStatusResponse } from "./core/types/responses/get-command-status-response.js";
251
- export { HealthCheckResponse } from "./core/types/responses/health-check-response.js";
252
- export { GetLedgerApiVersionResponse } from "./core/types/responses/get-ledger-api-version-response.js";
253
249
  export { GetIdentityProviderConfigResponse } from "./core/types/responses/get-identity-provider-config-response.js";
254
250
  export { GetLatestPrunedOffsetsResponse } from "./core/types/responses/get-latest-pruned-offsets-response.js";
255
251
  export { GetLedgerEndResponse } from "./core/types/responses/get-ledger-end-response.js";
256
- export { GetParticipantStatusResponse } from "./core/types/responses/get-participant-status-response.js";
257
- export { GetParticipantIdResponse } from "./core/types/responses/get-participant-id-response.js";
258
252
  export { GetPackageResponse } from "./core/types/responses/get-package-response.js";
259
- export { GetPackageReferencesResponse } from "./core/types/responses/get-package-references-response.js";
260
253
  export { GetPackageStatusResponse } from "./core/types/responses/get-package-status-response.js";
261
254
  export { GetPartiesResponse } from "./core/types/responses/get-parties-response.js";
262
255
  export { GetUserResponse } from "./core/types/responses/get-user-response.js";
@@ -296,6 +289,7 @@ export type { ContractObserver } from "./services/contracts/contract-observer.in
296
289
  export type { TransactionObserver } from "./services/events/transaction-observer.interface.js";
297
290
  export { CantonError } from "./core/errors/canton-error.js";
298
291
  export { ValidationError } from "./core/errors/validation-error.js";
292
+ export { ActiveContractsTraversalError } from "./core/errors/active-contracts-traversal-error.js";
299
293
  export { AuthenticationError } from "./core/errors/authentication-error.js";
300
294
  export { AuthorizationError } from "./core/errors/authorization-error.js";
301
295
  export { TransportError } from "./core/errors/transport-error.js";
package/dist/index.js CHANGED
@@ -85,7 +85,6 @@ export { OffsetCheckpoint } from "./core/types/offset-checkpoint.js";
85
85
  export { PackageFormat } from "./core/types/package-format.js";
86
86
  export { HashFunction } from "./core/types/hash-function.js";
87
87
  export { CantonHashPurpose } from "./core/types/canton-hash-purpose.js";
88
- export { HealthCheckStatus } from "./core/types/health-check-status.js";
89
88
  export { PackageStatus } from "./core/types/package-status.js";
90
89
  export { PendingOperationMetadata } from "./core/types/pending-operation-metadata.js";
91
90
  export { ParticipantPruningSchedule } from "./core/types/participant-pruning-schedule.js";
@@ -94,6 +93,8 @@ export { ReceivedAcsCommitment } from "./core/types/received-acs-commitment.js";
94
93
  export { ReceivedAcsCommitmentPerSynchronizer } from "./core/types/received-acs-commitment-per-synchronizer.js";
95
94
  export { ReceivedAcsCommitmentState } from "./core/types/received-acs-commitment-state.js";
96
95
  export { RequestOptions } from "./core/types/request-options.js";
96
+ export { OperationDeadline } from "./core/types/operation-deadline.js";
97
+ export { ActiveContractsTraversalOptions } from "./core/types/active-contracts-traversal-options.js";
97
98
  export { PackageMetadataFilter } from "./core/types/package-metadata-filter.js";
98
99
  export { PackageReference } from "./core/types/package-reference.js";
99
100
  export { ParticipantDarDescription } from "./core/types/participant-dar-description.js";
@@ -186,17 +187,12 @@ export { GetDarRequest } from "./core/types/requests/get-dar-request.js";
186
187
  export { GetActiveContractsPageRequest } from "./core/types/requests/get-active-contracts-page-request.js";
187
188
  export { GetActiveContractsRequest } from "./core/types/requests/get-active-contracts-request.js";
188
189
  export { GetCommandStatusRequest } from "./core/types/requests/get-command-status-request.js";
189
- export { HealthCheckRequest } from "./core/types/requests/health-check-request.js";
190
190
  export { ListPackagesRequest } from "./core/types/requests/list-packages-request.js";
191
191
  export { ListAllRequest } from "./core/types/requests/list-all-request.js";
192
192
  export { ListDecentralizedNamespaceDefinitionRequest } from "./core/types/requests/list-decentralized-namespace-definition-request.js";
193
- export { GetLedgerApiVersionRequest } from "./core/types/requests/get-ledger-api-version-request.js";
194
193
  export { GetIdentityProviderConfigRequest } from "./core/types/requests/get-identity-provider-config-request.js";
195
- export { GetParticipantStatusRequest } from "./core/types/requests/get-participant-status-request.js";
196
194
  export { GetPackageRequest } from "./core/types/requests/get-package-request.js";
197
- export { GetPackageReferencesRequest } from "./core/types/requests/get-package-references-request.js";
198
195
  export { GetPackageStatusRequest } from "./core/types/requests/get-package-status-request.js";
199
- export { GetParticipantIdRequest } from "./core/types/requests/get-participant-id-request.js";
200
196
  export { GetConnectedSynchronizersRequest } from "./core/types/requests/get-connected-synchronizers-request.js";
201
197
  export { GetLatestPrunedOffsetsRequest } from "./core/types/requests/get-latest-pruned-offsets-request.js";
202
198
  export { GetLedgerEndRequest } from "./core/types/requests/get-ledger-end-request.js";
@@ -226,6 +222,7 @@ export { ListUserRightsRequest } from "./core/types/requests/list-user-rights-re
226
222
  export { ListUsersRequest } from "./core/types/requests/list-users-request.js";
227
223
  export { SubmitCommandRequest } from "./core/types/requests/submit-command-request.js";
228
224
  export { TopologyListPartiesRequest } from "./core/types/requests/topology-list-parties-request.js";
225
+ export { WaitForPartyHostingRequest } from "./core/types/requests/wait-for-party-hosting-request.js";
229
226
  export { GrantUserRightsRequest } from "./core/types/requests/grant-user-rights-request.js";
230
227
  export { UploadDarFileRequest } from "./core/types/requests/upload-dar-file-request.js";
231
228
  export { AllocatePartyResponse } from "./core/types/responses/allocate-party-response.js";
@@ -234,15 +231,10 @@ export { GetDarResponse } from "./core/types/responses/get-dar-response.js";
234
231
  export { GetActiveContractsPageResponse } from "./core/types/responses/get-active-contracts-page-response.js";
235
232
  export { GetConnectedSynchronizersResponse } from "./core/types/responses/get-connected-synchronizers-response.js";
236
233
  export { GetCommandStatusResponse } from "./core/types/responses/get-command-status-response.js";
237
- export { HealthCheckResponse } from "./core/types/responses/health-check-response.js";
238
- export { GetLedgerApiVersionResponse } from "./core/types/responses/get-ledger-api-version-response.js";
239
234
  export { GetIdentityProviderConfigResponse } from "./core/types/responses/get-identity-provider-config-response.js";
240
235
  export { GetLatestPrunedOffsetsResponse } from "./core/types/responses/get-latest-pruned-offsets-response.js";
241
236
  export { GetLedgerEndResponse } from "./core/types/responses/get-ledger-end-response.js";
242
- export { GetParticipantStatusResponse } from "./core/types/responses/get-participant-status-response.js";
243
- export { GetParticipantIdResponse } from "./core/types/responses/get-participant-id-response.js";
244
237
  export { GetPackageResponse } from "./core/types/responses/get-package-response.js";
245
- export { GetPackageReferencesResponse } from "./core/types/responses/get-package-references-response.js";
246
238
  export { GetPackageStatusResponse } from "./core/types/responses/get-package-status-response.js";
247
239
  export { GetPartiesResponse } from "./core/types/responses/get-parties-response.js";
248
240
  export { GetUserResponse } from "./core/types/responses/get-user-response.js";
@@ -280,6 +272,7 @@ export { ParticipantNodeStatus } from "./core/types/participant-node-status.js";
280
272
  export { SynchronizerTime } from "./core/types/synchronizer-time.js";
281
273
  export { CantonError } from "./core/errors/canton-error.js";
282
274
  export { ValidationError } from "./core/errors/validation-error.js";
275
+ export { ActiveContractsTraversalError } from "./core/errors/active-contracts-traversal-error.js";
283
276
  export { AuthenticationError } from "./core/errors/authentication-error.js";
284
277
  export { AuthorizationError } from "./core/errors/authorization-error.js";
285
278
  export { TransportError } from "./core/errors/transport-error.js";
@@ -1,4 +1,4 @@
1
- import { GetActiveContractsPageRequest } from "../../core/types/requests/get-active-contracts-page-request.js";
1
+ import { mapGrpcQueryContractsRequest } from "../../transports/grpc/mappers/contracts-mapper.js";
2
2
  import { QueryCapabilityError } from "../errors/query-capability-error.js";
3
3
  import { QuerySource } from "../query-source.js";
4
4
  export class GrpcContractQueryClient {
@@ -58,8 +58,9 @@ export class GrpcContractQueryClient {
58
58
  let rows = snapshot.filter((row) => args.where?.contractId?.equals === undefined
59
59
  ? true
60
60
  : row.contractId === args.where.contractId.equals);
61
- if (args.where?.payload !== undefined)
61
+ if (args.where?.payload !== undefined) {
62
62
  rows = rows.filter((row) => matchesPayload(row.payload, args.where.payload));
63
+ }
63
64
  return rows;
64
65
  }
65
66
  unsupported(operation) {
@@ -91,7 +92,7 @@ export class GrpcContractQueryClient {
91
92
  let pageToken;
92
93
  let activeAtOffset;
93
94
  do {
94
- const response = await this.stateService.getActiveContractsPageAsync(new GetActiveContractsPageRequest(parties === undefined
95
+ const response = await this.stateService.getActiveContractsPageAsync(mapGrpcQueryContractsRequest(parties === undefined
95
96
  ? { allParties: true, activeAtOffset, pageToken }
96
97
  : { parties, activeAtOffset, pageToken }));
97
98
  activeAtOffset ??= response.activeAtOffset;
@@ -107,14 +108,17 @@ export class GrpcContractQueryClient {
107
108
  }
108
109
  }
109
110
  function hasUnsupportedFilter(where) {
110
- if (where === undefined)
111
+ if (where === undefined) {
111
112
  return false;
112
- if ("and" in where || "or" in where || "not" in where || "createdEventOffset" in where || "createdAt" in where || "archivedEventOffset" in where || "archivedAt" in where)
113
+ }
114
+ else if ("and" in where || "or" in where || "not" in where || "createdEventOffset" in where || "createdAt" in where || "archivedEventOffset" in where || "archivedAt" in where) {
113
115
  return true;
116
+ }
114
117
  for (const field of ["contractId", "templateId"]) {
115
118
  const filter = where[field];
116
- if (filter !== undefined && Object.keys(filter).some((key) => key !== "equals"))
119
+ if (filter !== undefined && Object.keys(filter).some((key) => key !== "equals")) {
117
120
  return true;
121
+ }
118
122
  }
119
123
  return false;
120
124
  }
@@ -136,22 +140,35 @@ function mapGrpcContract(value) {
136
140
  }
137
141
  function matchesPayload(value, filter) {
138
142
  const match = filter.match;
139
- if (match === undefined)
143
+ if (match === undefined) {
140
144
  return false;
145
+ }
141
146
  const visit = (current, node) => Object.entries(node).every(([key, child]) => {
142
147
  const next = current !== null && typeof current === "object" ? current[key] : undefined;
143
148
  const predicate = child;
144
- if (Object.keys(predicate).some((name) => ["equals", "lt", "lte", "gt", "gte", "like", "ilike"].includes(name)))
149
+ if (Object.keys(predicate).some((name) => ["equals", "lt", "lte", "gt", "gte", "like", "ilike"].includes(name))) {
145
150
  return compare(String(next ?? ""), predicate);
151
+ }
146
152
  return visit(next, predicate);
147
153
  });
148
154
  return visit(value, match);
149
155
  }
150
- function compare(value, filter) { if (filter.equals !== undefined)
151
- return value === filter.equals; if (filter.like !== undefined || filter.ilike !== undefined) {
152
- const pattern = String(filter.like ?? filter.ilike).replace(/[.*+?^${}()|[\]\\]/g, "\\$&").replaceAll("%", ".*").replaceAll("_", ".");
153
- return new RegExp(`^${pattern}$`, filter.ilike === undefined ? "" : "i").test(value);
154
- } if (filter.lt !== undefined)
155
- return value < String(filter.lt); if (filter.lte !== undefined)
156
- return value <= String(filter.lte); if (filter.gt !== undefined)
157
- return value > String(filter.gt); return value >= String(filter.gte); }
156
+ function compare(value, filter) {
157
+ if (filter.equals !== undefined) {
158
+ return value === filter.equals;
159
+ }
160
+ else if (filter.like !== undefined || filter.ilike !== undefined) {
161
+ const pattern = String(filter.like ?? filter.ilike).replace(/[.*+?^${}()|[\]\\]/g, "\\$&").replaceAll("%", ".*").replaceAll("_", ".");
162
+ return new RegExp(`^${pattern}$`, filter.ilike === undefined ? "" : "i").test(value);
163
+ }
164
+ else if (filter.lt !== undefined) {
165
+ return value < String(filter.lt);
166
+ }
167
+ else if (filter.lte !== undefined) {
168
+ return value <= String(filter.lte);
169
+ }
170
+ else if (filter.gt !== undefined) {
171
+ return value > String(filter.gt);
172
+ }
173
+ return value >= String(filter.gte);
174
+ }
@@ -1,6 +1,6 @@
1
1
  import { CreateDecentralizedPartyRequest } from "../../core/types/requests/create-decentralized-party-request.js";
2
2
  import { PreparedDecentralizedParty } from "../../core/types/requests/finalize-decentralized-party-request.js";
3
- import { GetParticipantIdResponse } from "../../core/types/responses/get-participant-id-response.js";
4
3
  import { RequestOptions } from "../../core/types/request-options.js";
4
+ import type { GetParticipantIdResponse } from "../../transports/grpc/generated/canton/com/daml/ledger/api/v2/admin/party_management_service.js";
5
5
  import { TopologyManagerWriteServiceClient } from "../topology-manager-write/topology-manager-write-service-client.js";
6
6
  export declare function prepareDecentralizedPartyAsync(request: CreateDecentralizedPartyRequest, localParticipant: GetParticipantIdResponse, topologyWriter: TopologyManagerWriteServiceClient, options?: RequestOptions): Promise<PreparedDecentralizedParty>;
@@ -112,7 +112,18 @@ export async function prepareDecentralizedPartyAsync(request, localParticipant,
112
112
  }))]
113
113
  : ownerRequests;
114
114
  });
115
- return new PreparedDecentralizedParty({ synchronizer: request.synchronizer, partyId, decentralizedNamespace, ownerThreshold: request.ownerThreshold, partySigningThreshold: request.partySigningThreshold, transactions, signingRequests });
115
+ return new PreparedDecentralizedParty({
116
+ synchronizer: request.synchronizer,
117
+ partyId,
118
+ decentralizedNamespace,
119
+ ownerThreshold: request.ownerThreshold,
120
+ partySigningThreshold: request.partySigningThreshold,
121
+ identityProviderId: request.identityProviderId,
122
+ waitForAllocation: request.waitForAllocation,
123
+ userId: request.userId,
124
+ transactions,
125
+ signingRequests,
126
+ });
116
127
  }
117
128
  function fingerprintFor(value) {
118
129
  const fingerprint = computeCantonPublicKeyFingerprint(value.publicKey.keyData, value.publicKey.format);
@@ -67,6 +67,9 @@ export class PartyManagementServiceClient {
67
67
  signatures: (signaturesByHash.get(toHex(transaction.transactionHash)) ?? []).map(toGeneratedSignature),
68
68
  })),
69
69
  multiHashSignatures: [],
70
+ identityProviderId: prepared.identityProviderId,
71
+ waitForAllocation: prepared.waitForAllocation,
72
+ userId: prepared.userId,
70
73
  }), _options);
71
74
  }
72
75
  /** Creates a decentralized party using the per-key callbacks in the request. */
@@ -1,4 +1,5 @@
1
1
  import { ITransport } from "../../core/transports/transport.interface.js";
2
+ import { ActiveContractsTraversalOptions } from "../../core/types/active-contracts-traversal-options.js";
2
3
  import { RequestOptions } from "../../core/types/request-options.js";
3
4
  import { GetActiveContractsRequest } from "../../core/types/requests/get-active-contracts-request.js";
4
5
  import type { GetActiveContractsPageRequest, GetActiveContractsPageResponse, GetConnectedSynchronizersRequest, GetConnectedSynchronizersResponse, GetLedgerEndRequest, GetLedgerEndResponse, GetLatestPrunedOffsetsRequest, GetLatestPrunedOffsetsResponse } from "../../transports/grpc/generated/canton/com/daml/ledger/api/v2/state_service.js";
@@ -6,8 +7,10 @@ import { ContractObserver } from "../contracts/contract-observer.interface.js";
6
7
  export declare class StateServiceClient {
7
8
  private readonly transport;
8
9
  constructor(transport: ITransport);
9
- /** 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. */
10
11
  getActiveContractsPageAsync(request: GetActiveContractsPageRequest, options?: RequestOptions): Promise<GetActiveContractsPageResponse>;
12
+ /** Reads active-contract pages lazily. Supported on gRPC; JSON rejects it. */
13
+ getActiveContractsPagesAsync(request: GetActiveContractsPageRequest, options: ActiveContractsTraversalOptions): AsyncIterable<GetActiveContractsPageResponse>;
11
14
  /** Reads active contracts as a stream. JSON-backed; gRPC currently rejects it. */
12
15
  getActiveContractsAsync(request: GetActiveContractsRequest, observer: ContractObserver, options?: RequestOptions): Promise<void>;
13
16
  /** Reads connected synchronizers. Supported on gRPC; JSON rejects it. */
@@ -16,4 +19,5 @@ export declare class StateServiceClient {
16
19
  getLedgerEndAsync(request: GetLedgerEndRequest, options?: RequestOptions): Promise<GetLedgerEndResponse>;
17
20
  /** Reads the latest participant pruning offsets. Supported on gRPC; JSON rejects it. */
18
21
  getLatestPrunedOffsetsAsync(request: GetLatestPrunedOffsetsRequest, options?: RequestOptions): Promise<GetLatestPrunedOffsetsResponse>;
22
+ private getActiveContractsPagesLazy;
19
23
  }
@@ -1,13 +1,19 @@
1
+ import { ActiveContractsTraversalError } from "../../core/errors/active-contracts-traversal-error.js";
2
+ import { ValidationError } from "../../core/errors/validation-error.js";
1
3
  export class StateServiceClient {
2
4
  transport;
3
5
  constructor(transport) {
4
6
  this.transport = transport;
5
7
  void this.transport;
6
8
  }
7
- /** Reads a page of active contracts. gRPC supports template and interface filters; JSON supports template queries only. */
9
+ /** Reads a page of active contracts. Supported on gRPC; JSON rejects it. */
8
10
  getActiveContractsPageAsync(request, options) {
9
11
  return this.transport.getActiveContractsPageAsync(request, options);
10
12
  }
13
+ /** Reads active-contract pages lazily. Supported on gRPC; JSON rejects it. */
14
+ getActiveContractsPagesAsync(request, options) {
15
+ return this.getActiveContractsPagesLazy(request, options);
16
+ }
11
17
  /** Reads active contracts as a stream. JSON-backed; gRPC currently rejects it. */
12
18
  getActiveContractsAsync(request, observer, options) {
13
19
  return this.transport.getActiveContractsAsync(request, observer, options);
@@ -24,4 +30,54 @@ export class StateServiceClient {
24
30
  getLatestPrunedOffsetsAsync(request, options) {
25
31
  return this.transport.getLatestPrunedOffsetsAsync(request, options);
26
32
  }
33
+ async *getActiveContractsPagesLazy(request, options) {
34
+ if (request.pageToken && request.pageToken.length > 0) {
35
+ throw new ValidationError("active contracts traversal must not start with a page token");
36
+ }
37
+ let pageRequest = request;
38
+ let pagesRead = 0;
39
+ let contractsRead = 0;
40
+ let activeAtOffset;
41
+ const observedPageTokens = new Set();
42
+ while (true) {
43
+ if (pagesRead >= options.maxPages) {
44
+ throw new ActiveContractsTraversalError("max-pages-exceeded", "active contracts traversal exceeded maxPages");
45
+ }
46
+ const response = await this.transport.getActiveContractsPageAsync(pageRequest, options.deadline.createRequestOptions());
47
+ pagesRead += 1;
48
+ if (typeof response.activeAtOffset !== "string" ||
49
+ response.activeAtOffset.trim().length === 0) {
50
+ throw new ActiveContractsTraversalError("missing-active-at-offset", "active contracts response is missing activeAtOffset");
51
+ }
52
+ else if (activeAtOffset === undefined) {
53
+ if (request.activeAtOffset !== undefined &&
54
+ request.activeAtOffset !== response.activeAtOffset) {
55
+ throw new ActiveContractsTraversalError("active-at-offset-mismatch", "active contracts response activeAtOffset does not match the request");
56
+ }
57
+ activeAtOffset = response.activeAtOffset;
58
+ }
59
+ else if (activeAtOffset !== response.activeAtOffset) {
60
+ throw new ActiveContractsTraversalError("active-at-offset-mismatch", "active contracts response activeAtOffset changed during traversal");
61
+ }
62
+ contractsRead += response.activeContracts.length;
63
+ if (contractsRead > options.maxContracts) {
64
+ throw new ActiveContractsTraversalError("max-contracts-exceeded", "active contracts traversal exceeded maxContracts");
65
+ }
66
+ yield response;
67
+ if (!response.nextPageToken || response.nextPageToken.length === 0) {
68
+ return;
69
+ }
70
+ const pageTokenKey = Array.from(response.nextPageToken).join(",");
71
+ if (observedPageTokens.has(pageTokenKey)) {
72
+ throw new ActiveContractsTraversalError("repeated-page-token", "active contracts traversal received a repeated page token");
73
+ }
74
+ observedPageTokens.add(pageTokenKey);
75
+ pageRequest = {
76
+ activeAtOffset,
77
+ eventFormat: request.eventFormat,
78
+ maxPageSize: request.maxPageSize,
79
+ pageToken: response.nextPageToken,
80
+ };
81
+ }
82
+ }
27
83
  }
@@ -1,12 +1,15 @@
1
1
  import { ITransport } from "../../core/transports/transport.interface.js";
2
2
  import { RequestOptions } from "../../core/types/request-options.js";
3
+ import { WaitForPartyHostingRequest } from "../../core/types/requests/wait-for-party-hosting-request.js";
3
4
  import type { ListKeyOwnersRequest, ListKeyOwnersResponse } from "../../transports/grpc/generated/canton/com/digitalasset/canton/topology/admin/v30/topology_aggregation_service.js";
4
- import type { ListPartiesRequest as TopologyListPartiesRequest, ListPartiesResponse as TopologyListPartiesResponse } from "../../transports/grpc/generated/canton/com/digitalasset/canton/topology/admin/v30/topology_aggregation_service.js";
5
+ import { ListPartiesRequest as TopologyListPartiesRequest, ListPartiesResponse as TopologyListPartiesResponse, ListPartiesResponse_Result as TopologyListPartiesResult } from "../../transports/grpc/generated/canton/com/digitalasset/canton/topology/admin/v30/topology_aggregation_service.js";
5
6
  export declare class TopologyAggregationServiceClient {
6
7
  private readonly transport;
7
8
  constructor(transport: ITransport);
8
9
  /** Lists aggregated party hosting information. Supported on gRPC; JSON rejects it. */
9
10
  listPartiesAsync(request: TopologyListPartiesRequest, options?: RequestOptions): Promise<TopologyListPartiesResponse>;
11
+ /** Waits for exact aggregated party hosting information. Supported on gRPC; JSON rejects it. */
12
+ waitForPartyHostingAsync(request: WaitForPartyHostingRequest, options?: RequestOptions): Promise<TopologyListPartiesResult>;
10
13
  /** Lists aggregated key owner information. Supported on gRPC; JSON rejects it. */
11
14
  listKeyOwnersAsync(request: ListKeyOwnersRequest, options?: RequestOptions): Promise<ListKeyOwnersResponse>;
12
15
  }
@@ -1,3 +1,5 @@
1
+ import { pollUntilAsync } from "../../core/polling/poll-until-async.js";
2
+ import { ListPartiesRequest as TopologyListPartiesRequest, } from "../../transports/grpc/generated/canton/com/digitalasset/canton/topology/admin/v30/topology_aggregation_service.js";
1
3
  export class TopologyAggregationServiceClient {
2
4
  transport;
3
5
  constructor(transport) {
@@ -8,8 +10,42 @@ export class TopologyAggregationServiceClient {
8
10
  listPartiesAsync(request, options) {
9
11
  return this.transport.topologyListPartiesAsync(request, options);
10
12
  }
13
+ /** Waits for exact aggregated party hosting information. Supported on gRPC; JSON rejects it. */
14
+ async waitForPartyHostingAsync(request, options) {
15
+ const response = await pollUntilAsync({
16
+ timeoutMs: request.timeoutMs,
17
+ pollIntervalMs: request.pollIntervalMs,
18
+ readAsync: () => this.listPartiesAsync(TopologyListPartiesRequest.create({
19
+ limit: 1,
20
+ synchronizerIds: [request.synchronizerId],
21
+ filterParty: request.partyId,
22
+ filterParticipant: request.participantId,
23
+ }), options),
24
+ match: value => findPartyHosting(value.results, request) !== undefined,
25
+ 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 ?? [])}.`),
26
+ });
27
+ const result = findPartyHosting(response.results, request);
28
+ if (result === undefined) {
29
+ throw new Error("Party hosting wait completed without a matching result.");
30
+ }
31
+ return result;
32
+ }
11
33
  /** Lists aggregated key owner information. Supported on gRPC; JSON rejects it. */
12
34
  listKeyOwnersAsync(request, options) {
13
35
  return this.transport.listKeyOwnersAsync(request, options);
14
36
  }
15
37
  }
38
+ function findPartyHosting(results, request) {
39
+ return results.find(result => result.party === request.partyId &&
40
+ result.participants.some(participant => participant.participantUid === request.participantId &&
41
+ participant.synchronizers.some(permission => permission.synchronizerId === request.synchronizerId)));
42
+ }
43
+ function formatHosting(results) {
44
+ if (results.length === 0) {
45
+ return "none";
46
+ }
47
+ return results.slice(0, 5).map(result => {
48
+ const participants = result.participants.slice(0, 5).flatMap(participant => participant.synchronizers.slice(0, 5).map(synchronizer => `${participant.participantUid}@${synchronizer.synchronizerId}`));
49
+ return `party='${result.party}', participants=[${participants.join(", ")}]`;
50
+ }).join("; ");
51
+ }
@@ -1,6 +1,8 @@
1
1
  import { ITransport } from "../../core/transports/transport.interface.js";
2
2
  import { RequestOptions } from "../../core/types/request-options.js";
3
- import type { ListAllV2Request, ListAllV2Response, ListAllRequest, ListAllResponse, ListAvailableStoresRequest, ListAvailableStoresResponse, ListLsuAnnouncementRequest, ListLsuAnnouncementResponse, ListLsuSequencerConnectionSuccessorRequest, ListLsuSequencerConnectionSuccessorResponse, ListMediatorSynchronizerStateRequest, ListMediatorSynchronizerStateResponse, ListSequencingParametersStateRequest, ListSequencingParametersStateResponse, ListSynchronizerParametersStateRequest, ListSynchronizerParametersStateResponse, ListPartyToParticipantRequest, ListPartyToParticipantResponse, ListVettedPackagesRequest as TopologyListVettedPackagesRequest, ListVettedPackagesResponse as TopologyListVettedPackagesResponse, ListPartyHostingLimitsRequest, ListPartyHostingLimitsResponse, ListParticipantSynchronizerPermissionRequest, ListParticipantSynchronizerPermissionResponse, ListSynchronizerTrustCertificateRequest, ListSynchronizerTrustCertificateResponse, ListPartyToKeyMappingRequest, ListPartyToKeyMappingResponse, ListOwnerToKeyMappingRequest, ListOwnerToKeyMappingResponse, ListDecentralizedNamespaceDefinitionRequest, ListDecentralizedNamespaceDefinitionResponse, ListNamespaceDelegationRequest, ListNamespaceDelegationResponse, ListSequencerSynchronizerStateRequest, ListSequencerSynchronizerStateResponse } from "../../transports/grpc/generated/canton/com/digitalasset/canton/topology/admin/v30/topology_manager_read_service.js";
3
+ import { ListPartyToParticipantRequest } from "../../core/types/requests/list-party-to-participant-request.js";
4
+ import { ListPartyToParticipantResponse } from "../../core/types/responses/list-party-to-participant-response.js";
5
+ import type { ListAllV2Request, ListAllV2Response, ListAllRequest, ListAllResponse, ListAvailableStoresRequest, ListAvailableStoresResponse, ListLsuAnnouncementRequest, ListLsuAnnouncementResponse, ListLsuSequencerConnectionSuccessorRequest, ListLsuSequencerConnectionSuccessorResponse, ListMediatorSynchronizerStateRequest, ListMediatorSynchronizerStateResponse, ListSequencingParametersStateRequest, ListSequencingParametersStateResponse, ListSynchronizerParametersStateRequest, ListSynchronizerParametersStateResponse, ListVettedPackagesRequest as TopologyListVettedPackagesRequest, ListVettedPackagesResponse as TopologyListVettedPackagesResponse, ListPartyHostingLimitsRequest, ListPartyHostingLimitsResponse, ListParticipantSynchronizerPermissionRequest, ListParticipantSynchronizerPermissionResponse, ListSynchronizerTrustCertificateRequest, ListSynchronizerTrustCertificateResponse, ListPartyToKeyMappingRequest, ListPartyToKeyMappingResponse, ListOwnerToKeyMappingRequest, ListOwnerToKeyMappingResponse, ListDecentralizedNamespaceDefinitionRequest, ListDecentralizedNamespaceDefinitionResponse, ListNamespaceDelegationRequest, ListNamespaceDelegationResponse, ListSequencerSynchronizerStateRequest, ListSequencerSynchronizerStateResponse } from "../../transports/grpc/generated/canton/com/digitalasset/canton/topology/admin/v30/topology_manager_read_service.js";
4
6
  export declare class TopologyManagerReadServiceClient {
5
7
  private readonly transport;
6
8
  constructor(transport: ITransport);
@@ -1,6 +1,12 @@
1
1
  import { ITransport } from "../../core/transports/transport.interface.js";
2
2
  import { RequestOptions } from "../../core/types/request-options.js";
3
- import type { GetUserRequest, GetUserResponse, GrantUserRightsRequest, GrantUserRightsResponse, ListUserRightsRequest, ListUserRightsResponse, ListUsersRequest, ListUsersResponse } from "../../transports/grpc/generated/canton/com/daml/ledger/api/v2/admin/user_management_service.js";
3
+ import { GetUserRequest } from "../../core/types/requests/get-user-request.js";
4
+ import { ListUserRightsRequest } from "../../core/types/requests/list-user-rights-request.js";
5
+ import { ListUsersRequest } from "../../core/types/requests/list-users-request.js";
6
+ import { GetUserResponse } from "../../core/types/responses/get-user-response.js";
7
+ import { ListUserRightsResponse } from "../../core/types/responses/list-user-rights-response.js";
8
+ import { ListUsersResponse } from "../../core/types/responses/list-users-response.js";
9
+ import type { GrantUserRightsRequest, GrantUserRightsResponse } from "../../transports/grpc/generated/canton/com/daml/ledger/api/v2/admin/user_management_service.js";
4
10
  export declare class UserManagementServiceClient {
5
11
  private readonly transport;
6
12
  constructor(transport: ITransport);
@@ -117,7 +117,6 @@ export interface GrpcOperations {
117
117
  getContractAsync?(request: GrpcGetContractRequest, options?: RequestOptions): Promise<GrpcGetContractResponse>;
118
118
  getEventsByContractIdAsync?(request: GrpcGetEventsByContractIdRequest, options?: RequestOptions): Promise<GrpcGetEventsByContractIdResponse>;
119
119
  queryContractsAsync(request: unknown, options?: RequestOptions): Promise<unknown>;
120
- getActiveContractsPageAsync?(request: unknown, options?: RequestOptions): Promise<unknown>;
121
120
  getConnectedSynchronizersAsync?(request: unknown, options?: RequestOptions): Promise<unknown>;
122
121
  getLedgerEndAsync?(request: unknown, options?: RequestOptions): Promise<unknown>;
123
122
  getLatestPrunedOffsetsAsync?(request: unknown, options?: RequestOptions): Promise<unknown>;
@@ -423,10 +423,6 @@ 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
- },
430
426
  async getConnectedSynchronizersAsync(request, requestOptions) {
431
427
  const callOptions = await buildCallOptionsForLedgerSurfaceAsync(options, requestOptions);
432
428
  return await unwrapUnaryResponse(stateServiceClient.getConnectedSynchronizers(request, callOptions));
@@ -506,7 +502,7 @@ function wrapGrpcOperations(operations, onGrpcError) {
506
502
  if (typeof operation !== "function") {
507
503
  return operation;
508
504
  }
509
- if (property === "getUpdatesAsync" || property === "getCompletionsAsync") {
505
+ else if (property === "getUpdatesAsync" || property === "getCompletionsAsync") {
510
506
  return (...args) => wrapGrpcStream(() => operation.apply(target, args), onGrpcError);
511
507
  }
512
508
  return async (...args) => {
@@ -542,8 +538,9 @@ async function* wrapGrpcStream(createStream, onGrpcError) {
542
538
  }
543
539
  function notifyGrpcError(error, onGrpcError) {
544
540
  const parsedError = GrpcTransportError.fromUnknown(error);
545
- if (parsedError === undefined)
541
+ if (parsedError === undefined) {
546
542
  return error;
543
+ }
547
544
  try {
548
545
  onGrpcError?.(parsedError);
549
546
  }
@@ -576,8 +573,9 @@ async function* streamServerResponsesAsync(createCall) {
576
573
  iterator = responseIterator;
577
574
  while (true) {
578
575
  const next = await responseIterator.next();
579
- if (next.done)
576
+ if (next.done) {
580
577
  break;
578
+ }
581
579
  yield next.value;
582
580
  }
583
581
  exhausted = true;
@@ -1,13 +1,21 @@
1
1
  import { CantonClientOptions } from "../../client/canton-client-options.js";
2
2
  import { AllocatePartyRequest } from "../../core/types/requests/allocate-party-request.js";
3
3
  import { GetActiveContractsRequest } from "../../core/types/requests/get-active-contracts-request.js";
4
+ import { GetUserRequest } from "../../core/types/requests/get-user-request.js";
4
5
  import { ListKnownPartiesRequest } from "../../core/types/requests/list-known-parties-request.js";
6
+ import { ListPartyToParticipantRequest } from "../../core/types/requests/list-party-to-participant-request.js";
7
+ import { ListUserRightsRequest } from "../../core/types/requests/list-user-rights-request.js";
8
+ import { ListUsersRequest } from "../../core/types/requests/list-users-request.js";
5
9
  import { SubmitCommandRequest } from "../../core/types/requests/submit-command-request.js";
6
10
  import { CommandSigners, ICommandSigner } from "../../core/signing/command-signer.interface.js";
7
11
  import { SignCommandResult } from "../../core/signing/sign-command-result.js";
8
12
  import { PreparedCommandSubmission } from "../../core/types/prepared-command-submission.js";
9
13
  import { AllocatePartyResponse as SdkAllocatePartyResponse } from "../../core/types/responses/allocate-party-response.js";
14
+ import { GetUserResponse } from "../../core/types/responses/get-user-response.js";
10
15
  import { ListKnownPartiesResponse as SdkListKnownPartiesResponse } from "../../core/types/responses/list-known-parties-response.js";
16
+ import { ListPartyToParticipantResponse } from "../../core/types/responses/list-party-to-participant-response.js";
17
+ import { ListUserRightsResponse } from "../../core/types/responses/list-user-rights-response.js";
18
+ import { ListUsersResponse } from "../../core/types/responses/list-users-response.js";
11
19
  import { SubmitCommandResponse } from "../../core/types/responses/submit-command-response.js";
12
20
  import { ITransport } from "../../core/transports/transport.interface.js";
13
21
  import { RequestOptions } from "../../core/types/request-options.js";
@@ -23,7 +31,6 @@ import type { ListKnownPackagesRequest, ListKnownPackagesResponse, UploadDarFile
23
31
  import { GetPackageRequest, GetPackageResponse, GetPackageStatusRequest, GetPackageStatusResponse, ListPackagesRequest, ListPackagesResponse, ListVettedPackagesRequest, ListVettedPackagesResponse } from "./generated/canton/com/daml/ledger/api/v2/package_service.js";
24
32
  import { AllocateExternalPartyRequest as ProtobufAllocateExternalPartyRequest, AllocateExternalPartyResponse as ProtobufAllocateExternalPartyResponse, GenerateExternalPartyTopologyRequest as ProtobufGenerateExternalPartyTopologyRequest, GenerateExternalPartyTopologyResponse as ProtobufGenerateExternalPartyTopologyResponse } from "./generated/canton/com/daml/ledger/api/v2/admin/party_management_service.js";
25
33
  import { GrantUserRightsResponse as ProtobufGrantUserRightsResponse } from "./generated/canton/com/daml/ledger/api/v2/admin/user_management_service.js";
26
- import type { GetUserRequest, GetUserResponse, ListUserRightsRequest, ListUserRightsResponse, ListUsersRequest, ListUsersResponse } from "./generated/canton/com/daml/ledger/api/v2/admin/user_management_service.js";
27
34
  import { GetLedgerApiVersionRequest, GetLedgerApiVersionResponse } from "./generated/canton/com/daml/ledger/api/v2/version_service.js";
28
35
  import type { GetContractRequest, GetContractResponse } from "./generated/canton/com/daml/ledger/api/v2/contract_service.js";
29
36
  import { CompletionStreamResponse as ProtobufCompletionStreamResponse, GetCompletionsRequest } from "./generated/canton/com/daml/ledger/api/v2/command_completion_service.js";
@@ -43,7 +50,7 @@ import type { TrafficControlStateRequest, TrafficControlStateResponse } from "./
43
50
  import { ParticipantStatusRequest, ParticipantStatusResponse as ProtobufParticipantStatusResponse } from "./generated/canton/com/digitalasset/canton/admin/participant/v30/participant_status_service.js";
44
51
  import { ListKeyOwnersRequest as ProtobufListKeyOwnersRequest, ListKeyOwnersResponse as ProtobufListKeyOwnersResponse, ListPartiesRequest as ProtobufTopologyListPartiesRequest, ListPartiesResponse as ProtobufTopologyListPartiesResponse } from "./generated/canton/com/digitalasset/canton/topology/admin/v30/topology_aggregation_service.js";
45
52
  import type { AddTransactionsRequest as ProtobufAddTransactionsRequest, AddTransactionsResponse as ProtobufAddTransactionsResponse, AuthorizeRequest as ProtobufAuthorizeRequest, AuthorizeResponse as ProtobufAuthorizeResponse, CreateTemporaryTopologyStoreRequest as ProtobufCreateTemporaryTopologyStoreRequest, CreateTemporaryTopologyStoreResponse as ProtobufCreateTemporaryTopologyStoreResponse, DropTemporaryTopologyStoreRequest as ProtobufDropTemporaryTopologyStoreRequest, DropTemporaryTopologyStoreResponse as ProtobufDropTemporaryTopologyStoreResponse, GenerateTransactionsRequest as ProtobufGenerateTransactionsRequest, GenerateTransactionsResponse as ProtobufGenerateTransactionsResponse, ImportTopologySnapshotRequest as ProtobufImportTopologySnapshotRequest, ImportTopologySnapshotResponse as ProtobufImportTopologySnapshotResponse, ImportTopologySnapshotV2Request as ProtobufImportTopologySnapshotV2Request, ImportTopologySnapshotV2Response as ProtobufImportTopologySnapshotV2Response, SignTransactionsRequest as ProtobufSignTransactionsRequest, SignTransactionsResponse as ProtobufSignTransactionsResponse } from "./generated/canton/com/digitalasset/canton/topology/admin/v30/topology_manager_write_service.js";
46
- import { ListAllRequest as ProtobufTopologyListAllRequest, ListAllResponse as ProtobufTopologyListAllResponse, ListAllV2Request as ProtobufTopologyListAllV2Request, ListAllV2Response as ProtobufTopologyListAllV2Response, ListAvailableStoresRequest as ProtobufListAvailableStoresRequest, ListAvailableStoresResponse as ProtobufListAvailableStoresResponse, ListDecentralizedNamespaceDefinitionRequest as ProtobufListDecentralizedNamespaceDefinitionRequest, ListDecentralizedNamespaceDefinitionResponse as ProtobufListDecentralizedNamespaceDefinitionResponse, ListLsuAnnouncementRequest as ProtobufListLsuAnnouncementRequest, ListLsuAnnouncementResponse as ProtobufListLsuAnnouncementResponse, ListLsuSequencerConnectionSuccessorRequest as ProtobufListLsuSequencerConnectionSuccessorRequest, ListLsuSequencerConnectionSuccessorResponse as ProtobufListLsuSequencerConnectionSuccessorResponse, ListMediatorSynchronizerStateRequest as ProtobufListMediatorSynchronizerStateRequest, ListMediatorSynchronizerStateResponse as ProtobufListMediatorSynchronizerStateResponse, ListNamespaceDelegationRequest as ProtobufListNamespaceDelegationRequest, ListNamespaceDelegationResponse as ProtobufListNamespaceDelegationResponse, ListOwnerToKeyMappingRequest as ProtobufListOwnerToKeyMappingRequest, ListOwnerToKeyMappingResponse as ProtobufListOwnerToKeyMappingResponse, ListParticipantSynchronizerPermissionRequest as ProtobufListParticipantSynchronizerPermissionRequest, ListParticipantSynchronizerPermissionResponse as ProtobufListParticipantSynchronizerPermissionResponse, ListPartyHostingLimitsRequest as ProtobufListPartyHostingLimitsRequest, ListPartyHostingLimitsResponse as ProtobufListPartyHostingLimitsResponse, ListPartyToKeyMappingRequest as ProtobufListPartyToKeyMappingRequest, ListPartyToKeyMappingResponse as ProtobufListPartyToKeyMappingResponse, ListPartyToParticipantRequest as ProtobufListPartyToParticipantRequest, ListPartyToParticipantResponse as ProtobufListPartyToParticipantResponse, ListSequencerSynchronizerStateRequest as ProtobufListSequencerSynchronizerStateRequest, ListSequencerSynchronizerStateResponse as ProtobufListSequencerSynchronizerStateResponse, ListSequencingParametersStateRequest as ProtobufListSequencingParametersStateRequest, ListSequencingParametersStateResponse as ProtobufListSequencingParametersStateResponse, ListSynchronizerParametersStateRequest as ProtobufListSynchronizerParametersStateRequest, ListSynchronizerParametersStateResponse as ProtobufListSynchronizerParametersStateResponse, ListSynchronizerTrustCertificateRequest as ProtobufListSynchronizerTrustCertificateRequest, ListSynchronizerTrustCertificateResponse as ProtobufListSynchronizerTrustCertificateResponse, ListVettedPackagesRequest as ProtobufTopologyListVettedPackagesRequest, ListVettedPackagesResponse as ProtobufTopologyListVettedPackagesResponse } from "./generated/canton/com/digitalasset/canton/topology/admin/v30/topology_manager_read_service.js";
53
+ import { ListAllRequest as ProtobufTopologyListAllRequest, ListAllResponse as ProtobufTopologyListAllResponse, ListAllV2Request as ProtobufTopologyListAllV2Request, ListAllV2Response as ProtobufTopologyListAllV2Response, ListAvailableStoresRequest as ProtobufListAvailableStoresRequest, ListAvailableStoresResponse as ProtobufListAvailableStoresResponse, ListDecentralizedNamespaceDefinitionRequest as ProtobufListDecentralizedNamespaceDefinitionRequest, ListDecentralizedNamespaceDefinitionResponse as ProtobufListDecentralizedNamespaceDefinitionResponse, ListLsuAnnouncementRequest as ProtobufListLsuAnnouncementRequest, ListLsuAnnouncementResponse as ProtobufListLsuAnnouncementResponse, ListLsuSequencerConnectionSuccessorRequest as ProtobufListLsuSequencerConnectionSuccessorRequest, ListLsuSequencerConnectionSuccessorResponse as ProtobufListLsuSequencerConnectionSuccessorResponse, ListMediatorSynchronizerStateRequest as ProtobufListMediatorSynchronizerStateRequest, ListMediatorSynchronizerStateResponse as ProtobufListMediatorSynchronizerStateResponse, ListNamespaceDelegationRequest as ProtobufListNamespaceDelegationRequest, ListNamespaceDelegationResponse as ProtobufListNamespaceDelegationResponse, ListOwnerToKeyMappingRequest as ProtobufListOwnerToKeyMappingRequest, ListOwnerToKeyMappingResponse as ProtobufListOwnerToKeyMappingResponse, ListParticipantSynchronizerPermissionRequest as ProtobufListParticipantSynchronizerPermissionRequest, ListParticipantSynchronizerPermissionResponse as ProtobufListParticipantSynchronizerPermissionResponse, ListPartyHostingLimitsRequest as ProtobufListPartyHostingLimitsRequest, ListPartyHostingLimitsResponse as ProtobufListPartyHostingLimitsResponse, ListPartyToKeyMappingRequest as ProtobufListPartyToKeyMappingRequest, ListPartyToKeyMappingResponse as ProtobufListPartyToKeyMappingResponse, ListSequencerSynchronizerStateRequest as ProtobufListSequencerSynchronizerStateRequest, ListSequencerSynchronizerStateResponse as ProtobufListSequencerSynchronizerStateResponse, ListSequencingParametersStateRequest as ProtobufListSequencingParametersStateRequest, ListSequencingParametersStateResponse as ProtobufListSequencingParametersStateResponse, ListSynchronizerParametersStateRequest as ProtobufListSynchronizerParametersStateRequest, ListSynchronizerParametersStateResponse as ProtobufListSynchronizerParametersStateResponse, ListSynchronizerTrustCertificateRequest as ProtobufListSynchronizerTrustCertificateRequest, ListSynchronizerTrustCertificateResponse as ProtobufListSynchronizerTrustCertificateResponse, ListVettedPackagesRequest as ProtobufTopologyListVettedPackagesRequest, ListVettedPackagesResponse as ProtobufTopologyListVettedPackagesResponse } from "./generated/canton/com/digitalasset/canton/topology/admin/v30/topology_manager_read_service.js";
47
54
  export declare class GrpcTransport implements ITransport {
48
55
  private readonly operations;
49
56
  private disposed;
@@ -121,7 +128,7 @@ export declare class GrpcTransport implements ITransport {
121
128
  dropTemporaryTopologyStoreAsync(request: ProtobufDropTemporaryTopologyStoreRequest, options?: RequestOptions): Promise<ProtobufDropTemporaryTopologyStoreResponse>;
122
129
  listPartyHostingLimitsAsync(request: ProtobufListPartyHostingLimitsRequest, options?: RequestOptions): Promise<ProtobufListPartyHostingLimitsResponse>;
123
130
  topologyListVettedPackagesAsync(request: ProtobufTopologyListVettedPackagesRequest, options?: RequestOptions): Promise<ProtobufTopologyListVettedPackagesResponse>;
124
- listPartyToParticipantAsync(request: ProtobufListPartyToParticipantRequest, options?: RequestOptions): Promise<ProtobufListPartyToParticipantResponse>;
131
+ listPartyToParticipantAsync(request: ListPartyToParticipantRequest, options?: RequestOptions): Promise<ListPartyToParticipantResponse>;
125
132
  listSynchronizerParametersStateAsync(request: ProtobufListSynchronizerParametersStateRequest, options?: RequestOptions): Promise<ProtobufListSynchronizerParametersStateResponse>;
126
133
  listSequencingParametersStateAsync(request: ProtobufListSequencingParametersStateRequest, options?: RequestOptions): Promise<ProtobufListSequencingParametersStateResponse>;
127
134
  listMediatorSynchronizerStateAsync(request: ProtobufListMediatorSynchronizerStateRequest, options?: RequestOptions): Promise<ProtobufListMediatorSynchronizerStateResponse>;