TransactionSEALED
*#■▓#▪▓░▪!●░╱◆▫▪○◆╱█░▫▒●╳░■█■○#█@█▪^$&■○!╱○◇%▫╳○●◆@▓▫▓*&■●▫╳~╲╲~
Transaction ID
Execution Fee
0.00001672 FLOWTransaction Summary
Contract CallCalled PDS, PackNFT, TopShot +2 more
Script Arguments
0distIdUInt64
1603
1packIdUInt64
98956047488285
2nftContractAddrs[Address]
3nftContractName[String]
[ "TopShot", "TopShot", "TopShot" ]
4nftIds[UInt64]
[ "47122353", "47130099", "47142615" ]
5saltString
e779da5b82c4acf26edc75fbf24d61b70b596d8502a1c559e267f578595e3146
6ownerAddress
7openRequestBool
true
8NFTProviderPathPrivatePath?
null
Cadence Script
1import PDS from 0xb6f2481eba4df97b
2import PackNFT from 0x0b2a3299cc857e29
3import TopShot from 0x0b2a3299cc857e29
4import NonFungibleToken from 0x1d7e57aa55817448
5import DapperStorageRent from 0xa08e88e23f332538
6
7transaction (
8 distId: UInt64,
9 packId: UInt64,
10 nftContractAddrs: [Address],
11 nftContractName: [String],
12 nftIds: [UInt64],
13 salt: String,
14 owner: Address,
15 openRequest: Bool,
16 NFTProviderPath: PrivatePath?
17) {
18 prepare(pds: AuthAccount) {
19 DapperStorageRent.tryRefill(owner)
20 let cap = pds.borrow<&PDS.DistributionManager>(from: PDS.DistManagerStoragePath) ?? panic("pds does not have Dist manager")
21 let p = PackNFT.borrowPackRepresentation(id: packId) ?? panic ("No such pack")
22 if openRequest && p.status == PackNFT.Status.Revealed {
23 let recvAcct = getAccount(owner)
24 let recv = recvAcct.getCapability(/public/MomentCollection).borrow<&{NonFungibleToken.CollectionPublic}>()
25 ?? panic("Unable to borrow Collection Public reference for recipient")
26 cap.openPackNFT(
27 distId: distId,
28 packId: packId,
29 nftContractAddrs: nftContractAddrs,
30 nftContractName: nftContractName,
31 nftIds: nftIds,
32 recvCap: recv,
33 collectionProviderPath: NFTProviderPath
34 )
35 } else {
36 cap.revealPackNFT(
37 distId: distId,
38 packId: packId,
39 nftContractAddrs: nftContractAddrs,
40 nftContractName: nftContractName,
41 nftIds: nftIds,
42 salt: salt)
43 }
44 }
45}