openpay-sdk-web-wasm v0.1.0
JavaScript/TypeScript Client SDK for Openpay 👨💻💬
The underlying SDK core is implemented in Openpay SDK. Using the WebAssembly support provided by Go language, it can be compiled into wasm for web integration. The web interacts with the Openpay SDK through JSON, and the SDK exposes a re-encapsulated API for easy usage.
Installation 💻
Adding Dependencies
npm install openpay-sdk-web-wasm --save
Obtaining Required Static Resources for WASM
Follow these steps to obtain the static resources required for WebAssembly (WASM):
Locate the
openpay-sdk-web-wasm
subdirectory in thenode_modules
directory of your project. Copy all the files in theassets
folder to your project's public resource directory.The files to be copied are:
openpay.wasm
wasm_exec.js
After copying the files, import the
wasm_exec.js
file in yourindex.html
file using a<script>
tag.
Possible Issues ❗
if you are using webpack4, you may flow this issue How to import openpay-sdk-web-wasm in webpack4.x.
Usage 🚀
The following examples demonstrate how to use the SDK. TypeScript is used, providing complete type hints.
Importing the SDK
import { getSDK } from 'openpay-sdk-web-wasm';
const OpenPay = getSDK();
Initizlize and Listening for Connection Status
import { CbEvents, WSEvent } from 'openpay-sdk-web-wasm';
OpenPay.on(CbEvents.OnConnecting, handleConnecting);
OpenPay.on(CbEvents.OnConnectFailed, handleConnectFailed);
OpenPay.on(CbEvents.OnConnectSuccess, handleConnectSuccess);
OpenPay.initSDK({
logLevel: 6,
platformID: 5,
apiAddr: 'http://your-server-ip:10002',
wsAddr: 'ws://your-server-ip:10001',
});
function handleConnecting() {
// Connecting...
}
function handleConnectFailed({ errCode, errMsg }: WSEvent) {
// Connection failed ❌
console.log(errCode, errMsg);
}
function handleConnectSuccess() {
// Connection successful ✅
}
Browser Support 🌐
Browser | Desktop OS | Mobile OS |
---|---|---|
Chrome (61+) | Windows, macOS, Linux | Android |
Firefox (58+) | Windows, macOS, Linux | Android |
Safari (15+) | macOS | iOS |
Edge (Chromium 16+) | Windows, macOS |
7 months ago