@hashgraphonline/standards-sdk 0.0.112 → 0.0.114

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 (145) hide show
  1. package/dist/cjs/hcs-10/base-client.d.ts +2 -0
  2. package/dist/cjs/hcs-10/base-client.d.ts.map +1 -1
  3. package/dist/cjs/hcs-10/browser.d.ts +2 -0
  4. package/dist/cjs/hcs-10/browser.d.ts.map +1 -1
  5. package/dist/cjs/hcs-10/connections-manager.d.ts +1 -0
  6. package/dist/cjs/hcs-10/connections-manager.d.ts.map +1 -1
  7. package/dist/cjs/hcs-10/errors.d.ts.map +1 -1
  8. package/dist/cjs/hcs-10/registrations.d.ts.map +1 -1
  9. package/dist/cjs/hcs-10/sdk.d.ts.map +1 -1
  10. package/dist/cjs/hcs-10/types.d.ts +2 -0
  11. package/dist/cjs/hcs-10/types.d.ts.map +1 -1
  12. package/dist/cjs/hcs-11/client.d.ts.map +1 -1
  13. package/dist/cjs/hcs-11/types.d.ts +1 -0
  14. package/dist/cjs/hcs-11/types.d.ts.map +1 -1
  15. package/dist/cjs/hcs-3/src/index.d.ts.map +1 -1
  16. package/dist/cjs/hcs-7/evm-bridge.d.ts.map +1 -1
  17. package/dist/cjs/hcs-7/redis-cache.d.ts.map +1 -1
  18. package/dist/cjs/hcs-7/wasm-bridge.d.ts.map +1 -1
  19. package/dist/cjs/index-C8CnOC88.cjs +11 -0
  20. package/dist/cjs/index-C8CnOC88.cjs.map +1 -0
  21. package/dist/cjs/{index-CHar8dVv-SclbHQNq.cjs → index-CHar8dVv-CO7x6bkg.cjs} +2 -2
  22. package/dist/cjs/{index-CHar8dVv-SclbHQNq.cjs.map → index-CHar8dVv-CO7x6bkg.cjs.map} +1 -1
  23. package/dist/cjs/services/mirror-node.d.ts +1 -1
  24. package/dist/cjs/services/mirror-node.d.ts.map +1 -1
  25. package/dist/cjs/standards-sdk.cjs +1 -1
  26. package/dist/cjs/utils/logger.d.ts +1 -1
  27. package/dist/cjs/utils/logger.d.ts.map +1 -1
  28. package/dist/cjs/utils/parsers/hts-parser.d.ts.map +1 -1
  29. package/dist/cjs/utils/parsers/scs-parser.d.ts.map +1 -1
  30. package/dist/cjs/utils/progress-reporter.d.ts.map +1 -1
  31. package/dist/cjs/utils/sleep.d.ts.map +1 -1
  32. package/dist/cjs/utils/transaction-parser-types.d.ts.map +1 -1
  33. package/dist/es/hcs-10/base-client.d.ts +2 -0
  34. package/dist/es/hcs-10/base-client.d.ts.map +1 -1
  35. package/dist/es/hcs-10/browser.d.ts +2 -0
  36. package/dist/es/hcs-10/browser.d.ts.map +1 -1
  37. package/dist/es/hcs-10/connections-manager.d.ts +1 -0
  38. package/dist/es/hcs-10/connections-manager.d.ts.map +1 -1
  39. package/dist/es/hcs-10/errors.d.ts.map +1 -1
  40. package/dist/es/hcs-10/registrations.d.ts.map +1 -1
  41. package/dist/es/hcs-10/sdk.d.ts.map +1 -1
  42. package/dist/es/hcs-10/types.d.ts +2 -0
  43. package/dist/es/hcs-10/types.d.ts.map +1 -1
  44. package/dist/es/hcs-11/client.d.ts.map +1 -1
  45. package/dist/es/hcs-11/types.d.ts +1 -0
  46. package/dist/es/hcs-11/types.d.ts.map +1 -1
  47. package/dist/es/hcs-3/src/index.d.ts.map +1 -1
  48. package/dist/es/hcs-7/evm-bridge.d.ts.map +1 -1
  49. package/dist/es/hcs-7/redis-cache.d.ts.map +1 -1
  50. package/dist/es/hcs-7/wasm-bridge.d.ts.map +1 -1
  51. package/dist/es/services/mirror-node.d.ts +1 -1
  52. package/dist/es/services/mirror-node.d.ts.map +1 -1
  53. package/dist/es/standards-sdk.es10.js +7 -16
  54. package/dist/es/standards-sdk.es10.js.map +1 -1
  55. package/dist/es/standards-sdk.es12.js.map +1 -1
  56. package/dist/es/standards-sdk.es13.js +5 -4
  57. package/dist/es/standards-sdk.es13.js.map +1 -1
  58. package/dist/es/standards-sdk.es14.js.map +1 -1
  59. package/dist/es/standards-sdk.es15.js +13 -3
  60. package/dist/es/standards-sdk.es15.js.map +1 -1
  61. package/dist/es/standards-sdk.es16.js.map +1 -1
  62. package/dist/es/standards-sdk.es17.js.map +1 -1
  63. package/dist/es/standards-sdk.es18.js.map +1 -1
  64. package/dist/es/standards-sdk.es19.js +6 -6
  65. package/dist/es/standards-sdk.es19.js.map +1 -1
  66. package/dist/es/standards-sdk.es2.js +5 -1
  67. package/dist/es/standards-sdk.es2.js.map +1 -1
  68. package/dist/es/standards-sdk.es20.js +1 -1
  69. package/dist/es/standards-sdk.es20.js.map +1 -1
  70. package/dist/es/standards-sdk.es21.js +9 -27
  71. package/dist/es/standards-sdk.es21.js.map +1 -1
  72. package/dist/es/standards-sdk.es22.js.map +1 -1
  73. package/dist/es/standards-sdk.es23.js.map +1 -1
  74. package/dist/es/standards-sdk.es24.js +7139 -450
  75. package/dist/es/standards-sdk.es24.js.map +1 -1
  76. package/dist/es/standards-sdk.es25.js +2 -109
  77. package/dist/es/standards-sdk.es25.js.map +1 -1
  78. package/dist/es/standards-sdk.es26.js +469 -34
  79. package/dist/es/standards-sdk.es26.js.map +1 -1
  80. package/dist/es/standards-sdk.es27.js +74 -221
  81. package/dist/es/standards-sdk.es27.js.map +1 -1
  82. package/dist/es/standards-sdk.es28.js +34 -141
  83. package/dist/es/standards-sdk.es28.js.map +1 -1
  84. package/dist/es/standards-sdk.es29.js +250 -5
  85. package/dist/es/standards-sdk.es29.js.map +1 -1
  86. package/dist/es/standards-sdk.es3.js +17 -9
  87. package/dist/es/standards-sdk.es3.js.map +1 -1
  88. package/dist/es/standards-sdk.es30.js +154 -7171
  89. package/dist/es/standards-sdk.es30.js.map +1 -1
  90. package/dist/es/standards-sdk.es31.js +11 -2
  91. package/dist/es/standards-sdk.es31.js.map +1 -1
  92. package/dist/es/standards-sdk.es32.js +7134 -41
  93. package/dist/es/standards-sdk.es32.js.map +1 -1
  94. package/dist/es/standards-sdk.es33.js +41 -7134
  95. package/dist/es/standards-sdk.es33.js.map +1 -1
  96. package/dist/es/standards-sdk.es4.js +4 -1
  97. package/dist/es/standards-sdk.es4.js.map +1 -1
  98. package/dist/es/standards-sdk.es5.js +4 -7
  99. package/dist/es/standards-sdk.es5.js.map +1 -1
  100. package/dist/es/standards-sdk.es6.js.map +1 -1
  101. package/dist/es/standards-sdk.es7.js +8 -7
  102. package/dist/es/standards-sdk.es7.js.map +1 -1
  103. package/dist/es/standards-sdk.es8.js +9 -10
  104. package/dist/es/standards-sdk.es8.js.map +1 -1
  105. package/dist/es/standards-sdk.es9.js +2 -4
  106. package/dist/es/standards-sdk.es9.js.map +1 -1
  107. package/dist/es/utils/logger.d.ts +1 -1
  108. package/dist/es/utils/logger.d.ts.map +1 -1
  109. package/dist/es/utils/parsers/hts-parser.d.ts.map +1 -1
  110. package/dist/es/utils/parsers/scs-parser.d.ts.map +1 -1
  111. package/dist/es/utils/progress-reporter.d.ts.map +1 -1
  112. package/dist/es/utils/sleep.d.ts.map +1 -1
  113. package/dist/es/utils/transaction-parser-types.d.ts.map +1 -1
  114. package/dist/umd/hcs-10/base-client.d.ts +2 -0
  115. package/dist/umd/hcs-10/base-client.d.ts.map +1 -1
  116. package/dist/umd/hcs-10/browser.d.ts +2 -0
  117. package/dist/umd/hcs-10/browser.d.ts.map +1 -1
  118. package/dist/umd/hcs-10/connections-manager.d.ts +1 -0
  119. package/dist/umd/hcs-10/connections-manager.d.ts.map +1 -1
  120. package/dist/umd/hcs-10/errors.d.ts.map +1 -1
  121. package/dist/umd/hcs-10/registrations.d.ts.map +1 -1
  122. package/dist/umd/hcs-10/sdk.d.ts.map +1 -1
  123. package/dist/umd/hcs-10/types.d.ts +2 -0
  124. package/dist/umd/hcs-10/types.d.ts.map +1 -1
  125. package/dist/umd/hcs-11/client.d.ts.map +1 -1
  126. package/dist/umd/hcs-11/types.d.ts +1 -0
  127. package/dist/umd/hcs-11/types.d.ts.map +1 -1
  128. package/dist/umd/hcs-3/src/index.d.ts.map +1 -1
  129. package/dist/umd/hcs-7/evm-bridge.d.ts.map +1 -1
  130. package/dist/umd/hcs-7/redis-cache.d.ts.map +1 -1
  131. package/dist/umd/hcs-7/wasm-bridge.d.ts.map +1 -1
  132. package/dist/umd/services/mirror-node.d.ts +1 -1
  133. package/dist/umd/services/mirror-node.d.ts.map +1 -1
  134. package/dist/umd/standards-sdk.umd.js +6 -6
  135. package/dist/umd/standards-sdk.umd.js.map +1 -1
  136. package/dist/umd/utils/logger.d.ts +1 -1
  137. package/dist/umd/utils/logger.d.ts.map +1 -1
  138. package/dist/umd/utils/parsers/hts-parser.d.ts.map +1 -1
  139. package/dist/umd/utils/parsers/scs-parser.d.ts.map +1 -1
  140. package/dist/umd/utils/progress-reporter.d.ts.map +1 -1
  141. package/dist/umd/utils/sleep.d.ts.map +1 -1
  142. package/dist/umd/utils/transaction-parser-types.d.ts.map +1 -1
  143. package/package.json +8 -3
  144. package/dist/cjs/index-CcE0yY9g.cjs +0 -11
  145. package/dist/cjs/index-CcE0yY9g.cjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"standards-sdk.es26.js","sources":["../../src/utils/parsers/file-parser.ts"],"sourcesContent":["import { proto } from '@hashgraph/proto';\nimport { Long } from '@hashgraph/sdk';\nimport {\n FileCreateData,\n FileAppendData,\n FileUpdateData,\n FileDeleteData,\n} from '../transaction-parser-types';\nimport { parseKey } from './parser-utils';\nimport { Buffer } from 'buffer';\n\nexport class FileParser {\n static parseFileCreate(\n body: proto.IFileCreateTransactionBody\n ): FileCreateData | undefined {\n if (!body) return undefined;\n const data: FileCreateData = {};\n if (body.expirationTime?.seconds) {\n data.expirationTime = `${Long.fromValue(\n body.expirationTime.seconds\n ).toString()}.${body.expirationTime.nanos}`;\n }\n if (body.keys) {\n data.keys = parseKey({ keyList: body.keys });\n }\n if (body.contents) {\n data.contents = Buffer.from(body.contents).toString('base64');\n }\n if (body.memo) {\n data.memo = body.memo;\n }\n return data;\n }\n\n static parseFileAppend(\n body: proto.IFileAppendTransactionBody\n ): FileAppendData | undefined {\n if (!body) return undefined;\n const data: FileAppendData = {};\n if (body.fileID) {\n data.fileId = `${body.fileID.shardNum ?? 0}.${\n body.fileID.realmNum ?? 0\n }.${body.fileID.fileNum ?? 0}`;\n }\n if (body.contents) {\n data.contents = Buffer.from(body.contents).toString('base64');\n }\n return data;\n }\n\n static parseFileUpdate(\n body: proto.IFileUpdateTransactionBody\n ): FileUpdateData | undefined {\n if (!body) return undefined;\n const data: FileUpdateData = {};\n if (body.fileID) {\n data.fileId = `${body.fileID.shardNum ?? 0}.${\n body.fileID.realmNum ?? 0\n }.${body.fileID.fileNum ?? 0}`;\n }\n if (body.expirationTime?.seconds) {\n data.expirationTime = `${Long.fromValue(\n body.expirationTime.seconds\n ).toString()}.${body.expirationTime.nanos}`;\n }\n if (body.keys) {\n data.keys = parseKey({ keyList: body.keys });\n }\n if (body.contents) {\n data.contents = Buffer.from(body.contents).toString('base64');\n }\n if (body.memo?.value !== undefined) {\n data.memo = body.memo.value;\n }\n return data;\n }\n\n static parseFileDelete(\n body: proto.IFileDeleteTransactionBody\n ): FileDeleteData | undefined {\n if (!body) return undefined;\n const data: FileDeleteData = {};\n if (body.fileID) {\n data.fileId = `${body.fileID.shardNum ?? 0}.${\n body.fileID.realmNum ?? 0\n }.${body.fileID.fileNum ?? 0}`;\n }\n return data;\n }\n}\n"],"names":[],"mappings":";;;AAWO,MAAM,WAAW;AAAA,EACtB,OAAO,gBACL,MAC4B;AACxB,QAAA,CAAC,KAAa,QAAA;AAClB,UAAM,OAAuB,CAAC;AAC1B,QAAA,KAAK,gBAAgB,SAAS;AAC3B,WAAA,iBAAiB,GAAG,KAAK;AAAA,QAC5B,KAAK,eAAe;AAAA,MAAA,EACpB,SAAU,CAAA,IAAI,KAAK,eAAe,KAAK;AAAA,IAAA;AAE3C,QAAI,KAAK,MAAM;AACb,WAAK,OAAO,SAAS,EAAE,SAAS,KAAK,MAAM;AAAA,IAAA;AAE7C,QAAI,KAAK,UAAU;AACjB,WAAK,WAAW,OAAO,KAAK,KAAK,QAAQ,EAAE,SAAS,QAAQ;AAAA,IAAA;AAE9D,QAAI,KAAK,MAAM;AACb,WAAK,OAAO,KAAK;AAAA,IAAA;AAEZ,WAAA;AAAA,EAAA;AAAA,EAGT,OAAO,gBACL,MAC4B;AACxB,QAAA,CAAC,KAAa,QAAA;AAClB,UAAM,OAAuB,CAAC;AAC9B,QAAI,KAAK,QAAQ;AACf,WAAK,SAAS,GAAG,KAAK,OAAO,YAAY,CAAC,IACxC,KAAK,OAAO,YAAY,CAC1B,IAAI,KAAK,OAAO,WAAW,CAAC;AAAA,IAAA;AAE9B,QAAI,KAAK,UAAU;AACjB,WAAK,WAAW,OAAO,KAAK,KAAK,QAAQ,EAAE,SAAS,QAAQ;AAAA,IAAA;AAEvD,WAAA;AAAA,EAAA;AAAA,EAGT,OAAO,gBACL,MAC4B;AACxB,QAAA,CAAC,KAAa,QAAA;AAClB,UAAM,OAAuB,CAAC;AAC9B,QAAI,KAAK,QAAQ;AACf,WAAK,SAAS,GAAG,KAAK,OAAO,YAAY,CAAC,IACxC,KAAK,OAAO,YAAY,CAC1B,IAAI,KAAK,OAAO,WAAW,CAAC;AAAA,IAAA;AAE1B,QAAA,KAAK,gBAAgB,SAAS;AAC3B,WAAA,iBAAiB,GAAG,KAAK;AAAA,QAC5B,KAAK,eAAe;AAAA,MAAA,EACpB,SAAU,CAAA,IAAI,KAAK,eAAe,KAAK;AAAA,IAAA;AAE3C,QAAI,KAAK,MAAM;AACb,WAAK,OAAO,SAAS,EAAE,SAAS,KAAK,MAAM;AAAA,IAAA;AAE7C,QAAI,KAAK,UAAU;AACjB,WAAK,WAAW,OAAO,KAAK,KAAK,QAAQ,EAAE,SAAS,QAAQ;AAAA,IAAA;AAE1D,QAAA,KAAK,MAAM,UAAU,QAAW;AAC7B,WAAA,OAAO,KAAK,KAAK;AAAA,IAAA;AAEjB,WAAA;AAAA,EAAA;AAAA,EAGT,OAAO,gBACL,MAC4B;AACxB,QAAA,CAAC,KAAa,QAAA;AAClB,UAAM,OAAuB,CAAC;AAC9B,QAAI,KAAK,QAAQ;AACf,WAAK,SAAS,GAAG,KAAK,OAAO,YAAY,CAAC,IACxC,KAAK,OAAO,YAAY,CAC1B,IAAI,KAAK,OAAO,WAAW,CAAC;AAAA,IAAA;AAEvB,WAAA;AAAA,EAAA;AAEX;"}
