private function writeFile(Reference $reference, $content, $targetDir) { $relativePath = $reference->getShortReference(); $segments = explode('/', $relativePath); $name = array_pop($segments); $dir = $targetDir . '/' . implode('/', $segments); $this->filesystem->mkdir($dir); file_put_contents($dir . '/' . $name, $content); }
private function getMap(array $lookupDirs, $bundleName) { $hasMap = false; $map = []; foreach ($lookupDirs as $dir) { if (file_exists($file = "{$dir}/map.yml")) { $mockups = Yaml::parse(file_get_contents($file)); $map = array_merge($map, $mockups); $hasMap = true; } } if (!$hasMap) { return false; } // remove duplicates in case we have 2 maps (app level and bundle level) $map = array_unique($map); array_walk($map, function (&$item) use($bundleName) { $item = Reference::fromPath($bundleName, $item); }); return $map; }