Compare commits

...

2 commits

Author SHA1 Message Date
a815442990 feat(base/profile): compress avatar uploads with tight 512px cap
Pass tuned compress options to <ImageUpload>: 512px max edge / 200 KB
target. Avatars don't need 1920px and the smaller cap meaningfully
reduces pict-rs storage for a high-volume content type. Closes #59
for the profile consumer.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-20 23:48:48 +02:00
c1194dadbb feat(market): client-side compress product image uploads
Pass `:compress="true"` to <ImageUpload> so the up-to-5 product images
get resized to 1920px max edge and re-encoded as WebP before hitting
pict-rs. Closes #59 for the market consumer. Default knobs match the
events banner use case — both are gallery-scale images.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-20 23:48:48 +02:00
2 changed files with 5 additions and 1 deletions

View file

@ -30,7 +30,9 @@
<User class="h-10 w-10 text-muted-foreground" /> <User class="h-10 w-10 text-muted-foreground" />
</div> </div>
<!-- Upload component --> <!-- Upload component. Avatars are small; tighten the
default compress knobs so a 4K phone photo lands as
a ~200 KB 512px WebP. -->
<ImageUpload <ImageUpload
v-model="uploadedPicture" v-model="uploadedPicture"
:multiple="false" :multiple="false"
@ -38,6 +40,7 @@
:max-size-mb="5" :max-size-mb="5"
:disabled="isUpdating" :disabled="isUpdating"
:allow-camera="true" :allow-camera="true"
:compress="{ maxWidthOrHeight: 512, maxSizeMB: 0.2 }"
placeholder="Upload picture" placeholder="Upload picture"
accept="image/*" accept="image/*"
/> />

View file

@ -136,6 +136,7 @@
:show-primary-button="true" :show-primary-button="true"
:disabled="isCreating" :disabled="isCreating"
:allow-camera="true" :allow-camera="true"
:compress="true"
placeholder="Add product photos" placeholder="Add product photos"
/> />
<FormMessage /> <FormMessage />