Как создать условие в mixin на Stylus, чтобы в него можно было передавать не только ValuePx, но и Value?

Для создания условия в mixin на Stylus, которое позволяет передавать не только значение в пикселях (ValuePx), но и значение без единиц измерения (Value), можно использовать функции условия в Stylus.

Вот пример кода, который показывает, как это можно сделать:

mixin exampleMixin(value)
  if typeof(value) == 'unit'
    // Обрабатываем значение в пикселях
    property: value
  else
    // Обрабатываем значение без единиц измерения
    property: value px

// Пример использования mixin
div
  // Вызываем mixin и передаем значение в пикселях
  exampleMixin(10px)

  // Вызываем mixin и передаем значение без единиц измерения
  exampleMixin(10)

В данном примере мы создали mixin с именем exampleMixin, который принимает один аргумент value. Внутри mixin мы проверяем тип аргумента value с помощью функции typeof. Если тип аргумента равен 'unit', это означает, что значение было передано в пикселях, и мы используем его без изменений. Если тип аргумента не является 'unit', это означает, что значение было передано без единиц измерения, и мы добавляем к нему единицу измерения px.

Таким образом, при вызове mixin можно передавать значения как в пикселях (например, exampleMixin(10px)), так и без единиц измерения (например, exampleMixin(10)), и mixin будет правильно обрабатывать оба типа значений.