K2: card purchases on Android (Room 2, card cycle, :feature:cards S-23 to S-27)
- :core:model model/Cards.kt per SPEC §14.2.4 "Changes in v0.35"; ContractTest covers the card wire values. - :domain matchCardPurchase (§14.5.8), passing match_card_purchase.json (17 cases) in VectorTest. - :data Room version 2 (card_connections, card_purchases, card_sync_state, MIGRATION_1_2 with its test, 2.json exported); DTOs for E-36 to E-44 round-tripping K1's examples; the card cycle (E-44 push of pending link changes, E-40 pull) after each household cycle and after refresh; CardRepositoryImpl with CP-9 prefill, CP-10 matches, offline-first link/unlink/ignore; a local expense delete unlinks. - :core:fakes FakeCardRepository and fakes/cards scenarios for every state of S-23 to S-27. - :feature:cards S-23 (sheet and "Välj en annan utgift"), S-24, S-25 (Custom Tab, E-38 every 2 s while resumed, return link), S-26 (disconnect dialog), S-27, CardArt with the SJ Prio picture and the drawn fallback; 135 goldens and state-holder tests. - :feature:expense S-7 cardPurchaseId prefill and link on save, S-8 "Från kortköp" line; :feature:account S-5 "Från kortköp"; :feature:settings S-13 "Anslut kort". - :core:design KvittDestination.Cards with credit_card and nav_cards (four destinations, D-172); the bar's labels shrink to fit at large font scales. :app routes, kvitt://cards/connected, bindings. - docs/ux/strings.csv: the card keys of §13.3 plus K2's additions. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01TQd3pEP9UeN2uifbHknQ7B
This commit is contained in:
@@ -24,6 +24,8 @@ kotlinxSerialization = "1.11.0"
|
||||
kotlinxCoroutines = "1.11.0"
|
||||
kotlinxDatetime = "0.8.0"
|
||||
coil = "3.6.3"
|
||||
# Custom Tabs for the bank's BankID page (D-173, S-25): the latest stable on Google Maven on 2026-10-24.
|
||||
browser = "1.10.0"
|
||||
junit = "4.13.2"
|
||||
robolectric = "4.17"
|
||||
roborazzi = "1.76.0"
|
||||
@@ -50,6 +52,7 @@ androidx-compose-ui-test-manifest = { module = "androidx.compose.ui:ui-test-mani
|
||||
androidx-compose-material3 = { module = "androidx.compose.material3:material3", version.ref = "material3" }
|
||||
androidx-room3-runtime = { module = "androidx.room3:room3-runtime", version.ref = "room3" }
|
||||
androidx-room3-compiler = { module = "androidx.room3:room3-compiler", version.ref = "room3" }
|
||||
androidx-browser = { module = "androidx.browser:browser", version.ref = "browser" }
|
||||
androidx-work-runtime-ktx = { module = "androidx.work:work-runtime-ktx", version.ref = "work" }
|
||||
androidx-work-testing = { module = "androidx.work:work-testing", version.ref = "work" }
|
||||
hilt-android = { module = "com.google.dagger:hilt-android", version.ref = "hilt" }
|
||||
|
||||
Reference in New Issue
Block a user