@polymeshassociation/polymesh-sdk 24.7.0-alpha.9 → 24.7.0-beta.2

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 (156) hide show
  1. package/CHANGELOG.md +9 -3
  2. package/api/client/Claims.d.ts.map +1 -1
  3. package/api/client/Claims.js +6 -6
  4. package/api/client/Claims.js.map +1 -1
  5. package/api/client/Network.d.ts.map +1 -1
  6. package/api/client/Network.js +5 -4
  7. package/api/client/Network.js.map +1 -1
  8. package/api/entities/Account/MultiSig/index.js +2 -2
  9. package/api/entities/Account/MultiSig/index.js.map +1 -1
  10. package/api/entities/Account/index.js +2 -2
  11. package/api/entities/Account/index.js.map +1 -1
  12. package/api/entities/Asset/Fungible/index.d.ts.map +1 -1
  13. package/api/entities/Asset/Fungible/index.js +12 -7
  14. package/api/entities/Asset/Fungible/index.js.map +1 -1
  15. package/api/entities/Asset/NonFungible/AssetHolders/index.js +2 -2
  16. package/api/entities/Asset/NonFungible/AssetHolders/index.js.map +1 -1
  17. package/api/entities/Asset/NonFungible/NftCollection.d.ts.map +1 -1
  18. package/api/entities/Asset/NonFungible/NftCollection.js +11 -7
  19. package/api/entities/Asset/NonFungible/NftCollection.js.map +1 -1
  20. package/api/entities/DefaultTrustedClaimIssuer.js +2 -2
  21. package/api/entities/DefaultTrustedClaimIssuer.js.map +1 -1
  22. package/api/entities/DividendDistribution/index.js +3 -3
  23. package/api/entities/DividendDistribution/index.js.map +1 -1
  24. package/api/entities/Identity/AssetPermissions.d.ts.map +1 -1
  25. package/api/entities/Identity/AssetPermissions.js +3 -3
  26. package/api/entities/Identity/AssetPermissions.js.map +1 -1
  27. package/api/entities/Identity/Portfolios.d.ts.map +1 -1
  28. package/api/entities/Identity/Portfolios.js +29 -11
  29. package/api/entities/Identity/Portfolios.js.map +1 -1
  30. package/api/entities/Identity/index.d.ts.map +1 -1
  31. package/api/entities/Identity/index.js +17 -5
  32. package/api/entities/Identity/index.js.map +1 -1
  33. package/api/entities/Instruction/index.d.ts.map +1 -1
  34. package/api/entities/Instruction/index.js +24 -7
  35. package/api/entities/Instruction/index.js.map +1 -1
  36. package/api/entities/MultiSigProposal/index.js +3 -3
  37. package/api/entities/MultiSigProposal/index.js.map +1 -1
  38. package/api/entities/NumberedPortfolio.js +2 -2
  39. package/api/entities/NumberedPortfolio.js.map +1 -1
  40. package/api/entities/Offering/index.js +2 -2
  41. package/api/entities/Offering/index.js.map +1 -1
  42. package/api/entities/Portfolio/index.d.ts.map +1 -1
  43. package/api/entities/Portfolio/index.js +40 -13
  44. package/api/entities/Portfolio/index.js.map +1 -1
  45. package/api/entities/Portfolio/types.d.ts +7 -4
  46. package/api/entities/Portfolio/types.d.ts.map +1 -1
  47. package/api/entities/Venue/index.d.ts.map +1 -1
  48. package/api/entities/Venue/index.js +28 -5
  49. package/api/entities/Venue/index.js.map +1 -1
  50. package/api/entities/common/namespaces/Authorizations.js +2 -2
  51. package/api/entities/common/namespaces/Authorizations.js.map +1 -1
  52. package/api/entities/types.d.ts +2 -1
  53. package/api/entities/types.d.ts.map +1 -1
  54. package/api/entities/types.js.map +1 -1
  55. package/api/procedures/modifyClaims.js +2 -2
  56. package/api/procedures/modifyClaims.js.map +1 -1
  57. package/base/Context.d.ts +2 -1
  58. package/base/Context.d.ts.map +1 -1
  59. package/base/Context.js +8 -5
  60. package/base/Context.js.map +1 -1
  61. package/base/PolymeshTransactionBase.d.ts.map +1 -1
  62. package/base/PolymeshTransactionBase.js +4 -3
  63. package/base/PolymeshTransactionBase.js.map +1 -1
  64. package/base/types.d.ts +6 -0
  65. package/base/types.d.ts.map +1 -1
  66. package/middleware/queries/assets.d.ts +35 -0
  67. package/middleware/queries/assets.d.ts.map +1 -0
  68. package/middleware/queries/assets.js +159 -0
  69. package/middleware/queries/assets.js.map +1 -0
  70. package/middleware/queries/authorizations.d.ts +12 -0
  71. package/middleware/queries/authorizations.d.ts.map +1 -0
  72. package/middleware/queries/authorizations.js +81 -0
  73. package/middleware/queries/authorizations.js.map +1 -0
  74. package/middleware/queries/claims.d.ts +53 -0
  75. package/middleware/queries/claims.d.ts.map +1 -0
  76. package/middleware/queries/claims.js +210 -0
  77. package/middleware/queries/claims.js.map +1 -0
  78. package/middleware/queries/common.d.ts +38 -0
  79. package/middleware/queries/common.d.ts.map +1 -0
  80. package/middleware/queries/common.js +126 -0
  81. package/middleware/queries/common.js.map +1 -0
  82. package/middleware/queries/distributions.d.ts +17 -0
  83. package/middleware/queries/distributions.d.ts.map +1 -0
  84. package/middleware/queries/distributions.js +63 -0
  85. package/middleware/queries/distributions.js.map +1 -0
  86. package/middleware/queries/events.d.ts +13 -0
  87. package/middleware/queries/events.d.ts.map +1 -0
  88. package/middleware/queries/events.js +47 -0
  89. package/middleware/queries/events.js.map +1 -0
  90. package/middleware/queries/externalAgents.d.ts +25 -0
  91. package/middleware/queries/externalAgents.d.ts.map +1 -0
  92. package/middleware/queries/externalAgents.js +109 -0
  93. package/middleware/queries/externalAgents.js.map +1 -0
  94. package/middleware/queries/extrinsics.d.ts +19 -0
  95. package/middleware/queries/extrinsics.d.ts.map +1 -0
  96. package/middleware/queries/extrinsics.js +91 -0
  97. package/middleware/queries/extrinsics.js.map +1 -0
  98. package/middleware/queries/multisigs.d.ts +27 -0
  99. package/middleware/queries/multisigs.d.ts.map +1 -0
  100. package/middleware/queries/multisigs.js +116 -0
  101. package/middleware/queries/multisigs.js.map +1 -0
  102. package/middleware/queries/polyxTransactions.d.ts +14 -0
  103. package/middleware/queries/polyxTransactions.d.ts.map +1 -0
  104. package/middleware/queries/polyxTransactions.js +86 -0
  105. package/middleware/queries/polyxTransactions.js.map +1 -0
  106. package/middleware/queries/portfolios.d.ts +23 -0
  107. package/middleware/queries/portfolios.d.ts.map +1 -0
  108. package/middleware/queries/portfolios.js +126 -0
  109. package/middleware/queries/portfolios.js.map +1 -0
  110. package/middleware/queries/settlements.d.ts +42 -0
  111. package/middleware/queries/settlements.d.ts.map +1 -0
  112. package/middleware/queries/settlements.js +242 -0
  113. package/middleware/queries/settlements.js.map +1 -0
  114. package/middleware/queries/settlementsOld.d.ts +41 -0
  115. package/middleware/queries/settlementsOld.d.ts.map +1 -0
  116. package/middleware/queries/settlementsOld.js +228 -0
  117. package/middleware/queries/settlementsOld.js.map +1 -0
  118. package/middleware/queries/stos.d.ts +11 -0
  119. package/middleware/queries/stos.d.ts.map +1 -0
  120. package/middleware/queries/stos.js +40 -0
  121. package/middleware/queries/stos.js.map +1 -0
  122. package/middleware/types.d.ts +68577 -4662
  123. package/middleware/types.d.ts.map +1 -1
  124. package/middleware/types.js +46564 -299
  125. package/middleware/types.js.map +1 -1
  126. package/middleware/typesV6.d.ts +47356 -0
  127. package/middleware/typesV6.d.ts.map +1 -0
  128. package/middleware/typesV6.js +4200 -0
  129. package/middleware/typesV6.js.map +1 -0
  130. package/npm-package/polymeshassociation-polymesh-sdk-24.7.0-beta.2.tgz +0 -0
  131. package/package.json +1 -1
  132. package/types/index.d.ts +2 -1
  133. package/types/index.d.ts.map +1 -1
  134. package/types/index.js +2 -1
  135. package/types/index.js.map +1 -1
  136. package/utils/constants.d.ts +1 -0
  137. package/utils/constants.d.ts.map +1 -1
  138. package/utils/constants.js +2 -1
  139. package/utils/constants.js.map +1 -1
  140. package/utils/conversion.d.ts +21 -7
  141. package/utils/conversion.d.ts.map +1 -1
  142. package/utils/conversion.js +154 -36
  143. package/utils/conversion.js.map +1 -1
  144. package/utils/internal.d.ts +6 -0
  145. package/utils/internal.d.ts.map +1 -1
  146. package/utils/internal.js +22 -10
  147. package/utils/internal.js.map +1 -1
  148. package/utils/typeguards.d.ts +5 -1
  149. package/utils/typeguards.d.ts.map +1 -1
  150. package/utils/typeguards.js +8 -1
  151. package/utils/typeguards.js.map +1 -1
  152. package/middleware/queries.d.ts +0 -258
  153. package/middleware/queries.d.ts.map +0 -1
  154. package/middleware/queries.js +0 -1447
  155. package/middleware/queries.js.map +0 -1
  156. package/npm-package/polymeshassociation-polymesh-sdk-24.7.0-alpha.9.tgz +0 -0
