diff --git a/src/status_im/common/controlled_input/utils.cljs b/src/status_im/common/controlled_input/utils.cljs index 46ceca980f..7c87ec4bd0 100644 --- a/src/status_im/common/controlled_input/utils.cljs +++ b/src/status_im/common/controlled_input/utils.cljs @@ -150,15 +150,19 @@ (defn- fiat->crypto [value conversion-rate] - (-> value - (money/fiat->crypto conversion-rate) - (wallet-utils/cut-crypto-decimals-to-fit-usd-cents conversion-rate))) + (if-not (string/blank? value) + (-> value + (money/fiat->crypto conversion-rate) + (wallet-utils/cut-crypto-decimals-to-fit-usd-cents conversion-rate)) + "")) (defn- crypto->fiat [value conversion-rate] - (-> value - (money/crypto->fiat conversion-rate) - (wallet-utils/cut-fiat-balance-to-two-decimals))) + (if-not (string/blank? value) + (-> value + (money/crypto->fiat conversion-rate) + (wallet-utils/cut-fiat-balance-to-two-decimals)) + "")) (defn ->crypto [state conversion-rate] diff --git a/src/status_im/contexts/wallet/send/events.cljs b/src/status_im/contexts/wallet/send/events.cljs index b0bab6d62a..94a9762123 100644 --- a/src/status_im/contexts/wallet/send/events.cljs +++ b/src/status_im/contexts/wallet/send/events.cljs @@ -612,7 +612,7 @@ (rf/reg-event-fx :wallet/clean-up-transaction-flow (fn [_] - {:fx [[:dispatch [:dismiss-modal :screen/wallet.transaction-confirmation]] + {:fx [[:dispatch [:wallet/clean-send-data]] [:dispatch [:wallet/clean-scanned-address]] [:dispatch [:wallet/clean-local-suggestions]] [:dispatch [:wallet/clean-send-address]] @@ -622,11 +622,9 @@ (rf/reg-event-fx :wallet/end-transaction-flow (fn [{:keys [db]}] (let [address (get-in db [:wallet :current-viewing-account-address])] - {:fx [[:dispatch [:wallet/navigate-to-account-within-stack address]] - [:dispatch [:wallet/select-account-tab :activity]] - [:dispatch-later - [{:ms 20 - :dispatch [:wallet/clean-up-transaction-flow]}]]]}))) + {:fx [[:dispatch [:dismiss-modal :screen/wallet.transaction-confirmation]] + [:dispatch [:wallet/navigate-to-account-within-stack address]] + [:dispatch [:wallet/select-account-tab :activity]]]}))) (rf/reg-event-fx :wallet/build-transactions-from-route @@ -693,7 +691,6 @@ :params [{:uuid (get-in transaction-for-signing [:sendDetails :uuid]) :signatures signatures-map}] :on-success (fn [] - (rf/dispatch [:wallet/clean-send-data]) (rf/dispatch [:hide-bottom-sheet])) :on-error (fn [error] (log/error "failed to send router transactions with signatures" diff --git a/src/status_im/contexts/wallet/send/input_amount/view.cljs b/src/status_im/contexts/wallet/send/input_amount/view.cljs index a8d2966752..dc819aa76d 100644 --- a/src/status_im/contexts/wallet/send/input_amount/view.cljs +++ b/src/status_im/contexts/wallet/send/input_amount/view.cljs @@ -258,6 +258,8 @@ (set-input-state #(controlled-input/->crypto % conversion-rate))) (set-crypto-currency (not crypto-currency?)))] + (rn/use-unmount + #(rf/dispatch [:wallet/clean-up-transaction-flow])) (rn/use-effect (fn [] (when active-screen? diff --git a/src/status_im/contexts/wallet/swap/setup_swap/view.cljs b/src/status_im/contexts/wallet/swap/setup_swap/view.cljs index 97c39b7e24..95ad528d2c 100644 --- a/src/status_im/contexts/wallet/swap/setup_swap/view.cljs +++ b/src/status_im/contexts/wallet/swap/setup_swap/view.cljs @@ -25,7 +25,7 @@ [utils.re-frame :as rf] [utils.string :as utils.string])) -(def ^:private default-text-for-unfocused-input "0.00") +(def ^:private default-text-for-unfocused-input "0") (def ^:private swap-proposal-debounce-time-ms 1000) (defn- on-close