diff --git a/app/generators/hash/page.tsx b/app/generators/hash/page.tsx index 40cdebd..fdbbdac 100644 --- a/app/generators/hash/page.tsx +++ b/app/generators/hash/page.tsx @@ -1,7 +1,10 @@ "use client"; import { useCallback, useState } from "react"; -import createHash from "create-hash"; +import MD5 from "crypto-js/md5"; +import SHA1 from "crypto-js/sha1"; +import SHA256 from "crypto-js/sha256"; +import SHA512 from "crypto-js/sha512"; import { toolGroups } from "@/config/tools"; import { Input } from "@/components/ui/input"; @@ -19,10 +22,10 @@ export default function Page() { const [uppercase, setUppercase] = useState(false); const [input, setInput] = useState("Hello there !"); - const newMd5 = createHash("md5").update(input).digest("hex"); - const newSha1 = createHash("sha1").update(input).digest("hex"); - const newSha256 = createHash("sha256").update(input).digest("hex"); - const newSha512 = createHash("sha512").update(input).digest("hex"); + const newMd5 = MD5(input).toString(); + const newSha1 = SHA1(input).toString(); + const newSha256 = SHA256(input).toString(); + const newSha512 = SHA512(input).toString(); const md5 = uppercase ? newMd5.toUpperCase() : newMd5; const sha1 = uppercase ? newSha1.toUpperCase() : newSha1; diff --git a/package.json b/package.json index 9cfeabf..a899bed 100644 --- a/package.json +++ b/package.json @@ -35,7 +35,7 @@ "class-variance-authority": "^0.6.0", "clsx": "^1.2.1", "cmdk": "^0.2.0", - "create-hash": "^1.2.0", + "crypto-js": "^4.2.0", "fuse.js": "^6.6.2", "html-escaper": "^3.0.3", "js-yaml": "^4.1.0", @@ -56,7 +56,7 @@ "@ianvs/prettier-plugin-sort-imports": "^4.0.1", "@next/bundle-analyzer": "13.5.4", "@playwright/test": "^1.39.0", - "@types/create-hash": "^1.2.2", + "@types/crypto-js": "^4.2.2", "@types/html-escaper": "^3.0.0", "@types/js-yaml": "^4.0.5", "@types/node": "~18.16.16", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 796c13c..93c200f 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -31,9 +31,9 @@ dependencies: cmdk: specifier: ^0.2.0 version: 0.2.0(@types/react@18.2.7)(react-dom@18.2.0)(react@18.2.0) - create-hash: - specifier: ^1.2.0 - version: 1.2.0 + crypto-js: + specifier: ^4.2.0 + version: 4.2.0 fuse.js: specifier: ^6.6.2 version: 6.6.2 @@ -90,9 +90,9 @@ devDependencies: '@playwright/test': specifier: ^1.39.0 version: 1.39.0 - '@types/create-hash': - specifier: ^1.2.2 - version: 1.2.2 + '@types/crypto-js': + specifier: ^4.2.2 + version: 4.2.2 '@types/html-escaper': specifier: ^3.0.0 version: 3.0.0 @@ -1455,10 +1455,8 @@ packages: tslib: 2.6.2 dev: false - /@types/create-hash@1.2.2: - resolution: {integrity: sha512-Fg8/kfMJObbETFU/Tn+Y0jieYewryLrbKwLCEIwPyklZZVY2qB+64KFjhplGSw+cseZosfFXctXO+PyIYD8iZQ==} - dependencies: - '@types/node': 18.16.16 + /@types/crypto-js@4.2.2: + resolution: {integrity: sha512-sDOLlVbHhXpAUAL0YHDUUwDZf3iN4Bwi4W6a0W0b+QcAezUbRtH4FVb+9J4h+XFPW7l/gQ9F8qC7P+Ec4k8QVQ==} dev: true /@types/html-escaper@3.0.0: @@ -2070,13 +2068,6 @@ packages: resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==} dev: false - /cipher-base@1.0.4: - resolution: {integrity: sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==} - dependencies: - inherits: 2.0.4 - safe-buffer: 5.2.1 - dev: false - /class-variance-authority@0.6.0(typescript@5.0.4): resolution: {integrity: sha512-qdRDgfjx3GRb9fpwpSvn+YaidnT7IUJNe4wt5/SWwM+PmUwJUhQRk/8zAyNro0PmVfmen2635UboTjIBXXxy5A==} peerDependencies: @@ -2208,16 +2199,6 @@ packages: /convert-source-map@1.9.0: resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==} - /create-hash@1.2.0: - resolution: {integrity: sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==} - dependencies: - cipher-base: 1.0.4 - inherits: 2.0.4 - md5.js: 1.3.5 - ripemd160: 2.0.2 - sha.js: 2.4.11 - dev: false - /cross-spawn@7.0.3: resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} engines: {node: '>= 8'} @@ -2227,6 +2208,10 @@ packages: which: 2.0.2 dev: true + /crypto-js@4.2.0: + resolution: {integrity: sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==} + dev: false + /cssesc@3.0.0: resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} engines: {node: '>=4'} @@ -3339,15 +3324,6 @@ packages: engines: {node: '>= 0.4.0'} dev: true - /hash-base@3.1.0: - resolution: {integrity: sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==} - engines: {node: '>=4'} - dependencies: - inherits: 2.0.4 - readable-stream: 3.6.2 - safe-buffer: 5.2.1 - dev: false - /html-escaper@3.0.3: resolution: {integrity: sha512-RuMffC89BOWQoY0WKGpIhn5gX3iI54O6nRA0yC124NYVtzjmFWBIiFd8M0x+ZdX0P9R4lADg1mgP8C7PxGOWuQ==} dev: false @@ -3750,14 +3726,6 @@ packages: react: 18.2.0 dev: false - /md5.js@1.3.5: - resolution: {integrity: sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==} - dependencies: - hash-base: 3.1.0 - inherits: 2.0.4 - safe-buffer: 5.2.1 - dev: false - /merge-stream@2.0.0: resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} dev: true @@ -4558,13 +4526,6 @@ packages: glob: 7.2.3 dev: true - /ripemd160@2.0.2: - resolution: {integrity: sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==} - dependencies: - hash-base: 3.1.0 - inherits: 2.0.4 - dev: false - /run-applescript@5.0.0: resolution: {integrity: sha512-XcT5rBksx1QdIhlFOCtgZkB99ZEouFZ1E2Kc2LHqNW13U3/74YGdkQRmThTwxy4QIyookibDKYZOPqX//6BlAg==} engines: {node: '>=12'} @@ -4666,14 +4627,6 @@ packages: has-property-descriptors: 1.0.0 dev: true - /sha.js@2.4.11: - resolution: {integrity: sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==} - hasBin: true - dependencies: - inherits: 2.0.4 - safe-buffer: 5.2.1 - dev: false - /sharp@0.32.1: resolution: {integrity: sha512-kQTFtj7ldpUqSe8kDxoGLZc1rnMFU0AO2pqbX6pLy3b7Oj8ivJIdoKNwxHVQG2HN6XpHPJqCSM2nsma2gOXvOg==} engines: {node: '>=14.15.0'}