protected function copyTemplates(string $srcDir, array $files, string $dstDir, array $extReplace = [], bool $compile = false)
    {
        foreach ($files as $file) {
            $fullSrc = $this->getPath("{$srcDir}/{$file}");
            $fullDst = "{$dstDir}/{$srcDir}/" . (!empty($extReplace) ? str_replace($extReplace[0], $extReplace[1], $file) : $file);

            $this->createDirectory("{$dstDir}/{$srcDir}");

            $this->copyFile($fullSrc, $fullDst, $compile);
        }
    }
protected function copyTemplates(string $srcDir, array $files, string $dstDir, array $extReplace = [], bool $compile = false)
    {
        foreach ($files as $file) {
            $fullSrc = $this->getPath("{$srcDir}/{$file}");
            $fullDst = "{$dstDir}/{$srcDir}/" . (!empty($extReplace) ? str_replace($extReplace[0], $extReplace[1], $file) : $file);

            $this->createDirectory("{$dstDir}/{$srcDir}");

            $this->copyFile($fullSrc, $fullDst, $compile);
        }
    }
protected function copyTemplates ( string $ srcDir , array $ files , string $ dstDir , array $ extReplace = [ ] , bool $ compile = false ) { foreach ( $ files as $ file ) { $ fullSrc = $ this -> getPath ( "{$srcDir}/{$file}" ) ; $ fullDst = "{$dstDir}/{$srcDir}/" . ( ! empty ( $ extReplace ) ? str_replace ( $ extReplace [ 0 ] , $ extReplace [ 1 ] , $ file ) : $ file ) ; $ this -> createDirectory ( "{$dstDir}/{$srcDir}" ) ; $ this -> copyFile ( $ fullSrc , $ fullDst , $ compile ) ; } }
Copy template files and folders

@param string $srcDir
@param array  $files
@param string $dstDir
@param array  $extReplace
@param bool   $compile
Copy template files and folders