@iota/graphql-transport 0.1.1 → 0.2.0

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 (35) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/README.md +1 -1
  3. package/dist/cjs/generated/queries.d.ts +1054 -1944
  4. package/dist/cjs/generated/queries.js +126 -752
  5. package/dist/cjs/generated/queries.js.map +3 -3
  6. package/dist/cjs/mappers/bcs.js.map +1 -1
  7. package/dist/cjs/mappers/move.js.map +2 -2
  8. package/dist/cjs/mappers/transaction-block.d.ts +1 -0
  9. package/dist/cjs/mappers/transaction-block.js +316 -146
  10. package/dist/cjs/mappers/transaction-block.js.map +2 -2
  11. package/dist/cjs/mappers/validator.js +4 -6
  12. package/dist/cjs/mappers/validator.js.map +2 -2
  13. package/dist/cjs/methods.js +26 -58
  14. package/dist/cjs/methods.js.map +2 -2
  15. package/dist/cjs/transport.d.ts +1 -1
  16. package/dist/cjs/transport.js +18 -33
  17. package/dist/cjs/transport.js.map +2 -2
  18. package/dist/esm/generated/queries.d.ts +1054 -1944
  19. package/dist/esm/generated/queries.js +126 -752
  20. package/dist/esm/generated/queries.js.map +3 -3
  21. package/dist/esm/mappers/bcs.js.map +1 -1
  22. package/dist/esm/mappers/move.js.map +2 -2
  23. package/dist/esm/mappers/transaction-block.d.ts +1 -0
  24. package/dist/esm/mappers/transaction-block.js +318 -148
  25. package/dist/esm/mappers/transaction-block.js.map +2 -2
  26. package/dist/esm/mappers/validator.js +4 -6
  27. package/dist/esm/mappers/validator.js.map +2 -2
  28. package/dist/esm/methods.js +27 -61
  29. package/dist/esm/methods.js.map +2 -2
  30. package/dist/esm/transport.d.ts +1 -1
  31. package/dist/esm/transport.js +17 -32
  32. package/dist/esm/transport.js.map +2 -2
  33. package/dist/tsconfig.esm.tsbuildinfo +1 -1
  34. package/dist/tsconfig.tsbuildinfo +1 -1
  35. package/package.json +16 -16
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/mappers/transaction-block.ts"],
4
- "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// Modifications Copyright (c) 2024 IOTA Stiftung\n// SPDX-License-Identifier: Apache-2.0\n\nimport { fromB64, toB64 } from '@iota/bcs';\nimport { bcs, TypeTagSerializer } from '@iota/iota-sdk/bcs';\nimport type {\n ExecutionStatus,\n IotaArgument,\n IotaCallArg,\n IotaTransaction,\n IotaTransactionBlock,\n IotaTransactionBlockKind,\n IotaTransactionBlockResponse,\n IotaTransactionBlockResponseOptions,\n} from '@iota/iota-sdk/client';\n\nimport type { Rpc_Transaction_FieldsFragment } from '../generated/queries.js';\nimport { mapGraphQLOwnerToRpcOwner } from './owner.js';\nimport { toShortTypeString } from './util.js';\n\nexport function mapGraphQLTransactionBlockToRpcTransactionBlock(\n transactionBlock: Rpc_Transaction_FieldsFragment,\n options?: IotaTransactionBlockResponseOptions | null,\n errors?: string[] | null,\n): IotaTransactionBlockResponse {\n const deletedChanges = transactionBlock.effects?.objectChanges?.nodes\n ?.filter((change) => change?.idDeleted === true)\n .map((change) => ({\n digest: change?.inputState?.digest!,\n version: String(change?.inputState?.version),\n objectId: change?.inputState?.address,\n }));\n const createdChanges = transactionBlock.effects?.objectChanges?.nodes\n ?.filter((change) => change?.idCreated === true)\n .map((change) => ({\n owner: mapGraphQLOwnerToRpcOwner(change?.outputState?.owner)!,\n reference: {\n digest: change?.outputState?.digest!,\n version: change?.outputState?.version as unknown as string,\n objectId: change?.outputState?.address,\n },\n }));\n\n return {\n balanceChanges: transactionBlock.effects?.balanceChanges?.nodes.map((balanceChange) => ({\n amount: balanceChange?.amount,\n coinType: toShortTypeString(balanceChange?.coinType?.repr),\n owner: balanceChange.owner?.asObject?.address\n ? {\n ObjectOwner: balanceChange.owner?.asObject?.address,\n }\n : {\n AddressOwner: balanceChange.owner?.asAddress?.address!,\n },\n })),\n ...(typeof transactionBlock.effects?.checkpoint?.sequenceNumber === 'number'\n ? { checkpoint: transactionBlock.effects.checkpoint.sequenceNumber.toString() }\n : {}),\n ...(transactionBlock.effects?.timestamp\n ? { timestampMs: new Date(transactionBlock.effects?.timestamp).getTime().toString() }\n : {}),\n digest: transactionBlock.digest!,\n effects: options?.showEffects\n ? {\n ...(createdChanges?.length ? { created: createdChanges } : {}),\n ...(deletedChanges?.length ? { deleted: deletedChanges } : {}),\n dependencies: transactionBlock.effects?.dependencies?.nodes.map(\n (dep) => dep?.digest!,\n ),\n executedEpoch: String(transactionBlock.effects?.executedEpoch?.epochId),\n gasObject: {\n owner: mapGraphQLOwnerToRpcOwner(\n transactionBlock.effects?.gasEffects?.gasObject?.owner,\n )!,\n reference: {\n digest: transactionBlock.effects?.gasEffects?.gasObject?.digest!,\n version: transactionBlock.effects?.gasEffects?.gasObject\n ?.version as unknown as string,\n objectId: transactionBlock.effects?.gasEffects?.gasObject?.address,\n },\n },\n gasUsed: {\n computationCost:\n transactionBlock.effects?.gasEffects?.gasSummary?.computationCost,\n nonRefundableStorageFee:\n transactionBlock.effects?.gasEffects?.gasSummary?.nonRefundableStorageFee,\n storageCost: transactionBlock.effects?.gasEffects?.gasSummary?.storageCost,\n storageRebate:\n transactionBlock.effects?.gasEffects?.gasSummary?.storageRebate,\n },\n messageVersion: 'v1' as const,\n modifiedAtVersions: transactionBlock.effects?.objectChanges?.nodes\n ?.filter((change) => !change?.idCreated && !change?.idDeleted)\n ?.map((change) => ({\n objectId: change?.inputState?.address,\n sequenceNumber: String(change?.inputState?.version),\n })),\n mutated: transactionBlock.effects?.objectChanges?.nodes\n ?.filter((change) => !change?.idCreated && !change?.idDeleted)\n ?.map((change) => ({\n owner: mapGraphQLOwnerToRpcOwner(change?.outputState?.owner)!,\n reference: {\n digest: change?.outputState?.digest!,\n version: change?.outputState?.version as unknown as string,\n objectId: change?.outputState?.address,\n },\n })),\n\n status: {\n status: transactionBlock.effects?.status?.toLowerCase(),\n } as ExecutionStatus,\n transactionDigest: transactionBlock.digest!,\n // sharedObjects: [], // TODO\n // unwrapped: [], // TODO\n // unwrappedThenDeleted: [], // TODO\n // wrapped: [], // TODO\n }\n : undefined,\n ...(errors ? { errors: errors } : {}),\n events: options?.showEvents\n ? transactionBlock.effects?.events?.nodes.map((event) => ({\n bcs: event.bcs,\n id: {\n eventSeq: '', // TODO\n txDigest: '', // TODO\n },\n packageId: event.sendingModule?.package.address!,\n parsedJson: event.json ? JSON.parse(event.json) : undefined,\n sender: event.sender?.address,\n timestampMs: new Date(event.timestamp).getTime().toString(),\n transactionModule: `${event.sendingModule?.package.address}::${event.sendingModule?.name}`,\n type: toShortTypeString(event.type?.repr)!,\n })) ?? []\n : undefined,\n rawTransaction: options?.showRawInput ? transactionBlock.rawTransaction : undefined,\n ...(options?.showInput\n ? {\n transaction:\n transactionBlock.rawTransaction &&\n mapTransactionBlockToInput(\n bcs.SenderSignedData.parse(fromB64(transactionBlock.rawTransaction))[0],\n ),\n }\n : {}),\n objectChanges: options?.showObjectChanges\n ? transactionBlock.effects?.objectChanges?.nodes\n ?.map((change) =>\n change?.idDeleted\n ? {\n digest: change?.inputState?.digest!,\n objectId: change?.inputState?.address,\n owner: mapGraphQLOwnerToRpcOwner(change.inputState?.owner),\n objectType: toShortTypeString(\n change?.inputState?.asMoveObject?.contents?.type.repr,\n ),\n sender: transactionBlock.sender?.address!,\n type: 'deleted' as const,\n version: change?.inputState?.version.toString()!,\n }\n : {\n digest: change?.outputState?.digest!,\n objectId: change?.outputState?.address,\n owner: mapGraphQLOwnerToRpcOwner(change.outputState?.owner)!,\n objectType: toShortTypeString(\n change?.outputState?.asMoveObject?.contents?.type.repr,\n ),\n ...((typeof change?.inputState?.version === 'number'\n ? { previousVersion: change?.inputState?.version.toString()! }\n : {}) as { previousVersion: string }),\n sender: transactionBlock.sender?.address,\n type: change?.idCreated\n ? ('created' as const)\n : ('mutated' as const),\n version: change?.outputState?.version.toString()!,\n },\n )\n .sort((a, b) => {\n if (a.type === 'created' && b.type === 'deleted') {\n return -1;\n } else if (a.type === 'deleted' && b.type === 'created') {\n return 1;\n }\n return 0;\n })\n : undefined,\n };\n}\n\nexport function mapTransactionBlockToInput(\n data: typeof bcs.SenderSignedTransaction.$inferType,\n): IotaTransactionBlock | null {\n const txData = data.intentMessage.value.V1;\n\n const programableTransaction =\n 'ProgrammableTransaction' in txData.kind ? txData.kind.ProgrammableTransaction : null;\n\n if (!programableTransaction) {\n return null;\n }\n\n return {\n txSignatures: data.txSignatures,\n data: {\n gasData: {\n budget: txData.gasData.budget,\n owner: txData.gasData.owner,\n payment: txData.gasData.payment.map((payment) => ({\n digest: payment.digest,\n objectId: payment.objectId,\n version: Number(payment.version) as never as string,\n })),\n price: txData.gasData.price,\n },\n messageVersion: 'v1',\n sender: txData.sender,\n transaction: mapProgramableTransaction(programableTransaction),\n },\n };\n}\n\nexport function mapProgramableTransaction(\n programableTransaction: typeof bcs.ProgrammableTransaction.$inferType,\n): IotaTransactionBlockKind {\n return {\n inputs: programableTransaction.inputs.map(mapTransactionInput),\n kind: 'ProgrammableTransaction',\n transactions: programableTransaction.transactions.map(mapTransaction),\n };\n}\n\nfunction mapTransactionInput(input: typeof bcs.CallArg.$inferType): IotaCallArg {\n if ('Pure' in input) {\n return {\n type: 'pure',\n value: Uint8Array.from(input.Pure),\n };\n }\n\n if ('Object' in input) {\n if ('ImmOrOwned' in input.Object) {\n return {\n type: 'object',\n digest: input.Object.ImmOrOwned.digest,\n version: input.Object.ImmOrOwned.version,\n objectId: input.Object.ImmOrOwned.objectId,\n objectType: 'immOrOwnedObject',\n };\n }\n if ('Shared' in input.Object) {\n return {\n type: 'object',\n initialSharedVersion: input.Object.Shared.initialSharedVersion,\n objectId: input.Object.Shared.objectId,\n mutable: input.Object.Shared.mutable,\n objectType: 'sharedObject',\n };\n }\n\n if ('Receiving' in input.Object) {\n return {\n type: 'object',\n digest: input.Object.Receiving.digest,\n version: input.Object.Receiving.version,\n objectId: input.Object.Receiving.objectId,\n objectType: 'receiving',\n };\n }\n\n throw new Error(`Unknown object type: ${input.Object}`);\n }\n\n throw new Error(`Unknown input type ${input}`);\n}\n\nfunction mapTransaction(transaction: typeof bcs.Transaction.$inferType): IotaTransaction {\n switch (transaction.kind) {\n case 'MoveCall': {\n const [pkg, module, fn] = transaction.target.split('::');\n return {\n MoveCall: {\n arguments: transaction.arguments.map(mapTransactionArgument),\n function: fn,\n module,\n package: pkg,\n type_arguments: transaction.typeArguments,\n },\n };\n }\n\n case 'MakeMoveVec': {\n return {\n MakeMoveVec: [\n 'Some' in transaction.type\n ? TypeTagSerializer.tagToString(transaction.type.Some)\n : null,\n transaction.objects.map(mapTransactionArgument),\n ],\n };\n }\n case 'MergeCoins': {\n return {\n MergeCoins: [\n mapTransactionArgument(transaction.destination),\n transaction.sources.map(mapTransactionArgument),\n ],\n };\n }\n case 'Publish': {\n return {\n Publish: transaction.modules.map((module) => toB64(Uint8Array.from(module))),\n };\n }\n case 'SplitCoins': {\n return {\n SplitCoins: [\n mapTransactionArgument(transaction.coin),\n transaction.amounts.map(mapTransactionArgument),\n ],\n };\n }\n case 'TransferObjects': {\n return {\n TransferObjects: [\n transaction.objects.map(mapTransactionArgument),\n mapTransactionArgument(transaction.address),\n ],\n };\n }\n case 'Upgrade': {\n return {\n Upgrade: [\n transaction.modules.map((module) => toB64(Uint8Array.from(module))),\n transaction.packageId,\n mapTransactionArgument(transaction.ticket),\n ],\n };\n }\n }\n\n throw new Error(`Unknown transaction type ${transaction}`);\n}\n\nfunction mapTransactionArgument(arg: typeof bcs.Argument.$inferType): IotaArgument {\n switch (arg.kind) {\n case 'GasCoin': {\n return 'GasCoin';\n }\n case 'Input': {\n return {\n Input: arg.index,\n };\n }\n case 'Result': {\n return {\n Result: arg.index,\n };\n }\n case 'NestedResult': {\n return {\n NestedResult: [arg.index, arg.resultIndex],\n };\n }\n }\n\n throw new Error(`Unknown argument type ${arg}`);\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// Modifications Copyright (c) 2024 IOTA Stiftung\n// SPDX-License-Identifier: Apache-2.0\n\nimport { fromB64, toB58 } from '@iota/bcs';\nimport { bcs } from '@iota/iota-sdk/bcs';\nimport type {\n IotaArgument,\n IotaCallArg,\n IotaObjectChange,\n IotaTransaction,\n IotaTransactionBlock,\n IotaTransactionBlockKind,\n IotaTransactionBlockResponse,\n IotaTransactionBlockResponseOptions,\n} from '@iota/iota-sdk/client';\nimport type { IotaObjectRef } from '@iota/iota-sdk/client';\nimport { normalizeIotaAddress } from '@iota/iota-sdk/utils';\n\nimport type { ObjectOut } from '@iota/iota-sdk/src/bcs/effects.js';\nimport type { Rpc_Transaction_FieldsFragment } from '../generated/queries.js';\nimport { toShortTypeString } from './util.js';\n\nexport function mapGraphQLTransactionBlockToRpcTransactionBlock(\n transactionBlock: Rpc_Transaction_FieldsFragment,\n options?: IotaTransactionBlockResponseOptions | null,\n errors?: string[] | null,\n): IotaTransactionBlockResponse {\n const effects = transactionBlock.effects?.bcs ? mapEffects(transactionBlock.effects.bcs) : null;\n\n return {\n balanceChanges: transactionBlock.effects?.balanceChanges?.nodes.map((balanceChange) => ({\n amount: balanceChange?.amount,\n coinType: toShortTypeString(balanceChange?.coinType?.repr),\n owner: balanceChange.owner?.asObject?.address\n ? {\n ObjectOwner: balanceChange.owner?.asObject?.address,\n }\n : {\n AddressOwner: balanceChange.owner?.asAddress?.address!,\n },\n })),\n ...(typeof transactionBlock.effects?.checkpoint?.sequenceNumber === 'number'\n ? { checkpoint: transactionBlock.effects.checkpoint.sequenceNumber.toString() }\n : {}),\n ...(transactionBlock.effects?.timestamp\n ? { timestampMs: new Date(transactionBlock.effects?.timestamp).getTime().toString() }\n : {}),\n digest: transactionBlock.digest!,\n ...(options?.showRawEffects\n ? {\n rawEffects: transactionBlock.effects?.bcs\n ? Array.from(fromB64(transactionBlock.effects?.bcs))\n : undefined,\n }\n : {}),\n effects: options?.showEffects ? effects : undefined,\n ...(errors ? { errors: errors } : {}),\n events:\n transactionBlock.effects?.events?.nodes.map((event) => ({\n bcs: event.bcs,\n id: {\n eventSeq: '', // TODO\n txDigest: '', // TODO\n },\n packageId: event.sendingModule?.package.address!,\n parsedJson: event.json ? JSON.parse(event.json) : undefined,\n sender: event.sender?.address,\n timestampMs: new Date(event.timestamp).getTime().toString(),\n transactionModule: `${event.sendingModule?.package.address}::${event.sendingModule?.name}`,\n type: toShortTypeString(event.type?.repr)!,\n })) ?? [],\n rawTransaction: options?.showRawInput ? transactionBlock.rawTransaction : undefined,\n ...(options?.showInput\n ? {\n transaction:\n transactionBlock.rawTransaction &&\n mapTransactionBlockToInput(\n bcs.SenderSignedData.parse(fromB64(transactionBlock.rawTransaction))[0],\n ),\n }\n : {}),\n objectChanges: options?.showObjectChanges\n ? mapObjectChanges(transactionBlock, effects)\n : undefined,\n };\n}\n\nfunction mapObjectChanges(\n transactionBlock: Rpc_Transaction_FieldsFragment,\n effects: IotaTransactionBlockResponse['effects'],\n) {\n const changes: IotaObjectChange[] = [];\n\n effects?.mutated?.forEach((mutated) => {\n const objectChange = transactionBlock.effects?.objectChanges?.nodes.find(\n (change) => change.address === mutated.reference.objectId,\n );\n changes.push({\n type: 'mutated',\n digest: mutated.reference.digest,\n previousVersion: String(objectChange?.inputState?.version),\n objectId: mutated.reference.objectId,\n owner: mutated.owner,\n objectType: toShortTypeString(\n objectChange?.outputState?.asMoveObject?.contents?.type.repr!,\n ),\n sender: transactionBlock.sender?.address!,\n version: mutated.reference.version?.toString(),\n });\n });\n\n effects?.created?.forEach((created) => {\n const objectChange = transactionBlock.effects?.objectChanges?.nodes.find(\n (change) => change.address === created.reference.objectId,\n );\n\n if (objectChange?.outputState?.asMovePackage) {\n changes.push({\n type: 'published',\n digest: created.reference.digest,\n version: created.reference.version?.toString(),\n packageId: objectChange.address,\n modules: objectChange.outputState.asMovePackage.modules?.nodes.map(\n (module) => module.name,\n )!,\n });\n } else {\n changes.push({\n type: 'created',\n digest: created.reference.digest,\n objectId: created.reference.objectId,\n owner: created.owner,\n objectType: toShortTypeString(\n transactionBlock.effects?.objectChanges?.nodes.find(\n (change) => change.address === created.reference.objectId,\n )?.outputState?.asMoveObject?.contents?.type.repr!,\n ),\n sender: transactionBlock.sender?.address!,\n version: created.reference.version?.toString(),\n });\n }\n });\n\n effects?.deleted?.forEach((deleted) => {\n changes.push({\n type: 'deleted',\n objectId: deleted.objectId,\n objectType: toShortTypeString(\n transactionBlock.effects?.objectChanges?.nodes.find(\n (change) => change.address === deleted.objectId,\n )?.inputState?.asMoveObject?.contents?.type.repr!,\n ),\n sender: transactionBlock.sender?.address!,\n version: deleted.version?.toString(),\n });\n });\n\n effects?.unwrapped?.forEach((unwrapped) => {\n changes.push({\n type: 'wrapped',\n objectId: unwrapped.reference.objectId,\n objectType: toShortTypeString(\n transactionBlock.effects?.objectChanges?.nodes.find(\n (change) => change.address === unwrapped.reference.objectId,\n )?.outputState?.asMoveObject?.contents?.type.repr!,\n ),\n sender: transactionBlock.sender?.address!,\n version: unwrapped.reference.version?.toString(),\n });\n });\n\n return changes;\n}\n\nexport function mapTransactionBlockToInput(\n data: typeof bcs.SenderSignedTransaction.$inferType,\n): IotaTransactionBlock | null {\n const txData = data.intentMessage.value.V1;\n\n const programableTransaction =\n 'ProgrammableTransaction' in txData.kind ? txData.kind.ProgrammableTransaction : null;\n\n if (!programableTransaction) {\n return null;\n }\n\n return {\n txSignatures: data.txSignatures,\n data: {\n gasData: {\n budget: txData.gasData.budget,\n owner: txData.gasData.owner,\n payment: txData.gasData.payment.map((payment) => ({\n digest: payment.digest,\n objectId: payment.objectId,\n version: Number(payment.version) as never as string,\n })),\n price: txData.gasData.price,\n },\n messageVersion: 'v1',\n sender: txData.sender,\n transaction: mapProgramableTransaction(programableTransaction),\n },\n };\n}\n\nexport function mapProgramableTransaction(\n programableTransaction: typeof bcs.ProgrammableTransaction.$inferType,\n): IotaTransactionBlockKind {\n return {\n inputs: programableTransaction.inputs.map(mapTransactionInput),\n kind: 'ProgrammableTransaction',\n transactions: programableTransaction.commands.map(mapTransaction),\n };\n}\n\nfunction mapTransactionInput(input: typeof bcs.CallArg.$inferType): IotaCallArg {\n if (input.Pure) {\n return {\n type: 'pure',\n value: fromB64(input.Pure.bytes),\n };\n }\n\n if (input.Object.ImmOrOwnedObject) {\n return {\n type: 'object',\n digest: input.Object.ImmOrOwnedObject.digest,\n version: input.Object.ImmOrOwnedObject.version,\n objectId: input.Object.ImmOrOwnedObject.objectId,\n objectType: 'immOrOwnedObject',\n };\n }\n if (input.Object.SharedObject) {\n return {\n type: 'object',\n initialSharedVersion: input.Object.SharedObject.initialSharedVersion,\n objectId: input.Object.SharedObject.objectId,\n mutable: input.Object.SharedObject.mutable,\n objectType: 'sharedObject',\n };\n }\n\n if (input.Object.Receiving) {\n return {\n type: 'object',\n digest: input.Object.Receiving.digest,\n version: input.Object.Receiving.version,\n objectId: input.Object.Receiving.objectId,\n objectType: 'receiving',\n };\n }\n\n throw new Error(`Unknown object type: ${input.Object}`);\n}\n\nfunction mapTransaction(transaction: typeof bcs.Command.$inferType): IotaTransaction {\n switch (transaction.$kind) {\n case 'MoveCall': {\n return {\n MoveCall: {\n arguments: transaction.MoveCall.arguments.map(mapTransactionArgument),\n function: transaction.MoveCall.function,\n module: transaction.MoveCall.module,\n package: transaction.MoveCall.package,\n type_arguments: transaction.MoveCall.typeArguments,\n },\n };\n }\n\n case 'MakeMoveVec': {\n return {\n MakeMoveVec: [\n transaction.MakeMoveVec.type,\n transaction.MakeMoveVec.elements.map(mapTransactionArgument),\n ],\n };\n }\n case 'MergeCoins': {\n return {\n MergeCoins: [\n mapTransactionArgument(transaction.MergeCoins.destination),\n transaction.MergeCoins.sources.map(mapTransactionArgument),\n ],\n };\n }\n case 'Publish': {\n return {\n Publish: transaction.Publish.modules.map((module) => module),\n };\n }\n case 'SplitCoins': {\n return {\n SplitCoins: [\n mapTransactionArgument(transaction.SplitCoins.coin),\n transaction.SplitCoins.amounts.map(mapTransactionArgument),\n ],\n };\n }\n case 'TransferObjects': {\n return {\n TransferObjects: [\n transaction.TransferObjects.objects.map(mapTransactionArgument),\n mapTransactionArgument(transaction.TransferObjects.address),\n ],\n };\n }\n case 'Upgrade': {\n return {\n Upgrade: [\n transaction.Upgrade.modules.map((module) => module),\n transaction.Upgrade.package,\n mapTransactionArgument(transaction.Upgrade.ticket),\n ],\n };\n }\n }\n\n throw new Error(`Unknown transaction type ${transaction}`);\n}\n\nfunction mapTransactionArgument(arg: typeof bcs.Argument.$inferType): IotaArgument {\n switch (arg.$kind) {\n case 'GasCoin': {\n return 'GasCoin';\n }\n case 'Input': {\n return {\n Input: arg.Input,\n };\n }\n case 'Result': {\n return {\n Result: arg.Result,\n };\n }\n case 'NestedResult': {\n return {\n NestedResult: arg.NestedResult,\n };\n }\n }\n\n throw new Error(`Unknown argument type ${arg}`);\n}\n\nconst OBJECT_DIGEST_DELETED = toB58(Uint8Array.from({ length: 32 }, () => 99));\nconst OBJECT_DIGEST_WRAPPED = toB58(Uint8Array.from({ length: 32 }, () => 88));\nconst OBJECT_DIGEST_ZERO = toB58(Uint8Array.from({ length: 32 }, () => 0));\nconst ADDRESS_ZERO = normalizeIotaAddress('0x0');\n\nexport function mapEffects(data: string): IotaTransactionBlockResponse['effects'] {\n const effects = bcs.TransactionEffects.parse(fromB64(data));\n\n type InferedOwner = Exclude<(typeof ObjectOut)['$inferType']['ObjectWrite'], undefined>[1];\n\n const sharedObjects = effects.V1.unchangedSharedObjects.map(([id, sharedObject]) => {\n switch (sharedObject.$kind) {\n case 'ReadOnlyRoot':\n return {\n objectId: id,\n version: Number(sharedObject.ReadOnlyRoot[0]) as unknown as string,\n digest: sharedObject.ReadOnlyRoot[1],\n };\n case 'MutateDeleted':\n return {\n objectId: id,\n version: Number(sharedObject.MutateDeleted) as unknown as string,\n digest: OBJECT_DIGEST_DELETED,\n };\n case 'ReadDeleted':\n return {\n objectId: id,\n version: Number(sharedObject.ReadDeleted) as unknown as string,\n digest: OBJECT_DIGEST_DELETED,\n };\n default:\n throw new Error(`Unknown shared object type: ${sharedObject}`);\n }\n });\n\n effects.V1.changedObjects\n .filter(([_id, change]) => change.inputState.Exist?.[1].Shared)\n .forEach(([id, change]) => {\n sharedObjects.push({\n objectId: id,\n version: Number(change.inputState.Exist![0][0]) as unknown as string,\n digest: change.inputState.Exist![0][1],\n });\n });\n\n const modifiedAtVersions = effects.V1.changedObjects\n .filter(([_id, change]) => change.inputState.Exist)\n .map(([id, change]) => [id, change.inputState.Exist![0][0]] as const);\n\n const created = effects.V1.changedObjects\n .filter(\n ([_id, change]) =>\n change.inputState.NotExist &&\n (change.outputState.ObjectWrite || change.outputState.PackageWrite) &&\n change.idOperation.Created,\n )\n .map(([objectId, change]) =>\n change.outputState.PackageWrite\n ? ([\n {\n objectId,\n version: Number(change.outputState.PackageWrite[0]) as unknown as string,\n digest: change.outputState.PackageWrite[1],\n },\n { $kind: 'Immutable', Immutable: true },\n ] as const)\n : ([\n {\n objectId,\n version: Number(effects.V1.lamportVersion) as unknown as string,\n digest: change.outputState.ObjectWrite![0],\n },\n change.outputState.ObjectWrite![1],\n ] as const),\n );\n\n const mutated: Array<[IotaObjectRef, InferedOwner]> = effects.V1.changedObjects\n .filter(\n ([_id, change]) =>\n change.inputState.Exist &&\n (change.outputState.ObjectWrite || change.outputState.PackageWrite),\n )\n .map(([objectId, change]) => [\n change.outputState.PackageWrite\n ? {\n objectId,\n version: Number(change.outputState.PackageWrite[0]) as unknown as string,\n digest: change.outputState.PackageWrite[1],\n }\n : {\n objectId,\n version: Number(effects.V1.lamportVersion) as unknown as string,\n digest: change.outputState.ObjectWrite![0],\n },\n change.outputState.ObjectWrite\n ? change.outputState.ObjectWrite[1]\n : { $kind: 'Immutable', Immutable: true },\n ]);\n\n const unwrapped: Array<[IotaObjectRef, InferedOwner]> = effects.V1.changedObjects\n .filter(\n ([_id, change]) =>\n change.inputState.NotExist &&\n change.outputState.ObjectWrite &&\n change.idOperation.None,\n )\n .map(([objectId, change]) => [\n {\n objectId,\n version: Number(effects.V1.lamportVersion) as unknown as string,\n digest: change.outputState.ObjectWrite![0],\n },\n change.outputState.ObjectWrite![1],\n ]);\n\n const deleted = effects.V1.changedObjects\n .filter(\n ([_id, change]) =>\n change.inputState.Exist &&\n change.outputState.NotExist &&\n change.idOperation.Deleted,\n )\n .map(([objectId, _change]) => ({\n objectId,\n version: Number(effects.V1.lamportVersion) as unknown as string,\n digest: OBJECT_DIGEST_DELETED,\n }));\n\n const unwrappedThenDeleted = effects.V1.changedObjects\n .filter(\n ([_id, change]) =>\n change.inputState.NotExist &&\n change.outputState.NotExist &&\n change.idOperation.Deleted,\n )\n .map(([objectId, _change]) => ({\n objectId,\n version: Number(effects.V1.lamportVersion) as unknown as string,\n digest: OBJECT_DIGEST_DELETED,\n }));\n\n const wrapped = effects.V1.changedObjects\n .filter(\n ([_id, change]) =>\n change.inputState.Exist && change.outputState.NotExist && change.idOperation.None,\n )\n .map(([objectId, _change]) => ({\n objectId,\n version: Number(effects.V1.lamportVersion) as unknown as string,\n digest: OBJECT_DIGEST_WRAPPED,\n }));\n\n const gasObjectFromV1 =\n effects.V1.gasObjectIndex != null\n ? effects.V1.changedObjects[effects.V1.gasObjectIndex]\n : null;\n\n const gasObject: [IotaObjectRef, InferedOwner] = gasObjectFromV1\n ? [\n {\n objectId: gasObjectFromV1[0],\n digest: gasObjectFromV1[1].outputState.ObjectWrite![0],\n version: Number(effects.V1.lamportVersion) as unknown as string,\n },\n gasObjectFromV1[1].outputState.ObjectWrite![1],\n ]\n : [\n {\n objectId: ADDRESS_ZERO,\n version: '0',\n digest: OBJECT_DIGEST_ZERO,\n },\n {\n $kind: 'AddressOwner',\n AddressOwner: ADDRESS_ZERO,\n },\n ];\n\n return {\n messageVersion: 'v1',\n status: effects.V1.status.Success\n ? {\n status: 'success',\n }\n : {\n status: 'failure',\n // TODO: we don't have the error message from bcs effects\n error: effects.V1.status.$kind,\n },\n executedEpoch: effects.V1.executedEpoch,\n gasUsed: effects.V1.gasUsed,\n modifiedAtVersions: modifiedAtVersions.map(([objectId, sequenceNumber]) => ({\n objectId,\n sequenceNumber,\n })),\n ...(sharedObjects.length === 0 ? {} : { sharedObjects }),\n transactionDigest: effects.V1.transactionDigest,\n ...(created.length === 0\n ? {}\n : {\n created: created.map(([reference, owner]) => ({\n reference,\n owner: mapEffectsOwner(owner),\n })),\n }),\n ...(mutated.length === 0\n ? {}\n : {\n mutated: mutated.map(([reference, owner]) => ({\n reference,\n owner: mapEffectsOwner(owner as InferedOwner),\n })),\n }),\n ...(unwrapped.length === 0\n ? {}\n : {\n unwrapped:\n unwrapped.length === 0\n ? undefined\n : unwrapped.map(([reference, owner]) => ({\n reference,\n owner: mapEffectsOwner(owner as InferedOwner),\n })),\n }),\n ...(deleted.length === 0 ? {} : { deleted: deleted }),\n ...(unwrappedThenDeleted.length === 0\n ? {}\n : { unwrappedThenDeleted: unwrappedThenDeleted }),\n ...(wrapped.length === 0 ? {} : { wrapped: wrapped }),\n gasObject: {\n reference: gasObject[0],\n owner: mapEffectsOwner(gasObject[1]),\n },\n ...(effects.V1.eventsDigest ? { eventsDigest: effects.V1.eventsDigest } : {}),\n dependencies: effects.V1.dependencies,\n };\n\n function mapEffectsOwner(owner: NonNullable<InferedOwner>) {\n if (owner.Immutable) {\n return 'Immutable';\n } else if (owner.Shared) {\n return { Shared: { initial_shared_version: owner.Shared.initialSharedVersion } };\n } else if (owner.AddressOwner) {\n return { AddressOwner: owner.AddressOwner };\n } else if (owner.ObjectOwner) {\n return { ObjectOwner: owner.ObjectOwner };\n }\n\n throw new Error(`Unknown owner type: ${owner}`);\n }\n}\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -16,10 +16,9 @@ function mapGraphQlValidatorToRpcValidator(validator) {
16
16
  nextEpochP2pAddress: validator.nextEpochCredentials?.p2PAddress,
