Add the Sell tab: post a listing from one screen - #119
Open
AndrewG828 wants to merge 1 commit into
Conversation
Replaces the three-step push flow (add button → images → details) with a single form: photos, title and price, category, condition, description, publish. Nothing routes to it yet — the tab bar rework wires it up. The photo well is a carousel rather than a strip, so each image is reviewed at the size it will be posted at, with delete and add controls on the image itself and arrows only where there is somewhere to go. Categories come from `Constants.filters` instead of a hand-written list. The first cut hardcoded seven, which already disagreed with the taxonomy — it was missing Household. Only the "Handmade" → "Homemade" display name is special-cased here. New listings default to "Gently Used" rather than "Never Used": the previous default made the strongest claim on the seller's behalf, which is the wrong way round for a form that people will submit without reading. Left out of the port: a clothing-only "Additional Details" block whose call site was commented out and whose fields did nothing. Worth flagging for a follow-up — `NewListingViewModel.createNewListing()` calls `clear()` on failure as well as success, so a network error silently empties the form. That was survivable when the form was a pushed screen you were about to leave; on a tab root that keeps you where you are, it reads as the app throwing your listing away. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017R8mua9xepzF3mnRETtd6W
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Team Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
This was referenced Sep 3, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Replaces the three-step push flow (add button → images → details) with a single
form: photos, title and price, category, condition, description, publish.
Nothing routes to it yet — the tab bar rework wires it up.
The photo well is a carousel rather than a strip, so each image is reviewed at
the size it will be posted at, with delete and add controls on the image itself
and arrows only where there is somewhere to go.
Categories come from
Constants.filtersinstead of a hand-written list. Thefirst cut hardcoded seven, which already disagreed with the taxonomy — it was
missing Household. Only the "Handmade" → "Homemade" display name is
special-cased here.
New listings default to "Gently Used" rather than "Never Used": the previous
default made the strongest claim on the seller's behalf, which is the wrong way
round for a form that people will submit without reading.
Left out of the port: a clothing-only "Additional Details" block whose call site
was commented out and whose fields did nothing.
Worth flagging for a follow-up —
NewListingViewModel.createNewListing()callsclear()on failure as well as success, so a network error silently empties theform. That was survivable when the form was a pushed screen you were about to
leave; on a tab root that keeps you where you are, it reads as the app throwing
your listing away.
Co-Authored-By: Claude Opus 5 (1M context) noreply@anthropic.com
Claude-Session: https://claude.ai/code/session_017R8mua9xepzF3mnRETtd6W