warp dex: two crash fixes in liquidity operations.

add liquidity crash fix

depositing tokens into a pool crashed with Cannot read properties of undefined (reading 'target').

cause: react-number-format calls onValueChange with event = undefined on programmatic value changes (e.g. when the counter-pair amount is auto-calculated). the handler assumed event.target.id always exists.

fix: guard both amountChangeHandler and amountChangeHandlerCreatePool against missing event. programmatic updates (no user interaction) are skipped — they only set display values, not trigger recalculation.

tx confirmation race condition

after depositing liquidity, the status bar flickered between "Transaction successful" and "Please wait while we confirm the transaction on the blockchain". messages appeared in wrong order.

cause: useEffect polling queryClient.getTx(txHash) could re-fire from React's effect lifecycle. a stale callback would overwrite STAGE_CONFIRMED back to STAGE_CONFIRMING, resetting the UI to the waiting state after success was already shown.

fix: added cleanup flag (cancelled) to the effect. when the effect re-runs or unmounts, previous callbacks stop updating state. confirmed state is now stable — once reached, it stays.

all fixes applied across branches

both commits cherry-picked to all 8 active branches and pushed.