@@ -20,7 +20,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
20
20
  exports.bigNumberToU32 = exports.meshPermissionsToPermissions = exports.extrinsicPermissionsToTransactionPermissions = exports.permissionsToMeshPermissions = exports.transactionPermissionsToExtrinsicPermissions = exports.transactionPermissionsToTxGroups = exports.txGroupToTxTags = exports.textToString = exports.stringToText = exports.portfolioToPortfolioKind = exports.portfolioIdToMeshPortfolioId = exports.portfolioLikeToPortfolio = exports.portfolioIdToPortfolio = exports.portfolioLikeToPortfolioId = exports.portfolioToPortfolioId = exports.meshPortfolioIdToPortfolio = exports.claimPercentageToClaimPercentageRestrictionValue = exports.claimCountToClaimCountRestrictionValue = exports.meshClaimToInputStatClaim = exports.permillToBigNumber = exports.percentageToPermill = exports.bigNumberToU128 = exports.bigNumberToU64 = exports.u128ToBigNumber = exports.u64ToBigNumber = exports.signerToString = exports.signerToSignatory = exports.signerValueToSigner = exports.signerToSignerValue = exports.signatoryToSignerValue = exports.signerValueToSignatory = exports.identityIdToString = exports.stringToIdentityId = exports.stringToBlockHash = exports.stringToHash = exports.hashToString = exports.accountIdToString = exports.stringToAccountId = exports.momentToDate = exports.dateToMoment = exports.stringToH512 = exports.stringToU8aFixed = exports.tickerToString = exports.stringToTickerKey = exports.stringToTicker = exports.bytesToString = exports.stringToBytes = exports.boolToBoolean = exports.booleanToBool = exports.tickerToDid = void 0;
