Commit Graph

220 Commits

Author SHA1 Message Date
Ulas Kalayci d720772939 ux: empty state CTA fades in with delay to draw attention 2026-04-30 09:11:45 +02:00
Ulas Kalayci f1f307388e ux: hide search kbd hint after first keyboard use (long loop) 2026-04-30 09:10:30 +02:00
Ulas Kalayci 89deb7b0ee ux: FAB entry animation stops after 5 views (long loop) 2026-04-30 09:09:39 +02:00
Ulas Kalayci 5a93ac36aa chore: release v0.37.2 2026-04-30 08:20:36 +02:00
Ulas Kalayci 3cd6eb40d4 chore: release v0.37.1 2026-04-30 07:44:30 +02:00
Ulas Kalayci 6e40ba89df fix(calendar): zeige korrekte Fehlermeldung bei zu großem Anhang; nutze --module-accent statt --module-calendar im Dropzone-CSS
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-30 07:15:14 +02:00
Rafael Foster 4aa9bc2a48 fix(calendar): tighten modal and attachment rendering 2026-04-29 22:44:25 -03:00
Ulas Kalayci 3f69c7c698 chore: release v0.36.0 2026-04-29 21:15:26 +02:00
Ulas Kalayci 5fd2ff80ad fix(ux): dashboard-metriken — wert-zahl xl/bold, label 2xs/uppercase 2026-04-29 21:04:49 +02:00
Ulas Kalayci 6974d7a86d fix(ux): more-icon auf ellipsis; sidebar-labels ab 1280px statt 1440px 2026-04-29 21:03:13 +02:00
Ulas Kalayci e7f0b21de9 fix(ux): such-overlay input nach oben — standard scan-pfad oben→unten 2026-04-29 21:02:34 +02:00
Ulas Kalayci 17232cf35f fix(ux): touch-targets auf 44px (iOS-Minimum) anheben 2026-04-29 21:02:00 +02:00
Rafael Foster 3b93cf0643 Merge branch 'ulsklyc:main' into main 2026-04-29 15:30:32 -03:00
Ulas Kalayci 6501588370 feat: more-sheet 2-column, drag handle, kitchen/search button styles 2026-04-29 20:01:11 +02:00
Ulas Kalayci 7e137d1c21 feat: add kitchen-tabs utility, CSS, token and test 2026-04-29 19:55:28 +02:00
Rafael Foster 0cbd93e4e0 feat(settings): add database backup management 2026-04-29 14:04:04 -03:00
Ulas Kalayci a872ac52a9 chore: release v0.33.1
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-29 19:03:04 +02:00
Ulas Kalayci ab30c2ab35 feat: overlapping event layout and calendar event attachments (#107)
- Overlapping timed events in week/day views now render side-by-side using a column-layout algorithm
- Calendar events support optional file attachments (images, PDFs, documents up to 5 MB)
- Attachment images shown in event popup; other files as download links
- Birthday modal redesigned with photo/avatar side-by-side with name/date fields
- DB migration 27: adds attachment_name, attachment_mime, attachment_size, attachment_data columns to calendar_events
- Server-side MIME allowlist and size validation for attachments
- i18n: all 15 locales include new attachment keys (de properly translated)

Co-Authored-By: Rafael Foster <rafaelfoster@users.noreply.github.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-29 16:54:02 +02:00
Ulas Kalayci d6ab4bb02f fix: explicit grid-column for widget--secondary at 768px breakpoint 2026-04-29 16:44:13 +02:00
Ulas Kalayci 593ca9009e feat: visual hierarchy in dashboard — primary widgets (tasks, calendar) span 2 columns
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-29 16:42:09 +02:00
Ulas Kalayci f973601922 feat: self-host Plus Jakarta Sans variable font for consistent cross-platform typography 2026-04-29 16:40:00 +02:00
Ulas Kalayci 115796c3c5 fix: use overflow: clip on page roots to allow sticky toolbar positioning 2026-04-29 16:36:53 +02:00
Ulas Kalayci 91f15bc62f feat: sticky toolbars in all module pages 2026-04-29 16:34:02 +02:00
Rafael Foster d9218a4941 feat(calendar): add overlapping layout and event attachments 2026-04-29 08:53:07 -03:00
Rafael Foster 5f6baeab4f Merge branch 'main' of github.com:rafaelfoster/oikos 2026-04-29 08:13:48 -03:00
Ulas Kalayci 50b224eaef feat: restructure bottom-nav — search as primary slot, sidebar tooltips for collapsed mode 2026-04-29 13:12:56 +02:00
Ulas Kalayci 9b7909f690 fix: page transition crossfade eliminates dark-mode flash on navigation
Removes the sequential fade-out → wait → fade-in pattern that causes
a visible black flash in dark mode between page transitions. Replaces
with immediate crossfade (new page fades in over old content, no wait).

Changes:
- layout.css: Add page-crossfade-in keyframe (0.18s) + prefers-reduced-motion override
- router.js: Remove outClass/inClass direction logic and oldPage fadeout wait

The new approach:
1. Old page remains visible until new page renders
2. New page fades in (0.18s) with full opacity, overlaying old content
3. No 120ms delay = no visible flash in dark mode

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-29 13:09:21 +02:00
Ulas Kalayci ca26befecd fix: remove redundant toast-container properties in tablet media query 2026-04-29 13:07:59 +02:00
Ulas Kalayci 6852d9fbf8 fix: bottom-nav hide-on-scroll CSS, mehr-sheet 3-col, tablet toast position 2026-04-29 13:06:39 +02:00
Rafael Foster f1ac3c29f0 Merge branch 'main' of github.com:rafaelfoster/oikos 2026-04-29 07:21:18 -03:00
Rafael Foster 36913faf8d fix(birthdays): anchor photo action buttons under avatar 2026-04-29 07:11:34 -03:00
Rafael Foster 3e0549524e fix(birthdays): match profile picture editor pattern 2026-04-29 07:09:37 -03:00
Rafael Foster 1ca8110d56 fix(documents): improve upload modal and document theme 2026-04-29 06:27:37 -03:00
Rafael Foster 72fca92066 feat(documents): add family document management 2026-04-29 06:14:29 -03:00
Rafael Foster 72f103af04 fix(tasks): make task modal body size to content when reminder is enabled 2026-04-29 05:45:41 -03:00
Rafael Foster 6a47cda9a9 fix(tasks): remove extra modal space when enabling reminders 2026-04-29 05:43:04 -03:00
Rafael Foster 0e7142edc2 feat(tasks): advanced reminders UI and recurrence layout improvements 2026-04-29 05:33:06 -03:00
Rafael Foster 5062e1e61f Improve account profile and sidebar details 2026-04-28 21:11:49 -03:00
Rafael Foster 69897666fb Refine family settings and calendar dentist icon 2026-04-28 20:28:50 -03:00
Ulas Kalayci 774d9e87ef fix(dashboard): weather widget white-on-white in light mode 2026-04-28 12:46:49 +02:00
Rafael Foster 33e4afc009 Refine calendar icon picker 2026-04-27 21:53:18 -03:00
Rafael Foster 1d1d2291e5 Add calendar event icons and flexible date inputs 2026-04-27 21:38:06 -03:00
Ulas Kalayci 890b00f0b0 fix(ux): toast swipe-to-dismiss, widget-icons neutral, reminders.css lazy 2026-04-27 22:32:09 +02:00
Ulas Kalayci 688d6a6efa feat(ux): kontextuelle Onboarding-Tipps in Empty-States aller Module 2026-04-27 22:31:01 +02:00
Ulas Kalayci 56252d3537 feat(desktop): globale Keyboard Shortcuts (/, n, ?, g+Buchstabe) 2026-04-27 22:29:09 +02:00
Ulas Kalayci 218282875c feat(dashboard): Widget-Reihenfolge per Drag-and-Drop anpassbar
Config-Schema um order-Feld erweitert.
Bestehende Configs werden automatisch migriert.
Drag-and-Drop zusätzlich zu Up/Down-Buttons im Customize-Modal.
2026-04-27 22:27:59 +02:00
Ulas Kalayci 048e31e933 feat(pwa): Offline-Banner in App-Shell, reminders.css lazy geladen
Zeigt automatisch wenn navigator.onLine === false.
Blendet sich aus sobald Verbindung wiederhergestellt.
reminders.css aus globalem <link> entfernt (wird lazy geladen).
2026-04-27 22:24:42 +02:00
Ulas Kalayci d0adde29c4 chore(css): totes .fab-CSS entfernen, alle Seiten nutzen .page-fab 2026-04-27 22:22:39 +02:00
Ulas Kalayci e839e40906 fix(ui): modal-close 44px, widget-link tap-target 44px
Modal-Close: --target-md (40px) → --target-base (44px), Apple HIG.
Widget-Link: min-height 44px + padding für ausreichendes Tap-Target.
2026-04-27 22:21:36 +02:00
Rafael Foster 7e4db48a9f Merge branch 'main' of github.com:rafaelfoster/oikos 2026-04-27 08:52:18 -03:00