Skip to content

refactor(amount-entry): make shared/amount-entry a KMP module - #1932

Merged
bmc08gt merged 1 commit into
code/cashfrom
refactor/amount-entry-kmp
Nov 3, 2026
Merged

bmc08gt merged 1 commit into
code/cashfrom
refactor/amount-entry-kmp

Conversation

@bmc08gt

@bmc08gt bmc08gt commented Nov 2, 2026

Copy link
Copy Markdown
Collaborator

:apps:flipcash:shared:amount-entry now uses flipcash.kmp.app.library (android + jvm). Module path and package are unchanged, so consumers are untouched.

  • commonMain: AmountEntryAction, AmountEntryConfig, AmountEntryController, AmountEntryDelegate, AmountEntryHint, AmountEntryLabel, AmountEntryStyle. AmountEntryLabel now names Pair<AnnotatedString, Map<String, InlineTextContent>> through a private-to-module alias, because the AnnotatedButtonLabel alias lives in :apps:flipcash:core's androidMain. The type is identical.
  • androidMain: AmountEntryScreen only. It calls AmountWithKeypad, CodeButton and SlideToConfirm, which :apps:flipcash:core-ui and :ui:components still declare in androidMain, so it has a // kmp-audit: line saying so. It can move once those do.
  • Tests: AmountEntryDelegateTest and AmountEntryConfigTest moved to commonTest and run on jvm and Android host (the delegate test swaps MainCoroutineRule for Dispatchers.setMain/resetMain). AmountEntryScreenTest stays in androidHostTest (Robolectric). 60 tests before; 60 on Android host and 49 on jvm after (the Robolectric screen test is Android-only).
  • No Android-only interface was needed: nothing in the module calls an Android API.

@bmc08gt bmc08gt self-assigned this Nov 2, 2026
@github-actions github-actions Bot added the type: refactor Code restructuring, no behavior change label Nov 2, 2026
@bmc08gt
bmc08gt merged commit 3766074 into code/cash Nov 3, 2026
5 checks passed
bmc08gt added a commit that referenced this pull request Nov 3, 2026
…ee-pane

* origin/code/cash: (44 commits)
  refactor(chat-list): move the chat list into a KMP module and wire it into the desktop graph (#1950)
  build(deps): bump dev.zacsweers.metro from 1.4.5 to 1.5.1 (#1901)
  feat(flipcash): add return-payment contract scaffolding (#1949)
  refactor(chat-ui): make shared/chat-ui a KMP module (#1934)
  build(deps): bump com.google.firebase:firebase-bom from 34.19.0 to 35.1.0 (#1900)
  build(deps): bump io.ktor:ktor-network from 3.4.1 to 3.6.0 (#1909)
  build(deps): bump rinku from 1.6.0 to 1.9.0 (#1907)
  build(deps): bump androidx.webkit:webkit from 1.17.0 to 1.18.0 (#1906)
  build(deps): bump agp from 9.4.1 to 9.5.0 (#1905)
  build(deps): bump androidx-datastore from 1.2.1 to 1.3.0 (#1904)
  build(deps): bump compose-multiplatform from 1.12.1 to 1.12.2 (#1903)
  build(deps): bump com.google.android.gms:play-services-base (#1902)
  build(deps): bump okhttp from 5.5.0 to 5.5.1 (#1899)
  refactor(messenger): split ChatViewModel's reducer into per-area files (#1933)
  refactor(amount-entry): make shared/amount-entry a KMP module (#1932)
  fix(build): stop KMP host tests building release variants and debug manifests changing per commit (#1948)
  refactor(theme): collapse Avenir into one family with a real Medium face (#1947)
  perf: run independent hot-path calls concurrently (#1945)
  docs(claude): test gestures with device input and keep mode state at screen level (#1943)
  build: bump Flipcash to 2026.11.2
  ...

# Conflicts:
#	CLAUDE.md
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

type: refactor Code restructuring, no behavior change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant