Skip to content

Commit afb66f2

Browse files
committed
async-await and semi-colons
1 parent b399541 commit afb66f2

1 file changed

Lines changed: 82 additions & 94 deletions

File tree

index.js

Lines changed: 82 additions & 94 deletions
Original file line numberDiff line numberDiff line change
@@ -1,158 +1,146 @@
1-
'use strict'
1+
'use strict';
22

3-
import base64js from 'base64-js'
4-
import hexLite from 'hex-lite'
5-
import { NativeModules } from 'react-native'
3+
import base64js from 'base64-js';
4+
import hexLite from 'hex-lite';
5+
import { NativeModules } from 'react-native';
66

7-
function convertArrayBufferToUtf8 (arrayBuffer) {
8-
const array = new Uint8Array(arrayBuffer)
9-
const chars = []
10-
let i = 0
7+
function convertArrayBufferToUtf8(arrayBuffer) {
8+
const array = new Uint8Array(arrayBuffer);
9+
const chars = [];
10+
let i = 0;
1111

1212
while (i < array.length) {
13-
const byte = array[i]
13+
const byte = array[i];
1414
if (byte < 128) {
15-
chars.push(String.fromCharCode(byte))
16-
i++
15+
chars.push(String.fromCharCode(byte));
16+
i++;
1717
} else if (byte > 191 && byte < 224) {
1818
chars.push(
1919
String.fromCharCode(((byte & 0x1f) << 6) | (array[i + 1] & 0x3f))
20-
)
21-
i += 2
20+
);
21+
i += 2;
2222
} else {
2323
chars.push(
2424
String.fromCharCode(
2525
((byte & 0x0f) << 12) |
2626
((array[i + 1] & 0x3f) << 6) |
2727
(array[i + 2] & 0x3f)
2828
)
29-
)
30-
i += 3
29+
);
30+
i += 3;
3131
}
3232
}
3333

34-
return chars.join('')
34+
return chars.join('');
3535
}
3636

