Exemple #1
0
 public function __construct(StyleguideInterface $styleguide, SourcePatternInterface $pattern)
 {
     parent::__construct($styleguide, $pattern);
     $this->parentId = $pattern->getPattern()->getId();
     $this->variant = $pattern->getVariantName();
 }
Exemple #2
0
 /**
  * Make the style guide page objects
  *
  * @return \Labcoat\Styleguide\Pages\PageInterface[] An array of page objects
  */
 protected function makePages()
 {
     /** @var \Labcoat\Styleguide\Pages\IndexPageInterface[] $pages */
     $pages = [];
     $index = new StyleguideIndexPage();
     $items = new \RecursiveIteratorIterator($this->patternlab, \RecursiveIteratorIterator::SELF_FIRST);
     foreach ($items as $item) {
         $id = $item->getId();
         if ($item->actsLikePattern()) {
             $this->patterns[$id] = Pattern::cast($this, $item);
             $pages[$id] = new PatternPage($this->patterns[$id]);
             $index->addPattern($this->patterns[$id]);
             $path = dirname($item->getPath());
             while ($path && $path != '.') {
                 if (!isset($pages[$path])) {
                     break;
                 }
                 $pages[$path]->addPattern($this->patterns[$id]);
                 $path = dirname($path);
             }
         } elseif ($item->isType()) {
             $pages[$id] = new TypeIndexPage($item);
         } elseif ($item->isSubtype()) {
             $pages[$id] = new SubTypeIndexPage($item);
         }
     }
     $this->findPatternLineages();
     $pages[] = $index;
     return $pages;
 }
Exemple #3
0
 public function testPatternSectionSubtype()
 {
     $source = $this->makeSourcePattern();
     $pattern = new Pattern($this->makeStyleguide(), $source);
     $this->assertFalse($pattern->patternSectionSubtype());
 }