@@ -207,10 +207,13 @@ func secureNetworkKeyPrompt() string {
207207 return networkKey
208208}
209209
210- func addressPrompt (label , errorMessage string ) string {
210+ func addressPrompt (label , errorMessage string , allowEmpty bool ) string {
211211 addressPrompt := promptui.Prompt {
212212 Label : label ,
213213 Validate : func (s string ) error {
214+ if allowEmpty && s == "" {
215+ return nil
216+ }
214217 if flow .HexToAddress (s ) == flow .EmptyAddress {
215218 return errors .New (errorMessage )
216219 }
@@ -227,25 +230,7 @@ func addressPrompt(label, errorMessage string) string {
227230}
228231
229232func AddressPromptOrEmpty (label , errorMessage string ) string {
230- addressPrompt := promptui.Prompt {
231- Label : label ,
232- Validate : func (s string ) error {
233- if s == "" {
234- return nil
235- }
236- if flow .HexToAddress (s ) == flow .EmptyAddress {
237- return errors .New (errorMessage )
238- }
239- return nil
240- },
241- }
242-
243- address , err := addressPrompt .Run ()
244- if err == promptui .ErrInterrupt {
245- os .Exit (- 1 )
246- }
247-
248- return address
233+ return addressPrompt (label , errorMessage , true )
249234}
250235
251236func contractPrompt (contractNames []string ) string {
@@ -311,7 +296,7 @@ func NewAccountPrompt() *AccountData {
311296 var err error
312297 account := & AccountData {
313298 Name : NamePrompt (),
314- Address : addressPrompt ("Enter address" , "invalid address" ),
299+ Address : addressPrompt ("Enter address" , "invalid address" , false ),
315300 }
316301
317302 sigAlgoPrompt := promptui.Select {
0 commit comments