Plugin API
English
English
  • Getting Started
    • Introduction
    • Your First Plugin
    • File Structure Overview
    • Plugin Types
      • Window
      • Background Service
      • Format Extension
      • Inspector
    • Debug Plugin
  • Distribution
    • Prepare Plugin
    • Package Plugin
    • Publish Plugin
    • Update Plugin
    • Developer Policies
    • Plugin Icon Template
  • Developer Guide
    • manifest.json Configuration
    • Retrieve Data
    • Modify Data
    • Access Local Files
    • Issue Network Requests
    • Using Node.js Native API
    • Using Third-Party Modules
    • Multilingual (i18n)
    • Frameless Window
  • API Reference
    • event
    • item
    • folder
    • tag
    • tagGroup
    • library
    • window
    • app
    • os
    • screen
    • notification
    • contextMenu
    • dialog
    • clipboard
    • drag
    • shell
    • log
  • Extra Moudle
    • FFmpeg
Powered by GitBook
On this page
  • Methods
  • isDarkColors()
  • getPath(name)
  • getFileIcon(path[, options])
  • createThumbnailFromPath(path, maxSize)
  • Properties
  • version
  • build
  • locale
  • arch
  • platform
  • env
  • execPath
  • pid
  • isWindows
  • isMac
  • runningUnderARM64Translation
  • theme
  1. API Reference

app

Retrieve Eagle application attributes like version, architecture, and language.

Here are common attributes for the app:

console.log(eagle.app.version);                // Eagle version
console.log(eagle.app.build);                  // Eagle Build number
console.log(eagle.app.locale);                 // Application interface language, en/zh_CN/zh_TW/ja_JP
console.log(eagle.app.arch);                   // x86 | x64
console.log(eagle.app.platform);               // darwin | win32
console.log(eagle.app.isWindows);              // true | false, whether the operating system is Windows
console.log(eagle.app.isMac);                  // true | false, whether the operating system is Mac
console.log(eagle.app.runningUnderARM64Translation);   // Whether it is running in rosetta translation mode

Methods

isDarkColors()

Check if the current system is in dark (Dark) mode.

  • Returns boolean - Whether the current system is in Dark mode.

eagle.app.isDarkColors();        // true | false

getPath(name)

You can request the following paths by name:

  • name string - You can request the following paths by name:

    • home - User's home folder (main directory)

    • appData - Application data directory for each user, defaults to:

    • userData - Folder for storing your application configuration files, default is the appData folder plus the application's name. User data files should be written here by convention, but it is not recommended to write large files, as some environments will back up this directory to cloud storage.

    • temp - Temporary folder

    • exe - Current executable file

    • desktop - Current user's desktop folder

    • documents - Path of the user's documents directory

    • downloads - Path of the user's download directory

    • music - Path of the user's music directory

    • pictures - Path of the user's picture directory

    • videos - Path of the user's video directory

    • recent - Directory of the user's recent files (Windows only).

  • Returns Promise<path: string> - path query path result.

await eagle.app.getPath('appData');   // 'C:\Users\User\AppData\Roaming'
await eagle.app.getPath('pictures');   // 'C:\Users\User\Pictures'
await eagle.app.getPath('desktop');    // 'C:\Users\User\Desktop'

getFileIcon(path[, options])

Get the icon associated with the specified path file.

  • path string - File path for which you want to get the icon

  • options Object (optional)

    • size string

    • small - 16x16

    • normal - 32x32

    • large - 32x32 on Windows, not supported on macOS.

  • Returns Promise<img: NativeImage>

let img = await eagle.app.getFileIcon('path_to_file', { size: 'small' });

// Get image information
let base64 = img.toDataURL();
let size = img.getSize();   // {'width': 16, height: 16}

// Save to computer
let buffer = img.toPNG();
require('fs').writeFileSync('output_path/example.png', buffer);

createThumbnailFromPath(path, maxSize)

Get the icon associated with the file at the specified path.

  • path string - The file path to get the thumbnail from

  • maxSize Size - The maximum width and height (positive number) of the returned thumbnail. On Windows platform, maxSize.height will be ignored and height will be scaled according to maxSize.width

  • Returns Promise<img: NativeImage>

let img = await eagle.app.createThumbnailFromPath('path_to_file', { 
    height: 200, 
    width: 200 
});

// Obtain image information
let base64 = img.toDataURL();
let size = img.getSize();	// {'width': 200, height: 150}

// Save to computer
let buffer = img.toPNG();
require('fs').writeFileSync('output_path/example.png', buffer);

Properties

version

string property, get the current Eagle application version.

build

number property, get the current Eagle application Build Number.

locale

string property, get the current Eagle application interface language.

  • en - English

  • zh_CN - Simplified Chinese

  • zh_TW - Traditional Chinese

  • ja_JP - Japanese

  • ko_KR - Korean

  • es_ES - Spanish

  • de_DE - German

  • ru_RU - Russian

arch

string property, returns the CPU architecture of the operating system.

  • x64

  • arm64

  • x86

platform

string property, returns a string identifying the operating system platform.

  • darwin - macOS operating system

  • win32 - Windows operating system

env

Object property, returns an object of environment variables.

console.log(eagle.app.env);

{
  APPDATA: "C:\\Users\\User\\AppData\\Roaming",
  HOMEDRIVE: "C:",
	HOMEPATH: "\\Users\\User",
  LANG: "zh_TW.UTF-8",
  TEMP: "C:\\Users\\User\\AppData\\Local\\Temp"
}
console.log(eagle.app.env['TEMP']);

"C:\\Users\\User\\AppData\\Local\\Temp"

execPath

string property, current application execution path.

console.log(eagle.app.execPath);

"C:\\Program Files\\Eagle\\Eagle.exe"

pid

number property, current plugin process id.

isWindows

boolean property, is the current operating system Windows.

isMac

boolean property, is the current operating system Mac.

runningUnderARM64Translation

theme

string property, the current theme color name, such as LIGHT, LIGHTGRAY, GRAY, DARK, BLUE, PURPLE.

PreviouswindowNextos

Last updated 10 months ago

Note: This feature is similar to Electron API's feature.

img - A NativeImage type application icon.

Note: This feature is similar to Electron API's feature.

img - The thumbnail preview image of the file.

Note: This function is similar to the Electron API's function.

boolean property, when true it indicates that the current application is running in ARM64 runtime (e.g., macOS or Windows ).

Hint: This function is similar to the Electron API's function. You can use this property to prompt users to download the arm64 version of the application when they mistakenly run the x64 version in a translation environment.

app.getPath
NativeImage
app.getAppIcon
NativeImage
nativeImage.createThumbnailFromPath(path, maxSize)
Rosetta Translator Environment
WOW
app.runningUnderARM64Translation