feat(nodes): display firmware details and release notes (#2489)

Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
This commit is contained in:
James Rich 2025-07-21 15:34:13 -05:00 committed by GitHub
parent debc684dda
commit 7120b4b476
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 703 additions and 579 deletions

View file

@ -181,6 +181,7 @@ dependencies {
// Bundles
implementation(libs.bundles.androidx)
implementation(libs.bundles.ui)
implementation(libs.bundles.markdown)
debugImplementation(libs.bundles.ui.tooling)
implementation(libs.bundles.adaptive)
implementation(libs.bundles.lifecycle)

File diff suppressed because it is too large Load diff

View file

@ -797,4 +797,10 @@
<string name="ble_devices">BLE Devices</string>
<string name="routing_error_rate_limit_exceeded">Rate Limit Exceeded. Please try again later.</string>
<string name="view_release">View Release</string>
<string name="download">Download</string>
<string name="installed_firmware_version">Currently Installed</string>
<string name="latest_stable_firmware">Latest stable</string>
<string name="latest_alpha_firmware">Latest alpha</string>
<string name="supported_by_community">Supported by Meshtastic Community</string>
</resources>

View file

@ -29,6 +29,7 @@ kotlinx-collections-immutable = "0.4.0"
kotlinx-coroutines-android = "1.10.2"
kotlinx-serialization-json = "1.9.0"
lifecycle = "2.9.2"
markdownRenderer = "0.35.0"
material = "1.12.0"
material3 = "1.4.0-alpha18"
mgrs = "2.1.3"
@ -108,6 +109,9 @@ lifecycle-runtime-compose = { group = "androidx.lifecycle", name = "lifecycle-ru
lifecycle-runtime-ktx = { group = "androidx.lifecycle", name = "lifecycle-runtime-ktx", version.ref = "lifecycle" }
lifecycle-viewmodel-compose = { group = "androidx.lifecycle", name = "lifecycle-viewmodel-compose", version.ref = "lifecycle" }
lifecycle-viewmodel-ktx = { group = "androidx.lifecycle", name = "lifecycle-viewmodel-ktx", version.ref = "lifecycle" }
markdown-renderer = { group = "com.mikepenz", name = "multiplatform-markdown-renderer", version.ref = "markdownRenderer" }
markdown-renderer-m3 = { group = "com.mikepenz", name = "multiplatform-markdown-renderer-m3", version.ref = "markdownRenderer" }
markdown-renderer-android = { group = "com.mikepenz", name = "multiplatform-markdown-renderer-android", version.ref = "markdownRenderer" }
material = { group = "com.google.android.material", name = "material", version.ref = "material" }
mgrs = { group = "mil.nga", name = "mgrs", version.ref = "mgrs" }
navigation-compose = { group = "androidx.navigation", name = "navigation-compose", version.ref = "navigation" }
@ -141,6 +145,7 @@ androidx = ["core-ktx", "appcompat", "appcompat-resources", "fragment-ktx", "act
ui = ["material", "constraintlayout", "compose-material3", "compose-material-icons-extended", "compose-ui-tooling-preview", "compose-runtime-livedata"]
adaptive = ["adaptive", "adaptive-layout", "adaptive-navigation", "adaptive-navigation-android", "adaptive-navigation-suite"]
ui-tooling = ["compose-ui-tooling"] #Separate for debugImplementation
markdown = ["markdown-renderer", "markdown-renderer-m3", "markdown-renderer-android"]
# Lifecycle
lifecycle = ["lifecycle-runtime-ktx", "lifecycle-livedata-ktx", "lifecycle-viewmodel-ktx", "lifecycle-common-java8", "lifecycle-process", "lifecycle-viewmodel-compose", "lifecycle-runtime-compose"]