Commit Graph
210 Commits
Author SHA1 Message Date
MrAlders0n bd32c0019f Fold route evidence into Route Detail with a recent packets list (#126) 2026-10-01 15:41:59 -04:00
MrAlders0n a252b953fe List keyed channels up front and load the rest on demand (#125) 2026-10-01 09:18:42 -04:00
MrAlders0n 2b150f9244 Add an optional instance banner above the header (#124) 2026-10-01 08:57:41 -04:00
MrAlders0n 57be943f17 Tidy the routes search and range toggle on mobile (#123) 2026-10-01 08:32:49 -04:00
MrAlders0n 441dcdee6c Show observers as a full-width list on mobile (#122) 2026-10-01 07:55:47 -04:00
MrAlders0n e6e680192a Open the observer dashboard as a mobile overlay (#121) 2026-10-01 07:50:46 -04:00
MrAlders0n a8a248fd9d Keep the packet drawer and windows open across tabs (#120) 2026-10-01 04:09:00 -04:00
MrAlders0n 66419a768e Shrink the region filter text on desktop (#119) 2026-10-01 04:08:48 -04:00
MrAlders0n a2ed9f70aa Match the observation card to the theme (#118) 2026-09-30 23:17:20 -04:00
MrAlders0n 24c4abf6f4 Show the observer list beside the dashboard (#117) 2026-09-30 23:03:50 -04:00
MrAlders0n 487dca948c Collapse the analyzer's observations list by default (#116) 2026-09-30 23:03:19 -04:00
MrAlders0n b1ced5150c Clear map borders when the toggle is turned off (#115) 2026-09-30 22:44:52 -04:00
MrAlders0n 24b995bf12 Move channel scope filter into the header (#114) 2026-09-30 22:34:44 -04:00
MrAlders0n 35d117a636 Region-filtered scope lists (#113) 2026-09-30 22:09:37 -04:00
n30nex 6de673b6a0 Prepare Beacon 2.0.0 (#105) 2026-09-30 21:18:14 -04:00
MrAlders0n 85e4d90cbe Analyzer: one observations list, transport scope breakdown (#112) 2026-09-30 21:18:10 -04:00
MrAlders0n e2d272e08e Drop the Observer section from Analytics (#111) 2026-09-30 16:09:13 -04:00
MrAlders0n fb0994bd05 One observations list in the packet analyzer (#110) 2026-09-30 15:43:44 -04:00
MrAlders0n 61ab6697d9 Labelled observer details and stacked header actions (#109) 2026-09-30 14:42:55 -04:00
MrAlders0n 31d01a8425 Shared observer sidebar and header actions (#108) 2026-09-30 14:36:17 -04:00
MrAlders0n b1f41dea1d Observer header details, channel row cleanup, tab order (#107) 2026-09-30 14:10:18 -04:00
MrAlders0n 63344af365 Polish observer cards and clock drift on phones (#106) 2026-09-30 13:47:10 -04:00
MrAlders0n 8d1f30d553 Bring back the Analytics observer tab and tidy analytics (#104) 2026-09-30 13:24:54 -04:00
MrAlders0n 00d859d9a2 fix(nodes): clear a node's position when nodeUpdate sends null (#103)
The server now nulls a location on an explicit 0/0 advert and the WS nodeUpdate
event mirrors that: omitted lat/lng keeps the current position, null clears it.
patchNodeSummary used ?? so a clear was ignored.
2026-09-30 11:29:35 -04:00
MrAlders0n 3e43cfd009 fix: follow up on last week's merges (#55-#101) (#102)
Bugs: clear compare params on tab change, recover channel live messages after a 429,
observer copy link keeps only region params, route table no longer navigates on region
change with nothing selected, map borders memo on data identity, live overview can't
resurrect a failed query, French relative times, no language write on first visit,
0/0 node locations hidden outside the map, path/signal stats use the shared retry rule.

i18n: node/packet/mesh/observer strings that were still hardcoded after #62.

Cleanup: formatUtc, ACTION_BUTTON_CLASS, observer-stats, useWindowedStats, observer-id;
observer pages use StatCard/Card/Field/Segmented/SearchBar/SelectDropdown; one details
chrome on the stats tabs; comment and translations-guide trims; localStorage stub for
Node 26 in the test setup.
2026-09-30 10:19:32 -04:00
MrAlders0n 39b85a9032 fix: follow up on the #75-#99 stack review (#101) 2026-09-30 08:35:07 -04:00
dependabot[bot] 9058665af0 build(deps-dev): bump brace-expansion from 5.0.9 to 5.0.12 (#100)
Bumps [brace-expansion](https://github.com/juliangruber/brace-expansion) from 5.0.9 to 5.0.12.
- [Release notes](https://github.com/juliangruber/brace-expansion/releases)
- [Commits](https://github.com/juliangruber/brace-expansion/compare/v5.0.9...v5.0.12)

---
updated-dependencies:
- dependency-name: brace-expansion
  dependency-version: 5.0.12
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-09-30 08:11:10 -04:00
n30nex d259be512e feat: observer monitoring, retained evidence and channel scopes (#75-#99)
Lands the stacked web PRs #75, #79, #80, #81, #83, #85, #87, #89, #92, #95 and #99 in one squash. Server counterparts #166-#176 are merged. Remaining review items follow in a fix PR.
2026-09-30 08:03:13 -04:00
MrAlders0n 17f48fb932 chore(types): mirror ws opt-in fields from the server (#91) 2026-09-27 20:38:55 -04:00
MrAlders0n 54b5093ac0 fix(packets): fold summaries into the endpoints cell (#73) 2026-09-25 11:37:57 -04:00
n30nex 9cd2e8f6db fix(stats): hide unavailable Mesh overview data (#72) 2026-09-25 11:21:29 -04:00
n30nex dce4e49900 fix(stats): hide unavailable Talkers results (#68) 2026-09-25 11:21:07 -04:00
n30nex 9423059b6f feat(i18n): translate stats analytics, clock drift and timestamps (#70) 2026-09-25 11:20:27 -04:00
n30nex 6d3edbb61b feat(i18n): add English and French navigation foundation (#62) 2026-09-24 08:53:32 -04:00
n30nex 0f0a6ca51c fix(map): omit reset and invalid node locations (#61) 2026-09-23 20:16:26 -04:00
n30nex 929ba83cf1 feat(stats): add Paths and Hashes analytics (#57) 2026-09-23 20:16:23 -04:00
n30nex 2405e1ac96 feat(stats): add RF and signal analytics (#55) 2026-09-23 20:14:03 -04:00
n30nex c2ab29a540 fix(stats): distinguish analytics navigation icons (#59) 2026-09-23 20:11:26 -04:00
n30nex e01c090c8e feat(stats): add hourly traffic and region-aware scope analytics (#53)
Adds the Traffic and Scopes analytics tabs. Includes the hourly traffic work from #52, which this PR contains in full.

Closes #50. Closes #51.
2026-09-20 11:41:43 -04:00
n30nex 3178713bdb feat(nodes): display the foreign-repeater indication (#49)
* feat(nodes): display the server foreign-repeater indication

* style(ws): align node update event declaration
2026-09-19 22:58:52 -04:00
n30nex 88e2c0f319 feat(stats): compare flood packets heard by two observers (#48) 2026-09-19 22:58:36 -04:00
MrAlders0n d5d9c0870c fix(layout): keep region picker right-anchored on desktop (#47) 2026-09-18 06:12:14 -04:00
n30nex 2264b3be35 fix(layout): keep header controls inside narrow viewports (#44) 2026-09-18 06:10:45 -04:00
n30nex 34bd0948bc feat(packets): display payload summaries in packet rows (#46) 2026-09-18 06:09:59 -04:00
n30nex 7549bacd21 fix(region): avoid focus zoom on small filter text (#45) 2026-09-18 06:07:54 -04:00
n30nex e43de48f0b feat(packets): surface selections outside loaded results (#41)
A ?hash selection outside the loaded or filtered results now shows an Open analyzer notice with loading, error/retry and dismiss states, using the existing detail query.
2026-09-10 09:30:01 -04:00
n30nex 4304153f8b feat(packets): search latest paths by complete hop hashes (#39) 2026-09-10 09:26:13 -04:00
n30nex 9ab1a44ae9 fix(channels): load older directory pages without losing selection (#37)
* fix(channels): page the directory without losing the open channel

* fix(channels): prefer precise server page cursors
2026-09-10 09:26:05 -04:00
n30nex d51e0a997b fix(packets): keep filtered history pageable without scrolling (#34) 2026-09-10 09:25:55 -04:00
MrAlders0n 8d963a59b3 Apply dependabot bumps; migrate to maplibre-gl 6
Named imports, Vite worker URL via setWorkerUrl, and the single
missing-image resolver replacing the styleimagemissing listeners.
2026-09-10 09:17:18 -04:00