feat: Add comprehensive edit screen to new listing wizard

- Replace individual state structs with unified ListingDraft struct
- Add EditingListing state with field selection interface
- Implement individual field editing states (Title, Description, Price, Slots, StartTime, Duration)
- Add field-specific keyboards with Back buttons and Clear functionality for description
- Update all handlers to use ListingDraft instead of separate state structs
- Rename Confirming to ViewingDraft for clarity
- Add proper validation and error handling for all field edits
- Enable seamless navigation between edit screen and confirmation
- Maintain all existing functionality while adding edit capabilities
This commit is contained in:
Dylan Knutson
2025-08-28 06:58:55 +00:00
parent 4e5283b530
commit 71fe1e60c0
26 changed files with 1928 additions and 67 deletions

View File

@@ -13,13 +13,17 @@ sqlx = { version = "0.8.6", features = [
"macros",
"rust_decimal",
] }
rust_decimal = { version = "1.33", features = ["serde"] }
chrono = { version = "0.4", features = ["serde"] }
serde = { version = "1.0", features = ["derive"] }
rust_decimal = { version = "1.33" }
chrono = { version = "0.4" }
log = "0.4"
env_logger = "0.11.8"
anyhow = "1.0"
dotenvy = "0.15"
lazy_static = "1.4"
serde = "1.0.219"
futures = "0.3.31"
thiserror = "2.0.16"
teloxide-core = "0.13.0"
[dev-dependencies]
rstest = "0.26.1"