mirror of
https://github.com/jeffvli/feishin.git
synced 2026-05-07 04:20:12 +02:00
e344adfeed
* Add autodiscovery for Jellyfin servers * Remove debugging aids you didn't see anything * Fix linter errors * Send a discovery packet to localhost too
48 lines
1.2 KiB
TypeScript
48 lines
1.2 KiB
TypeScript
import { electronAPI } from '@electron-toolkit/preload';
|
|
import { contextBridge } from 'electron';
|
|
|
|
import { autodiscover } from './autodiscover';
|
|
import { browser } from './browser';
|
|
import { discordRpc } from './discord-rpc';
|
|
import { ipc } from './ipc';
|
|
import { localSettings } from './local-settings';
|
|
import { lyrics } from './lyrics';
|
|
import { mpris } from './mpris';
|
|
import { mpvPlayer, mpvPlayerListener } from './mpv-player';
|
|
import { remote } from './remote';
|
|
import { utils } from './utils';
|
|
|
|
// Custom APIs for renderer
|
|
const api = {
|
|
autodiscover,
|
|
browser,
|
|
discordRpc,
|
|
ipc,
|
|
localSettings,
|
|
lyrics,
|
|
mpris,
|
|
mpvPlayer,
|
|
mpvPlayerListener,
|
|
remote,
|
|
utils,
|
|
};
|
|
|
|
export type PreloadApi = typeof api;
|
|
|
|
// Use `contextBridge` APIs to expose Electron APIs to
|
|
// renderer only if context isolation is enabled, otherwise
|
|
// just add to the DOM global.
|
|
if (process.contextIsolated) {
|
|
try {
|
|
contextBridge.exposeInMainWorld('electron', electronAPI);
|
|
contextBridge.exposeInMainWorld('api', api);
|
|
} catch (error) {
|
|
console.error(error);
|
|
}
|
|
} else {
|
|
// @ts-ignore (define in dts)
|
|
window.electron = electronAPI;
|
|
// @ts-ignore (define in dts)
|
|
window.api = api;
|
|
}
|