{{-- Shared channel listing edit modal. Requires the HasChannelListingModal trait on the parent Livewire component. Properties used: $listingModalProductId, $listingEditRow, $listingModalSchema Methods used: closeListingModal(), saveListingModal() Which sections/fields render is driven by $listingModalSchema (a serialised ChannelModalSchema). Each platform's ChannelListingDriver::modalSchema() declares what it supports — no platform-specific if-statements needed here. Include with: @include('channels::filament.partials.listing-modal') --}} @if ($listingModalProductId !== null && !empty($listingEditRow)) @php $s = $listingModalSchema; $listingSections = $s['sections'] ?? []; $statusOptions = $s['status_options'] ?? []; $cmpHint = $s['compare_price_hint'] ?? ''; $hasSection = fn(string $name) => isset($listingSections[$name]); $hasField = function(string $section, string $field) use ($listingSections): bool { if (!isset($listingSections[$section])) return false; $fields = $listingSections[$section]; return empty($fields) || in_array($field, $fields, true); }; @endphp
Images
Tick which images to include on this channel. Click ★ to set the featured (first) image.Listing
@if ($restrictedTerms)eBay Category
Pricing
Shipping
@if ($hasField('shipping', 'weight'))Inventory
@if ($hasField('inventory', 'barcode'))SEO
@if ($hasField('seo', 'seo_title'))URL
@if ($hasField('url', 'handle'))Title to apply
{{ $listingEditRow['title'] ?: ($listingEditRow['_defaults']['title'] ?? '') }}
Apply to