public function propagateSchemaWithValues()
    {
        array_walk($this->schema, function ($field, $index) {
            if ($this->hasParent() and $this->getParent()->isTypeOf('repeatable')) {
                return $this->propagateAsRepeatableSchema($field, $index);
            }

            return $this->propagateAsNormalSchema($field);
        });

        $this->mergeFields($this->heap);
    }