Some checks failed
Build & Deploy / 🔍 Prepare (push) Successful in 20s
Build & Deploy / 🧪 QA (push) Failing after 34s
Build & Deploy / 🏗️ Build (push) Has started running
Build & Deploy / 🚀 Deploy (push) Has been cancelled
Build & Deploy / 🧪 Smoke Test (push) Has been cancelled
Build & Deploy / ⚡ Lighthouse (push) Has been cancelled
Build & Deploy / 🔔 Notify (push) Has been cancelled
19 lines
542 B
Plaintext
19 lines
542 B
Plaintext
|
|
const isNode = typeof process !== 'undefined' && process.release && /node|io\.js/.test(process.release.name)
|
|
|
|
const isoBrowser = require('./browser.js')
|
|
|
|
const perf = isNode ? require('perf_hooks').performance : isoBrowser.performance
|
|
const nodeCrypto = isNode ? require('crypto') : null
|
|
|
|
/**
|
|
* @type {function(number):ArrayBuffer}
|
|
*/
|
|
const cryptoRandomBuffer = nodeCrypto
|
|
// node
|
|
? len => nodeCrypto.randomBytes(len).buffer
|
|
: isoBrowser.cryptoRandomBuffer
|
|
|
|
exports.performance = perf
|
|
exports.cryptoRandomBuffer = cryptoRandomBuffer
|