You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
reagent_manage/vue/src/utils/secret.js

19 lines
643 B

import pako from 'pako'
export function unzip(b64Data) {
let strData = atob(b64Data)
// Convert binary string to character-number array
let charData = strData.split('').map(x => x.charCodeAt(0))
// Turn number array into byte-array
let binData = new Uint8Array(charData)
// unzip
let data = pako.inflate(binData)
// Convert gunzipped byteArray back to ascii string:
strData = String.fromCharCode.apply(null, new Uint16Array(data))
return decodeURIComponent(strData)
}
export function zip(str) {
let binaryString = pako.gzip(encodeURIComponent(str), {to: 'string'})
return btoa(binaryString)
}