angular-xpx-lib

ProximaX developer angular typescript SDK for NIS 1

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
angular-xpx-lib
0.0.114 years ago4 years agoMinified + gzip package size for angular-xpx-lib in KB

Readme

Angular-XPX-Lib
ProximaX developer angular typescript SDK for NIS 1

Feature

  • Remote Upload Service
  • Remote Download Service
  • Remote Announce Transaction
  • Remote Node Info

  1. Demo

https://thomas-tran.github.io/proximax-demo

  1. Requirements

  • Angular 6
  • RxJS 6
  • NodeJS > 8.x

  1. Installation

npm install angular-xpx-lib

  1. Usage

4.1 Remote Upload Service

  • Import RemoteUploadService to your component.ts
``` import { RemoteUploadService } from "angular-xpx-lib"; ```
  • Inject the service via constructor
``` constructor(private service: RemoteUploadService) { } ```
  • Set the baseURL for the service. By default the baseURL is set to https://testnet2.gateway.proximax.io/
``` private baseURL = 'https://testnet2.gateway.proximax.io/'; ngOnInit() {
this.service.setBaseUrl(this.baseURL);
} ```

4.1.1 - uploadText

Upload text data to IPFS network and returns the IPFS datahash
  • Create the UploadTextRequest payload
``` const title = 'Test title'; const data = 'Simple text message'; const keywords = 'proximax, upload, text'; const contentType = 'text/plain'; const encode = 'UTF-8'; const metadata = {
'author':'Proximax.io'
} const payload = new UploadTextRequest(title,data,keywords,metadata,contentType,encode);
```
  • Call the uploadText service
``` this.uploadService.uploadText(payload)
.subscribe(response => {
console.log(response);
});
```

4.1.2 - uploadBinary

Upload binary file to IPFS network and returns the IPFS datahash
  • Create the UploadBinaryRequest payload
``` const title = 'Test title'; const keywords = 'proximax, upload, text'; const contentType = 'application/vnd.ms-excel'; const metadata = {
'author':'Proximax.io'
} // uploadBinary require base64 array of bytes as an input let data = ; // Upload excel file from input form let uploadFile = this.fileUploadForm.value; // the actual file type // Read the upload file as array buffer const reader = new FileReader(); reader.onload() = (e) => {
const arrayBuffer = reader.result;
// need to convert arraybuffer to base64 encoded string
let base64Encoded = convertToBase64(arrayBuffer);
// convert base64 encoded string back to the byte array
for (let i = 0; i < base64Encoded.length; i++) {
data.push(base64Encoded.charCodeAt(i));
}
}; reader.readAsArrayBuffer(uploadFile); // Construct the binary upload payload const payload = new UploadBinaryRequest(title, data, keywords ,metadata , contentType);
```
  • Call the uploadBinary service
``` this.uploadService.uploadBinary(payload)
.subscribe(response => {
console.log(response);
});
```

4.1.4 - uploadBase64Binary

Upload base64 string encoded binary file to IPFS network and returns the IPFS datahash
  • Create the UploadBinaryRequest payload
``` const title = 'Test title'; const keywords = 'proximax, upload, text'; const contentType = 'image/png'; const metadata = {
'author':'Proximax.io'
} let data = null; // Upload image file from input form let uploadFile = this.fileUploadForm.value; // the actual file type // Read the upload file as array buffer const reader = new FileReader(); reader.onload() = (e) => {
const arrayBuffer = reader.result;
// need to convert arraybuffer to base64 encoded string
data = convertToBase64(arrayBuffer);
}; reader.readAsArrayBuffer(uploadFile); // Construct the binary upload payload const payload = new UploadBinaryRequest(title, data, keywords ,metadata , contentType);
```
  • Call the uploadBase64Binary service
``` this.uploadService.uploadBase64Binary(payload)
.subscribe(response => {
console.log(response);
});
```