bollwerk/app
Jens Reinemann 388532c946 feat(export): add ImportExportRepository with JSON export/import
domain/repository/ImportExportRepository.kt: new interface with
exportToJson() and importFromJson(json) suspend functions.

data/export/ExportData.kt: serializable data class bundling all
entity lists for JSON serialization via kotlinx.serialization.

data/export/ImportExportRepositoryImpl.kt: implementation using
kotlinx.serialization + Dispatchers.IO; exportToJson fetches all
DAOs and serializes, importFromJson deserializes and upserts back.

data/db/dao/{Category,Item,Location,Settings}Dao.kt: added @Upsert
upsertAll() suspend function to each DAO to support bulk import.

di/RepositoryModule.kt: bound ImportExportRepositoryImpl to
ImportExportRepository via Hilt @Binds.

test/.../FakeXxxDao.kt: upsertAll() implemented in all four fake
DAOs for unit test coverage.
2026-05-14 00:09:07 +02:00
..
src feat(export): add ImportExportRepository with JSON export/import 2026-05-14 00:09:07 +02:00
build.gradle.kts feat(db): Room-Datenbank & DAOs implementieren (#18) 2026-05-13 23:18:48 +02:00
proguard-rules.pro feat: Android-Projekt-Gerüst anlegen (#13) 2026-05-13 15:24:39 +02:00