Vitron-Front/app/routes
Arda Samadi a642fc0fae feat(seller-team): multi-user dashboard — store switcher, role gating, team UI
- useMyStores + team hooks (invite by phone / list / remove) in use-seller-hooks.
- useStoreOwnership rewritten to allow staff (not just the owner) via my-stores;
  exposes `role` so callers can gate owner-only UI, and no longer redirects
  members away from a store they help manage.
- Store settings: owner-only items (financial, shipping, edit store, instagram
  sync, team) hidden from staff; new "مدیریت اعضای تیم" entry (owner-only).
- New /store/:storeId/team page: invite by phone + members list with pending/
  active status + remove (owner-only, redirects staff). MyLayout keeps store mode
  on the team route.
- StoreForm edit is owner-only (redirects staff). Profile "enter my store" now
  routes owners to their store and staff to the store they manage.
- Chat already split earlier: seller inbox vs personal buyer inbox.

Depends on the seller-team backend; ships on this branch, not main.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-01 16:43:53 +03:30
..
_index.tsx feat(home): seller brand chip (logo + name) on product tiles 2026-06-27 16:38:44 +03:30
$.tsx first 2026-04-29 01:44:16 +03:30
cart._index.tsx feat(cart): mockup-style item rows + separate-shipping note 2026-06-27 23:16:42 +03:30
cart.$cartId.tsx Desktop: cart checkout two-column + profile account grid 2026-06-16 11:19:55 +03:30
collection.$id.tsx Desktop fixes: product seller + actions, collection cover, masonry skeleton 2026-06-14 22:59:24 +03:30
collections.tsx Desktop polish: seller header contrast, collection image crop, infinite scroll 2026-06-14 22:19:40 +03:30
explore.tsx Desktop: explore page (category grid + contained layout) 2026-06-16 11:11:46 +03:30
login.tsx Login: 6-digit OTP + desktop layout 2026-06-14 21:36:42 +03:30
logout.tsx first 2026-04-29 01:44:16 +03:30
product.$id.tsx Security fixes: session hardening, open redirect, SSR path injection 2026-06-14 19:02:11 +03:30
profile._index.tsx feat(seller-team): multi-user dashboard — store switcher, role gating, team UI 2026-07-01 16:43:53 +03:30
profile.about.tsx Desktop header: login/profile state + theme toggle; hide about/faq header 2026-06-16 13:59:34 +03:30
profile.bookmarks.tsx first 2026-04-29 01:44:16 +03:30
profile.faq.tsx Desktop header: login/profile state + theme toggle; hide about/faq header 2026-06-16 13:59:34 +03:30
profile.following.tsx first 2026-04-29 01:44:16 +03:30
profile.location._index.tsx Desktop: inline the fixed-bottom buttons on account pages 2026-06-16 12:58:51 +03:30
profile.location.add.tsx first 2026-04-29 01:44:16 +03:30
profile.location.edit.$id.tsx first 2026-04-29 01:44:16 +03:30
profile.orders.tsx feat(notifications): web push opt-in + unread nav badges 2026-06-17 14:02:56 +03:30
profile.sets._index.tsx first 2026-04-29 01:44:16 +03:30
profile.sets.$id.tsx first 2026-04-29 01:44:16 +03:30
profile.setting.tsx feat(notifications): web push opt-in + unread nav badges 2026-06-17 14:02:56 +03:30
profile.threads._index.tsx first 2026-04-29 01:44:16 +03:30
profile.threads.$threadId.tsx first 2026-04-29 01:44:16 +03:30
profile.tsx feat(notifications): web push opt-in + unread nav badges 2026-06-17 14:02:56 +03:30
profile.wallet._index.tsx Desktop: inline the fixed-bottom buttons on account pages 2026-06-16 12:58:51 +03:30
profile.wallet.payment.tsx first 2026-04-29 01:44:16 +03:30
resources.manifest[.]webmanifest.ts first 2026-04-29 01:44:16 +03:30
robots[.]txt.tsx first 2026-04-29 01:44:16 +03:30
search.$query.tsx feat(search/explore): home-style product tiles with seller brand chip 2026-06-27 17:09:58 +03:30
seller.$sellerId._index.tsx feat(seller): customizable profile banner + seller page polish 2026-07-01 12:00:23 +03:30
sellers.tsx feat(seller): customizable profile banner + seller page polish 2026-07-01 12:00:23 +03:30
sitemap[.]xml.tsx first 2026-04-29 01:44:16 +03:30
store.$storeId._index.tsx Desktop: seller dashboard shell + gate carousel arrows to product gallery 2026-06-17 12:28:59 +03:30
store.$storeId.edit.tsx first 2026-04-29 01:44:16 +03:30
store.$storeId.financial-dashboard._index.tsx feat(seller-dashboard): desktop-friendly layouts for list and hub pages 2026-06-17 13:00:18 +03:30
store.$storeId.financial-dashboard.cash-funds.tsx first 2026-04-29 01:44:16 +03:30
store.$storeId.financial-dashboard.reports.tsx first 2026-04-29 01:44:16 +03:30
store.$storeId.financial-dashboard.transactions.tsx first 2026-04-29 01:44:16 +03:30
store.$storeId.orders._index.tsx feat(seller-dashboard): desktop-friendly layouts for list and hub pages 2026-06-17 13:00:18 +03:30
store.$storeId.orders.$orderId.tsx first 2026-04-29 01:44:16 +03:30
store.$storeId.product.$id.tsx Security fixes: session hardening, open redirect, SSR path injection 2026-06-14 19:02:11 +03:30
store.$storeId.products.tsx feat(seller-dashboard): desktop-friendly layouts for list and hub pages 2026-06-17 13:00:18 +03:30
store.$storeId.setting.tsx feat(seller-team): multi-user dashboard — store switcher, role gating, team UI 2026-07-01 16:43:53 +03:30
store.$storeId.shipping-method.tsx first 2026-04-29 01:44:16 +03:30
store.$storeId.team.tsx feat(seller-team): multi-user dashboard — store switcher, role gating, team UI 2026-07-01 16:43:53 +03:30
store.$storeId.threads._index.tsx first 2026-04-29 01:44:16 +03:30
store.$storeId.threads.$threadId.tsx first 2026-04-29 01:44:16 +03:30
store.$storeId.tsx feat(notifications): web push opt-in + unread nav badges 2026-06-17 14:02:56 +03:30
store.add.manual.$storeId.tsx feat(upload): convert HEIC/HEIF to JPEG on the client before preview/upload 2026-06-23 16:43:30 +03:30
store.authenticate.instagram.$storeId.tsx first 2026-04-29 01:44:16 +03:30
store.create.tsx first 2026-04-29 01:44:16 +03:30