Summary
Owner shop profile API + settings UI + onboarding
Milestone: M3 Owner
Labels: backend, frontend, owner
Learn
- Shop visibility rules in lib/shops-list.ts (non-empty name filter)
- Owner-scoped PATCH patterns from lib/owner-products.ts
- Cloudinary upload reuse from QC-34
Build
Files
app/api/owner/shop/route.ts
lib/parse-shop-body.ts
lib/update-owner-shop.ts
app/(owner)/owner/settings/page.tsx
components/owner/ShopSettingsForm.tsx
lib/routes.ts
scripts/test-owner-shop-api.mts
Acceptance criteria
Depends on
Summary
Owner shop profile API + settings UI + onboarding
Milestone: M3 Owner
Labels:
backend,frontend,ownerLearn
Build
/api/owner/shopscoped to sessionshopId+ownerIdlib/parse-shop-body.tsandlib/update-owner-shop.ts/owner/settingswith form: name (required), description, address, categories, isOpen toggle/api/upload(extend for shop assets folderquickcart/shops/{shopId})/owner/settings?onboarding=1ownerSettingsto lib/routes.tsscripts/test-owner-shop-api.mtsFiles
app/api/owner/shop/route.tslib/parse-shop-body.tslib/update-owner-shop.tsapp/(owner)/owner/settings/page.tsxcomponents/owner/ShopSettingsForm.tsxlib/routes.tsscripts/test-owner-shop-api.mtsAcceptance criteria
isOpen: false) still listed but checkout blockedDepends on