mirror of
https://github.com/ajayyy/SponsorBlock.git
synced 2025-12-10 13:37:04 +03:00
Comments
This commit is contained in:
8
SB.js
8
SB.js
@@ -9,16 +9,21 @@ SB = {
|
|||||||
|
|
||||||
// Function setup
|
// Function setup
|
||||||
|
|
||||||
|
// Allows a map to be conveted into json form
|
||||||
|
// Currently used for local storage
|
||||||
Map.prototype.toJSON = function() {
|
Map.prototype.toJSON = function() {
|
||||||
return Array.from(this.entries());
|
return Array.from(this.entries());
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// Proxy Map changes to Map in SB.localConfig
|
||||||
|
// Saves the changes to chrome.storage in json form
|
||||||
class MapIO {
|
class MapIO {
|
||||||
constructor(id) {
|
constructor(id) {
|
||||||
|
// The name of the item in the array
|
||||||
this.id = id;
|
this.id = id;
|
||||||
|
// A local copy of the map (SB.config.mapname.map)
|
||||||
this.map = SB.localConfig[this.id];
|
this.map = SB.localConfig[this.id];
|
||||||
}
|
}
|
||||||
|
|
||||||
set(key, value) {
|
set(key, value) {
|
||||||
// Proxy to map
|
// Proxy to map
|
||||||
this.map.set(key, value);
|
this.map.set(key, value);
|
||||||
@@ -65,6 +70,7 @@ class MapIO {
|
|||||||
* @param {*} data
|
* @param {*} data
|
||||||
*/
|
*/
|
||||||
function encodeStoredItem(data) {
|
function encodeStoredItem(data) {
|
||||||
|
// if data is Map convert to json for storing
|
||||||
if(!(data instanceof Map)) return data;
|
if(!(data instanceof Map)) return data;
|
||||||
return JSON.stringify(data);
|
return JSON.stringify(data);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user