{"version":3,"file":"ad-ngx-electron.mjs","sources":["../../../projects/ngx-electron/src/lib/electron.service.ts","../../../projects/ngx-electron/src/lib/electron.service.ref.ts","../../../projects/ngx-electron/src/public-api.ts","../../../projects/ngx-electron/src/ad-ngx-electron.ts"],"sourcesContent":["import * as Electron from 'electron';\nimport { ElectronWindow } from './typings/electron.window';\n\ndeclare let window: ElectronWindow;\n\nexport class ElectronService {\n    private _electron: any | null = null;\n\n    private get electron(): any | null  {\n        if (!this._electron) {\n            if (window && window.require) {\n                this._electron = window.require('electron');\n                return this._electron;\n            }\n            return null;\n        }\n        return this._electron;\n    }\n\n    /**\n     * determines if SPA is running in Electron\n     */\n    public get isElectronApp(): boolean {\n        return !!window.navigator.userAgent.match(/Electron/);\n    }\n\n    public get isMacOS(): boolean {\n        return this.isElectronApp && process.platform === 'darwin';\n    }\n\n    public get isWindows(): boolean {\n        return this.isElectronApp && process.platform === 'win32';\n    }\n\n    public get isLinux(): boolean {\n        return this.isElectronApp && process.platform === 'linux';\n    }\n\n    public get isX86(): boolean {\n        return this.isElectronApp && process.arch === 'ia32';\n    }\n\n    public get isX64(): boolean {\n        return this.isElectronApp && process.arch === 'x64';\n    }\n\n    public get isArm(): boolean {\n        return this.isElectronApp && process.arch === 'arm';\n    }\n\n    public get desktopCapturer(): Electron.DesktopCapturer | null  {\n        return this.electron ? this.electron.desktopCapturer : null;\n    }\n\n    public get ipcRenderer(): Electron.IpcRenderer | null  {\n        return this.electron ? this.electron.ipcRenderer : null;\n    }\n\n    //  TODO FIX : Electron.Remote is readonly so return any instead\n    public get remote(): any | null  {\n        return this.electron ? this.electron.remote : null;\n    }\n\n    public get webFrame(): Electron.WebFrame | null  {\n        return this.electron ? this.electron.webFrame : null;\n    }\n\n    public get clipboard(): Electron.Clipboard | null  {\n        return this.electron ? this.electron.clipboard : null;\n    }\n\n    public get crashReporter(): Electron.CrashReporter | null  {\n        return this.electron ? this.electron.crashReporter : null;\n    }\n\n    public get process(): any {\n        return this.remote ? this.remote.process : null;\n    }\n\n    public get nativeImage(): typeof Electron.nativeImage | null  {\n        return this.electron ? this.electron.nativeImage : null;\n    }\n\n    public get screen(): Electron.Screen | null {\n        return this.electron ? (this.remote?.screen ?? null) : null;\n    }\n\n    public get shell(): Electron.Shell | null  {\n        return this.electron ? this.electron.shell : null;\n    }\n}\n","import { ElectronService } from './electron.service';\nimport { Injectable } from '@angular/core';\n\n@Injectable()\nexport class ElectronServiceRef extends ElectronService {\n\n    constructor() {\n        super();\n    }\n}\n","import { NgModule } from '@angular/core';\nimport { ElectronService } from './lib/electron.service';\nimport { ElectronServiceRef } from './lib/electron.service.ref';\n\nexport * from './lib/electron.service';\nexport * from './lib/electron.service.ref';\n\n@NgModule({\n    declarations: [],\n    exports: [],\n    providers: [{ provide: ElectronService, useClass: ElectronServiceRef }]\n})\nexport class NgxElectronModule {\n\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}