package com.peachpasswords.ui /** * Every navigation destination in the app. [route] is the concrete route used * with `navController.navigate(...)`; parameterized destinations expose a * `ROUTE` pattern (with `{arg}` placeholders) for registration in the graph. */ sealed class PeachNav(val route: String) { data object Onboarding : PeachNav("onboarding") data object Lock : PeachNav("lock") data object VaultList : PeachNav("vault") /** Same list, pre-filtered to notes — the closest Android equivalent to the * browser's dedicated secure-notes overlay, reached from the entry-deck * chrome's "Notes" action. */ data object VaultNotes : PeachNav("vault/notes") data class EntryDetail(val id: String) : PeachNav("entry/$id") { companion object { const val ROUTE = "entry/{id}" fun of(id: String) = "entry/$id" } } data class NotesMode(val id: String) : PeachNav("notes/$id") { companion object { const val ROUTE = "notes/{id}" fun of(id: String) = "notes/$id" } } data class EntryEdit(val id: String?) : PeachNav("edit?id=${id ?: ""}") { companion object { const val ROUTE = "edit?id={id}" fun of(id: String?) = "edit?id=${id ?: ""}" } } data object Settings : PeachNav("settings") data object CodexGenerate : PeachNav("codex/generate") data object CodexRestore : PeachNav("codex/restore") data object ChirpPair : PeachNav("chirp/pair") data object Health : PeachNav("health") data object Trash : PeachNav("trash") data object Import : PeachNav("import") data object Export : PeachNav("export") data object Panic : PeachNav("panic") data object RecoverySetup : PeachNav("recovery/setup") data object RecoveryView : PeachNav("recovery/view") data object RecoveryEntry : PeachNav("recovery/entry") }