From 89a310a7e54aea76e06dfdcdd31186702c3c409a Mon Sep 17 00:00:00 2001 From: Claude Date: Tue, 19 May 2026 09:55:31 +0000 Subject: [PATCH] Flip FX rate direction to X-foreign=1-local; add A-/A+ zoom buttons MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Exchange rate semantics changed from "1 foreign = X local" to "X foreign = 1 local" (divide instead of multiply). Updates the calculation, preview note, both PDF fxStr strings, and config labels. Adds accessible font-size A−/A+ buttons to the lang-bar (always visible). Zooms only #form-root; index persisted in localStorage. Language selector shown only when multiple languages are configured. https://claude.ai/code/session_015iyCBgoTXNNqaErR287U1u --- app/config.yml | 8 +++---- app/index.html | 57 +++++++++++++++++++++++++++++++++++++++----------- 2 files changed, 49 insertions(+), 16 deletions(-) diff --git a/app/config.yml b/app/config.yml index 392fa25..0ae2ed2 100644 --- a/app/config.yml +++ b/app/config.yml @@ -351,10 +351,10 @@ translations: fr: Code devise "no": Valutakode exchange-rate: - en: "Exchange rate (1 foreign = X local)" - de: "Wechselkurs (1 Fremd = X Inland)" - fr: "Taux de change (1 étranger = X local)" - "no": "Valutakurs (1 utenlandsk = X lokal)" + en: "Exchange rate (X foreign = 1 local)" + de: "Wechselkurs (X Fremd = 1 Inland)" + fr: "Taux de change (X étranger = 1 local)" + "no": "Valutakurs (X utenlandsk = 1 lokal)" per-item: en: Price per item (foreign currency) de: Preis je Einheit (Fremdwährung) diff --git a/app/index.html b/app/index.html index d4b17e3..62ea4ff 100644 --- a/app/index.html +++ b/app/index.html @@ -69,6 +69,14 @@ } #lang-bar label { font-size: 12px; color: var(--text-muted); white-space: nowrap; } #lang-bar select { width: auto; } + #lang-bar .lang-part { display: flex; align-items: center; gap: 8px; } + .sz-btn { + background: var(--white); border: 1px solid var(--border); border-radius: 4px; + color: var(--text); font-size: 13px; font-weight: 600; padding: 2px 8px; + line-height: 1.4; cursor: pointer; + } + .sz-btn:hover { background: var(--surface); } + #sz-label { font-size: 11px; color: var(--text-muted); min-width: 28px; text-align: center; } /* ── Invoice banner ─────────────────────────────────────────────────────── */ #inv-banner { @@ -311,11 +319,16 @@
- -