refactor(ble): Centralize BLE logic into a core module (#4550)

Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
This commit is contained in:
James Rich 2026-02-20 06:41:52 -06:00 committed by GitHub
parent 7a68802bc2
commit 6bfa5b5f70
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
214 changed files with 3471 additions and 2405 deletions

View file

@ -1,11 +1,40 @@
# `:feature:node`
## Overview
The `:feature:node` module handles node-centric features, including the node list, detailed node information, telemetry charts, and the compass.
## Key Components
### 1. `NodeListScreen`
Displays all nodes currently known to the application.
### 2. `NodeDetailScreen`
Shows exhaustive details for a specific node, including hardware info, position history, and last heard status.
### 3. `MetricsViewModel`
Manages the retrieval and display of telemetry data (e.g., battery, SNR, environment metrics) using charts.
### 4. `CompassViewModel`
Provides a compass interface to show the relative direction and distance to other nodes.
## Module dependency graph
<!--region graph-->
```mermaid
graph TB
:feature:node[node]:::null
:feature:node[node]:::android-feature
:feature:node -.-> :core:common
:feature:node -.-> :core:data
:feature:node -.-> :core:database
:feature:node -.-> :core:datastore
:feature:node -.-> :core:di
:feature:node -.-> :core:model
:feature:node -.-> :core:proto
:feature:node -.-> :core:service
:feature:node -.-> :core:strings
:feature:node -.-> :core:ui
:feature:node -.-> :core:navigation
:feature:node -.-> :feature:map
classDef android-application fill:#CAFFBF,stroke:#000,stroke-width:2px,color:#000;
classDef android-application-compose fill:#CAFFBF,stroke:#000,stroke-width:2px,color:#000;