17
17
  nextEpochPrimaryAddress: validator.nextEpochCredentials?.primaryAddress,
18
18
  nextEpochProofOfPossession: validator.nextEpochCredentials?.proofOfPossession,
19
- nextEpochProtocolPubkeyBytes: validator.nextEpochCredentials?.protocolPubKey,
19
+ nextEpochAuthorityPubkeyBytes: validator.nextEpochCredentials?.authorityPubKey,
20
20
  nextEpochStake: validator.nextEpochStake,
21
- nextEpochWorkerAddress: validator.nextEpochCredentials?.workerAddress,
22
- nextEpochWorkerPubkeyBytes: validator.nextEpochCredentials?.workerPubKey,
21
+ nextEpochProtocolPubkeyBytes: validator.nextEpochCredentials?.protocolPubKey,
23
22
  operationCapId: validator.operationCap?.address,
24
23
  p2pAddress: validator.credentials?.p2PAddress,
25
24
  pendingTotalIotaWithdraw: validator.pendingTotalIotaWithdraw,
@@ -29,15 +28,14 @@ function mapGraphQlValidatorToRpcValidator(validator) {
29
28
  primaryAddress: validator.credentials?.primaryAddress,
30
29
  projectUrl: validator.projectUrl,
31
30
  proofOfPossessionBytes: validator.credentials?.proofOfPossession,
31
+ authorityPubkeyBytes: validator.credentials?.authorityPubKey,
32
32
  protocolPubkeyBytes: validator.credentials?.protocolPubKey,
33
33
  rewardsPool: validator.rewardsPool,
34
34
  stakingPoolId: validator.stakingPool?.address,
35
35
  stakingPoolActivationEpoch: validator.stakingPoolActivationEpoch?.toString(),
36
36
  stakingPoolIotaBalance: validator.stakingPoolIotaBalance,
37
37
  iotaAddress: validator.address.address,
38
- votingPower: validator.votingPower?.toString(),
39
- workerAddress: validator.credentials?.workerAddress,
40
- workerPubkeyBytes: validator.credentials?.workerPubKey
38
+ votingPower: validator.votingPower?.toString()
41
39
  };
