public function add($field, SectionInterface $section = null): UserFieldContract
    {
        if ($field instanceof SectionInterface) {
            $section = $field;

            if ($section->hasItems()) {
                foreach ($section->getItems() as $item) {
                    /** @var FieldTypeInterface $item */
                    $item->setOptions([
                        'group' => $section->getId()
                    ]);

                    $this->add($item, $section);
                }
            }

            return $this;
        }

        // Setup field options
        $field->setTheme('themosis.users');
        $field->setPrefix($this->options['prefix']);

        $this->repository->addField($field, $this->getSection($field, $section));

        return $this;
    }