21
21
  exports.extrinsicIdentifierToTxTag = exports.txTagToProtocolOp = exports.complianceRequirementToRequirement = exports.complianceRequirementResultToRequirementCompliance = exports.requirementToComplianceRequirement = exports.trustedClaimIssuerToTrustedIssuer = exports.trustedIssuerToTrustedClaimIssuer = exports.meshClaimTypeToClaimType = exports.stringToTargetIdentity = exports.statsClaimToStatClaimInputType = exports.meshClaimToClaim = exports.middlewareEventDetailsToEventIdentifier = exports.scopeToMiddlewareScope = exports.middlewareScopeToScope = exports.claimToMeshClaim = exports.cddIdToString = exports.stringToCddId = exports.meshScopeToScope = exports.scopeToMeshScope = exports.canTransferResultToTransferStatus = exports.cddStatusToBoolean = exports.documentToAssetDocument = exports.assetDocumentToDocument = exports.documentHashToString = exports.stringToDocumentHash = exports.assetIdentifierToSecurityIdentifier = exports.securityIdentifierToAssetIdentifier = exports.isFigiValid = exports.isLeiValid = exports.isCusipValid = exports.isIsinValid = exports.fundingRoundToAssetFundingRound = exports.nameToAssetName = exports.posRatioToBigNumber = exports.assetTypeToKnownOrId = exports.internalNftTypeToNftType = exports.internalAssetTypeToAssetType = exports.u8ToTransferStatus = exports.stringToMemo = exports.authorizationDataToAuthorization = exports.agentGroupToPermissionGroup = exports.balanceToBigNumber = exports.bigNumberToBalance = exports.authorizationTypeToMeshAuthorizationType = exports.authorizationToAuthorizationData = exports.agentGroupToPermissionGroupIdentifier = exports.permissionGroupIdentifierToAgentGroup = exports.u8ToBigNumber = exports.u16ToBigNumber = exports.u32ToBigNumber = void 0;
