Renderer
PluginEnv
When plugins are loaded in Cider the constructor() in the plugin class is passed a PluginEnv object, this object contains:
app- The Electron appstore- Electron Storeutils- Cider utilswin- The renderer windowdir- Path to the plugin directorydirName- Plugin directory name
Loading frontend plugin(s)
To load a front end plugin (typically named index.frontend.js) from index.js PluginEnv.utils.loadJSFrontend(path: string) is used.
Example: PluginEnv.utils.loadJSFrontend(path.join(PluginEnv.dir, "index.frontend.js"))
utils
getPath(path: string)- Returns path used by Cider by name.srcPath- src/ folderrendererPath- renderer/ foldermainPath- main/ pathresourcePath- resources/ pathi18nPath- i18n/ pathciderCache- Cider cache paththemes- Themesplugins- Plugins
getLocale(language: string, key: string)- Fetches the i18n locale for the given language.
getStoreValue(key: string)- Gets a store value
getStore()- Returns store
setStoreValue(key: string, value: any)- Sets a store value
getWindow()- Gets the renderer window
loadJSFrontend(path: string)- Loads a JavaScript file into the renderer, this is the main method of loading front end plugins.
playback.- Controls playback.play()- Play.pause()- Pause.playPause()- Toggles playback.next()- Next track in queue.previous()- Previous track in queue
Built in events
Cider plugins support these methods by default, however more can be made with the use of ipcMain and ipcRenderer
onReady(win)- (Required) Executes when the back end is readyonRendererReady()- Executes when the renderer has finished loading (app.init())onPlaybackStateDidChange(attributes)- Executes when playback state changes, passes song attributesonNowPlayingItemDidChange(attributes)- Executes when song changes, passes song attributesonBeforeQuit- Executes before Cider quits
Cider Frontend API (CiderFrontAPI)
| Function/Method | Usage | Details |
|---|---|---|
| StyleSheets.Add | ||
| AddMenuEntry | ||
| Objects.MenuEntry |
App Functions/Methods (app.*)
| Function/Method | Usage | Details |
|---|---|---|
Cider Audio (CiderAudio)
| Function/Method | Usage | Details |
|---|---|---|