diff --git a/packages/framework/src/Framework/Concerns/Internal/ConstructsPageSchemas.php b/packages/framework/src/Framework/Concerns/Internal/ConstructsPageSchemas.php deleted file mode 100644 index ae3ec8b11bf..00000000000 --- a/packages/framework/src/Framework/Concerns/Internal/ConstructsPageSchemas.php +++ /dev/null @@ -1,29 +0,0 @@ -constructPageSchema(); - - if ($this instanceof MarkdownPost) { - $this->constructFactoryData(new BlogPostDataFactory($this->matter, $this->markdown)); - } - } - - protected function constructPageSchema(): void - { - $this->constructFactoryData(new HydePageDataFactory($this->matter, $this->markdown ?? false, $this::class, $this->identifier, $this->getOutputPath(), $this->routeKey)); - } -} diff --git a/packages/framework/src/Framework/Factories/Concerns/HasFactory.php b/packages/framework/src/Framework/Factories/Concerns/HasFactory.php index c49e944e885..7569ad8d01a 100644 --- a/packages/framework/src/Framework/Factories/Concerns/HasFactory.php +++ b/packages/framework/src/Framework/Factories/Concerns/HasFactory.php @@ -4,6 +4,10 @@ namespace Hyde\Framework\Factories\Concerns; +use Hyde\Framework\Factories\BlogPostDataFactory; +use Hyde\Framework\Factories\HydePageDataFactory; +use Hyde\Pages\MarkdownPost; + trait HasFactory { public function constructFactoryData(PageDataFactory $data): void @@ -12,4 +16,18 @@ public function constructFactoryData(PageDataFactory $data): void $this->{$key} = $value; } } + + protected function constructPageSchemas(): void + { + $this->constructPageSchema(); + + if ($this instanceof MarkdownPost) { + $this->constructFactoryData(new BlogPostDataFactory($this->matter, $this->markdown)); + } + } + + protected function constructPageSchema(): void + { + $this->constructFactoryData(new HydePageDataFactory($this->matter, $this->markdown ?? false, $this::class, $this->identifier, $this->getOutputPath(), $this->routeKey)); + } } diff --git a/packages/framework/src/Pages/Concerns/HydePage.php b/packages/framework/src/Pages/Concerns/HydePage.php index 5bcfe3b7728..0700f1c1925 100644 --- a/packages/framework/src/Pages/Concerns/HydePage.php +++ b/packages/framework/src/Pages/Concerns/HydePage.php @@ -7,7 +7,6 @@ use Hyde\Foundation\PageCollection; use Hyde\Framework\Actions\SourceFileParser; use Hyde\Framework\Concerns\InteractsWithFrontMatter; -use Hyde\Framework\Concerns\Internal\ConstructsPageSchemas; use Hyde\Framework\Factories\Concerns\HasFactory; use Hyde\Framework\Features\Metadata\PageMetadataBag; use Hyde\Framework\Features\Navigation\NavigationData; @@ -37,7 +36,6 @@ */ abstract class HydePage implements PageSchema { - use ConstructsPageSchemas; use InteractsWithFrontMatter; use HasFactory; diff --git a/packages/framework/tests/Feature/HydePageTest.php b/packages/framework/tests/Feature/HydePageTest.php index 0044738cecb..96f3c108ceb 100644 --- a/packages/framework/tests/Feature/HydePageTest.php +++ b/packages/framework/tests/Feature/HydePageTest.php @@ -24,7 +24,7 @@ * * @covers \Hyde\Pages\Concerns\HydePage * @covers \Hyde\Pages\Concerns\BaseMarkdownPage - * @covers \Hyde\Framework\Concerns\Internal\ConstructsPageSchemas + * @covers \Hyde\Framework\Factories\Concerns\HasFactory * @covers \Hyde\Framework\Factories\NavigationDataFactory * @covers \Hyde\Framework\Factories\FeaturedImageFactory * @covers \Hyde\Framework\Factories\HydePageDataFactory diff --git a/packages/framework/tests/Feature/MarkdownPostTest.php b/packages/framework/tests/Feature/MarkdownPostTest.php index 78c8b2b50ff..3e795b84b1e 100644 --- a/packages/framework/tests/Feature/MarkdownPostTest.php +++ b/packages/framework/tests/Feature/MarkdownPostTest.php @@ -13,7 +13,7 @@ /** * @covers \Hyde\Pages\MarkdownPost - * @covers \Hyde\Framework\Concerns\Internal\ConstructsPageSchemas + * @covers \Hyde\Framework\Factories\Concerns\HasFactory */ class MarkdownPostTest extends TestCase { diff --git a/packages/framework/tests/Feature/PageModelConstructorsTest.php b/packages/framework/tests/Feature/PageModelConstructorsTest.php index 8e65b72dc00..197a3079ec7 100644 --- a/packages/framework/tests/Feature/PageModelConstructorsTest.php +++ b/packages/framework/tests/Feature/PageModelConstructorsTest.php @@ -12,7 +12,7 @@ /** * Test the constructor actions and schema constructors for page models. * - * @covers \Hyde\Framework\Concerns\Internal\ConstructsPageSchemas + * @covers \Hyde\Framework\Factories\Concerns\HasFactory * @covers \Hyde\Framework\Factories\NavigationDataFactory * @covers \Hyde\Framework\Factories\FeaturedImageFactory * @covers \Hyde\Framework\Factories\HydePageDataFactory diff --git a/packages/framework/tests/Feature/Services/DocumentationSidebarTest.php b/packages/framework/tests/Feature/Services/DocumentationSidebarTest.php index a622b011c00..d6248689649 100644 --- a/packages/framework/tests/Feature/Services/DocumentationSidebarTest.php +++ b/packages/framework/tests/Feature/Services/DocumentationSidebarTest.php @@ -15,7 +15,7 @@ /** * @covers \Hyde\Framework\Features\Navigation\DocumentationSidebar - * @covers \Hyde\Framework\Concerns\Internal\ConstructsPageSchemas + * @covers \Hyde\Framework\Factories\Concerns\HasFactory * @covers \Hyde\Framework\Factories\NavigationDataFactory */ class DocumentationSidebarTest extends TestCase diff --git a/packages/framework/tests/Unit/DocumentationPageTest.php b/packages/framework/tests/Unit/DocumentationPageTest.php index 48d5e2fd774..3e768bbb7e0 100644 --- a/packages/framework/tests/Unit/DocumentationPageTest.php +++ b/packages/framework/tests/Unit/DocumentationPageTest.php @@ -14,7 +14,7 @@ /** * @covers \Hyde\Pages\DocumentationPage - * @covers \Hyde\Framework\Concerns\Internal\ConstructsPageSchemas + * @covers \Hyde\Framework\Factories\Concerns\HasFactory * @covers \Hyde\Framework\Factories\NavigationDataFactory */ class DocumentationPageTest extends TestCase