jingtum-base-lib
Advanced tools
Comparing version 1.0.6 to 1.0.7
{ | ||
"name": "jingtum-base-lib", | ||
"version": "1.0.6", | ||
"version": "1.0.7", | ||
"description": "jingtum base lib for wallet and so on.", | ||
@@ -5,0 +5,0 @@ "main": "index.js", |
@@ -26,5 +26,2 @@ #The Jingtum Base JavaScript Library | ||
##Quickstart | ||
#TODO | ||
``` | ||
@@ -38,2 +35,4 @@ var Wallet = require('jingtum-base-lib').Wallet; | ||
## TODO | ||
Check if work in browser env | ||
171
src/utils.js
@@ -5,154 +5,4 @@ 'use strict'; | ||
var BN = require('bn.js'); | ||
var assert = require('assert'); | ||
function filterErr(code, done) { | ||
return function(e) { | ||
done(e.code !== code ? e : void(0)); | ||
}; | ||
}; | ||
function throwErr(done) { | ||
return function(e) { | ||
if (e) { | ||
throw e; | ||
} | ||
done(); | ||
}; | ||
}; | ||
function trace(comment, func) { | ||
return function() { | ||
console.log('%s: %s', trace, arguments.toString); | ||
func(arguments); | ||
}; | ||
}; | ||
function arraySet(count, value) { | ||
var a = new Array(count); | ||
for (var i = 0; i < count; i++) { | ||
a[i] = value; | ||
} | ||
return a; | ||
}; | ||
function hexToString(h) { | ||
var a = []; | ||
var i = 0; | ||
if (h.length % 2) { | ||
a.push(String.fromCharCode(parseInt(h.substring(0, 1), 16))); | ||
i = 1; | ||
} | ||
for (; i < h.length; i += 2) { | ||
a.push(String.fromCharCode(parseInt(h.substring(i, i + 2), 16))); | ||
} | ||
return a.join(''); | ||
}; | ||
function stringToHex(s) { | ||
var result = ''; | ||
for (var i = 0; i < s.length; i++) { | ||
var b = s.charCodeAt(i); | ||
result += b < 16 ? '0' + b.toString(16) : b.toString(16); | ||
} | ||
return result; | ||
}; | ||
/** | ||
* use utf8 encoding with hex representation | ||
*/ | ||
function stringToUtf8(s) { | ||
return stringToHex(utf8.encode(s)) | ||
} | ||
/** | ||
* use utf8 decoding with hex representation | ||
*/ | ||
function utf8ToString(u) { | ||
return utf8.decode(hexToString(u)) | ||
} | ||
function stringToArray(s) { | ||
var a = new Array(s.length); | ||
for (var i = 0; i < a.length; i += 1) { | ||
a[i] = s.charCodeAt(i); | ||
} | ||
return a; | ||
}; | ||
function hexToArray(h) { | ||
return stringToArray(hexToString(h)); | ||
}; | ||
function chunkString(str, n, leftAlign) { | ||
var ret = []; | ||
var i = 0, | ||
len = str.length; | ||
if (leftAlign) { | ||
i = str.length % n; | ||
if (i) { | ||
ret.push(str.slice(0, i)); | ||
} | ||
} | ||
for (; i < len; i += n) { | ||
ret.push(str.slice(i, n + i)); | ||
} | ||
return ret; | ||
}; | ||
function assert(assertion, msg) { | ||
if (!assertion) { | ||
throw new Error('Assertion failed' + (msg ? ': ' + msg : '.')); | ||
} | ||
}; | ||
/** | ||
* Return unique values in array. | ||
*/ | ||
function arrayUnique(arr) { | ||
var u = {}, | ||
a = []; | ||
for (var i = 0, l = arr.length; i < l; i++) { | ||
var k = arr[i]; | ||
if (u[k]) { | ||
continue; | ||
} | ||
a.push(k); | ||
u[k] = true; | ||
} | ||
return a; | ||
}; | ||
/** | ||
* Convert a jingtum epoch to a JavaScript timestamp. | ||
* | ||
* JavaScript timestamps are unix epoch in milliseconds. | ||
*/ | ||
function toTimestamp(rpepoch) { | ||
return (rpepoch + 0x386D4380) * 1000; | ||
} | ||
/** | ||
* Convert a JavaScript timestamp or Date to a Ripple epoch. | ||
* | ||
* JavaScript timestamps are unix epoch in milliseconds. | ||
*/ | ||
function fromTimestamp(rpepoch) { | ||
if (rpepoch instanceof Date) { | ||
rpepoch = rpepoch.getTime(); | ||
} | ||
return Math.round(rpepoch / 1000) - 0x386D4380; | ||
} | ||
function bytesToHex(a) { | ||
@@ -170,22 +20,3 @@ return a.map(function (byteValue) { | ||
exports.time = { | ||
fromJingtum: toTimestamp, | ||
toJingtum: fromTimestamp | ||
} | ||
exports.trace = trace; | ||
exports.arraySet = arraySet; | ||
exports.hexToString = hexToString; | ||
exports.hexToArray = hexToArray; | ||
exports.stringToArray = stringToArray; | ||
exports.stringToHex = stringToHex; | ||
exports.chunkString = chunkString; | ||
exports.assert = assert; | ||
exports.arrayUnique = arrayUnique; | ||
exports.toTimestamp = toTimestamp; | ||
exports.fromTimestamp = fromTimestamp; | ||
exports.utf8ToString = utf8ToString; | ||
exports.stringToUtf8 = stringToUtf8; | ||
exports.bytesToHex = bytesToHex; | ||
exports.hexToBytes = hexToBytes; |
Sorry, the diff of this file is not supported yet
39666
611
37