madeline-ton
Version:
Pure JS client-side implementation of the Telegram TON blockchain protocol
64 lines (55 loc) • 1.99 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.windowObject = exports.useWorkers = exports.useWebCryptoSha1 = exports.useWebCryptoRandom = exports.useWebCrypto = void 0;
var windowObject = {};
exports.windowObject = windowObject;
if (typeof window !== 'undefined') {
exports.windowObject = windowObject = window;
} else if (typeof crypto !== 'undefined') {
exports.windowObject = windowObject = {
crypto: crypto
};
}
if (windowObject.msCrypto) {
windowObject.crypto = windowObject.msCrypto;
}
if (windowObject.crypto && windowObject.crypto.webkitSubtle) {
windowObject.crypto.subtle = windowObject.crypto.webkitSubtle;
}
var useWebCrypto = !!windowObject.crypto;
exports.useWebCrypto = useWebCrypto;
var useWebCryptoRandom = useWebCrypto && !!windowObject.crypto.getRandomValues;
exports.useWebCryptoRandom = useWebCryptoRandom;
var useWebCryptoSha1 = useWebCrypto && !windowObject.msCrypto;
exports.useWebCryptoSha1 = useWebCryptoSha1;
var useWorkers = !!windowObject.Worker;
exports.useWorkers = useWorkers;
var isWorker = typeof WorkerGlobalScope !== 'undefined' && self instanceof WorkerGlobalScope;
var prefix = isWorker ? "Worker: " : "";
var worker = useWorkers ? "+worker " : "";
if (useWebCrypto) {
console.log(prefix + "Using cryptoJS IGE" + worker);
console.log(prefix + "Using WebCrypto CTR");
console.log(prefix + "Using WebCrypto SHA256");
} else {
console.log(prefix + "Using cryptoJS IGE" + worker);
console.log(prefix + "Using cryptoJS CTR" + worker);
console.log(prefix + "Using cryptoJS SHA256" + worker);
}
if (useWebCryptoSha1) {
console.log(prefix + "Using WebCrypto SHA1");
} else {
console.log(prefix + "Using JS SHA1" + worker);
}
if (useWebCryptoRandom) {
console.log(prefix + "Using WebCrypto random");
} else {
console.log(prefix + "Using prng random" + worker);
}
if (useWorkers) {
console.log(prefix + "Using workers");
} else {
console.log(prefix + "Not using workers");
}