@@ -14,27 +14,30 @@ import (
14
14
)
15
15
16
16
var (
17
- placeholderNonFungibleToken = regexp .MustCompile (`"NonFungibleToken"` )
18
- nonFungibleTokenImport = "NonFungibleToken from "
19
- placeholderMetadataViews = regexp .MustCompile (`"MetadataViews"` )
20
- metadataViewsImport = "MetadataViews from "
21
- placeholderFungibleToken = regexp .MustCompile (`"FungibleToken"` )
22
- fungibleTokenImport = "FungibleToken from "
23
- placeholderResolver = regexp .MustCompile (`"ViewResolver"` )
24
- viewResolverImport = "ViewResolver from "
25
- placeholderUniversalCollection = regexp .MustCompile (`"UniversalCollection"` )
26
- universalCollectionImport = "UniversalCollection from "
17
+ placeholderNonFungibleToken = regexp .MustCompile (`"NonFungibleToken"` )
18
+ nonFungibleTokenImport = "NonFungibleToken from "
19
+ placeholderMetadataViews = regexp .MustCompile (`"MetadataViews"` )
20
+ metadataViewsImport = "MetadataViews from "
21
+ placeholderFungibleToken = regexp .MustCompile (`"FungibleToken"` )
22
+ fungibleTokenImport = "FungibleToken from "
23
+ placeholderResolver = regexp .MustCompile (`"ViewResolver"` )
24
+ viewResolverImport = "ViewResolver from "
25
+ placeholderUniversalCollection = regexp .MustCompile (`"UniversalCollection"` )
26
+ universalCollectionImport = "UniversalCollection from "
27
+ placeholderCrossVMMetadataViews = regexp .MustCompile (`"CrossVMMetadataViews"` )
28
+ crossVMMetadataViewsImport = "CrossVMMetadataViews from "
27
29
)
28
30
29
31
const (
30
- filenameNonFungibleToken = "NonFungibleToken.cdc"
31
- filenameExampleNFT = "ExampleNFT.cdc"
32
- filenameMetadataViews = "MetadataViews.cdc"
33
- filenameNFTMetadataViews = "NFTMetadataViews.cdc"
34
- filenameViewResolver = "ViewResolver.cdc"
35
- filenameUniversalCollection = "UniversalCollection.cdc"
36
- filenameBasicNFT = "BasicNFT.cdc"
37
- filenameFungibleToken = "utility/FungibleToken.cdc"
32
+ filenameNonFungibleToken = "NonFungibleToken.cdc"
33
+ filenameExampleNFT = "ExampleNFT.cdc"
34
+ filenameMetadataViews = "MetadataViews.cdc"
35
+ filenameCrossVMMetadataViews = "CrossVMMetadataViews.cdc"
36
+ filenameNFTMetadataViews = "NFTMetadataViews.cdc"
37
+ filenameViewResolver = "ViewResolver.cdc"
38
+ filenameUniversalCollection = "UniversalCollection.cdc"
39
+ filenameBasicNFT = "BasicNFT.cdc"
40
+ filenameFungibleToken = "utility/FungibleToken.cdc"
38
41
)
39
42
40
43
func withHexPrefix (address string ) string {
@@ -84,6 +87,14 @@ func ViewResolver() []byte {
84
87
return []byte (code )
85
88
}
86
89
90
+ func CrossVMMetadataViews (evmAddress string ) []byte {
91
+ code := assets .MustAssetString (filenameCrossVMMetadataViews )
92
+
93
+ code = placeholderFungibleToken .ReplaceAllString (code , fungibleTokenImport + withHexPrefix (evmAddress ))
94
+
95
+ return []byte (code )
96
+ }
97
+
87
98
func UniversalCollection (nftAddress , resolverAddress , metadataAddress flow.Address ) []byte {
88
99
code := assets .MustAssetString (filenameUniversalCollection )
89
100
code = placeholderMetadataViews .ReplaceAllString (code , metadataViewsImport + withHexPrefix (metadataAddress .String ()))
0 commit comments