mirror of
https://github.com/Kpa-clawbot/meshcore-analyzer.git
synced 2026-09-25 18:43:47 +00:00
Performance (#166): - renderChannelTimeline: replace O(n²) data.find() with O(1) lookup map - renderChannelTimeline: precompute maxCount once instead of per-point - renderChannels: pre-build sub-section HTML before single innerHTML write Sortable columns (#167): - All 6 channel table columns are now sortable (click header) - Default sort: last activity descending (latest message first) - Sort preference persists to localStorage (meshcore-channel-sort) - Toggles asc/desc on re-click; smart default direction per column type - Uses existing .sortable/.sort-active CSS patterns on .analytics-table Tests: 23 new tests for sortChannels, loadChannelSort, saveChannelSort, channelTheadHtml, channelTbodyHtml (134 total frontend tests, 0 failures) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>