1
+ {"version":3,"file":"standards-sdk.es26.js","sources":["../../src/utils/parsers/hts-parser.ts"],"sourcesContent":["import { proto } from '@hashgraph/proto';\nimport { AccountId, TokenId, Long } from '@hashgraph/sdk';\nimport {\n TokenCreationData,\n TokenMintData,\n TokenBurnData,\n TokenUpdateData,\n TokenFeeScheduleUpdateData,\n TokenFreezeData,\n TokenUnfreezeData,\n TokenGrantKycData,\n TokenRevokeKycData,\n TokenPauseData,\n TokenUnpauseData,\n TokenWipeAccountData,\n TokenDeleteData,\n TokenAssociateData,\n TokenDissociateData,\n CustomFeeData,\n FixedFeeData,\n FractionalFeeData,\n RoyaltyFeeData,\n} from '../transaction-parser-types';\nimport { parseKey } from './parser-utils';\nimport { Buffer } from 'buffer';\n\nexport class HTSParser {\n static parseTokenCreate(\n body: proto.ITokenCreateTransactionBody,\n ): TokenCreationData | undefined {\n if (!body) return undefined;\n const data: TokenCreationData = {};\n if (body.name) {\n data.tokenName = body.name;\n }\n if (body.symbol) {\n data.tokenSymbol = body.symbol;\n }\n if (body.treasury) {\n data.treasuryAccountId = new AccountId(\n body.treasury.shardNum ?? 0,\n body.treasury.realmNum ?? 0,\n body.treasury.accountNum ?? 0,\n ).toString();\n }\n if (body.initialSupply) {\n data.initialSupply = Long.fromValue(body.initialSupply).toString();\n }\n if (body.decimals !== undefined && body.decimals !== null) {\n data.decimals = Long.fromValue(body.decimals).toNumber();\n }\n if (body.maxSupply) {\n data.maxSupply = Long.fromValue(body.maxSupply).toString();\n }\n if (body.memo) {\n data.memo = body.memo;\n }\n if (body.tokenType !== null && body.tokenType !== undefined) {\n data.tokenType = proto.TokenType[body.tokenType];\n }\n if (body.supplyType !== null && body.supplyType !== undefined) {\n data.supplyType = proto.TokenSupplyType[body.supplyType];\n }\n data.adminKey = parseKey(body.adminKey);\n data.kycKey = parseKey(body.kycKey);\n data.freezeKey = parseKey(body.freezeKey);\n data.wipeKey = parseKey(body.wipeKey);\n data.supplyKey = parseKey(body.supplyKey);\n data.feeScheduleKey = parseKey(body.feeScheduleKey);\n data.pauseKey = parseKey(body.pauseKey);\n if (body.autoRenewAccount) {\n data.autoRenewAccount = new AccountId(\n body.autoRenewAccount.shardNum ?? 0,\n body.autoRenewAccount.realmNum ?? 0,\n body.autoRenewAccount.accountNum ?? 0,\n ).toString();\n }\n if (body.autoRenewPeriod?.seconds) {\n data.autoRenewPeriod = Long.fromValue(\n body.autoRenewPeriod.seconds,\n ).toString();\n }\n if (body.customFees && body.customFees.length > 0) {\n data.customFees = body.customFees.map(fee => {\n const feeCollectorAccountId = fee.feeCollectorAccountId\n ? new AccountId(\n fee.feeCollectorAccountId.shardNum ?? 0,\n fee.feeCollectorAccountId.realmNum ?? 0,\n fee.feeCollectorAccountId.accountNum ?? 0,\n ).toString()\n : 'Not Set';\n const commonFeeData = {\n feeCollectorAccountId,\n allCollectorsAreExempt: fee.allCollectorsAreExempt || false,\n };\n if (fee.fixedFee) {\n return {\n ...commonFeeData,\n feeType: 'FIXED_FEE',\n fixedFee: {\n amount: Long.fromValue(fee.fixedFee.amount || 0).toString(),\n denominatingTokenId: fee.fixedFee.denominatingTokenId\n ? new TokenId(\n fee.fixedFee.denominatingTokenId.shardNum ?? 0,\n fee.fixedFee.denominatingTokenId.realmNum ?? 0,\n fee.fixedFee.denominatingTokenId.tokenNum ?? 0,\n ).toString()\n : undefined,\n },\n };\n } else if (fee.fractionalFee) {\n return {\n ...commonFeeData,\n feeType: 'FRACTIONAL_FEE',\n fractionalFee: {\n numerator: Long.fromValue(\n fee.fractionalFee.fractionalAmount?.numerator || 0,\n ).toString(),\n denominator: Long.fromValue(\n fee.fractionalFee.fractionalAmount?.denominator || 1,\n ).toString(),\n minimumAmount: Long.fromValue(\n fee.fractionalFee.minimumAmount || 0,\n ).toString(),\n maximumAmount: Long.fromValue(\n fee.fractionalFee.maximumAmount || 0,\n ).toString(),\n netOfTransfers: fee.fractionalFee.netOfTransfers || false,\n },\n };\n } else if (fee.royaltyFee) {\n let fallbackFeeData: FixedFeeData | undefined = undefined;\n if (fee.royaltyFee.fallbackFee) {\n fallbackFeeData = {\n amount: Long.fromValue(\n fee.royaltyFee.fallbackFee.amount || 0,\n ).toString(),\n denominatingTokenId: fee.royaltyFee.fallbackFee\n .denominatingTokenId\n ? new TokenId(\n fee.royaltyFee.fallbackFee.denominatingTokenId.shardNum ??\n 0,\n fee.royaltyFee.fallbackFee.denominatingTokenId.realmNum ??\n 0,\n fee.royaltyFee.fallbackFee.denominatingTokenId.tokenNum ??\n 0,\n ).toString()\n : undefined,\n };\n }\n return {\n ...commonFeeData,\n feeType: 'ROYALTY_FEE',\n royaltyFee: {\n numerator: Long.fromValue(\n fee.royaltyFee.exchangeValueFraction?.numerator || 0,\n ).toString(),\n denominator: Long.fromValue(\n fee.royaltyFee.exchangeValueFraction?.denominator || 1,\n ).toString(),\n fallbackFee: fallbackFeeData,\n },\n };\n }\n return {\n ...commonFeeData,\n feeType: 'FIXED_FEE',\n fixedFee: { amount: '0' },\n } as CustomFeeData;\n });\n }\n return data;\n }\n\n static parseTokenMint(\n body: proto.ITokenMintTransactionBody,\n ): TokenMintData | undefined {\n if (\n !body ||\n !body.token ||\n body.amount === null ||\n body.amount === undefined\n ) {\n return undefined;\n }\n const data: TokenMintData = {\n tokenId: new TokenId(\n body.token.shardNum ?? 0,\n body.token.realmNum ?? 0,\n body.token.tokenNum ?? 0,\n ).toString(),\n amount: Long.fromValue(body.amount).toNumber(),\n };\n if (body.metadata && body.metadata.length > 0) {\n data.metadata = body.metadata.map(meta =>\n Buffer.from(meta).toString('base64'),\n );\n }\n return data;\n }\n\n static parseTokenBurn(\n body: proto.ITokenBurnTransactionBody,\n ): TokenBurnData | undefined {\n if (\n !body ||\n !body.token ||\n body.amount === null ||\n body.amount === undefined\n ) {\n return undefined;\n }\n const data: TokenBurnData = {\n tokenId: new TokenId(\n body.token.shardNum ?? 0,\n body.token.realmNum ?? 0,\n body.token.tokenNum ?? 0,\n ).toString(),\n amount: Long.fromValue(body.amount).toNumber(),\n };\n if (body.serialNumbers && body.serialNumbers.length > 0) {\n data.serialNumbers = body.serialNumbers.map(sn =>\n Long.fromValue(sn).toNumber(),\n );\n }\n return data;\n }\n\n static parseTokenUpdate(\n body: proto.ITokenUpdateTransactionBody,\n ): TokenUpdateData | undefined {\n if (!body) return undefined;\n const data: TokenUpdateData = {};\n if (body.token) {\n data.tokenId = new TokenId(\n body.token.shardNum ?? 0,\n body.token.realmNum ?? 0,\n body.token.tokenNum ?? 0,\n ).toString();\n }\n if (body.name) {\n data.name = body.name;\n }\n if (body.symbol) {\n data.symbol = body.symbol;\n }\n if (body.treasury) {\n data.treasuryAccountId = new AccountId(\n body.treasury.shardNum ?? 0,\n body.treasury.realmNum ?? 0,\n body.treasury.accountNum ?? 0,\n ).toString();\n }\n data.adminKey = parseKey(body.adminKey);\n data.kycKey = parseKey(body.kycKey);\n data.freezeKey = parseKey(body.freezeKey);\n data.wipeKey = parseKey(body.wipeKey);\n data.supplyKey = parseKey(body.supplyKey);\n data.feeScheduleKey = parseKey(body.feeScheduleKey);\n data.pauseKey = parseKey(body.pauseKey);\n if (body.autoRenewAccount) {\n data.autoRenewAccountId = new AccountId(\n body.autoRenewAccount.shardNum ?? 0,\n body.autoRenewAccount.realmNum ?? 0,\n body.autoRenewAccount.accountNum ?? 0,\n ).toString();\n }\n if (body.autoRenewPeriod?.seconds) {\n data.autoRenewPeriod = Long.fromValue(\n body.autoRenewPeriod.seconds,\n ).toString();\n }\n if (body.memo?.value !== undefined) {\n data.memo = body.memo.value;\n }\n if (body.expiry?.seconds) {\n data.expiry = `${Long.fromValue(body.expiry.seconds).toString()}.${\n body.expiry.nanos\n }`;\n }\n return data;\n }\n\n static parseTokenFeeScheduleUpdate(\n body: proto.ITokenFeeScheduleUpdateTransactionBody,\n ): TokenFeeScheduleUpdateData | undefined {\n if (!body) return undefined;\n const data: TokenFeeScheduleUpdateData = {};\n if (body.tokenId) {\n data.tokenId = new TokenId(\n body.tokenId.shardNum ?? 0,\n body.tokenId.realmNum ?? 0,\n body.tokenId.tokenNum ?? 0,\n ).toString();\n }\n if (body.customFees && body.customFees.length > 0) {\n data.customFees = body.customFees.map(fee => {\n const feeCollectorAccountId = fee.feeCollectorAccountId\n ? new AccountId(\n fee.feeCollectorAccountId.shardNum ?? 0,\n fee.feeCollectorAccountId.realmNum ?? 0,\n fee.feeCollectorAccountId.accountNum ?? 0,\n ).toString()\n : 'Not Set';\n const commonFeeData = {\n feeCollectorAccountId,\n allCollectorsAreExempt: fee.allCollectorsAreExempt || false,\n };\n if (fee.fixedFee) {\n return {\n ...commonFeeData,\n feeType: 'FIXED_FEE',\n fixedFee: {\n amount: Long.fromValue(fee.fixedFee.amount || 0).toString(),\n denominatingTokenId: fee.fixedFee.denominatingTokenId\n ? new TokenId(\n fee.fixedFee.denominatingTokenId.shardNum ?? 0,\n fee.fixedFee.denominatingTokenId.realmNum ?? 0,\n fee.fixedFee.denominatingTokenId.tokenNum ?? 0,\n ).toString()\n : undefined,\n },\n };\n } else if (fee.fractionalFee) {\n return {\n ...commonFeeData,\n feeType: 'FRACTIONAL_FEE',\n fractionalFee: {\n numerator: Long.fromValue(\n fee.fractionalFee.fractionalAmount?.numerator || 0,\n ).toString(),\n denominator: Long.fromValue(\n fee.fractionalFee.fractionalAmount?.denominator || 1,\n ).toString(),\n minimumAmount: Long.fromValue(\n fee.fractionalFee.minimumAmount || 0,\n ).toString(),\n maximumAmount: Long.fromValue(\n fee.fractionalFee.maximumAmount || 0,\n ).toString(),\n netOfTransfers: fee.fractionalFee.netOfTransfers || false,\n },\n };\n } else if (fee.royaltyFee) {\n let fallbackFeeData: FixedFeeData | undefined = undefined;\n if (fee.royaltyFee.fallbackFee) {\n fallbackFeeData = {\n amount: Long.fromValue(\n fee.royaltyFee.fallbackFee.amount || 0,\n ).toString(),\n denominatingTokenId: fee.royaltyFee.fallbackFee\n .denominatingTokenId\n ? new TokenId(\n fee.royaltyFee.fallbackFee.denominatingTokenId.shardNum ??\n 0,\n fee.royaltyFee.fallbackFee.denominatingTokenId.realmNum ??\n 0,\n fee.royaltyFee.fallbackFee.denominatingTokenId.tokenNum ??\n 0,\n ).toString()\n : undefined,\n };\n }\n return {\n ...commonFeeData,\n feeType: 'ROYALTY_FEE',\n royaltyFee: {\n numerator: Long.fromValue(\n fee.royaltyFee.exchangeValueFraction?.numerator || 0,\n ).toString(),\n denominator: Long.fromValue(\n fee.royaltyFee.exchangeValueFraction?.denominator || 1,\n ).toString(),\n fallbackFee: fallbackFeeData,\n },\n };\n }\n return {\n ...commonFeeData,\n feeType: 'FIXED_FEE',\n fixedFee: { amount: '0' },\n } as CustomFeeData;\n });\n }\n return data;\n }\n\n static parseTokenFreeze(\n body: proto.ITokenFreezeAccountTransactionBody,\n ): TokenFreezeData | undefined {\n if (!body) return undefined;\n const data: TokenFreezeData = {};\n if (body.token) {\n data.tokenId = new TokenId(\n body.token.shardNum ?? 0,\n body.token.realmNum ?? 0,\n body.token.tokenNum ?? 0,\n ).toString();\n }\n if (body.account) {\n data.accountId = new AccountId(\n body.account.shardNum ?? 0,\n body.account.realmNum ?? 0,\n body.account.accountNum ?? 0,\n ).toString();\n }\n return data;\n }\n\n static parseTokenUnfreeze(\n body: proto.ITokenUnfreezeAccountTransactionBody,\n ): TokenUnfreezeData | undefined {\n if (!body) return undefined;\n const data: TokenUnfreezeData = {};\n if (body.token) {\n data.tokenId = new TokenId(\n body.token.shardNum ?? 0,\n body.token.realmNum ?? 0,\n body.token.tokenNum ?? 0,\n ).toString();\n }\n if (body.account) {\n data.accountId = new AccountId(\n body.account.shardNum ?? 0,\n body.account.realmNum ?? 0,\n body.account.accountNum ?? 0,\n ).toString();\n }\n return data;\n }\n\n static parseTokenGrantKyc(\n body: proto.ITokenGrantKycTransactionBody,\n ): TokenGrantKycData | undefined {\n if (!body) return undefined;\n const data: TokenGrantKycData = {};\n if (body.token) {\n data.tokenId = new TokenId(\n body.token.shardNum ?? 0,\n body.token.realmNum ?? 0,\n body.token.tokenNum ?? 0,\n ).toString();\n }\n if (body.account) {\n data.accountId = new AccountId(\n body.account.shardNum ?? 0,\n body.account.realmNum ?? 0,\n body.account.accountNum ?? 0,\n ).toString();\n }\n return data;\n }\n\n static parseTokenRevokeKyc(\n body: proto.ITokenRevokeKycTransactionBody,\n ): TokenRevokeKycData | undefined {\n if (!body) return undefined;\n const data: TokenRevokeKycData = {};\n if (body.token) {\n data.tokenId = new TokenId(\n body.token.shardNum ?? 0,\n body.token.realmNum ?? 0,\n body.token.tokenNum ?? 0,\n ).toString();\n }\n if (body.account) {\n data.accountId = new AccountId(\n body.account.shardNum ?? 0,\n body.account.realmNum ?? 0,\n body.account.accountNum ?? 0,\n ).toString();\n }\n return data;\n }\n\n static parseTokenPause(\n body: proto.ITokenPauseTransactionBody,\n ): TokenPauseData | undefined {\n if (!body) return undefined;\n const data: TokenPauseData = {};\n if (body.token) {\n data.tokenId = new TokenId(\n body.token.shardNum ?? 0,\n body.token.realmNum ?? 0,\n body.token.tokenNum ?? 0,\n ).toString();\n }\n return data;\n }\n\n static parseTokenUnpause(\n body: proto.ITokenUnpauseTransactionBody,\n ): TokenUnpauseData | undefined {\n if (!body) return undefined;\n const data: TokenUnpauseData = {};\n if (body.token) {\n data.tokenId = new TokenId(\n body.token.shardNum ?? 0,\n body.token.realmNum ?? 0,\n body.token.tokenNum ?? 0,\n ).toString();\n }\n return data;\n }\n\n static parseTokenWipeAccount(\n body: proto.ITokenWipeAccountTransactionBody,\n ): TokenWipeAccountData | undefined {\n if (!body) return undefined;\n const data: TokenWipeAccountData = {};\n if (body.token) {\n data.tokenId = new TokenId(\n body.token.shardNum ?? 0,\n body.token.realmNum ?? 0,\n body.token.tokenNum ?? 0,\n ).toString();\n }\n if (body.account) {\n data.accountId = new AccountId(\n body.account.shardNum ?? 0,\n body.account.realmNum ?? 0,\n body.account.accountNum ?? 0,\n ).toString();\n }\n if (body.serialNumbers && body.serialNumbers.length > 0) {\n data.serialNumbers = body.serialNumbers.map(sn =>\n Long.fromValue(sn).toString(),\n );\n }\n if (body.amount) {\n data.amount = Long.fromValue(body.amount).toString();\n }\n return data;\n }\n\n static parseTokenDelete(\n body: proto.ITokenDeleteTransactionBody,\n ): TokenDeleteData | undefined {\n if (!body) return undefined;\n const data: TokenDeleteData = {};\n if (body.token) {\n data.tokenId = new TokenId(\n body.token.shardNum ?? 0,\n body.token.realmNum ?? 0,\n body.token.tokenNum ?? 0,\n ).toString();\n }\n return data;\n }\n\n static parseTokenAssociate(\n body: proto.ITokenAssociateTransactionBody,\n ): TokenAssociateData | undefined {\n if (!body) return undefined;\n const data: TokenAssociateData = {};\n if (body.account) {\n data.accountId = new AccountId(\n body.account.shardNum ?? 0,\n body.account.realmNum ?? 0,\n body.account.accountNum ?? 0,\n ).toString();\n }\n if (body.tokens && body.tokens.length > 0) {\n data.tokenIds = body.tokens.map(t =>\n new TokenId(\n t.shardNum ?? 0,\n t.realmNum ?? 0,\n t.tokenNum ?? 0,\n ).toString(),\n );\n }\n return data;\n }\n\n static parseTokenDissociate(\n body: proto.ITokenDissociateTransactionBody,\n ): TokenDissociateData | undefined {\n if (!body) return undefined;\n const data: TokenDissociateData = {};\n if (body.account) {\n data.accountId = new AccountId(\n body.account.shardNum ?? 0,\n body.account.realmNum ?? 0,\n body.account.accountNum ?? 0,\n ).toString();\n }\n if (body.tokens && body.tokens.length > 0) {\n data.tokenIds = body.tokens.map(t =>\n new TokenId(\n t.shardNum ?? 0,\n t.realmNum ?? 0,\n t.tokenNum ?? 0,\n ).toString(),\n );\n }\n return data;\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1,259 +1,112 @@
1
- import { AccountId, Hbar, Long, HbarUnit, TokenId } from "@hashgraph/sdk";
2
- import { parseKey } from "./standards-sdk.es32.js";
3
- class CryptoParser {
4
- static parseCryptoTransfers(cryptoTransfer, result) {
5
- if (cryptoTransfer.transfers?.accountAmounts) {
6
- result.transfers = cryptoTransfer.transfers.accountAmounts.map((aa) => {
7
- const accountId = new AccountId(
8
- aa.accountID.shardNum ?? 0,
9
- aa.accountID.realmNum ?? 0,
10
- aa.accountID.accountNum ?? 0
11
- );
12
- const hbarAmount = Hbar.fromTinybars(Long.fromValue(aa.amount));
13
- return {
14
- accountId: accountId.toString(),
15
- amount: hbarAmount.toString(HbarUnit.Hbar),
16
- isDecimal: true
17
- };
18
- });
19
- }
20
- if (cryptoTransfer.tokenTransfers) {
21
- for (const tokenTransferList of cryptoTransfer.tokenTransfers) {
22
- const tokenId = new TokenId(
23
- tokenTransferList.token.shardNum ?? 0,
24
- tokenTransferList.token.realmNum ?? 0,
25
- tokenTransferList.token.tokenNum ?? 0
26
- );
27
- if (tokenTransferList.transfers) {
28
- for (const transfer of tokenTransferList.transfers) {
29
- const accountId = new AccountId(
30
- transfer.accountID.shardNum ?? 0,
31
- transfer.accountID.realmNum ?? 0,
32
- transfer.accountID.accountNum ?? 0
33
- );
34
- const tokenAmount = Long.fromValue(transfer.amount).toNumber();
35
- result.tokenTransfers.push({
36
- tokenId: tokenId.toString(),
37
- accountId: accountId.toString(),
38
- amount: tokenAmount
39
- });
40
- }
41
- }
42
- }
43
- }
44
- }
45
- static parseCryptoDelete(body) {
46
- if (!body) return void 0;
47
- const data = {};
48
- if (body.deleteAccountID) {
49
- data.deleteAccountId = new AccountId(
50
- body.deleteAccountID.shardNum ?? 0,
51
- body.deleteAccountID.realmNum ?? 0,
52
- body.deleteAccountID.accountNum ?? 0
53
- ).toString();
54
- }
55
- if (body.transferAccountID) {
56
- data.transferAccountId = new AccountId(
57
- body.transferAccountID.shardNum ?? 0,
58
- body.transferAccountID.realmNum ?? 0,
59
- body.transferAccountID.accountNum ?? 0
60
- ).toString();
61
- }
62
- return data;
63
- }
64
- static parseCryptoCreateAccount(body) {
1
+ import { Long, AccountId } from "@hashgraph/sdk";
2
+ import { parseKey } from "./standards-sdk.es33.js";
3
+ import { Buffer } from "buffer";
4
+ class HCSParser {
5
+ static parseConsensusCreateTopic(body) {
65
6
  if (!body) return void 0;
66
7
  const data = {};
67
- if (body.initialBalance) {
68
- data.initialBalance = Hbar.fromTinybars(
69
- Long.fromValue(body.initialBalance)
70
- ).toString(HbarUnit.Hbar);
71
- }
72
- if (body.key) {
73
- data.key = parseKey(body.key);
74
- }
75
- if (body.receiverSigRequired !== void 0) {
76
- data.receiverSigRequired = body.receiverSigRequired;
8
+ if (body.memo) {
9
+ data.memo = body.memo;
77
10
  }
11
+ data.adminKey = parseKey(body.adminKey);
12
+ data.submitKey = parseKey(body.submitKey);
78
13
  if (body.autoRenewPeriod?.seconds) {
79
14
  data.autoRenewPeriod = Long.fromValue(
80
15
  body.autoRenewPeriod.seconds
81
16
  ).toString();
82
17
  }
83
- if (body.memo) {
84
- data.memo = body.memo;
85
- }
86
- if (body.maxAutomaticTokenAssociations !== void 0) {
87
- data.maxAutomaticTokenAssociations = body.maxAutomaticTokenAssociations;
88
- }
89
- if (body.stakedAccountId) {
90
- data.stakedAccountId = new AccountId(
91
- body.stakedAccountId.shardNum ?? 0,
92
- body.stakedAccountId.realmNum ?? 0,
93
- body.stakedAccountId.accountNum ?? 0
18
+ if (body.autoRenewAccount) {
19
+ data.autoRenewAccountId = new AccountId(
20
+ body.autoRenewAccount.shardNum ?? 0,
21
+ body.autoRenewAccount.realmNum ?? 0,
22
+ body.autoRenewAccount.accountNum ?? 0
94
23
  ).toString();
95
- } else if (body.stakedNodeId !== null && body.stakedNodeId !== void 0) {
96
- data.stakedNodeId = Long.fromValue(body.stakedNodeId).toString();
97
24
  }
98
- if (body.declineReward !== void 0) {
99
- data.declineReward = body.declineReward;
25
+ return data;
26
+ }
27
+ static parseConsensusSubmitMessage(body) {
28
+ if (!body) return void 0;
29
+ const data = {};
30
+ if (body.topicID) {
31
+ data.topicId = `${body.topicID.shardNum ?? 0}.${body.topicID.realmNum ?? 0}.${body.topicID.topicNum ?? 0}`;
32
+ }
33
+ if (body.message?.length > 0) {
34
+ const messageBuffer = Buffer.from(body.message);
35
+ const utf8String = messageBuffer.toString("utf8");
36
+ if (/[\x00-\x08\x0B\x0E-\x1F\x7F]/.test(utf8String) || utf8String.includes("�")) {
37
+ data.message = messageBuffer.toString("base64");
38
+ data.messageEncoding = "base64";
39
+ } else {
40
+ data.message = utf8String;
41
+ data.messageEncoding = "utf8";
42
+ }
100
43
  }
101
- if (body.alias && body.alias.length > 0) {
102
- data.alias = Buffer.from(body.alias).toString("hex");
44
+ if (body.chunkInfo) {
45
+ if (body.chunkInfo.initialTransactionID) {
46
+ const txId = body.chunkInfo.initialTransactionID.accountID;
47
+ const taValidStart = body.chunkInfo.initialTransactionID.transactionValidStart;
48
+ if (txId && taValidStart) {
49
+ data.chunkInfoInitialTransactionID = `${txId.shardNum ?? 0}.${txId.realmNum ?? 0}.${txId.accountNum ?? 0}@${taValidStart.seconds ?? 0}.${taValidStart.nanos ?? 0}`;
50
+ }
51
+ }
52
+ if (body.chunkInfo.number !== void 0 && body.chunkInfo.number !== null) {
53
+ data.chunkInfoNumber = body.chunkInfo.number;
54
+ }
55
+ if (body.chunkInfo.total !== void 0 && body.chunkInfo.total !== null) {
56
+ data.chunkInfoTotal = body.chunkInfo.total;
57
+ }
103
58
  }
104
59
  return data;
105
60
  }
106
- static parseCryptoUpdateAccount(body) {
61
+ static parseConsensusUpdateTopic(body) {
107
62
  if (!body) return void 0;
108
63
  const data = {};
109
- if (body.accountIDToUpdate) {
110
- data.accountIdToUpdate = new AccountId(
111
- body.accountIDToUpdate.shardNum ?? 0,
112
- body.accountIDToUpdate.realmNum ?? 0,
113
- body.accountIDToUpdate.accountNum ?? 0
114
- ).toString();
64
+ if (body.topicID) {
65
+ data.topicId = `${body.topicID.shardNum}.${body.topicID.realmNum}.${body.topicID.topicNum}`;
115
66
  }
116
- if (body.key) {
117
- data.key = parseKey(body.key);
67
+ if (body.memo?.value !== void 0) {
68
+ data.memo = body.memo.value;
118
69
  }
119
- if (body.expirationTime?.seconds) {
120
- data.expirationTime = `${Long.fromValue(
121
- body.expirationTime.seconds
122
- ).toString()}.${body.expirationTime.nanos}`;
70
+ if (body.adminKey === null) {
71
+ data.clearAdminKey = true;
72
+ data.adminKey = void 0;
73
+ } else if (body.adminKey) {
74
+ data.adminKey = parseKey(body.adminKey);
75
+ } else {
76
+ data.adminKey = void 0;
123
77
  }
124
- if (body.receiverSigRequired !== null && body.receiverSigRequired !== void 0) {
125
- data.receiverSigRequired = Boolean(body.receiverSigRequired);
78
+ if (body.submitKey === null) {
79
+ data.clearSubmitKey = true;
80
+ data.submitKey = void 0;
81
+ } else if (body.submitKey) {
82
+ data.submitKey = parseKey(body.submitKey);
83
+ } else {
84
+ data.submitKey = void 0;
126
85
  }
127
86
  if (body.autoRenewPeriod?.seconds) {
128
87
  data.autoRenewPeriod = Long.fromValue(
129
88
  body.autoRenewPeriod.seconds
130
89
  ).toString();
131
90
  }
132
- if (body.memo?.value !== void 0) {
133
- data.memo = body.memo.value;
134
- }
135
- if (body.maxAutomaticTokenAssociations?.value !== void 0) {
136
- data.maxAutomaticTokenAssociations = body.maxAutomaticTokenAssociations.value;
137
- }
138
- if (body.stakedAccountId) {
139
- data.stakedAccountId = new AccountId(
140
- body.stakedAccountId.shardNum ?? 0,
141
- body.stakedAccountId.realmNum ?? 0,
142
- body.stakedAccountId.accountNum ?? 0
91
+ if (body.autoRenewAccount) {
92
+ data.autoRenewAccountId = new AccountId(
93
+ body.autoRenewAccount.shardNum ?? 0,
94
+ body.autoRenewAccount.realmNum ?? 0,
95
+ body.autoRenewAccount.accountNum ?? 0
143
96
  ).toString();
144
- data.stakedNodeId = void 0;
145
- } else if (body.stakedNodeId !== null && body.stakedNodeId !== void 0) {
146
- data.stakedNodeId = Long.fromValue(body.stakedNodeId).toString();
147
- data.stakedAccountId = void 0;
148
- } else {
149
- data.stakedAccountId = void 0;
150
- data.stakedNodeId = void 0;
151
- }
152
- if (body.declineReward !== null && body.declineReward !== void 0) {
153
- data.declineReward = Boolean(body.declineReward);
154
- }
155
- return data;
156
- }
157
- static parseCryptoApproveAllowance(body) {
158
- if (!body) return void 0;
159
- const data = {};
160
- if (body.cryptoAllowances && body.cryptoAllowances.length > 0) {
161
- data.hbarAllowances = body.cryptoAllowances.map((a) => ({
162
- ownerAccountId: new AccountId(
163
- a.owner.shardNum ?? 0,
164
- a.owner.realmNum ?? 0,
165
- a.owner.accountNum ?? 0
166
- ).toString(),
167
- spenderAccountId: new AccountId(
168
- a.spender.shardNum ?? 0,
169
- a.spender.realmNum ?? 0,
170
- a.spender.accountNum ?? 0
171
- ).toString(),
172
- amount: Hbar.fromTinybars(Long.fromValue(a.amount)).toString(
173
- HbarUnit.Hbar
174
- )
175
- }));
176
- }
177
- if (body.tokenAllowances && body.tokenAllowances.length > 0) {
178
- data.tokenAllowances = body.tokenAllowances.map((a) => ({
179
- tokenId: new TokenId(
180
- a.tokenId.shardNum ?? 0,
181
- a.tokenId.realmNum ?? 0,
182
- a.tokenId.tokenNum ?? 0
183
- ).toString(),
184
- ownerAccountId: new AccountId(
185
- a.owner.shardNum ?? 0,
186
- a.owner.realmNum ?? 0,
187
- a.owner.accountNum ?? 0
188
- ).toString(),
189
- spenderAccountId: new AccountId(
190
- a.spender.shardNum ?? 0,
191
- a.spender.realmNum ?? 0,
192
- a.spender.accountNum ?? 0
193
- ).toString(),
194
- amount: Long.fromValue(a.amount).toString()
195
- }));
196
- }
197
- if (body.nftAllowances && body.nftAllowances.length > 0) {
198
- data.nftAllowances = body.nftAllowances.map((a) => {
199
- const allowance = {};
200
- if (a.tokenId)
201
- allowance.tokenId = new TokenId(
202
- a.tokenId.shardNum ?? 0,
203
- a.tokenId.realmNum ?? 0,
204
- a.tokenId.tokenNum ?? 0
205
- ).toString();
206
- if (a.owner)
207
- allowance.ownerAccountId = new AccountId(
208
- a.owner.shardNum ?? 0,
209
- a.owner.realmNum ?? 0,
210
- a.owner.accountNum ?? 0
211
- ).toString();
212
- if (a.spender)
213
- allowance.spenderAccountId = new AccountId(
214
- a.spender.shardNum ?? 0,
215
- a.spender.realmNum ?? 0,
216
- a.spender.accountNum ?? 0
217
- ).toString();
218
- if (a.serialNumbers && a.serialNumbers.length > 0)
219
- allowance.serialNumbers = a.serialNumbers.map(
220
- (sn) => Long.fromValue(sn).toString()
221
- );
222
- if (a.approvedForAll?.value !== void 0)
223
- allowance.approvedForAll = a.approvedForAll.value;
224
- if (a.delegatingSpender)
225
- allowance.delegatingSpender = new AccountId(
226
- a.delegatingSpender.shardNum ?? 0,
227
- a.delegatingSpender.realmNum ?? 0,
228
- a.delegatingSpender.accountNum ?? 0
229
- ).toString();
230
- return allowance;
231
- });
232
97
  }
233
98
  return data;
234
99
  }
235
- static parseCryptoDeleteAllowance(body) {
100
+ static parseConsensusDeleteTopic(body) {
236
101
  if (!body) return void 0;
237
102
  const data = {};
238
- if (body.nftAllowances && body.nftAllowances.length > 0) {
239
- data.nftAllowancesToRemove = body.nftAllowances.map((a) => ({
240
- ownerAccountId: new AccountId(
241
- a.owner.shardNum ?? 0,
242
- a.owner.realmNum ?? 0,
243
- a.owner.accountNum ?? 0
244
- ).toString(),
245
- tokenId: new TokenId(
246
- a.tokenId.shardNum ?? 0,
247
- a.tokenId.realmNum ?? 0,
248
- a.tokenId.tokenNum ?? 0
249
- ).toString(),
250
- serialNumbers: a.serialNumbers ? a.serialNumbers.map((sn) => Long.fromValue(sn).toString()) : []
251
- }));
103
+ if (body.topicID) {
104
+ data.topicId = `${body.topicID.shardNum}.${body.topicID.realmNum ?? 0}.${body.topicID.topicNum ?? 0}`;
252
105
  }
253
106
  return data;
254
107
  }
255
108
  }
256
109
  export {
257
- CryptoParser
110
+ HCSParser
258
111
  };
259
112
  //# sourceMappingURL=standards-sdk.es27.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"standards-sdk.es27.js","sources":["../../src/utils/parsers/crypto-parser.ts"],"sourcesContent":["import { proto } from '@hashgraph/proto';\nimport { AccountId, TokenId, Hbar, HbarUnit, Long } from '@hashgraph/sdk';\nimport {\n AccountAmount,\n TokenAmount,\n CryptoDeleteData,\n CryptoCreateAccountData,\n CryptoUpdateAccountData,\n CryptoApproveAllowanceData,\n CryptoDeleteAllowanceData,\n NftAllowance,\n} from '../transaction-parser-types';\nimport { parseKey } from './parser-utils';\n\nexport class CryptoParser {\n static parseCryptoTransfers(\n cryptoTransfer: proto.ICryptoTransferTransactionBody,\n result: { transfers: AccountAmount[]; tokenTransfers: TokenAmount[] }\n ): void {\n if (cryptoTransfer.transfers?.accountAmounts) {\n result.transfers = cryptoTransfer.transfers.accountAmounts.map((aa) => {\n const accountId = new AccountId(\n aa.accountID!.shardNum ?? 0,\n aa.accountID!.realmNum ?? 0,\n aa.accountID!.accountNum ?? 0\n );\n const hbarAmount = Hbar.fromTinybars(Long.fromValue(aa.amount!));\n return {\n accountId: accountId.toString(),\n amount: hbarAmount.toString(HbarUnit.Hbar),\n isDecimal: true,\n };\n });\n }\n if (cryptoTransfer.tokenTransfers) {\n for (const tokenTransferList of cryptoTransfer.tokenTransfers) {\n const tokenId = new TokenId(\n tokenTransferList.token!.shardNum ?? 0,\n tokenTransferList.token!.realmNum ?? 0,\n tokenTransferList.token!.tokenNum ?? 0\n );\n if (tokenTransferList.transfers) {\n for (const transfer of tokenTransferList.transfers) {\n const accountId = new AccountId(\n transfer.accountID!.shardNum ?? 0,\n transfer.accountID!.realmNum ?? 0,\n transfer.accountID!.accountNum ?? 0\n );\n const tokenAmount = Long.fromValue(transfer.amount!).toNumber();\n result.tokenTransfers.push({\n tokenId: tokenId.toString(),\n accountId: accountId.toString(),\n amount: tokenAmount,\n });\n }\n }\n }\n }\n }\n\n static parseCryptoDelete(\n body: proto.ICryptoDeleteTransactionBody\n ): CryptoDeleteData | undefined {\n if (!body) return undefined;\n const data: CryptoDeleteData = {};\n if (body.deleteAccountID) {\n data.deleteAccountId = new AccountId(\n body.deleteAccountID.shardNum ?? 0,\n body.deleteAccountID.realmNum ?? 0,\n body.deleteAccountID.accountNum ?? 0\n ).toString();\n }\n if (body.transferAccountID) {\n data.transferAccountId = new AccountId(\n body.transferAccountID.shardNum ?? 0,\n body.transferAccountID.realmNum ?? 0,\n body.transferAccountID.accountNum ?? 0\n ).toString();\n }\n return data;\n }\n\n static parseCryptoCreateAccount(\n body: proto.ICryptoCreateTransactionBody\n ): CryptoCreateAccountData | undefined {\n if (!body) return undefined;\n const data: CryptoCreateAccountData = {};\n if (body.initialBalance) {\n data.initialBalance = Hbar.fromTinybars(\n Long.fromValue(body.initialBalance)\n ).toString(HbarUnit.Hbar);\n }\n if (body.key) {\n data.key = parseKey(body.key);\n }\n if (body.receiverSigRequired !== undefined) {\n data.receiverSigRequired = body.receiverSigRequired;\n }\n if (body.autoRenewPeriod?.seconds) {\n data.autoRenewPeriod = Long.fromValue(\n body.autoRenewPeriod.seconds\n ).toString();\n }\n if (body.memo) {\n data.memo = body.memo;\n }\n if (body.maxAutomaticTokenAssociations !== undefined) {\n data.maxAutomaticTokenAssociations = body.maxAutomaticTokenAssociations;\n }\n if (body.stakedAccountId) {\n data.stakedAccountId = new AccountId(\n body.stakedAccountId.shardNum ?? 0,\n body.stakedAccountId.realmNum ?? 0,\n body.stakedAccountId.accountNum ?? 0\n ).toString();\n } else if (body.stakedNodeId !== null && body.stakedNodeId !== undefined) {\n data.stakedNodeId = Long.fromValue(body.stakedNodeId).toString();\n }\n if (body.declineReward !== undefined) {\n data.declineReward = body.declineReward;\n }\n if (body.alias && body.alias.length > 0) {\n data.alias = Buffer.from(body.alias).toString('hex');\n }\n return data;\n }\n\n static parseCryptoUpdateAccount(\n body: proto.ICryptoUpdateTransactionBody\n ): CryptoUpdateAccountData | undefined {\n if (!body) return undefined;\n const data: CryptoUpdateAccountData = {};\n if (body.accountIDToUpdate) {\n data.accountIdToUpdate = new AccountId(\n body.accountIDToUpdate.shardNum ?? 0,\n body.accountIDToUpdate.realmNum ?? 0,\n body.accountIDToUpdate.accountNum ?? 0\n ).toString();\n }\n if (body.key) {\n data.key = parseKey(body.key);\n }\n if (body.expirationTime?.seconds) {\n data.expirationTime = `${Long.fromValue(\n body.expirationTime.seconds\n ).toString()}.${body.expirationTime.nanos}`;\n }\n if (\n body.receiverSigRequired !== null &&\n body.receiverSigRequired !== undefined\n ) {\n data.receiverSigRequired = Boolean(body.receiverSigRequired);\n }\n if (body.autoRenewPeriod?.seconds) {\n data.autoRenewPeriod = Long.fromValue(\n body.autoRenewPeriod.seconds\n ).toString();\n }\n if (body.memo?.value !== undefined) {\n data.memo = body.memo.value;\n }\n if (body.maxAutomaticTokenAssociations?.value !== undefined) {\n data.maxAutomaticTokenAssociations =\n body.maxAutomaticTokenAssociations.value;\n }\n if (body.stakedAccountId) {\n data.stakedAccountId = new AccountId(\n body.stakedAccountId.shardNum ?? 0,\n body.stakedAccountId.realmNum ?? 0,\n body.stakedAccountId.accountNum ?? 0\n ).toString();\n data.stakedNodeId = undefined;\n } else if (body.stakedNodeId !== null && body.stakedNodeId !== undefined) {\n data.stakedNodeId = Long.fromValue(body.stakedNodeId).toString();\n data.stakedAccountId = undefined;\n } else {\n data.stakedAccountId = undefined;\n data.stakedNodeId = undefined;\n }\n if (body.declineReward !== null && body.declineReward !== undefined) {\n data.declineReward = Boolean(body.declineReward);\n }\n return data;\n }\n\n static parseCryptoApproveAllowance(\n body: proto.ICryptoApproveAllowanceTransactionBody\n ): CryptoApproveAllowanceData | undefined {\n if (!body) return undefined;\n const data: CryptoApproveAllowanceData = {};\n if (body.cryptoAllowances && body.cryptoAllowances.length > 0) {\n data.hbarAllowances = body.cryptoAllowances.map((a) => ({\n ownerAccountId: new AccountId(\n a.owner!.shardNum ?? 0,\n a.owner!.realmNum ?? 0,\n a.owner!.accountNum ?? 0\n ).toString(),\n spenderAccountId: new AccountId(\n a.spender!.shardNum ?? 0,\n a.spender!.realmNum ?? 0,\n a.spender!.accountNum ?? 0\n ).toString(),\n amount: Hbar.fromTinybars(Long.fromValue(a.amount!)).toString(\n HbarUnit.Hbar\n ),\n }));\n }\n if (body.tokenAllowances && body.tokenAllowances.length > 0) {\n data.tokenAllowances = body.tokenAllowances.map((a) => ({\n tokenId: new TokenId(\n a.tokenId!.shardNum ?? 0,\n a.tokenId!.realmNum ?? 0,\n a.tokenId!.tokenNum ?? 0\n ).toString(),\n ownerAccountId: new AccountId(\n a.owner!.shardNum ?? 0,\n a.owner!.realmNum ?? 0,\n a.owner!.accountNum ?? 0\n ).toString(),\n spenderAccountId: new AccountId(\n a.spender!.shardNum ?? 0,\n a.spender!.realmNum ?? 0,\n a.spender!.accountNum ?? 0\n ).toString(),\n amount: Long.fromValue(a.amount!).toString(),\n }));\n }\n if (body.nftAllowances && body.nftAllowances.length > 0) {\n data.nftAllowances = body.nftAllowances.map((a) => {\n const allowance: NftAllowance = {};\n if (a.tokenId)\n allowance.tokenId = new TokenId(\n a.tokenId.shardNum ?? 0,\n a.tokenId.realmNum ?? 0,\n a.tokenId.tokenNum ?? 0\n ).toString();\n if (a.owner)\n allowance.ownerAccountId = new AccountId(\n a.owner.shardNum ?? 0,\n a.owner.realmNum ?? 0,\n a.owner.accountNum ?? 0\n ).toString();\n if (a.spender)\n allowance.spenderAccountId = new AccountId(\n a.spender.shardNum ?? 0,\n a.spender.realmNum ?? 0,\n a.spender.accountNum ?? 0\n ).toString();\n if (a.serialNumbers && a.serialNumbers.length > 0)\n allowance.serialNumbers = a.serialNumbers.map((sn) =>\n Long.fromValue(sn).toString()\n );\n if (a.approvedForAll?.value !== undefined)\n allowance.approvedForAll = a.approvedForAll.value;\n if (a.delegatingSpender)\n allowance.delegatingSpender = new AccountId(\n a.delegatingSpender.shardNum ?? 0,\n a.delegatingSpender.realmNum ?? 0,\n a.delegatingSpender.accountNum ?? 0\n ).toString();\n return allowance;\n });\n }\n return data;\n }\n\n static parseCryptoDeleteAllowance(\n body: proto.ICryptoDeleteAllowanceTransactionBody\n ): CryptoDeleteAllowanceData | undefined {\n if (!body) return undefined;\n const data: CryptoDeleteAllowanceData = {};\n if (body.nftAllowances && body.nftAllowances.length > 0) {\n data.nftAllowancesToRemove = body.nftAllowances.map((a) => ({\n ownerAccountId: new AccountId(\n a.owner!.shardNum ?? 0,\n a.owner!.realmNum ?? 0,\n a.owner!.accountNum ?? 0\n ).toString(),\n tokenId: new TokenId(\n a.tokenId!.shardNum ?? 0,\n a.tokenId!.realmNum ?? 0,\n a.tokenId!.tokenNum ?? 0\n ).toString(),\n serialNumbers: a.serialNumbers\n ? a.serialNumbers.map((sn) => Long.fromValue(sn).toString())\n : [],\n }));\n }\n return data;\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"standards-sdk.es27.js","sources":["../../src/utils/parsers/hcs-parser.ts"],"sourcesContent":["import { proto } from '@hashgraph/proto';\nimport { AccountId, Long } from '@hashgraph/sdk';\nimport {\n ConsensusCreateTopicData,\n ConsensusSubmitMessageData,\n ConsensusUpdateTopicData,\n ConsensusDeleteTopicData,\n} from '../transaction-parser-types';\nimport { parseKey } from './parser-utils';\nimport { Buffer } from 'buffer';\n\nexport class HCSParser {\n static parseConsensusCreateTopic(\n body: proto.IConsensusCreateTopicTransactionBody,\n ): ConsensusCreateTopicData | undefined {\n if (!body) return undefined;\n const data: ConsensusCreateTopicData = {};\n if (body.memo) {\n data.memo = body.memo;\n }\n data.adminKey = parseKey(body.adminKey);\n data.submitKey = parseKey(body.submitKey);\n if (body.autoRenewPeriod?.seconds) {\n data.autoRenewPeriod = Long.fromValue(\n body.autoRenewPeriod.seconds,\n ).toString();\n }\n if (body.autoRenewAccount) {\n data.autoRenewAccountId = new AccountId(\n body.autoRenewAccount.shardNum ?? 0,\n body.autoRenewAccount.realmNum ?? 0,\n body.autoRenewAccount.accountNum ?? 0,\n ).toString();\n }\n return data;\n }\n\n static parseConsensusSubmitMessage(\n body: proto.IConsensusSubmitMessageTransactionBody,\n ): ConsensusSubmitMessageData | undefined {\n if (!body) return undefined;\n const data: ConsensusSubmitMessageData = {};\n if (body.topicID) {\n data.topicId = `${body.topicID.shardNum ?? 0}.${\n body.topicID.realmNum ?? 0\n }.${body.topicID.topicNum ?? 0}`;\n }\n if (body.message?.length > 0) {\n const messageBuffer = Buffer.from(body.message);\n const utf8String = messageBuffer.toString('utf8');\n if (\n /[\\x00-\\x08\\x0B\\x0E-\\x1F\\x7F]/.test(utf8String) ||\n utf8String.includes('\\uFFFD')\n ) {\n data.message = messageBuffer.toString('base64');\n data.messageEncoding = 'base64';\n } else {\n data.message = utf8String;\n data.messageEncoding = 'utf8';\n }\n }\n if (body.chunkInfo) {\n if (body.chunkInfo.initialTransactionID) {\n const txId = body.chunkInfo.initialTransactionID.accountID;\n const taValidStart =\n body.chunkInfo.initialTransactionID.transactionValidStart;\n if (txId && taValidStart) {\n data.chunkInfoInitialTransactionID = `${txId.shardNum ?? 0}.${\n txId.realmNum ?? 0\n }.${txId.accountNum ?? 0}@${taValidStart.seconds ?? 0}.${\n taValidStart.nanos ?? 0\n }`;\n }\n }\n if (\n body.chunkInfo.number !== undefined &&\n body.chunkInfo.number !== null\n ) {\n data.chunkInfoNumber = body.chunkInfo.number;\n }\n if (body.chunkInfo.total !== undefined && body.chunkInfo.total !== null) {\n data.chunkInfoTotal = body.chunkInfo.total;\n }\n }\n return data;\n }\n\n static parseConsensusUpdateTopic(\n body: proto.IConsensusUpdateTopicTransactionBody,\n ): ConsensusUpdateTopicData | undefined {\n if (!body) return undefined;\n const data: ConsensusUpdateTopicData = {};\n if (body.topicID) {\n data.topicId = `${body.topicID.shardNum}.${body.topicID.realmNum}.${body.topicID.topicNum}`;\n }\n if (body.memo?.value !== undefined) {\n data.memo = body.memo.value;\n }\n if (body.adminKey === null) {\n data.clearAdminKey = true;\n data.adminKey = undefined;\n } else if (body.adminKey) {\n data.adminKey = parseKey(body.adminKey);\n } else {\n data.adminKey = undefined;\n }\n if (body.submitKey === null) {\n data.clearSubmitKey = true;\n data.submitKey = undefined;\n } else if (body.submitKey) {\n data.submitKey = parseKey(body.submitKey);\n } else {\n data.submitKey = undefined;\n }\n if (body.autoRenewPeriod?.seconds) {\n data.autoRenewPeriod = Long.fromValue(\n body.autoRenewPeriod.seconds,\n ).toString();\n }\n if (body.autoRenewAccount) {\n data.autoRenewAccountId = new AccountId(\n body.autoRenewAccount.shardNum ?? 0,\n body.autoRenewAccount.realmNum ?? 0,\n body.autoRenewAccount.accountNum ?? 0,\n ).toString();\n }\n return data;\n }\n\n static parseConsensusDeleteTopic(\n body: proto.IConsensusDeleteTopicTransactionBody,\n ): ConsensusDeleteTopicData | undefined {\n if (!body) return undefined;\n const data: ConsensusDeleteTopicData = {};\n if (body.topicID) {\n data.topicId = `${body.topicID.shardNum}.${body.topicID.realmNum ?? 0}.${\n body.topicID.topicNum ?? 0\n }`;\n }\n return data;\n }\n}\n"],"names":[],"mappings":"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"}