protected function getMainComponentInfo() {
    // Scanning for components and parsing their info is expensive, so cache it.
    if ($this->componentInfo === NULL) {
      $components = $this->componentDiscovery->getMainComponents();

      // Couldn't figure out how to sort the components with a uasort(). Went
      // with the quick and dirty way instead. Don't judge me!
      Element::order($components, [
        'lightning_core',
        'lightning_media',
        'lightning_layout',
        'lightning_workflow',
        'lightning_preview',
      ]);

      $this->componentInfo = array_map(
        function (Extension $component) {
          return $this->infoParser->parse($component->getPathname());
        },
        $components
      );
    }
    return $this->componentInfo;
  }
protected function getMainComponentInfo() {
    // Scanning for components and parsing their info is expensive, so cache it.
    if ($this->componentInfo === NULL) {
      $components = $this->componentDiscovery->getMainComponents();

      // Couldn't figure out how to sort the components with a uasort(). Went
      // with the quick and dirty way instead. Don't judge me!
      Element::order($components, [
        'lightning_core',
        'lightning_media',
        'lightning_layout',
        'lightning_workflow',
        'lightning_preview',
      ]);

      $this->componentInfo = array_map(
        function (Extension $component) {
          return $this->infoParser->parse($component->getPathname());
        },
        $components
      );
    }
    return $this->componentInfo;
  }
protected function getMainComponentInfo ( ) { // Scanning for components and parsing their info is expensive, so cache it. if ( $ this -> componentInfo === NULL ) { $ components = $ this -> componentDiscovery -> getMainComponents ( ) ; // Couldn't figure out how to sort the components with a uasort(). Went // with the quick and dirty way instead. Don't judge me! Element :: order ( $ components , [ 'lightning_core' , 'lightning_media' , 'lightning_layout' , 'lightning_workflow' , 'lightning_preview' , ] ) ; $ this -> componentInfo = array_map ( function ( Extension $ component ) { return $ this -> infoParser -> parse ( $ component -> getPathname ( ) ) ; } , $ components ) ; } return $ this -> componentInfo ; }
Returns info for top-level components.

@return array[]
Parsed info for all top-level Lightning components.
Returns info for top - level components .