aprs.me/lib/aprsme_web/live
Graham McIntire c5a82b77c1
refactor: pattern-match over conditionals in Navigation and InsertOptimizer
Swaps `if`/`cond` branches for multi-clause function heads or head-pattern
matching, making the control flow visible in the function signatures:

- Navigation.determine_map_location: resolve_location/4 now dispatches on
  the shape of the geolocation input and whether URL params are explicit.
- Navigation.handle_callsign_tracking: per-case clauses for empty callsign
  and explicit-URL-params short-circuits, plus a final clause that does the
  DB lookup and rescues once.
- Navigation.handle_callsign_search: dispatch_callsign_search/3 separates
  the valid/invalid callsign branches.
- InsertOptimizer.optimize_based_on_performance: pattern-match on
  [_, _, _ | _] to require ≥3 samples without calling length/1.
- InsertOptimizer.calculate_insert_options and throughput helpers split
  into guarded clauses instead of inline `if`.
- maybe_emit_optimization uses same-var pattern matching to skip the
  telemetry hit when nothing changed.

Adds unit tests covering every branch of both modules plus SignalHandler,
LocaleHook, and the InsertOptimizer's :noproc fallback path. Coverage
64.69% → 65.72%.
2026-04-23 13:38:24 -05:00
..
bad_packets_live chore(dialyzer): enable stricter flags and fix 97 resulting findings 2026-04-21 10:07:01 -05:00
components fix compile warnings 2025-07-09 16:58:07 -05:00
info_live chore(dialyzer): enable stricter flags and fix 97 resulting findings 2026-04-21 10:07:01 -05:00
map_live refactor: pattern-match over conditionals in Navigation and InsertOptimizer 2026-04-23 13:38:24 -05:00
packets_live chore(dialyzer): enable stricter flags and fix 97 resulting findings 2026-04-21 10:07:01 -05:00
shared chore(dialyzer): enable stricter flags and fix 97 resulting findings 2026-04-21 10:07:01 -05:00
status_live chore(dialyzer): enable stricter flags and fix 97 resulting findings 2026-04-21 10:07:01 -05:00
weather_live Remove dead PostGIS code, deduplicate utilities, and simplify module hierarchy 2026-02-20 13:39:07 -06:00
about_live.ex en español 2025-07-05 15:51:39 -05:00
about_live.html.heex Apply TailwindCSS Plus design patterns across site 2026-02-20 17:56:06 -06:00
api_docs_live.ex docs: add weather nearby API endpoint to documentation 2026-03-22 12:16:32 -05:00
locale_hook.ex chore(dialyzer): enable stricter flags and fix 97 resulting findings 2026-04-21 10:07:01 -05:00
theme_manager.ex more performance improvements/cleanup 2025-07-14 16:49:55 -05:00
user_confirmation_instructions_live.ex fix: address security vulnerabilities and concurrency issues 2026-03-23 16:59:09 -05:00
user_confirmation_live.ex Remove DaisyUI, migrate to pure Tailwind CSS with TailwindUI patterns 2026-02-19 10:07:50 -06:00
user_forgot_password_live.ex fix: address security vulnerabilities and concurrency issues 2026-03-23 16:59:09 -05:00
user_login_live.ex Remove DaisyUI, migrate to pure Tailwind CSS with TailwindUI patterns 2026-02-19 10:07:50 -06:00
user_registration_live.ex fix: address security vulnerabilities and concurrency issues 2026-03-23 16:59:09 -05:00
user_reset_password_live.ex Remove DaisyUI, migrate to pure Tailwind CSS with TailwindUI patterns 2026-02-19 10:07:50 -06:00
user_settings_live.ex fix: address security vulnerabilities and concurrency issues 2026-03-23 16:59:09 -05:00