diff --git a/package-lock.json b/package-lock.json index 25536da..97e735d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "keeper-desktop", - "version": "0.2.3", + "version": "0.2.4", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "keeper-desktop", - "version": "0.2.3", + "version": "0.2.4", "hasInstallScript": true, "dependencies": { "@tanstack/react-query": "^5.52.1", @@ -4409,9 +4409,9 @@ } }, "node_modules/openpgp": { - "version": "5.11.2", - "resolved": "https://registry.npmjs.org/openpgp/-/openpgp-5.11.2.tgz", - "integrity": "sha512-f8dJFVLwdkvPvW3VPFs6q9Vs2+HNhdvwls7a/MIFcQUB+XiQzRe7alfa3RtwfGJU7oUDDMAWPZ0nYsHa23Az+A==", + "version": "5.11.3", + "resolved": "https://registry.npmjs.org/openpgp/-/openpgp-5.11.3.tgz", + "integrity": "sha512-jXOPfIteBUQ2zSmRG4+Y6PNntIIDEAvoM/lOYCnvpXAByJEruzrHQZWE/0CGOKHbubwUuty2HoPHsqBzyKHOpA==", "dev": true, "dependencies": { "asn1.js": "^5.0.0" @@ -5334,12 +5334,12 @@ "dev": true }, "node_modules/tinyglobby": { - "version": "0.2.12", - "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.12.tgz", - "integrity": "sha512-qkf4trmKSIiMTs/E63cxH+ojC2unam7rJ0WrauAzpT3ECNTxGRMlaXxVbfxMUC/w0LaYk6jQ4y/nGR9uBO3tww==", + "version": "0.2.14", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.14.tgz", + "integrity": "sha512-tX5e7OM1HnYr2+a2C/4V0htOcSQcoSTH9KgJnVvNm5zm/cyEWKJ7j7YutsH9CxMdtOkkLFy2AHrMci9IM8IPZQ==", "dev": true, "dependencies": { - "fdir": "^6.4.3", + "fdir": "^6.4.4", "picomatch": "^4.0.2" }, "engines": { @@ -5350,9 +5350,9 @@ } }, "node_modules/tinyglobby/node_modules/fdir": { - "version": "6.4.3", - "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.3.tgz", - "integrity": "sha512-PMXmW2y1hDDfTSRc9gaXIuCCRpuoz3Kaz8cUelp3smouvfT632ozg2vrT6lJsHKKOF59YLbOGfAWGUcKEfRMQw==", + "version": "6.4.5", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.5.tgz", + "integrity": "sha512-4BG7puHpVsIYxZUbiUE3RqGloLaSSwzYie5jvasC4LWuBWzZawynvYouhjbQKw2JuIGYdm0DzIxl8iVidKlUEw==", "dev": true, "peerDependencies": { "picomatch": "^3 || ^4" @@ -5595,17 +5595,17 @@ } }, "node_modules/vite": { - "version": "6.3.2", - "resolved": "https://registry.npmjs.org/vite/-/vite-6.3.2.tgz", - "integrity": "sha512-ZSvGOXKGceizRQIZSz7TGJ0pS3QLlVY/9hwxVh17W3re67je1RKYzFHivZ/t0tubU78Vkyb9WnHPENSBCzbckg==", + "version": "6.3.5", + "resolved": "https://registry.npmjs.org/vite/-/vite-6.3.5.tgz", + "integrity": "sha512-cZn6NDFE7wdTpINgs++ZJ4N49W2vRp8LCKrn3Ob1kYNtOo21vfDoaV5GzBfLU4MovSAB8uNRm4jgzVQZ+mBzPQ==", "dev": true, "dependencies": { "esbuild": "^0.25.0", - "fdir": "^6.4.3", + "fdir": "^6.4.4", "picomatch": "^4.0.2", "postcss": "^8.5.3", "rollup": "^4.34.9", - "tinyglobby": "^0.2.12" + "tinyglobby": "^0.2.13" }, "bin": { "vite": "bin/vite.js" @@ -5669,9 +5669,9 @@ } }, "node_modules/vite/node_modules/fdir": { - "version": "6.4.3", - "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.3.tgz", - "integrity": "sha512-PMXmW2y1hDDfTSRc9gaXIuCCRpuoz3Kaz8cUelp3smouvfT632ozg2vrT6lJsHKKOF59YLbOGfAWGUcKEfRMQw==", + "version": "6.4.5", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.5.tgz", + "integrity": "sha512-4BG7puHpVsIYxZUbiUE3RqGloLaSSwzYie5jvasC4LWuBWzZawynvYouhjbQKw2JuIGYdm0DzIxl8iVidKlUEw==", "dev": true, "peerDependencies": { "picomatch": "^3 || ^4" diff --git a/package.json b/package.json index e4213f2..e175ebc 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "keeper-desktop", "private": true, - "version": "0.2.3", + "version": "0.2.4", "type": "module", "scripts": { "dev": "vite", diff --git a/src-tauri/Cargo.lock b/src-tauri/Cargo.lock index 89f725d..9c753c2 100644 --- a/src-tauri/Cargo.lock +++ b/src-tauri/Cargo.lock @@ -2423,7 +2423,7 @@ dependencies = [ [[package]] name = "keeper-desktop" -version = "0.2.3" +version = "0.2.4" dependencies = [ "aes-gcm", "async-hwi", diff --git a/src-tauri/Cargo.toml b/src-tauri/Cargo.toml index 9403f5b..5b57886 100644 --- a/src-tauri/Cargo.toml +++ b/src-tauri/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "keeper-desktop" -version = "0.2.3" +version = "0.2.4" description = "Bitcoin Keeper Desktop App" authors = ["Ben Kaufman"] repository = "https://github.com/bithyve/keeper-desktop" diff --git a/src-tauri/tauri.conf.json b/src-tauri/tauri.conf.json index 88fa05e..63c4387 100644 --- a/src-tauri/tauri.conf.json +++ b/src-tauri/tauri.conf.json @@ -7,7 +7,7 @@ }, "package": { "productName": "Keeper Desktop (Dev)", - "version": "0.2.3" + "version": "0.2.4" }, "tauri": { "allowlist": { diff --git a/src-tauri/tauri.release.conf.json b/src-tauri/tauri.release.conf.json index fc0b52e..686d2fc 100644 --- a/src-tauri/tauri.release.conf.json +++ b/src-tauri/tauri.release.conf.json @@ -8,7 +8,7 @@ }, "package": { "productName": "Keeper Desktop", - "version": "0.2.3" + "version": "0.2.4" }, "tauri": { "allowlist": { diff --git a/src/assets/device-not-found-icon.svg b/src/assets/device-not-found-icon.svg index 1984347..f7f48e6 100644 --- a/src/assets/device-not-found-icon.svg +++ b/src/assets/device-not-found-icon.svg @@ -1,26 +1,18 @@ - diff --git a/src/assets/fonts/Lora/Lora-Medium.ttf b/src/assets/fonts/Lora/Lora-Medium.ttf new file mode 100644 index 0000000..85ca5a2 Binary files /dev/null and b/src/assets/fonts/Lora/Lora-Medium.ttf differ diff --git a/src/assets/fonts/Lora/Lora-SemiBold.ttf b/src/assets/fonts/Lora/Lora-SemiBold.ttf new file mode 100644 index 0000000..3a7c6d7 Binary files /dev/null and b/src/assets/fonts/Lora/Lora-SemiBold.ttf differ diff --git a/src/index.css b/src/index.css index 394741c..a504a29 100644 --- a/src/index.css +++ b/src/index.css @@ -18,14 +18,14 @@ html { @font-face { font-family: "Inter"; - src: url("./assets/fonts/Inter/Inter-SemiBold.ttf") format("truetype"); + src: url("./assets/fonts/Lora/Lora-SemiBold.ttf") format("truetype"); font-weight: 600; font-style: normal; } @font-face { font-family: "Inter"; - src: url("./assets/fonts/Inter/Inter-Medium.ttf") format("truetype"); + src: url("./assets/fonts/Lora/Lora-Medium.ttf") format("truetype"); font-weight: 500; font-style: normal; } diff --git a/src/modals/BaseModal/BaseModal.module.css b/src/modals/BaseModal/BaseModal.module.css index de82413..a78953b 100644 --- a/src/modals/BaseModal/BaseModal.module.css +++ b/src/modals/BaseModal/BaseModal.module.css @@ -42,13 +42,14 @@ font-size: 18px; color: #000; margin-bottom: 10px; + font-weight: 500; } .text { - font-size: 15px; + font-size: 14px; color: #3e524d; margin: 0 7%; - font-weight: 300; + font-weight: 400; line-height: 20px; } diff --git a/src/modals/DeviceActionSuccessModal/DeviceActionSuccessModal.tsx b/src/modals/DeviceActionSuccessModal/DeviceActionSuccessModal.tsx index 419c667..a53ebf3 100644 --- a/src/modals/DeviceActionSuccessModal/DeviceActionSuccessModal.tsx +++ b/src/modals/DeviceActionSuccessModal/DeviceActionSuccessModal.tsx @@ -40,7 +40,7 @@ const DeviceActionSuccessModal = ({ case "shareXpubs": return { title: `Device Added`, - text: `Your ${deviceName} has successfully been added to Keeper App and is now available for use.`, + text: `You have added ${deviceName} successfully. It is available in the Keeper app to be used as a key.`, }; case "healthCheck": return { diff --git a/src/modals/ErrorModal/ErrorModal.tsx b/src/modals/ErrorModal/ErrorModal.tsx index 784c2e9..df294cb 100644 --- a/src/modals/ErrorModal/ErrorModal.tsx +++ b/src/modals/ErrorModal/ErrorModal.tsx @@ -14,10 +14,25 @@ interface ErrorModalProps { const ErrorModal = ({ isOpen, onClose, - errorMessage, + errorMessage: originalErrorMessage, onRetry, }: ErrorModalProps) => { const [isExpanded, setIsExpanded] = useState(false); + + let errorMessage = originalErrorMessage; + + if ( + originalErrorMessage.includes( + "A multisig account configuration with this name already exists", + ) + ) { + errorMessage = + "A wallet with this name already exists. Please rename your wallet on the Keeper app and try again."; + } else if (originalErrorMessage.includes("sign_tx canceled by user")) { + errorMessage = + "Your transaction was declined on the hardware device. Please retry if you declined unintentionally."; + } + const shortMessage = errorMessage.length > 100 ? errorMessage.slice(0, 100) + "..." diff --git a/src/screens/ConnectScreen/ConnectScreen.module.css b/src/screens/ConnectScreen/ConnectScreen.module.css index 205495f..d6c74e7 100644 --- a/src/screens/ConnectScreen/ConnectScreen.module.css +++ b/src/screens/ConnectScreen/ConnectScreen.module.css @@ -25,7 +25,7 @@ .title { margin-top: 38px; max-width: 345px; - font-size: 25px; + font-size: 24px; font-weight: 600; line-height: normal; margin-bottom: 0px; @@ -38,7 +38,7 @@ .instructionsTitle { font-size: 18px; - font-weight: 400; + font-weight: 500; display: flex; align-items: center; margin-bottom: 30px; @@ -67,17 +67,24 @@ width: 355px; } +@font-face { + font-family: "InterLocal"; + src: url("../../assets/fonts/Inter/Inter-SemiBold.ttf") format("truetype"); + font-weight: 600; + font-style: normal; +} + .note h4 { + font-family: "InterLocal"; font-size: 14px; - font-weight: 500; + font-weight: 600; margin-bottom: 0px; } .note p { margin-top: 5px; font-size: 12px; - font-weight: 300; - line-height: 17px; + line-height: 20px; font-weight: 400; } diff --git a/src/screens/ConnectScreen/ConnectScreen.tsx b/src/screens/ConnectScreen/ConnectScreen.tsx index 0b7d19b..38d4ae5 100644 --- a/src/screens/ConnectScreen/ConnectScreen.tsx +++ b/src/screens/ConnectScreen/ConnectScreen.tsx @@ -253,7 +253,9 @@ const ConnectScreen = () => {