ts will never fail
Track donation lifecycle across form, widget, admin, and backend: - Form: donation_completed, donation_*_failed, donation_slip_conflict, donation_artifact_conflict - Widget: donation_widget_displayed, donation_widget_tts_failed, donation_widget_animation_end, donation_widget_connected, donation_widget_heartbeat_failure - Admin: donation_admin_test_popup, donation_admin_widget_reload, donation_admin_resend - Backend: donation_widget_state_playing, donation_widget_state_shown, donation_resent
fixes a bug where build bail cause it to still push and breaks production
Only initialize PostHog in production to avoid noise and unnecessary tracking during development.
- Add typescript lint rules (consistent-type-imports, no-import-type-side-effects) - Set idle session timeout in postgres dev container - Add react-hook-text-overflow dependency with patch
Allow passing className via columnDef.meta to TableHead and TableCell for per-column styling.
Pass cropped file output via onValueChange and handle external value resets for form clear/reset flows.
MaybeWrap conditionally wraps children based on a boolean prop. Artifact sidebar now shows HoverCard with comment/UID for queue-less entries (donations) and a Bitcoin icon.
Add donate link to navbar (replacing old /tip) and enable the donate card on the home page (disabled, for prod testing).
DataTable for viewing donations with resend popup, test popup, and SSE subscription for real-time refresh.