qr-secure-send 1.7.0 → 1.7.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/index.html +18 -6
  2. package/package.json +1 -1
package/index.html CHANGED
@@ -159,7 +159,7 @@
159
159
  <header>
160
160
  <h1>QR Secure Send</h1>
161
161
  <p>Encrypt and transfer secrets via QR code</p>
162
- <p style="font-size:0.7rem;color:#484f58;margin-top:0.2rem">v1.7.0</p>
162
+ <p style="font-size:0.7rem;color:#484f58;margin-top:0.2rem">v1.7.2</p>
163
163
  </header>
164
164
 
165
165
  <div class="tabs">
@@ -189,8 +189,11 @@
189
189
  Encrypt with crypto wallet (MetaMask)
190
190
  </label>
191
191
  <div id="send-wallet-fields" class="wallet-fields">
192
- <p class="info" style="text-align:left;margin-bottom:0.5rem">
193
- Your wallet's private key will be used to encrypt. Only the same wallet can decrypt.
192
+ <p class="info" style="text-align:left;margin-bottom:0.5rem;line-height:1.5">
193
+ MetaMask will sign a fixed message using your private key.
194
+ The resulting signature becomes the encryption key &mdash; only the same wallet can reproduce it.
195
+ Your private key never leaves MetaMask.
196
+ You can also set a passphrase above for extra security (both will be needed to decrypt).
194
197
  </p>
195
198
  <button class="wallet-btn" id="send-wallet-connect-btn">Connect MetaMask</button>
196
199
  <div id="send-wallet-status" class="wallet-address" style="display:none"></div>
@@ -1016,7 +1019,7 @@
1016
1019
  // PAYLOAD HELPERS
1017
1020
  // =========================================================================
1018
1021
 
1019
- const APP_VERSION = "1.7.0";
1022
+ const APP_VERSION = "1.7.2";
1020
1023
  const GH_PAGES_URL = "https://degenddy.github.io/qr-secure-send/?v=" + APP_VERSION;
1021
1024
  const METAMASK_DEEP_URL = "https://link.metamask.io/dapp/degenddy.github.io/qr-secure-send/?v=" + APP_VERSION;
1022
1025
 
@@ -1313,6 +1316,15 @@
1313
1316
 
1314
1317
  // Check URL hash for incoming encrypted data (link-based receive flow)
1315
1318
  if (location.hash.startsWith("#QRSEC:") || location.hash.startsWith("#QRSECW:")) {
1319
+ // Wallet mode + no MetaMask → redirect to MetaMask deep link (mobile)
1320
+ if (location.hash.startsWith("#QRSECW:") && typeof window.ethereum === 'undefined') {
1321
+ const isMobile = /iPhone|iPad|iPod|Android/i.test(navigator.userAgent);
1322
+ if (isMobile) {
1323
+ window.location.href = METAMASK_DEEP_URL + location.hash;
1324
+ // stop further execution; page will redirect
1325
+ }
1326
+ }
1327
+
1316
1328
  document.querySelectorAll(".tab-btn").forEach(b => b.classList.remove("active"));
1317
1329
  document.querySelectorAll(".panel").forEach(p => p.classList.remove("active"));
1318
1330
  document.querySelector('[data-tab="receive"]').classList.add("active");
@@ -1323,8 +1335,8 @@
1323
1335
  if (location.hash.startsWith("#QRSECW:")) {
1324
1336
  document.getElementById("recv-wallet-section").style.display = "block";
1325
1337
  document.getElementById("link-notice").textContent =
1326
- "Encrypted data received via link. This secret requires wallet authentication. " +
1327
- "Connect your wallet, enter the passphrase, and click Decrypt.";
1338
+ "Encrypted data received via link. This secret requires wallet signing. " +
1339
+ "Connect & sign with your wallet, enter the passphrase (if set), and click Decrypt.";
1328
1340
  }
1329
1341
  }
1330
1342
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "qr-secure-send",
3
- "version": "1.7.0",
3
+ "version": "1.7.2",
4
4
  "description": "Encrypt and transfer secrets via QR code",
5
5
  "keywords": ["qr", "qrcode", "encryption", "password", "secure", "transfer"],
6
6
  "author": "",