22
22
  exports.statTypeToStatOpType = exports.meshStatToStatType = exports.statUpdatesToBtreeStatUpdate = exports.keyAndValueToStatUpdate = exports.transferConditionsToBtreeTransferConditions = exports.statisticStatTypesToBtreeStatType = exports.sortStatsByClaimType = exports.statisticsOpTypeToStatType = exports.corporateActionParamsToMeshCorporateActionArgs = exports.corporateActionIdentifierToCaId = exports.distributionToDividendDistributionParams = exports.caTaxWithholdingsToMeshTaxWithholdings = exports.targetsToTargetIdentities = exports.targetIdentitiesToCorporateActionTargets = exports.checkpointToRecordDateSpec = exports.corporateActionKindToCaKind = exports.meshCorporateActionToCorporateActionParams = exports.fundraiserToOfferingDetails = exports.fundraiserTierToTier = exports.middlewarePortfolioToPortfolio = exports.permissionsLikeToPermissions = exports.offeringTierToPriceTier = exports.granularCanTransferResultToTransferBreakdown = exports.nftDispatchErrorToTransferError = exports.transferConditionToTransferRestriction = exports.identitiesSetToIdentities = exports.identitiesToBtreeSet = exports.transferRestrictionToPolymeshTransferCondition = exports.claimIssuerToMeshClaimIssuer = exports.claimTypeToMeshClaimType = exports.nftMovementToPortfolioFund = exports.fungibleMovementToPortfolioFund = exports.nftToMeshNft = exports.toIdentityWithClaimsArray = exports.middlewareClaimToClaimData = exports.endConditionToSettlementType = exports.meshSettlementTypeToEndCondition = exports.meshAffirmationStatusToAffirmationStatus = exports.meshInstructionStatusToInstructionStatus = exports.venueTypeToMeshVenueType = exports.meshVenueTypeToVenueType = exports.secondaryAccountToMeshSecondaryKey = exports.transactionToTxTag = exports.transactionHexToTxTag = exports.coerceHexToString = exports.addressToKey = exports.keyToAddress = exports.moduleAddressToString = exports.assetComplianceResultToCompliance = exports.txTagToExtrinsicIdentifier = void 0;
23
- exports.childKeysWithAuthToCreateChildIdentitiesWithAuth = exports.secondaryAccountWithAuthToSecondaryKeyWithAuth = exports.receiptDetailsToMeshReceiptDetails = exports.offChainMetadataToMeshReceiptMetadata = exports.signatureToMeshRuntimeMultiSignature = exports.createRawExtrinsicStatus = exports.assetCountToRaw = exports.mediatorAffirmationStatusToStatus = exports.toHistoricalSettlements = exports.portfolioIdStringToPortfolio = exports.toCustomClaimTypeWithIdentity = exports.nftInputToNftMetadataVec = exports.nftInputToNftMetadataAttribute = exports.meshNftToNftId = exports.meshMetadataKeyToMetadataKey = exports.collectionKeysToMetadataKeys = exports.middlewareAuthorizationDataToAuthorization = exports.middlewarePermissionsDataToPermissions = exports.datesToScheduleCheckpoints = exports.middlewareAgentGroupDataToPermissionGroup = exports.legToOffChainLeg = exports.legToNonFungibleLeg = exports.legToFungibleLeg = exports.middlewarePortfolioDataToPortfolio = exports.expiryToMoment = exports.middlewareInstructionToHistoricInstruction = exports.instructionMemoToString = exports.metadataValueDetailToMeshMetadataValueDetail = exports.metadataValueToMeshMetadataValue = exports.meshMetadataValueToMetadataValue = exports.metadataToMeshMetadataKey = exports.meshMetadataSpecToMetadataSpec = exports.metadataSpecToMeshMetadataSpec = exports.meshProposalStatusToProposalStatus = exports.inputStatTypeToMeshStatType = exports.countStatInputToStatUpdates = exports.claimCountStatInputToStatUpdates = exports.toExemptKey = exports.complianceConditionsToBtreeSet = exports.sortTransferRestrictionByClaimValue = exports.createStat2ndKey = exports.transferRestrictionTypeToStatOpType = void 0;
23
+ exports.childKeysWithAuthToCreateChildIdentitiesWithAuth = exports.secondaryAccountWithAuthToSecondaryKeyWithAuth = exports.receiptDetailsToMeshReceiptDetails = exports.offChainMetadataToMeshReceiptMetadata = exports.signatureToMeshRuntimeMultiSignature = exports.createRawExtrinsicStatus = exports.assetCountToRaw = exports.mediatorAffirmationStatusToStatus = exports.toHistoricalSettlements = exports.oldMiddlewareDataToHistoricalSettlements = exports.toCustomClaimTypeWithIdentity = exports.nftInputToNftMetadataVec = exports.nftInputToNftMetadataAttribute = exports.meshNftToNftId = exports.meshMetadataKeyToMetadataKey = exports.collectionKeysToMetadataKeys = exports.middlewareAuthorizationDataToAuthorization = exports.middlewarePermissionsDataToPermissions = exports.datesToScheduleCheckpoints = exports.middlewareAgentGroupDataToPermissionGroup = exports.legToOffChainLeg = exports.legToNonFungibleLeg = exports.legToFungibleLeg = exports.middlewarePortfolioDataToPortfolio = exports.expiryToMoment = exports.middlewareInstructionToHistoricInstruction = exports.middlewareLegToLeg = exports.oldMiddlewareInstructionToHistoricInstruction = exports.portfolioIdStringToPortfolio = exports.instructionMemoToString = exports.metadataValueDetailToMeshMetadataValueDetail = exports.metadataValueToMeshMetadataValue = exports.meshMetadataValueToMetadataValue = exports.metadataToMeshMetadataKey = exports.meshMetadataSpecToMetadataSpec = exports.metadataSpecToMeshMetadataSpec = exports.meshProposalStatusToProposalStatus = exports.inputStatTypeToMeshStatType = exports.countStatInputToStatUpdates = exports.claimCountStatInputToStatUpdates = exports.toExemptKey = exports.complianceConditionsToBtreeSet = exports.sortTransferRestrictionByClaimValue = exports.createStat2ndKey = exports.transferRestrictionTypeToStatOpType = void 0;
24
24
  const util_1 = require("@polkadot/util");
