Skip to content
Merged
Show file tree
Hide file tree
Changes from 7 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion bindings/go/examples/dev_inspect/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ func main() {
name := "name.iota"
fmt.Printf("Looking up name: %s\n", name)

builder := sdk.TransactionBuilderInit(sender, client)
builder := sdk.NewTransactionBuilder(sender).WithClient(client)

// Create identifiers
iotaNamesModule := identifier("iota_names")
Expand Down
2 changes: 1 addition & 1 deletion bindings/go/examples/gas_sponsor/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ func main() {
sender := addrFromHex("0x0000a4984bd495d4346fa208ddff4f5d5e5ad48c21dec631ddebc99809f16900")
sponsor := addrFromHex("0x611830d3641a68f94a690dcc25d1f4b0dac948325ac18f6dd32564371735f32c")

builder := sdk.TransactionBuilderInit(sender, client)
builder := sdk.NewTransactionBuilder(sender).WithClient(client)

packageAddr := sdk.AddressStdLib()
moduleName := identifier("u8")
Expand Down
2 changes: 1 addition & 1 deletion bindings/go/examples/gas_station/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ func main() {
sender := keypair.PublicKey().DeriveAddress()
simpleKey := sdk.SimpleKeypairFromEd25519(keypair)

builder := sdk.TransactionBuilderInit(sender, client)
builder := sdk.NewTransactionBuilder(sender).WithClient(client)

package_id := sdk.AddressStdLib()
module_name := identifier("u64")
Expand Down
2 changes: 1 addition & 1 deletion bindings/go/examples/generic_move_function/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ func main() {

sender := addrFromHex("0x71b4b4f171b4355ff691b7c470579cf1a926f96f724e5f9a30efc4b5f75d085e")

builder := sdk.TransactionBuilderInit(sender, client)
builder := sdk.NewTransactionBuilder(sender).WithClient(client)

addr1 := addrFromHex("0xde49ea53fbadee67d3e35a097cdbea210b659676fc680a0b0c5f11d0763d375e")
addr2 := addrFromHex("0xe512234aa4ef6184c52663f09612b68f040dd0c45de037d96190a071ca5525b3")
Expand Down
2 changes: 1 addition & 1 deletion bindings/go/examples/prepare_merge_coins/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ func main() {
coin0 := objIdFromHex("0x0b0270ee9d27da0db09651e5f7338dfa32c7ee6441ccefa1f6e305735bcfc7ab")
coin1 := objIdFromHex("0xd04077fe3b6fad13b3d4ed0d535b7ca92afcac8f0f2a0e0925fb9f4f0b30c699")

builder := sdk.TransactionBuilderInit(sender, client)
builder := sdk.NewTransactionBuilder(sender).WithClient(client)
builder.MergeCoins(coin0, []*sdk.PtbArgument{coin1})

txn, err := builder.Finish()
Expand Down
2 changes: 1 addition & 1 deletion bindings/go/examples/prepare_send_coins/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ func main() {
coinObjId := objIdFromHex("0x8ef4259fa2a3499826fa4b8aebeb1d8e478cf5397d05361c96438940b43d28c9")
amount := sdk.PtbArgumentU64(50000000000)

builder := sdk.TransactionBuilderInit(fromAddress, client)
builder := sdk.NewTransactionBuilder(fromAddress).WithClient(client)
builder.SendCoins([]*sdk.PtbArgument{coinObjId}, toAddress, &amount)

txn, err := builder.Finish()
Expand Down
2 changes: 1 addition & 1 deletion bindings/go/examples/prepare_send_iota/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ func main() {

toAddress := addrFromHex("0x0000a4984bd495d4346fa208ddff4f5d5e5ad48c21dec631ddebc99809f16900")

builder := sdk.TransactionBuilderInit(fromAddress, client)
builder := sdk.NewTransactionBuilder(fromAddress).WithClient(client)
builder.SendIota(toAddress, sdk.PtbArgumentU64(5000000000))

txn, err := builder.Finish()
Expand Down
2 changes: 1 addition & 1 deletion bindings/go/examples/prepare_send_iota_multi/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ func main() {
{"0x2222b466a24399ebcf5ec0f04820812ae20fea1037c736cfec608753aa38b522", 2_000_000_000},
}

builder := sdk.TransactionBuilderInit(sender, client)
builder := sdk.NewTransactionBuilder(sender).WithClient(client)

// Prepare amounts and labels
var amounts []*sdk.PtbArgument
Expand Down
2 changes: 1 addition & 1 deletion bindings/go/examples/prepare_split_coins/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ func main() {

coinObjId := objIdFromHex("0x0b0270ee9d27da0db09651e5f7338dfa32c7ee6441ccefa1f6e305735bcfc7ab")

builder := sdk.TransactionBuilderInit(sender, client)
builder := sdk.NewTransactionBuilder(sender).WithClient(client)
builder.SplitCoins(
sdk.PtbArgumentObjectId(coinObjId),
[]*sdk.PtbArgument{
Expand Down
2 changes: 1 addition & 1 deletion bindings/go/examples/prepare_transfer_objects/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ func main() {
objIdFromHex("0x8ef4259fa2a3499826fa4b8aebeb1d8e478cf5397d05361c96438940b43d28c9"),
}

builder := sdk.TransactionBuilderInit(fromAddress, client)
builder := sdk.NewTransactionBuilder(fromAddress).WithClient(client)
builder.TransferObjects(toAddress, objsToTransfer)

txn, err := builder.Finish()
Expand Down
90 changes: 90 additions & 0 deletions bindings/go/examples/prepare_transfer_objects_offline/main.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
// Copyright (c) 2025 IOTA Stiftung
// SPDX-License-Identifier: Apache-2.0

package main

import (
"log"

sdk "bindings/iota_sdk_ffi"
)

func objIdFromHex(hex string) *sdk.ObjectId {
id, err := sdk.ObjectIdFromHex(hex)
if err != nil {
log.Fatalf("Failed to parse object ID: %v", err)
}
return id
}

func addrFromHex(hex string) *sdk.Address {
address, err := sdk.AddressFromHex(hex)
if err != nil {
log.Fatalf("Failed to parse address: %v", err)
}
return address
}

func getObject(client *sdk.GraphQlClient, objId *sdk.ObjectId) *sdk.Object {
obj, err := client.Object(objId, nil)
if err.(*sdk.SdkFfiError) != nil {
log.Fatalf("Failed to get object: %v", err)
}
if obj == nil {
log.Fatalf("Missing object: %v", objId)
}
return *obj
}

func main() {
client := sdk.GraphQlClientNewDevnet()

fromAddress := addrFromHex("0x611830d3641a68f94a690dcc25d1f4b0dac948325ac18f6dd32564371735f32c")

toAddress := addrFromHex("0x0000a4984bd495d4346fa208ddff4f5d5e5ad48c21dec631ddebc99809f16900")

objIds := []*sdk.ObjectId{
objIdFromHex("0xd04077fe3b6fad13b3d4ed0d535b7ca92afcac8f0f2a0e0925fb9f4f0b30c699"),
objIdFromHex("0x0b0270ee9d27da0db09651e5f7338dfa32c7ee6441ccefa1f6e305735bcfc7ab"),
objIdFromHex("0x8ef4259fa2a3499826fa4b8aebeb1d8e478cf5397d05361c96438940b43d28c9"),
}
objsToTransfer := []*sdk.PtbArgument{}
for _, objId := range objIds {
obj := getObject(client, objId)
objsToTransfer = append(objsToTransfer, sdk.PtbArgumentObjectRef(obj.ObjectRef()))
}

gasCoinId := objIdFromHex("0xd04077fe3b6fad13b3d4ed0d535b7ca92afcac8f0f2a0e0925fb9f4f0b30c699")
gasCoin := getObject(client, gasCoinId).ObjectRef()

gasPrice, err := client.ReferenceGasPrice(nil)
if err.(*sdk.SdkFfiError) != nil {
log.Fatalf("Failed to get gas price: %v", err)
}
if gasPrice == nil {
*gasPrice = uint64(100)
}

builder := sdk.NewTransactionBuilder(fromAddress)
builder.TransferObjects(toAddress, objsToTransfer)
builder.Gas([]sdk.ObjectReference{gasCoin}).GasPrice(*gasPrice).GasBudget(500000000)

txn, err := builder.Finish()
if err != nil {
log.Fatalf("Failed to create transaction: %v", err)
}

log.Printf("Signing Digest: %v", txn.SigningDigestHex())
log.Printf("Txn Bytes: %v", txn.ToBase64())

res, err := client.DryRunTx(txn, false)
if err.(*sdk.SdkFfiError) != nil {
log.Fatalf("Failed to transfer objects: %v", err)
}

if res.Error != nil {
log.Fatalf("Failed to transfer objects: %v", *res.Error)
}

log.Print("Transfer objects dry run was successful!")
}
4 changes: 2 additions & 2 deletions bindings/go/examples/publish_upgrade/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ func main() {
client := sdk.GraphQlClientNewLocalnet()

// Build the `publish` PTB
builderPublish := sdk.TransactionBuilderInit(sender, client)
builderPublish := sdk.NewTransactionBuilder(sender).WithClient(client)
// Publish the package and receive the upgrade cap in return
builderPublish.Publish(packageData, "upgrade_cap")
// Transfer the upgrade cap to the sender address
Expand Down Expand Up @@ -145,7 +145,7 @@ func main() {
}

// Build the `upgrade` PTB
builderUpgrade := sdk.TransactionBuilderInit(sender, client)
builderUpgrade := sdk.NewTransactionBuilder(sender).WithClient(client)

// Authorize the upgrade by providing the upgrade cap object id to receive an upgrade
// ticket
Expand Down
2 changes: 1 addition & 1 deletion bindings/go/examples/sign_send_iota/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ func main() {

client := sdk.GraphQlClientNewLocalnet()

builder := sdk.TransactionBuilderInit(senderAddress, client)
builder := sdk.ClientTransactionBuilderInit(senderAddress, client)
builder.SendIota(recipientAddress, sdk.PtbArgumentU64(1000))
txn, err := builder.Finish()
if err.(*sdk.SdkFfiError) != nil {
Expand Down
2 changes: 1 addition & 1 deletion bindings/go/examples/stake/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ func main() {
}
log.Printf("Staking to validator %v", validatorName)

builder := sdk.TransactionBuilderInit(myAddress, client)
builder := sdk.ClientTransactionBuilderInit(myAddress, client)

builder.Stake(sdk.PtbArgumentU64(1000000000), validator.Address)

Expand Down
2 changes: 1 addition & 1 deletion bindings/go/examples/tx_command_results/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ func main() {

sender := addrFromHex("0x611830d3641a68f94a690dcc25d1f4b0dac948325ac18f6dd32564371735f32c")

builder := sdk.TransactionBuilderInit(sender, client)
builder := sdk.NewTransactionBuilder(sender).WithClient(client)

packageAddr := sdk.AddressStdLib()
moduleName := identifier("u64")
Expand Down
2 changes: 1 addition & 1 deletion bindings/go/examples/unstake/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ func main() {
}
stakedIota := stakedIotas.Data[0]

builder := sdk.TransactionBuilderInit(stakedIota.Owner().AsAddress(), client)
builder := sdk.ClientTransactionBuilderInit(stakedIota.Owner().AsAddress(), client)
builder.Unstake(sdk.PtbArgumentObjectId(stakedIota.ObjectId()))

res, err := builder.DryRun(false)
Expand Down
Loading
Loading