localstorage-polyfill
Advanced tools
Comparing version 0.9.0 to 0.9.1
const valuesMap = new Map() | ||
class LocalStorage { | ||
getItem(key) { | ||
getItem (key) { | ||
const stringKey = String(key) | ||
@@ -9,25 +9,25 @@ if (valuesMap.has(key)) { | ||
} | ||
return null; | ||
return null | ||
} | ||
setItem(key, val) { | ||
setItem (key, val) { | ||
valuesMap.set(String(key), String(val)) | ||
} | ||
removeItem(key) { | ||
removeItem (key) { | ||
valuesMap.delete(key) | ||
} | ||
clear() { | ||
clear () { | ||
valuesMap.clear() | ||
} | ||
key(i) { | ||
i = i || 0; | ||
var arr = Array.from(valuesMap.keys()); | ||
return arr[i]; | ||
key (i) { | ||
i = i || 0 | ||
var arr = Array.from(valuesMap.keys()) | ||
return arr[i] | ||
} | ||
get length() { | ||
return valuesMap.size; | ||
get length () { | ||
return valuesMap.size | ||
} | ||
@@ -38,4 +38,6 @@ } | ||
global.localStorage = new Proxy(instance, { | ||
set: function(obj, prop, value) { | ||
if (!LocalStorage.prototype.hasOwnProperty(prop)) { | ||
set: function (obj, prop, value) { | ||
if (LocalStorage.prototype.hasOwnProperty(prop)) { | ||
instance[prop] = value | ||
} else { | ||
instance.setItem(prop, value) | ||
@@ -45,3 +47,3 @@ } | ||
}, | ||
get: function(target, name) { | ||
get: function (target, name) { | ||
if (LocalStorage.prototype.hasOwnProperty(name)) { | ||
@@ -48,0 +50,0 @@ return instance[name] |
@@ -0,1 +1,2 @@ | ||
/* global localStorage */ | ||
import test from 'ava' | ||
@@ -18,3 +19,3 @@ import './localStorage' | ||
localStorage.setItem('c') | ||
t.is(localStorage.getItem('c'), "undefined") | ||
t.is(localStorage.getItem('c'), 'undefined') | ||
t.is(localStorage.length, 3) | ||
@@ -36,5 +37,5 @@ | ||
localStorage.a = {} | ||
t.is(localStorage.a, "[object Object]") | ||
t.is(localStorage.a, '[object Object]') | ||
localStorage.c = 1 | ||
t.is(localStorage.c, "1") | ||
t.is(localStorage.c, '1') | ||
t.is(localStorage.length, 2) | ||
@@ -45,3 +46,3 @@ localStorage.length = 0 | ||
t.is(localStorage.length, 2) | ||
t.is(localStorage.key, 'only an ass**** would do this') | ||
}) |
{ | ||
"name": "localstorage-polyfill", | ||
"version": "0.9.0", | ||
"description": "in memory localStorage polyfill for node.js utilizing proxies", | ||
"version": "0.9.1", | ||
"description": "in memory localStorage polyfill for node.js utilizing ES6 proxies", | ||
"main": "localStorage.js", | ||
"scripts": { | ||
"test": "ava" | ||
"test": "ava", | ||
"dev": "ava -w" | ||
}, | ||
@@ -29,3 +30,4 @@ "repository": { | ||
"devDependencies": { | ||
"ava": "^0.16.0" | ||
"ava": "^0.16.0", | ||
"standard": "^8.0.0-beta.5" | ||
}, | ||
@@ -32,0 +34,0 @@ "ava": { |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
5250
84
2