TransactionSEALED
○?^@○╳▓▫@*~!#◇▫◆!╳▫◇╳▪╲▒?○○▓█○○╱◆█&?!$■╳~▪◇&%$█%!#█▪●○$╱▒◇$▒╲█▒╲
Transaction ID
Execution Error
Error Code: 1007
checking sequence number failed: [Error Code: 1007] invalid proposal key: public key 0 on account 215f3ac76cb49656 has sequence number 2496, but given 2495
Raw Error
[Error Code: 1007] error caused by: 1 error occurred: * checking sequence number failed: [Error Code: 1007] invalid proposal key: public key 0 on account 215f3ac76cb49656 has sequence number 2496, but given 2495
Transaction Summary
Transaction
Script Arguments
Copy:
0amountUFix64
10.00000000
1metadata{String: String}
{
"submitter": "0x51a48b94ab5cb04f"
}Cadence Script
1/// point24/transactions/mint.cdc
2
3import FungibleToken from 0xf233dcee88fe0abe
4import FungibleTokenMetadataViews from 0xf233dcee88fe0abe
5import NonFungibleToken from 0x1d7e57aa55817448
6import MetadataViews from 0x1d7e57aa55817448
7import POINT24 from 0x215f3ac76cb49656
8
9transaction(
10 amount: UFix64,
11 metadata: {String: String}
12) {
13 /// Reference to the Token Minter Resource object
14 let tokenAdmin: &POINT24.Administrator
15 let tokenReceiver: &{FungibleToken.Receiver}
16
17 prepare(
18 minter: auth(BorrowValue) &Account,
19 receiver: auth(BorrowValue, IssueStorageCapabilityController, PublishCapability, SaveValue, UnpublishCapability) &Account
20 ) {
21
22 let vaultData = POINT24.resolveContractView(resourceType: nil, viewType: Type<FungibleTokenMetadataViews.FTVaultData>()) as! FungibleTokenMetadataViews.FTVaultData?
23 ?? panic("ViewResolver does not resolve FTVaultData view")
24
25 // enable receiver token
26 if receiver.storage.borrow<&POINT24.Vault>(from: vaultData.storagePath) == nil {
27 let vault <- POINT24.createEmptyVault(vaultType: Type<@POINT24.Vault>())
28
29 // Create a new POINT24 Vault and put it in storage
30 receiver.storage.save(<-vault, to: vaultData.storagePath)
31
32 // Create a public capability to the Vault that exposes the Vault interfaces
33 let vaultCap = receiver.capabilities.storage.issue<&POINT24.Vault>(vaultData.storagePath)
34 receiver.capabilities.publish(vaultCap, at: vaultData.metadataPath)
35
36 // Create a public Capability to the Vault's Receiver functionality
37 let receiverCap = receiver.capabilities.storage.issue<&POINT24.Vault>(vaultData.storagePath)
38 receiver.capabilities.publish(receiverCap, at: vaultData.receiverPath)
39 }
40
41 self.tokenAdmin = minter.storage.borrow<&POINT24.Administrator>(from: POINT24.AdminStoragePath)
42 ?? panic("Signer is not the token admin")
43
44 self.tokenReceiver = getAccount(receiver.address).capabilities.borrow<&{FungibleToken.Receiver}>(vaultData.receiverPath)
45 ?? panic("Could not borrow receiver reference to the Vault")
46
47 }
48
49 execute {
50 if amount > UFix64(0) {
51 // Create mint tokens
52 let tokenMinter <- self.tokenAdmin.createNewMinter()
53
54 let mintedVault <- tokenMinter.mintTokens(amount: amount, metadata: metadata)
55
56 // Deposit them to the receiever
57 self.tokenReceiver.deposit(from: <-mintedVault)
58
59 destroy tokenMinter
60 }
61 }
62}