compact UI and add localization switch
Some checks failed
ci / test (push) Has been cancelled

This commit is contained in:
VPN SaaS Dev
2026-05-19 05:05:24 +09:00
parent 5e5582664a
commit 58ff6ff614
6 changed files with 761 additions and 65 deletions

View File

@@ -220,14 +220,19 @@
Исполнитель
<input name="vendor" placeholder="СТО / магазин" />
</label>
<label>
Следующая дата
<input name="next_due_date" type="date" />
</label>
<label>
Следующий пробег
<input name="next_due_odometer" type="number" min="0" />
</label>
<details class="advanced-fields wide">
<summary>Напоминание о следующем ТО</summary>
<div class="grid-form drawer-form compact-inner-form">
<label>
Следующая дата
<input name="next_due_date" type="date" />
</label>
<label>
Следующий пробег
<input name="next_due_odometer" type="number" min="0" />
</label>
</div>
</details>
<button type="submit">Сохранить запись</button>
</form>
</section>
@@ -292,6 +297,28 @@
</div>
<div class="drawer-content">
<section class="drawer-section hidden" id="quickAddSection">
<h2>Добавить запись</h2>
<div class="quick-entry-grid">
<button type="button" data-quick-entry="fuelSection">
<span>Заправка</span>
<small>дата, пробег, литры, цена</small>
</button>
<button type="button" data-quick-entry="serviceSection">
<span>ТО и ремонт</span>
<small>работа, стоимость, следующий срок</small>
</button>
<button type="button" data-quick-entry="expensesSection">
<span>Расход</span>
<small>страховка, штраф, парковка, прочее</small>
</button>
<button type="button" data-quick-entry="scan">
<span>Скан чека</span>
<small>фото или файл</small>
</button>
</div>
</section>
<section class="drawer-section hidden" id="carsSection">
<h2>Автомобили</h2>
<div id="drawerCars" class="cars drawer-cars"></div>
@@ -350,49 +377,54 @@
Поставщик / место
<input name="vendor" />
</label>
<label>
Одометр
<input name="odometer" type="number" min="0" />
</label>
<label>
Начало периода
<input name="period_start" type="date" />
</label>
<label>
Конец периода
<input name="period_end" type="date" />
</label>
<label>
Месяцев покрытия
<select name="period_months">
<option value="">По датам</option>
<option value="1">1 месяц</option>
<option value="3">3 месяца</option>
<option value="6">6 месяцев</option>
<option value="12">12 месяцев</option>
</select>
</label>
<label>
Номер полиса / документа
<input name="policy_number" />
</label>
<label>
Тип страховки
<select name="insurance_type">
<option value="">Не задано</option>
<option value="mandatory">ОСАГО / обязательная</option>
<option value="full">КАСКО / полная</option>
<option value="other">Другое</option>
</select>
</label>
<label>
Комментарий
<input name="notes" />
</label>
<label class="check">
<input name="is_recurring" type="checkbox" />
Регулярный расход
</label>
<details class="advanced-fields wide">
<summary>Дополнительно</summary>
<div class="grid-form drawer-form compact-inner-form">
<label>
Одометр
<input name="odometer" type="number" min="0" />
</label>
<label>
Начало периода
<input name="period_start" type="date" />
</label>
<label>
Конец периода
<input name="period_end" type="date" />
</label>
<label>
Месяцев покрытия
<select name="period_months">
<option value="">По датам</option>
<option value="1">1 месяц</option>
<option value="3">3 месяца</option>
<option value="6">6 месяцев</option>
<option value="12">12 месяцев</option>
</select>
</label>
<label>
Номер полиса / документа
<input name="policy_number" />
</label>
<label>
Тип страховки
<select name="insurance_type">
<option value="">Не задано</option>
<option value="mandatory">ОСАГО / обязательная</option>
<option value="full">КАСКО / полная</option>
<option value="other">Другое</option>
</select>
</label>
<label>
Комментарий
<input name="notes" />
</label>
<label class="check">
<input name="is_recurring" type="checkbox" />
Регулярный расход
</label>
</div>
</details>
<button type="submit">Сохранить расход</button>
</form>
</section>