Files
mantra-kmp/composeApp
Kgothatso Ngako 99f99fa959 Add the add-translation workflow from the artifact detail screen
An Add Translation button in the artifact detail's Translations section
opens a workflow that requires selecting or creating a dialect (reusing the
chip picker + create-new-dialect fields), then scaffolds the translation.

- MantraRepository.addTranslation creates a MantraTranslationArtifactVersion
  for the artifact's latest version and the chosen dialectId (inheriting the
  source artifact's name/visibility/license), then mirrors the source
  structure: a MantraTranslationChapter per chapter and a
  MantraTranslationChunk (empty text scaffold) per chunk. Each created entity
  also gets a MarmotInnerEvent rumor (kinds 30306/30308/30309). When a new
  dialect is requested the ViewModel creates it first via addDialect.
- The three translation events' build methods now take real fields (fixing
  their phantom generics); toXEvent tag order matches build and
  fromXEventTemplate companions are added so the event ids round-trip.
- New AddTranslationScreen (route + ViewModel + UIState). On success it lands
  on a freshly-loaded artifact detail via popUpTo<ArtifactDetailRoute>.

No MantraTranslation rows / translation text are created here — that is the
per-chunk authoring step, intentionally left out.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-26 01:52:15 +02:00
..
2026-07-15 01:14:46 +02:00