* fix#1484: Filter out ignored nodes from map
- Created a new `filteredNodeList` `StateFlow` in `UIState.kt` that filters out nodes marked as ignored.
- Updated `MapFragment.kt` to use `filteredNodeList` instead of `nodeList`, ensuring that ignored nodes are not displayed on the map.
* Refactor: Remove ExperimentalCoroutinesApi opt-in and add it to compiler args
- Removes the `@OptIn(ExperimentalCoroutinesApi::class)` annotation from multiple files.
- Adds `-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi` to the `freeCompilerArgs` in the `build.gradle` file, enabling the use of Experimental Coroutines API project-wide without the need for per-file opt-ins.
- The coroutine api is now applied globally.
Signed-off-by: James Rich <james.a.rich@gmail.com>
* detekt
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
---------
Signed-off-by: James Rich <james.a.rich@gmail.com>
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
* Clarify role change behavior
The role change logic was modified to show a confirmation dialog when the role is set to `ROUTER`, `ROUTER_CLIENT`, or `REPEATER`. Previously, the dialog was only displayed when setting the role to `ROUTER`.
* Implement router role confirmation dialog
- Added a confirmation dialog when changing the device role to ROUTER, ROUTER_CLIENT, or REPEATER.
- The confirmation dialog ensures users are aware of the implications of selecting a role used for infrastructure.
- Updated the logic to set the selected role only after confirmation.
- Only show dialog when changing to infrastructure roles.
* remove deprecated ROUTER_CLIENT to avoid confusion
* Add confirmation dialog for changing to router role
Introduced a confirmation dialog that will be shown when changing the device role to "router".
The confirmation dialog includes links to the "Device Role Documentation" and "Choosing The Right Device Role" blog post.
The user must check a checkbox to confirm.
* Update router role handling
Modified the handling of the router role in `DeviceConfigItemList.kt` to avoid returning prematurely from the `onItemSelected` lambda. This ensures that the role is updated properly when a user selects the "ROUTER" role.
* removes konami code check, remove testing code
* Refactor router role confirmation text
- Moves the router role confirmation text to strings.xml.
- Updates to use `AnnotatedString.fromHtml` instead of `buildAnnotatedString` and `withLink`.
- Changes from hard-coded strings to string resources.