@@ -56,23 +56,13 @@ def setup_parser(args: list[str], subparsers: Any) -> Any:
5656 )
5757 _add_bytecode_arg (sub )
5858 _add_contract_abi_arg (sub )
59- _add_metadata_arg (sub )
59+ cli_shared . add_metadata_arg (sub )
6060 cli_shared .add_outfile_arg (sub )
6161 cli_shared .add_wallet_args (args , sub )
6262 cli_shared .add_proxy_arg (sub )
6363 cli_shared .add_tx_args (args , sub , with_receiver = False , with_data = False )
6464 _add_arguments_arg (sub )
65- sub .add_argument (
66- "--wait-result" ,
67- action = "store_true" ,
68- default = False ,
69- help = "signal to wait for the transaction result - only valid if --send is set" ,
70- )
71- sub .add_argument (
72- "--timeout" ,
73- default = 100 ,
74- help = "max num of seconds to wait for result" " - only valid if --wait-result is set" ,
75- )
65+ cli_shared .add_wait_result_and_timeout_args (sub )
7666 cli_shared .add_broadcast_args (sub )
7767 cli_shared .add_guardian_wallet_args (args , sub )
7868 cli_shared .add_relayed_v3_wallet_args (args , sub )
@@ -94,17 +84,7 @@ def setup_parser(args: list[str], subparsers: Any) -> Any:
9484 _add_function_arg (sub )
9585 _add_arguments_arg (sub )
9686 cli_shared .add_token_transfers_args (sub )
97- sub .add_argument (
98- "--wait-result" ,
99- action = "store_true" ,
100- default = False ,
101- help = "signal to wait for the transaction result - only valid if --send is set" ,
102- )
103- sub .add_argument (
104- "--timeout" ,
105- default = 100 ,
106- help = "max num of seconds to wait for result" " - only valid if --wait-result is set" ,
107- )
87+ cli_shared .add_wait_result_and_timeout_args (sub )
10888 cli_shared .add_broadcast_args (sub )
10989 cli_shared .add_guardian_wallet_args (args , sub )
11090 cli_shared .add_relayed_v3_wallet_args (args , sub )
@@ -121,22 +101,12 @@ def setup_parser(args: list[str], subparsers: Any) -> Any:
121101 _add_contract_abi_arg (sub )
122102 cli_shared .add_outfile_arg (sub )
123103 _add_bytecode_arg (sub )
124- _add_metadata_arg (sub )
104+ cli_shared . add_metadata_arg (sub )
125105 cli_shared .add_wallet_args (args , sub )
126106 cli_shared .add_proxy_arg (sub )
127107 cli_shared .add_tx_args (args , sub , with_receiver = False , with_data = False )
128108 _add_arguments_arg (sub )
129- sub .add_argument (
130- "--wait-result" ,
131- action = "store_true" ,
132- default = False ,
133- help = "signal to wait for the transaction result - only valid if --send is set" ,
134- )
135- sub .add_argument (
136- "--timeout" ,
137- default = 100 ,
138- help = "max num of seconds to wait for result" " - only valid if --wait-result is set" ,
139- )
109+ cli_shared .add_wait_result_and_timeout_args (sub )
140110 cli_shared .add_broadcast_args (sub )
141111 cli_shared .add_guardian_wallet_args (args , sub )
142112 cli_shared .add_relayed_v3_wallet_args (args , sub )
@@ -336,34 +306,6 @@ def _add_arguments_arg(sub: Any):
336306 )
337307
338308
339- def _add_metadata_arg (sub : Any ):
340- sub .add_argument (
341- "--metadata-not-upgradeable" ,
342- dest = "metadata_upgradeable" ,
343- action = "store_false" ,
344- help = "‼ mark the contract as NOT upgradeable (default: upgradeable)" ,
345- )
346- sub .add_argument (
347- "--metadata-not-readable" ,
348- dest = "metadata_readable" ,
349- action = "store_false" ,
350- help = "‼ mark the contract as NOT readable (default: readable)" ,
351- )
352- sub .add_argument (
353- "--metadata-payable" ,
354- dest = "metadata_payable" ,
355- action = "store_true" ,
356- help = "‼ mark the contract as payable (default: not payable)" ,
357- )
358- sub .add_argument (
359- "--metadata-payable-by-sc" ,
360- dest = "metadata_payable_by_sc" ,
361- action = "store_true" ,
362- help = "‼ mark the contract as payable by SC (default: not payable by SC)" ,
363- )
364- sub .set_defaults (metadata_upgradeable = True , metadata_payable = False )
365-
366-
367309def build (args : Any ):
368310 message = """This command cannot build smart contracts anymore.
369311
@@ -376,8 +318,7 @@ def build(args: Any):
376318def deploy (args : Any ):
377319 logger .debug ("deploy" )
378320
379- cli_config = MxpyEnv .from_active_env ()
380- cli_shared .set_proxy_from_config_if_not_provided (args , cli_config )
321+ cli_shared .set_proxy_from_config_if_not_provided (args )
381322
382323 validate_transaction_args (args )
383324 validate_broadcast_args (args )
@@ -419,6 +360,8 @@ def deploy(args: Any):
419360 contract_address = address_computer .compute_contract_address (deployer = sender .address , deployment_nonce = tx .nonce )
420361
421362 logger .info ("Contract address: %s" , contract_address .to_bech32 ())
363+
364+ cli_config = MxpyEnv .from_active_env ()
422365 utils .log_explorer_contract_address (args .chain , contract_address .to_bech32 (), cli_config .explorer_url )
423366
424367 _send_or_simulate (tx , contract_address , args )
@@ -427,8 +370,7 @@ def deploy(args: Any):
427370def call (args : Any ):
428371 logger .debug ("call" )
429372
430- cli_config = MxpyEnv .from_active_env ()
431- cli_shared .set_proxy_from_config_if_not_provided (args , cli_config )
373+ cli_shared .set_proxy_from_config_if_not_provided (args )
432374
433375 validate_transaction_args (args )
434376 validate_broadcast_args (args )
@@ -449,6 +391,10 @@ def call(args: Any):
449391 arguments , should_prepare_args = _get_contract_arguments (args )
450392 contract_address = Address .new_from_bech32 (args .contract )
451393
394+ token_transfers = None
395+ if args .token_transfers :
396+ token_transfers = cli_shared .prepare_token_transfers (args .token_transfers )
397+
452398 tx = contract .prepare_execute_transaction (
453399 caller = sender ,
454400 contract = contract_address ,
@@ -458,7 +404,7 @@ def call(args: Any):
458404 gas_limit = int (args .gas_limit ),
459405 gas_price = int (args .gas_price ),
460406 value = int (args .value ),
461- transfers = args . token_transfers ,
407+ token_transfers = token_transfers ,
462408 nonce = sender .nonce ,
463409 version = int (args .version ),
464410 options = int (args .options ),
@@ -471,8 +417,7 @@ def call(args: Any):
471417def upgrade (args : Any ):
472418 logger .debug ("upgrade" )
473419
474- cli_config = MxpyEnv .from_active_env ()
475- cli_shared .set_proxy_from_config_if_not_provided (args , cli_config )
420+ cli_shared .set_proxy_from_config_if_not_provided (args )
476421
477422 validate_transaction_args (args )
478423 validate_broadcast_args (args )
@@ -518,8 +463,7 @@ def upgrade(args: Any):
518463def query (args : Any ):
519464 logger .debug ("query" )
520465
521- cli_config = MxpyEnv .from_active_env ()
522- cli_shared .set_proxy_from_config_if_not_provided (args , cli_config )
466+ cli_shared .set_proxy_from_config_if_not_provided (args )
523467
524468 validate_proxy_argument (args )
525469
0 commit comments