ET-005: переключатель единиц измерения расстояний (км/мили) #6

Merged
admin merged 9 commits from feature/ET-005- into main 2026-05-22 01:50:13 +03:00

9 Commits

Author SHA1 Message Date
3f6e7ae284 tester(ET): auto-commit from tester run_id=12
All checks were successful
CI / lint (push) Successful in 4s
CI / test (push) Successful in 4s
CI / lint (pull_request) Successful in 4s
CI / test (pull_request) Successful in 5s
CI / build (push) Successful in 3s
CI / build (pull_request) Successful in 1s
2026-05-21 21:29:11 +00:00
d32ad8f018 reviewer(ET): auto-commit from reviewer run_id=11
All checks were successful
CI / lint (push) Successful in 4s
CI / test (push) Successful in 5s
CI / lint (pull_request) Successful in 3s
CI / build (push) Successful in 2s
CI / test (pull_request) Successful in 4s
CI / build (pull_request) Successful in 3s
2026-05-21 19:59:23 +00:00
2fe5cfe453 feat(web): переключатель единиц измерения расстояний (км/мили)
All checks were successful
CI / lint (push) Successful in 4s
CI / test (push) Successful in 5s
CI / build (push) Successful in 2s
CI / lint (pull_request) Successful in 4s
CI / test (pull_request) Successful in 4s
CI / build (pull_request) Successful in 1s
Добавляет сегментированный toggle км/мили в попап рельефа. Новый модуль
src/web/units.js — единственный источник истины по выбору единицы, её
персистентности (localStorage: distance_unit, дефолт km) и форматированию
отображаемых расстояний (Units.formatDistance).

Все места форматирования в app.js переведены на централизованный
форматтер; пересчёт всех видимых расстояний выполняет единый оркестратор
onUnitChange по событию unitchange (карточки маршрутов, лист точек,
линейка, масштабная линейка, связка, «красивый» маршрут).

Экспорт GPX и параметры построения маршрута остаются метрическими
(риск R6). units.js подключается строго перед app.js (риск R7).

Refs: ET-005
2026-05-21 19:36:13 +00:00
bafbea2dab architect(ET-005): ADR, infra-requirements, data-requirements, tech-risks
All checks were successful
CI / lint (push) Successful in 4s
CI / test (push) Successful in 5s
CI / build (push) Successful in 1s
2026-05-21 22:18:08 +03:00
2458a3efe0 docs(ET-005): Test Plan
All checks were successful
CI / lint (push) Successful in 4s
CI / test (push) Successful in 4s
CI / build (push) Successful in 1s
2026-05-21 22:07:40 +03:00
2d29106c45 docs(ET-005): Acceptance Criteria
All checks were successful
CI / lint (push) Successful in 3s
CI / test (push) Successful in 4s
CI / build (push) Successful in 2s
2026-05-21 22:05:33 +03:00
2f2beb0447 docs(ET-005): TRZ
All checks were successful
CI / lint (push) Successful in 4s
CI / test (push) Successful in 4s
CI / build (push) Successful in 1s
2026-05-21 22:05:21 +03:00
420df39347 docs(ET-005): BRD
All checks were successful
CI / lint (push) Successful in 4s
CI / test (push) Successful in 4s
CI / build (push) Successful in 1s
2026-05-21 22:05:07 +03:00
d16a4747a0 docs: init ET-005 business request
All checks were successful
CI / lint (push) Successful in 4s
CI / test (push) Successful in 4s
CI / build (push) Successful in 2s
2026-05-21 22:02:32 +03:00