File: /home/xedaptot/ai.naniguide.com/database/factories/AdTemplateFactory.php
<?php
namespace Database\Factories;
use App\Model\AdTemplate;
use Illuminate\Database\Eloquent\Factories\Factory;
class AdTemplateFactory extends Factory
{
protected $model = AdTemplate::class;
public function definition(): array
{
return [
'uid' => uniqid(),
'customer_id' => null,
'name' => 'Sample Template ' . uniqid(),
'platform' => AdTemplate::PLATFORM_UNIVERSAL,
'format' => AdTemplate::FORMAT_IMAGE,
'category' => 'General',
'is_featured' => false,
'use_count' => 0,
];
}
public function system(): static
{
return $this->state(fn () => ['customer_id' => null]);
}
public function featured(): static
{
return $this->state(fn () => ['is_featured' => true]);
}
/**
* Attach a minimal valid BuilderJS PageElement content.
*/
public function withBuilderContent(?array $content = null): static
{
return $this->state(fn () => [
'content' => $content ?? [
'theme' => 'default',
'name' => 'PageElement',
'template' => 'Page',
'page_title' => null,
'blocks' => [
[
'name' => 'BlockElement',
'template' => 'Block',
'elements' => [
[
'name' => 'HeadingElement',
'template' => 'Heading',
'type' => 'h2',
'text' => 'Factory headline',
'formats' => [],
],
],
'formats' => [],
],
],
'formats' => ['background_color' => '#FFFFFF'],
'block_gap' => 0,
'container_width' => 'narrow',
],
]);
}
}