New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@cocreate/local-storage

Package Overview
Dependencies
Maintainers
1
Versions
205
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@cocreate/local-storage - npm Package Compare versions

Comparing version 1.3.49 to 1.4.0

7

CHANGELOG.md

@@ -0,1 +1,8 @@

# [1.4.0](https://github.com/CoCreate-app/CoCreate-local-storage/compare/v1.3.49...v1.4.0) (2023-01-29)
### Features
* import @cocreate/local-storage ([68bd564](https://github.com/CoCreate-app/CoCreate-local-storage/commit/68bd56424466d0188b5b012968405105326028bb))
## [1.3.49](https://github.com/CoCreate-app/CoCreate-local-storage/compare/v1.3.48...v1.3.49) (2023-01-27)

@@ -2,0 +9,0 @@

5

package.json
{
"name": "@cocreate/local-storage",
"version": "1.3.49",
"version": "1.4.0",
"description": "A Simple component similar to CoCreate-input & CoCreate-fetch which Save and fetch data for inputs, textarea, selects from localstorage. Easily configured using HTML5 attributes and/or JavaScript API",

@@ -63,4 +63,5 @@ "keywords": [

"dependencies": {
"@cocreate/docs": "^1.5.8"
"@cocreate/actions": "^1.5.55",
"@cocreate/docs": "^1.5.9"
}
}

119

src/index.js

@@ -0,4 +1,7 @@

import action from '@cocreate/actions'
const CoCreateLocalStorage = {
support: true,
storage: new Map(),
init: function() {

@@ -9,4 +12,8 @@ var elements = document.querySelectorAll('[localstorage-set], [localstorage-get]');

elements = document.querySelectorAll(`[localstorage-get="${e.key}"]`)
for (let element of elements)
this.get(element)
for (let element of elements) {
let value = this.getItem(key)
if (value != null){
element.value = value;
}
}
});

@@ -25,9 +32,15 @@ },

if (isRealtime == "false") return;
this.set(e.target)
let key = e.target.getAttribute('localstorage-set');
let elements = document.querySelectorAll(`[localstorage-get="${e.key}"]`)
for (let el of elements){
if (el != element)
this.get(el)
this.setItem(key, e.target.value);
let elements = document.querySelectorAll(`[localstorage-get="${key}"]`)
for (let el of elements) {
if (el != element) {
let value = this.getItem(key)
if (value != null){
el.value = value;
}
}
}

@@ -37,55 +50,51 @@ })

get: function(element) {
let key = element.getAttribute('localstorage-get');
if (!key) return;
let value = window.localStorage.getItem(key)
if (value != null){
element.value = value;
}
getItem: function(key) {
if (this.support)
return window.localStorage.getItem(key)
else
return this.storage.get(key)
},
set: function(element) {
let key = element.getAttribute('localstorage-set');
if (element.value && key){
window.localStorage.setItem(key, element.value);
}
setItem: function(key, value) {
if (this.support)
window.localStorage.setItem(key, value);
else
this.storage.set(key, value)
},
remove: function(element) {
element.value = '';
let key = element.getAttribute('localstorage-remove');
if (key) {
removeItem: function(key) {
if (this.support)
window.localStorage.removeItem(key)
}
},
else
this.storage.delete(key)
},
runStorage: function(btn) {
const form = btn.form;
let storage = window.localStorage;
if (!form) return;
let set_els = form.querySelectorAll('[localstorage-set]')
set_els.forEach(input=>{
let key = input.getAttribute('localstorage-set');
if (input.value && key){
storage.setItem(key, input.value);
for (let el of set_els) {
let key = el.getAttribute('localstorage-set');
if (el.value && key){
this.setItem(key, el.value);
}
});
}
let get_els = form.querySelectorAll('[localstorage-get]')
get_els.forEach(input=>{
let key = input.getAttribute('localstorage-get');
for (let el of get_els) {
let key = el.getAttribute('localstorage-get');
if (!key) return;
let value = storage.getItem(key)
let value = this.getItem(key)
if (value != null){
input.value = value;
el.value = value;
}
});
}
let remove_els = form.querySelectorAll('[localstorage-remove]')
remove_els.forEach(input=>{
input.value = '';
let key = input.getAttribute('localstorage-remove');
for (let el of remove_els) {
el.value = '';
let key = el.getAttribute('localstorage-remove');
if (key) {
storage.removeItem(key)
this.removeItem(key)
}
});
}

@@ -96,6 +105,22 @@ document.dispatchEvent(new CustomEvent('localStorage', {

}
},
checkSupport: function() {
if (!('localStorage' in window)) {
console.log("This browser doesn't support localStorage.");
this.support = false;
} else {
try {
let test = window.localStorage.getItem('test')
if (window.CoCreateConfig)
if (window.CoCreateConfig.localStorage === false)
this.support = false;
} catch(e) {
this.support = false;
}
}
}
}
CoCreate.action.init({
action.init({
name: "localStorage",

@@ -108,3 +133,3 @@ endEvent: "localStorage",

CoCreate.action.init({
action.init({
name: "localStorageRemove",

@@ -111,0 +136,0 @@ endEvent: "localStorageRemoved",

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc