[ref] replace pako to fflate
This commit is contained in:
@@ -26,6 +26,7 @@
|
|||||||
"dompurify": "^3.0.1",
|
"dompurify": "^3.0.1",
|
||||||
"exifr": "^7.1.3",
|
"exifr": "^7.1.3",
|
||||||
"express": "^4.18.2",
|
"express": "^4.18.2",
|
||||||
|
"fflate": "^0.8.0",
|
||||||
"gpt-3-encoder": "^1.1.4",
|
"gpt-3-encoder": "^1.1.4",
|
||||||
"gpt3-tokenizer": "^1.1.5",
|
"gpt3-tokenizer": "^1.1.5",
|
||||||
"isomorphic-dompurify": "^1.2.0",
|
"isomorphic-dompurify": "^1.2.0",
|
||||||
@@ -35,7 +36,6 @@
|
|||||||
"mobile-drag-drop": "3.0.0-rc.0",
|
"mobile-drag-drop": "3.0.0-rc.0",
|
||||||
"msgpackr": "^1.9.5",
|
"msgpackr": "^1.9.5",
|
||||||
"node-html-parser": "^6.1.5",
|
"node-html-parser": "^6.1.5",
|
||||||
"pako": "^2.1.0",
|
|
||||||
"png-chunk-text": "^1.0.0",
|
"png-chunk-text": "^1.0.0",
|
||||||
"png-chunks-encode": "^1.0.0",
|
"png-chunks-encode": "^1.0.0",
|
||||||
"png-chunks-extract": "^1.0.0",
|
"png-chunks-extract": "^1.0.0",
|
||||||
@@ -58,7 +58,6 @@
|
|||||||
"@types/lodash.clonedeep": "^4.5.7",
|
"@types/lodash.clonedeep": "^4.5.7",
|
||||||
"@types/lodash.isequal": "^4.5.6",
|
"@types/lodash.isequal": "^4.5.6",
|
||||||
"@types/node": "^18.7.10",
|
"@types/node": "^18.7.10",
|
||||||
"@types/pako": "^2.0.0",
|
|
||||||
"@types/pngjs": "^6.0.1",
|
"@types/pngjs": "^6.0.1",
|
||||||
"@types/showdown": "^2.0.0",
|
"@types/showdown": "^2.0.0",
|
||||||
"@types/uuid": "^9.0.1",
|
"@types/uuid": "^9.0.1",
|
||||||
|
|||||||
21
pnpm-lock.yaml
generated
21
pnpm-lock.yaml
generated
@@ -37,6 +37,9 @@ dependencies:
|
|||||||
express:
|
express:
|
||||||
specifier: ^4.18.2
|
specifier: ^4.18.2
|
||||||
version: 4.18.2
|
version: 4.18.2
|
||||||
|
fflate:
|
||||||
|
specifier: ^0.8.0
|
||||||
|
version: 0.8.0
|
||||||
gpt-3-encoder:
|
gpt-3-encoder:
|
||||||
specifier: ^1.1.4
|
specifier: ^1.1.4
|
||||||
version: 1.1.4
|
version: 1.1.4
|
||||||
@@ -64,9 +67,6 @@ dependencies:
|
|||||||
node-html-parser:
|
node-html-parser:
|
||||||
specifier: ^6.1.5
|
specifier: ^6.1.5
|
||||||
version: 6.1.5
|
version: 6.1.5
|
||||||
pako:
|
|
||||||
specifier: ^2.1.0
|
|
||||||
version: 2.1.0
|
|
||||||
png-chunk-text:
|
png-chunk-text:
|
||||||
specifier: ^1.0.0
|
specifier: ^1.0.0
|
||||||
version: 1.0.0
|
version: 1.0.0
|
||||||
@@ -129,9 +129,6 @@ devDependencies:
|
|||||||
'@types/node':
|
'@types/node':
|
||||||
specifier: ^18.7.10
|
specifier: ^18.7.10
|
||||||
version: 18.15.11
|
version: 18.15.11
|
||||||
'@types/pako':
|
|
||||||
specifier: ^2.0.0
|
|
||||||
version: 2.0.0
|
|
||||||
'@types/pngjs':
|
'@types/pngjs':
|
||||||
specifier: ^6.0.1
|
specifier: ^6.0.1
|
||||||
version: 6.0.1
|
version: 6.0.1
|
||||||
@@ -827,10 +824,6 @@ packages:
|
|||||||
/@types/node@18.15.11:
|
/@types/node@18.15.11:
|
||||||
resolution: {integrity: sha512-E5Kwq2n4SbMzQOn6wnmBjuK9ouqlURrcZDVfbo9ftDDTFt3nk7ZKK4GMOzoYgnpQJKcxwQw+lGaBvvlMo0qN/Q==}
|
resolution: {integrity: sha512-E5Kwq2n4SbMzQOn6wnmBjuK9ouqlURrcZDVfbo9ftDDTFt3nk7ZKK4GMOzoYgnpQJKcxwQw+lGaBvvlMo0qN/Q==}
|
||||||
|
|
||||||
/@types/pako@2.0.0:
|
|
||||||
resolution: {integrity: sha512-10+iaz93qR5WYxTo+PMifD5TSxiOtdRaxBf7INGGXMQgTCu8Z/7GYWYFUOS3q/G0nE5boj1r4FEB+WSy7s5gbA==}
|
|
||||||
dev: true
|
|
||||||
|
|
||||||
/@types/pngjs@6.0.1:
|
/@types/pngjs@6.0.1:
|
||||||
resolution: {integrity: sha512-J39njbdW1U/6YyVXvC9+1iflZghP8jgRf2ndYghdJb5xL49LYDB+1EuAxfbuJ2IBbWIL3AjHPQhgaTxT3YaYeg==}
|
resolution: {integrity: sha512-J39njbdW1U/6YyVXvC9+1iflZghP8jgRf2ndYghdJb5xL49LYDB+1EuAxfbuJ2IBbWIL3AjHPQhgaTxT3YaYeg==}
|
||||||
dependencies:
|
dependencies:
|
||||||
@@ -1548,6 +1541,10 @@ packages:
|
|||||||
reusify: 1.0.4
|
reusify: 1.0.4
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
|
/fflate@0.8.0:
|
||||||
|
resolution: {integrity: sha512-FAdS4qMuFjsJj6XHbBaZeXOgaypXp8iw/Tpyuq/w3XA41jjLHT8NPA+n7czH/DDhdncq0nAyDZmPeWXh2qmdIg==}
|
||||||
|
dev: false
|
||||||
|
|
||||||
/fill-range@7.0.1:
|
/fill-range@7.0.1:
|
||||||
resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==}
|
resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==}
|
||||||
engines: {node: '>=8'}
|
engines: {node: '>=8'}
|
||||||
@@ -2315,10 +2312,6 @@ packages:
|
|||||||
p-finally: 1.0.0
|
p-finally: 1.0.0
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/pako@2.1.0:
|
|
||||||
resolution: {integrity: sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==}
|
|
||||||
dev: false
|
|
||||||
|
|
||||||
/parent-module@1.0.1:
|
/parent-module@1.0.1:
|
||||||
resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==}
|
resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==}
|
||||||
engines: {node: '>=6'}
|
engines: {node: '>=6'}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { Packr, Unpackr, decode } from "msgpackr";
|
import { Packr, Unpackr, decode } from "msgpackr";
|
||||||
import pako from "pako";
|
import * as fflate from "fflate";
|
||||||
import { isTauri } from "./globalApi";
|
import { isTauri } from "./globalApi";
|
||||||
|
|
||||||
const packr = new Packr({
|
const packr = new Packr({
|
||||||
@@ -17,7 +17,7 @@ const magicCompressedHeader = new Uint8Array([0, 82, 73, 83, 85, 83, 65, 86, 69,
|
|||||||
export function encodeRisuSave(data:any, compression:'noCompression'|'compression' = 'noCompression'){
|
export function encodeRisuSave(data:any, compression:'noCompression'|'compression' = 'noCompression'){
|
||||||
let encoded:Uint8Array = packr.encode(data)
|
let encoded:Uint8Array = packr.encode(data)
|
||||||
if(isTauri || compression === 'compression'){
|
if(isTauri || compression === 'compression'){
|
||||||
encoded = pako.deflate(encoded)
|
encoded = fflate.compressSync(encoded)
|
||||||
const result = new Uint8Array(encoded.length + magicCompressedHeader.length);
|
const result = new Uint8Array(encoded.length + magicCompressedHeader.length);
|
||||||
result.set(magicCompressedHeader, 0)
|
result.set(magicCompressedHeader, 0)
|
||||||
result.set(encoded, magicCompressedHeader.length)
|
result.set(encoded, magicCompressedHeader.length)
|
||||||
@@ -36,7 +36,7 @@ export function decodeRisuSave(data:Uint8Array){
|
|||||||
switch(checkHeader(data)){
|
switch(checkHeader(data)){
|
||||||
case "compressed":
|
case "compressed":
|
||||||
data = data.slice(magicCompressedHeader.length)
|
data = data.slice(magicCompressedHeader.length)
|
||||||
return decode(pako.inflate(data))
|
return decode(fflate.decompressSync(data))
|
||||||
case "raw":
|
case "raw":
|
||||||
data = data.slice(magicHeader.length)
|
data = data.slice(magicHeader.length)
|
||||||
return unpackr.decode(data)
|
return unpackr.decode(data)
|
||||||
@@ -51,7 +51,7 @@ export function decodeRisuSave(data:Uint8Array){
|
|||||||
const dec = unpackr.decode(realData)
|
const dec = unpackr.decode(realData)
|
||||||
return dec
|
return dec
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
const buf = Buffer.from(pako.inflate(Buffer.from(data)))
|
const buf = Buffer.from(fflate.decompressSync(Buffer.from(data)))
|
||||||
try {
|
try {
|
||||||
return JSON.parse(buf.toString('utf-8'))
|
return JSON.parse(buf.toString('utf-8'))
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
@@ -87,4 +87,4 @@ function checkHeader(data: Uint8Array) {
|
|||||||
}
|
}
|
||||||
// All bytes matched
|
// All bytes matched
|
||||||
return header;
|
return header;
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user