Files
spore-ledlab/public/scripts/constants.js
2025-10-11 17:46:32 +02:00

52 lines
1.2 KiB
JavaScript

(function(){
const TIMING = {
NAV_COOLDOWN_MS: 300,
VIEW_FADE_OUT_MS: 150,
VIEW_FADE_IN_MS: 200,
VIEW_FADE_DELAY_MS: 50,
AUTO_REFRESH_MS: 30000,
PRIMARY_NODE_REFRESH_MS: 10000,
LOAD_GUARD_MS: 10000,
UDP_DISCOVERY_INTERVAL_MS: 5000,
WEBSOCKET_PING_INTERVAL_MS: 30000,
FRAME_UPDATE_INTERVAL_MS: 50
};
const SELECTORS = {
NAV_TAB: '.nav-tab',
VIEW_CONTENT: '.view-content',
MATRIX_CANVAS: '.matrix-canvas',
PRESET_SELECT: '.preset-select',
NODE_LIST: '.node-list',
CONTROL_PANEL: '.control-panel'
};
const CLASSES = {
NODE_CONNECTED: 'node-connected',
NODE_DISCONNECTED: 'node-disconnected',
NODE_SELECTED: 'node-selected',
PRESET_ACTIVE: 'preset-active',
STREAMING_ACTIVE: 'streaming-active'
};
const DEFAULTS = {
MATRIX_WIDTH: 16,
MATRIX_HEIGHT: 16,
UDP_PORT: 4210,
WEBSOCKET_PORT: 8080,
BROADCAST_ADDRESS: '255.255.255.255'
};
const MESSAGES = {
NODE_DISCOVERED: 'node:discovered',
NODE_LOST: 'node:lost',
STREAM_START: 'stream:start',
STREAM_STOP: 'stream:stop',
STREAM_UPDATE: 'stream:update',
PRESET_CHANGED: 'preset:changed',
MATRIX_UPDATED: 'matrix:updated'
};
window.CONSTANTS = window.CONSTANTS || { TIMING, SELECTORS, CLASSES, DEFAULTS, MESSAGES };
})();