remote-action-promise
TypeScript icon, indicating that this package has built-in type declarations

1.0.9 • Public • Published

Promisify Salesforce Remote Actions

This library is used to convert a Salesforce VisualForce remote action into a promise. It is written in typescript and allows you to quickly define types for the resulting function.

Usage

Apex Controller

public class MyController{
  @RemoteAction
  public static String foo(String param1Integer param2Boolean param3) {
    return 'hello world';
  }
}

typescript

import { promisifyRemoteAction } from 'remote-action-promise';
 
//this gets injected on the global scope so we need to declare it if using typescript
declare var MyController: {
  foo: any;
};
 
// this syntax requires Typescript > 4.0
// can use unnamed tuple instead
type FooParams = [param1string, param2number, param3boolean];
 
const fooRemoteAction = promisifyRemoteAction<FooParams, string>(MyController.foo);
 
(async() => {
 
  try{
    const stringResult = await fooRemoteAction('hello', 42, true);
  }catch(e){
    console.log('error', e);
  }
 
})()
 

Readme

Keywords

none

Package Sidebar

Install

npm i remote-action-promise

Weekly Downloads

1

Version

1.0.9

License

ISC

Unpacked Size

8.8 kB

Total Files

6

Last publish

Collaborators

  • cjonas