getaddress-autocomplete-modal
Version:
GetAddress.io - Autocomplete modal plug-in
31 lines • 1.27 kB
JavaScript
export default class Storage {
saveAddress(id, address) {
const key = "getaddress_saved_addresses";
let savedAddresses = localStorage.getItem(key);
if (!savedAddresses) {
const map = new Map();
const storedAddress = new StoredAddress(address, new Date().getTime());
map.set(id, storedAddress);
const jsonMap = JSON.stringify([...map]);
localStorage.setItem(key, jsonMap);
}
else {
const map = new Map(JSON.parse(savedAddresses));
if (!map.get(id)) {
if (map.size >= 6) {
const storedEntries = [...map.entries()].sort((a, b) => {
const address1 = a[1];
const address2 = b[1];
return address1.timestamp - address2.timestamp;
});
map.delete(storedEntries[0][0]);
}
const storedAddress = new StoredAddress(address, new Date().getTime());
map.set(id, storedAddress);
const jsonMap = JSON.stringify([...map]);
localStorage.setItem(key, jsonMap);
}
}
}
}
//# sourceMappingURL=AddressStorage.js.map