1.0.0 • Published 3 months ago

@qpokychuk/tailwind-input-plugin v1.0.0

Weekly downloads
-
License
ISC
Repository
github
Last release
3 months ago

Input Plugin for Tailwind CSS

Предоставляет классы для создания текстовых полей, включая эффекты при наведении, фокусе

Установка

npm install @qpokychuk/tailwind-input-plugin --save-dev
// tailwind.config.js
{    
  plugins: [
    require('@qpokychuk/tailwind-input-plugin'),
  ],
}

Основа использования

Добавьте обязательный класс input, затем добавьте дополнительные классы для настройки отображения

<input type="text" class="input" />

Установка цвета поля

Управляйте цветом поля с помощью утилит input-{color} (color - цвета вашей темы).

<input class="input input-indigo ..." />
<input class="input input-blue ..." />
<input class="input input-red ..." />

Если вам нужно использовать одноразовое значение color, которое не имеет смысла включать в вашу тему, используйте квадратные скобки, чтобы сгенерировать свойство "на лету", используя любое произвольное значение.

<input class="input input-[#B33771] ..." />

Screenshot_1

Установка размера поля

Управляйте размером поля с помощью утилит input-{inputSize}.

<input class="input input-xs ..." />
<input class="input input-sm ..." />
<input class="input input-base ..." /> <!-- Вариант по умолчанию -->
<input class="input input-lg ..." />
<input class="input input-xl ..." />
<input class="input input-2xl ..." />

Если вам нужно использовать одноразовое значение inputSize, которое не имеет смысла включать в вашу тему, используйте квадратные скобки, чтобы сгенерировать свойство "на лету", используя любое произвольное значение.

<input class="input input-[50px] ..." />

Screenshot_2

Установка закругления поля

Управляйте закруглением поля с помощью утилит rounded из tailwind.

<input class="input ..." />
<input class="input rounded ..." />
<input class="input rounded-xl ..." />
<input class="input rounded-full ..." />

Screenshot_3

Настройка вашей темы

По умолчанию плагин предоставляет размеры поля, вы можете их расширить

// tailwind.config.js
{
  theme: {
    inputSize: {
      xs: '28px',
      sm: '32px',
      base: '42px',
      lg: '48px',
      xl: '56px',
      ['2xl']: '64px',
    },
  }
}

Конфигурация

Вы можете настроить плагин с помощью опций Используйте вызов плагина с объектом конфигурации:

// tailwind.config.js
{    
  plugins: [
    require('@qpokychuk/tailwind-input-plugin')({
      className: 'input',
      disabledOpacity: 0.6,
      border: "1px solid theme('colors.black / 40%')",
      baseCss: {},

      focusStyle: {
        borderColor: 'var(--tw-input-color)',
        boxShadow: '0 0 0 1px var(--tw-input-color)',
        zIndex: 2,
      },
      hoverStyle: {
        borderColor: 'var(--tw-input-color)',
        zIndex: 2,
      },
    }),
  ],
}
ПараметрЗначение по умолчаниюОписание
className'input'Базовый класс для поля. Вы можете использовать свой, например 'ui-input', тогда ваши классы будут выглядеть так: ui-input ui-input-indigo ui-input-xl ...
disabledOpacity0.6Определяет непрозрачность неактивного поля
border1px solid theme('colors.black / 40%')Обводка по умолчанию используется color.black - если вы не переопределяете этот параметр в вашей теме должен быть цвет black
baseCss{}Дополнительные бызовые стили
focusStyleСм. вышеПереопределит стили поля в фокусе
hoverStyleСм. вышеПереопределит стили поля при наведении

Поддержать автора

1.0.0

3 months ago