aboutsummaryrefslogtreecommitdiff
path: root/src/bun.js/api/crypto.classes.ts
diff options
context:
space:
mode:
authorGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2022-12-29 05:53:12 -0800
committerGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2022-12-29 06:05:43 -0800
commit85eda2058755261bf5ac64a3d82112d7bad5419c (patch)
tree924056e03bab81bf3d991fceaa2bee1b97b8181b /src/bun.js/api/crypto.classes.ts
parent940ecd05a8a3a1f0326256148a93306b71936c1e (diff)
downloadbun-85eda2058755261bf5ac64a3d82112d7bad5419c.tar.gz
bun-85eda2058755261bf5ac64a3d82112d7bad5419c.tar.zst
bun-85eda2058755261bf5ac64a3d82112d7bad5419c.zip
Introduce `Bun.CryptoHasher`
Diffstat (limited to 'src/bun.js/api/crypto.classes.ts')
-rw-r--r--src/bun.js/api/crypto.classes.ts40
1 files changed, 38 insertions, 2 deletions
diff --git a/src/bun.js/api/crypto.classes.ts b/src/bun.js/api/crypto.classes.ts
index 8ddd11caf..b3852157a 100644
--- a/src/bun.js/api/crypto.classes.ts
+++ b/src/bun.js/api/crypto.classes.ts
@@ -9,9 +9,8 @@ const names = [
"SHA384",
"SHA256",
"SHA512_256",
- "RIPEMD160",
];
-export default names.map((name) => {
+const named = names.map((name) => {
return define({
name: name,
construct: true,
@@ -41,3 +40,40 @@ export default names.map((name) => {
},
});
});
+
+export default [
+ ...named,
+ define({
+ name: "CryptoHasher",
+ construct: true,
+ finalize: true,
+ klass: {
+ hash: {
+ fn: "hash",
+ length: 2,
+ },
+ algorithms: {
+ getter: "getAlgorithms",
+ cache: true,
+ },
+ },
+ JSType: "0b11101110",
+ proto: {
+ digest: {
+ fn: "digest",
+ length: 0,
+ },
+ algorithm: {
+ getter: "getAlgorithm",
+ cache: true,
+ },
+ update: {
+ fn: "update",
+ length: 2,
+ },
+ byteLength: {
+ getter: "getByteLength",
+ },
+ },
+ }),
+];