MarketplaceSEALED

▓▫■◇●○▪%╳▓?○#^▫@●?●◆▒╳$■^@╳╲#~╲●@!▫%■~%▓●▫○^▫╱▫■▒╱╱%╱◇▫●!^■●◆?▫$

Transaction ID

Timestamp

Jan 27, 2026, 09:38:24 AM UTC
1mo ago

Block Height

140,235,368

Computation

0

Execution Fee

0.0025 FLOW

Transaction Summary

Marketplace

Called FungibleToken, NonFungibleToken, FazeUtilityCoin +2 more

Script Arguments

0listingResourceIDs[UInt64]
[
  "190215514081572"
]
1sellerCuts[UFix64]
[
  "4.32000000"
]
2beneficiaryCuts[UFix64]
[
  "0.48000000"
]
3beneficiaryAddressAddress
4taxCuts[UFix64]
[
  "0.00000000"
]
5taxAddressAddress
6sellerFTAddressAddress

Cadence Script

1import FungibleToken from 0xf233dcee88fe0abe
2import NonFungibleToken from 0x1d7e57aa55817448
3import FazeUtilityCoin from 0x4eded0de73020ca5
4import CricketMoments from 0x4eded0de73020ca5
5import NFTStorefront from 0x4eb8a10cb9f87357
6
7transaction(listingResourceIDs: [UInt64], sellerCuts: [UFix64], beneficiaryCuts:[UFix64], beneficiaryAddress: Address, taxCuts:[UFix64], taxAddress:Address, sellerFTAddress: Address) {
8
9    let sellerFazeUtilityCoinReceiver: Capability<&FazeUtilityCoin.Vault>
10    let beneficiaryFazeUtilityCoinReceiver: Capability<&FazeUtilityCoin.Vault>
11    let taxFazeUtilityCoinReceiver: Capability<&FazeUtilityCoin.Vault>
12    let cricketMomentsProvider: Capability<auth(NonFungibleToken.Withdraw) &CricketMoments.Collection>
13    let storefront: auth(NFTStorefront.CreateListing, NFTStorefront.RemoveListing) &NFTStorefront.Storefront
14    let listings: [&{NFTStorefront.ListingPublic}]
15
16    prepare(account: auth(BorrowValue, Capabilities, SaveValue) &Account) {
17        self.sellerFazeUtilityCoinReceiver = getAccount(sellerFTAddress).capabilities.get<&FazeUtilityCoin.Vault>(FazeUtilityCoin.ReceiverPublicPath)
18        self.beneficiaryFazeUtilityCoinReceiver = getAccount(beneficiaryAddress).capabilities.get<&FazeUtilityCoin.Vault>(FazeUtilityCoin.ReceiverPublicPath)
19        self.taxFazeUtilityCoinReceiver = getAccount(taxAddress).capabilities.get<&FazeUtilityCoin.Vault>(FazeUtilityCoin.ReceiverPublicPath)
20        
21        assert(self.sellerFazeUtilityCoinReceiver.borrow() != nil, message: "Missing or mis-typed seller FazeUtilityCoin receiver")
22        assert(self.beneficiaryFazeUtilityCoinReceiver.borrow() != nil, message: "Missing or mis-typed beneficiary FazeUtilityCoin receiver")
23        assert(self.taxFazeUtilityCoinReceiver.borrow() != nil, message: "Missing or mis-typed tax FazeUtilityCoin receiver")
24
25        self.cricketMomentsProvider = account.capabilities.storage.issue<auth(NonFungibleToken.Withdraw) &CricketMoments.Collection>(CricketMoments.CollectionStoragePath)
26        assert(self.cricketMomentsProvider.borrow() != nil, message: "Missing or mis-typed CricketMoments.Collection provider")
27
28        self.storefront = account.storage.borrow<auth(NFTStorefront.CreateListing, NFTStorefront.RemoveListing) &NFTStorefront.Storefront>(from: NFTStorefront.StorefrontStoragePath)
29            ?? panic("Missing or mis-typed NFTStorefront Storefront")
30
31        self.listings = []
32        for listingResourceID in listingResourceIDs {
33            let listing = self.storefront.borrowListing(listingResourceID: listingResourceID)!
34            self.listings.append(listing)
35        }
36    }
37
38    execute {
39        
40        for index, listing in self.listings {
41            let sellerSaleCut = NFTStorefront.SaleCut(
42                receiver: self.sellerFazeUtilityCoinReceiver,
43                amount: sellerCuts[index]
44            )
45
46            let beneficiarySaleCut = NFTStorefront.SaleCut(
47                receiver: self.beneficiaryFazeUtilityCoinReceiver,
48                amount: beneficiaryCuts[index]
49            )
50
51            let taxSaleCut = NFTStorefront.SaleCut(
52                receiver: self.taxFazeUtilityCoinReceiver,
53                amount: taxCuts[index]
54            )
55
56            self.storefront.createListing(
57                nftProviderCapability: self.cricketMomentsProvider,
58                nftType: listing.getDetails().nftType,
59                nftID: listing.getDetails().nftID,
60                salePaymentVaultType: listing.getDetails().salePaymentVaultType,
61                saleCuts: taxCuts[index]>0.0? [sellerSaleCut, beneficiarySaleCut, taxSaleCut]:[sellerSaleCut, beneficiarySaleCut]
62            )
63
64            self.storefront.removeListing(listingResourceID: listingResourceIDs[index])
65        }
66    }
67}