refactor(commons): extract GitDiffView renderer to commons

Third batch of the note-ui-commons extraction. GitDiffView is a pure
presentation composable — it takes a quartz ParsedPatch + a Modifier, with
no AccountViewModel/INav/Note — and its syntax-highlighting helper
(CodeHighlighter) already lives in commons, so it moves wholesale.

- commons/ui/note/GitDiffView.kt: the GitHub-style file-by-file diff view
  (stat summary, per-file collapsible cards, +/- line coloring, intraline
  emphasis, syntax highlighting). Labels resolve via commons Res.
- Migrated git_diff_binary (string) and git_diff_files_changed (plural,
  all quantity forms across 11 locales) from amethyst/res into
  commons/composeResources; deleted the amethyst copies. This exercises the
  now-wired commons Crowdin pipeline for a plural resource.
- Callers (Git.kt, GitPullRequestChanges.kt, GitCommitLog.kt) re-point the
  import to commons; the call sites are unchanged.

Verified: :commons:compileKotlinJvm (plural accessor generation) and
:amethyst:compileFdroidDebugKotlin both pass; every touched strings.xml is
well-formed.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Gmrt3jwYPDJ38MJGJ6GaNr
This commit is contained in:
Claude
2026-07-17 22:48:31 +00:00
parent a839ef226a
commit b2c78d6b76
26 changed files with 71 additions and 67 deletions
@@ -4,4 +4,11 @@
<string name="git_status_merged">Sloučeno</string>
<string name="git_status_closed">Uzavřeno</string>
<string name="git_status_draft">Koncept</string>
<string name="git_diff_binary">Binární soubor se nezobrazuje.</string>
<plurals name="git_diff_files_changed">
<item quantity="one">%1$d soubor změněn</item>
<item quantity="few">%1$d soubory změněny</item>
<item quantity="many">%1$d souboru změněno</item>
<item quantity="other">%1$d souborů změněno</item>
</plurals>
</resources>