Commit Graph

1208 Commits

Author SHA1 Message Date
Alex Gleason 0ce79be2df Merge branch 'opencode/1772318974' 2026-02-28 17:21:20 -06:00
Alex Gleason ce08e068cb Merge branch 'opencode/1772318980' 2026-02-28 17:20:17 -06:00
Alex Gleason 92af295476 Show 'Commenting on @Name' for wall comments instead of 'a post' 2026-02-28 17:20:05 -06:00
Mary Kate Fain 103020ea37 Make inactive sidebar nav items full opacity text-foreground 2026-02-28 17:19:32 -06:00
Mary Kate Fain a7fd1f1fe9 Make sidebar nav text darker and update Retro Pop background color
- Change inactive sidebar nav items from text-muted-foreground to
  text-foreground/70 for better readability
- Update Retro Pop preset background color to #d9d6ff (244 100% 92%)
2026-02-28 17:18:14 -06:00
Alex Gleason 2cd4124d65 Enlarge emoji-only posts with robust detection for ZWJ, flags, keycaps, skin tones, and NIP-30 custom emojis 2026-02-28 17:17:40 -06:00
Alex Gleason daa54305dc Include profile owner's pubkey in wall comments authors filter 2026-02-28 17:16:42 -06:00
Mary Kate Fain e29f6afc32 Merge branch 'main' of gitlab.com:soapbox-pub/ditto-mew 2026-02-28 17:15:06 -06:00
Alex Gleason e4d15b4457 Merge branch 'main' of gitlab.com:soapbox-pub/ditto-mew
# Conflicts:
#	src/pages/SearchPage.tsx
2026-02-28 17:13:00 -06:00
Mary Kate Fain 1caee21b05 Update Y2K theme presets to match ditto-docs color/font definitions
Sync 7 Y2K theme presets with ditto-docs canonical values:
- Skater: font Permanent Marker → Rubik Maps
- Kawaii: updated background/text/primary colors
- Grunge: font Creepster → Lacquer
- Retro Pop: updated background/text/primary colors
- Bubblegum: updated colors, font Luckiest Guy → Barriecito
- All 7 themes: new background image URLs (PNG format)
2026-02-28 17:11:39 -06:00
Chad Curtis 0d5ab96dd4 Apply break-words overflow-hidden to profile description 2026-02-28 17:11:35 -06:00
Chad Curtis a602a47759 Replace search filter panel with filter icon popover, add Bluesky filter, fix protocol query logic 2026-02-28 17:11:35 -06:00
Alex Gleason a03045ec85 Add Wall tab to user profiles with NIP-22 comments on kind 0
Wall posts are kind 1111 comments targeting the profile owner's kind 0
event (A tag: 0:pubkey:). Comments are filtered by the target user's
kind 3 follow list to show only posts from people they follow. Uses
the same ComposeBox/ReplyComposeModal pattern as /i/:uri routes.

If the profile owner has no follow list, an empty state is shown.
2026-02-28 17:10:06 -06:00
Alex Gleason 713bf52cfb Add configurable appName to AppConfig, replacing hardcoded 'Ditto' in page titles and UI text
All runtime references to 'Ditto' now use config.appName, which defaults
to 'Ditto' and can be overridden at build-time via ditto.json. This
covers useSeoMeta titles across all pages, the welcome screen, feed CTA,
Nostr Connect app name, encrypted settings event title, and the
AdvancedSettings zap comment placeholder.
2026-02-28 17:09:37 -06:00
Alex Gleason 1bcc729a18 Merge branch 'main' of gitlab.com:soapbox-pub/ditto-mew 2026-02-28 16:55:51 -06:00
Alex Gleason 9a7445220c Fix ReferenceError when __DITTO_CONFIG__ is not defined
Guard the __DITTO_CONFIG__ global with a typeof check to prevent
an uncaught ReferenceError when Vite's define replacement has not
been applied (e.g. in certain runtime contexts).
2026-02-28 16:55:02 -06:00
Chad Curtis 0be9f809f2 Fix diagonal stripes layout using SVG polygons for crisp edges 2026-02-28 16:52:23 -06:00
Chad Curtis 5e161da508 Show eye button in post detail view for color moments 2026-02-28 16:40:06 -06:00
Chad Curtis 52860eb64d Fix eye button: img-based SVG rendering, text left/eye right, CSS blink
- Render eye as data-URI img so browser anti-aliases it cleanly without
  creating a compositing layer that affected adjacent elements (the
  foreignObject approach was causing the diagonal stripes to look pixelated)
