0.19.11 • Published 2 months ago

@tdxvolt/volt-client-web v0.19.11

Weekly downloads
-
License
ISC
Repository
-
Last release
2 months ago

@tdxvolt/volt-client-web

This package exposes the tdxVolt API via websocket in a universal way, i.e. it will work via nodejs or in the browser.

See @tdxvolt/volt-client-grpc for direct access to the Volt API via grpc, which is only supported in nodejs.

Installation

npm install @tdxvolt/volt-client-web

Build

Most of the time it isn't necessary to build the package, as it is published as an ES module and can be used in both nodejs and browser environments. The package can be bundled using rollup if required using the following command:

npm run build

Usage

When using the volt-client-web package in a browser environment, you have the option to use the wasm build (recommended) or the pure js build. The wasm build is more efficient and faster, but requires a compatible browser. When building nodejs or react-native applications, use the pure JS version.

// Import using the wasm build
import { VoltClient } from '@tdxvolt/volt-client-web/wasm';

// Import using the pure JS build
import { VoltClient } from '@tdxvolt/volt-client-web/js';

Begin by importing the VoltClient class from the package and creating a new instance of it.

// Import the VoltClient class - note the use of the wasm build
import { VoltClient } from '@tdxvolt/volt-client-web/wasm';

// Create a new Volt client - here we use the window.WebSocket class
const client = new VoltClient();

// Load a Volt configuration from somewhere
const voltConfig = { ... };

return client.initialise(voltConfig).then(() => {
  // Use the client
  return client.GetResource({
    resource_id: voltConfig.volt.id
  })
});

Similarly, to use the pure JS build - just replace the import statement:

// Import the VoltClient class - note the use of the pure js build
import { VoltClient } from '@tdxvolt/volt-client-web/js';

// ... as above ...

When using the volt-client-web package in applications using node.js versions earlier than 22, a WebSocket class that is compatible with nodejs is required. The ws package is popular, providing a WebSocket class that is compatible with both nodejs and the browser.

// Import the VoltClient class - note the use of the pure js build
import { VoltClient } from '@tdxvolt/volt-client-web';

// Use the `ws` package to import the WebSocket class
import WebSocket from 'ws';

// Create a new Volt client - here we use the ws.WebSocket class
const client = new VoltClient(WebSocket);

// Load a Volt configuration from somewhere
const voltConfig = { ... };

return client.initialise(voltConfig).then(() => {
  // Use the client
  return client.GetResource({
    resource_id: voltConfig.volt.id
  })
});

For more examples of how to use the volt-client-web package, see the the official Volt documentation.

0.19.8

3 months ago

0.19.9

3 months ago

0.19.0

3 months ago

0.19.1

3 months ago

0.19.2

3 months ago

0.19.3

3 months ago

0.19.4

3 months ago

0.19.5

3 months ago

0.19.6

3 months ago

0.19.7

3 months ago

0.18.2

4 months ago

0.18.3

4 months ago

0.19.11

2 months ago

0.19.10

3 months ago

0.18.1

9 months ago

0.17.3-beta.0

1 year ago

0.17.3-beta.1

1 year ago

0.17.3-beta.6

1 year ago

0.17.3-beta.7

12 months ago

0.17.3-beta.8

12 months ago

0.17.3-beta.9

11 months ago

0.17.3-beta.2

1 year ago

0.17.3-beta.3

1 year ago

0.17.3-beta.4

1 year ago

0.17.3-beta.5

1 year ago

0.18.0

11 months ago

0.17.3-beta.10

11 months ago

0.17.2

1 year ago

0.17.0

1 year ago

0.16.0-beta.11

1 year ago

0.16.0-beta.10

1 year ago

0.16.0-beta.7

1 year ago

0.16.0-beta.9

1 year ago

0.16.0-beta.8

1 year ago

0.16.0-beta.6

1 year ago

0.16.0-beta.5

2 years ago

0.16.0-beta.1

2 years ago

0.16.0-beta.3

2 years ago

0.16.0-beta.2

2 years ago

0.15.4-beta.1

2 years ago

0.16.0-beta.4

2 years ago

0.15.1

2 years ago

0.15.2

2 years ago

0.15.3

2 years ago

0.15.0

2 years ago

0.14.60

2 years ago

0.14.59

2 years ago

0.14.58

2 years ago

0.14.134

2 years ago

0.11.5

3 years ago

0.11.6

3 years ago

0.11.4

3 years ago

0.11.3

3 years ago

0.11.1

3 years ago

0.11.0

3 years ago

0.1.0

3 years ago