"""
Marketplace app models aggregator.
Imports all models from the three domain-partitioned files so that Django's
model registry discovers them under the 'marketplace' app label.

Domain partitioning:
  models_part1  — Catalog taxonomy (Category, SubCategory, Brand) + Vendor domain
  models_part2  — Order extension (OrderItem, Shipment) + Pricing + Cart/Wishlist
  models_part3  — Fulfillment routing + Inventory (warehouse layer) + Reviews + Shipping
"""

# --- Part 1: Catalog & Vendor ---
from .models_part1 import (  # noqa: F401
    Category,
    SubCategory,
    Brand,
    ProductVariant,
    VariantAttribute,
    ProductImage,
    ProductVideo,
    ProductSpecification,
    ProductTag,
    ProductSEO,
    Vendor,
    VendorDocument,
    VendorBankAccount,
    VendorInventory,
    VendorEarning,
    VendorPayout,
    VendorContract,
    ContractPricing,
    ContractMargin,
)

# --- Part 2: Order Extension, Pricing & Cart ---
from .models_part2 import (  # noqa: F401
    OrderItem,
    OrderShipment,
    OrderStatusHistory,
    ShoppingCart,
    CartItem,
    CartPromotion,
    Wishlist,
    WishlistItem,
    ProductPrice,
    FlashOffer,
    CouponCode,
    CouponUsage,
)

# --- Part 3: Fulfillment, Inventory, Reviews, Shipping ---
from .models_part3 import (  # noqa: F401
    FulfillmentMode,
    FulfillmentZone,
    FulfillmentZonePincode,
    FulfillmentRoute,
    FulfillmentTask,
    InventoryWarehouse,
    WarehouseStock,
    StockMovement,
    ProductStockSummary,
    LowStockAlert,
    ShippingRule,
    ShippingRulePincode,
    PincodeServiceability,
    DeliveryEstimation,
    ProductReview,
    ReviewMedia,
    ContentHelpfulness,
)
