Commit graph

316 commits

Author SHA1 Message Date
bb944f5b61 debug for missing Kofi Link 2025-10-19 20:34:21 -04:00
f03cf73137 removed deprecated AccountClient 2025-10-19 19:42:24 -04:00
832b0c393c build fixes 2025-10-19 18:21:18 -04:00
5e60cff6fa build fixes 2025-10-19 18:13:28 -04:00
2a4b3d4199 build fixes 2025-10-19 18:07:35 -04:00
59bc5303c7 build fixes 2025-10-19 18:05:19 -04:00
912cf71bb9 feat(support): Ko-fi end-to-end linking + badges (derive-on-read, no cron)
- Add Ko-fi webhook (/api/webhooks/kofi) with upsert by (provider, external_user_id)
  • Computes renews_at = timestamp + 1 calendar month + 1 day
  • Preserves first started_at; stores raw payload; canonicalizes by email when available
- Add Ko-fi claim flow
  • POST /api/support/kofi/claim/start — sends verification email via SMTP
  • GET  /api/support/kofi/claim/verify — finalizes link (sets app_user), redirects to /portal/account
  • POST /api/support/kofi/unlink — clears app_user on Ko-fi rows
- Add derive-on-read membership logic
  • /lib/memberships.ts — single source of truth for badges & “active” state
  • /api/support/badges — thin wrapper that returns per-provider badges
- Account UI
  • components/account/SupporterBadges.tsx — renders provider badges (Ko-fi now; extensible)
  • components/account/ConnectKofi.tsx — “Link Ko-fi” form (email → verify link)
  • components/account/LinkStatus.tsx — success/error banner on return
  • app/portal/account/AccountPanel.tsx — integrates badges, link panel, and banner
- Config/env
  • Requires: DIRECTUS_URL, DIRECTUS_TOKEN_ADMIN_SUPPORTER, KOFI_VERIFY_TOKEN
  • SMTP: SMTP_HOST, SMTP_PORT, SMTP_SECURE, SMTP_USER, SMTP_PASS, EMAIL_FROM
  • APP_ORIGIN used to build absolute verify URLs
- Misc
  • Fixed import to use @/lib/memberships
  • No cron required; UI derives active state via status === active && renews_at >= now

Refs: beta readiness for Ko-fi supporters
2025-10-19 17:51:04 -04:00
3d23bbb3f0 chore(release): 0.1.1 2025-10-16 11:32:38 -04:00
176d741b59 version update 2025-10-16 11:32:20 -04:00
cbb325cf94 env updates for bgbye pathing 2025-10-16 10:47:23 -04:00
c48f37fec1 env updates for bgbye 2025-10-16 10:12:36 -04:00
2a6490f0aa chore(release): 0.1.0 2025-10-16 09:29:42 -04:00
30536114b9 version message formatting update 2025-10-16 09:25:12 -04:00
d2e1e838e2 version update 2025-10-16 09:17:38 -04:00
7669a084b1 Act to Get 2025-10-16 08:59:08 -04:00
b8226d44d6 file browser small UI improvements 2025-10-15 22:08:39 -04:00
68c5f602f9 file browser small UI improvements 2025-10-15 22:02:22 -04:00
a6971f4535 file browser small UI improvements 2025-10-15 21:54:38 -04:00
edcde5ba55 file browser small UI improvements 2025-10-15 21:45:00 -04:00
2dfeb4e2bb file browser small UI improvements 2025-10-15 21:35:31 -04:00
448bb8e034 file browser call fix 2025-10-15 21:26:56 -04:00
4aebd80a5d file server fix + middleware updates 2025-10-15 21:10:28 -04:00
130db9725a svgnest remove back to main 2025-10-15 20:58:01 -04:00
582cafca0b svgnest render fix 2025-10-15 20:53:06 -04:00
13879407f7 svgnest render fix 2025-10-15 20:45:56 -04:00
90cab6f8b2 Vendor SVGnest assets; remove stale submodule gitlink 2025-10-15 20:29:50 -04:00
b93d6bf3a5 svgnest render fix 2025-10-15 19:48:58 -04:00
b39976f6a5 bgbye routing fix 2025-10-15 19:09:59 -04:00
c1fbdc843c bgbye routing fix 2025-10-15 19:05:56 -04:00
3c76ab69e5 buying guide header display fix 2025-10-15 18:23:06 -04:00
22bc048475 background remover fix 2025-10-15 18:19:23 -04:00
da4d0620a4 background remover fix 2025-10-15 16:57:22 -04:00
ab93441fc5 laser finder fix 2025-10-15 16:53:14 -04:00
73bba240ab buyingguide test fix 2025-10-15 16:50:32 -04:00
e7a0c91a37 build fixes for middleware 2025-10-12 22:31:26 -04:00
f08a7456ee completely refactored utilities for direct rendering, killed iframes 2025-10-12 22:24:23 -04:00
12dd2c6c06 cut,skip fix plus owner fix for view page 2025-10-08 23:21:29 -04:00
1156984fa6 submission form cleanup 2025-10-06 22:05:29 -04:00
d44d8448e7 submission form cleanup 2025-10-06 21:36:55 -04:00
4a085680ed submission form cleanup 2025-10-06 21:28:25 -04:00
190cb60ac0 submission form cleanup 2025-10-06 21:18:15 -04:00
b779d2c83a submission form cleanup 2025-10-06 21:07:41 -04:00
1f5a44ea9f submission form cleanup 2025-10-06 21:02:47 -04:00
01d16881d1 submission form cleanup 2025-10-06 20:54:05 -04:00
92ba85c570 submission form cleanup 2025-10-06 20:46:30 -04:00
51df489ce6 submission form cleanup 2025-10-06 20:37:40 -04:00
4359803a3f list and details cleanup 2025-10-05 22:38:40 -04:00
2e8297d426 list and details cleanup 2025-10-05 22:32:27 -04:00
6829f2840c list and details cleanup 2025-10-05 22:17:37 -04:00
8fc0989b17 list and details cleanup 2025-10-05 22:06:32 -04:00