import {Meta} from '@storybook/addon-docs/blocks'

<Meta title='@dxtmisha/ru/# UI/properties/types/Свойство (property)'/>

# Свойство (property)

Тип `property` — это базовый, фундаментальный тип генератора. Он предписывает компилятору собрать узел в стандартное CSS-свойство с его значением.

> **Автоопределение:** Если вы не указываете `_type` явно и парсер не находит никаких алиасов-префиксов в имени узла, система **автоматически (по умолчанию)** назначает узлу тип `property`.

## Стандартное объявление (Неявное)

В 90% случаев тип `property` не нужно указывать руками. Если вы передаете простую пару ключ-значение (строку или число), движок самостоятельно сгенерирует CSS-свойство.

**Входная конфигурация (`properties.json`):**
```json
{
  "button": {
    "padding": "12px 16px",
    "border-radius": "8px"
  }
}
```

**Ожидаемый результат генерации (SCSS):**
```scss
.button {
  padding: 12px 16px;
  border-radius: 8px;
}
```

## Развернутое объявление (Явный тип `property`)

Явное указание типа требуется тогда, когда значение свойства — это сложный объект, и вам нужно использовать конфигурационные флаги компилятора (например, `_var: true` для создания переменной или `_rename` для подмены имени на выходе), но при этом вы хотите сохранить логику обычного CSS-свойства.

**Входная конфигурация (`properties.json`):**
```json
{
  "button": {
    "custom-offset": {
      "_type": "property",
      "value": "24px",
      "_rename": "margin-bottom"
    }
  }
}
```

**Ожидаемый результат генерации (SCSS):**
```scss
.button {
  margin-bottom: 24px;
}
```

Именно тип `property` лежит в основе всех стилей `dxt-ui`, формируя каркас CSS-выборок до применения продвинутой логики BEM, медиа-запросов и переменных.
