chore: improve readability

This commit is contained in:
Su-Yong
2025-10-12 14:28:29 +09:00
parent 4f716d8e0b
commit ffa61687bf
137 changed files with 2625 additions and 2626 deletions

View File

@ -23,15 +23,15 @@ import {
} from '@/utils/trusted-types';
import type { PluginConfig } from '@/types/plugins';
import type { YoutubePlayer } from '@/types/youtube-player';
import type { MusicPlayer } from '@/types/music-player';
import type { QueueElement } from '@/types/queue';
import type { QueueResponse } from '@/types/youtube-music-desktop-internal';
import type { YouTubeMusicAppElement } from '@/types/youtube-music-app-element';
import type { QueueResponse } from '@/types/music-player-desktop-internal';
import type { MusicPlayerAppElement } from '@/types/music-player-app-element';
import type { SearchBoxElement } from '@/types/search-box-element';
setTheme('dark');
let api: (Element & YoutubePlayer) | null = null;
let api: (Element & MusicPlayer) | null = null;
let isPluginLoaded = false;
let isApiLoaded = false;
let firstDataLoaded = false;
@ -70,29 +70,29 @@ async function onApiLoaded() {
window.dispatchEvent(new Event('resize')),
);
window.ipcRenderer.on('ytmd:previous-video', () => {
window.ipcRenderer.on('peard:previous-video', () => {
document
.querySelector<HTMLElement>('.previous-button.ytmusic-player-bar')
?.click();
});
window.ipcRenderer.on('ytmd:next-video', () => {
window.ipcRenderer.on('peard:next-video', () => {
document
.querySelector<HTMLElement>('.next-button.ytmusic-player-bar')
?.click();
});
window.ipcRenderer.on('ytmd:play', (_) => {
window.ipcRenderer.on('peard:play', (_) => {
api?.playVideo();
});
window.ipcRenderer.on('ytmd:pause', (_) => {
window.ipcRenderer.on('peard:pause', (_) => {
api?.pauseVideo();
});
window.ipcRenderer.on('ytmd:toggle-play', (_) => {
window.ipcRenderer.on('peard:toggle-play', (_) => {
if (api?.getPlayerState() === 2) api?.playVideo();
else api?.pauseVideo();
});
window.ipcRenderer.on('ytmd:seek-to', (_, t: number) => api!.seekTo(t));
window.ipcRenderer.on('ytmd:seek-by', (_, t: number) => api!.seekBy(t));
window.ipcRenderer.on('ytmd:shuffle', () => {
window.ipcRenderer.on('peard:seek-to', (_, t: number) => api!.seekTo(t));
window.ipcRenderer.on('peard:seek-by', (_, t: number) => api!.seekBy(t));
window.ipcRenderer.on('peard:shuffle', () => {
document
.querySelector<
HTMLElement & { queue: { shuffle: () => void } }
@ -109,12 +109,12 @@ async function onApiLoaded() {
return isShuffled !== null;
};
window.ipcRenderer.on('ytmd:get-shuffle', () => {
window.ipcRenderer.send('ytmd:get-shuffle-response', isShuffled());
window.ipcRenderer.on('peard:get-shuffle', () => {
window.ipcRenderer.send('peard:get-shuffle-response', isShuffled());
});
window.ipcRenderer.on(
'ytmd:update-like',
'peard:update-like',
(_, status: 'LIKE' | 'DISLIKE' = 'LIKE') => {
document
.querySelector<
@ -123,7 +123,7 @@ async function onApiLoaded() {
?.updateLikeStatus(status);
},
);
window.ipcRenderer.on('ytmd:switch-repeat', (_, repeat = 1) => {
window.ipcRenderer.on('peard:switch-repeat', (_, repeat = 1) => {
for (let i = 0; i < repeat; i++) {
document
.querySelector<
@ -132,7 +132,7 @@ async function onApiLoaded() {
?.onRepeatButtonClick();
}
});
window.ipcRenderer.on('ytmd:update-volume', (_, volume: number) => {
window.ipcRenderer.on('peard:update-volume', (_, volume: number) => {
document
.querySelector<
HTMLElement & { updateVolume: (volume: number) => void }
@ -162,18 +162,18 @@ async function onApiLoaded() {
}
};
window.ipcRenderer.on('ytmd:get-fullscreen', () => {
window.ipcRenderer.send('ytmd:set-fullscreen', isFullscreen());
window.ipcRenderer.on('peard:get-fullscreen', () => {
window.ipcRenderer.send('peard:set-fullscreen', isFullscreen());
});
window.ipcRenderer.on(
'ytmd:click-fullscreen-button',
'peard:click-fullscreen-button',
(_, fullscreen: boolean | undefined) => {
clickFullscreenButton(fullscreen ?? false);
},
);
window.ipcRenderer.on('ytmd:toggle-mute', (_) => {
window.ipcRenderer.on('peard:toggle-mute', (_) => {
document
.querySelector<
HTMLElement & { onVolumeClick: () => void }
@ -181,9 +181,9 @@ async function onApiLoaded() {
?.onVolumeClick();
});
window.ipcRenderer.on('ytmd:get-queue', () => {
window.ipcRenderer.on('peard:get-queue', () => {
const queue = document.querySelector<QueueElement>('#queue');
window.ipcRenderer.send('ytmd:get-queue-response', {
window.ipcRenderer.send('peard:get-queue-response', {
items: queue?.queue.getItems(),
autoPlaying: queue?.queue.autoPlaying,
continuation: queue?.queue.continuation,
@ -191,10 +191,10 @@ async function onApiLoaded() {
});
window.ipcRenderer.on(
'ytmd:add-to-queue',
'peard:add-to-queue',
(_, videoId: string, queueInsertPosition: string) => {
const queue = document.querySelector<QueueElement>('#queue');
const app = document.querySelector<YouTubeMusicAppElement>('ytmusic-app');
const app = document.querySelector<MusicPlayerAppElement>('ytmusic-app');
if (!app) return;
const store = queue?.queue.store.store;
@ -246,7 +246,7 @@ async function onApiLoaded() {
},
);
window.ipcRenderer.on(
'ytmd:move-in-queue',
'peard:move-in-queue',
(_, fromIndex: number, toIndex: number) => {
const queue = document.querySelector<QueueElement>('#queue');
queue?.dispatch({
@ -258,21 +258,21 @@ async function onApiLoaded() {
});
},
);
window.ipcRenderer.on('ytmd:remove-from-queue', (_, index: number) => {
window.ipcRenderer.on('peard:remove-from-queue', (_, index: number) => {
const queue = document.querySelector<QueueElement>('#queue');
queue?.dispatch({
type: 'REMOVE_ITEM',
payload: index,
});
});
window.ipcRenderer.on('ytmd:set-queue-index', (_, index: number) => {
window.ipcRenderer.on('peard:set-queue-index', (_, index: number) => {
const queue = document.querySelector<QueueElement>('#queue');
queue?.dispatch({
type: 'SET_INDEX',
payload: index,
});
});
window.ipcRenderer.on('ytmd:clear-queue', () => {
window.ipcRenderer.on('peard:clear-queue', () => {
const queue = document.querySelector<QueueElement>('#queue');
queue?.queue.store.store.dispatch({
type: 'SET_PLAYER_PAGE_INFO',
@ -284,9 +284,9 @@ async function onApiLoaded() {
});
window.ipcRenderer.on(
'ytmd:search',
'peard:search',
async (_, query: string, params?: string, continuation?: string) => {
const app = document.querySelector<YouTubeMusicAppElement>('ytmusic-app');
const app = document.querySelector<MusicPlayerAppElement>('ytmusic-app');
const searchBox =
document.querySelector<SearchBoxElement>('ytmusic-search-box');
@ -307,7 +307,7 @@ async function onApiLoaded() {
suggestStats: searchBox.getSearchboxStats(),
});
window.ipcRenderer.send('ytmd:search-results', result);
window.ipcRenderer.send('peard:search-results', result);
},
);
@ -334,7 +334,7 @@ async function onApiLoaded() {
const audioCanPlayEventDispatcher = () => {
document.dispatchEvent(
new CustomEvent('ytmd:audio-can-play', {
new CustomEvent('peard:audio-can-play', {
detail: {
audioContext,
audioSource,
@ -356,13 +356,13 @@ async function onApiLoaded() {
video.addEventListener('loadstart', loadstartListener, { passive: true });
window.ipcRenderer.send('ytmd:player-api-loaded');
window.ipcRenderer.send('peard:player-api-loaded');
// Navigate to "Starting page"
const startingPage: string = window.mainConfig.get('options.startingPage');
if (startingPage && startingPages[startingPage]) {
document
.querySelector<YouTubeMusicAppElement>('ytmusic-app')
.querySelector<MusicPlayerAppElement>('ytmusic-app')
?.navigate(startingPages[startingPage]);
}
@ -372,7 +372,7 @@ async function onApiLoaded() {
let selector = 'ytmusic-guide-entry-renderer:last-child';
const upgradeBtnIcon = document.querySelector<SVGGElement>(
'iron-iconset-svg[name="yt-sys-icons"] #youtube_music_monochrome',
'iron-iconset-svg[name="yt-sys-icons"] #\u0079\u006f\u0075\u0074\u0075\u0062\u0065_music_monochrome',
);
if (upgradeBtnIcon) {
const path = upgradeBtnIcon.firstChild as SVGPathElement;
@ -409,7 +409,7 @@ async function onApiLoaded() {
}
/**
* YouTube Music still using ES5, so we need to define custom elements using ES5 style
* Original still using ES5, so we need to define custom elements using ES5 style
*/
const defineYTMDTransElements = () => {
const YTMDTrans = function () {};
@ -475,7 +475,7 @@ const main = async () => {
},
);
// Wait for complete load of YouTube api
// Wait for complete load of the api
await listenForApiLoad();
// Blocks the "Are You Still There?" popup by setting the last active time to Date.now every 15min
@ -502,7 +502,7 @@ const initObserver = async () => {
});
const observer = new MutationObserver(() => {
const playerApi = document.querySelector<Element & YoutubePlayer>(
const playerApi = document.querySelector<Element & MusicPlayer>(
'#movie_player',
);
if (playerApi) {