@@ -115,6 +115,10 @@ def burn(
115115 self .assert_contract_is_instantiated ()
116116 return self .contract .burn (from_ , pool_id , amount , transaction_config )
117117
118+ def contract_uri (self ) -> Any :
119+ self .assert_contract_is_instantiated ()
120+ return self .contract .contractURI .call ()
121+
118122 def create_pool_v1 (
119123 self , _capacity : int , _transferable : bool , _burnable : bool , transaction_config
120124 ) -> Any :
@@ -209,6 +213,10 @@ def set_approval_for_all(
209213 self .assert_contract_is_instantiated ()
210214 return self .contract .setApprovalForAll (operator , approved , transaction_config )
211215
216+ def set_contract_uri (self , _contract_uri : str , transaction_config ) -> Any :
217+ self .assert_contract_is_instantiated ()
218+ return self .contract .setContractURI (_contract_uri , transaction_config )
219+
212220 def set_payment_token (
213221 self , new_payment_token : ChecksumAddress , transaction_config
214222 ) -> Any :
@@ -363,6 +371,13 @@ def handle_burn(args: argparse.Namespace) -> None:
363371 print (result )
364372
365373
374+ def handle_contract_uri (args : argparse .Namespace ) -> None :
375+ network .connect (args .network )
376+ contract = TerminusFacet (args .address )
377+ result = contract .contract_uri ()
378+ print (result )
379+
380+
366381def handle_create_pool_v1 (args : argparse .Namespace ) -> None :
367382 network .connect (args .network )
368383 contract = TerminusFacet (args .address )
@@ -497,6 +512,16 @@ def handle_set_approval_for_all(args: argparse.Namespace) -> None:
497512 print (result )
498513
499514
515+ def handle_set_contract_uri (args : argparse .Namespace ) -> None :
516+ network .connect (args .network )
517+ contract = TerminusFacet (args .address )
518+ transaction_config = get_transaction_config (args )
519+ result = contract .set_contract_uri (
520+ _contract_uri = args .contract_uri_arg , transaction_config = transaction_config
521+ )
522+ print (result )
523+
524+
500525def handle_set_payment_token (args : argparse .Namespace ) -> None :
501526 network .connect (args .network )
502527 contract = TerminusFacet (args .address )
@@ -650,6 +675,10 @@ def generate_cli() -> argparse.ArgumentParser:
650675 burn_parser .add_argument ("--amount" , required = True , help = "Type: uint256" , type = int )
651676 burn_parser .set_defaults (func = handle_burn )
652677
678+ contract_uri_parser = subcommands .add_parser ("contract-uri" )
679+ add_default_arguments (contract_uri_parser , False )
680+ contract_uri_parser .set_defaults (func = handle_contract_uri )
681+
653682 create_pool_v1_parser = subcommands .add_parser ("create-pool-v1" )
654683 add_default_arguments (create_pool_v1_parser , True )
655684 create_pool_v1_parser .add_argument (
@@ -784,6 +813,13 @@ def generate_cli() -> argparse.ArgumentParser:
784813 )
785814 set_approval_for_all_parser .set_defaults (func = handle_set_approval_for_all )
786815
816+ set_contract_uri_parser = subcommands .add_parser ("set-contract-uri" )
817+ add_default_arguments (set_contract_uri_parser , True )
818+ set_contract_uri_parser .add_argument (
819+ "--contract-uri-arg" , required = True , help = "Type: string" , type = str
820+ )
821+ set_contract_uri_parser .set_defaults (func = handle_set_contract_uri )
822+
787823 set_payment_token_parser = subcommands .add_parser ("set-payment-token" )
788824 add_default_arguments (set_payment_token_parser , True )
789825 set_payment_token_parser .add_argument (
0 commit comments