Skip to main content

NodeUtils

Import :

const NodeUtils = brackets.getModule("utils/NodeUtils")

isNodeReady ⇒ boolean

checks if Node connector is ready

Kind: global variable
Returns: boolean - returns true if it's ready, otherwise false

Strings

Generic node util APIs connector. see src-node/utils.js for node peer

Kind: global constant

fetchURLText(url, encoding) ⇒ Promise.<string>

Fetches text content from a URL This is only available in the native app

Kind: global function

ParamType
urlstring
encodingstring

getPhoenixBinaryVersion() ⇒ Promise.<string>

Gets the version of the Phoenix binary This is only available in the native app

Kind: global function

getLinuxOSFlavorName() ⇒ Promise.<(string|null)>

Retrieves the Linux OS flavor name This is only available in the native app on Linux

Kind: global function

openUrlInBrowser(url, browserName)

Opens a URL in the default browser. This is only available in the native app.

Kind: global function

ParamType
urlstring
browserNamestring

_npmInstallInFolder(moduleNativeDir) ⇒ CancellablePromise

Runs the bundled npm install in the given folder. Rejects if an install is already in progress there (two npm processes on one node_modules corrupt each other).

The returned promise carries a cancel() method - cancellation is only meaningful for the specific install you started, so it lives on the handle rather than as a module API. Cancelling kills the npm process; the promise then rejects with a "cancelled" error.

Kind: global function

ParamTypeDescription
moduleNativeDirstringplatform path of the folder holding package.json

downloadFile(url, destFile, [options]) ⇒ CancellablePromise

Downloads a URL to a file on disk, fully node-side (native fetch, streamed to disk). When an expected sha256 is given, a mismatch deletes the file and rejects - a resolved promise means the file holds exactly the pinned bytes. This is only available in the native app.

Kind: global function
Returns: CancellablePromise - the returned promise carries a cancel() method that aborts the download mid-stream - the promise then rejects with a "cancelled" error and the partial file is deleted

ParamTypeDescription
urlstringdownload URL (redirects followed)
destFilestringplatform path to write (parent directories created)
[options]Object
[options.sha256]stringexpected hex digest of the downloaded bytes
[options.progress]functioncalled with (transferredBytes, totalBytes) as the download advances; totalBytes is 0 if the server sent no length

extractZipFile(zipPath, destDir) ⇒ Promise.<void>

Extracts a zip file into a directory node-side (stdlib only, no browser JSZip; creates the directory if missing, restores unix executable bits recorded in the archive). Python wheels are plain zips, so this installs those too. This is only available in the native app.

Kind: global function

ParamTypeDescription
zipPathstringplatform path of the zip file
destDirstringplatform path of the directory to extract into

setExecutableBits(filePath) ⇒ Promise.<void>

Marks a file as executable (chmod 755); no-op on Windows. For binaries whose archives did not carry unix mode bits. This is only available in the native app.

Kind: global function

ParamTypeDescription
filePathstringplatform path of the file

execFileWithInput(command, [args], [options]) ⇒ Promise.<ExecFileResult>

Runs an executable with the given args, feeding it text on stdin and capturing its output - a one-shot filter-style invocation (e.g. ruff format - for the Python beautifier). No shell is involved. Resolves with the exit code rather than rejecting on non-zero, so callers can read stderr for the reason. This is only available in the native app.

Kind: global function

ParamTypeDescription
commandstringplatform path of the executable (or a PATH command name)
[args]Array.<string>
[options]Object
[options.stdinText]stringwritten to the process's stdin, then closed
[options.cwd]stringworking directory
[options.timeoutMs]numberkill the process and reject after this long

getEnvironmentVariable(varName) ⇒ Promise.<string>

Gets an environment variable's value This is only available in the native app

Kind: global function

ParamType
varNamestring

ESLintFile(text, fullFilePath, projectFullPath)

Runs ESLint on a file This is only available in the native app

Kind: global function

ParamType
textstring
fullFilePathstring
projectFullPathstring

openNativeTerminal(cwd, [usePowerShell])

Runs ESLint on a file This is only available in the native app

Kind: global function

ParamTypeDefaultDescription
cwdstringthe working directory of terminal
[usePowerShell]booleanfalse

openInDefaultApp(fullPath) ⇒ Promise.<void>

Opens a file in the default application for its type on Windows, macOS, and Linux.

Kind: global function
Returns: Promise.<void> - - Resolves if the file/folder is opened successfully, rejects otherwise.

ParamTypeDescription
fullPathstringThe path to the file/folder to open.

getDeviceID() ⇒ Promise.<(string|null)>

gets the os device id. this usually won't change till os reinstall.

Kind: global function
Returns: Promise.<(string|null)> - - Resolves with the os identifier or null
Throws:

  • Error - If called from the browser

addDeviceLicenseSystemWide() ⇒ Promise.<boolean>

Enables device license by creating a system-wide license file. On Windows, macOS, and Linux this will request elevation if needed.

Kind: global function
Returns: Promise.<boolean> - - Resolves true if system wide defile file added, else false.
Throws:

  • Error - If called from the browser

removeDeviceLicenseSystemWide() ⇒ Promise.<boolean>

Removes the system-wide device license file. On Windows, macOS, and Linux this will request elevation if needed.

Kind: global function
Returns: Promise.<boolean> - - Resolves true if system wide defile file removed, else false.
Throws:

  • Error - If called from the browser

isLicensedDeviceSystemWide() ⇒ Promise.<boolean>

Checks if the current machine is configured to check for system-wide device license for all users at app start. This validates that the system-wide license file exists, contains valid JSON, and has licensedDevice: true.

Kind: global function
Returns: Promise.<boolean> - - Resolves with true if the device is licensed, false otherwise.

getOSUserName() ⇒ Promise.<string>

Retrieves the operating system username of the current user. This method is only available in native apps.

Kind: global function
Returns: Promise.<string> - A promise that resolves to the OS username of the current user.
Throws:

  • Error Throws an error if called in a browser environment.

getSystemSettingsDir() ⇒ Promise.<string>

Retrieves the directory path for system settings. This method is applicable to native apps only.

Kind: global function
Returns: Promise.<string> - A promise that resolves to the path of the system settings directory.
Throws:

  • Error If the method is called in browser app.

CancellablePromise : Promise

A Promise that additionally carries a cancel() method aborting the underlying operation - the promise then rejects with a "cancelled" error.

Kind: global typedef
Properties

NameTypeDescription
cancelfunctionaborts the in-flight operation

ExecFileResult : Object

Kind: global typedef
Properties

NameTypeDescription
codenumberthe process's exit code
stdoutstring
stderrstring