Browse Source

Don't wait for DOM

pull/2/head
Luke Childs 6 years ago
parent
commit
545f2bf10a
  1. 2
      website/index.html
  2. 57
      website/index.js
  3. 3
      website/package.json
  4. 5
      website/yarn.lock

2
website/index.html

@ -109,6 +109,6 @@
</div>
</footer>
<script async src="./index.js"></script>
<script src="./index.js"></script>
</body>
</html>

57
website/index.js

@ -1,6 +1,5 @@
/* eslint-env browser */
import 'babel-polyfill';
import whenDomReady from 'when-dom-ready';
import noUiSlider from 'nouislider';
import dogeSeed from '..';
import {version} from '../package';
@ -13,41 +12,35 @@ const bitsToWords = {
256: 24
};
const main = async () => {
await whenDomReady();
document.querySelector('.version').innerText = `v${version}`;
document.querySelector('.version').innerText = `v${version}`;
const seedText = document.querySelector('.seed-text');
const regenerateSeedButton = document.querySelector('.regenerate-seed');
const seedText = document.querySelector('.seed-text');
const regenerateSeedButton = document.querySelector('.regenerate-seed');
const bitSlider = noUiSlider.create(document.querySelector('.bit-slider'), {
range: {min: 128, max: 256},
step: 32,
start: 256,
pips: {
mode: 'steps',
density: 1,
format: {to: bits => bitsToWords[bits]},
filter: (value, step) => step === 0 ? -1 : 1
}
});
const bitSlider = noUiSlider.create(document.querySelector('.bit-slider'), {
range: {min: 128, max: 256},
step: 32,
start: 256,
pips: {
mode: 'steps',
density: 1,
format: {to: bits => bitsToWords[bits]},
filter: (value, step) => step === 0 ? -1 : 1
}
});
const generateSeed = () => {
const bits = Number(bitSlider.get());
const seedPhraseWords = dogeSeed(bits).split(' ');
const generateSeed = () => {
const bits = Number(bitSlider.get());
const seedPhraseWords = dogeSeed(bits).split(' ');
const wrappedSeedPhrase = seedPhraseWords.map(word => `<span>${word}</span>`).join(' ');
const wordCount = seedPhraseWords.length;
const wrappedSeedPhrase = seedPhraseWords.map(word => `<span>${word}</span>`).join(' ');
const wordCount = seedPhraseWords.length;
seedText.dataset.wordCount = wordCount;
seedText.innerHTML = wrappedSeedPhrase;
};
regenerateSeedButton.addEventListener('click', generateSeed);
bitSlider.on('update', generateSeed);
generateSeed();
seedText.dataset.wordCount = wordCount;
seedText.innerHTML = wrappedSeedPhrase;
};
main();
regenerateSeedButton.addEventListener('click', generateSeed);
bitSlider.on('update', generateSeed);
generateSeed();

3
website/package.json

@ -17,7 +17,6 @@
"dependencies": {
"babel-polyfill": "^6.26.0",
"modern-normalize": "^0.5.0",
"nouislider": "^12.1.0",
"when-dom-ready": "^1.2.12"
"nouislider": "^12.1.0"
}
}

5
website/yarn.lock

@ -4943,11 +4943,6 @@ wcwidth@^1.0.1:
dependencies:
defaults "^1.0.3"
when-dom-ready@^1.2.12:
version "1.2.12"
resolved "https://registry.yarnpkg.com/when-dom-ready/-/when-dom-ready-1.2.12.tgz#99f46f02ef65dbb2bb2f4b58c44588234e724c98"
integrity sha1-mfRvAu9l27K7L0tYxEWII05yTJg=
whet.extend@~0.9.9:
version "0.9.9"
resolved "https://registry.yarnpkg.com/whet.extend/-/whet.extend-0.9.9.tgz#f877d5bf648c97e5aa542fadc16d6a259b9c11a1"

Loading…
Cancel
Save