feat: ✨ Added Extensionmigrations to laravel-settings config
This commit is contained in:
parent
322bfed972
commit
3ea5b4e010
|
@ -2,6 +2,9 @@
|
||||||
|
|
||||||
namespace App\Helpers;
|
namespace App\Helpers;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Summary of ExtensionHelper
|
||||||
|
*/
|
||||||
class ExtensionHelper
|
class ExtensionHelper
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
|
@ -60,7 +63,7 @@ class ExtensionHelper
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get all extensions
|
* Get all extensions
|
||||||
* @return array
|
* @return array of all extension paths look like: app/Extensions/ExtensionNamespace/ExtensionName
|
||||||
*/
|
*/
|
||||||
public static function getAllExtensions()
|
public static function getAllExtensions()
|
||||||
{
|
{
|
||||||
|
@ -79,4 +82,24 @@ class ExtensionHelper
|
||||||
|
|
||||||
return $extensions;
|
return $extensions;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Summary of getAllExtensionMigrations
|
||||||
|
* @return array of all migration paths look like: app/Extensions/ExtensionNamespace/ExtensionName/migrations/
|
||||||
|
*/
|
||||||
|
public static function getAllExtensionMigrations()
|
||||||
|
{
|
||||||
|
$extensions = ExtensionHelper::getAllExtensions();
|
||||||
|
|
||||||
|
// get all migration directories of the extensions and return them as array
|
||||||
|
$migrations = [];
|
||||||
|
foreach ($extensions as $extension) {
|
||||||
|
$migrationDir = $extension . '/migrations';
|
||||||
|
if (file_exists($migrationDir)) {
|
||||||
|
$migrations[] = $migrationDir;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return $migrations;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
use App\Helpers\ExtensionHelper;
|
||||||
use App\Settings\GeneralSettings;
|
use App\Settings\GeneralSettings;
|
||||||
use App\Settings\DiscordSettings;
|
use App\Settings\DiscordSettings;
|
||||||
use App\Settings\InvoiceSettings;
|
use App\Settings\InvoiceSettings;
|
||||||
|
@ -29,7 +30,7 @@ return [
|
||||||
ServerSettings::class,
|
ServerSettings::class,
|
||||||
UserSettings::class,
|
UserSettings::class,
|
||||||
WebsiteSettings::class,
|
WebsiteSettings::class,
|
||||||
TicketSettings::class
|
TicketSettings::class,
|
||||||
],
|
],
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -44,6 +45,8 @@ return [
|
||||||
*/
|
*/
|
||||||
'migrations_paths' => [
|
'migrations_paths' => [
|
||||||
database_path('settings'),
|
database_path('settings'),
|
||||||
|
...ExtensionHelper::getAllExtensionMigrations()
|
||||||
|
|
||||||
],
|
],
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -88,7 +91,7 @@ return [
|
||||||
'global_casts' => [
|
'global_casts' => [
|
||||||
DateTimeInterface::class => Spatie\LaravelSettings\SettingsCasts\DateTimeInterfaceCast::class,
|
DateTimeInterface::class => Spatie\LaravelSettings\SettingsCasts\DateTimeInterfaceCast::class,
|
||||||
DateTimeZone::class => Spatie\LaravelSettings\SettingsCasts\DateTimeZoneCast::class,
|
DateTimeZone::class => Spatie\LaravelSettings\SettingsCasts\DateTimeZoneCast::class,
|
||||||
// Spatie\DataTransferObject\DataTransferObject::class => Spatie\LaravelSettings\SettingsCasts\DtoCast::class,
|
// Spatie\DataTransferObject\DataTransferObject::class => Spatie\LaravelSettings\SettingsCasts\DtoCast::class,
|
||||||
Spatie\LaravelData\Data::class => Spatie\LaravelSettings\SettingsCasts\DataCast::class,
|
Spatie\LaravelData\Data::class => Spatie\LaravelSettings\SettingsCasts\DataCast::class,
|
||||||
],
|
],
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue