diff options
author | Florian Dold <florian@dold.me> | 2021-06-14 18:19:18 +0200 |
---|---|---|
committer | Florian Dold <florian@dold.me> | 2021-06-14 18:19:18 +0200 |
commit | b4f97f4592cbab6632aff4f1ea4bedccdbf00d3a (patch) | |
tree | fd87fd5a819912f5a616c24fd2ccc951685d00ec | |
parent | 1cde390c23f2668a3777752632c48febd10a28ee (diff) |
make CSPRNG work on ES6
-rw-r--r-- | packages/taler-wallet-core/package.json | 2 | ||||
-rw-r--r-- | packages/taler-wallet-core/src/crypto/primitives/nacl-fast.ts | 12 | ||||
-rw-r--r-- | packages/taler-wallet-core/tsconfig.json | 4 |
3 files changed, 13 insertions, 5 deletions
diff --git a/packages/taler-wallet-core/package.json b/packages/taler-wallet-core/package.json index 9956cb312..e14ae0dd2 100644 --- a/packages/taler-wallet-core/package.json +++ b/packages/taler-wallet-core/package.json @@ -68,7 +68,7 @@ }, "ava": { "files": [ - "lib/**/*test*" + "lib/**/*test.*" ] } } diff --git a/packages/taler-wallet-core/src/crypto/primitives/nacl-fast.ts b/packages/taler-wallet-core/src/crypto/primitives/nacl-fast.ts index acaebf546..711c83ec6 100644 --- a/packages/taler-wallet-core/src/crypto/primitives/nacl-fast.ts +++ b/packages/taler-wallet-core/src/crypto/primitives/nacl-fast.ts @@ -5,6 +5,12 @@ // Implementation derived from TweetNaCl version 20140427. // See for details: http://tweetnacl.cr.yp.to/ +import { createRequire } from "module"; + +// We need this require function to synchronously +// import the "crypto" module in the CSPRNG initialization. +const require = createRequire(import.meta.url); + const gf = function (init: number[] = []): Float64Array { const r = new Float64Array(16); if (init) for (let i = 0; i < init.length; i++) r[i] = init[i]; @@ -3021,7 +3027,7 @@ export function secretbox_open( return m.subarray(crypto_secretbox_ZEROBYTES); } -(function () { +function initPRNG() { // Initialize PRNG if environment provides CSPRNG. // If not, methods calling randombytes will throw. // @ts-ignore-error @@ -3050,4 +3056,6 @@ export function secretbox_open( }); } } -})(); +} + +initPRNG(); diff --git a/packages/taler-wallet-core/tsconfig.json b/packages/taler-wallet-core/tsconfig.json index c8f5c23b2..3da332364 100644 --- a/packages/taler-wallet-core/tsconfig.json +++ b/packages/taler-wallet-core/tsconfig.json @@ -4,7 +4,7 @@ "composite": true, "declaration": true, "declarationMap": false, - "target": "ES6", + "target": "ES2017", "module": "ESNext", "moduleResolution": "node", "sourceMap": true, @@ -21,7 +21,7 @@ "esModuleInterop": true, "importHelpers": true, "rootDir": "./src", - "typeRoots": ["./node_modules/@types"] + "typeRoots": ["./node_modules/@types"], }, "references": [ { |