<?php

namespace Webkul\Checkout\Database\Factories;

use Illuminate\Database\Eloquent\Factories\Factory;
use Webkul\Checkout\Models\Cart;

class CartFactory extends Factory
{
    /**
     * The name of the factory's corresponding model.
     *
     * @var string
     */
    protected $model = Cart::class;

    /**
     * Define the model's default state.
     */
    public function definition(): array
    {
        return [
            'channel_id' => core()->getCurrentChannel()->id,
            'global_currency_code' => $baseCurrencyCode = core()->getBaseCurrencyCode(),
            'base_currency_code' => $baseCurrencyCode,
            'channel_currency_code' => core()->getChannelBaseCurrencyCode(),
            'cart_currency_code' => core()->getCurrentCurrencyCode(),
            'items_count' => 1,
            'is_guest' => 1,
            'customer_email' => $this->faker->safeEmail(),
            'customer_first_name' => preg_replace('/[^a-zA-Z ]/', '', $this->faker->firstName()),
            'customer_last_name' => preg_replace('/[^a-zA-Z ]/', '', $this->faker->lastName()),
        ];
    }
}
