Socket
Book a DemoInstallSign in
Socket

@mprokopowicz/jxa-executor

Package Overview
Dependencies
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@mprokopowicz/jxa-executor

Just a promisified version of "osa" module.

latest
Source
npmnpm
Version
1.0.4
Version published
Maintainers
1
Created
Source

JXA Executor

A wrapper for osa module that allows to use it with promises (or async/await).

Usage

wrap(jxaFunction): create a async function to execute OSA script

use #wrap method to prepare a function that will execute OSA script and return a promise to the result:

const jxa = require('@mprokopowicz/jxa-executor');

const showDialog = jxa.wrap((message) => {
  const app = Application.currentApplication();
  app.includeStandardAdditions = true;
  app.displayNotification(message);
});

const main = async () => {
  await showDialog('Hello!');
  console.log('dialog closed');
};

main();

exec(jxaFunction, ...args): execute OSA script and get result

use #exec to invoke an OSA script and get a promise for returned result

const jxa = require('@mprokopowicz/jxa-executor');

jxa
  .exec((colors) => {
    const app = Application.currentApplication();
    app.includeStandardAdditions = true;
    return app.chooseFromList(colors, { withPrompt: 'What is your favorite color?' });
  }, ['red', 'green', 'blue'])
  .then((chosenColors) => {
    console.log(chosenColors);
  });

Keywords

osa

FAQs

Package last updated on 18 Apr 2018

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts