测试版
This commit is contained in:
23
node_modules/store/plugins/compression.js
generated
vendored
Normal file
23
node_modules/store/plugins/compression.js
generated
vendored
Normal file
@@ -0,0 +1,23 @@
|
||||
const LZString = require('./lib/lz-string')
|
||||
|
||||
module.exports = compressionPlugin
|
||||
|
||||
function compressionPlugin() {
|
||||
return {
|
||||
get: get,
|
||||
set: set,
|
||||
}
|
||||
|
||||
function get(super_fn, key) {
|
||||
var val = super_fn(key)
|
||||
if (!val) { return val }
|
||||
var decompressed = LZString.decompress(val)
|
||||
// fallback to existing values that are not compressed
|
||||
return (decompressed == null) ? val : this._deserialize(decompressed)
|
||||
}
|
||||
|
||||
function set(super_fn, key, val) {
|
||||
var compressed = LZString.compress(this._serialize(val))
|
||||
super_fn(key, compressed)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user