25
25
  const util_crypto_1 = require("@polkadot/util-crypto");
26
26
  const bignumber_js_1 = __importDefault(require("bignumber.js"));
@@ -31,6 +31,7 @@ const utils_2 = require("../generated/utils");
31
31
  const internal_1 = require("../internal");
32
32
  const types_1 = require("../middleware/types");
33
33
  const typesV1_1 = require("../middleware/typesV1");
34
+ const typesV6_1 = require("../middleware/typesV6");
34
35
  const types_2 = require("../types");
35
36
  const internal_2 = require("../types/internal");
36
37
  const utils_3 = require("../types/utils");
@@ -3288,7 +3289,16 @@ exports.instructionMemoToString = instructionMemoToString;
3288
3289
  /**
3289
3290
  * @hidden
3290
3291
  */
3291
- function middlewareInstructionToHistoricInstruction(instruction, context) {
3292
+ function portfolioIdStringToPortfolio(id) {
3293
+ const [identityId, number] = id.split('/');
3294
+ return { identityId, number: parseInt(number, 10) };
3295
+ }
3296
+ exports.portfolioIdStringToPortfolio = portfolioIdStringToPortfolio;
3297
+ // TODO @prashantasdeveloper Remove after SQ dual version support
3298
+ /**
3299
+ * @hidden
3300
+ */
3301
+ function oldMiddlewareInstructionToHistoricInstruction(instruction, context) {
3292
3302
  /* eslint-disable @typescript-eslint/no-non-null-assertion */
3293
3303
  const { id: instructionId, status, settlementType, endBlock, tradeDate, valueDate, legs: { nodes: legs }, memo, createdBlock, venueId, } = instruction;
3294
3304
  const { blockId, hash, datetime } = createdBlock;
@@ -3306,14 +3316,76 @@ function middlewareInstructionToHistoricInstruction(instruction, context) {
3306
3316
  }
3307
3317
  return Object.assign(Object.assign({ id: new bignumber_js_1.default(instructionId), blockNumber: new bignumber_js_1.default(blockId), blockHash: hash, status,
3308
3318
  tradeDate,
3309
- valueDate }, typeDetails), { memo: memo !== null && memo !== void 0 ? memo : null, venueId: new bignumber_js_1.default(venueId), createdAt: new Date(datetime), legs: legs.map(({ from, to, assetId, amount }) => ({
3319
+ valueDate }, typeDetails), { memo: memo !== null && memo !== void 0 ? memo : null, venueId: new bignumber_js_1.default(venueId), createdAt: new Date(datetime), legs: legs.map(({ fromId, toId, assetId, amount }) => ({
3310
3320
  asset: new internal_1.FungibleAsset({ ticker: assetId }, context),
3311
3321
  amount: new bignumber_js_1.default(amount).shiftedBy(-6),
3312
- from: middlewarePortfolioToPortfolio(from, context),
3313
- to: middlewarePortfolioToPortfolio(to, context),
3322
+ from: middlewarePortfolioToPortfolio(portfolioIdStringToPortfolio(fromId), context),
3323
+ to: middlewarePortfolioToPortfolio(portfolioIdStringToPortfolio(toId), context),
3314
3324
  })) });
3315
3325
  /* eslint-enable @typescript-eslint/no-non-null-assertion */
3316
3326
  }
3327
+ exports.oldMiddlewareInstructionToHistoricInstruction = oldMiddlewareInstructionToHistoricInstruction;
3328
+ // Dual version support end
3329
+ /**
3330
+ * @hidden
3331
+ */
3332
+ function middlewareLegToLeg(leg, context) {
3333
+ const { legType, from, fromPortfolio, to, toPortfolio, assetId, nftIds, amount } = leg;
3334
+ if (legType === types_1.LegTypeEnum.Fungible) {
3335
+ return {
3336
+ asset: new internal_1.FungibleAsset({ ticker: assetId }, context),
3337
+ amount: new bignumber_js_1.default(amount).shiftedBy(-6),
3338
+ from: middlewarePortfolioToPortfolio({ identityId: from, number: fromPortfolio }, context),
3339
+ to: middlewarePortfolioToPortfolio({ identityId: to, number: toPortfolio }, context),
3340
+ };
3341
+ }
3342
+ if (legType === types_1.LegTypeEnum.NonFungible) {
3343
+ return {
3344
+ from: middlewarePortfolioToPortfolio({ identityId: from, number: fromPortfolio }, context),
3345
+ to: middlewarePortfolioToPortfolio({ identityId: to, number: toPortfolio }, context),
3346
+ nfts: nftIds.map((nftId) => new internal_1.Nft({ ticker: assetId, id: new bignumber_js_1.default(nftId) }, context)),
3347
+ asset: new internal_1.NftCollection({ ticker: assetId }, context),
3348
+ };
3349
+ }
3350
+ // presume off chain
3351
+ return {
3352
+ from: new internal_1.Identity({ did: from }, context),
3353
+ to: new internal_1.Identity({ did: to }, context),
3354
+ asset: assetId,
3355
+ offChainAmount: new bignumber_js_1.default(amount).shiftedBy(-6),
3356
+ };
3357
+ }
3358
+ exports.middlewareLegToLeg = middlewareLegToLeg;
3359
+ /**
3360
+ * @hidden
3361
+ */
3362
+ function middlewareInstructionToHistoricInstruction(instruction, context) {
3363
+ /* eslint-disable @typescript-eslint/no-non-null-assertion */
3364
+ const { id: instructionId, status, type, endBlock, endAfterBlock, tradeDate, valueDate, legs: { nodes: legs }, memo, createdBlock, venueId, } = instruction;
3365
+ const { blockId, hash, datetime } = createdBlock;
3366
+ let typeDetails;
3367
+ if (type === types_1.InstructionTypeEnum.SettleManual) {
3368
+ typeDetails = {
3369
+ type: types_2.InstructionType.SettleManual,
3370
+ endAfterBlock: new bignumber_js_1.default(endAfterBlock),
3371
+ };
3372
+ }
3373
+ else if (type === types_1.InstructionTypeEnum.SettleOnBlock) {
3374
+ typeDetails = {
3375
+ type: types_2.InstructionType.SettleOnBlock,
3376
+ endBlock: new bignumber_js_1.default(endBlock),
3377
+ };
3378
+ }
3379
+ else {
3380
+ typeDetails = {
3381
+ type: types_2.InstructionType.SettleOnAffirmation,
3382
+ };
3383
+ }
3384
+ return Object.assign(Object.assign({ id: new bignumber_js_1.default(instructionId), blockNumber: new bignumber_js_1.default(blockId), blockHash: hash, status,
3385
+ tradeDate,
3386
+ valueDate }, typeDetails), { memo: memo !== null && memo !== void 0 ? memo : null, venueId: new bignumber_js_1.default(venueId), createdAt: new Date(datetime), legs: legs.map(leg => middlewareLegToLeg(leg, context)) });
3387
+ /* eslint-enable @typescript-eslint/no-non-null-assertion */
3388
+ }
3317
3389
  exports.middlewareInstructionToHistoricInstruction = middlewareInstructionToHistoricInstruction;
3318
3390
  /**
3319
3391
  * @hidden
@@ -3636,29 +3708,42 @@ exports.nftInputToNftMetadataVec = nftInputToNftMetadataVec;
3636
3708
  * @hidden
3637
3709
  */
3638
3710
  function toCustomClaimTypeWithIdentity(data) {
3639
- return data.map(item => {
3640
- var _a;
3641
- return ({
3642
- name: item.name,
3643
- id: new bignumber_js_1.default(item.id),
3644
- did: (_a = item.identity) === null || _a === void 0 ? void 0 : _a.did,
3645
- });
3646
- });
3711
+ return data.map(({ id, name, identityId: did }) => ({
3712
+ id: new bignumber_js_1.default(id),
3713
+ name,
3714
+ did,
3715
+ }));
3647
3716
  }
3648
3717
  exports.toCustomClaimTypeWithIdentity = toCustomClaimTypeWithIdentity;
3649
3718
  /**
3650
3719
  * @hidden
3651
3720
  */
3652
- function portfolioIdStringToPortfolio(id) {
3653
- const [identityId, number] = id.split('/');
3654
- return { identityId, number: parseInt(number, 10) };
3721
+ function portfolioMovementsToHistoricSettlements(portfolioMovements, context, handleMiddlewareAddress) {
3722
+ return portfolioMovements.map(({ createdBlock, fromId, toId, assetId, amount, address: accountAddress }) => {
3723
+ const { blockId, hash } = createdBlock;
3724
+ return {
3725
+ blockNumber: new bignumber_js_1.default(blockId),
3726
+ blockHash: hash,
3727
+ status: typesV6_1.SettlementResultEnum.Executed,
3728
+ accounts: [handleMiddlewareAddress(accountAddress, context)],
3729
+ legs: [
3730
+ {
3731
+ asset: new internal_1.FungibleAsset({ ticker: assetId }, context),
3732
+ amount: new bignumber_js_1.default(amount).shiftedBy(-6),
3733
+ direction: typesV1_1.SettlementDirectionEnum.None,
3734
+ from: middlewarePortfolioToPortfolio(portfolioIdStringToPortfolio(fromId), context),
3735
+ to: middlewarePortfolioToPortfolio(portfolioIdStringToPortfolio(toId), context),
3736
+ },
3737
+ ],
3738
+ };
3739
+ });
3655
3740
  }
3656
- exports.portfolioIdStringToPortfolio = portfolioIdStringToPortfolio;
3741
+ // TODO @prashantasdeveloper Remove after SQ dual version support
3657
3742
  /**
3658
3743
  * @hidden
3659
3744
  */
3660
- function toHistoricalSettlements(settlementsResult, portfolioMovementsResult, filter, context) {
3661
- const data = [];
3745
+ function oldMiddlewareDataToHistoricalSettlements(settlementsResult, portfolioMovements, filter, context) {
3746
+ let data = [];
3662
3747
  const getDirection = (fromId, toId) => {
3663
3748
  const [fromDid] = fromId.split('/');
3664
3749
  const [toDid] = toId.split('/');
@@ -3681,41 +3766,74 @@ function toHistoricalSettlements(settlementsResult, portfolioMovementsResult, fi
3681
3766
  return typesV1_1.SettlementDirectionEnum.None;
3682
3767
  };
3683
3768
  /* eslint-disable @typescript-eslint/no-non-null-assertion */
3684
- settlementsResult.data.legs.nodes.forEach(({ settlement }) => {
3685
- const { createdBlock, result: settlementResult, legs: { nodes: legs }, } = settlement;
3769
+ settlementsResult.forEach(({ settlement }) => {
3770
+ const { createdBlock, result: settlementResult, legs: { nodes: legs }, instructionsByLegSettlementIdAndInstructionId: { nodes: [instruction], }, } = settlement;
3771
+ const { id: instructionId } = instruction;
3686
3772
  const { blockId, hash } = createdBlock;
3687
3773
  data.push({
3688
3774
  blockNumber: new bignumber_js_1.default(blockId),
3689
3775
  blockHash: hash,
3690
3776
  status: settlementResult,
3691
3777
  accounts: legs[0].addresses.map((accountAddress) => new internal_1.Account({ address: keyToAddress(accountAddress, context) }, context)),
3692
- legs: legs.map(({ from, to, fromId, toId, assetId, amount }) => ({
3778
+ instruction: new internal_1.Instruction({ id: new bignumber_js_1.default(instructionId) }, context),
3779
+ legs: legs.map(({ fromId, toId, assetId, amount }) => ({
3693
3780
  asset: new internal_1.FungibleAsset({ ticker: assetId }, context),
3694
3781
  amount: new bignumber_js_1.default(amount).shiftedBy(-6),
3695
3782
  direction: getDirection(fromId, toId),
3696
- from: middlewarePortfolioToPortfolio(from, context),
3697
- to: middlewarePortfolioToPortfolio(to, context),
3783
+ from: middlewarePortfolioToPortfolio(portfolioIdStringToPortfolio(fromId), context),
3784
+ to: middlewarePortfolioToPortfolio(portfolioIdStringToPortfolio(toId), context),
3698
3785
  })),
3699
3786
  });
3700
3787
  });
3701
- portfolioMovementsResult.data.portfolioMovements.nodes.forEach(({ createdBlock, fromId, toId, assetId, amount, address: accountAddress }) => {
3788
+ data = [
3789
+ ...data,
3790
+ ...portfolioMovementsToHistoricSettlements(portfolioMovements, context, (accountAddress) => new internal_1.Account({ address: keyToAddress(accountAddress, context) }, context)),
3791
+ ];
3792
+ /* eslint-enable @typescript-eslint/no-non-null-assertion */
3793
+ return data.sort((a, b) => a.blockNumber.minus(b.blockNumber).toNumber());
3794
+ }
3795
+ exports.oldMiddlewareDataToHistoricalSettlements = oldMiddlewareDataToHistoricalSettlements;
3796
+ /**
3797
+ * @hidden
3798
+ */
3799
+ function toHistoricalSettlements(settlementsResult, portfolioMovements, filter, context) {
3800
+ let data = [];
3801
+ const getDirection = (leg) => {
3802
+ const { from, fromPortfolio, to, toPortfolio } = leg;
3803
+ const { identityId, portfolio } = filter;
3804
+ let result = typesV1_1.SettlementDirectionEnum.None;
3805
+ if (from === to) {
3806
+ result = typesV1_1.SettlementDirectionEnum.None;
3807
+ }
3808
+ else if (from === identityId) {
3809
+ if (!portfolio || fromPortfolio === portfolio) {
3810
+ result = typesV1_1.SettlementDirectionEnum.Incoming;
3811
+ }
3812
+ }
3813
+ else if (to === identityId) {
3814
+ if (!portfolio || toPortfolio === portfolio) {
3815
+ result = typesV1_1.SettlementDirectionEnum.Outgoing;
3816
+ }
3817
+ }
3818
+ return result;
3819
+ };
3820
+ /* eslint-disable @typescript-eslint/no-non-null-assertion */
3821
+ settlementsResult.forEach(({ instruction }) => {
3822
+ const { id, createdBlock, status, legs: { nodes: legs }, } = instruction;
3702
3823
  const { blockId, hash } = createdBlock;
3703
3824
  data.push({
3704
3825
  blockNumber: new bignumber_js_1.default(blockId),
3705
3826
  blockHash: hash,
3706
- status: types_1.SettlementResultEnum.Executed,
3707
- accounts: [new internal_1.Account({ address: keyToAddress(accountAddress, context) }, context)],
3708
- legs: [
3709
- {
3710
- asset: new internal_1.FungibleAsset({ ticker: assetId }, context),
3711
- amount: new bignumber_js_1.default(amount).shiftedBy(-6),
3712
- direction: getDirection(fromId, toId),
3713
- from: middlewarePortfolioToPortfolio(portfolioIdStringToPortfolio(fromId), context),
3714
- to: middlewarePortfolioToPortfolio(portfolioIdStringToPortfolio(toId), context),
3715
- },
3716
- ],
3827
+ status: status,
3828
+ accounts: legs[0].addresses.map((address) => new internal_1.Account({ address }, context)),
3829
+ instruction: new internal_1.Instruction({ id: new bignumber_js_1.default(id) }, context),
3830
+ legs: legs.map(leg => (Object.assign(Object.assign({}, middlewareLegToLeg(leg, context)), { direction: getDirection(leg) }))),
3717
3831
  });
3718
3832
  });
3833
+ data = [
3834
+ ...data,
3835
+ ...portfolioMovementsToHistoricSettlements(portfolioMovements, context, (accountAddress) => new internal_1.Account({ address: accountAddress }, context)),
3836
+ ];
3719
3837
  /* eslint-enable @typescript-eslint/no-non-null-assertion */
3720
3838
  return data.sort((a, b) => a.blockNumber.minus(b.blockNumber).toNumber());
3721
3839
  }