42
40
  }
43
41
  export {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/mappers/validator.ts"],
4
- "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// Modifications Copyright (c) 2024 IOTA Stiftung\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { IotaValidatorSummary } from '@iota/iota-sdk/client';\n\nimport type { Rpc_Validator_FieldsFragment } from '../generated/queries.js';\n\nexport function mapGraphQlValidatorToRpcValidator(\n validator: Rpc_Validator_FieldsFragment,\n): IotaValidatorSummary {\n return {\n commissionRate: validator.commissionRate?.toString()!,\n description: validator.description!,\n exchangeRatesId: validator.exchangeRates?.address!,\n exchangeRatesSize: validator.exchangeRatesSize?.toString()!,\n gasPrice: validator.gasPrice,\n imageUrl: validator.imageUrl!,\n name: validator.name!,\n netAddress: validator.credentials?.netAddress!,\n networkPubkeyBytes: validator.credentials?.networkPubKey!,\n nextEpochCommissionRate: validator.nextEpochCommissionRate?.toString()!,\n nextEpochGasPrice: validator.nextEpochGasPrice,\n nextEpochNetAddress: validator.nextEpochCredentials?.netAddress,\n nextEpochNetworkPubkeyBytes: validator.nextEpochCredentials?.networkPubKey,\n nextEpochP2pAddress: validator.nextEpochCredentials?.p2PAddress,\n nextEpochPrimaryAddress: validator.nextEpochCredentials?.primaryAddress,\n nextEpochProofOfPossession: validator.nextEpochCredentials?.proofOfPossession,\n nextEpochProtocolPubkeyBytes: validator.nextEpochCredentials?.protocolPubKey,\n nextEpochStake: validator.nextEpochStake!,\n nextEpochWorkerAddress: validator.nextEpochCredentials?.workerAddress,\n nextEpochWorkerPubkeyBytes: validator.nextEpochCredentials?.workerPubKey,\n operationCapId: validator.operationCap?.address!,\n p2pAddress: validator.credentials?.p2PAddress!,\n pendingTotalIotaWithdraw: validator.pendingTotalIotaWithdraw,\n pendingPoolTokenWithdraw: validator.pendingPoolTokenWithdraw,\n poolTokenBalance: validator.poolTokenBalance,\n pendingStake: validator.pendingStake,\n primaryAddress: validator.credentials?.primaryAddress!,\n projectUrl: validator.projectUrl!,\n proofOfPossessionBytes: validator.credentials?.proofOfPossession,\n protocolPubkeyBytes: validator.credentials?.protocolPubKey,\n rewardsPool: validator.rewardsPool,\n stakingPoolId: validator.stakingPool?.address!,\n stakingPoolActivationEpoch: validator.stakingPoolActivationEpoch?.toString(),\n stakingPoolIotaBalance: validator.stakingPoolIotaBalance,\n iotaAddress: validator.address.address,\n votingPower: validator.votingPower?.toString()!,\n workerAddress: validator.credentials?.workerAddress!,\n workerPubkeyBytes: validator.credentials?.workerPubKey,\n };\n}\n"],
5
- "mappings": "AAQO,SAAS,kCACZ,WACoB;AACpB,SAAO;AAAA,IACH,gBAAgB,UAAU,gBAAgB,SAAS;AAAA,IACnD,aAAa,UAAU;AAAA,IACvB,iBAAiB,UAAU,eAAe;AAAA,IAC1C,mBAAmB,UAAU,mBAAmB,SAAS;AAAA,IACzD,UAAU,UAAU;AAAA,IACpB,UAAU,UAAU;AAAA,IACpB,MAAM,UAAU;AAAA,IAChB,YAAY,UAAU,aAAa;AAAA,IACnC,oBAAoB,UAAU,aAAa;AAAA,IAC3C,yBAAyB,UAAU,yBAAyB,SAAS;AAAA,IACrE,mBAAmB,UAAU;AAAA,IAC7B,qBAAqB,UAAU,sBAAsB;AAAA,IACrD,6BAA6B,UAAU,sBAAsB;AAAA,IAC7D,qBAAqB,UAAU,sBAAsB;AAAA,IACrD,yBAAyB,UAAU,sBAAsB;AAAA,IACzD,4BAA4B,UAAU,sBAAsB;AAAA,IAC5D,8BAA8B,UAAU,sBAAsB;AAAA,IAC9D,gBAAgB,UAAU;AAAA,IAC1B,wBAAwB,UAAU,sBAAsB;AAAA,IACxD,4BAA4B,UAAU,sBAAsB;AAAA,IAC5D,gBAAgB,UAAU,cAAc;AAAA,IACxC,YAAY,UAAU,aAAa;AAAA,IACnC,0BAA0B,UAAU;AAAA,IACpC,0BAA0B,UAAU;AAAA,IACpC,kBAAkB,UAAU;AAAA,IAC5B,cAAc,UAAU;AAAA,IACxB,gBAAgB,UAAU,aAAa;AAAA,IACvC,YAAY,UAAU;AAAA,IACtB,wBAAwB,UAAU,aAAa;AAAA,IAC/C,qBAAqB,UAAU,aAAa;AAAA,IAC5C,aAAa,UAAU;AAAA,IACvB,eAAe,UAAU,aAAa;AAAA,IACtC,4BAA4B,UAAU,4BAA4B,SAAS;AAAA,IAC3E,wBAAwB,UAAU;AAAA,IAClC,aAAa,UAAU,QAAQ;AAAA,IAC/B,aAAa,UAAU,aAAa,SAAS;AAAA,IAC7C,eAAe,UAAU,aAAa;AAAA,IACtC,mBAAmB,UAAU,aAAa;AAAA,EAC9C;AACJ;",
4
+ "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// Modifications Copyright (c) 2024 IOTA Stiftung\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { IotaValidatorSummary } from '@iota/iota-sdk/client';\n\nimport type { Rpc_Validator_FieldsFragment } from '../generated/queries.js';\n\nexport function mapGraphQlValidatorToRpcValidator(\n validator: Rpc_Validator_FieldsFragment,\n): IotaValidatorSummary {\n return {\n commissionRate: validator.commissionRate?.toString()!,\n description: validator.description!,\n exchangeRatesId: validator.exchangeRates?.address!,\n exchangeRatesSize: validator.exchangeRatesSize?.toString()!,\n gasPrice: validator.gasPrice,\n imageUrl: validator.imageUrl!,\n name: validator.name!,\n netAddress: validator.credentials?.netAddress!,\n networkPubkeyBytes: validator.credentials?.networkPubKey!,\n nextEpochCommissionRate: validator.nextEpochCommissionRate?.toString()!,\n nextEpochGasPrice: validator.nextEpochGasPrice,\n nextEpochNetAddress: validator.nextEpochCredentials?.netAddress,\n nextEpochNetworkPubkeyBytes: validator.nextEpochCredentials?.networkPubKey,\n nextEpochP2pAddress: validator.nextEpochCredentials?.p2PAddress,\n nextEpochPrimaryAddress: validator.nextEpochCredentials?.primaryAddress,\n nextEpochProofOfPossession: validator.nextEpochCredentials?.proofOfPossession,\n nextEpochAuthorityPubkeyBytes: validator.nextEpochCredentials?.authorityPubKey,\n nextEpochStake: validator.nextEpochStake!,\n nextEpochProtocolPubkeyBytes: validator.nextEpochCredentials?.protocolPubKey,\n operationCapId: validator.operationCap?.address!,\n p2pAddress: validator.credentials?.p2PAddress!,\n pendingTotalIotaWithdraw: validator.pendingTotalIotaWithdraw,\n pendingPoolTokenWithdraw: validator.pendingPoolTokenWithdraw,\n poolTokenBalance: validator.poolTokenBalance,\n pendingStake: validator.pendingStake,\n primaryAddress: validator.credentials?.primaryAddress!,\n projectUrl: validator.projectUrl!,\n proofOfPossessionBytes: validator.credentials?.proofOfPossession,\n authorityPubkeyBytes: validator.credentials?.authorityPubKey,\n protocolPubkeyBytes: validator.credentials?.protocolPubKey,\n rewardsPool: validator.rewardsPool,\n stakingPoolId: validator.stakingPool?.address!,\n stakingPoolActivationEpoch: validator.stakingPoolActivationEpoch?.toString(),\n stakingPoolIotaBalance: validator.stakingPoolIotaBalance,\n iotaAddress: validator.address.address,\n votingPower: validator.votingPower?.toString()!,\n };\n}\n"],
5
+ "mappings": "AAQO,SAAS,kCACZ,WACoB;AACpB,SAAO;AAAA,IACH,gBAAgB,UAAU,gBAAgB,SAAS;AAAA,IACnD,aAAa,UAAU;AAAA,IACvB,iBAAiB,UAAU,eAAe;AAAA,IAC1C,mBAAmB,UAAU,mBAAmB,SAAS;AAAA,IACzD,UAAU,UAAU;AAAA,IACpB,UAAU,UAAU;AAAA,IACpB,MAAM,UAAU;AAAA,IAChB,YAAY,UAAU,aAAa;AAAA,IACnC,oBAAoB,UAAU,aAAa;AAAA,IAC3C,yBAAyB,UAAU,yBAAyB,SAAS;AAAA,IACrE,mBAAmB,UAAU;AAAA,IAC7B,qBAAqB,UAAU,sBAAsB;AAAA,IACrD,6BAA6B,UAAU,sBAAsB;AAAA,IAC7D,qBAAqB,UAAU,sBAAsB;AAAA,IACrD,yBAAyB,UAAU,sBAAsB;AAAA,IACzD,4BAA4B,UAAU,sBAAsB;AAAA,IAC5D,+BAA+B,UAAU,sBAAsB;AAAA,IAC/D,gBAAgB,UAAU;AAAA,IAC1B,8BAA8B,UAAU,sBAAsB;AAAA,IAC9D,gBAAgB,UAAU,cAAc;AAAA,IACxC,YAAY,UAAU,aAAa;AAAA,IACnC,0BAA0B,UAAU;AAAA,IACpC,0BAA0B,UAAU;AAAA,IACpC,kBAAkB,UAAU;AAAA,IAC5B,cAAc,UAAU;AAAA,IACxB,gBAAgB,UAAU,aAAa;AAAA,IACvC,YAAY,UAAU;AAAA,IACtB,wBAAwB,UAAU,aAAa;AAAA,IAC/C,sBAAsB,UAAU,aAAa;AAAA,IAC7C,qBAAqB,UAAU,aAAa;AAAA,IAC5C,aAAa,UAAU;AAAA,IACvB,eAAe,UAAU,aAAa;AAAA,IACtC,4BAA4B,UAAU,4BAA4B,SAAS;AAAA,IAC3E,wBAAwB,UAAU;AAAA,IAClC,aAAa,UAAU,QAAQ;AAAA,IAC/B,aAAa,UAAU,aAAa,SAAS;AAAA,EACjD;AACJ;",
6
6
  "names": []
