diff --git a/.env.example b/.env.example index aaf8f7e5..c8049e0e 100644 --- a/.env.example +++ b/.env.example @@ -33,8 +33,8 @@ MAIL_USERNAME=null MAIL_PASSWORD=null MAIL_ENCRYPTION=null -NEXMO_KEY=4587feffd # Votre Clé Nexmo API -NEXMO_SECRET=54dasf4e8fa4s4fd4f5s # Votre Mot de passe Nexmo API +NEXMO_KEY= # Votre Clé Nexmo API +NEXMO_SECRET= # Votre Mot de passe Nexmo API PUSHER_APP_ID= PUSHER_APP_KEY= diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index fd67162b..ef3a80fb 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -4,15 +4,25 @@ services: - mysql:5.7 variables: - MYSQL_DATABASE: homestead - MYSQL_ROOT_PASSWORD: secret + MYSQL_DATABASE: ddb + MYSQL_ROOT_PASSWORD: password DB_HOST: mysql DB_USERNAME: root stages: - build + - test - deploy - - deploy + +unit_test: + stage: test + script: + - cp .env.example .env + - composer install + - php artisan key:generate + - php artisan migrate + - php artisan db:seed + - vendor/bin/phpunit build: stage: build diff --git a/.phpstorm.meta.php b/.phpstorm.meta.php new file mode 100644 index 00000000..66332d72 --- /dev/null +++ b/.phpstorm.meta.php @@ -0,0 +1,1325 @@ + + * @see https://github.com/barryvdh/laravel-ide-helper + */ + override(new \Illuminate\Contracts\Container\Container, map([ + '' => '@', + 'DaveJamesMiller\Breadcrumbs\BreadcrumbsGenerator' => \DaveJamesMiller\Breadcrumbs\BreadcrumbsGenerator::class, + 'DaveJamesMiller\Breadcrumbs\BreadcrumbsManager' => \DaveJamesMiller\Breadcrumbs\BreadcrumbsManager::class, + 'Facade\IgnitionContracts\SolutionProviderRepository' => \Facade\Ignition\SolutionProviders\SolutionProviderRepository::class, + 'Facade\Ignition\DumpRecorder\DumpRecorder' => \Facade\Ignition\DumpRecorder\DumpRecorder::class, + 'Facade\Ignition\ErrorPage\Renderer' => \Facade\Ignition\ErrorPage\Renderer::class, + 'Facade\Ignition\IgnitionConfig' => \Facade\Ignition\IgnitionConfig::class, + 'Facade\Ignition\LogRecorder\LogRecorder' => \Facade\Ignition\LogRecorder\LogRecorder::class, + 'Facade\Ignition\QueryRecorder\QueryRecorder' => \Facade\Ignition\QueryRecorder\QueryRecorder::class, + 'Illuminate\Auth\Middleware\RequirePassword' => \Illuminate\Auth\Middleware\RequirePassword::class, + 'Illuminate\Broadcasting\BroadcastManager' => \Illuminate\Broadcasting\BroadcastManager::class, + 'Illuminate\Bus\Dispatcher' => \Illuminate\Bus\Dispatcher::class, + 'Illuminate\Console\Scheduling\Schedule' => \Illuminate\Console\Scheduling\Schedule::class, + 'Illuminate\Console\Scheduling\ScheduleFinishCommand' => \Illuminate\Console\Scheduling\ScheduleFinishCommand::class, + 'Illuminate\Console\Scheduling\ScheduleRunCommand' => \Illuminate\Console\Scheduling\ScheduleRunCommand::class, + 'Illuminate\Contracts\Auth\Access\Gate' => \Illuminate\Auth\Access\Gate::class, + 'Illuminate\Contracts\Broadcasting\Broadcaster' => \Illuminate\Broadcasting\Broadcasters\LogBroadcaster::class, + 'Illuminate\Contracts\Console\Kernel' => \App\Console\Kernel::class, + 'Illuminate\Contracts\Debug\ExceptionHandler' => \NunoMaduro\Collision\Adapters\Laravel\ExceptionHandler::class, + 'Illuminate\Contracts\Http\Kernel' => \App\Http\Kernel::class, + 'Illuminate\Contracts\Pipeline\Hub' => \Illuminate\Pipeline\Hub::class, + 'Illuminate\Contracts\Queue\EntityResolver' => \Illuminate\Database\Eloquent\QueueEntityResolver::class, + 'Illuminate\Contracts\Routing\ResponseFactory' => \Illuminate\Routing\ResponseFactory::class, + 'Illuminate\Foundation\Mix' => \Illuminate\Foundation\Mix::class, + 'Illuminate\Foundation\PackageManifest' => \Illuminate\Foundation\PackageManifest::class, + 'Illuminate\Mail\Markdown' => \Illuminate\Mail\Markdown::class, + 'Illuminate\Notifications\ChannelManager' => \Illuminate\Notifications\ChannelManager::class, + 'Illuminate\Routing\Contracts\ControllerDispatcher' => \Illuminate\Routing\ControllerDispatcher::class, + 'Illuminate\Session\Middleware\StartSession' => \Illuminate\Session\Middleware\StartSession::class, + 'Nexmo\Client' => \Nexmo\Client::class, + 'NunoMaduro\Collision\Contracts\Provider' => \NunoMaduro\Collision\Provider::class, + 'Whoops\Handler\HandlerInterface' => \Facade\Ignition\ErrorPage\IgnitionWhoopsHandler::class, + 'auth' => \Illuminate\Auth\AuthManager::class, + 'auth.driver' => \Illuminate\Auth\SessionGuard::class, + 'auth.password' => \Illuminate\Auth\Passwords\PasswordBrokerManager::class, + 'auth.password.broker' => \Illuminate\Auth\Passwords\PasswordBroker::class, + 'blade.compiler' => \Illuminate\View\Compilers\BladeCompiler::class, + 'cache' => \Illuminate\Cache\CacheManager::class, + 'cache.store' => \Illuminate\Cache\Repository::class, + 'command.auth.resets.clear' => \Illuminate\Auth\Console\ClearResetsCommand::class, + 'command.cache.clear' => \Illuminate\Cache\Console\ClearCommand::class, + 'command.cache.forget' => \Illuminate\Cache\Console\ForgetCommand::class, + 'command.cache.table' => \Illuminate\Cache\Console\CacheTableCommand::class, + 'command.cast.make' => \Illuminate\Foundation\Console\CastMakeCommand::class, + 'command.channel.make' => \Illuminate\Foundation\Console\ChannelMakeCommand::class, + 'command.clear-compiled' => \Illuminate\Foundation\Console\ClearCompiledCommand::class, + 'command.component.make' => \Illuminate\Foundation\Console\ComponentMakeCommand::class, + 'command.config.cache' => \Illuminate\Foundation\Console\ConfigCacheCommand::class, + 'command.config.clear' => \Illuminate\Foundation\Console\ConfigClearCommand::class, + 'command.console.make' => \Illuminate\Foundation\Console\ConsoleMakeCommand::class, + 'command.controller.make' => \Illuminate\Routing\Console\ControllerMakeCommand::class, + 'command.db.wipe' => \Illuminate\Database\Console\WipeCommand::class, + 'command.down' => \Illuminate\Foundation\Console\DownCommand::class, + 'command.environment' => \Illuminate\Foundation\Console\EnvironmentCommand::class, + 'command.event.cache' => \Illuminate\Foundation\Console\EventCacheCommand::class, + 'command.event.clear' => \Illuminate\Foundation\Console\EventClearCommand::class, + 'command.event.generate' => \Illuminate\Foundation\Console\EventGenerateCommand::class, + 'command.event.list' => \Illuminate\Foundation\Console\EventListCommand::class, + 'command.event.make' => \Illuminate\Foundation\Console\EventMakeCommand::class, + 'command.exception.make' => \Illuminate\Foundation\Console\ExceptionMakeCommand::class, + 'command.factory.make' => \Illuminate\Database\Console\Factories\FactoryMakeCommand::class, + 'command.flare:test' => \Facade\Ignition\Commands\TestCommand::class, + 'command.ide-helper.eloquent' => \Barryvdh\LaravelIdeHelper\Console\EloquentCommand::class, + 'command.ide-helper.generate' => \Barryvdh\LaravelIdeHelper\Console\GeneratorCommand::class, + 'command.ide-helper.meta' => \Barryvdh\LaravelIdeHelper\Console\MetaCommand::class, + 'command.ide-helper.models' => \Barryvdh\LaravelIdeHelper\Console\ModelsCommand::class, + 'command.job.make' => \Illuminate\Foundation\Console\JobMakeCommand::class, + 'command.key.generate' => \Illuminate\Foundation\Console\KeyGenerateCommand::class, + 'command.listener.make' => \Illuminate\Foundation\Console\ListenerMakeCommand::class, + 'command.mail.make' => \Illuminate\Foundation\Console\MailMakeCommand::class, + 'command.make:solution' => \Facade\Ignition\Commands\SolutionMakeCommand::class, + 'command.middleware.make' => \Illuminate\Routing\Console\MiddlewareMakeCommand::class, + 'command.migrate' => \Illuminate\Database\Console\Migrations\MigrateCommand::class, + 'command.migrate.fresh' => \Illuminate\Database\Console\Migrations\FreshCommand::class, + 'command.migrate.install' => \Illuminate\Database\Console\Migrations\InstallCommand::class, + 'command.migrate.make' => \Illuminate\Database\Console\Migrations\MigrateMakeCommand::class, + 'command.migrate.refresh' => \Illuminate\Database\Console\Migrations\RefreshCommand::class, + 'command.migrate.reset' => \Illuminate\Database\Console\Migrations\ResetCommand::class, + 'command.migrate.rollback' => \Illuminate\Database\Console\Migrations\RollbackCommand::class, + 'command.migrate.status' => \Illuminate\Database\Console\Migrations\StatusCommand::class, + 'command.model.make' => \Illuminate\Foundation\Console\ModelMakeCommand::class, + 'command.notification.make' => \Illuminate\Foundation\Console\NotificationMakeCommand::class, + 'command.notification.table' => \Illuminate\Notifications\Console\NotificationTableCommand::class, + 'command.observer.make' => \Illuminate\Foundation\Console\ObserverMakeCommand::class, + 'command.optimize' => \Illuminate\Foundation\Console\OptimizeCommand::class, + 'command.optimize.clear' => \Illuminate\Foundation\Console\OptimizeClearCommand::class, + 'command.package.discover' => \Illuminate\Foundation\Console\PackageDiscoverCommand::class, + 'command.policy.make' => \Illuminate\Foundation\Console\PolicyMakeCommand::class, + 'command.provider.make' => \Illuminate\Foundation\Console\ProviderMakeCommand::class, + 'command.queue.failed' => \Illuminate\Queue\Console\ListFailedCommand::class, + 'command.queue.failed-table' => \Illuminate\Queue\Console\FailedTableCommand::class, + 'command.queue.flush' => \Illuminate\Queue\Console\FlushFailedCommand::class, + 'command.queue.forget' => \Illuminate\Queue\Console\ForgetFailedCommand::class, + 'command.queue.listen' => \Illuminate\Queue\Console\ListenCommand::class, + 'command.queue.restart' => \Illuminate\Queue\Console\RestartCommand::class, + 'command.queue.retry' => \Illuminate\Queue\Console\RetryCommand::class, + 'command.queue.table' => \Illuminate\Queue\Console\TableCommand::class, + 'command.queue.work' => \Illuminate\Queue\Console\WorkCommand::class, + 'command.request.make' => \Illuminate\Foundation\Console\RequestMakeCommand::class, + 'command.resource.make' => \Illuminate\Foundation\Console\ResourceMakeCommand::class, + 'command.route.cache' => \Illuminate\Foundation\Console\RouteCacheCommand::class, + 'command.route.clear' => \Illuminate\Foundation\Console\RouteClearCommand::class, + 'command.route.list' => \Illuminate\Foundation\Console\RouteListCommand::class, + 'command.rule.make' => \Illuminate\Foundation\Console\RuleMakeCommand::class, + 'command.seed' => \Illuminate\Database\Console\Seeds\SeedCommand::class, + 'command.seeder.make' => \Illuminate\Database\Console\Seeds\SeederMakeCommand::class, + 'command.serve' => \Illuminate\Foundation\Console\ServeCommand::class, + 'command.session.table' => \Illuminate\Session\Console\SessionTableCommand::class, + 'command.storage.link' => \Illuminate\Foundation\Console\StorageLinkCommand::class, + 'command.stub.publish' => \Illuminate\Foundation\Console\StubPublishCommand::class, + 'command.test.make' => \Illuminate\Foundation\Console\TestMakeCommand::class, + 'command.tinker' => \Laravel\Tinker\Console\TinkerCommand::class, + 'command.up' => \Illuminate\Foundation\Console\UpCommand::class, + 'command.vendor.publish' => \Illuminate\Foundation\Console\VendorPublishCommand::class, + 'command.view.cache' => \Illuminate\Foundation\Console\ViewCacheCommand::class, + 'command.view.clear' => \Illuminate\Foundation\Console\ViewClearCommand::class, + 'composer' => \Illuminate\Support\Composer::class, + 'cookie' => \Illuminate\Cookie\CookieJar::class, + 'db' => \Illuminate\Database\DatabaseManager::class, + 'db.connection' => \Illuminate\Database\MySqlConnection::class, + 'db.factory' => \Illuminate\Database\Connectors\ConnectionFactory::class, + 'dompdf' => \Dompdf\Dompdf::class, + 'dompdf.wrapper' => \Barryvdh\DomPDF\PDF::class, + 'encrypter' => \Illuminate\Encryption\Encrypter::class, + 'events' => \Illuminate\Events\Dispatcher::class, + 'files' => \Illuminate\Filesystem\Filesystem::class, + 'filesystem' => \Illuminate\Filesystem\FilesystemManager::class, + 'filesystem.cloud' => \Illuminate\Filesystem\FilesystemAdapter::class, + 'filesystem.disk' => \Illuminate\Filesystem\FilesystemAdapter::class, + 'flare.client' => \Facade\FlareClient\Flare::class, + 'flare.http' => \Facade\FlareClient\Http\Client::class, + 'flare.logger' => \Monolog\Logger::class, + 'hash' => \Illuminate\Hashing\HashManager::class, + 'hash.driver' => \Illuminate\Hashing\BcryptHasher::class, + 'log' => \Illuminate\Log\LogManager::class, + 'mail.manager' => \Illuminate\Mail\MailManager::class, + 'mailer' => \Illuminate\Mail\Mailer::class, + 'memcached.connector' => \Illuminate\Cache\MemcachedConnector::class, + 'migration.creator' => \Illuminate\Database\Migrations\MigrationCreator::class, + 'migration.repository' => \Illuminate\Database\Migrations\DatabaseMigrationRepository::class, + 'migrator' => \Illuminate\Database\Migrations\Migrator::class, + 'queue' => \Illuminate\Queue\QueueManager::class, + 'queue.connection' => \Illuminate\Queue\SyncQueue::class, + 'queue.failer' => \Illuminate\Queue\Failed\DatabaseFailedJobProvider::class, + 'queue.listener' => \Illuminate\Queue\Listener::class, + 'queue.worker' => \Illuminate\Queue\Worker::class, + 'redirect' => \Illuminate\Routing\Redirector::class, + 'redis' => \Illuminate\Redis\RedisManager::class, + 'router' => \Illuminate\Routing\Router::class, + 'session' => \Illuminate\Session\SessionManager::class, + 'session.store' => \Illuminate\Session\Store::class, + 'translation.loader' => \Illuminate\Translation\FileLoader::class, + 'translator' => \Illuminate\Translation\Translator::class, + 'url' => \Illuminate\Routing\UrlGenerator::class, + 'validation.presence' => \Illuminate\Validation\DatabasePresenceVerifier::class, + 'view' => \Illuminate\View\Factory::class, + 'view.engine.resolver' => \Illuminate\View\Engines\EngineResolver::class, + 'view.finder' => \Illuminate\View\FileViewFinder::class, + ])); + override(\Illuminate\Container\Container::makeWith(0), map([ + '' => '@', + 'DaveJamesMiller\Breadcrumbs\BreadcrumbsGenerator' => \DaveJamesMiller\Breadcrumbs\BreadcrumbsGenerator::class, + 'DaveJamesMiller\Breadcrumbs\BreadcrumbsManager' => \DaveJamesMiller\Breadcrumbs\BreadcrumbsManager::class, + 'Facade\IgnitionContracts\SolutionProviderRepository' => \Facade\Ignition\SolutionProviders\SolutionProviderRepository::class, + 'Facade\Ignition\DumpRecorder\DumpRecorder' => \Facade\Ignition\DumpRecorder\DumpRecorder::class, + 'Facade\Ignition\ErrorPage\Renderer' => \Facade\Ignition\ErrorPage\Renderer::class, + 'Facade\Ignition\IgnitionConfig' => \Facade\Ignition\IgnitionConfig::class, + 'Facade\Ignition\LogRecorder\LogRecorder' => \Facade\Ignition\LogRecorder\LogRecorder::class, + 'Facade\Ignition\QueryRecorder\QueryRecorder' => \Facade\Ignition\QueryRecorder\QueryRecorder::class, + 'Illuminate\Auth\Middleware\RequirePassword' => \Illuminate\Auth\Middleware\RequirePassword::class, + 'Illuminate\Broadcasting\BroadcastManager' => \Illuminate\Broadcasting\BroadcastManager::class, + 'Illuminate\Bus\Dispatcher' => \Illuminate\Bus\Dispatcher::class, + 'Illuminate\Console\Scheduling\Schedule' => \Illuminate\Console\Scheduling\Schedule::class, + 'Illuminate\Console\Scheduling\ScheduleFinishCommand' => \Illuminate\Console\Scheduling\ScheduleFinishCommand::class, + 'Illuminate\Console\Scheduling\ScheduleRunCommand' => \Illuminate\Console\Scheduling\ScheduleRunCommand::class, + 'Illuminate\Contracts\Auth\Access\Gate' => \Illuminate\Auth\Access\Gate::class, + 'Illuminate\Contracts\Broadcasting\Broadcaster' => \Illuminate\Broadcasting\Broadcasters\LogBroadcaster::class, + 'Illuminate\Contracts\Console\Kernel' => \App\Console\Kernel::class, + 'Illuminate\Contracts\Debug\ExceptionHandler' => \NunoMaduro\Collision\Adapters\Laravel\ExceptionHandler::class, + 'Illuminate\Contracts\Http\Kernel' => \App\Http\Kernel::class, + 'Illuminate\Contracts\Pipeline\Hub' => \Illuminate\Pipeline\Hub::class, + 'Illuminate\Contracts\Queue\EntityResolver' => \Illuminate\Database\Eloquent\QueueEntityResolver::class, + 'Illuminate\Contracts\Routing\ResponseFactory' => \Illuminate\Routing\ResponseFactory::class, + 'Illuminate\Foundation\Mix' => \Illuminate\Foundation\Mix::class, + 'Illuminate\Foundation\PackageManifest' => \Illuminate\Foundation\PackageManifest::class, + 'Illuminate\Mail\Markdown' => \Illuminate\Mail\Markdown::class, + 'Illuminate\Notifications\ChannelManager' => \Illuminate\Notifications\ChannelManager::class, + 'Illuminate\Routing\Contracts\ControllerDispatcher' => \Illuminate\Routing\ControllerDispatcher::class, + 'Illuminate\Session\Middleware\StartSession' => \Illuminate\Session\Middleware\StartSession::class, + 'Nexmo\Client' => \Nexmo\Client::class, + 'NunoMaduro\Collision\Contracts\Provider' => \NunoMaduro\Collision\Provider::class, + 'Whoops\Handler\HandlerInterface' => \Facade\Ignition\ErrorPage\IgnitionWhoopsHandler::class, + 'auth' => \Illuminate\Auth\AuthManager::class, + 'auth.driver' => \Illuminate\Auth\SessionGuard::class, + 'auth.password' => \Illuminate\Auth\Passwords\PasswordBrokerManager::class, + 'auth.password.broker' => \Illuminate\Auth\Passwords\PasswordBroker::class, + 'blade.compiler' => \Illuminate\View\Compilers\BladeCompiler::class, + 'cache' => \Illuminate\Cache\CacheManager::class, + 'cache.store' => \Illuminate\Cache\Repository::class, + 'command.auth.resets.clear' => \Illuminate\Auth\Console\ClearResetsCommand::class, + 'command.cache.clear' => \Illuminate\Cache\Console\ClearCommand::class, + 'command.cache.forget' => \Illuminate\Cache\Console\ForgetCommand::class, + 'command.cache.table' => \Illuminate\Cache\Console\CacheTableCommand::class, + 'command.cast.make' => \Illuminate\Foundation\Console\CastMakeCommand::class, + 'command.channel.make' => \Illuminate\Foundation\Console\ChannelMakeCommand::class, + 'command.clear-compiled' => \Illuminate\Foundation\Console\ClearCompiledCommand::class, + 'command.component.make' => \Illuminate\Foundation\Console\ComponentMakeCommand::class, + 'command.config.cache' => \Illuminate\Foundation\Console\ConfigCacheCommand::class, + 'command.config.clear' => \Illuminate\Foundation\Console\ConfigClearCommand::class, + 'command.console.make' => \Illuminate\Foundation\Console\ConsoleMakeCommand::class, + 'command.controller.make' => \Illuminate\Routing\Console\ControllerMakeCommand::class, + 'command.db.wipe' => \Illuminate\Database\Console\WipeCommand::class, + 'command.down' => \Illuminate\Foundation\Console\DownCommand::class, + 'command.environment' => \Illuminate\Foundation\Console\EnvironmentCommand::class, + 'command.event.cache' => \Illuminate\Foundation\Console\EventCacheCommand::class, + 'command.event.clear' => \Illuminate\Foundation\Console\EventClearCommand::class, + 'command.event.generate' => \Illuminate\Foundation\Console\EventGenerateCommand::class, + 'command.event.list' => \Illuminate\Foundation\Console\EventListCommand::class, + 'command.event.make' => \Illuminate\Foundation\Console\EventMakeCommand::class, + 'command.exception.make' => \Illuminate\Foundation\Console\ExceptionMakeCommand::class, + 'command.factory.make' => \Illuminate\Database\Console\Factories\FactoryMakeCommand::class, + 'command.flare:test' => \Facade\Ignition\Commands\TestCommand::class, + 'command.ide-helper.eloquent' => \Barryvdh\LaravelIdeHelper\Console\EloquentCommand::class, + 'command.ide-helper.generate' => \Barryvdh\LaravelIdeHelper\Console\GeneratorCommand::class, + 'command.ide-helper.meta' => \Barryvdh\LaravelIdeHelper\Console\MetaCommand::class, + 'command.ide-helper.models' => \Barryvdh\LaravelIdeHelper\Console\ModelsCommand::class, + 'command.job.make' => \Illuminate\Foundation\Console\JobMakeCommand::class, + 'command.key.generate' => \Illuminate\Foundation\Console\KeyGenerateCommand::class, + 'command.listener.make' => \Illuminate\Foundation\Console\ListenerMakeCommand::class, + 'command.mail.make' => \Illuminate\Foundation\Console\MailMakeCommand::class, + 'command.make:solution' => \Facade\Ignition\Commands\SolutionMakeCommand::class, + 'command.middleware.make' => \Illuminate\Routing\Console\MiddlewareMakeCommand::class, + 'command.migrate' => \Illuminate\Database\Console\Migrations\MigrateCommand::class, + 'command.migrate.fresh' => \Illuminate\Database\Console\Migrations\FreshCommand::class, + 'command.migrate.install' => \Illuminate\Database\Console\Migrations\InstallCommand::class, + 'command.migrate.make' => \Illuminate\Database\Console\Migrations\MigrateMakeCommand::class, + 'command.migrate.refresh' => \Illuminate\Database\Console\Migrations\RefreshCommand::class, + 'command.migrate.reset' => \Illuminate\Database\Console\Migrations\ResetCommand::class, + 'command.migrate.rollback' => \Illuminate\Database\Console\Migrations\RollbackCommand::class, + 'command.migrate.status' => \Illuminate\Database\Console\Migrations\StatusCommand::class, + 'command.model.make' => \Illuminate\Foundation\Console\ModelMakeCommand::class, + 'command.notification.make' => \Illuminate\Foundation\Console\NotificationMakeCommand::class, + 'command.notification.table' => \Illuminate\Notifications\Console\NotificationTableCommand::class, + 'command.observer.make' => \Illuminate\Foundation\Console\ObserverMakeCommand::class, + 'command.optimize' => \Illuminate\Foundation\Console\OptimizeCommand::class, + 'command.optimize.clear' => \Illuminate\Foundation\Console\OptimizeClearCommand::class, + 'command.package.discover' => \Illuminate\Foundation\Console\PackageDiscoverCommand::class, + 'command.policy.make' => \Illuminate\Foundation\Console\PolicyMakeCommand::class, + 'command.provider.make' => \Illuminate\Foundation\Console\ProviderMakeCommand::class, + 'command.queue.failed' => \Illuminate\Queue\Console\ListFailedCommand::class, + 'command.queue.failed-table' => \Illuminate\Queue\Console\FailedTableCommand::class, + 'command.queue.flush' => \Illuminate\Queue\Console\FlushFailedCommand::class, + 'command.queue.forget' => \Illuminate\Queue\Console\ForgetFailedCommand::class, + 'command.queue.listen' => \Illuminate\Queue\Console\ListenCommand::class, + 'command.queue.restart' => \Illuminate\Queue\Console\RestartCommand::class, + 'command.queue.retry' => \Illuminate\Queue\Console\RetryCommand::class, + 'command.queue.table' => \Illuminate\Queue\Console\TableCommand::class, + 'command.queue.work' => \Illuminate\Queue\Console\WorkCommand::class, + 'command.request.make' => \Illuminate\Foundation\Console\RequestMakeCommand::class, + 'command.resource.make' => \Illuminate\Foundation\Console\ResourceMakeCommand::class, + 'command.route.cache' => \Illuminate\Foundation\Console\RouteCacheCommand::class, + 'command.route.clear' => \Illuminate\Foundation\Console\RouteClearCommand::class, + 'command.route.list' => \Illuminate\Foundation\Console\RouteListCommand::class, + 'command.rule.make' => \Illuminate\Foundation\Console\RuleMakeCommand::class, + 'command.seed' => \Illuminate\Database\Console\Seeds\SeedCommand::class, + 'command.seeder.make' => \Illuminate\Database\Console\Seeds\SeederMakeCommand::class, + 'command.serve' => \Illuminate\Foundation\Console\ServeCommand::class, + 'command.session.table' => \Illuminate\Session\Console\SessionTableCommand::class, + 'command.storage.link' => \Illuminate\Foundation\Console\StorageLinkCommand::class, + 'command.stub.publish' => \Illuminate\Foundation\Console\StubPublishCommand::class, + 'command.test.make' => \Illuminate\Foundation\Console\TestMakeCommand::class, + 'command.tinker' => \Laravel\Tinker\Console\TinkerCommand::class, + 'command.up' => \Illuminate\Foundation\Console\UpCommand::class, + 'command.vendor.publish' => \Illuminate\Foundation\Console\VendorPublishCommand::class, + 'command.view.cache' => \Illuminate\Foundation\Console\ViewCacheCommand::class, + 'command.view.clear' => \Illuminate\Foundation\Console\ViewClearCommand::class, + 'composer' => \Illuminate\Support\Composer::class, + 'cookie' => \Illuminate\Cookie\CookieJar::class, + 'db' => \Illuminate\Database\DatabaseManager::class, + 'db.connection' => \Illuminate\Database\MySqlConnection::class, + 'db.factory' => \Illuminate\Database\Connectors\ConnectionFactory::class, + 'dompdf' => \Dompdf\Dompdf::class, + 'dompdf.wrapper' => \Barryvdh\DomPDF\PDF::class, + 'encrypter' => \Illuminate\Encryption\Encrypter::class, + 'events' => \Illuminate\Events\Dispatcher::class, + 'files' => \Illuminate\Filesystem\Filesystem::class, + 'filesystem' => \Illuminate\Filesystem\FilesystemManager::class, + 'filesystem.cloud' => \Illuminate\Filesystem\FilesystemAdapter::class, + 'filesystem.disk' => \Illuminate\Filesystem\FilesystemAdapter::class, + 'flare.client' => \Facade\FlareClient\Flare::class, + 'flare.http' => \Facade\FlareClient\Http\Client::class, + 'flare.logger' => \Monolog\Logger::class, + 'hash' => \Illuminate\Hashing\HashManager::class, + 'hash.driver' => \Illuminate\Hashing\BcryptHasher::class, + 'log' => \Illuminate\Log\LogManager::class, + 'mail.manager' => \Illuminate\Mail\MailManager::class, + 'mailer' => \Illuminate\Mail\Mailer::class, + 'memcached.connector' => \Illuminate\Cache\MemcachedConnector::class, + 'migration.creator' => \Illuminate\Database\Migrations\MigrationCreator::class, + 'migration.repository' => \Illuminate\Database\Migrations\DatabaseMigrationRepository::class, + 'migrator' => \Illuminate\Database\Migrations\Migrator::class, + 'queue' => \Illuminate\Queue\QueueManager::class, + 'queue.connection' => \Illuminate\Queue\SyncQueue::class, + 'queue.failer' => \Illuminate\Queue\Failed\DatabaseFailedJobProvider::class, + 'queue.listener' => \Illuminate\Queue\Listener::class, + 'queue.worker' => \Illuminate\Queue\Worker::class, + 'redirect' => \Illuminate\Routing\Redirector::class, + 'redis' => \Illuminate\Redis\RedisManager::class, + 'router' => \Illuminate\Routing\Router::class, + 'session' => \Illuminate\Session\SessionManager::class, + 'session.store' => \Illuminate\Session\Store::class, + 'translation.loader' => \Illuminate\Translation\FileLoader::class, + 'translator' => \Illuminate\Translation\Translator::class, + 'url' => \Illuminate\Routing\UrlGenerator::class, + 'validation.presence' => \Illuminate\Validation\DatabasePresenceVerifier::class, + 'view' => \Illuminate\View\Factory::class, + 'view.engine.resolver' => \Illuminate\View\Engines\EngineResolver::class, + 'view.finder' => \Illuminate\View\FileViewFinder::class, + ])); + override(\Illuminate\Contracts\Container\Container::make(0), map([ + '' => '@', + 'DaveJamesMiller\Breadcrumbs\BreadcrumbsGenerator' => \DaveJamesMiller\Breadcrumbs\BreadcrumbsGenerator::class, + 'DaveJamesMiller\Breadcrumbs\BreadcrumbsManager' => \DaveJamesMiller\Breadcrumbs\BreadcrumbsManager::class, + 'Facade\IgnitionContracts\SolutionProviderRepository' => \Facade\Ignition\SolutionProviders\SolutionProviderRepository::class, + 'Facade\Ignition\DumpRecorder\DumpRecorder' => \Facade\Ignition\DumpRecorder\DumpRecorder::class, + 'Facade\Ignition\ErrorPage\Renderer' => \Facade\Ignition\ErrorPage\Renderer::class, + 'Facade\Ignition\IgnitionConfig' => \Facade\Ignition\IgnitionConfig::class, + 'Facade\Ignition\LogRecorder\LogRecorder' => \Facade\Ignition\LogRecorder\LogRecorder::class, + 'Facade\Ignition\QueryRecorder\QueryRecorder' => \Facade\Ignition\QueryRecorder\QueryRecorder::class, + 'Illuminate\Auth\Middleware\RequirePassword' => \Illuminate\Auth\Middleware\RequirePassword::class, + 'Illuminate\Broadcasting\BroadcastManager' => \Illuminate\Broadcasting\BroadcastManager::class, + 'Illuminate\Bus\Dispatcher' => \Illuminate\Bus\Dispatcher::class, + 'Illuminate\Console\Scheduling\Schedule' => \Illuminate\Console\Scheduling\Schedule::class, + 'Illuminate\Console\Scheduling\ScheduleFinishCommand' => \Illuminate\Console\Scheduling\ScheduleFinishCommand::class, + 'Illuminate\Console\Scheduling\ScheduleRunCommand' => \Illuminate\Console\Scheduling\ScheduleRunCommand::class, + 'Illuminate\Contracts\Auth\Access\Gate' => \Illuminate\Auth\Access\Gate::class, + 'Illuminate\Contracts\Broadcasting\Broadcaster' => \Illuminate\Broadcasting\Broadcasters\LogBroadcaster::class, + 'Illuminate\Contracts\Console\Kernel' => \App\Console\Kernel::class, + 'Illuminate\Contracts\Debug\ExceptionHandler' => \NunoMaduro\Collision\Adapters\Laravel\ExceptionHandler::class, + 'Illuminate\Contracts\Http\Kernel' => \App\Http\Kernel::class, + 'Illuminate\Contracts\Pipeline\Hub' => \Illuminate\Pipeline\Hub::class, + 'Illuminate\Contracts\Queue\EntityResolver' => \Illuminate\Database\Eloquent\QueueEntityResolver::class, + 'Illuminate\Contracts\Routing\ResponseFactory' => \Illuminate\Routing\ResponseFactory::class, + 'Illuminate\Foundation\Mix' => \Illuminate\Foundation\Mix::class, + 'Illuminate\Foundation\PackageManifest' => \Illuminate\Foundation\PackageManifest::class, + 'Illuminate\Mail\Markdown' => \Illuminate\Mail\Markdown::class, + 'Illuminate\Notifications\ChannelManager' => \Illuminate\Notifications\ChannelManager::class, + 'Illuminate\Routing\Contracts\ControllerDispatcher' => \Illuminate\Routing\ControllerDispatcher::class, + 'Illuminate\Session\Middleware\StartSession' => \Illuminate\Session\Middleware\StartSession::class, + 'Nexmo\Client' => \Nexmo\Client::class, + 'NunoMaduro\Collision\Contracts\Provider' => \NunoMaduro\Collision\Provider::class, + 'Whoops\Handler\HandlerInterface' => \Facade\Ignition\ErrorPage\IgnitionWhoopsHandler::class, + 'auth' => \Illuminate\Auth\AuthManager::class, + 'auth.driver' => \Illuminate\Auth\SessionGuard::class, + 'auth.password' => \Illuminate\Auth\Passwords\PasswordBrokerManager::class, + 'auth.password.broker' => \Illuminate\Auth\Passwords\PasswordBroker::class, + 'blade.compiler' => \Illuminate\View\Compilers\BladeCompiler::class, + 'cache' => \Illuminate\Cache\CacheManager::class, + 'cache.store' => \Illuminate\Cache\Repository::class, + 'command.auth.resets.clear' => \Illuminate\Auth\Console\ClearResetsCommand::class, + 'command.cache.clear' => \Illuminate\Cache\Console\ClearCommand::class, + 'command.cache.forget' => \Illuminate\Cache\Console\ForgetCommand::class, + 'command.cache.table' => \Illuminate\Cache\Console\CacheTableCommand::class, + 'command.cast.make' => \Illuminate\Foundation\Console\CastMakeCommand::class, + 'command.channel.make' => \Illuminate\Foundation\Console\ChannelMakeCommand::class, + 'command.clear-compiled' => \Illuminate\Foundation\Console\ClearCompiledCommand::class, + 'command.component.make' => \Illuminate\Foundation\Console\ComponentMakeCommand::class, + 'command.config.cache' => \Illuminate\Foundation\Console\ConfigCacheCommand::class, + 'command.config.clear' => \Illuminate\Foundation\Console\ConfigClearCommand::class, + 'command.console.make' => \Illuminate\Foundation\Console\ConsoleMakeCommand::class, + 'command.controller.make' => \Illuminate\Routing\Console\ControllerMakeCommand::class, + 'command.db.wipe' => \Illuminate\Database\Console\WipeCommand::class, + 'command.down' => \Illuminate\Foundation\Console\DownCommand::class, + 'command.environment' => \Illuminate\Foundation\Console\EnvironmentCommand::class, + 'command.event.cache' => \Illuminate\Foundation\Console\EventCacheCommand::class, + 'command.event.clear' => \Illuminate\Foundation\Console\EventClearCommand::class, + 'command.event.generate' => \Illuminate\Foundation\Console\EventGenerateCommand::class, + 'command.event.list' => \Illuminate\Foundation\Console\EventListCommand::class, + 'command.event.make' => \Illuminate\Foundation\Console\EventMakeCommand::class, + 'command.exception.make' => \Illuminate\Foundation\Console\ExceptionMakeCommand::class, + 'command.factory.make' => \Illuminate\Database\Console\Factories\FactoryMakeCommand::class, + 'command.flare:test' => \Facade\Ignition\Commands\TestCommand::class, + 'command.ide-helper.eloquent' => \Barryvdh\LaravelIdeHelper\Console\EloquentCommand::class, + 'command.ide-helper.generate' => \Barryvdh\LaravelIdeHelper\Console\GeneratorCommand::class, + 'command.ide-helper.meta' => \Barryvdh\LaravelIdeHelper\Console\MetaCommand::class, + 'command.ide-helper.models' => \Barryvdh\LaravelIdeHelper\Console\ModelsCommand::class, + 'command.job.make' => \Illuminate\Foundation\Console\JobMakeCommand::class, + 'command.key.generate' => \Illuminate\Foundation\Console\KeyGenerateCommand::class, + 'command.listener.make' => \Illuminate\Foundation\Console\ListenerMakeCommand::class, + 'command.mail.make' => \Illuminate\Foundation\Console\MailMakeCommand::class, + 'command.make:solution' => \Facade\Ignition\Commands\SolutionMakeCommand::class, + 'command.middleware.make' => \Illuminate\Routing\Console\MiddlewareMakeCommand::class, + 'command.migrate' => \Illuminate\Database\Console\Migrations\MigrateCommand::class, + 'command.migrate.fresh' => \Illuminate\Database\Console\Migrations\FreshCommand::class, + 'command.migrate.install' => \Illuminate\Database\Console\Migrations\InstallCommand::class, + 'command.migrate.make' => \Illuminate\Database\Console\Migrations\MigrateMakeCommand::class, + 'command.migrate.refresh' => \Illuminate\Database\Console\Migrations\RefreshCommand::class, + 'command.migrate.reset' => \Illuminate\Database\Console\Migrations\ResetCommand::class, + 'command.migrate.rollback' => \Illuminate\Database\Console\Migrations\RollbackCommand::class, + 'command.migrate.status' => \Illuminate\Database\Console\Migrations\StatusCommand::class, + 'command.model.make' => \Illuminate\Foundation\Console\ModelMakeCommand::class, + 'command.notification.make' => \Illuminate\Foundation\Console\NotificationMakeCommand::class, + 'command.notification.table' => \Illuminate\Notifications\Console\NotificationTableCommand::class, + 'command.observer.make' => \Illuminate\Foundation\Console\ObserverMakeCommand::class, + 'command.optimize' => \Illuminate\Foundation\Console\OptimizeCommand::class, + 'command.optimize.clear' => \Illuminate\Foundation\Console\OptimizeClearCommand::class, + 'command.package.discover' => \Illuminate\Foundation\Console\PackageDiscoverCommand::class, + 'command.policy.make' => \Illuminate\Foundation\Console\PolicyMakeCommand::class, + 'command.provider.make' => \Illuminate\Foundation\Console\ProviderMakeCommand::class, + 'command.queue.failed' => \Illuminate\Queue\Console\ListFailedCommand::class, + 'command.queue.failed-table' => \Illuminate\Queue\Console\FailedTableCommand::class, + 'command.queue.flush' => \Illuminate\Queue\Console\FlushFailedCommand::class, + 'command.queue.forget' => \Illuminate\Queue\Console\ForgetFailedCommand::class, + 'command.queue.listen' => \Illuminate\Queue\Console\ListenCommand::class, + 'command.queue.restart' => \Illuminate\Queue\Console\RestartCommand::class, + 'command.queue.retry' => \Illuminate\Queue\Console\RetryCommand::class, + 'command.queue.table' => \Illuminate\Queue\Console\TableCommand::class, + 'command.queue.work' => \Illuminate\Queue\Console\WorkCommand::class, + 'command.request.make' => \Illuminate\Foundation\Console\RequestMakeCommand::class, + 'command.resource.make' => \Illuminate\Foundation\Console\ResourceMakeCommand::class, + 'command.route.cache' => \Illuminate\Foundation\Console\RouteCacheCommand::class, + 'command.route.clear' => \Illuminate\Foundation\Console\RouteClearCommand::class, + 'command.route.list' => \Illuminate\Foundation\Console\RouteListCommand::class, + 'command.rule.make' => \Illuminate\Foundation\Console\RuleMakeCommand::class, + 'command.seed' => \Illuminate\Database\Console\Seeds\SeedCommand::class, + 'command.seeder.make' => \Illuminate\Database\Console\Seeds\SeederMakeCommand::class, + 'command.serve' => \Illuminate\Foundation\Console\ServeCommand::class, + 'command.session.table' => \Illuminate\Session\Console\SessionTableCommand::class, + 'command.storage.link' => \Illuminate\Foundation\Console\StorageLinkCommand::class, + 'command.stub.publish' => \Illuminate\Foundation\Console\StubPublishCommand::class, + 'command.test.make' => \Illuminate\Foundation\Console\TestMakeCommand::class, + 'command.tinker' => \Laravel\Tinker\Console\TinkerCommand::class, + 'command.up' => \Illuminate\Foundation\Console\UpCommand::class, + 'command.vendor.publish' => \Illuminate\Foundation\Console\VendorPublishCommand::class, + 'command.view.cache' => \Illuminate\Foundation\Console\ViewCacheCommand::class, + 'command.view.clear' => \Illuminate\Foundation\Console\ViewClearCommand::class, + 'composer' => \Illuminate\Support\Composer::class, + 'cookie' => \Illuminate\Cookie\CookieJar::class, + 'db' => \Illuminate\Database\DatabaseManager::class, + 'db.connection' => \Illuminate\Database\MySqlConnection::class, + 'db.factory' => \Illuminate\Database\Connectors\ConnectionFactory::class, + 'dompdf' => \Dompdf\Dompdf::class, + 'dompdf.wrapper' => \Barryvdh\DomPDF\PDF::class, + 'encrypter' => \Illuminate\Encryption\Encrypter::class, + 'events' => \Illuminate\Events\Dispatcher::class, + 'files' => \Illuminate\Filesystem\Filesystem::class, + 'filesystem' => \Illuminate\Filesystem\FilesystemManager::class, + 'filesystem.cloud' => \Illuminate\Filesystem\FilesystemAdapter::class, + 'filesystem.disk' => \Illuminate\Filesystem\FilesystemAdapter::class, + 'flare.client' => \Facade\FlareClient\Flare::class, + 'flare.http' => \Facade\FlareClient\Http\Client::class, + 'flare.logger' => \Monolog\Logger::class, + 'hash' => \Illuminate\Hashing\HashManager::class, + 'hash.driver' => \Illuminate\Hashing\BcryptHasher::class, + 'log' => \Illuminate\Log\LogManager::class, + 'mail.manager' => \Illuminate\Mail\MailManager::class, + 'mailer' => \Illuminate\Mail\Mailer::class, + 'memcached.connector' => \Illuminate\Cache\MemcachedConnector::class, + 'migration.creator' => \Illuminate\Database\Migrations\MigrationCreator::class, + 'migration.repository' => \Illuminate\Database\Migrations\DatabaseMigrationRepository::class, + 'migrator' => \Illuminate\Database\Migrations\Migrator::class, + 'queue' => \Illuminate\Queue\QueueManager::class, + 'queue.connection' => \Illuminate\Queue\SyncQueue::class, + 'queue.failer' => \Illuminate\Queue\Failed\DatabaseFailedJobProvider::class, + 'queue.listener' => \Illuminate\Queue\Listener::class, + 'queue.worker' => \Illuminate\Queue\Worker::class, + 'redirect' => \Illuminate\Routing\Redirector::class, + 'redis' => \Illuminate\Redis\RedisManager::class, + 'router' => \Illuminate\Routing\Router::class, + 'session' => \Illuminate\Session\SessionManager::class, + 'session.store' => \Illuminate\Session\Store::class, + 'translation.loader' => \Illuminate\Translation\FileLoader::class, + 'translator' => \Illuminate\Translation\Translator::class, + 'url' => \Illuminate\Routing\UrlGenerator::class, + 'validation.presence' => \Illuminate\Validation\DatabasePresenceVerifier::class, + 'view' => \Illuminate\View\Factory::class, + 'view.engine.resolver' => \Illuminate\View\Engines\EngineResolver::class, + 'view.finder' => \Illuminate\View\FileViewFinder::class, + ])); + override(\Illuminate\Contracts\Container\Container::makeWith(0), map([ + '' => '@', + 'DaveJamesMiller\Breadcrumbs\BreadcrumbsGenerator' => \DaveJamesMiller\Breadcrumbs\BreadcrumbsGenerator::class, + 'DaveJamesMiller\Breadcrumbs\BreadcrumbsManager' => \DaveJamesMiller\Breadcrumbs\BreadcrumbsManager::class, + 'Facade\IgnitionContracts\SolutionProviderRepository' => \Facade\Ignition\SolutionProviders\SolutionProviderRepository::class, + 'Facade\Ignition\DumpRecorder\DumpRecorder' => \Facade\Ignition\DumpRecorder\DumpRecorder::class, + 'Facade\Ignition\ErrorPage\Renderer' => \Facade\Ignition\ErrorPage\Renderer::class, + 'Facade\Ignition\IgnitionConfig' => \Facade\Ignition\IgnitionConfig::class, + 'Facade\Ignition\LogRecorder\LogRecorder' => \Facade\Ignition\LogRecorder\LogRecorder::class, + 'Facade\Ignition\QueryRecorder\QueryRecorder' => \Facade\Ignition\QueryRecorder\QueryRecorder::class, + 'Illuminate\Auth\Middleware\RequirePassword' => \Illuminate\Auth\Middleware\RequirePassword::class, + 'Illuminate\Broadcasting\BroadcastManager' => \Illuminate\Broadcasting\BroadcastManager::class, + 'Illuminate\Bus\Dispatcher' => \Illuminate\Bus\Dispatcher::class, + 'Illuminate\Console\Scheduling\Schedule' => \Illuminate\Console\Scheduling\Schedule::class, + 'Illuminate\Console\Scheduling\ScheduleFinishCommand' => \Illuminate\Console\Scheduling\ScheduleFinishCommand::class, + 'Illuminate\Console\Scheduling\ScheduleRunCommand' => \Illuminate\Console\Scheduling\ScheduleRunCommand::class, + 'Illuminate\Contracts\Auth\Access\Gate' => \Illuminate\Auth\Access\Gate::class, + 'Illuminate\Contracts\Broadcasting\Broadcaster' => \Illuminate\Broadcasting\Broadcasters\LogBroadcaster::class, + 'Illuminate\Contracts\Console\Kernel' => \App\Console\Kernel::class, + 'Illuminate\Contracts\Debug\ExceptionHandler' => \NunoMaduro\Collision\Adapters\Laravel\ExceptionHandler::class, + 'Illuminate\Contracts\Http\Kernel' => \App\Http\Kernel::class, + 'Illuminate\Contracts\Pipeline\Hub' => \Illuminate\Pipeline\Hub::class, + 'Illuminate\Contracts\Queue\EntityResolver' => \Illuminate\Database\Eloquent\QueueEntityResolver::class, + 'Illuminate\Contracts\Routing\ResponseFactory' => \Illuminate\Routing\ResponseFactory::class, + 'Illuminate\Foundation\Mix' => \Illuminate\Foundation\Mix::class, + 'Illuminate\Foundation\PackageManifest' => \Illuminate\Foundation\PackageManifest::class, + 'Illuminate\Mail\Markdown' => \Illuminate\Mail\Markdown::class, + 'Illuminate\Notifications\ChannelManager' => \Illuminate\Notifications\ChannelManager::class, + 'Illuminate\Routing\Contracts\ControllerDispatcher' => \Illuminate\Routing\ControllerDispatcher::class, + 'Illuminate\Session\Middleware\StartSession' => \Illuminate\Session\Middleware\StartSession::class, + 'Nexmo\Client' => \Nexmo\Client::class, + 'NunoMaduro\Collision\Contracts\Provider' => \NunoMaduro\Collision\Provider::class, + 'Whoops\Handler\HandlerInterface' => \Facade\Ignition\ErrorPage\IgnitionWhoopsHandler::class, + 'auth' => \Illuminate\Auth\AuthManager::class, + 'auth.driver' => \Illuminate\Auth\SessionGuard::class, + 'auth.password' => \Illuminate\Auth\Passwords\PasswordBrokerManager::class, + 'auth.password.broker' => \Illuminate\Auth\Passwords\PasswordBroker::class, + 'blade.compiler' => \Illuminate\View\Compilers\BladeCompiler::class, + 'cache' => \Illuminate\Cache\CacheManager::class, + 'cache.store' => \Illuminate\Cache\Repository::class, + 'command.auth.resets.clear' => \Illuminate\Auth\Console\ClearResetsCommand::class, + 'command.cache.clear' => \Illuminate\Cache\Console\ClearCommand::class, + 'command.cache.forget' => \Illuminate\Cache\Console\ForgetCommand::class, + 'command.cache.table' => \Illuminate\Cache\Console\CacheTableCommand::class, + 'command.cast.make' => \Illuminate\Foundation\Console\CastMakeCommand::class, + 'command.channel.make' => \Illuminate\Foundation\Console\ChannelMakeCommand::class, + 'command.clear-compiled' => \Illuminate\Foundation\Console\ClearCompiledCommand::class, + 'command.component.make' => \Illuminate\Foundation\Console\ComponentMakeCommand::class, + 'command.config.cache' => \Illuminate\Foundation\Console\ConfigCacheCommand::class, + 'command.config.clear' => \Illuminate\Foundation\Console\ConfigClearCommand::class, + 'command.console.make' => \Illuminate\Foundation\Console\ConsoleMakeCommand::class, + 'command.controller.make' => \Illuminate\Routing\Console\ControllerMakeCommand::class, + 'command.db.wipe' => \Illuminate\Database\Console\WipeCommand::class, + 'command.down' => \Illuminate\Foundation\Console\DownCommand::class, + 'command.environment' => \Illuminate\Foundation\Console\EnvironmentCommand::class, + 'command.event.cache' => \Illuminate\Foundation\Console\EventCacheCommand::class, + 'command.event.clear' => \Illuminate\Foundation\Console\EventClearCommand::class, + 'command.event.generate' => \Illuminate\Foundation\Console\EventGenerateCommand::class, + 'command.event.list' => \Illuminate\Foundation\Console\EventListCommand::class, + 'command.event.make' => \Illuminate\Foundation\Console\EventMakeCommand::class, + 'command.exception.make' => \Illuminate\Foundation\Console\ExceptionMakeCommand::class, + 'command.factory.make' => \Illuminate\Database\Console\Factories\FactoryMakeCommand::class, + 'command.flare:test' => \Facade\Ignition\Commands\TestCommand::class, + 'command.ide-helper.eloquent' => \Barryvdh\LaravelIdeHelper\Console\EloquentCommand::class, + 'command.ide-helper.generate' => \Barryvdh\LaravelIdeHelper\Console\GeneratorCommand::class, + 'command.ide-helper.meta' => \Barryvdh\LaravelIdeHelper\Console\MetaCommand::class, + 'command.ide-helper.models' => \Barryvdh\LaravelIdeHelper\Console\ModelsCommand::class, + 'command.job.make' => \Illuminate\Foundation\Console\JobMakeCommand::class, + 'command.key.generate' => \Illuminate\Foundation\Console\KeyGenerateCommand::class, + 'command.listener.make' => \Illuminate\Foundation\Console\ListenerMakeCommand::class, + 'command.mail.make' => \Illuminate\Foundation\Console\MailMakeCommand::class, + 'command.make:solution' => \Facade\Ignition\Commands\SolutionMakeCommand::class, + 'command.middleware.make' => \Illuminate\Routing\Console\MiddlewareMakeCommand::class, + 'command.migrate' => \Illuminate\Database\Console\Migrations\MigrateCommand::class, + 'command.migrate.fresh' => \Illuminate\Database\Console\Migrations\FreshCommand::class, + 'command.migrate.install' => \Illuminate\Database\Console\Migrations\InstallCommand::class, + 'command.migrate.make' => \Illuminate\Database\Console\Migrations\MigrateMakeCommand::class, + 'command.migrate.refresh' => \Illuminate\Database\Console\Migrations\RefreshCommand::class, + 'command.migrate.reset' => \Illuminate\Database\Console\Migrations\ResetCommand::class, + 'command.migrate.rollback' => \Illuminate\Database\Console\Migrations\RollbackCommand::class, + 'command.migrate.status' => \Illuminate\Database\Console\Migrations\StatusCommand::class, + 'command.model.make' => \Illuminate\Foundation\Console\ModelMakeCommand::class, + 'command.notification.make' => \Illuminate\Foundation\Console\NotificationMakeCommand::class, + 'command.notification.table' => \Illuminate\Notifications\Console\NotificationTableCommand::class, + 'command.observer.make' => \Illuminate\Foundation\Console\ObserverMakeCommand::class, + 'command.optimize' => \Illuminate\Foundation\Console\OptimizeCommand::class, + 'command.optimize.clear' => \Illuminate\Foundation\Console\OptimizeClearCommand::class, + 'command.package.discover' => \Illuminate\Foundation\Console\PackageDiscoverCommand::class, + 'command.policy.make' => \Illuminate\Foundation\Console\PolicyMakeCommand::class, + 'command.provider.make' => \Illuminate\Foundation\Console\ProviderMakeCommand::class, + 'command.queue.failed' => \Illuminate\Queue\Console\ListFailedCommand::class, + 'command.queue.failed-table' => \Illuminate\Queue\Console\FailedTableCommand::class, + 'command.queue.flush' => \Illuminate\Queue\Console\FlushFailedCommand::class, + 'command.queue.forget' => \Illuminate\Queue\Console\ForgetFailedCommand::class, + 'command.queue.listen' => \Illuminate\Queue\Console\ListenCommand::class, + 'command.queue.restart' => \Illuminate\Queue\Console\RestartCommand::class, + 'command.queue.retry' => \Illuminate\Queue\Console\RetryCommand::class, + 'command.queue.table' => \Illuminate\Queue\Console\TableCommand::class, + 'command.queue.work' => \Illuminate\Queue\Console\WorkCommand::class, + 'command.request.make' => \Illuminate\Foundation\Console\RequestMakeCommand::class, + 'command.resource.make' => \Illuminate\Foundation\Console\ResourceMakeCommand::class, + 'command.route.cache' => \Illuminate\Foundation\Console\RouteCacheCommand::class, + 'command.route.clear' => \Illuminate\Foundation\Console\RouteClearCommand::class, + 'command.route.list' => \Illuminate\Foundation\Console\RouteListCommand::class, + 'command.rule.make' => \Illuminate\Foundation\Console\RuleMakeCommand::class, + 'command.seed' => \Illuminate\Database\Console\Seeds\SeedCommand::class, + 'command.seeder.make' => \Illuminate\Database\Console\Seeds\SeederMakeCommand::class, + 'command.serve' => \Illuminate\Foundation\Console\ServeCommand::class, + 'command.session.table' => \Illuminate\Session\Console\SessionTableCommand::class, + 'command.storage.link' => \Illuminate\Foundation\Console\StorageLinkCommand::class, + 'command.stub.publish' => \Illuminate\Foundation\Console\StubPublishCommand::class, + 'command.test.make' => \Illuminate\Foundation\Console\TestMakeCommand::class, + 'command.tinker' => \Laravel\Tinker\Console\TinkerCommand::class, + 'command.up' => \Illuminate\Foundation\Console\UpCommand::class, + 'command.vendor.publish' => \Illuminate\Foundation\Console\VendorPublishCommand::class, + 'command.view.cache' => \Illuminate\Foundation\Console\ViewCacheCommand::class, + 'command.view.clear' => \Illuminate\Foundation\Console\ViewClearCommand::class, + 'composer' => \Illuminate\Support\Composer::class, + 'cookie' => \Illuminate\Cookie\CookieJar::class, + 'db' => \Illuminate\Database\DatabaseManager::class, + 'db.connection' => \Illuminate\Database\MySqlConnection::class, + 'db.factory' => \Illuminate\Database\Connectors\ConnectionFactory::class, + 'dompdf' => \Dompdf\Dompdf::class, + 'dompdf.wrapper' => \Barryvdh\DomPDF\PDF::class, + 'encrypter' => \Illuminate\Encryption\Encrypter::class, + 'events' => \Illuminate\Events\Dispatcher::class, + 'files' => \Illuminate\Filesystem\Filesystem::class, + 'filesystem' => \Illuminate\Filesystem\FilesystemManager::class, + 'filesystem.cloud' => \Illuminate\Filesystem\FilesystemAdapter::class, + 'filesystem.disk' => \Illuminate\Filesystem\FilesystemAdapter::class, + 'flare.client' => \Facade\FlareClient\Flare::class, + 'flare.http' => \Facade\FlareClient\Http\Client::class, + 'flare.logger' => \Monolog\Logger::class, + 'hash' => \Illuminate\Hashing\HashManager::class, + 'hash.driver' => \Illuminate\Hashing\BcryptHasher::class, + 'log' => \Illuminate\Log\LogManager::class, + 'mail.manager' => \Illuminate\Mail\MailManager::class, + 'mailer' => \Illuminate\Mail\Mailer::class, + 'memcached.connector' => \Illuminate\Cache\MemcachedConnector::class, + 'migration.creator' => \Illuminate\Database\Migrations\MigrationCreator::class, + 'migration.repository' => \Illuminate\Database\Migrations\DatabaseMigrationRepository::class, + 'migrator' => \Illuminate\Database\Migrations\Migrator::class, + 'queue' => \Illuminate\Queue\QueueManager::class, + 'queue.connection' => \Illuminate\Queue\SyncQueue::class, + 'queue.failer' => \Illuminate\Queue\Failed\DatabaseFailedJobProvider::class, + 'queue.listener' => \Illuminate\Queue\Listener::class, + 'queue.worker' => \Illuminate\Queue\Worker::class, + 'redirect' => \Illuminate\Routing\Redirector::class, + 'redis' => \Illuminate\Redis\RedisManager::class, + 'router' => \Illuminate\Routing\Router::class, + 'session' => \Illuminate\Session\SessionManager::class, + 'session.store' => \Illuminate\Session\Store::class, + 'translation.loader' => \Illuminate\Translation\FileLoader::class, + 'translator' => \Illuminate\Translation\Translator::class, + 'url' => \Illuminate\Routing\UrlGenerator::class, + 'validation.presence' => \Illuminate\Validation\DatabasePresenceVerifier::class, + 'view' => \Illuminate\View\Factory::class, + 'view.engine.resolver' => \Illuminate\View\Engines\EngineResolver::class, + 'view.finder' => \Illuminate\View\FileViewFinder::class, + ])); + override(\App::make(0), map([ + '' => '@', + 'DaveJamesMiller\Breadcrumbs\BreadcrumbsGenerator' => \DaveJamesMiller\Breadcrumbs\BreadcrumbsGenerator::class, + 'DaveJamesMiller\Breadcrumbs\BreadcrumbsManager' => \DaveJamesMiller\Breadcrumbs\BreadcrumbsManager::class, + 'Facade\IgnitionContracts\SolutionProviderRepository' => \Facade\Ignition\SolutionProviders\SolutionProviderRepository::class, + 'Facade\Ignition\DumpRecorder\DumpRecorder' => \Facade\Ignition\DumpRecorder\DumpRecorder::class, + 'Facade\Ignition\ErrorPage\Renderer' => \Facade\Ignition\ErrorPage\Renderer::class, + 'Facade\Ignition\IgnitionConfig' => \Facade\Ignition\IgnitionConfig::class, + 'Facade\Ignition\LogRecorder\LogRecorder' => \Facade\Ignition\LogRecorder\LogRecorder::class, + 'Facade\Ignition\QueryRecorder\QueryRecorder' => \Facade\Ignition\QueryRecorder\QueryRecorder::class, + 'Illuminate\Auth\Middleware\RequirePassword' => \Illuminate\Auth\Middleware\RequirePassword::class, + 'Illuminate\Broadcasting\BroadcastManager' => \Illuminate\Broadcasting\BroadcastManager::class, + 'Illuminate\Bus\Dispatcher' => \Illuminate\Bus\Dispatcher::class, + 'Illuminate\Console\Scheduling\Schedule' => \Illuminate\Console\Scheduling\Schedule::class, + 'Illuminate\Console\Scheduling\ScheduleFinishCommand' => \Illuminate\Console\Scheduling\ScheduleFinishCommand::class, + 'Illuminate\Console\Scheduling\ScheduleRunCommand' => \Illuminate\Console\Scheduling\ScheduleRunCommand::class, + 'Illuminate\Contracts\Auth\Access\Gate' => \Illuminate\Auth\Access\Gate::class, + 'Illuminate\Contracts\Broadcasting\Broadcaster' => \Illuminate\Broadcasting\Broadcasters\LogBroadcaster::class, + 'Illuminate\Contracts\Console\Kernel' => \App\Console\Kernel::class, + 'Illuminate\Contracts\Debug\ExceptionHandler' => \NunoMaduro\Collision\Adapters\Laravel\ExceptionHandler::class, + 'Illuminate\Contracts\Http\Kernel' => \App\Http\Kernel::class, + 'Illuminate\Contracts\Pipeline\Hub' => \Illuminate\Pipeline\Hub::class, + 'Illuminate\Contracts\Queue\EntityResolver' => \Illuminate\Database\Eloquent\QueueEntityResolver::class, + 'Illuminate\Contracts\Routing\ResponseFactory' => \Illuminate\Routing\ResponseFactory::class, + 'Illuminate\Foundation\Mix' => \Illuminate\Foundation\Mix::class, + 'Illuminate\Foundation\PackageManifest' => \Illuminate\Foundation\PackageManifest::class, + 'Illuminate\Mail\Markdown' => \Illuminate\Mail\Markdown::class, + 'Illuminate\Notifications\ChannelManager' => \Illuminate\Notifications\ChannelManager::class, + 'Illuminate\Routing\Contracts\ControllerDispatcher' => \Illuminate\Routing\ControllerDispatcher::class, + 'Illuminate\Session\Middleware\StartSession' => \Illuminate\Session\Middleware\StartSession::class, + 'Nexmo\Client' => \Nexmo\Client::class, + 'NunoMaduro\Collision\Contracts\Provider' => \NunoMaduro\Collision\Provider::class, + 'Whoops\Handler\HandlerInterface' => \Facade\Ignition\ErrorPage\IgnitionWhoopsHandler::class, + 'auth' => \Illuminate\Auth\AuthManager::class, + 'auth.driver' => \Illuminate\Auth\SessionGuard::class, + 'auth.password' => \Illuminate\Auth\Passwords\PasswordBrokerManager::class, + 'auth.password.broker' => \Illuminate\Auth\Passwords\PasswordBroker::class, + 'blade.compiler' => \Illuminate\View\Compilers\BladeCompiler::class, + 'cache' => \Illuminate\Cache\CacheManager::class, + 'cache.store' => \Illuminate\Cache\Repository::class, + 'command.auth.resets.clear' => \Illuminate\Auth\Console\ClearResetsCommand::class, + 'command.cache.clear' => \Illuminate\Cache\Console\ClearCommand::class, + 'command.cache.forget' => \Illuminate\Cache\Console\ForgetCommand::class, + 'command.cache.table' => \Illuminate\Cache\Console\CacheTableCommand::class, + 'command.cast.make' => \Illuminate\Foundation\Console\CastMakeCommand::class, + 'command.channel.make' => \Illuminate\Foundation\Console\ChannelMakeCommand::class, + 'command.clear-compiled' => \Illuminate\Foundation\Console\ClearCompiledCommand::class, + 'command.component.make' => \Illuminate\Foundation\Console\ComponentMakeCommand::class, + 'command.config.cache' => \Illuminate\Foundation\Console\ConfigCacheCommand::class, + 'command.config.clear' => \Illuminate\Foundation\Console\ConfigClearCommand::class, + 'command.console.make' => \Illuminate\Foundation\Console\ConsoleMakeCommand::class, + 'command.controller.make' => \Illuminate\Routing\Console\ControllerMakeCommand::class, + 'command.db.wipe' => \Illuminate\Database\Console\WipeCommand::class, + 'command.down' => \Illuminate\Foundation\Console\DownCommand::class, + 'command.environment' => \Illuminate\Foundation\Console\EnvironmentCommand::class, + 'command.event.cache' => \Illuminate\Foundation\Console\EventCacheCommand::class, + 'command.event.clear' => \Illuminate\Foundation\Console\EventClearCommand::class, + 'command.event.generate' => \Illuminate\Foundation\Console\EventGenerateCommand::class, + 'command.event.list' => \Illuminate\Foundation\Console\EventListCommand::class, + 'command.event.make' => \Illuminate\Foundation\Console\EventMakeCommand::class, + 'command.exception.make' => \Illuminate\Foundation\Console\ExceptionMakeCommand::class, + 'command.factory.make' => \Illuminate\Database\Console\Factories\FactoryMakeCommand::class, + 'command.flare:test' => \Facade\Ignition\Commands\TestCommand::class, + 'command.ide-helper.eloquent' => \Barryvdh\LaravelIdeHelper\Console\EloquentCommand::class, + 'command.ide-helper.generate' => \Barryvdh\LaravelIdeHelper\Console\GeneratorCommand::class, + 'command.ide-helper.meta' => \Barryvdh\LaravelIdeHelper\Console\MetaCommand::class, + 'command.ide-helper.models' => \Barryvdh\LaravelIdeHelper\Console\ModelsCommand::class, + 'command.job.make' => \Illuminate\Foundation\Console\JobMakeCommand::class, + 'command.key.generate' => \Illuminate\Foundation\Console\KeyGenerateCommand::class, + 'command.listener.make' => \Illuminate\Foundation\Console\ListenerMakeCommand::class, + 'command.mail.make' => \Illuminate\Foundation\Console\MailMakeCommand::class, + 'command.make:solution' => \Facade\Ignition\Commands\SolutionMakeCommand::class, + 'command.middleware.make' => \Illuminate\Routing\Console\MiddlewareMakeCommand::class, + 'command.migrate' => \Illuminate\Database\Console\Migrations\MigrateCommand::class, + 'command.migrate.fresh' => \Illuminate\Database\Console\Migrations\FreshCommand::class, + 'command.migrate.install' => \Illuminate\Database\Console\Migrations\InstallCommand::class, + 'command.migrate.make' => \Illuminate\Database\Console\Migrations\MigrateMakeCommand::class, + 'command.migrate.refresh' => \Illuminate\Database\Console\Migrations\RefreshCommand::class, + 'command.migrate.reset' => \Illuminate\Database\Console\Migrations\ResetCommand::class, + 'command.migrate.rollback' => \Illuminate\Database\Console\Migrations\RollbackCommand::class, + 'command.migrate.status' => \Illuminate\Database\Console\Migrations\StatusCommand::class, + 'command.model.make' => \Illuminate\Foundation\Console\ModelMakeCommand::class, + 'command.notification.make' => \Illuminate\Foundation\Console\NotificationMakeCommand::class, + 'command.notification.table' => \Illuminate\Notifications\Console\NotificationTableCommand::class, + 'command.observer.make' => \Illuminate\Foundation\Console\ObserverMakeCommand::class, + 'command.optimize' => \Illuminate\Foundation\Console\OptimizeCommand::class, + 'command.optimize.clear' => \Illuminate\Foundation\Console\OptimizeClearCommand::class, + 'command.package.discover' => \Illuminate\Foundation\Console\PackageDiscoverCommand::class, + 'command.policy.make' => \Illuminate\Foundation\Console\PolicyMakeCommand::class, + 'command.provider.make' => \Illuminate\Foundation\Console\ProviderMakeCommand::class, + 'command.queue.failed' => \Illuminate\Queue\Console\ListFailedCommand::class, + 'command.queue.failed-table' => \Illuminate\Queue\Console\FailedTableCommand::class, + 'command.queue.flush' => \Illuminate\Queue\Console\FlushFailedCommand::class, + 'command.queue.forget' => \Illuminate\Queue\Console\ForgetFailedCommand::class, + 'command.queue.listen' => \Illuminate\Queue\Console\ListenCommand::class, + 'command.queue.restart' => \Illuminate\Queue\Console\RestartCommand::class, + 'command.queue.retry' => \Illuminate\Queue\Console\RetryCommand::class, + 'command.queue.table' => \Illuminate\Queue\Console\TableCommand::class, + 'command.queue.work' => \Illuminate\Queue\Console\WorkCommand::class, + 'command.request.make' => \Illuminate\Foundation\Console\RequestMakeCommand::class, + 'command.resource.make' => \Illuminate\Foundation\Console\ResourceMakeCommand::class, + 'command.route.cache' => \Illuminate\Foundation\Console\RouteCacheCommand::class, + 'command.route.clear' => \Illuminate\Foundation\Console\RouteClearCommand::class, + 'command.route.list' => \Illuminate\Foundation\Console\RouteListCommand::class, + 'command.rule.make' => \Illuminate\Foundation\Console\RuleMakeCommand::class, + 'command.seed' => \Illuminate\Database\Console\Seeds\SeedCommand::class, + 'command.seeder.make' => \Illuminate\Database\Console\Seeds\SeederMakeCommand::class, + 'command.serve' => \Illuminate\Foundation\Console\ServeCommand::class, + 'command.session.table' => \Illuminate\Session\Console\SessionTableCommand::class, + 'command.storage.link' => \Illuminate\Foundation\Console\StorageLinkCommand::class, + 'command.stub.publish' => \Illuminate\Foundation\Console\StubPublishCommand::class, + 'command.test.make' => \Illuminate\Foundation\Console\TestMakeCommand::class, + 'command.tinker' => \Laravel\Tinker\Console\TinkerCommand::class, + 'command.up' => \Illuminate\Foundation\Console\UpCommand::class, + 'command.vendor.publish' => \Illuminate\Foundation\Console\VendorPublishCommand::class, + 'command.view.cache' => \Illuminate\Foundation\Console\ViewCacheCommand::class, + 'command.view.clear' => \Illuminate\Foundation\Console\ViewClearCommand::class, + 'composer' => \Illuminate\Support\Composer::class, + 'cookie' => \Illuminate\Cookie\CookieJar::class, + 'db' => \Illuminate\Database\DatabaseManager::class, + 'db.connection' => \Illuminate\Database\MySqlConnection::class, + 'db.factory' => \Illuminate\Database\Connectors\ConnectionFactory::class, + 'dompdf' => \Dompdf\Dompdf::class, + 'dompdf.wrapper' => \Barryvdh\DomPDF\PDF::class, + 'encrypter' => \Illuminate\Encryption\Encrypter::class, + 'events' => \Illuminate\Events\Dispatcher::class, + 'files' => \Illuminate\Filesystem\Filesystem::class, + 'filesystem' => \Illuminate\Filesystem\FilesystemManager::class, + 'filesystem.cloud' => \Illuminate\Filesystem\FilesystemAdapter::class, + 'filesystem.disk' => \Illuminate\Filesystem\FilesystemAdapter::class, + 'flare.client' => \Facade\FlareClient\Flare::class, + 'flare.http' => \Facade\FlareClient\Http\Client::class, + 'flare.logger' => \Monolog\Logger::class, + 'hash' => \Illuminate\Hashing\HashManager::class, + 'hash.driver' => \Illuminate\Hashing\BcryptHasher::class, + 'log' => \Illuminate\Log\LogManager::class, + 'mail.manager' => \Illuminate\Mail\MailManager::class, + 'mailer' => \Illuminate\Mail\Mailer::class, + 'memcached.connector' => \Illuminate\Cache\MemcachedConnector::class, + 'migration.creator' => \Illuminate\Database\Migrations\MigrationCreator::class, + 'migration.repository' => \Illuminate\Database\Migrations\DatabaseMigrationRepository::class, + 'migrator' => \Illuminate\Database\Migrations\Migrator::class, + 'queue' => \Illuminate\Queue\QueueManager::class, + 'queue.connection' => \Illuminate\Queue\SyncQueue::class, + 'queue.failer' => \Illuminate\Queue\Failed\DatabaseFailedJobProvider::class, + 'queue.listener' => \Illuminate\Queue\Listener::class, + 'queue.worker' => \Illuminate\Queue\Worker::class, + 'redirect' => \Illuminate\Routing\Redirector::class, + 'redis' => \Illuminate\Redis\RedisManager::class, + 'router' => \Illuminate\Routing\Router::class, + 'session' => \Illuminate\Session\SessionManager::class, + 'session.store' => \Illuminate\Session\Store::class, + 'translation.loader' => \Illuminate\Translation\FileLoader::class, + 'translator' => \Illuminate\Translation\Translator::class, + 'url' => \Illuminate\Routing\UrlGenerator::class, + 'validation.presence' => \Illuminate\Validation\DatabasePresenceVerifier::class, + 'view' => \Illuminate\View\Factory::class, + 'view.engine.resolver' => \Illuminate\View\Engines\EngineResolver::class, + 'view.finder' => \Illuminate\View\FileViewFinder::class, + ])); + override(\App::makeWith(0), map([ + '' => '@', + 'DaveJamesMiller\Breadcrumbs\BreadcrumbsGenerator' => \DaveJamesMiller\Breadcrumbs\BreadcrumbsGenerator::class, + 'DaveJamesMiller\Breadcrumbs\BreadcrumbsManager' => \DaveJamesMiller\Breadcrumbs\BreadcrumbsManager::class, + 'Facade\IgnitionContracts\SolutionProviderRepository' => \Facade\Ignition\SolutionProviders\SolutionProviderRepository::class, + 'Facade\Ignition\DumpRecorder\DumpRecorder' => \Facade\Ignition\DumpRecorder\DumpRecorder::class, + 'Facade\Ignition\ErrorPage\Renderer' => \Facade\Ignition\ErrorPage\Renderer::class, + 'Facade\Ignition\IgnitionConfig' => \Facade\Ignition\IgnitionConfig::class, + 'Facade\Ignition\LogRecorder\LogRecorder' => \Facade\Ignition\LogRecorder\LogRecorder::class, + 'Facade\Ignition\QueryRecorder\QueryRecorder' => \Facade\Ignition\QueryRecorder\QueryRecorder::class, + 'Illuminate\Auth\Middleware\RequirePassword' => \Illuminate\Auth\Middleware\RequirePassword::class, + 'Illuminate\Broadcasting\BroadcastManager' => \Illuminate\Broadcasting\BroadcastManager::class, + 'Illuminate\Bus\Dispatcher' => \Illuminate\Bus\Dispatcher::class, + 'Illuminate\Console\Scheduling\Schedule' => \Illuminate\Console\Scheduling\Schedule::class, + 'Illuminate\Console\Scheduling\ScheduleFinishCommand' => \Illuminate\Console\Scheduling\ScheduleFinishCommand::class, + 'Illuminate\Console\Scheduling\ScheduleRunCommand' => \Illuminate\Console\Scheduling\ScheduleRunCommand::class, + 'Illuminate\Contracts\Auth\Access\Gate' => \Illuminate\Auth\Access\Gate::class, + 'Illuminate\Contracts\Broadcasting\Broadcaster' => \Illuminate\Broadcasting\Broadcasters\LogBroadcaster::class, + 'Illuminate\Contracts\Console\Kernel' => \App\Console\Kernel::class, + 'Illuminate\Contracts\Debug\ExceptionHandler' => \NunoMaduro\Collision\Adapters\Laravel\ExceptionHandler::class, + 'Illuminate\Contracts\Http\Kernel' => \App\Http\Kernel::class, + 'Illuminate\Contracts\Pipeline\Hub' => \Illuminate\Pipeline\Hub::class, + 'Illuminate\Contracts\Queue\EntityResolver' => \Illuminate\Database\Eloquent\QueueEntityResolver::class, + 'Illuminate\Contracts\Routing\ResponseFactory' => \Illuminate\Routing\ResponseFactory::class, + 'Illuminate\Foundation\Mix' => \Illuminate\Foundation\Mix::class, + 'Illuminate\Foundation\PackageManifest' => \Illuminate\Foundation\PackageManifest::class, + 'Illuminate\Mail\Markdown' => \Illuminate\Mail\Markdown::class, + 'Illuminate\Notifications\ChannelManager' => \Illuminate\Notifications\ChannelManager::class, + 'Illuminate\Routing\Contracts\ControllerDispatcher' => \Illuminate\Routing\ControllerDispatcher::class, + 'Illuminate\Session\Middleware\StartSession' => \Illuminate\Session\Middleware\StartSession::class, + 'Nexmo\Client' => \Nexmo\Client::class, + 'NunoMaduro\Collision\Contracts\Provider' => \NunoMaduro\Collision\Provider::class, + 'Whoops\Handler\HandlerInterface' => \Facade\Ignition\ErrorPage\IgnitionWhoopsHandler::class, + 'auth' => \Illuminate\Auth\AuthManager::class, + 'auth.driver' => \Illuminate\Auth\SessionGuard::class, + 'auth.password' => \Illuminate\Auth\Passwords\PasswordBrokerManager::class, + 'auth.password.broker' => \Illuminate\Auth\Passwords\PasswordBroker::class, + 'blade.compiler' => \Illuminate\View\Compilers\BladeCompiler::class, + 'cache' => \Illuminate\Cache\CacheManager::class, + 'cache.store' => \Illuminate\Cache\Repository::class, + 'command.auth.resets.clear' => \Illuminate\Auth\Console\ClearResetsCommand::class, + 'command.cache.clear' => \Illuminate\Cache\Console\ClearCommand::class, + 'command.cache.forget' => \Illuminate\Cache\Console\ForgetCommand::class, + 'command.cache.table' => \Illuminate\Cache\Console\CacheTableCommand::class, + 'command.cast.make' => \Illuminate\Foundation\Console\CastMakeCommand::class, + 'command.channel.make' => \Illuminate\Foundation\Console\ChannelMakeCommand::class, + 'command.clear-compiled' => \Illuminate\Foundation\Console\ClearCompiledCommand::class, + 'command.component.make' => \Illuminate\Foundation\Console\ComponentMakeCommand::class, + 'command.config.cache' => \Illuminate\Foundation\Console\ConfigCacheCommand::class, + 'command.config.clear' => \Illuminate\Foundation\Console\ConfigClearCommand::class, + 'command.console.make' => \Illuminate\Foundation\Console\ConsoleMakeCommand::class, + 'command.controller.make' => \Illuminate\Routing\Console\ControllerMakeCommand::class, + 'command.db.wipe' => \Illuminate\Database\Console\WipeCommand::class, + 'command.down' => \Illuminate\Foundation\Console\DownCommand::class, + 'command.environment' => \Illuminate\Foundation\Console\EnvironmentCommand::class, + 'command.event.cache' => \Illuminate\Foundation\Console\EventCacheCommand::class, + 'command.event.clear' => \Illuminate\Foundation\Console\EventClearCommand::class, + 'command.event.generate' => \Illuminate\Foundation\Console\EventGenerateCommand::class, + 'command.event.list' => \Illuminate\Foundation\Console\EventListCommand::class, + 'command.event.make' => \Illuminate\Foundation\Console\EventMakeCommand::class, + 'command.exception.make' => \Illuminate\Foundation\Console\ExceptionMakeCommand::class, + 'command.factory.make' => \Illuminate\Database\Console\Factories\FactoryMakeCommand::class, + 'command.flare:test' => \Facade\Ignition\Commands\TestCommand::class, + 'command.ide-helper.eloquent' => \Barryvdh\LaravelIdeHelper\Console\EloquentCommand::class, + 'command.ide-helper.generate' => \Barryvdh\LaravelIdeHelper\Console\GeneratorCommand::class, + 'command.ide-helper.meta' => \Barryvdh\LaravelIdeHelper\Console\MetaCommand::class, + 'command.ide-helper.models' => \Barryvdh\LaravelIdeHelper\Console\ModelsCommand::class, + 'command.job.make' => \Illuminate\Foundation\Console\JobMakeCommand::class, + 'command.key.generate' => \Illuminate\Foundation\Console\KeyGenerateCommand::class, + 'command.listener.make' => \Illuminate\Foundation\Console\ListenerMakeCommand::class, + 'command.mail.make' => \Illuminate\Foundation\Console\MailMakeCommand::class, + 'command.make:solution' => \Facade\Ignition\Commands\SolutionMakeCommand::class, + 'command.middleware.make' => \Illuminate\Routing\Console\MiddlewareMakeCommand::class, + 'command.migrate' => \Illuminate\Database\Console\Migrations\MigrateCommand::class, + 'command.migrate.fresh' => \Illuminate\Database\Console\Migrations\FreshCommand::class, + 'command.migrate.install' => \Illuminate\Database\Console\Migrations\InstallCommand::class, + 'command.migrate.make' => \Illuminate\Database\Console\Migrations\MigrateMakeCommand::class, + 'command.migrate.refresh' => \Illuminate\Database\Console\Migrations\RefreshCommand::class, + 'command.migrate.reset' => \Illuminate\Database\Console\Migrations\ResetCommand::class, + 'command.migrate.rollback' => \Illuminate\Database\Console\Migrations\RollbackCommand::class, + 'command.migrate.status' => \Illuminate\Database\Console\Migrations\StatusCommand::class, + 'command.model.make' => \Illuminate\Foundation\Console\ModelMakeCommand::class, + 'command.notification.make' => \Illuminate\Foundation\Console\NotificationMakeCommand::class, + 'command.notification.table' => \Illuminate\Notifications\Console\NotificationTableCommand::class, + 'command.observer.make' => \Illuminate\Foundation\Console\ObserverMakeCommand::class, + 'command.optimize' => \Illuminate\Foundation\Console\OptimizeCommand::class, + 'command.optimize.clear' => \Illuminate\Foundation\Console\OptimizeClearCommand::class, + 'command.package.discover' => \Illuminate\Foundation\Console\PackageDiscoverCommand::class, + 'command.policy.make' => \Illuminate\Foundation\Console\PolicyMakeCommand::class, + 'command.provider.make' => \Illuminate\Foundation\Console\ProviderMakeCommand::class, + 'command.queue.failed' => \Illuminate\Queue\Console\ListFailedCommand::class, + 'command.queue.failed-table' => \Illuminate\Queue\Console\FailedTableCommand::class, + 'command.queue.flush' => \Illuminate\Queue\Console\FlushFailedCommand::class, + 'command.queue.forget' => \Illuminate\Queue\Console\ForgetFailedCommand::class, + 'command.queue.listen' => \Illuminate\Queue\Console\ListenCommand::class, + 'command.queue.restart' => \Illuminate\Queue\Console\RestartCommand::class, + 'command.queue.retry' => \Illuminate\Queue\Console\RetryCommand::class, + 'command.queue.table' => \Illuminate\Queue\Console\TableCommand::class, + 'command.queue.work' => \Illuminate\Queue\Console\WorkCommand::class, + 'command.request.make' => \Illuminate\Foundation\Console\RequestMakeCommand::class, + 'command.resource.make' => \Illuminate\Foundation\Console\ResourceMakeCommand::class, + 'command.route.cache' => \Illuminate\Foundation\Console\RouteCacheCommand::class, + 'command.route.clear' => \Illuminate\Foundation\Console\RouteClearCommand::class, + 'command.route.list' => \Illuminate\Foundation\Console\RouteListCommand::class, + 'command.rule.make' => \Illuminate\Foundation\Console\RuleMakeCommand::class, + 'command.seed' => \Illuminate\Database\Console\Seeds\SeedCommand::class, + 'command.seeder.make' => \Illuminate\Database\Console\Seeds\SeederMakeCommand::class, + 'command.serve' => \Illuminate\Foundation\Console\ServeCommand::class, + 'command.session.table' => \Illuminate\Session\Console\SessionTableCommand::class, + 'command.storage.link' => \Illuminate\Foundation\Console\StorageLinkCommand::class, + 'command.stub.publish' => \Illuminate\Foundation\Console\StubPublishCommand::class, + 'command.test.make' => \Illuminate\Foundation\Console\TestMakeCommand::class, + 'command.tinker' => \Laravel\Tinker\Console\TinkerCommand::class, + 'command.up' => \Illuminate\Foundation\Console\UpCommand::class, + 'command.vendor.publish' => \Illuminate\Foundation\Console\VendorPublishCommand::class, + 'command.view.cache' => \Illuminate\Foundation\Console\ViewCacheCommand::class, + 'command.view.clear' => \Illuminate\Foundation\Console\ViewClearCommand::class, + 'composer' => \Illuminate\Support\Composer::class, + 'cookie' => \Illuminate\Cookie\CookieJar::class, + 'db' => \Illuminate\Database\DatabaseManager::class, + 'db.connection' => \Illuminate\Database\MySqlConnection::class, + 'db.factory' => \Illuminate\Database\Connectors\ConnectionFactory::class, + 'dompdf' => \Dompdf\Dompdf::class, + 'dompdf.wrapper' => \Barryvdh\DomPDF\PDF::class, + 'encrypter' => \Illuminate\Encryption\Encrypter::class, + 'events' => \Illuminate\Events\Dispatcher::class, + 'files' => \Illuminate\Filesystem\Filesystem::class, + 'filesystem' => \Illuminate\Filesystem\FilesystemManager::class, + 'filesystem.cloud' => \Illuminate\Filesystem\FilesystemAdapter::class, + 'filesystem.disk' => \Illuminate\Filesystem\FilesystemAdapter::class, + 'flare.client' => \Facade\FlareClient\Flare::class, + 'flare.http' => \Facade\FlareClient\Http\Client::class, + 'flare.logger' => \Monolog\Logger::class, + 'hash' => \Illuminate\Hashing\HashManager::class, + 'hash.driver' => \Illuminate\Hashing\BcryptHasher::class, + 'log' => \Illuminate\Log\LogManager::class, + 'mail.manager' => \Illuminate\Mail\MailManager::class, + 'mailer' => \Illuminate\Mail\Mailer::class, + 'memcached.connector' => \Illuminate\Cache\MemcachedConnector::class, + 'migration.creator' => \Illuminate\Database\Migrations\MigrationCreator::class, + 'migration.repository' => \Illuminate\Database\Migrations\DatabaseMigrationRepository::class, + 'migrator' => \Illuminate\Database\Migrations\Migrator::class, + 'queue' => \Illuminate\Queue\QueueManager::class, + 'queue.connection' => \Illuminate\Queue\SyncQueue::class, + 'queue.failer' => \Illuminate\Queue\Failed\DatabaseFailedJobProvider::class, + 'queue.listener' => \Illuminate\Queue\Listener::class, + 'queue.worker' => \Illuminate\Queue\Worker::class, + 'redirect' => \Illuminate\Routing\Redirector::class, + 'redis' => \Illuminate\Redis\RedisManager::class, + 'router' => \Illuminate\Routing\Router::class, + 'session' => \Illuminate\Session\SessionManager::class, + 'session.store' => \Illuminate\Session\Store::class, + 'translation.loader' => \Illuminate\Translation\FileLoader::class, + 'translator' => \Illuminate\Translation\Translator::class, + 'url' => \Illuminate\Routing\UrlGenerator::class, + 'validation.presence' => \Illuminate\Validation\DatabasePresenceVerifier::class, + 'view' => \Illuminate\View\Factory::class, + 'view.engine.resolver' => \Illuminate\View\Engines\EngineResolver::class, + 'view.finder' => \Illuminate\View\FileViewFinder::class, + ])); + override(\app(0), map([ + '' => '@', + 'DaveJamesMiller\Breadcrumbs\BreadcrumbsGenerator' => \DaveJamesMiller\Breadcrumbs\BreadcrumbsGenerator::class, + 'DaveJamesMiller\Breadcrumbs\BreadcrumbsManager' => \DaveJamesMiller\Breadcrumbs\BreadcrumbsManager::class, + 'Facade\IgnitionContracts\SolutionProviderRepository' => \Facade\Ignition\SolutionProviders\SolutionProviderRepository::class, + 'Facade\Ignition\DumpRecorder\DumpRecorder' => \Facade\Ignition\DumpRecorder\DumpRecorder::class, + 'Facade\Ignition\ErrorPage\Renderer' => \Facade\Ignition\ErrorPage\Renderer::class, + 'Facade\Ignition\IgnitionConfig' => \Facade\Ignition\IgnitionConfig::class, + 'Facade\Ignition\LogRecorder\LogRecorder' => \Facade\Ignition\LogRecorder\LogRecorder::class, + 'Facade\Ignition\QueryRecorder\QueryRecorder' => \Facade\Ignition\QueryRecorder\QueryRecorder::class, + 'Illuminate\Auth\Middleware\RequirePassword' => \Illuminate\Auth\Middleware\RequirePassword::class, + 'Illuminate\Broadcasting\BroadcastManager' => \Illuminate\Broadcasting\BroadcastManager::class, + 'Illuminate\Bus\Dispatcher' => \Illuminate\Bus\Dispatcher::class, + 'Illuminate\Console\Scheduling\Schedule' => \Illuminate\Console\Scheduling\Schedule::class, + 'Illuminate\Console\Scheduling\ScheduleFinishCommand' => \Illuminate\Console\Scheduling\ScheduleFinishCommand::class, + 'Illuminate\Console\Scheduling\ScheduleRunCommand' => \Illuminate\Console\Scheduling\ScheduleRunCommand::class, + 'Illuminate\Contracts\Auth\Access\Gate' => \Illuminate\Auth\Access\Gate::class, + 'Illuminate\Contracts\Broadcasting\Broadcaster' => \Illuminate\Broadcasting\Broadcasters\LogBroadcaster::class, + 'Illuminate\Contracts\Console\Kernel' => \App\Console\Kernel::class, + 'Illuminate\Contracts\Debug\ExceptionHandler' => \NunoMaduro\Collision\Adapters\Laravel\ExceptionHandler::class, + 'Illuminate\Contracts\Http\Kernel' => \App\Http\Kernel::class, + 'Illuminate\Contracts\Pipeline\Hub' => \Illuminate\Pipeline\Hub::class, + 'Illuminate\Contracts\Queue\EntityResolver' => \Illuminate\Database\Eloquent\QueueEntityResolver::class, + 'Illuminate\Contracts\Routing\ResponseFactory' => \Illuminate\Routing\ResponseFactory::class, + 'Illuminate\Foundation\Mix' => \Illuminate\Foundation\Mix::class, + 'Illuminate\Foundation\PackageManifest' => \Illuminate\Foundation\PackageManifest::class, + 'Illuminate\Mail\Markdown' => \Illuminate\Mail\Markdown::class, + 'Illuminate\Notifications\ChannelManager' => \Illuminate\Notifications\ChannelManager::class, + 'Illuminate\Routing\Contracts\ControllerDispatcher' => \Illuminate\Routing\ControllerDispatcher::class, + 'Illuminate\Session\Middleware\StartSession' => \Illuminate\Session\Middleware\StartSession::class, + 'Nexmo\Client' => \Nexmo\Client::class, + 'NunoMaduro\Collision\Contracts\Provider' => \NunoMaduro\Collision\Provider::class, + 'Whoops\Handler\HandlerInterface' => \Facade\Ignition\ErrorPage\IgnitionWhoopsHandler::class, + 'auth' => \Illuminate\Auth\AuthManager::class, + 'auth.driver' => \Illuminate\Auth\SessionGuard::class, + 'auth.password' => \Illuminate\Auth\Passwords\PasswordBrokerManager::class, + 'auth.password.broker' => \Illuminate\Auth\Passwords\PasswordBroker::class, + 'blade.compiler' => \Illuminate\View\Compilers\BladeCompiler::class, + 'cache' => \Illuminate\Cache\CacheManager::class, + 'cache.store' => \Illuminate\Cache\Repository::class, + 'command.auth.resets.clear' => \Illuminate\Auth\Console\ClearResetsCommand::class, + 'command.cache.clear' => \Illuminate\Cache\Console\ClearCommand::class, + 'command.cache.forget' => \Illuminate\Cache\Console\ForgetCommand::class, + 'command.cache.table' => \Illuminate\Cache\Console\CacheTableCommand::class, + 'command.cast.make' => \Illuminate\Foundation\Console\CastMakeCommand::class, + 'command.channel.make' => \Illuminate\Foundation\Console\ChannelMakeCommand::class, + 'command.clear-compiled' => \Illuminate\Foundation\Console\ClearCompiledCommand::class, + 'command.component.make' => \Illuminate\Foundation\Console\ComponentMakeCommand::class, + 'command.config.cache' => \Illuminate\Foundation\Console\ConfigCacheCommand::class, + 'command.config.clear' => \Illuminate\Foundation\Console\ConfigClearCommand::class, + 'command.console.make' => \Illuminate\Foundation\Console\ConsoleMakeCommand::class, + 'command.controller.make' => \Illuminate\Routing\Console\ControllerMakeCommand::class, + 'command.db.wipe' => \Illuminate\Database\Console\WipeCommand::class, + 'command.down' => \Illuminate\Foundation\Console\DownCommand::class, + 'command.environment' => \Illuminate\Foundation\Console\EnvironmentCommand::class, + 'command.event.cache' => \Illuminate\Foundation\Console\EventCacheCommand::class, + 'command.event.clear' => \Illuminate\Foundation\Console\EventClearCommand::class, + 'command.event.generate' => \Illuminate\Foundation\Console\EventGenerateCommand::class, + 'command.event.list' => \Illuminate\Foundation\Console\EventListCommand::class, + 'command.event.make' => \Illuminate\Foundation\Console\EventMakeCommand::class, + 'command.exception.make' => \Illuminate\Foundation\Console\ExceptionMakeCommand::class, + 'command.factory.make' => \Illuminate\Database\Console\Factories\FactoryMakeCommand::class, + 'command.flare:test' => \Facade\Ignition\Commands\TestCommand::class, + 'command.ide-helper.eloquent' => \Barryvdh\LaravelIdeHelper\Console\EloquentCommand::class, + 'command.ide-helper.generate' => \Barryvdh\LaravelIdeHelper\Console\GeneratorCommand::class, + 'command.ide-helper.meta' => \Barryvdh\LaravelIdeHelper\Console\MetaCommand::class, + 'command.ide-helper.models' => \Barryvdh\LaravelIdeHelper\Console\ModelsCommand::class, + 'command.job.make' => \Illuminate\Foundation\Console\JobMakeCommand::class, + 'command.key.generate' => \Illuminate\Foundation\Console\KeyGenerateCommand::class, + 'command.listener.make' => \Illuminate\Foundation\Console\ListenerMakeCommand::class, + 'command.mail.make' => \Illuminate\Foundation\Console\MailMakeCommand::class, + 'command.make:solution' => \Facade\Ignition\Commands\SolutionMakeCommand::class, + 'command.middleware.make' => \Illuminate\Routing\Console\MiddlewareMakeCommand::class, + 'command.migrate' => \Illuminate\Database\Console\Migrations\MigrateCommand::class, + 'command.migrate.fresh' => \Illuminate\Database\Console\Migrations\FreshCommand::class, + 'command.migrate.install' => \Illuminate\Database\Console\Migrations\InstallCommand::class, + 'command.migrate.make' => \Illuminate\Database\Console\Migrations\MigrateMakeCommand::class, + 'command.migrate.refresh' => \Illuminate\Database\Console\Migrations\RefreshCommand::class, + 'command.migrate.reset' => \Illuminate\Database\Console\Migrations\ResetCommand::class, + 'command.migrate.rollback' => \Illuminate\Database\Console\Migrations\RollbackCommand::class, + 'command.migrate.status' => \Illuminate\Database\Console\Migrations\StatusCommand::class, + 'command.model.make' => \Illuminate\Foundation\Console\ModelMakeCommand::class, + 'command.notification.make' => \Illuminate\Foundation\Console\NotificationMakeCommand::class, + 'command.notification.table' => \Illuminate\Notifications\Console\NotificationTableCommand::class, + 'command.observer.make' => \Illuminate\Foundation\Console\ObserverMakeCommand::class, + 'command.optimize' => \Illuminate\Foundation\Console\OptimizeCommand::class, + 'command.optimize.clear' => \Illuminate\Foundation\Console\OptimizeClearCommand::class, + 'command.package.discover' => \Illuminate\Foundation\Console\PackageDiscoverCommand::class, + 'command.policy.make' => \Illuminate\Foundation\Console\PolicyMakeCommand::class, + 'command.provider.make' => \Illuminate\Foundation\Console\ProviderMakeCommand::class, + 'command.queue.failed' => \Illuminate\Queue\Console\ListFailedCommand::class, + 'command.queue.failed-table' => \Illuminate\Queue\Console\FailedTableCommand::class, + 'command.queue.flush' => \Illuminate\Queue\Console\FlushFailedCommand::class, + 'command.queue.forget' => \Illuminate\Queue\Console\ForgetFailedCommand::class, + 'command.queue.listen' => \Illuminate\Queue\Console\ListenCommand::class, + 'command.queue.restart' => \Illuminate\Queue\Console\RestartCommand::class, + 'command.queue.retry' => \Illuminate\Queue\Console\RetryCommand::class, + 'command.queue.table' => \Illuminate\Queue\Console\TableCommand::class, + 'command.queue.work' => \Illuminate\Queue\Console\WorkCommand::class, + 'command.request.make' => \Illuminate\Foundation\Console\RequestMakeCommand::class, + 'command.resource.make' => \Illuminate\Foundation\Console\ResourceMakeCommand::class, + 'command.route.cache' => \Illuminate\Foundation\Console\RouteCacheCommand::class, + 'command.route.clear' => \Illuminate\Foundation\Console\RouteClearCommand::class, + 'command.route.list' => \Illuminate\Foundation\Console\RouteListCommand::class, + 'command.rule.make' => \Illuminate\Foundation\Console\RuleMakeCommand::class, + 'command.seed' => \Illuminate\Database\Console\Seeds\SeedCommand::class, + 'command.seeder.make' => \Illuminate\Database\Console\Seeds\SeederMakeCommand::class, + 'command.serve' => \Illuminate\Foundation\Console\ServeCommand::class, + 'command.session.table' => \Illuminate\Session\Console\SessionTableCommand::class, + 'command.storage.link' => \Illuminate\Foundation\Console\StorageLinkCommand::class, + 'command.stub.publish' => \Illuminate\Foundation\Console\StubPublishCommand::class, + 'command.test.make' => \Illuminate\Foundation\Console\TestMakeCommand::class, + 'command.tinker' => \Laravel\Tinker\Console\TinkerCommand::class, + 'command.up' => \Illuminate\Foundation\Console\UpCommand::class, + 'command.vendor.publish' => \Illuminate\Foundation\Console\VendorPublishCommand::class, + 'command.view.cache' => \Illuminate\Foundation\Console\ViewCacheCommand::class, + 'command.view.clear' => \Illuminate\Foundation\Console\ViewClearCommand::class, + 'composer' => \Illuminate\Support\Composer::class, + 'cookie' => \Illuminate\Cookie\CookieJar::class, + 'db' => \Illuminate\Database\DatabaseManager::class, + 'db.connection' => \Illuminate\Database\MySqlConnection::class, + 'db.factory' => \Illuminate\Database\Connectors\ConnectionFactory::class, + 'dompdf' => \Dompdf\Dompdf::class, + 'dompdf.wrapper' => \Barryvdh\DomPDF\PDF::class, + 'encrypter' => \Illuminate\Encryption\Encrypter::class, + 'events' => \Illuminate\Events\Dispatcher::class, + 'files' => \Illuminate\Filesystem\Filesystem::class, + 'filesystem' => \Illuminate\Filesystem\FilesystemManager::class, + 'filesystem.cloud' => \Illuminate\Filesystem\FilesystemAdapter::class, + 'filesystem.disk' => \Illuminate\Filesystem\FilesystemAdapter::class, + 'flare.client' => \Facade\FlareClient\Flare::class, + 'flare.http' => \Facade\FlareClient\Http\Client::class, + 'flare.logger' => \Monolog\Logger::class, + 'hash' => \Illuminate\Hashing\HashManager::class, + 'hash.driver' => \Illuminate\Hashing\BcryptHasher::class, + 'log' => \Illuminate\Log\LogManager::class, + 'mail.manager' => \Illuminate\Mail\MailManager::class, + 'mailer' => \Illuminate\Mail\Mailer::class, + 'memcached.connector' => \Illuminate\Cache\MemcachedConnector::class, + 'migration.creator' => \Illuminate\Database\Migrations\MigrationCreator::class, + 'migration.repository' => \Illuminate\Database\Migrations\DatabaseMigrationRepository::class, + 'migrator' => \Illuminate\Database\Migrations\Migrator::class, + 'queue' => \Illuminate\Queue\QueueManager::class, + 'queue.connection' => \Illuminate\Queue\SyncQueue::class, + 'queue.failer' => \Illuminate\Queue\Failed\DatabaseFailedJobProvider::class, + 'queue.listener' => \Illuminate\Queue\Listener::class, + 'queue.worker' => \Illuminate\Queue\Worker::class, + 'redirect' => \Illuminate\Routing\Redirector::class, + 'redis' => \Illuminate\Redis\RedisManager::class, + 'router' => \Illuminate\Routing\Router::class, + 'session' => \Illuminate\Session\SessionManager::class, + 'session.store' => \Illuminate\Session\Store::class, + 'translation.loader' => \Illuminate\Translation\FileLoader::class, + 'translator' => \Illuminate\Translation\Translator::class, + 'url' => \Illuminate\Routing\UrlGenerator::class, + 'validation.presence' => \Illuminate\Validation\DatabasePresenceVerifier::class, + 'view' => \Illuminate\View\Factory::class, + 'view.engine.resolver' => \Illuminate\View\Engines\EngineResolver::class, + 'view.finder' => \Illuminate\View\FileViewFinder::class, + ])); + override(\resolve(0), map([ + '' => '@', + 'DaveJamesMiller\Breadcrumbs\BreadcrumbsGenerator' => \DaveJamesMiller\Breadcrumbs\BreadcrumbsGenerator::class, + 'DaveJamesMiller\Breadcrumbs\BreadcrumbsManager' => \DaveJamesMiller\Breadcrumbs\BreadcrumbsManager::class, + 'Facade\IgnitionContracts\SolutionProviderRepository' => \Facade\Ignition\SolutionProviders\SolutionProviderRepository::class, + 'Facade\Ignition\DumpRecorder\DumpRecorder' => \Facade\Ignition\DumpRecorder\DumpRecorder::class, + 'Facade\Ignition\ErrorPage\Renderer' => \Facade\Ignition\ErrorPage\Renderer::class, + 'Facade\Ignition\IgnitionConfig' => \Facade\Ignition\IgnitionConfig::class, + 'Facade\Ignition\LogRecorder\LogRecorder' => \Facade\Ignition\LogRecorder\LogRecorder::class, + 'Facade\Ignition\QueryRecorder\QueryRecorder' => \Facade\Ignition\QueryRecorder\QueryRecorder::class, + 'Illuminate\Auth\Middleware\RequirePassword' => \Illuminate\Auth\Middleware\RequirePassword::class, + 'Illuminate\Broadcasting\BroadcastManager' => \Illuminate\Broadcasting\BroadcastManager::class, + 'Illuminate\Bus\Dispatcher' => \Illuminate\Bus\Dispatcher::class, + 'Illuminate\Console\Scheduling\Schedule' => \Illuminate\Console\Scheduling\Schedule::class, + 'Illuminate\Console\Scheduling\ScheduleFinishCommand' => \Illuminate\Console\Scheduling\ScheduleFinishCommand::class, + 'Illuminate\Console\Scheduling\ScheduleRunCommand' => \Illuminate\Console\Scheduling\ScheduleRunCommand::class, + 'Illuminate\Contracts\Auth\Access\Gate' => \Illuminate\Auth\Access\Gate::class, + 'Illuminate\Contracts\Broadcasting\Broadcaster' => \Illuminate\Broadcasting\Broadcasters\LogBroadcaster::class, + 'Illuminate\Contracts\Console\Kernel' => \App\Console\Kernel::class, + 'Illuminate\Contracts\Debug\ExceptionHandler' => \NunoMaduro\Collision\Adapters\Laravel\ExceptionHandler::class, + 'Illuminate\Contracts\Http\Kernel' => \App\Http\Kernel::class, + 'Illuminate\Contracts\Pipeline\Hub' => \Illuminate\Pipeline\Hub::class, + 'Illuminate\Contracts\Queue\EntityResolver' => \Illuminate\Database\Eloquent\QueueEntityResolver::class, + 'Illuminate\Contracts\Routing\ResponseFactory' => \Illuminate\Routing\ResponseFactory::class, + 'Illuminate\Foundation\Mix' => \Illuminate\Foundation\Mix::class, + 'Illuminate\Foundation\PackageManifest' => \Illuminate\Foundation\PackageManifest::class, + 'Illuminate\Mail\Markdown' => \Illuminate\Mail\Markdown::class, + 'Illuminate\Notifications\ChannelManager' => \Illuminate\Notifications\ChannelManager::class, + 'Illuminate\Routing\Contracts\ControllerDispatcher' => \Illuminate\Routing\ControllerDispatcher::class, + 'Illuminate\Session\Middleware\StartSession' => \Illuminate\Session\Middleware\StartSession::class, + 'Nexmo\Client' => \Nexmo\Client::class, + 'NunoMaduro\Collision\Contracts\Provider' => \NunoMaduro\Collision\Provider::class, + 'Whoops\Handler\HandlerInterface' => \Facade\Ignition\ErrorPage\IgnitionWhoopsHandler::class, + 'auth' => \Illuminate\Auth\AuthManager::class, + 'auth.driver' => \Illuminate\Auth\SessionGuard::class, + 'auth.password' => \Illuminate\Auth\Passwords\PasswordBrokerManager::class, + 'auth.password.broker' => \Illuminate\Auth\Passwords\PasswordBroker::class, + 'blade.compiler' => \Illuminate\View\Compilers\BladeCompiler::class, + 'cache' => \Illuminate\Cache\CacheManager::class, + 'cache.store' => \Illuminate\Cache\Repository::class, + 'command.auth.resets.clear' => \Illuminate\Auth\Console\ClearResetsCommand::class, + 'command.cache.clear' => \Illuminate\Cache\Console\ClearCommand::class, + 'command.cache.forget' => \Illuminate\Cache\Console\ForgetCommand::class, + 'command.cache.table' => \Illuminate\Cache\Console\CacheTableCommand::class, + 'command.cast.make' => \Illuminate\Foundation\Console\CastMakeCommand::class, + 'command.channel.make' => \Illuminate\Foundation\Console\ChannelMakeCommand::class, + 'command.clear-compiled' => \Illuminate\Foundation\Console\ClearCompiledCommand::class, + 'command.component.make' => \Illuminate\Foundation\Console\ComponentMakeCommand::class, + 'command.config.cache' => \Illuminate\Foundation\Console\ConfigCacheCommand::class, + 'command.config.clear' => \Illuminate\Foundation\Console\ConfigClearCommand::class, + 'command.console.make' => \Illuminate\Foundation\Console\ConsoleMakeCommand::class, + 'command.controller.make' => \Illuminate\Routing\Console\ControllerMakeCommand::class, + 'command.db.wipe' => \Illuminate\Database\Console\WipeCommand::class, + 'command.down' => \Illuminate\Foundation\Console\DownCommand::class, + 'command.environment' => \Illuminate\Foundation\Console\EnvironmentCommand::class, + 'command.event.cache' => \Illuminate\Foundation\Console\EventCacheCommand::class, + 'command.event.clear' => \Illuminate\Foundation\Console\EventClearCommand::class, + 'command.event.generate' => \Illuminate\Foundation\Console\EventGenerateCommand::class, + 'command.event.list' => \Illuminate\Foundation\Console\EventListCommand::class, + 'command.event.make' => \Illuminate\Foundation\Console\EventMakeCommand::class, + 'command.exception.make' => \Illuminate\Foundation\Console\ExceptionMakeCommand::class, + 'command.factory.make' => \Illuminate\Database\Console\Factories\FactoryMakeCommand::class, + 'command.flare:test' => \Facade\Ignition\Commands\TestCommand::class, + 'command.ide-helper.eloquent' => \Barryvdh\LaravelIdeHelper\Console\EloquentCommand::class, + 'command.ide-helper.generate' => \Barryvdh\LaravelIdeHelper\Console\GeneratorCommand::class, + 'command.ide-helper.meta' => \Barryvdh\LaravelIdeHelper\Console\MetaCommand::class, + 'command.ide-helper.models' => \Barryvdh\LaravelIdeHelper\Console\ModelsCommand::class, + 'command.job.make' => \Illuminate\Foundation\Console\JobMakeCommand::class, + 'command.key.generate' => \Illuminate\Foundation\Console\KeyGenerateCommand::class, + 'command.listener.make' => \Illuminate\Foundation\Console\ListenerMakeCommand::class, + 'command.mail.make' => \Illuminate\Foundation\Console\MailMakeCommand::class, + 'command.make:solution' => \Facade\Ignition\Commands\SolutionMakeCommand::class, + 'command.middleware.make' => \Illuminate\Routing\Console\MiddlewareMakeCommand::class, + 'command.migrate' => \Illuminate\Database\Console\Migrations\MigrateCommand::class, + 'command.migrate.fresh' => \Illuminate\Database\Console\Migrations\FreshCommand::class, + 'command.migrate.install' => \Illuminate\Database\Console\Migrations\InstallCommand::class, + 'command.migrate.make' => \Illuminate\Database\Console\Migrations\MigrateMakeCommand::class, + 'command.migrate.refresh' => \Illuminate\Database\Console\Migrations\RefreshCommand::class, + 'command.migrate.reset' => \Illuminate\Database\Console\Migrations\ResetCommand::class, + 'command.migrate.rollback' => \Illuminate\Database\Console\Migrations\RollbackCommand::class, + 'command.migrate.status' => \Illuminate\Database\Console\Migrations\StatusCommand::class, + 'command.model.make' => \Illuminate\Foundation\Console\ModelMakeCommand::class, + 'command.notification.make' => \Illuminate\Foundation\Console\NotificationMakeCommand::class, + 'command.notification.table' => \Illuminate\Notifications\Console\NotificationTableCommand::class, + 'command.observer.make' => \Illuminate\Foundation\Console\ObserverMakeCommand::class, + 'command.optimize' => \Illuminate\Foundation\Console\OptimizeCommand::class, + 'command.optimize.clear' => \Illuminate\Foundation\Console\OptimizeClearCommand::class, + 'command.package.discover' => \Illuminate\Foundation\Console\PackageDiscoverCommand::class, + 'command.policy.make' => \Illuminate\Foundation\Console\PolicyMakeCommand::class, + 'command.provider.make' => \Illuminate\Foundation\Console\ProviderMakeCommand::class, + 'command.queue.failed' => \Illuminate\Queue\Console\ListFailedCommand::class, + 'command.queue.failed-table' => \Illuminate\Queue\Console\FailedTableCommand::class, + 'command.queue.flush' => \Illuminate\Queue\Console\FlushFailedCommand::class, + 'command.queue.forget' => \Illuminate\Queue\Console\ForgetFailedCommand::class, + 'command.queue.listen' => \Illuminate\Queue\Console\ListenCommand::class, + 'command.queue.restart' => \Illuminate\Queue\Console\RestartCommand::class, + 'command.queue.retry' => \Illuminate\Queue\Console\RetryCommand::class, + 'command.queue.table' => \Illuminate\Queue\Console\TableCommand::class, + 'command.queue.work' => \Illuminate\Queue\Console\WorkCommand::class, + 'command.request.make' => \Illuminate\Foundation\Console\RequestMakeCommand::class, + 'command.resource.make' => \Illuminate\Foundation\Console\ResourceMakeCommand::class, + 'command.route.cache' => \Illuminate\Foundation\Console\RouteCacheCommand::class, + 'command.route.clear' => \Illuminate\Foundation\Console\RouteClearCommand::class, + 'command.route.list' => \Illuminate\Foundation\Console\RouteListCommand::class, + 'command.rule.make' => \Illuminate\Foundation\Console\RuleMakeCommand::class, + 'command.seed' => \Illuminate\Database\Console\Seeds\SeedCommand::class, + 'command.seeder.make' => \Illuminate\Database\Console\Seeds\SeederMakeCommand::class, + 'command.serve' => \Illuminate\Foundation\Console\ServeCommand::class, + 'command.session.table' => \Illuminate\Session\Console\SessionTableCommand::class, + 'command.storage.link' => \Illuminate\Foundation\Console\StorageLinkCommand::class, + 'command.stub.publish' => \Illuminate\Foundation\Console\StubPublishCommand::class, + 'command.test.make' => \Illuminate\Foundation\Console\TestMakeCommand::class, + 'command.tinker' => \Laravel\Tinker\Console\TinkerCommand::class, + 'command.up' => \Illuminate\Foundation\Console\UpCommand::class, + 'command.vendor.publish' => \Illuminate\Foundation\Console\VendorPublishCommand::class, + 'command.view.cache' => \Illuminate\Foundation\Console\ViewCacheCommand::class, + 'command.view.clear' => \Illuminate\Foundation\Console\ViewClearCommand::class, + 'composer' => \Illuminate\Support\Composer::class, + 'cookie' => \Illuminate\Cookie\CookieJar::class, + 'db' => \Illuminate\Database\DatabaseManager::class, + 'db.connection' => \Illuminate\Database\MySqlConnection::class, + 'db.factory' => \Illuminate\Database\Connectors\ConnectionFactory::class, + 'dompdf' => \Dompdf\Dompdf::class, + 'dompdf.wrapper' => \Barryvdh\DomPDF\PDF::class, + 'encrypter' => \Illuminate\Encryption\Encrypter::class, + 'events' => \Illuminate\Events\Dispatcher::class, + 'files' => \Illuminate\Filesystem\Filesystem::class, + 'filesystem' => \Illuminate\Filesystem\FilesystemManager::class, + 'filesystem.cloud' => \Illuminate\Filesystem\FilesystemAdapter::class, + 'filesystem.disk' => \Illuminate\Filesystem\FilesystemAdapter::class, + 'flare.client' => \Facade\FlareClient\Flare::class, + 'flare.http' => \Facade\FlareClient\Http\Client::class, + 'flare.logger' => \Monolog\Logger::class, + 'hash' => \Illuminate\Hashing\HashManager::class, + 'hash.driver' => \Illuminate\Hashing\BcryptHasher::class, + 'log' => \Illuminate\Log\LogManager::class, + 'mail.manager' => \Illuminate\Mail\MailManager::class, + 'mailer' => \Illuminate\Mail\Mailer::class, + 'memcached.connector' => \Illuminate\Cache\MemcachedConnector::class, + 'migration.creator' => \Illuminate\Database\Migrations\MigrationCreator::class, + 'migration.repository' => \Illuminate\Database\Migrations\DatabaseMigrationRepository::class, + 'migrator' => \Illuminate\Database\Migrations\Migrator::class, + 'queue' => \Illuminate\Queue\QueueManager::class, + 'queue.connection' => \Illuminate\Queue\SyncQueue::class, + 'queue.failer' => \Illuminate\Queue\Failed\DatabaseFailedJobProvider::class, + 'queue.listener' => \Illuminate\Queue\Listener::class, + 'queue.worker' => \Illuminate\Queue\Worker::class, + 'redirect' => \Illuminate\Routing\Redirector::class, + 'redis' => \Illuminate\Redis\RedisManager::class, + 'router' => \Illuminate\Routing\Router::class, + 'session' => \Illuminate\Session\SessionManager::class, + 'session.store' => \Illuminate\Session\Store::class, + 'translation.loader' => \Illuminate\Translation\FileLoader::class, + 'translator' => \Illuminate\Translation\Translator::class, + 'url' => \Illuminate\Routing\UrlGenerator::class, + 'validation.presence' => \Illuminate\Validation\DatabasePresenceVerifier::class, + 'view' => \Illuminate\View\Factory::class, + 'view.engine.resolver' => \Illuminate\View\Engines\EngineResolver::class, + 'view.finder' => \Illuminate\View\FileViewFinder::class, + ])); + + + override(\Illuminate\Support\Arr::add(0), type(0)); + override(\Illuminate\Support\Arr::except(0), type(0)); + override(\Illuminate\Support\Arr::first(0), elementType(0)); + override(\Illuminate\Support\Arr::last(0), elementType(0)); + override(\Illuminate\Support\Arr::get(0), elementType(0)); + override(\Illuminate\Support\Arr::only(0), type(0)); + override(\Illuminate\Support\Arr::prepend(0), type(0)); + override(\Illuminate\Support\Arr::pull(0), elementType(0)); + override(\Illuminate\Support\Arr::set(0), type(0)); + override(\Illuminate\Support\Arr::shuffle(0), type(0)); + override(\Illuminate\Support\Arr::sort(0), type(0)); + override(\Illuminate\Support\Arr::sortRecursive(0), type(0)); + override(\Illuminate\Support\Arr::where(0), type(0)); + override(\array_add(0), type(0)); + override(\array_except(0), type(0)); + override(\array_first(0), elementType(0)); + override(\array_last(0), elementType(0)); + override(\array_get(0), elementType(0)); + override(\array_only(0), type(0)); + override(\array_prepend(0), type(0)); + override(\array_pull(0), elementType(0)); + override(\array_set(0), type(0)); + override(\array_sort(0), type(0)); + override(\array_sort_recursive(0), type(0)); + override(\array_where(0), type(0)); + override(\head(0), elementType(0)); + override(\last(0), elementType(0)); + override(\with(0), type(0)); + override(\tap(0), type(0)); + +} diff --git a/.phpunit.result.cache b/.phpunit.result.cache new file mode 100644 index 00000000..e409258f --- /dev/null +++ b/.phpunit.result.cache @@ -0,0 +1 @@ +C:37:"PHPUnit\Runner\DefaultTestResultCache":273:{a:2:{s:7:"defects";a:2:{s:32:"Tests\Feature\AdminTest::testUrl";i:3;s:30:"Tests\Feature\ECCTest::testUrl";i:3;}s:5:"times";a:3:{s:32:"Tests\Feature\AdminTest::testUrl";d:0.099;s:30:"Tests\Feature\ECCTest::testUrl";d:0.014;s:33:"Tests\Feature\PublicTest::testUrl";d:0.031;}}} \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index 28429ee9..146a6e18 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,11 +1,11 @@ # Set the base image for subsequent instructions -FROM php:7.2 +FROM php:7.4 # Update packages RUN apt-get update # Install PHP and composer dependencies -RUN apt-get install -qq git curl libmcrypt-dev libjpeg-dev libpng-dev libfreetype6-dev libbz2-dev autoconf libc-dev pkg-config +RUN apt-get install -qq git curl libmcrypt-dev libjpeg-dev libpng-dev libfreetype6-dev libbz2-dev autoconf libc-dev pkg-config libzip-dev # Clear out the local repository of retrieved package files RUN apt-get clean @@ -14,7 +14,7 @@ RUN apt-get clean # Here you can install any other extension that you need during the test and deployment process RUN docker-php-ext-install pdo_mysql zip -RUN pecl install mcrypt-1.0.1 +RUN pecl install mcrypt # Install Composer RUN curl --silent --show-error https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer diff --git a/Envoy.blade.php b/Envoy.blade.php index b18c67dd..176b11af 100644 --- a/Envoy.blade.php +++ b/Envoy.blade.php @@ -41,6 +41,7 @@ clone_repository_dev run_composer_dev update_symlinks_dev + remove_old_release_dev @endstory @story('deploy_227') @@ -66,7 +67,9 @@ @task('run_composer_697') echo "Starting deployment ({{ $release }})" cd {{ $new_release_dir_697 }} - composer install --prefer-dist --no-scripts -q -o + composer install --prefer-dist --no-scripts -q -o --no-dev + npm install + npm run production @endtask @task('update_symlinks_697') @@ -85,8 +88,8 @@ echo 'Migrate DB' cd {{ $app_dir_697 }}/current/ - php artisan migrate - php artisan db:seed --class=ConfigsTableSeeder + yes|php artisan migrate + yes|php artisan db:seed --class=ConfigsTableSeeder @endtask @@ -101,7 +104,9 @@ @task('run_composer_736') echo "Starting deployment ({{ $release }})" cd {{ $new_release_dir_736 }} - composer install --prefer-dist --no-scripts -q -o + composer install --prefer-dist --no-scripts -q -o --no-dev + npm install + npm run production @endtask @task('update_symlinks_736') @@ -120,8 +125,8 @@ echo 'Migrate DB' cd {{ $app_dir_736 }}/current/ - php artisan migrate - php artisan db:seed --class=ConfigsTableSeeder + yes|php artisan migrate + yes|php artisan db:seed --class=ConfigsTableSeeder @endtask @@ -136,7 +141,9 @@ @task('run_composer_dev') echo "Starting deployment ({{ $release }})" cd {{ $new_release_dir_dev }} - composer install --prefer-dist --no-scripts -q -o + composer install --prefer-dist --no-scripts -q -o --no-dev + npm install + npm run production @endtask @task('update_symlinks_dev') @@ -155,11 +162,16 @@ echo 'Migrate DB' cd {{ $app_dir_dev }}/current/ - php artisan migrate - php artisan db:seed --class=ConfigsTableSeeder + yes|php artisan migrate + yes|php artisan db:seed --class=ConfigsTableSeeder @endtask +@task('remove_old_release_dev') + cd {{ $releases_dir_dev }} + rm -fr $(ls -t1 | tail -n +3) +@endtask + @task('clone_repository_227') echo 'Cloning repository' [ -d {{ $releases_dir_227 }} ] || mkdir {{ $releases_dir_227 }} @@ -171,7 +183,9 @@ git reset --hard {{ $commit }} @task('run_composer_227') echo "Starting deployment ({{ $release }})" cd {{ $new_release_dir_227 }} -composer install --prefer-dist --no-scripts -q -o +composer install --prefer-dist --no-scripts -q -o --no-dev +npm install +npm run production @endtask @task('update_symlinks_227') @@ -190,8 +204,8 @@ chmod -R 777 {{ $app_dir_227 }}/current/bootstrap/ echo 'Migrate DB' cd {{ $app_dir_227 }}/current/ -php artisan migrate -php artisan db:seed --class=ConfigsTableSeeder + yes|php artisan migrate + yes|php artisan db:seed --class=ConfigsTableSeeder @endtask @@ -206,7 +220,9 @@ git reset --hard {{ $commit }} @task('run_composer_117') echo "Starting deployment ({{ $release }})" cd {{ $new_release_dir_117 }} -composer install --prefer-dist --no-scripts -q -o +composer install --prefer-dist --no-scripts -q -o --no-dev +npm install +npm run production @endtask @task('update_symlinks_117') @@ -225,7 +241,7 @@ chmod -R 777 {{ $app_dir_117 }}/current/bootstrap/ echo 'Migrate DB' cd {{ $app_dir_117 }}/current/ -php artisan migrate -php artisan db:seed --class=ConfigsTableSeeder + yes|php artisan migrate + yes|php artisan db:seed --class=ConfigsTableSeeder -@endtask \ No newline at end of file +@endtask diff --git a/_ide_helper.php b/_ide_helper.php index e1fd4f79..258b9d78 100644 --- a/_ide_helper.php +++ b/_ide_helper.php @@ -2,8 +2,8 @@ // @formatter:off /** - * A helper file for Laravel 5, to provide autocomplete information to your IDE - * Generated for Laravel 5.6.39 on 2019-08-19 22:14:44. + * A helper file for Laravel, to provide autocomplete information to your IDE + * Generated for Laravel 7.16.1 on 2020-07-01 15:16:34. * * This file should not be included in your code, only analyzed by your IDE! * @@ -16,7 +16,7 @@ namespace Illuminate\Support\Facades { /** * * - * @see \Illuminate\Foundation\Application + * @see \Illuminate\Contracts\Foundation\Application */ class App { @@ -35,7 +35,7 @@ namespace Illuminate\Support\Facades { /** * Run the given array of bootstrap classes. * - * @param array $bootstrappers + * @param string[] $bootstrappers * @return void * @static */ @@ -114,7 +114,7 @@ namespace Illuminate\Support\Facades { /** * Get the path to the application "app" directory. * - * @param string $path Optionally, a path to append to the app path + * @param string $path * @return string * @static */ @@ -124,6 +124,19 @@ namespace Illuminate\Support\Facades { return $instance->path($path); } + /** + * Set the application directory. + * + * @param string $path + * @return \Illuminate\Foundation\Application + * @static + */ + public static function useAppPath($path) + { + /** @var \Illuminate\Foundation\Application $instance */ + return $instance->useAppPath($path); + } + /** * Get the base path of the Laravel installation. * @@ -316,13 +329,14 @@ namespace Illuminate\Support\Facades { /** * Get or check the current application environment. * + * @param string|array $environments * @return string|bool * @static */ - public static function environment() + public static function environment(...$environments) { /** @var \Illuminate\Foundation\Application $instance */ - return $instance->environment(); + return $instance->environment(...$environments); } /** @@ -337,6 +351,18 @@ namespace Illuminate\Support\Facades { return $instance->isLocal(); } + /** + * Determine if application is in production environment. + * + * @return bool + * @static + */ + public static function isProduction() + { + /** @var \Illuminate\Foundation\Application $instance */ + return $instance->isProduction(); + } + /** * Detect the application's current environment. * @@ -390,15 +416,14 @@ namespace Illuminate\Support\Facades { * Register a service provider with the application. * * @param \Illuminate\Support\ServiceProvider|string $provider - * @param array $options * @param bool $force * @return \Illuminate\Support\ServiceProvider * @static */ - public static function register($provider, $options = array(), $force = false) + public static function register($provider, $force = false) { /** @var \Illuminate\Foundation\Application $instance */ - return $instance->register($provider, $options, $force); + return $instance->register($provider, $force); } /** @@ -481,15 +506,13 @@ namespace Illuminate\Support\Facades { /** * Resolve the given type from the container. - * - * (Overriding Container::make) * * @param string $abstract * @param array $parameters * @return mixed * @static */ - public static function make($abstract, $parameters = array()) + public static function make($abstract, $parameters = []) { /** @var \Illuminate\Foundation\Application $instance */ return $instance->make($abstract, $parameters); @@ -497,8 +520,6 @@ namespace Illuminate\Support\Facades { /** * Determine if the given abstract type has been bound. - * - * (Overriding Container::bound) * * @param string $abstract * @return bool @@ -537,7 +558,7 @@ namespace Illuminate\Support\Facades { /** * Register a new boot listener. * - * @param mixed $callback + * @param callable $callback * @return void * @static */ @@ -550,7 +571,7 @@ namespace Illuminate\Support\Facades { /** * Register a new "booted" listener. * - * @param mixed $callback + * @param callable $callback * @return void * @static */ @@ -655,6 +676,43 @@ namespace Illuminate\Support\Facades { return $instance->getCachedRoutesPath(); } + /** + * Determine if the application events are cached. + * + * @return bool + * @static + */ + public static function eventsAreCached() + { + /** @var \Illuminate\Foundation\Application $instance */ + return $instance->eventsAreCached(); + } + + /** + * Get the path to the events cache file. + * + * @return string + * @static + */ + public static function getCachedEventsPath() + { + /** @var \Illuminate\Foundation\Application $instance */ + return $instance->getCachedEventsPath(); + } + + /** + * Add new prefix to list of absolute path prefixes. + * + * @param string $prefix + * @return \Illuminate\Foundation\Application + * @static + */ + public static function addAbsoluteCachePathPrefix($prefix) + { + /** @var \Illuminate\Foundation\Application $instance */ + return $instance->addAbsoluteCachePathPrefix($prefix); + } + /** * Determine if the application is currently down for maintenance. * @@ -675,9 +733,10 @@ namespace Illuminate\Support\Facades { * @param array $headers * @return void * @throws \Symfony\Component\HttpKernel\Exception\HttpException + * @throws \Symfony\Component\HttpKernel\Exception\NotFoundHttpException * @static */ - public static function abort($code, $message = '', $headers = array()) + public static function abort($code, $message = '', $headers = []) { /** @var \Illuminate\Foundation\Application $instance */ $instance->abort($code, $message, $headers); @@ -686,7 +745,7 @@ namespace Illuminate\Support\Facades { /** * Register a terminating callback with the application. * - * @param \Closure $callback + * @param callable|string $callback * @return \Illuminate\Foundation\Application * @static */ @@ -862,7 +921,7 @@ namespace Illuminate\Support\Facades { /** * Define a contextual binding. * - * @param string $concrete + * @param array|string $concrete * @return \Illuminate\Contracts\Container\ContextualBindingBuilder * @static */ @@ -1041,6 +1100,21 @@ namespace Illuminate\Support\Facades { $instance->singleton($abstract, $concrete); } + /** + * Register a shared binding if it hasn't already been registered. + * + * @param string $abstract + * @param \Closure|string|null $concrete + * @return void + * @static + */ + public static function singletonIf($abstract, $concrete = null) + { + //Method inherited from \Illuminate\Container\Container + /** @var \Illuminate\Foundation\Application $instance */ + $instance->singletonIf($abstract, $concrete); + } + /** * "Extend" an abstract type in the container. * @@ -1091,7 +1165,7 @@ namespace Illuminate\Support\Facades { * Resolve all of the bindings for a given tag. * * @param string $tag - * @return array + * @return \Illuminate\Container\iterable * @static */ public static function tagged($tag) @@ -1107,6 +1181,7 @@ namespace Illuminate\Support\Facades { * @param string $abstract * @param string $alias * @return void + * @throws \LogicException * @static */ public static function alias($abstract, $alias) @@ -1155,7 +1230,7 @@ namespace Illuminate\Support\Facades { * @return \Closure * @static */ - public static function wrap($callback, $parameters = array()) + public static function wrap($callback, $parameters = []) { //Method inherited from \Illuminate\Container\Container /** @var \Illuminate\Foundation\Application $instance */ @@ -1166,12 +1241,13 @@ namespace Illuminate\Support\Facades { * Call the given Closure / class@method and inject its dependencies. * * @param callable|string $callback - * @param array $parameters + * @param \Illuminate\Container\array $parameters * @param string|null $defaultMethod * @return mixed + * @throws \InvalidArgumentException * @static */ - public static function call($callback, $parameters = array(), $defaultMethod = null) + public static function call($callback, $parameters = [], $defaultMethod = null) { //Method inherited from \Illuminate\Container\Container /** @var \Illuminate\Foundation\Application $instance */ @@ -1198,9 +1274,10 @@ namespace Illuminate\Support\Facades { * @param string $abstract * @param array $parameters * @return mixed + * @throws \Illuminate\Contracts\Container\BindingResolutionException * @static */ - public static function makeWith($abstract, $parameters = array()) + public static function makeWith($abstract, $parameters = []) { //Method inherited from \Illuminate\Container\Container /** @var \Illuminate\Foundation\Application $instance */ @@ -1226,7 +1303,7 @@ namespace Illuminate\Support\Facades { /** * Instantiate a concrete instance of the given type. * - * @param string $concrete + * @param \Closure|string $concrete * @return mixed * @throws \Illuminate\Contracts\Container\BindingResolutionException * @static @@ -1286,7 +1363,6 @@ namespace Illuminate\Support\Facades { * * @param string $abstract * @return string - * @throws \LogicException * @static */ public static function getAlias($abstract) @@ -1338,7 +1414,7 @@ namespace Illuminate\Support\Facades { } /** - * Set the globally available instance of the container. + * Get the globally available instance of the container. * * @return static * @static @@ -1432,7 +1508,7 @@ namespace Illuminate\Support\Facades { * Run the console application. * * @param \Symfony\Component\Console\Input\InputInterface $input - * @param \Symfony\Component\Console\Output\OutputInterface $output + * @param \Symfony\Component\Console\Output\OutputInterface|null $output * @return int * @static */ @@ -1492,11 +1568,12 @@ namespace Illuminate\Support\Facades { * * @param string $command * @param array $parameters - * @param \Symfony\Component\Console\Output\OutputInterface $outputBuffer + * @param \Symfony\Component\Console\Output\OutputInterface|null $outputBuffer * @return int + * @throws \Symfony\Component\Console\Exception\CommandNotFoundException * @static */ - public static function call($command, $parameters = array(), $outputBuffer = null) + public static function call($command, $parameters = [], $outputBuffer = null) { //Method inherited from \Illuminate\Foundation\Console\Kernel /** @var \App\Console\Kernel $instance */ @@ -1511,7 +1588,7 @@ namespace Illuminate\Support\Facades { * @return \Illuminate\Foundation\Bus\PendingDispatch * @static */ - public static function queue($command, $parameters = array()) + public static function queue($command, $parameters = []) { //Method inherited from \Illuminate\Foundation\Console\Kernel /** @var \App\Console\Kernel $instance */ @@ -1586,7 +1663,7 @@ namespace Illuminate\Support\Facades { /** * Attempt to get the guard from the local cache. * - * @param string $name + * @param string|null $name * @return \Illuminate\Contracts\Auth\Guard|\Illuminate\Contracts\Auth\StatefulGuard * @static */ @@ -1729,6 +1806,18 @@ namespace Illuminate\Support\Facades { return $instance->provider($name, $callback); } + /** + * Determines if any guards have already been resolved. + * + * @return bool + * @static + */ + public static function hasResolvedGuards() + { + /** @var \Illuminate\Auth\AuthManager $instance */ + return $instance->hasResolvedGuards(); + } + /** * Create the user provider implementation for the driver. * @@ -1770,7 +1859,7 @@ namespace Illuminate\Support\Facades { /** * Get the ID for the currently authenticated user. * - * @return int|null + * @return int|string|null * @static */ public static function id() @@ -1786,7 +1875,7 @@ namespace Illuminate\Support\Facades { * @return bool * @static */ - public static function once($credentials = array()) + public static function once($credentials = []) { /** @var \Illuminate\Auth\SessionGuard $instance */ return $instance->once($credentials); @@ -1812,7 +1901,7 @@ namespace Illuminate\Support\Facades { * @return bool * @static */ - public static function validate($credentials = array()) + public static function validate($credentials = []) { /** @var \Illuminate\Auth\SessionGuard $instance */ return $instance->validate($credentials); @@ -1826,7 +1915,7 @@ namespace Illuminate\Support\Facades { * @return \Symfony\Component\HttpFoundation\Response|null * @static */ - public static function basic($field = 'email', $extraConditions = array()) + public static function basic($field = 'email', $extraConditions = []) { /** @var \Illuminate\Auth\SessionGuard $instance */ return $instance->basic($field, $extraConditions); @@ -1840,7 +1929,7 @@ namespace Illuminate\Support\Facades { * @return \Symfony\Component\HttpFoundation\Response|null * @static */ - public static function onceBasic($field = 'email', $extraConditions = array()) + public static function onceBasic($field = 'email', $extraConditions = []) { /** @var \Illuminate\Auth\SessionGuard $instance */ return $instance->onceBasic($field, $extraConditions); @@ -1854,7 +1943,7 @@ namespace Illuminate\Support\Facades { * @return bool * @static */ - public static function attempt($credentials = array(), $remember = false) + public static function attempt($credentials = [], $remember = false) { /** @var \Illuminate\Auth\SessionGuard $instance */ return $instance->attempt($credentials, $remember); @@ -1900,6 +1989,18 @@ namespace Illuminate\Support\Facades { $instance->logout(); } + /** + * Log the user out of the application on their current device only. + * + * @return void + * @static + */ + public static function logoutCurrentDevice() + { + /** @var \Illuminate\Auth\SessionGuard $instance */ + $instance->logoutCurrentDevice(); + } + /** * Invalidate other sessions for the current user. * @@ -2091,7 +2192,7 @@ namespace Illuminate\Support\Facades { } /** - * Determine if the current user is authenticated. + * Determine if current user is authenticated. If not, throw an exception. * * @return \App\User * @throws \Illuminate\Auth\AuthenticationException @@ -2181,13 +2282,14 @@ namespace Illuminate\Support\Facades { * Mix another object into the class. * * @param object $mixin + * @param bool $replace * @return void * @throws \ReflectionException * @static */ - public static function mixin($mixin) + public static function mixin($mixin, $replace = true) { - \Illuminate\Auth\SessionGuard::mixin($mixin); + \Illuminate\Auth\SessionGuard::mixin($mixin, $replace); } /** @@ -2214,7 +2316,7 @@ namespace Illuminate\Support\Facades { /** * Compile the view at the given path. * - * @param string $path + * @param string|null $path * @return void * @static */ @@ -2322,31 +2424,72 @@ namespace Illuminate\Support\Facades { * @return bool * @static */ - public static function check($name, $parameters = null) + public static function check($name, ...$parameters) { /** @var \Illuminate\View\Compilers\BladeCompiler $instance */ - return $instance->check($name, $parameters); + return $instance->check($name, ...$parameters); + } + + /** + * Register a class-based component alias directive. + * + * @param string $class + * @param string|null $alias + * @param string $prefix + * @return void + * @static + */ + public static function component($class, $alias = null, $prefix = '') + { + /** @var \Illuminate\View\Compilers\BladeCompiler $instance */ + $instance->component($class, $alias, $prefix); + } + + /** + * Register an array of class-based components. + * + * @param array $components + * @param string $prefix + * @return void + * @static + */ + public static function components($components, $prefix = '') + { + /** @var \Illuminate\View\Compilers\BladeCompiler $instance */ + $instance->components($components, $prefix); + } + + /** + * Get the registered class component aliases. + * + * @return array + * @static + */ + public static function getClassComponentAliases() + { + /** @var \Illuminate\View\Compilers\BladeCompiler $instance */ + return $instance->getClassComponentAliases(); } /** * Register a component alias directive. * * @param string $path - * @param string $alias + * @param string|null $alias * @return void * @static */ - public static function component($path, $alias = null) + public static function aliasComponent($path, $alias = null) { /** @var \Illuminate\View\Compilers\BladeCompiler $instance */ - $instance->component($path, $alias); + $instance->aliasComponent($path, $alias); } /** * Register an include alias directive. * * @param string $path - * @param string $alias + * @param string|null $alias * @return void * @static */ @@ -2356,12 +2499,27 @@ namespace Illuminate\Support\Facades { $instance->include($path, $alias); } + /** + * Register an include alias directive. + * + * @param string $path + * @param string|null $alias + * @return void + * @static + */ + public static function aliasInclude($path, $alias = null) + { + /** @var \Illuminate\View\Compilers\BladeCompiler $instance */ + $instance->aliasInclude($path, $alias); + } + /** * Register a handler for custom directives. * * @param string $name * @param callable $handler * @return void + * @throws \InvalidArgumentException * @static */ public static function directive($name, $handler) @@ -2382,6 +2540,19 @@ namespace Illuminate\Support\Facades { return $instance->getCustomDirectives(); } + /** + * Register a new precompiler. + * + * @param callable $precompiler + * @return void + * @static + */ + public static function precompiler($precompiler) + { + /** @var \Illuminate\View\Compilers\BladeCompiler $instance */ + $instance->precompiler($precompiler); + } + /** * Set the echo format to be used by the compiler. * @@ -2419,6 +2590,18 @@ namespace Illuminate\Support\Facades { $instance->withoutDoubleEncoding(); } + /** + * Indicate that component tags should not be compiled. + * + * @return void + * @static + */ + public static function withoutComponentTags() + { + /** @var \Illuminate\View\Compilers\BladeCompiler $instance */ + $instance->withoutComponentTags(); + } + /** * Get the path to the compiled version of a view. * @@ -2448,16 +2631,67 @@ namespace Illuminate\Support\Facades { } /** - * Compile the default values for the echo statement. + * Get a new component hash for a component name. + * + * @param string $component + * @return string + * @static + */ + public static function newComponentHash($component) + { + return \Illuminate\View\Compilers\BladeCompiler::newComponentHash($component); + } + + /** + * Compile a class component opening. + * + * @param string $component + * @param string $alias + * @param string $data + * @param string $hash + * @return string + * @static + */ + public static function compileClassComponentOpening($component, $alias, $data, $hash) + { + return \Illuminate\View\Compilers\BladeCompiler::compileClassComponentOpening($component, $alias, $data, $hash); + } + + /** + * Compile the end-component statements into valid PHP. + * + * @return string + * @static + */ + public static function compileEndComponentClass() + { + /** @var \Illuminate\View\Compilers\BladeCompiler $instance */ + return $instance->compileEndComponentClass(); + } + + /** + * Sanitize the given component attribute value. + * + * @param mixed $value + * @return mixed + * @static + */ + public static function sanitizeComponentAttribute($value) + { + return \Illuminate\View\Compilers\BladeCompiler::sanitizeComponentAttribute($value); + } + + /** + * Compile Blade echos into valid PHP. * * @param string $value * @return string * @static */ - public static function compileEchoDefaults($value) + public static function compileEchos($value) { /** @var \Illuminate\View\Compilers\BladeCompiler $instance */ - return $instance->compileEchoDefaults($value); + return $instance->compileEchos($value); } } @@ -2465,7 +2699,7 @@ namespace Illuminate\Support\Facades { /** * * - * @method static \Illuminate\Broadcasting\Broadcasters\Broadcaster channel(string $channel, callable|string $callback) + * @method static \Illuminate\Broadcasting\Broadcasters\Broadcaster channel(string $channel, callable|string $callback, array $options = []) * @method static mixed auth(\Illuminate\Http\Request $request) * @see \Illuminate\Contracts\Broadcasting\Factory */ @@ -2526,7 +2760,7 @@ namespace Illuminate\Support\Facades { /** * Get a driver instance. * - * @param string $driver + * @param string|null $driver * @return mixed * @static */ @@ -2655,7 +2889,6 @@ namespace Illuminate\Support\Facades { * * @param mixed $command * @return mixed - * @throws \RuntimeException * @static */ public static function dispatchToQueue($command) @@ -2664,6 +2897,20 @@ namespace Illuminate\Support\Facades { return $instance->dispatchToQueue($command); } + /** + * Dispatch a command to its appropriate handler after the current process. + * + * @param mixed $command + * @param mixed $handler + * @return void + * @static + */ + public static function dispatchAfterResponse($command, $handler = null) + { + /** @var \Illuminate\Bus\Dispatcher $instance */ + $instance->dispatchAfterResponse($command, $handler); + } + /** * Set the pipes through which commands should be piped before dispatching. * @@ -2693,7 +2940,7 @@ namespace Illuminate\Support\Facades { /** * Assert if a job was dispatched based on a truth-test callback. * - * @param string $command + * @param string|\Closure $command * @param callable|int|null $callback * @return void * @static @@ -2705,9 +2952,23 @@ namespace Illuminate\Support\Facades { } /** - * Determine if a job was dispatched based on a truth-test callback. + * Assert if a job was pushed a number of times. * * @param string $command + * @param int $times + * @return void + * @static + */ + public static function assertDispatchedTimes($command, $times = 1) + { + /** @var \Illuminate\Support\Testing\Fakes\BusFake $instance */ + $instance->assertDispatchedTimes($command, $times); + } + + /** + * Determine if a job was dispatched based on a truth-test callback. + * + * @param string|\Closure $command * @param callable|null $callback * @return void * @static @@ -2718,6 +2979,48 @@ namespace Illuminate\Support\Facades { $instance->assertNotDispatched($command, $callback); } + /** + * Assert if a job was dispatched after the response was sent based on a truth-test callback. + * + * @param string|\Closure $command + * @param callable|int|null $callback + * @return void + * @static + */ + public static function assertDispatchedAfterResponse($command, $callback = null) + { + /** @var \Illuminate\Support\Testing\Fakes\BusFake $instance */ + $instance->assertDispatchedAfterResponse($command, $callback); + } + + /** + * Assert if a job was pushed after the response was sent a number of times. + * + * @param string $command + * @param int $times + * @return void + * @static + */ + public static function assertDispatchedAfterResponseTimes($command, $times = 1) + { + /** @var \Illuminate\Support\Testing\Fakes\BusFake $instance */ + $instance->assertDispatchedAfterResponseTimes($command, $times); + } + + /** + * Determine if a job was dispatched based on a truth-test callback. + * + * @param string|\Closure $command + * @param callable|null $callback + * @return void + * @static + */ + public static function assertNotDispatchedAfterResponse($command, $callback = null) + { + /** @var \Illuminate\Support\Testing\Fakes\BusFake $instance */ + $instance->assertNotDispatchedAfterResponse($command, $callback); + } + /** * Get all of the jobs matching a truth-test callback. * @@ -2732,6 +3035,20 @@ namespace Illuminate\Support\Facades { return $instance->dispatched($command, $callback); } + /** + * Get all of the jobs dispatched after the response was sent matching a truth-test callback. + * + * @param string $command + * @param callable|null $callback + * @return \Illuminate\Support\Collection + * @static + */ + public static function dispatchedAfterResponse($command, $callback = null) + { + /** @var \Illuminate\Support\Testing\Fakes\BusFake $instance */ + return $instance->dispatchedAfterResponse($command, $callback); + } + /** * Determine if there are any stored commands for a given class. * @@ -2744,19 +3061,34 @@ namespace Illuminate\Support\Facades { /** @var \Illuminate\Support\Testing\Fakes\BusFake $instance */ return $instance->hasDispatched($command); } + + /** + * Determine if there are any stored commands for a given class. + * + * @param string $command + * @return bool + * @static + */ + public static function hasDispatchedAfterResponse($command) + { + /** @var \Illuminate\Support\Testing\Fakes\BusFake $instance */ + return $instance->hasDispatchedAfterResponse($command); + } } /** * * + * @method static \Illuminate\Contracts\Cache\Lock lock(string $name, int $seconds = 0, mixed $owner = null) + * @method static \Illuminate\Contracts\Cache\Lock restoreLock(string $name, string $owner) * @see \Illuminate\Cache\CacheManager * @see \Illuminate\Cache\Repository */ class Cache { /** - * Get a cache store instance by name. + * Get a cache store instance by name, wrapped in a repository. * * @param string|null $name * @return \Illuminate\Contracts\Cache\Repository @@ -2772,7 +3104,7 @@ namespace Illuminate\Support\Facades { * Get a cache driver instance. * * @param string|null $driver - * @return mixed + * @return \Illuminate\Contracts\Cache\Repository * @static */ public static function driver($driver = null) @@ -2794,6 +3126,18 @@ namespace Illuminate\Support\Facades { return $instance->repository($store); } + /** + * Re-set the event dispatcher on all resolved cache repositories. + * + * @return void + * @static + */ + public static function refreshEventDispatcher() + { + /** @var \Illuminate\Cache\CacheManager $instance */ + $instance->refreshEventDispatcher(); + } + /** * Get the default cache driver name. * @@ -2819,6 +3163,19 @@ namespace Illuminate\Support\Facades { $instance->setDefaultDriver($name); } + /** + * Unset the given driver instances. + * + * @param array|string|null $name + * @return \Illuminate\Cache\CacheManager + * @static + */ + public static function forgetDriver($name = null) + { + /** @var \Illuminate\Cache\CacheManager $instance */ + return $instance->forgetDriver($name); + } + /** * Register a custom driver creator Closure. * @@ -2846,6 +3203,19 @@ namespace Illuminate\Support\Facades { return $instance->has($key); } + /** + * Determine if an item doesn't exist in the cache. + * + * @param string $key + * @return bool + * @static + */ + public static function missing($key) + { + /** @var \Illuminate\Cache\Repository $instance */ + return $instance->missing($key); + } + /** * Retrieve an item from the cache by key. * @@ -2911,14 +3281,14 @@ namespace Illuminate\Support\Facades { * * @param string $key * @param mixed $value - * @param \DateTimeInterface|\DateInterval|float|int|null $minutes - * @return void + * @param \DateTimeInterface|\DateInterval|int|null $ttl + * @return bool * @static */ - public static function put($key, $value, $minutes = null) + public static function put($key, $value, $ttl = null) { /** @var \Illuminate\Cache\Repository $instance */ - $instance->put($key, $value, $minutes); + return $instance->put($key, $value, $ttl); } /** @@ -2941,17 +3311,17 @@ namespace Illuminate\Support\Facades { } /** - * Store multiple items in the cache for a given number of minutes. + * Store multiple items in the cache for a given number of seconds. * * @param array $values - * @param \DateTimeInterface|\DateInterval|float|int $minutes - * @return void + * @param \DateTimeInterface|\DateInterval|int|null $ttl + * @return bool * @static */ - public static function putMany($values, $minutes) + public static function putMany($values, $ttl = null) { /** @var \Illuminate\Cache\Repository $instance */ - $instance->putMany($values, $minutes); + return $instance->putMany($values, $ttl); } /** @@ -2978,14 +3348,14 @@ namespace Illuminate\Support\Facades { * * @param string $key * @param mixed $value - * @param \DateTimeInterface|\DateInterval|float|int $minutes + * @param \DateTimeInterface|\DateInterval|int|null $ttl * @return bool * @static */ - public static function add($key, $value, $minutes) + public static function add($key, $value, $ttl = null) { /** @var \Illuminate\Cache\Repository $instance */ - return $instance->add($key, $value, $minutes); + return $instance->add($key, $value, $ttl); } /** @@ -3021,32 +3391,32 @@ namespace Illuminate\Support\Facades { * * @param string $key * @param mixed $value - * @return void + * @return bool * @static */ public static function forever($key, $value) { /** @var \Illuminate\Cache\Repository $instance */ - $instance->forever($key, $value); + return $instance->forever($key, $value); } /** - * Get an item from the cache, or store the default value. + * Get an item from the cache, or execute the given Closure and store the result. * * @param string $key - * @param \DateTimeInterface|\DateInterval|float|int $minutes + * @param \DateTimeInterface|\DateInterval|int|null $ttl * @param \Closure $callback * @return mixed * @static */ - public static function remember($key, $minutes, $callback) + public static function remember($key, $ttl, $callback) { /** @var \Illuminate\Cache\Repository $instance */ - return $instance->remember($key, $minutes, $callback); + return $instance->remember($key, $ttl, $callback); } /** - * Get an item from the cache, or store the default value forever. + * Get an item from the cache, or execute the given Closure and store the result forever. * * @param string $key * @param \Closure $callback @@ -3060,7 +3430,7 @@ namespace Illuminate\Support\Facades { } /** - * Get an item from the cache, or store the default value forever. + * Get an item from the cache, or execute the given Closure and store the result forever. * * @param string $key * @param \Closure $callback @@ -3146,7 +3516,7 @@ namespace Illuminate\Support\Facades { /** * Get the default cache time. * - * @return float|int + * @return int|null * @static */ public static function getDefaultCacheTime() @@ -3156,16 +3526,16 @@ namespace Illuminate\Support\Facades { } /** - * Set the default cache time in minutes. + * Set the default cache time in seconds. * - * @param float|int $minutes + * @param int|null $seconds * @return \Illuminate\Cache\Repository * @static */ - public static function setDefaultCacheTime($minutes) + public static function setDefaultCacheTime($seconds) { /** @var \Illuminate\Cache\Repository $instance */ - return $instance->setDefaultCacheTime($minutes); + return $instance->setDefaultCacheTime($seconds); } /** @@ -3180,6 +3550,18 @@ namespace Illuminate\Support\Facades { return $instance->getStore(); } + /** + * Get the event dispatcher instance. + * + * @return \Illuminate\Contracts\Events\Dispatcher + * @static + */ + public static function getEventDispatcher() + { + /** @var \Illuminate\Cache\Repository $instance */ + return $instance->getEventDispatcher(); + } + /** * Set the event dispatcher instance. * @@ -3263,13 +3645,14 @@ namespace Illuminate\Support\Facades { * Mix another object into the class. * * @param object $mixin + * @param bool $replace * @return void * @throws \ReflectionException * @static */ - public static function mixin($mixin) + public static function mixin($mixin, $replace = true) { - \Illuminate\Cache\Repository::mixin($mixin); + \Illuminate\Cache\Repository::mixin($mixin, $replace); } /** @@ -3518,8 +3901,8 @@ namespace Illuminate\Support\Facades { * @param string $name * @param string $value * @param int $minutes - * @param string $path - * @param string $domain + * @param string|null $path + * @param string|null $domain * @param bool|null $secure * @param bool $httpOnly * @param bool $raw @@ -3538,8 +3921,8 @@ namespace Illuminate\Support\Facades { * * @param string $name * @param string $value - * @param string $path - * @param string $domain + * @param string|null $path + * @param string|null $domain * @param bool|null $secure * @param bool $httpOnly * @param bool $raw @@ -3557,8 +3940,8 @@ namespace Illuminate\Support\Facades { * Expire the given cookie. * * @param string $name - * @param string $path - * @param string $domain + * @param string|null $path + * @param string|null $domain * @return \Symfony\Component\HttpFoundation\Cookie * @static */ @@ -3572,13 +3955,14 @@ namespace Illuminate\Support\Facades { * Determine if a cookie has been queued. * * @param string $key + * @param string|null $path * @return bool * @static */ - public static function hasQueued($key) + public static function hasQueued($key, $path = null) { /** @var \Illuminate\Cookie\CookieJar $instance */ - return $instance->hasQueued($key); + return $instance->hasQueued($key, $path); } /** @@ -3586,13 +3970,14 @@ namespace Illuminate\Support\Facades { * * @param string $key * @param mixed $default - * @return \Symfony\Component\HttpFoundation\Cookie + * @param string|null $path + * @return \Symfony\Component\HttpFoundation\Cookie|null * @static */ - public static function queued($key, $default = null) + public static function queued($key, $default = null, $path = null) { /** @var \Illuminate\Cookie\CookieJar $instance */ - return $instance->queued($key, $default); + return $instance->queued($key, $default, $path); } /** @@ -3602,23 +3987,24 @@ namespace Illuminate\Support\Facades { * @return void * @static */ - public static function queue($parameters = null) + public static function queue(...$parameters) { /** @var \Illuminate\Cookie\CookieJar $instance */ - $instance->queue($parameters); + $instance->queue(...$parameters); } /** * Remove a cookie from the queue. * * @param string $name + * @param string|null $path * @return void * @static */ - public static function unqueue($name) + public static function unqueue($name, $path = null) { /** @var \Illuminate\Cookie\CookieJar $instance */ - $instance->unqueue($name); + $instance->unqueue($name, $path); } /** @@ -3627,7 +4013,7 @@ namespace Illuminate\Support\Facades { * @param string $path * @param string $domain * @param bool $secure - * @param string $sameSite + * @param string|null $sameSite * @return \Illuminate\Cookie\CookieJar * @static */ @@ -3648,6 +4034,45 @@ namespace Illuminate\Support\Facades { /** @var \Illuminate\Cookie\CookieJar $instance */ return $instance->getQueuedCookies(); } + + /** + * Register a custom macro. + * + * @param string $name + * @param object|callable $macro + * @return void + * @static + */ + public static function macro($name, $macro) + { + \Illuminate\Cookie\CookieJar::macro($name, $macro); + } + + /** + * Mix another object into the class. + * + * @param object $mixin + * @param bool $replace + * @return void + * @throws \ReflectionException + * @static + */ + public static function mixin($mixin, $replace = true) + { + \Illuminate\Cookie\CookieJar::mixin($mixin, $replace); + } + + /** + * Checks if macro is registered. + * + * @param string $name + * @return bool + * @static + */ + public static function hasMacro($name) + { + return \Illuminate\Cookie\CookieJar::hasMacro($name); + } } @@ -3703,6 +4128,7 @@ namespace Illuminate\Support\Facades { * * @param string $value * @return string + * @throws \Illuminate\Contracts\Encryption\EncryptException * @static */ public static function encryptString($value) @@ -3714,7 +4140,7 @@ namespace Illuminate\Support\Facades { /** * Decrypt the given value. * - * @param mixed $payload + * @param string $payload * @param bool $unserialize * @return mixed * @throws \Illuminate\Contracts\Encryption\DecryptException @@ -3731,6 +4157,7 @@ namespace Illuminate\Support\Facades { * * @param string $payload * @return string + * @throws \Illuminate\Contracts\Encryption\DecryptException * @static */ public static function decryptString($payload) @@ -3764,7 +4191,7 @@ namespace Illuminate\Support\Facades { /** * Get a database connection instance. * - * @param string $name + * @param string|null $name * @return \Illuminate\Database\Connection * @static */ @@ -3777,7 +4204,7 @@ namespace Illuminate\Support\Facades { /** * Disconnect from the given database and remove from local cache. * - * @param string $name + * @param string|null $name * @return void * @static */ @@ -3790,7 +4217,7 @@ namespace Illuminate\Support\Facades { /** * Disconnect from the given database. * - * @param string $name + * @param string|null $name * @return void * @static */ @@ -3803,7 +4230,7 @@ namespace Illuminate\Support\Facades { /** * Reconnect to the given database. * - * @param string $name + * @param string|null $name * @return \Illuminate\Database\Connection * @static */ @@ -3813,6 +4240,20 @@ namespace Illuminate\Support\Facades { return $instance->reconnect($name); } + /** + * Set the default database connection for the callback execution. + * + * @param string $name + * @param callable $callback + * @return mixed + * @static + */ + public static function usingConnection($name, $callback) + { + /** @var \Illuminate\Database\DatabaseManager $instance */ + return $instance->usingConnection($name, $callback); + } + /** * Get the default connection name. * @@ -3888,6 +4329,19 @@ namespace Illuminate\Support\Facades { return $instance->getConnections(); } + /** + * Set the database reconnector callback. + * + * @param callable $reconnector + * @return void + * @static + */ + public static function setReconnector($reconnector) + { + /** @var \Illuminate\Database\DatabaseManager $instance */ + $instance->setReconnector($reconnector); + } + /** * Get a schema builder instance for the connection. * @@ -3900,20 +4354,6 @@ namespace Illuminate\Support\Facades { return $instance->getSchemaBuilder(); } - /** - * Bind values to their parameters in the given statement. - * - * @param \PDOStatement $statement - * @param array $bindings - * @return void - * @static - */ - public static function bindValues($statement, $bindings) - { - /** @var \Illuminate\Database\MySqlConnection $instance */ - $instance->bindValues($statement, $bindings); - } - /** * Set the query grammar to the default implementation. * @@ -3956,15 +4396,16 @@ namespace Illuminate\Support\Facades { /** * Begin a fluent query against a database table. * - * @param string $table + * @param \Closure|\Illuminate\Database\Query\Builder|string $table + * @param string|null $as * @return \Illuminate\Database\Query\Builder * @static */ - public static function table($table) + public static function table($table, $as = null) { //Method inherited from \Illuminate\Database\Connection /** @var \Illuminate\Database\MySqlConnection $instance */ - return $instance->table($table); + return $instance->table($table, $as); } /** @@ -3989,7 +4430,7 @@ namespace Illuminate\Support\Facades { * @return mixed * @static */ - public static function selectOne($query, $bindings = array(), $useReadPdo = true) + public static function selectOne($query, $bindings = [], $useReadPdo = true) { //Method inherited from \Illuminate\Database\Connection /** @var \Illuminate\Database\MySqlConnection $instance */ @@ -4004,7 +4445,7 @@ namespace Illuminate\Support\Facades { * @return array * @static */ - public static function selectFromWriteConnection($query, $bindings = array()) + public static function selectFromWriteConnection($query, $bindings = []) { //Method inherited from \Illuminate\Database\Connection /** @var \Illuminate\Database\MySqlConnection $instance */ @@ -4020,7 +4461,7 @@ namespace Illuminate\Support\Facades { * @return array * @static */ - public static function select($query, $bindings = array(), $useReadPdo = true) + public static function select($query, $bindings = [], $useReadPdo = true) { //Method inherited from \Illuminate\Database\Connection /** @var \Illuminate\Database\MySqlConnection $instance */ @@ -4036,7 +4477,7 @@ namespace Illuminate\Support\Facades { * @return \Generator * @static */ - public static function cursor($query, $bindings = array(), $useReadPdo = true) + public static function cursor($query, $bindings = [], $useReadPdo = true) { //Method inherited from \Illuminate\Database\Connection /** @var \Illuminate\Database\MySqlConnection $instance */ @@ -4051,7 +4492,7 @@ namespace Illuminate\Support\Facades { * @return bool * @static */ - public static function insert($query, $bindings = array()) + public static function insert($query, $bindings = []) { //Method inherited from \Illuminate\Database\Connection /** @var \Illuminate\Database\MySqlConnection $instance */ @@ -4066,7 +4507,7 @@ namespace Illuminate\Support\Facades { * @return int * @static */ - public static function update($query, $bindings = array()) + public static function update($query, $bindings = []) { //Method inherited from \Illuminate\Database\Connection /** @var \Illuminate\Database\MySqlConnection $instance */ @@ -4081,7 +4522,7 @@ namespace Illuminate\Support\Facades { * @return int * @static */ - public static function delete($query, $bindings = array()) + public static function delete($query, $bindings = []) { //Method inherited from \Illuminate\Database\Connection /** @var \Illuminate\Database\MySqlConnection $instance */ @@ -4096,7 +4537,7 @@ namespace Illuminate\Support\Facades { * @return bool * @static */ - public static function statement($query, $bindings = array()) + public static function statement($query, $bindings = []) { //Method inherited from \Illuminate\Database\Connection /** @var \Illuminate\Database\MySqlConnection $instance */ @@ -4111,7 +4552,7 @@ namespace Illuminate\Support\Facades { * @return int * @static */ - public static function affectingStatement($query, $bindings = array()) + public static function affectingStatement($query, $bindings = []) { //Method inherited from \Illuminate\Database\Connection /** @var \Illuminate\Database\MySqlConnection $instance */ @@ -4146,6 +4587,21 @@ namespace Illuminate\Support\Facades { return $instance->pretend($callback); } + /** + * Bind values to their parameters in the given statement. + * + * @param \PDOStatement $statement + * @param array $bindings + * @return void + * @static + */ + public static function bindValues($statement, $bindings) + { + //Method inherited from \Illuminate\Database\Connection + /** @var \Illuminate\Database\MySqlConnection $instance */ + $instance->bindValues($statement, $bindings); + } + /** * Prepare the query bindings for execution. * @@ -4285,6 +4741,19 @@ namespace Illuminate\Support\Facades { return $instance->getPdo(); } + /** + * Get the current PDO connection parameter without executing any reconnect logic. + * + * @return \PDO|\Closure|null + * @static + */ + public static function getRawPdo() + { + //Method inherited from \Illuminate\Database\Connection + /** @var \Illuminate\Database\MySqlConnection $instance */ + return $instance->getRawPdo(); + } + /** * Get the current PDO connection used for reading. * @@ -4298,6 +4767,19 @@ namespace Illuminate\Support\Facades { return $instance->getReadPdo(); } + /** + * Get the current read PDO connection parameter without executing any reconnect logic. + * + * @return \PDO|\Closure|null + * @static + */ + public static function getRawReadPdo() + { + //Method inherited from \Illuminate\Database\Connection + /** @var \Illuminate\Database\MySqlConnection $instance */ + return $instance->getRawReadPdo(); + } + /** * Set the PDO connection. * @@ -4326,20 +4808,6 @@ namespace Illuminate\Support\Facades { return $instance->setReadPdo($pdo); } - /** - * Set the reconnect instance on the connection. - * - * @param callable $reconnector - * @return \Illuminate\Database\MySqlConnection - * @static - */ - public static function setReconnector($reconnector) - { - //Method inherited from \Illuminate\Database\Connection - /** @var \Illuminate\Database\MySqlConnection $instance */ - return $instance->setReconnector($reconnector); - } - /** * Get the database connection name. * @@ -4397,14 +4865,14 @@ namespace Illuminate\Support\Facades { * Set the query grammar used by the connection. * * @param \Illuminate\Database\Query\Grammars\Grammar $grammar - * @return void + * @return \Illuminate\Database\MySqlConnection * @static */ public static function setQueryGrammar($grammar) { //Method inherited from \Illuminate\Database\Connection /** @var \Illuminate\Database\MySqlConnection $instance */ - $instance->setQueryGrammar($grammar); + return $instance->setQueryGrammar($grammar); } /** @@ -4424,14 +4892,14 @@ namespace Illuminate\Support\Facades { * Set the schema grammar used by the connection. * * @param \Illuminate\Database\Schema\Grammars\Grammar $grammar - * @return void + * @return \Illuminate\Database\MySqlConnection * @static */ public static function setSchemaGrammar($grammar) { //Method inherited from \Illuminate\Database\Connection /** @var \Illuminate\Database\MySqlConnection $instance */ - $instance->setSchemaGrammar($grammar); + return $instance->setSchemaGrammar($grammar); } /** @@ -4451,14 +4919,14 @@ namespace Illuminate\Support\Facades { * Set the query post processor used by the connection. * * @param \Illuminate\Database\Query\Processors\Processor $processor - * @return void + * @return \Illuminate\Database\MySqlConnection * @static */ public static function setPostProcessor($processor) { //Method inherited from \Illuminate\Database\Connection /** @var \Illuminate\Database\MySqlConnection $instance */ - $instance->setPostProcessor($processor); + return $instance->setPostProcessor($processor); } /** @@ -4478,14 +4946,14 @@ namespace Illuminate\Support\Facades { * Set the event dispatcher instance on the connection. * * @param \Illuminate\Contracts\Events\Dispatcher $events - * @return void + * @return \Illuminate\Database\MySqlConnection * @static */ public static function setEventDispatcher($events) { //Method inherited from \Illuminate\Database\Connection /** @var \Illuminate\Database\MySqlConnection $instance */ - $instance->setEventDispatcher($events); + return $instance->setEventDispatcher($events); } /** @@ -4502,7 +4970,7 @@ namespace Illuminate\Support\Facades { } /** - * Determine if the connection in a "dry run". + * Determine if the connection is in a "dry run". * * @return bool * @static @@ -4596,7 +5064,7 @@ namespace Illuminate\Support\Facades { * Set the name of the connected database. * * @param string $database - * @return string + * @return \Illuminate\Database\MySqlConnection * @static */ public static function setDatabaseName($database) @@ -4623,14 +5091,14 @@ namespace Illuminate\Support\Facades { * Set the table prefix in use by the connection. * * @param string $prefix - * @return void + * @return \Illuminate\Database\MySqlConnection * @static */ public static function setTablePrefix($prefix) { //Method inherited from \Illuminate\Database\Connection /** @var \Illuminate\Database\MySqlConnection $instance */ - $instance->setTablePrefix($prefix); + return $instance->setTablePrefix($prefix); } /** @@ -4680,7 +5148,7 @@ namespace Illuminate\Support\Facades { * @param \Closure $callback * @param int $attempts * @return mixed - * @throws \Exception|\Throwable + * @throws \Throwable * @static */ public static function transaction($callback, $attempts = 1) @@ -4694,7 +5162,7 @@ namespace Illuminate\Support\Facades { * Start a new database transaction. * * @return void - * @throws \Exception + * @throws \Throwable * @static */ public static function beginTransaction() @@ -4708,6 +5176,7 @@ namespace Illuminate\Support\Facades { * Commit the active database transaction. * * @return void + * @throws \Throwable * @static */ public static function commit() @@ -4722,7 +5191,7 @@ namespace Illuminate\Support\Facades { * * @param int|null $toLevel * @return void - * @throws \Exception + * @throws \Throwable * @static */ public static function rollBack($toLevel = null) @@ -4758,7 +5227,7 @@ namespace Illuminate\Support\Facades { * Register an event listener with the dispatcher. * * @param string|array $events - * @param mixed $listener + * @param \Closure|string $listener * @return void * @static */ @@ -4781,6 +5250,19 @@ namespace Illuminate\Support\Facades { return $instance->hasListeners($eventName); } + /** + * Determine if the given event has any wildcard listeners. + * + * @param string $eventName + * @return bool + * @static + */ + public static function hasWildcardListeners($eventName) + { + /** @var \Illuminate\Events\Dispatcher $instance */ + return $instance->hasWildcardListeners($eventName); + } + /** * Register an event and payload to be fired later. * @@ -4789,7 +5271,7 @@ namespace Illuminate\Support\Facades { * @return void * @static */ - public static function push($event, $payload = array()) + public static function push($event, $payload = []) { /** @var \Illuminate\Events\Dispatcher $instance */ $instance->push($event, $payload); @@ -4829,7 +5311,7 @@ namespace Illuminate\Support\Facades { * @return array|null * @static */ - public static function until($event, $payload = array()) + public static function until($event, $payload = []) { /** @var \Illuminate\Events\Dispatcher $instance */ return $instance->until($event, $payload); @@ -4844,22 +5326,7 @@ namespace Illuminate\Support\Facades { * @return array|null * @static */ - public static function fire($event, $payload = array(), $halt = false) - { - /** @var \Illuminate\Events\Dispatcher $instance */ - return $instance->fire($event, $payload, $halt); - } - - /** - * Fire an event and call the listeners. - * - * @param string|object $event - * @param mixed $payload - * @param bool $halt - * @return array|null - * @static - */ - public static function dispatch($event, $payload = array(), $halt = false) + public static function dispatch($event, $payload = [], $halt = false) { /** @var \Illuminate\Events\Dispatcher $instance */ return $instance->dispatch($event, $payload, $halt); @@ -4944,10 +5411,49 @@ namespace Illuminate\Support\Facades { return $instance->setQueueResolver($resolver); } + /** + * Register a custom macro. + * + * @param string $name + * @param object|callable $macro + * @return void + * @static + */ + public static function macro($name, $macro) + { + \Illuminate\Events\Dispatcher::macro($name, $macro); + } + + /** + * Mix another object into the class. + * + * @param object $mixin + * @param bool $replace + * @return void + * @throws \ReflectionException + * @static + */ + public static function mixin($mixin, $replace = true) + { + \Illuminate\Events\Dispatcher::mixin($mixin, $replace); + } + + /** + * Checks if macro is registered. + * + * @param string $name + * @return bool + * @static + */ + public static function hasMacro($name) + { + return \Illuminate\Events\Dispatcher::hasMacro($name); + } + /** * Assert if an event was dispatched based on a truth-test callback. * - * @param string $event + * @param string|\Closure $event * @param callable|int|null $callback * @return void * @static @@ -4975,7 +5481,7 @@ namespace Illuminate\Support\Facades { /** * Determine if an event was dispatched based on a truth-test callback. * - * @param string $event + * @param string|\Closure $event * @param callable|null $callback * @return void * @static @@ -5035,6 +5541,19 @@ namespace Illuminate\Support\Facades { return $instance->exists($path); } + /** + * Determine if a file or directory is missing. + * + * @param string $path + * @return bool + * @static + */ + public static function missing($path) + { + /** @var \Illuminate\Filesystem\Filesystem $instance */ + return $instance->missing($path); + } + /** * Get the contents of a file. * @@ -5109,7 +5628,7 @@ namespace Illuminate\Support\Facades { * @param string $path * @param string $contents * @param bool $lock - * @return int + * @return int|bool * @static */ public static function put($path, $contents, $lock = false) @@ -5118,6 +5637,20 @@ namespace Illuminate\Support\Facades { return $instance->put($path, $contents, $lock); } + /** + * Write the contents of a file, replacing it atomically if it already exists. + * + * @param string $path + * @param string $content + * @return void + * @static + */ + public static function replace($path, $content) + { + /** @var \Illuminate\Filesystem\Filesystem $instance */ + $instance->replace($path, $content); + } + /** * Prepend to a file. * @@ -5150,7 +5683,7 @@ namespace Illuminate\Support\Facades { * Get or set UNIX mode of a file or directory. * * @param string $path - * @param int $mode + * @param int|null $mode * @return mixed * @static */ @@ -5202,7 +5735,7 @@ namespace Illuminate\Support\Facades { } /** - * Create a hard link to the target file or directory. + * Create a symlink to the target file or directory. On Windows, a hard link is created if the target is a file. * * @param string $target * @param string $link @@ -5267,6 +5800,19 @@ namespace Illuminate\Support\Facades { return $instance->extension($path); } + /** + * Guess the file extension from the mime-type of a given file. + * + * @param string $path + * @return string|null + * @static + */ + public static function guessExtension($path) + { + /** @var \Illuminate\Filesystem\Filesystem $instance */ + return $instance->guessExtension($path); + } + /** * Get the file type of a given file. * @@ -5426,6 +5972,21 @@ namespace Illuminate\Support\Facades { return $instance->directories($directory); } + /** + * Ensure a directory exists. + * + * @param string $path + * @param int $mode + * @param bool $recursive + * @return void + * @static + */ + public static function ensureDirectoryExists($path, $mode = 493, $recursive = true) + { + /** @var \Illuminate\Filesystem\Filesystem $instance */ + $instance->ensureDirectoryExists($path, $mode, $recursive); + } + /** * Create a directory. * @@ -5462,7 +6023,7 @@ namespace Illuminate\Support\Facades { * * @param string $directory * @param string $destination - * @param int $options + * @param int|null $options * @return bool * @static */ @@ -5531,13 +6092,14 @@ namespace Illuminate\Support\Facades { * Mix another object into the class. * * @param object $mixin + * @param bool $replace * @return void * @throws \ReflectionException * @static */ - public static function mixin($mixin) + public static function mixin($mixin, $replace = true) { - \Illuminate\Filesystem\Filesystem::mixin($mixin); + \Illuminate\Filesystem\Filesystem::mixin($mixin, $replace); } /** @@ -5652,7 +6214,7 @@ namespace Illuminate\Support\Facades { * @return bool * @static */ - public static function allows($ability, $arguments = array()) + public static function allows($ability, $arguments = []) { /** @var \Illuminate\Auth\Access\Gate $instance */ return $instance->allows($ability, $arguments); @@ -5666,7 +6228,7 @@ namespace Illuminate\Support\Facades { * @return bool * @static */ - public static function denies($ability, $arguments = array()) + public static function denies($ability, $arguments = []) { /** @var \Illuminate\Auth\Access\Gate $instance */ return $instance->denies($ability, $arguments); @@ -5680,7 +6242,7 @@ namespace Illuminate\Support\Facades { * @return bool * @static */ - public static function check($abilities, $arguments = array()) + public static function check($abilities, $arguments = []) { /** @var \Illuminate\Auth\Access\Gate $instance */ return $instance->check($abilities, $arguments); @@ -5694,12 +6256,26 @@ namespace Illuminate\Support\Facades { * @return bool * @static */ - public static function any($abilities, $arguments = array()) + public static function any($abilities, $arguments = []) { /** @var \Illuminate\Auth\Access\Gate $instance */ return $instance->any($abilities, $arguments); } + /** + * Determine if all of the given abilities should be denied for the current user. + * + * @param \Illuminate\Auth\Access\iterable|string $abilities + * @param array|mixed $arguments + * @return bool + * @static + */ + public static function none($abilities, $arguments = []) + { + /** @var \Illuminate\Auth\Access\Gate $instance */ + return $instance->none($abilities, $arguments); + } + /** * Determine if the given ability should be granted for the current user. * @@ -5709,12 +6285,41 @@ namespace Illuminate\Support\Facades { * @throws \Illuminate\Auth\Access\AuthorizationException * @static */ - public static function authorize($ability, $arguments = array()) + public static function authorize($ability, $arguments = []) { /** @var \Illuminate\Auth\Access\Gate $instance */ return $instance->authorize($ability, $arguments); } + /** + * Inspect the user for the given ability. + * + * @param string $ability + * @param array|mixed $arguments + * @return \Illuminate\Auth\Access\Response + * @static + */ + public static function inspect($ability, $arguments = []) + { + /** @var \Illuminate\Auth\Access\Gate $instance */ + return $instance->inspect($ability, $arguments); + } + + /** + * Get the raw result from the authorization callback. + * + * @param string $ability + * @param array|mixed $arguments + * @return mixed + * @throws \Illuminate\Auth\Access\AuthorizationException + * @static + */ + public static function raw($ability, $arguments = []) + { + /** @var \Illuminate\Auth\Access\Gate $instance */ + return $instance->raw($ability, $arguments); + } + /** * Get a policy instance for a given class. * @@ -5728,11 +6333,25 @@ namespace Illuminate\Support\Facades { return $instance->getPolicyFor($class); } + /** + * Specify a callback to be used to guess policy names. + * + * @param callable $callback + * @return \Illuminate\Auth\Access\Gate + * @static + */ + public static function guessPolicyNamesUsing($callback) + { + /** @var \Illuminate\Auth\Access\Gate $instance */ + return $instance->guessPolicyNamesUsing($callback); + } + /** * Build a policy class instance of the given type. * * @param object|string $class * @return mixed + * @throws \Illuminate\Contracts\Container\BindingResolutionException * @static */ public static function resolvePolicy($class) @@ -5800,7 +6419,7 @@ namespace Illuminate\Support\Facades { } /** - * Create an instance of the Argon2 hash Driver. + * Create an instance of the Argon2i hash Driver. * * @return \Illuminate\Hashing\ArgonHasher * @static @@ -5811,6 +6430,18 @@ namespace Illuminate\Support\Facades { return $instance->createArgonDriver(); } + /** + * Create an instance of the Argon2id hash Driver. + * + * @return \Illuminate\Hashing\Argon2IdHasher + * @static + */ + public static function createArgon2idDriver() + { + /** @var \Illuminate\Hashing\HashManager $instance */ + return $instance->createArgon2idDriver(); + } + /** * Get information about the given hashed value. * @@ -5832,7 +6463,7 @@ namespace Illuminate\Support\Facades { * @return string * @static */ - public static function make($value, $options = array()) + public static function make($value, $options = []) { /** @var \Illuminate\Hashing\HashManager $instance */ return $instance->make($value, $options); @@ -5847,7 +6478,7 @@ namespace Illuminate\Support\Facades { * @return bool * @static */ - public static function check($value, $hashedValue, $options = array()) + public static function check($value, $hashedValue, $options = []) { /** @var \Illuminate\Hashing\HashManager $instance */ return $instance->check($value, $hashedValue, $options); @@ -5861,7 +6492,7 @@ namespace Illuminate\Support\Facades { * @return bool * @static */ - public static function needsRehash($hashedValue, $options = array()) + public static function needsRehash($hashedValue, $options = []) { /** @var \Illuminate\Hashing\HashManager $instance */ return $instance->needsRehash($hashedValue, $options); @@ -5882,7 +6513,7 @@ namespace Illuminate\Support\Facades { /** * Get a driver instance. * - * @param string $driver + * @param string|null $driver * @return mixed * @throws \InvalidArgumentException * @static @@ -5960,21 +6591,6 @@ namespace Illuminate\Support\Facades { return $instance->has($key, $locale, $fallback); } - /** - * Get the translation for a given key. - * - * @param string $key - * @param array $replace - * @param string $locale - * @return string|array|null - * @static - */ - public static function trans($key, $replace = array(), $locale = null) - { - /** @var \Illuminate\Translation\Translator $instance */ - return $instance->trans($key, $replace, $locale); - } - /** * Get the translation for the given key. * @@ -5982,57 +6598,26 @@ namespace Illuminate\Support\Facades { * @param array $replace * @param string|null $locale * @param bool $fallback - * @return string|array|null + * @return string|array * @static */ - public static function get($key, $replace = array(), $locale = null, $fallback = true) + public static function get($key, $replace = [], $locale = null, $fallback = true) { /** @var \Illuminate\Translation\Translator $instance */ return $instance->get($key, $replace, $locale, $fallback); } - /** - * Get the translation for a given key from the JSON translation files. - * - * @param string $key - * @param array $replace - * @param string $locale - * @return string|array|null - * @static - */ - public static function getFromJson($key, $replace = array(), $locale = null) - { - /** @var \Illuminate\Translation\Translator $instance */ - return $instance->getFromJson($key, $replace, $locale); - } - /** * Get a translation according to an integer value. * * @param string $key - * @param int|array|\Countable $number + * @param \Countable|int|array $number * @param array $replace - * @param string $locale + * @param string|null $locale * @return string * @static */ - public static function transChoice($key, $number, $replace = array(), $locale = null) - { - /** @var \Illuminate\Translation\Translator $instance */ - return $instance->transChoice($key, $number, $replace, $locale); - } - - /** - * Get a translation according to an integer value. - * - * @param string $key - * @param int|array|\Countable $number - * @param array $replace - * @param string $locale - * @return string - * @static - */ - public static function choice($key, $number, $replace = array(), $locale = null) + public static function choice($key, $number, $replace = [], $locale = null) { /** @var \Illuminate\Translation\Translator $instance */ return $instance->choice($key, $number, $replace, $locale); @@ -6252,13 +6837,14 @@ namespace Illuminate\Support\Facades { * Mix another object into the class. * * @param object $mixin + * @param bool $replace * @return void * @throws \ReflectionException * @static */ - public static function mixin($mixin) + public static function mixin($mixin, $replace = true) { - \Illuminate\Translation\Translator::mixin($mixin); + \Illuminate\Translation\Translator::mixin($mixin, $replace); } /** @@ -6282,118 +6868,6 @@ namespace Illuminate\Support\Facades { */ class Log { - /** - * Adds a log record at the DEBUG level. - * - * @param string $message The log message - * @param array $context The log context - * @return bool Whether the record has been processed - * @static - */ - public static function debug($message, $context = array()) - { - /** @var \Monolog\Logger $instance */ - return $instance->addDebug($message, $context); - } - - /** - * Adds a log record at the INFO level. - * - * @param string $message The log message - * @param array $context The log context - * @return bool Whether the record has been processed - * @static - */ - public static function info($message, $context = array()) - { - /** @var \Monolog\Logger $instance */ - return $instance->addInfo($message, $context); - } - - /** - * Adds a log record at the NOTICE level. - * - * @param string $message The log message - * @param array $context The log context - * @return bool Whether the record has been processed - * @static - */ - public static function notice($message, $context = array()) - { - /** @var \Monolog\Logger $instance */ - return $instance->addNotice($message, $context); - } - - /** - * Adds a log record at the WARNING level. - * - * @param string $message The log message - * @param array $context The log context - * @return bool Whether the record has been processed - * @static - */ - public static function warning($message, $context = array()) - { - /** @var \Monolog\Logger $instance */ - return $instance->addWarning($message, $context); - } - - /** - * Adds a log record at the ERROR level. - * - * @param string $message The log message - * @param array $context The log context - * @return bool Whether the record has been processed - * @static - */ - public static function error($message, $context = array()) - { - /** @var \Monolog\Logger $instance */ - return $instance->addError($message, $context); - } - - /** - * Adds a log record at the CRITICAL level. - * - * @param string $message The log message - * @param array $context The log context - * @return bool Whether the record has been processed - * @static - */ - public static function critical($message, $context = array()) - { - /** @var \Monolog\Logger $instance */ - return $instance->addCritical($message, $context); - } - - /** - * Adds a log record at the ALERT level. - * - * @param string $message The log message - * @param array $context The log context - * @return bool Whether the record has been processed - * @static - */ - public static function alert($message, $context = array()) - { - /** @var \Monolog\Logger $instance */ - return $instance->addAlert($message, $context); - } - - /** - * Adds a log record at the EMERGENCY level. - * - * @param string $message The log message - * @param array $context The log context - * @return bool Whether the record has been processed - * @static - */ - public static function emergency($message, $context = array()) - { - /** @var \Monolog\Logger $instance */ - return $instance->addEmergency($message, $context); - } - /** * Create a new, on-demand aggregate logger instance. * @@ -6412,7 +6886,7 @@ namespace Illuminate\Support\Facades { * Get a log channel instance. * * @param string|null $channel - * @return mixed + * @return \Psr\Log\LoggerInterface * @static */ public static function channel($channel = null) @@ -6425,7 +6899,7 @@ namespace Illuminate\Support\Facades { * Get a log driver instance. * * @param string|null $driver - * @return mixed + * @return \Psr\Log\LoggerInterface * @static */ public static function driver($driver = null) @@ -6434,6 +6908,18 @@ namespace Illuminate\Support\Facades { return $instance->driver($driver); } + /** + * + * + * @return array + * @static + */ + public static function getChannels() + { + /** @var \Illuminate\Log\LogManager $instance */ + return $instance->getChannels(); + } + /** * Get the default log driver name. * @@ -6473,6 +6959,142 @@ namespace Illuminate\Support\Facades { return $instance->extend($driver, $callback); } + /** + * Unset the given channel instance. + * + * @param string|null $name + * @return \Illuminate\Log\LogManager + * @static + */ + public static function forgetChannel($driver = null) + { + /** @var \Illuminate\Log\LogManager $instance */ + return $instance->forgetChannel($driver); + } + + /** + * System is unusable. + * + * @param string $message + * @param array $context + * @return void + * @static + */ + public static function emergency($message, $context = []) + { + /** @var \Illuminate\Log\LogManager $instance */ + $instance->emergency($message, $context); + } + + /** + * Action must be taken immediately. + * + * Example: Entire website down, database unavailable, etc. This should + * trigger the SMS alerts and wake you up. + * + * @param string $message + * @param array $context + * @return void + * @static + */ + public static function alert($message, $context = []) + { + /** @var \Illuminate\Log\LogManager $instance */ + $instance->alert($message, $context); + } + + /** + * Critical conditions. + * + * Example: Application component unavailable, unexpected exception. + * + * @param string $message + * @param array $context + * @return void + * @static + */ + public static function critical($message, $context = []) + { + /** @var \Illuminate\Log\LogManager $instance */ + $instance->critical($message, $context); + } + + /** + * Runtime errors that do not require immediate action but should typically + * be logged and monitored. + * + * @param string $message + * @param array $context + * @return void + * @static + */ + public static function error($message, $context = []) + { + /** @var \Illuminate\Log\LogManager $instance */ + $instance->error($message, $context); + } + + /** + * Exceptional occurrences that are not errors. + * + * Example: Use of deprecated APIs, poor use of an API, undesirable things + * that are not necessarily wrong. + * + * @param string $message + * @param array $context + * @return void + * @static + */ + public static function warning($message, $context = []) + { + /** @var \Illuminate\Log\LogManager $instance */ + $instance->warning($message, $context); + } + + /** + * Normal but significant events. + * + * @param string $message + * @param array $context + * @return void + * @static + */ + public static function notice($message, $context = []) + { + /** @var \Illuminate\Log\LogManager $instance */ + $instance->notice($message, $context); + } + + /** + * Interesting events. + * + * Example: User logs in, SQL logs. + * + * @param string $message + * @param array $context + * @return void + * @static + */ + public static function info($message, $context = []) + { + /** @var \Illuminate\Log\LogManager $instance */ + $instance->info($message, $context); + } + + /** + * Detailed debug information. + * + * @param string $message + * @param array $context + * @return void + * @static + */ + public static function debug($message, $context = []) + { + /** @var \Illuminate\Log\LogManager $instance */ + $instance->debug($message, $context); + } + /** * Logs with an arbitrary level. * @@ -6482,7 +7104,7 @@ namespace Illuminate\Support\Facades { * @return void * @static */ - public static function log($level, $message, $context = array()) + public static function log($level, $message, $context = []) { /** @var \Illuminate\Log\LogManager $instance */ $instance->log($level, $message, $context); @@ -6494,327 +7116,92 @@ namespace Illuminate\Support\Facades { * * * @see \Illuminate\Mail\Mailer + * @see \Illuminate\Support\Testing\Fakes\MailFake */ class Mail { /** - * Set the global from address and name. + * Get a mailer instance by name. * - * @param string $address * @param string|null $name - * @return void - * @static - */ - public static function alwaysFrom($address, $name = null) - { - /** @var \Illuminate\Mail\Mailer $instance */ - $instance->alwaysFrom($address, $name); - } - - /** - * Set the global reply-to address and name. - * - * @param string $address - * @param string|null $name - * @return void - * @static - */ - public static function alwaysReplyTo($address, $name = null) - { - /** @var \Illuminate\Mail\Mailer $instance */ - $instance->alwaysReplyTo($address, $name); - } - - /** - * Set the global to address and name. - * - * @param string $address - * @param string|null $name - * @return void - * @static - */ - public static function alwaysTo($address, $name = null) - { - /** @var \Illuminate\Mail\Mailer $instance */ - $instance->alwaysTo($address, $name); - } - - /** - * Begin the process of mailing a mailable class instance. - * - * @param mixed $users - * @return \Illuminate\Mail\PendingMail - * @static - */ - public static function to($users) - { - /** @var \Illuminate\Mail\Mailer $instance */ - return $instance->to($users); - } - - /** - * Begin the process of mailing a mailable class instance. - * - * @param mixed $users - * @return \Illuminate\Mail\PendingMail - * @static - */ - public static function bcc($users) - { - /** @var \Illuminate\Mail\Mailer $instance */ - return $instance->bcc($users); - } - - /** - * Send a new message with only an HTML part. - * - * @param string $html - * @param mixed $callback - * @return void - * @static - */ - public static function html($html, $callback) - { - /** @var \Illuminate\Mail\Mailer $instance */ - $instance->html($html, $callback); - } - - /** - * Send a new message when only a raw text part. - * - * @param string $text - * @param mixed $callback - * @return void - * @static - */ - public static function raw($text, $callback) - { - /** @var \Illuminate\Mail\Mailer $instance */ - $instance->raw($text, $callback); - } - - /** - * Send a new message when only a plain part. - * - * @param string $view - * @param array $data - * @param mixed $callback - * @return void - * @static - */ - public static function plain($view, $data, $callback) - { - /** @var \Illuminate\Mail\Mailer $instance */ - $instance->plain($view, $data, $callback); - } - - /** - * Render the given message as a view. - * - * @param string|array $view - * @param array $data - * @return string - * @static - */ - public static function render($view, $data = array()) - { - /** @var \Illuminate\Mail\Mailer $instance */ - return $instance->render($view, $data); - } - - /** - * Send a new message using a view. - * - * @param string|array|\Illuminate\Mail\MailableContract $view - * @param array $data - * @param \Closure|string $callback - * @return void - * @static - */ - public static function send($view, $data = array(), $callback = null) - { - /** @var \Illuminate\Mail\Mailer $instance */ - $instance->send($view, $data, $callback); - } - - /** - * Queue a new e-mail message for sending. - * - * @param string|array|\Illuminate\Mail\MailableContract $view - * @param string|null $queue - * @return mixed - * @static - */ - public static function queue($view, $queue = null) - { - /** @var \Illuminate\Mail\Mailer $instance */ - return $instance->queue($view, $queue); - } - - /** - * Queue a new e-mail message for sending on the given queue. - * - * @param string $queue - * @param string|array $view - * @return mixed - * @static - */ - public static function onQueue($queue, $view) - { - /** @var \Illuminate\Mail\Mailer $instance */ - return $instance->onQueue($queue, $view); - } - - /** - * Queue a new e-mail message for sending on the given queue. - * - * This method didn't match rest of framework's "onQueue" phrasing. Added "onQueue". - * - * @param string $queue - * @param string|array $view - * @return mixed - * @static - */ - public static function queueOn($queue, $view) - { - /** @var \Illuminate\Mail\Mailer $instance */ - return $instance->queueOn($queue, $view); - } - - /** - * Queue a new e-mail message for sending after (n) seconds. - * - * @param \DateTimeInterface|\DateInterval|int $delay - * @param string|array|\Illuminate\Mail\MailableContract $view - * @param string|null $queue - * @return mixed - * @static - */ - public static function later($delay, $view, $queue = null) - { - /** @var \Illuminate\Mail\Mailer $instance */ - return $instance->later($delay, $view, $queue); - } - - /** - * Queue a new e-mail message for sending after (n) seconds on the given queue. - * - * @param string $queue - * @param \DateTimeInterface|\DateInterval|int $delay - * @param string|array $view - * @return mixed - * @static - */ - public static function laterOn($queue, $delay, $view) - { - /** @var \Illuminate\Mail\Mailer $instance */ - return $instance->laterOn($queue, $delay, $view); - } - - /** - * Get the view factory instance. - * - * @return \Illuminate\Contracts\View\Factory - * @static - */ - public static function getViewFactory() - { - /** @var \Illuminate\Mail\Mailer $instance */ - return $instance->getViewFactory(); - } - - /** - * Get the Swift Mailer instance. - * - * @return \Swift_Mailer - * @static - */ - public static function getSwiftMailer() - { - /** @var \Illuminate\Mail\Mailer $instance */ - return $instance->getSwiftMailer(); - } - - /** - * Get the array of failed recipients. - * - * @return array - * @static - */ - public static function failures() - { - /** @var \Illuminate\Mail\Mailer $instance */ - return $instance->failures(); - } - - /** - * Set the Swift Mailer instance. - * - * @param \Swift_Mailer $swift - * @return void - * @static - */ - public static function setSwiftMailer($swift) - { - /** @var \Illuminate\Mail\Mailer $instance */ - $instance->setSwiftMailer($swift); - } - - /** - * Set the queue manager instance. - * - * @param \Illuminate\Contracts\Queue\Factory $queue * @return \Illuminate\Mail\Mailer * @static */ - public static function setQueue($queue) + public static function mailer($name = null) { - /** @var \Illuminate\Mail\Mailer $instance */ - return $instance->setQueue($queue); + /** @var \Illuminate\Mail\MailManager $instance */ + return $instance->mailer($name); } /** - * Register a custom macro. + * Get a mailer driver instance. + * + * @param string|null $driver + * @return \Illuminate\Mail\Mailer + * @static + */ + public static function driver($driver = null) + { + /** @var \Illuminate\Mail\MailManager $instance */ + return $instance->driver($driver); + } + + /** + * Create a new transport instance. + * + * @param array $config + * @return \Swift_Transport + * @static + */ + public static function createTransport($config) + { + /** @var \Illuminate\Mail\MailManager $instance */ + return $instance->createTransport($config); + } + + /** + * Get the default mail driver name. + * + * @return string + * @static + */ + public static function getDefaultDriver() + { + /** @var \Illuminate\Mail\MailManager $instance */ + return $instance->getDefaultDriver(); + } + + /** + * Set the default mail driver name. * * @param string $name - * @param object|callable $macro * @return void * @static */ - public static function macro($name, $macro) + public static function setDefaultDriver($name) { - \Illuminate\Mail\Mailer::macro($name, $macro); + /** @var \Illuminate\Mail\MailManager $instance */ + $instance->setDefaultDriver($name); } /** - * Mix another object into the class. + * Register a custom transport creator Closure. * - * @param object $mixin - * @return void - * @throws \ReflectionException + * @param string $driver + * @param \Closure $callback + * @return \Illuminate\Mail\MailManager * @static */ - public static function mixin($mixin) + public static function extend($driver, $callback) { - \Illuminate\Mail\Mailer::mixin($mixin); - } - - /** - * Checks if macro is registered. - * - * @param string $name - * @return bool - * @static - */ - public static function hasMacro($name) - { - return \Illuminate\Mail\Mailer::hasMacro($name); + /** @var \Illuminate\Mail\MailManager $instance */ + return $instance->extend($driver, $callback); } /** * Assert if a mailable was sent based on a truth-test callback. * - * @param string $mailable + * @param string|\Closure $mailable * @param callable|int|null $callback * @return void * @static @@ -6854,7 +7241,7 @@ namespace Illuminate\Support\Facades { /** * Assert if a mailable was queued based on a truth-test callback. * - * @param string $mailable + * @param string|\Closure $mailable * @param callable|int|null $callback * @return void * @static @@ -6944,6 +7331,102 @@ namespace Illuminate\Support\Facades { /** @var \Illuminate\Support\Testing\Fakes\MailFake $instance */ return $instance->hasQueued($mailable); } + + /** + * Begin the process of mailing a mailable class instance. + * + * @param mixed $users + * @return \Illuminate\Mail\PendingMail + * @static + */ + public static function to($users) + { + /** @var \Illuminate\Support\Testing\Fakes\MailFake $instance */ + return $instance->to($users); + } + + /** + * Begin the process of mailing a mailable class instance. + * + * @param mixed $users + * @return \Illuminate\Mail\PendingMail + * @static + */ + public static function bcc($users) + { + /** @var \Illuminate\Support\Testing\Fakes\MailFake $instance */ + return $instance->bcc($users); + } + + /** + * Send a new message with only a raw text part. + * + * @param string $text + * @param \Closure|string $callback + * @return void + * @static + */ + public static function raw($text, $callback) + { + /** @var \Illuminate\Support\Testing\Fakes\MailFake $instance */ + $instance->raw($text, $callback); + } + + /** + * Send a new message using a view. + * + * @param string|array $view + * @param array $data + * @param \Closure|string|null $callback + * @return void + * @static + */ + public static function send($view, $data = [], $callback = null) + { + /** @var \Illuminate\Support\Testing\Fakes\MailFake $instance */ + $instance->send($view, $data, $callback); + } + + /** + * Queue a new e-mail message for sending. + * + * @param string|array $view + * @param string|null $queue + * @return mixed + * @static + */ + public static function queue($view, $queue = null) + { + /** @var \Illuminate\Support\Testing\Fakes\MailFake $instance */ + return $instance->queue($view, $queue); + } + + /** + * Queue a new e-mail message for sending after (n) seconds. + * + * @param \DateTimeInterface|\DateInterval|int $delay + * @param \Illuminate\Contracts\Mail\Mailable|string|array $view + * @param string|null $queue + * @return mixed + * @static + */ + public static function later($delay, $view, $queue = null) + { + /** @var \Illuminate\Support\Testing\Fakes\MailFake $instance */ + return $instance->later($delay, $view, $queue); + } + + /** + * Get the array of failed recipients. + * + * @return array + * @static + */ + public static function failures() + { + /** @var \Illuminate\Support\Testing\Fakes\MailFake $instance */ + return $instance->failures(); + } } @@ -7033,10 +7516,23 @@ namespace Illuminate\Support\Facades { $instance->deliverVia($channel); } + /** + * Set the locale of notifications. + * + * @param string $locale + * @return \Illuminate\Notifications\ChannelManager + * @static + */ + public static function locale($locale) + { + /** @var \Illuminate\Notifications\ChannelManager $instance */ + return $instance->locale($locale); + } + /** * Get a driver instance. * - * @param string $driver + * @param string|null $driver * @return mixed * @throws \InvalidArgumentException * @static @@ -7080,9 +7576,10 @@ namespace Illuminate\Support\Facades { * Assert if a notification was sent based on a truth-test callback. * * @param mixed $notifiable - * @param string $notification + * @param string|\Closure $notification * @param callable|null $callback * @return void + * @throws \Exception * @static */ public static function assertSentTo($notifiable, $notification, $callback = null) @@ -7110,9 +7607,10 @@ namespace Illuminate\Support\Facades { * Determine if a notification was sent based on a truth-test callback. * * @param mixed $notifiable - * @param string $notification + * @param string|\Closure $notification * @param callable|null $callback * @return void + * @throws \Exception * @static */ public static function assertNotSentTo($notifiable, $notification, $callback = null) @@ -7175,16 +7673,53 @@ namespace Illuminate\Support\Facades { /** @var \Illuminate\Support\Testing\Fakes\NotificationFake $instance */ return $instance->hasSent($notifiable, $notification); } + + /** + * Register a custom macro. + * + * @param string $name + * @param object|callable $macro + * @return void + * @static + */ + public static function macro($name, $macro) + { + \Illuminate\Support\Testing\Fakes\NotificationFake::macro($name, $macro); + } + + /** + * Mix another object into the class. + * + * @param object $mixin + * @param bool $replace + * @return void + * @throws \ReflectionException + * @static + */ + public static function mixin($mixin, $replace = true) + { + \Illuminate\Support\Testing\Fakes\NotificationFake::mixin($mixin, $replace); + } + + /** + * Checks if macro is registered. + * + * @param string $name + * @return bool + * @static + */ + public static function hasMacro($name) + { + return \Illuminate\Support\Testing\Fakes\NotificationFake::hasMacro($name); + } } /** * * - * @method static string sendResetLink(array $credentials) * @method static mixed reset(array $credentials, \Closure $callback) - * @method static void validator(\Closure $callback) - * @method static bool validateNewPassword(array $credentials) + * @method static string sendResetLink(array $credentials) * @see \Illuminate\Auth\Passwords\PasswordBroker */ class Password { @@ -7318,7 +7853,7 @@ namespace Illuminate\Support\Facades { /** * Determine if the driver is connected. * - * @param string $name + * @param string|null $name * @return bool * @static */ @@ -7331,7 +7866,7 @@ namespace Illuminate\Support\Facades { /** * Resolve a queue connection instance. * - * @param string $name + * @param string|null $name * @return \Illuminate\Contracts\Queue\Queue * @static */ @@ -7397,7 +7932,7 @@ namespace Illuminate\Support\Facades { /** * Get the full name for the given connection. * - * @param string $connection + * @param string|null $connection * @return string * @static */ @@ -7407,22 +7942,10 @@ namespace Illuminate\Support\Facades { return $instance->getName($connection); } - /** - * Determine if the application is in maintenance mode. - * - * @return bool - * @static - */ - public static function isDownForMaintenance() - { - /** @var \Illuminate\Queue\QueueManager $instance */ - return $instance->isDownForMaintenance(); - } - /** * Assert if a job was pushed based on a truth-test callback. * - * @param string $job + * @param string|\Closure $job * @param callable|int|null $callback * @return void * @static @@ -7437,7 +7960,7 @@ namespace Illuminate\Support\Facades { * Assert if a job was pushed based on a truth-test callback. * * @param string $queue - * @param string $job + * @param string|\Closure $job * @param callable|null $callback * @return void * @static @@ -7457,20 +7980,34 @@ namespace Illuminate\Support\Facades { * @return void * @static */ - public static function assertPushedWithChain($job, $expectedChain = array(), $callback = null) + public static function assertPushedWithChain($job, $expectedChain = [], $callback = null) { /** @var \Illuminate\Support\Testing\Fakes\QueueFake $instance */ $instance->assertPushedWithChain($job, $expectedChain, $callback); } /** - * Determine if a job was pushed based on a truth-test callback. + * Assert if a job was pushed with an empty chain based on a truth-test callback. * * @param string $job * @param callable|null $callback * @return void * @static */ + public static function assertPushedWithoutChain($job, $callback = null) + { + /** @var \Illuminate\Support\Testing\Fakes\QueueFake $instance */ + $instance->assertPushedWithoutChain($job, $callback); + } + + /** + * Determine if a job was pushed based on a truth-test callback. + * + * @param string|\Closure $job + * @param callable|null $callback + * @return void + * @static + */ public static function assertNotPushed($job, $callback = null) { /** @var \Illuminate\Support\Testing\Fakes\QueueFake $instance */ @@ -7519,7 +8056,7 @@ namespace Illuminate\Support\Facades { /** * Get the size of the queue. * - * @param string $queue + * @param string|null $queue * @return int * @static */ @@ -7534,7 +8071,7 @@ namespace Illuminate\Support\Facades { * * @param string $job * @param mixed $data - * @param string $queue + * @param string|null $queue * @return mixed * @static */ @@ -7548,12 +8085,12 @@ namespace Illuminate\Support\Facades { * Push a raw payload onto the queue. * * @param string $payload - * @param string $queue + * @param string|null $queue * @param array $options * @return mixed * @static */ - public static function pushRaw($payload, $queue = null, $options = array()) + public static function pushRaw($payload, $queue = null, $options = []) { /** @var \Illuminate\Support\Testing\Fakes\QueueFake $instance */ return $instance->pushRaw($payload, $queue, $options); @@ -7562,10 +8099,10 @@ namespace Illuminate\Support\Facades { /** * Push a new job onto the queue after a delay. * - * @param \DateTime|int $delay + * @param \DateTimeInterface|\DateInterval|int $delay * @param string $job * @param mixed $data - * @param string $queue + * @param string|null $queue * @return mixed * @static */ @@ -7594,7 +8131,7 @@ namespace Illuminate\Support\Facades { * Push a new job onto the queue after a delay. * * @param string $queue - * @param \DateTime|int $delay + * @param \DateTimeInterface|\DateInterval|int $delay * @param string $job * @param mixed $data * @return mixed @@ -7609,7 +8146,7 @@ namespace Illuminate\Support\Facades { /** * Pop the next job off of the queue. * - * @param string $queue + * @param string|null $queue * @return \Illuminate\Contracts\Queue\Job|null * @static */ @@ -7624,7 +8161,7 @@ namespace Illuminate\Support\Facades { * * @param array $jobs * @param mixed $data - * @param string $queue + * @param string|null $queue * @return mixed * @static */ @@ -7634,6 +8171,18 @@ namespace Illuminate\Support\Facades { return $instance->bulk($jobs, $data, $queue); } + /** + * Get the jobs that have been pushed. + * + * @return array + * @static + */ + public static function pushedJobs() + { + /** @var \Illuminate\Support\Testing\Fakes\QueueFake $instance */ + return $instance->pushedJobs(); + } + /** * Get the connection name for the queue. * @@ -7659,6 +8208,20 @@ namespace Illuminate\Support\Facades { return $instance->setConnectionName($name); } + /** + * Get the retry delay for an object-based queue handler. + * + * @param mixed $job + * @return mixed + * @static + */ + public static function getJobRetryDelay($job) + { + //Method inherited from \Illuminate\Queue\Queue + /** @var \Illuminate\Queue\SyncQueue $instance */ + return $instance->getJobRetryDelay($job); + } + /** * Get the expiration timestamp for an object-based queue handler. * @@ -7673,6 +8236,19 @@ namespace Illuminate\Support\Facades { return $instance->getJobExpiration($job); } + /** + * Register a callback to be executed when creating job payloads. + * + * @param callable $callback + * @return void + * @static + */ + public static function createPayloadUsing($callback) + { + //Method inherited from \Illuminate\Queue\Queue + \Illuminate\Queue\SyncQueue::createPayloadUsing($callback); + } + /** * Set the IoC container instance. * @@ -7718,7 +8294,7 @@ namespace Illuminate\Support\Facades { * @return \Illuminate\Http\RedirectResponse * @static */ - public static function back($status = 302, $headers = array(), $fallback = false) + public static function back($status = 302, $headers = [], $fallback = false) { /** @var \Illuminate\Routing\Redirector $instance */ return $instance->back($status, $headers, $fallback); @@ -7732,7 +8308,7 @@ namespace Illuminate\Support\Facades { * @return \Illuminate\Http\RedirectResponse * @static */ - public static function refresh($status = 302, $headers = array()) + public static function refresh($status = 302, $headers = []) { /** @var \Illuminate\Routing\Redirector $instance */ return $instance->refresh($status, $headers); @@ -7744,11 +8320,11 @@ namespace Illuminate\Support\Facades { * @param string $path * @param int $status * @param array $headers - * @param bool $secure + * @param bool|null $secure * @return \Illuminate\Http\RedirectResponse * @static */ - public static function guest($path, $status = 302, $headers = array(), $secure = null) + public static function guest($path, $status = 302, $headers = [], $secure = null) { /** @var \Illuminate\Routing\Redirector $instance */ return $instance->guest($path, $status, $headers, $secure); @@ -7760,27 +8336,40 @@ namespace Illuminate\Support\Facades { * @param string $default * @param int $status * @param array $headers - * @param bool $secure + * @param bool|null $secure * @return \Illuminate\Http\RedirectResponse * @static */ - public static function intended($default = '/', $status = 302, $headers = array(), $secure = null) + public static function intended($default = '/', $status = 302, $headers = [], $secure = null) { /** @var \Illuminate\Routing\Redirector $instance */ return $instance->intended($default, $status, $headers, $secure); } + /** + * Set the intended url. + * + * @param string $url + * @return void + * @static + */ + public static function setIntendedUrl($url) + { + /** @var \Illuminate\Routing\Redirector $instance */ + $instance->setIntendedUrl($url); + } + /** * Create a new redirect response to the given path. * * @param string $path * @param int $status * @param array $headers - * @param bool $secure + * @param bool|null $secure * @return \Illuminate\Http\RedirectResponse * @static */ - public static function to($path, $status = 302, $headers = array(), $secure = null) + public static function to($path, $status = 302, $headers = [], $secure = null) { /** @var \Illuminate\Routing\Redirector $instance */ return $instance->to($path, $status, $headers, $secure); @@ -7795,7 +8384,7 @@ namespace Illuminate\Support\Facades { * @return \Illuminate\Http\RedirectResponse * @static */ - public static function away($path, $status = 302, $headers = array()) + public static function away($path, $status = 302, $headers = []) { /** @var \Illuminate\Routing\Redirector $instance */ return $instance->away($path, $status, $headers); @@ -7810,7 +8399,7 @@ namespace Illuminate\Support\Facades { * @return \Illuminate\Http\RedirectResponse * @static */ - public static function secure($path, $status = 302, $headers = array()) + public static function secure($path, $status = 302, $headers = []) { /** @var \Illuminate\Routing\Redirector $instance */ return $instance->secure($path, $status, $headers); @@ -7826,23 +8415,57 @@ namespace Illuminate\Support\Facades { * @return \Illuminate\Http\RedirectResponse * @static */ - public static function route($route, $parameters = array(), $status = 302, $headers = array()) + public static function route($route, $parameters = [], $status = 302, $headers = []) { /** @var \Illuminate\Routing\Redirector $instance */ return $instance->route($route, $parameters, $status, $headers); } /** - * Create a new redirect response to a controller action. + * Create a new redirect response to a signed named route. * - * @param string $action + * @param string $route + * @param mixed $parameters + * @param \DateTimeInterface|\DateInterval|int|null $expiration + * @param int $status + * @param array $headers + * @return \Illuminate\Http\RedirectResponse + * @static + */ + public static function signedRoute($route, $parameters = [], $expiration = null, $status = 302, $headers = []) + { + /** @var \Illuminate\Routing\Redirector $instance */ + return $instance->signedRoute($route, $parameters, $expiration, $status, $headers); + } + + /** + * Create a new redirect response to a signed named route. + * + * @param string $route + * @param \DateTimeInterface|\DateInterval|int|null $expiration * @param mixed $parameters * @param int $status * @param array $headers * @return \Illuminate\Http\RedirectResponse * @static */ - public static function action($action, $parameters = array(), $status = 302, $headers = array()) + public static function temporarySignedRoute($route, $expiration, $parameters = [], $status = 302, $headers = []) + { + /** @var \Illuminate\Routing\Redirector $instance */ + return $instance->temporarySignedRoute($route, $expiration, $parameters, $status, $headers); + } + + /** + * Create a new redirect response to a controller action. + * + * @param string|array $action + * @param mixed $parameters + * @param int $status + * @param array $headers + * @return \Illuminate\Http\RedirectResponse + * @static + */ + public static function action($action, $parameters = [], $status = 302, $headers = []) { /** @var \Illuminate\Routing\Redirector $instance */ return $instance->action($action, $parameters, $status, $headers); @@ -7890,13 +8513,14 @@ namespace Illuminate\Support\Facades { * Mix another object into the class. * * @param object $mixin + * @param bool $replace * @return void * @throws \ReflectionException * @static */ - public static function mixin($mixin) + public static function mixin($mixin, $replace = true) { - \Illuminate\Routing\Redirector::mixin($mixin); + \Illuminate\Routing\Redirector::mixin($mixin, $replace); } /** @@ -7916,6 +8540,7 @@ namespace Illuminate\Support\Facades { /** * * + * @method static mixed filterFiles(mixed $files) * @see \Illuminate\Http\Request */ class Request { @@ -8061,10 +8686,10 @@ namespace Illuminate\Support\Facades { * @return bool * @static */ - public static function is($patterns = null) + public static function is(...$patterns) { /** @var \Illuminate\Http\Request $instance */ - return $instance->is($patterns); + return $instance->is(...$patterns); } /** @@ -8074,10 +8699,10 @@ namespace Illuminate\Support\Facades { * @return bool * @static */ - public static function routeIs($patterns = null) + public static function routeIs(...$patterns) { /** @var \Illuminate\Http\Request $instance */ - return $instance->routeIs($patterns); + return $instance->routeIs(...$patterns); } /** @@ -8087,10 +8712,10 @@ namespace Illuminate\Support\Facades { * @return bool * @static */ - public static function fullUrlIs($patterns = null) + public static function fullUrlIs(...$patterns) { /** @var \Illuminate\Http\Request $instance */ - return $instance->fullUrlIs($patterns); + return $instance->fullUrlIs(...$patterns); } /** @@ -8117,6 +8742,18 @@ namespace Illuminate\Support\Facades { return $instance->pjax(); } + /** + * Determine if the request is the result of an prefetch call. + * + * @return bool + * @static + */ + public static function prefetch() + { + /** @var \Illuminate\Http\Request $instance */ + return $instance->prefetch(); + } + /** * Determine if the request is over HTTPS. * @@ -8132,7 +8769,7 @@ namespace Illuminate\Support\Facades { /** * Get the client IP address. * - * @return string + * @return string|null * @static */ public static function ip() @@ -8156,7 +8793,7 @@ namespace Illuminate\Support\Facades { /** * Get the client user agent. * - * @return string + * @return string|null * @static */ public static function userAgent() @@ -8210,7 +8847,7 @@ namespace Illuminate\Support\Facades { /** * Get the JSON payload for the request. * - * @param string $key + * @param string|null $key * @param mixed $default * @return \Symfony\Component\HttpFoundation\ParameterBag|mixed * @static @@ -8238,7 +8875,7 @@ namespace Illuminate\Support\Facades { * Create an Illuminate request from a Symfony instance. * * @param \Symfony\Component\HttpFoundation\Request $request - * @return \Illuminate\Http\Request + * @return static * @static */ public static function createFromBase($request) @@ -8319,13 +8956,14 @@ namespace Illuminate\Support\Facades { * Get the route handling the request. * * @param string|null $param - * @return \Illuminate\Routing\Route|object|string + * @param mixed $default + * @return \Illuminate\Routing\Route|object|string|null * @static */ - public static function route($param = null) + public static function route($param = null, $default = null) { /** @var \Illuminate\Http\Request $instance */ - return $instance->route($param); + return $instance->route($param, $default); } /** @@ -8483,7 +9121,7 @@ namespace Illuminate\Support\Facades { * @param string|resource|null $content The raw body data * @static */ - public static function initialize($query = array(), $request = array(), $attributes = array(), $cookies = array(), $files = array(), $server = array(), $content = null) + public static function initialize($query = [], $request = [], $attributes = [], $cookies = [], $files = [], $server = [], $content = null) { //Method inherited from \Symfony\Component\HttpFoundation\Request /** @var \Illuminate\Http\Request $instance */ @@ -8518,7 +9156,7 @@ namespace Illuminate\Support\Facades { * @return static * @static */ - public static function create($uri, $method = 'GET', $parameters = array(), $cookies = array(), $files = array(), $server = array(), $content = null) + public static function create($uri, $method = 'GET', $parameters = [], $cookies = [], $files = [], $server = [], $content = null) { //Method inherited from \Symfony\Component\HttpFoundation\Request return \Illuminate\Http\Request::create($uri, $method, $parameters, $cookies, $files, $server, $content); @@ -8531,7 +9169,6 @@ namespace Illuminate\Support\Facades { * to keep BC with an existing system. It should not be used for any * other purpose. * - * @param callable|null $callable A PHP callable * @static */ public static function setFactory($callable) @@ -8560,7 +9197,7 @@ namespace Illuminate\Support\Facades { * * You should only list the reverse proxies that you manage directly. * - * @param array $proxies A list of trusted proxies + * @param array $proxies A list of trusted proxies, the string 'REMOTE_ADDR' will be replaced with $_SERVER['REMOTE_ADDR'] * @param int $trustedHeaderSet A bit field of Request::HEADER_*, to set which headers to trust from your proxies * @throws \InvalidArgumentException When $trustedHeaderSet is invalid * @static @@ -8627,7 +9264,6 @@ namespace Illuminate\Support\Facades { * It builds a normalized query string, where keys/value pairs are alphabetized, * have consistent escaping and unneeded delimiters are removed. * - * @param string $qs Query string * @return string A normalized query string for the Request * @static */ @@ -8700,9 +9336,8 @@ namespace Illuminate\Support\Facades { } /** - * Sets the Session. + * * - * @param \Symfony\Component\HttpFoundation\SessionInterface $session The Session * @static */ public static function setSession($session) @@ -8753,10 +9388,14 @@ namespace Illuminate\Support\Facades { * header value is a comma+space separated list of IP addresses, the left-most * being the original client, and each successive proxy that passed the request * adding the IP address where it received the request from. + * + * If your reverse proxy uses a different header name than "X-Forwarded-For", + * ("Client-Ip" for instance), configure it via the $trustedHeaderSet + * argument of the Request::setTrustedProxies() method instead. * * @return string|null The client IP address * @see getClientIps() - * @see http://en.wikipedia.org/wiki/X-Forwarded-For + * @see https://wikipedia.org/wiki/X-Forwarded-For * @static */ public static function getClientIp() @@ -8996,7 +9635,6 @@ namespace Illuminate\Support\Facades { * - "/a/b/c/other" -> "other" * - "/a/x/y" -> "../../x/y" * - * @param string $path The target path * @return string The relative target path * @static */ @@ -9063,7 +9701,6 @@ namespace Illuminate\Support\Facades { /** * Sets the request method. * - * @param string $method * @static */ public static function setMethod($method) @@ -9112,7 +9749,6 @@ namespace Illuminate\Support\Facades { /** * Gets the mime type associated with the format. * - * @param string $format The format * @return string|null The associated mime type (null if not found) * @static */ @@ -9126,7 +9762,6 @@ namespace Illuminate\Support\Facades { /** * Gets the mime types associated with the format. * - * @param string $format The format * @return array The associated mime types * @static */ @@ -9139,7 +9774,6 @@ namespace Illuminate\Support\Facades { /** * Gets the format associated with the mime type. * - * @param string $mimeType The associated mime type * @return string|null The format (null if not found) * @static */ @@ -9153,7 +9787,6 @@ namespace Illuminate\Support\Facades { /** * Associates a format with mime types. * - * @param string $format The format * @param string|array $mimeTypes The associated mime types (the preferred one must be the first as it will be used as the content type) * @static */ @@ -9173,7 +9806,7 @@ namespace Illuminate\Support\Facades { * * _format request attribute * * $default * - * @param string|null $default The default format + * @see getPreferredFormat * @return string|null The request format * @static */ @@ -9187,7 +9820,6 @@ namespace Illuminate\Support\Facades { /** * Sets the request format. * - * @param string $format The request format * @static */ public static function setRequestFormat($format) @@ -9213,7 +9845,6 @@ namespace Illuminate\Support\Facades { /** * Sets the default locale. * - * @param string $locale * @static */ public static function setDefaultLocale($locale) @@ -9239,7 +9870,6 @@ namespace Illuminate\Support\Facades { /** * Sets the locale. * - * @param string $locale * @static */ public static function setLocale($locale) @@ -9280,7 +9910,6 @@ namespace Illuminate\Support\Facades { * Checks whether or not the method is safe. * * @see https://tools.ietf.org/html/rfc7231#section-4.2.1 - * @param bool $andCacheable Adds the additional condition that the method should be cacheable. True by default. * @return bool * @static */ @@ -9378,10 +10007,27 @@ namespace Illuminate\Support\Facades { return $instance->isNoCache(); } + /** + * Gets the preferred format for the response by inspecting, in the following order: + * * the request format set using setRequestFormat; + * * the values of the Accept HTTP header. + * + * Note that if you use this method, you should send the "Vary: Accept" header + * in the response to prevent any issues with intermediary HTTP caches. + * + * @static + */ + public static function getPreferredFormat($default = 'html') + { + //Method inherited from \Symfony\Component\HttpFoundation\Request + /** @var \Illuminate\Http\Request $instance */ + return $instance->getPreferredFormat($default); + } + /** * Returns the preferred language. * - * @param array $locales An array of ordered available locales + * @param string[] $locales An array of ordered available locales * @return string|null The preferred locale * @static */ @@ -9450,7 +10096,7 @@ namespace Illuminate\Support\Facades { * It works if your JavaScript library sets an X-Requested-With HTTP header. * It is known to work with common JavaScript frameworks: * - * @see http://en.wikipedia.org/wiki/List_of_Ajax_frameworks#JavaScript + * @see https://wikipedia.org/wiki/List_of_Ajax_frameworks#JavaScript * @return bool true if the request is an XMLHttpRequest, false otherwise * @static */ @@ -9461,6 +10107,19 @@ namespace Illuminate\Support\Facades { return $instance->isXmlHttpRequest(); } + /** + * Checks whether the client browser prefers safe content or not according to RFC8674. + * + * @see https://tools.ietf.org/html/rfc8674 + * @static + */ + public static function preferSafeContent() + { + //Method inherited from \Symfony\Component\HttpFoundation\Request + /** @var \Illuminate\Http\Request $instance */ + return $instance->preferSafeContent(); + } + /** * Indicates whether this request originated from a trusted proxy. * @@ -9604,7 +10263,7 @@ namespace Illuminate\Support\Facades { /** * Retrieve an old input item. * - * @param string $key + * @param string|null $key * @param string|array|null $default * @return string|array * @static @@ -9668,9 +10327,9 @@ namespace Illuminate\Support\Facades { /** * Retrieve a server variable from the request. * - * @param string $key + * @param string|null $key * @param string|array|null $default - * @return string|array + * @return string|array|null * @static */ public static function server($key = null, $default = null) @@ -9695,9 +10354,9 @@ namespace Illuminate\Support\Facades { /** * Retrieve a header from the request. * - * @param string $key + * @param string|null $key * @param string|array|null $default - * @return string|array + * @return string|array|null * @static */ public static function header($key = null, $default = null) @@ -9783,6 +10442,19 @@ namespace Illuminate\Support\Facades { return $instance->anyFilled($keys); } + /** + * Determine if the request is missing a given input item key. + * + * @param string|array $key + * @return bool + * @static + */ + public static function missing($key) + { + /** @var \Illuminate\Http\Request $instance */ + return $instance->missing($key); + } + /** * Get the keys for all of the input and files. * @@ -9798,7 +10470,7 @@ namespace Illuminate\Support\Facades { /** * Get all of the input and files for the request. * - * @param array|mixed $keys + * @param array|mixed|null $keys * @return array * @static */ @@ -9812,8 +10484,8 @@ namespace Illuminate\Support\Facades { * Retrieve an input item from the request. * * @param string|null $key - * @param string|array|null $default - * @return string|array|null + * @param mixed $default + * @return mixed * @static */ public static function input($key = null, $default = null) @@ -9822,6 +10494,22 @@ namespace Illuminate\Support\Facades { return $instance->input($key, $default); } + /** + * Retrieve input as a boolean value. + * + * Returns true when value is "1", "true", "on", and "yes". Otherwise, returns false. + * + * @param string|null $key + * @param bool $default + * @return bool + * @static + */ + public static function boolean($key = null, $default = false) + { + /** @var \Illuminate\Http\Request $instance */ + return $instance->boolean($key, $default); + } + /** * Get a subset containing the provided keys with values from the input data. * @@ -9851,9 +10539,9 @@ namespace Illuminate\Support\Facades { /** * Retrieve a query string item from the request. * - * @param string $key + * @param string|null $key * @param string|array|null $default - * @return string|array + * @return string|array|null * @static */ public static function query($key = null, $default = null) @@ -9865,9 +10553,9 @@ namespace Illuminate\Support\Facades { /** * Retrieve a request payload item from the request. * - * @param string $key + * @param string|null $key * @param string|array|null $default - * @return string|array + * @return string|array|null * @static */ public static function post($key = null, $default = null) @@ -9892,9 +10580,9 @@ namespace Illuminate\Support\Facades { /** * Retrieve a cookie from the request. * - * @param string $key + * @param string|null $key * @param string|array|null $default - * @return string|array + * @return string|array|null * @static */ public static function cookie($key = null, $default = null) @@ -9931,9 +10619,9 @@ namespace Illuminate\Support\Facades { /** * Retrieve a file from the request. * - * @param string $key + * @param string|null $key * @param mixed $default - * @return \Illuminate\Http\UploadedFile|array|null + * @return \Illuminate\Http\UploadedFile|\Illuminate\Http\UploadedFile[]|array|null * @static */ public static function file($key = null, $default = null) @@ -9959,13 +10647,14 @@ namespace Illuminate\Support\Facades { * Mix another object into the class. * * @param object $mixin + * @param bool $replace * @return void * @throws \ReflectionException * @static */ - public static function mixin($mixin) + public static function mixin($mixin, $replace = true) { - \Illuminate\Http\Request::mixin($mixin); + \Illuminate\Http\Request::mixin($mixin, $replace); } /** @@ -9985,9 +10674,9 @@ namespace Illuminate\Support\Facades { * * @static */ - public static function validate($rules, $params = null) + public static function validate($rules, ...$params) { - return \Illuminate\Http\Request::validate($rules, $params); + return \Illuminate\Http\Request::validate($rules, ...$params); } /** @@ -9995,9 +10684,19 @@ namespace Illuminate\Support\Facades { * * @static */ - public static function hasValidSignature() + public static function validateWithBag($errorBag, $rules, ...$params) { - return \Illuminate\Http\Request::hasValidSignature(); + return \Illuminate\Http\Request::validateWithBag($errorBag, $rules, ...$params); + } + + /** + * + * + * @static + */ + public static function hasValidSignature($absolute = true) + { + return \Illuminate\Http\Request::hasValidSignature($absolute); } } @@ -10010,7 +10709,7 @@ namespace Illuminate\Support\Facades { class Response { /** - * Return a new response from the application. + * Create a new response instance. * * @param string $content * @param int $status @@ -10018,30 +10717,44 @@ namespace Illuminate\Support\Facades { * @return \Illuminate\Http\Response * @static */ - public static function make($content = '', $status = 200, $headers = array()) + public static function make($content = '', $status = 200, $headers = []) { /** @var \Illuminate\Routing\ResponseFactory $instance */ return $instance->make($content, $status, $headers); } /** - * Return a new view response from the application. + * Create a new "no content" response. * - * @param string $view + * @param int $status + * @param array $headers + * @return \Illuminate\Http\Response + * @static + */ + public static function noContent($status = 204, $headers = []) + { + /** @var \Illuminate\Routing\ResponseFactory $instance */ + return $instance->noContent($status, $headers); + } + + /** + * Create a new response for a given view. + * + * @param string|array $view * @param array $data * @param int $status * @param array $headers * @return \Illuminate\Http\Response * @static */ - public static function view($view, $data = array(), $status = 200, $headers = array()) + public static function view($view, $data = [], $status = 200, $headers = []) { /** @var \Illuminate\Routing\ResponseFactory $instance */ return $instance->view($view, $data, $status, $headers); } /** - * Return a new JSON response from the application. + * Create a new JSON response instance. * * @param mixed $data * @param int $status @@ -10050,14 +10763,14 @@ namespace Illuminate\Support\Facades { * @return \Illuminate\Http\JsonResponse * @static */ - public static function json($data = array(), $status = 200, $headers = array(), $options = 0) + public static function json($data = [], $status = 200, $headers = [], $options = 0) { /** @var \Illuminate\Routing\ResponseFactory $instance */ return $instance->json($data, $status, $headers, $options); } /** - * Return a new JSONP response from the application. + * Create a new JSONP response instance. * * @param string $callback * @param mixed $data @@ -10067,14 +10780,14 @@ namespace Illuminate\Support\Facades { * @return \Illuminate\Http\JsonResponse * @static */ - public static function jsonp($callback, $data = array(), $status = 200, $headers = array(), $options = 0) + public static function jsonp($callback, $data = [], $status = 200, $headers = [], $options = 0) { /** @var \Illuminate\Routing\ResponseFactory $instance */ return $instance->jsonp($callback, $data, $status, $headers, $options); } /** - * Return a new streamed response from the application. + * Create a new streamed response instance. * * @param \Closure $callback * @param int $status @@ -10082,14 +10795,14 @@ namespace Illuminate\Support\Facades { * @return \Symfony\Component\HttpFoundation\StreamedResponse * @static */ - public static function stream($callback, $status = 200, $headers = array()) + public static function stream($callback, $status = 200, $headers = []) { /** @var \Illuminate\Routing\ResponseFactory $instance */ return $instance->stream($callback, $status, $headers); } /** - * Return a new streamed response as a file download from the application. + * Create a new streamed response instance as a file download. * * @param \Closure $callback * @param string|null $name @@ -10098,7 +10811,7 @@ namespace Illuminate\Support\Facades { * @return \Symfony\Component\HttpFoundation\StreamedResponse * @static */ - public static function streamDownload($callback, $name = null, $headers = array(), $disposition = 'attachment') + public static function streamDownload($callback, $name = null, $headers = [], $disposition = 'attachment') { /** @var \Illuminate\Routing\ResponseFactory $instance */ return $instance->streamDownload($callback, $name, $headers, $disposition); @@ -10114,7 +10827,7 @@ namespace Illuminate\Support\Facades { * @return \Symfony\Component\HttpFoundation\BinaryFileResponse * @static */ - public static function download($file, $name = null, $headers = array(), $disposition = 'attachment') + public static function download($file, $name = null, $headers = [], $disposition = 'attachment') { /** @var \Illuminate\Routing\ResponseFactory $instance */ return $instance->download($file, $name, $headers, $disposition); @@ -10128,7 +10841,7 @@ namespace Illuminate\Support\Facades { * @return \Symfony\Component\HttpFoundation\BinaryFileResponse * @static */ - public static function file($file, $headers = array()) + public static function file($file, $headers = []) { /** @var \Illuminate\Routing\ResponseFactory $instance */ return $instance->file($file, $headers); @@ -10144,7 +10857,7 @@ namespace Illuminate\Support\Facades { * @return \Illuminate\Http\RedirectResponse * @static */ - public static function redirectTo($path, $status = 302, $headers = array(), $secure = null) + public static function redirectTo($path, $status = 302, $headers = [], $secure = null) { /** @var \Illuminate\Routing\ResponseFactory $instance */ return $instance->redirectTo($path, $status, $headers, $secure); @@ -10154,13 +10867,13 @@ namespace Illuminate\Support\Facades { * Create a new redirect response to a named route. * * @param string $route - * @param array $parameters + * @param mixed $parameters * @param int $status * @param array $headers * @return \Illuminate\Http\RedirectResponse * @static */ - public static function redirectToRoute($route, $parameters = array(), $status = 302, $headers = array()) + public static function redirectToRoute($route, $parameters = [], $status = 302, $headers = []) { /** @var \Illuminate\Routing\ResponseFactory $instance */ return $instance->redirectToRoute($route, $parameters, $status, $headers); @@ -10170,13 +10883,13 @@ namespace Illuminate\Support\Facades { * Create a new redirect response to a controller action. * * @param string $action - * @param array $parameters + * @param mixed $parameters * @param int $status * @param array $headers * @return \Illuminate\Http\RedirectResponse * @static */ - public static function redirectToAction($action, $parameters = array(), $status = 302, $headers = array()) + public static function redirectToAction($action, $parameters = [], $status = 302, $headers = []) { /** @var \Illuminate\Routing\ResponseFactory $instance */ return $instance->redirectToAction($action, $parameters, $status, $headers); @@ -10192,7 +10905,7 @@ namespace Illuminate\Support\Facades { * @return \Illuminate\Http\RedirectResponse * @static */ - public static function redirectGuest($path, $status = 302, $headers = array(), $secure = null) + public static function redirectGuest($path, $status = 302, $headers = [], $secure = null) { /** @var \Illuminate\Routing\ResponseFactory $instance */ return $instance->redirectGuest($path, $status, $headers, $secure); @@ -10208,7 +10921,7 @@ namespace Illuminate\Support\Facades { * @return \Illuminate\Http\RedirectResponse * @static */ - public static function redirectToIntended($default = '/', $status = 302, $headers = array(), $secure = null) + public static function redirectToIntended($default = '/', $status = 302, $headers = [], $secure = null) { /** @var \Illuminate\Routing\ResponseFactory $instance */ return $instance->redirectToIntended($default, $status, $headers, $secure); @@ -10231,13 +10944,14 @@ namespace Illuminate\Support\Facades { * Mix another object into the class. * * @param object $mixin + * @param bool $replace * @return void * @throws \ReflectionException * @static */ - public static function mixin($mixin) + public static function mixin($mixin, $replace = true) { - \Illuminate\Routing\ResponseFactory::mixin($mixin); + \Illuminate\Routing\ResponseFactory::mixin($mixin, $replace); } /** @@ -10257,13 +10971,13 @@ namespace Illuminate\Support\Facades { /** * * - * @method static \Illuminate\Routing\RouteRegistrar prefix(string $prefix) - * @method static \Illuminate\Routing\RouteRegistrar where(array $where) - * @method static \Illuminate\Routing\RouteRegistrar middleware(array|string|null $middleware) * @method static \Illuminate\Routing\RouteRegistrar as(string $value) * @method static \Illuminate\Routing\RouteRegistrar domain(string $value) + * @method static \Illuminate\Routing\RouteRegistrar middleware(array|string|null $middleware) * @method static \Illuminate\Routing\RouteRegistrar name(string $value) * @method static \Illuminate\Routing\RouteRegistrar namespace(string $value) + * @method static \Illuminate\Routing\RouteRegistrar prefix(string $prefix) + * @method static \Illuminate\Routing\RouteRegistrar where(array $where) * @see \Illuminate\Routing\Router */ class Route { @@ -10272,7 +10986,7 @@ namespace Illuminate\Support\Facades { * Register a new GET route with the router. * * @param string $uri - * @param \Closure|array|string|null $action + * @param array|string|callable|null $action * @return \Illuminate\Routing\Route * @static */ @@ -10286,7 +11000,7 @@ namespace Illuminate\Support\Facades { * Register a new POST route with the router. * * @param string $uri - * @param \Closure|array|string|null $action + * @param array|string|callable|null $action * @return \Illuminate\Routing\Route * @static */ @@ -10300,7 +11014,7 @@ namespace Illuminate\Support\Facades { * Register a new PUT route with the router. * * @param string $uri - * @param \Closure|array|string|null $action + * @param array|string|callable|null $action * @return \Illuminate\Routing\Route * @static */ @@ -10314,7 +11028,7 @@ namespace Illuminate\Support\Facades { * Register a new PATCH route with the router. * * @param string $uri - * @param \Closure|array|string|null $action + * @param array|string|callable|null $action * @return \Illuminate\Routing\Route * @static */ @@ -10328,7 +11042,7 @@ namespace Illuminate\Support\Facades { * Register a new DELETE route with the router. * * @param string $uri - * @param \Closure|array|string|null $action + * @param array|string|callable|null $action * @return \Illuminate\Routing\Route * @static */ @@ -10342,7 +11056,7 @@ namespace Illuminate\Support\Facades { * Register a new OPTIONS route with the router. * * @param string $uri - * @param \Closure|array|string|null $action + * @param array|string|callable|null $action * @return \Illuminate\Routing\Route * @static */ @@ -10356,7 +11070,7 @@ namespace Illuminate\Support\Facades { * Register a new route responding to all verbs. * * @param string $uri - * @param \Closure|array|string|null $action + * @param array|string|callable|null $action * @return \Illuminate\Routing\Route * @static */ @@ -10369,7 +11083,7 @@ namespace Illuminate\Support\Facades { /** * Register a new Fallback route with the router. * - * @param \Closure|array|string|null $action + * @param array|string|callable|null $action * @return \Illuminate\Routing\Route * @static */ @@ -10388,12 +11102,26 @@ namespace Illuminate\Support\Facades { * @return \Illuminate\Routing\Route * @static */ - public static function redirect($uri, $destination, $status = 301) + public static function redirect($uri, $destination, $status = 302) { /** @var \Illuminate\Routing\Router $instance */ return $instance->redirect($uri, $destination, $status); } + /** + * Create a permanent redirect from one URI to another. + * + * @param string $uri + * @param string $destination + * @return \Illuminate\Routing\Route + * @static + */ + public static function permanentRedirect($uri, $destination) + { + /** @var \Illuminate\Routing\Router $instance */ + return $instance->permanentRedirect($uri, $destination); + } + /** * Register a new route that returns a view. * @@ -10403,7 +11131,7 @@ namespace Illuminate\Support\Facades { * @return \Illuminate\Routing\Route * @static */ - public static function view($uri, $view, $data = array()) + public static function view($uri, $view, $data = []) { /** @var \Illuminate\Routing\Router $instance */ return $instance->view($uri, $view, $data); @@ -10414,7 +11142,7 @@ namespace Illuminate\Support\Facades { * * @param array|string $methods * @param string $uri - * @param \Closure|array|string|null $action + * @param array|string|callable|null $action * @return \Illuminate\Routing\Route * @static */ @@ -10428,13 +11156,14 @@ namespace Illuminate\Support\Facades { * Register an array of resource controllers. * * @param array $resources + * @param array $options * @return void * @static */ - public static function resources($resources) + public static function resources($resources, $options = []) { /** @var \Illuminate\Routing\Router $instance */ - $instance->resources($resources); + $instance->resources($resources, $options); } /** @@ -10446,7 +11175,7 @@ namespace Illuminate\Support\Facades { * @return \Illuminate\Routing\PendingResourceRegistration * @static */ - public static function resource($name, $controller, $options = array()) + public static function resource($name, $controller, $options = []) { /** @var \Illuminate\Routing\Router $instance */ return $instance->resource($name, $controller, $options); @@ -10456,13 +11185,14 @@ namespace Illuminate\Support\Facades { * Register an array of API resource controllers. * * @param array $resources + * @param array $options * @return void * @static */ - public static function apiResources($resources) + public static function apiResources($resources, $options = []) { /** @var \Illuminate\Routing\Router $instance */ - $instance->apiResources($resources); + $instance->apiResources($resources, $options); } /** @@ -10474,7 +11204,7 @@ namespace Illuminate\Support\Facades { * @return \Illuminate\Routing\PendingResourceRegistration * @static */ - public static function apiResource($name, $controller, $options = array()) + public static function apiResource($name, $controller, $options = []) { /** @var \Illuminate\Routing\Router $instance */ return $instance->apiResource($name, $controller, $options); @@ -10498,13 +11228,14 @@ namespace Illuminate\Support\Facades { * Merge the given array with the last group stack. * * @param array $new + * @param bool $prependExistingPrefix * @return array * @static */ - public static function mergeWithLastGroup($new) + public static function mergeWithLastGroup($new, $prependExistingPrefix = true) { /** @var \Illuminate\Routing\Router $instance */ - return $instance->mergeWithLastGroup($new); + return $instance->mergeWithLastGroup($new, $prependExistingPrefix); } /** @@ -10524,7 +11255,7 @@ namespace Illuminate\Support\Facades { * * @param array|string $methods * @param string $uri - * @param \Closure|array|string|null $action + * @param array|string|callable|null $action * @return \Illuminate\Routing\Route * @static */ @@ -10534,11 +11265,26 @@ namespace Illuminate\Support\Facades { return $instance->addRoute($methods, $uri, $action); } + /** + * Create a new Route object. + * + * @param array|string $methods + * @param string $uri + * @param mixed $action + * @return \Illuminate\Routing\Route + * @static + */ + public static function newRoute($methods, $uri, $action) + { + /** @var \Illuminate\Routing\Router $instance */ + return $instance->newRoute($methods, $uri, $action); + } + /** * Return the response returned by the given route. * * @param string $name - * @return mixed + * @return \Symfony\Component\HttpFoundation\Response * @static */ public static function respondWithRoute($name) @@ -10551,7 +11297,7 @@ namespace Illuminate\Support\Facades { * Dispatch the request to the application. * * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response|\Illuminate\Http\JsonResponse + * @return \Symfony\Component\HttpFoundation\Response * @static */ public static function dispatch($request) @@ -10564,7 +11310,7 @@ namespace Illuminate\Support\Facades { * Dispatch the request to a route and return the response. * * @param \Illuminate\Http\Request $request - * @return mixed + * @return \Symfony\Component\HttpFoundation\Response * @static */ public static function dispatchToRoute($request) @@ -10591,7 +11337,7 @@ namespace Illuminate\Support\Facades { * * @param \Symfony\Component\HttpFoundation\Request $request * @param mixed $response - * @return \Illuminate\Http\Response|\Illuminate\Http\JsonResponse + * @return \Symfony\Component\HttpFoundation\Response * @static */ public static function prepareResponse($request, $response) @@ -10605,7 +11351,7 @@ namespace Illuminate\Support\Facades { * * @param \Symfony\Component\HttpFoundation\Request $request * @param mixed $response - * @return \Illuminate\Http\Response|\Illuminate\Http\JsonResponse + * @return \Symfony\Component\HttpFoundation\Response * @static */ public static function toResponse($request, $response) @@ -10618,6 +11364,7 @@ namespace Illuminate\Support\Facades { * * @param \Illuminate\Routing\Route $route * @return \Illuminate\Routing\Route + * @throws \Illuminate\Database\Eloquent\ModelNotFoundException * @static */ public static function substituteBindings($route) @@ -10631,6 +11378,7 @@ namespace Illuminate\Support\Facades { * * @param \Illuminate\Routing\Route $route * @return void + * @throws \Illuminate\Database\Eloquent\ModelNotFoundException * @static */ public static function substituteImplicitBindings($route) @@ -10770,7 +11518,6 @@ namespace Illuminate\Support\Facades { * @param string $class * @param \Closure|null $callback * @return void - * @throws \Illuminate\Database\Eloquent\ModelNotFoundException * @static */ public static function model($key, $class, $callback = null) @@ -10859,7 +11606,7 @@ namespace Illuminate\Support\Facades { * Get a route parameter for the current route. * * @param string $key - * @param string $default + * @param string|null $default * @return mixed * @static */ @@ -10896,7 +11643,7 @@ namespace Illuminate\Support\Facades { /** * Get the currently dispatched route instance. * - * @return \Illuminate\Routing\Route + * @return \Illuminate\Routing\Route|null * @static */ public static function current() @@ -10937,10 +11684,10 @@ namespace Illuminate\Support\Facades { * @return bool * @static */ - public static function is($patterns = null) + public static function is(...$patterns) { /** @var \Illuminate\Routing\Router $instance */ - return $instance->is($patterns); + return $instance->is(...$patterns); } /** @@ -10950,10 +11697,10 @@ namespace Illuminate\Support\Facades { * @return bool * @static */ - public static function currentRouteNamed($patterns = null) + public static function currentRouteNamed(...$patterns) { /** @var \Illuminate\Routing\Router $instance */ - return $instance->currentRouteNamed($patterns); + return $instance->currentRouteNamed(...$patterns); } /** @@ -10975,10 +11722,10 @@ namespace Illuminate\Support\Facades { * @return bool * @static */ - public static function uses($patterns = null) + public static function uses(...$patterns) { /** @var \Illuminate\Routing\Router $instance */ - return $instance->uses($patterns); + return $instance->uses(...$patterns); } /** @@ -10994,18 +11741,6 @@ namespace Illuminate\Support\Facades { return $instance->currentRouteUses($action); } - /** - * Register the typical authentication routes for an application. - * - * @return void - * @static - */ - public static function auth() - { - /** @var \Illuminate\Routing\Router $instance */ - $instance->auth(); - } - /** * Set the unmapped global resource parameters to singular. * @@ -11026,7 +11761,7 @@ namespace Illuminate\Support\Facades { * @return void * @static */ - public static function resourceParameters($parameters = array()) + public static function resourceParameters($parameters = []) { /** @var \Illuminate\Routing\Router $instance */ $instance->resourceParameters($parameters); @@ -11039,7 +11774,7 @@ namespace Illuminate\Support\Facades { * @return array|null * @static */ - public static function resourceVerbs($verbs = array()) + public static function resourceVerbs($verbs = []) { /** @var \Illuminate\Routing\Router $instance */ return $instance->resourceVerbs($verbs); @@ -11048,7 +11783,7 @@ namespace Illuminate\Support\Facades { /** * Get the underlying route collection. * - * @return \Illuminate\Routing\RouteCollection + * @return \Illuminate\Routing\RouteCollectionInterface * @static */ public static function getRoutes() @@ -11070,6 +11805,19 @@ namespace Illuminate\Support\Facades { $instance->setRoutes($routes); } + /** + * Set the compiled route collection instance. + * + * @param array $routes + * @return void + * @static + */ + public static function setCompiledRoutes($routes) + { + /** @var \Illuminate\Routing\Router $instance */ + $instance->setCompiledRoutes($routes); + } + /** * Register a custom macro. * @@ -11087,13 +11835,14 @@ namespace Illuminate\Support\Facades { * Mix another object into the class. * * @param object $mixin + * @param bool $replace * @return void * @throws \ReflectionException * @static */ - public static function mixin($mixin) + public static function mixin($mixin, $replace = true) { - \Illuminate\Routing\Router::mixin($mixin); + \Illuminate\Routing\Router::mixin($mixin, $replace); } /** @@ -11122,6 +11871,46 @@ namespace Illuminate\Support\Facades { /** @var \Illuminate\Routing\Router $instance */ return $instance->macroCall($method, $parameters); } + + /** + * + * + * @static + */ + public static function auth($options = []) + { + return \Illuminate\Routing\Router::auth($options); + } + + /** + * + * + * @static + */ + public static function resetPassword() + { + return \Illuminate\Routing\Router::resetPassword(); + } + + /** + * + * + * @static + */ + public static function confirmPassword() + { + return \Illuminate\Routing\Router::confirmPassword(); + } + + /** + * + * + * @static + */ + public static function emailVerification() + { + return \Illuminate\Routing\Router::emailVerification(); + } } @@ -11182,6 +11971,30 @@ namespace Illuminate\Support\Facades { $instance->dropAllViews(); } + /** + * Get all of the table names for the database. + * + * @return array + * @static + */ + public static function getAllTables() + { + /** @var \Illuminate\Database\Schema\MySqlBuilder $instance */ + return $instance->getAllTables(); + } + + /** + * Get all of the view names for the database. + * + * @return array + * @static + */ + public static function getAllViews() + { + /** @var \Illuminate\Database\Schema\MySqlBuilder $instance */ + return $instance->getAllViews(); + } + /** * Set the default string length for migrations. * @@ -11298,6 +12111,20 @@ namespace Illuminate\Support\Facades { $instance->dropIfExists($table); } + /** + * Drop all types from the database. + * + * @return void + * @throws \LogicException + * @static + */ + public static function dropAllTypes() + { + //Method inherited from \Illuminate\Database\Schema\Builder + /** @var \Illuminate\Database\Schema\MySqlBuilder $instance */ + $instance->dropAllTypes(); + } + /** * Rename a table on the schema. * @@ -11339,6 +12166,24 @@ namespace Illuminate\Support\Facades { return $instance->disableForeignKeyConstraints(); } + /** + * Register a custom Doctrine mapping type. + * + * @param string $class + * @param string $name + * @param string $type + * @return void + * @throws \Doctrine\DBAL\DBALException + * @throws \RuntimeException + * @static + */ + public static function registerCustomDoctrineType($class, $name, $type) + { + //Method inherited from \Illuminate\Database\Schema\Builder + /** @var \Illuminate\Database\Schema\MySqlBuilder $instance */ + $instance->registerCustomDoctrineType($class, $name, $type); + } + /** * Get the database connection instance. * @@ -11390,6 +12235,30 @@ namespace Illuminate\Support\Facades { */ class Session { + /** + * Determine if requests for the same session should wait for each to finish before executing. + * + * @return bool + * @static + */ + public static function shouldBlock() + { + /** @var \Illuminate\Session\SessionManager $instance */ + return $instance->shouldBlock(); + } + + /** + * Get the name of the cache store / driver that should be used to acquire session locks. + * + * @return string|null + * @static + */ + public static function blockDriver() + { + /** @var \Illuminate\Session\SessionManager $instance */ + return $instance->blockDriver(); + } + /** * Get the session configuration. * @@ -11430,7 +12299,7 @@ namespace Illuminate\Support\Facades { /** * Get a driver instance. * - * @param string $driver + * @param string|null $driver * @return mixed * @throws \InvalidArgumentException * @static @@ -11485,13 +12354,13 @@ namespace Illuminate\Support\Facades { /** * Save the session data to storage. * - * @return bool + * @return void * @static */ public static function save() { /** @var \Illuminate\Session\Store $instance */ - return $instance->save(); + $instance->save(); } /** @@ -11518,6 +12387,19 @@ namespace Illuminate\Support\Facades { return $instance->all(); } + /** + * Get a subset of the session data. + * + * @param array $keys + * @return array + * @static + */ + public static function only($keys) + { + /** @var \Illuminate\Session\Store $instance */ + return $instance->only($keys); + } + /** * Checks if a key exists. * @@ -11562,7 +12444,7 @@ namespace Illuminate\Support\Facades { * Get the value of a given key and then forget it. * * @param string $key - * @param string $default + * @param string|null $default * @return mixed * @static */ @@ -11575,7 +12457,7 @@ namespace Illuminate\Support\Facades { /** * Determine if the session contains old input. * - * @param string $key + * @param string|null $key * @return bool * @static */ @@ -11588,7 +12470,7 @@ namespace Illuminate\Support\Facades { /** * Get the requested item from the flashed input array. * - * @param string $key + * @param string|null $key * @param mixed $default * @return mixed * @static @@ -12010,7 +12892,7 @@ namespace Illuminate\Support\Facades { /** * Get a filesystem instance. * - * @param string $name + * @param string|null $name * @return \Illuminate\Filesystem\FilesystemAdapter * @static */ @@ -12023,7 +12905,7 @@ namespace Illuminate\Support\Facades { /** * Get a filesystem instance. * - * @param string $name + * @param string|null $name * @return \Illuminate\Filesystem\FilesystemAdapter * @static */ @@ -12097,19 +12979,6 @@ namespace Illuminate\Support\Facades { return $instance->createS3Driver($config); } - /** - * Create an instance of the Rackspace driver. - * - * @param array $config - * @return \Illuminate\Contracts\Filesystem\Cloud - * @static - */ - public static function createRackspaceDriver($config) - { - /** @var \Illuminate\Filesystem\FilesystemManager $instance */ - return $instance->createRackspaceDriver($config); - } - /** * Set the given disk instance. * @@ -12178,27 +13047,27 @@ namespace Illuminate\Support\Facades { /** * Assert that the given file exists. * - * @param string $path - * @return void + * @param string|array $path + * @return \Illuminate\Filesystem\FilesystemAdapter * @static */ public static function assertExists($path) { /** @var \Illuminate\Filesystem\FilesystemAdapter $instance */ - $instance->assertExists($path); + return $instance->assertExists($path); } /** * Assert that the given file does not exist. * - * @param string $path - * @return void + * @param string|array $path + * @return \Illuminate\Filesystem\FilesystemAdapter * @static */ public static function assertMissing($path) { /** @var \Illuminate\Filesystem\FilesystemAdapter $instance */ - $instance->assertMissing($path); + return $instance->assertMissing($path); } /** @@ -12214,6 +13083,19 @@ namespace Illuminate\Support\Facades { return $instance->exists($path); } + /** + * Determine if a file or directory is missing. + * + * @param string $path + * @return bool + * @static + */ + public static function missing($path) + { + /** @var \Illuminate\Filesystem\FilesystemAdapter $instance */ + return $instance->missing($path); + } + /** * Get the full path for the file at the given "short" path. * @@ -12251,7 +13133,7 @@ namespace Illuminate\Support\Facades { * @return \Symfony\Component\HttpFoundation\StreamedResponse * @static */ - public static function response($path, $name = null, $headers = array(), $disposition = 'inline') + public static function response($path, $name = null, $headers = [], $disposition = 'inline') { /** @var \Illuminate\Filesystem\FilesystemAdapter $instance */ return $instance->response($path, $name, $headers, $disposition); @@ -12266,7 +13148,7 @@ namespace Illuminate\Support\Facades { * @return \Symfony\Component\HttpFoundation\StreamedResponse * @static */ - public static function download($path, $name = null, $headers = array()) + public static function download($path, $name = null, $headers = []) { /** @var \Illuminate\Filesystem\FilesystemAdapter $instance */ return $instance->download($path, $name, $headers); @@ -12281,7 +13163,7 @@ namespace Illuminate\Support\Facades { * @return bool * @static */ - public static function put($path, $contents, $options = array()) + public static function put($path, $contents, $options = []) { /** @var \Illuminate\Filesystem\FilesystemAdapter $instance */ return $instance->put($path, $contents, $options); @@ -12291,12 +13173,12 @@ namespace Illuminate\Support\Facades { * Store the uploaded file on the disk. * * @param string $path - * @param \Illuminate\Http\File|\Illuminate\Http\UploadedFile $file + * @param \Illuminate\Http\File|\Illuminate\Http\UploadedFile|string $file * @param array $options * @return string|false * @static */ - public static function putFile($path, $file, $options = array()) + public static function putFile($path, $file, $options = []) { /** @var \Illuminate\Filesystem\FilesystemAdapter $instance */ return $instance->putFile($path, $file, $options); @@ -12306,13 +13188,13 @@ namespace Illuminate\Support\Facades { * Store the uploaded file on the disk with a given name. * * @param string $path - * @param \Illuminate\Http\File|\Illuminate\Http\UploadedFile $file + * @param \Illuminate\Http\File|\Illuminate\Http\UploadedFile|string $file * @param string $name * @param array $options * @return string|false * @static */ - public static function putFileAs($path, $file, $name, $options = array()) + public static function putFileAs($path, $file, $name, $options = []) { /** @var \Illuminate\Filesystem\FilesystemAdapter $instance */ return $instance->putFileAs($path, $file, $name, $options); @@ -12336,13 +13218,13 @@ namespace Illuminate\Support\Facades { * * @param string $path * @param string $visibility - * @return void + * @return bool * @static */ public static function setVisibility($path, $visibility) { /** @var \Illuminate\Filesystem\FilesystemAdapter $instance */ - $instance->setVisibility($path, $visibility); + return $instance->setVisibility($path, $visibility); } /** @@ -12351,10 +13233,11 @@ namespace Illuminate\Support\Facades { * @param string $path * @param string $data * @param string $separator - * @return int + * @return bool * @static */ - public static function prepend($path, $data, $separator = '') + public static function prepend($path, $data, $separator = ' +') { /** @var \Illuminate\Filesystem\FilesystemAdapter $instance */ return $instance->prepend($path, $data, $separator); @@ -12366,10 +13249,11 @@ namespace Illuminate\Support\Facades { * @param string $path * @param string $data * @param string $separator - * @return int + * @return bool * @static */ - public static function append($path, $data, $separator = '') + public static function append($path, $data, $separator = ' +') { /** @var \Illuminate\Filesystem\FilesystemAdapter $instance */ return $instance->append($path, $data, $separator); @@ -12460,6 +13344,7 @@ namespace Illuminate\Support\Facades { * * @param string $path * @return string + * @throws \RuntimeException * @static */ public static function url($path) @@ -12468,6 +13353,37 @@ namespace Illuminate\Support\Facades { return $instance->url($path); } + /** + * Get a resource to read the file. + * + * @param string $path + * @return resource|null The path resource or null on failure. + * @throws \Illuminate\Contracts\Filesystem\FileNotFoundException + * @static + */ + public static function readStream($path) + { + /** @var \Illuminate\Filesystem\FilesystemAdapter $instance */ + return $instance->readStream($path); + } + + /** + * Write a new file using a stream. + * + * @param string $path + * @param resource $resource + * @param array $options + * @return bool + * @throws \InvalidArgumentException If $resource is not a file handle. + * @throws \Illuminate\Contracts\Filesystem\FileExistsException + * @static + */ + public static function writeStream($path, $resource, $options = []) + { + /** @var \Illuminate\Filesystem\FilesystemAdapter $instance */ + return $instance->writeStream($path, $resource, $options); + } + /** * Get a temporary URL for the file at the given path. * @@ -12475,9 +13391,10 @@ namespace Illuminate\Support\Facades { * @param \DateTimeInterface $expiration * @param array $options * @return string + * @throws \RuntimeException * @static */ - public static function temporaryUrl($path, $expiration, $options = array()) + public static function temporaryUrl($path, $expiration, $options = []) { /** @var \Illuminate\Filesystem\FilesystemAdapter $instance */ return $instance->temporaryUrl($path, $expiration, $options); @@ -12499,22 +13416,6 @@ namespace Illuminate\Support\Facades { return $instance->getAwsTemporaryUrl($adapter, $path, $expiration, $options); } - /** - * Get a temporary URL for the file at the given path. - * - * @param \League\Flysystem\Rackspace\RackspaceAdapter $adapter - * @param string $path - * @param \DateTimeInterface $expiration - * @param array $options - * @return string - * @static - */ - public static function getRackspaceTemporaryUrl($adapter, $path, $expiration, $options) - { - /** @var \Illuminate\Filesystem\FilesystemAdapter $instance */ - return $instance->getRackspaceTemporaryUrl($adapter, $path, $expiration, $options); - } - /** * Get an array of all files in a directory. * @@ -12674,7 +13575,7 @@ namespace Illuminate\Support\Facades { * @return string * @static */ - public static function to($path, $extra = array(), $secure = null) + public static function to($path, $extra = [], $secure = null) { /** @var \Illuminate\Routing\UrlGenerator $instance */ return $instance->to($path, $extra, $secure); @@ -12688,7 +13589,7 @@ namespace Illuminate\Support\Facades { * @return string * @static */ - public static function secure($path, $parameters = array()) + public static function secure($path, $parameters = []) { /** @var \Illuminate\Routing\UrlGenerator $instance */ return $instance->secure($path, $parameters); @@ -12743,7 +13644,7 @@ namespace Illuminate\Support\Facades { * @return string * @static */ - public static function formatScheme($secure) + public static function formatScheme($secure = null) { /** @var \Illuminate\Routing\UrlGenerator $instance */ return $instance->formatScheme($secure); @@ -12754,42 +13655,73 @@ namespace Illuminate\Support\Facades { * * @param string $name * @param array $parameters - * @param \DateTimeInterface|int $expiration + * @param \DateTimeInterface|\DateInterval|int|null $expiration + * @param bool $absolute * @return string + * @throws \InvalidArgumentException * @static */ - public static function signedRoute($name, $parameters = array(), $expiration = null) + public static function signedRoute($name, $parameters = [], $expiration = null, $absolute = true) { /** @var \Illuminate\Routing\UrlGenerator $instance */ - return $instance->signedRoute($name, $parameters, $expiration); + return $instance->signedRoute($name, $parameters, $expiration, $absolute); } /** * Create a temporary signed route URL for a named route. * * @param string $name - * @param \DateTimeInterface|int $expiration + * @param \DateTimeInterface|\DateInterval|int $expiration * @param array $parameters + * @param bool $absolute * @return string * @static */ - public static function temporarySignedRoute($name, $expiration, $parameters = array()) + public static function temporarySignedRoute($name, $expiration, $parameters = [], $absolute = true) { /** @var \Illuminate\Routing\UrlGenerator $instance */ - return $instance->temporarySignedRoute($name, $expiration, $parameters); + return $instance->temporarySignedRoute($name, $expiration, $parameters, $absolute); } /** * Determine if the given request has a valid signature. * * @param \Illuminate\Http\Request $request + * @param bool $absolute * @return bool * @static */ - public static function hasValidSignature($request) + public static function hasValidSignature($request, $absolute = true) { /** @var \Illuminate\Routing\UrlGenerator $instance */ - return $instance->hasValidSignature($request); + return $instance->hasValidSignature($request, $absolute); + } + + /** + * Determine if the signature from the given request matches the URL. + * + * @param \Illuminate\Http\Request $request + * @param bool $absolute + * @return bool + * @static + */ + public static function hasCorrectSignature($request, $absolute = true) + { + /** @var \Illuminate\Routing\UrlGenerator $instance */ + return $instance->hasCorrectSignature($request, $absolute); + } + + /** + * Determine if the expires timestamp from the given request is not from the past. + * + * @param \Illuminate\Http\Request $request + * @return bool + * @static + */ + public static function signatureHasNotExpired($request) + { + /** @var \Illuminate\Routing\UrlGenerator $instance */ + return $instance->signatureHasNotExpired($request); } /** @@ -12799,26 +13731,42 @@ namespace Illuminate\Support\Facades { * @param mixed $parameters * @param bool $absolute * @return string - * @throws \InvalidArgumentException + * @throws \Symfony\Component\Routing\Exception\RouteNotFoundException * @static */ - public static function route($name, $parameters = array(), $absolute = true) + public static function route($name, $parameters = [], $absolute = true) { /** @var \Illuminate\Routing\UrlGenerator $instance */ return $instance->route($name, $parameters, $absolute); } + /** + * Get the URL for a given route instance. + * + * @param \Illuminate\Routing\Route $route + * @param mixed $parameters + * @param bool $absolute + * @return string + * @throws \Illuminate\Routing\Exceptions\UrlGenerationException + * @static + */ + public static function toRoute($route, $parameters, $absolute) + { + /** @var \Illuminate\Routing\UrlGenerator $instance */ + return $instance->toRoute($route, $parameters, $absolute); + } + /** * Get the URL to a controller action. * - * @param string $action + * @param string|array $action * @param mixed $parameters * @param bool $absolute * @return string * @throws \InvalidArgumentException * @static */ - public static function action($action, $parameters = array(), $absolute = true) + public static function action($action, $parameters = [], $absolute = true) { /** @var \Illuminate\Routing\UrlGenerator $instance */ return $instance->action($action, $parameters, $absolute); @@ -12841,7 +13789,7 @@ namespace Illuminate\Support\Facades { * Get the base URL for the request. * * @param string $scheme - * @param string $root + * @param string|null $root * @return string * @static */ @@ -12856,13 +13804,14 @@ namespace Illuminate\Support\Facades { * * @param string $root * @param string $path + * @param \Illuminate\Routing\Route|null $route * @return string * @static */ - public static function format($root, $path) + public static function format($root, $path, $route = null) { /** @var \Illuminate\Routing\UrlGenerator $instance */ - return $instance->format($root, $path); + return $instance->format($root, $path, $route); } /** @@ -12906,14 +13855,14 @@ namespace Illuminate\Support\Facades { /** * Force the scheme for URLs. * - * @param string $schema + * @param string $scheme * @return void * @static */ - public static function forceScheme($schema) + public static function forceScheme($scheme) { /** @var \Illuminate\Routing\UrlGenerator $instance */ - $instance->forceScheme($schema); + $instance->forceScheme($scheme); } /** @@ -12995,7 +13944,7 @@ namespace Illuminate\Support\Facades { /** * Set the route collection. * - * @param \Illuminate\Routing\RouteCollection $routes + * @param \Illuminate\Routing\RouteCollectionInterface $routes * @return \Illuminate\Routing\UrlGenerator * @static */ @@ -13061,13 +14010,14 @@ namespace Illuminate\Support\Facades { * Mix another object into the class. * * @param object $mixin + * @param bool $replace * @return void * @throws \ReflectionException * @static */ - public static function mixin($mixin) + public static function mixin($mixin, $replace = true) { - \Illuminate\Routing\UrlGenerator::mixin($mixin); + \Illuminate\Routing\UrlGenerator::mixin($mixin, $replace); } /** @@ -13101,7 +14051,7 @@ namespace Illuminate\Support\Facades { * @return \Illuminate\Validation\Validator * @static */ - public static function make($data, $rules, $messages = array(), $customAttributes = array()) + public static function make($data, $rules, $messages = [], $customAttributes = []) { /** @var \Illuminate\Validation\Factory $instance */ return $instance->make($data, $rules, $messages, $customAttributes); @@ -13118,7 +14068,7 @@ namespace Illuminate\Support\Facades { * @throws \Illuminate\Validation\ValidationException * @static */ - public static function validate($data, $rules, $messages = array(), $customAttributes = array()) + public static function validate($data, $rules, $messages = [], $customAttributes = []) { /** @var \Illuminate\Validation\Factory $instance */ return $instance->validate($data, $rules, $messages, $customAttributes); @@ -13129,7 +14079,7 @@ namespace Illuminate\Support\Facades { * * @param string $rule * @param \Closure|string $extension - * @param string $message + * @param string|null $message * @return void * @static */ @@ -13144,7 +14094,7 @@ namespace Illuminate\Support\Facades { * * @param string $rule * @param \Closure|string $extension - * @param string $message + * @param string|null $message * @return void * @static */ @@ -13159,7 +14109,7 @@ namespace Illuminate\Support\Facades { * * @param string $rule * @param \Closure|string $extension - * @param string $message + * @param string|null $message * @return void * @static */ @@ -13246,12 +14196,12 @@ namespace Illuminate\Support\Facades { * Get the evaluated view contents for the given view. * * @param string $path - * @param array $data + * @param \Illuminate\Contracts\Support\Arrayable|array $data * @param array $mergeData * @return \Illuminate\Contracts\View\View * @static */ - public static function file($path, $data = array(), $mergeData = array()) + public static function file($path, $data = [], $mergeData = []) { /** @var \Illuminate\View\Factory $instance */ return $instance->file($path, $data, $mergeData); @@ -13261,12 +14211,12 @@ namespace Illuminate\Support\Facades { * Get the evaluated view contents for the given view. * * @param string $view - * @param array $data + * @param \Illuminate\Contracts\Support\Arrayable|array $data * @param array $mergeData * @return \Illuminate\Contracts\View\View * @static */ - public static function make($view, $data = array(), $mergeData = array()) + public static function make($view, $data = [], $mergeData = []) { /** @var \Illuminate\View\Factory $instance */ return $instance->make($view, $data, $mergeData); @@ -13276,13 +14226,13 @@ namespace Illuminate\Support\Facades { * Get the first view that actually exists from the given list. * * @param array $views - * @param array $data + * @param \Illuminate\Contracts\Support\Arrayable|array $data * @param array $mergeData * @return \Illuminate\Contracts\View\View * @throws \InvalidArgumentException * @static */ - public static function first($views, $data = array(), $mergeData = array()) + public static function first($views, $data = [], $mergeData = []) { /** @var \Illuminate\View\Factory $instance */ return $instance->first($views, $data, $mergeData); @@ -13293,12 +14243,12 @@ namespace Illuminate\Support\Facades { * * @param bool $condition * @param string $view - * @param array $data + * @param \Illuminate\Contracts\Support\Arrayable|array $data * @param array $mergeData * @return string * @static */ - public static function renderWhen($condition, $view, $data = array(), $mergeData = array()) + public static function renderWhen($condition, $view, $data = [], $mergeData = []) { /** @var \Illuminate\View\Factory $instance */ return $instance->renderWhen($condition, $view, $data, $mergeData); @@ -13351,7 +14301,7 @@ namespace Illuminate\Support\Facades { * Add a piece of shared data to the environment. * * @param array|string $key - * @param mixed $value + * @param mixed|null $value * @return mixed * @static */ @@ -13457,7 +14407,7 @@ namespace Illuminate\Support\Facades { * * @param string $extension * @param string $engine - * @param \Closure $resolver + * @param \Closure|null $resolver * @return void * @static */ @@ -13629,17 +14579,70 @@ namespace Illuminate\Support\Facades { } /** - * Start a component rendering process. + * Register a custom macro. * * @param string $name + * @param object|callable $macro + * @return void + * @static + */ + public static function macro($name, $macro) + { + \Illuminate\View\Factory::macro($name, $macro); + } + + /** + * Mix another object into the class. + * + * @param object $mixin + * @param bool $replace + * @return void + * @throws \ReflectionException + * @static + */ + public static function mixin($mixin, $replace = true) + { + \Illuminate\View\Factory::mixin($mixin, $replace); + } + + /** + * Checks if macro is registered. + * + * @param string $name + * @return bool + * @static + */ + public static function hasMacro($name) + { + return \Illuminate\View\Factory::hasMacro($name); + } + + /** + * Start a component rendering process. + * + * @param \Illuminate\View\View|\Closure|string $view * @param array $data * @return void * @static */ - public static function startComponent($name, $data = array()) + public static function startComponent($view, $data = []) { /** @var \Illuminate\View\Factory $instance */ - $instance->startComponent($name, $data); + $instance->startComponent($view, $data); + } + + /** + * Get the first view that actually exists from the given list, and start a component. + * + * @param array $names + * @param array $data + * @return void + * @static + */ + public static function startComponentFirst($names, $data = []) + { + /** @var \Illuminate\View\Factory $instance */ + $instance->startComponentFirst($names, $data); } /** @@ -13857,7 +14860,7 @@ namespace Illuminate\Support\Facades { * Get the contents of a section. * * @param string $name - * @param string $default + * @param string|null $default * @return mixed * @static */ @@ -14039,7 +15042,7 @@ namespace Illuminate\Support\Facades { * @return void * @static */ - public static function startTranslation($replacements = array()) + public static function startTranslation($replacements = []) { /** @var \Illuminate\View\Factory $instance */ $instance->startTranslation($replacements); @@ -14135,6 +15138,19 @@ namespace Barryvdh\DomPDF { return $instance->loadFile($file); } + /** + * Add metadata info + * + * @param array $info + * @return static + * @static + */ + public static function addInfo($info) + { + /** @var \Barryvdh\DomPDF\PDF $instance */ + return $instance->addInfo($info); + } + /** * Load a View and convert to HTML * @@ -14145,7 +15161,7 @@ namespace Barryvdh\DomPDF { * @return static * @static */ - public static function loadView($view, $data = array(), $mergeData = array(), $encoding = null) + public static function loadView($view, $data = [], $mergeData = [], $encoding = null) { /** @var \Barryvdh\DomPDF\PDF $instance */ return $instance->loadView($view, $data, $mergeData, $encoding); @@ -14230,6 +15246,922 @@ namespace Barryvdh\DomPDF { } +namespace DaveJamesMiller\Breadcrumbs\Facades { + + /** + * Breadcrumbs facade - allows easy access to the Manager instance. + * + * @method static array getCurrentRoute() + * @mixin \Illuminate\Support\Traits\Macroable + * @see BreadcrumbsManager + */ + class Breadcrumbs { + + /** + * Register a breadcrumb-generating callback for a page. + * + * @param string $name The name of the page. + * @param callable $callback The callback, which should accept a Generator instance as the first parameter and may + * accept additional parameters. + * @return void + * @throws \DaveJamesMiller\Breadcrumbs\Exceptions\DuplicateBreadcrumbException If the given name has already been + * used. + * @static + */ + public static function for($name, $callback) + { + /** @var \DaveJamesMiller\Breadcrumbs\BreadcrumbsManager $instance */ + $instance->for($name, $callback); + } + + /** + * Register a breadcrumb-generating callback for a page. + * + * For backwards-compatibility with v5.0.0 and below. + * + * @param string $name The name of the page. + * @param callable $callback The callback, which should accept a Generator instance as the first parameter and may + * accept additional parameters. + * @return void + * @throws \DaveJamesMiller\Breadcrumbs\Exceptions\DuplicateBreadcrumbException If the given name has already been + * used. + * @see self::for() + * @static + */ + public static function register($name, $callback) + { + /** @var \DaveJamesMiller\Breadcrumbs\BreadcrumbsManager $instance */ + $instance->register($name, $callback); + } + + /** + * Register a closure to call before generating breadcrumbs for the current page. + * + * For example, this can be used to always prepend the homepage without needing to manually add it to each page. + * + * @param callable $callback The callback, which should accept a Generator instance as the first and only parameter. + * @return void + * @static + */ + public static function before($callback) + { + /** @var \DaveJamesMiller\Breadcrumbs\BreadcrumbsManager $instance */ + $instance->before($callback); + } + + /** + * Register a closure to call after generating breadcrumbs for the current page. + * + * For example, this can be used to append the current page number when using pagination. + * + * @param callable $callback The callback, which should accept a Generator instance as the first and only parameter. + * @return void + * @static + */ + public static function after($callback) + { + /** @var \DaveJamesMiller\Breadcrumbs\BreadcrumbsManager $instance */ + $instance->after($callback); + } + + /** + * Check if a breadcrumb with the given name exists. + * + * If no name is given, defaults to the current route name. + * + * @param string|null $name The page name. + * @return bool Whether there is a registered callback with that name. + * @static + */ + public static function exists($name = null) + { + /** @var \DaveJamesMiller\Breadcrumbs\BreadcrumbsManager $instance */ + return $instance->exists($name); + } + + /** + * Generate a set of breadcrumbs for a page. + * + * @param string|null $name The name of the current page. + * @param mixed $params The parameters to pass to the closure for the current page. + * @return \Illuminate\Support\Collection The generated breadcrumbs. + * @throws \DaveJamesMiller\Breadcrumbs\Exceptions\UnnamedRouteException if no name is given and the current route + * doesn't have an associated name. + * @throws \DaveJamesMiller\Breadcrumbs\Exceptions\InvalidBreadcrumbException if the name is (or any ancestor names + * are) not registered. + * @static + */ + public static function generate($name = null, ...$params) + { + /** @var \DaveJamesMiller\Breadcrumbs\BreadcrumbsManager $instance */ + return $instance->generate($name, ...$params); + } + + /** + * Render breadcrumbs for a page with the specified view. + * + * @param string $view The name of the view to render. + * @param string|null $name The name of the current page. + * @param mixed $params The parameters to pass to the closure for the current page. + * @return \Illuminate\Support\HtmlString The generated HTML. + * @throws \DaveJamesMiller\Breadcrumbs\Exceptions\InvalidBreadcrumbException if the name is (or any ancestor names are) not registered. + * @throws \DaveJamesMiller\Breadcrumbs\Exceptions\UnnamedRouteException if no name is given and the current route doesn't have an associated name. + * @throws \DaveJamesMiller\Breadcrumbs\Exceptions\ViewNotSetException if no view has been set. + * @static + */ + public static function view($view, $name = null, ...$params) + { + /** @var \DaveJamesMiller\Breadcrumbs\BreadcrumbsManager $instance */ + return $instance->view($view, $name, ...$params); + } + + /** + * Render breadcrumbs for a page with the default view. + * + * @param string|null $name The name of the current page. + * @param mixed $params The parameters to pass to the closure for the current page. + * @return \Illuminate\Support\HtmlString The generated HTML. + * @throws \DaveJamesMiller\Breadcrumbs\Exceptions\InvalidBreadcrumbException if the name is (or any ancestor names are) not registered. + * @throws \DaveJamesMiller\Breadcrumbs\Exceptions\UnnamedRouteException if no name is given and the current route doesn't have an associated name. + * @throws \DaveJamesMiller\Breadcrumbs\Exceptions\ViewNotSetException if no view has been set. + * @static + */ + public static function render($name = null, ...$params) + { + /** @var \DaveJamesMiller\Breadcrumbs\BreadcrumbsManager $instance */ + return $instance->render($name, ...$params); + } + + /** + * Get the last breadcrumb for the current page. + * + * Optionally pass a + * + * @return \stdClass|null The breadcrumb for the current page. + * @throws \DaveJamesMiller\Breadcrumbs\Exceptions\UnnamedRouteException if the current route doesn't have an associated name. + * @throws \DaveJamesMiller\Breadcrumbs\Exceptions\InvalidBreadcrumbException if the name is (or any ancestor names are) not registered. + * @static + */ + public static function current() + { + /** @var \DaveJamesMiller\Breadcrumbs\BreadcrumbsManager $instance */ + return $instance->current(); + } + + /** + * Set the current route name and parameters to use when calling render() or generate() with no parameters. + * + * @param string $name The name of the current page. + * @param mixed $params The parameters to pass to the closure for the current page. + * @return void + * @static + */ + public static function setCurrentRoute($name, ...$params) + { + /** @var \DaveJamesMiller\Breadcrumbs\BreadcrumbsManager $instance */ + $instance->setCurrentRoute($name, ...$params); + } + + /** + * Clear the previously set route name and parameters to use when calling render() or generate() with no parameters. + * + * Next time it will revert to the default behaviour of using the current route from Laravel. + * + * @return void + * @static + */ + public static function clearCurrentRoute() + { + /** @var \DaveJamesMiller\Breadcrumbs\BreadcrumbsManager $instance */ + $instance->clearCurrentRoute(); + } + + /** + * Register a custom macro. + * + * @param string $name + * @param object|callable $macro + * @return void + * @static + */ + public static function macro($name, $macro) + { + \DaveJamesMiller\Breadcrumbs\BreadcrumbsManager::macro($name, $macro); + } + + /** + * Mix another object into the class. + * + * @param object $mixin + * @param bool $replace + * @return void + * @throws \ReflectionException + * @static + */ + public static function mixin($mixin, $replace = true) + { + \DaveJamesMiller\Breadcrumbs\BreadcrumbsManager::mixin($mixin, $replace); + } + + /** + * Checks if macro is registered. + * + * @param string $name + * @return bool + * @static + */ + public static function hasMacro($name) + { + return \DaveJamesMiller\Breadcrumbs\BreadcrumbsManager::hasMacro($name); + } + + } + +} + +namespace Facade\Ignition\Facades { + + /** + * Class Flare. + * + * @see \Facade\FlareClient\Flare + */ + class Flare { + + /** + * + * + * @static + */ + public static function register($apiKey, $apiSecret = null, $contextDetector = null, $container = null) + { + return \Facade\FlareClient\Flare::register($apiKey, $apiSecret, $contextDetector, $container); + } + + /** + * + * + * @static + */ + public static function getMiddleware() + { + /** @var \Facade\FlareClient\Flare $instance */ + return $instance->getMiddleware(); + } + + /** + * + * + * @static + */ + public static function registerFlareHandlers() + { + /** @var \Facade\FlareClient\Flare $instance */ + return $instance->registerFlareHandlers(); + } + + /** + * + * + * @static + */ + public static function registerExceptionHandler() + { + /** @var \Facade\FlareClient\Flare $instance */ + return $instance->registerExceptionHandler(); + } + + /** + * + * + * @static + */ + public static function registerErrorHandler() + { + /** @var \Facade\FlareClient\Flare $instance */ + return $instance->registerErrorHandler(); + } + + /** + * + * + * @static + */ + public static function registerMiddleware($callable) + { + /** @var \Facade\FlareClient\Flare $instance */ + return $instance->registerMiddleware($callable); + } + + /** + * + * + * @static + */ + public static function getMiddlewares() + { + /** @var \Facade\FlareClient\Flare $instance */ + return $instance->getMiddlewares(); + } + + /** + * + * + * @static + */ + public static function glow($name, $messageLevel = 'info', $metaData = []) + { + /** @var \Facade\FlareClient\Flare $instance */ + return $instance->glow($name, $messageLevel, $metaData); + } + + /** + * + * + * @static + */ + public static function handleException($throwable) + { + /** @var \Facade\FlareClient\Flare $instance */ + return $instance->handleException($throwable); + } + + /** + * + * + * @static + */ + public static function handleError($code, $message, $file = '', $line = 0) + { + /** @var \Facade\FlareClient\Flare $instance */ + return $instance->handleError($code, $message, $file, $line); + } + + /** + * + * + * @static + */ + public static function applicationPath($applicationPath) + { + /** @var \Facade\FlareClient\Flare $instance */ + return $instance->applicationPath($applicationPath); + } + + /** + * + * + * @static + */ + public static function report($throwable, $callback = null) + { + /** @var \Facade\FlareClient\Flare $instance */ + return $instance->report($throwable, $callback); + } + + /** + * + * + * @static + */ + public static function reportMessage($message, $logLevel, $callback = null) + { + /** @var \Facade\FlareClient\Flare $instance */ + return $instance->reportMessage($message, $logLevel, $callback); + } + + /** + * + * + * @static + */ + public static function sendTestReport($throwable) + { + /** @var \Facade\FlareClient\Flare $instance */ + return $instance->sendTestReport($throwable); + } + + /** + * + * + * @static + */ + public static function reset() + { + /** @var \Facade\FlareClient\Flare $instance */ + return $instance->reset(); + } + + /** + * + * + * @static + */ + public static function anonymizeIp() + { + /** @var \Facade\FlareClient\Flare $instance */ + return $instance->anonymizeIp(); + } + + /** + * + * + * @static + */ + public static function createReport($throwable) + { + /** @var \Facade\FlareClient\Flare $instance */ + return $instance->createReport($throwable); + } + + /** + * + * + * @static + */ + public static function createReportFromMessage($message, $logLevel) + { + /** @var \Facade\FlareClient\Flare $instance */ + return $instance->createReportFromMessage($message, $logLevel); + } + + /** + * + * + * @static + */ + public static function stage($stage) + { + /** @var \Facade\FlareClient\Flare $instance */ + return $instance->stage($stage); + } + + /** + * + * + * @static + */ + public static function messageLevel($messageLevel) + { + /** @var \Facade\FlareClient\Flare $instance */ + return $instance->messageLevel($messageLevel); + } + + /** + * + * + * @static + */ + public static function getGroup($groupName = 'context', $default = []) + { + /** @var \Facade\FlareClient\Flare $instance */ + return $instance->getGroup($groupName, $default); + } + + /** + * + * + * @static + */ + public static function context($key, $value) + { + /** @var \Facade\FlareClient\Flare $instance */ + return $instance->context($key, $value); + } + + /** + * + * + * @static + */ + public static function group($groupName, $properties) + { + /** @var \Facade\FlareClient\Flare $instance */ + return $instance->group($groupName, $properties); + } + + } + +} + +namespace Nexmo\Laravel\Facade { + + /** + * + * + */ + class Nexmo { + + /** + * + * + * @static + */ + public static function getRestUrl() + { + /** @var \Nexmo\Client $instance */ + return $instance->getRestUrl(); + } + + /** + * + * + * @static + */ + public static function getApiUrl() + { + /** @var \Nexmo\Client $instance */ + return $instance->getApiUrl(); + } + + /** + * Set the Http Client to used to make API requests. + * + * This allows the default http client to be swapped out for a HTTPlug compatible + * replacement. + * + * @param \Nexmo\HttpClient $client + * @return \Nexmo\Client + * @static + */ + public static function setHttpClient($client) + { + /** @var \Nexmo\Client $instance */ + return $instance->setHttpClient($client); + } + + /** + * Get the Http Client used to make API requests. + * + * @return \Nexmo\HttpClient + * @static + */ + public static function getHttpClient() + { + /** @var \Nexmo\Client $instance */ + return $instance->getHttpClient(); + } + + /** + * Set the factory used to create API specific clients. + * + * @param \Nexmo\FactoryInterface $factory + * @return \Nexmo\Client + * @static + */ + public static function setFactory($factory) + { + /** @var \Nexmo\Client $instance */ + return $instance->setFactory($factory); + } + + /** + * + * + * @param \Nexmo\RequestInterface $request + * @param \Nexmo\Signature $signature + * @return \Nexmo\RequestInterface + * @static + */ + public static function signRequest($request, $credentials) + { + return \Nexmo\Client::signRequest($request, $credentials); + } + + /** + * + * + * @static + */ + public static function authRequest($request, $credentials) + { + return \Nexmo\Client::authRequest($request, $credentials); + } + + /** + * + * + * @param array $claims + * @return \Lcobucci\JWT\Token + * @static + */ + public static function generateJwt($claims = []) + { + /** @var \Nexmo\Client $instance */ + return $instance->generateJwt($claims); + } + + /** + * Takes a URL and a key=>value array to generate a GET PSR-7 request object + * + * @param string $url The URL to make a request to + * @param array $params Key=>Value array of data to use as the query string + * @return \Psr\Http\Message\ResponseInterface + * @static + */ + public static function get($url, $params = []) + { + /** @var \Nexmo\Client $instance */ + return $instance->get($url, $params); + } + + /** + * Takes a URL and a key=>value array to generate a POST PSR-7 request object + * + * @param string $url The URL to make a request to + * @param array $params Key=>Value array of data to send + * @return \Psr\Http\Message\ResponseInterface + * @static + */ + public static function post($url, $params) + { + /** @var \Nexmo\Client $instance */ + return $instance->post($url, $params); + } + + /** + * Takes a URL and a key=>value array to generate a POST PSR-7 request object + * + * @param string $url The URL to make a request to + * @param array $params Key=>Value array of data to send + * @return \Psr\Http\Message\ResponseInterface + * @static + */ + public static function postUrlEncoded($url, $params) + { + /** @var \Nexmo\Client $instance */ + return $instance->postUrlEncoded($url, $params); + } + + /** + * Takes a URL and a key=>value array to generate a PUT PSR-7 request object + * + * @param string $url The URL to make a request to + * @param array $params Key=>Value array of data to send + * @return \Psr\Http\Message\ResponseInterface + * @static + */ + public static function put($url, $params) + { + /** @var \Nexmo\Client $instance */ + return $instance->put($url, $params); + } + + /** + * Takes a URL and a key=>value array to generate a DELETE PSR-7 request object + * + * @param string $url The URL to make a request to + * @return \Psr\Http\Message\ResponseInterface + * @static + */ + public static function delete($url) + { + /** @var \Nexmo\Client $instance */ + return $instance->delete($url); + } + + /** + * Wraps the HTTP Client, creates a new PSR-7 request adding authentication, signatures, etc. + * + * @param \Psr\Http\Message\RequestInterface $request + * @return \Psr\Http\Message\ResponseInterface + * @static + */ + public static function send($request) + { + /** @var \Nexmo\Client $instance */ + return $instance->send($request); + } + + /** + * + * + * @static + */ + public static function serialize($entity) + { + /** @var \Nexmo\Client $instance */ + return $instance->serialize($entity); + } + + /** + * + * + * @static + */ + public static function unserialize($entity) + { + /** @var \Nexmo\Client $instance */ + return $instance->unserialize($entity); + } + + } + +} + +namespace PragmaRX\Version\Package { + + /** + * + * + */ + class Facade { + + /** + * Get a version. + * + * @param $type + * @return string + * @static + */ + public static function getGit() + { + /** @var \PragmaRX\Version\Package\Version $instance */ + return $instance->getGit(); + } + + /** + * Get the current version. + * + * @return string + * @static + */ + public static function current() + { + /** @var \PragmaRX\Version\Package\Version $instance */ + return $instance->current(); + } + + /** + * Get the current object instance. + * + * @return \PragmaRX\Version\Package\Version + * @static + */ + public static function instance() + { + /** @var \PragmaRX\Version\Package\Version $instance */ + return $instance->instance(); + } + + /** + * Get a properly formatted version. + * + * @param $type + * @return mixed|null + * @static + */ + public static function format($type = null) + { + /** @var \PragmaRX\Version\Package\Version $instance */ + return $instance->format($type); + } + + /** + * Is it in absorb mode? + * + * @param $type + * @return bool + * @static + */ + public static function isInAbsorbMode() + { + /** @var \PragmaRX\Version\Package\Version $instance */ + return $instance->isInAbsorbMode(); + } + + /** + * Is version in absorb mode? + * + * @param $type + * @return bool + * @static + */ + public static function isVersionInAbsorbMode() + { + /** @var \PragmaRX\Version\Package\Version $instance */ + return $instance->isVersionInAbsorbMode(); + } + + /** + * Is build in absorb mode? + * + * @param $type + * @return bool + * @static + */ + public static function isBuildInAbsorbMode() + { + /** @var \PragmaRX\Version\Package\Version $instance */ + return $instance->isBuildInAbsorbMode(); + } + + /** + * Is timestamp in absorb mode? + * + * @param $type + * @return bool + * @static + */ + public static function isTimestampInAbsorbMode() + { + /** @var \PragmaRX\Version\Package\Version $instance */ + return $instance->isTimestampInAbsorbMode(); + } + + /** + * Set the config file stub. + * + * @param string $configFileStub + * @static + */ + public static function setConfigFileStub($configFileStub) + { + /** @var \PragmaRX\Version\Package\Version $instance */ + return $instance->setConfigFileStub($configFileStub); + } + + /** + * Load package YAML configuration. + * + * @param $path + * @return \Illuminate\Support\Collection + * @static + */ + public static function loadConfig($path = null) + { + /** @var \PragmaRX\Version\Package\Version $instance */ + return $instance->loadConfig($path); + } + + } + +} + +namespace PragmaRX\Yaml\Package { + + /** + * + * + */ + class Facade { + + /** + * Load yaml files from directory and add to Laravel config. + * + * @param string $path + * @param string $configKey + * @return \PragmaRX\Yaml\Package\Collection + * @static + */ + public static function loadToConfig($path, $configKey) + { + /** @var \PragmaRX\Yaml\Package\Yaml $instance */ + return $instance->loadToConfig($path, $configKey); + } + + /** + * Load all yaml files from a directory. + * + * @param $path + * @return \Illuminate\Support\Collection + * @static + */ + public static function loadFromDirectory($path) + { + /** @var \PragmaRX\Yaml\Package\Yaml $instance */ + return $instance->loadFromDirectory($path); + } + + /** + * Load yaml file. + * + * @param $file + * @return mixed|string + * @static + */ + public static function loadFile($file) + { + /** @var \PragmaRX\Yaml\Package\Yaml $instance */ + return $instance->loadFile($file); + } + + /** + * Get this object instance. + * + * @return \PragmaRX\Yaml\Package\Yaml + * @static + */ + public static function instance() + { + /** @var \PragmaRX\Yaml\Package\Yaml $instance */ + return $instance->instance(); + } + + } + +} + namespace { @@ -14260,10 +16192,10 @@ namespace { * Create and return an un-saved model instance. * * @param array $attributes - * @return \Illuminate\Database\Eloquent\Model + * @return \Illuminate\Database\Eloquent\Model|static * @static */ - public static function make($attributes = array()) + public static function make($attributes = []) { /** @var \Illuminate\Database\Eloquent\Builder $instance */ return $instance->make($attributes); @@ -14350,7 +16282,7 @@ namespace { /** * Add a basic where clause to the query. * - * @param string|array|\Closure $column + * @param \Closure|string|array $column * @param mixed $operator * @param mixed $value * @param string $boolean @@ -14363,13 +16295,29 @@ namespace { return $instance->where($column, $operator, $value, $boolean); } + /** + * Add a basic where clause to the query, and return the first result. + * + * @param \Closure|string|array $column + * @param mixed $operator + * @param mixed $value + * @param string $boolean + * @return \Illuminate\Database\Eloquent\Model|static + * @static + */ + public static function firstWhere($column, $operator = null, $value = null, $boolean = 'and') + { + /** @var \Illuminate\Database\Eloquent\Builder $instance */ + return $instance->firstWhere($column, $operator, $value, $boolean); + } + /** * Add an "or where" clause to the query. * * @param \Closure|array|string $column * @param mixed $operator * @param mixed $value - * @return \Illuminate\Database\Eloquent\Builder|static + * @return \Illuminate\Database\Eloquent\Builder * @static */ public static function orWhere($column, $operator = null, $value = null) @@ -14378,6 +16326,32 @@ namespace { return $instance->orWhere($column, $operator, $value); } + /** + * Add an "order by" clause for a timestamp to the query. + * + * @param string $column + * @return \Illuminate\Database\Eloquent\Builder + * @static + */ + public static function latest($column = null) + { + /** @var \Illuminate\Database\Eloquent\Builder $instance */ + return $instance->latest($column); + } + + /** + * Add an "order by" clause for a timestamp to the query. + * + * @param string $column + * @return \Illuminate\Database\Eloquent\Builder + * @static + */ + public static function oldest($column = null) + { + /** @var \Illuminate\Database\Eloquent\Builder $instance */ + return $instance->oldest($column); + } + /** * Create a collection of models from plain arrays. * @@ -14399,7 +16373,7 @@ namespace { * @return \Illuminate\Database\Eloquent\Collection * @static */ - public static function fromQuery($query, $bindings = array()) + public static function fromQuery($query, $bindings = []) { /** @var \Illuminate\Database\Eloquent\Builder $instance */ return $instance->fromQuery($query, $bindings); @@ -14413,7 +16387,7 @@ namespace { * @return \Illuminate\Database\Eloquent\Model|\Illuminate\Database\Eloquent\Collection|static[]|static|null * @static */ - public static function find($id, $columns = array()) + public static function find($id, $columns = []) { /** @var \Illuminate\Database\Eloquent\Builder $instance */ return $instance->find($id, $columns); @@ -14427,7 +16401,7 @@ namespace { * @return \Illuminate\Database\Eloquent\Collection * @static */ - public static function findMany($ids, $columns = array()) + public static function findMany($ids, $columns = []) { /** @var \Illuminate\Database\Eloquent\Builder $instance */ return $instance->findMany($ids, $columns); @@ -14442,7 +16416,7 @@ namespace { * @throws \Illuminate\Database\Eloquent\ModelNotFoundException * @static */ - public static function findOrFail($id, $columns = array()) + public static function findOrFail($id, $columns = []) { /** @var \Illuminate\Database\Eloquent\Builder $instance */ return $instance->findOrFail($id, $columns); @@ -14453,10 +16427,10 @@ namespace { * * @param mixed $id * @param array $columns - * @return \Illuminate\Database\Eloquent\Model + * @return \Illuminate\Database\Eloquent\Model|static * @static */ - public static function findOrNew($id, $columns = array()) + public static function findOrNew($id, $columns = []) { /** @var \Illuminate\Database\Eloquent\Builder $instance */ return $instance->findOrNew($id, $columns); @@ -14467,10 +16441,10 @@ namespace { * * @param array $attributes * @param array $values - * @return \Illuminate\Database\Eloquent\Model + * @return \Illuminate\Database\Eloquent\Model|static * @static */ - public static function firstOrNew($attributes, $values = array()) + public static function firstOrNew($attributes = [], $values = []) { /** @var \Illuminate\Database\Eloquent\Builder $instance */ return $instance->firstOrNew($attributes, $values); @@ -14481,10 +16455,10 @@ namespace { * * @param array $attributes * @param array $values - * @return \Illuminate\Database\Eloquent\Model + * @return \Illuminate\Database\Eloquent\Model|static * @static */ - public static function firstOrCreate($attributes, $values = array()) + public static function firstOrCreate($attributes, $values = []) { /** @var \Illuminate\Database\Eloquent\Builder $instance */ return $instance->firstOrCreate($attributes, $values); @@ -14495,10 +16469,10 @@ namespace { * * @param array $attributes * @param array $values - * @return \Illuminate\Database\Eloquent\Model + * @return \Illuminate\Database\Eloquent\Model|static * @static */ - public static function updateOrCreate($attributes, $values = array()) + public static function updateOrCreate($attributes, $values = []) { /** @var \Illuminate\Database\Eloquent\Builder $instance */ return $instance->updateOrCreate($attributes, $values); @@ -14512,7 +16486,7 @@ namespace { * @throws \Illuminate\Database\Eloquent\ModelNotFoundException * @static */ - public static function firstOrFail($columns = array()) + public static function firstOrFail($columns = []) { /** @var \Illuminate\Database\Eloquent\Builder $instance */ return $instance->firstOrFail($columns); @@ -14526,7 +16500,7 @@ namespace { * @return \Illuminate\Database\Eloquent\Model|static|mixed * @static */ - public static function firstOr($columns = array(), $callback = null) + public static function firstOr($columns = [], $callback = null) { /** @var \Illuminate\Database\Eloquent\Builder $instance */ return $instance->firstOr($columns, $callback); @@ -14548,11 +16522,11 @@ namespace { /** * Execute the query as a "select" statement. * - * @param array $columns + * @param array|string $columns * @return \Illuminate\Database\Eloquent\Collection|static[] * @static */ - public static function get($columns = array()) + public static function get($columns = []) { /** @var \Illuminate\Database\Eloquent\Builder $instance */ return $instance->get($columns); @@ -14561,11 +16535,11 @@ namespace { /** * Get the hydrated models without eager loading. * - * @param array $columns - * @return \Illuminate\Database\Eloquent\Model[] + * @param array|string $columns + * @return \Illuminate\Database\Eloquent\Model[]|static[] * @static */ - public static function getModels($columns = array()) + public static function getModels($columns = []) { /** @var \Illuminate\Database\Eloquent\Builder $instance */ return $instance->getModels($columns); @@ -14585,9 +16559,9 @@ namespace { } /** - * Get a generator for the given query. + * Get a lazy collection for the given query. * - * @return \Generator + * @return \Illuminate\Support\LazyCollection * @static */ public static function cursor() @@ -14596,22 +16570,6 @@ namespace { return $instance->cursor(); } - /** - * Chunk the results of a query by comparing numeric IDs. - * - * @param int $count - * @param callable $callback - * @param string|null $column - * @param string|null $alias - * @return bool - * @static - */ - public static function chunkById($count, $callback, $column = null, $alias = null) - { - /** @var \Illuminate\Database\Eloquent\Builder $instance */ - return $instance->chunkById($count, $callback, $column, $alias); - } - /** * Get an array with the values of a given column. * @@ -14629,7 +16587,7 @@ namespace { /** * Paginate the given query. * - * @param int $perPage + * @param int|null $perPage * @param array $columns * @param string $pageName * @param int|null $page @@ -14637,7 +16595,7 @@ namespace { * @throws \InvalidArgumentException * @static */ - public static function paginate($perPage = null, $columns = array(), $pageName = 'page', $page = null) + public static function paginate($perPage = null, $columns = [], $pageName = 'page', $page = null) { /** @var \Illuminate\Database\Eloquent\Builder $instance */ return $instance->paginate($perPage, $columns, $pageName, $page); @@ -14646,14 +16604,14 @@ namespace { /** * Paginate the given query into a simple paginator. * - * @param int $perPage + * @param int|null $perPage * @param array $columns * @param string $pageName * @param int|null $page * @return \Illuminate\Contracts\Pagination\Paginator * @static */ - public static function simplePaginate($perPage = null, $columns = array(), $pageName = 'page', $page = null) + public static function simplePaginate($perPage = null, $columns = [], $pageName = 'page', $page = null) { /** @var \Illuminate\Database\Eloquent\Builder $instance */ return $instance->simplePaginate($perPage, $columns, $pageName, $page); @@ -14666,7 +16624,7 @@ namespace { * @return \Illuminate\Database\Eloquent\Model|$this * @static */ - public static function create($attributes = array()) + public static function create($attributes = []) { /** @var \Illuminate\Database\Eloquent\Builder $instance */ return $instance->create($attributes); @@ -14701,8 +16659,8 @@ namespace { /** * Call the given local model scopes. * - * @param array $scopes - * @return mixed + * @param array|string $scopes + * @return static|mixed * @static */ public static function scopes($scopes) @@ -14714,7 +16672,7 @@ namespace { /** * Apply the scopes to the Eloquent builder instance and return it. * - * @return \Illuminate\Database\Eloquent\Builder|static + * @return static * @static */ public static function applyScopes() @@ -14740,15 +16698,28 @@ namespace { * Create a new instance of the model being queried. * * @param array $attributes - * @return \Illuminate\Database\Eloquent\Model + * @return \Illuminate\Database\Eloquent\Model|static * @static */ - public static function newModelInstance($attributes = array()) + public static function newModelInstance($attributes = []) { /** @var \Illuminate\Database\Eloquent\Builder $instance */ return $instance->newModelInstance($attributes); } + /** + * Apply query-time casts to the model instance. + * + * @param array $casts + * @return \Illuminate\Database\Eloquent\Builder + * @static + */ + public static function withCasts($casts) + { + /** @var \Illuminate\Database\Eloquent\Builder $instance */ + return $instance->withCasts($casts); + } + /** * Get the underlying query builder instance. * @@ -14814,7 +16785,7 @@ namespace { /** * Get the model instance being queried. * - * @return \Illuminate\Database\Eloquent\Model + * @return \Illuminate\Database\Eloquent\Model|static * @static */ public static function getModel() @@ -14849,6 +16820,43 @@ namespace { return $instance->getMacro($name); } + /** + * Checks if a macro is registered. + * + * @param string $name + * @return bool + * @static + */ + public static function hasMacro($name) + { + /** @var \Illuminate\Database\Eloquent\Builder $instance */ + return $instance->hasMacro($name); + } + + /** + * Get the given global macro by name. + * + * @param string $name + * @return \Closure + * @static + */ + public static function getGlobalMacro($name) + { + return \Illuminate\Database\Eloquent\Builder::getGlobalMacro($name); + } + + /** + * Checks if a global macro is registered. + * + * @param string $name + * @return bool + * @static + */ + public static function hasGlobalMacro($name) + { + return \Illuminate\Database\Eloquent\Builder::hasGlobalMacro($name); + } + /** * Chunk the results of the query. * @@ -14877,14 +16885,46 @@ namespace { return $instance->each($callback, $count); } + /** + * Chunk the results of a query by comparing IDs. + * + * @param int $count + * @param callable $callback + * @param string|null $column + * @param string|null $alias + * @return bool + * @static + */ + public static function chunkById($count, $callback, $column = null, $alias = null) + { + /** @var \Illuminate\Database\Eloquent\Builder $instance */ + return $instance->chunkById($count, $callback, $column, $alias); + } + + /** + * Execute a callback over each item while chunking by ID. + * + * @param callable $callback + * @param int $count + * @param string|null $column + * @param string|null $alias + * @return bool + * @static + */ + public static function eachById($callback, $count = 1000, $column = null, $alias = null) + { + /** @var \Illuminate\Database\Eloquent\Builder $instance */ + return $instance->eachById($callback, $count, $column, $alias); + } + /** * Execute the query and get the first result. * - * @param array $columns + * @param array|string $columns * @return \Illuminate\Database\Eloquent\Model|object|static|null * @static */ - public static function first($columns = array()) + public static function first($columns = []) { /** @var \Illuminate\Database\Eloquent\Builder $instance */ return $instance->first($columns); @@ -14895,7 +16935,7 @@ namespace { * * @param mixed $value * @param callable $callback - * @param callable $default + * @param callable|null $default * @return mixed|$this * @static */ @@ -14908,8 +16948,8 @@ namespace { /** * Pass the query to a given callback. * - * @param \Closure $callback - * @return \Illuminate\Database\Query\Builder + * @param callable $callback + * @return \Illuminate\Database\Eloquent\Builder * @static */ public static function tap($callback) @@ -14923,7 +16963,7 @@ namespace { * * @param mixed $value * @param callable $callback - * @param callable $default + * @param callable|null $default * @return mixed|$this * @static */ @@ -14936,12 +16976,13 @@ namespace { /** * Add a relationship count / exists condition to the query. * - * @param string $relation + * @param \Illuminate\Database\Eloquent\Relations\Relation|string $relation * @param string $operator * @param int $count * @param string $boolean * @param \Closure|null $callback * @return \Illuminate\Database\Eloquent\Builder|static + * @throws \RuntimeException * @static */ public static function has($relation, $operator = '>=', $count = 1, $boolean = 'and', $callback = null) @@ -15013,7 +17054,7 @@ namespace { * Add a relationship count / exists condition to the query with where clauses and an "or". * * @param string $relation - * @param \Closure $callback + * @param \Closure|null $callback * @param string $operator * @param int $count * @return \Illuminate\Database\Eloquent\Builder|static @@ -15043,7 +17084,7 @@ namespace { * Add a relationship count / exists condition to the query with where clauses and an "or". * * @param string $relation - * @param \Closure $callback + * @param \Closure|null $callback * @return \Illuminate\Database\Eloquent\Builder|static * @static */ @@ -15053,6 +17094,134 @@ namespace { return $instance->orWhereDoesntHave($relation, $callback); } + /** + * Add a polymorphic relationship count / exists condition to the query. + * + * @param string $relation + * @param string|array $types + * @param string $operator + * @param int $count + * @param string $boolean + * @param \Closure|null $callback + * @return \Illuminate\Database\Eloquent\Builder|static + * @static + */ + public static function hasMorph($relation, $types, $operator = '>=', $count = 1, $boolean = 'and', $callback = null) + { + /** @var \Illuminate\Database\Eloquent\Builder $instance */ + return $instance->hasMorph($relation, $types, $operator, $count, $boolean, $callback); + } + + /** + * Add a polymorphic relationship count / exists condition to the query with an "or". + * + * @param string $relation + * @param string|array $types + * @param string $operator + * @param int $count + * @return \Illuminate\Database\Eloquent\Builder|static + * @static + */ + public static function orHasMorph($relation, $types, $operator = '>=', $count = 1) + { + /** @var \Illuminate\Database\Eloquent\Builder $instance */ + return $instance->orHasMorph($relation, $types, $operator, $count); + } + + /** + * Add a polymorphic relationship count / exists condition to the query. + * + * @param string $relation + * @param string|array $types + * @param string $boolean + * @param \Closure|null $callback + * @return \Illuminate\Database\Eloquent\Builder|static + * @static + */ + public static function doesntHaveMorph($relation, $types, $boolean = 'and', $callback = null) + { + /** @var \Illuminate\Database\Eloquent\Builder $instance */ + return $instance->doesntHaveMorph($relation, $types, $boolean, $callback); + } + + /** + * Add a polymorphic relationship count / exists condition to the query with an "or". + * + * @param string $relation + * @param string|array $types + * @return \Illuminate\Database\Eloquent\Builder|static + * @static + */ + public static function orDoesntHaveMorph($relation, $types) + { + /** @var \Illuminate\Database\Eloquent\Builder $instance */ + return $instance->orDoesntHaveMorph($relation, $types); + } + + /** + * Add a polymorphic relationship count / exists condition to the query with where clauses. + * + * @param string $relation + * @param string|array $types + * @param \Closure|null $callback + * @param string $operator + * @param int $count + * @return \Illuminate\Database\Eloquent\Builder|static + * @static + */ + public static function whereHasMorph($relation, $types, $callback = null, $operator = '>=', $count = 1) + { + /** @var \Illuminate\Database\Eloquent\Builder $instance */ + return $instance->whereHasMorph($relation, $types, $callback, $operator, $count); + } + + /** + * Add a polymorphic relationship count / exists condition to the query with where clauses and an "or". + * + * @param string $relation + * @param string|array $types + * @param \Closure|null $callback + * @param string $operator + * @param int $count + * @return \Illuminate\Database\Eloquent\Builder|static + * @static + */ + public static function orWhereHasMorph($relation, $types, $callback = null, $operator = '>=', $count = 1) + { + /** @var \Illuminate\Database\Eloquent\Builder $instance */ + return $instance->orWhereHasMorph($relation, $types, $callback, $operator, $count); + } + + /** + * Add a polymorphic relationship count / exists condition to the query with where clauses. + * + * @param string $relation + * @param string|array $types + * @param \Closure|null $callback + * @return \Illuminate\Database\Eloquent\Builder|static + * @static + */ + public static function whereDoesntHaveMorph($relation, $types, $callback = null) + { + /** @var \Illuminate\Database\Eloquent\Builder $instance */ + return $instance->whereDoesntHaveMorph($relation, $types, $callback); + } + + /** + * Add a polymorphic relationship count / exists condition to the query with where clauses and an "or". + * + * @param string $relation + * @param string|array $types + * @param \Closure|null $callback + * @return \Illuminate\Database\Eloquent\Builder|static + * @static + */ + public static function orWhereDoesntHaveMorph($relation, $types, $callback = null) + { + /** @var \Illuminate\Database\Eloquent\Builder $instance */ + return $instance->orWhereDoesntHaveMorph($relation, $types, $callback); + } + /** * Add subselect queries to count the relations. * @@ -15086,7 +17255,7 @@ namespace { * @return \Illuminate\Database\Query\Builder * @static */ - public static function select($columns = array()) + public static function select($columns = []) { /** @var \Illuminate\Database\Query\Builder $instance */ return $instance->select($columns); @@ -15095,9 +17264,9 @@ namespace { /** * Add a subselect expression to the query. * - * @param \Closure|\Illuminate\Database\Query\Builder|string $query + * @param \Closure|$this|string $query * @param string $as - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @throws \InvalidArgumentException * @static */ @@ -15112,10 +17281,10 @@ namespace { * * @param string $expression * @param array $bindings - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ - public static function selectRaw($expression, $bindings = array()) + public static function selectRaw($expression, $bindings = []) { /** @var \Illuminate\Database\Query\Builder $instance */ return $instance->selectRaw($expression, $bindings); @@ -15126,7 +17295,7 @@ namespace { * * @param \Closure|\Illuminate\Database\Query\Builder|string $query * @param string $as - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @throws \InvalidArgumentException * @static */ @@ -15141,10 +17310,10 @@ namespace { * * @param string $expression * @param mixed $bindings - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ - public static function fromRaw($expression, $bindings = array()) + public static function fromRaw($expression, $bindings = []) { /** @var \Illuminate\Database\Query\Builder $instance */ return $instance->fromRaw($expression, $bindings); @@ -15178,21 +17347,22 @@ namespace { /** * Set the table which the query is targeting. * - * @param string $table + * @param \Closure|\Illuminate\Database\Query\Builder|string $table + * @param string|null $as * @return \Illuminate\Database\Query\Builder * @static */ - public static function from($table) + public static function from($table, $as = null) { /** @var \Illuminate\Database\Query\Builder $instance */ - return $instance->from($table); + return $instance->from($table, $as); } /** * Add a join clause to the query. * * @param string $table - * @param string $first + * @param \Closure|string $first * @param string|null $operator * @param string|null $second * @param string $type @@ -15210,11 +17380,11 @@ namespace { * Add a "join where" clause to the query. * * @param string $table - * @param string $first + * @param \Closure|string $first * @param string $operator * @param string $second * @param string $type - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function joinWhere($table, $first, $operator, $second, $type = 'inner') @@ -15228,12 +17398,12 @@ namespace { * * @param \Closure|\Illuminate\Database\Query\Builder|string $query * @param string $as - * @param string $first + * @param \Closure|string $first * @param string|null $operator * @param string|null $second * @param string $type * @param bool $where - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @throws \InvalidArgumentException * @static */ @@ -15247,10 +17417,10 @@ namespace { * Add a left join to the query. * * @param string $table - * @param string $first + * @param \Closure|string $first * @param string|null $operator * @param string|null $second - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function leftJoin($table, $first, $operator = null, $second = null) @@ -15263,10 +17433,10 @@ namespace { * Add a "join where" clause to the query. * * @param string $table - * @param string $first + * @param \Closure|string $first * @param string $operator * @param string $second - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function leftJoinWhere($table, $first, $operator, $second) @@ -15280,10 +17450,10 @@ namespace { * * @param \Closure|\Illuminate\Database\Query\Builder|string $query * @param string $as - * @param string $first + * @param \Closure|string $first * @param string|null $operator * @param string|null $second - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function leftJoinSub($query, $as, $first, $operator = null, $second = null) @@ -15296,10 +17466,10 @@ namespace { * Add a right join to the query. * * @param string $table - * @param string $first + * @param \Closure|string $first * @param string|null $operator * @param string|null $second - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function rightJoin($table, $first, $operator = null, $second = null) @@ -15312,10 +17482,10 @@ namespace { * Add a "right join where" clause to the query. * * @param string $table - * @param string $first + * @param \Closure|string $first * @param string $operator * @param string $second - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function rightJoinWhere($table, $first, $operator, $second) @@ -15329,10 +17499,10 @@ namespace { * * @param \Closure|\Illuminate\Database\Query\Builder|string $query * @param string $as - * @param string $first + * @param \Closure|string $first * @param string|null $operator * @param string|null $second - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function rightJoinSub($query, $as, $first, $operator = null, $second = null) @@ -15345,10 +17515,10 @@ namespace { * Add a "cross join" clause to the query. * * @param string $table - * @param string|null $first + * @param \Closure|string|null $first * @param string|null $operator * @param string|null $second - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function crossJoin($table, $first = null, $operator = null, $second = null) @@ -15394,7 +17564,7 @@ namespace { * @param string|null $operator * @param string|null $second * @param string|null $boolean - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function whereColumn($first, $operator = null, $second = null, $boolean = 'and') @@ -15409,7 +17579,7 @@ namespace { * @param string|array $first * @param string|null $operator * @param string|null $second - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function orWhereColumn($first, $operator = null, $second = null) @@ -15427,7 +17597,7 @@ namespace { * @return \Illuminate\Database\Query\Builder * @static */ - public static function whereRaw($sql, $bindings = array(), $boolean = 'and') + public static function whereRaw($sql, $bindings = [], $boolean = 'and') { /** @var \Illuminate\Database\Query\Builder $instance */ return $instance->whereRaw($sql, $bindings, $boolean); @@ -15438,10 +17608,10 @@ namespace { * * @param string $sql * @param mixed $bindings - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ - public static function orWhereRaw($sql, $bindings = array()) + public static function orWhereRaw($sql, $bindings = []) { /** @var \Illuminate\Database\Query\Builder $instance */ return $instance->orWhereRaw($sql, $bindings); @@ -15468,7 +17638,7 @@ namespace { * * @param string $column * @param mixed $values - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function orWhereIn($column, $values) @@ -15483,7 +17653,7 @@ namespace { * @param string $column * @param mixed $values * @param string $boolean - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function whereNotIn($column, $values, $boolean = 'and') @@ -15497,7 +17667,7 @@ namespace { * * @param string $column * @param mixed $values - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function orWhereNotIn($column, $values) @@ -15507,25 +17677,84 @@ namespace { } /** - * Add a "where null" clause to the query. + * Add a "where in raw" clause for integer values to the query. * * @param string $column + * @param \Illuminate\Contracts\Support\Arrayable|array $values * @param string $boolean * @param bool $not * @return \Illuminate\Database\Query\Builder * @static */ - public static function whereNull($column, $boolean = 'and', $not = false) + public static function whereIntegerInRaw($column, $values, $boolean = 'and', $not = false) { /** @var \Illuminate\Database\Query\Builder $instance */ - return $instance->whereNull($column, $boolean, $not); + return $instance->whereIntegerInRaw($column, $values, $boolean, $not); + } + + /** + * Add an "or where in raw" clause for integer values to the query. + * + * @param string $column + * @param \Illuminate\Contracts\Support\Arrayable|array $values + * @return \Illuminate\Database\Query\Builder + * @static + */ + public static function orWhereIntegerInRaw($column, $values) + { + /** @var \Illuminate\Database\Query\Builder $instance */ + return $instance->orWhereIntegerInRaw($column, $values); + } + + /** + * Add a "where not in raw" clause for integer values to the query. + * + * @param string $column + * @param \Illuminate\Contracts\Support\Arrayable|array $values + * @param string $boolean + * @return \Illuminate\Database\Query\Builder + * @static + */ + public static function whereIntegerNotInRaw($column, $values, $boolean = 'and') + { + /** @var \Illuminate\Database\Query\Builder $instance */ + return $instance->whereIntegerNotInRaw($column, $values, $boolean); + } + + /** + * Add an "or where not in raw" clause for integer values to the query. + * + * @param string $column + * @param \Illuminate\Contracts\Support\Arrayable|array $values + * @return \Illuminate\Database\Query\Builder + * @static + */ + public static function orWhereIntegerNotInRaw($column, $values) + { + /** @var \Illuminate\Database\Query\Builder $instance */ + return $instance->orWhereIntegerNotInRaw($column, $values); + } + + /** + * Add a "where null" clause to the query. + * + * @param string|array $columns + * @param string $boolean + * @param bool $not + * @return \Illuminate\Database\Query\Builder + * @static + */ + public static function whereNull($columns, $boolean = 'and', $not = false) + { + /** @var \Illuminate\Database\Query\Builder $instance */ + return $instance->whereNull($columns, $boolean, $not); } /** * Add an "or where null" clause to the query. * * @param string $column - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function orWhereNull($column) @@ -15537,15 +17766,15 @@ namespace { /** * Add a "where not null" clause to the query. * - * @param string $column + * @param string|array $columns * @param string $boolean - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ - public static function whereNotNull($column, $boolean = 'and') + public static function whereNotNull($columns, $boolean = 'and') { /** @var \Illuminate\Database\Query\Builder $instance */ - return $instance->whereNotNull($column, $boolean); + return $instance->whereNotNull($columns, $boolean); } /** @@ -15569,7 +17798,7 @@ namespace { * * @param string $column * @param array $values - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function orWhereBetween($column, $values) @@ -15584,7 +17813,7 @@ namespace { * @param string $column * @param array $values * @param string $boolean - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function whereNotBetween($column, $values, $boolean = 'and') @@ -15598,7 +17827,7 @@ namespace { * * @param string $column * @param array $values - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function orWhereNotBetween($column, $values) @@ -15611,7 +17840,7 @@ namespace { * Add an "or where not null" clause to the query. * * @param string $column - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function orWhereNotNull($column) @@ -15625,9 +17854,9 @@ namespace { * * @param string $column * @param string $operator - * @param mixed $value + * @param \DateTimeInterface|string|null $value * @param string $boolean - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function whereDate($column, $operator, $value = null, $boolean = 'and') @@ -15641,8 +17870,8 @@ namespace { * * @param string $column * @param string $operator - * @param mixed $value - * @return \Illuminate\Database\Query\Builder|static + * @param \DateTimeInterface|string|null $value + * @return \Illuminate\Database\Query\Builder * @static */ public static function orWhereDate($column, $operator, $value = null) @@ -15656,9 +17885,9 @@ namespace { * * @param string $column * @param string $operator - * @param mixed $value + * @param \DateTimeInterface|string|null $value * @param string $boolean - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function whereTime($column, $operator, $value = null, $boolean = 'and') @@ -15672,8 +17901,8 @@ namespace { * * @param string $column * @param string $operator - * @param mixed $value - * @return \Illuminate\Database\Query\Builder|static + * @param \DateTimeInterface|string|null $value + * @return \Illuminate\Database\Query\Builder * @static */ public static function orWhereTime($column, $operator, $value = null) @@ -15687,9 +17916,9 @@ namespace { * * @param string $column * @param string $operator - * @param mixed $value + * @param \DateTimeInterface|string|null $value * @param string $boolean - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function whereDay($column, $operator, $value = null, $boolean = 'and') @@ -15703,8 +17932,8 @@ namespace { * * @param string $column * @param string $operator - * @param mixed $value - * @return \Illuminate\Database\Query\Builder|static + * @param \DateTimeInterface|string|null $value + * @return \Illuminate\Database\Query\Builder * @static */ public static function orWhereDay($column, $operator, $value = null) @@ -15718,9 +17947,9 @@ namespace { * * @param string $column * @param string $operator - * @param mixed $value + * @param \DateTimeInterface|string|null $value * @param string $boolean - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function whereMonth($column, $operator, $value = null, $boolean = 'and') @@ -15734,8 +17963,8 @@ namespace { * * @param string $column * @param string $operator - * @param mixed $value - * @return \Illuminate\Database\Query\Builder|static + * @param \DateTimeInterface|string|null $value + * @return \Illuminate\Database\Query\Builder * @static */ public static function orWhereMonth($column, $operator, $value = null) @@ -15749,9 +17978,9 @@ namespace { * * @param string $column * @param string $operator - * @param mixed $value + * @param \DateTimeInterface|string|int|null $value * @param string $boolean - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function whereYear($column, $operator, $value = null, $boolean = 'and') @@ -15765,8 +17994,8 @@ namespace { * * @param string $column * @param string $operator - * @param mixed $value - * @return \Illuminate\Database\Query\Builder|static + * @param \DateTimeInterface|string|int|null $value + * @return \Illuminate\Database\Query\Builder * @static */ public static function orWhereYear($column, $operator, $value = null) @@ -15780,7 +18009,7 @@ namespace { * * @param \Closure $callback * @param string $boolean - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function whereNested($callback, $boolean = 'and') @@ -15804,7 +18033,7 @@ namespace { /** * Add another query builder as a nested where to the query builder. * - * @param \Illuminate\Database\Query\Builder|static $query + * @param $this $query * @param string $boolean * @return \Illuminate\Database\Query\Builder * @static @@ -15835,7 +18064,7 @@ namespace { * * @param \Closure $callback * @param bool $not - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function orWhereExists($callback, $not = false) @@ -15849,7 +18078,7 @@ namespace { * * @param \Closure $callback * @param string $boolean - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function whereNotExists($callback, $boolean = 'and') @@ -15862,7 +18091,7 @@ namespace { * Add a where not exists clause to the query. * * @param \Closure $callback - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function orWhereNotExists($callback) @@ -15894,6 +18123,7 @@ namespace { * @param array $values * @param string $boolean * @return \Illuminate\Database\Query\Builder + * @throws \InvalidArgumentException * @static */ public static function whereRowValues($columns, $operator, $values, $boolean = 'and') @@ -15976,11 +18206,42 @@ namespace { return $instance->orWhereJsonDoesntContain($column, $value); } + /** + * Add a "where JSON length" clause to the query. + * + * @param string $column + * @param mixed $operator + * @param mixed $value + * @param string $boolean + * @return \Illuminate\Database\Query\Builder + * @static + */ + public static function whereJsonLength($column, $operator, $value = null, $boolean = 'and') + { + /** @var \Illuminate\Database\Query\Builder $instance */ + return $instance->whereJsonLength($column, $operator, $value, $boolean); + } + + /** + * Add a "or where JSON length" clause to the query. + * + * @param string $column + * @param mixed $operator + * @param mixed $value + * @return \Illuminate\Database\Query\Builder + * @static + */ + public static function orWhereJsonLength($column, $operator, $value = null) + { + /** @var \Illuminate\Database\Query\Builder $instance */ + return $instance->orWhereJsonLength($column, $operator, $value); + } + /** * Handles dynamic "where" clauses to the query. * * @param string $method - * @param string $parameters + * @param array $parameters * @return \Illuminate\Database\Query\Builder * @static */ @@ -15993,14 +18254,28 @@ namespace { /** * Add a "group by" clause to the query. * - * @param array $groups + * @param array|string $groups * @return \Illuminate\Database\Query\Builder * @static */ - public static function groupBy($groups = null) + public static function groupBy(...$groups) { /** @var \Illuminate\Database\Query\Builder $instance */ - return $instance->groupBy($groups); + return $instance->groupBy(...$groups); + } + + /** + * Add a raw groupBy clause to the query. + * + * @param string $sql + * @param array $bindings + * @return \Illuminate\Database\Query\Builder + * @static + */ + public static function groupByRaw($sql, $bindings = []) + { + /** @var \Illuminate\Database\Query\Builder $instance */ + return $instance->groupByRaw($sql, $bindings); } /** @@ -16025,7 +18300,7 @@ namespace { * @param string $column * @param string|null $operator * @param string|null $value - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function orHaving($column, $operator = null, $value = null) @@ -16034,6 +18309,22 @@ namespace { return $instance->orHaving($column, $operator, $value); } + /** + * Add a "having between " clause to the query. + * + * @param string $column + * @param array $values + * @param string $boolean + * @param bool $not + * @return \Illuminate\Database\Query\Builder + * @static + */ + public static function havingBetween($column, $values, $boolean = 'and', $not = false) + { + /** @var \Illuminate\Database\Query\Builder $instance */ + return $instance->havingBetween($column, $values, $boolean, $not); + } + /** * Add a raw having clause to the query. * @@ -16043,7 +18334,7 @@ namespace { * @return \Illuminate\Database\Query\Builder * @static */ - public static function havingRaw($sql, $bindings = array(), $boolean = 'and') + public static function havingRaw($sql, $bindings = [], $boolean = 'and') { /** @var \Illuminate\Database\Query\Builder $instance */ return $instance->havingRaw($sql, $bindings, $boolean); @@ -16054,10 +18345,10 @@ namespace { * * @param string $sql * @param array $bindings - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ - public static function orHavingRaw($sql, $bindings = array()) + public static function orHavingRaw($sql, $bindings = []) { /** @var \Illuminate\Database\Query\Builder $instance */ return $instance->orHavingRaw($sql, $bindings); @@ -16066,9 +18357,10 @@ namespace { /** * Add an "order by" clause to the query. * - * @param string $column + * @param \Closure|\Illuminate\Database\Query\Builder|\Illuminate\Database\Query\Expression|string $column * @param string $direction * @return \Illuminate\Database\Query\Builder + * @throws \InvalidArgumentException * @static */ public static function orderBy($column, $direction = 'asc') @@ -16090,32 +18382,6 @@ namespace { return $instance->orderByDesc($column); } - /** - * Add an "order by" clause for a timestamp to the query. - * - * @param string $column - * @return \Illuminate\Database\Query\Builder|static - * @static - */ - public static function latest($column = 'created_at') - { - /** @var \Illuminate\Database\Query\Builder $instance */ - return $instance->latest($column); - } - - /** - * Add an "order by" clause for a timestamp to the query. - * - * @param string $column - * @return \Illuminate\Database\Query\Builder|static - * @static - */ - public static function oldest($column = 'created_at') - { - /** @var \Illuminate\Database\Query\Builder $instance */ - return $instance->oldest($column); - } - /** * Put the query's results in random order. * @@ -16137,7 +18403,7 @@ namespace { * @return \Illuminate\Database\Query\Builder * @static */ - public static function orderByRaw($sql, $bindings = array()) + public static function orderByRaw($sql, $bindings = []) { /** @var \Illuminate\Database\Query\Builder $instance */ return $instance->orderByRaw($sql, $bindings); @@ -16147,7 +18413,7 @@ namespace { * Alias to set the "offset" value of the query. * * @param int $value - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function skip($value) @@ -16173,7 +18439,7 @@ namespace { * Alias to set the "limit" value of the query. * * @param int $value - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function take($value) @@ -16200,7 +18466,7 @@ namespace { * * @param int $page * @param int $perPage - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function forPage($page, $perPage = 15) @@ -16209,13 +18475,28 @@ namespace { return $instance->forPage($page, $perPage); } + /** + * Constrain the query to the previous "page" of results before a given ID. + * + * @param int $perPage + * @param int|null $lastId + * @param string $column + * @return \Illuminate\Database\Query\Builder + * @static + */ + public static function forPageBeforeId($perPage = 15, $lastId = 0, $column = 'id') + { + /** @var \Illuminate\Database\Query\Builder $instance */ + return $instance->forPageBeforeId($perPage, $lastId, $column); + } + /** * Constrain the query to the next "page" of results after a given ID. * * @param int $perPage * @param int|null $lastId * @param string $column - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function forPageAfterId($perPage = 15, $lastId = 0, $column = 'id') @@ -16224,12 +18505,24 @@ namespace { return $instance->forPageAfterId($perPage, $lastId, $column); } + /** + * Remove all existing orders and optionally add a new order. + * + * @return \Illuminate\Database\Query\Builder + * @static + */ + public static function reorder($column = null, $direction = 'asc') + { + /** @var \Illuminate\Database\Query\Builder $instance */ + return $instance->reorder($column, $direction); + } + /** * Add a union statement to the query. * * @param \Illuminate\Database\Query\Builder|\Closure $query * @param bool $all - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function union($query, $all = false) @@ -16242,7 +18535,7 @@ namespace { * Add a union all statement to the query. * * @param \Illuminate\Database\Query\Builder|\Closure $query - * @return \Illuminate\Database\Query\Builder|static + * @return \Illuminate\Database\Query\Builder * @static */ public static function unionAll($query) @@ -16307,7 +18600,7 @@ namespace { * @return int * @static */ - public static function getCountForPagination($columns = array()) + public static function getCountForPagination($columns = []) { /** @var \Illuminate\Database\Query\Builder $instance */ return $instance->getCountForPagination($columns); @@ -16351,6 +18644,32 @@ namespace { return $instance->doesntExist(); } + /** + * Execute the given callback if no rows exist for the current query. + * + * @param \Closure $callback + * @return mixed + * @static + */ + public static function existsOr($callback) + { + /** @var \Illuminate\Database\Query\Builder $instance */ + return $instance->existsOr($callback); + } + + /** + * Execute the given callback if rows exist for the current query. + * + * @param \Closure $callback + * @return mixed + * @static + */ + public static function doesntExistOr($callback) + { + /** @var \Illuminate\Database\Query\Builder $instance */ + return $instance->doesntExistOr($callback); + } + /** * Retrieve the "count" result of the query. * @@ -16437,7 +18756,7 @@ namespace { * @return mixed * @static */ - public static function aggregate($function, $columns = array()) + public static function aggregate($function, $columns = []) { /** @var \Illuminate\Database\Query\Builder $instance */ return $instance->aggregate($function, $columns); @@ -16451,7 +18770,7 @@ namespace { * @return float|int * @static */ - public static function numericAggregate($function, $columns = array()) + public static function numericAggregate($function, $columns = []) { /** @var \Illuminate\Database\Query\Builder $instance */ return $instance->numericAggregate($function, $columns); @@ -16470,6 +18789,19 @@ namespace { return $instance->insert($values); } + /** + * Insert a new record into the database while ignoring errors. + * + * @param array $values + * @return int + * @static + */ + public static function insertOrIgnore($values) + { + /** @var \Illuminate\Database\Query\Builder $instance */ + return $instance->insertOrIgnore($values); + } + /** * Insert a new record and get the value of the primary key. * @@ -16484,6 +18816,20 @@ namespace { return $instance->insertGetId($values, $sequence); } + /** + * Insert new records into the table using a subquery. + * + * @param array $columns + * @param \Closure|\Illuminate\Database\Query\Builder|string $query + * @return int + * @static + */ + public static function insertUsing($columns, $query) + { + /** @var \Illuminate\Database\Query\Builder $instance */ + return $instance->insertUsing($columns, $query); + } + /** * Insert or update a record matching the attributes, and fill it with values. * @@ -16492,7 +18838,7 @@ namespace { * @return bool * @static */ - public static function updateOrInsert($attributes, $values = array()) + public static function updateOrInsert($attributes, $values = []) { /** @var \Illuminate\Database\Query\Builder $instance */ return $instance->updateOrInsert($attributes, $values); @@ -16652,6 +18998,30 @@ namespace { return $instance->cloneWithoutBindings($except); } + /** + * Dump the current SQL and bindings. + * + * @return \Illuminate\Database\Query\Builder + * @static + */ + public static function dump() + { + /** @var \Illuminate\Database\Query\Builder $instance */ + return $instance->dump(); + } + + /** + * Die and dump the current SQL and bindings. + * + * @return void + * @static + */ + public static function dd() + { + /** @var \Illuminate\Database\Query\Builder $instance */ + $instance->dd(); + } + /** * Register a custom macro. * @@ -16669,25 +19039,14 @@ namespace { * Mix another object into the class. * * @param object $mixin + * @param bool $replace * @return void * @throws \ReflectionException * @static */ - public static function mixin($mixin) + public static function mixin($mixin, $replace = true) { - \Illuminate\Database\Query\Builder::mixin($mixin); - } - - /** - * Checks if macro is registered. - * - * @param string $name - * @return bool - * @static - */ - public static function hasMacro($name) - { - return \Illuminate\Database\Query\Builder::hasMacro($name); + \Illuminate\Database\Query\Builder::mixin($mixin, $replace); } /** @@ -16747,8 +19106,19 @@ namespace { class View extends \Illuminate\Support\Facades\View {} class PDF extends \Barryvdh\DomPDF\Facade {} + + class Breadcrumbs extends \DaveJamesMiller\Breadcrumbs\Facades\Breadcrumbs {} + + class Flare extends \Facade\Ignition\Facades\Flare {} + + class Nexmo extends \Nexmo\Laravel\Facade\Nexmo {} + + class Version extends \PragmaRX\Version\Package\Facade {} + + class Yaml extends \PragmaRX\Yaml\Package\Facade {} } + diff --git a/app/Booking.php b/app/Booking.php index 73e3ce1c..787515ac 100644 --- a/app/Booking.php +++ b/app/Booking.php @@ -4,6 +4,37 @@ namespace App; use Illuminate\Database\Eloquent\Model; +/** + * App\Booking + * + * @property int $id + * @property int $item_id + * @property int $amount + * @property int $bookable_id + * @property string $bookable_type + * @property int $user_id + * @property string $comment + * @property \Illuminate\Support\Carbon|null $created_at + * @property \Illuminate\Support\Carbon|null $updated_at + * @property-read \Illuminate\Database\Eloquent\Model|\Eloquent $bookable + * @property-read \App\Item $item + * @property-read \Illuminate\Database\Eloquent\Collection|\App\Log[] $logs + * @property-read int|null $logs_count + * @property-read \App\User $user + * @method static \Illuminate\Database\Eloquent\Builder|\App\Booking newModelQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Booking newQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Booking query() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Booking whereAmount($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Booking whereBookableId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Booking whereBookableType($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Booking whereComment($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Booking whereCreatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Booking whereId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Booking whereItemId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Booking whereUpdatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Booking whereUserId($value) + * @mixin \Eloquent + */ class Booking extends Model { public function bookable() diff --git a/app/ComplementaryActivity.php b/app/ComplementaryActivity.php index bc0597e4..67659ed2 100644 --- a/app/ComplementaryActivity.php +++ b/app/ComplementaryActivity.php @@ -4,6 +4,46 @@ namespace App; use Illuminate\Database\Eloquent\Model; +/** + * App\ComplementaryActivity + * + * @property int $id + * @property string $name + * @property string $public_body + * @property string $public_slogan + * @property string $public_header_picture + * @property string $admin_desc + * @property string $calendar_color + * @property string $calendar_icon + * @property string $begin_time + * @property string $end_time + * @property string $location + * @property int $is_mandatory + * @property int $is_promoted + * @property \Illuminate\Support\Carbon|null $created_at + * @property \Illuminate\Support\Carbon|null $updated_at + * @property-read \Illuminate\Database\Eloquent\Collection|\App\Picture[] $pictures + * @property-read int|null $pictures_count + * @method static \Illuminate\Database\Eloquent\Builder|\App\ComplementaryActivity newModelQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\ComplementaryActivity newQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\ComplementaryActivity query() + * @method static \Illuminate\Database\Eloquent\Builder|\App\ComplementaryActivity whereAdminDesc($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\ComplementaryActivity whereBeginTime($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\ComplementaryActivity whereCalendarColor($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\ComplementaryActivity whereCalendarIcon($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\ComplementaryActivity whereCreatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\ComplementaryActivity whereEndTime($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\ComplementaryActivity whereId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\ComplementaryActivity whereIsMandatory($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\ComplementaryActivity whereIsPromoted($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\ComplementaryActivity whereLocation($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\ComplementaryActivity whereName($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\ComplementaryActivity wherePublicBody($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\ComplementaryActivity wherePublicHeaderPicture($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\ComplementaryActivity wherePublicSlogan($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\ComplementaryActivity whereUpdatedAt($value) + * @mixin \Eloquent + */ class ComplementaryActivity extends Model { public function pictures() diff --git a/app/Config.php b/app/Config.php index ae98428e..54251b48 100644 --- a/app/Config.php +++ b/app/Config.php @@ -4,6 +4,28 @@ namespace App; use Illuminate\Database\Eloquent\Model; +/** + * App\Config + * + * @property int $id + * @property string $name + * @property int $state + * @property array $data + * @property \Illuminate\Support\Carbon|null $created_at + * @property \Illuminate\Support\Carbon|null $updated_at + * @property-read \Illuminate\Database\Eloquent\Collection|\App\Log[] $logs + * @property-read int|null $logs_count + * @method static \Illuminate\Database\Eloquent\Builder|\App\Config newModelQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Config newQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Config query() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Config whereCreatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Config whereData($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Config whereId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Config whereName($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Config whereState($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Config whereUpdatedAt($value) + * @mixin \Eloquent + */ class Config extends Model { protected $casts = [ @@ -24,4 +46,9 @@ class Config extends Model { return $this->morphMany('App\Log', 'logable'); } + + public static function find($name) + { + return Config::where('name',$name)->first(); + } } diff --git a/app/Course.php b/app/Course.php index d0c7493b..9b5ed857 100644 --- a/app/Course.php +++ b/app/Course.php @@ -4,6 +4,47 @@ namespace App; use Illuminate\Database\Eloquent\Model; +/** + * App\Course + * + * @property int $id + * @property string $name + * @property string $ocom + * @property int $periode + * @property int $level + * @property string $location + * @property string $desc + * @property string $comment + * @property string $comment_officer + * @property int $event_id + * @property string $user_id + * @property \Illuminate\Support\Carbon|null $created_at + * @property \Illuminate\Support\Carbon|null $updated_at + * @property-read \Illuminate\Database\Eloquent\Collection|\App\Booking[] $bookings + * @property-read int|null $bookings_count + * @property-read \App\Event $event + * @property-read \App\LessonPlan|null $lessonPlan + * @property-read \Illuminate\Database\Eloquent\Collection|\App\Log[] $logs + * @property-read int|null $logs_count + * @property-read \App\User $user + * @method static \Illuminate\Database\Eloquent\Builder|\App\Course newModelQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Course newQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Course query() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Course whereComment($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Course whereCommentOfficer($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Course whereCreatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Course whereDesc($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Course whereEventId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Course whereId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Course whereLevel($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Course whereLocation($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Course whereName($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Course whereOcom($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Course wherePeriode($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Course whereUpdatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Course whereUserId($value) + * @mixin \Eloquent + */ class Course extends Model { public function bookings() @@ -16,13 +57,108 @@ class Course extends Model return $this->belongsTo('App\User'); } + public function instructor() + { + if (\App\User::find($this->user_id)) { + return \App\User::find($this->user_id)->fullname(); + } else { + if (is_numeric($this->user_id)) { + return 'Utilisateur inconnu'; + } else { + return $this->user_id; + } + } + } + + public function ocom() + { + if ($this->ocom != null) { + $ocom = \App\OCOM::findByOCOM($this->ocom); + if ($ocom != null) { + return $ocom; + } + } + return null; + } + public function event() { - return $this->belongsTo('App\Event'); + return $this->belongsTo('App\Event'); } public function logs() { return $this->morphMany('App\Log', 'logable'); } + + public function use_course() + { + return $this->name == "" && $this->ocom == ""; + } + + public function lessonPlan() + { + return $this->hasOne('App\LessonPlan'); + } + + public static function allFuture() + { + $courses = Course::all(); + foreach ($courses as $key => $course) { + if (date('c', strtotime($course->event->date_begin)) <= date('c')) { + $courses->forget($key); + } + } + return $courses; + } + + public static function allThisYear() + { + $courses = Course::all(); + foreach ($courses as $key => $course) { + if (date('c', strtotime($course->event->date_begin)) <= date('c', strtotime(\App\Config::getData('instruction_year_begin')))) { + $courses->forget($key); + } + if (date('c', strtotime($course->event->date_begin)) >= date('c', strtotime(\App\Config::getData('instruction_year_end')))) { + $courses->forget($key); + } + } + return $courses; + } + + public static function allForUser($user_id) + { + $courses = Course::all(); + foreach ($courses as $key => $course) { + if ($course->user_id != $user_id) { + $courses->forget($key); + } + } + return $courses; + } + + public static function allForAuthUser() + { + return self::allForUser(\Auth::user()->id); + } + + public static function allFutureForUser($user_id) + { + $courses = Course::all(); + foreach ($courses as $key => $course) { + if (date('c', strtotime($course->event->date_begin)) <= date('c')) { + $courses->forget($key); + } + if ($course->user_id != $user_id) { + $courses->forget($key); + } + } + return $courses; + } + + public static function allFutureForAuthUser() + { + return self::allFutureForUser(\Auth::user()->id); + } + } diff --git a/app/Event.php b/app/Event.php index d3dcf87c..346b71d2 100644 --- a/app/Event.php +++ b/app/Event.php @@ -4,8 +4,65 @@ namespace App; use Illuminate\Database\Eloquent\Model; +/** + * App\Event + * + * @property int $id + * @property string $name + * @property string $date_begin + * @property string $date_end + * @property string $type + * @property string $user_id + * @property string $location + * @property int $is_mandatory + * @property int $use_weekly_msg + * @property int $use_schedule + * @property string $desc + * @property array $msg + * @property array $weekly_msg_file + * @property array $schedule + * @property string $calendar_color + * @property string $calendar_icon + * @property \Illuminate\Support\Carbon|null $created_at + * @property \Illuminate\Support\Carbon|null $updated_at + * @property-read \Illuminate\Database\Eloquent\Collection|\App\Booking[] $bookings + * @property-read int|null $bookings_count + * @property-read \Illuminate\Database\Eloquent\Collection|\App\Course[] $courses + * @property-read int|null $courses_count + * @property-read \Illuminate\Database\Eloquent\Collection|\App\Log[] $logs + * @property-read int|null $logs_count + * @property-read \App\User $user + * @method static \Illuminate\Database\Eloquent\Builder|\App\Event newModelQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Event newQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Event query() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Event whereCalendarColor($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Event whereCalendarIcon($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Event whereCreatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Event whereDateBegin($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Event whereDateEnd($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Event whereDesc($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Event whereId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Event whereIsMandatory($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Event whereLocation($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Event whereMsg($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Event whereName($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Event whereSchedule($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Event whereType($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Event whereUpdatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Event whereUseSchedule($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Event whereUseWeeklyMsg($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Event whereUserId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Event whereWeeklyMsgFile($value) + * @mixin \Eloquent + */ class Event extends Model { + protected $casts = [ + 'schedule' => 'array', + 'msg' => 'array', + 'weekly_msg_file' => 'array' + ]; + public function bookings() { return $this->morphMany('App\Booking', 'bookable'); @@ -16,6 +73,11 @@ class Event extends Model return $this->hasMany('App\Course'); } + public function type() + { + return \App\EventType::find($this->type); + } + public function user() { return $this->belongsTo('App\User'); @@ -54,4 +116,31 @@ class Event extends Model } return $events; } + + public static function allThisYear() + { + $events = Event::all(); + foreach ($events as $key => $event) + { + if (date('c',strtotime($event->date_begin)) <= date('c',strtotime(\App\Config::getData('instruction_year_begin')))) + { + $events->forget($key); + } + if (date('c',strtotime($event->date_begin)) >= date('c',strtotime(\App\Config::getData('instruction_year_end')))) + { + $events->forget($key); + } + } + return $events; + } + + public function nbPeriode() + { + return (count($this->schedule["periodes"])); + } + + public function nbNiveau() + { + return count($this->schedule["niveaux"]); + } } diff --git a/app/EventType.php b/app/EventType.php new file mode 100644 index 00000000..656b882a --- /dev/null +++ b/app/EventType.php @@ -0,0 +1,81 @@ + 'array', + ]; + + public function getScheduleModelData($level,$periode) + { + if (isset($this->schedule_model['default_value'])) + { + dd($this->schedule_model ['default_value']); + return $this->schedule_model['default_value'][$periode-1][$level-1]; + } + else + { + return [ + 'ocom' => 'M103.03', + 'name' => 'Super cours', + 'location' => 'Bic', + 'instructor' => 'Math', + 'desc' => '' + ]; + } + } + + public function nbLevel() + { + return count($this->schedule_model['niveaux']); + } + + public function nbPeriode() + { + return count($this->schedule_model['periodes']); + } +} diff --git a/app/Exceptions/Handler.php b/app/Exceptions/Handler.php index 043cad6b..05aeb491 100644 --- a/app/Exceptions/Handler.php +++ b/app/Exceptions/Handler.php @@ -2,7 +2,7 @@ namespace App\Exceptions; -use Exception; +use Throwable; use Illuminate\Foundation\Exceptions\Handler as ExceptionHandler; class Handler extends ExceptionHandler @@ -32,7 +32,7 @@ class Handler extends ExceptionHandler * @param \Exception $exception * @return void */ - public function report(Exception $exception) + public function report(Throwable $exception) { parent::report($exception); } @@ -44,7 +44,7 @@ class Handler extends ExceptionHandler * @param \Exception $exception * @return \Illuminate\Http\Response */ - public function render($request, Exception $exception) + public function render($request, Throwable $exception) { return parent::render($request, $exception); } diff --git a/app/GoogleDriveFile.php b/app/GoogleDriveFile.php new file mode 100644 index 00000000..d4f2c6aa --- /dev/null +++ b/app/GoogleDriveFile.php @@ -0,0 +1,444 @@ + 'array', + 'job_permission' => 'array', + 'user_permission' => 'array', + ]; + + public static function icon($extension) + { + $icon = "fas fa-file"; + switch ($extension) + { + case 'pdf': + $icon = 'fas fa-file-pdf text-pdf'; + break; + case 'php': + $icon = 'fas fa-file-code text-code'; + break; + case 'pptx': + $icon = 'fas fa-file-powerpoint text-powerpoint'; + break; + case 'docx': + case 'odt': + $icon = 'fas fa-file-word text-word'; + break; + case 'ods': + case 'xlsx': + $icon = 'fas fa-file-excel text-excel'; + break; + case 'png': + case 'PNG': + case 'jpg': + case 'jpeg': + $icon = 'fas fa-file-image text-image'; + break; + } + return $icon; + } + + public static function checkConfig() + { + $configNull = (\Crypt::decryptString(\App\Config::getData('GOOGLE_DRIVE_CLIENT_ID')) != "" && \Crypt::decryptString(\App\Config::getData('GOOGLE_DRIVE_CLIENT_SECRET')) != "" && \Crypt::decryptString(\App\Config::getData('GOOGLE_DRIVE_REFRESH_TOKEN')) != "" && \Crypt::decryptString(\App\Config::getData('GOOGLE_DRIVE_FOLDER_ID')) != ""); + $configOk = true; + + if ($configNull) + { + try { + \Storage::cloud()->listContents("/", false); + } + catch (\Exception $e) + { + $configOk = false; + } + } + + return $configNull && $configOk; + } + + public static function findByName($name) + { + return GoogleDriveFile::where('name','=',$name)->get()->first(); + } + + public static function findByPath($path) + { + return GoogleDriveFile::where('path','=',$path)->get()->first(); + } + + public static function findByPathInDrive($path,$current_directory = '/') + { + if ($path != "") + { + $exploded_path = explode('/',$path); + if ($exploded_path[0] == "") + { + array_splice($exploded_path,0,1); + } + $contents = collect(Storage::cloud()->listContents($current_directory, false)); + + $dir = $contents->where('type', '=', 'dir') + ->where('name', '=', $exploded_path[0]) + ->first(); + + if ( ! $dir) + { + return false; + } + else + { + array_splice($exploded_path,0,1); + $newPath = implode('/',$exploded_path); + if ($newPath == "") + { + return $dir['basename']; + } + else + { + return GoogleDriveFile::findByPathInDrive($newPath,$dir['basename']); + } + } + } + return true; + } + + public static function createByPathInDrive($path,$current_directory = '/') + { + if ($path != "") + { + $exploded_path = explode('/',$path); + $size = count($exploded_path); + if ($size > 1) + { + $parent = self::findByName($exploded_path[$size-2]); + \Storage::cloud()->createDir($parent->id.'/'.$exploded_path[$size-1]); + } + else + { + \Storage::cloud()->createDir('/'.$exploded_path[$size-1]); + } + return self::findByPathInDrive($path); + } + return false; + } + + public function setPermission($subject, $value) + { + $explodedSubject = explode('.',$subject); + $subject = $explodedSubject[0]; + $id = $explodedSubject[1]; + + $permission = null; + if ($subject == 'rank') + { + $permission = $this->rank_permission; + } + elseif ($subject == 'job') + { + $permission = $this->job_permission; + } + elseif ($subject == 'user') + { + $permission = $this->user_permission; + } + + [$id] = $value; + + if ($subject == 'rank') + { + $this->rank_permission = $permission; + } + elseif ($subject == 'job') + { + $this->job_permission = $permission; + } + elseif ($subject == 'user') + { + $this->user_permission = $permission; + } + $this->save(); + } + + public function getAllPermission($subject) + { + $permission = null; + if ($subject == 'rank') + { + $permission = $this->rank_permission; + } + elseif ($subject == 'job') + { + $permission = $this->job_permission; + } + elseif ($subject == 'user') + { + $permission = $this->user_permission; + } + + return $permission; + } + + public function getPermission($subject) + { + $explodedSubject = explode('.',$subject); + $subject = $explodedSubject[0]; + $id = $explodedSubject[1]; + + if (isset($this->getAllPermission($subject)[$id])) + { + return $this->getAllPermission($subject)[$id]; + } + else + { + return ''; + } + } + + public function canUser($user, $permission = 'r') + { + if (strpos($this->getPermission('rank.0'),$permission) !== false) + { + return true; + } + if (strpos($this->getPermission('user.'.$user->id),$permission) === false) + { + if (strpos($this->getPermission('job.'.$user->job->id),$permission) === false) + { + if (strpos($this->getPermission('rank.'.$user->rank->id),$permission) === false) + { + return false; + } + + } + } + return true; + } + + public function canAuthUser($perm = 'r') + { + return $this->canUser(\Auth::user(),$perm); + } + + public static function getPermForUser($folder,$user,$perm = 'r') + { + if ($folder == '' || $folder == "root") + { + if ($user->p('file_manage') == 1) + { + return true; + } + else + { + return false; + } + } + $dir = \App\GoogleDriveFile::find($folder); + if ($dir == null) + { + $path = GoogleDriveFile::getPathFolder($folder); + $exploderPath = explode('/',$path); + for ($i = count($exploderPath)-1; $i >= 0; $i--) + { + $dir = \App\GoogleDriveFile::find($exploderPath[$i]); + if ($dir != null) + { + $metaData = \Storage::cloud()->getMetadata($folder); + $googleDriveFile = new GoogleDriveFile(); + $googleDriveFile->id = $folder; + $googleDriveFile->type = 'directory'; + $googleDriveFile->name = $metaData['name']; + $googleDriveFile->path = self::recreatePath($folder); + $googleDriveFile->rank_permission = $dir->rank_permission; + $googleDriveFile->job_permission = $dir->job_permission; + $googleDriveFile->user_permission = $dir->user_permission; + $googleDriveFile->save(); + return $dir->canUser($user,$perm); + } + } + return false; + } + else + { + return $dir->canUser($user,$perm); + } + } + + public static function getPermForAuthUser($folder,$perm = 'r') + { + return self::getPermForUser($folder,\Auth::user(),$perm); + } + + public static function getPathFolder($folder) + { + $allDir = \Storage::cloud()->allDirectories(); + foreach ($allDir as $dir) + { + $exploderDir = explode('/',$dir); + if ($exploderDir[count($exploderDir)-1] == $folder) + { + return $dir; + } + } + } + + public static function recreatePath($folder) + { + $path = []; + $name = []; + $directories = collect(json_decode(self::getPathArray(),true)); + foreach ($directories as $dir) + { + $path[$dir['basename']] = $dir['dirname']; + $name[$dir['basename']] = $dir['name']; + } + $realPath = $name[$folder]; + $foo = $folder; + while ($foo != "") + { + $bar = explode('/',$path[$foo]); + $foo = $bar[count($bar)-1]; + if ($foo != "") + { + $realPath = $name[$foo].'/'.$realPath; + } + } + return $realPath; + } + + public static function getPathArray() + { + $contents = collect(Storage::cloud()->listContents('/', true)); + return json_encode($contents->where('type', '=', 'dir')); + } + + public static function getSidebarFile() + { + if (!\App\GoogleDriveFile::checkConfig()) + { + return []; + } + $user = \Auth::user(); + $sidebarArray = []; + $dirList = \App\GoogleDriveFile::all(); + $temp = $dirList->where('path','=','.Privé/.Cadet')->first(); + if ($temp != null) + { + if ($dirList->where('path','=','.Privé/.Cadet')->first()->canAuthUser()) + { + $sidebarArray['Cadet'] = [ + 'route' => 'admin.files.cadet', + 'icon' => 'fas fa-folder-open', + 'perm' => null, + 'child' => null + ]; + } + } + + $temp = $dirList->where('path','=','.Privé/.Staff')->first(); + if ($temp != null) + { + if ($dirList->where('path','=','.Privé/.Staff')->first()->canAuthUser()) + { + $sidebarArray['Staff'] = [ + 'route' => 'admin.files.staff', + 'icon' => 'fas fa-folder-open', + 'perm' => null, + 'child' => null + ]; + } + } + + $temp = $dirList->where('path','=','.Privé/.ETAMAS')->first(); + if ($temp != null) + { + if ($dirList->where('path','=','.Privé/.ETAMAS')->first()->canAuthUser()) + { + $sidebarArray['ETAMAS'] = [ + 'route' => 'admin.files.etamas', + 'icon' => 'fas fa-folder-open', + 'perm' => null, + 'child' => null + ]; + } + } + + $temp = $dirList->where('path','=','.Privé/.Officier')->first(); + if ($temp != null) + { + if ($dirList->where('path','=','.Privé/.Officier')->first()->canAuthUser()) + { + $sidebarArray['Officier'] = [ + 'route' => 'admin.files.officier', + 'icon' => 'fas fa-folder-open', + 'perm' => null, + 'child' => null + ]; + } + } + $sidebarArray['Publique'] = [ + 'route' => 'admin.files.publique', + 'icon' => 'fas fa-folder-open', + 'perm' => null, + 'child' => null + ]; + if (\Auth::user()->p('drive_see') == 1) + { + $sidebarArray['Google Drive'] = [ + 'route' => 'admin.drive', + 'icon' => 'fab fa-google-drive', + 'perm' => null, + 'child' => null + ]; + } + return $sidebarArray; + } + + public static function getDownloadURL($path,$file) + { + $dir = urlencode(\App\GoogleDriveFile::findByPath($path)->id); + return '/file/get?d='.$dir.'&f='.urlencode($file); + } +} diff --git a/app/Http/Controllers/AdminController.php b/app/Http/Controllers/AdminController.php index f3511950..6f051985 100644 --- a/app/Http/Controllers/AdminController.php +++ b/app/Http/Controllers/AdminController.php @@ -2,8 +2,11 @@ namespace App\Http\Controllers; +use Illuminate\Contracts\Foundation\Application; +use Illuminate\Contracts\View\Factory; use Illuminate\Http\Request; use \App\Log; +use Illuminate\View\View; class AdminController extends Controller { @@ -20,13 +23,46 @@ class AdminController extends Controller /** * Show the application dashboard. * - * @return \Illuminate\Http\Response + * @return Application|Factory|View */ public function index() { clog('navigate','success','consulte le tableau de bord'); - return view('admin.dashboard',['futureEvent' => \App\Event::future()->take(3),'userClasse' => \Auth::User()->getClasse()->forPage(1,6)]); + return view('admin.dashboard',['futureEvent' => \App\Event::future()->take(3),'userClasse' => \Auth::user()->futureCourses()->forPage(1,6)]); + } + + public function setup() + { + if (\Auth::user()->use_default_psw == true) + { + return view('admin.user.profil.setup'); + } + return redirect('/admin'); + } + + public function saveSetup() + { + $user = \Auth::user(); + $user->firstname = \request('firstname'); + $user->lastname = \request('lastname'); + $user->password = bcrypt(request('psw')); + + if (\request('address') != null) + { + $user->adress = \request('address'); + } + if (\request('telephone') != null) + { + $user->telephone = \request('telephone'); + } + if (\request('sexe') != null) + { + $user->sexe = \request('sexe'); + } + $user->use_default_psw = false; + $user->save(); + return redirect('/admin'); } public function update() @@ -36,4 +72,15 @@ class AdminController extends Controller return view('admin.update'); } + public function status() + { + $alerts = \App\Event::checkForError(); + return view('admin.status.index',['alerts' => $alerts]); + } + + public function instruction() + { + + } + } diff --git a/app/Http/Controllers/ConfigController.php b/app/Http/Controllers/ConfigController.php index 01c4a54a..397cc8bf 100644 --- a/app/Http/Controllers/ConfigController.php +++ b/app/Http/Controllers/ConfigController.php @@ -4,9 +4,11 @@ namespace App\Http\Controllers; use App\Config; use Illuminate\Http\Request; +use phpDocumentor\Reflection\Types\Boolean; class ConfigController extends Controller { + /** * Display a listing of the resource. * @@ -132,18 +134,52 @@ class ConfigController extends Controller public function showfilesConfig() { - return view('admin.configs.file',['configs' => Config::all()]); + $error = []; + return view('admin.configs.file',['configs' => Config::all(),'error' => $error]); } public function editfilesConfig() { - $config = \App\Config::all()->where('name','cadet_list')->first(); + $configList = [ + 'cadet_list', + ]; - $config->data = [\request('cadet_list')]; + $configListEncrypt = [ + 'GOOGLE_DRIVE_CLIENT_ID', + 'GOOGLE_DRIVE_CLIENT_SECRET', + 'GOOGLE_DRIVE_REFRESH_TOKEN', + 'GOOGLE_DRIVE_FOLDER_ID' + ]; - $config->save(); + if (\request('is_active') == 'on') + { + $config = \App\Config::find('is_Google_Drive_enabled'); + $config->data = ['true']; + $config->save(); + } + else + { + $config = \App\Config::find('is_Google_Drive_enabled'); + $config->data = ['false']; + $config->save(); + } - clog('edit','success','a modifié la configuration'); + + foreach ($configList as $configName) + { + $config = \App\Config::find($configName); + $config->data = [\request($configName)]; + $config->save(); + } + + foreach ($configListEncrypt as $configName) + { + $config = \App\Config::find($configName); + $config->data = [\Crypt::encryptString(\request($configName))]; + $config->save(); + } + + clog('edit','success','a modifié la configuration des fichiers'); return redirect('/admin/config/files')->with('success','Modification sauvegarder avec succès !'); } } diff --git a/app/Http/Controllers/CourseController.php b/app/Http/Controllers/CourseController.php index 6e495f85..68ef3092 100644 --- a/app/Http/Controllers/CourseController.php +++ b/app/Http/Controllers/CourseController.php @@ -3,6 +3,7 @@ namespace App\Http\Controllers; use App\Course; +use App\GoogleDriveFile; use Illuminate\Http\Request; class CourseController extends Controller @@ -14,7 +15,24 @@ class CourseController extends Controller */ public function index() { - // + $mode = 'future'; + if (\request('all')) + { + $courses = Course::all(); + $mode = 'all'; + } + else + { + $courses = Course::allFuture(); + } + foreach ($courses as $course) + { + if($course->ocom() != null) + { + $course->ocom()->updateWasGiven(); + } + } + return view('admin.course.index',['courses' => $courses,'mode' => $mode]); } /** @@ -41,18 +59,25 @@ class CourseController extends Controller /** * Display the specified resource. * - * @param \App\Course $course - * @return \Illuminate\Http\Response + * @param $id + * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View */ - public function show(Course $course) + public function show($id) { - // + $course = Course::find($id); + $user = \App\User::find($course->user_id); + $name = $course->user_id; + if ($user != null) + { + $name = $user->fullname(); + } + return view('admin.course.show',['course' => $course,'username' => $name,'lessonPlanDir' => \App\GoogleDriveFile::findByPath('.Systeme/.Fichier/.PlanDeCours')->id]); } /** * Show the form for editing the specified resource. * - * @param \App\Course $course + * @param Course $course * @return \Illuminate\Http\Response */ public function edit(Course $course) @@ -64,7 +89,7 @@ class CourseController extends Controller * Update the specified resource in storage. * * @param \Illuminate\Http\Request $request - * @param \App\Course $course + * @param Course $course * @return \Illuminate\Http\Response */ public function update(Request $request, Course $course) @@ -72,14 +97,105 @@ class CourseController extends Controller // } + public function updateCommentOfficer(Request $request, $id) + { + $course = Course::findOrFail($id); + + $course->comment_officer = $request->comment_officer; + $course->save(); + return redirect()->back()->with('success','Modification enregisté avec succès'); + } + + public function updateComment(Request $request, $id) + { + $course = Course::findOrFail($id); + + $course->comment = $request->comment; + $course->save(); + return redirect()->back()->with('success','Modification enregisté avec succès'); + } + + public function updateCommentOfficerPlan(Request $request, $id) + { + $course = Course::findOrFail($id); + + $course->lessonPlan->comment = $request->comment_officer; + $course->lessonPlan->save(); + return redirect()->back()->with('success','Modification enregisté avec succès'); + } + + public function updateCommentPlan(Request $request, $id) + { + $course = Course::findOrFail($id); + + $course->lessonPlan->desc = $request->comment; + $course->lessonPlan->save(); + return redirect()->back()->with('success','Modification enregisté avec succès'); + } + + public function updateLessonPlan(Request $request, $id) + { + $course = Course::findOrFail($id); + $name = $course->ocom.'_'.$course->instructor().'_'.$course->event->date_begin.'_'.'v'.date('c').'.'.\request()->file('file')->getClientOriginalExtension(); + $name = urlencode($name); + $dirID = \App\GoogleDriveFile::findByPath('.Systeme/.Fichier/.PlanDeCours')->id; + + if ($course->lessonPlan != null) + { + $lessonPlan = $course->lessonPlan; + $contents = collect(\Storage::cloud()->listContents($dirID, false)); + + $file = $contents + ->where('type', '=', 'file') + ->where('filename', '=', pathinfo($course->lessonPlan->file, PATHINFO_FILENAME)) + ->where('extension', '=', pathinfo($course->lessonPlan->file, PATHINFO_EXTENSION)) + ->first(); // there can be duplicate file names! + \Storage::cloud()->delete($file['path']); + } + else + { + $lessonPlan = new \App\LessonPlan(); + } + \Storage::cloud()->putFileAs($dirID,\request()->file('file'),$name); + $metadata = \Storage::cloud()->getMetadata($dirID.'/'.$name); + + $lessonPlan->user_id = \Auth::user()->id; + $lessonPlan->file = $metadata['name']; + $lessonPlan->course_id = $course->id; + $lessonPlan->desc = ""; + $lessonPlan->comment = ""; + $lessonPlan->save(); + + return redirect()->back(); + } + /** * Remove the specified resource from storage. * - * @param \App\Course $course + * @param Course $course * @return \Illuminate\Http\Response */ public function destroy(Course $course) { // } + + public function validatePlan($id) + { + $course = Course::findOrFail($id); + if ($course->lessonPlan) + { + if ($course->lessonPlan->approved) + { + $course->lessonPlan->approved = false; + } + else + { + $course->lessonPlan->approved = true; + } + $course->lessonPlan->save(); + return strval($course->lessonPlan->approved); + } + return abort(500); + } } diff --git a/app/Http/Controllers/EventController.php b/app/Http/Controllers/EventController.php index 43bf85b7..6bf5fb62 100644 --- a/app/Http/Controllers/EventController.php +++ b/app/Http/Controllers/EventController.php @@ -2,7 +2,10 @@ namespace App\Http\Controllers; +use App\Course; use App\Event; +use App\EventType; +use App\GoogleDriveFile; use Illuminate\Http\Request; use Illuminate\Http\Response; @@ -38,40 +41,99 @@ class EventController extends Controller { $event = new Event(); + if (\App\GoogleDriveFile::checkConfig()) + { + if (\request()->hasFile('files')) + { + $dir = \App\GoogleDriveFile::findByPath('.Systeme/.Fichier/.MessageDeLaSemaine'); + $files = []; + foreach (\request()->file('files') as $f) + { + $name = urlencode(pathinfo($f->getClientOriginalName())['filename'].'_'.uniqid().'.'.$f->getClientOriginalExtension()); + \Storage::cloud()->putFileAs($dir->id,$f,$name); + array_push($files,$name); + } + $event->weekly_msg_file = $files; + } + else + { + $event->weekly_msg_file = ['']; + } + } else { + $event->weekly_msg_file = ['']; + } + $event->name = request('name'); - $event->date_begin = request('begin'); - $event->date_end = request('end'); + $event->date_begin = request('begin_time'); + $event->date_end = request('end_time'); $event->type = request('type'); $event->user_id = \Auth::user()->id; $event->location = request('location'); + if(request('is_mandatory') != null){ $event->is_mandatory = 1; } else { $event->is_mandatory = 0; } - $event->desc = request('desc'); - if(\request('msg')) + + $event->desc = \request('admin_desc'); + + if(\request("use_weekly_msg")) { - $event->msg = request('msg'); + $event->use_weekly_msg = 1; + $event->weekly_msg_publication_time = \request('date_msg'); + $event->msg = request('admin_desc'); } else { + $event->use_weekly_msg = 0; + $event->weekly_msg_publication_time = ""; $event->msg = ""; } - if(\request('date_msg')) + + if(\request("use_schedule")) { - $event->date_msg = request('date_msg'); + $event->use_schedule = 1; } else { - $event->date_msg = ""; + $event->use_schedule = 0; } + + $event->calendar_color = \request('calendar_color'); + $event->calendar_icon = \request('calendar_icon'); + + $nbLevel = 1; + $niveaux = []; + while (\request('level_name_'.$nbLevel)) + { + array_push($niveaux,['name' => \request('level_name_'.$nbLevel)]); + $nbLevel++; + } + + $nbPeriode = 1; + $periodes = []; + while (\request('periode_name_'.$nbPeriode)) + { + array_push($periodes,[ + 'name' => \request('periode_name_'.$nbPeriode), + 'begin_time' => \request('periode_begin_time_'.$nbPeriode), + 'end_time' => \request('periode_end_time_'.$nbPeriode) + ]); + $nbPeriode++; + } + $event->schedule = [ + 'periodes' => $periodes, + 'niveaux' => $niveaux, + 'courses' => [] + ]; + $event->save(); - if ($event->type == 1) { - for ($l=1; $l <= \App\Config::getData('admin_level_in_schedule_nb'); $l++) { - for ($p=1; $p <= \App\Config::getData('admin_periode_nb'); $p++) { - + if ($event->use_schedule) { + for ($l=1; $l < $nbLevel; $l++) { + for ($p=1; $p < $nbPeriode; $p++) { + $course = new \App\Course(); $users = \App\User::all(); @@ -84,17 +146,47 @@ class EventController extends Controller } } - $course->name = request('name_n'.$l.'_p'.$p); $course->user_id = $instructor; - $course->ocom = request('ocom_n'.$l.'_p'.$p); - $course->location = request('loc_n'.$l.'_p'.$p); + if (request('location_n'.$l.'_p'.$p) != null) { + $course->location = request('location_n'.$l.'_p'.$p); + } else { + $course->location = ""; + } $course->periode = $p; $course->level = $l; - $course->comment = ""; $course->event_id = $event->id; + if(\request("use_course_n".$l."_p".$p) == 'on') + { + $course->name = request('name_n'.$l.'_p'.$p); + $course->ocom = request('ocom_n'.$l.'_p'.$p); + $course->desc = ""; + } + else + { + $course->name = ""; + $course->ocom = ""; + if (request('desc_n'.$l.'_p'.$p) == null) + { + $course->desc = ""; + } + else + { + $course->desc = request('desc_n'.$l.'_p'.$p); + } + } + $course->comment_officer = ""; + $course->comment = ""; $course->save(); + + $ocom = \App\OCOM::where('ocom','=',request('ocom_n'.$l.'_p'.$p))->first(); + if ($ocom != null) + { + $foo = $ocom->courses(); + $foo->push($course); + $ocom->saveCourses($foo); + } } } } @@ -121,7 +213,7 @@ class EventController extends Controller */ public function edit($id) { - return view('admin.schedule.event.edit',['activity' => \App\Event::find($id)]); + return view('admin.schedule.event.edit',['event' => \App\Event::find($id)]); } /** @@ -133,51 +225,104 @@ class EventController extends Controller */ public function update($id) { - $event = Event::find($id); + $event = Event::findOrFail($id); + +// if (\App\GoogleDriveFile::checkConfig()) +// { +// if (\request()->hasFile('files')) +// { +// $dir = \App\GoogleDriveFile::findByPath('.Systeme/.Fichier/.MessageDeLaSemaine'); +// $files = []; +// foreach (\request()->file('files') as $f) +// { +// $name = urlencode(pathinfo($f->getClientOriginalName())['filename'].'_'.uniqid().'.'.$f->getClientOriginalExtension()); +// \Storage::cloud()->putFileAs($dir->id,$f,$name); +// array_push($files,$name); +// } +// $event->weekly_msg_file = $files; +// } +// else +// { +// $event->weekly_msg_file = ['']; +// } +// } else { +// $event->weekly_msg_file = ['']; +// } $event->name = request('name'); - $event->date_begin = request('begin'); - $event->date_end = request('end'); + $event->date_begin = request('begin_time'); + $event->date_end = request('end_time'); + $event->user_id = \Auth::user()->id; $event->location = request('location'); + if(request('is_mandatory') != null){ $event->is_mandatory = 1; } else { $event->is_mandatory = 0; } - $event->desc = request('desc'); - if(\request('msg')) + + $event->desc = \request('admin_desc'); + + if(\request("use_weekly_msg")) { - $event->msg = request('msg'); + $event->use_weekly_msg = 1; + $event->weekly_msg_publication_time = \request('date_msg'); + $event->msg = request('admin_desc'); } else { + $event->use_weekly_msg = 0; + $event->weekly_msg_publication_time = ""; $event->msg = ""; } - if(\request('date_msg')) + + if(\request("use_schedule")) { - $event->date_msg = request('date_msg'); + $event->use_schedule = 1; } else { - $event->date_msg = ""; + $event->use_schedule = 0; } + + $event->calendar_color = \request('calendar_color'); + $event->calendar_icon = \request('calendar_icon'); + + $nbLevel = 1; + $niveaux = []; + while (\request('level_name_'.$nbLevel)) + { + array_push($niveaux,['name' => \request('level_name_'.$nbLevel)]); + $nbLevel++; + } + + $nbPeriode = 1; + $periodes = []; + while (\request('periode_name_'.$nbPeriode)) + { + array_push($periodes,[ + 'name' => \request('periode_name_'.$nbPeriode), + 'begin_time' => \request('periode_begin_time_'.$nbPeriode), + 'end_time' => \request('periode_end_time_'.$nbPeriode) + ]); + $nbPeriode++; + } + $event->schedule = [ + 'periodes' => $periodes, + 'niveaux' => $niveaux, + 'courses' => [] + ]; + $event->save(); - if ($event->type == 1) { - for ($l=1; $l <= \App\Config::getData('admin_level_in_schedule_nb'); $l++) { - for ($p=1; $p <= \App\Config::getData('admin_periode_nb'); $p++) { + if ($event->use_schedule) { + for ($l=1; $l < $nbLevel; $l++) { + for ($p=1; $p < $nbPeriode; $p++) { - $course = new \App\Course(); - - foreach ($event->courses as $c) + $course = $event->course($p,$l); + if ($course == null) { - if ($c->periode == $p) - { - if ($c->level == $l) - { - $course = $c; - } - } + $course = new Course(); } $users = \App\User::all(); @@ -189,23 +334,48 @@ class EventController extends Controller $instructor = $user->id; } } - - $course->name = request('name_n'.$l.'_p'.$p); $course->user_id = $instructor; - $course->ocom = request('ocom_n'.$l.'_p'.$p); - $course->location = request('loc_n'.$l.'_p'.$p); + $course->location = request('location_n'.$l.'_p'.$p); $course->periode = $p; $course->level = $l; - $course->comment = ""; $course->event_id = $event->id; + if(\request("use_course_n".$l."_p".$p) == 'on') + { + $course->name = request('name_n'.$l.'_p'.$p); + $course->ocom = request('ocom_n'.$l.'_p'.$p); + $course->desc = ""; + } + else + { + $course->name = ""; + $course->ocom = ""; + if (request('desc_n'.$l.'_p'.$p) == null) + { + $course->desc = ""; + } + else + { + $course->desc = request('desc_n'.$l.'_p'.$p); + } + } + $course->comment_officer = ""; + $course->comment = ""; $course->save(); + + $ocom = \App\OCOM::where('ocom','=',request('ocom_n'.$l.'_p'.$p))->first(); + if ($ocom != null) + { + $foo = $ocom->courses(); + $foo->push($course); + $ocom->saveCourses($foo); + } } } } - clog('edit','success','a modifié un évènement',null,'App\Event',$event->id); - return redirect('/admin/schedule')->with('success','Modification à l\'événement sauvegarder à l\'horaire'); + clog('add','success','a modifier un évènement',null,'App\Event',$event->id); + return redirect('/admin/schedule')->with('success','Événement modifier à l\'horaire'); } /** @@ -218,4 +388,42 @@ class EventController extends Controller { // } + + public function checkEvent() + { + // + } + + public function toJson($id) + { + $event = Event::findOrFail($id); + $model = $event->schedule; + $default_value = []; + if ($event->use_schedule == 1) { + foreach ($model['periodes'] as $periode_index => $periode) + { + $niveau_array = []; + foreach ($model['niveaux'] as $niveau_index => $niveau) + { + $course = $event->course($periode_index+1,$niveau_index+1); + $use_course = "on"; + if ($course->name == null) { + $use_course = "off"; + } + array_push($niveau_array,[ + 'ocom' => $course->ocom, + 'name' => $course->name, + 'location' => $course->location, + 'instructor' => $course->instructor(), + 'desc' => $course->desc, + 'use_course' => $use_course + ]); + } + array_push($default_value,$niveau_array); + } + $model['default_value'] = $default_value; + } + $event->schedule_model = $model; + return $event->toArray(); + } } diff --git a/app/Http/Controllers/EventTypeController.php b/app/Http/Controllers/EventTypeController.php new file mode 100644 index 00000000..2f327fe7 --- /dev/null +++ b/app/Http/Controllers/EventTypeController.php @@ -0,0 +1,245 @@ +name = $request->name; + $eventType->location = $request->location; + $eventType->begin_time = $request->begin_time; + $eventType->end_time = $request->end_time; + $eventType->calendar_icon = $request->calendar_icon; + $eventType->calendar_color = $request->calendar_color; + $eventType->admin_desc = $request->admin_desc; + + if ($request->use_weekly_msg == 'on') + { + $eventType->use_weekly_msg = 1; + $eventType->weekly_msg_publication_time = $request->weekly_msg_publication_time; + } + else + { + $eventType->use_weekly_msg = 0; + $eventType->weekly_msg_publication_time = ''; + } + if ($request->use_schedule == 'on') + { + $eventType->use_schedule = 1; + } + else + { + $eventType->use_schedule = 0; + } + if ($request->is_mandatory == 'on') + { + $eventType->is_mandatory = 1; + } + else + { + $eventType->is_mandatory = 0; + } + + $nbOfLevel = 1; + while (\request('level_name_'.$nbOfLevel)) + { + $nbOfLevel++; + } + $nbOfLevel = $nbOfLevel-1; + + $nbOfPeriode = 1; + while (\request('periode_name_'.$nbOfPeriode)) + { + $nbOfPeriode++; + } + $nbOfPeriode = $nbOfPeriode -1; + + $model = []; + for ($x = 1; $x <= $nbOfPeriode; $x++) { + $model['periodes'][$x-1] = [ + 'name' => \Request('periode_name_'.$x), + 'begin_time' => \Request('periode_begin_time_'.$x), + 'end_time' => \Request('periode_end_time_'.$x) + ]; + } + for ($i = 1; $i <= $nbOfLevel; $i++) { + $model['niveaux'][$i-1] = [ + 'name' => \Request('level_name_'.$i) + ]; + + for ($x = 1; $x <= $nbOfPeriode; $x++) { + $model['default_value'][$x-1][$i-1] = [ + 'ocom' => \Request('ocom_n'.$i.'_p'.$x), + 'name' => \Request('name_n'.$i.'_p'.$x), + 'location' => \Request('location_n'.$i.'_p'.$x), + 'instructor' => \Request('instruc_n'.$i.'_p'.$x), + 'desc' => \Request('desc_n'.$i.'_p'.$x), + 'use_course' => \Request('use_course_n'.$i.'_p'.$x), + ]; + } + } + $eventType->schedule_model = $model; + $eventType->save(); + return redirect('/admin/config/instruction')->with('success','Type d\'évenement ajouté avec succès'); + } + + /** + * Display the specified resource. + * + * @param \App\EventType $eventType + * @return \Illuminate\Http\Response + */ + public function show($id) + { + $event_type = EventType::findOrFail($id); + return view('admin.event_type.show',['event_type' => $event_type]); + } + + /** + * Show the form for editing the specified resource. + * + * @param \App\EventType $eventType + * @return \Illuminate\Http\Response + */ + public function edit(EventType $eventType) + { + // + } + + /** + * Update the specified resource in storage. + * + * @param \Illuminate\Http\Request $request + * @param \App\EventType $eventType + * @return \Illuminate\Http\Response + */ + public function update(Request $request, $id) + { + $eventType = EventType::findOrFail($id); + + $eventType->name = $request->name; + $eventType->location = $request->location; + $eventType->begin_time = $request->begin_time; + $eventType->end_time = $request->end_time; + $eventType->calendar_icon = $request->calendar_icon; + $eventType->calendar_color = $request->calendar_color; + $eventType->admin_desc = $request->admin_desc; + + if ($request->use_weekly_msg == 'on') + { + $eventType->use_weekly_msg = 1; + $eventType->weekly_msg_publication_time = $request->weekly_msg_publication_time; + } + else + { + $eventType->use_weekly_msg = 0; + $eventType->weekly_msg_publication_time = ''; + } + if ($request->use_schedule == 'on') + { + $eventType->use_schedule = 1; + } + else + { + $eventType->use_schedule = 0; + } + if ($request->is_mandatory == 'on') + { + $eventType->is_mandatory = 1; + } + else + { + $eventType->is_mandatory = 0; + } + + $nbOfLevel = 1; + while (\request('level_name_'.$nbOfLevel)) + { + $nbOfLevel++; + } + $nbOfLevel = $nbOfLevel-1; + + $nbOfPeriode = 1; + while (\request('periode_name_'.$nbOfPeriode)) + { + $nbOfPeriode++; + } + $nbOfPeriode = $nbOfPeriode -1; + + $model = []; + for ($x = 1; $x <= $nbOfPeriode; $x++) { + $model['periodes'][$x-1] = [ + 'name' => \Request('periode_name_'.$x), + 'begin_time' => \Request('periode_begin_time_'.$x), + 'end_time' => \Request('periode_end_time_'.$x) + ]; + } + for ($i = 1; $i <= $nbOfLevel; $i++) { + $model['niveaux'][$i-1] = [ + 'name' => \Request('level_name_'.$i) + ]; + + for ($x = 1; $x <= $nbOfPeriode; $x++) { + $model['default_value'][$x-1][$i-1] = [ + 'ocom' => \Request('ocom_n'.$i.'_p'.$x), + 'name' => \Request('name_n'.$i.'_p'.$x), + 'location' => \Request('location_n'.$i.'_p'.$x), + 'instructor' => \Request('instruc_n'.$i.'_p'.$x), + 'desc' => \Request('desc_n'.$i.'_p'.$x), + 'use_course' => \Request('use_course_n'.$i.'_p'.$x), + ]; + } + } + $eventType->schedule_model = $model; + $eventType->save(); + return redirect()->back()->with('success','Modification sauvegardé avec succès'); + } + + /** + * Remove the specified resource from storage. + * + * @param \App\EventType $eventType + * @return \Illuminate\Http\Response + */ + public function destroy($id) + { + $e = EventType::findOrFail($id); + $e->delete(); + } + + public function toJson($id) + { + return EventType::findOrFail($id)->toArray(); + } +} diff --git a/app/Http/Controllers/FilesController.php b/app/Http/Controllers/FilesController.php index 135234ae..af391b5f 100644 --- a/app/Http/Controllers/FilesController.php +++ b/app/Http/Controllers/FilesController.php @@ -2,6 +2,7 @@ namespace App\Http\Controllers; +use App\GoogleDriveFile; use Illuminate\Http\Request; class FilesController extends Controller @@ -84,6 +85,67 @@ class FilesController extends Controller public function guide() { - return view('admin.files.guide'); + if (\App\GoogleDriveFile::checkConfig()) + { + $dirID = \App\GoogleDriveFile::findByPath('.Privé/.Staff/.Guide'); + $dir = collect(\Storage::cloud()->listContents($dirID->id,false))->sortBy('name'); + return view('admin.files.guide',['dir' => $dir]); + } + return redirect('/admin')->with('error','Google Drive n\'est pas configuré'); + } + + public function instruction() + { + if (\App\GoogleDriveFile::checkConfig()) + { + return view('admin.files.Google Drive.index',['folder' => \App\GoogleDriveFile::where('path','=','.Privé/.Staff/.Instruction')->first()->id, 'mode' => 'folder']); + } + return redirect('/admin')->with('error','Google Drive n\'est pas configuré'); + + } + + public function cadet() + { + if (!\App\GoogleDriveFile::checkConfig()) + { + return redirect('/admin')->with('error','Google Drive n\'est pas configuré'); + } + return view('admin.files.Google Drive.index',['folder' => \App\GoogleDriveFile::where('path','=','.Privé/.Cadet')->first()->id, 'mode' => 'folder']); + } + + public function staff() + { + if (!\App\GoogleDriveFile::checkConfig()) + { + return redirect('/admin')->with('error','Google Drive n\'est pas configuré'); + } + return view('admin.files.Google Drive.index',['folder' => \App\GoogleDriveFile::where('path','=','.Privé/.Staff')->first()->id, 'mode' => 'folder']); + } + + public function etamas() + { + if (!\App\GoogleDriveFile::checkConfig()) + { + return redirect('/admin')->with('error','Google Drive n\'est pas configuré'); + } + return view('admin.files.Google Drive.index',['folder' => \App\GoogleDriveFile::where('path','=','.Privé/.ETAMAS')->first()->id, 'mode' => 'folder']); + } + + public function officier() + { + if (!\App\GoogleDriveFile::checkConfig()) + { + return redirect('/admin')->with('error','Google Drive n\'est pas configuré'); + } + return view('admin.files.Google Drive.index',['folder' => \App\GoogleDriveFile::where('path','=','.Privé/.Officier')->first()->id, 'mode' => 'folder']); + } + + public function publique() + { + if (!\App\GoogleDriveFile::checkConfig()) + { + return redirect('/admin')->with('error','Google Drive n\'est pas configuré'); + } + return view('admin.files.Google Drive.index',['folder' => \App\GoogleDriveFile::where('path','=','.Publique')->first()->id, 'mode' => 'folder']); } } diff --git a/app/Http/Controllers/GoogleDriveController.php b/app/Http/Controllers/GoogleDriveController.php new file mode 100644 index 00000000..10952129 --- /dev/null +++ b/app/Http/Controllers/GoogleDriveController.php @@ -0,0 +1,635 @@ + $folder]); + } + + public function indexFolder($folder = '') + { + return view('admin.files.Google Drive.index',['folder' => $folder,'mode' => 'folder']); + } + + /** + * Show the form for creating a new file. + * + * @return \Illuminate\Http\RedirectResponse + */ + public function createFile() + { + Storage::cloud()->put(\request('currentDir'.'/'.\request('name')), ''); + return back()->with('success','Fichier créer avec succès'); + } + + public function createFolder() + { + Storage::cloud()->makeDirectory(\request('currentDir').'/'.\request('name')); + return back()->with('success','Dossier créer avec succès'); + } + + public function uploadFile() + { + Storage::cloud()->putFileAs(\request('currentDir'),\request()->file('fichier'),\request()->file('fichier')->getClientOriginalName()); + return back()->with('success','Fichier téléversé avec succès'); + } + + /** + * Store a newly created resource in storage. + * + * @param \Illuminate\Http\Request $request + * @return bool + */ + public function store(Request $request) + { + $path = Storage::cloud()->makeDirectory('Test Dir'); + dd($path); + } + + /** + * Display the specified resource. + * + * @param $filename + * @return \Illuminate\Http\Response + * @throws \Illuminate\Contracts\Filesystem\FileNotFoundException + */ + public function show() + { + $filename = \request('file'); + $contents = collect(Storage::cloud()->listContents('/1nEe35-GvLX598RketTI-UoaOxIMNxfka', true)); + + $file = $contents + ->where('type', '=', 'file') + ->where('filename', '=', pathinfo($filename, PATHINFO_FILENAME)) + ->where('extension', '=', pathinfo($filename, PATHINFO_EXTENSION)) + ->first(); // there can be duplicate file names! + + //return $file; // array with file info + + $rawData = Storage::cloud()->get($file['path']); + + return response($rawData, 200) + ->header('ContentType', $file['mimetype']) + ->header('Content-Disposition', "attachment; filename='$filename'"); + } + + public function showMetadata($dir,$file) + { + if ($dir == 'root') + { + $dir = '/'; + } + $contents = collect(Storage::cloud()->listContents($dir, true)); + + $file = $contents + ->where('type', '=', 'file') + ->where('filename', '=', pathinfo($file, PATHINFO_FILENAME)) + ->where('extension', '=', pathinfo($file, PATHINFO_EXTENSION)) + ->first(); // there can be duplicate file names! + + return $file; + } + + /** + * Show the form for editing the specified resource. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function edit($id) + { + // + } + + /** + * Update the specified resource in storage. + * + * @param \Illuminate\Http\Request $request + * @param int $id + * @return \Illuminate\Http\Response + */ + public function update(Request $request, $id) + { + // + } + + /** + * Remove the specified resource from storage. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function destroy($id) + { + // + } + + public function getPathArray() + { + $contents = collect(Storage::cloud()->listContents('/', true)); + return json_encode($contents->where('type', '=', 'dir')); + } + + public function getPath($folder) + { + $contents = collect(Storage::cloud()->listContents('/', true)); + $dir = collect($contents->where('type', '=', 'dir')); + foreach ($dir as $d) + { + if($d['basename'] == $folder) + { + return $d['dirname']; + } + } + } + + public function getFile() + { + if(\request('f')) + { + $dir = '/'; + if (\request('d') && urldecode(\request('d')) != '') + { + $dir = \request('d'); + } + $filename = urldecode(\request('f')); + + $recursive = false; // Get subdirectories also? + $contents = collect(Storage::cloud()->listContents($dir, $recursive)); + + $file = $contents + ->where('type', '=', 'file') + ->where('filename', '=', pathinfo($filename, PATHINFO_FILENAME)) + ->first(); // there can be duplicate file names! + if ($file == null) + { + $filename = \request('f'); + $file = $contents + ->where('type', '=', 'file') + ->where('filename', '=', pathinfo($filename, PATHINFO_FILENAME)) + ->first(); // there can be duplicate file names! + } + + $rawData = Storage::cloud()->get($file['path']); + $filename = urlencode($filename); + return response($rawData, 200) + ->header('Content-Type', $file['mimetype']) + ->header('Content-Disposition', "attachment; filename=$filename"); + } + else + { + abort(404); + } + } + + public function deleteFile() + { + if(\request('f')) + { + $dir = '/'; + if (\request('d') && urldecode(\request('d')) != '') + { + $dir = \request('d'); + } + $filename = urldecode(\request('f')); + + $recursive = false; // Get subdirectories also? + $contents = collect(Storage::cloud()->listContents($dir, $recursive)); + + $file = $contents + ->where('type', '=', 'file') + ->where('filename', '=', pathinfo($filename, PATHINFO_FILENAME)) + ->where('extension', '=', pathinfo($filename, PATHINFO_EXTENSION)) + ->first(); // there can be duplicate file names! + + Storage::cloud()->delete($file['path']); + + return back()->with('success','Fichier supprimé avec succès'); + } + else + { + abort(404); + } + } + + public function deleteDir() + { + $directoryID = \request('d'); + + // Now find that directory and use its ID (path) to delete it + $dir = '/'; + $recursive = false; // Get subdirectories also? + $contents = collect(Storage::cloud()->listContents($dir, $recursive)); + + $directory = $contents + ->where('type', '=', 'dir') + ->where('basename', '=', $directoryID) + ->first(); + + Storage::cloud()->deleteDirectory($directory['path']); + + return back()->with('success','Dossier supprimé avec succès'); + } + + public function list($folder = 'root') + { + $recursive = false; // Get subdirectories also? + $perm = ['r' => GoogleDriveFile::getPermForAuthUser($folder,'r'),'w' => GoogleDriveFile::getPermForAuthUser($folder,'w'),'p' => GoogleDriveFile::getPermForAuthUser($folder,'p')]; + if ($folder == 'root') + { + $contents = collect(Storage::cloud()->listContents('/', $recursive)); + } + else + { + $contents = collect(Storage::cloud()->listContents($folder, $recursive)); + } + + return view('admin.files.Google Drive.explorer',[ + 'directories' => $contents->where('type', '=', 'dir')->sortByDesc('name'), + 'files' => $contents->where('type', '=', 'file'), + 'currentDir' => $folder, + 'permission' => $perm]); + } + + public function checkFileSystem() + { + $error = []; + if(\App\Config::getData('is_Google_Drive_enabled') == "true") + { + if (GoogleDriveFile::checkConfig()) + { + $structure = $this->getFileStructure(); + $this->checkStructure($structure,'/','/',$error); + } + else + { + $error = ['Il y a un probleme avec vos configurations']; + } + } + else + { + $error = ['Google Drive n\'est pas actif']; + } + return $error; + } + + public function checkStructure() + { + $structure = $this->getFileStructure(); + + foreach ($structure as $directory => $value) + { + $basename = GoogleDriveFile::findByPathInDrive($directory); + if ($basename == false) + { + $basename = GoogleDriveFile::createByPathInDrive($directory); + } + + $googleDriveFile = GoogleDriveFile::findByPath($directory); + if ($googleDriveFile == null) + { + $googleDriveFile = new GoogleDriveFile(); + $googleDriveFile->id = $basename; + $googleDriveFile->type = 'directory'; + $googleDriveFile->rank_permission = $value['rank']; + $googleDriveFile->job_permission = []; + $googleDriveFile->user_permission = []; + $googleDriveFile->path = $directory; + $name = explode('/',$directory); + $googleDriveFile->name = $name[count($name)-1]; + $googleDriveFile->save(); + } + else + { + if ($googleDriveFile->id != $basename) + { + $googleDriveFile->id = $basename; + $googleDriveFile->save(); + } + } + } + } + + public function editPermission($folder) + { + $f = GoogleDriveFile::find($folder); + if ($f == null) + { + $metadata = \Storage::cloud()->getMetadata($folder); + $f = new GoogleDriveFile(); + $f->id = $folder; + $f->type = 'directory'; + $f->name = $metadata['name']; + $f->rank_permission = [1 => 'rwp']; + $f->job_permission = []; + $f->user_permission = []; + $f->path = $this->recreatePath($folder); + $f->save(); + } + return view('admin.files.Google Drive.permission',['dir' => $f]); + } + + public function getFileStructure() + { + return collect([ + '.Systeme' => [ + 'rank' => [1 => 'rwp'], + 'job' => [], + 'user' => [] + ], + '.Systeme/.Fichier' => [ + 'rank' => [1 => 'rwp'], + 'job' => [], + 'user' => [] + ], + '.Systeme/.Fichier/.MessageDeLaSemaine' => [ + 'rank' => [1 => 'rwp',0 => 'r'], + 'job' => [], + 'user' => [] + ], + '.Systeme/.Fichier/.PlanDeCours' => [ + 'rank' => [1 => 'rwp'], + 'job' => [], + 'user' => [] + ], + '.Privé' => [ + 'rank' => [1 => 'rwp'], + 'job' => [], + 'user' => [] + ], + '.Privé/.Cadet' => [ + 'rank' => [1 => 'rwp'], + 'job' => [], + 'user' => [] + ], + '.Privé/.ETAMAS' => [ + 'rank' => [1 => 'rwp'], + 'job' => [], + 'user' => [] + ], + '.Privé/.Officier' => [ + 'rank' => [1 => 'rwp'], + 'job' => [], + 'user' => [] + ], + '.Privé/.Staff' => [ + 'rank' => [1 => 'rwp'], + 'job' => [], + 'user' => [] + ], + '.Privé/.Staff/.Guide' => [ + 'rank' => [1 => 'rwp'], + 'job' => [], + 'user' => [] + ], + '.Privé/.Staff/.Instruction' => [ + 'rank' => [1 => 'rwp'], + 'job' => [], + 'user' => [] + ], + '.Publique' => [ + 'rank' => [1 => 'rwp',0 => 'r'], + 'job' => [], + 'user' => [] + ], + '.Publique/.Fichier' => [ + 'rank' => [1 => 'rwp',0 => 'r'], + 'job' => [], + 'user' => [] + ], + '.Publique/.Image' => [ + 'rank' => [1 => 'rwp',0 => 'r'], + 'job' => [], + 'user' => [] + ], + ]); + } + + public function listLockDirectory($d) + { + $contents = collect(\Storage::cloud()->listContents($d, false)); + $dir = $contents->where('type', '=', 'dir'); + $dir = $dir->where('filename','=',''); + + return $dir; + } + + public function recreatePath($folder) + { + $path = []; + $name = []; + $directories = collect(json_decode($this->getPathArray(),true)); + foreach ($directories as $dir) + { + $path[$dir['basename']] = $dir['dirname']; + $name[$dir['basename']] = $dir['name']; + } + $realPath = $name[$folder]; + $foo = $folder; + while ($foo != "") + { + $bar = explode('/',$path[$foo]); + $foo = $bar[count($bar)-1]; + if ($foo != "") + { + $realPath = $name[$foo].'/'.$realPath; + } + } + return $realPath; + } + + public function editPermissionModal($folder,$subject,$id) + { + $dir = GoogleDriveFile::find($folder); + $foo = null; + $perm = null; + if ($subject == 'rank') + { + if ($id == 0) + { + $foo = new \App\Rank(); + $foo->name = "Utilisateur non authentifié"; + $foo->id = 0; + if (isset($dir->rank_permission[$id])) + { + $perm = $dir->rank_permission[$id]; + } + else + { + $perm = ""; + } + } + else + { + $foo = \App\Rank::find($id); + $perm = $dir->rank_permission[$id]; + } + } + elseif ($subject == 'job') + { + $foo = \App\Job::find($id); + $perm = $dir->job_permission[$id]; + } + else + { + $foo = \App\User::find($id); + $perm = $dir->user_permission[$id]; + } + return view('admin.files.Google Drive.permission.edit',['folder' => $dir,'subject' => $foo,'perm' => $perm,'s' => $subject]); + } + + public function addPermissionModal($folder,$subject) + { + $dir = GoogleDriveFile::find($folder); + $list = null; + if ($subject == 'rank') + { + $list = \App\Rank::all(); + } + elseif ($subject == 'job') + { + $list = \App\Job::all(); + } + else + { + $list = \App\User::all(); + } + return view('admin.files.Google Drive.permission.add',['folder' => $dir,'list' => $list,'s' => $subject]); + } + + public function patchPermission(Request $request,$folder,$subject,$id) + { + $f = GoogleDriveFile::find($folder); + $permstring = ''; + if (isset($request->read)) + { + if ($request->read == 'on') + { + $permstring = $permstring.'r'; + } + } + if (isset($request->write)) + { + if ($request->write == 'on') + { + $permstring = $permstring.'w'; + } + } + if (isset($request->perm)) + { + if ($request->perm == 'on') + { + $permstring = $permstring.'p'; + } + } + if ($subject == 'rank') + { + $temp = $f->rank_permission; + $temp[$id] = $permstring; + $f->rank_permission = $temp; + } + if ($subject == 'job') + { + $temp = $f->job_permission; + $temp[$id] = $permstring; + $f->job_permission = $temp; + } + if ($subject == 'user') + { + $temp = $f->user_permission; + $temp[$id] = $permstring; + $f->user_permission = $temp; + } + $f->save(); + return redirect()->back()->with('success','Modification enregistré avec succès'); + } + + public function addPermission(Request $request,$folder,$subject) + { + $f = GoogleDriveFile::find($folder); + $permstring = ''; + if (isset($request->read)) + { + if ($request->read == 'on') + { + $permstring = $permstring.'r'; + } + } + if (isset($request->write)) + { + if ($request->write == 'on') + { + $permstring = $permstring.'w'; + } + } + if (isset($request->perm)) + { + if ($request->perm == 'on') + { + $permstring = $permstring.'p'; + } + } + if ($subject == 'rank') + { + $temp = $f->rank_permission; + $temp[$request->id] = $permstring; + $f->rank_permission = $temp; + } + if ($subject == 'job') + { + $temp = $f->job_permission; + $temp[$request->id] = $permstring; + $f->job_permission = $temp; + } + if ($subject == 'user') + { + $temp = $f->user_permission; + $temp[$request->id] = $permstring; + $f->user_permission = $temp; + } + $f->save(); + return redirect()->back()->with('success','Modification enregistré avec succès'); + } + + public function deletePermission($folder,$subject,$id) + { + $f = GoogleDriveFile::find($folder); + if ($subject == 'rank') + { + $temp = $f->rank_permission; + unset($temp[$id]); + $f->rank_permission = $temp; + } + if ($subject == 'job') + { + $temp = $f->job_permission; + unset($temp[$id]); + $f->job_permission = $temp; + } + if ($subject == 'user') + { + $temp = $f->user_permission; + unset($temp[$id]); + $f->user_permission = $temp; + } + $f->save(); + return redirect()->back()->with('success','Modification enregistré avec succès'); + } + +} diff --git a/app/Http/Controllers/LessonPlanController.php b/app/Http/Controllers/LessonPlanController.php new file mode 100644 index 00000000..32cfa438 --- /dev/null +++ b/app/Http/Controllers/LessonPlanController.php @@ -0,0 +1,85 @@ +read_at = date('Y-m-d h:i:s'); + $n->save(); + } + + public function markAllAsRead() + { + $notifications = \Auth::user()->unreadNotifications; + foreach ($notifications as $n) + { + $n->read_at = date('Y-m-d h:i:s'); + $n->save(); + } + return $notifications; + } +} diff --git a/app/Http/Controllers/OCOMController.php b/app/Http/Controllers/OCOMController.php new file mode 100644 index 00000000..9ba7f6e5 --- /dev/null +++ b/app/Http/Controllers/OCOMController.php @@ -0,0 +1,320 @@ + OCOM::all()]); + } + + /** + * Show the form for creating a new resource. + * + * @return \Illuminate\Http\Response + */ + public function create() + { + return view('admin.ocom.add'); + } + + public function generate() + { + $file = fopen(\request()->file('file'),'r'); + $data = fread($file,filesize(\request()->file('file'))); + fclose($file); + $data = str_replace(["\r","\n"],'',$data); + + // Detection et nettoyage des ORENs + preg_match_all('/[MX\d][X\d]\d+,[^,]+/',$data,$matches_orens); + foreach ($matches_orens[0] as $key => $oren) { + $oren = str_replace('"','',$oren); + $matches_orens[0][$key] = $oren; + } + $orens_pass_2 = collect($matches_orens[0])->unique(); + $orens = []; + foreach ($orens_pass_2 as $oren) + { + $foo = explode(',',$oren); + $orens[$foo[0]] = $foo[1]; + } + + // Detection et nettoyage des OCOMs + preg_match_all('/[MC][X\d]\d{2}\.\d{2}\w?,[^,]+,\d/',$data,$matches_ocom); + foreach ($matches_ocom[0] as $key => $ocom) { + $ocom = str_replace('"','',$ocom); + $matches_ocom[0][$key] = $ocom; + } + $ocoms_pass_2 = collect($matches_ocom[0])->unique(); + + foreach ($ocoms_pass_2 as $ocom_pass_2) + { + $foo = explode(',',$ocom_pass_2); + + if (OCOM::findByOCOM($foo[0]) == null) + { + preg_match('/[X\d]\d{2}/',$ocom_pass_2,$matches); + $oren = $matches[0]; + $complementary = false; + if ($foo[0][0] == "C") + { + $complementary = true; + } + $nocom = new OCOM(); + $nocom->ocom = $foo[0]; + $nocom->objectif_competence = $foo[1]; + $nocom->nbPeriode = $foo[2]; + $nocom->objectif_rendement = $orens[$oren]; + $nocom->oren = $oren; + $nocom->complementary = $complementary; + $nocom->course_id = ''; + + $nocom->save(); + } + } + + $this->updateOCOMDB(); + return redirect('/admin/ocom')->with('success','Base de donnée des cours générée avec succès!'); + } + + public function g() + { + OCOM::truncate(); + + $matches = []; + $orens = []; + preg_match_all('/[X\d]\d\d,[^,]*/',\request('text'),$matches); + foreach ($matches[0] as $match) + { + $match = str_replace('"',"",$match); + $match = trim(preg_replace('/\s\s+/', ' ', $match)); + $oren = ""; + preg_match('/[X\d]\d\d/',$match,$oren); + $value = preg_replace('/[X\d]\d\d,/','',$match); + if($value != "") + { + $orens[$oren[0]] = preg_replace('/[X\d]\d\d,/','',$match); + } + } + + preg_match_all('/[MC]\S\d\d.\d\d[A-Z]?,[^,]*,\d/',$text,$matches); + + foreach ($matches[0] as $match) + { + $newocom = new OCOM(); + + $match = str_replace('"',"",$match); + + $ocom = ""; + preg_match('/[MC]\S\d\d.\d\d[A-Z]?/',$match,$ocom); + + if(!OCOM::where('ocom',$ocom)->first()) + { + $oren = ""; + preg_match('/[X\d]\d\d/',$ocom[0],$oren); + + $obj_competence = str_replace($ocom[0].",","",$match); + $obj_competence = trim(preg_replace('/\s\s+/', ' ', $obj_competence)); + $obj_competence = trim($obj_competence,"\\"); + + $nbPeriode = preg_replace('/[MC]\S\d\d.\d\d[A-Z]?,[^,]*,/','',$match); + $newocom->nbPeriode = $nbPeriode; + + $obj_competence = str_replace(",".$nbPeriode,'',$obj_competence); + + $newocom->ocom = $ocom[0]; + $newocom->oren = $oren[0]; + + if ($newocom->ocom[0] == 'C' || $newocom->ocom[0] == 'c') + { + $newocom->complementary = true; + } + else + { + $newocom->complementary = false; + } + + $newocom->course_id = ''; + + $newocom->objectif_competence = $obj_competence; + $newocom->objectif_rendement = $orens[$oren[0]]; + $newocom->objectif_rendement = trim($newocom->objectif_rendement,"\\"); + $newocom->save(); + } + } + return redirect('/admin/ocom')->with('success','Base de donnée des cours générée avec succès!'); + } + + public function showgenerate() + { + return view('admin.ocom.generate'); + } + + public function updateOCOMDB() + { + $ocoms = OCOM::all(); + + $from = strtotime(\App\Config::getData('instruction_year_begin')); + $to = strtotime(\App\Config::getData('instruction_year_end')); + $allEvent = \App\Event::all(); + $events = collect(); + + foreach ($allEvent as $e) + { + if ($e->use_schedule == 1) + { + if (strtotime($e->date_begin) >= $from) + { + if (strtotime($e->date_begin) <= $to) + { + $events->push($e); + foreach ($e->courses as $c) + { + $r = $ocoms->where('ocom',$c->ocom)->first(); + if ($r != null) + { + $r->saveCourse($c); + } + } + } + } + } + } + foreach ($ocoms as $o) + { + $o->save(); + } + } + + /** + * Store a newly created resource in storage. + * + * @param Request $request + * @return \Illuminate\Http\Response + */ + public function store(Request $request) + { + $ocom = new OCOM(); + $ocom->ocom = $request->ocom; + $ocom->objectif_competence = $request->objectif_competence; + $ocom->nbPeriode = $request->nbPeriode; + $ocom->objectif_rendement = $request->objectif_rendement; + $ocom->oren = $request->oren; + + if ($ocom->ocom[0] == 'C' || $ocom->ocom[0] == 'c') + { + $ocom->complementary = true; + } + else + { + $ocom->complementary = false; + } + $ocom->course_id = ""; + $ocom->save(); + clog('add','success','a ajouter un ocom',\Auth::User()->id); + return redirect('/admin/ocom/'.$ocom->id); + } + + /** + * Display the specified resource. + * + * @param $OCOM + * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View + */ + public function show($OCOM) + { + return view('admin.ocom.show',['ocom' => OCOM::find($OCOM)]); + } + + /** + * Show the form for editing the specified resource. + * + * @param $id + * @return \Illuminate\Http\Response + */ + public function edit($id) + { + return view('admin.ocom.edit',['ocom' => OCOM::find($id)]); + } + + /** + * Update the specified resource in storage. + * + * @param Request $request + * @param $id + * @return RedirectResponse|Redirector + */ + public function update(Request $request,$id) + { + $ocom = OCOM::find($id); + $ocom->ocom = $request->ocom; + $ocom->objectif_competence = $request->objectif_competence; + $ocom->nbPeriode = $request->nbPeriode; + $ocom->objectif_rendement = $request->objectif_rendement; + $ocom->oren = $request->oren; + + if ($ocom->ocom[0] == 'C' || $ocom->ocom[0] == 'c') + { + $ocom->complementary = true; + } + else + { + $ocom->complementary = false; + } + + $ocom->save(); + clog('edit','success','a modifié un ocom',\Auth::User()->id); + return redirect('/admin/ocom/'.$id); + } + + /** + * Remove the specified resource from storage. + * + * @param OCOM $oCOM + * @return \Illuminate\Http\Response + */ + public function destroy($id) + { + OCOM::find($id)->delete(); + } + + public function jsonList() + { + $ocoms = OCOM::all(); + + $name = []; + + foreach ($ocoms as $ocom) { + array_push($name, $ocom->ocom); + } + + return json_encode($name); + } + + public function getName(string $ocom) + { + $foo = OCOM::all()->where('ocom','=',$ocom)->first(); + if($foo != null) + { + return $foo->objectif_competence; + } + else + { + return null; + } + } +} diff --git a/app/Http/Controllers/ProfilController.php b/app/Http/Controllers/ProfilController.php new file mode 100644 index 00000000..045d0cce --- /dev/null +++ b/app/Http/Controllers/ProfilController.php @@ -0,0 +1,23 @@ + $courses,'mode' => $mode]); + } +} diff --git a/app/Http/Controllers/ScheduleController.php b/app/Http/Controllers/ScheduleController.php index ad0bef3e..5722d60c 100644 --- a/app/Http/Controllers/ScheduleController.php +++ b/app/Http/Controllers/ScheduleController.php @@ -11,49 +11,21 @@ class ScheduleController extends Controller { public function index() { - return view('admin.configs.schedule',['configs' => \App\Config::all()]); + return view('admin.configs.schedule',['configs' => \App\Config::all(),'events_type' => \App\EventType::all()]); } - public function update() + public function update(Request $request) { - $configs = ['admin_periode_nb']; + $instruction_year_begin = \App\Config::find('instruction_year_begin'); + $instruction_year_end = \App\Config::find('instruction_year_end'); - foreach ($configs as $config) { - $c = \App\Config::all()->where('name',$config)->first(); - $c->data = [request($config)]; - $c->save(); - } + $instruction_year_begin->data = [date('Y-m-d',strtotime($request->instruction_year_begin))]; + $instruction_year_end->data = [date('Y-m-d',strtotime($request->instruction_year_end))]; - $new_admin_periode_begin = []; - $new_admin_periode_end = []; - for ($i=1; $i <= request('admin_periode_nb'); $i++) { - if(request('admin_periode_begin_'.$i)) - { - $new_admin_periode_begin[$i] = request('admin_periode_begin_'.$i); - } - else - { - $new_admin_periode_begin[$i] = "00:00"; - } - if(request('admin_periode_end_'.$i)) - { - $new_admin_periode_end[$i] = request('admin_periode_end_'.$i); - } - else - { - $new_admin_periode_end[$i] = "00:00"; - } - } + $instruction_year_begin->save(); + $instruction_year_end->save(); - $temp = \App\Config::all()->where('name','admin_periode_begin')->first(); - $temp->data = $new_admin_periode_begin; - $temp->save(); - - $temp = \App\Config::all()->where('name','admin_periode_end')->first(); - $temp->data = $new_admin_periode_end; - $temp->save(); - - return redirect('/admin/config/schedule')->with('success','Modification sauvegarder avec succès !'); + return redirect('/admin/config/instruction')->with('success','Modification sauvegarder avec succès !'); } public function apiIndex() @@ -89,8 +61,8 @@ class ScheduleController extends Controller $event = [ 'title' => $schedule->data['event_name'], - 'start' => $schedule->date.'T'.$schedule->data['event_begin_time'], - 'end' => $schedule->date.'T'.$schedule->data['event_end_time'], + 'start' => date('c',strtotime($schedule->date.'T'.$schedule->data['event_begin_time'])), + 'end' => date('c',strtotime($schedule->date.'T'.$schedule->data['event_end_time'])), 'color' => $color, 'source' => 'schedule', 'id' => $schedule->id @@ -99,9 +71,25 @@ class ScheduleController extends Controller } foreach ($events as $event) { - - $color = $this->getColor($event->type); - + + if($event->calendar_color == null) + { + $color = $this->getColor($event->type); + } + else + { + $color = $event->calendar_color; + } + + if($event->calendar_icon == null) + { + $icon = ""; + } + else + { + $icon = $event->calendar_icon; + } + $myevent = [ 'title' => $event->name, 'start' => date('c',strtotime($event->date_begin)), @@ -109,7 +97,8 @@ class ScheduleController extends Controller 'color' => $color, 'extraParams' => [ 'db_type' => 'event'], - 'id' => $event->id + 'id' => $event->id, + 'icon' => $icon ]; array_push($jsonevents,$myevent); } @@ -227,7 +216,10 @@ class ScheduleController extends Controller public function delete($id) { $event = \App\Event::find($id); - + foreach ($event->courses as $course) + { + $course->delete(); + } $event->delete(); } } diff --git a/app/Http/Controllers/ScheduleEditorController.php b/app/Http/Controllers/ScheduleEditorController.php new file mode 100644 index 00000000..9dfb6b80 --- /dev/null +++ b/app/Http/Controllers/ScheduleEditorController.php @@ -0,0 +1,66 @@ +getScheduleModelData($niveau,$periode); + $ocom = $data['ocom']; + $name = $data['name']; + $location = $data['location']; + $instructor = $data['instructor']; + $desc = $data['desc']; + + return view('admin.schedule.editor.course',[ + 'periode' => $periode, + 'niveau' => $niveau, + 'ocom' => $ocom, + 'name' => $name, + 'location' => $location, + 'instructor' => $instructor, + 'desc' => $desc]); + } + + public function getTemplate(int $id) + { + return view('admin.schedule.editor.template',["eventType" => \App\EventType::find($id)]); + } + + public function getEventTemplate(int $id) + { + $eventType = \App\EventType::find($id); + + return json_encode($eventType); + } + + public function getEmptyPeriode(int $id) + { + return view('admin.schedule.editor.periode',[ + 'periode_name' => 'Periode '.$id, + 'periode_begin_time' => '00:00', + 'periode_end_time' => '00:00', + 'periode_id' => $id, + 'nbLevel' => request('nblevel') + ]); + } + + public function getEmptyLevel(int $id) + { + return view('admin.schedule.editor.level',['periode_id' => \request('nbPeriode'),'level_id' => $id]); + } + + public function getLevelHeader(int $id) + { + return view('admin.schedule.editor.levelHeader',['level_id' => $id,'level_name' => 'Niveau '.$id]); + } +} diff --git a/app/Http/Controllers/StatsController.php b/app/Http/Controllers/StatsController.php new file mode 100644 index 00000000..b360c66d --- /dev/null +++ b/app/Http/Controllers/StatsController.php @@ -0,0 +1,81 @@ +lessonPlan) + { + if ($course->lessonPlan->approved) + { + $nbCoursePlanDoneAndCheckTY++; + } + else + { + $nbCoursePlanDoneTY++; + } + } + } + + $coursesUTTD = clone $coursesTY; + $nbCoursePlanDoneUTDP = 0; + $nbCoursePlanDoneAndCheckUTDP = 0; + foreach ($coursesUTTD as $key => $course) + { + if (date('c',strtotime($course->event->date_begin)) >= date('c')) + { + $coursesUTTD->forget($key); + } + else + { + $instructorUTTD->push($course->instructor()); + if ($course->lessonPlan) + { + if ($course->lessonPlan->approved) + { + $nbCoursePlanDoneAndCheckUTDP++; + } + else + { + $nbCoursePlanDoneUTDP++; + } + } + } + } + $instructorUTTD = $instructorUTTD->unique(); + $eventTY = \App\Event::allThisYear(); + $eventUTTD = clone $eventTY; + foreach ($eventUTTD as $key => $event) + { + if (date('c',strtotime($event->date_begin)) >= date('c')) + { + $eventUTTD->forget($key); + } + } + + return view('admin.stats.instruction',[ + 'nbCourseThisYear' => count($coursesTY), + 'nbInstructorUpToThisDay' => count($instructorUTTD), + 'nbEventThisYear' => count($eventTY), + 'nbEventUpToThisDay' => count($eventUTTD), + 'nbCourseUpToThisDay' => count($coursesUTTD), + 'nbCoursePlanDoneUTDP' => $nbCoursePlanDoneUTDP, + 'nbCoursePlanDoneTY' => $nbCoursePlanDoneTY, + 'nbCoursePlanDoneAndCheckUTDP' => $nbCoursePlanDoneAndCheckUTDP, + 'nbCoursePlanDoneAndCheckTY' => $nbCoursePlanDoneAndCheckTY, + 'nbCourseInDB' => count(\App\OCOM::all()), + ]); + } +} diff --git a/app/Http/Controllers/UserController.php b/app/Http/Controllers/UserController.php index b1e66459..d020936b 100644 --- a/app/Http/Controllers/UserController.php +++ b/app/Http/Controllers/UserController.php @@ -49,13 +49,13 @@ class UserController extends Controller $user->email = request('email'); if (request('adresse') == null) { - $user->adress = "Inconnu"; + $user->adress = ""; } else { $user->adress = request('adresse'); } if (request('telephone') == null) { - $user->telephone = "Inconnu"; + $user->telephone = ""; } else { $user->telephone = request('telephone'); } @@ -63,7 +63,7 @@ class UserController extends Controller $user->sexe = request('sexe'); if (request('age') == null) { - $user->age = "Inconnu"; + $user->age = ""; } else { $user->age = request('age'); } @@ -122,13 +122,13 @@ class UserController extends Controller $user->email = request('email'); if (request('adresse') == null) { - $user->adress = "Inconnu"; + $user->adress = ""; } else { $user->adress = request('adresse'); } if (request('telephone') == null) { - $user->telephone = "Inconnu"; + $user->telephone = ""; } else { $user->telephone = request('telephone'); } @@ -136,7 +136,7 @@ class UserController extends Controller $user->sexe = request('sexe'); if (request('age') == null) { - $user->age = "Inconnu"; + $user->age = ""; } else { $user->age = request('age'); } @@ -262,4 +262,19 @@ class UserController extends Controller return json_encode($name); } + + public function showCourses($id) + { + return view('admin.user.courses',['courses' => User::find($id)->courses]); + } + + public function showCourse($id,$course_id) + { + return view('admin.user.course',['courses' => User::find($id)->courses]); + } + + public function userNotification() + { + return view('admin.user.profil.notifications',['notifications' => \Auth::user()->notifications]); + } } diff --git a/app/Http/Kernel.php b/app/Http/Kernel.php index 649e7b55..ebb97580 100644 --- a/app/Http/Kernel.php +++ b/app/Http/Kernel.php @@ -62,5 +62,8 @@ class Kernel extends HttpKernel 'staff' => \App\Http\Middleware\AccesStaff::class, 'admin' => \App\Http\Middleware\AccesAdmin::class, 'perm' => \App\Http\Middleware\CheckPerm::class, + 'fileperm' => \App\Http\Middleware\CheckFilePerm::class, + 'courseperm' => \App\Http\Middleware\CheckCoursePerm::class, + 'firstlogin' => \App\Http\Middleware\FirstLogin::class ]; } diff --git a/app/Http/Middleware/CheckCoursePerm.php b/app/Http/Middleware/CheckCoursePerm.php new file mode 100644 index 00000000..24e0ccee --- /dev/null +++ b/app/Http/Middleware/CheckCoursePerm.php @@ -0,0 +1,43 @@ +id); + + if (\Auth::user()->id == $course->user_id) + { + if ($perm == 'see' || $perm == 'edit') + { + return $next($request); + } + } + + if (\Auth::user()->p('course_'.$perm.'_all') == 1) + { + return $next($request); + } + if (\Auth::user()->p('course_'.$perm) == 1) + { + return $next($request); + } + if ($perm == 'validate_plan') + { + abort(401); + } + clog('navigate','danger','L\'utilisateur n\'est pas autorisé à effectuer cette action',\Auth::user()->id); + return redirect('/admin')->with('error','Vous n\'êtes pas autorisé à effectuer cette action'); + } +} diff --git a/app/Http/Middleware/CheckFilePerm.php b/app/Http/Middleware/CheckFilePerm.php new file mode 100644 index 00000000..9ad99e72 --- /dev/null +++ b/app/Http/Middleware/CheckFilePerm.php @@ -0,0 +1,83 @@ +folder)) + { + $folder = $request->folder; + } + else + { + $folder = $request->d; + } + $dir = GoogleDriveFile::find($folder); + + // Check if $folder is root directory or $dir is null + if ($folder == "" || $dir == null) + { + if (\Auth::check()) + { + if ($permission == 'r') + { + return $next($request); + } + else + { + if (\Auth::user()->p('file_manage') === 1) + { + return $next($request); + } + } + } + abort(401,'Pas connecter'); + } + + // Check for specific folder permission + if ($dir != null) + { + if (\Auth::check()) + { + if (!$dir->canAuthUser($permission)) + { + clog('navigate','danger','Vous n\'avez pas la permission d\'accéder',\Auth::user()->id); + return redirect('/admin')->with('error','Vous n\'avez pas la permission d\'accéder'); + } + } + else + { + if (strpos($dir->getPermission('rank.0'),$permission) === false) + { + clog('navigate','danger','Un utilisateur non authentifié tente d\'accéder a un dossier privé','0'); + abort(401,'Vous n\'avez pas la permission d\'accéder'); + } + } + return $next($request); + } + } + else + { + clog('navigate','danger','Google Drive n\'est pas activé ou les identifiants sont incorrect',\Auth::user()->id); + return redirect('/admin')->with('error','Google Drive n\'est pas activé ou les identifiants sont incorrect'); + } + return abort(500,'Wow... Aucune idée comment ce qui viens d\'arriver'); + } +} diff --git a/app/Http/Middleware/FirstLogin.php b/app/Http/Middleware/FirstLogin.php new file mode 100644 index 00000000..65b1a5db --- /dev/null +++ b/app/Http/Middleware/FirstLogin.php @@ -0,0 +1,28 @@ +isMethod('get')) + { + if (\Auth::user()->use_default_psw == true) + { + return redirect('/admin/setup'); + } + } + return $next($request); + } +} diff --git a/app/Http/helpers.php b/app/Http/helpers.php index 4da53536..53df07dc 100644 --- a/app/Http/helpers.php +++ b/app/Http/helpers.php @@ -48,6 +48,7 @@ function clog(string $type,string $result,string $event,$user_id = null,$obj_typ $log->user_id = \Auth::User()->id; } + if ($obj_type != null) { $log->logable_type = $obj_type; @@ -72,4 +73,36 @@ function clog(string $type,string $result,string $event,$user_id = null,$obj_typ function clogNav($event) { clog('navigate','success',$event); -} \ No newline at end of file +} + +function GetSizeName($octet) +{ + // Array contenant les differents unités + $unite = array('octet','ko','mo','go'); + + if ($octet < 1000) // octet + { + return $octet.' '.$unite[0]; + } + else + { + if ($octet < 1000000) // ko + { + $ko = round($octet/1024,2); + return $ko.' '.$unite[1]; + } + else // Mo ou Go + { + if ($octet < 1000000000) // Mo + { + $mo = round($octet/(1024*1024),2); + return $mo.' '.$unite[2]; + } + else // Go + { + $go = round($octet/(1024*1024*1024),2); + return $go.' '.$unite[3]; + } + } + } +} diff --git a/app/Item.php b/app/Item.php index 17391c9b..4b8d6cdf 100644 --- a/app/Item.php +++ b/app/Item.php @@ -6,6 +6,34 @@ use Illuminate\Database\Eloquent\Model; use mysql_xdevapi\Collection; use function foo\func; +/** + * App\Item + * + * @property int $id + * @property int $category_id + * @property int $quantity + * @property string $name + * @property string $official_number + * @property string $desc + * @property array $metadata + * @property \Illuminate\Support\Carbon|null $created_at + * @property \Illuminate\Support\Carbon|null $updated_at + * @property-read \Illuminate\Database\Eloquent\Collection|\App\Booking[] $bookings + * @property-read int|null $bookings_count + * @method static \Illuminate\Database\Eloquent\Builder|\App\Item newModelQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Item newQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Item query() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Item whereCategoryId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Item whereCreatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Item whereDesc($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Item whereId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Item whereMetadata($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Item whereName($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Item whereOfficialNumber($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Item whereQuantity($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Item whereUpdatedAt($value) + * @mixin \Eloquent + */ class Item extends Model { public static function explodeItems($items) diff --git a/app/ItemCategory.php b/app/ItemCategory.php index 3eef6c19..26af385d 100644 --- a/app/ItemCategory.php +++ b/app/ItemCategory.php @@ -4,6 +4,32 @@ namespace App; use Illuminate\Database\Eloquent\Model; +/** + * App\ItemCategory + * + * @property int $id + * @property string $name + * @property string $desc + * @property int $is_training + * @property int $is_op_appro + * @property \Illuminate\Support\Carbon|null $created_at + * @property \Illuminate\Support\Carbon|null $updated_at + * @property-read \Illuminate\Database\Eloquent\Collection|\App\Item[] $items + * @property-read int|null $items_count + * @property-read \Illuminate\Database\Eloquent\Collection|\App\Log[] $logs + * @property-read int|null $logs_count + * @method static \Illuminate\Database\Eloquent\Builder|\App\ItemCategory newModelQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\ItemCategory newQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\ItemCategory query() + * @method static \Illuminate\Database\Eloquent\Builder|\App\ItemCategory whereCreatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\ItemCategory whereDesc($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\ItemCategory whereId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\ItemCategory whereIsOpAppro($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\ItemCategory whereIsTraining($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\ItemCategory whereName($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\ItemCategory whereUpdatedAt($value) + * @mixin \Eloquent + */ class ItemCategory extends Model { public function items() diff --git a/app/Job.php b/app/Job.php index 1006fa7e..4ba10c2f 100644 --- a/app/Job.php +++ b/app/Job.php @@ -4,6 +4,26 @@ namespace App; use Illuminate\Database\Eloquent\Model; +/** + * App\Job + * + * @property int $id + * @property string $name + * @property string $desc + * @property string $permissions + * @property \Illuminate\Support\Carbon|null $created_at + * @property \Illuminate\Support\Carbon|null $updated_at + * @method static \Illuminate\Database\Eloquent\Builder|\App\Job newModelQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Job newQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Job query() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Job whereCreatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Job whereDesc($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Job whereId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Job whereName($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Job wherePermissions($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Job whereUpdatedAt($value) + * @mixin \Eloquent + */ class Job extends Model { public function permissions() diff --git a/app/LessonPlan.php b/app/LessonPlan.php new file mode 100644 index 00000000..839441ef --- /dev/null +++ b/app/LessonPlan.php @@ -0,0 +1,40 @@ +belongsTo('App\Course'); + } +} diff --git a/app/Local.php b/app/Local.php index 6b6597e4..2854ca70 100644 --- a/app/Local.php +++ b/app/Local.php @@ -4,6 +4,24 @@ namespace App; use Illuminate\Database\Eloquent\Model; +/** + * App\Local + * + * @property int $id + * @property string $name + * @property string $desc + * @property \Illuminate\Support\Carbon|null $created_at + * @property \Illuminate\Support\Carbon|null $updated_at + * @method static \Illuminate\Database\Eloquent\Builder|\App\Local newModelQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Local newQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Local query() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Local whereCreatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Local whereDesc($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Local whereId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Local whereName($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Local whereUpdatedAt($value) + * @mixin \Eloquent + */ class Local extends Model { // diff --git a/app/Log.php b/app/Log.php index 186d3cc7..e79b9931 100644 --- a/app/Log.php +++ b/app/Log.php @@ -4,6 +4,34 @@ namespace App; use Illuminate\Database\Eloquent\Model; +/** + * App\Log + * + * @property int $id + * @property string $type + * @property string $result + * @property string $event + * @property int $user_id + * @property string $logable_type + * @property int $logable_id + * @property \Illuminate\Support\Carbon|null $created_at + * @property \Illuminate\Support\Carbon|null $updated_at + * @property-read \Illuminate\Database\Eloquent\Model|\Eloquent $logable + * @property-read \App\User $user + * @method static \Illuminate\Database\Eloquent\Builder|\App\Log newModelQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Log newQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Log query() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Log whereCreatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Log whereEvent($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Log whereId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Log whereLogableId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Log whereLogableType($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Log whereResult($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Log whereType($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Log whereUpdatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Log whereUserId($value) + * @mixin \Eloquent + */ class Log extends Model { public function user() diff --git a/app/Message.php b/app/Message.php index b8801954..2ded43fd 100644 --- a/app/Message.php +++ b/app/Message.php @@ -4,6 +4,34 @@ namespace App; use Illuminate\Database\Eloquent\Model; +/** + * App\Message + * + * @property int $id + * @property string $title + * @property string $body + * @property int $publish + * @property int $private + * @property int $user_id + * @property array $data + * @property \Illuminate\Support\Carbon|null $created_at + * @property \Illuminate\Support\Carbon|null $updated_at + * @property-read \Illuminate\Database\Eloquent\Collection|\App\Log[] $logs + * @property-read int|null $logs_count + * @method static \Illuminate\Database\Eloquent\Builder|\App\Message newModelQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Message newQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Message query() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Message whereBody($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Message whereCreatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Message whereData($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Message whereId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Message wherePrivate($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Message wherePublish($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Message whereTitle($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Message whereUpdatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Message whereUserId($value) + * @mixin \Eloquent + */ class Message extends Model { protected $casts = [ diff --git a/app/News.php b/app/News.php index 04ca39e9..edfef7f3 100644 --- a/app/News.php +++ b/app/News.php @@ -3,7 +3,37 @@ namespace App; use Illuminate\Database\Eloquent\Model; +use Illuminate\Support\Facades\Date; +/** + * App\News + * + * @property int $id + * @property string $title + * @property string $body + * @property int $user_id + * @property int $publish + * @property array $tags + * @property \Illuminate\Support\Carbon|null $created_at + * @property \Illuminate\Support\Carbon|null $updated_at + * @property-read \Illuminate\Database\Eloquent\Collection|\App\Log[] $logs + * @property-read int|null $logs_count + * @property-read \Illuminate\Database\Eloquent\Collection|\App\Picture[] $pictures + * @property-read int|null $pictures_count + * @property-read \App\User $user + * @method static \Illuminate\Database\Eloquent\Builder|\App\News newModelQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\News newQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\News query() + * @method static \Illuminate\Database\Eloquent\Builder|\App\News whereBody($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\News whereCreatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\News whereId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\News wherePublish($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\News whereTags($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\News whereTitle($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\News whereUpdatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\News whereUserId($value) + * @mixin \Eloquent + */ class News extends Model { protected $casts = [ @@ -30,11 +60,11 @@ class News extends Model $news = \App\News::all(); - foreach (\App\Event::future() as $event) + foreach (\App\Event::all() as $event) { - if($event->type == 1 && $event->msg != "") + if($event->use_weekly_msg == 1) { - if (date('U',strtotime($event->date_msg)) <= time()) + if (strtotime($event->weekly_msg_publication_time) <= time()) { $news->push(self::getWeeklyMsg($event)); } @@ -50,13 +80,16 @@ class News extends Model $n->event_id = $event->id; $n->title = 'Message de la semaine du '.date('Y-m-d',strtotime($event->date_begin)); - $n->body = $event->msg; + $n->body = $event->desc; $n->user_id = $event->user_id; $n->publish = 1; $n->created_at = $event->created_at; $n->updated_at = $event->updated_at; $n->tags = ['message de la semaine','Important']; - + if ($event->weekly_msg_file != null) + { + $n->files = $event->weekly_msg_file; + } return $n; } } diff --git a/app/Notifications/Alert.php b/app/Notifications/Alert.php index 24d8b1be..1df9e028 100644 --- a/app/Notifications/Alert.php +++ b/app/Notifications/Alert.php @@ -3,6 +3,7 @@ namespace App\Notifications; use Illuminate\Bus\Queueable; +use Illuminate\Notifications\Messages\BroadcastMessage; use Illuminate\Notifications\Notification; use Illuminate\Contracts\Queue\ShouldQueue; use Illuminate\Notifications\Messages\MailMessage; @@ -13,6 +14,7 @@ class Alert extends Notification protected $fromUser; protected $myNotification; + private $myUrl; /** * Create a new notification instance. @@ -34,7 +36,7 @@ class Alert extends Notification */ public function via($notifiable) { - return ['database']; + return ['database','broadcast']; } /** @@ -51,4 +53,18 @@ class Alert extends Notification 'url' => $this->myUrl, ]; } + + public function toBroadcast($notifiable) + { + return new BroadcastMessage([ + 'from' => $this->fromUser, + 'msg' => $this->myNotification, + 'url' => $this->myUrl, + ]); + } + + public function broadcastType() + { + return 'notification.alert'; + } } diff --git a/app/Notifications/ScheduleNotification.php b/app/Notifications/ScheduleNotification.php new file mode 100644 index 00000000..17b19016 --- /dev/null +++ b/app/Notifications/ScheduleNotification.php @@ -0,0 +1,65 @@ +name = $name; + $this->msg = $msg; + $this->url = $url; + $this->icon = ''; + } + + /** + * Get the notification's delivery channels. + * + * @param mixed $notifiable + * @return array + */ + public function via($notifiable) + { + return ['database','broadcast']; + } + + /** + * Get the array representation of the notification. + * + * @param mixed $notifiable + * @return array + */ + public function toArray($notifiable) + { + return [ + 'name' => $this->name, + 'msg' => $this->msg, + 'url' => $this->url, + 'icon' => $this->icon + ]; + } + + public function broadcastType() + { + return 'notification.schedule'; + } +} diff --git a/app/Notifications/SystemNotification.php b/app/Notifications/SystemNotification.php new file mode 100644 index 00000000..5af73aec --- /dev/null +++ b/app/Notifications/SystemNotification.php @@ -0,0 +1,61 @@ +line('The introduction to the notification.') + ->action('Notification Action', url('/')) + ->line('Thank you for using our application!'); + } + + /** + * Get the array representation of the notification. + * + * @param mixed $notifiable + * @return array + */ + public function toArray($notifiable) + { + return [ + // + ]; + } +} diff --git a/app/OCOM.php b/app/OCOM.php new file mode 100644 index 00000000..80c0a178 --- /dev/null +++ b/app/OCOM.php @@ -0,0 +1,119 @@ +course_id); + $courses = collect(); + foreach ($courses_id as $course_id) + { + $courses->push(\App\Course::find($course_id)); + } + return $courses; + } + + public function saveCourses($courses) + { + $courses_id = explode(',',$this->course_id); + foreach ($courses as $cours) + { + if ($cours != null){ + array_push($courses_id,$cours->id); + } + } + $courses_id = array_unique($courses_id); + $courses_id = array_filter($courses_id); + $this->course_id = implode(',',$courses_id); + $this->save(); + } + + public function saveCourse($course) + { + $courses_id = explode(',',$this->course_id); + array_push($courses_id,$course->id); + $courses_id = array_unique($courses_id); + $courses_id = array_filter($courses_id); + $this->course_id = implode(',',$courses_id); + $this->save(); + } + + public function wasGiven() + { + $courses = Course::where('ocom',$this->ocom)->get(); + $result = collect(); + $from = strtotime(\App\Config::getData('instruction_year_begin')); + $to = strtotime(\App\Config::getData('instruction_year_end')); + + foreach ($courses as $course) + { + $event = $course->event; + if (strtotime($event->date_begin) >= $from) + { + if (strtotime($event->date_begin) <= $to) + { + $result->push($course->id); + } + } + } + return $result; + } + + public function updateWasGiven() + { + $this->course_id = implode(",",$this->wasGiven()->toArray()); + $this->save(); + } + + public static function wasUpdateGivenAll() + { + $ocoms = OCOM::all(); + foreach ($ocoms as $o) + { + $o->updateWasGiven(); + } + } + + public static function findByOCOM($ocom) + { + return OCOM::where('ocom','=',$ocom)->first(); + } + + public function getDurationInMin() + { + return $this->nbPeriode * 30; + } +} diff --git a/app/Permission.php b/app/Permission.php index 9f60eee4..a7609aba 100644 --- a/app/Permission.php +++ b/app/Permission.php @@ -5,6 +5,14 @@ namespace App; use Illuminate\Database\Eloquent\Model; use Illuminate\Support\Arr; +/** + * App\Permission + * + * @method static \Illuminate\Database\Eloquent\Builder|\App\Permission newModelQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Permission newQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Permission query() + * @mixin \Eloquent + */ class Permission extends Model { const PERMISSIONS = [ @@ -38,36 +46,6 @@ class Permission extends Model 'valeur' => 0 ] ], - 'message' => [ - 'msg_see' => [ - 'ckey' => 'msg_see', - 'communName' => 'Voir les messages', - 'desc' => 'L\'utilisateur peut-il consulter les messages de la semaine', - 'icon' => 'fa-eye', - 'valeur' => 0 - ], - 'msg_add' => [ - 'ckey' => 'msg_add', - 'communName' => 'Ajouter un message', - 'desc' => 'L\'utilisateur peut-il ajouter un message de la semaine', - 'icon' => 'fa-eye', - 'valeur' => 0 - ], - 'msg_edit' => [ - 'ckey' => 'msg_edit', - 'communName' => 'Modifier un message', - 'desc' => 'L\'utilisateur peut-il modifier les messages de la semaine', - 'icon' => 'fa-eye', - 'valeur' => 0 - ], - 'msg_delete' => [ - 'ckey' => 'msg_delete', - 'communName' => 'Supprimer un message', - 'desc' => 'L\'utilisateur peut-il supprimer un message de la semaine', - 'icon' => 'fa-eye', - 'valeur' => 0 - ] - ], 'inventory' => [ 'inventory_see' => [ 'ckey' => 'inventory_see', @@ -98,36 +76,6 @@ class Permission extends Model 'valeur' => 0 ], ], - 'booking' => [ - 'booking_see' => [ - 'ckey' => 'booking_see', - 'communName' => 'Voir les réservations', - 'desc' => 'L\'utilisateur peut-il consulter la liste des réservations', - 'icon' => 'fa-eye', - 'valeur' => 0 - ], - 'booking_add' => [ - 'ckey' => 'booking_add', - 'communName' => 'Ajouter une réservation', - 'desc' => 'L\'utilisateur peut-il ajouter une réservation', - 'icon' => 'fa-eye', - 'valeur' => 0 - ], - 'booking_edit' => [ - 'ckey' => 'booking_edit', - 'communName' => 'Modifier une réservation', - 'desc' => 'L\'utilisateur peut-il modifier une réservation', - 'icon' => 'fa-eye', - 'valeur' => 0 - ], - 'booking_delete' => [ - 'ckey' => 'booking_delete', - 'communName' => 'Supprimer une réservation', - 'desc' => 'L\'utilisateur peut-il supprimer une réservation', - 'icon' => 'fa-eye', - 'valeur' => 0 - ] - ], 'user' => [ 'user_see' => [ 'ckey' => 'user_see', @@ -183,7 +131,81 @@ class Permission extends Model 'valeur' => 0 ] ], - 'schedule' => [ + 'Instruction' => [ + 'instruction_guide_see' => [ + 'ckey' => 'instruction_guide_see', + 'communName' => 'Voir les guides pédagogiques et normes de qualifications', + 'desc' => 'L\'utilisateur peut-il consulter les guides pédagogiques et normes de qualifications', + 'icon' => 'fa-eye', + 'valeur' => 0 + ], + 'instruction_db_ocom_see' => [ + 'ckey' => 'instruction_db_ocom_see', + 'communName' => 'Voir la base de donnée de cours', + 'desc' => 'L\'utilisateur peut-il consulter la base de donnée des cours', + 'icon' => 'fa-eye', + 'valeur' => 0 + ], + 'instruction_db_ocom_add' => [ + 'ckey' => 'instruction_db_ocom_add', + 'communName' => 'Ajouter à la base de donnée de cours', + 'desc' => 'L\'utilisateur peut-il ajouter à la base de donnée des cours', + 'icon' => 'fa-eye', + 'valeur' => 0 + ], + 'instruction_db_ocom_edit' => [ + 'ckey' => 'instruction_db_ocom_edit', + 'communName' => 'Modifier la base de donnée de cours', + 'desc' => 'L\'utilisateur peut-il modifier la base de donnée des cours', + 'icon' => 'fa-eye', + 'valeur' => 0 + ], + 'instruction_db_ocom_delete' => [ + 'ckey' => 'instruction_db_ocom_delete', + 'communName' => 'Supprimer de la base de donnée de cours', + 'desc' => 'L\'utilisateur peut-il supprimer de la base de donnée des cours', + 'icon' => 'fa-eye', + 'valeur' => 0 + ], + 'course_see_all' => [ + 'ckey' => 'course_see_all', + 'communName' => 'Voir les cours de tous les utilisateurs', + 'desc' => 'L\'utilisateur peut-il voir les cours de tous les utilisateurs', + 'icon' => 'fa-eye', + 'valeur' => 0 + ], + 'course_comment_officer' => [ + 'ckey' => 'course_comment_officer', + 'communName' => 'Ajouter un commentaire sur n\'importe quel cours', + 'desc' => 'L\'utilisateur peut-il ajouter un commentaire sur n\'importe quel cours', + 'icon' => 'fa-eye', + 'valeur' => 0 + ], + 'course_validate_plan' => [ + 'ckey' => 'course_validate_plan', + 'communName' => 'Valider n\'importe quel plan de cours', + 'desc' => 'L\'utilisateur peut-il valider n\'importe quel plan de cours', + 'icon' => 'fa-eye', + 'valeur' => 0 + ], + 'course_comment_plan_officer' => [ + 'ckey' => 'course_comment_plan_officer', + 'communName' => 'Ajouter un commentaire sur n\'importe quel plan de cours', + 'desc' => 'L\'utilisateur peut-il ajouter un commentaire sur n\'importe quel plan de cours', + 'icon' => 'fa-eye', + 'valeur' => 0 + ], + ], + 'Administration' => [ + 'cadet_list_see' => [ + 'ckey' => 'cadet_list_see', + 'communName' => 'Voir la liste nominative', + 'desc' => 'L\'utilisateur peut-il voir la liste nominative', + 'icon' => 'fa-eye', + 'valeur' => 0 + ], + ], + 'Horaire' => [ 'schedule_see' => [ 'ckey' => 'schedule_see', 'communName' => 'Voir l\'horaire', @@ -272,6 +294,22 @@ class Permission extends Model 'icon' => 'fa-eye', 'valeur' => 0 ], + ], + 'file' => [ + 'file_see' => [ + 'ckey' => 'file_see', + 'communName' => 'Voir les fichiers publiques', + 'desc' => 'L\'utilisateur peut-il consulter les fichiers publiques', + 'icon' => 'fa-eye', + 'valeur' => 0 + ], + 'drive_see' => [ + 'ckey' => 'drive_see', + 'communName' => 'Voir l\'explorateur de fichier', + 'desc' => 'L\'utilisateur peut-il consulter l\'explorateur de fichier', + 'icon' => 'fa-eye', + 'valeur' => 0 + ], ] ]; diff --git a/app/Picture.php b/app/Picture.php index 79bf048f..e552f90b 100644 --- a/app/Picture.php +++ b/app/Picture.php @@ -4,6 +4,33 @@ namespace App; use Illuminate\Database\Eloquent\Model; +/** + * App\Picture + * + * @property int $id + * @property string $url + * @property string $title + * @property string $desc + * @property int $pictureable_id + * @property string $pictureable_type + * @property \Illuminate\Support\Carbon|null $created_at + * @property \Illuminate\Support\Carbon|null $updated_at + * @property-read \Illuminate\Database\Eloquent\Collection|\App\Log[] $logs + * @property-read int|null $logs_count + * @property-read \Illuminate\Database\Eloquent\Model|\Eloquent $pictureable + * @method static \Illuminate\Database\Eloquent\Builder|\App\Picture newModelQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Picture newQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Picture query() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Picture whereCreatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Picture whereDesc($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Picture whereId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Picture wherePictureableId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Picture wherePictureableType($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Picture whereTitle($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Picture whereUpdatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Picture whereUrl($value) + * @mixin \Eloquent + */ class Picture extends Model { public function pictureable() diff --git a/app/Providers/AppServiceProvider.php b/app/Providers/AppServiceProvider.php index dc914cc9..7781c1d4 100644 --- a/app/Providers/AppServiceProvider.php +++ b/app/Providers/AppServiceProvider.php @@ -6,6 +6,7 @@ use Illuminate\Support\ServiceProvider; use Illuminate\Support\Facades\Schema; use Illuminate\Support\Collection; use Illuminate\Pagination\LengthAwarePaginator; +use Illuminate\Support\Facades\Blade; class AppServiceProvider extends ServiceProvider { @@ -40,6 +41,14 @@ class AppServiceProvider extends ServiceProvider ] ); }); + + Blade::directive('loaderDot', function () { + return '
'; + }); + + Blade::directive('loaderRipple', function () { + return '
'; + }); } /** diff --git a/app/Providers/GoogleDriveServiceProvider.php b/app/Providers/GoogleDriveServiceProvider.php new file mode 100644 index 00000000..3afc03d1 --- /dev/null +++ b/app/Providers/GoogleDriveServiceProvider.php @@ -0,0 +1,44 @@ +setClientId(\Crypt::decryptString(\App\Config::getData('GOOGLE_DRIVE_CLIENT_ID'))); + $client->setClientSecret(\Crypt::decryptString(\App\Config::getData('GOOGLE_DRIVE_CLIENT_SECRET'))); + $client->refreshToken(\Crypt::decryptString(\App\Config::getData('GOOGLE_DRIVE_REFRESH_TOKEN'))); + $service = new \Google_Service_Drive($client); + + $options = []; + if(isset($config['teamDriveId'])) { + $options['teamDriveId'] = $config['teamDriveId']; + } + + $adapter = new GoogleDriveAdapter($service, \Crypt::decryptString(\App\Config::getData('GOOGLE_DRIVE_FOLDER_ID')), $options); + + return new \League\Flysystem\Filesystem($adapter); + }); + } +} diff --git a/app/Providers/TelescopeServiceProvider.php b/app/Providers/TelescopeServiceProvider.php new file mode 100644 index 00000000..e35852b6 --- /dev/null +++ b/app/Providers/TelescopeServiceProvider.php @@ -0,0 +1,71 @@ +hideSensitiveRequestDetails(); + + Telescope::filter(function (IncomingEntry $entry) { + if ($this->app->environment('local')) { + return true; + } + + return $entry->isReportableException() || + $entry->isFailedRequest() || + $entry->isFailedJob() || + $entry->isScheduledTask() || + $entry->hasMonitoredTag(); + }); + } + + /** + * Prevent sensitive request details from being logged by Telescope. + * + * @return void + */ + protected function hideSensitiveRequestDetails() + { + if ($this->app->environment('local')) { + return; + } + + Telescope::hideRequestParameters(['_token']); + + Telescope::hideRequestHeaders([ + 'cookie', + 'x-csrf-token', + 'x-xsrf-token', + ]); + } + + /** + * Register the Telescope gate. + * + * This gate determines who can access Telescope in non-local environments. + * + * @return void + */ + protected function gate() + { + Gate::define('viewTelescope', function ($user) { + return in_array($user->email, [ + 'admin@exvps.ca' + ]); + }); + } +} diff --git a/app/Rank.php b/app/Rank.php index 92f07c20..92c1d585 100644 --- a/app/Rank.php +++ b/app/Rank.php @@ -4,6 +4,28 @@ namespace App; use Illuminate\Database\Eloquent\Model; +/** + * App\Rank + * + * @property int $id + * @property string $name + * @property string $desc + * @property string $acces_level + * @property string $permissions + * @property \Illuminate\Support\Carbon|null $created_at + * @property \Illuminate\Support\Carbon|null $updated_at + * @method static \Illuminate\Database\Eloquent\Builder|\App\Rank newModelQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Rank newQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Rank query() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Rank whereAccesLevel($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Rank whereCreatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Rank whereDesc($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Rank whereId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Rank whereName($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Rank wherePermissions($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Rank whereUpdatedAt($value) + * @mixin \Eloquent + */ class Rank extends Model { public function permissions() diff --git a/app/Schedule.php b/app/Schedule.php index 94712644..c2bec5a6 100644 --- a/app/Schedule.php +++ b/app/Schedule.php @@ -5,6 +5,38 @@ namespace App; use Illuminate\Database\Eloquent\Model; use App\Item; +/** + * App\Schedule + * + * @property int $id + * @property string $date + * @property string $type + * @property string $n1_p1_item + * @property string $n1_p2_item + * @property string $n2_p1_item + * @property string $n2_p2_item + * @property string $n3_p1_item + * @property string $n3_p2_item + * @property array $data + * @property \Illuminate\Support\Carbon|null $created_at + * @property \Illuminate\Support\Carbon|null $updated_at + * @method static \Illuminate\Database\Eloquent\Builder|\App\Schedule newModelQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Schedule newQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Schedule query() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Schedule whereCreatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Schedule whereData($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Schedule whereDate($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Schedule whereId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Schedule whereN1P1Item($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Schedule whereN1P2Item($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Schedule whereN2P1Item($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Schedule whereN2P2Item($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Schedule whereN3P1Item($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Schedule whereN3P2Item($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Schedule whereType($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Schedule whereUpdatedAt($value) + * @mixin \Eloquent + */ class Schedule extends Model { protected $casts = [ diff --git a/app/Task.php b/app/Task.php index 6f7ac1b0..796a01b8 100644 --- a/app/Task.php +++ b/app/Task.php @@ -4,6 +4,27 @@ namespace App; use Illuminate\Database\Eloquent\Model; +/** + * App\Task + * + * @property int $id + * @property int $priority + * @property string $body + * @property int $completed + * @property \Illuminate\Support\Carbon|null $created_at + * @property \Illuminate\Support\Carbon|null $updated_at + * @method static \Illuminate\Database\Eloquent\Builder|\App\Task incomplete() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Task newModelQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Task newQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Task query() + * @method static \Illuminate\Database\Eloquent\Builder|\App\Task whereBody($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Task whereCompleted($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Task whereCreatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Task whereId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Task wherePriority($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\Task whereUpdatedAt($value) + * @mixin \Eloquent + */ class Task extends Model { public function scopeIncomplete($query) diff --git a/app/User.php b/app/User.php index 29ba6511..f60c39a4 100644 --- a/app/User.php +++ b/app/User.php @@ -2,9 +2,67 @@ namespace App; +use Carbon\Carbon; use Illuminate\Notifications\Notifiable; use Illuminate\Foundation\Auth\User as Authenticatable; +use phpDocumentor\Reflection\Types\Collection; +/** + * App\User + * + * @property int $id + * @property string $firstname + * @property string $lastname + * @property string $email + * @property string $password + * @property string $rank_id + * @property string $adress + * @property string $telephone + * @property string $age + * @property string $avatar + * @property string $sexe + * @property string $job_id + * @property string $api_token + * @property string|null $remember_token + * @property \Illuminate\Support\Carbon|null $created_at + * @property \Illuminate\Support\Carbon|null $updated_at + * @property-read \Illuminate\Database\Eloquent\Collection|\App\Booking[] $bookings + * @property-read int|null $bookings_count + * @property-read \Illuminate\Database\Eloquent\Collection|\App\Course[] $courses + * @property-read int|null $courses_count + * @property-read \Illuminate\Database\Eloquent\Collection|\App\Event[] $events + * @property-read int|null $events_count + * @property-read \App\Job $job + * @property-read \Illuminate\Database\Eloquent\Collection|\App\Log[] $logs + * @property-read int|null $logs_count + * @property-read \Illuminate\Database\Eloquent\Collection|\App\Message[] $messages + * @property-read int|null $messages_count + * @property-read \Illuminate\Database\Eloquent\Collection|\App\News[] $news + * @property-read int|null $news_count + * @property-read \Illuminate\Notifications\DatabaseNotificationCollection|\Illuminate\Notifications\DatabaseNotification[] $notifications + * @property-read int|null $notifications_count + * @property-read \App\Rank $rank + * @method static \Illuminate\Database\Eloquent\Builder|\App\User newModelQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\User newQuery() + * @method static \Illuminate\Database\Eloquent\Builder|\App\User query() + * @method static \Illuminate\Database\Eloquent\Builder|\App\User whereAdress($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\User whereAge($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\User whereApiToken($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\User whereAvatar($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\User whereCreatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\User whereEmail($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\User whereFirstname($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\User whereId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\User whereJobId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\User whereLastname($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\User wherePassword($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\User whereRankId($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\User whereRememberToken($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\User whereSexe($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\User whereTelephone($value) + * @method static \Illuminate\Database\Eloquent\Builder|\App\User whereUpdatedAt($value) + * @mixin \Eloquent + */ class User extends Authenticatable { use Notifiable; @@ -77,18 +135,7 @@ class User extends Authenticatable public function futureCourses() { - $filterCourse = collect(); - foreach (\Auth::user()->courses as $course) - { - if($course->event) - { - if(date('U',strtotime($course->event->date_begin)) >= date('U')) - { - $filterCourse->push($course); - } - } - } - return $filterCourse; + return \App\Course::allFutureForUser($this->id); } public function routeNotificationForNexmo($notification) @@ -310,6 +357,10 @@ class User extends Authenticatable { if ($this->job->permission($perm) == 0) { + if ($this->rank->id == 1) + { + return 1; + } return $this->rank->permission($perm); } else @@ -322,4 +373,18 @@ class User extends Authenticatable { return $this->permission($perm); } + + public function getNotificationByDay() + { + return \Auth::user()->notifications->groupBy(function ($val) { + return Carbon::parse($val->created_at)->format('Y-m-d'); + }); + } + + public function getNotificationForUI(int $number = 8) + { + return \Auth::user()->notifications->take($number)->groupBy(function ($val) { + return Carbon::parse($val->created_at)->format('Y-m-d'); + }); + } } diff --git a/composer.json b/composer.json index 3dfd2691..f4768c77 100644 --- a/composer.json +++ b/composer.json @@ -5,21 +5,32 @@ "license": "MIT", "type": "project", "require": { - "php": "^7.1.3", + "php": "^7.4", "barryvdh/laravel-dompdf": "^0.8.4", - "barryvdh/laravel-ide-helper": "v2.6.2", + "barryvdh/laravel-ide-helper": "2.7.0", + "davejamesmiller/laravel-breadcrumbs": "5.3.2", + "facade/ignition": "^2.0", "fideloper/proxy": "^4.0", "guzzlehttp/guzzle": "^6.3", - "laravel/framework": "5.6.*", - "laravel/tinker": "^1.0", - "nexmo/client": "^1.4" + "laravel/framework": "^7.0", + "laravel/helpers": "^1.1", + "laravel/nexmo-notification-channel": "^2.2", + "laravel/telescope": "^3.5", + "laravel/tinker": "^2.0", + "laravel/ui": "^2.0", + "nao-pon/flysystem-google-drive": "^1.1", + "nexmo/client": "^2.0", + "pragmarx/version": "^1.2", + "pusher/pusher-php-server": "~4.0" }, "require-dev": { "filp/whoops": "^2.0", "fzaninotto/faker": "^1.4", + "laravel/dusk": "^5.6", "mockery/mockery": "^1.0", - "nunomaduro/collision": "^2.0", - "phpunit/phpunit": "^7.0" + "nunomaduro/collision": "^4.1", + "phpunit/phpunit": "^8.5", + "staudenmeir/dusk-updater": "^1.1" }, "autoload": { "classmap": [ @@ -51,7 +62,8 @@ ], "post-autoload-dump": [ "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump", - "@php artisan package:discover" + "@php artisan package:discover", + "@php artisan version" ] }, "config": { diff --git a/composer.lock b/composer.lock index 9d6ca2fb..a22989bc 100644 --- a/composer.lock +++ b/composer.lock @@ -4,25 +4,25 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "24a0b732198a68feae22520e2527cb91", + "content-hash": "1039ad9d19c53cf0ed27db80f8923088", "packages": [ { "name": "barryvdh/laravel-dompdf", - "version": "v0.8.5", + "version": "v0.8.6", "source": { "type": "git", "url": "https://github.com/barryvdh/laravel-dompdf.git", - "reference": "7393732b2f3a3ee357974cbb0c46c9b65b84dad1" + "reference": "d7108f78cf5254a2d8c224542967f133e5a6d4e8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/barryvdh/laravel-dompdf/zipball/7393732b2f3a3ee357974cbb0c46c9b65b84dad1", - "reference": "7393732b2f3a3ee357974cbb0c46c9b65b84dad1", + "url": "https://api.github.com/repos/barryvdh/laravel-dompdf/zipball/d7108f78cf5254a2d8c224542967f133e5a6d4e8", + "reference": "d7108f78cf5254a2d8c224542967f133e5a6d4e8", "shasum": "" }, "require": { "dompdf/dompdf": "^0.8", - "illuminate/support": "^5.5|^6", + "illuminate/support": "^5.5|^6|^7", "php": ">=7" }, "type": "library", @@ -60,42 +60,39 @@ "laravel", "pdf" ], - "time": "2019-08-23T14:30:33+00:00" + "time": "2020-02-25T20:44:34+00:00" }, { "name": "barryvdh/laravel-ide-helper", - "version": "v2.6.2", + "version": "v2.7.0", "source": { "type": "git", "url": "https://github.com/barryvdh/laravel-ide-helper.git", - "reference": "39c148ad4273f5b8c49d0a363ddbc0462f1f2eec" + "reference": "5f677edc14bdcfdcac36633e6eea71b2728a4dbc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/barryvdh/laravel-ide-helper/zipball/39c148ad4273f5b8c49d0a363ddbc0462f1f2eec", - "reference": "39c148ad4273f5b8c49d0a363ddbc0462f1f2eec", + "url": "https://api.github.com/repos/barryvdh/laravel-ide-helper/zipball/5f677edc14bdcfdcac36633e6eea71b2728a4dbc", + "reference": "5f677edc14bdcfdcac36633e6eea71b2728a4dbc", "shasum": "" }, "require": { "barryvdh/reflection-docblock": "^2.0.6", "composer/composer": "^1.6", - "illuminate/console": "^5.5,<5.9", - "illuminate/filesystem": "^5.5,<5.9", - "illuminate/support": "^5.5,<5.9", - "php": ">=7" + "doctrine/dbal": "~2.3", + "illuminate/console": "^5.5|^6|^7", + "illuminate/filesystem": "^5.5|^6|^7", + "illuminate/support": "^5.5|^6|^7", + "php": ">=7.2" }, "require-dev": { - "doctrine/dbal": "~2.3", - "illuminate/config": "^5.1,<5.9", - "illuminate/view": "^5.1,<5.9", - "phpro/grumphp": "^0.14", - "phpunit/phpunit": "4.*", - "scrutinizer/ocular": "~1.1", + "illuminate/config": "^5.5|^6|^7", + "illuminate/view": "^5.5|^6|^7", + "mockery/mockery": "^1.3", + "orchestra/testbench": "^3|^4|^5", + "phpro/grumphp": "^0.17.1", "squizlabs/php_codesniffer": "^3" }, - "suggest": { - "doctrine/dbal": "Load information from the database about models for phpdocs (~2.3)" - }, "type": "library", "extra": { "branch-alias": { @@ -134,7 +131,13 @@ "phpstorm", "sublime" ], - "time": "2019-03-26T10:38:22+00:00" + "funding": [ + { + "url": "https://github.com/barryvdh", + "type": "github" + } + ], + "time": "2020-04-22T09:57:26+00:00" }, { "name": "barryvdh/reflection-docblock", @@ -186,17 +189,69 @@ "time": "2018-12-13T10:34:14+00:00" }, { - "name": "composer/ca-bundle", - "version": "1.2.4", + "name": "brick/math", + "version": "0.8.15", "source": { "type": "git", - "url": "https://github.com/composer/ca-bundle.git", - "reference": "10bb96592168a0f8e8f6dcde3532d9fa50b0b527" + "url": "https://github.com/brick/math.git", + "reference": "9b08d412b9da9455b210459ff71414de7e6241cd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/ca-bundle/zipball/10bb96592168a0f8e8f6dcde3532d9fa50b0b527", - "reference": "10bb96592168a0f8e8f6dcde3532d9fa50b0b527", + "url": "https://api.github.com/repos/brick/math/zipball/9b08d412b9da9455b210459ff71414de7e6241cd", + "reference": "9b08d412b9da9455b210459ff71414de7e6241cd", + "shasum": "" + }, + "require": { + "ext-json": "*", + "php": "^7.1|^8.0" + }, + "require-dev": { + "php-coveralls/php-coveralls": "^2.2", + "phpunit/phpunit": "^7.5.15|^8.5", + "vimeo/psalm": "^3.5" + }, + "type": "library", + "autoload": { + "psr-4": { + "Brick\\Math\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Arbitrary-precision arithmetic library", + "keywords": [ + "Arbitrary-precision", + "BigInteger", + "BigRational", + "arithmetic", + "bigdecimal", + "bignum", + "brick", + "math" + ], + "funding": [ + { + "url": "https://tidelift.com/funding/github/packagist/brick/math", + "type": "tidelift" + } + ], + "time": "2020-04-15T15:59:35+00:00" + }, + { + "name": "composer/ca-bundle", + "version": "1.2.7", + "source": { + "type": "git", + "url": "https://github.com/composer/ca-bundle.git", + "reference": "95c63ab2117a72f48f5a55da9740a3273d45b7fd" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/composer/ca-bundle/zipball/95c63ab2117a72f48f5a55da9740a3273d45b7fd", + "reference": "95c63ab2117a72f48f5a55da9740a3273d45b7fd", "shasum": "" }, "require": { @@ -207,7 +262,7 @@ "require-dev": { "phpunit/phpunit": "^4.8.35 || ^5.7 || 6.5 - 8", "psr/log": "^1.0", - "symfony/process": "^2.5 || ^3.0 || ^4.0" + "symfony/process": "^2.5 || ^3.0 || ^4.0 || ^5.0" }, "type": "library", "extra": { @@ -239,20 +294,30 @@ "ssl", "tls" ], - "time": "2019-08-30T08:44:50+00:00" + "funding": [ + { + "url": "https://packagist.com", + "type": "custom" + }, + { + "url": "https://tidelift.com/funding/github/packagist/composer/composer", + "type": "tidelift" + } + ], + "time": "2020-04-08T08:27:21+00:00" }, { "name": "composer/composer", - "version": "1.9.0", + "version": "1.10.7", "source": { "type": "git", "url": "https://github.com/composer/composer.git", - "reference": "314aa57fdcfc942065996f59fb73a8b3f74f3fa5" + "reference": "956608ea4f7de9e58c53dfb019d85ae62b193c39" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/composer/zipball/314aa57fdcfc942065996f59fb73a8b3f74f3fa5", - "reference": "314aa57fdcfc942065996f59fb73a8b3f74f3fa5", + "url": "https://api.github.com/repos/composer/composer/zipball/956608ea4f7de9e58c53dfb019d85ae62b193c39", + "reference": "956608ea4f7de9e58c53dfb019d85ae62b193c39", "shasum": "" }, "require": { @@ -260,22 +325,23 @@ "composer/semver": "^1.0", "composer/spdx-licenses": "^1.2", "composer/xdebug-handler": "^1.1", - "justinrainbow/json-schema": "^3.0 || ^4.0 || ^5.0", + "justinrainbow/json-schema": "^5.2.10", "php": "^5.3.2 || ^7.0", "psr/log": "^1.0", "seld/jsonlint": "^1.4", "seld/phar-utils": "^1.0", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/filesystem": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/process": "^2.7 || ^3.0 || ^4.0" + "symfony/console": "^2.7 || ^3.0 || ^4.0 || ^5.0", + "symfony/filesystem": "^2.7 || ^3.0 || ^4.0 || ^5.0", + "symfony/finder": "^2.7 || ^3.0 || ^4.0 || ^5.0", + "symfony/process": "^2.7 || ^3.0 || ^4.0 || ^5.0" }, "conflict": { - "symfony/console": "2.8.38" + "symfony/console": "2.8.38", + "symfony/phpunit-bridge": "3.4.40" }, "require-dev": { - "phpunit/phpunit": "^4.8.35 || ^5.7", - "phpunit/phpunit-mock-objects": "^2.3 || ^3.0" + "phpspec/prophecy": "^1.10", + "symfony/phpunit-bridge": "^3.4" }, "suggest": { "ext-openssl": "Enabling the openssl extension allows you to access https URLs for repositories and packages", @@ -288,7 +354,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.9-dev" + "dev-master": "1.10-dev" } }, "autoload": { @@ -319,28 +385,41 @@ "dependency", "package" ], - "time": "2019-08-02T18:55:33+00:00" + "funding": [ + { + "url": "https://packagist.com", + "type": "custom" + }, + { + "url": "https://github.com/composer", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/composer/composer", + "type": "tidelift" + } + ], + "time": "2020-06-03T08:03:56+00:00" }, { "name": "composer/semver", - "version": "1.5.0", + "version": "1.5.1", "source": { "type": "git", "url": "https://github.com/composer/semver.git", - "reference": "46d9139568ccb8d9e7cdd4539cab7347568a5e2e" + "reference": "c6bea70230ef4dd483e6bbcab6005f682ed3a8de" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/semver/zipball/46d9139568ccb8d9e7cdd4539cab7347568a5e2e", - "reference": "46d9139568ccb8d9e7cdd4539cab7347568a5e2e", + "url": "https://api.github.com/repos/composer/semver/zipball/c6bea70230ef4dd483e6bbcab6005f682ed3a8de", + "reference": "c6bea70230ef4dd483e6bbcab6005f682ed3a8de", "shasum": "" }, "require": { "php": "^5.3.2 || ^7.0" }, "require-dev": { - "phpunit/phpunit": "^4.5 || ^5.0.5", - "phpunit/phpunit-mock-objects": "2.3.0 || ^3.0" + "phpunit/phpunit": "^4.5 || ^5.0.5" }, "type": "library", "extra": { @@ -381,20 +460,20 @@ "validation", "versioning" ], - "time": "2019-03-19T17:25:45+00:00" + "time": "2020-01-13T12:06:48+00:00" }, { "name": "composer/spdx-licenses", - "version": "1.5.2", + "version": "1.5.3", "source": { "type": "git", "url": "https://github.com/composer/spdx-licenses.git", - "reference": "7ac1e6aec371357df067f8a688c3d6974df68fa5" + "reference": "0c3e51e1880ca149682332770e25977c70cf9dae" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/spdx-licenses/zipball/7ac1e6aec371357df067f8a688c3d6974df68fa5", - "reference": "7ac1e6aec371357df067f8a688c3d6974df68fa5", + "url": "https://api.github.com/repos/composer/spdx-licenses/zipball/0c3e51e1880ca149682332770e25977c70cf9dae", + "reference": "0c3e51e1880ca149682332770e25977c70cf9dae", "shasum": "" }, "require": { @@ -441,28 +520,28 @@ "spdx", "validator" ], - "time": "2019-07-29T10:31:59+00:00" + "time": "2020-02-14T07:44:31+00:00" }, { "name": "composer/xdebug-handler", - "version": "1.3.3", + "version": "1.4.2", "source": { "type": "git", "url": "https://github.com/composer/xdebug-handler.git", - "reference": "46867cbf8ca9fb8d60c506895449eb799db1184f" + "reference": "fa2aaf99e2087f013a14f7432c1cd2dd7d8f1f51" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/46867cbf8ca9fb8d60c506895449eb799db1184f", - "reference": "46867cbf8ca9fb8d60c506895449eb799db1184f", + "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/fa2aaf99e2087f013a14f7432c1cd2dd7d8f1f51", + "reference": "fa2aaf99e2087f013a14f7432c1cd2dd7d8f1f51", "shasum": "" }, "require": { - "php": "^5.3.2 || ^7.0", + "php": "^5.3.2 || ^7.0 || ^8.0", "psr/log": "^1.0" }, "require-dev": { - "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.5" + "phpunit/phpunit": "^4.8.35 || ^5.7 || 6.5 - 8" }, "type": "library", "autoload": { @@ -480,34 +559,108 @@ "email": "john-stevenson@blueyonder.co.uk" } ], - "description": "Restarts a process without xdebug.", + "description": "Restarts a process without Xdebug.", "keywords": [ "Xdebug", "performance" ], - "time": "2019-05-27T17:52:04+00:00" + "funding": [ + { + "url": "https://packagist.com", + "type": "custom" + }, + { + "url": "https://github.com/composer", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/composer/composer", + "type": "tidelift" + } + ], + "time": "2020-06-04T11:16:35+00:00" }, { - "name": "dnoegel/php-xdg-base-dir", - "version": "0.1", + "name": "davejamesmiller/laravel-breadcrumbs", + "version": "5.3.2", "source": { "type": "git", - "url": "https://github.com/dnoegel/php-xdg-base-dir.git", - "reference": "265b8593498b997dc2d31e75b89f053b5cc9621a" + "url": "https://github.com/davejamesmiller/laravel-breadcrumbs.git", + "reference": "99f92a706faefb5e1816caa96e877a0184509e5b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/dnoegel/php-xdg-base-dir/zipball/265b8593498b997dc2d31e75b89f053b5cc9621a", - "reference": "265b8593498b997dc2d31e75b89f053b5cc9621a", + "url": "https://api.github.com/repos/davejamesmiller/laravel-breadcrumbs/zipball/99f92a706faefb5e1816caa96e877a0184509e5b", + "reference": "99f92a706faefb5e1816caa96e877a0184509e5b", + "shasum": "" + }, + "require": { + "facade/ignition-contracts": "^1.0", + "illuminate/support": ">=5.6", + "illuminate/view": ">=5.6", + "php": ">=7.1.3" + }, + "require-dev": { + "orchestra/testbench": ">=3.6", + "php-coveralls/php-coveralls": "^2.0", + "phpunit/phpunit": "^7.0|^8.0", + "spatie/phpunit-snapshot-assertions": "^2.0" + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "DaveJamesMiller\\Breadcrumbs\\BreadcrumbsServiceProvider" + ], + "aliases": { + "Breadcrumbs": "DaveJamesMiller\\Breadcrumbs\\Facades\\Breadcrumbs" + } + } + }, + "autoload": { + "psr-4": { + "DaveJamesMiller\\Breadcrumbs\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Dave James Miller", + "email": "dave@davejamesmiller.com" + } + ], + "description": "A simple Laravel-style way to create breadcrumbs.", + "homepage": "https://github.com/davejamesmiller/laravel-breadcrumbs", + "keywords": [ + "laravel" + ], + "abandoned": true, + "time": "2019-12-30T22:50:51+00:00" + }, + { + "name": "dnoegel/php-xdg-base-dir", + "version": "v0.1.1", + "source": { + "type": "git", + "url": "https://github.com/dnoegel/php-xdg-base-dir.git", + "reference": "8f8a6e48c5ecb0f991c2fdcf5f154a47d85f9ffd" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/dnoegel/php-xdg-base-dir/zipball/8f8a6e48c5ecb0f991c2fdcf5f154a47d85f9ffd", + "reference": "8f8a6e48c5ecb0f991c2fdcf5f154a47d85f9ffd", "shasum": "" }, "require": { "php": ">=5.3.2" }, "require-dev": { - "phpunit/phpunit": "@stable" + "phpunit/phpunit": "~7.0|~6.0|~5.0|~4.8.35" }, - "type": "project", + "type": "library", "autoload": { "psr-4": { "XdgBaseDir\\": "src/" @@ -518,37 +671,47 @@ "MIT" ], "description": "implementation of xdg base directory specification for php", - "time": "2014-10-24T07:27:01+00:00" + "time": "2019-12-04T15:06:13+00:00" }, { - "name": "doctrine/inflector", - "version": "v1.3.0", + "name": "doctrine/cache", + "version": "1.10.1", "source": { "type": "git", - "url": "https://github.com/doctrine/inflector.git", - "reference": "5527a48b7313d15261292c149e55e26eae771b0a" + "url": "https://github.com/doctrine/cache.git", + "reference": "35a4a70cd94e09e2259dfae7488afc6b474ecbd3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/inflector/zipball/5527a48b7313d15261292c149e55e26eae771b0a", - "reference": "5527a48b7313d15261292c149e55e26eae771b0a", + "url": "https://api.github.com/repos/doctrine/cache/zipball/35a4a70cd94e09e2259dfae7488afc6b474ecbd3", + "reference": "35a4a70cd94e09e2259dfae7488afc6b474ecbd3", "shasum": "" }, "require": { - "php": "^7.1" + "php": "~7.1 || ^8.0" + }, + "conflict": { + "doctrine/common": ">2.2,<2.4" }, "require-dev": { - "phpunit/phpunit": "^6.2" + "alcaeus/mongo-php-adapter": "^1.1", + "doctrine/coding-standard": "^6.0", + "mongodb/mongodb": "^1.1", + "phpunit/phpunit": "^7.0", + "predis/predis": "~1.0" + }, + "suggest": { + "alcaeus/mongo-php-adapter": "Required to use legacy MongoDB driver" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.3.x-dev" + "dev-master": "1.9.x-dev" } }, "autoload": { "psr-4": { - "Doctrine\\Common\\Inflector\\": "lib/Doctrine/Common/Inflector" + "Doctrine\\Common\\Cache\\": "lib/Doctrine/Common/Cache" } }, "notification-url": "https://packagist.org/downloads/", @@ -556,6 +719,10 @@ "MIT" ], "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, { "name": "Roman Borschel", "email": "roman@code-factory.org" @@ -564,10 +731,6 @@ "name": "Benjamin Eberlei", "email": "kontakt@beberlei.de" }, - { - "name": "Guilherme Blanco", - "email": "guilhermeblanco@gmail.com" - }, { "name": "Jonathan Wage", "email": "jonwage@gmail.com" @@ -577,33 +740,327 @@ "email": "schmittjoh@gmail.com" } ], - "description": "Common String Manipulations with regard to casing and singular/plural rules.", - "homepage": "http://www.doctrine-project.org", + "description": "PHP Doctrine Cache library is a popular cache implementation that supports many different drivers such as redis, memcache, apc, mongodb and others.", + "homepage": "https://www.doctrine-project.org/projects/cache.html", "keywords": [ - "inflection", - "pluralize", - "singularize", - "string" + "abstraction", + "apcu", + "cache", + "caching", + "couchdb", + "memcached", + "php", + "redis", + "xcache" ], - "time": "2018-01-09T20:05:19+00:00" + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Fcache", + "type": "tidelift" + } + ], + "time": "2020-05-27T16:24:54+00:00" }, { - "name": "doctrine/lexer", - "version": "1.1.0", + "name": "doctrine/dbal", + "version": "2.10.2", "source": { "type": "git", - "url": "https://github.com/doctrine/lexer.git", - "reference": "e17f069ede36f7534b95adec71910ed1b49c74ea" + "url": "https://github.com/doctrine/dbal.git", + "reference": "aab745e7b6b2de3b47019da81e7225e14dcfdac8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/lexer/zipball/e17f069ede36f7534b95adec71910ed1b49c74ea", - "reference": "e17f069ede36f7534b95adec71910ed1b49c74ea", + "url": "https://api.github.com/repos/doctrine/dbal/zipball/aab745e7b6b2de3b47019da81e7225e14dcfdac8", + "reference": "aab745e7b6b2de3b47019da81e7225e14dcfdac8", "shasum": "" }, "require": { + "doctrine/cache": "^1.0", + "doctrine/event-manager": "^1.0", + "ext-pdo": "*", "php": "^7.2" }, + "require-dev": { + "doctrine/coding-standard": "^6.0", + "jetbrains/phpstorm-stubs": "^2019.1", + "nikic/php-parser": "^4.4", + "phpstan/phpstan": "^0.12", + "phpunit/phpunit": "^8.4.1", + "symfony/console": "^2.0.5|^3.0|^4.0|^5.0", + "vimeo/psalm": "^3.11" + }, + "suggest": { + "symfony/console": "For helpful console commands such as SQL execution and import of files." + }, + "bin": [ + "bin/doctrine-dbal" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.10.x-dev", + "dev-develop": "3.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Doctrine\\DBAL\\": "lib/Doctrine/DBAL" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + } + ], + "description": "Powerful PHP database abstraction layer (DBAL) with many features for database schema introspection and management.", + "homepage": "https://www.doctrine-project.org/projects/dbal.html", + "keywords": [ + "abstraction", + "database", + "db2", + "dbal", + "mariadb", + "mssql", + "mysql", + "oci8", + "oracle", + "pdo", + "pgsql", + "postgresql", + "queryobject", + "sasql", + "sql", + "sqlanywhere", + "sqlite", + "sqlserver", + "sqlsrv" + ], + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Fdbal", + "type": "tidelift" + } + ], + "time": "2020-04-20T17:19:26+00:00" + }, + { + "name": "doctrine/event-manager", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://github.com/doctrine/event-manager.git", + "reference": "629572819973f13486371cb611386eb17851e85c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/event-manager/zipball/629572819973f13486371cb611386eb17851e85c", + "reference": "629572819973f13486371cb611386eb17851e85c", + "shasum": "" + }, + "require": { + "php": "^7.1" + }, + "conflict": { + "doctrine/common": "<2.9@dev" + }, + "require-dev": { + "doctrine/coding-standard": "^6.0", + "phpunit/phpunit": "^7.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Doctrine\\Common\\": "lib/Doctrine/Common" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + }, + { + "name": "Marco Pivetta", + "email": "ocramius@gmail.com" + } + ], + "description": "The Doctrine Event Manager is a simple PHP event system that was built to be used with the various Doctrine projects.", + "homepage": "https://www.doctrine-project.org/projects/event-manager.html", + "keywords": [ + "event", + "event dispatcher", + "event manager", + "event system", + "events" + ], + "time": "2019-11-10T09:48:07+00:00" + }, + { + "name": "doctrine/inflector", + "version": "2.0.3", + "source": { + "type": "git", + "url": "https://github.com/doctrine/inflector.git", + "reference": "9cf661f4eb38f7c881cac67c75ea9b00bf97b210" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/inflector/zipball/9cf661f4eb38f7c881cac67c75ea9b00bf97b210", + "reference": "9cf661f4eb38f7c881cac67c75ea9b00bf97b210", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "require-dev": { + "doctrine/coding-standard": "^7.0", + "phpstan/phpstan": "^0.11", + "phpstan/phpstan-phpunit": "^0.11", + "phpstan/phpstan-strict-rules": "^0.11", + "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Doctrine\\Inflector\\": "lib/Doctrine/Inflector" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "PHP Doctrine Inflector is a small library that can perform string manipulations with regard to upper/lowercase and singular/plural forms of words.", + "homepage": "https://www.doctrine-project.org/projects/inflector.html", + "keywords": [ + "inflection", + "inflector", + "lowercase", + "manipulation", + "php", + "plural", + "singular", + "strings", + "uppercase", + "words" + ], + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Finflector", + "type": "tidelift" + } + ], + "time": "2020-05-29T15:13:26+00:00" + }, + { + "name": "doctrine/lexer", + "version": "1.2.1", + "source": { + "type": "git", + "url": "https://github.com/doctrine/lexer.git", + "reference": "e864bbf5904cb8f5bb334f99209b48018522f042" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/lexer/zipball/e864bbf5904cb8f5bb334f99209b48018522f042", + "reference": "e864bbf5904cb8f5bb334f99209b48018522f042", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, "require-dev": { "doctrine/coding-standard": "^6.0", "phpstan/phpstan": "^0.11.8", @@ -612,7 +1069,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.1.x-dev" + "dev-master": "1.2.x-dev" } }, "autoload": { @@ -647,32 +1104,46 @@ "parser", "php" ], - "time": "2019-07-30T19:33:28+00:00" + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Flexer", + "type": "tidelift" + } + ], + "time": "2020-05-25T17:44:05+00:00" }, { "name": "dompdf/dompdf", - "version": "v0.8.3", + "version": "v0.8.5", "source": { "type": "git", "url": "https://github.com/dompdf/dompdf.git", - "reference": "75f13c700009be21a1965dc2c5b68a8708c22ba2" + "reference": "6782abfc090b132134cd6cea0ec6d76f0fce2c56" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/dompdf/dompdf/zipball/75f13c700009be21a1965dc2c5b68a8708c22ba2", - "reference": "75f13c700009be21a1965dc2c5b68a8708c22ba2", + "url": "https://api.github.com/repos/dompdf/dompdf/zipball/6782abfc090b132134cd6cea0ec6d76f0fce2c56", + "reference": "6782abfc090b132134cd6cea0ec6d76f0fce2c56", "shasum": "" }, "require": { "ext-dom": "*", "ext-mbstring": "*", - "phenx/php-font-lib": "0.5.*", - "phenx/php-svg-lib": "0.3.*", - "php": ">=5.4.0" + "phenx/php-font-lib": "^0.5.1", + "phenx/php-svg-lib": "^0.3.3", + "php": "^7.1" }, "require-dev": { - "phpunit/phpunit": "^4.8|^5.5|^6.5", - "squizlabs/php_codesniffer": "2.*" + "phpunit/phpunit": "^7.5", + "squizlabs/php_codesniffer": "^3.5" }, "suggest": { "ext-gd": "Needed to process images", @@ -713,7 +1184,7 @@ ], "description": "DOMPDF is a CSS 2.1 compliant HTML to PDF converter", "homepage": "https://github.com/dompdf/dompdf", - "time": "2018-12-14T02:40:31+00:00" + "time": "2020-02-20T03:52:51+00:00" }, { "name": "dragonmantank/cron-expression", @@ -771,27 +1242,27 @@ }, { "name": "egulias/email-validator", - "version": "2.1.11", + "version": "2.1.18", "source": { "type": "git", "url": "https://github.com/egulias/EmailValidator.git", - "reference": "92dd169c32f6f55ba570c309d83f5209cefb5e23" + "reference": "cfa3d44471c7f5bfb684ac2b0da7114283d78441" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/92dd169c32f6f55ba570c309d83f5209cefb5e23", - "reference": "92dd169c32f6f55ba570c309d83f5209cefb5e23", + "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/cfa3d44471c7f5bfb684ac2b0da7114283d78441", + "reference": "cfa3d44471c7f5bfb684ac2b0da7114283d78441", "shasum": "" }, "require": { "doctrine/lexer": "^1.0.1", - "php": ">= 5.5" + "php": ">=5.5", + "symfony/polyfill-intl-idn": "^1.10" }, "require-dev": { - "dominicsayers/isemail": "dev-master", - "phpunit/phpunit": "^4.8.35||^5.7||^6.0", - "satooshi/php-coveralls": "^1.0.1", - "symfony/phpunit-bridge": "^4.4@dev" + "dominicsayers/isemail": "^3.0.7", + "phpunit/phpunit": "^4.8.36|^7.5.15", + "satooshi/php-coveralls": "^1.0.1" }, "suggest": { "ext-intl": "PHP Internationalization Libraries are required to use the SpoofChecking validation" @@ -804,7 +1275,7 @@ }, "autoload": { "psr-4": { - "Egulias\\EmailValidator\\": "EmailValidator" + "Egulias\\EmailValidator\\": "src" } }, "notification-url": "https://packagist.org/downloads/", @@ -825,33 +1296,160 @@ "validation", "validator" ], - "time": "2019-08-13T17:33:27+00:00" + "time": "2020-06-16T20:11:17+00:00" }, { - "name": "erusev/parsedown", - "version": "1.7.3", + "name": "facade/flare-client-php", + "version": "1.3.2", "source": { "type": "git", - "url": "https://github.com/erusev/parsedown.git", - "reference": "6d893938171a817f4e9bc9e86f2da1e370b7bcd7" + "url": "https://github.com/facade/flare-client-php.git", + "reference": "db1e03426e7f9472c9ecd1092aff00f56aa6c004" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/erusev/parsedown/zipball/6d893938171a817f4e9bc9e86f2da1e370b7bcd7", - "reference": "6d893938171a817f4e9bc9e86f2da1e370b7bcd7", + "url": "https://api.github.com/repos/facade/flare-client-php/zipball/db1e03426e7f9472c9ecd1092aff00f56aa6c004", + "reference": "db1e03426e7f9472c9ecd1092aff00f56aa6c004", "shasum": "" }, "require": { - "ext-mbstring": "*", - "php": ">=5.3.0" + "facade/ignition-contracts": "~1.0", + "illuminate/pipeline": "^5.5|^6.0|^7.0", + "php": "^7.1", + "symfony/http-foundation": "^3.3|^4.1|^5.0", + "symfony/var-dumper": "^3.4|^4.0|^5.0" }, "require-dev": { - "phpunit/phpunit": "^4.8.35" + "larapack/dd": "^1.1", + "phpunit/phpunit": "^7.5.16", + "spatie/phpunit-snapshot-assertions": "^2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0-dev" + } + }, + "autoload": { + "psr-4": { + "Facade\\FlareClient\\": "src" + }, + "files": [ + "src/helpers.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Send PHP errors to Flare", + "homepage": "https://github.com/facade/flare-client-php", + "keywords": [ + "exception", + "facade", + "flare", + "reporting" + ], + "funding": [ + { + "url": "https://www.patreon.com/spatie", + "type": "patreon" + } + ], + "time": "2020-03-02T15:52:04+00:00" + }, + { + "name": "facade/ignition", + "version": "2.0.7", + "source": { + "type": "git", + "url": "https://github.com/facade/ignition.git", + "reference": "e6bedc1e74507d584fbcb041ebe0f7f215109cf2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/facade/ignition/zipball/e6bedc1e74507d584fbcb041ebe0f7f215109cf2", + "reference": "e6bedc1e74507d584fbcb041ebe0f7f215109cf2", + "shasum": "" + }, + "require": { + "ext-json": "*", + "ext-mbstring": "*", + "facade/flare-client-php": "^1.0", + "facade/ignition-contracts": "^1.0", + "filp/whoops": "^2.4", + "illuminate/support": "^7.0|^8.0", + "monolog/monolog": "^2.0", + "php": "^7.2.5", + "scrivo/highlight.php": "^9.15", + "symfony/console": "^5.0", + "symfony/var-dumper": "^5.0" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "^2.14", + "mockery/mockery": "^1.3", + "orchestra/testbench": "5.0" + }, + "suggest": { + "laravel/telescope": "^3.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.x-dev" + }, + "laravel": { + "providers": [ + "Facade\\Ignition\\IgnitionServiceProvider" + ], + "aliases": { + "Flare": "Facade\\Ignition\\Facades\\Flare" + } + } + }, + "autoload": { + "psr-4": { + "Facade\\Ignition\\": "src" + }, + "files": [ + "src/helpers.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "A beautiful error page for Laravel applications.", + "homepage": "https://github.com/facade/ignition", + "keywords": [ + "error", + "flare", + "laravel", + "page" + ], + "time": "2020-06-08T09:14:08+00:00" + }, + { + "name": "facade/ignition-contracts", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/facade/ignition-contracts.git", + "reference": "f445db0fb86f48e205787b2592840dd9c80ded28" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/facade/ignition-contracts/zipball/f445db0fb86f48e205787b2592840dd9c80ded28", + "reference": "f445db0fb86f48e205787b2592840dd9c80ded28", + "shasum": "" + }, + "require": { + "php": "^7.1" }, "type": "library", "autoload": { - "psr-0": { - "Parsedown": "" + "psr-4": { + "Facade\\IgnitionContracts\\": "src" } }, "notification-url": "https://packagist.org/downloads/", @@ -860,39 +1458,41 @@ ], "authors": [ { - "name": "Emanuil Rusev", - "email": "hello@erusev.com", - "homepage": "http://erusev.com" + "name": "Freek Van der Herten", + "email": "freek@spatie.be", + "homepage": "https://flareapp.io", + "role": "Developer" } ], - "description": "Parser for Markdown.", - "homepage": "http://parsedown.org", + "description": "Solution contracts for Ignition", + "homepage": "https://github.com/facade/ignition-contracts", "keywords": [ - "markdown", - "parser" + "contracts", + "flare", + "ignition" ], - "time": "2019-03-17T18:48:37+00:00" + "time": "2019-08-30T14:06:08+00:00" }, { "name": "fideloper/proxy", - "version": "4.2.1", + "version": "4.3.0", "source": { "type": "git", "url": "https://github.com/fideloper/TrustedProxy.git", - "reference": "03085e58ec7bee24773fa5a8850751a6e61a7e8a" + "reference": "ec38ad69ee378a1eec04fb0e417a97cfaf7ed11a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/fideloper/TrustedProxy/zipball/03085e58ec7bee24773fa5a8850751a6e61a7e8a", - "reference": "03085e58ec7bee24773fa5a8850751a6e61a7e8a", + "url": "https://api.github.com/repos/fideloper/TrustedProxy/zipball/ec38ad69ee378a1eec04fb0e417a97cfaf7ed11a", + "reference": "ec38ad69ee378a1eec04fb0e417a97cfaf7ed11a", "shasum": "" }, "require": { - "illuminate/contracts": "^5.0|^6.0|^7.0", + "illuminate/contracts": "^5.0|^6.0|^7.0|^8.0", "php": ">=5.4.0" }, "require-dev": { - "illuminate/http": "^5.0|^6.0|^7.0", + "illuminate/http": "^5.0|^6.0|^7.0|^8.0", "mockery/mockery": "^1.0", "phpunit/phpunit": "^6.0" }, @@ -925,31 +1525,294 @@ "proxy", "trusted proxy" ], - "time": "2019-09-03T16:45:42+00:00" + "time": "2020-02-22T01:51:47+00:00" }, { - "name": "guzzlehttp/guzzle", - "version": "6.3.3", + "name": "filp/whoops", + "version": "2.7.3", "source": { "type": "git", - "url": "https://github.com/guzzle/guzzle.git", - "reference": "407b0cb880ace85c9b63c5f9551db498cb2d50ba" + "url": "https://github.com/filp/whoops.git", + "reference": "5d5fe9bb3d656b514d455645b3addc5f7ba7714d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/guzzle/zipball/407b0cb880ace85c9b63c5f9551db498cb2d50ba", - "reference": "407b0cb880ace85c9b63c5f9551db498cb2d50ba", + "url": "https://api.github.com/repos/filp/whoops/zipball/5d5fe9bb3d656b514d455645b3addc5f7ba7714d", + "reference": "5d5fe9bb3d656b514d455645b3addc5f7ba7714d", "shasum": "" }, "require": { + "php": "^5.5.9 || ^7.0", + "psr/log": "^1.0.1" + }, + "require-dev": { + "mockery/mockery": "^0.9 || ^1.0", + "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0", + "symfony/var-dumper": "^2.6 || ^3.0 || ^4.0 || ^5.0" + }, + "suggest": { + "symfony/var-dumper": "Pretty print complex values better with var-dumper available", + "whoops/soap": "Formats errors as SOAP responses" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.6-dev" + } + }, + "autoload": { + "psr-4": { + "Whoops\\": "src/Whoops/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Filipe Dobreira", + "homepage": "https://github.com/filp", + "role": "Developer" + } + ], + "description": "php error handling for cool kids", + "homepage": "https://filp.github.io/whoops/", + "keywords": [ + "error", + "exception", + "handling", + "library", + "throwable", + "whoops" + ], + "time": "2020-06-14T09:00:00+00:00" + }, + { + "name": "firebase/php-jwt", + "version": "v5.2.0", + "source": { + "type": "git", + "url": "https://github.com/firebase/php-jwt.git", + "reference": "feb0e820b8436873675fd3aca04f3728eb2185cb" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/firebase/php-jwt/zipball/feb0e820b8436873675fd3aca04f3728eb2185cb", + "reference": "feb0e820b8436873675fd3aca04f3728eb2185cb", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "require-dev": { + "phpunit/phpunit": ">=4.8 <=9" + }, + "type": "library", + "autoload": { + "psr-4": { + "Firebase\\JWT\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Neuman Vong", + "email": "neuman+pear@twilio.com", + "role": "Developer" + }, + { + "name": "Anant Narayanan", + "email": "anant@php.net", + "role": "Developer" + } + ], + "description": "A simple library to encode and decode JSON Web Tokens (JWT) in PHP. Should conform to the current spec.", + "homepage": "https://github.com/firebase/php-jwt", + "keywords": [ + "jwt", + "php" + ], + "time": "2020-03-25T18:49:23+00:00" + }, + { + "name": "google/apiclient", + "version": "v2.5.0", + "source": { + "type": "git", + "url": "https://github.com/googleapis/google-api-php-client.git", + "reference": "9ab9cc07f66e2c7274ea2753f102ae24d1271410" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/googleapis/google-api-php-client/zipball/9ab9cc07f66e2c7274ea2753f102ae24d1271410", + "reference": "9ab9cc07f66e2c7274ea2753f102ae24d1271410", + "shasum": "" + }, + "require": { + "firebase/php-jwt": "~2.0||~3.0||~4.0||~5.0", + "google/apiclient-services": "~0.13", + "google/auth": "^1.9", + "guzzlehttp/guzzle": "~5.3.1||~6.0", + "guzzlehttp/psr7": "^1.2", + "monolog/monolog": "^1.17|^2.0", + "php": ">=5.4", + "phpseclib/phpseclib": "~0.3.10||~2.0" + }, + "require-dev": { + "cache/filesystem-adapter": "^0.3.2", + "dealerdirect/phpcodesniffer-composer-installer": "^0.5.0", + "phpcompatibility/php-compatibility": "^9.2", + "phpunit/phpunit": "^4.8|^5.0", + "squizlabs/php_codesniffer": "~2.3", + "symfony/css-selector": "~2.1", + "symfony/dom-crawler": "~2.1" + }, + "suggest": { + "cache/filesystem-adapter": "For caching certs and tokens (using Google_Client::setCache)" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.x-dev" + } + }, + "autoload": { + "psr-0": { + "Google_": "src/" + }, + "classmap": [ + "src/Google/Service/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "description": "Client library for Google APIs", + "homepage": "http://developers.google.com/api-client-library/php", + "keywords": [ + "google" + ], + "time": "2020-05-26T22:29:38+00:00" + }, + { + "name": "google/apiclient-services", + "version": "v0.139", + "source": { + "type": "git", + "url": "https://github.com/googleapis/google-api-php-client-services.git", + "reference": "84e99f792cae7bd92b8b54c75b0ad3502d628db6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/googleapis/google-api-php-client-services/zipball/84e99f792cae7bd92b8b54c75b0ad3502d628db6", + "reference": "84e99f792cae7bd92b8b54c75b0ad3502d628db6", + "shasum": "" + }, + "require": { + "php": ">=5.4" + }, + "require-dev": { + "phpunit/phpunit": "^4.8|^5" + }, + "type": "library", + "autoload": { + "psr-0": { + "Google_Service_": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "description": "Client library for Google APIs", + "homepage": "http://developers.google.com/api-client-library/php", + "keywords": [ + "google" + ], + "time": "2020-06-08T00:24:31+00:00" + }, + { + "name": "google/auth", + "version": "v1.9.0", + "source": { + "type": "git", + "url": "https://github.com/googleapis/google-auth-library-php.git", + "reference": "af4abf63988b8c74f589bee1e69ba310d3e43c6c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/googleapis/google-auth-library-php/zipball/af4abf63988b8c74f589bee1e69ba310d3e43c6c", + "reference": "af4abf63988b8c74f589bee1e69ba310d3e43c6c", + "shasum": "" + }, + "require": { + "firebase/php-jwt": "~2.0|~3.0|~4.0|~5.0", + "guzzlehttp/guzzle": "~5.3.1|~6.0", + "guzzlehttp/psr7": "^1.2", + "php": ">=5.4", + "psr/cache": "^1.0", + "psr/http-message": "^1.0" + }, + "require-dev": { + "guzzlehttp/promises": "0.1.1|^1.3", + "kelvinmo/simplejwt": "^0.2.5", + "phpseclib/phpseclib": "^2", + "phpunit/phpunit": "^4.8.36|^5.7", + "sebastian/comparator": ">=1.2.3", + "squizlabs/php_codesniffer": "^3.5" + }, + "suggest": { + "phpseclib/phpseclib": "May be used in place of OpenSSL for signing strings or for token management. Please require version ^2." + }, + "type": "library", + "autoload": { + "psr-4": { + "Google\\Auth\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "description": "Google Auth Library for PHP", + "homepage": "http://github.com/google/google-auth-library-php", + "keywords": [ + "Authentication", + "google", + "oauth2" + ], + "time": "2020-05-18T17:02:59+00:00" + }, + { + "name": "guzzlehttp/guzzle", + "version": "6.5.5", + "source": { + "type": "git", + "url": "https://github.com/guzzle/guzzle.git", + "reference": "9d4290de1cfd701f38099ef7e183b64b4b7b0c5e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/guzzle/guzzle/zipball/9d4290de1cfd701f38099ef7e183b64b4b7b0c5e", + "reference": "9d4290de1cfd701f38099ef7e183b64b4b7b0c5e", + "shasum": "" + }, + "require": { + "ext-json": "*", "guzzlehttp/promises": "^1.0", - "guzzlehttp/psr7": "^1.4", - "php": ">=5.5" + "guzzlehttp/psr7": "^1.6.1", + "php": ">=5.5", + "symfony/polyfill-intl-idn": "^1.17.0" }, "require-dev": { "ext-curl": "*", "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.4 || ^7.0", - "psr/log": "^1.0" + "psr/log": "^1.1" }, "suggest": { "psr/log": "Required for using the Log middleware" @@ -957,16 +1820,16 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "6.3-dev" + "dev-master": "6.5-dev" } }, "autoload": { - "files": [ - "src/functions_include.php" - ], "psr-4": { "GuzzleHttp\\": "src/" - } + }, + "files": [ + "src/functions_include.php" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -990,7 +1853,7 @@ "rest", "web service" ], - "time": "2018-04-22T15:46:56+00:00" + "time": "2020-06-16T21:01:06+00:00" }, { "name": "guzzlehttp/promises", @@ -1114,113 +1977,25 @@ ], "time": "2019-07-01T23:21:34+00:00" }, - { - "name": "jakub-onderka/php-console-color", - "version": "v0.2", - "source": { - "type": "git", - "url": "https://github.com/JakubOnderka/PHP-Console-Color.git", - "reference": "d5deaecff52a0d61ccb613bb3804088da0307191" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/JakubOnderka/PHP-Console-Color/zipball/d5deaecff52a0d61ccb613bb3804088da0307191", - "reference": "d5deaecff52a0d61ccb613bb3804088da0307191", - "shasum": "" - }, - "require": { - "php": ">=5.4.0" - }, - "require-dev": { - "jakub-onderka/php-code-style": "1.0", - "jakub-onderka/php-parallel-lint": "1.0", - "jakub-onderka/php-var-dump-check": "0.*", - "phpunit/phpunit": "~4.3", - "squizlabs/php_codesniffer": "1.*" - }, - "type": "library", - "autoload": { - "psr-4": { - "JakubOnderka\\PhpConsoleColor\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-2-Clause" - ], - "authors": [ - { - "name": "Jakub Onderka", - "email": "jakub.onderka@gmail.com" - } - ], - "time": "2018-09-29T17:23:10+00:00" - }, - { - "name": "jakub-onderka/php-console-highlighter", - "version": "v0.4", - "source": { - "type": "git", - "url": "https://github.com/JakubOnderka/PHP-Console-Highlighter.git", - "reference": "9f7a229a69d52506914b4bc61bfdb199d90c5547" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/JakubOnderka/PHP-Console-Highlighter/zipball/9f7a229a69d52506914b4bc61bfdb199d90c5547", - "reference": "9f7a229a69d52506914b4bc61bfdb199d90c5547", - "shasum": "" - }, - "require": { - "ext-tokenizer": "*", - "jakub-onderka/php-console-color": "~0.2", - "php": ">=5.4.0" - }, - "require-dev": { - "jakub-onderka/php-code-style": "~1.0", - "jakub-onderka/php-parallel-lint": "~1.0", - "jakub-onderka/php-var-dump-check": "~0.1", - "phpunit/phpunit": "~4.0", - "squizlabs/php_codesniffer": "~1.5" - }, - "type": "library", - "autoload": { - "psr-4": { - "JakubOnderka\\PhpConsoleHighlighter\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Jakub Onderka", - "email": "acci@acci.cz", - "homepage": "http://www.acci.cz/" - } - ], - "description": "Highlight PHP code in terminal", - "time": "2018-09-29T18:48:56+00:00" - }, { "name": "justinrainbow/json-schema", - "version": "5.2.8", + "version": "5.2.10", "source": { "type": "git", "url": "https://github.com/justinrainbow/json-schema.git", - "reference": "dcb6e1006bb5fd1e392b4daa68932880f37550d4" + "reference": "2ba9c8c862ecd5510ed16c6340aa9f6eadb4f31b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/justinrainbow/json-schema/zipball/dcb6e1006bb5fd1e392b4daa68932880f37550d4", - "reference": "dcb6e1006bb5fd1e392b4daa68932880f37550d4", + "url": "https://api.github.com/repos/justinrainbow/json-schema/zipball/2ba9c8c862ecd5510ed16c6340aa9f6eadb4f31b", + "reference": "2ba9c8c862ecd5510ed16c6340aa9f6eadb4f31b", "shasum": "" }, "require": { "php": ">=5.3.3" }, "require-dev": { - "friendsofphp/php-cs-fixer": "~2.2.20", + "friendsofphp/php-cs-fixer": "~2.2.20||~2.15.1", "json-schema/json-schema-test-suite": "1.2.0", "phpunit/phpunit": "^4.8.35" }, @@ -1266,95 +2041,59 @@ "json", "schema" ], - "time": "2019-01-14T23:55:14+00:00" - }, - { - "name": "kylekatarnls/update-helper", - "version": "1.2.0", - "source": { - "type": "git", - "url": "https://github.com/kylekatarnls/update-helper.git", - "reference": "5786fa188e0361b9adf9e8199d7280d1b2db165e" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/kylekatarnls/update-helper/zipball/5786fa188e0361b9adf9e8199d7280d1b2db165e", - "reference": "5786fa188e0361b9adf9e8199d7280d1b2db165e", - "shasum": "" - }, - "require": { - "composer-plugin-api": "^1.1.0 || ^2.0.0", - "php": ">=5.3.0" - }, - "require-dev": { - "codeclimate/php-test-reporter": "dev-master", - "composer/composer": "2.0.x-dev || ^2.0.0-dev", - "phpunit/phpunit": ">=4.8.35 <6.0" - }, - "type": "composer-plugin", - "extra": { - "class": "UpdateHelper\\ComposerPlugin" - }, - "autoload": { - "psr-0": { - "UpdateHelper\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Kyle", - "email": "kylekatarnls@gmail.com" - } - ], - "description": "Update helper", - "time": "2019-07-29T11:03:54+00:00" + "time": "2020-05-27T16:41:55+00:00" }, { "name": "laravel/framework", - "version": "v5.6.39", + "version": "v7.16.1", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "37bb306f516669ab4f888c16003f694313ab299e" + "reference": "dc9cd8338d222dec2d9962553639e08c4585fa5b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/framework/zipball/37bb306f516669ab4f888c16003f694313ab299e", - "reference": "37bb306f516669ab4f888c16003f694313ab299e", + "url": "https://api.github.com/repos/laravel/framework/zipball/dc9cd8338d222dec2d9962553639e08c4585fa5b", + "reference": "dc9cd8338d222dec2d9962553639e08c4585fa5b", "shasum": "" }, "require": { - "doctrine/inflector": "~1.1", - "dragonmantank/cron-expression": "~2.0", - "erusev/parsedown": "~1.7", + "doctrine/inflector": "^1.4|^2.0", + "dragonmantank/cron-expression": "^2.0", + "egulias/email-validator": "^2.1.10", + "ext-json": "*", "ext-mbstring": "*", "ext-openssl": "*", - "league/flysystem": "^1.0.8", - "monolog/monolog": "~1.12", - "nesbot/carbon": "1.25.*", - "php": "^7.1.3", - "psr/container": "~1.0", + "league/commonmark": "^1.3", + "league/flysystem": "^1.0.34", + "monolog/monolog": "^2.0", + "nesbot/carbon": "^2.17", + "opis/closure": "^3.1", + "php": "^7.2.5", + "psr/container": "^1.0", "psr/simple-cache": "^1.0", - "ramsey/uuid": "^3.7", - "swiftmailer/swiftmailer": "~6.0", - "symfony/console": "~4.0", - "symfony/debug": "~4.0", - "symfony/finder": "~4.0", - "symfony/http-foundation": "~4.0", - "symfony/http-kernel": "~4.0", - "symfony/process": "~4.0", - "symfony/routing": "~4.0", - "symfony/var-dumper": "~4.0", - "tijsverkoyen/css-to-inline-styles": "^2.2.1", - "vlucas/phpdotenv": "~2.2" + "ramsey/uuid": "^3.7|^4.0", + "swiftmailer/swiftmailer": "^6.0", + "symfony/console": "^5.0", + "symfony/error-handler": "^5.0", + "symfony/finder": "^5.0", + "symfony/http-foundation": "^5.0", + "symfony/http-kernel": "^5.0", + "symfony/mime": "^5.0", + "symfony/polyfill-php73": "^1.17", + "symfony/process": "^5.0", + "symfony/routing": "^5.0", + "symfony/var-dumper": "^5.0", + "tijsverkoyen/css-to-inline-styles": "^2.2.2", + "vlucas/phpdotenv": "^4.0", + "voku/portable-ascii": "^1.4.8" }, "conflict": { "tightenco/collect": "<5.5.33" }, + "provide": { + "psr/container-implementation": "1.0" + }, "replace": { "illuminate/auth": "self.version", "illuminate/broadcasting": "self.version", @@ -1381,48 +2120,57 @@ "illuminate/routing": "self.version", "illuminate/session": "self.version", "illuminate/support": "self.version", + "illuminate/testing": "self.version", "illuminate/translation": "self.version", "illuminate/validation": "self.version", "illuminate/view": "self.version" }, "require-dev": { - "aws/aws-sdk-php": "~3.0", - "doctrine/dbal": "~2.6", - "filp/whoops": "^2.1.4", - "league/flysystem-cached-adapter": "~1.0", - "mockery/mockery": "~1.0", + "aws/aws-sdk-php": "^3.0", + "doctrine/dbal": "^2.6", + "filp/whoops": "^2.4", + "guzzlehttp/guzzle": "^6.3.1|^7.0", + "league/flysystem-cached-adapter": "^1.0", + "mockery/mockery": "^1.3.1", "moontoast/math": "^1.1", - "orchestra/testbench-core": "3.6.*", - "pda/pheanstalk": "~3.0", - "phpunit/phpunit": "~7.0", + "orchestra/testbench-core": "^5.0", + "pda/pheanstalk": "^4.0", + "phpunit/phpunit": "^8.4|^9.0", "predis/predis": "^1.1.1", - "symfony/css-selector": "~4.0", - "symfony/dom-crawler": "~4.0" + "symfony/cache": "^5.0" }, "suggest": { - "aws/aws-sdk-php": "Required to use the SQS queue driver and SES mail driver (~3.0).", - "doctrine/dbal": "Required to rename columns and drop SQLite columns (~2.6).", + "aws/aws-sdk-php": "Required to use the SQS queue driver, DynamoDb failed job storage and SES mail driver (^3.0).", + "doctrine/dbal": "Required to rename columns and drop SQLite columns (^2.6).", + "ext-ftp": "Required to use the Flysystem FTP driver.", + "ext-gd": "Required to use Illuminate\\Http\\Testing\\FileFactory::image().", + "ext-memcached": "Required to use the memcache cache driver.", "ext-pcntl": "Required to use all features of the queue worker.", "ext-posix": "Required to use all features of the queue worker.", - "fzaninotto/faker": "Required to use the eloquent factory builder (~1.4).", - "guzzlehttp/guzzle": "Required to use the Mailgun and Mandrill mail drivers and the ping methods on schedules (~6.0).", - "laravel/tinker": "Required to use the tinker console command (~1.0).", - "league/flysystem-aws-s3-v3": "Required to use the Flysystem S3 driver (~1.0).", - "league/flysystem-cached-adapter": "Required to use the Flysystem cache (~1.0).", - "league/flysystem-rackspace": "Required to use the Flysystem Rackspace driver (~1.0).", - "league/flysystem-sftp": "Required to use the Flysystem SFTP driver (~1.0).", - "nexmo/client": "Required to use the Nexmo transport (~1.0).", - "pda/pheanstalk": "Required to use the beanstalk queue driver (~3.0).", - "predis/predis": "Required to use the redis cache and queue drivers (~1.0).", - "pusher/pusher-php-server": "Required to use the Pusher broadcast driver (~3.0).", - "symfony/css-selector": "Required to use some of the crawler integration testing tools (~4.0).", - "symfony/dom-crawler": "Required to use most of the crawler integration testing tools (~4.0).", - "symfony/psr-http-message-bridge": "Required to psr7 bridging features (~1.0)." + "ext-redis": "Required to use the Redis cache and queue drivers (^4.0|^5.0).", + "filp/whoops": "Required for friendly error pages in development (^2.4).", + "fzaninotto/faker": "Required to use the eloquent factory builder (^1.9.1).", + "guzzlehttp/guzzle": "Required to use the HTTP Client, Mailgun mail driver and the ping methods on schedules (^6.3.1|^7.0).", + "laravel/tinker": "Required to use the tinker console command (^2.0).", + "league/flysystem-aws-s3-v3": "Required to use the Flysystem S3 driver (^1.0).", + "league/flysystem-cached-adapter": "Required to use the Flysystem cache (^1.0).", + "league/flysystem-sftp": "Required to use the Flysystem SFTP driver (^1.0).", + "mockery/mockery": "Required to use mocking (^1.3.1).", + "moontoast/math": "Required to use ordered UUIDs (^1.1).", + "nyholm/psr7": "Required to use PSR-7 bridging features (^1.2).", + "pda/pheanstalk": "Required to use the beanstalk queue driver (^4.0).", + "phpunit/phpunit": "Required to use assertions and run tests (^8.4|^9.0).", + "psr/http-message": "Required to allow Storage::put to accept a StreamInterface (^1.0).", + "pusher/pusher-php-server": "Required to use the Pusher broadcast driver (^4.0).", + "symfony/cache": "Required to PSR-6 cache bridge (^5.0).", + "symfony/filesystem": "Required to create relative storage directory symbolic links (^5.0).", + "symfony/psr-http-message-bridge": "Required to use PSR-7 bridging features (^2.0).", + "wildbit/swiftmailer-postmark": "Required to use Postmark mail driver (^3.0)." }, "type": "library", "extra": { "branch-alias": { - "dev-master": "5.6-dev" + "dev-master": "7.x-dev" } }, "autoload": { @@ -1450,40 +2198,214 @@ "framework", "laravel" ], - "time": "2018-10-04T14:50:41+00:00" + "time": "2020-06-16T14:31:25+00:00" }, { - "name": "laravel/tinker", - "version": "v1.0.10", + "name": "laravel/helpers", + "version": "v1.2.0", "source": { "type": "git", - "url": "https://github.com/laravel/tinker.git", - "reference": "ad571aacbac1539c30d480908f9d0c9614eaf1a7" + "url": "https://github.com/laravel/helpers.git", + "reference": "1f978fc5dad9f7f906b18242c654252615201de4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/tinker/zipball/ad571aacbac1539c30d480908f9d0c9614eaf1a7", - "reference": "ad571aacbac1539c30d480908f9d0c9614eaf1a7", + "url": "https://api.github.com/repos/laravel/helpers/zipball/1f978fc5dad9f7f906b18242c654252615201de4", + "reference": "1f978fc5dad9f7f906b18242c654252615201de4", "shasum": "" }, "require": { - "illuminate/console": "~5.1|^6.0", - "illuminate/contracts": "~5.1|^6.0", - "illuminate/support": "~5.1|^6.0", - "php": ">=5.5.9", - "psy/psysh": "0.7.*|0.8.*|0.9.*", - "symfony/var-dumper": "~3.0|~4.0" + "illuminate/support": "~5.8.0|^6.0|^7.0", + "php": ">=7.1.3" }, "require-dev": { - "phpunit/phpunit": "~4.0|~5.0" - }, - "suggest": { - "illuminate/database": "The Illuminate Database package (~5.1)." + "phpunit/phpunit": "^7.0" }, "type": "library", "extra": { "branch-alias": { "dev-master": "1.0-dev" + } + }, + "autoload": { + "files": [ + "src/helpers.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + }, + { + "name": "Dries Vints", + "email": "dries.vints@gmail.com" + } + ], + "description": "Provides backwards compatibility for helpers in the latest Laravel release.", + "keywords": [ + "helpers", + "laravel" + ], + "time": "2020-03-03T13:52:16+00:00" + }, + { + "name": "laravel/nexmo-notification-channel", + "version": "v2.3.0", + "source": { + "type": "git", + "url": "https://github.com/laravel/nexmo-notification-channel.git", + "reference": "da1ba24ecd9877e461fc3fdd68761328eaf035e3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/laravel/nexmo-notification-channel/zipball/da1ba24ecd9877e461fc3fdd68761328eaf035e3", + "reference": "da1ba24ecd9877e461fc3fdd68761328eaf035e3", + "shasum": "" + }, + "require": { + "illuminate/notifications": "~5.8.0|^6.0|^7.0", + "nexmo/laravel": "^2.0", + "php": "^7.1.3" + }, + "require-dev": { + "mockery/mockery": "^1.0", + "phpunit/phpunit": "^7.0|^8.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.x-dev" + }, + "laravel": { + "providers": [ + "Illuminate\\Notifications\\NexmoChannelServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "Illuminate\\Notifications\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "Nexmo Notification Channel for laravel.", + "keywords": [ + "laravel", + "nexmo", + "notifications" + ], + "time": "2019-12-10T16:54:57+00:00" + }, + { + "name": "laravel/telescope", + "version": "v3.5.1", + "source": { + "type": "git", + "url": "https://github.com/laravel/telescope.git", + "reference": "a8d2e1106ba655006fde47a0b7ed53851c6398f5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/laravel/telescope/zipball/a8d2e1106ba655006fde47a0b7ed53851c6398f5", + "reference": "a8d2e1106ba655006fde47a0b7ed53851c6398f5", + "shasum": "" + }, + "require": { + "ext-json": "*", + "laravel/framework": "^6.0|^7.0", + "moontoast/math": "^1.1", + "php": "^7.2", + "symfony/var-dumper": "^4.4|^5.0" + }, + "require-dev": { + "ext-gd": "*", + "orchestra/testbench": "^4.0|^5.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.x-dev" + }, + "laravel": { + "providers": [ + "Laravel\\Telescope\\TelescopeServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "Laravel\\Telescope\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + }, + { + "name": "Mohamed Said", + "email": "mohamed@laravel.com" + } + ], + "description": "An elegant debug assistant for the Laravel framework.", + "keywords": [ + "debugging", + "laravel", + "monitoring" + ], + "time": "2020-07-28T19:12:33+00:00" + }, + { + "name": "laravel/tinker", + "version": "v2.4.0", + "source": { + "type": "git", + "url": "https://github.com/laravel/tinker.git", + "reference": "cde90a7335a2130a4488beb68f4b2141869241db" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/laravel/tinker/zipball/cde90a7335a2130a4488beb68f4b2141869241db", + "reference": "cde90a7335a2130a4488beb68f4b2141869241db", + "shasum": "" + }, + "require": { + "illuminate/console": "^6.0|^7.0|^8.0", + "illuminate/contracts": "^6.0|^7.0|^8.0", + "illuminate/support": "^6.0|^7.0|^8.0", + "php": "^7.2", + "psy/psysh": "^0.10.3", + "symfony/var-dumper": "^4.3|^5.0" + }, + "require-dev": { + "mockery/mockery": "^1.3.1", + "phpunit/phpunit": "^8.4|^9.0" + }, + "suggest": { + "illuminate/database": "The Illuminate Database package (^6.0|^7.0|^8.0)." + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.x-dev" }, "laravel": { "providers": [ @@ -1513,20 +2435,75 @@ "laravel", "psysh" ], - "time": "2019-08-07T15:10:45+00:00" + "time": "2020-04-07T15:01:31+00:00" }, { - "name": "lcobucci/jwt", - "version": "3.3.1", + "name": "laravel/ui", + "version": "v2.0.3", "source": { "type": "git", - "url": "https://github.com/lcobucci/jwt.git", - "reference": "a11ec5f4b4d75d1fcd04e133dede4c317aac9e18" + "url": "https://github.com/laravel/ui.git", + "reference": "15368c5328efb7ce94f35ca750acde9b496ab1b1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/lcobucci/jwt/zipball/a11ec5f4b4d75d1fcd04e133dede4c317aac9e18", - "reference": "a11ec5f4b4d75d1fcd04e133dede4c317aac9e18", + "url": "https://api.github.com/repos/laravel/ui/zipball/15368c5328efb7ce94f35ca750acde9b496ab1b1", + "reference": "15368c5328efb7ce94f35ca750acde9b496ab1b1", + "shasum": "" + }, + "require": { + "illuminate/console": "^7.0", + "illuminate/filesystem": "^7.0", + "illuminate/support": "^7.0", + "php": "^7.2.5" + }, + "require-dev": { + "mockery/mockery": "^1.0", + "phpunit/phpunit": "^8.0" + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "Laravel\\Ui\\UiServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "Laravel\\Ui\\": "src/", + "Illuminate\\Foundation\\Auth\\": "auth-backend/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "Laravel UI utilities and presets.", + "keywords": [ + "laravel", + "ui" + ], + "time": "2020-04-29T15:06:45+00:00" + }, + { + "name": "lcobucci/jwt", + "version": "3.3.2", + "source": { + "type": "git", + "url": "https://github.com/lcobucci/jwt.git", + "reference": "56f10808089e38623345e28af2f2d5e4eb579455" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/lcobucci/jwt/zipball/56f10808089e38623345e28af2f2d5e4eb579455", + "reference": "56f10808089e38623345e28af2f2d5e4eb579455", "shasum": "" }, "require": { @@ -1568,20 +2545,130 @@ "JWS", "jwt" ], - "time": "2019-05-24T18:30:49+00:00" + "funding": [ + { + "url": "https://github.com/lcobucci", + "type": "github" + }, + { + "url": "https://www.patreon.com/lcobucci", + "type": "patreon" + } + ], + "time": "2020-05-22T08:21:12+00:00" }, { - "name": "league/flysystem", - "version": "1.0.55", + "name": "league/commonmark", + "version": "1.4.3", "source": { "type": "git", - "url": "https://github.com/thephpleague/flysystem.git", - "reference": "33c91155537c6dc899eacdc54a13ac6303f156e6" + "url": "https://github.com/thephpleague/commonmark.git", + "reference": "412639f7cfbc0b31ad2455b2fe965095f66ae505" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/33c91155537c6dc899eacdc54a13ac6303f156e6", - "reference": "33c91155537c6dc899eacdc54a13ac6303f156e6", + "url": "https://api.github.com/repos/thephpleague/commonmark/zipball/412639f7cfbc0b31ad2455b2fe965095f66ae505", + "reference": "412639f7cfbc0b31ad2455b2fe965095f66ae505", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "php": "^7.1" + }, + "conflict": { + "scrutinizer/ocular": "1.7.*" + }, + "require-dev": { + "cebe/markdown": "~1.0", + "commonmark/commonmark.js": "0.29.1", + "erusev/parsedown": "~1.0", + "ext-json": "*", + "github/gfm": "0.29.0", + "michelf/php-markdown": "~1.4", + "mikehaertl/php-shellcommand": "^1.4", + "phpstan/phpstan": "^0.12", + "phpunit/phpunit": "^7.5", + "scrutinizer/ocular": "^1.5", + "symfony/finder": "^4.2" + }, + "bin": [ + "bin/commonmark" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.4-dev" + } + }, + "autoload": { + "psr-4": { + "League\\CommonMark\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Colin O'Dell", + "email": "colinodell@gmail.com", + "homepage": "https://www.colinodell.com", + "role": "Lead Developer" + } + ], + "description": "Highly-extensible PHP Markdown parser which fully supports the CommonMark spec and Github-Flavored Markdown (GFM)", + "homepage": "https://commonmark.thephpleague.com", + "keywords": [ + "commonmark", + "flavored", + "gfm", + "github", + "github-flavored", + "markdown", + "md", + "parser" + ], + "funding": [ + { + "url": "https://enjoy.gitstore.app/repositories/thephpleague/commonmark", + "type": "custom" + }, + { + "url": "https://www.colinodell.com/sponsor", + "type": "custom" + }, + { + "url": "https://www.paypal.me/colinpodell/10.00", + "type": "custom" + }, + { + "url": "https://github.com/colinodell", + "type": "github" + }, + { + "url": "https://www.patreon.com/colinodell", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/league/commonmark", + "type": "tidelift" + } + ], + "time": "2020-05-04T22:15:21+00:00" + }, + { + "name": "league/flysystem", + "version": "1.0.69", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/flysystem.git", + "reference": "7106f78428a344bc4f643c233a94e48795f10967" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/7106f78428a344bc4f643c233a94e48795f10967", + "reference": "7106f78428a344bc4f643c233a94e48795f10967", "shasum": "" }, "require": { @@ -1593,7 +2680,7 @@ }, "require-dev": { "phpspec/phpspec": "^3.4", - "phpunit/phpunit": "^5.7.10" + "phpunit/phpunit": "^5.7.26" }, "suggest": { "ext-fileinfo": "Required for MimeType", @@ -1652,25 +2739,78 @@ "sftp", "storage" ], - "time": "2019-08-24T11:17:19+00:00" + "funding": [ + { + "url": "https://offset.earth/frankdejonge", + "type": "other" + } + ], + "time": "2020-05-18T15:13:39+00:00" }, { - "name": "monolog/monolog", - "version": "1.25.1", + "name": "league/flysystem-cached-adapter", + "version": "1.0.9", "source": { "type": "git", - "url": "https://github.com/Seldaek/monolog.git", - "reference": "70e65a5470a42cfec1a7da00d30edb6e617e8dcf" + "url": "https://github.com/thephpleague/flysystem-cached-adapter.git", + "reference": "08ef74e9be88100807a3b92cc9048a312bf01d6f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Seldaek/monolog/zipball/70e65a5470a42cfec1a7da00d30edb6e617e8dcf", - "reference": "70e65a5470a42cfec1a7da00d30edb6e617e8dcf", + "url": "https://api.github.com/repos/thephpleague/flysystem-cached-adapter/zipball/08ef74e9be88100807a3b92cc9048a312bf01d6f", + "reference": "08ef74e9be88100807a3b92cc9048a312bf01d6f", "shasum": "" }, "require": { - "php": ">=5.3.0", - "psr/log": "~1.0" + "league/flysystem": "~1.0", + "psr/cache": "^1.0.0" + }, + "require-dev": { + "mockery/mockery": "~0.9", + "phpspec/phpspec": "^3.4", + "phpunit/phpunit": "^5.7", + "predis/predis": "~1.0", + "tedivm/stash": "~0.12" + }, + "suggest": { + "ext-phpredis": "Pure C implemented extension for PHP" + }, + "type": "library", + "autoload": { + "psr-4": { + "League\\Flysystem\\Cached\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "frankdejonge", + "email": "info@frenky.net" + } + ], + "description": "An adapter decorator to enable meta-data caching.", + "time": "2018-07-09T20:51:04+00:00" + }, + { + "name": "monolog/monolog", + "version": "2.1.0", + "source": { + "type": "git", + "url": "https://github.com/Seldaek/monolog.git", + "reference": "38914429aac460e8e4616c8cb486ecb40ec90bb1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Seldaek/monolog/zipball/38914429aac460e8e4616c8cb486ecb40ec90bb1", + "reference": "38914429aac460e8e4616c8cb486ecb40ec90bb1", + "shasum": "" + }, + "require": { + "php": ">=7.2", + "psr/log": "^1.0.1" }, "provide": { "psr/log-implementation": "1.0.0" @@ -1678,33 +2818,36 @@ "require-dev": { "aws/aws-sdk-php": "^2.4.9 || ^3.0", "doctrine/couchdb": "~1.0@dev", - "graylog2/gelf-php": "~1.0", - "jakub-onderka/php-parallel-lint": "0.9", + "elasticsearch/elasticsearch": "^6.0", + "graylog2/gelf-php": "^1.4.2", "php-amqplib/php-amqplib": "~2.4", "php-console/php-console": "^3.1.3", - "phpunit/phpunit": "~4.5", - "phpunit/phpunit-mock-objects": "2.3.0", + "php-parallel-lint/php-parallel-lint": "^1.0", + "phpspec/prophecy": "^1.6.1", + "phpunit/phpunit": "^8.5", + "predis/predis": "^1.1", + "rollbar/rollbar": "^1.3", "ruflin/elastica": ">=0.90 <3.0", - "sentry/sentry": "^0.13", "swiftmailer/swiftmailer": "^5.3|^6.0" }, "suggest": { "aws/aws-sdk-php": "Allow sending log messages to AWS services like DynamoDB", "doctrine/couchdb": "Allow sending log messages to a CouchDB server", + "elasticsearch/elasticsearch": "Allow sending log messages to an Elasticsearch server via official client", "ext-amqp": "Allow sending log messages to an AMQP server (1.0+ required)", - "ext-mongo": "Allow sending log messages to a MongoDB server", + "ext-mbstring": "Allow to work properly with unicode symbols", + "ext-mongodb": "Allow sending log messages to a MongoDB server (via driver)", "graylog2/gelf-php": "Allow sending log messages to a GrayLog2 server", - "mongodb/mongodb": "Allow sending log messages to a MongoDB server via PHP Driver", + "mongodb/mongodb": "Allow sending log messages to a MongoDB server (via library)", "php-amqplib/php-amqplib": "Allow sending log messages to an AMQP server using php-amqplib", "php-console/php-console": "Allow sending log messages to Google Chrome", "rollbar/rollbar": "Allow sending log messages to Rollbar", - "ruflin/elastica": "Allow sending log messages to an Elastic Search server", - "sentry/sentry": "Allow sending log messages to a Sentry server" + "ruflin/elastica": "Allow sending log messages to an Elastic Search server" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0.x-dev" + "dev-master": "2.x-dev" } }, "autoload": { @@ -1730,38 +2873,202 @@ "logging", "psr-3" ], - "time": "2019-09-06T13:49:17+00:00" + "funding": [ + { + "url": "https://github.com/Seldaek", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/monolog/monolog", + "type": "tidelift" + } + ], + "time": "2020-05-22T08:12:19+00:00" }, { - "name": "nesbot/carbon", - "version": "1.25.3", + "name": "moontoast/math", + "version": "1.2.1", "source": { "type": "git", - "url": "https://github.com/briannesbitt/Carbon.git", - "reference": "ad6afecd38ce2d7f7bd1b5d47ffd8e93ebbd3ed8" + "url": "https://github.com/ramsey/moontoast-math.git", + "reference": "5f47d34c87767dbcc08b30377a9827df71de91fa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/ad6afecd38ce2d7f7bd1b5d47ffd8e93ebbd3ed8", - "reference": "ad6afecd38ce2d7f7bd1b5d47ffd8e93ebbd3ed8", + "url": "https://api.github.com/repos/ramsey/moontoast-math/zipball/5f47d34c87767dbcc08b30377a9827df71de91fa", + "reference": "5f47d34c87767dbcc08b30377a9827df71de91fa", "shasum": "" }, "require": { - "kylekatarnls/update-helper": "^1.1", - "php": ">=5.3.9", - "symfony/translation": "~2.6 || ~3.0 || ~4.0" + "php": ">=5.3.3", + "phpseclib/bcmath_compat": ">=1.0.3" }, "require-dev": { - "composer/composer": "^1.2", - "friendsofphp/php-cs-fixer": "~2", - "phpunit/phpunit": "^4.8.35 || ^5.7" + "jakub-onderka/php-parallel-lint": "^0.9.0", + "phpunit/phpunit": "^4.8 || ^5.5 || ^6.5 || ^7.0", + "satooshi/php-coveralls": "^0.6.1", + "squizlabs/php_codesniffer": "^2.3" + }, + "type": "library", + "autoload": { + "psr-4": { + "Moontoast\\Math\\": "src/Moontoast/Math", + "Moontoast\\Math\\Exception\\": "src/Moontoast/Math/Exception" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "authors": [ + { + "name": "Ben Ramsey", + "email": "ben@benramsey.com", + "homepage": "https://benramsey.com" + } + ], + "description": "A mathematics library, providing functionality for large numbers", + "homepage": "https://github.com/ramsey/moontoast-math", + "keywords": [ + "bcmath", + "math" + ], + "abandoned": "brick/math", + "time": "2020-01-05T04:49:34+00:00" + }, + { + "name": "nao-pon/flysystem-cached-extra", + "version": "1.0.3", + "source": { + "type": "git", + "url": "https://github.com/nao-pon/flysystem-cached-extra.git", + "reference": "189abdafa0a86d92781e148ee8740ef80f4c5859" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nao-pon/flysystem-cached-extra/zipball/189abdafa0a86d92781e148ee8740ef80f4c5859", + "reference": "189abdafa0a86d92781e148ee8740ef80f4c5859", + "shasum": "" + }, + "require": { + "league/flysystem-cached-adapter": "~1.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0-dev" + } + }, + "autoload": { + "psr-4": { + "Hypweb\\Flysystem\\Cached\\Extra\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Naoki Sawada", + "email": "hypweb@gmail.com" + } + ], + "description": "Extra traits for Flysystem cached adapter", + "time": "2018-02-16T01:44:38+00:00" + }, + { + "name": "nao-pon/flysystem-google-drive", + "version": "1.1.12", + "source": { + "type": "git", + "url": "https://github.com/nao-pon/flysystem-google-drive.git", + "reference": "f55cd5edc52f767bb612c615189e2b52e459721d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nao-pon/flysystem-google-drive/zipball/f55cd5edc52f767bb612c615189e2b52e459721d", + "reference": "f55cd5edc52f767bb612c615189e2b52e459721d", + "shasum": "" + }, + "require": { + "google/apiclient": "^2.0", + "league/flysystem": "~1.0", + "nao-pon/flysystem-cached-extra": "~1.0", + "php": ">=5.4.0" + }, + "require-dev": { + "mockery/mockery": "0.9.*", + "phpunit/phpunit": "~4.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-api_v2": "1.0.x-dev", + "dev-master": "1.1.x-dev" + } + }, + "autoload": { + "psr-4": { + "Hypweb\\Flysystem\\GoogleDrive\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Naoki Sawada", + "email": "hypweb@gmail.com" + } + ], + "description": "Flysystem adapter for Google Drive", + "time": "2020-03-05T02:25:41+00:00" + }, + { + "name": "nesbot/carbon", + "version": "2.35.0", + "source": { + "type": "git", + "url": "https://github.com/briannesbitt/Carbon.git", + "reference": "4b9bd835261ef23d36397a46a76b496a458305e5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/4b9bd835261ef23d36397a46a76b496a458305e5", + "reference": "4b9bd835261ef23d36397a46a76b496a458305e5", + "shasum": "" + }, + "require": { + "ext-json": "*", + "php": "^7.1.8 || ^8.0", + "symfony/polyfill-mbstring": "^1.0", + "symfony/translation": "^3.4 || ^4.0 || ^5.0" + }, + "require-dev": { + "doctrine/orm": "^2.7", + "friendsofphp/php-cs-fixer": "^2.14 || ^3.0", + "kylekatarnls/multi-tester": "^1.1", + "phpmd/phpmd": "^2.8", + "phpstan/phpstan": "^0.11", + "phpunit/phpunit": "^7.5 || ^8.0", + "squizlabs/php_codesniffer": "^3.4" }, "bin": [ - "bin/upgrade-carbon" + "bin/carbon" ], "type": "library", "extra": { - "update-helper": "Carbon\\Upgrade" + "branch-alias": { + "dev-master": "2.x-dev", + "dev-3.x": "3.x-dev" + }, + "laravel": { + "providers": [ + "Carbon\\Laravel\\ServiceProvider" + ] + } }, "autoload": { "psr-4": { @@ -1777,42 +3084,102 @@ "name": "Brian Nesbitt", "email": "brian@nesbot.com", "homepage": "http://nesbot.com" + }, + { + "name": "kylekatarnls", + "homepage": "http://github.com/kylekatarnls" } ], - "description": "A simple API extension for DateTime.", + "description": "An API extension for DateTime that supports 281 different languages.", "homepage": "http://carbon.nesbot.com", "keywords": [ "date", "datetime", "time" ], - "time": "2019-06-03T17:56:44+00:00" + "funding": [ + { + "url": "https://opencollective.com/Carbon", + "type": "open_collective" + }, + { + "url": "https://tidelift.com/funding/github/packagist/nesbot/carbon", + "type": "tidelift" + } + ], + "time": "2020-05-24T18:27:52+00:00" }, { "name": "nexmo/client", - "version": "1.8.1", + "version": "2.0.0", "source": { "type": "git", - "url": "https://github.com/Nexmo/nexmo-php.git", - "reference": "182d41a02ebd3e4be147baea45458ccfe2f528c4" + "url": "https://github.com/Nexmo/nexmo-php-complete.git", + "reference": "664082abac14f6ab9ceec9abaf2e00aeb7c17333" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Nexmo/nexmo-php/zipball/182d41a02ebd3e4be147baea45458ccfe2f528c4", - "reference": "182d41a02ebd3e4be147baea45458ccfe2f528c4", + "url": "https://api.github.com/repos/Nexmo/nexmo-php-complete/zipball/664082abac14f6ab9ceec9abaf2e00aeb7c17333", + "reference": "664082abac14f6ab9ceec9abaf2e00aeb7c17333", + "shasum": "" + }, + "require": { + "nexmo/client-core": "^2.0", + "php": ">=7.1", + "php-http/guzzle6-adapter": "^2.0" + }, + "type": "library", + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Tim Lytle", + "email": "tim@nexmo.com", + "homepage": "http://twitter.com/tjlytle", + "role": "Developer" + }, + { + "name": "Michael Heap", + "email": "michael.heap@vonage.com", + "role": "Developer" + }, + { + "name": "Lorna Mitchell", + "email": "lorna.mitchell@vonage.com", + "role": "Developer" + } + ], + "description": "PHP Client for using Nexmo's API.", + "time": "2019-08-20T16:06:03+00:00" + }, + { + "name": "nexmo/client-core", + "version": "2.1.0", + "source": { + "type": "git", + "url": "https://github.com/Nexmo/nexmo-php.git", + "reference": "ef7e8a0715c93c5ddc7915e8a29f29331798bb52" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Nexmo/nexmo-php/zipball/ef7e8a0715c93c5ddc7915e8a29f29331798bb52", + "reference": "ef7e8a0715c93c5ddc7915e8a29f29331798bb52", "shasum": "" }, "require": { "lcobucci/jwt": "^3.2", - "php": ">=5.6", + "ocramius/package-versions": "^1.4", + "php": ">=7.1", "php-http/client-implementation": "^1.0", - "php-http/guzzle6-adapter": "^1.0", "zendframework/zend-diactoros": "^1.8.4 || ^2.0" }, "require-dev": { - "estahn/phpunit-json-assertions": "^1.0.0", + "estahn/phpunit-json-assertions": "^3.0.0", + "php-http/guzzle6-adapter": "^1.0", "php-http/mock-client": "^0.3.0", - "phpunit/phpunit": "^5.7", + "phpunit/phpunit": "^7.4", "squizlabs/php_codesniffer": "^3.1" }, "type": "library", @@ -1831,23 +3198,104 @@ "email": "tim@nexmo.com", "homepage": "http://twitter.com/tjlytle", "role": "Developer" + }, + { + "name": "Michael Heap", + "email": "michael.heap@vonage.com", + "role": "Developer" + }, + { + "name": "Lorna Mitchell", + "email": "lorna.mitchell@vonage.com", + "role": "Developer" + }, + { + "name": "Chris Tankersley", + "email": "chris.tankersley@vonage.com", + "role": "Developer" } ], "description": "PHP Client for using Nexmo's API.", - "time": "2019-05-13T20:27:43+00:00" + "time": "2019-10-18T08:19:04+00:00" }, { - "name": "nikic/php-parser", - "version": "v4.2.4", + "name": "nexmo/laravel", + "version": "2.2.0", "source": { "type": "git", - "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "97e59c7a16464196a8b9c77c47df68e4a39a45c4" + "url": "https://github.com/Nexmo/nexmo-laravel.git", + "reference": "57b62d985ae59d2f15f970883ea445b7fda56652" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/97e59c7a16464196a8b9c77c47df68e4a39a45c4", - "reference": "97e59c7a16464196a8b9c77c47df68e4a39a45c4", + "url": "https://api.github.com/repos/Nexmo/nexmo-laravel/zipball/57b62d985ae59d2f15f970883ea445b7fda56652", + "reference": "57b62d985ae59d2f15f970883ea445b7fda56652", + "shasum": "" + }, + "require": { + "illuminate/support": "^5.2|^6.0|^7.0", + "nexmo/client": "^2.0", + "php": "^5.6|^7.1" + }, + "require-dev": { + "orchestra/testbench": "~3.0|^4.0|^5.0", + "phpunit/phpunit": "^5.3|~6.0|~8.0" + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "Nexmo\\Laravel\\NexmoServiceProvider" + ], + "aliases": { + "Nexmo": "Nexmo\\Laravel\\Facade\\Nexmo" + } + } + }, + "autoload": { + "psr-4": { + "Nexmo\\Laravel\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Tim Lytle", + "email": "tim@nexmo.com", + "homepage": "http://twitter.com/tjlytle", + "role": "Developer" + }, + { + "name": "Michael Heap", + "email": "michael.heap@nexmo.com", + "homepage": "http://twitter.com/mheap", + "role": "Developer" + }, + { + "name": "Chris Tankersley", + "email": "chris.tankersley@nexmo.com", + "homepage": "http://twitter.com/dragonmantank", + "role": "Developer" + } + ], + "description": "Laravel Package for Nexmo's PHP Client", + "time": "2020-02-21T15:14:52+00:00" + }, + { + "name": "nikic/php-parser", + "version": "v4.5.0", + "source": { + "type": "git", + "url": "https://github.com/nikic/PHP-Parser.git", + "reference": "53c2753d756f5adb586dca79c2ec0e2654dd9463" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/53c2753d756f5adb586dca79c2ec0e2654dd9463", + "reference": "53c2753d756f5adb586dca79c2ec0e2654dd9463", "shasum": "" }, "require": { @@ -1855,6 +3303,7 @@ "php": ">=7.0" }, "require-dev": { + "ircmaxell/php-yacc": "0.0.5", "phpunit/phpunit": "^6.5 || ^7.0 || ^8.0" }, "bin": [ @@ -1863,7 +3312,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.2-dev" + "dev-master": "4.3-dev" } }, "autoload": { @@ -1885,7 +3334,129 @@ "parser", "php" ], - "time": "2019-09-01T07:51:21+00:00" + "time": "2020-06-03T07:24:19+00:00" + }, + { + "name": "ocramius/package-versions", + "version": "1.8.0", + "source": { + "type": "git", + "url": "https://github.com/Ocramius/PackageVersions.git", + "reference": "421679846270a5772534828013a93be709fb13df" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Ocramius/PackageVersions/zipball/421679846270a5772534828013a93be709fb13df", + "reference": "421679846270a5772534828013a93be709fb13df", + "shasum": "" + }, + "require": { + "composer-plugin-api": "^1.1.0 || ^2.0", + "php": "^7.4.0" + }, + "require-dev": { + "composer/composer": "^1.9.3 || ^2.0@dev", + "doctrine/coding-standard": "^7.0.2", + "ext-zip": "^1.15.0", + "infection/infection": "^0.15.3", + "phpunit/phpunit": "^9.0.1", + "vimeo/psalm": "^3.9.3" + }, + "type": "composer-plugin", + "extra": { + "class": "PackageVersions\\Installer", + "branch-alias": { + "dev-master": "1.99.x-dev" + } + }, + "autoload": { + "psr-4": { + "PackageVersions\\": "src/PackageVersions" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Marco Pivetta", + "email": "ocramius@gmail.com" + } + ], + "description": "Composer plugin that provides efficient querying for installed package versions (no runtime IO)", + "funding": [ + { + "url": "https://github.com/Ocramius", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/ocramius/package-versions", + "type": "tidelift" + } + ], + "time": "2020-04-06T17:43:35+00:00" + }, + { + "name": "opis/closure", + "version": "3.5.5", + "source": { + "type": "git", + "url": "https://github.com/opis/closure.git", + "reference": "dec9fc5ecfca93f45cd6121f8e6f14457dff372c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/opis/closure/zipball/dec9fc5ecfca93f45cd6121f8e6f14457dff372c", + "reference": "dec9fc5ecfca93f45cd6121f8e6f14457dff372c", + "shasum": "" + }, + "require": { + "php": "^5.4 || ^7.0" + }, + "require-dev": { + "jeremeamia/superclosure": "^2.0", + "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.5.x-dev" + } + }, + "autoload": { + "psr-4": { + "Opis\\Closure\\": "src/" + }, + "files": [ + "functions.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Marius Sarca", + "email": "marius.sarca@gmail.com" + }, + { + "name": "Sorin Sarca", + "email": "sarca_sorin@hotmail.com" + } + ], + "description": "A library that can be used to serialize closures (anonymous functions) and arbitrary objects.", + "homepage": "https://opis.io/closure", + "keywords": [ + "anonymous functions", + "closure", + "function", + "serializable", + "serialization", + "serialize" + ], + "time": "2020-06-17T14:59:55+00:00" }, { "name": "paragonie/random_compat", @@ -1933,21 +3504,103 @@ "time": "2018-07-02T15:55:56+00:00" }, { - "name": "phenx/php-font-lib", - "version": "0.5.1", + "name": "paragonie/sodium_compat", + "version": "v1.13.0", "source": { "type": "git", - "url": "https://github.com/PhenX/php-font-lib.git", - "reference": "760148820110a1ae0936e5cc35851e25a938bc97" + "url": "https://github.com/paragonie/sodium_compat.git", + "reference": "bbade402cbe84c69b718120911506a3aa2bae653" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PhenX/php-font-lib/zipball/760148820110a1ae0936e5cc35851e25a938bc97", - "reference": "760148820110a1ae0936e5cc35851e25a938bc97", + "url": "https://api.github.com/repos/paragonie/sodium_compat/zipball/bbade402cbe84c69b718120911506a3aa2bae653", + "reference": "bbade402cbe84c69b718120911506a3aa2bae653", + "shasum": "" + }, + "require": { + "paragonie/random_compat": ">=1", + "php": "^5.2.4|^5.3|^5.4|^5.5|^5.6|^7|^8" + }, + "require-dev": { + "phpunit/phpunit": "^3|^4|^5|^6|^7" + }, + "suggest": { + "ext-libsodium": "PHP < 7.0: Better performance, password hashing (Argon2i), secure memory management (memzero), and better security.", + "ext-sodium": "PHP >= 7.0: Better performance, password hashing (Argon2i), secure memory management (memzero), and better security." + }, + "type": "library", + "autoload": { + "files": [ + "autoload.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "ISC" + ], + "authors": [ + { + "name": "Paragon Initiative Enterprises", + "email": "security@paragonie.com" + }, + { + "name": "Frank Denis", + "email": "jedisct1@pureftpd.org" + } + ], + "description": "Pure PHP implementation of libsodium; uses the PHP extension if it exists", + "keywords": [ + "Authentication", + "BLAKE2b", + "ChaCha20", + "ChaCha20-Poly1305", + "Chapoly", + "Curve25519", + "Ed25519", + "EdDSA", + "Edwards-curve Digital Signature Algorithm", + "Elliptic Curve Diffie-Hellman", + "Poly1305", + "Pure-PHP cryptography", + "RFC 7748", + "RFC 8032", + "Salpoly", + "Salsa20", + "X25519", + "XChaCha20-Poly1305", + "XSalsa20-Poly1305", + "Xchacha20", + "Xsalsa20", + "aead", + "cryptography", + "ecdh", + "elliptic curve", + "elliptic curve cryptography", + "encryption", + "libsodium", + "php", + "public-key cryptography", + "secret-key cryptography", + "side-channel resistant" + ], + "time": "2020-03-20T21:48:09+00:00" + }, + { + "name": "phenx/php-font-lib", + "version": "0.5.2", + "source": { + "type": "git", + "url": "https://github.com/PhenX/php-font-lib.git", + "reference": "ca6ad461f032145fff5971b5985e5af9e7fa88d8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/PhenX/php-font-lib/zipball/ca6ad461f032145fff5971b5985e5af9e7fa88d8", + "reference": "ca6ad461f032145fff5971b5985e5af9e7fa88d8", "shasum": "" }, "require-dev": { - "phpunit/phpunit": "^4.8" + "phpunit/phpunit": "^4.8.35 || ^5 || ^6 || ^7" }, "type": "library", "autoload": { @@ -1967,32 +3620,32 @@ ], "description": "A library to read, parse, export and make subsets of different types of font files.", "homepage": "https://github.com/PhenX/php-font-lib", - "time": "2017-09-13T16:14:37+00:00" + "time": "2020-03-08T15:31:32+00:00" }, { "name": "phenx/php-svg-lib", - "version": "v0.3.2", + "version": "v0.3.3", "source": { "type": "git", "url": "https://github.com/PhenX/php-svg-lib.git", - "reference": "ccc46ef6340d4b8a4a68047e68d8501ea961442c" + "reference": "5fa61b65e612ce1ae15f69b3d223cb14ecc60e32" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PhenX/php-svg-lib/zipball/ccc46ef6340d4b8a4a68047e68d8501ea961442c", - "reference": "ccc46ef6340d4b8a4a68047e68d8501ea961442c", + "url": "https://api.github.com/repos/PhenX/php-svg-lib/zipball/5fa61b65e612ce1ae15f69b3d223cb14ecc60e32", + "reference": "5fa61b65e612ce1ae15f69b3d223cb14ecc60e32", "shasum": "" }, "require": { - "sabberworm/php-css-parser": "8.1.*" + "sabberworm/php-css-parser": "^8.3" }, "require-dev": { - "phpunit/phpunit": "~5.0" + "phpunit/phpunit": "^5.5|^6.5" }, "type": "library", "autoload": { - "psr-0": { - "Svg\\": "src/" + "psr-4": { + "Svg\\": "src/Svg" } }, "notification-url": "https://packagist.org/downloads/", @@ -2007,39 +3660,42 @@ ], "description": "A library to read, parse and export to PDF SVG files.", "homepage": "https://github.com/PhenX/php-svg-lib", - "time": "2018-06-03T10:10:03+00:00" + "time": "2019-09-11T20:02:13+00:00" }, { "name": "php-http/guzzle6-adapter", - "version": "v1.1.1", + "version": "v2.0.1", "source": { "type": "git", "url": "https://github.com/php-http/guzzle6-adapter.git", - "reference": "a56941f9dc6110409cfcddc91546ee97039277ab" + "reference": "6074a4b1f4d5c21061b70bab3b8ad484282fe31f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-http/guzzle6-adapter/zipball/a56941f9dc6110409cfcddc91546ee97039277ab", - "reference": "a56941f9dc6110409cfcddc91546ee97039277ab", + "url": "https://api.github.com/repos/php-http/guzzle6-adapter/zipball/6074a4b1f4d5c21061b70bab3b8ad484282fe31f", + "reference": "6074a4b1f4d5c21061b70bab3b8ad484282fe31f", "shasum": "" }, "require": { "guzzlehttp/guzzle": "^6.0", - "php": ">=5.5.0", - "php-http/httplug": "^1.0" + "php": "^7.1", + "php-http/httplug": "^2.0", + "psr/http-client": "^1.0" }, "provide": { "php-http/async-client-implementation": "1.0", - "php-http/client-implementation": "1.0" + "php-http/client-implementation": "1.0", + "psr/http-client-implementation": "1.0" }, "require-dev": { "ext-curl": "*", - "php-http/adapter-integration-tests": "^0.4" + "php-http/client-integration-tests": "^2.0", + "phpunit/phpunit": "^7.4" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.2-dev" + "dev-master": "2.x-dev" } }, "autoload": { @@ -2067,35 +3723,36 @@ "Guzzle", "http" ], - "time": "2016-05-10T06:13:32+00:00" + "time": "2018-12-16T14:44:03+00:00" }, { "name": "php-http/httplug", - "version": "v1.1.0", + "version": "2.1.0", "source": { "type": "git", "url": "https://github.com/php-http/httplug.git", - "reference": "1c6381726c18579c4ca2ef1ec1498fdae8bdf018" + "reference": "72d2b129a48f0490d55b7f89be0d6aa0597ffb06" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-http/httplug/zipball/1c6381726c18579c4ca2ef1ec1498fdae8bdf018", - "reference": "1c6381726c18579c4ca2ef1ec1498fdae8bdf018", + "url": "https://api.github.com/repos/php-http/httplug/zipball/72d2b129a48f0490d55b7f89be0d6aa0597ffb06", + "reference": "72d2b129a48f0490d55b7f89be0d6aa0597ffb06", "shasum": "" }, "require": { - "php": ">=5.4", + "php": "^7.0", "php-http/promise": "^1.0", + "psr/http-client": "^1.0", "psr/http-message": "^1.0" }, "require-dev": { - "henrikbjorn/phpspec-code-coverage": "^1.0", - "phpspec/phpspec": "^2.4" + "friends-of-phpspec/phpspec-code-coverage": "^4.1", + "phpspec/phpspec": "^4.3.4|^5.0|^6.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.1-dev" + "dev-master": "2.x-dev" } }, "autoload": { @@ -2123,7 +3780,7 @@ "client", "http" ], - "time": "2016-08-31T08:30:17+00:00" + "time": "2019-12-27T10:07:11+00:00" }, { "name": "php-http/promise", @@ -2175,6 +3832,404 @@ ], "time": "2016-01-26T13:27:02+00:00" }, + { + "name": "phpoption/phpoption", + "version": "1.7.4", + "source": { + "type": "git", + "url": "https://github.com/schmittjoh/php-option.git", + "reference": "b2ada2ad5d8a32b89088b8adc31ecd2e3a13baf3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/schmittjoh/php-option/zipball/b2ada2ad5d8a32b89088b8adc31ecd2e3a13baf3", + "reference": "b2ada2ad5d8a32b89088b8adc31ecd2e3a13baf3", + "shasum": "" + }, + "require": { + "php": "^5.5.9 || ^7.0 || ^8.0" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.3", + "phpunit/phpunit": "^4.8.35 || ^5.0 || ^6.0 || ^7.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.7-dev" + } + }, + "autoload": { + "psr-4": { + "PhpOption\\": "src/PhpOption/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "authors": [ + { + "name": "Johannes M. Schmitt", + "email": "schmittjoh@gmail.com" + }, + { + "name": "Graham Campbell", + "email": "graham@alt-three.com" + } + ], + "description": "Option Type for PHP", + "keywords": [ + "language", + "option", + "php", + "type" + ], + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/phpoption/phpoption", + "type": "tidelift" + } + ], + "time": "2020-06-07T10:40:07+00:00" + }, + { + "name": "phpseclib/bcmath_compat", + "version": "1.0.5", + "source": { + "type": "git", + "url": "https://github.com/phpseclib/bcmath_compat.git", + "reference": "89cbb63742a32730b7187773a60b6b12b9db4479" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpseclib/bcmath_compat/zipball/89cbb63742a32730b7187773a60b6b12b9db4479", + "reference": "89cbb63742a32730b7187773a60b6b12b9db4479", + "shasum": "" + }, + "require": { + "phpseclib/phpseclib": ">=2.0.19" + }, + "provide": { + "ext-bcmath": "7.3.5" + }, + "require-dev": { + "phpunit/phpunit": "^4.8.35|^5.7|^6.0", + "squizlabs/php_codesniffer": "^3.0" + }, + "suggest": { + "ext-gmp": "Will enable faster math operations" + }, + "type": "library", + "autoload": { + "files": [ + "lib/bcmath.php" + ], + "psr-4": { + "bcmath_compat\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jim Wigginton", + "email": "terrafrost@php.net", + "homepage": "http://phpseclib.sourceforge.net" + } + ], + "description": "PHP 5.x/7.x polyfill for bcmath extension", + "keywords": [ + "BigInteger", + "bcmath", + "bigdecimal", + "math", + "polyfill" + ], + "time": "2020-04-26T16:34:33+00:00" + }, + { + "name": "phpseclib/phpseclib", + "version": "2.0.27", + "source": { + "type": "git", + "url": "https://github.com/phpseclib/phpseclib.git", + "reference": "34620af4df7d1988d8f0d7e91f6c8a3bf931d8dc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/34620af4df7d1988d8f0d7e91f6c8a3bf931d8dc", + "reference": "34620af4df7d1988d8f0d7e91f6c8a3bf931d8dc", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "require-dev": { + "phing/phing": "~2.7", + "phpunit/phpunit": "^4.8.35|^5.7|^6.0", + "sami/sami": "~2.0", + "squizlabs/php_codesniffer": "~2.0" + }, + "suggest": { + "ext-gmp": "Install the GMP (GNU Multiple Precision) extension in order to speed up arbitrary precision integer arithmetic operations.", + "ext-libsodium": "SSH2/SFTP can make use of some algorithms provided by the libsodium-php extension.", + "ext-mcrypt": "Install the Mcrypt extension in order to speed up a few other cryptographic operations.", + "ext-openssl": "Install the OpenSSL extension in order to speed up a wide variety of cryptographic operations." + }, + "type": "library", + "autoload": { + "files": [ + "phpseclib/bootstrap.php" + ], + "psr-4": { + "phpseclib\\": "phpseclib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jim Wigginton", + "email": "terrafrost@php.net", + "role": "Lead Developer" + }, + { + "name": "Patrick Monnerat", + "email": "pm@datasphere.ch", + "role": "Developer" + }, + { + "name": "Andreas Fischer", + "email": "bantu@phpbb.com", + "role": "Developer" + }, + { + "name": "Hans-Jürgen Petrich", + "email": "petrich@tronic-media.com", + "role": "Developer" + }, + { + "name": "Graham Campbell", + "email": "graham@alt-three.com", + "role": "Developer" + } + ], + "description": "PHP Secure Communications Library - Pure-PHP implementations of RSA, AES, SSH2, SFTP, X.509 etc.", + "homepage": "http://phpseclib.sourceforge.net", + "keywords": [ + "BigInteger", + "aes", + "asn.1", + "asn1", + "blowfish", + "crypto", + "cryptography", + "encryption", + "rsa", + "security", + "sftp", + "signature", + "signing", + "ssh", + "twofish", + "x.509", + "x509" + ], + "funding": [ + { + "url": "https://github.com/terrafrost", + "type": "github" + }, + { + "url": "https://www.patreon.com/phpseclib", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/phpseclib/phpseclib", + "type": "tidelift" + } + ], + "time": "2020-04-04T23:17:33+00:00" + }, + { + "name": "pragmarx/version", + "version": "v1.2.2", + "source": { + "type": "git", + "url": "https://github.com/antonioribeiro/version.git", + "reference": "a3774a1820ecc987856dca993e7720c6b78dce85" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/antonioribeiro/version/zipball/a3774a1820ecc987856dca993e7720c6b78dce85", + "reference": "a3774a1820ecc987856dca993e7720c6b78dce85", + "shasum": "" + }, + "require": { + "laravel/framework": ">=5.5.33", + "php": "^7.0", + "pragmarx/yaml": "^1.0", + "symfony/process": "^3.3|^4.0|^5.0" + }, + "require-dev": { + "orchestra/testbench": "3.4.*|3.5.*|3.6.*|3.7.*|4.*|5.*", + "phpunit/phpunit": "~5|~6|~7|~8|~9" + }, + "type": "library", + "extra": { + "component": "package", + "laravel": { + "providers": [ + "PragmaRX\\Version\\Package\\ServiceProvider" + ], + "aliases": { + "Version": "PragmaRX\\Version\\Package\\Facade" + } + } + }, + "autoload": { + "psr-4": { + "PragmaRX\\Version\\Package\\": "src/package", + "PragmaRX\\Version\\Tests\\": "tests/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Antonio Carlos Ribeiro", + "email": "acr@antoniocarlosribeiro.com", + "role": "Creator & Designer" + } + ], + "description": "Take control over your Laravel app version", + "keywords": [ + "laravel", + "version", + "versioning" + ], + "time": "2020-05-07T18:46:01+00:00" + }, + { + "name": "pragmarx/yaml", + "version": "v1.2.1", + "source": { + "type": "git", + "url": "https://github.com/antonioribeiro/yaml.git", + "reference": "9f2b44c4a31f8a71bab77169205aee7184ae3ef4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/antonioribeiro/yaml/zipball/9f2b44c4a31f8a71bab77169205aee7184ae3ef4", + "reference": "9f2b44c4a31f8a71bab77169205aee7184ae3ef4", + "shasum": "" + }, + "require": { + "illuminate/support": ">=5.5.33", + "php": ">=7.0", + "symfony/yaml": "^3.4|^4.0|^5.0" + }, + "require-dev": { + "orchestra/testbench": "3.5|^3.6|^4.0|^5.0", + "phpunit/phpunit": "^4.0|^6.4|^7.0|^8.0|^9.0" + }, + "suggest": { + "ext-yaml": "Required to use the PECL YAML." + }, + "type": "library", + "extra": { + "component": "package", + "laravel": { + "providers": [ + "PragmaRX\\Yaml\\Package\\ServiceProvider" + ], + "aliases": { + "Yaml": "PragmaRX\\Yaml\\Package\\Facade" + } + } + }, + "autoload": { + "psr-4": { + "PragmaRX\\Yaml\\Package\\": "src/package", + "PragmaRX\\Yaml\\Tests\\": "tests/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Antonio Carlos Ribeiro", + "email": "acr@antoniocarlosribeiro.com", + "role": "Creator & Designer" + } + ], + "description": "Load your Laravel config files using yaml", + "keywords": [ + "config", + "laravel", + "yaml" + ], + "time": "2020-05-21T19:46:28+00:00" + }, + { + "name": "psr/cache", + "version": "1.0.1", + "source": { + "type": "git", + "url": "https://github.com/php-fig/cache.git", + "reference": "d11b50ad223250cf17b86e38383413f5a6764bf8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/cache/zipball/d11b50ad223250cf17b86e38383413f5a6764bf8", + "reference": "d11b50ad223250cf17b86e38383413f5a6764bf8", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Cache\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Common interface for caching libraries", + "keywords": [ + "cache", + "psr", + "psr-6" + ], + "time": "2016-08-06T20:24:11+00:00" + }, { "name": "psr/container", "version": "1.0.0", @@ -2224,6 +4279,101 @@ ], "time": "2017-02-14T16:28:37+00:00" }, + { + "name": "psr/event-dispatcher", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/event-dispatcher.git", + "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/event-dispatcher/zipball/dbefd12671e8a14ec7f180cab83036ed26714bb0", + "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0", + "shasum": "" + }, + "require": { + "php": ">=7.2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\EventDispatcher\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Standard interfaces for event handling.", + "keywords": [ + "events", + "psr", + "psr-14" + ], + "time": "2019-01-08T18:20:26+00:00" + }, + { + "name": "psr/http-client", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-client.git", + "reference": "496a823ef742b632934724bf769560c2a5c7c44e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-client/zipball/496a823ef742b632934724bf769560c2a5c7c44e", + "reference": "496a823ef742b632934724bf769560c2a5c7c44e", + "shasum": "" + }, + "require": { + "php": "^7.0", + "psr/http-message": "^1.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Http\\Client\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Common interface for HTTP clients", + "homepage": "https://github.com/php-fig/http-client", + "keywords": [ + "http", + "http-client", + "psr", + "psr-18" + ], + "time": "2018-10-30T23:29:13+00:00" + }, { "name": "psr/http-factory", "version": "1.0.1", @@ -2328,16 +4478,16 @@ }, { "name": "psr/log", - "version": "1.1.0", + "version": "1.1.3", "source": { "type": "git", "url": "https://github.com/php-fig/log.git", - "reference": "6c001f1daafa3a3ac1d8ff69ee4db8e799a654dd" + "reference": "0f73288fd15629204f9d42b7055f72dacbe811fc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/log/zipball/6c001f1daafa3a3ac1d8ff69ee4db8e799a654dd", - "reference": "6c001f1daafa3a3ac1d8ff69ee4db8e799a654dd", + "url": "https://api.github.com/repos/php-fig/log/zipball/0f73288fd15629204f9d42b7055f72dacbe811fc", + "reference": "0f73288fd15629204f9d42b7055f72dacbe811fc", "shasum": "" }, "require": { @@ -2346,7 +4496,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0.x-dev" + "dev-master": "1.1.x-dev" } }, "autoload": { @@ -2371,7 +4521,7 @@ "psr", "psr-3" ], - "time": "2018-11-20T15:27:04+00:00" + "time": "2020-03-23T09:12:05+00:00" }, { "name": "psr/simple-cache", @@ -2423,32 +4573,30 @@ }, { "name": "psy/psysh", - "version": "v0.9.9", + "version": "v0.10.4", "source": { "type": "git", "url": "https://github.com/bobthecow/psysh.git", - "reference": "9aaf29575bb8293206bb0420c1e1c87ff2ffa94e" + "reference": "a8aec1b2981ab66882a01cce36a49b6317dc3560" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/bobthecow/psysh/zipball/9aaf29575bb8293206bb0420c1e1c87ff2ffa94e", - "reference": "9aaf29575bb8293206bb0420c1e1c87ff2ffa94e", + "url": "https://api.github.com/repos/bobthecow/psysh/zipball/a8aec1b2981ab66882a01cce36a49b6317dc3560", + "reference": "a8aec1b2981ab66882a01cce36a49b6317dc3560", "shasum": "" }, "require": { - "dnoegel/php-xdg-base-dir": "0.1", + "dnoegel/php-xdg-base-dir": "0.1.*", "ext-json": "*", "ext-tokenizer": "*", - "jakub-onderka/php-console-highlighter": "0.3.*|0.4.*", - "nikic/php-parser": "~1.3|~2.0|~3.0|~4.0", - "php": ">=5.4.0", - "symfony/console": "~2.3.10|^2.4.2|~3.0|~4.0", - "symfony/var-dumper": "~2.7|~3.0|~4.0" + "nikic/php-parser": "~4.0|~3.0|~2.0|~1.3", + "php": "^8.0 || ^7.0 || ^5.5.9", + "symfony/console": "~5.0|~4.0|~3.0|^2.4.2|~2.3.10", + "symfony/var-dumper": "~5.0|~4.0|~3.0|~2.7" }, "require-dev": { "bamarni/composer-bin-plugin": "^1.2", - "hoa/console": "~2.15|~3.16", - "phpunit/phpunit": "~4.8.35|~5.0|~6.0|~7.0" + "hoa/console": "3.17.*" }, "suggest": { "ext-pcntl": "Enabling the PCNTL extension makes PsySH a lot happier :)", @@ -2463,7 +4611,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-develop": "0.9.x-dev" + "dev-master": "0.10.x-dev" } }, "autoload": { @@ -2493,7 +4641,61 @@ "interactive", "shell" ], - "time": "2018-10-13T15:16:03+00:00" + "time": "2020-05-03T19:32:03+00:00" + }, + { + "name": "pusher/pusher-php-server", + "version": "v4.1.4", + "source": { + "type": "git", + "url": "https://github.com/pusher/pusher-http-php.git", + "reference": "e75e5715e3b651ec20dee5844095aadefab81acb" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/pusher/pusher-http-php/zipball/e75e5715e3b651ec20dee5844095aadefab81acb", + "reference": "e75e5715e3b651ec20dee5844095aadefab81acb", + "shasum": "" + }, + "require": { + "ext-curl": "*", + "paragonie/sodium_compat": "^1.6", + "php": "^7.1", + "psr/log": "^1.0" + }, + "require-dev": { + "phpunit/phpunit": "^7.2" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.4-dev" + } + }, + "autoload": { + "psr-4": { + "Pusher\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Library for interacting with the Pusher REST API", + "keywords": [ + "events", + "messaging", + "php-pusher-server", + "publish", + "push", + "pusher", + "real time", + "real-time", + "realtime", + "rest", + "trigger" + ], + "time": "2020-04-14T15:20:04+00:00" }, { "name": "ralouphie/getallheaders", @@ -2536,57 +4738,41 @@ "time": "2019-03-08T08:55:37+00:00" }, { - "name": "ramsey/uuid", - "version": "3.8.0", + "name": "ramsey/collection", + "version": "1.0.1", "source": { "type": "git", - "url": "https://github.com/ramsey/uuid.git", - "reference": "d09ea80159c1929d75b3f9c60504d613aeb4a1e3" + "url": "https://github.com/ramsey/collection.git", + "reference": "925ad8cf55ba7a3fc92e332c58fd0478ace3e1ca" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ramsey/uuid/zipball/d09ea80159c1929d75b3f9c60504d613aeb4a1e3", - "reference": "d09ea80159c1929d75b3f9c60504d613aeb4a1e3", + "url": "https://api.github.com/repos/ramsey/collection/zipball/925ad8cf55ba7a3fc92e332c58fd0478ace3e1ca", + "reference": "925ad8cf55ba7a3fc92e332c58fd0478ace3e1ca", "shasum": "" }, "require": { - "paragonie/random_compat": "^1.0|^2.0|9.99.99", - "php": "^5.4 || ^7.0", - "symfony/polyfill-ctype": "^1.8" - }, - "replace": { - "rhumsaa/uuid": "self.version" + "php": "^7.2" }, "require-dev": { - "codeception/aspect-mock": "^1.0 | ~2.0.0", - "doctrine/annotations": "~1.2.0", - "goaop/framework": "1.0.0-alpha.2 | ^1.0 | ~2.1.0", - "ircmaxell/random-lib": "^1.1", - "jakub-onderka/php-parallel-lint": "^0.9.0", - "mockery/mockery": "^0.9.9", - "moontoast/math": "^1.1", - "php-mock/php-mock-phpunit": "^0.3|^1.1", - "phpunit/phpunit": "^4.7|^5.0|^6.5", - "squizlabs/php_codesniffer": "^2.3" - }, - "suggest": { - "ext-ctype": "Provides support for PHP Ctype functions", - "ext-libsodium": "Provides the PECL libsodium extension for use with the SodiumRandomGenerator", - "ext-uuid": "Provides the PECL UUID extension for use with the PeclUuidTimeGenerator and PeclUuidRandomGenerator", - "ircmaxell/random-lib": "Provides RandomLib for use with the RandomLibAdapter", - "moontoast/math": "Provides support for converting UUID to 128-bit integer (in string form).", - "ramsey/uuid-console": "A console application for generating UUIDs with ramsey/uuid", - "ramsey/uuid-doctrine": "Allows the use of Ramsey\\Uuid\\Uuid as Doctrine field type." + "dealerdirect/phpcodesniffer-composer-installer": "^0.5.0", + "fzaninotto/faker": "^1.5", + "jakub-onderka/php-parallel-lint": "^1", + "jangregor/phpstan-prophecy": "^0.6", + "mockery/mockery": "^1.3", + "phpstan/extension-installer": "^1", + "phpstan/phpdoc-parser": "0.4.1", + "phpstan/phpstan": "^0.12", + "phpstan/phpstan-mockery": "^0.12", + "phpstan/phpstan-phpunit": "^0.12", + "phpunit/phpunit": "^8.5", + "slevomat/coding-standard": "^6.0", + "squizlabs/php_codesniffer": "^3.5" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.x-dev" - } - }, "autoload": { "psr-4": { - "Ramsey\\Uuid\\": "src/" + "Ramsey\\Collection\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -2594,48 +4780,131 @@ "MIT" ], "authors": [ - { - "name": "Marijn Huizendveld", - "email": "marijn.huizendveld@gmail.com" - }, - { - "name": "Thibaud Fabre", - "email": "thibaud@aztech.io" - }, { "name": "Ben Ramsey", "email": "ben@benramsey.com", "homepage": "https://benramsey.com" } ], - "description": "Formerly rhumsaa/uuid. A PHP 5.4+ library for generating RFC 4122 version 1, 3, 4, and 5 universally unique identifiers (UUID).", + "description": "A PHP 7.2+ library for representing and manipulating collections.", + "homepage": "https://github.com/ramsey/collection", + "keywords": [ + "array", + "collection", + "hash", + "map", + "queue", + "set" + ], + "time": "2020-01-05T00:22:59+00:00" + }, + { + "name": "ramsey/uuid", + "version": "4.0.1", + "source": { + "type": "git", + "url": "https://github.com/ramsey/uuid.git", + "reference": "ba8fff1d3abb8bb4d35a135ed22a31c6ef3ede3d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/ramsey/uuid/zipball/ba8fff1d3abb8bb4d35a135ed22a31c6ef3ede3d", + "reference": "ba8fff1d3abb8bb4d35a135ed22a31c6ef3ede3d", + "shasum": "" + }, + "require": { + "brick/math": "^0.8", + "ext-json": "*", + "php": "^7.2 || ^8", + "ramsey/collection": "^1.0", + "symfony/polyfill-ctype": "^1.8" + }, + "replace": { + "rhumsaa/uuid": "self.version" + }, + "require-dev": { + "codeception/aspect-mock": "^3", + "dealerdirect/phpcodesniffer-composer-installer": "^0.6.2", + "doctrine/annotations": "^1.8", + "goaop/framework": "^2", + "mockery/mockery": "^1.3", + "moontoast/math": "^1.1", + "paragonie/random-lib": "^2", + "php-mock/php-mock-mockery": "^1.3", + "php-mock/php-mock-phpunit": "^2.5", + "php-parallel-lint/php-parallel-lint": "^1.1", + "phpstan/extension-installer": "^1.0", + "phpstan/phpdoc-parser": "0.4.3", + "phpstan/phpstan": "^0.12", + "phpstan/phpstan-mockery": "^0.12", + "phpstan/phpstan-phpunit": "^0.12", + "phpunit/phpunit": "^8.5", + "psy/psysh": "^0.10.0", + "slevomat/coding-standard": "^6.0", + "squizlabs/php_codesniffer": "^3.5", + "vimeo/psalm": "3.9.4" + }, + "suggest": { + "ext-bcmath": "Enables faster math with arbitrary-precision integers using BCMath.", + "ext-ctype": "Enables faster processing of character classification using ctype functions.", + "ext-gmp": "Enables faster math with arbitrary-precision integers using GMP.", + "ext-uuid": "Enables the use of PeclUuidTimeGenerator and PeclUuidRandomGenerator.", + "paragonie/random-lib": "Provides RandomLib for use with the RandomLibAdapter", + "ramsey/uuid-doctrine": "Allows the use of Ramsey\\Uuid\\Uuid as Doctrine field type." + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.x-dev" + } + }, + "autoload": { + "psr-4": { + "Ramsey\\Uuid\\": "src/" + }, + "files": [ + "src/functions.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "A PHP library for generating and working with universally unique identifiers (UUIDs).", "homepage": "https://github.com/ramsey/uuid", "keywords": [ "guid", "identifier", "uuid" ], - "time": "2018-07-19T23:38:55+00:00" + "funding": [ + { + "url": "https://github.com/ramsey", + "type": "github" + } + ], + "time": "2020-03-29T20:13:32+00:00" }, { "name": "sabberworm/php-css-parser", - "version": "8.1.0", + "version": "8.3.1", "source": { "type": "git", "url": "https://github.com/sabberworm/PHP-CSS-Parser.git", - "reference": "850cbbcbe7fbb155387a151ea562897a67e242ef" + "reference": "d217848e1396ef962fb1997cf3e2421acba7f796" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sabberworm/PHP-CSS-Parser/zipball/850cbbcbe7fbb155387a151ea562897a67e242ef", - "reference": "850cbbcbe7fbb155387a151ea562897a67e242ef", + "url": "https://api.github.com/repos/sabberworm/PHP-CSS-Parser/zipball/d217848e1396ef962fb1997cf3e2421acba7f796", + "reference": "d217848e1396ef962fb1997cf3e2421acba7f796", "shasum": "" }, "require": { "php": ">=5.3.2" }, "require-dev": { - "phpunit/phpunit": "*" + "codacy/coverage": "^1.4", + "phpunit/phpunit": "~4.8" }, "type": "library", "autoload": { @@ -2659,24 +4928,99 @@ "parser", "stylesheet" ], - "time": "2016-07-19T19:14:21+00:00" + "time": "2020-06-01T09:10:00+00:00" }, { - "name": "seld/jsonlint", - "version": "1.7.1", + "name": "scrivo/highlight.php", + "version": "v9.18.1.1", "source": { "type": "git", - "url": "https://github.com/Seldaek/jsonlint.git", - "reference": "d15f59a67ff805a44c50ea0516d2341740f81a38" + "url": "https://github.com/scrivo/highlight.php.git", + "reference": "52fc21c99fd888e33aed4879e55a3646f8d40558" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Seldaek/jsonlint/zipball/d15f59a67ff805a44c50ea0516d2341740f81a38", - "reference": "d15f59a67ff805a44c50ea0516d2341740f81a38", + "url": "https://api.github.com/repos/scrivo/highlight.php/zipball/52fc21c99fd888e33aed4879e55a3646f8d40558", + "reference": "52fc21c99fd888e33aed4879e55a3646f8d40558", "shasum": "" }, "require": { - "php": "^5.3 || ^7.0" + "ext-json": "*", + "ext-mbstring": "*", + "php": ">=5.4" + }, + "require-dev": { + "phpunit/phpunit": "^4.8|^5.7", + "sabberworm/php-css-parser": "^8.3", + "symfony/finder": "^2.8|^3.4", + "symfony/var-dumper": "^2.8|^3.4" + }, + "suggest": { + "ext-dom": "Needed to make use of the features in the utilities namespace" + }, + "type": "library", + "autoload": { + "psr-0": { + "Highlight\\": "", + "HighlightUtilities\\": "" + }, + "files": [ + "HighlightUtilities/functions.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Geert Bergman", + "homepage": "http://www.scrivo.org/", + "role": "Project Author" + }, + { + "name": "Vladimir Jimenez", + "homepage": "https://allejo.io", + "role": "Maintainer" + }, + { + "name": "Martin Folkers", + "homepage": "https://twobrain.io", + "role": "Contributor" + } + ], + "description": "Server side syntax highlighter that supports 185 languages. It's a PHP port of highlight.js", + "keywords": [ + "code", + "highlight", + "highlight.js", + "highlight.php", + "syntax" + ], + "funding": [ + { + "url": "https://github.com/allejo", + "type": "github" + } + ], + "time": "2020-03-02T05:59:21+00:00" + }, + { + "name": "seld/jsonlint", + "version": "1.8.0", + "source": { + "type": "git", + "url": "https://github.com/Seldaek/jsonlint.git", + "reference": "ff2aa5420bfbc296cf6a0bc785fa5b35736de7c1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Seldaek/jsonlint/zipball/ff2aa5420bfbc296cf6a0bc785fa5b35736de7c1", + "reference": "ff2aa5420bfbc296cf6a0bc785fa5b35736de7c1", + "shasum": "" + }, + "require": { + "php": "^5.3 || ^7.0 || ^8.0" }, "require-dev": { "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0" @@ -2708,20 +5052,30 @@ "parser", "validator" ], - "time": "2018-01-24T12:46:19+00:00" + "funding": [ + { + "url": "https://github.com/Seldaek", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/seld/jsonlint", + "type": "tidelift" + } + ], + "time": "2020-04-30T19:05:18+00:00" }, { "name": "seld/phar-utils", - "version": "1.0.1", + "version": "1.1.0", "source": { "type": "git", "url": "https://github.com/Seldaek/phar-utils.git", - "reference": "7009b5139491975ef6486545a39f3e6dad5ac30a" + "reference": "8800503d56b9867d43d9c303b9cbcc26016e82f0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Seldaek/phar-utils/zipball/7009b5139491975ef6486545a39f3e6dad5ac30a", - "reference": "7009b5139491975ef6486545a39f3e6dad5ac30a", + "url": "https://api.github.com/repos/Seldaek/phar-utils/zipball/8800503d56b9867d43d9c303b9cbcc26016e82f0", + "reference": "8800503d56b9867d43d9c303b9cbcc26016e82f0", "shasum": "" }, "require": { @@ -2750,22 +5104,22 @@ ], "description": "PHAR file format utilities, for when PHP phars you up", "keywords": [ - "phra" + "phar" ], - "time": "2015-10-13T18:44:15+00:00" + "time": "2020-02-14T15:25:33+00:00" }, { "name": "swiftmailer/swiftmailer", - "version": "v6.2.1", + "version": "v6.2.3", "source": { "type": "git", "url": "https://github.com/swiftmailer/swiftmailer.git", - "reference": "5397cd05b0a0f7937c47b0adcb4c60e5ab936b6a" + "reference": "149cfdf118b169f7840bbe3ef0d4bc795d1780c9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/swiftmailer/swiftmailer/zipball/5397cd05b0a0f7937c47b0adcb4c60e5ab936b6a", - "reference": "5397cd05b0a0f7937c47b0adcb4c60e5ab936b6a", + "url": "https://api.github.com/repos/swiftmailer/swiftmailer/zipball/149cfdf118b169f7840bbe3ef0d4bc795d1780c9", + "reference": "149cfdf118b169f7840bbe3ef0d4bc795d1780c9", "shasum": "" }, "require": { @@ -2814,44 +5168,48 @@ "mail", "mailer" ], - "time": "2019-04-21T09:21:45+00:00" + "time": "2019-11-12T09:31:26+00:00" }, { "name": "symfony/console", - "version": "v4.3.4", + "version": "v5.1.2", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "de63799239b3881b8a08f8481b22348f77ed7b36" + "reference": "34ac555a3627e324b660e318daa07572e1140123" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/de63799239b3881b8a08f8481b22348f77ed7b36", - "reference": "de63799239b3881b8a08f8481b22348f77ed7b36", + "url": "https://api.github.com/repos/symfony/console/zipball/34ac555a3627e324b660e318daa07572e1140123", + "reference": "34ac555a3627e324b660e318daa07572e1140123", "shasum": "" }, "require": { - "php": "^7.1.3", + "php": ">=7.2.5", "symfony/polyfill-mbstring": "~1.0", "symfony/polyfill-php73": "^1.8", - "symfony/service-contracts": "^1.1" + "symfony/polyfill-php80": "^1.15", + "symfony/service-contracts": "^1.1|^2", + "symfony/string": "^5.1" }, "conflict": { - "symfony/dependency-injection": "<3.4", - "symfony/event-dispatcher": "<4.3", - "symfony/process": "<3.3" + "symfony/dependency-injection": "<4.4", + "symfony/dotenv": "<5.1", + "symfony/event-dispatcher": "<4.4", + "symfony/lock": "<4.4", + "symfony/process": "<4.4" }, "provide": { "psr/log-implementation": "1.0" }, "require-dev": { "psr/log": "~1.0", - "symfony/config": "~3.4|~4.0", - "symfony/dependency-injection": "~3.4|~4.0", - "symfony/event-dispatcher": "^4.3", - "symfony/lock": "~3.4|~4.0", - "symfony/process": "~3.4|~4.0", - "symfony/var-dumper": "^4.3" + "symfony/config": "^4.4|^5.0", + "symfony/dependency-injection": "^4.4|^5.0", + "symfony/event-dispatcher": "^4.4|^5.0", + "symfony/lock": "^4.4|^5.0", + "symfony/process": "^4.4|^5.0", + "symfony/var-dumper": "^4.4|^5.0" }, "suggest": { "psr/log": "For using the console logger", @@ -2862,7 +5220,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.3-dev" + "dev-master": "5.1-dev" } }, "autoload": { @@ -2889,29 +5247,43 @@ ], "description": "Symfony Console Component", "homepage": "https://symfony.com", - "time": "2019-08-26T08:26:39+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-06-15T12:59:21+00:00" }, { "name": "symfony/css-selector", - "version": "v4.3.4", + "version": "v5.1.2", "source": { "type": "git", "url": "https://github.com/symfony/css-selector.git", - "reference": "c6e5e2a00db768c92c3ae131532af4e1acc7bd03" + "reference": "e544e24472d4c97b2d11ade7caacd446727c6bf9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/css-selector/zipball/c6e5e2a00db768c92c3ae131532af4e1acc7bd03", - "reference": "c6e5e2a00db768c92c3ae131532af4e1acc7bd03", + "url": "https://api.github.com/repos/symfony/css-selector/zipball/e544e24472d4c97b2d11ade7caacd446727c6bf9", + "reference": "e544e24472d4c97b2d11ade7caacd446727c6bf9", "shasum": "" }, "require": { - "php": "^7.1.3" + "php": ">=7.2.5" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.3-dev" + "dev-master": "5.1-dev" } }, "autoload": { @@ -2942,41 +5314,116 @@ ], "description": "Symfony CssSelector Component", "homepage": "https://symfony.com", - "time": "2019-08-20T14:07:54+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-05-20T17:43:50+00:00" }, { - "name": "symfony/debug", - "version": "v4.3.4", + "name": "symfony/deprecation-contracts", + "version": "v2.1.2", "source": { "type": "git", - "url": "https://github.com/symfony/debug.git", - "reference": "afcdea44a2e399c1e4b52246ec8d54c715393ced" + "url": "https://github.com/symfony/deprecation-contracts.git", + "reference": "dd99cb3a0aff6cadd2a8d7d7ed72c2161e218337" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/debug/zipball/afcdea44a2e399c1e4b52246ec8d54c715393ced", - "reference": "afcdea44a2e399c1e4b52246ec8d54c715393ced", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/dd99cb3a0aff6cadd2a8d7d7ed72c2161e218337", + "reference": "dd99cb3a0aff6cadd2a8d7d7ed72c2161e218337", "shasum": "" }, "require": { - "php": "^7.1.3", - "psr/log": "~1.0" - }, - "conflict": { - "symfony/http-kernel": "<3.4" - }, - "require-dev": { - "symfony/http-kernel": "~3.4|~4.0" + "php": ">=7.1" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.3-dev" + "dev-master": "2.1-dev" + } + }, + "autoload": { + "files": [ + "function.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "A generic function and convention to trigger deprecation notices", + "homepage": "https://symfony.com", + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-05-27T08:34:37+00:00" + }, + { + "name": "symfony/error-handler", + "version": "v5.1.2", + "source": { + "type": "git", + "url": "https://github.com/symfony/error-handler.git", + "reference": "7d0b927b9d3dc41d7d46cda38cbfcd20cdcbb896" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/error-handler/zipball/7d0b927b9d3dc41d7d46cda38cbfcd20cdcbb896", + "reference": "7d0b927b9d3dc41d7d46cda38cbfcd20cdcbb896", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "psr/log": "^1.0", + "symfony/polyfill-php80": "^1.15", + "symfony/var-dumper": "^4.4|^5.0" + }, + "require-dev": { + "symfony/deprecation-contracts": "^2.1", + "symfony/http-kernel": "^4.4|^5.0", + "symfony/serializer": "^4.4|^5.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "5.1-dev" } }, "autoload": { "psr-4": { - "Symfony\\Component\\Debug\\": "" + "Symfony\\Component\\ErrorHandler\\": "" }, "exclude-from-classmap": [ "/Tests/" @@ -2996,43 +5443,59 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony Debug Component", + "description": "Symfony ErrorHandler Component", "homepage": "https://symfony.com", - "time": "2019-08-20T14:27:59+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-05-30T20:35:19+00:00" }, { "name": "symfony/event-dispatcher", - "version": "v4.3.4", + "version": "v5.1.2", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "429d0a1451d4c9c4abe1959b2986b88794b9b7d2" + "reference": "cc0d059e2e997e79ca34125a52f3e33de4424ac7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/429d0a1451d4c9c4abe1959b2986b88794b9b7d2", - "reference": "429d0a1451d4c9c4abe1959b2986b88794b9b7d2", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/cc0d059e2e997e79ca34125a52f3e33de4424ac7", + "reference": "cc0d059e2e997e79ca34125a52f3e33de4424ac7", "shasum": "" }, "require": { - "php": "^7.1.3", - "symfony/event-dispatcher-contracts": "^1.1" + "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1", + "symfony/event-dispatcher-contracts": "^2", + "symfony/polyfill-php80": "^1.15" }, "conflict": { - "symfony/dependency-injection": "<3.4" + "symfony/dependency-injection": "<4.4" }, "provide": { "psr/event-dispatcher-implementation": "1.0", - "symfony/event-dispatcher-implementation": "1.1" + "symfony/event-dispatcher-implementation": "2.0" }, "require-dev": { "psr/log": "~1.0", - "symfony/config": "~3.4|~4.0", - "symfony/dependency-injection": "~3.4|~4.0", - "symfony/expression-language": "~3.4|~4.0", - "symfony/http-foundation": "^3.4|^4.0", - "symfony/service-contracts": "^1.1", - "symfony/stopwatch": "~3.4|~4.0" + "symfony/config": "^4.4|^5.0", + "symfony/dependency-injection": "^4.4|^5.0", + "symfony/expression-language": "^4.4|^5.0", + "symfony/http-foundation": "^4.4|^5.0", + "symfony/service-contracts": "^1.1|^2", + "symfony/stopwatch": "^4.4|^5.0" }, "suggest": { "symfony/dependency-injection": "", @@ -3041,7 +5504,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.3-dev" + "dev-master": "5.1-dev" } }, "autoload": { @@ -3068,33 +5531,47 @@ ], "description": "Symfony EventDispatcher Component", "homepage": "https://symfony.com", - "time": "2019-08-26T08:55:16+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-05-20T17:43:50+00:00" }, { "name": "symfony/event-dispatcher-contracts", - "version": "v1.1.5", + "version": "v2.1.2", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher-contracts.git", - "reference": "c61766f4440ca687de1084a5c00b08e167a2575c" + "reference": "405952c4e90941a17e52ef7489a2bd94870bb290" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/c61766f4440ca687de1084a5c00b08e167a2575c", - "reference": "c61766f4440ca687de1084a5c00b08e167a2575c", + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/405952c4e90941a17e52ef7489a2bd94870bb290", + "reference": "405952c4e90941a17e52ef7489a2bd94870bb290", "shasum": "" }, "require": { - "php": "^7.1.3" + "php": ">=7.2.5", + "psr/event-dispatcher": "^1" }, "suggest": { - "psr/event-dispatcher": "", "symfony/event-dispatcher-implementation": "" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.1-dev" + "dev-master": "2.1-dev" } }, "autoload": { @@ -3126,30 +5603,44 @@ "interoperability", "standards" ], - "time": "2019-06-20T06:46:26+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-05-20T17:43:50+00:00" }, { "name": "symfony/filesystem", - "version": "v4.3.4", + "version": "v5.1.2", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "9abbb7ef96a51f4d7e69627bc6f63307994e4263" + "reference": "6e4320f06d5f2cce0d96530162491f4465179157" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/9abbb7ef96a51f4d7e69627bc6f63307994e4263", - "reference": "9abbb7ef96a51f4d7e69627bc6f63307994e4263", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/6e4320f06d5f2cce0d96530162491f4465179157", + "reference": "6e4320f06d5f2cce0d96530162491f4465179157", "shasum": "" }, "require": { - "php": "^7.1.3", + "php": ">=7.2.5", "symfony/polyfill-ctype": "~1.8" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.3-dev" + "dev-master": "5.1-dev" } }, "autoload": { @@ -3176,29 +5667,43 @@ ], "description": "Symfony Filesystem Component", "homepage": "https://symfony.com", - "time": "2019-08-20T14:07:54+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-05-30T20:35:19+00:00" }, { "name": "symfony/finder", - "version": "v4.3.4", + "version": "v5.1.2", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "86c1c929f0a4b24812e1eb109262fc3372c8e9f2" + "reference": "4298870062bfc667cb78d2b379be4bf5dec5f187" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/86c1c929f0a4b24812e1eb109262fc3372c8e9f2", - "reference": "86c1c929f0a4b24812e1eb109262fc3372c8e9f2", + "url": "https://api.github.com/repos/symfony/finder/zipball/4298870062bfc667cb78d2b379be4bf5dec5f187", + "reference": "4298870062bfc667cb78d2b379be4bf5dec5f187", "shasum": "" }, "require": { - "php": "^7.1.3" + "php": ">=7.2.5" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.3-dev" + "dev-master": "5.1-dev" } }, "autoload": { @@ -3225,35 +5730,55 @@ ], "description": "Symfony Finder Component", "homepage": "https://symfony.com", - "time": "2019-08-14T12:26:46+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-05-20T17:43:50+00:00" }, { "name": "symfony/http-foundation", - "version": "v4.3.4", + "version": "v5.1.2", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "d804bea118ff340a12e22a79f9c7e7eb56b35adc" + "reference": "f93055171b847915225bd5b0a5792888419d8d75" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/d804bea118ff340a12e22a79f9c7e7eb56b35adc", - "reference": "d804bea118ff340a12e22a79f9c7e7eb56b35adc", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/f93055171b847915225bd5b0a5792888419d8d75", + "reference": "f93055171b847915225bd5b0a5792888419d8d75", "shasum": "" }, "require": { - "php": "^7.1.3", - "symfony/mime": "^4.3", - "symfony/polyfill-mbstring": "~1.1" + "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1", + "symfony/polyfill-mbstring": "~1.1", + "symfony/polyfill-php80": "^1.15" }, "require-dev": { "predis/predis": "~1.0", - "symfony/expression-language": "~3.4|~4.0" + "symfony/cache": "^4.4|^5.0", + "symfony/expression-language": "^4.4|^5.0", + "symfony/mime": "^4.4|^5.0" + }, + "suggest": { + "symfony/mime": "To use the file extension guesser" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.3-dev" + "dev-master": "5.1-dev" } }, "autoload": { @@ -3280,72 +5805,93 @@ ], "description": "Symfony HttpFoundation Component", "homepage": "https://symfony.com", - "time": "2019-08-26T08:55:16+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-06-15T06:52:54+00:00" }, { "name": "symfony/http-kernel", - "version": "v4.3.4", + "version": "v5.1.2", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "5e0fc71be03d52cd00c423061cfd300bd6f92a52" + "reference": "a18c27ace1ef344ffcb129a5b089bad7643b387a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/5e0fc71be03d52cd00c423061cfd300bd6f92a52", - "reference": "5e0fc71be03d52cd00c423061cfd300bd6f92a52", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/a18c27ace1ef344ffcb129a5b089bad7643b387a", + "reference": "a18c27ace1ef344ffcb129a5b089bad7643b387a", "shasum": "" }, "require": { - "php": "^7.1.3", + "php": ">=7.2.5", "psr/log": "~1.0", - "symfony/debug": "~3.4|~4.0", - "symfony/event-dispatcher": "^4.3", - "symfony/http-foundation": "^4.1.1", - "symfony/polyfill-ctype": "~1.8", - "symfony/polyfill-php73": "^1.9" + "symfony/deprecation-contracts": "^2.1", + "symfony/error-handler": "^4.4|^5.0", + "symfony/event-dispatcher": "^5.0", + "symfony/http-foundation": "^4.4|^5.0", + "symfony/polyfill-ctype": "^1.8", + "symfony/polyfill-php73": "^1.9", + "symfony/polyfill-php80": "^1.15" }, "conflict": { - "symfony/browser-kit": "<4.3", - "symfony/config": "<3.4", - "symfony/dependency-injection": "<4.3", - "symfony/translation": "<4.2", - "symfony/var-dumper": "<4.1.1", - "twig/twig": "<1.34|<2.4,>=2" + "symfony/browser-kit": "<4.4", + "symfony/cache": "<5.0", + "symfony/config": "<5.0", + "symfony/console": "<4.4", + "symfony/dependency-injection": "<4.4", + "symfony/doctrine-bridge": "<5.0", + "symfony/form": "<5.0", + "symfony/http-client": "<5.0", + "symfony/mailer": "<5.0", + "symfony/messenger": "<5.0", + "symfony/translation": "<5.0", + "symfony/twig-bridge": "<5.0", + "symfony/validator": "<5.0", + "twig/twig": "<2.4" }, "provide": { "psr/log-implementation": "1.0" }, "require-dev": { "psr/cache": "~1.0", - "symfony/browser-kit": "^4.3", - "symfony/config": "~3.4|~4.0", - "symfony/console": "~3.4|~4.0", - "symfony/css-selector": "~3.4|~4.0", - "symfony/dependency-injection": "^4.3", - "symfony/dom-crawler": "~3.4|~4.0", - "symfony/expression-language": "~3.4|~4.0", - "symfony/finder": "~3.4|~4.0", - "symfony/process": "~3.4|~4.0", - "symfony/routing": "~3.4|~4.0", - "symfony/stopwatch": "~3.4|~4.0", - "symfony/templating": "~3.4|~4.0", - "symfony/translation": "~4.2", - "symfony/translation-contracts": "^1.1", - "symfony/var-dumper": "^4.1.1", - "twig/twig": "^1.34|^2.4" + "symfony/browser-kit": "^4.4|^5.0", + "symfony/config": "^5.0", + "symfony/console": "^4.4|^5.0", + "symfony/css-selector": "^4.4|^5.0", + "symfony/dependency-injection": "^4.4|^5.0", + "symfony/dom-crawler": "^4.4|^5.0", + "symfony/expression-language": "^4.4|^5.0", + "symfony/finder": "^4.4|^5.0", + "symfony/process": "^4.4|^5.0", + "symfony/routing": "^4.4|^5.0", + "symfony/stopwatch": "^4.4|^5.0", + "symfony/translation": "^4.4|^5.0", + "symfony/translation-contracts": "^1.1|^2", + "twig/twig": "^2.4|^3.0" }, "suggest": { "symfony/browser-kit": "", "symfony/config": "", "symfony/console": "", - "symfony/dependency-injection": "", - "symfony/var-dumper": "" + "symfony/dependency-injection": "" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.3-dev" + "dev-master": "5.1-dev" } }, "autoload": { @@ -3372,35 +5918,53 @@ ], "description": "Symfony HttpKernel Component", "homepage": "https://symfony.com", - "time": "2019-08-26T16:47:42+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-06-15T13:51:38+00:00" }, { "name": "symfony/mime", - "version": "v4.3.4", + "version": "v5.1.2", "source": { "type": "git", "url": "https://github.com/symfony/mime.git", - "reference": "987a05df1c6ac259b34008b932551353f4f408df" + "reference": "c0c418f05e727606e85b482a8591519c4712cf45" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mime/zipball/987a05df1c6ac259b34008b932551353f4f408df", - "reference": "987a05df1c6ac259b34008b932551353f4f408df", + "url": "https://api.github.com/repos/symfony/mime/zipball/c0c418f05e727606e85b482a8591519c4712cf45", + "reference": "c0c418f05e727606e85b482a8591519c4712cf45", "shasum": "" }, "require": { - "php": "^7.1.3", + "php": ">=7.2.5", "symfony/polyfill-intl-idn": "^1.10", - "symfony/polyfill-mbstring": "^1.0" + "symfony/polyfill-mbstring": "^1.0", + "symfony/polyfill-php80": "^1.15" + }, + "conflict": { + "symfony/mailer": "<4.4" }, "require-dev": { "egulias/email-validator": "^2.1.10", - "symfony/dependency-injection": "~3.4|^4.1" + "symfony/dependency-injection": "^4.4|^5.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.3-dev" + "dev-master": "5.1-dev" } }, "autoload": { @@ -3431,20 +5995,34 @@ "mime", "mime-type" ], - "time": "2019-08-22T08:16:11+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-06-09T15:07:35+00:00" }, { "name": "symfony/polyfill-ctype", - "version": "v1.12.0", + "version": "v1.17.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-ctype.git", - "reference": "550ebaac289296ce228a706d0867afc34687e3f4" + "reference": "e94c8b1bbe2bc77507a1056cdb06451c75b427f9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/550ebaac289296ce228a706d0867afc34687e3f4", - "reference": "550ebaac289296ce228a706d0867afc34687e3f4", + "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/e94c8b1bbe2bc77507a1056cdb06451c75b427f9", + "reference": "e94c8b1bbe2bc77507a1056cdb06451c75b427f9", "shasum": "" }, "require": { @@ -3456,7 +6034,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.12-dev" + "dev-master": "1.17-dev" } }, "autoload": { @@ -3489,20 +6067,34 @@ "polyfill", "portable" ], - "time": "2019-08-06T08:03:45+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-05-12T16:14:59+00:00" }, { "name": "symfony/polyfill-iconv", - "version": "v1.12.0", + "version": "v1.17.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-iconv.git", - "reference": "685968b11e61a347c18bf25db32effa478be610f" + "reference": "c4de7601eefbf25f9d47190abe07f79fe0a27424" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-iconv/zipball/685968b11e61a347c18bf25db32effa478be610f", - "reference": "685968b11e61a347c18bf25db32effa478be610f", + "url": "https://api.github.com/repos/symfony/polyfill-iconv/zipball/c4de7601eefbf25f9d47190abe07f79fe0a27424", + "reference": "c4de7601eefbf25f9d47190abe07f79fe0a27424", "shasum": "" }, "require": { @@ -3514,7 +6106,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.12-dev" + "dev-master": "1.17-dev" } }, "autoload": { @@ -3548,26 +6140,38 @@ "portable", "shim" ], - "time": "2019-08-06T08:03:45+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-05-12T16:47:27+00:00" }, { - "name": "symfony/polyfill-intl-idn", - "version": "v1.12.0", + "name": "symfony/polyfill-intl-grapheme", + "version": "v1.17.0", "source": { "type": "git", - "url": "https://github.com/symfony/polyfill-intl-idn.git", - "reference": "6af626ae6fa37d396dc90a399c0ff08e5cfc45b2" + "url": "https://github.com/symfony/polyfill-intl-grapheme.git", + "reference": "e094b0770f7833fdf257e6ba4775be4e258230b2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/6af626ae6fa37d396dc90a399c0ff08e5cfc45b2", - "reference": "6af626ae6fa37d396dc90a399c0ff08e5cfc45b2", + "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/e094b0770f7833fdf257e6ba4775be4e258230b2", + "reference": "e094b0770f7833fdf257e6ba4775be4e258230b2", "shasum": "" }, "require": { - "php": ">=5.3.3", - "symfony/polyfill-mbstring": "^1.3", - "symfony/polyfill-php72": "^1.9" + "php": ">=5.3.3" }, "suggest": { "ext-intl": "For best performance" @@ -3575,7 +6179,83 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.12-dev" + "dev-master": "1.17-dev" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Polyfill\\Intl\\Grapheme\\": "" + }, + "files": [ + "bootstrap.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill for intl's grapheme_* functions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "grapheme", + "intl", + "polyfill", + "portable", + "shim" + ], + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-05-12T16:47:27+00:00" + }, + { + "name": "symfony/polyfill-intl-idn", + "version": "v1.17.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-intl-idn.git", + "reference": "3bff59ea7047e925be6b7f2059d60af31bb46d6a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/3bff59ea7047e925be6b7f2059d60af31bb46d6a", + "reference": "3bff59ea7047e925be6b7f2059d60af31bb46d6a", + "shasum": "" + }, + "require": { + "php": ">=5.3.3", + "symfony/polyfill-mbstring": "^1.3", + "symfony/polyfill-php72": "^1.10" + }, + "suggest": { + "ext-intl": "For best performance" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.17-dev" } }, "autoload": { @@ -3610,20 +6290,111 @@ "portable", "shim" ], - "time": "2019-08-06T08:03:45+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-05-12T16:47:27+00:00" }, { - "name": "symfony/polyfill-mbstring", - "version": "v1.12.0", + "name": "symfony/polyfill-intl-normalizer", + "version": "v1.17.0", "source": { "type": "git", - "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "b42a2f66e8f1b15ccf25652c3424265923eb4f17" + "url": "https://github.com/symfony/polyfill-intl-normalizer.git", + "reference": "1357b1d168eb7f68ad6a134838e46b0b159444a9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/b42a2f66e8f1b15ccf25652c3424265923eb4f17", - "reference": "b42a2f66e8f1b15ccf25652c3424265923eb4f17", + "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/1357b1d168eb7f68ad6a134838e46b0b159444a9", + "reference": "1357b1d168eb7f68ad6a134838e46b0b159444a9", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "suggest": { + "ext-intl": "For best performance" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.17-dev" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Polyfill\\Intl\\Normalizer\\": "" + }, + "files": [ + "bootstrap.php" + ], + "classmap": [ + "Resources/stubs" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill for intl's Normalizer class and related functions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "intl", + "normalizer", + "polyfill", + "portable", + "shim" + ], + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-05-12T16:14:59+00:00" + }, + { + "name": "symfony/polyfill-mbstring", + "version": "v1.17.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-mbstring.git", + "reference": "fa79b11539418b02fc5e1897267673ba2c19419c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/fa79b11539418b02fc5e1897267673ba2c19419c", + "reference": "fa79b11539418b02fc5e1897267673ba2c19419c", "shasum": "" }, "require": { @@ -3635,7 +6406,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.12-dev" + "dev-master": "1.17-dev" } }, "autoload": { @@ -3669,20 +6440,34 @@ "portable", "shim" ], - "time": "2019-08-06T08:03:45+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-05-12T16:47:27+00:00" }, { "name": "symfony/polyfill-php72", - "version": "v1.12.0", + "version": "v1.17.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php72.git", - "reference": "04ce3335667451138df4307d6a9b61565560199e" + "reference": "f048e612a3905f34931127360bdd2def19a5e582" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/04ce3335667451138df4307d6a9b61565560199e", - "reference": "04ce3335667451138df4307d6a9b61565560199e", + "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/f048e612a3905f34931127360bdd2def19a5e582", + "reference": "f048e612a3905f34931127360bdd2def19a5e582", "shasum": "" }, "require": { @@ -3691,7 +6476,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.12-dev" + "dev-master": "1.17-dev" } }, "autoload": { @@ -3724,20 +6509,34 @@ "portable", "shim" ], - "time": "2019-08-06T08:03:45+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-05-12T16:47:27+00:00" }, { "name": "symfony/polyfill-php73", - "version": "v1.12.0", + "version": "v1.17.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php73.git", - "reference": "2ceb49eaccb9352bff54d22570276bb75ba4a188" + "reference": "a760d8964ff79ab9bf057613a5808284ec852ccc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/2ceb49eaccb9352bff54d22570276bb75ba4a188", - "reference": "2ceb49eaccb9352bff54d22570276bb75ba4a188", + "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/a760d8964ff79ab9bf057613a5808284ec852ccc", + "reference": "a760d8964ff79ab9bf057613a5808284ec852ccc", "shasum": "" }, "require": { @@ -3746,7 +6545,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.12-dev" + "dev-master": "1.17-dev" } }, "autoload": { @@ -3782,29 +6581,120 @@ "portable", "shim" ], - "time": "2019-08-06T08:03:45+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-05-12T16:47:27+00:00" }, { - "name": "symfony/process", - "version": "v4.3.4", + "name": "symfony/polyfill-php80", + "version": "v1.17.0", "source": { "type": "git", - "url": "https://github.com/symfony/process.git", - "reference": "e89969c00d762349f078db1128506f7f3dcc0d4a" + "url": "https://github.com/symfony/polyfill-php80.git", + "reference": "5e30b2799bc1ad68f7feb62b60a73743589438dd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/e89969c00d762349f078db1128506f7f3dcc0d4a", - "reference": "e89969c00d762349f078db1128506f7f3dcc0d4a", + "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/5e30b2799bc1ad68f7feb62b60a73743589438dd", + "reference": "5e30b2799bc1ad68f7feb62b60a73743589438dd", "shasum": "" }, "require": { - "php": "^7.1.3" + "php": ">=7.0.8" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.3-dev" + "dev-master": "1.17-dev" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Polyfill\\Php80\\": "" + }, + "files": [ + "bootstrap.php" + ], + "classmap": [ + "Resources/stubs" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ion Bazan", + "email": "ion.bazan@gmail.com" + }, + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-05-12T16:47:27+00:00" + }, + { + "name": "symfony/process", + "version": "v5.1.2", + "source": { + "type": "git", + "url": "https://github.com/symfony/process.git", + "reference": "7f6378c1fa2147eeb1b4c385856ce9de0d46ebd1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/process/zipball/7f6378c1fa2147eeb1b4c385856ce9de0d46ebd1", + "reference": "7f6378c1fa2147eeb1b4c385856ce9de0d46ebd1", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "symfony/polyfill-php80": "^1.15" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "5.1-dev" } }, "autoload": { @@ -3831,38 +6721,54 @@ ], "description": "Symfony Process Component", "homepage": "https://symfony.com", - "time": "2019-08-26T08:26:39+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-05-30T20:35:19+00:00" }, { "name": "symfony/routing", - "version": "v4.3.4", + "version": "v5.1.2", "source": { "type": "git", "url": "https://github.com/symfony/routing.git", - "reference": "ff1049f6232dc5b6023b1ff1c6de56f82bcd264f" + "reference": "bbd0ba121d623f66d165a55a108008968911f3eb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/routing/zipball/ff1049f6232dc5b6023b1ff1c6de56f82bcd264f", - "reference": "ff1049f6232dc5b6023b1ff1c6de56f82bcd264f", + "url": "https://api.github.com/repos/symfony/routing/zipball/bbd0ba121d623f66d165a55a108008968911f3eb", + "reference": "bbd0ba121d623f66d165a55a108008968911f3eb", "shasum": "" }, "require": { - "php": "^7.1.3" + "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1", + "symfony/polyfill-php80": "^1.15" }, "conflict": { - "symfony/config": "<4.2", - "symfony/dependency-injection": "<3.4", - "symfony/yaml": "<3.4" + "symfony/config": "<5.0", + "symfony/dependency-injection": "<4.4", + "symfony/yaml": "<4.4" }, "require-dev": { "doctrine/annotations": "~1.2", "psr/log": "~1.0", - "symfony/config": "~4.2", - "symfony/dependency-injection": "~3.4|~4.0", - "symfony/expression-language": "~3.4|~4.0", - "symfony/http-foundation": "~3.4|~4.0", - "symfony/yaml": "~3.4|~4.0" + "symfony/config": "^5.0", + "symfony/dependency-injection": "^4.4|^5.0", + "symfony/expression-language": "^4.4|^5.0", + "symfony/http-foundation": "^4.4|^5.0", + "symfony/yaml": "^4.4|^5.0" }, "suggest": { "doctrine/annotations": "For using the annotation loader", @@ -3874,7 +6780,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.3-dev" + "dev-master": "5.1-dev" } }, "autoload": { @@ -3907,24 +6813,38 @@ "uri", "url" ], - "time": "2019-08-26T08:26:39+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-06-10T11:49:58+00:00" }, { "name": "symfony/service-contracts", - "version": "v1.1.6", + "version": "v2.1.2", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "ea7263d6b6d5f798b56a45a5b8d686725f2719a3" + "reference": "66a8f0957a3ca54e4f724e49028ab19d75a8918b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/ea7263d6b6d5f798b56a45a5b8d686725f2719a3", - "reference": "ea7263d6b6d5f798b56a45a5b8d686725f2719a3", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/66a8f0957a3ca54e4f724e49028ab19d75a8918b", + "reference": "66a8f0957a3ca54e4f724e49028ab19d75a8918b", "shasum": "" }, "require": { - "php": "^7.1.3", + "php": ">=7.2.5", "psr/container": "^1.0" }, "suggest": { @@ -3933,7 +6853,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.1-dev" + "dev-master": "2.1-dev" } }, "autoload": { @@ -3965,46 +6885,147 @@ "interoperability", "standards" ], - "time": "2019-08-20T14:44:19+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-05-20T17:43:50+00:00" }, { - "name": "symfony/translation", - "version": "v4.3.4", + "name": "symfony/string", + "version": "v5.1.2", "source": { "type": "git", - "url": "https://github.com/symfony/translation.git", - "reference": "28498169dd334095fa981827992f3a24d50fed0f" + "url": "https://github.com/symfony/string.git", + "reference": "ac70459db781108db7c6d8981dd31ce0e29e3298" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/28498169dd334095fa981827992f3a24d50fed0f", - "reference": "28498169dd334095fa981827992f3a24d50fed0f", + "url": "https://api.github.com/repos/symfony/string/zipball/ac70459db781108db7c6d8981dd31ce0e29e3298", + "reference": "ac70459db781108db7c6d8981dd31ce0e29e3298", "shasum": "" }, "require": { - "php": "^7.1.3", + "php": ">=7.2.5", + "symfony/polyfill-ctype": "~1.8", + "symfony/polyfill-intl-grapheme": "~1.0", + "symfony/polyfill-intl-normalizer": "~1.0", "symfony/polyfill-mbstring": "~1.0", - "symfony/translation-contracts": "^1.1.6" + "symfony/polyfill-php80": "~1.15" + }, + "require-dev": { + "symfony/error-handler": "^4.4|^5.0", + "symfony/http-client": "^4.4|^5.0", + "symfony/translation-contracts": "^1.1|^2", + "symfony/var-exporter": "^4.4|^5.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "5.1-dev" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Component\\String\\": "" + }, + "files": [ + "Resources/functions.php" + ], + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony String component", + "homepage": "https://symfony.com", + "keywords": [ + "grapheme", + "i18n", + "string", + "unicode", + "utf-8", + "utf8" + ], + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-06-11T12:16:36+00:00" + }, + { + "name": "symfony/translation", + "version": "v5.1.2", + "source": { + "type": "git", + "url": "https://github.com/symfony/translation.git", + "reference": "d387f07d4c15f9c09439cf3f13ddbe0b2c5e8be2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/translation/zipball/d387f07d4c15f9c09439cf3f13ddbe0b2c5e8be2", + "reference": "d387f07d4c15f9c09439cf3f13ddbe0b2c5e8be2", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "symfony/polyfill-mbstring": "~1.0", + "symfony/polyfill-php80": "^1.15", + "symfony/translation-contracts": "^2" }, "conflict": { - "symfony/config": "<3.4", - "symfony/dependency-injection": "<3.4", - "symfony/yaml": "<3.4" + "symfony/config": "<4.4", + "symfony/dependency-injection": "<5.0", + "symfony/http-kernel": "<5.0", + "symfony/twig-bundle": "<5.0", + "symfony/yaml": "<4.4" }, "provide": { - "symfony/translation-implementation": "1.0" + "symfony/translation-implementation": "2.0" }, "require-dev": { "psr/log": "~1.0", - "symfony/config": "~3.4|~4.0", - "symfony/console": "~3.4|~4.0", - "symfony/dependency-injection": "~3.4|~4.0", - "symfony/finder": "~2.8|~3.0|~4.0", - "symfony/http-kernel": "~3.4|~4.0", - "symfony/intl": "~3.4|~4.0", - "symfony/service-contracts": "^1.1.2", - "symfony/var-dumper": "~3.4|~4.0", - "symfony/yaml": "~3.4|~4.0" + "symfony/config": "^4.4|^5.0", + "symfony/console": "^4.4|^5.0", + "symfony/dependency-injection": "^5.0", + "symfony/finder": "^4.4|^5.0", + "symfony/http-kernel": "^5.0", + "symfony/intl": "^4.4|^5.0", + "symfony/service-contracts": "^1.1.2|^2", + "symfony/yaml": "^4.4|^5.0" }, "suggest": { "psr/log-implementation": "To use logging capability in translator", @@ -4014,7 +7035,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.3-dev" + "dev-master": "5.1-dev" } }, "autoload": { @@ -4041,24 +7062,38 @@ ], "description": "Symfony Translation Component", "homepage": "https://symfony.com", - "time": "2019-08-26T08:55:16+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-05-30T20:35:19+00:00" }, { "name": "symfony/translation-contracts", - "version": "v1.1.6", + "version": "v2.1.2", "source": { "type": "git", "url": "https://github.com/symfony/translation-contracts.git", - "reference": "325b17c24f3ee23cbecfa63ba809c6d89b5fa04a" + "reference": "e5ca07c8f817f865f618aa072c2fe8e0e637340e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/325b17c24f3ee23cbecfa63ba809c6d89b5fa04a", - "reference": "325b17c24f3ee23cbecfa63ba809c6d89b5fa04a", + "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/e5ca07c8f817f865f618aa072c2fe8e0e637340e", + "reference": "e5ca07c8f817f865f618aa072c2fe8e0e637340e", "shasum": "" }, "require": { - "php": "^7.1.3" + "php": ">=7.2.5" }, "suggest": { "symfony/translation-implementation": "" @@ -4066,7 +7101,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.1-dev" + "dev-master": "2.1-dev" } }, "autoload": { @@ -4098,36 +7133,50 @@ "interoperability", "standards" ], - "time": "2019-08-02T12:15:04+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-05-20T17:43:50+00:00" }, { "name": "symfony/var-dumper", - "version": "v4.3.4", + "version": "v5.1.2", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "641043e0f3e615990a0f29479f9c117e8a6698c6" + "reference": "46a942903059b0b05e601f00eb64179e05578c0f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/641043e0f3e615990a0f29479f9c117e8a6698c6", - "reference": "641043e0f3e615990a0f29479f9c117e8a6698c6", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/46a942903059b0b05e601f00eb64179e05578c0f", + "reference": "46a942903059b0b05e601f00eb64179e05578c0f", "shasum": "" }, "require": { - "php": "^7.1.3", + "php": ">=7.2.5", "symfony/polyfill-mbstring": "~1.0", - "symfony/polyfill-php72": "~1.5" + "symfony/polyfill-php80": "^1.15" }, "conflict": { - "phpunit/phpunit": "<4.8.35|<5.4.3,>=5.0", - "symfony/console": "<3.4" + "phpunit/phpunit": "<5.4.3", + "symfony/console": "<4.4" }, "require-dev": { "ext-iconv": "*", - "symfony/console": "~3.4|~4.0", - "symfony/process": "~3.4|~4.0", - "twig/twig": "~1.34|~2.4" + "symfony/console": "^4.4|^5.0", + "symfony/process": "^4.4|^5.0", + "twig/twig": "^2.4|^3.0" }, "suggest": { "ext-iconv": "To convert non-UTF-8 strings to UTF-8 (or symfony/polyfill-iconv in case ext-iconv cannot be used).", @@ -4140,7 +7189,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.3-dev" + "dev-master": "5.1-dev" } }, "autoload": { @@ -4174,25 +7223,118 @@ "debug", "dump" ], - "time": "2019-08-26T08:26:39+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-05-30T20:35:19+00:00" }, { - "name": "tijsverkoyen/css-to-inline-styles", - "version": "2.2.1", + "name": "symfony/yaml", + "version": "v5.1.2", "source": { "type": "git", - "url": "https://github.com/tijsverkoyen/CssToInlineStyles.git", - "reference": "0ed4a2ea4e0902dac0489e6436ebcd5bbcae9757" + "url": "https://github.com/symfony/yaml.git", + "reference": "ea342353a3ef4f453809acc4ebc55382231d4d23" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/tijsverkoyen/CssToInlineStyles/zipball/0ed4a2ea4e0902dac0489e6436ebcd5bbcae9757", - "reference": "0ed4a2ea4e0902dac0489e6436ebcd5bbcae9757", + "url": "https://api.github.com/repos/symfony/yaml/zipball/ea342353a3ef4f453809acc4ebc55382231d4d23", + "reference": "ea342353a3ef4f453809acc4ebc55382231d4d23", "shasum": "" }, "require": { + "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1", + "symfony/polyfill-ctype": "~1.8" + }, + "conflict": { + "symfony/console": "<4.4" + }, + "require-dev": { + "symfony/console": "^4.4|^5.0" + }, + "suggest": { + "symfony/console": "For validating YAML files using the lint command" + }, + "bin": [ + "Resources/bin/yaml-lint" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "5.1-dev" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Component\\Yaml\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Yaml Component", + "homepage": "https://symfony.com", + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-05-20T17:43:50+00:00" + }, + { + "name": "tijsverkoyen/css-to-inline-styles", + "version": "2.2.2", + "source": { + "type": "git", + "url": "https://github.com/tijsverkoyen/CssToInlineStyles.git", + "reference": "dda2ee426acd6d801d5b7fd1001cde9b5f790e15" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/tijsverkoyen/CssToInlineStyles/zipball/dda2ee426acd6d801d5b7fd1001cde9b5f790e15", + "reference": "dda2ee426acd6d801d5b7fd1001cde9b5f790e15", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-libxml": "*", "php": "^5.5 || ^7.0", - "symfony/css-selector": "^2.7 || ^3.0 || ^4.0" + "symfony/css-selector": "^2.7 || ^3.0 || ^4.0 || ^5.0" }, "require-dev": { "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0" @@ -4221,33 +7363,41 @@ ], "description": "CssToInlineStyles is a class that enables you to convert HTML-pages/files into HTML-pages/files with inline styles. This is very useful when you're sending emails.", "homepage": "https://github.com/tijsverkoyen/CssToInlineStyles", - "time": "2017-11-27T11:13:29+00:00" + "time": "2019-10-24T08:53:34+00:00" }, { "name": "vlucas/phpdotenv", - "version": "v2.6.1", + "version": "v4.1.7", "source": { "type": "git", "url": "https://github.com/vlucas/phpdotenv.git", - "reference": "2a7dcf7e3e02dc5e701004e51a6f304b713107d5" + "reference": "db63b2ea280fdcf13c4ca392121b0b2450b51193" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/2a7dcf7e3e02dc5e701004e51a6f304b713107d5", - "reference": "2a7dcf7e3e02dc5e701004e51a6f304b713107d5", + "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/db63b2ea280fdcf13c4ca392121b0b2450b51193", + "reference": "db63b2ea280fdcf13c4ca392121b0b2450b51193", "shasum": "" }, "require": { - "php": ">=5.3.9", - "symfony/polyfill-ctype": "^1.9" + "php": "^5.5.9 || ^7.0 || ^8.0", + "phpoption/phpoption": "^1.7.3", + "symfony/polyfill-ctype": "^1.16" }, "require-dev": { - "phpunit/phpunit": "^4.8.35 || ^5.0" + "bamarni/composer-bin-plugin": "^1.4.1", + "ext-filter": "*", + "ext-pcre": "*", + "phpunit/phpunit": "^4.8.35 || ^5.7.27 || ^6.5.6 || ^7.0" + }, + "suggest": { + "ext-filter": "Required to use the boolean validator.", + "ext-pcre": "Required to use most of the library." }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.6-dev" + "dev-master": "4.1-dev" } }, "autoload": { @@ -4260,10 +7410,15 @@ "BSD-3-Clause" ], "authors": [ + { + "name": "Graham Campbell", + "email": "graham@alt-three.com", + "homepage": "https://gjcampbell.co.uk/" + }, { "name": "Vance Lucas", "email": "vance@vancelucas.com", - "homepage": "http://www.vancelucas.com" + "homepage": "https://vancelucas.com/" } ], "description": "Loads environment variables from `.env` to `getenv()`, `$_ENV` and `$_SERVER` automagically.", @@ -4272,20 +7427,96 @@ "env", "environment" ], - "time": "2019-01-29T11:11:52+00:00" + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/vlucas/phpdotenv", + "type": "tidelift" + } + ], + "time": "2020-06-07T18:25:35+00:00" }, { - "name": "zendframework/zend-diactoros", - "version": "2.1.3", + "name": "voku/portable-ascii", + "version": "1.5.2", "source": { "type": "git", - "url": "https://github.com/zendframework/zend-diactoros.git", - "reference": "279723778c40164bcf984a2df12ff2c6ec5e61c1" + "url": "https://github.com/voku/portable-ascii.git", + "reference": "618631dc601d8eb6ea0a9fbf654ec82f066c4e97" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/zendframework/zend-diactoros/zipball/279723778c40164bcf984a2df12ff2c6ec5e61c1", - "reference": "279723778c40164bcf984a2df12ff2c6ec5e61c1", + "url": "https://api.github.com/repos/voku/portable-ascii/zipball/618631dc601d8eb6ea0a9fbf654ec82f066c4e97", + "reference": "618631dc601d8eb6ea0a9fbf654ec82f066c4e97", + "shasum": "" + }, + "require": { + "php": ">=7.0.0" + }, + "require-dev": { + "phpunit/phpunit": "~6.0 || ~7.0" + }, + "suggest": { + "ext-intl": "Use Intl for transliterator_transliterate() support" + }, + "type": "library", + "autoload": { + "psr-4": { + "voku\\": "src/voku/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Lars Moelleken", + "homepage": "http://www.moelleken.org/" + } + ], + "description": "Portable ASCII library - performance optimized (ascii) string functions for php.", + "homepage": "https://github.com/voku/portable-ascii", + "keywords": [ + "ascii", + "clean", + "php" + ], + "funding": [ + { + "url": "https://www.paypal.me/moelleken", + "type": "custom" + }, + { + "url": "https://github.com/voku", + "type": "github" + }, + { + "url": "https://www.patreon.com/voku", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/voku/portable-ascii", + "type": "tidelift" + } + ], + "time": "2020-06-15T23:49:30+00:00" + }, + { + "name": "zendframework/zend-diactoros", + "version": "2.2.1", + "source": { + "type": "git", + "url": "https://github.com/zendframework/zend-diactoros.git", + "reference": "de5847b068362a88684a55b0dbb40d85986cfa52" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/zendframework/zend-diactoros/zipball/de5847b068362a88684a55b0dbb40d85986cfa52", + "reference": "de5847b068362a88684a55b0dbb40d85986cfa52", "shasum": "" }, "require": { @@ -4298,6 +7529,7 @@ "psr/http-message-implementation": "1.0" }, "require-dev": { + "ext-curl": "*", "ext-dom": "*", "ext-libxml": "*", "http-interop/http-factory-tests": "^0.5.0", @@ -4338,26 +7570,27 @@ "psr", "psr-7" ], - "time": "2019-07-10T16:13:25+00:00" + "abandoned": "laminas/laminas-diactoros", + "time": "2019-11-13T19:16:13+00:00" } ], "packages-dev": [ { "name": "doctrine/instantiator", - "version": "1.2.0", + "version": "1.3.1", "source": { "type": "git", "url": "https://github.com/doctrine/instantiator.git", - "reference": "a2c590166b2133a4633738648b6b064edae0814a" + "reference": "f350df0268e904597e3bd9c4685c53e0e333feea" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/instantiator/zipball/a2c590166b2133a4633738648b6b064edae0814a", - "reference": "a2c590166b2133a4633738648b6b064edae0814a", + "url": "https://api.github.com/repos/doctrine/instantiator/zipball/f350df0268e904597e3bd9c4685c53e0e333feea", + "reference": "f350df0268e904597e3bd9c4685c53e0e333feea", "shasum": "" }, "require": { - "php": "^7.1" + "php": "^7.1 || ^8.0" }, "require-dev": { "doctrine/coding-standard": "^6.0", @@ -4396,81 +7629,34 @@ "constructor", "instantiate" ], - "time": "2019-03-17T17:37:11+00:00" - }, - { - "name": "filp/whoops", - "version": "2.5.0", - "source": { - "type": "git", - "url": "https://github.com/filp/whoops.git", - "reference": "cde50e6720a39fdacb240159d3eea6865d51fd96" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/filp/whoops/zipball/cde50e6720a39fdacb240159d3eea6865d51fd96", - "reference": "cde50e6720a39fdacb240159d3eea6865d51fd96", - "shasum": "" - }, - "require": { - "php": "^5.5.9 || ^7.0", - "psr/log": "^1.0.1" - }, - "require-dev": { - "mockery/mockery": "^0.9 || ^1.0", - "phpunit/phpunit": "^4.8.35 || ^5.7", - "symfony/var-dumper": "^2.6 || ^3.0 || ^4.0" - }, - "suggest": { - "symfony/var-dumper": "Pretty print complex values better with var-dumper available", - "whoops/soap": "Formats errors as SOAP responses" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.2-dev" - } - }, - "autoload": { - "psr-4": { - "Whoops\\": "src/Whoops/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ + "funding": [ { - "name": "Filipe Dobreira", - "homepage": "https://github.com/filp", - "role": "Developer" + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Finstantiator", + "type": "tidelift" } ], - "description": "php error handling for cool kids", - "homepage": "https://filp.github.io/whoops/", - "keywords": [ - "error", - "exception", - "handling", - "library", - "throwable", - "whoops" - ], - "time": "2019-08-07T09:00:00+00:00" + "time": "2020-05-29T17:27:14+00:00" }, { "name": "fzaninotto/faker", - "version": "v1.8.0", + "version": "v1.9.1", "source": { "type": "git", "url": "https://github.com/fzaninotto/Faker.git", - "reference": "f72816b43e74063c8b10357394b6bba8cb1c10de" + "reference": "fc10d778e4b84d5bd315dad194661e091d307c6f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/fzaninotto/Faker/zipball/f72816b43e74063c8b10357394b6bba8cb1c10de", - "reference": "f72816b43e74063c8b10357394b6bba8cb1c10de", + "url": "https://api.github.com/repos/fzaninotto/Faker/zipball/fc10d778e4b84d5bd315dad194661e091d307c6f", + "reference": "fc10d778e4b84d5bd315dad194661e091d307c6f", "shasum": "" }, "require": { @@ -4479,12 +7665,12 @@ "require-dev": { "ext-intl": "*", "phpunit/phpunit": "^4.8.35 || ^5.7", - "squizlabs/php_codesniffer": "^1.5" + "squizlabs/php_codesniffer": "^2.9.2" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.8-dev" + "dev-master": "1.9-dev" } }, "autoload": { @@ -4507,7 +7693,7 @@ "faker", "fixtures" ], - "time": "2018-07-12T10:23:15+00:00" + "time": "2019-12-12T13:22:17+00:00" }, { "name": "hamcrest/hamcrest-php", @@ -4558,31 +7744,102 @@ "time": "2016-01-20T08:20:44+00:00" }, { - "name": "mockery/mockery", - "version": "1.2.3", + "name": "laravel/dusk", + "version": "v5.11.0", "source": { "type": "git", - "url": "https://github.com/mockery/mockery.git", - "reference": "4eff936d83eb809bde2c57a3cea0ee9643769031" + "url": "https://github.com/laravel/dusk.git", + "reference": "e07cc46a1e39767739e8197189780b4c2639806d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/mockery/mockery/zipball/4eff936d83eb809bde2c57a3cea0ee9643769031", - "reference": "4eff936d83eb809bde2c57a3cea0ee9643769031", + "url": "https://api.github.com/repos/laravel/dusk/zipball/e07cc46a1e39767739e8197189780b4c2639806d", + "reference": "e07cc46a1e39767739e8197189780b4c2639806d", + "shasum": "" + }, + "require": { + "ext-json": "*", + "ext-zip": "*", + "illuminate/console": "~5.7.0|~5.8.0|^6.0|^7.0", + "illuminate/support": "~5.7.0|~5.8.0|^6.0|^7.0", + "nesbot/carbon": "^1.20|^2.0", + "php": ">=7.1.0", + "php-webdriver/webdriver": "^1.8.1", + "symfony/console": "^4.0|^5.0", + "symfony/finder": "^4.0|^5.0", + "symfony/process": "^4.0|^5.0", + "vlucas/phpdotenv": "^2.2|^3.0|^4.0" + }, + "require-dev": { + "mockery/mockery": "^1.0", + "phpunit/phpunit": "^7.5|^8.0" + }, + "suggest": { + "ext-pcntl": "Used to gracefully terminate Dusk when tests are running." + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "5.0-dev" + }, + "laravel": { + "providers": [ + "Laravel\\Dusk\\DuskServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "Laravel\\Dusk\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "Laravel Dusk provides simple end-to-end testing and browser automation.", + "keywords": [ + "laravel", + "testing", + "webdriver" + ], + "time": "2020-03-24T16:21:49+00:00" + }, + { + "name": "mockery/mockery", + "version": "1.4.0", + "source": { + "type": "git", + "url": "https://github.com/mockery/mockery.git", + "reference": "6c6a7c533469873deacf998237e7649fc6b36223" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/mockery/mockery/zipball/6c6a7c533469873deacf998237e7649fc6b36223", + "reference": "6c6a7c533469873deacf998237e7649fc6b36223", "shasum": "" }, "require": { "hamcrest/hamcrest-php": "~2.0", "lib-pcre": ">=7.0", - "php": ">=5.6.0" + "php": "^7.3.0" + }, + "conflict": { + "phpunit/phpunit": "<8.0" }, "require-dev": { - "phpunit/phpunit": "~5.7.10|~6.5|~7.0|~8.0" + "phpunit/phpunit": "^8.0.0 || ^9.0.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0.x-dev" + "dev-master": "1.4.x-dev" } }, "autoload": { @@ -4620,20 +7877,20 @@ "test double", "testing" ], - "time": "2019-08-07T15:01:07+00:00" + "time": "2020-05-19T14:25:16+00:00" }, { "name": "myclabs/deep-copy", - "version": "1.9.3", + "version": "1.9.5", "source": { "type": "git", "url": "https://github.com/myclabs/DeepCopy.git", - "reference": "007c053ae6f31bba39dfa19a7726f56e9763bbea" + "reference": "b2c28789e80a97badd14145fda39b545d83ca3ef" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/007c053ae6f31bba39dfa19a7726f56e9763bbea", - "reference": "007c053ae6f31bba39dfa19a7726f56e9763bbea", + "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/b2c28789e80a97badd14145fda39b545d83ca3ef", + "reference": "b2c28789e80a97badd14145fda39b545d83ca3ef", "shasum": "" }, "require": { @@ -4668,33 +7925,39 @@ "object", "object graph" ], - "time": "2019-08-09T12:45:53+00:00" + "time": "2020-01-17T21:11:47+00:00" }, { "name": "nunomaduro/collision", - "version": "v2.1.1", + "version": "v4.2.0", "source": { "type": "git", "url": "https://github.com/nunomaduro/collision.git", - "reference": "b5feb0c0d92978ec7169232ce5d70d6da6b29f63" + "reference": "d50490417eded97be300a92cd7df7badc37a9018" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nunomaduro/collision/zipball/b5feb0c0d92978ec7169232ce5d70d6da6b29f63", - "reference": "b5feb0c0d92978ec7169232ce5d70d6da6b29f63", + "url": "https://api.github.com/repos/nunomaduro/collision/zipball/d50490417eded97be300a92cd7df7badc37a9018", + "reference": "d50490417eded97be300a92cd7df7badc37a9018", "shasum": "" }, "require": { - "filp/whoops": "^2.1.4", - "jakub-onderka/php-console-highlighter": "0.3.*|0.4.*", - "php": "^7.1", - "symfony/console": "~2.8|~3.3|~4.0" + "facade/ignition-contracts": "^1.0", + "filp/whoops": "^2.4", + "php": "^7.2.5", + "symfony/console": "^5.0" }, "require-dev": { - "laravel/framework": "5.7.*", - "nunomaduro/larastan": "^0.3.0", - "phpstan/phpstan": "^0.10", - "phpunit/phpunit": "~7.3" + "facade/ignition": "^2.0", + "fideloper/proxy": "^4.2", + "friendsofphp/php-cs-fixer": "^2.16", + "fruitcake/laravel-cors": "^1.0", + "laravel/framework": "^7.0", + "laravel/tinker": "^2.0", + "nunomaduro/larastan": "^0.5", + "orchestra/testbench": "^5.0", + "phpstan/phpstan": "^0.12.3", + "phpunit/phpunit": "^8.5.1 || ^9.0" }, "type": "library", "extra": { @@ -4732,7 +7995,21 @@ "php", "symfony" ], - "time": "2018-11-21T21:40:54+00:00" + "funding": [ + { + "url": "https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=66BYDWAT92N6L", + "type": "custom" + }, + { + "url": "https://github.com/nunomaduro", + "type": "github" + }, + { + "url": "https://www.patreon.com/nunomaduro", + "type": "patreon" + } + ], + "time": "2020-04-04T19:56:08+00:00" }, { "name": "phar-io/manifest", @@ -4837,36 +8114,96 @@ "time": "2018-07-08T19:19:57+00:00" }, { - "name": "phpdocumentor/reflection-common", - "version": "1.0.1", + "name": "php-webdriver/webdriver", + "version": "1.8.2", "source": { "type": "git", - "url": "https://github.com/phpDocumentor/ReflectionCommon.git", - "reference": "21bdeb5f65d7ebf9f43b1b25d404f87deab5bfb6" + "url": "https://github.com/php-webdriver/php-webdriver.git", + "reference": "3308a70be084d6d7fd1ee5787b4c2e6eb4b70aab" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/21bdeb5f65d7ebf9f43b1b25d404f87deab5bfb6", - "reference": "21bdeb5f65d7ebf9f43b1b25d404f87deab5bfb6", + "url": "https://api.github.com/repos/php-webdriver/php-webdriver/zipball/3308a70be084d6d7fd1ee5787b4c2e6eb4b70aab", + "reference": "3308a70be084d6d7fd1ee5787b4c2e6eb4b70aab", "shasum": "" }, "require": { - "php": ">=5.5" + "ext-curl": "*", + "ext-json": "*", + "ext-zip": "*", + "php": "^5.6 || ~7.0", + "symfony/polyfill-mbstring": "^1.12", + "symfony/process": "^2.8 || ^3.1 || ^4.0 || ^5.0" }, "require-dev": { - "phpunit/phpunit": "^4.6" + "friendsofphp/php-cs-fixer": "^2.0", + "jakub-onderka/php-parallel-lint": "^1.0", + "php-coveralls/php-coveralls": "^2.0", + "php-mock/php-mock-phpunit": "^1.1", + "phpunit/phpunit": "^5.7", + "sebastian/environment": "^1.3.4 || ^2.0 || ^3.0", + "sminnee/phpunit-mock-objects": "^3.4", + "squizlabs/php_codesniffer": "^3.5", + "symfony/var-dumper": "^3.3 || ^4.0 || ^5.0" + }, + "suggest": { + "ext-SimpleXML": "For Firefox profile creation" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0.x-dev" + "dev-master": "1.8.x-dev" } }, "autoload": { "psr-4": { - "phpDocumentor\\Reflection\\": [ - "src" - ] + "Facebook\\WebDriver\\": "lib/" + }, + "files": [ + "lib/Exception/TimeoutException.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "A PHP client for Selenium WebDriver. Previously facebook/webdriver.", + "homepage": "https://github.com/php-webdriver/php-webdriver", + "keywords": [ + "Chromedriver", + "geckodriver", + "php", + "selenium", + "webdriver" + ], + "time": "2020-03-04T14:40:12+00:00" + }, + { + "name": "phpdocumentor/reflection-common", + "version": "2.1.0", + "source": { + "type": "git", + "url": "https://github.com/phpDocumentor/ReflectionCommon.git", + "reference": "6568f4687e5b41b054365f9ae03fcb1ed5f2069b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/6568f4687e5b41b054365f9ae03fcb1ed5f2069b", + "reference": "6568f4687e5b41b054365f9ae03fcb1ed5f2069b", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.x-dev" + } + }, + "autoload": { + "psr-4": { + "phpDocumentor\\Reflection\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -4888,44 +8225,42 @@ "reflection", "static analysis" ], - "time": "2017-09-11T18:02:19+00:00" + "time": "2020-04-27T09:25:28+00:00" }, { "name": "phpdocumentor/reflection-docblock", - "version": "4.3.1", + "version": "5.1.0", "source": { "type": "git", "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", - "reference": "bdd9f737ebc2a01c06ea7ff4308ec6697db9b53c" + "reference": "cd72d394ca794d3466a3b2fc09d5a6c1dc86b47e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/bdd9f737ebc2a01c06ea7ff4308ec6697db9b53c", - "reference": "bdd9f737ebc2a01c06ea7ff4308ec6697db9b53c", + "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/cd72d394ca794d3466a3b2fc09d5a6c1dc86b47e", + "reference": "cd72d394ca794d3466a3b2fc09d5a6c1dc86b47e", "shasum": "" }, "require": { - "php": "^7.0", - "phpdocumentor/reflection-common": "^1.0.0", - "phpdocumentor/type-resolver": "^0.4.0", - "webmozart/assert": "^1.0" + "ext-filter": "^7.1", + "php": "^7.2", + "phpdocumentor/reflection-common": "^2.0", + "phpdocumentor/type-resolver": "^1.0", + "webmozart/assert": "^1" }, "require-dev": { - "doctrine/instantiator": "~1.0.5", - "mockery/mockery": "^1.0", - "phpunit/phpunit": "^6.4" + "doctrine/instantiator": "^1", + "mockery/mockery": "^1" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.x-dev" + "dev-master": "5.x-dev" } }, "autoload": { "psr-4": { - "phpDocumentor\\Reflection\\": [ - "src/" - ] + "phpDocumentor\\Reflection\\": "src" } }, "notification-url": "https://packagist.org/downloads/", @@ -4936,44 +8271,46 @@ { "name": "Mike van Riel", "email": "me@mikevanriel.com" + }, + { + "name": "Jaap van Otterdijk", + "email": "account@ijaap.nl" } ], "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.", - "time": "2019-04-30T17:48:53+00:00" + "time": "2020-02-22T12:28:44+00:00" }, { "name": "phpdocumentor/type-resolver", - "version": "0.4.0", + "version": "1.1.0", "source": { "type": "git", "url": "https://github.com/phpDocumentor/TypeResolver.git", - "reference": "9c977708995954784726e25d0cd1dddf4e65b0f7" + "reference": "7462d5f123dfc080dfdf26897032a6513644fc95" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/9c977708995954784726e25d0cd1dddf4e65b0f7", - "reference": "9c977708995954784726e25d0cd1dddf4e65b0f7", + "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/7462d5f123dfc080dfdf26897032a6513644fc95", + "reference": "7462d5f123dfc080dfdf26897032a6513644fc95", "shasum": "" }, "require": { - "php": "^5.5 || ^7.0", - "phpdocumentor/reflection-common": "^1.0" + "php": "^7.2", + "phpdocumentor/reflection-common": "^2.0" }, "require-dev": { - "mockery/mockery": "^0.9.4", - "phpunit/phpunit": "^5.2||^4.8.24" + "ext-tokenizer": "^7.2", + "mockery/mockery": "~1" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0.x-dev" + "dev-master": "1.x-dev" } }, "autoload": { "psr-4": { - "phpDocumentor\\Reflection\\": [ - "src/" - ] + "phpDocumentor\\Reflection\\": "src" } }, "notification-url": "https://packagist.org/downloads/", @@ -4986,37 +8323,38 @@ "email": "me@mikevanriel.com" } ], - "time": "2017-07-14T14:27:02+00:00" + "description": "A PSR-5 based resolver of Class names, Types and Structural Element Names", + "time": "2020-02-18T18:59:58+00:00" }, { "name": "phpspec/prophecy", - "version": "1.8.1", + "version": "v1.10.3", "source": { "type": "git", "url": "https://github.com/phpspec/prophecy.git", - "reference": "1927e75f4ed19131ec9bcc3b002e07fb1173ee76" + "reference": "451c3cd1418cf640de218914901e51b064abb093" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpspec/prophecy/zipball/1927e75f4ed19131ec9bcc3b002e07fb1173ee76", - "reference": "1927e75f4ed19131ec9bcc3b002e07fb1173ee76", + "url": "https://api.github.com/repos/phpspec/prophecy/zipball/451c3cd1418cf640de218914901e51b064abb093", + "reference": "451c3cd1418cf640de218914901e51b064abb093", "shasum": "" }, "require": { "doctrine/instantiator": "^1.0.2", "php": "^5.3|^7.0", - "phpdocumentor/reflection-docblock": "^2.0|^3.0.2|^4.0", - "sebastian/comparator": "^1.1|^2.0|^3.0", - "sebastian/recursion-context": "^1.0|^2.0|^3.0" + "phpdocumentor/reflection-docblock": "^2.0|^3.0.2|^4.0|^5.0", + "sebastian/comparator": "^1.2.3|^2.0|^3.0|^4.0", + "sebastian/recursion-context": "^1.0|^2.0|^3.0|^4.0" }, "require-dev": { - "phpspec/phpspec": "^2.5|^3.2", + "phpspec/phpspec": "^2.5 || ^3.2", "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.5 || ^7.1" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.8.x-dev" + "dev-master": "1.10.x-dev" } }, "autoload": { @@ -5049,44 +8387,44 @@ "spy", "stub" ], - "time": "2019-06-13T12:50:23+00:00" + "time": "2020-03-05T15:02:03+00:00" }, { "name": "phpunit/php-code-coverage", - "version": "6.1.4", + "version": "7.0.10", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "807e6013b00af69b6c5d9ceb4282d0393dbb9d8d" + "reference": "f1884187926fbb755a9aaf0b3836ad3165b478bf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/807e6013b00af69b6c5d9ceb4282d0393dbb9d8d", - "reference": "807e6013b00af69b6c5d9ceb4282d0393dbb9d8d", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/f1884187926fbb755a9aaf0b3836ad3165b478bf", + "reference": "f1884187926fbb755a9aaf0b3836ad3165b478bf", "shasum": "" }, "require": { "ext-dom": "*", "ext-xmlwriter": "*", - "php": "^7.1", - "phpunit/php-file-iterator": "^2.0", + "php": "^7.2", + "phpunit/php-file-iterator": "^2.0.2", "phpunit/php-text-template": "^1.2.1", - "phpunit/php-token-stream": "^3.0", + "phpunit/php-token-stream": "^3.1.1", "sebastian/code-unit-reverse-lookup": "^1.0.1", - "sebastian/environment": "^3.1 || ^4.0", + "sebastian/environment": "^4.2.2", "sebastian/version": "^2.0.1", - "theseer/tokenizer": "^1.1" + "theseer/tokenizer": "^1.1.3" }, "require-dev": { - "phpunit/phpunit": "^7.0" + "phpunit/phpunit": "^8.2.2" }, "suggest": { - "ext-xdebug": "^2.6.0" + "ext-xdebug": "^2.7.2" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "6.1-dev" + "dev-master": "7.0-dev" } }, "autoload": { @@ -5112,7 +8450,7 @@ "testing", "xunit" ], - "time": "2018-10-31T16:06:48+00:00" + "time": "2019-11-20T13:55:58+00:00" }, { "name": "phpunit/php-file-iterator", @@ -5256,16 +8594,16 @@ }, { "name": "phpunit/php-token-stream", - "version": "3.1.0", + "version": "3.1.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-token-stream.git", - "reference": "e899757bb3df5ff6e95089132f32cd59aac2220a" + "reference": "995192df77f63a59e47f025390d2d1fdf8f425ff" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/e899757bb3df5ff6e95089132f32cd59aac2220a", - "reference": "e899757bb3df5ff6e95089132f32cd59aac2220a", + "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/995192df77f63a59e47f025390d2d1fdf8f425ff", + "reference": "995192df77f63a59e47f025390d2d1fdf8f425ff", "shasum": "" }, "require": { @@ -5301,57 +8639,56 @@ "keywords": [ "tokenizer" ], - "time": "2019-07-25T05:29:42+00:00" + "time": "2019-09-17T06:23:10+00:00" }, { "name": "phpunit/phpunit", - "version": "7.5.15", + "version": "8.5.6", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "d79c053d972856b8b941bb233e39dc521a5093f0" + "reference": "3f9c4079d1407cd84c51c02c6ad1df6ec2ed1348" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/d79c053d972856b8b941bb233e39dc521a5093f0", - "reference": "d79c053d972856b8b941bb233e39dc521a5093f0", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/3f9c4079d1407cd84c51c02c6ad1df6ec2ed1348", + "reference": "3f9c4079d1407cd84c51c02c6ad1df6ec2ed1348", "shasum": "" }, "require": { - "doctrine/instantiator": "^1.1", + "doctrine/instantiator": "^1.2.0", "ext-dom": "*", "ext-json": "*", "ext-libxml": "*", "ext-mbstring": "*", "ext-xml": "*", - "myclabs/deep-copy": "^1.7", - "phar-io/manifest": "^1.0.2", - "phar-io/version": "^2.0", - "php": "^7.1", - "phpspec/prophecy": "^1.7", - "phpunit/php-code-coverage": "^6.0.7", - "phpunit/php-file-iterator": "^2.0.1", + "ext-xmlwriter": "*", + "myclabs/deep-copy": "^1.9.1", + "phar-io/manifest": "^1.0.3", + "phar-io/version": "^2.0.1", + "php": "^7.2", + "phpspec/prophecy": "^1.8.1", + "phpunit/php-code-coverage": "^7.0.7", + "phpunit/php-file-iterator": "^2.0.2", "phpunit/php-text-template": "^1.2.1", - "phpunit/php-timer": "^2.1", - "sebastian/comparator": "^3.0", - "sebastian/diff": "^3.0", - "sebastian/environment": "^4.0", - "sebastian/exporter": "^3.1", - "sebastian/global-state": "^2.0", + "phpunit/php-timer": "^2.1.2", + "sebastian/comparator": "^3.0.2", + "sebastian/diff": "^3.0.2", + "sebastian/environment": "^4.2.2", + "sebastian/exporter": "^3.1.1", + "sebastian/global-state": "^3.0.0", "sebastian/object-enumerator": "^3.0.3", - "sebastian/resource-operations": "^2.0", + "sebastian/resource-operations": "^2.0.1", + "sebastian/type": "^1.1.3", "sebastian/version": "^2.0.1" }, - "conflict": { - "phpunit/phpunit-mock-objects": "*" - }, "require-dev": { "ext-pdo": "*" }, "suggest": { "ext-soap": "*", "ext-xdebug": "*", - "phpunit/php-invoker": "^2.0" + "phpunit/php-invoker": "^2.0.0" }, "bin": [ "phpunit" @@ -5359,7 +8696,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "7.5-dev" + "dev-master": "8.5-dev" } }, "autoload": { @@ -5385,7 +8722,17 @@ "testing", "xunit" ], - "time": "2019-08-21T07:05:16+00:00" + "funding": [ + { + "url": "https://phpunit.de/donate.html", + "type": "custom" + }, + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-06-15T10:45:47+00:00" }, { "name": "sebastian/code-unit-reverse-lookup", @@ -5554,16 +8901,16 @@ }, { "name": "sebastian/environment", - "version": "4.2.2", + "version": "4.2.3", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/environment.git", - "reference": "f2a2c8e1c97c11ace607a7a667d73d47c19fe404" + "reference": "464c90d7bdf5ad4e8a6aea15c091fec0603d4368" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/f2a2c8e1c97c11ace607a7a667d73d47c19fe404", - "reference": "f2a2c8e1c97c11ace607a7a667d73d47c19fe404", + "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/464c90d7bdf5ad4e8a6aea15c091fec0603d4368", + "reference": "464c90d7bdf5ad4e8a6aea15c091fec0603d4368", "shasum": "" }, "require": { @@ -5603,20 +8950,20 @@ "environment", "hhvm" ], - "time": "2019-05-05T09:05:15+00:00" + "time": "2019-11-20T08:46:58+00:00" }, { "name": "sebastian/exporter", - "version": "3.1.1", + "version": "3.1.2", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/exporter.git", - "reference": "06a9a5947f47b3029d76118eb5c22802e5869687" + "reference": "68609e1261d215ea5b21b7987539cbfbe156ec3e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/06a9a5947f47b3029d76118eb5c22802e5869687", - "reference": "06a9a5947f47b3029d76118eb5c22802e5869687", + "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/68609e1261d215ea5b21b7987539cbfbe156ec3e", + "reference": "68609e1261d215ea5b21b7987539cbfbe156ec3e", "shasum": "" }, "require": { @@ -5670,27 +9017,30 @@ "export", "exporter" ], - "time": "2019-08-11T12:43:14+00:00" + "time": "2019-09-14T09:02:43+00:00" }, { "name": "sebastian/global-state", - "version": "2.0.0", + "version": "3.0.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/global-state.git", - "reference": "e8ba02eed7bbbb9e59e43dedd3dddeff4a56b0c4" + "reference": "edf8a461cf1d4005f19fb0b6b8b95a9f7fa0adc4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/e8ba02eed7bbbb9e59e43dedd3dddeff4a56b0c4", - "reference": "e8ba02eed7bbbb9e59e43dedd3dddeff4a56b0c4", + "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/edf8a461cf1d4005f19fb0b6b8b95a9f7fa0adc4", + "reference": "edf8a461cf1d4005f19fb0b6b8b95a9f7fa0adc4", "shasum": "" }, "require": { - "php": "^7.0" + "php": "^7.2", + "sebastian/object-reflector": "^1.1.1", + "sebastian/recursion-context": "^3.0" }, "require-dev": { - "phpunit/phpunit": "^6.0" + "ext-dom": "*", + "phpunit/phpunit": "^8.0" }, "suggest": { "ext-uopz": "*" @@ -5698,7 +9048,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0-dev" + "dev-master": "3.0-dev" } }, "autoload": { @@ -5721,7 +9071,7 @@ "keywords": [ "global state" ], - "time": "2017-04-27T15:39:26+00:00" + "time": "2019-02-01T05:30:01+00:00" }, { "name": "sebastian/object-enumerator", @@ -5910,6 +9260,52 @@ "homepage": "https://www.github.com/sebastianbergmann/resource-operations", "time": "2018-10-04T04:07:39+00:00" }, + { + "name": "sebastian/type", + "version": "1.1.3", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/type.git", + "reference": "3aaaa15fa71d27650d62a948be022fe3b48541a3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/3aaaa15fa71d27650d62a948be022fe3b48541a3", + "reference": "3aaaa15fa71d27650d62a948be022fe3b48541a3", + "shasum": "" + }, + "require": { + "php": "^7.2" + }, + "require-dev": { + "phpunit/phpunit": "^8.2" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.1-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "Collection of value objects that represent the types of the PHP type system", + "homepage": "https://github.com/sebastianbergmann/type", + "time": "2019-07-02T08:10:15+00:00" + }, { "name": "sebastian/version", "version": "2.0.1", @@ -5953,6 +9349,53 @@ "homepage": "https://github.com/sebastianbergmann/version", "time": "2016-10-03T07:35:21+00:00" }, + { + "name": "staudenmeir/dusk-updater", + "version": "v1.2.1", + "source": { + "type": "git", + "url": "https://github.com/staudenmeir/dusk-updater.git", + "reference": "4c6ae6731b8fd558f7b9b976b2e5cff63ea9b071" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/staudenmeir/dusk-updater/zipball/4c6ae6731b8fd558f7b9b976b2e5cff63ea9b071", + "reference": "4c6ae6731b8fd558f7b9b976b2e5cff63ea9b071", + "shasum": "" + }, + "require": { + "php": "^7.1.3", + "symfony/process": "^4.2 || ^5.0" + }, + "require-dev": { + "orchestra/testbench": "^5.0" + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "Staudenmeir\\DuskUpdater\\DuskServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "Staudenmeir\\DuskUpdater\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jonas Staudenmeir", + "email": "mail@jonas-staudenmeir.de" + } + ], + "description": "Updater for Laravel Dusk ChromeDriver binaries", + "time": "2020-05-21T23:13:32+00:00" + }, { "name": "theseer/tokenizer", "version": "1.1.3", @@ -5995,31 +9438,30 @@ }, { "name": "webmozart/assert", - "version": "1.5.0", + "version": "1.9.0", "source": { "type": "git", "url": "https://github.com/webmozart/assert.git", - "reference": "88e6d84706d09a236046d686bbea96f07b3a34f4" + "reference": "9dc4f203e36f2b486149058bade43c851dd97451" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/webmozart/assert/zipball/88e6d84706d09a236046d686bbea96f07b3a34f4", - "reference": "88e6d84706d09a236046d686bbea96f07b3a34f4", + "url": "https://api.github.com/repos/webmozart/assert/zipball/9dc4f203e36f2b486149058bade43c851dd97451", + "reference": "9dc4f203e36f2b486149058bade43c851dd97451", "shasum": "" }, "require": { "php": "^5.3.3 || ^7.0", "symfony/polyfill-ctype": "^1.8" }, + "conflict": { + "phpstan/phpstan": "<0.12.20", + "vimeo/psalm": "<3.9.1" + }, "require-dev": { "phpunit/phpunit": "^4.8.36 || ^7.5.13" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.3-dev" - } - }, "autoload": { "psr-4": { "Webmozart\\Assert\\": "src/" @@ -6041,7 +9483,7 @@ "check", "validate" ], - "time": "2019-08-24T08:43:50+00:00" + "time": "2020-06-16T10:16:42+00:00" } ], "aliases": [], @@ -6050,7 +9492,8 @@ "prefer-stable": true, "prefer-lowest": false, "platform": { - "php": "^7.1.3" + "php": "^7.4" }, - "platform-dev": [] + "platform-dev": [], + "plugin-api-version": "1.1.0" } diff --git a/config/app.php b/config/app.php index 5bc7a0ae..935a268a 100644 --- a/config/app.php +++ b/config/app.php @@ -63,7 +63,7 @@ return [ | */ - 'version' => "3.0.2b", + 'version' => "3.2.5.", /* |-------------------------------------------------------------------------- @@ -170,9 +170,11 @@ return [ */ App\Providers\AppServiceProvider::class, App\Providers\AuthServiceProvider::class, - // App\Providers\BroadcastServiceProvider::class, + App\Providers\BroadcastServiceProvider::class, App\Providers\EventServiceProvider::class, App\Providers\RouteServiceProvider::class, + App\Providers\TelescopeServiceProvider::class, + App\Providers\GoogleDriveServiceProvider::class, ], diff --git a/config/breadcrumbs.php b/config/breadcrumbs.php new file mode 100644 index 00000000..d6acba13 --- /dev/null +++ b/config/breadcrumbs.php @@ -0,0 +1,75 @@ + 'breadcrumbs::bootstrap4', + + /* + |-------------------------------------------------------------------------- + | Breadcrumbs File(s) + |-------------------------------------------------------------------------- + | + | The file(s) where breadcrumbs are defined. e.g. + | + | - base_path('routes/breadcrumbs.php') + | - glob(base_path('breadcrumbs/*.php')) + | + */ + + 'files' => base_path('routes/breadcrumbs.php'), + + /* + |-------------------------------------------------------------------------- + | Exceptions + |-------------------------------------------------------------------------- + | + | Determine when to throw an exception. + | + */ + + // When route-bound breadcrumbs are used but the current route doesn't have a name (UnnamedRouteException) + 'unnamed-route-exception' => false, + + // When route-bound breadcrumbs are used and the matching breadcrumb doesn't exist (InvalidBreadcrumbException) + 'missing-route-bound-breadcrumb-exception' => false, + + // When a named breadcrumb is used but doesn't exist (InvalidBreadcrumbException) + 'invalid-named-breadcrumb-exception' => true, + + /* + |-------------------------------------------------------------------------- + | Classes + |-------------------------------------------------------------------------- + | + | Subclass the default classes for more advanced customisations. + | + */ + + // Manager + 'manager-class' => DaveJamesMiller\Breadcrumbs\BreadcrumbsManager::class, + + // Generator + 'generator-class' => DaveJamesMiller\Breadcrumbs\BreadcrumbsGenerator::class, + +]; diff --git a/config/filesystems.php b/config/filesystems.php index 77fa5ded..87dbb1bd 100644 --- a/config/filesystems.php +++ b/config/filesystems.php @@ -26,7 +26,7 @@ return [ | */ - 'cloud' => env('FILESYSTEM_CLOUD', 's3'), + 'cloud' => env('FILESYSTEM_CLOUD', 'google'), /* |-------------------------------------------------------------------------- @@ -55,13 +55,13 @@ return [ 'visibility' => 'public', ], - 's3' => [ - 'driver' => 's3', - 'key' => env('AWS_ACCESS_KEY_ID'), - 'secret' => env('AWS_SECRET_ACCESS_KEY'), - 'region' => env('AWS_DEFAULT_REGION'), - 'bucket' => env('AWS_BUCKET'), - 'url' => env('AWS_URL'), + 'google' => [ + 'driver' => 'google', + 'clientId' => '', + 'clientSecret' => '', + 'refreshToken' => '', + 'folderId' => '', + // 'teamDriveId' => env('GOOGLE_DRIVE_TEAM_DRIVE_ID'), ], ], diff --git a/config/session.php b/config/session.php index 736fb3c7..e9324843 100644 --- a/config/session.php +++ b/config/session.php @@ -164,7 +164,7 @@ return [ | */ - 'secure' => env('SESSION_SECURE_COOKIE', false), + 'secure' => env('SESSION_SECURE_COOKIE', null), /* |-------------------------------------------------------------------------- diff --git a/config/telescope.php b/config/telescope.php new file mode 100644 index 00000000..dd854eb2 --- /dev/null +++ b/config/telescope.php @@ -0,0 +1,164 @@ + env('TELESCOPE_DOMAIN', null), + + /* + |-------------------------------------------------------------------------- + | Telescope Path + |-------------------------------------------------------------------------- + | + | This is the URI path where Telescope will be accessible from. Feel free + | to change this path to anything you like. Note that the URI will not + | affect the paths of its internal API that aren't exposed to users. + | + */ + + 'path' => env('TELESCOPE_PATH', 'admin/telescope'), + + /* + |-------------------------------------------------------------------------- + | Telescope Storage Driver + |-------------------------------------------------------------------------- + | + | This configuration options determines the storage driver that will + | be used to store Telescope's data. In addition, you may set any + | custom options as needed by the particular driver you choose. + | + */ + + 'driver' => env('TELESCOPE_DRIVER', 'database'), + + 'storage' => [ + 'database' => [ + 'connection' => env('DB_CONNECTION', 'mysql'), + 'chunk' => 1000, + ], + ], + + /* + |-------------------------------------------------------------------------- + | Telescope Master Switch + |-------------------------------------------------------------------------- + | + | This option may be used to disable all Telescope watchers regardless + | of their individual configuration, which simply provides a single + | and convenient way to enable or disable Telescope data storage. + | + */ + + 'enabled' => env('TELESCOPE_ENABLED', false), + + /* + |-------------------------------------------------------------------------- + | Telescope Route Middleware + |-------------------------------------------------------------------------- + | + | These middleware will be assigned to every Telescope route, giving you + | the chance to add your own middleware to this list or change any of + | the existing middleware. Or, you can simply stick with this list. + | + */ + + 'middleware' => [ + 'web', + 'auth', + Authorize::class, + ], + + /* + |-------------------------------------------------------------------------- + | Ignored Paths & Commands + |-------------------------------------------------------------------------- + | + | The following array lists the URI paths and Artisan commands that will + | not be watched by Telescope. In addition to this list, some Laravel + | commands, like migrations and queue commands, are always ignored. + | + */ + + 'ignore_paths' => [ + 'nova-api*', + ], + + 'ignore_commands' => [ + // + ], + + /* + |-------------------------------------------------------------------------- + | Telescope Watchers + |-------------------------------------------------------------------------- + | + | The following array lists the "watchers" that will be registered with + | Telescope. The watchers gather the application's profile data when + | a request or task is executed. Feel free to customize this list. + | + */ + + 'watchers' => [ + Watchers\CacheWatcher::class => env('TELESCOPE_CACHE_WATCHER', true), + + Watchers\CommandWatcher::class => [ + 'enabled' => env('TELESCOPE_COMMAND_WATCHER', true), + 'ignore' => [], + ], + + Watchers\DumpWatcher::class => env('TELESCOPE_DUMP_WATCHER', true), + + Watchers\EventWatcher::class => [ + 'enabled' => env('TELESCOPE_EVENT_WATCHER', true), + 'ignore' => [], + ], + + Watchers\ExceptionWatcher::class => env('TELESCOPE_EXCEPTION_WATCHER', true), + Watchers\JobWatcher::class => env('TELESCOPE_JOB_WATCHER', true), + Watchers\LogWatcher::class => env('TELESCOPE_LOG_WATCHER', true), + Watchers\MailWatcher::class => env('TELESCOPE_MAIL_WATCHER', true), + + Watchers\ModelWatcher::class => [ + 'enabled' => env('TELESCOPE_MODEL_WATCHER', true), + 'events' => ['eloquent.*'], + ], + + Watchers\NotificationWatcher::class => env('TELESCOPE_NOTIFICATION_WATCHER', true), + + Watchers\QueryWatcher::class => [ + 'enabled' => env('TELESCOPE_QUERY_WATCHER', true), + 'ignore_packages' => true, + 'slow' => 100, + ], + + Watchers\RedisWatcher::class => env('TELESCOPE_REDIS_WATCHER', true), + + Watchers\RequestWatcher::class => [ + 'enabled' => env('TELESCOPE_REQUEST_WATCHER', true), + 'size_limit' => env('TELESCOPE_RESPONSE_SIZE_LIMIT', 64), + ], + + Watchers\GateWatcher::class => [ + 'enabled' => env('TELESCOPE_GATE_WATCHER', true), + 'ignore_abilities' => [], + 'ignore_packages' => true, + ], + + Watchers\ScheduleWatcher::class => env('TELESCOPE_SCHEDULE_WATCHER', true), + + Watchers\ViewWatcher::class => env('TELESCOPE_VIEW_WATCHER', true), + ], +]; diff --git a/config/version.yml b/config/version.yml new file mode 100644 index 00000000..48ffa03a --- /dev/null +++ b/config/version.yml @@ -0,0 +1,59 @@ +mode: absorb +blade-directive: version +current: + label: '' + major: 3 + minor: 2 + patch: 5 + prerelease: 14-g039b09b6 + buildmetadata: '' + commit: 41845 + timestamp: + year: 2020 + month: 6 + day: 21 + hour: 18 + minute: 44 + second: 55 + timezone: America/New_York +commit: + mode: git-local + length: 6 + increment-by: 1 +git: + from: local + commit: + local: 'git rev-parse --verify HEAD' + remote: 'git ls-remote {$repository}' + branch: refs/heads/master + repository: '' + version: + local: 'git describe' + remote: 'git ls-remote {$repository} | grep tags/ | grep -v {} | cut -d / -f 3 | sort --version-sort | tail -1' + matcher: '/^(?P