Patrick Britton
701150bc8c
fix: reduce spacing around link preview card - remove top padding, tighten gap above
2026-02-10 12:57:31 -06:00
Patrick Britton
858d556d25
fix: sign link preview image URLs through assetService for R2 paths
2026-02-09 20:28:40 -06:00
Patrick Britton
d3d1e371c1
fix: missing closing brace in sojorn_post_card, remove invalid onExpired param in turnstile_widget
2026-02-09 19:23:57 -06:00
Patrick Britton
257acb0e51
refactor: unify post widgets, profile screens, and tree-shake dead code
...
Phase 1 - Post Widget Unification:
- Added PostViewMode.thread for compact thread styling
- Updated SojornPostCard, PostBody, PostLinkPreview, PostMedia for thread mode
- Migrated feed_personal_screen, profile_screen, viewable_profile_screen to sojornPostCard
- Deleted deprecated: post_card.dart, post_item.dart, reading_post_card.dart
Phase 2 - Profile Screen Unification:
- Renamed ViewableProfileScreen to UnifiedProfileScreen
- Made handle optional (null = own profile mode)
- Added auth listener, auto-create profile, avatar actions for own profile
- Added connections navigation to stats for own profile
- Updated all routes and references across codebase
- Deleted old profile_screen.dart
Phase 3 - Tree Shaking:
- Deleted 9 orphan files: compose_and_chat_fab, sojorn_top_bar, sojorn_app_bar,
sojorn_dialog, sojorn_card, glassmorphic_quips_sheet, kinetic_thread_widget,
reaction_strip, smart_reaction_button
2026-02-09 17:55:39 -06:00
Patrick Britton
3d4b661370
fix: improve Turnstile configuration - handle web/mobile differences, add error callbacks
2026-02-09 16:46:02 -06:00
Patrick Britton
5674c8e4f8
feat: apply thread screen news card layout to all post cards - show after body, hide URLs
2026-02-09 16:44:44 -06:00
Patrick Britton
feed826e39
feat: show news card in thread screen, hide URL text when link preview is present
2026-02-09 16:39:17 -06:00
Patrick Britton
c8b08968ba
fix: make Turnstile baseUrl nullable to avoid const error
2026-02-09 16:25:45 -06:00
Patrick Britton
ba71610fb6
fix: use actual API baseUrl for Turnstile instead of localhost
2026-02-09 16:24:10 -06:00
Patrick Britton
2dd1fe3ac2
fix: downgrade share_plus to v10.1.4 due to Android build errors with v12
2026-02-09 16:10:41 -06:00
Patrick Britton
2377899d72
fix: web thumbnail loading - bypass signing on web, add fallback, improve error handling
2026-02-09 14:45:43 -06:00
Patrick Britton
d43cf2de06
chore: update share_plus ^12.0.1, replace discontinued flutter_markdown with flutter_markdown_plus
2026-02-09 12:23:07 -06:00
Patrick Britton
5780f0ff75
feat: beacon tactical dashboard - dark map-first UI, DraggableScrollableSheet, severity pins, 'I see this too' verification, incident categories
2026-02-09 10:43:34 -06:00
Patrick Britton
442b4bef32
feat: beacon safety system - add severity/incident_status/radius to DB, model, and API
2026-02-09 10:21:07 -06:00
Patrick Britton
9a66d7df64
feat: move link preview card (news widget) above post body text
2026-02-08 15:22:18 -06:00
Patrick Britton
ea692da571
fix: RadialMenuOverlay gesture-eating bug IgnorePointer when not visible + status listener to trigger rebuild on dismiss
2026-02-08 15:04:08 -06:00
Patrick Britton
d6204db5c4
fix: prevent setState after pop with _popped guard, remove snackbar from compose to prevent scaffold corruption on Android
2026-02-08 14:58:53 -06:00
Patrick Britton
1d05300f17
feat: show link URL below post body for news stories
2026-02-08 14:53:46 -06:00
Patrick Britton
e03442f789
fix: reset focus after compose pop to prevent web freeze, show snackbar before pop, skip animation replay on thread reload
2026-02-08 14:48:44 -06:00
Patrick Britton
46bf51a6c4
feat: compose URL preview, truncated URLs in post body, sync link preview fetch
2026-02-08 14:20:38 -06:00
Patrick Britton
43199e52bc
refactor: remove hardcoded safe domain lists, fetch from backend API instead
2026-02-08 13:57:38 -06:00
Patrick Britton
e9e140df5e
feat: link preview system - OG tag fetching, safe URL validation, full-width thumbnail card
2026-02-08 13:27:13 -06:00
Patrick Britton
9a9b2eb887
feat: admin content tools UI - create user form + import posts/quips/beacons via links or CSV
2026-02-08 09:52:19 -06:00
Patrick Britton
25d3e213ea
fix: hide NSFW posts entirely when user hasn't enabled NSFW - backend filtering + Flutter safety net
2026-02-08 00:19:44 -06:00
Patrick Britton
b51c9ba90b
feat: email notifications for deactivate/delete, typed confirmations, chat backup manager, provider invalidation on logout
2026-02-07 23:39:51 -06:00
Patrick Britton
bc35eea69b
feat: add NSFW self-labeling toggle in compose, blur setting in user preferences, improve signup date pickers with modal sheets
...
- Add `isNsfw` checkbox to compose screen for user self-labeling
- Add `nsfwBlurEnabled` setting to UserSettings model (default true)
- Replace signup month/year dropdowns with modal bottom sheet pickers
- Preload Noto Color Emoji font on app startup
- Refactor notifications/discover screens to use FullScreenShell component
2026-02-07 18:15:54 -06:00
Patrick Britton
f48274706a
fix: cast birthYear subtraction to int to fix build error
2026-02-07 12:07:04 -06:00
Patrick Britton
6e8cc5d802
fix: remove anonymous label from beacons, just omit author info entirely
2026-02-07 12:04:41 -06:00
Patrick Britton
67f74deb58
feat: anonymous beacons, video metadata stripping, remove beacon author exposure
...
- GetNearbyBeacons no longer returns author info (anonymous placeholder)
- Beacons excluded from profile posts (GetPostsByAuthor)
- Vouch/report notifications removed for beacon privacy
- MediaHandler strips all metadata (EXIF/GPS/device) via ffmpeg before R2 upload
- Flutter beacon UI shows 'Anonymous Beacon' instead of author info
2026-02-07 12:02:47 -06:00
Patrick Britton
ecc02e10cc
feat: implement account deactivation, deletion (14-day), and immediate destroy with email confirmation
2026-02-07 11:13:11 -06:00
Patrick Britton
b10595f252
Age gating: birth month/year in registration, under-16 login block, under-18 NSFW block
2026-02-06 20:56:00 -06:00
Patrick Britton
256592379a
NSFW content system: blur overlay, user toggle, AI tri-state (clean/nsfw/flag), feed filtering
2026-02-06 20:42:23 -06:00
Patrick Britton
7c52a1a1ed
AI moderation config: OpenRouter integration, admin console page, 10s quip limit
2026-02-06 19:48:36 -06:00
Patrick Britton
9d7aa46a0d
Fix bracket mismatch in notifications_screen.dart
2026-02-06 16:15:03 -06:00
Patrick Britton
72264c3044
NotificationsScreen + DiscoverScreen: match Thread screen AppBar (back, home/search/chat actions, full-page push)
2026-02-06 16:12:12 -06:00
Patrick Britton
8d52e34647
DiscoverScreen: match Thread screen AppBar (back, title, home/chat actions)
2026-02-06 16:04:49 -06:00
Patrick Britton
b8bd45c0f9
NotificationsScreen: match Thread screen AppBar (back, title, home/chat actions, tab bar)
2026-02-06 16:03:50 -06:00
Patrick Britton
858d57b5b2
Keep original bottom nav, navigate search/notifications inside shell with Threads-style top bar
2026-02-06 16:00:07 -06:00
Patrick Britton
8623596903
Revert "Threads-style nav: Home, Search, +, Activity (heart+badge), Profile as bottom nav tabs"
...
This reverts commit 7f81923b3e .
2026-02-06 15:58:58 -06:00
Patrick Britton
7f81923b3e
Threads-style nav: Home, Search, +, Activity (heart+badge), Profile as bottom nav tabs
2026-02-06 15:57:16 -06:00
Patrick Britton
863ddfe654
Revert "Fix: Search and Notifications render inside shell (bottom nav stays visible), remove duplicate nav"
...
This reverts commit d3aa09424e .
2026-02-06 15:55:33 -06:00
Patrick Britton
d3aa09424e
Fix: Search and Notifications render inside shell (bottom nav stays visible), remove duplicate nav
2026-02-06 15:51:59 -06:00
Patrick Britton
c9add58b8b
Revert "Threads-style nav: move Search and Activity into bottom nav tabs, remove duplicate nav from NotificationsScreen"
...
This reverts commit 1376802f76 .
2026-02-06 15:50:38 -06:00
Patrick Britton
1376802f76
Threads-style nav: move Search and Activity into bottom nav tabs, remove duplicate nav from NotificationsScreen
2026-02-06 15:49:46 -06:00
Patrick Britton
d83cdb3778
Fix orphaned string literals in local_message_store.dart causing build failure
2026-02-06 15:40:36 -06:00
Patrick Britton
8186e9e71c
Fix notifications: add archived_at to model/queries, archived tab returns only archived, add bottom nav to notifications screen
2026-02-06 14:30:18 -06:00
Patrick Britton
46566f394b
Clean up: fix run scripts, remove 190+ debug print statements from 22 files, keep only FCM debugPrints for active notification work
2026-02-06 14:13:03 -06:00
Patrick Britton
b14e1fbfa3
Fix notification badge: archive marks as read; change notifications to full page
2026-02-06 13:04:36 -06:00
Patrick Britton
70fa1dddca
Fix content filter: remove word boundaries to catch concatenated slurs
2026-02-06 12:01:19 -06:00
Patrick Britton
b5002c1ce4
Replace blocked content popup with Instagram-style inline banner
2026-02-06 11:53:32 -06:00