Added shortid for server and unique id's for remote

This commit is contained in:
Kasper Rynning-Tønnesen
2015-06-19 19:43:58 +02:00
parent 8b4cb5964d
commit 7e96a1d0dc
19 changed files with 740 additions and 7 deletions

View File

@@ -0,0 +1,14 @@
'use strict';
var crypto = window.crypto || window.msCrypto; // IE 11 uses window.msCrypto
function randomByte() {
if (!crypto || !crypto.getRandomValues) {
return Math.floor(Math.random() * 256) & 0x30;
}
var dest = new Uint8Array(1);
crypto.getRandomValues(dest);
return dest[0] & 0x30;
}
module.exports = randomByte;

10
server/node_modules/shortid/lib/random/random-byte.js generated vendored Normal file
View File

@@ -0,0 +1,10 @@
'use strict';
var crypto = require('crypto');
var randomBytes = crypto.randomBytes;
function randomByte() {
return randomBytes(1)[0] & 0x30;
}
module.exports = randomByte;

View File

@@ -0,0 +1,25 @@
'use strict';
// Found this seed-based random generator somewhere
// Based on The Central Randomizer 1.3 (C) 1997 by Paul Houle (houle@msc.cornell.edu)
var seed = 1;
/**
* return a random number based on a seed
* @param seed
* @returns {number}
*/
function getNextValue() {
seed = (seed * 9301 + 49297) % 233280;
return seed/(233280.0);
}
function setSeed(_seed_) {
seed = _seed_;
}
module.exports = {
nextValue: getNextValue,
seed: setSeed
};