jsonPrinter = $jsonPrinter; } /** * @param \Rector\Core\ValueObject\Application\File $file */ public function supports($file) : bool { $smartFileInfo = $file->getSmartFileInfo(); return $smartFileInfo->getExtension() === 'json'; } /** * @param \Rector\Core\ValueObject\Application\File $file * @param \Rector\FileFormatter\ValueObject\EditorConfigConfiguration $editorConfigConfiguration */ public function format($file, $editorConfigConfiguration) : void { $newFileContent = $this->jsonPrinter->print($file->getFileContent(), $editorConfigConfiguration->getIndent(), $editorConfigConfiguration->getNewLine()); $newFileContent .= $editorConfigConfiguration->getFinalNewline(); $file->changeFileContent($newFileContent); } public function createDefaultEditorConfigConfigurationBuilder() : \Rector\FileFormatter\ValueObjectFactory\EditorConfigConfigurationBuilder { $editorConfigConfigurationBuilder = new \Rector\FileFormatter\ValueObjectFactory\EditorConfigConfigurationBuilder(); $editorConfigConfigurationBuilder->withIndent(\Rector\FileFormatter\ValueObject\Indent::createSpaceWithSize(4)); return $editorConfigConfigurationBuilder; } }