feat(device): implement Device feature with SSOT, offline support, and settings screen

- Add domain layer: Device, PendingMutation, DeviceRepository
- Add Room DB: DeviceEntity, PendingMutationEntity, DAOs, DeviceLocalDataSource
- Add mock DeviceRemoteDataSource and DeviceSubscriptionManager
- Implement DeviceRepositoryImpl with optimistic updates and mutation queue
- Add UseCases: GetMyDevices, Rename, SetLocation, SetDataSharing, TriggerFirmware
- Implement DeviceSettingsScreen with rename, location, data sharing, firmware
- Wire ManageScreen to GetMyDevicesUseCase and DeviceSubscriptionManager
- Update navigation to pass deviceId and show DeviceSettingsScreen
- Add Room 2.7.0-alpha11 and Room dependencies to SDK

Made-with: Cursor
This commit is contained in:
2026-03-04 19:35:07 +01:00
parent ca5cf8c439
commit e59e5aa060
29 changed files with 1451 additions and 27 deletions

View File

@@ -162,6 +162,9 @@
<string name="text_device_visibility_visible">Public</string>
<string name="text_device_visibility_private">Private</string>
<string name="text_device_visibility_not_registered">Register device to change visibility</string>
<string name="text_pending_sync">Changes will sync when online</string>
<string name="text_data_sharing">Data sharing</string>
<string name="button_firmware_update">Update firmware</string>
<string name="button_rename">Rename</string>
<string name="button_update">Update</string>
<string name="button_unregister">Unregister</string>