37-
function convertUtf8ToArrayBuffer (utf8) {
38-
const bytes = []
37+
function convertUtf8ToArrayBuffer(utf8) {
38+
const bytes = [];
3939

40-
let i = 0
41-
utf8 = encodeURI(utf8)
40+
let i = 0;
41+
utf8 = encodeURI(utf8);
4242
while (i < utf8.length) {
43-
const byte = utf8.charCodeAt(i++)
43+
const byte = utf8.charCodeAt(i++);
4444
if (byte === 37) {
45-
bytes.push(parseInt(utf8.substr(i, 2), 16))
46-
i += 2
45+
bytes.push(parseInt(utf8.substr(i, 2), 16));
46+
i += 2;
4747
} else {
48-
bytes.push(byte)
48+
bytes.push(byte);
4949
}
5050
}
5151

52-
const array = new Uint8Array(bytes)
53-
return array.buffer
52+
const array = new Uint8Array(bytes);
53+
return array.buffer;
5454
}
5555

56-
function convertArrayBufferToBase64 (arrayBuffer) {
57-
return base64js.fromByteArray(new Uint8Array(arrayBuffer))
56+
function convertArrayBufferToBase64(arrayBuffer) {
57+
return base64js.fromByteArray(new Uint8Array(arrayBuffer));
5858
}
5959

60-
function convertBase64ToArrayBuffer (base64) {
61-
return base64js.toByteArray(base64).buffer
60+
function convertBase64ToArrayBuffer(base64) {
61+
return base64js.toByteArray(base64).buffer;
6262
}
6363

64-
const convertArrayBufferToHex = hexLite.fromBuffer
64+
const convertArrayBufferToHex = hexLite.fromBuffer;
6565

66-
const convertHexToArrayBuffer = hexLite.toBuffer
66+
const convertHexToArrayBuffer = hexLite.toBuffer;
6767

68-
async function randomBytes (length) {
69-
return convertBase64ToArrayBuffer(await NativeModules.RNRandomBytes.randomBytes(length))
68+
async function randomBytes(length) {
69+
return convertBase64ToArrayBuffer(await NativeModules.RNRandomBytes.randomBytes(length));
7070
}
7171

72-
async function SHAWrapper (data, algorithm) {
72+
async function SHAWrapper(data, algorithm) {
7373
if (typeof data === 'string') {
74-
return NativeModules.Sha.shaUtf8(data, algorithm)
74+
return NativeModules.Sha.shaUtf8(data, algorithm);
7575
} else {
76-
const dataBase64 = convertArrayBufferToBase64(data)
77-
const result = await NativeModules.Sha.shaBase64(dataBase64, algorithm)
76+
const dataBase64 = convertArrayBufferToBase64(data);
77+
const result = await NativeModules.Sha.shaBase64(dataBase64, algorithm);
7878

79-
return convertBase64ToArrayBuffer(result)
79+
return convertBase64ToArrayBuffer(result);
8080
}
8181
}
8282

8383
const AES = {
8484
encrypt: async function (textArrayBuffer, keyArrayBuffer, ivArrayBuffer) {
85-
const textBase64 = convertArrayBufferToBase64(textArrayBuffer)
86-
const keyHex = convertArrayBufferToHex(keyArrayBuffer)
87-
const ivHex = convertArrayBufferToHex(ivArrayBuffer)
88-
return convertBase64ToArrayBuffer(await NativeModules.Aes.encrypt(textBase64, keyHex, ivHex))
85+
const textBase64 = convertArrayBufferToBase64(textArrayBuffer);
86+
const keyHex = convertArrayBufferToHex(keyArrayBuffer);
87+
const ivHex = convertArrayBufferToHex(ivArrayBuffer);
88+
return convertBase64ToArrayBuffer(await NativeModules.Aes.encrypt(textBase64, keyHex, ivHex));
8989
},
9090
decrypt: async function (cipherTextArrayBuffer, keyArrayBuffer, ivArrayBuffer) {
91-
const cipherTextBase64 = convertArrayBufferToBase64(cipherTextArrayBuffer)
92-
const keyHex = convertArrayBufferToHex(keyArrayBuffer)
93-
const ivHex = convertArrayBufferToHex(ivArrayBuffer)
94-
return convertBase64ToArrayBuffer(await NativeModules.Aes.decrypt(cipherTextBase64, keyHex, ivHex))
91+
const cipherTextBase64 = convertArrayBufferToBase64(cipherTextArrayBuffer);
92+
const keyHex = convertArrayBufferToHex(keyArrayBuffer);
93+
const ivHex = convertArrayBufferToHex(ivArrayBuffer);
94+
return convertBase64ToArrayBuffer(await NativeModules.Aes.decrypt(cipherTextBase64, keyHex, ivHex));
9595
}
96-
}
96+
};
9797

9898
const SHA = {
9999
sha1: data => SHAWrapper(data, 'SHA-1'),
100100
sha256: data => SHAWrapper(data, 'SHA-256'),
101101
sha512: data => SHAWrapper(data, 'SHA-512')
102-
}
102+
};
103103

104104
const HMAC = {
105-
hmac256: function (textArrayBuffer, keyArrayBuffer) {
106-
const textHex = convertArrayBufferToHex(textArrayBuffer)
107-
const keyHex = convertArrayBufferToHex(keyArrayBuffer)
108-
return new Promise((resolve, reject) => {
109-
NativeModules.Hmac.hmac256(textHex, keyHex)
110-
.then(signatureHex => {
111-
const result = convertHexToArrayBuffer(signatureHex)
112-
resolve(result)
113-
})
114-
.catch(error => reject(error))
115-
})
105+
hmac256: async function (textArrayBuffer, keyArrayBuffer) {
106+
const textHex = convertArrayBufferToHex(textArrayBuffer);
107+
const keyHex = convertArrayBufferToHex(keyArrayBuffer);
108+
const signatureHex = await NativeModules.Hmac.hmac256(textHex, keyHex);
109+
return convertHexToArrayBuffer(signatureHex);
116110
}
117-
}
111+
};
118112

119113
const PBKDF2 = {
120-
hash: function (password, saltArrayBuffer, iterations, keyLength, hash) {
121-
const saltBase64 = convertArrayBufferToBase64(saltArrayBuffer)
122-
return new Promise((resolve, reject) => {
123-
NativeModules.Pbkdf2.hash(
124-
password,
125-
saltBase64,
126-
iterations,
127-
keyLength,
128-
hash
129-
)
130-
.then(hashHex => {
131-
const result = convertHexToArrayBuffer(hashHex)
132-
resolve(result)
133-
})
134-
.catch(error => reject(error))
135-
})
114+
hash: async function (password, saltArrayBuffer, iterations, keyLength, hash) {
115+
const saltBase64 = convertArrayBufferToBase64(saltArrayBuffer);
116+
const hashHex = await NativeModules.Pbkdf2.hash(
117+
password,
118+
saltBase64,
119+
iterations,
120+
keyLength,
121+
hash
122+
);
123+
return (convertHexToArrayBuffer(hashHex));
136124
}
137-
}
125+
};
138126

139-
const RSA = NativeModules.Rsa
127+
const RSA = NativeModules.Rsa;
140128

141129
const utils = {
142-
randomBytes: randomBytes,
143-
convertArrayBufferToUtf8: convertArrayBufferToUtf8,
144-
convertUtf8ToArrayBuffer: convertUtf8ToArrayBuffer,
145-
convertArrayBufferToBase64: convertArrayBufferToBase64,
146-
convertBase64ToArrayBuffer: convertBase64ToArrayBuffer,
147-
convertArrayBufferToHex: convertArrayBufferToHex,
148-
convertHexToArrayBuffer: convertHexToArrayBuffer
149-
}
130+
randomBytes,
131+
convertArrayBufferToUtf8,
132+
convertUtf8ToArrayBuffer,
133+
convertArrayBufferToBase64,
134+
convertBase64ToArrayBuffer,
135+
convertArrayBufferToHex,
136+
convertHexToArrayBuffer
137+
};
150138

151139
export default {
152-
AES: AES,
153-
SHA: SHA,
154-
HMAC: HMAC,
155-
PBKDF2: PBKDF2,
156-
RSA: RSA,
157-
utils: utils
158-
}
140+
AES,
141+
SHA,
142+
HMAC,
143+
PBKDF2,
144+
RSA,
145+
utils
146+
};

0 commit comments

Comments
 (0)