Commit Graph

143 Commits

Author SHA1 Message Date
JonKazama-Hellion 2b6b2c06c2 refactor(css): theme-overrides-Layer wrappen (37 theme-scoped Komponenten-Regeln nach components) 2026-06-13 19:10:45 +02:00
JonKazama-Hellion 0ed3a8fe64 refactor(css): components-Layer wrappen (Boards, Bookmarks, Panels, Modals, Widgets, Dialoge, Accordion) 2026-06-13 19:09:50 +02:00
JonKazama-Hellion 0683686fcb refactor(css): layout-Layer wrappen (Hintergrund-Ebenen, Header, Board-Grid-Wrapper) 2026-06-13 19:09:15 +02:00
JonKazama-Hellion 486438772d refactor(css): theme-Layer wrappen (11 [data-theme]-Token-Bloecke, nur Custom Properties) 2026-06-13 19:08:50 +02:00
JonKazama-Hellion 27e4c8243c refactor(css): base-Layer wrappen (Fonts, :root-Tokens, @supports-Fallback, Reset, Typografie) 2026-06-13 19:08:18 +02:00
JonKazama-Hellion 829914a271 refactor(css): theme-scoped Komponenten-Regeln aus den 11 Theme-Bloecken in Sammelblock extrahieren 2026-06-13 19:07:44 +02:00
JonKazama-Hellion af2a5c4912 feat(css): @layer-Reihenfolge deklarieren (base/theme/layout/components/theme-overrides/utilities) 2026-06-13 19:05:49 +02:00
JonKazama-Hellion 6a64df96d0 Merge pull request 'chore(deps): update github/codeql-action digest to 7211b7c' (#11) from renovate/github-codeql-action-digest into master
Security / scan (push) Successful in 16s
Reviewed-on: #11
2026-05-27 06:30:36 +00:00
renovate-bot e5f0bf3fed chore(deps): update github/codeql-action digest to 7211b7c
Security / scan (pull_request) Successful in 19s
2026-05-22 12:32:56 +00:00
JonKazama-Hellion 25e916c3be Merge pull request 'chore(deps): update actions/checkout action to v6' (#6) from renovate/actions-checkout-6.x into master
Security / scan (push) Successful in 18s
Reviewed-on: #6
2026-05-12 05:56:33 +00:00
renovate-bot 1d7680330d chore(deps): update actions/checkout action to v6 2026-05-12 05:56:33 +00:00
JonKazama-Hellion 9323fb69e8 Merge pull request 'chore(deps): update github/codeql-action action to v4' (#8) from renovate/github-codeql-action-4.x into master
Security / scan (push) Successful in 17s
Reviewed-on: #8
2026-05-12 05:56:07 +00:00
renovate-bot 07cf13efcd chore(deps): update github/codeql-action action to v4 2026-05-12 05:56:07 +00:00
JonKazama-Hellion 4c3eec7631 Merge pull request 'chore(deps): update softprops/action-gh-release action to v3' (#9) from renovate/softprops-action-gh-release-3.x into master
Security / scan (push) Successful in 21s
Reviewed-on: #9
2026-05-12 05:55:11 +00:00
renovate-bot 71225308d3 chore(deps): update softprops/action-gh-release action to v3
Security / scan (pull_request) Failing after 2s
2026-05-12 00:34:29 +00:00
JonKazama-Hellion a5958d47a4 Merge pull request 'chore(renovate): fix schema warning (prPriority)' (#10) from chore/renovate-config-schema-fix into master
Security / scan (push) Failing after 6s
Reviewed-on: #10
2026-05-12 00:14:52 +00:00
renovate-bot 99c61cf7e3 chore(renovate): fix schema (prPriority placement)
Security / scan (pull_request) Successful in 15s
Moves prPriority out of vulnerabilityAlerts (only allowed in packageRules per schema).
Fixes the recurring 'Found renovate config warnings' issue.
2026-05-11 22:17:59 +00:00
JonKazama-Hellion 32f4c92f1b Merge pull request 'chore(deps): update actions/dependency-review-action action to v5' (#7) from renovate/actions-dependency-review-action-5.x into master
Security / scan (push) Failing after 11s
Reviewed-on: #7
2026-05-10 20:37:28 +00:00
renovate-bot 4c7a33a6fa chore(deps): update actions/dependency-review-action action to v5 2026-05-10 20:37:28 +00:00
JonKazama-Hellion 9eb0bc1c3e Merge pull request 'chore(deps): pin dependencies' (#5) from renovate/pin-dependencies into master
Security / scan (push) Successful in 17s
Reviewed-on: #5
2026-05-10 20:36:46 +00:00
renovate-bot 0fb0eec7df chore(deps): pin dependencies
Security / scan (pull_request) Successful in 28s
2026-05-10 12:33:03 +00:00
JonKazama-Hellion 0d4708bf11 chore(config): migrate Renovate config (#3)
Security / scan (push) Successful in 27s
Auto-merge: Renovate config migration (matchPackagePrefixes -> matchPackageNames).
2026-05-09 15:46:45 +00:00
renovate-bot f2b070e201 chore(config): migrate config renovate.json
Security / scan (pull_request) Successful in 24s
2026-05-09 15:41:56 +00:00
JonKazama-Hellion 8176f91d4c Merge pull request 'chore: Configure Renovate' (#1) from renovate/configure into master
Security / scan (push) Successful in 17s
Reviewed-on: #1
2026-05-09 10:32:11 +00:00
JonKazama-Hellion d68bb35e7a renovate.json aktualisiert
Signed-off-by: Jon Kazama <kontakt@hellion-media.de>
2026-05-09 10:32:11 +00:00
renovate-bot 10c70f8bf9 Add renovate.json 2026-05-09 10:32:11 +00:00
JonKazama-Hellion 28b9061756 chore: add reusable security scan workflow
Security / scan (push) Failing after 11s
Calls JonKazama-Hellion/security-workflows for Semgrep SAST + Trivy
filesystem vulnerability scan. Runs on push to main/master, on every
PR, and weekly Monday 06:00 UTC.
2026-05-09 11:28:10 +02:00
JonKazama-Hellion 60a1bec00d feat(release): Version auf v2.1.0 bumpen — Calculator Upgrade
Alle 3 Manifests, newtab.html, data.js, app.js auf 2.1.0.
CHANGELOG-Eintrag mit allen 6 neuen Calculator-Modi.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
v2.1.0
2026-04-16 22:21:45 +02:00
JonKazama-Hellion 153db9c24d feat(calculator): Stationeers Calculator mit Gas/Furnace/Solar/Atmo
4 Sub-Modi: PV=nRT Gas-Rechner, Furnace Combustion,
Solar/Battery Planung und Atmosphere Mixer.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-16 22:20:09 +02:00
JonKazama-Hellion 2e691b8b51 fix(calculator): save() überschreibt Game-Mode Sub-States nicht mehr
data.calculator wurde bei jedem save() komplett ersetzt, wodurch
factorio/satisfactory Sub-Mode-Präferenzen verloren gingen.
Jetzt werden nur die Core-Properties einzeln gesetzt.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-16 22:16:19 +02:00
JonKazama-Hellion 11419bd589 feat(calculator): Factorio Calculator mit Ratio, Belt und Maschinen-Modus
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-16 22:12:28 +02:00
JonKazama-Hellion 27fa4f53af feat(calculator): Satisfactory Calculator mit Overclock-Power 2026-04-16 22:10:11 +02:00
JonKazama-Hellion 8fdd46beec feat(calculator): Unit-Converter mit 6 Kategorien 2026-04-16 22:05:51 +02:00
JonKazama-Hellion 3dd9723271 fix(calc-scientific): sqrt/square mit lastResult, Negate-Regex
sqrt und x² transferieren _lastResult in _currentExpr wenn Expression leer.
handleNegate Regex akzeptiert auch dezimal-first Zahlen (.5).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-16 22:03:02 +02:00
JonKazama-Hellion 2f23c13de1 feat(calculator): Scientific-Modus implementieren
Neuer Taschenrechner-Modus mit 6 wissenschaftlichen Buttons (√, x², xⁿ, π, e, ±),
Formel-Helfer (Kreisfläche, Kreisumfang, °C↔°F, Pythagoras, Prozent) und
erweiterter Tastaturunterstützung (p → Pi, ^ → Potenz).

- calc-scientific.js: IIFE, registriert 'scientific' Mode via Calculator.registerMode()
- newtab.html: Script-Tag nach calculator.js eingefügt (Load-Order eingehalten)
- i18n.js: 15 neue Keys pro Sprache (DE + EN)
- main.css: Styles für .calc-sci-buttons und .calc-formula-* Komponenten
2026-04-16 21:59:10 +02:00
JonKazama-Hellion f5cebd8d34 fix(calculator): Dezimal-Eingabe nach ^ ermöglichen
Split-Regex für Dezimalpunkt-Check um ^ erweitern,
damit z.B. 2.3^1.5 korrekt eingegeben werden kann.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-16 21:56:29 +02:00
JonKazama-Hellion 10318008e6 feat(calculator): Parser um ^ (Potenz) und sqrt() erweitern 2026-04-16 21:51:30 +02:00
JonKazama-Hellion 50319f8ba9 fix(calculator): init-Reihenfolge und save() Daten-Erhalt
Standard-Modus vor open() registrieren (verhindert leeres Widget bei Restore).
save() nutzt read-modify-write statt Overwrite (bewahrt Timer/ImageRef-Daten).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-16 21:49:51 +02:00
JonKazama-Hellion b71e8cde1b fix(calculator): Auto-Resize via DOM statt nicht-existierendem WidgetManager.resize()
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-16 21:45:35 +02:00
JonKazama-Hellion 2487ac772f feat(calculator): Tab-System mit registerMode() und switchMode()
- Neue Eigenschaften: _modes (Map), _activeMode, _tabBarEl
- registerMode() für externe Mode-Dateien, aktualisiert Tab-Bar live
- renderBody() baut jetzt Tab-Bar + .calc-mode-body Container
- _renderTabBar(), _updateTabBar(), switchMode() implementiert
- _renderStandardMode() extrahiert aus altem renderBody()
- save()/load(): activeMode wird persistiert und wiederhergestellt
- onClose(): aktiven Modus sauber aufräumen, _tabBarEl zurücksetzen
- CSS: .calc-tab-bar, .calc-tab, .calc-tab-icon, .calc-tab-label, .calc-mode-body
- i18n: calculator.tab.standard (DE + EN)
2026-04-16 21:43:03 +02:00
JonKazama-Hellion 7be391de99 docs(plan): Calculator Upgrade v2.1.0 Implementierungsplan
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-16 21:38:57 +02:00
JonKazama-Hellion cebf277a5d docs(spec): Calculator Upgrade v2.1.0 Design-Spec
6 Modi: Standard, Scientific, Unit-Converter, Satisfactory, Factorio, Stationeers.
Tab-basierte Architektur, Registrierungs-Pattern, erweiteter Shunting-Yard Parser.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-16 21:22:07 +02:00
JonKazama-Hellion 92c5b23b44 fix: image-ref Titel-Bug, CSP, ARIA-Labels, Onboarding i18n
- image-ref.js: .widget-title-text → .widget-title (Titel-Update war kaputt)
- Alle 3 Manifests: explizites content_security_policy (script-src/object-src 'self')
- i18n.js: applyLanguage() setzt aria-label synchron zu title
- newtab.html: 6 Close-Buttons + Search-Submit mit data-i18n-title
- i18n.js: 4 neue Keys (dialog.close, search.submit_title, onboarding.tradecenter_desc)
- onboarding.js: TradeCenter-Beschreibung auf t() umgestellt

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-16 20:51:54 +02:00
JonKazama-Hellion 7f22627272 Merge branch 'feature/hardening-v2.0.1' — Hardening Release v2.0.1
Security: URL-Validierung (bgUrl + Import), immutable Data-Mapping
Stability: Widget Event-System (EventTarget), transitionend Race Fix
Privacy: Lokale Letter-Icons statt Google Favicons API
Compat: backdrop-filter Fallback, _locales in Release-ZIPs
i18n: 10 fehlende Übersetzungs-Keys ergänzt
Quality: Clock Interval ID, Notes-Import über init()
2026-04-16 20:37:03 +02:00
JonKazama-Hellion 9b6515aab3 fix(ci): _locales/ in alle Release-ZIPs aufnehmen
Manifest nutzt __MSG_extName__ / __MSG_extDesc__ mit default_locale,
aber die _locales/ Dateien fehlten in allen drei ZIP-Befehlen.
Ohne sie kann der Browser die Extension nicht laden.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-16 20:35:59 +02:00
JonKazama-Hellion 675e21d886 fix(release): fehlende Versionsnummern + bgUrl-Validierung
Drei Stellen hatten noch '2.0.0' statt '2.0.1': newtab.html About-Sektion,
data.js Export und app.js Backup-Export. FileReader-Upload in settings.js
validiert jetzt bgUrl via isValidBgUrl() (Defense-in-Depth).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-16 20:33:38 +02:00
JonKazama-Hellion 536e0771a4 chore(release): bump version to v2.0.1 — hardening release
Security fixes, widget event system, local favicons, i18n completeness,
backdrop-filter fallback, code quality improvements. See CHANGELOG.md.
2026-04-16 20:28:22 +02:00
JonKazama-Hellion 02cdee76a8 fix(i18n): complete missing translations for toolbar tooltips and button texts
Add data-i18n-title to 5 header buttons, data-i18n to 3 settings buttons.
Add 10 new keys to STRINGS.de and STRINGS.en including background URL
validation error messages.
2026-04-16 20:27:17 +02:00
JonKazama-Hellion b6d347cd15 fix(compat): add backdrop-filter fallback for Brave Shields
Add --bg-solid-fallback CSS variable to all 11 themes and a
@supports not (backdrop-filter) block. UI remains usable when
Brave Shields or strict fingerprinting settings block backdrop-filter.
2026-04-16 20:25:10 +02:00
JonKazama-Hellion 6704f4c955 feat(privacy): replace Google Favicons with local letter icons
Remove getFaviconUrl() and all external network requests. Bookmarks now
show a colored letter icon with deterministic hue based on title.
Eliminates privacy leak and Brave Shields compatibility issues.
2026-04-16 20:22:18 +02:00