export const playerDom = {
  stationNameEl: document.getElementById('station-name'),
  stationSubtitleEl: document.getElementById('station-subtitle'),
  stationHealthSummaryEl: document.getElementById('station-health-summary'),
  stationHealthDetailEl: document.getElementById('station-health-detail'),
  sessionSchedulerBtn: document.getElementById('session-scheduler-btn'),
  sessionSchedulerBadge: document.getElementById('session-scheduler-badge'),
  sessionSummaryBtn: document.getElementById('session-summary-btn'),
  sessionSummaryText: document.getElementById('session-summary-text'),
  sleepTimerStatusEl: document.getElementById('sleep-timer-status'),
  wakeAlarmStatusEl: document.getElementById('wake-alarm-status'),
  sleepTimerButtons: document.querySelectorAll('[data-sleep-minutes]'),
  wakeAlarmButtons: document.querySelectorAll('[data-wake-minutes]'),
  songHistoryPanelEl: document.getElementById('song-history-panel'),
  songHistoryListEl: document.getElementById('song-history-list'),
  songHistoryClearBtn: document.getElementById('song-history-clear-btn'),
  managedCatalogStatusEl: document.getElementById('managed-catalog-status'),
  catalogSyncStatusEl: document.getElementById('catalog-sync-status'),
  catalogSyncStatusTextEl: document.getElementById('catalog-sync-status-text'),
  catalogSyncStatusTimeEl: document.getElementById('catalog-sync-status-time'),
  catalogSyncHistoryEl: document.getElementById('catalog-sync-history'),
  nowPlayingEl: document.getElementById('now-playing'),
  nowArtistEl: document.getElementById('now-artist'),
  nowTitleEl: document.getElementById('now-title'),
  statusTextEl: document.getElementById('status-text'),
  statusDotEl: document.querySelector('.status-dot'),
  engineBadgeEl: document.getElementById('engine-badge'),
  engineLabelEl: document.getElementById('engine-label'),
  playBtn: document.getElementById('play-btn'),
  iconPlay: document.getElementById('icon-play'),
  iconStop: document.getElementById('icon-stop'),
  prevBtn: document.getElementById('prev-btn'),
  nextBtn: document.getElementById('next-btn'),
  volumeSlider: document.getElementById('volume-slider'),
  volumeValue: document.getElementById('volume-value'),
  muteBtn: document.getElementById('mute-btn'),
  iconVolume: document.getElementById('icon-volume'),
  iconMuted: document.getElementById('icon-muted'),
  castOverlay: document.getElementById('cast-overlay'),
  closeOverlayBtn: document.getElementById('close-overlay'),
  deviceListEl: document.getElementById('device-list'),
  coverflowStageEl: document.getElementById('artwork-coverflow-stage'),
  coverflowPrevBtn: document.getElementById('artwork-prev'),
  coverflowNextBtn: document.getElementById('artwork-next'),
  artworkPlaceholder: document.querySelector('.artwork-placeholder'),
  logoTextEl: document.querySelector('.station-logo-text'),
  logoImgEl: document.getElementById('station-logo-img'),
  stationLibraryEl: document.getElementById('station-library'),
  playerLayoutEl: document.querySelector('.player-layout'),
  stationLibraryListEl: document.getElementById('station-library-list'),
  stationLibrarySummaryEl: document.getElementById('station-library-summary'),
  stationSearchInput: document.getElementById('station-search-input'),
  stationLibraryCloseBtn: document.getElementById('station-library-close'),
  stationLibraryFiltersToggleBtn: document.getElementById('station-library-filters-toggle'),
  clearManagedCatalogBtn: document.getElementById('clear-managed-catalog-btn'),
  stationCategoryListEl: document.getElementById('station-category-list'),
  stationCountryFilterWrapEl: document.querySelector('[data-country-filter]'),
  stationCountryFilterBtn: document.getElementById('station-country-filter-btn'),
  stationCountryFilterMenu: document.getElementById('station-country-filter-menu'),
  stationCountryFilterText: document.getElementById('station-country-filter-text'),
  stationCountryFilterFlag: document.getElementById('station-country-filter-flag'),
  stationAdvancedFiltersBtn: document.getElementById('station-advanced-filters-btn'),
  stationAdvancedFiltersOverlay: document.getElementById('station-advanced-filters-overlay'),
  stationAdvancedFiltersCloseBtn: document.getElementById('station-advanced-filters-close-btn'),
  stationAdvancedFiltersDoneBtn: document.getElementById('station-advanced-filters-done-btn'),
  countrySelectionOverlay: document.getElementById('country-selection-overlay'),
  countrySelectionSearchInput: document.getElementById('country-selection-search-input'),
  countrySelectionSummaryEl: document.getElementById('country-selection-summary'),
  countrySelectionEmptyEl: document.getElementById('country-selection-empty'),
  countrySelectionListEl: document.getElementById('country-selection-list'),
  countrySelectionDefaultsBtn: document.getElementById('country-selection-defaults-btn'),
  countrySelectionAllBtn: document.getElementById('country-selection-all-btn'),
  countrySelectionSaveBtn: document.getElementById('country-selection-save-btn'),
  countrySelectionCancelBtn: document.getElementById('country-selection-cancel-btn'),
  stationSortBtn: document.getElementById('station-sort-btn'),
  stationSortText: document.getElementById('station-sort-text'),
  stationSortMenu: document.getElementById('station-sort-menu'),
  stationSortWrapEl: document.querySelector('[data-sort-filter]'),
  stationLibraryPaginationEl: document.getElementById('station-library-pagination'),
  stationLibraryPagePrevBtn: document.getElementById('station-library-page-prev'),
  stationLibraryPageNextBtn: document.getElementById('station-library-page-next'),
  stationLibraryPageInfo: document.getElementById('station-library-page-info'),
  stationLanguageFilterWrapEl: document.querySelector('[data-language-filter]'),
  stationLanguageFilterBtn: document.getElementById('station-language-filter-btn'),
  stationLanguageFilterText: document.getElementById('station-language-filter-text'),
  stationLanguageFilterMenu: document.getElementById('station-language-filter-menu'),
  stationCodecFilterWrapEl: document.querySelector('[data-codec-filter]'),
  stationCodecFilterBtn: document.getElementById('station-codec-filter-btn'),
  stationCodecFilterText: document.getElementById('station-codec-filter-text'),
  stationCodecFilterMenu: document.getElementById('station-codec-filter-menu'),
  stationBitrateFilterWrapEl: document.querySelector('[data-bitrate-filter]'),
  stationBitrateFilterBtn: document.getElementById('station-bitrate-filter-btn'),
  stationBitrateFilterText: document.getElementById('station-bitrate-filter-text'),
  stationBitrateFilterMenu: document.getElementById('station-bitrate-filter-menu'),
  stationHealthFilterBtn: document.getElementById('station-health-filter-btn'),
  stationHealthFilterText: document.getElementById('station-health-filter-text'),
  stationTabBtns: document.querySelectorAll('[data-station-tab]'),
  installPromptBannerEl: document.getElementById('install-prompt-banner'),
  installPromptActionBtn: document.getElementById('install-prompt-action'),
  installPromptDismissBtn: document.getElementById('install-prompt-dismiss'),
  editBtn: document.getElementById('edit-stations-btn'),
  stationsListBtn: document.getElementById('stations-list-btn'),
  shortcutHelpBtn: document.getElementById('shortcut-help-btn'),
  installAppBtn: document.getElementById('install-app-btn'),
  castBtn: document.getElementById('cast-btn'),
  editorOverlay: document.getElementById('editor-overlay'),
  sessionSchedulerOverlay: document.getElementById('session-scheduler-overlay'),
  sessionSchedulerCloseBtn: document.getElementById('session-scheduler-close-btn'),
  sessionSchedulerDoneBtn: document.getElementById('session-scheduler-done-btn'),
  shortcutHelpOverlay: document.getElementById('shortcut-help-overlay'),
  shortcutHelpCloseBtn: document.getElementById('shortcut-help-close-btn'),
  editorCloseBtn: document.getElementById('editor-close-btn'),
  editorListEl: document.getElementById('editor-list'),
  editorPersistenceNoteEl: document.getElementById('editor-persistence-note'),
  editorPersistenceBackendEl: document.getElementById('editor-persistence-backend'),
  editorBackupActivityNoteEl: document.getElementById('editor-backup-activity-note'),
  exportUserDataBtn: document.getElementById('export-user-data-btn'),
  importUserDataBtn: document.getElementById('import-user-data-btn'),
  importUserDataInput: document.getElementById('import-user-data-input'),
  resetUserDataBtn: document.getElementById('reset-user-data-btn'),
  resetUserDataBackupCheckbox: document.getElementById('reset-user-data-backup-checkbox'),
  addStationForm: document.getElementById('add-station-form'),
  usTitle: document.getElementById('us_title'),
  usUrl: document.getElementById('us_url'),
  usLogo: document.getElementById('us_logo'),
  usWww: document.getElementById('us_www'),
  usId: document.getElementById('us_id'),
  castOutputRow: document.getElementById('cast-output-row'),
  castOutputBtn: document.getElementById('cast-output-btn'),
  castOutputText: document.getElementById('cast-output-text'),
};

playerDom.castBtnCastIcon = playerDom.castBtn?.querySelector('svg:not(.hidden)') ?? null;
playerDom.castBtnAirPlayIcon = playerDom.castBtn?.querySelectorAll('svg')?.[1] ?? null;
