Вход Регистрация
Файл: vendor/laravel/framework/src/Illuminate/Mail/MailServiceProvider.php
Строк: 69
<?php

namespace IlluminateMail;

use 
IlluminateContractsSupportDeferrableProvider;
use 
IlluminateSupportServiceProvider;

class 
MailServiceProvider extends ServiceProvider implements DeferrableProvider
{
    
/**
     * Register the service provider.
     *
     * @return void
     */
    
public function register()
    {
        
$this->registerIlluminateMailer();
        
$this->registerMarkdownRenderer();
    }

    
/**
     * Register the Illuminate mailer instance.
     *
     * @return void
     */
    
protected function registerIlluminateMailer()
    {
        
$this->app->singleton('mail.manager', function ($app) {
            return new 
MailManager($app);
        });

        
$this->app->bind('mailer', function ($app) {
            return 
$app->make('mail.manager')->mailer();
        });
    }

    
/**
     * Register the Markdown renderer instance.
     *
     * @return void
     */
    
protected function registerMarkdownRenderer()
    {
        if (
$this->app->runningInConsole()) {
            
$this->publishes([
                
__DIR__.'/resources/views' => $this->app->resourcePath('views/vendor/mail'),
            ], 
'laravel-mail');
        }

        
$this->app->singleton(Markdown::class, function ($app) {
            
$config $app->make('config');

            return new 
Markdown($app->make('view'), [
                
'theme' => $config->get('mail.markdown.theme''default'),
                
'paths' => $config->get('mail.markdown.paths', []),
            ]);
        });
    }

    
/**
     * Get the services provided by the provider.
     *
     * @return array
     */
    
public function provides()
    {
        return [
            
'mail.manager',
            
'mailer',
            
Markdown::class,
        ];
    }
}
Онлайн: 0
Реклама