c4ca8bcae7
- Удалён _util.js (SimUtil): 0 использований во всех симуляциях (проверено), грузился впустую. - LabPalette (_palette.js): единый источник цветов canvas + PX_PER_M вместо хардкода в каждом файле; задел под светлую тему. - SimBase (_simbase.js): опциональная база жизненного цикла (DPR-fit + RAF play/pause/reset/destroy). Существующие симуляции не трогаются; «дробовик» остаётся fallback. Адаптация — постепенно, по мере правок (нет фронт-тестов). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
29 lines
1.3 KiB
JavaScript
29 lines
1.3 KiB
JavaScript
'use strict';
|
|
/* LabPalette — единый источник цветов и констант для canvas-симуляций (Фаза 0).
|
|
* В 2D-контексте нельзя использовать var(--…) из ls.css, поэтому палитра
|
|
* дублировалась хардкодом в каждом файле. Теперь — одна точка правды.
|
|
* Адаптация симуляций — постепенная (по мере правок), задел под светлую тему. */
|
|
(function (global) {
|
|
global.LabPalette = global.LabPalette || {
|
|
bg: '#0D0D1A', // фон сцены
|
|
panel: 'rgba(255,255,255,0.04)', // лёгкие плашки
|
|
|
|
violet: '#9B5DE5', // бренд (= --violet)
|
|
cyan: '#06D6E0', // = --cyan
|
|
green: '#7BF5A4',
|
|
red: '#EF476F',
|
|
amber: '#FFD166',
|
|
pink: '#F15BB5', // = --pink
|
|
|
|
text: '#FFFFFF',
|
|
text2: 'rgba(255,255,255,0.72)',
|
|
muted: 'rgba(255,255,255,0.55)',
|
|
faint: 'rgba(255,255,255,0.30)',
|
|
grid: 'rgba(255,255,255,0.08)',
|
|
axis: 'rgba(255,255,255,0.45)',
|
|
|
|
// Физическая шкала по умолчанию: 1 м = 100 px (вынесено из магического *100).
|
|
PX_PER_M: 100,
|
|
};
|
|
})(window);
|