protected function setDefaults()
    {
        $this->attributes['name']      = $this->name;
        $this->attributes['classname'] = get_called_class();
        $attributesAdapter             = new AttributesAdapter($this->name);
        $defaults                      = $attributesAdapter->defaults();
        if (!isset($this->attributes['width']) && isset($this->attributes['default_width'])) {
            $this->attributes['width'] = $this->attributes['default_width'];
        }
        if (!isset($this->attributes['height']) && isset($this->attributes['default_height'])) {
            $this->attributes['height'] = $this->attributes['default_height'];
        }
        $this->attributes = array_merge($defaults, $this->attributes);

        $attributes = app(Service::class)->findOne(array_merge($defaults, $this->attributes), uri());

        $this->attributes            = array_merge($this->attributes, $attributes);
        $this->attributes['desktop'] = array_only($this->attributes, ['x', 'y', 'width', 'height']);

        return $this->attributes;
    }