Zstd wrapper for Nodejs 16 and above
npm install @enp/cppzstcppzst  
=====
[![Build Status][1]][2]
[1]: https://travis-ci.org/zwb-ict/cppzst.svg?branch=master
[2]: https://travis-ci.org/zwb-ict/cppzst
Zstd wrapper for Nodejs
``bash`
$ npm install cppzst --save
#### compress(buffer[, zstdCompressParams], callback)
`javascript
import {compress} from 'cppzst';
await compress(input);
`
#### decompress(buffer[, zstdDecompressParams], callback)
`javascript
import {decompress} from 'cppzst';
await decompress(input)
`
#### compressSync(buffer[, zstdCompressParams])
`javascript
const compressSync = require('cppzst').compressSync;
try {
var output = compressSync(input);
} catch(err) {
// ...
}
`
#### decompressSync(buffer[, zstdCompressParams])
`javascript
const decompressSync = require('cppzst').decompressSync;
try {
var output = decompressSync(input);
} catch(err) {
// ...
}
`
#### compressStream([zstdCompressParams])
`javascript
const compressStream = require('cppzst').compressStream;
const fs = require('fs');
fs.createReadStream('path/to/input')
.pipe(compressStream())
.pipe(fs.createWriteStream('path/to/output'));
`
#### decompressStream([zstdCompressParams])
`javascript
const decompressStream = require('cppzst').decompressStream;
const fs = require('fs');
fs.createReadStream('path/to/input')
.pipe(decompressStream())
.pipe(fs.createWriteStream('path/to/output'));
`
The compress, compressSync and compressStream methods may accept an optional zstdCompressParams object to define compress level and/or dict.
`javascript`
const zstdCompressParams = {
level: 5, // default 1
dict: new Buffer('hello zstd'), // if dict null, left level only.
dictSize: dict.length // if dict null, left level only.
};
The decompress, decompressSync and decompressStream methods may accept an optional zstdDecompressParams object to define dict.
`javascript`
const zdtdDecompressParams = {
dict: new Buffer('hello zstd'),
dictSize: dict.length
};
`sh``
$ npm test