UNPKG

madeline-ton

Version:

Pure JS client-side implementation of the Telegram TON blockchain protocol

64 lines (55 loc) 1.99 kB
"use strict"; 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"); }