Expand recipe form with metadata fields and wire up submit - #1201
Draft
dgee2 wants to merge 3 commits into
Draft
Conversation
dgee2
force-pushed
the
issue-1119-recipe-form-metadata
branch
from
August 3, 2026 08:16
f903273 to
d353eb2
Compare
dgee2
force-pushed
the
issue-1119-recipe-form-metadata
branch
from
August 3, 2026 20:09
d353eb2 to
34fe6f2
Compare
Introduces a reusable numeric input atom (number-field.vue) for the recipe form's metadata fields, and extends text-field.vue with optional `rules`/`type` props so form fields can opt into Quasar validation and textarea rendering.
The recipe name field previously accepted empty submissions; the create/update form now blocks submit on an empty or whitespace-only title.
new-recipe-form.vue previously rendered only a name field with no submit handling. It now exposes the recipe's metadata fields (summary, yield, servings, prep/cook/total time), validates numeric fields as non-negative whole numbers, and submits via the existing useCreateRecipe() mutation, navigating to the new recipe's detail page on success. Mutation failures are caught and surfaced as an inline banner instead of becoming an unhandled promise rejection. Ingredients/steps are submitted as empty arrays for now; editors for those are added in later PRs in this stack (#1120, #1121), as is the visibility selector (#1122) — accessScope is hardcoded to "Private" here in the interim. Part of #1100. Closes #1119.
dgee2
force-pushed
the
issue-1119-recipe-form-metadata
branch
from
August 4, 2026 07:05
34fe6f2 to
0d8d02e
Compare
|
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.


Summary
The recipe creation form (
new-recipe-form.vue) previously rendered only a name field with no submit handling at all. This PR:useCreateRecipe()mutation and navigates to the new recipe's detail page (added in Add authenticated recipe detail page #1118) on success.Ingredients/steps are submitted as empty arrays for now (validated as acceptable by the backend's
UpsertRecipeValidatorfrom #1116) — row editors for those come in #1120/#1121.accessScopeis hardcoded to"Private"until the visibility selector lands in #1122.Test plan
pnpm build(type-check + production build)pnpm lintpnpm test:storybook— 20 files / 44 tests passing, including new stories for empty-title validation, valid-title submit, negative/non-integer servings validation, and submit-failure error bannerPart of #1100.
Closes #1119.