Skip to content

Commit 85610d6

Browse files
authored
replace browserify-zlib with webpack v5 compatible pako (#287)
1 parent 2aef93e commit 85610d6

File tree

3 files changed

+22
-24
lines changed

3 files changed

+22
-24
lines changed

lib/jwe/decrypt.js

+10-10
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ var base64url = require("../util/base64url"),
99
AlgConfig = require("../util/algconfig"),
1010
JWK = require("../jwk"),
1111
merge = require("../util/merge"),
12-
zlib = require("zlib");
12+
pako = require("pako");
1313

1414
var DEFAULT_OPTIONS = {
1515
algorithms: "*"
@@ -285,17 +285,17 @@ function JWEDecrypter(ks, globalOpts) {
285285
promise = promise.then(function(jwe) {
286286
if ("DEF" === jwe.header.zip) {
287287
return new Promise(function(resolve, reject) {
288-
zlib.inflateRaw(Buffer.from(jwe.plaintext), function(err, data) {
289-
if (err) {
290-
reject(err);
291-
}
292-
else {
293-
jwe.payload = jwe.plaintext = data;
294-
resolve(jwe);
295-
}
296-
});
288+
try {
289+
var data = pako.inflateRaw(Buffer.from(jwe.plaintext))
290+
291+
jwe.payload = jwe.plaintext = Buffer.from(data);
292+
resolve(jwe);
293+
} catch (err) {
294+
reject(err);
295+
}
297296
});
298297
}
298+
299299
return jwe;
300300
});
301301

lib/jwe/encrypt.js

+9-10
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ var lodash = require("lodash"),
1010
generateCEK = require("./helpers").generateCEK,
1111
JWK = require("../jwk"),
1212
slice = require("./helpers").slice,
13-
zlib = require("zlib"),
13+
pako = require("pako"),
1414
CONSTANTS = require("../algorithms/constants");
1515

1616
var assign = lodash.assign;
@@ -369,15 +369,14 @@ function JWEEncrypter(cfg, fields, recipients) {
369369
return jwe;
370370
} else if (props.zip === "DEF") {
371371
return new Promise(function(resolve, reject) {
372-
zlib.deflateRaw(Buffer.from(pdata, "binary"), function(err, data) {
373-
if (err) {
374-
reject(err);
375-
}
376-
else {
377-
jwe.plaintext = data;
378-
resolve(jwe);
379-
}
380-
});
372+
try {
373+
var data = pako.deflateRaw(Buffer.from(pdata, "binary"));
374+
375+
jwe.plaintext = data;
376+
resolve(jwe);
377+
} catch (error) {
378+
reject(error);
379+
}
381380
});
382381
}
383382
return Promise.reject(new Error("unsupported 'zip' mode"));

package.json

+3-4
Original file line numberDiff line numberDiff line change
@@ -28,22 +28,21 @@
2828
},
2929
"browser": {
3030
"crypto": false,
31-
"zlib": "browserify-zlib"
31+
"zlib": "pako"
3232
},
3333
"react-native": {
3434
"crypto": false,
35-
"zlib": "react-zlib-js"
35+
"zlib": "pako"
3636
},
3737
"dependencies": {
3838
"base64url": "^3.0.1",
39-
"browserify-zlib": "^0.2.0",
4039
"buffer": "^5.5.0",
4140
"es6-promise": "^4.2.8",
4241
"lodash": "^4.17.15",
4342
"long": "^4.0.0",
4443
"node-forge": "^0.8.5",
44+
"pako": "^1.0.11",
4545
"process": "^0.11.10",
46-
"react-zlib-js": "^1.0.4",
4746
"uuid": "^3.3.3"
4847
},
4948
"devDependencies": {

0 commit comments

Comments
 (0)