2020-07-16 02:00:38 +02:00
|
|
|
<?php
|
|
|
|
|
|
|
|
declare(strict_types=1);
|
|
|
|
|
|
|
|
use Rector\ConsoleDiffer\Diff\Output\CompleteUnifiedDiffOutputBuilderFactory;
|
|
|
|
use Rector\ConsoleDiffer\DifferAndFormatter;
|
|
|
|
use Rector\ConsoleDiffer\MarkdownDifferAndFormatter;
|
|
|
|
use SebastianBergmann\Diff\Differ;
|
|
|
|
use SebastianBergmann\Diff\Output\StrictUnifiedDiffOutputBuilder;
|
|
|
|
use SebastianBergmann\Diff\Output\UnifiedDiffOutputBuilder;
|
2020-07-18 11:24:54 +02:00
|
|
|
use Symfony\Component\DependencyInjection\Loader\Configurator\ContainerConfigurator;
|
2021-01-08 15:04:35 +01:00
|
|
|
use function Symfony\Component\DependencyInjection\Loader\Configurator\service;
|
2020-07-16 02:00:38 +02:00
|
|
|
use Symplify\ConsoleColorDiff\Console\Formatter\ColorConsoleDiffFormatter;
|
|
|
|
use Symplify\ConsoleColorDiff\Console\Output\ConsoleDiffer;
|
|
|
|
|
|
|
|
return static function (ContainerConfigurator $containerConfigurator): void {
|
|
|
|
$services = $containerConfigurator->services();
|
|
|
|
|
|
|
|
$services->defaults()
|
|
|
|
->public()
|
2020-10-25 14:43:05 +01:00
|
|
|
->autowire()
|
|
|
|
->autoconfigure();
|
2020-07-16 02:00:38 +02:00
|
|
|
|
|
|
|
$services->load('Rector\ConsoleDiffer\\', __DIR__ . '/../src');
|
|
|
|
|
|
|
|
$services->set(DifferAndFormatter::class)
|
2021-01-08 15:04:35 +01:00
|
|
|
->arg('$differ', service('differ'));
|
2020-07-16 02:00:38 +02:00
|
|
|
|
|
|
|
$services->set(MarkdownDifferAndFormatter::class)
|
2021-01-08 15:04:35 +01:00
|
|
|
->arg('$markdownDiffer', service('markdownDiffer'));
|
2020-07-16 02:00:38 +02:00
|
|
|
|
|
|
|
$services->set('diffOutputBuilder', StrictUnifiedDiffOutputBuilder::class)
|
2020-07-30 01:39:41 +02:00
|
|
|
->arg('$options', [
|
|
|
|
'fromFile' => 'Original',
|
|
|
|
'toFile' => 'New',
|
2020-07-16 20:59:54 +02:00
|
|
|
]);
|
2020-07-16 02:00:38 +02:00
|
|
|
|
|
|
|
$services->set('differ', Differ::class)
|
2021-01-08 15:04:35 +01:00
|
|
|
->arg('$outputBuilder', service('diffOutputBuilder'));
|
2020-07-16 02:00:38 +02:00
|
|
|
|
|
|
|
$services->set('markdownDiffOutputBuilder', UnifiedDiffOutputBuilder::class)
|
2021-01-08 15:04:35 +01:00
|
|
|
->factory([service(CompleteUnifiedDiffOutputBuilderFactory::class), 'create']);
|
2020-07-16 02:00:38 +02:00
|
|
|
|
|
|
|
$services->set('markdownDiffer', Differ::class)
|
2021-01-08 15:04:35 +01:00
|
|
|
->arg('$outputBuilder', service('markdownDiffOutputBuilder'));
|
2020-07-16 02:00:38 +02:00
|
|
|
|
|
|
|
$services->set(ColorConsoleDiffFormatter::class);
|
|
|
|
|
|
|
|
$services->set(ConsoleDiffer::class);
|
|
|
|
};
|