feat(labs): Фаза0 — эконом-режим FX + выбор симуляции из списка в редакторе

План улучшения симуляций — plans/simulations-improvement/README.md.
- LabFX: reduced-motion/эконом-режим (prefers-reduced-motion + тумблер
  localStorage labfx-economy). Тряска отключается, частицы ×0.25 — доступность
  и экономия на слабых устройствах сразу для всех ~50 симуляций. Кнопка-тумблер
  в lab.html рядом со звуком.
- lesson-editor: блок «Симуляция» — выпадающий список из /api/lab/sims
  (сгруппирован по предметам) вместо сырого ввода simId; неизвестный id не
  теряется, помечается «(не найдена)». Закрывает хрупкую вставку в урок.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Maxim Dolgolyov
2026-06-13 10:33:50 +03:00
parent 57eae767bf
commit 28db2de74f
5 changed files with 168 additions and 4 deletions
+3
View File
@@ -72,6 +72,9 @@
var size = opts.size != null ? opts.size : 3;
var sizeFade = opts.sizeFade != null ? opts.sizeFade : true;
// Эконом/reduced-motion — декоративных частиц в разы меньше
if (global.LabFX.reduced) count = Math.max(1, Math.round(count * 0.25));
for (var i = 0; i < count; i++) {
var p = acquire();
if (!p) break;