Remove all migration logic, scroll tutorial targets into view, mock URL uses device ID

- Remove legacy migration code: profiles→automations key fallbacks, segments array
  fallback, standby_interval compat, profile_id compat, wled→led type mapping,
  legacy calibration field, audio CSS migration, default template migration,
  loadTargets alias, wled sub-tab mapping
- Scroll tutorial step targets into view when off-screen
- Mock device URL changed from mock://{led_count} to mock://{device_id},
  hide mock URL badge on device cards

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-28 18:31:41 +03:00
parent 39b31aec34
commit 0eb0f44ddb
12 changed files with 26 additions and 172 deletions

View File

@@ -249,6 +249,12 @@ function showTutorialStep(index, direction = 1) {
target.classList.add('tutorial-target');
if (isFixed) target.style.zIndex = '10001';
// Scroll target into view if off-screen
const preRect = target.getBoundingClientRect();
if (preRect.bottom > window.innerHeight || preRect.top < 0) {
target.scrollIntoView({ behavior: 'instant', block: 'center' });
}
const targetRect = target.getBoundingClientRect();
const pad = 6;
let x, y, w, h;