<?php

namespace Database\Seeders;

use Database\Seeders\New\AddressSeeder;
use Database\Seeders\New\BrandsSeeder;
use Database\Seeders\New\CategoriesTableSeeder;
use Database\Seeders\New\CustomersTableSeeder;
use Database\Seeders\New\FavoritesSeeder;
use Database\Seeders\New\MediaSeeder;
use Database\Seeders\New\OrderAddressSeeder;
use Database\Seeders\New\OrderSeeder;
use Database\Seeders\New\ProductBarcodesSeeder;
use Database\Seeders\New\ProductCategoryRelationshipsSeeder;
use Database\Seeders\New\ProductPricesSeeder;
use Database\Seeders\New\ProductPropertiesSeeder;
use Database\Seeders\New\ProductPropertyValuesSeeder;
use Database\Seeders\New\ProductsTableSeeder;
use Database\Seeders\New\ProductStocksSeeder;
use Database\Seeders\New\PropertiesTableSeeder;
use Database\Seeders\New\SectionsSeeder;
use Database\Seeders\New\SellersTableSeeder;
use Illuminate\Database\Console\Seeds\WithoutModelEvents;
use Illuminate\Database\Seeder;

class DatabaseSeeder extends Seeder
{
    use WithoutModelEvents;

    /**
     * Seed the application's database.
     */
    public function run(): void
    {
        $this->call([
            PaymentTypeSeeder::class,
            UsersTableSeeder::class,
               BrandsSeeder::class,
               CustomersTableSeeder::class,
            SellersTableSeeder::class,
            ProductsTableSeeder::class,
            ProductPricesSeeder::class,
            CategoriesTableSeeder::class,
            AddressSeeder::class,
            PropertiesTableSeeder::class,
            FavoritesSeeder::class,
            SectionsSeeder::class,
            ProductCategoryRelationshipsSeeder::class,
            ProductBarcodesSeeder::class,
            ProductPropertiesSeeder::class,
            ProductPropertyValuesSeeder::class,
            ProductStocksSeeder::class,
            MediaSeeder::class,
            OrderSeeder::class,
            OrderAddressSeeder::class,
        ]);
    }
}
