feat: add Letzshop frontend for admin and vendor portals

Add complete frontend UI for Letzshop marketplace integration:

Admin portal (/admin/letzshop):
- Vendor overview with Letzshop status cards
- Vendor table with configuration state and sync info
- Configuration modal for API credentials
- Connection testing and manual sync triggers
- Orders modal for viewing vendor orders

Vendor portal (/vendor/{code}/letzshop):
- Orders tab with import, confirm, reject actions
- Settings tab for API credentials management
- Tracking modal for shipment updates
- Order details modal with line items
- Stats display for order status counts

Also includes:
- Routes for both admin and vendor Letzshop pages
- Sidebar navigation updates for both portals
- Alpine.js data functions for reactive UI state

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2025-12-13 12:40:29 +01:00
parent 448f01f82b
commit 5bcbd14391
8 changed files with 1800 additions and 0 deletions

View File

@@ -95,6 +95,17 @@ Follows same pattern as admin sidebar
<span class="ml-4">Orders</span>
</a>
</li>
<li class="relative px-6 py-3">
<span x-show="currentPage === 'letzshop'"
class="absolute inset-y-0 left-0 w-1 bg-purple-600 rounded-tr-lg rounded-br-lg"
aria-hidden="true"></span>
<a class="inline-flex items-center w-full text-sm font-semibold transition-colors duration-150 hover:text-gray-800 dark:hover:text-gray-200"
:class="currentPage === 'letzshop' ? 'text-gray-800 dark:text-gray-100' : ''"
:href="`/vendor/${vendorCode}/letzshop`">
<span x-html="$icon('external-link', 'w-5 h-5')"></span>
<span class="ml-4">Letzshop Orders</span>
</a>
</li>
<li class="relative px-6 py-3">
<span x-show="currentPage === 'customers'"
class="absolute inset-y-0 left-0 w-1 bg-purple-600 rounded-tr-lg rounded-br-lg"