52 lines
1.2 KiB
JavaScript
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 };
|
|
})();
|