50 lines
2.0 KiB
Plaintext
50 lines
2.0 KiB
Plaintext
client/
|
|
├── Cargo.toml
|
|
├── config.toml
|
|
└── src/
|
|
├── main.rs # Entry point with minimal code
|
|
├── lib.rs # Core exports
|
|
├── app.rs # Application lifecycle and main loop
|
|
│
|
|
├── ui/ # UI components and rendering
|
|
│ ├── mod.rs
|
|
│ ├── theme.rs # Theme definitions (from colors.rs)
|
|
│ ├── layout.rs # Layout definitions
|
|
│ ├── render.rs # Main render coordinator
|
|
│ └── components/ # UI components
|
|
│ ├── mod.rs
|
|
│ ├── command_line.rs
|
|
│ ├── form.rs
|
|
│ ├── preview_card.rs
|
|
│ └── status_line.rs
|
|
│
|
|
├── input/ # Input handling
|
|
│ ├── mod.rs
|
|
│ ├── handler.rs # Main input handler (lightweight coordinator)
|
|
│ ├── commands.rs # Command processing
|
|
│ ├── navigation.rs # Navigation between entries and fields
|
|
│ └── edit.rs # Edit mode logic
|
|
│
|
|
├── editor/ # Text editing functionality
|
|
│ ├── mod.rs
|
|
│ ├── cursor.rs # Cursor movement
|
|
│ └── text.rs # Text manipulation (word movements, etc.)
|
|
│
|
|
├── state/ # Application state
|
|
│ ├── mod.rs
|
|
│ ├── app_state.rs # Main application state
|
|
│ └── form_state.rs # Form state
|
|
│
|
|
├── model/ # Data models
|
|
│ ├── mod.rs
|
|
│ └── entry.rs # Entry model with business logic
|
|
│
|
|
├── service/ # External services
|
|
│ ├── mod.rs
|
|
│ ├── terminal.rs # Terminal setup and management
|
|
│ └── grpc.rs # gRPC client (extracted from terminal.rs)
|
|
│
|
|
└── config/ # Configuration
|
|
├── mod.rs
|
|
└── keybindings.rs # Keybinding definitions and matching
|