docs: register Widget and Help pages in the in-app DocBundleLoader

The new widget.md and help-and-docs.md pages must be registered in
DocBundleLoader.kt (in-app docs index) — the "Docs quality gates" CI check
greps for every page slug. Adds their UserPageDef entries, the
doc_title_*/doc_keywords_* string resources, and DocPageIconResolver icons.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
James Rich
2026-06-25 20:59:13 -05:00
parent 8346b18cc4
commit e8b46c970a
4 changed files with 32 additions and 0 deletions

View File

@@ -444,6 +444,7 @@ doc_keywords_connections
doc_keywords_desktop
doc_keywords_discovery
doc_keywords_firmware
doc_keywords_help
doc_keywords_map
doc_keywords_measurement
doc_keywords_messages
@@ -458,6 +459,7 @@ doc_keywords_tak
doc_keywords_telemetry
doc_keywords_translate
doc_keywords_units
doc_keywords_widget
doc_search_placeholder
doc_section_developer
doc_section_user
@@ -467,6 +469,7 @@ doc_title_connections
doc_title_desktop
doc_title_discovery
doc_title_firmware
doc_title_help
doc_title_map
doc_title_measurement
doc_title_messages
@@ -481,6 +484,7 @@ doc_title_tak
doc_title_telemetry
doc_title_translate
doc_title_units
doc_title_widget
done
dont_show_again_for_device
double_tap_as_button_press

View File

@@ -468,6 +468,7 @@
<string name="doc_keywords_desktop">desktop,linux,macos,windows,serial</string>
<string name="doc_keywords_discovery">discovery,topology,network,scan,neighbor</string>
<string name="doc_keywords_firmware">firmware,update,ota,flash,version,recovery</string>
<string name="doc_keywords_help">help,documentation,docs,chirpy,assistant,search,offline</string>
<string name="doc_keywords_map">map,waypoint,gps,position,location,marker</string>
<string name="doc_keywords_measurement">formatter,metric,number,locale,temperature,conversion,api</string>
<string name="doc_keywords_messages">message,channel,encryption,direct,broadcast,quick-chat</string>
@@ -482,6 +483,7 @@
<string name="doc_keywords_telemetry">telemetry,sensor,temperature,humidity,pressure,power</string>
<string name="doc_keywords_translate">translate,crowdin,localization,language,i18n,contribute</string>
<string name="doc_keywords_units">units,locale,metric,imperial,temperature,distance</string>
<string name="doc_keywords_widget">widget,home screen,local stats,glance,battery,utilization</string>
<string name="doc_search_placeholder">Search documentation…</string>
<string name="doc_section_developer">Developer Guide</string>
<string name="doc_section_user">User Guide</string>
@@ -491,6 +493,7 @@
<string name="doc_title_desktop">Desktop App</string>
<string name="doc_title_discovery">Discovery</string>
<string name="doc_title_firmware">Firmware Updates</string>
<string name="doc_title_help">Help &amp; In-App Docs</string>
<string name="doc_title_map">Map &amp; Waypoints</string>
<string name="doc_title_measurement">Measurement &amp; Formatting</string>
<string name="doc_title_messages">Messages &amp; Channels</string>
@@ -505,6 +508,7 @@
<string name="doc_title_telemetry">Telemetry &amp; Sensors</string>
<string name="doc_title_translate">Translate the App</string>
<string name="doc_title_units">Units &amp; Locale</string>
<string name="doc_title_widget">Home Screen Widget</string>
<string name="done">Done</string>
<string name="dont_show_again_for_device">Don't show again for this device</string>
<string name="double_tap_as_button_press">Double Tap as Button</string>

View File

@@ -431,6 +431,26 @@ class DefaultDocBundleLoader : DocBundleLoader {
2750,
"app-functions",
),
UserPageDef(
"widget",
CoreRes.string.doc_title_widget,
CoreRes.string.doc_keywords_widget,
"en/user/widget.html",
20,
listOf("widget", "home-screen-widget", "local-stats-widget"),
1700,
"widget",
),
UserPageDef(
"help-and-docs",
CoreRes.string.doc_title_help,
CoreRes.string.doc_keywords_help,
"en/user/help-and-docs.html",
21,
listOf("help", "docs-browser", "chirpy", "assistant"),
1900,
"help",
),
)
private suspend fun buildUserGuideIndex(): List<KeywordIndexEntry> = userPages.map { def ->

View File

@@ -85,6 +85,10 @@ internal fun DocPage.resolveIcon(): ImageVector = when (iconId) {
"app-functions" -> MeshtasticIcons.Api
"widget" -> MeshtasticIcons.Chart
"help" -> MeshtasticIcons.Notes
// Developer Guide
"architecture" -> MeshtasticIcons.ForkLeft