Full Changelog: v2.1.6...v2.1.7
[2.1.7] - 2026-06-29
Added
- Implemented a Cache-Aside with Background Sync model for the wallet's transaction history to achieve instant history loading on startup or wallet switch.
- Added transaction caching in the local LevelDB database (
dbClient) under the keytxs_${net}_${wid}, rendering cached transactions in the UI immediately. - Added a background sync process that fetches the latest transaction history from the Handshake node via
walletClient.getTransactionHistory()and silently updates the local cache and UI. - Added a global Theme Management System supporting both Light and Dark themes, with the user's preference saved in
localStorage. - Added a modern theme toggle button (Sun/Moon vector icons) in the Topbar for quick one-click theme switching.
- Added custom scrollbars optimized for the dark theme.
- Added a modern, cross-OS friendly local font set saved in
app/assets/fonts/to give the application a clean, updated typography feel.
Changed
- Optimized the transaction parsing loop to only process new or status-changed transactions, reusing cached transaction data if the pending status matches, which avoids redundant and expensive covenant parsing calls.
- Removed the artificial 1-second delay from the application initialization splash screen, allowing users to log in as soon as the node is ready.
- Modernized the overall UI (cards, inputs, tables, dropdowns, and modals) with smooth transitions, clean borders, and dark-theme optimized.
- Replaced Google Fonts / system font fallbacks with the locally bundled font family.
- Optimized the pagination index generator to use a fixed-width window of 7 elements when total pages >= 7, preventing horizontal layout shifting of navigation arrows when clicking next/prev.
- Updated the supported block explorers list (explorers.js) to include HNS Fans and Shake Shift, removing inactive or outdated explorers (HNS Network, Niami, HNScan, Shake Scan, and Block Explorer).
- Updated all app logo, icon, and input references to use the new high-resolution neon logo (hns-logo-clean.png).
- Modernized the dropdown menu styling to support both light and dark themes, ensuring high-contrast readability of options.
- Enhanced text contrast across the dark theme, specifically for inactive sidebar links, category headers, transaction lists, search bars, and footer status text.
- Updated status action cards (red, yellow, and green cards) with high-contrast text colors tailored for both themes.
- Themed the Receive section for full dark-theme compatibility, including adding a solid white background to the QR code container for scanability, updating warning icons/titles, and styling the address display border.
- Improved the "Add to Watchlist" button on the domain details page by making the entire container (including the text label and icon) clickable and adding a white heart outline for better visibility in the dark theme.
- Themed the Send Funds section, adding proper outlines, borders, backgrounds, and high-contrast text for all inputs, labels, select boxes, and confirmation screens in the dark theme.
- Corrected the Renewal Queue empty state layout by wrapping the "No domains found" text in a proper table cell with spacing, preventing alignment issues.
- Fixed active filter tab text color in the Your Bids page to be white in the dark theme so it is readable.
- Aligned the DNS Update Speed default fees state key from 'medium' to 'standard' to match what is programmatically in the app, while keeping the estimated DNS update transaction size at 0.5 KB and displaying 'Normal' (0.010000 HNS/KB, approx. 0.00500 HNS per update) as requested, and updated the locale files to replace 'medium' with 'standard'.
- Updated the Topbar to feature the new high-resolution Neon HNS Logo across all views and updated the global default theme to Dark.
Removed
- Removed "Claim Airdrop or Name" Section from the sidebar menu.
Fixed
- Fixed Babel build warnings (
useBuiltInsoption not set) and cleaned up verbose build output by configuring"useBuiltIns": falseand disabling"debug"inbabel.config.json. - Fixed local font loading Content Security Policy (CSP) violations by updating the policy in
app.htmlto permit'self'andfile:, and completely removed external Google Fonts imports. - Fixed a bug where the Domain Manager details page would fail to load for domains with older or unindexed bids/reveals by wrapping transaction lookups in try-catch blocks.
- Fixed Domain Manager navigation by persisting the current page index in the local database, allowing the back button to restore the user's last viewed pagination page.
- Fixed a regression in Domain Manager row click navigation where users were redirected to the login screen instead of the domain details page.