@@ -15,7 +15,7 @@ import (
1515)
1616
1717// handleIncreaseStake allows validators to increase their stake after registration
18- func handleIncreaseStake (cfg config.Config ) {
18+ func handleIncreaseStake (cfg config.Config ) error {
1919 v := validator .NewWith (validator.Options {
2020 BinPath : findPchaind (),
2121 HomeDir : cfg .HomeDir ,
@@ -35,27 +35,27 @@ func handleIncreaseStake(cfg config.Config) {
3535 getPrinter ().JSON (map [string ]any {"ok" : false , "error" : valErr .Error ()})
3636 } else {
3737 fmt .Println ()
38- fmt .Println (getPrinter ().Colors .Error ("⚠️ Failed to retrieve validator information" ))
38+ fmt .Println (getPrinter ().Colors .Error (getPrinter (). Colors . Emoji ( "⚠️" ) + " Failed to retrieve validator information" ))
3939 fmt .Printf ("Error: %v\n \n " , valErr )
4040 fmt .Println (getPrinter ().Colors .Info ("Make sure you are registered as a validator first:" ))
4141 fmt .Println (getPrinter ().Colors .Apply (getPrinter ().Colors .Theme .Command , " push-validator register-validator" ))
4242 fmt .Println ()
4343 }
44- return
44+ return fmt . Errorf ( "failed to retrieve validator information: %w" , valErr )
4545 }
4646
4747 if ! myValInfo .IsValidator {
4848 if flagOutput == "json" {
4949 getPrinter ().JSON (map [string ]any {"ok" : false , "error" : "not a registered validator" })
5050 } else {
5151 fmt .Println ()
52- fmt .Println (getPrinter ().Colors .Error ("❌ This node is not registered as a validator" ))
52+ fmt .Println (getPrinter ().Colors .Error (getPrinter (). Colors . Emoji ( "❌" ) + " This node is not registered as a validator" ))
5353 fmt .Println ()
5454 fmt .Println (getPrinter ().Colors .Info ("To register, use:" ))
5555 fmt .Println (getPrinter ().Colors .Apply (getPrinter ().Colors .Theme .Command , " push-validator register-validator" ))
5656 fmt .Println ()
5757 }
58- return
58+ return fmt . Errorf ( "not a registered validator" )
5959 }
6060
6161 // Display current validator info
@@ -87,10 +87,10 @@ func handleIncreaseStake(cfg config.Config) {
8787 if flagOutput == "json" {
8888 getPrinter ().JSON (map [string ]any {"ok" : false , "error" : convErr .Error ()})
8989 } else {
90- fmt .Println (p .Colors .Error ("⚠️ Failed to convert validator address" ))
90+ fmt .Println (p .Colors .Error (p . Colors . Emoji ( "⚠️" ) + " Failed to convert validator address" ))
9191 fmt .Printf ("Error: %v\n \n " , convErr )
9292 }
93- return
93+ return fmt . Errorf ( "failed to convert validator address: %w" , convErr )
9494 }
9595
9696 // Get account balance from Cosmos SDK
@@ -102,10 +102,10 @@ func handleIncreaseStake(cfg config.Config) {
102102 if flagOutput == "json" {
103103 getPrinter ().JSON (map [string ]any {"ok" : false , "error" : balErr .Error ()})
104104 } else {
105- fmt .Println (p .Colors .Error ("⚠️ Failed to retrieve balance" ))
105+ fmt .Println (p .Colors .Error (p . Colors . Emoji ( "⚠️" ) + " Failed to retrieve balance" ))
106106 fmt .Printf ("Error: %v\n \n " , balErr )
107107 }
108- return
108+ return fmt . Errorf ( "failed to retrieve balance: %w" , balErr )
109109 }
110110
111111 // Display balance info
@@ -141,12 +141,12 @@ func handleIncreaseStake(cfg config.Config) {
141141 if flagOutput == "json" {
142142 getPrinter ().JSON (map [string ]any {"ok" : false , "error" : "insufficient balance" })
143143 } else {
144- fmt .Println (p .Colors .Error ("❌ Insufficient balance to delegate" ))
144+ fmt .Println (p .Colors .Error (p . Colors . Emoji ( "❌" ) + " Insufficient balance to delegate" ))
145145 fmt .Println ()
146146 fmt .Println ("You need at least 0.2 PC to increase stake (0.1 PC to delegate + 0.1 PC for fees)." )
147147 fmt .Println ()
148148 }
149- return
149+ return fmt . Errorf ( "insufficient balance" )
150150 }
151151
152152 // Prompt for delegation amount
@@ -161,32 +161,32 @@ func handleIncreaseStake(cfg config.Config) {
161161 input = strings .TrimSpace (input )
162162
163163 if input == "" {
164- fmt .Println (p .Colors .Error ("⚠ Amount is required. Try again." ))
164+ fmt .Println (p .Colors .Error (p . Colors . Emoji ( "⚠" ) + " Amount is required. Try again." ))
165165 continue
166166 }
167167
168168 // Parse user input
169169 delegateAmount , err := strconv .ParseFloat (input , 64 )
170170 if err != nil {
171- fmt .Println (p .Colors .Error ("⚠ Invalid amount. Enter a number. Try again." ))
171+ fmt .Println (p .Colors .Error (p . Colors . Emoji ( "⚠" ) + " Invalid amount. Enter a number. Try again." ))
172172 continue
173173 }
174174
175175 // Validate bounds
176176 if delegateAmount < minDelegatePC {
177- fmt .Printf (p .Colors .Error ("⚠ Amount too low. Minimum delegation is %.1f PC. Try again.\n " ), minDelegatePC )
177+ fmt .Printf (p .Colors .Error (p . Colors . Emoji ( "⚠" ) + " Amount too low. Minimum delegation is %.1f PC. Try again.\n " ), minDelegatePC )
178178 continue
179179 }
180180 if delegateAmount > maxDelegatePCVal {
181- fmt .Printf (p .Colors .Error ("⚠ Insufficient balance. Maximum: %.1f PC. Try again.\n " ), maxDelegatePCVal )
181+ fmt .Printf (p .Colors .Error (p . Colors . Emoji ( "⚠" ) + " Insufficient balance. Maximum: %.1f PC. Try again.\n " ), maxDelegatePCVal )
182182 continue
183183 }
184184
185185 // Convert to wei
186186 delegateWei := new (big.Float ).Mul (new (big.Float ).SetFloat64 (delegateAmount ), new (big.Float ).SetFloat64 (1e18 ))
187187 delegationAmount = delegateWei .Text ('f' , 0 )
188188
189- fmt .Printf (p .Colors .Success ("✓ Will delegate %.6f PC\n " ), delegateAmount )
189+ fmt .Printf (p .Colors .Success (p . Colors . Emoji ( "✓" ) + " Will delegate %.6f PC\n " ), delegateAmount )
190190 fmt .Println ()
191191 break
192192 }
@@ -211,7 +211,7 @@ func handleIncreaseStake(cfg config.Config) {
211211 keyName = foundKey
212212 if flagOutput != "json" {
213213 fmt .Println ()
214- fmt .Printf ("🔑 Using key: %s\n " , keyName )
214+ fmt .Printf ("%s Using key: %s\n " , p . Colors . Emoji ( "🔑" ) , keyName )
215215 }
216216 } else {
217217 // Fall back to default if key not found
@@ -229,10 +229,10 @@ func handleIncreaseStake(cfg config.Config) {
229229 if flagOutput == "json" {
230230 getPrinter ().JSON (map [string ]any {"ok" : false , "error" : "could not determine key name" })
231231 } else {
232- fmt .Println (p .Colors .Error ("⚠️ Could not determine key name" ))
232+ fmt .Println (p .Colors .Error (p . Colors . Emoji ( "⚠️" ) + " Could not determine key name" ))
233233 fmt .Println ()
234234 }
235- return
235+ return fmt . Errorf ( "could not determine key name" )
236236 }
237237
238238 // Execute delegation
@@ -252,10 +252,10 @@ func handleIncreaseStake(cfg config.Config) {
252252 getPrinter ().JSON (map [string ]any {"ok" : false , "error" : delegErr .Error ()})
253253 } else {
254254 fmt .Println ()
255- fmt .Println (p .Colors .Error ("❌ Delegation failed" ))
255+ fmt .Println (p .Colors .Error (p . Colors . Emoji ( "❌" ) + " Delegation failed" ))
256256 fmt .Printf ("Error: %v\n \n " , delegErr )
257257 }
258- return
258+ return fmt . Errorf ( "delegation transaction failed: %w" , delegErr )
259259 }
260260
261261 // Success output
@@ -267,7 +267,7 @@ func handleIncreaseStake(cfg config.Config) {
267267 })
268268 } else {
269269 fmt .Println ()
270- p .Success ("✅ Delegation successful!" )
270+ p .Success (p . Colors . Emoji ( "✅" ) + " Delegation successful!" )
271271 fmt .Println ()
272272
273273 // Display delegation details
@@ -291,4 +291,5 @@ func handleIncreaseStake(cfg config.Config) {
291291 fmt .Println (p .Colors .Apply (p .Colors .Theme .Command , " push-validator dashboard" ))
292292 fmt .Println ()
293293 }
294+ return nil
294295}
0 commit comments