<?php declare(strict_types=1); namespace Arcanedev\Support\Providers\Concerns; /** * Trait HasMigrations * * @author ARCANEDEV <arcanedev.maroc@gmail.com> */ trait HasMigrations { /* ----------------------------------------------------------------- | Main Methods | ----------------------------------------------------------------- */ /** * Get the migrations path. * * @return string */ protected function getMigrationsPath(): string { return $this->getBasePath().DIRECTORY_SEPARATOR.'database'.DIRECTORY_SEPARATOR.'migrations'; } /** * Publish the migration files. * * @param string|null $path */ protected function publishMigrations(?string $path = null): void { $this->publishes([ $this->getMigrationsPath() => $path ?: database_path('migrations') ], $this->getPublishedTags('migrations')); } /** * Load the migrations files. */ protected function loadMigrations(): void { $this->loadMigrationsFrom($this->getMigrationsPath()); } }