1- import { getContractId , Manager , Nft , Registry , Resolver } from '../src' ;
1+ import { Manager , Nft , Registry , Resolver , getContractId } from '../src' ;
22import { logger , setup } from './utils' ;
33
4- const main = async ( ) => {
5- const { provider, wallet } = await setup ( ) ;
6-
7- const managerId = getContractId ( provider . url , 'manager' ) ;
8- const resolverId = getContractId ( provider . url , 'resolver' ) ;
9- const registryId = getContractId ( provider . url , 'registry' ) ;
10- const nftId = getContractId ( provider . url , 'nft' ) ;
11-
12- const manager = new Manager ( managerId , wallet ) ;
13- const resolver = new Resolver ( resolverId , wallet ) ;
14- const registry = new Registry ( registryId , wallet ) ;
4+ export const constructNft = async ( wallet : any , registryId : string ) => {
5+ const nftId = getContractId ( wallet . provider . url , 'nft' ) ;
156 const nft = new Nft ( nftId , wallet ) ;
167
178 try {
18- const { value : nftOwner } = await manager . functions . owner ( ) . get ( ) ;
9+ const { value : nftOwner } = await nft . functions . owner ( ) . get ( ) ;
1910
2011 // @ts -ignore
2112 if ( nftOwner === 'Uninitialized' ) {
2213 const nftConstruct = await nft . functions
2314 . constructor (
2415 { Address : { bits : wallet . address . toB256 ( ) } } ,
25- { ContractId : { bits : registryId } } ,
16+ { ContractId : { bits : registryId } }
2617 )
2718 . call ( ) ;
2819 await nftConstruct . waitForResult ( ) ;
@@ -44,6 +35,13 @@ const main = async () => {
4435 }
4536 }
4637
38+ return nftId ;
39+ } ;
40+
41+ export const constructManager = async ( wallet : any , registryId : string ) => {
42+ const managerId = getContractId ( wallet . provider . url , 'manager' ) ;
43+ const manager = new Manager ( managerId , wallet ) ;
44+
4745 try {
4846 const { value : managerOwner } = await manager . functions . owner ( ) . get ( ) ;
4947
@@ -52,7 +50,7 @@ const main = async () => {
5250 const managerConstruct = await manager . functions
5351 . constructor (
5452 { Address : { bits : wallet . address . toB256 ( ) } } ,
55- { ContractId : { bits : registryId } } ,
53+ { ContractId : { bits : registryId } }
5654 )
5755 . call ( ) ;
5856 await managerConstruct . waitForResult ( ) ;
@@ -74,6 +72,13 @@ const main = async () => {
7472 }
7573 }
7674
75+ return managerId ;
76+ } ;
77+
78+ export const constructResolver = async ( wallet : any , managerId : string ) => {
79+ const resolverId = getContractId ( wallet . provider . url , 'resolver' ) ;
80+ const resolver = new Resolver ( resolverId , wallet ) ;
81+
7782 try {
7883 const resolverConstruct = await resolver . functions
7984 . constructor ( { bits : managerId } )
@@ -88,12 +93,23 @@ const main = async () => {
8893 }
8994 }
9095
96+ return resolverId ;
97+ } ;
98+
99+ export const constructRegistry = async (
100+ wallet : any ,
101+ managerId : string ,
102+ nftId : string
103+ ) => {
104+ const registryId = getContractId ( wallet . provider . url , 'registry' ) ;
105+ const registry = new Registry ( registryId , wallet ) ;
106+
91107 try {
92108 const registryConstruct = await registry . functions
93109 . constructor (
94110 { bits : wallet . address . toB256 ( ) } ,
95111 { bits : managerId } ,
96- { bits : nftId } ,
112+ { bits : nftId }
97113 )
98114 . call ( ) ;
99115 await registryConstruct . waitForResult ( ) ;
@@ -105,6 +121,19 @@ const main = async () => {
105121 logger . error ( 'Registry construct failed' , e ) ;
106122 }
107123 }
124+
125+ return registryId ;
126+ } ;
127+
128+ const main = async ( ) => {
129+ const { provider, wallet } = await setup ( ) ;
130+
131+ const registryId = getContractId ( provider . url , 'registry' ) ;
132+
133+ const nftId = await constructNft ( wallet , registryId ) ;
134+ const managerId = await constructManager ( wallet , registryId ) ;
135+ await constructResolver ( wallet , managerId ) ;
136+ await constructRegistry ( wallet , managerId , nftId ) ;
108137} ;
109138
110139main ( )
0 commit comments