Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/dastan64/auto-leasing-calculator

Калькулятор лизинга авто
https://github.com/dastan64/auto-leasing-calculator

hooks react scss

Last synced: 2 days ago
JSON representation

Калькулятор лизинга авто

Awesome Lists containing this project

README

        

### Общие требования

1. Теги Title и Description должны располагаться сразу после открытия тега head. Значения можно прописать любые.
2. Вынести все стили, которые используются в макете в отдельные CSS-файлы.
3. Не допускать конфликта CSS-стилей.
4. Добиться кроссбраузерности:
* Google Chrome
* Android
* Mobile Safari
* Яндекс.Браузер
* Firefox
* Opera.
5. Пройти валидацию [https://validator.w3.org/](https://validator.w3.org/). Это не критичное требование, но элементарных
ошибок верстки не должно быть (например, незакрытые теги, пропуск обязательных атрибутов и т.п.).

* По умолчанию минимальное разрешение макетов — 320px (в таком размере будут все дизайн-макеты), т.к. в среднем 25% всех
посещений с мобильных устройств происходят именно с устройств с таким логическим разрешением по горизонтали.
* Если устройство уже, чем 320px, то пропорционально уменьшаем сайт с разрешения 320px до разрешения экрана
пользователя (чтобы не появлялся горизонтальный скролл).
* Максимальное разрешение по умолчанию — 1440px.
* Если ширина экрана пользователя больше, чем 1440px, то пропорционально масштабируем макет 1440px до разрешения экрана
пользователя с пропорциональным расширением отступов слева и справа (для каждого проекта процент отступов
индивидуальный).

### Требования к калькулятору

1. Калькулятор должен инициализироваться с указанными значениями по умолчанию;
2. В каждое поле можно ввести значение как с клавиатуры, так и с помощью ползунка;
3. При выборе значения с помощью ползунка, все числа должны пересчитываться динамически в процессе движения ползунка, а
не только после его остановки;
4. У каждого поля есть максимальное и минимальное значение — ползунок должен ограничивать пользователя в выборе данных,
а при вводе некорректного значения с клавиатуры, оно должно сбрасываться к ближайшему корректному числу (максимуму
или минимуму).
* Для поля “Стоимость автомобиля” границы: 1 млн.руб. — 6 млн.руб.;
* Для поля “Первоначальный взнос” границы: 10% - 60% (здесь ввод происходит именно в процентах от стоимости, а не
рублях; рубли - результат расчета от введенной стоимости автомобиля);
* Для поля “Срок лизинга” границы: 1 - 60 месяцев;
5. По кнопке “Оформить заявку” должен формироваться запрос, который отправляет все данные калькулятора на бэкенд,
например, чтобы потом backend мог использовать эти данные для передачи в CRM-систему.

_В момент клика по кнопке кнопка должна блокироваться от возможности повторной отправки данных на время выполнения
запроса к бэкенду, а внутри кнопки отображаться прелоадер. Инпуты и слайдеры на время отправки должны блокироваться._