test02/node_modules/@vuepress/helper/lib/node/utils/data.js
罗佳鸿 6aa1ebe342
Some checks are pending
部署文档 / deploy-gh-pages (push) Waiting to run
first commit
2024-08-13 10:11:19 +08:00

19 lines
622 B
JavaScript

import { strFromU8, strToU8, unzlibSync, zlibSync } from 'fflate/node';
/**
* Encode and compress data
*/
export const encodeData = (data, level = 6) => {
const buffer = strToU8(data);
// zlib headers can be found at https://stackoverflow.com/a/54915442
const zipped = zlibSync(buffer, { level });
const binary = strFromU8(zipped, true);
return Buffer.from(binary, 'binary').toString('base64');
};
/**
* Decode and unzip data
*/
export const decodeData = (base64) => {
const binary = Buffer.from(base64, 'base64').toString('binary');
return strFromU8(unzlibSync(strToU8(binary, true)));
};