analyzeCurrentData() protected method

protected analyzeCurrentData ( ) : array
return array
Esempio n. 1
0
 /**
  * Overridden so sensible schema handling can be used for:
  * Pivot objects and Eloquent Collections. Anything else
  * can be handled normally.
  *
  * @return array
  */
 protected function analyzeCurrentData()
 {
     $relationship = $this->stack->end()->getRelationship();
     $data = $relationship->isShowData() === true ? $relationship->getData() : null;
     if ($data instanceof Collection) {
         $firstItem = null;
         $isEmpty = count($data) === 0;
         $traversableData = $data;
         if ($isEmpty === false) {
             $firstItem = $data->first();
         }
         if ($firstItem === null) {
             $traversableData = [];
         }
         return [$isEmpty, true, $traversableData];
     } elseif ($data instanceof Pivot) {
         return [true, false, []];
     }
     return parent::analyzeCurrentData();
 }