2d236b3fa7d9
PeachScript display: 22px glyphs, accent-tinted surface and glow, fill remaining vertical space, hidden horizontal scroll, styled vertical scrollbar; export menu: distribute three format cards across the popup (v2.5.1)
- time
- 2026-04-27 17:26 UTC · 6 months ago
- machine
- koh2
- parent
- 337f921aba65
↓ peach-browser-2d236b3f.tar.gzatlas at this save
files changed5 files
manifest.firefox.json+1 −1manifest.json+1 −1package.json+1 −1src/popup/styles/popup.css+65 −10src/popup/views/Export.tsx+3 −3manifest.firefox.json+1 −1
@@ -1,7 +1,7 @@11 {22 "manifest_version": 3,33 "name": "Peach",4- "version": "2.5.0",4+ "version": "2.5.1",55 "description": "Zero-knowledge password manager",66 "browser_specific_settings": {77 "gecko": {manifest.json+1 −1
@@ -1,7 +1,7 @@11 {22 "manifest_version": 3,33 "name": "Peach",4- "version": "2.5.0",4+ "version": "2.5.1",55 "description": "Zero-knowledge password manager",66 "action": {77 "default_popup": "src/popup/index.html",package.json+1 −1
@@ -1,6 +1,6 @@11 {22 "name": "peach",3- "version": "2.5.0",3+ "version": "2.5.1",44 "description": "Zero-knowledge password manager",55 "type": "module",66 "scripts": {src/popup/styles/popup.css+65 −10
@@ -1577,21 +1577,37 @@15771577 }15781578 .peach-script-string {15791579 font-family: "PeachScript", monospace;1580- font-size: 11px;1581- line-height: 1.9;1582- letter-spacing: 0.06em;1580+ font-size: 22px;1581+ line-height: 1.55;1582+ letter-spacing: 0.04em;15831583 color: var(--peach-t0);15841584 word-break: break-all;1585+ overflow-wrap: anywhere;1586+ white-space: normal;15851587 user-select: all;1586- background: var(--peach-input-bg, var(--surface-card));1587- border: 1px solid var(--peach-t3);1588- border-radius: 6px;1589- padding: 12px;1590- margin: 0 0 8px;1591- max-height: 180px;1588+ background: color-mix(in srgb, var(--peach-accent) 5%, var(--peach-bg));1589+ border: 1px solid color-mix(in srgb, var(--peach-accent) 22%, var(--peach-t3));1590+ border-radius: 8px;1591+ padding: 14px 16px;1592+ margin: 0;1593+ flex: 1;1594+ min-height: 140px;1595+ overflow-x: hidden;15921596 overflow-y: auto;1593- white-space: pre-wrap;1597+ scrollbar-width: thin;1598+ scrollbar-color: var(--peach-accent-dim) transparent;1599+ text-shadow: 0 0 24px color-mix(in srgb, var(--peach-accent) 32%, transparent);15941600 }1601+.peach-script-string::-webkit-scrollbar {1602+ width: 6px;1603+}1604+.peach-script-string::-webkit-scrollbar-thumb {1605+ background: var(--peach-accent-dim);1606+ border-radius: 3px;1607+}1608+.peach-script-string::-webkit-scrollbar-track {1609+ background: transparent;1610+}15951611 .peach-script-input {15961612 font-family: "PeachScript", monospace;15971613 font-size: 11px;@@ -1648,6 +1664,45 @@16481664 .peach-export-card--primary {16491665 background:16501666 linear-gradient(180deg, color-mix(in srgb, var(--peach-accent) 8%, transparent), color-mix(in srgb, var(--peach-accent) 2%, transparent));1667+}1668+1669+/* Export menu — distribute the three format cards across the popup. */1670+.peach-export-menu {1671+ display: flex;1672+ flex-direction: column;1673+ flex: 1;1674+ min-height: 0;1675+}1676+.peach-export-menu .peach-settings-group {1677+ flex: 1;1678+ display: flex;1679+ flex-direction: column;1680+ justify-content: center;1681+ gap: 10px;1682+}1683+1684+/* Result view — the script-string fills the remaining vertical surface. */1685+.peach-export-result-group {1686+ flex: 1;1687+ display: flex;1688+ flex-direction: column;1689+ min-height: 0;1690+}1691+.peach-export-result-group .peach-export-card {1692+ flex: 1;1693+ min-height: 0;1694+ display: flex;1695+ flex-direction: column;1696+ gap: 10px;1697+}1698+.peach-export-result-group .peach-export-card-copy {1699+ flex-shrink: 0;1700+}1701+.peach-export-result-group .peach-settings-label {1702+ flex-shrink: 0;1703+}1704+.peach-export-result-group button {1705+ flex-shrink: 0;16511706 }16521707 .peach-export-card-head {16531708 display: flex;src/popup/views/Export.tsx+3 −3
@@ -50,7 +50,7 @@5050 return (5151 <>5252 <OverlayHeader title="export" onBack={props.onBack} />53- <div class="peach-settings-body">53+ <div class="peach-settings-body peach-export-menu">5454 <div class="peach-settings-group peach-export-card peach-export-card--primary">5555 <p class="peach-settings-label">peachscript</p>5656 <p class="peach-export-card-copy">@@ -160,7 +160,7 @@160160 <Show161161 when={script()}162162 fallback={163- <div class="peach-settings-group peach-export-card peach-export-card--primary">163+ <div class="peach-settings-group peach-export-card peach-export-card--primary peach-export-pass-group">164164 <p class="peach-settings-label">backup password</p>165165 <p class="peach-export-card-copy">166166 Choose a password to lock this PeachScript. You'll need it@@ -202,7 +202,7 @@202202 </div>203203 }204204 >205- <div class="peach-settings-group peach-export-card peach-export-card--primary">205+ <div class="peach-settings-group peach-export-card peach-export-card--primary peach-export-result-group">206206 <p class="peach-settings-label">peachscript</p>207207 <div class="peach-script-string">{script()}</div>208208 <p class="peach-export-card-copy" style="margin:0 0 8px">