/** Resolve the fixed DOM nodes used to assemble the application controls. */ export function readShellElements(document = globalThis.document) { return { _rightPanelStack: document.getElementById('right-context-rail'), _styleIndicator: document.getElementById('active-style-name'), _sliderPanel: document.getElementById('param-slider-panel'), _sliderContainer: document.getElementById('param-sliders'), _ppToggles: document.getElementById('pp-toggles'), _bloomBtn: document.getElementById('bloom-toggle'), _bloomSlider: document.getElementById('bloom-intensity-slider'), _sharpenBtn: document.getElementById('sharpen-toggle'), _sharpenSlider: document.getElementById('sharpen-intensity-slider'), _hudBtn: document.getElementById('hud-toggle'), _hudLayoutRow: document.getElementById('hud-layout-row'), _hudLayoutSelect: document.getElementById('hud-layout-select'), _cyberSonarBtn: document.getElementById('cyber-sonar-toggle'), _cyberSonarRings: document.getElementById('cyber-sonar-rings'), _cyberSonarRingsValue: document.getElementById('cyber-sonar-rings-value'), _cyberSonarRange: document.getElementById('cyber-sonar-range'), _cyberSonarRangeValue: document.getElementById('cyber-sonar-range-value'), _cyberSonarIntensity: document.getElementById('cyber-sonar-intensity'), _cyberSonarIntensityValue: document.getElementById( 'cyber-sonar-intensity-value', ), _cyberSonarOpacity: document.getElementById('cyber-sonar-opacity'), _cyberSonarOpacityValue: document.getElementById( 'cyber-sonar-opacity-value', ), _cyberSonarSector: document.getElementById('cyber-sonar-sector'), _cyberSonarSectorValue: document.getElementById('cyber-sonar-sector-value'), _detectionDensitySlider: document.getElementById( 'detection-density-slider', ), _detectionAllocationBtns: [ document.getElementById('detection-allocation-elastic'), document.getElementById('detection-allocation-weighted'), ].filter(Boolean), _detectionFadeSlider: document.getElementById('detection-fade-slider'), _detectionOpacitySlider: document.getElementById( 'detection-opacity-slider', ), _celestialBtn: document.getElementById('celestial-toggle'), _scopeBtn: document.getElementById('scope-toggle'), _scopeFeatherSlider: document.getElementById('scope-feather-slider'), _scopeFeatherValue: document.getElementById('scope-feather-value'), _mapStackChips: document.getElementById('map-stack-chips'), _mapStackStatus: document.getElementById('map-stack-status'), _cleanViewBtn: document.getElementById('clean-view-toggle'), _cleanViewExitBtn: document.getElementById('clean-view-exit'), _dataPanel: document.getElementById('data-panel'), _scenePanel: document.getElementById('scene-panel'), _cctvPanel: document.getElementById('cctv-panel'), _streetLevelPanel: document.getElementById('street-level-panel'), _radioPanel: document.getElementById('radio-panel'), _cockpitUtilityControls: document.getElementById( 'cockpit-utility-controls', ), _cockpitDisplayToggleBtn: document.getElementById( 'cockpit-display-toggle-btn', ), _cockpitDisplayPanel: document.getElementById('cockpit-display-panel'), _cockpitRadioToggleBtn: document.getElementById('cockpit-radio-toggle-btn'), _cockpitRadioPanel: document.getElementById('cockpit-radio-panel'), _cockpitRadioEnableBtn: document.getElementById('cockpit-radio-enable-btn'), _cockpitRadioStation: document.getElementById('cockpit-radio-station'), _cockpitRadioPrevBtn: document.getElementById('cockpit-radio-prev-btn'), _cockpitRadioPlayBtn: document.getElementById('cockpit-radio-play-btn'), _cockpitRadioNextBtn: document.getElementById('cockpit-radio-next-btn'), _cockpitRadioVolume: document.getElementById('cockpit-radio-volume'), _cockpitRadioVolumeValue: document.getElementById( 'cockpit-radio-volume-value', ), _radioLayerState: document.getElementById('radio-layer-state'), _radioEnableBtn: document.getElementById('radio-enable-btn'), _radioFilter: document.getElementById('radio-filter'), _radioStationName: document.getElementById('radio-station-name'), _radioStationMeta: document.getElementById('radio-station-meta'), _radioStationTags: document.getElementById('radio-station-tags'), _radioTuner: document.getElementById('radio-tuner'), _radioTunerSlider: document.getElementById('radio-tuner-slider'), _radioTunerNeedle: document.getElementById('radio-tuner-needle'), _radioTunerBandLabel: document.getElementById('radio-tuner-band-label'), _radioTunerValue: document.getElementById('radio-tuner-value'), _radioTunerStation: document.getElementById('radio-tuner-station'), _radioPrevBtn: document.getElementById('radio-prev-btn'), _radioPlayBtn: document.getElementById('radio-play-btn'), _radioNextBtn: document.getElementById('radio-next-btn'), _radioStopBtn: document.getElementById('radio-stop-btn'), _radioVolume: document.getElementById('radio-volume'), _radioVolumeValue: document.getElementById('radio-volume-value'), _radioPlaybackState: document.getElementById('radio-playback-state'), _radioStationHomepage: document.getElementById('radio-station-homepage'), _globalContextFlightsBtn: document.getElementById( 'global-context-flights-btn', ), _globalContextMissionsBtn: document.getElementById( 'global-context-missions-btn', ), _contextModeStandby: document.getElementById('context-mode-standby'), _contextFlightsView: document.getElementById('context-flights-view'), _contextMissionsView: document.getElementById('context-missions-view'), _installationsSearchBtn: document.getElementById( 'installations-search-btn', ), _leftPanelStack: document.getElementById('left-panel-stack'), _cctvEnableBtn: document.getElementById('cctv-enable-btn'), _cctvNearestBtn: document.getElementById('cctv-nearest-btn'), _cctvPrevBtn: document.getElementById('cctv-prev-btn'), _cctvNextBtn: document.getElementById('cctv-next-btn'), _cctvSelect: document.getElementById('cctv-camera-select'), _cctvFocusBtn: document.getElementById('cctv-focus-btn'), _cctvCoverageBtn: document.getElementById('cctv-coverage-btn'), _cctvAutoHopBtn: document.getElementById('cctv-auto-hop-btn'), _cctvProjectionBtn: document.getElementById('cctv-projection-btn'), _cctvQualityChip: document.getElementById('cctv-quality-chip'), _cctvAdjustBtn: document.getElementById('cctv-adjust-btn'), _cctvCalReadout: document.getElementById('cctv-cal-readout'), _cctvCalibSaveBtn: document.getElementById('cctv-calib-save-btn'), _cctvCalibResetBtn: document.getElementById('cctv-calib-reset-btn'), _cctvFrame: document.getElementById('cctv-frame'), _cctvFrameWrap: document.getElementById('cctv-frame-wrap'), _cctvVideo: document.getElementById('cctv-video'), _cctvSourceBadge: document.getElementById('cctv-source-badge'), _cctvMeta: document.getElementById('cctv-meta'), _cctvSummary: document.getElementById('cctv-summary'), _shareBtn: document.getElementById('share-btn'), _tiltMapBtn: document.getElementById('tilt-map-view'), _northUpBtn: document.getElementById('north-up-view'), _clearSelectedLayersBtn: document.getElementById('clear-selected-layers'), _globalLoadingStatus: document.getElementById('global-loading-status'), _globalLoadingLabel: document.getElementById('global-loading-label'), _globalLoadingDetail: document.getElementById('global-loading-detail'), _resetGlobeBtn: document.getElementById('reset-globe-view'), _cockpitResetGlobeBtn: document.getElementById('cockpit-reset-globe'), _styleButtons: document.getElementById('style-buttons'), _trafficSyncChip: document.getElementById('traffic-sync-chip'), _trafficSyncLabel: document.getElementById('traffic-sync-label'), _trafficSyncProgress: document.getElementById('traffic-sync-progress'), _cctvSyncChip: document.getElementById('cctv-sync-chip'), _cctvSyncLabel: document.getElementById('cctv-sync-label'), _cctvSyncProgress: document.getElementById('cctv-sync-progress'), _toast: document.getElementById('toast'), _locationSearch: document.getElementById('location-search'), _locationSearchError: document.getElementById('location-search-error'), _searchToggle: document.getElementById('search-toggle'), _locationPills: document.getElementById('location-pills'), _poiRow: document.getElementById('poi-row'), _locationBarDivider: document.getElementById('location-bar-divider'), _styleMiniValue: document.getElementById('style-mini-value'), _locationMiniCity: document.getElementById('location-mini-city'), _locationMiniPoi: document.getElementById('location-mini-poi'), _safeFrameOverlay: document.getElementById('safe-frame-overlay'), _safeFrameBox: document.getElementById('safe-frame-box'), _detectionBtn: document.getElementById('detection-toggle'), _models3dBtn: document.getElementById('models3d-toggle'), _models3dModeRow: document.getElementById('models3d-mode-row'), }; }