Skip to content

Commit d2744a9

Browse files
committed
Replace electron-json-storage with electron-settings
Fixes electron#251
1 parent d6f2de8 commit d2744a9

File tree

3 files changed

+30
-29
lines changed

3 files changed

+30
-29
lines changed

assets/demo-btns.js

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,26 @@
1-
const storage = require('electron-json-storage')
1+
const settings = require('electron-settings')
22

33
const demoBtns = document.querySelectorAll('.js-container-target')
44
// Listen for demo button clicks
55
Array.prototype.forEach.call(demoBtns, function (btn) {
66
btn.addEventListener('click', function (event) {
7-
event.target.parentElement.classList.toggle('is-open')
7+
const parent = event.target.parentElement;
88

9-
// Save currently active demo button in localStorage
10-
storage.set('activeDemoButtonId', event.target.getAttribute('id'), function (err) {
11-
if (err) return console.error(err)
12-
})
9+
// Toggles the "is-open" class on the demo's parent element.
10+
parent.classList.toggle('is-open')
11+
12+
// Saves the active demo if it is open, or clears it if the demo was user
13+
// collapsed by the user
14+
if (parent.classList.contains('is-open')) {
15+
settings.set('activeDemoButtonId', event.target.getAttribute('id'))
16+
} else {
17+
settings.delete('activeDemoButtonId')
18+
}
1319
})
1420
})
1521

1622
// Default to the demo that was active the last time the app was open
17-
storage.get('activeDemoButtonId', function (err, id) {
18-
if (err) return console.error(err)
19-
if (id && id.length) document.getElementById(id).click()
20-
})
23+
const buttonId = settings.get('activeDemoButtonId');
24+
if (buttonId) {
25+
document.getElementById(buttonId).click()
26+
}

assets/nav.js

Lines changed: 13 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,4 @@
1-
const storage = require('electron-json-storage')
2-
3-
// Default to the view that was active the last time the app was open
4-
storage.get('activeSectionButtonId', function (err, id) {
5-
if (err) return console.error(err)
6-
7-
if (id && id.length) {
8-
showMainContent()
9-
const section = document.getElementById(id)
10-
if (section) section.click()
11-
} else {
12-
activateDefaultSection()
13-
displayAbout()
14-
}
15-
})
1+
const settings = require('electron-settings')
162

173
document.body.addEventListener('click', function (event) {
184
if (event.target.dataset.section) {
@@ -36,9 +22,7 @@ function handleSectionTrigger (event) {
3622

3723
// Save currently active button in localStorage
3824
const buttonId = event.target.getAttribute('id')
39-
storage.set('activeSectionButtonId', buttonId, function (err) {
40-
if (err) return console.error(err)
41-
})
25+
settings.set('activeSectionButtonId', buttonId);
4226
}
4327

4428
function activateDefaultSection () {
@@ -79,3 +63,14 @@ function hideAllSectionsAndDeselectButtons () {
7963
function displayAbout () {
8064
document.querySelector('#about-modal').classList.add('is-shown')
8165
}
66+
67+
// Default to the view that was active the last time the app was open
68+
const sectionId = settings.get('activeSectionButtonId')
69+
if (sectionId) {
70+
showMainContent()
71+
const section = document.getElementById(sectionId)
72+
if (section) section.click()
73+
} else {
74+
activateDefaultSection()
75+
displayAbout()
76+
}

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@
4444
"standard": "^8.2.0"
4545
},
4646
"dependencies": {
47-
"electron-json-storage": "^2.0.0",
47+
"electron-settings": "^3.0.5",
4848
"electron-shortcut-normalizer": "^1.0.0",
4949
"glob": "^7.1.0",
5050
"highlight.js": "^9.3.0"

0 commit comments

Comments
 (0)