5da6bebe36a8

settings polish — Peach Pro card first in stack and renumber I-VII; drop Mobile apps from Pro features (mobile is free); rename 'Vault Health' row to 'Advanced Vault Health' (v3.6.76)

time
2026-05-21 14:36 UTC · 5 months ago
machine
koh2
parent
bb40658c5731
4 files manifest.firefox.json+1 −1manifest.json+1 −1package.json+1 −1src/popup/views/Settings.tsx+16 −17
manifest.firefox.json+1 −1
@@ -2,7 +2,7 @@22   "_comment_audio_capture": "Firefox does not honor the Chrome 'audioCapture' optional_permission — getUserMedia in WebExtensions is gated solely by the runtime permission prompt. Microphone access for chirp pairing works from the popup under the existing '<all_urls>' host permission; no manifest entry is required or accepted here.",33   "manifest_version": 3,44   "name": "Peach",5-  "version": "3.6.75",5+  "version": "3.6.76",66   "description": "Zero-knowledge password manager",77   "browser_specific_settings": {88     "gecko": {

view file

manifest.json+1 −1
@@ -1,7 +1,7 @@11 {22   "manifest_version": 3,33   "name": "Peach",4-  "version": "3.6.75",4+  "version": "3.6.76",55   "description": "Zero-knowledge password manager",66   "action": {77     "default_popup": "src/popup/index.html",

view file

package.json+1 −1
@@ -1,6 +1,6 @@11 {22   "name": "peach",3-  "version": "3.6.75",3+  "version": "3.6.76",44   "description": "Zero-knowledge password manager",55   "type": "module",66   "scripts": {

view file

src/popup/views/Settings.tsx+16 −17
@@ -160,8 +160,17 @@160160   const isPro = () => props.isPro ?? false;161161   const cards = createMemo<StackCardSpec[]>(() => [162162     {163+      id: "pro",164+      num: "I · FOREVER",165+      title: "Peach Pro",166+      lede: isPro() ? "active · paid once, yours forever" : "$39 once · yours forever",167+      bgVar: "--stack-pro-bg",168+      fgVar: "--stack-pro-fg",169+      icon: "spark",170+    },171+    {163172       id: "protection",164-      num: "I · PROTECT",173+      num: "II · PROTECT",165174       title: "Protection",166175       lede: `${props.breachMonitoring ? "breaches watched" : "breach watch off"} · ${props.lockOnClose ? "locks on close" : "manual lock"}`,167176       bgVar: "--stack-protect-bg",@@ -170,7 +179,7 @@170179     },171180     {172181       id: "vault",173-      num: "II · KEEP",182+      num: "III · KEEP",174183       title: "Vault",175184       lede: `${props.entriesCount} ${props.entriesCount === 1 ? "entry" : "entries"} · backups, history, cleanup`,176185       bgVar: "--stack-vault-bg",@@ -179,7 +188,7 @@179188     },180189     {181190       id: "sync",182-      num: "III · ECHO",191+      num: "IV · ECHO",183192       title: "Sync",184193       lede: isPro() ? "pair by chirp, keep in step" : "Pro · encrypted device pairing",185194       bgVar: "--stack-sync-bg",@@ -188,7 +197,7 @@188197     },189198     {190199       id: "appearance",191-      num: "IV · DRESS",200+      num: "V · DRESS",192201       title: "Appearance",193202       lede: `${props.theme} · ${props.accentColor} · ${props.textSize}`,194203       bgVar: "--stack-appear-bg",@@ -197,7 +206,7 @@197206     },198207     {199208       id: "shortcuts",200-      num: "V · KEYS",209+      num: "VI · KEYS",201210       title: "Shortcuts",202211       lede: `${SHORTCUT_DESCRIPTORS.length} bindings · what your fingers know`,203212       bgVar: "--stack-shortcut-bg",@@ -205,15 +214,6 @@205214       icon: "keys",206215     },207216     {208-      id: "pro",209-      num: "VI · FOREVER",210-      title: "Peach Pro",211-      lede: isPro() ? "active · paid once, yours forever" : "$39 once · yours forever",212-      bgVar: "--stack-pro-bg",213-      fgVar: "--stack-pro-fg",214-      icon: "spark",215-    },216-    {217217       id: "feedback",218218       num: "VII · ECHO",219219       title: "Feedback",@@ -1066,7 +1066,7 @@10661066             </select>10671067           </div>10681068           <div class="peach-settings-row peach-settings-row--meta">1069-            <span>Vault Health</span>1069+            <span>Advanced Vault Health</span>10701070             <button class="peach-btn peach-btn--subtle peach-btn--sm" onClick={props.onOpenHealth}>10711071               open10721072             </button>@@ -1516,8 +1516,7 @@15161516     { feature: "sync", name: "Peach Sync", desc: "Encrypted · peer-to-peer" },15171517     { feature: "codex", name: "Peach Codex", desc: "Restore from paper" },15181518     { feature: "passkeys", name: "Passkeys", desc: "Zero-knowledge WebAuthn" },1519-    { feature: "ios_app", name: "Mobile apps", desc: "Android · iOS soon" },1520-    { feature: "advanced_health", name: "Vault health", desc: "Reuse · age · exposure" },1519+    { feature: "advanced_health", name: "Advanced Vault Health", desc: "Reuse · age · exposure" },15211520   ];15221521 15231522   const PRO_SECURITY_FEATURES: Array<{

view file