File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -591,33 +591,42 @@ private function normalizePathName($path)
591591 */
592592 private function metadataForDirectory ($ path )
593593 {
594- $ project = sprintf ('%s/%s ' , $ this ->settings ->getVendor (), $ this ->settings ->getPackage ());
595594 $ reference = $ this ->settings ->getReference ();
595+ $ project = sprintf ('%s/%s ' , $ this ->settings ->getVendor (), $ this ->settings ->getPackage ());
596596
597597 $ url = sprintf (
598598 '%s/repos/%s/contents/%s?ref=%s ' ,
599599 self ::GITHUB_API_URL ,
600600 $ project ,
601- trim ( $ path, ' / ' ) ,
601+ $ path ,
602602 $ reference
603603 );
604604 $ htmlUrl = sprintf (
605605 '%s/%s/blob/%s/%s ' ,
606606 self ::GITHUB_URL ,
607607 $ project ,
608608 $ reference ,
609- trim ( $ path, ' / ' )
609+ $ path
610610 );
611611
612- $ metadata = [
613- self ::KEY_TYPE => self ::KEY_DIRECTORY ,
614- 'url ' => $ url ,
615- 'html_url ' => $ htmlUrl ,
616- '_links ' => [
617- 'self ' => $ url ,
618- 'html ' => $ htmlUrl
612+ $ directoryContents = $ this ->getDirectoryContents ($ path , self ::RECURSIVE );
613+
614+ $ directoryMetadata = array_filter ($ directoryContents , function ($ entry ) use ($ path ) {
615+ return $ entry [self ::KEY_PATH ] === $ path ;
616+ });
617+
618+ $ metadata = array_merge (
619+ $ directoryMetadata [0 ],
620+ [
621+ self ::KEY_TYPE => self ::KEY_DIRECTORY ,
622+ 'url ' => $ url ,
623+ 'html_url ' => $ htmlUrl ,
624+ '_links ' => [
625+ 'self ' => $ url ,
626+ 'html ' => $ htmlUrl
627+ ]
619628 ]
620- ] ;
629+ ) ;
621630
622631 return $ metadata ;
623632 }
You can’t perform that action at this time.
0 commit comments