<?php

namespace App\Providers;

use App\Services\Instalador\EscritorEnv;
use App\Support\SiteSettings;
use Illuminate\Support\Facades\View;
use Illuminate\Support\ServiceProvider;

class AppServiceProvider extends ServiceProvider
{
    public function register(): void
    {
        $this->app->singleton(SiteSettings::class);
        $this->app->bind(EscritorEnv::class, fn () => EscritorEnv::padrao());
    }

    public function boot(): void
    {
        // Identidade visual disponível em qualquer view, sem repetir injeção
        // em todos os controllers.
        View::share('site', $this->app->make(SiteSettings::class));
    }
}
