/**
* 현재 다운로드 되어 있는 플러그인 중에 require되어 있거나 vendor가 있는 플러그인을 제외한 플러그인의 composer.json 정보를 require시킨다.
*
* @return $this
*/
public function resolvePlugins()
{
$requires = [];
$replace = [];
$dir = $this->scanner->getPluginDirectory();
foreach ($this->scanner->scanDirectory() as $plugin) {
$name = array_get($plugin, 'metaData.name');
$version = array_get($plugin, 'metaData.version');
if (is_dir($dir . DIRECTORY_SEPARATOR . $plugin['id'] . DIRECTORY_SEPARATOR . 'vendor')) {
$replace[$name] = '*';
continue;
}
$requires[$name] = $version;
}
array_set($this->data, 'require', $requires);
array_set($this->data, 'replace', $replace);
return $this;
}