7
7
  }
@@ -1,5 +1,5 @@
1
1
  import { fromB64, toB58 } from "@iota/bcs";
2
- import { TransactionBlock } from "@iota/iota-sdk/transactions";
2
+ import { Transaction } from "@iota/iota-sdk/transactions";
3
3
  import { normalizeStructTag, normalizeIotaAddress, parseStructTag } from "@iota/iota-sdk/utils";
4
4
  import {
5
5
  DevInspectTransactionBlockDocument,
@@ -42,8 +42,6 @@ import {
42
42
  PaginateTransactionBlockListsDocument,
43
43
  QueryEventsDocument,
44
44
  QueryTransactionBlocksDocument,
45
- ResolveNameServiceAddressDocument,
46
- ResolveNameServiceNamesDocument,
47
45
  TransactionBlockKindInput,
48
46
  TryGetPastObjectDocument
49
47
  } from "./generated/queries.js";
@@ -144,8 +142,7 @@ const RPC_METHODS = {
144
142
  return {
145
143
  coinType: toShortTypeString(balance.coinType?.repr),
146
144
  coinObjectCount: balance.coinObjectCount,
147
- totalBalance: balance.totalBalance,
148
- lockedBalance: {}
145
+ totalBalance: balance.totalBalance
149
146
  };
150
147
  },
151
148
  async getAllBalances(transport, inputs) {
@@ -161,8 +158,7 @@ const RPC_METHODS = {
161
158
  return balances.map((balance) => ({
162
159
  coinType: toShortTypeString(balance.coinType?.repr),
163
160
  coinObjectCount: balance.coinObjectCount,
164
- totalBalance: balance.totalBalance,
165
- lockedBalance: {}
161
+ totalBalance: balance.totalBalance
166
162
  }));
167
163
  },
168
164
  async getCoinMetadata(transport, inputs) {
@@ -513,6 +509,7 @@ const RPC_METHODS = {
513
509
  ...pagination,
514
510
  showBalanceChanges: options?.showBalanceChanges,
515
511
  showEffects: options?.showEffects,
512
+ showRawEffects: options?.showRawEffects,
516
513
  showObjectChanges: options?.showObjectChanges,
517
514
  showRawInput: options?.showRawInput,
518
515
  showInput: options?.showInput,
@@ -551,6 +548,7 @@ const RPC_METHODS = {
551
548
  digest,
552
549
  showBalanceChanges: options?.showBalanceChanges,
553
550
  showEffects: options?.showEffects,
551
+ showRawEffects: options?.showRawEffects,
554
552
  showObjectChanges: options?.showObjectChanges,
555
553
  showRawInput: options?.showRawInput,
556
554
  showInput: options?.showInput
@@ -569,6 +567,7 @@ const RPC_METHODS = {
569
567
  digests,
570
568
  showBalanceChanges: options?.showBalanceChanges,
571
569
  showEffects: options?.showEffects,
570
+ showRawEffects: options?.showEffects,
572
571
  showObjectChanges: options?.showObjectChanges,
573
572
  showRawInput: options?.showRawInput,
574
573
  showInput: options?.showInput,
@@ -664,7 +663,9 @@ const RPC_METHODS = {
664
663
  epochStartTimestampMs: String(new Date(systemState.startTimestamp).getTime()),
665
664
  inactivePoolsSize: String(systemState.validatorSet?.inactivePoolsSize),
666
665
  iotaTotalSupply: String(systemState.iotaTotalSupply),
666
+ iotaTreasuryCapId: String(systemState.iotaTreasuryCapId),
667
667
  maxValidatorCount: String(systemState.systemParameters?.maxValidatorCount),
668
+ minValidatorCount: String(systemState.systemParameters?.minValidatorCount),
668
669
  minValidatorJoiningStake: String(
669
670
  systemState.systemParameters?.minValidatorJoiningStake
670
671
  ),
@@ -694,14 +695,10 @@ const RPC_METHODS = {
694
695
  validatorReportRecords: [],
695
696
  // TODO
696
697
  validatorVeryLowStakeThreshold: systemState.systemParameters?.validatorVeryLowStakeThreshold,
697
- validatorCandidatesId: "",
698
- // TODO
699
- inactivePoolsId: "",
700
- // TODO
701
- pendingActiveValidatorsId: "",
702
- // TODO
703
- stakingPoolMappingsId: ""
704
- // TODO
698
+ validatorCandidatesId: systemState.validatorSet?.validatorCandidatesId,
699
+ inactivePoolsId: systemState.validatorSet?.inactivePoolsId,
700
+ pendingActiveValidatorsId: systemState.validatorSet?.pendingActiveValidatorsId,
701
+ stakingPoolMappingsId: systemState.validatorSet?.stakingPoolMappingsId
705
702
  };
706
703
  },
707
704
  async queryEvents(transport, [query, cursor, limit, descending]) {
@@ -824,7 +821,7 @@ const RPC_METHODS = {
824
821
  cursor
825
822
  }
826
823
  },
827
- (data) => data.object?.dynamicFields
824
+ (data) => data.owner?.dynamicFields
828
825
  );
829
826
  return {
830
827
  data: fields.map((field) => ({
@@ -866,7 +863,7 @@ const RPC_METHODS = {
866
863
  }
867
864
  },
868
865
  (data) => {
869
- return data.object?.dynamicObjectField?.value?.__typename === "MoveObject" ? data.object.dynamicObjectField.value.owner?.__typename === "Parent" ? data.object.dynamicObjectField.value.owner.parent : void 0 : void 0;
866
+ return data.owner?.dynamicObjectField?.value?.__typename === "MoveObject" ? data.owner.dynamicObjectField.value.owner?.__typename === "Parent" ? data.owner.dynamicObjectField.value.owner.parent : void 0 : void 0;
870
867
  }
871
868
  );
872
869
  return {
@@ -891,7 +888,7 @@ const RPC_METHODS = {
891
888
  }
892
889
  };
893
890
  },
894
- async executeTransactionBlock(transport, [txBytes, signatures, options, _requestType]) {
891
+ async executeTransactionBlock(transport, [txBytes, signatures, options]) {
895
892
  const { effects, errors } = await transport.graphqlQuery(
896
893
  {
897
894
  query: ExecuteTransactionBlockDocument,
@@ -900,6 +897,7 @@ const RPC_METHODS = {
900
897
  signatures,
901
898
  showBalanceChanges: options?.showBalanceChanges,
902
899
  showEffects: options?.showEffects,
900
+ showRawEffects: options?.showRawEffects,
903
901
  showInput: options?.showInput,
904
902
  showEvents: options?.showEvents,
905
903
  showObjectChanges: options?.showObjectChanges,
@@ -909,8 +907,8 @@ const RPC_METHODS = {
909
907
  (data) => data.executeTransactionBlock
910
908
  );
911
909
  if (!effects?.transactionBlock) {
912
- const txb = TransactionBlock.from(fromB64(txBytes));
913
- return { errors: errors ?? void 0, digest: await txb.getDigest() };
910
+ const tx = Transaction.from(fromB64(txBytes));
911
+ return { errors: errors ?? void 0, digest: await tx.getDigest() };
914
912
  }
915
913
  await paginateTransactionBlockLists(transport, effects.transactionBlock);
916
914
  return mapGraphQLTransactionBlockToRpcTransactionBlock(
@@ -920,7 +918,7 @@ const RPC_METHODS = {
920
918
  );
921
919
  },
922
920
  async dryRunTransactionBlock(transport, [txBytes]) {
923
- const txb = TransactionBlock.from(fromB64(txBytes));
921
+ const tx = Transaction.from(fromB64(txBytes));
924
922
  const { transaction, error } = await transport.graphqlQuery(
925
923
  {
926
924
  query: DryRunTransactionBlockDocument,
@@ -939,7 +937,7 @@ const RPC_METHODS = {
939
937
  throw new Error(error ?? "Unexpected error during dry run");
940
938
  }
941
939
  const result = mapGraphQLTransactionBlockToRpcTransactionBlock(
942
- { ...transaction, digest: await txb.getDigest() },
940
+ { ...transaction, digest: await tx.getDigest() },
943
941
  {
944
942
  showBalanceChanges: true,
945
943
  showEffects: true,
@@ -1035,7 +1033,7 @@ const RPC_METHODS = {
1035
1033
  return {
1036
1034
  epoch: epochId.toString(),
1037
1035
  validators: validatorSet?.activeValidators?.nodes.map((val) => [
1038
- val.credentials?.protocolPubKey,
1036
+ val.credentials?.authorityPubKey,
1039
1037
  String(val.votingPower)
1040
1038
  ])
1041
1039
  };
@@ -1073,7 +1071,7 @@ const RPC_METHODS = {
1073
1071
  // TODO
1074
1072
  firstCheckpointId: epoch.firstCheckpoint?.nodes[0]?.sequenceNumber.toString(),
1075
1073
  endOfEpochInfo: null,
1076
- referenceGasPrice: Number.parseInt(epoch.referenceGasPrice, 10),
1074
+ referenceGasPrice: epoch.referenceGasPrice,
1077
1075
  epochStartTimestamp: new Date(epoch.startTimestamp).getTime().toString()
1078
1076
  };
1079
1077
  },
@@ -1141,6 +1139,7 @@ const RPC_METHODS = {
1141
1139
  max_type_argument_depth: "u32",
1142
1140
  max_type_arguments: "u32",
1143
1141
  move_binary_format_version: "u32",
1142
+ min_move_binary_format_version: "u32",
1144
1143
  random_beacon_reduction_allowed_delta: "u16",
1145
1144
  random_beacon_dkg_timeout_round: "u32",
1146
1145
  random_beacon_reduction_lower_bound: "u32",
@@ -1161,7 +1160,8 @@ const RPC_METHODS = {
1161
1160
  binary_field_handles: "u16",
1162
1161
  binary_field_instantiations: "u16",
1163
1162
  binary_friend_decls: "u16",
1164
- max_package_dependencies: "u32"
1163
+ max_package_dependencies: "u32",
1164
+ bridge_should_try_to_finalize_committee: "bool"
1165
1165
  };
1166
1166
  for (const { key, value } of protocolConfig.configs) {
1167
1167
  attributes[key] = value === null ? null : {
@@ -1178,33 +1178,6 @@ const RPC_METHODS = {
1178
1178
  attributes,
1179
1179
  featureFlags
1180
1180
  };
1181
- },
1182
- async resolveNameServiceAddress(transport, [name]) {
1183
- const data = await transport.graphqlQuery({
1184
- query: ResolveNameServiceAddressDocument,
1185
- variables: {
1186
- domain: name
1187
- }
1188
- });
1189
- return data.resolveIotansAddress?.address ?? null;
1190
- },
1191
- async resolveNameServiceNames(transport, [address, cursor, limit]) {
1192
- const iotansRegistrations = await transport.graphqlQuery(
1193
- {
1194
- query: ResolveNameServiceNamesDocument,
1195
- variables: {
1196
- address,
1197
- cursor,
1198
- limit
1199
- }
1200
- },
1201
- (data) => data.address?.iotansRegistrations
1202
- );
1203
- return {
1204
- hasNextPage: iotansRegistrations.pageInfo.hasNextPage,
1205
- nextCursor: iotansRegistrations.pageInfo.endCursor ?? null,
1206
- data: iotansRegistrations?.nodes.map((node) => node.domain) ?? []
1207
- };
1208
1181
  }
1209
1182
  };
1210
1183
  class UnsupportedParamError extends Error {
@@ -1221,12 +1194,10 @@ async function paginateTransactionBlockLists(transport, transactionBlock) {
1221
1194
  let hasMoreEvents = transactionBlock.effects?.events?.pageInfo.hasNextPage ?? false;
1222
1195
  let hasMoreBalanceChanges = transactionBlock.effects?.balanceChanges?.pageInfo.hasNextPage ?? false;
1223
1196
  let hasMoreObjectChanges = transactionBlock.effects?.objectChanges?.pageInfo.hasNextPage ?? false;
1224
- let hasMoreDependencies = transactionBlock.effects?.dependencies?.pageInfo.hasNextPage ?? false;
1225
1197
  let afterEvents = transactionBlock.effects?.events?.pageInfo.endCursor;
1226
1198
  let afterBalanceChanges = transactionBlock.effects?.balanceChanges?.pageInfo.endCursor;
1227
1199
  let afterObjectChanges = transactionBlock.effects?.objectChanges?.pageInfo.endCursor;
1228
- let afterDependencies = transactionBlock.effects?.dependencies?.pageInfo.endCursor;
1229
- while (hasMoreEvents || hasMoreBalanceChanges || hasMoreObjectChanges || hasMoreDependencies) {
1200
+ while (hasMoreEvents || hasMoreBalanceChanges || hasMoreObjectChanges) {
1230
1201
  const page = await transport.graphqlQuery(
1231
1202
  {
1232
1203
  query: PaginateTransactionBlockListsDocument,
@@ -1235,11 +1206,9 @@ async function paginateTransactionBlockLists(transport, transactionBlock) {
1235
1206
  afterEvents,
1236
1207
  afterBalanceChanges,
1237
1208
  afterObjectChanges,
1238
- afterDependencies,
1239
1209
  hasMoreEvents,
1240
1210
  hasMoreBalanceChanges,
1241
- hasMoreObjectChanges,
1242
- hasMoreDependencies
1211
+ hasMoreObjectChanges
1243
1212
  }
1244
1213
  },
1245
1214
  (data) => data.transactionBlock?.effects
@@ -1247,15 +1216,12 @@ async function paginateTransactionBlockLists(transport, transactionBlock) {
1247
1216
  transactionBlock.effects?.events?.nodes.push(...page.events?.nodes ?? []);
1248
1217
  transactionBlock.effects?.balanceChanges?.nodes.push(...page.balanceChanges?.nodes ?? []);
1249
1218
  transactionBlock.effects?.objectChanges?.nodes.push(...page.objectChanges?.nodes ?? []);
1250
- transactionBlock.effects?.dependencies?.nodes.push(...page.dependencies?.nodes ?? []);
1251
1219
  hasMoreEvents = page.events?.pageInfo.hasNextPage ?? false;
1252
1220
  hasMoreBalanceChanges = page.balanceChanges?.pageInfo.hasNextPage ?? false;
1253
1221
  hasMoreObjectChanges = page.objectChanges?.pageInfo.hasNextPage ?? false;
1254
- hasMoreDependencies = page.dependencies?.pageInfo.hasNextPage ?? false;
1255
1222
  afterEvents = page.events?.pageInfo.endCursor;
1256
1223
  afterBalanceChanges = page.balanceChanges?.pageInfo.endCursor;
1257
1224
  afterObjectChanges = page.objectChanges?.pageInfo.endCursor;
1258
- afterDependencies = page.dependencies?.pageInfo.endCursor;
1259
1225
  }
1260
1226
  }
1261
1227
  async function paginateCheckpointLists(transport, checkpoint) {