/**
  * Registers a module's macros directory, along with any immediate sub-directories.
  *
  * @param ModuleInfo $moduleInfo
  * @return $this
  */
 function registerMacros(ModuleInfo $moduleInfo)
 {
     $path = "{$this->kernelSettings->baseDirectory}/{$moduleInfo->path}/{$this->moduleMacrosPath}";
     if (fileExists($path)) {
         $all = FilesystemFlow::from($path)->onlyDirectories()->keys()->all();
         array_unshift($all, $path);
         $this->macrosDirectories = array_merge($all, $this->macrosDirectories);
     }
     return $this;
 }
 /**
  * Check if a directory is empty.
  *
  * @param string $path
  * @return bool
  */
 private function isDirectoryEmpty($path)
 {
     return !count(FilesystemFlow::from($path)->all());
 }