filemantis-electron v0.0.0-development
filemantis-electron
filemantis-electron is a small Module for Angular which makes calling Electron APIs from the Renderer Process easier. By adding it to your Angular project, you'll get IntelliSense and a simple Angular service which acts as facade for Electron APIs.
filemantis-electron is licensed under MIT.
Introduction
Checkout the introduction post on my blog for more details.
Support me
Installation
filemantis-electron can be installed easily using either yarn or npm commands in the scope of an angular project.
yarn add filemantis-electron --save
# or
npm install filemantis-electron --saveThe FileMantisElectronModule needs to be import in your root Angular module (eg AppModule).
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { AppComponent } from './app.component';
import { FileMantisElectronModule } from 'filemantis-electron';
@NgModule({
declarations: [],
imports: [
BrowserModule,
FileMantisElectronModule
],
bootstrap: [AppComponent]
})
export class AppModule {
}Once the module has been imported, you can easily use dependency injection to get an instance of ElectronService.
import { Component } from '@angular/core';
import { ElectronService } from 'filemantis-electron';
@Component({
selector: 'my-app',
templateUrl: 'app.html'
})
export class AppComponent {
constructor(private _electronService: ElectronService) { }
public playPingPong() {
if(this._electronService.isElectronApp) {
let pong: string = this._electronService.ipcRenderer.sendSync('ping');
console.log(pong);
}
}
}ElectronService
The ElectronService is exposing all API's accessible from within Electron's renderer process. If your app is not running inside electron, all getters will return NULL instead.
Properties
desktopCapturer: Electron.DesktopCapturer- Electron's desktop capturing APIipcRenderer: Electron.IpcRenderer- Electron IpcRendererremote: Electron.Remote- Electron Remote capabilitieswebFrame: Electron.WebFrame- Electron WebFrameclipboard: Electron.Clipboard- Clipboard APIcrashReporter: Electron.CrashReporter- Electron's CrashReporterprocess: NodeJS.Process- Electron's Process Objectscreen: Electron.Screen- Electron's Screen APIshell: Electron.Shell- Electron's Shell APInativeImage: Electron.NativeImage- Electron's NativeImage APIisElectronApp: boolean- Indicates if app is being executed inside of electron or notisMacOS: boolean- Indicates if app is running in electron and onmacOSisWindows: boolean- Indicates if app is running in electron and onWindowsisLinux: boolean- Indicates if app is running in electron and onLinuxisX86: boolean- Indicates if app is running in electron and on ax86architectureisX64: boolean- Indicates if app is running in electron and on ax64architectureisArm: boolean- Indiciates it app is running in electron adn on aARMarchitecture
4 years ago
