Move integration credentials into encrypted dashboard settings
Deploy HickLab3D Dashboard / Deploy to production (push) Successful in 1m42s
Deploy HickLab3D Dashboard / Deploy to production (push) Successful in 1m42s
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
<?php
|
||||
|
||||
namespace App\Services;
|
||||
|
||||
use App\Models\IntegrationSetting;
|
||||
|
||||
class IntegrationSettings
|
||||
{
|
||||
/** @var array<string, array<string, mixed>> */
|
||||
private array $resolved = [];
|
||||
|
||||
/** @return array<string, mixed> */
|
||||
public function for(string $provider): array
|
||||
{
|
||||
if (! isset($this->resolved[$provider])) {
|
||||
$this->resolved[$provider] = array_replace(
|
||||
config('services.'.$provider, []),
|
||||
IntegrationSetting::find($provider)?->settings ?? [],
|
||||
);
|
||||
}
|
||||
|
||||
return $this->resolved[$provider];
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user