feat: collection color image management#3904
Conversation
Signed-off-by: Gašper Grom <gasper.grom@gmail.com>
|
Your PR title doesn't contain a Jira issue key. Consider adding it for better traceability. Example:
Projects:
Please add a Jira issue key to your PR title. |
2 similar comments
|
Your PR title doesn't contain a Jira issue key. Consider adding it for better traceability. Example:
Projects:
Please add a Jira issue key to your PR title. |
|
Your PR title doesn't contain a Jira issue key. Consider adding it for better traceability. Example:
Projects:
Please add a Jira issue key to your PR title. |
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 2 potential issues.
Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.
| INSERT INTO collections (name, description, slug, "categoryId", starred, "logoUrl") | ||
| VALUES ($(name), $(description), $(slug), $(categoryId), $(starred), $(logoUrl)) | ||
| INSERT INTO collections (name, description, slug, "categoryId", starred, "logoUrl", "imageUrl", color) | ||
| VALUES ($(name), $(description), $(slug), $(categoryId), $(starred), $(logoUrl), $(imageUrl), $(color)) |
There was a problem hiding this comment.
SQL references missing properties, breaking existing callers
High Severity
The createCollection SQL now references $(imageUrl) and $(color) named parameters, but ICreateCollection declares these as optional (color?: string | null, imageUrl?: string | null). The existing caller in segmentService.ts passes an object without imageUrl or color. Since pgp.as.format throws when a named parameter references a property that doesn't exist on the object, this will cause a runtime error and break the segment creation flow.
Additional Locations (1)
|
|
||
| <!-- Card image URL --> | ||
| <article class="mb-6"> | ||
| <lf-field label-text="Card image URL" :required="true"> |
There was a problem hiding this comment.
UI marks fields required but validation allows empty
Medium Severity
The imageUrl field's lf-field has :required="true" (showing a required indicator to the user), but the validation rules at line 265 only include { url } without a required validator. Vuelidate's url validator passes for empty strings, so the form can be submitted with an empty imageUrl despite the UI indicating it's mandatory.
Additional Locations (1)
|
Your PR title doesn't contain a Jira issue key. Consider adding it for better traceability. Example:
Projects:
Please add a Jira issue key to your PR title. |


Note
Medium Risk
Touches the
collectionsDB schema and write path (create/insert) while extending the admin UI payload, so mismatches between migrations, API validation, and consumers could cause runtime errors or missing data.Overview
Adds appearance customization for collections by introducing new
imageUrl(card image) andcolorfields end-to-end.This updates the admin collection create/edit drawer to collect and submit these fields (with URL validation and a color picker), extends the frontend collection/request models, and updates the data-access-layer
createCollectioninsert to persist them.Includes forward/backward SQL migrations to add/remove the
collections.imageUrlandcollections.colorcolumns, and expandsscripts/cliclean-start-fe-devignored services to keep more backend workers stopped during FE-only dev.Written by Cursor Bugbot for commit 0803878. This will update automatically on new commits. Configure here.