- Move 'Set as theme' text to the left of the eye, matching the requested layout
- Restore CSS animate-eyelid-blink via overflow-hidden on the eye container
  (the SVG animate element approach didn't fire correctly with React mount/unmount)
- Use React useId for stable unique IDs
- Revert diagonal stripes to original hard-stop gradient (the feathering was wrong)
2026-02-28 16:36:13 -06:00
Chad Curtis 51e84ffa8f Add blinking eye icon to color moment Set as theme button
Replaces the SwatchBook icon with a small circular eye (using the palette
colors for iris/pupil ring) that blinks using espy's eyelid-blink animation
when tapped. The eyelid fills with the palette's midpoint color and carries
the EyeClosed lash icon at its edge, matching the interaction pattern from
espy's color picker.
2026-02-28 16:26:38 -06:00
Chad Curtis 6dea4e2e03 Reset More menu state when mobile drawer closes
The MobileDrawer Sheet stays mounted when closed, so moreMenuOpen state
persisted across open/close cycles. Once expanded, it appeared always open.
Now moreMenuOpen resets to false whenever the drawer closes, regardless of
whether it was closed via navigation or backdrop tap/swipe.
2026-02-28 16:22:36 -06:00
Chad Curtis 3227690bda Fix missing bottom padding on Settings page for mobile/APK
Removed noBottomSpacer override so the standard h-14 bottom spacer
from MainLayout is rendered, matching every other page's behavior.
2026-02-28 16:20:48 -06:00
Chad Curtis fc5dbc3e80 Pass relay and author hints from nevent1 to EmbeddedNote
When a nostr:nevent1 URI is decoded in NoteContent, the relay hints and
author pubkey embedded in the identifier were being discarded. This meant
EmbeddedNote would only query the user's configured relays and skip the
relay hints, causing quoted events hosted on other relays to silently fail
to load. Now the hints are stored in the nevent-embed token and forwarded
to EmbeddedNote → useEvent.
2026-02-28 16:19:38 -06:00
Alex Gleason d0b3be5d5a Skip missing PUBLIC_DIR gracefully, matching CONFIG_FILE behavior 2026-02-28 15:57:36 -06:00
Alex Gleason 01b071d1c3 Add PUBLIC_DIR env var to merge external public files at build time
Files in the external directory take precedence over the built-in
public/ directory. Works in both dev (middleware) and build (post-copy)
modes. Also fix missing magicMouse property in TestApp.
2026-02-28 15:29:29 -06:00
Alex Gleason 2971139bbd Merge branch 'main' of gitlab.com:soapbox-pub/ditto-mew 2026-02-28 14:26:50 -06:00
Chad Curtis a570452626 fix: respect safe area inset in mobile bottom nav
Move h-14 from the <nav> to an inner wrapper div, letting safe-area-bottom padding expand the overall nav height on devices with a home indicator rather than squishing the content area.
2026-02-28 13:50:47 -06:00
Alex Gleason 3398a7f459 Merge branch 'main' of gitlab.com:soapbox-pub/ditto-mew 2026-02-28 11:52:15 -06:00
Alex Gleason 8adbaca9ec Fix custom fonts not loading on machines without system-installed Google Fonts
The @fontsource-variable packages register fonts with a ' Variable' suffix
(e.g., 'Comfortaa Variable'), but the CSS override was using the canonical
name without the suffix (e.g., 'Comfortaa'). On machines with the Google
Fonts installed locally, the browser found the font via the system fallback,
masking the bug.

Add a cssFamily field to BundledFont that holds the actual @font-face name
registered by fontsource, and use it in the CSS font-family override and
FontPicker inline styles. The canonical family name (without suffix) is
preserved for Nostr event f-tags and UI display labels.
2026-02-28 11:50:53 -06:00
Chad Curtis 92dceb8af4 Simplify sigil timer: show after 2min on page, no interaction tracking 2026-02-28 04:13:45 -06:00
Chad Curtis 4611dc145f Don't reset sigil inactivity timer on mousemove 2026-02-28 04:13:05 -06:00
Chad Curtis 5430d0278a Thicken settings chevron stroke to 4 2026-02-28 04:10:18 -06:00
Chad Curtis 8445d5148e Magic sigil appears after 2min inactivity; remove sparkle from Magic header 2026-02-28 04:09:39 -06:00
Chad Curtis 5e826b0395 Magic sigil: hidden easter egg under settings, unlocks magic mouse on click 2026-02-28 04:07:44 -06:00
Chad Curtis 5c206fd607 Magic Mouse: click fires magical shockwave ring + radial burst 2026-02-28 04:02:53 -06:00
Chad Curtis fc0ff247ff Restore particle density after spawn throttle 2026-02-28 03:57:52 -06:00
Chad Curtis 4f3d670ddd Fix Magic Mouse core jitter: throttle particle spawning to every 3rd frame 2026-02-28 03:57:26 -06:00
Chad Curtis c20a936de7 Refine Magic Mouse orb: slow magic flame pulse, warmer ember glow 2026-02-28 03:56:19 -06:00
Chad Curtis 794e6bc9df Slow down Magic Mouse fire particles, add steady center glow sphere 2026-02-28 03:54:45 -06:00
Chad Curtis e4cc47ba51 Add Magic settings page with Magic Mouse cursor fire effect
- Add /settings/magic entry to settings page with magic-intro.png icon
- New MagicSettingsPage with toggle for Magic Mouse mode
- Add magicMouse boolean to AppConfig (optional, defaults to false)
- CursorFireEffect: canvas overlay emitting fire particles in primary color
- Mount CursorFireEffect in MainLayout when magicMouse is enabled
2026-02-28 03:47:07 -06:00
Chad Curtis 158b2c5fb4 Fix pinned post hover by lifting bg highlight to wrapper div 2026-02-28 03:28:13 -06:00
Chad Curtis 1d505e4183 Fix pinned post hover highlight to cover both label and card 2026-02-28 03:27:13 -06:00
Chad Curtis c17a0b914c Use ImageGallery for treasure/geocache images instead of single img tag 2026-02-28 03:25:44 -06:00
Chad Curtis 50be154dc4 Fix mobile drawer More list overflowing viewport by rendering inline 2026-02-28 03:22:34 -06:00
Chad Curtis 8761f4d197 Fix extra bottom scroll and standardize mobile nav height to h-14 2026-02-28 03:18:46 -06:00
Chad Curtis da1533bccf Unify sidebar icon/label sources of truth and rename items
- Create extraKindIcons.ts as single source of truth for extra-kind icons
- BUILTIN_ICON_COMPONENTS in SidebarNavItem covers system items only
- sidebarItemIcon() merges both maps; all pages/routes use it
- EXTRA_KINDS is now source of truth for labels and kind numbers in AppRouter, page titles, and onboarding (CONTENT_KINDS derived from EXTRA_KINDS)
- Remove themes from BUILTIN_SIDEBAR_ITEMS (it lives in EXTRA_KINDS)
- Delete dead SIDEBAR_ITEM_ICONS export
- Rename 'Theme' → 'Vibe', 'Colors' → 'Color Moments'
- Articles icon: FileText → BookOpen; Settings icon: Settings → Scroll
- Hide Vibe settings back button on non-mobile (md:hidden)
- Settings and Bookmarks page headers aligned to same structure
- Codex of Configuration opacity 40% → 60%
2026-02-28 03:12:51 -06:00
Alex Gleason 874c374434 Make flag emojis in post content clickable, linking to /i/iso3166:<CODE> pages 2026-02-28 00:19:36 -06:00
Alex Gleason 6a685386e0 Merge branch 'main' of gitlab.com:soapbox-pub/ditto-mew 2026-02-28 00:17:07 -06:00
Alex Gleason 33fcf3cac0 Remove 'ISO 3166' label and 'View on Wikipedia' link from country pages 2026-02-28 00:15:34 -06:00
Chad Curtis 888f4bc502 Unify welcome step copy for both signup and returning user flows 2026-02-28 00:12:37 -06:00