{"_id":"fast-md5-web","_rev":"33-3c785ca357c0bcda40e24b64f53844ae","name":"fast-md5-web","dist-tags":{"latest":"1.1.2"},"versions":{"1.0.0":{"name":"fast-md5-web","version":"1.0.0","keywords":["typescript","tsup","wasm","md5","rust"],"author":{"name":"Snow","email":"lijiaxin@xhblog.top"},"license":"MIT","_id":"fast-md5-web@1.0.0","maintainers":[{"name":"litlesnow","email":"xuehualjx@gmail.com"}],"homepage":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5#readme","bugs":{"url":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5/issues"},"dist":{"shasum":"423222c0b94e3a49bcc25d25cf3042d160df554c","tarball":"https://registry.npmjs.org/fast-md5-web/-/fast-md5-web-1.0.0.tgz","fileCount":4,"integrity":"sha512-NS2+ZmmSDJumWNm9DJKDjC21dy40/sBhhBO4qjB1FZsvPwxOX53tBRU3p0ImT+PAOvQ4BPxCVe6dQIuYUmiQlg==","signatures":[{"sig":"MEQCIG5Dn9Aw5q+hLrMkfgS2PDY9UQ4Y9k0V4Il4mYlGpaLbAiARLhuq/udrTMW+HYMg6mjE3FeVprVYLyp9UjAT2m6k9g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6978},"type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"e7731ee34ce76b2b2765ff202f3f27b7937b6ce9","scripts":{"dev":"tsup --watch","lint":"eslint src --ext .ts,.tsx","build":"pnpm run build:wasm && tsup","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","build:wasm":"cd wasm && wasm-pack build --target web","type-check":"tsc --noEmit","format:check":"prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\""},"_npmUser":{"name":"litlesnow","email":"xuehualjx@gmail.com"},"repository":{"url":"git+https://github.com/XueHua-s/rust-wasm-calculate-file-md5.git","type":"git"},"_npmVersion":"10.5.0","description":"A TypeScript project with tsup bundler for Rust WASM MD5 calculation","directories":{},"_nodeVersion":"20.12.0","dependencies":{"uuid":"^11.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","eslint":"^9.32.0","rimraf":"^5.0.0","prettier":"^3.6.2","@eslint/js":"^9.32.0","typescript":"^5.0.0","@types/node":"^20.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4","@typescript-eslint/parser":"^8.39.0","@typescript-eslint/eslint-plugin":"^8.39.0"},"_npmOperationalInternal":{"tmp":"tmp/fast-md5-web_1.0.0_1754664737753_0.37796869885781414","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"fast-md5-web","version":"1.0.1","keywords":["typescript","tsup","wasm","md5","rust"],"author":{"name":"Snow","email":"lijiaxin@xhblog.top"},"license":"MIT","_id":"fast-md5-web@1.0.1","maintainers":[{"name":"litlesnow","email":"xuehualjx@gmail.com"}],"homepage":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5#readme","bugs":{"url":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5/issues"},"dist":{"shasum":"964fce91e044ae648608fe2b4814ecbf2dae4cab","tarball":"https://registry.npmjs.org/fast-md5-web/-/fast-md5-web-1.0.1.tgz","fileCount":4,"integrity":"sha512-8ORFFvSThcDX6NkBqgAEY3MqtNtHKXqcYTGyZFMU6Q/oAWjV2FaRzVJ+kQPQu1IFNYs6wC+M02lPZpRfigPVBg==","signatures":[{"sig":"MEYCIQC41i66FdfKwxZF53lojOr2ZShmgvk+1ZHnRTKimTUv6wIhAKXCPiqMRWRLc465IfbpuniLEzo941TxA1w5oBcx3C8D","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6978},"type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"e7731ee34ce76b2b2765ff202f3f27b7937b6ce9","scripts":{"dev":"tsup --watch","lint":"eslint src --ext .ts,.tsx","build":"pnpm run build:wasm && tsup","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","build:wasm":"cd wasm && wasm-pack build --target web","type-check":"tsc --noEmit","format:check":"prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\""},"_npmUser":{"name":"litlesnow","email":"xuehualjx@gmail.com"},"repository":{"url":"git+https://github.com/XueHua-s/rust-wasm-calculate-file-md5.git","type":"git"},"_npmVersion":"10.5.0","description":"A TypeScript project with tsup bundler for Rust WASM MD5 calculation","directories":{},"_nodeVersion":"20.12.0","dependencies":{"uuid":"^11.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","eslint":"^9.32.0","rimraf":"^5.0.0","prettier":"^3.6.2","@eslint/js":"^9.32.0","typescript":"^5.0.0","@types/node":"^20.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4","@typescript-eslint/parser":"^8.39.0","@typescript-eslint/eslint-plugin":"^8.39.0"},"_npmOperationalInternal":{"tmp":"tmp/fast-md5-web_1.0.1_1754664852944_0.021254407810836096","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"fast-md5-web","version":"1.0.2","keywords":["typescript","tsup","wasm","md5","rust"],"author":{"name":"Snow","email":"lijiaxin@xhblog.top"},"license":"MIT","_id":"fast-md5-web@1.0.2","maintainers":[{"name":"litlesnow","email":"xuehualjx@gmail.com"}],"homepage":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5#readme","bugs":{"url":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5/issues"},"dist":{"shasum":"98b815bff04d1febbc9143e9299a8e62bb44be9d","tarball":"https://registry.npmjs.org/fast-md5-web/-/fast-md5-web-1.0.2.tgz","fileCount":4,"integrity":"sha512-S7jjEUqDtI6BW4GPEeD0dg2y9LOncbZjJlVDv+a4KG0PN+yZQBFAFj+qjQ4ZfE1Q+jRX/7I1vXQXq92l2Jhdhw==","signatures":[{"sig":"MEYCIQCXbT0TOrQHRKYVkwtd9I9D+Ah78DZ8nj0VY25pVBODkwIhAPo3/XRrshPT5bAAj5nSkSd+AfcJtfKHolhlwF9V9dZl","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12871},"type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"e7731ee34ce76b2b2765ff202f3f27b7937b6ce9","scripts":{"dev":"tsup --watch","lint":"eslint src --ext .ts,.tsx","build":"pnpm run build:wasm && tsup","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","build:wasm":"cd wasm && wasm-pack build --target web","type-check":"tsc --noEmit","format:check":"prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\""},"_npmUser":{"name":"litlesnow","email":"xuehualjx@gmail.com"},"repository":{"url":"git+https://github.com/XueHua-s/rust-wasm-calculate-file-md5.git","type":"git"},"_npmVersion":"10.5.0","description":"A TypeScript project with tsup bundler for Rust WASM MD5 calculation","directories":{},"_nodeVersion":"20.12.0","dependencies":{"uuid":"^11.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","eslint":"^9.32.0","rimraf":"^5.0.0","prettier":"^3.6.2","@eslint/js":"^9.32.0","typescript":"^5.0.0","@types/node":"^20.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4","@typescript-eslint/parser":"^8.39.0","@typescript-eslint/eslint-plugin":"^8.39.0"},"_npmOperationalInternal":{"tmp":"tmp/fast-md5-web_1.0.2_1754665261624_0.003827799792785136","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"fast-md5-web","version":"1.0.3","keywords":["typescript","tsup","wasm","md5","rust"],"author":{"name":"Snow","email":"lijiaxin@xhblog.top"},"license":"MIT","_id":"fast-md5-web@1.0.3","maintainers":[{"name":"litlesnow","email":"xuehualjx@gmail.com"}],"homepage":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5#readme","bugs":{"url":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5/issues"},"dist":{"shasum":"95239b6c23428f7d3b8f0d76396ac3e9fe0ef666","tarball":"https://registry.npmjs.org/fast-md5-web/-/fast-md5-web-1.0.3.tgz","fileCount":5,"integrity":"sha512-mvytWMc37d5DxgwswETZduM4/n0FP3PfH06kwugOqiOP8i5xDEq0/YfQ+MODlFNAlc9t+Wy633Lc71jpo/57Hg==","signatures":[{"sig":"MEQCIBnwssDusvBKq2vTQdqS3V4+SHLyRcfqwZtO/LEIFqaHAiANgRwUtf4ZJPiYqyJuQa1rJO3TA1tnZUBBZMrWRY1IPQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10195},"type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"e7731ee34ce76b2b2765ff202f3f27b7937b6ce9","scripts":{"dev":"tsup --watch","lint":"eslint src --ext .ts,.tsx","build":"pnpm run build:wasm && tsup","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","build:wasm":"cd wasm && wasm-pack build --target web","type-check":"tsc --noEmit","format:check":"prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\""},"_npmUser":{"name":"litlesnow","email":"xuehualjx@gmail.com"},"repository":{"url":"git+https://github.com/XueHua-s/rust-wasm-calculate-file-md5.git","type":"git"},"_npmVersion":"10.5.0","description":"A TypeScript project with tsup bundler for Rust WASM MD5 calculation","directories":{},"_nodeVersion":"20.12.0","dependencies":{"uuid":"^11.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","eslint":"^9.32.0","rimraf":"^5.0.0","prettier":"^3.6.2","@eslint/js":"^9.32.0","typescript":"^5.0.0","@types/node":"^20.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4","@typescript-eslint/parser":"^8.39.0","@typescript-eslint/eslint-plugin":"^8.39.0"},"_npmOperationalInternal":{"tmp":"tmp/fast-md5-web_1.0.3_1754665686639_0.3858607220838204","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"fast-md5-web","version":"1.0.4","keywords":["typescript","tsup","wasm","md5","rust"],"author":{"name":"Snow","email":"lijiaxin@xhblog.top"},"license":"MIT","_id":"fast-md5-web@1.0.4","maintainers":[{"name":"litlesnow","email":"xuehualjx@gmail.com"}],"homepage":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5#readme","bugs":{"url":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5/issues"},"dist":{"shasum":"f68e9905642c135532e7f89475196be7cc96b561","tarball":"https://registry.npmjs.org/fast-md5-web/-/fast-md5-web-1.0.4.tgz","fileCount":5,"integrity":"sha512-8dXFjV38MjqDj4svbi1nsbXH14tPaM+KPxfzYgAaHGQ6uqnGnD7sx01KlVDkuWzNhOWr9I3X2mkRcmRD7HH4zA==","signatures":[{"sig":"MEQCIGHZ4QR8WQS/otV0l6PJpBiKc6Dg9PUYQWae06HHCNidAiAYfYRh54pIjn07scUHY8X/Lfq8/PtrF01jBq64vK5CdQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10195},"type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"e7731ee34ce76b2b2765ff202f3f27b7937b6ce9","scripts":{"dev":"tsup --watch","lint":"eslint src --ext .ts,.tsx","build":"pnpm run build:wasm && tsup","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","build:wasm":"cd wasm && wasm-pack build --target web","type-check":"tsc --noEmit","format:check":"prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\""},"_npmUser":{"name":"litlesnow","email":"xuehualjx@gmail.com"},"repository":{"url":"git+https://github.com/XueHua-s/rust-wasm-calculate-file-md5.git","type":"git"},"_npmVersion":"10.5.0","description":"A TypeScript project with tsup bundler for Rust WASM MD5 calculation","directories":{},"_nodeVersion":"20.12.0","dependencies":{"uuid":"^11.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","eslint":"^9.32.0","rimraf":"^5.0.0","prettier":"^3.6.2","@eslint/js":"^9.32.0","typescript":"^5.0.0","@types/node":"^20.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4","@typescript-eslint/parser":"^8.39.0","@typescript-eslint/eslint-plugin":"^8.39.0"},"_npmOperationalInternal":{"tmp":"tmp/fast-md5-web_1.0.4_1754665992893_0.8866225026703749","host":"s3://npm-registry-packages-npm-production"}},"1.0.5":{"name":"fast-md5-web","version":"1.0.5","keywords":["typescript","tsup","wasm","md5","rust"],"author":{"name":"Snow","email":"lijiaxin@xhblog.top"},"license":"MIT","_id":"fast-md5-web@1.0.5","maintainers":[{"name":"litlesnow","email":"xuehualjx@gmail.com"}],"homepage":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5#readme","bugs":{"url":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5/issues"},"dist":{"shasum":"7d9e348ca607cf55ba8bccc3f671f68734b223a1","tarball":"https://registry.npmjs.org/fast-md5-web/-/fast-md5-web-1.0.5.tgz","fileCount":15,"integrity":"sha512-f3mVYKbt+nSbEfWNlHRzrIjcjmIdTEQGE6bM6QTDPWMoUm+dbDuEyyzofmEgWf78nvFwYf0zxTt0eQyeOY7ksw==","signatures":[{"sig":"MEUCIQDPI6d/zwMkECswR7D94faEFqAZPqWYJe1gUOL3AninTgIgF9HyfFoDX6U2K7O/VjEyTt8kVGJ9EJXyAKNt8wlC0bw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":119048},"type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"f09f76305ce1dcc3ace5ddb1f8ffea1e55eecd34","scripts":{"dev":"tsup --watch","lint":"eslint src --ext .ts,.tsx","build":"pnpm run build:wasm && tsup","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","build:wasm":"cd wasm && wasm-pack build --target web && echo # Temporarily disabled to allow npm publish > pkg/.gitignore && echo # * >> pkg/.gitignore","type-check":"tsc --noEmit","format:check":"prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\""},"_npmUser":{"name":"litlesnow","email":"xuehualjx@gmail.com"},"repository":{"url":"git+https://github.com/XueHua-s/rust-wasm-calculate-file-md5.git","type":"git"},"_npmVersion":"10.5.0","description":"A TypeScript project with tsup bundler for Rust WASM MD5 calculation","directories":{},"_nodeVersion":"20.12.0","dependencies":{"uuid":"^11.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","eslint":"^9.32.0","rimraf":"^5.0.0","prettier":"^3.6.2","@eslint/js":"^9.32.0","typescript":"^5.0.0","@types/node":"^20.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4","@typescript-eslint/parser":"^8.39.0","@typescript-eslint/eslint-plugin":"^8.39.0"},"_npmOperationalInternal":{"tmp":"tmp/fast-md5-web_1.0.5_1754666796664_0.18970594217534886","host":"s3://npm-registry-packages-npm-production"}},"1.0.6":{"name":"fast-md5-web","version":"1.0.6","keywords":["typescript","tsup","wasm","md5","rust"],"author":{"name":"Snow","email":"lijiaxin@xhblog.top"},"license":"MIT","_id":"fast-md5-web@1.0.6","maintainers":[{"name":"litlesnow","email":"xuehualjx@gmail.com"}],"homepage":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5#readme","bugs":{"url":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5/issues"},"dist":{"shasum":"f157af850f1d0f17fbe4deb5b0aa8b0380d231ce","tarball":"https://registry.npmjs.org/fast-md5-web/-/fast-md5-web-1.0.6.tgz","fileCount":15,"integrity":"sha512-mJ0fJXrwk++yAFKYwYgg5mGyaaLTqt1TeMpcW7A+QANzd5dBA9uPKIFFzpCvXfis0sxx3oG5PYZmnDVd3Ijg+A==","signatures":[{"sig":"MEQCICW+QT0Q+koOK8YkGK7v7iIEpO0p4GG2W7v+LXo98sNcAiB1JQZx3SqwqJeMZFMIkbFqCmWUHpR0+895WbdamNCCGw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":120294},"type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"f292069e6db9a7a215865929fd6daebc3f18fb0b","scripts":{"dev":"tsup --watch","lint":"eslint src --ext .ts,.tsx","build":"pnpm run build:wasm && tsup","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","build:wasm":"cd wasm && wasm-pack build --target web && echo # Temporarily disabled to allow npm publish > pkg/.gitignore && echo # * >> pkg/.gitignore","type-check":"tsc --noEmit","format:check":"prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\""},"_npmUser":{"name":"litlesnow","email":"xuehualjx@gmail.com"},"repository":{"url":"git+https://github.com/XueHua-s/rust-wasm-calculate-file-md5.git","type":"git"},"_npmVersion":"10.5.0","description":"A TypeScript project with tsup bundler for Rust WASM MD5 calculation","directories":{},"_nodeVersion":"20.12.0","dependencies":{"uuid":"^11.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","eslint":"^9.32.0","rimraf":"^5.0.0","prettier":"^3.6.2","@eslint/js":"^9.32.0","typescript":"^5.0.0","@types/node":"^20.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4","@typescript-eslint/parser":"^8.39.0","@typescript-eslint/eslint-plugin":"^8.39.0"},"_npmOperationalInternal":{"tmp":"tmp/fast-md5-web_1.0.6_1754667197328_0.49495150167047863","host":"s3://npm-registry-packages-npm-production"}},"1.0.7":{"name":"fast-md5-web","version":"1.0.7","keywords":["typescript","tsup","wasm","md5","rust"],"author":{"name":"Snow","email":"lijiaxin@xhblog.top"},"license":"MIT","_id":"fast-md5-web@1.0.7","maintainers":[{"name":"litlesnow","email":"xuehualjx@gmail.com"}],"homepage":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5#readme","bugs":{"url":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5/issues"},"dist":{"shasum":"d5df0cefb2da68a8b28c5cdaa27fbf117c41446d","tarball":"https://registry.npmjs.org/fast-md5-web/-/fast-md5-web-1.0.7.tgz","fileCount":17,"integrity":"sha512-4KXW+Ba4G5+2kztY2H/bWMTZG81+c/PopUORx0PSDGeW+GZg9TLyJuqP4fHDKRAwD4tzaIoUI25aQIOLm4XGqg==","signatures":[{"sig":"MEYCIQC2PaylX9wQfK4pwzl+5d80bhexf4mdxrc78dVljcLGCgIhAP7q2AmS4RtMT0GY7cH81AY3pFOXCaDW1B3ZtPACM67Z","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":120981},"type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"40699bc84c9ff69eda457234e5191b3f923d8c0a","scripts":{"dev":"tsup --watch","lint":"eslint src --ext .ts,.tsx","build":"pnpm run build:wasm && tsup","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","build:wasm":"cd wasm && wasm-pack build --target web && echo # Temporarily disabled to allow npm publish > pkg/.gitignore && echo # * >> pkg/.gitignore","type-check":"tsc --noEmit","format:check":"prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\""},"_npmUser":{"name":"litlesnow","email":"xuehualjx@gmail.com"},"repository":{"url":"git+https://github.com/XueHua-s/rust-wasm-calculate-file-md5.git","type":"git"},"_npmVersion":"10.5.0","description":"A TypeScript project with tsup bundler for Rust WASM MD5 calculation","directories":{},"_nodeVersion":"20.12.0","dependencies":{"uuid":"^11.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","eslint":"^9.32.0","rimraf":"^5.0.0","prettier":"^3.6.2","@eslint/js":"^9.32.0","typescript":"^5.0.0","@types/node":"^20.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4","@typescript-eslint/parser":"^8.39.0","@typescript-eslint/eslint-plugin":"^8.39.0"},"_npmOperationalInternal":{"tmp":"tmp/fast-md5-web_1.0.7_1754669137852_0.036581750613193575","host":"s3://npm-registry-packages-npm-production"}},"1.0.8":{"name":"fast-md5-web","version":"1.0.8","keywords":["typescript","tsup","wasm","md5","rust"],"author":{"name":"Snow","email":"lijiaxin@xhblog.top"},"license":"MIT","_id":"fast-md5-web@1.0.8","maintainers":[{"name":"litlesnow","email":"xuehualjx@gmail.com"}],"homepage":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5#readme","bugs":{"url":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5/issues"},"dist":{"shasum":"6832b7d552c11a7ee4eb6103f883b2d4702ef4d5","tarball":"https://registry.npmjs.org/fast-md5-web/-/fast-md5-web-1.0.8.tgz","fileCount":17,"integrity":"sha512-Jm2yLOq2JPWxz7G5NlDGKBDJz6cHy50lnaSaxbR4waB1p36vYbBGPzUS0Q949msQCZ/nMsf/k+uWBIHTCTE8AQ==","signatures":[{"sig":"MEUCIFx1maZY6PeQDq5SRLkU+o0NuTRygo91phuozoijrvmjAiEA5F8ov+B4wMpMyocqQz1xNXMfTNe76Yt62vG+lzarbRc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":128196},"type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"84b1b8d5db3c61136fd1c0c4317c065e345f8b6f","scripts":{"dev":"tsup --watch","lint":"eslint src --ext .ts,.tsx","build":"pnpm run build:wasm && tsup","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","build:wasm":"cd wasm && wasm-pack build --target web && echo # Temporarily disabled to allow npm publish > pkg/.gitignore && echo # * >> pkg/.gitignore","type-check":"tsc --noEmit","format:check":"prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\""},"_npmUser":{"name":"litlesnow","email":"xuehualjx@gmail.com"},"repository":{"url":"git+https://github.com/XueHua-s/rust-wasm-calculate-file-md5.git","type":"git"},"_npmVersion":"10.5.0","description":"A TypeScript project with tsup bundler for Rust WASM MD5 calculation","directories":{},"_nodeVersion":"20.12.0","dependencies":{"uuid":"^11.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","eslint":"^9.32.0","rimraf":"^5.0.0","prettier":"^3.6.2","@eslint/js":"^9.32.0","typescript":"^5.0.0","@types/node":"^20.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4","@typescript-eslint/parser":"^8.39.0","@typescript-eslint/eslint-plugin":"^8.39.0"},"_npmOperationalInternal":{"tmp":"tmp/fast-md5-web_1.0.8_1754670092799_0.5510069505382236","host":"s3://npm-registry-packages-npm-production"}},"1.0.9":{"name":"fast-md5-web","version":"1.0.9","keywords":["typescript","tsup","wasm","md5","rust"],"author":{"name":"Snow","email":"lijiaxin@xhblog.top"},"license":"MIT","_id":"fast-md5-web@1.0.9","maintainers":[{"name":"litlesnow","email":"xuehualjx@gmail.com"}],"homepage":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5#readme","bugs":{"url":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5/issues"},"dist":{"shasum":"f944691c6d1da775206e604ce6c7dfdf0ce722cf","tarball":"https://registry.npmjs.org/fast-md5-web/-/fast-md5-web-1.0.9.tgz","fileCount":17,"integrity":"sha512-ZGUfNbh7ZbsvHT3Hn8JjTH8YYIQbX6ebk8E9tBeokApyp92eyz4aJu9qhHn5b2BWiqgFIY0yo3lgRovmCduSvA==","signatures":[{"sig":"MEYCIQDgQOvreti41KyCh8bK4pYDHjOKG3L6CDLXj0HiJYHFBAIhALOefXLRHBaRolAfluAi9OoC/i1TupcuUf743lxEYx5K","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":129303},"type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"b7a52b17adac293665cf7ca7a672e366d7331635","scripts":{"dev":"tsup --watch","lint":"eslint src --ext .ts,.tsx","build":"pnpm run build:wasm && tsup","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","build:wasm":"cd wasm && wasm-pack build --target web && echo # Temporarily disabled to allow npm publish > pkg/.gitignore && echo # * >> pkg/.gitignore","type-check":"tsc --noEmit","format:check":"prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\""},"_npmUser":{"name":"litlesnow","email":"xuehualjx@gmail.com"},"repository":{"url":"git+https://github.com/XueHua-s/rust-wasm-calculate-file-md5.git","type":"git"},"_npmVersion":"10.5.0","description":"A TypeScript project with tsup bundler for Rust WASM MD5 calculation","directories":{},"_nodeVersion":"20.12.0","dependencies":{"uuid":"^11.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","eslint":"^9.32.0","rimraf":"^5.0.0","prettier":"^3.6.2","@eslint/js":"^9.32.0","typescript":"^5.0.0","@types/node":"^20.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4","@typescript-eslint/parser":"^8.39.0","@typescript-eslint/eslint-plugin":"^8.39.0"},"_npmOperationalInternal":{"tmp":"tmp/fast-md5-web_1.0.9_1754670738159_0.10581071363523664","host":"s3://npm-registry-packages-npm-production"}},"1.0.10":{"name":"fast-md5-web","version":"1.0.10","keywords":["typescript","tsup","wasm","md5","rust"],"author":{"name":"Snow","email":"lijiaxin@xhblog.top"},"license":"MIT","_id":"fast-md5-web@1.0.10","maintainers":[{"name":"litlesnow","email":"xuehualjx@gmail.com"}],"homepage":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5#readme","bugs":{"url":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5/issues"},"dist":{"shasum":"c39fa5aa9ae465e74743c1fee801f6be53a39ceb","tarball":"https://registry.npmjs.org/fast-md5-web/-/fast-md5-web-1.0.10.tgz","fileCount":17,"integrity":"sha512-fsuN7bT+wTuKV9Cn/dQvvUwjtCqPRnRevUp1Hx2Uvt8E26ASzODrUmMGZBkLOql42a5BO9A5FSp5eoCVo3KSGw==","signatures":[{"sig":"MEUCIHWrNUR/Z0AdH2UGIm4dEUtMO+v8q0p0G/+shaRoSLxCAiEA5thEovqkKS7hs8k3jZwlDYDQEwCqwmYh/rW4ri4fLLY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":129918},"type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"1a490fb2cad164f369ce1a3efbdf2ce42a18eb90","scripts":{"dev":"tsup --watch","lint":"eslint src --ext .ts,.tsx","build":"pnpm run build:wasm && tsup","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","build:wasm":"cd wasm && wasm-pack build --target web && echo # Temporarily disabled to allow npm publish > pkg/.gitignore && echo # * >> pkg/.gitignore","type-check":"tsc --noEmit","format:check":"prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\""},"_npmUser":{"name":"litlesnow","email":"xuehualjx@gmail.com"},"repository":{"url":"git+https://github.com/XueHua-s/rust-wasm-calculate-file-md5.git","type":"git"},"_npmVersion":"10.5.0","description":"A TypeScript project with tsup bundler for Rust WASM MD5 calculation","directories":{},"_nodeVersion":"20.12.0","dependencies":{"uuid":"^11.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","eslint":"^9.32.0","rimraf":"^5.0.0","prettier":"^3.6.2","@eslint/js":"^9.32.0","typescript":"^5.0.0","@types/node":"^20.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4","@typescript-eslint/parser":"^8.39.0","@typescript-eslint/eslint-plugin":"^8.39.0"},"_npmOperationalInternal":{"tmp":"tmp/fast-md5-web_1.0.10_1754671471147_0.5810180562587421","host":"s3://npm-registry-packages-npm-production"}},"1.0.11":{"name":"fast-md5-web","version":"1.0.11","keywords":["typescript","tsup","wasm","md5","rust"],"author":{"name":"Snow","email":"lijiaxin@xhblog.top"},"license":"MIT","_id":"fast-md5-web@1.0.11","maintainers":[{"name":"litlesnow","email":"xuehualjx@gmail.com"}],"homepage":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5#readme","bugs":{"url":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5/issues"},"dist":{"shasum":"f007feaec62e3d9ee5c7c4c5601f24cca24985f9","tarball":"https://registry.npmjs.org/fast-md5-web/-/fast-md5-web-1.0.11.tgz","fileCount":17,"integrity":"sha512-TFKYzpAnxuImbZtm0hAHeLcgHH9dQWM+I0RsZUrlUQi1CJhemwfpfCjRNmC6KCxofayrci2TXvO3Rlw2FthsPw==","signatures":[{"sig":"MEUCIQD135A3O6+TS0uzubPIqjTmLXy3zNHWk8NSG68ZwsLngAIgbp9NezXBwrgCaadEiutMWvzmKrtxLPGR4t5vRG8CGTo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":160757},"type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"b05299474b191178dd632a215c04e06ca4b074d3","scripts":{"dev":"tsup --watch","lint":"eslint src --ext .ts,.tsx","build":"pnpm run build:wasm && tsup","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","build:wasm":"cd wasm && wasm-pack build --target web && echo # Temporarily disabled to allow npm publish > pkg/.gitignore && echo # * >> pkg/.gitignore","type-check":"tsc --noEmit","format:check":"prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\""},"_npmUser":{"name":"litlesnow","email":"xuehualjx@gmail.com"},"repository":{"url":"git+https://github.com/XueHua-s/rust-wasm-calculate-file-md5.git","type":"git"},"_npmVersion":"10.5.0","description":"A TypeScript project with tsup bundler for Rust WASM MD5 calculation","directories":{},"_nodeVersion":"20.12.0","dependencies":{"uuid":"^11.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","eslint":"^9.32.0","rimraf":"^5.0.0","prettier":"^3.6.2","@eslint/js":"^9.32.0","typescript":"^5.0.0","@types/node":"^20.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4","@typescript-eslint/parser":"^8.39.0","@typescript-eslint/eslint-plugin":"^8.39.0"},"_npmOperationalInternal":{"tmp":"tmp/fast-md5-web_1.0.11_1754673642874_0.9707462466598826","host":"s3://npm-registry-packages-npm-production"}},"1.0.12":{"name":"fast-md5-web","version":"1.0.12","keywords":["typescript","tsup","wasm","md5","rust"],"author":{"name":"Snow","email":"lijiaxin@xhblog.top"},"license":"MIT","_id":"fast-md5-web@1.0.12","maintainers":[{"name":"litlesnow","email":"xuehualjx@gmail.com"}],"homepage":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5#readme","bugs":{"url":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5/issues"},"dist":{"shasum":"599cdad4ab5be3e0c3f8a9269d01b0909ecc3d2e","tarball":"https://registry.npmjs.org/fast-md5-web/-/fast-md5-web-1.0.12.tgz","fileCount":17,"integrity":"sha512-SLLweJ0R6FR4xCMdClyGKDP5f0qI9aVTakZF9tvfCo7OVTa/auEX2/3MfLSoHqCADWJDfBSEvFXbEnWlqr/vFg==","signatures":[{"sig":"MEUCIQDrmuwfDnhrSNl2xuXDHLgiH+UxD4DplM5kUO4t97GbAQIge93g7US8fNAf/EcmBAyzyPX+kHZpPwwisVw5OnqdKvc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":160070},"type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"155ba1ae627493e136d638fbe03d74b2b498051c","scripts":{"dev":"tsup --watch","lint":"eslint src --ext .ts,.tsx","build":"pnpm run build:wasm && tsup","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","build:wasm":"cd wasm && wasm-pack build --target web && echo # Temporarily disabled to allow npm publish > pkg/.gitignore && echo # * >> pkg/.gitignore","type-check":"tsc --noEmit","format:check":"prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\""},"_npmUser":{"name":"litlesnow","email":"xuehualjx@gmail.com"},"repository":{"url":"git+https://github.com/XueHua-s/rust-wasm-calculate-file-md5.git","type":"git"},"_npmVersion":"10.5.0","description":"A TypeScript project with tsup bundler for Rust WASM MD5 calculation","directories":{},"_nodeVersion":"20.12.0","dependencies":{"uuid":"^11.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","eslint":"^9.32.0","rimraf":"^5.0.0","prettier":"^3.6.2","@eslint/js":"^9.32.0","typescript":"^5.0.0","@types/node":"^20.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4","@typescript-eslint/parser":"^8.39.0","@typescript-eslint/eslint-plugin":"^8.39.0"},"_npmOperationalInternal":{"tmp":"tmp/fast-md5-web_1.0.12_1754674662501_0.5535251265374093","host":"s3://npm-registry-packages-npm-production"}},"1.0.14":{"name":"fast-md5-web","version":"1.0.14","keywords":["typescript","tsup","wasm","md5","rust"],"author":{"name":"Snow","email":"lijiaxin@xhblog.top"},"license":"MIT","_id":"fast-md5-web@1.0.14","maintainers":[{"name":"litlesnow","email":"xuehualjx@gmail.com"}],"homepage":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5#readme","bugs":{"url":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5/issues"},"dist":{"shasum":"92adbebded259f84e75009fcbbd8218b70640277","tarball":"https://registry.npmjs.org/fast-md5-web/-/fast-md5-web-1.0.14.tgz","fileCount":17,"integrity":"sha512-1VS6HZswT54/KTsbsFi3SP9JKS54HHok2W8XsiDPK0a0xB0wVe+ZWVlT26umvFZt94Yklv0qgjTZMwJJeBWJjQ==","signatures":[{"sig":"MEUCIQCEIDtMLPw/8DQq1Ho8ZBqU6vP/tw4DmFwPT1s03fO/BgIgRiQOo/lIbEu6CQQKgvOWDcsf+rYHMj3/l+aQpQTHjIQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":160228},"type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"33924d8819b0de07999eb04e380ea4de501e201f","scripts":{"dev":"tsup --watch","lint":"eslint src --ext .ts,.tsx","build":"pnpm run build:wasm && tsup","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","build:wasm":"cd wasm && wasm-pack build --target web && echo # Temporarily disabled to allow npm publish > pkg/.gitignore && echo # * >> pkg/.gitignore","type-check":"tsc --noEmit","format:check":"prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\""},"_npmUser":{"name":"litlesnow","email":"xuehualjx@gmail.com"},"repository":{"url":"git+https://github.com/XueHua-s/rust-wasm-calculate-file-md5.git","type":"git"},"_npmVersion":"10.5.0","description":"A TypeScript project with tsup bundler for Rust WASM MD5 calculation","directories":{},"_nodeVersion":"20.12.0","dependencies":{"uuid":"^11.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","eslint":"^9.32.0","rimraf":"^5.0.0","prettier":"^3.6.2","@eslint/js":"^9.32.0","typescript":"^5.0.0","@types/node":"^20.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4","@typescript-eslint/parser":"^8.39.0","@typescript-eslint/eslint-plugin":"^8.39.0"},"_npmOperationalInternal":{"tmp":"tmp/fast-md5-web_1.0.14_1754676228106_0.47351242808001337","host":"s3://npm-registry-packages-npm-production"}},"1.0.15":{"name":"fast-md5-web","version":"1.0.15","keywords":["typescript","tsup","wasm","md5","rust"],"author":{"name":"Snow","email":"lijiaxin@xhblog.top"},"license":"MIT","_id":"fast-md5-web@1.0.15","maintainers":[{"name":"litlesnow","email":"xuehualjx@gmail.com"}],"homepage":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5#readme","bugs":{"url":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5/issues"},"dist":{"shasum":"0d707bdd3c58b0d47f5f5aefcaec615a889fcb24","tarball":"https://registry.npmjs.org/fast-md5-web/-/fast-md5-web-1.0.15.tgz","fileCount":17,"integrity":"sha512-LYlz1awhv4um4nzYJWjo3BvcQQblU4LR+e2xZUJTaspNK8T8CGD0GhVRO17aUgwANX8YvCuW7XQMgdxyVhAhVw==","signatures":[{"sig":"MEQCIBpBH1Xn8dNG5e3Q0+KalVg/vybpMERErf7w+o677AStAiA+c/Vd14afVE3wAcE061il3WzLN/BtHKEG+iorpUo4Gg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":160592},"type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"4d6189df9334a19ea33b0fafbfa52321b2e2f332","scripts":{"dev":"tsup --watch","lint":"eslint src --ext .ts,.tsx","build":"pnpm run build:wasm && tsup","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","build:wasm":"cd wasm && wasm-pack build --target web && echo # Temporarily disabled to allow npm publish > pkg/.gitignore && echo # * >> pkg/.gitignore","type-check":"tsc --noEmit","format:check":"prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\""},"_npmUser":{"name":"litlesnow","email":"xuehualjx@gmail.com"},"repository":{"url":"git+https://github.com/XueHua-s/rust-wasm-calculate-file-md5.git","type":"git"},"_npmVersion":"10.5.0","description":"A TypeScript project with tsup bundler for Rust WASM MD5 calculation","directories":{},"_nodeVersion":"20.12.0","dependencies":{"uuid":"^11.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","eslint":"^9.32.0","rimraf":"^5.0.0","prettier":"^3.6.2","@eslint/js":"^9.32.0","typescript":"^5.0.0","@types/node":"^20.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4","@typescript-eslint/parser":"^8.39.0","@typescript-eslint/eslint-plugin":"^8.39.0"},"_npmOperationalInternal":{"tmp":"tmp/fast-md5-web_1.0.15_1754677177605_0.18920027938098238","host":"s3://npm-registry-packages-npm-production"}},"1.0.16":{"name":"fast-md5-web","version":"1.0.16","keywords":["typescript","tsup","wasm","md5","rust"],"author":{"name":"Snow","email":"lijiaxin@xhblog.top"},"license":"MIT","_id":"fast-md5-web@1.0.16","maintainers":[{"name":"litlesnow","email":"xuehualjx@gmail.com"}],"homepage":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5#readme","bugs":{"url":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5/issues"},"dist":{"shasum":"09bb4a6293092bc226d50804ba109e1cd2424f37","tarball":"https://registry.npmjs.org/fast-md5-web/-/fast-md5-web-1.0.16.tgz","fileCount":17,"integrity":"sha512-hJJ8dsenxgMmCHcgIXPhkngy/OFXTjpo0SVRDWLXtqhvyRXCwuj85Ui7NHqz8jz0qaq2tWP7hCKzW51QarUywg==","signatures":[{"sig":"MEUCIDHeG+SfYoNH1E5AJ5wekjYn5JQBx/N7A+V53CwuBB6aAiEAxAjCIqf4V+GuRJ+3jYQ2VtayTGXF29Pp3G+4yHswnfA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":158755},"type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"4d6189df9334a19ea33b0fafbfa52321b2e2f332","scripts":{"dev":"tsup --watch","lint":"eslint src --ext .ts,.tsx","build":"pnpm run build:wasm && tsup","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","build:wasm":"cd wasm && wasm-pack build --target web && echo # Temporarily disabled to allow npm publish > pkg/.gitignore && echo # * >> pkg/.gitignore","type-check":"tsc --noEmit","format:check":"prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\""},"_npmUser":{"name":"litlesnow","email":"xuehualjx@gmail.com"},"repository":{"url":"git+https://github.com/XueHua-s/rust-wasm-calculate-file-md5.git","type":"git"},"_npmVersion":"10.5.0","description":"A TypeScript project with tsup bundler for Rust WASM MD5 calculation","directories":{},"_nodeVersion":"20.12.0","dependencies":{"uuid":"^11.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","eslint":"^9.32.0","rimraf":"^5.0.0","prettier":"^3.6.2","@eslint/js":"^9.32.0","typescript":"^5.0.0","@types/node":"^20.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4","@typescript-eslint/parser":"^8.39.0","@typescript-eslint/eslint-plugin":"^8.39.0"},"_npmOperationalInternal":{"tmp":"tmp/fast-md5-web_1.0.16_1754678320055_0.2260558085837714","host":"s3://npm-registry-packages-npm-production"}},"1.0.17":{"name":"fast-md5-web","version":"1.0.17","keywords":["typescript","tsup","wasm","md5","rust"],"author":{"name":"Snow","email":"lijiaxin@xhblog.top"},"license":"MIT","_id":"fast-md5-web@1.0.17","maintainers":[{"name":"litlesnow","email":"xuehualjx@gmail.com"}],"homepage":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5#readme","bugs":{"url":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5/issues"},"dist":{"shasum":"2e1cbb12864bf54e18af408de07565b47f3bff30","tarball":"https://registry.npmjs.org/fast-md5-web/-/fast-md5-web-1.0.17.tgz","fileCount":17,"integrity":"sha512-jgv/xguxrkcIjT395TQtrRZuRkgbVGc4IHCxd3gZza1WhedhSNruhZVpm2kNg9FVKoX2/km2EwdT6vCTTMKzrg==","signatures":[{"sig":"MEUCIQDMLMnr2rswkrcXteFbewXt/cu7h+I6LJb+9DOJZd/yDwIgEL60nCbn41B8QPSuIzWwnc9A7s5xEtwn3AZqM4kut84=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":158786},"type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"6d8c7e8a34ec3148e9f80da77166e07067cdfb3c","scripts":{"dev":"tsup --watch","lint":"eslint src --ext .ts,.tsx","build":"pnpm run build:wasm && tsup","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","build:wasm":"cd wasm && wasm-pack build --target web && echo # Temporarily disabled to allow npm publish > pkg/.gitignore && echo # * >> pkg/.gitignore","type-check":"tsc --noEmit","format:check":"prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\""},"_npmUser":{"name":"litlesnow","email":"xuehualjx@gmail.com"},"repository":{"url":"git+https://github.com/XueHua-s/rust-wasm-calculate-file-md5.git","type":"git"},"_npmVersion":"10.5.0","description":"A TypeScript project with tsup bundler for Rust WASM MD5 calculation","directories":{},"_nodeVersion":"20.12.0","dependencies":{"uuid":"^11.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","eslint":"^9.32.0","rimraf":"^5.0.0","prettier":"^3.6.2","@eslint/js":"^9.32.0","typescript":"^5.0.0","@types/node":"^20.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4","@typescript-eslint/parser":"^8.39.0","@typescript-eslint/eslint-plugin":"^8.39.0"},"_npmOperationalInternal":{"tmp":"tmp/fast-md5-web_1.0.17_1754678535421_0.05470350066044105","host":"s3://npm-registry-packages-npm-production"}},"1.0.18":{"name":"fast-md5-web","version":"1.0.18","keywords":["typescript","tsup","wasm","md5","rust"],"author":{"name":"Snow","email":"lijiaxin@xhblog.top"},"license":"MIT","_id":"fast-md5-web@1.0.18","maintainers":[{"name":"litlesnow","email":"xuehualjx@gmail.com"}],"homepage":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5#readme","bugs":{"url":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5/issues"},"dist":{"shasum":"b4c61811f6d64a2d0f2527b753737ef82d0e12ca","tarball":"https://registry.npmjs.org/fast-md5-web/-/fast-md5-web-1.0.18.tgz","fileCount":17,"integrity":"sha512-+4vn9oDmDML0nYboxcFhB1TEU1bICsZLFFpZvRAkcB3tO4Y+IVKObJCzr+tUUo59+NJz/HCaqg1zObKSxz3fTA==","signatures":[{"sig":"MEUCIQDCyLtrCpEevjZFxNBOAj7Mgkf3fsqv6TRdmHcGSonEdAIgfN+XRRqZeC13lEoziqXDGF46g5a5CzbkAmkAyvQp4vI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":158742},"type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"a1714bf46299a3acb480383db8fdb2335c0ac40f","scripts":{"dev":"tsup --watch","lint":"eslint src --ext .ts,.tsx","build":"pnpm run build:wasm && tsup","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","build:wasm":"cd wasm && wasm-pack build --target web && echo # Temporarily disabled to allow npm publish > pkg/.gitignore && echo # * >> pkg/.gitignore","type-check":"tsc --noEmit","format:check":"prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\""},"_npmUser":{"name":"litlesnow","email":"xuehualjx@gmail.com"},"repository":{"url":"git+https://github.com/XueHua-s/rust-wasm-calculate-file-md5.git","type":"git"},"_npmVersion":"10.5.0","description":"A TypeScript project with tsup bundler for Rust WASM MD5 calculation","directories":{},"_nodeVersion":"20.12.0","dependencies":{"uuid":"^11.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","eslint":"^9.32.0","rimraf":"^5.0.0","prettier":"^3.6.2","@eslint/js":"^9.32.0","typescript":"^5.0.0","@types/node":"^20.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4","@typescript-eslint/parser":"^8.39.0","@typescript-eslint/eslint-plugin":"^8.39.0"},"_npmOperationalInternal":{"tmp":"tmp/fast-md5-web_1.0.18_1754710396201_0.11961885051172239","host":"s3://npm-registry-packages-npm-production"}},"1.0.19":{"name":"fast-md5-web","version":"1.0.19","keywords":["typescript","tsup","wasm","md5","rust"],"author":{"name":"Snow","email":"lijiaxin@xhblog.top"},"license":"MIT","_id":"fast-md5-web@1.0.19","maintainers":[{"name":"litlesnow","email":"xuehualjx@gmail.com"}],"homepage":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5#readme","bugs":{"url":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5/issues"},"dist":{"shasum":"aac95abdbb38d5fa130df36f201d774087cbc467","tarball":"https://registry.npmjs.org/fast-md5-web/-/fast-md5-web-1.0.19.tgz","fileCount":22,"integrity":"sha512-VVUoh/FwjPBS18AkjZCVd0PTX4i+17CvkpfOQqhC4OPqcJG2SpJRlVfufapDL47dyNliIKo7wD8973DdyBGu5g==","signatures":[{"sig":"MEUCIH5roiT9fxyua6pLuBojTI5z2VcwsFMjxXYuxocHUIacAiEAwB42VNshEyzx15tzXedt7pGSwf5y9qFC4LAm/l0HuAY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":181001},"type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"a1714bf46299a3acb480383db8fdb2335c0ac40f","scripts":{"dev":"tsup --watch","lint":"eslint src --ext .ts,.tsx","build":"pnpm run build:wasm && tsup","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","build:wasm":"cd wasm && wasm-pack build --target web && echo # Temporarily disabled to allow npm publish > pkg/.gitignore && echo # * >> pkg/.gitignore","type-check":"tsc --noEmit","format:check":"prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\""},"_npmUser":{"name":"litlesnow","email":"xuehualjx@gmail.com"},"repository":{"url":"git+https://github.com/XueHua-s/rust-wasm-calculate-file-md5.git","type":"git"},"_npmVersion":"10.5.0","description":"A TypeScript project with tsup bundler for Rust WASM MD5 calculation","directories":{},"_nodeVersion":"20.12.0","dependencies":{"uuid":"^11.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","eslint":"^9.32.0","rimraf":"^5.0.0","prettier":"^3.6.2","@eslint/js":"^9.32.0","typescript":"^5.0.0","@types/node":"^20.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4","@typescript-eslint/parser":"^8.39.0","@typescript-eslint/eslint-plugin":"^8.39.0"},"_npmOperationalInternal":{"tmp":"tmp/fast-md5-web_1.0.19_1754710988990_0.8363843422167752","host":"s3://npm-registry-packages-npm-production"}},"1.0.20":{"name":"fast-md5-web","version":"1.0.20","keywords":["typescript","tsup","wasm","md5","rust"],"author":{"name":"Snow","email":"lijiaxin@xhblog.top"},"license":"MIT","_id":"fast-md5-web@1.0.20","maintainers":[{"name":"litlesnow","email":"xuehualjx@gmail.com"}],"homepage":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5#readme","bugs":{"url":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5/issues"},"dist":{"shasum":"12dbe0649bfd5ffb06dbc49d79ddb07350afdcb1","tarball":"https://registry.npmjs.org/fast-md5-web/-/fast-md5-web-1.0.20.tgz","fileCount":22,"integrity":"sha512-joot3BtbH60tKzfLqrOajvk13ETKSx6gY2lY1blyrnsJlR+Bh2OG5tuz4ozpj2PgwZD/rfloMqorMm65g7eMgg==","signatures":[{"sig":"MEQCIEThXg/9rV3EyXFRq609k7Z4nVDCJsUBhAY+greCjsqzAiAtW5Kt2oKFWKDu44RNM+gM3pR4Euuu1WR/t3z0oxrU9A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":181193},"type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"a1714bf46299a3acb480383db8fdb2335c0ac40f","scripts":{"dev":"tsup --watch","lint":"eslint src --ext .ts,.tsx","build":"pnpm run build:wasm && tsup","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","build:wasm":"cd wasm && wasm-pack build --target web && echo # Temporarily disabled to allow npm publish > pkg/.gitignore && echo # * >> pkg/.gitignore","type-check":"tsc --noEmit","format:check":"prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\""},"_npmUser":{"name":"litlesnow","email":"xuehualjx@gmail.com"},"repository":{"url":"git+https://github.com/XueHua-s/rust-wasm-calculate-file-md5.git","type":"git"},"_npmVersion":"10.5.0","description":"A TypeScript project with tsup bundler for Rust WASM MD5 calculation","directories":{},"_nodeVersion":"20.12.0","dependencies":{"uuid":"^11.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","eslint":"^9.32.0","rimraf":"^5.0.0","prettier":"^3.6.2","@eslint/js":"^9.32.0","typescript":"^5.0.0","@types/node":"^20.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4","@typescript-eslint/parser":"^8.39.0","@typescript-eslint/eslint-plugin":"^8.39.0"},"_npmOperationalInternal":{"tmp":"tmp/fast-md5-web_1.0.20_1754711252666_0.41995348975581526","host":"s3://npm-registry-packages-npm-production"}},"1.0.21":{"name":"fast-md5-web","version":"1.0.21","keywords":["typescript","tsup","wasm","md5","rust"],"author":{"name":"Snow","email":"lijiaxin@xhblog.top"},"license":"MIT","_id":"fast-md5-web@1.0.21","maintainers":[{"name":"litlesnow","email":"xuehualjx@gmail.com"}],"homepage":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5#readme","bugs":{"url":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5/issues"},"dist":{"shasum":"8316b18f6a11c636dcc7bad77b8c46c13df6cbfc","tarball":"https://registry.npmjs.org/fast-md5-web/-/fast-md5-web-1.0.21.tgz","fileCount":14,"integrity":"sha512-IQpXNJNePngRwL84dm6NHxF/9DJbuMywtbCRSgIjwpe173bp867/gkklL0JqUxIrR0SsFN/oNrhttkodtKJsGQ==","signatures":[{"sig":"MEUCICrYlB5O2kPLO4OvXkfHiaFvYS3BjSbFtI63VmLE0nxzAiEA9Kf8AoCHOg2gUudXtqk2x5xaN5bBmKwCZ6qWOIXL8O4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":124119},"type":"module","_from":"file:fast-md5-web-1.0.21.tgz","types":"dist/index.d.ts","module":"dist/index.js","engines":{"node":">=18.0.0","pnpm":">=8.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsup --watch","lint":"eslint src --ext .ts,.tsx","build":"pnpm run build:wasm && tsup","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","build:wasm":"cd wasm && wasm-pack build --target web && echo # Temporarily disabled to allow npm publish > pkg/.gitignore && echo # * >> pkg/.gitignore","commitlint":"commitlint --edit --verbose","type-check":"tsc --noEmit","format:check":"prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\""},"_npmUser":{"name":"litlesnow","email":"xuehualjx@gmail.com"},"_resolved":"/tmp/327243c1da110d632a3f8b16aec8eac6/fast-md5-web-1.0.21.tgz","_integrity":"sha512-IQpXNJNePngRwL84dm6NHxF/9DJbuMywtbCRSgIjwpe173bp867/gkklL0JqUxIrR0SsFN/oNrhttkodtKJsGQ==","repository":{"url":"git+https://github.com/XueHua-s/rust-wasm-calculate-file-md5.git","type":"git"},"_npmVersion":"10.8.2","description":"A TypeScript project with tsup bundler for Rust WASM MD5 calculation","directories":{},"lint-staged":{"src/**/*.{ts,tsx}":["bash -c 'tsc -p tsconfig.json --noEmit'","eslint --fix","prettier --write"]},"_nodeVersion":"18.20.8","dependencies":{"uuid":"11.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"8.0.0","husky":"9.1.7","eslint":"9.32.0","oxlint":"1.14.0","rimraf":"5.0.0","prettier":"3.6.2","@eslint/js":"9.32.0","typescript":"5.9.2","@types/node":"20.0.0","@commitlint/cli":"19.8.1","eslint-config-prettier":"10.1.8","eslint-plugin-prettier":"5.5.4","@typescript-eslint/parser":"8.39.0","@commitlint/config-conventional":"19.8.1","@typescript-eslint/eslint-plugin":"8.39.0"},"_npmOperationalInternal":{"tmp":"tmp/fast-md5-web_1.0.21_1756914254081_0.9786485788043413","host":"s3://npm-registry-packages-npm-production"}},"1.0.22":{"name":"fast-md5-web","version":"1.0.22","keywords":["typescript","tsup","wasm","md5","rust"],"author":{"name":"Snow","email":"lijiaxin@xhblog.top"},"license":"MIT","_id":"fast-md5-web@1.0.22","maintainers":[{"name":"litlesnow","email":"xuehualjx@gmail.com"}],"homepage":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5#readme","bugs":{"url":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5/issues"},"dist":{"shasum":"0b3e012024b07791d13fd882ccebdf73847b369c","tarball":"https://registry.npmjs.org/fast-md5-web/-/fast-md5-web-1.0.22.tgz","fileCount":14,"integrity":"sha512-q1UMvQYWfsJHbiqd81/VRYS3zMa2qB+R5sJ6onJpuoq68hFgfd8W/yZZQZNq+PlaQdSJzNhyNqRc7ySd0WhqaQ==","signatures":[{"sig":"MEYCIQCnB4fyQ95RI7v4xmzXveTfiMiG7nVh9o4jEGK0dHdX7wIhAMfBxRQMYnSPHtOoeB1r4WWi06EdzDueCnPgaVS+n8zp","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":124119},"type":"module","_from":"file:fast-md5-web-1.0.22.tgz","types":"dist/index.d.ts","module":"dist/index.js","engines":{"node":">=18.0.0","pnpm":">=8.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsup --watch","lint":"eslint src --ext .ts,.tsx","build":"pnpm run build:wasm && tsup","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","build:wasm":"cd wasm && wasm-pack build --target web && echo # Temporarily disabled to allow npm publish > pkg/.gitignore && echo # * >> pkg/.gitignore","commitlint":"commitlint --edit --verbose","type-check":"tsc --noEmit","format:check":"prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\""},"_npmUser":{"name":"litlesnow","email":"xuehualjx@gmail.com"},"_resolved":"/tmp/ca4f1fbc5526d8307d2c57b069c0cdf7/fast-md5-web-1.0.22.tgz","_integrity":"sha512-q1UMvQYWfsJHbiqd81/VRYS3zMa2qB+R5sJ6onJpuoq68hFgfd8W/yZZQZNq+PlaQdSJzNhyNqRc7ySd0WhqaQ==","repository":{"url":"git+https://github.com/XueHua-s/rust-wasm-calculate-file-md5.git","type":"git"},"_npmVersion":"10.8.2","description":"A TypeScript project with tsup bundler for Rust WASM MD5 calculation","directories":{},"lint-staged":{"src/**/*.{ts,tsx}":["bash -c 'tsc -p tsconfig.json --noEmit'","eslint --fix","prettier --write"]},"_nodeVersion":"18.20.8","dependencies":{"uuid":"11.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"8.0.0","husky":"9.1.7","eslint":"9.32.0","oxlint":"1.14.0","rimraf":"5.0.0","prettier":"3.6.2","@eslint/js":"9.32.0","typescript":"5.9.2","@types/node":"20.0.0","@commitlint/cli":"19.8.1","eslint-config-prettier":"10.1.8","eslint-plugin-prettier":"5.5.4","@typescript-eslint/parser":"8.39.0","@commitlint/config-conventional":"19.8.1","@typescript-eslint/eslint-plugin":"8.39.0"},"_npmOperationalInternal":{"tmp":"tmp/fast-md5-web_1.0.22_1756914670562_0.14141495970567486","host":"s3://npm-registry-packages-npm-production"}},"1.0.23":{"name":"fast-md5-web","version":"1.0.23","keywords":["typescript","tsup","wasm","md5","rust"],"author":{"name":"Snow","email":"lijiaxin@xhblog.top"},"license":"MIT","_id":"fast-md5-web@1.0.23","maintainers":[{"name":"litlesnow","email":"xuehualjx@gmail.com"}],"homepage":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5#readme","bugs":{"url":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5/issues"},"dist":{"shasum":"15087a10174f2b1ffcd7f964bdae1482b019c170","tarball":"https://registry.npmjs.org/fast-md5-web/-/fast-md5-web-1.0.23.tgz","fileCount":14,"integrity":"sha512-f1isRr9rGovlZ0A+uWeSurvb0CdREWTCgtRUDaTrcT5I6y4bLwunlgKDldrLN+/oLn/s+LGXqnJM8D+gLYB3QQ==","signatures":[{"sig":"MEYCIQDjBcB+crY9CCSu2n0+dGtT7zGwyDW0u1plgX2QGVfFAQIhAMk42Y+6PKMTOLkymV6BxdjrUvAmKF1fbrtB56CjmjEF","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":125877},"type":"module","_from":"file:fast-md5-web-1.0.23.tgz","types":"dist/index.d.ts","module":"dist/index.js","engines":{"node":">=18.0.0","pnpm":">=8.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsup --watch","lint":"eslint src --ext .ts,.tsx","build":"pnpm run build:wasm && tsup","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","build:wasm":"cd wasm && wasm-pack build --target web && echo # Temporarily disabled to allow npm publish > pkg/.gitignore && echo # * >> pkg/.gitignore","commitlint":"commitlint --edit --verbose","type-check":"tsc --noEmit","format:check":"prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\""},"_npmUser":{"name":"litlesnow","email":"xuehualjx@gmail.com"},"_resolved":"/tmp/1456fdeec96619b55322fec5303298b7/fast-md5-web-1.0.23.tgz","_integrity":"sha512-f1isRr9rGovlZ0A+uWeSurvb0CdREWTCgtRUDaTrcT5I6y4bLwunlgKDldrLN+/oLn/s+LGXqnJM8D+gLYB3QQ==","repository":{"url":"git+https://github.com/XueHua-s/rust-wasm-calculate-file-md5.git","type":"git"},"_npmVersion":"10.8.2","description":"A TypeScript project with tsup bundler for Rust WASM MD5 calculation","directories":{},"lint-staged":{"src/**/*.{ts,tsx}":["bash -c 'tsc -p tsconfig.json --noEmit'","eslint --fix","prettier --write"]},"_nodeVersion":"18.20.8","dependencies":{"uuid":"11.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"8.0.0","husky":"9.1.7","eslint":"9.32.0","oxlint":"1.14.0","rimraf":"5.0.0","prettier":"3.6.2","@eslint/js":"9.32.0","typescript":"5.9.2","@types/node":"20.0.0","@commitlint/cli":"19.8.1","eslint-config-prettier":"10.1.8","eslint-plugin-prettier":"5.5.4","@typescript-eslint/parser":"8.39.0","@commitlint/config-conventional":"19.8.1","@typescript-eslint/eslint-plugin":"8.39.0"},"_npmOperationalInternal":{"tmp":"tmp/fast-md5-web_1.0.23_1757043858844_0.3548749658064412","host":"s3://npm-registry-packages-npm-production"}},"1.0.24":{"name":"fast-md5-web","version":"1.0.24","keywords":["typescript","tsup","wasm","md5","rust"],"author":{"name":"Snow","email":"lijiaxin@xhblog.top"},"license":"MIT","_id":"fast-md5-web@1.0.24","maintainers":[{"name":"litlesnow","email":"xuehualjx@gmail.com"}],"homepage":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5#readme","bugs":{"url":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5/issues"},"dist":{"shasum":"c77290e8cd873c30c7c4e7a54b0bb05b344b8e3c","tarball":"https://registry.npmjs.org/fast-md5-web/-/fast-md5-web-1.0.24.tgz","fileCount":14,"integrity":"sha512-ttVrd0wWNasmXC4gAJW+xoYdYj/gsAL5tt/FDIEEad9O5qh5xQ2yzgqxwiEpv8ORXO/XFI7VBunhXLGsx2pxHA==","signatures":[{"sig":"MEUCIFzy7bO3/RwkOZsc1D89JxFT8yv0R6Pxt7IZZIczh17cAiEAyqpRVTul30FiBQQccjXCQqhI0Og33VeyCBG/eKHP20A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":128081},"type":"module","_from":"file:fast-md5-web-1.0.24.tgz","types":"dist/index.d.ts","module":"dist/index.js","engines":{"node":">=18.0.0","pnpm":">=8.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsup --watch","lint":"eslint src --ext .ts,.tsx","build":"pnpm run build:wasm && tsup","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","build:wasm":"cd wasm && wasm-pack build --target web && echo # Temporarily disabled to allow npm publish > pkg/.gitignore && echo # * >> pkg/.gitignore","commitlint":"commitlint --edit --verbose","type-check":"tsc --noEmit","format:check":"prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\""},"_npmUser":{"name":"litlesnow","email":"xuehualjx@gmail.com"},"_resolved":"/tmp/2c72045e10c291a9aed1440fe3389629/fast-md5-web-1.0.24.tgz","_integrity":"sha512-ttVrd0wWNasmXC4gAJW+xoYdYj/gsAL5tt/FDIEEad9O5qh5xQ2yzgqxwiEpv8ORXO/XFI7VBunhXLGsx2pxHA==","repository":{"url":"git+https://github.com/XueHua-s/rust-wasm-calculate-file-md5.git","type":"git"},"_npmVersion":"10.8.2","description":"A TypeScript project with tsup bundler for Rust WASM MD5 calculation","directories":{},"lint-staged":{"src/**/*.{ts,tsx}":["bash -c 'tsc -p tsconfig.json --noEmit'","eslint --fix","prettier --write"]},"_nodeVersion":"18.20.8","dependencies":{"uuid":"11.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"8.0.0","husky":"9.1.7","eslint":"9.32.0","oxlint":"1.14.0","rimraf":"5.0.0","prettier":"3.6.2","@eslint/js":"9.32.0","typescript":"5.9.2","@types/node":"20.0.0","@types/uuid":"^10.0.0","@commitlint/cli":"19.8.1","eslint-config-prettier":"10.1.8","eslint-plugin-prettier":"5.5.4","@typescript-eslint/parser":"8.39.0","@commitlint/config-conventional":"19.8.1","@typescript-eslint/eslint-plugin":"8.39.0"},"_npmOperationalInternal":{"tmp":"tmp/fast-md5-web_1.0.24_1757173479411_0.04419804859209231","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"fast-md5-web","version":"1.1.1","keywords":["typescript","tsup","wasm","md5","rust"],"author":{"name":"Snow","email":"lijiaxin@xhblog.top"},"license":"MIT","_id":"fast-md5-web@1.1.1","maintainers":[{"name":"litlesnow","email":"xuehualjx@gmail.com"}],"homepage":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5#readme","bugs":{"url":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5/issues"},"dist":{"shasum":"4c84fe0b63875bee17c8c58c77153ad7f209b380","tarball":"https://registry.npmjs.org/fast-md5-web/-/fast-md5-web-1.1.1.tgz","fileCount":7,"integrity":"sha512-mqayYgdg+JN5oU845vWtEDJ/wAFPkvHlLOh8YE3IDzdAdhXEIrMmw1Cs30bQ6bRafgpAjaxfDV3n/QkDM9i0fw==","signatures":[{"sig":"MEUCIDjMYA2xHPiv8NtsjCqGdwVLhdZrEA2h1lxgtg7Sw+LKAiEA0htWzeKLPXV5dyXT49nLwxdJjO3eQittdK9c8gXByC0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":41995},"pnpm":{"onlyAllow":"pnpm"},"type":"module","types":"dist/index.d.ts","module":"dist/index.js","engines":{"node":">=18.0.0","pnpm":">=8.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"7cf64ef937b56650d0388f5aed3a608928aeecf5","scripts":{"dev":"tsup --watch","lint":"eslint src --ext .ts,.tsx","build":"pnpm run build:wasm && tsup","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"","prepare":"husky","lint:fix":"eslint src --ext .ts,.tsx --fix","build:wasm":"cd wasm && wasm-pack build --target web && echo # Temporarily disabled to allow npm publish > pkg/.gitignore && echo # * >> pkg/.gitignore","commitlint":"commitlint --edit --verbose","type-check":"tsc --noEmit","format:check":"prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\""},"_npmUser":{"name":"litlesnow","email":"xuehualjx@gmail.com"},"repository":{"url":"git+https://github.com/XueHua-s/rust-wasm-calculate-file-md5.git","type":"git"},"_npmVersion":"10.9.3","description":"A TypeScript project with tsup bundler for Rust WASM MD5 calculation","directories":{},"lint-staged":{"src/**/*.{ts,tsx}":["bash -c 'tsc -p tsconfig.json --noEmit'","eslint --fix","prettier --write"]},"_nodeVersion":"22.20.0","dependencies":{"uuid":"11.1.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@9.0.0","devDependencies":{"tsup":"8.0.0","husky":"9.1.7","eslint":"9.32.0","oxlint":"1.14.0","rimraf":"5.0.0","prettier":"3.6.2","@eslint/js":"9.32.0","typescript":"5.9.2","@types/node":"20.0.0","@types/uuid":"^10.0.0","@commitlint/cli":"19.8.1","eslint-config-prettier":"10.1.8","eslint-plugin-prettier":"5.5.4","@typescript-eslint/parser":"8.39.0","@commitlint/config-conventional":"19.8.1","@typescript-eslint/eslint-plugin":"8.39.0"},"_npmOperationalInternal":{"tmp":"tmp/fast-md5-web_1.1.1_1759164294984_0.2238501928011607","host":"s3://npm-registry-packages-npm-production"},"deprecated":"This version has serious issues; please use the latest version."},"1.1.2":{"name":"fast-md5-web","version":"1.1.2","keywords":["typescript","tsup","wasm","md5","rust"],"author":{"name":"Snow","email":"lijiaxin@xhblog.top"},"license":"MIT","_id":"fast-md5-web@1.1.2","maintainers":[{"name":"litlesnow","email":"xuehualjx@gmail.com"}],"homepage":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5#readme","bugs":{"url":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5/issues"},"dist":{"shasum":"9097c2cc910a2037fba10a5b2e2effeb6cb0d590","tarball":"https://registry.npmjs.org/fast-md5-web/-/fast-md5-web-1.1.2.tgz","fileCount":14,"integrity":"sha512-h3P1tk9Wxw2NjDIjAh54/MQYgIcTFpQSMxnu1Okj4BDAfFRYASBj7tpOsFcJjRLmeJbwFGKluFdCGsi5+7+C0A==","signatures":[{"sig":"MEUCIQCiJeUAorocNIOMgpeS/ZbSk/l/IwWLPS/gLTrUEWoAOQIgW+mfjCUsPqtb1Vhh2y2OCH7htnvU4AVVbb74/j4zBb0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":128718},"type":"module","_from":"file:fast-md5-web-1.1.2.tgz","types":"dist/index.d.ts","module":"dist/index.js","engines":{"node":">=18.0.0","pnpm":">=8.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsup --watch","lint":"eslint src --ext .ts,.tsx","build":"pnpm run build:wasm && tsup","clean":"rimraf dist","format":"prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"","lint:fix":"eslint src --ext .ts,.tsx --fix","build:wasm":"cd wasm && wasm-pack build --target web && echo # Temporarily disabled to allow npm publish > pkg/.gitignore && echo # * >> pkg/.gitignore","commitlint":"commitlint --edit --verbose","type-check":"tsc --noEmit","format:check":"prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\""},"_npmUser":{"name":"litlesnow","email":"xuehualjx@gmail.com"},"_resolved":"/tmp/79a0c5bface41d16c0d5acfd25b1610d/fast-md5-web-1.1.2.tgz","_integrity":"sha512-h3P1tk9Wxw2NjDIjAh54/MQYgIcTFpQSMxnu1Okj4BDAfFRYASBj7tpOsFcJjRLmeJbwFGKluFdCGsi5+7+C0A==","repository":{"url":"git+https://github.com/XueHua-s/rust-wasm-calculate-file-md5.git","type":"git"},"_npmVersion":"10.8.2","description":"A TypeScript project with tsup bundler for Rust WASM MD5 calculation","directories":{},"lint-staged":{"src/**/*.{ts,tsx}":["bash -c 'tsc -p tsconfig.json --noEmit'","eslint --fix","prettier --write"]},"_nodeVersion":"18.20.8","dependencies":{"uuid":"11.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"8.0.0","husky":"9.1.7","eslint":"9.32.0","oxlint":"1.14.0","rimraf":"5.0.0","prettier":"3.6.2","@eslint/js":"9.32.0","typescript":"5.9.2","@types/node":"20.0.0","@types/uuid":"^10.0.0","@commitlint/cli":"19.8.1","eslint-config-prettier":"10.1.8","eslint-plugin-prettier":"5.5.4","@typescript-eslint/parser":"8.39.0","@commitlint/config-conventional":"19.8.1","@typescript-eslint/eslint-plugin":"8.39.0"},"_npmOperationalInternal":{"tmp":"tmp/fast-md5-web_1.1.2_1764229931925_0.15349269207087968","host":"s3://npm-registry-packages-npm-production"}}},"time":{"created":"2025-08-08T14:52:17.643Z","modified":"2025-11-27T08:05:35.341Z","1.0.0":"2025-08-08T14:52:17.935Z","1.0.1":"2025-08-08T14:54:13.154Z","1.0.2":"2025-08-08T15:01:01.874Z","1.0.3":"2025-08-08T15:08:06.810Z","1.0.4":"2025-08-08T15:13:13.098Z","1.0.5":"2025-08-08T15:26:36.849Z","1.0.6":"2025-08-08T15:33:17.558Z","1.0.7":"2025-08-08T16:05:38.050Z","1.0.8":"2025-08-08T16:21:33.040Z","1.0.9":"2025-08-08T16:32:18.371Z","1.0.10":"2025-08-08T16:44:31.330Z","1.0.11":"2025-08-08T17:20:43.073Z","1.0.12":"2025-08-08T17:37:42.683Z","1.0.14":"2025-08-08T18:03:48.309Z","1.0.15":"2025-08-08T18:19:37.816Z","1.0.16":"2025-08-08T18:38:40.236Z","1.0.17":"2025-08-08T18:42:15.618Z","1.0.18":"2025-08-09T03:33:16.392Z","1.0.19":"2025-08-09T03:43:09.207Z","1.0.20":"2025-08-09T03:47:32.862Z","2.0.0":"2025-09-03T15:30:16.570Z","1.0.21":"2025-09-03T15:44:14.300Z","1.0.22":"2025-09-03T15:51:10.751Z","1.0.23":"2025-09-05T03:44:19.085Z","1.0.24":"2025-09-06T15:44:39.617Z","1.1.0":"2025-09-29T16:16:32.837Z","1.0.25":"2025-09-29T16:27:26.970Z","1.1.1":"2025-09-29T16:44:55.206Z","1.1.2":"2025-11-27T07:52:12.097Z"},"bugs":{"url":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5/issues"},"author":{"name":"Snow","email":"lijiaxin@xhblog.top"},"license":"MIT","homepage":"https://github.com/XueHua-s/rust-wasm-calculate-file-md5#readme","keywords":["typescript","tsup","wasm","md5","rust"],"repository":{"url":"git+https://github.com/XueHua-s/rust-wasm-calculate-file-md5.git","type":"git"},"description":"A TypeScript project with tsup bundler for Rust WASM MD5 calculation","maintainers":[{"name":"litlesnow","email":"xuehualjx@gmail.com"}],"readme":"# fast-md5-web\n\n[English](README.md) | [中文](README-zh.md)\n\n---\n\n🚀 **Possibly the fastest MD5 calculation library for web environments** - powered by Rust WebAssembly with **Web Worker** support for truly non-blocking computation. **8x faster** in single-thread mode and **16x faster** with multi-thread workers than spark-md5 in specific scenarios.\n\n⚡ **ESM-only package** - Supports modern browsers, Node.js, and Deno with ES modules. **No CommonJS support**.\n\n## ✨ Features\n\n- 🧵 **Web Worker Pool** - True parallel processing with configurable worker threads, prevents UI blocking\n- 🚀 **SharedArrayBuffer Support** - Zero-copy data transfer between main thread and workers for maximum performance\n- 🦀 **Rust WebAssembly** - Native performance with Rust compiled to WebAssembly\n- ⚡ **High Performance** - 8x faster in single-thread mode, 16x faster with multi-thread workers than spark-md5 for batch processing\n- 📦 **ESM-only** - Modern ES modules for browsers, Node.js, and Deno (no CommonJS)\n- 📝 **TypeScript Support** - Full TypeScript declarations and type safety\n- 🔄 **Streaming Processing** - Incremental MD5 calculation for large files (200MB+) without memory overflow\n- 🎯 **Flexible Output** - Support for 16-bit and 32-bit MD5 hash lengths\n- 🔄 **Auto Fallback** - Automatically falls back to message passing when SharedArrayBuffer is unavailable\n- 🧠 **Smart Memory Management** - Intelligent shared memory allocation with fragmentation control\n- 📊 **Progress Tracking** - Real-time progress updates for large file processing\n- 🎛️ **Concurrency Control** - Configurable maximum concurrent tasks to prevent system overload\n- 📦 **Batch Processing** - Optimized batch processing with priority queues and task management\n\n## 📦 Installation\n\n### Node.js / Browser\n```bash\nnpm install fast-md5-web\n```\n\n### Deno\n```typescript\n// Direct import from npm (recommended)\nimport { Md5CalculatorPool, WasmInit, Md5Calculator } from 'npm:fast-md5-web';\n\n// Or add to deno.json import map:\n// {\n//   \"imports\": {\n//     \"fast-md5-web\": \"npm:fast-md5-web\"\n//   }\n// }\n```\n\n> **⚠️ ESM Only**: This package only supports ES modules. It works in modern browsers, Node.js (with `\"type\": \"module\"` in package.json), and Deno. CommonJS is not supported.\n\n## 🚀 Quick Start\n\n```typescript\nimport { Md5CalculatorPool, WasmInit, Md5Calculator } from 'fast-md5-web';\n\n// Method 1: Using Worker Pool with SharedArrayBuffer (Recommended for processing multiple files)\nconst pool = new Md5CalculatorPool(\n  navigator.hardwareConcurrency, // Worker count\n  undefined, // SharedMemoryConfig (optional)\n  3 // Max concurrent tasks\n);\n\n// Enable shared memory for large files\npool.enableSharedMemory(64 * 1024 * 1024, 2 * 1024 * 1024); // 64MB memory, 2MB chunks\n\n// Process large files with progress tracking\nconst largeFile = new File([/* large data */], 'large-file.bin');\nconst hash = await pool.calculateMd5(\n  largeFile,\n  32, // MD5 length\n  60000, // Timeout\n  (progress) => {\n    console.log(`Progress: ${progress.toFixed(1)}%`);\n  },\n  1 // Priority (number)\n);\nconsole.log('MD5:', hash);\n\n// Batch processing\nconst files = [file1, file2, file3];\nconst results = await pool.calculateMd5Batch(\n  files,\n  32, // MD5 length\n  (completed, total) => {\n    console.log(`Progress: ${completed}/${total} files completed`);\n  }\n);\nconsole.log('Batch results:', results);\n\n// Check pool status including memory usage\nconst status = pool.getPoolStatus();\nconsole.log('Pool status:', {\n  workers: status.totalWorkers,\n  activeTasks: status.activeTasks,\n  memoryEnabled: status.sharedMemoryEnabled,\n  memoryUsage: status.sharedMemoryUsage ? \n    `${(status.sharedMemoryUsage.used / 1024 / 1024).toFixed(2)}MB / ${(status.sharedMemoryUsage.total / 1024 / 1024).toFixed(2)}MB` : 'N/A'\n});\n\n// Clean up\npool.destroy();\n\n// Method 1b: Traditional Worker Pool (without SharedArrayBuffer)\nconst traditionalPool = new Md5CalculatorPool(4); // Uses message passing by default\n\n// Method 2: Direct WASM usage (Recommended for single small files)\nawait WasmInit();\nconst calculator = new Md5Calculator();\n\n// Convert single file to Uint8Array\nconst file = new File(['Hello, World!'], 'example.txt');\nconst arrayBuffer = await file.arrayBuffer();\nconst data = new Uint8Array(arrayBuffer);\n\nconst hash = await calculator.calculate_md5_async(data, 32);\nconsole.log('MD5:', hash);\n\n// Method 3: Deno usage\n// For Deno, you can import directly from npm:\nimport { Md5CalculatorPool, WasmInit, Md5Calculator } from 'npm:fast-md5-web';\n\n// Or use with import maps in deno.json:\n// {\n//   \"imports\": {\n//     \"fast-md5-web\": \"npm:fast-md5-web\"\n//   }\n// }\n// Then: import { Md5CalculatorPool, WasmInit, Md5Calculator } from 'fast-md5-web';\n\n// Read file in Deno\nconst fileData = await Deno.readFile('./example.txt');\nconst data = new Uint8Array(fileData);\n\n// Calculate MD5\nawait WasmInit();\nconst calculator = new Md5Calculator();\nconst hash = await calculator.calculate_md5_async(data, 32);\nconsole.log('MD5:', hash);\n```\n\n## 📚 API Reference\n\n### `Md5CalculatorPool`\n\nManages a pool of Web Workers for parallel MD5 calculation of multiple files with advanced features.\n\n```typescript\ninterface SharedMemoryConfig {\n  enabled: boolean;\n  memorySize: number;\n  chunkSize: number;\n}\n\ninterface PoolStatus {\n  totalWorkers: number;\n  availableWorkers: number;\n  pendingTasks: number;\n  activeTasks: number;\n  maxConcurrentTasks: number;\n  sharedMemoryEnabled: boolean;\n  sharedMemoryUsage?: {\n    total: number;\n    used: number;\n    available: number;\n    fragmentation: number;\n  };\n}\n\nclass Md5CalculatorPool {\n  constructor(poolSize?: number, sharedMemoryConfig?: SharedMemoryConfig, maxConcurrentTasks?: number);\n  \n  // Single file processing with streaming support\n  async calculateMd5(\n    data: Uint8Array | File, \n    md5Length?: number, \n    timeout?: number,\n    onProgress?: (progress: number) => void,\n    priority?: number\n  ): Promise<string>;\n  \n  // Batch processing\n  async calculateMd5Batch(\n    files: (Uint8Array | File)[], \n    md5Length?: number,\n    timeout?: number, // singleFileTimeoutSetting\n    onProgress?: (completed: number, total: number) => void\n  ): Promise<string[]>;\n  \n  // Shared memory management\n  enableSharedMemory(memorySize?: number, chunkSize?: number): boolean;\n  disableSharedMemory(): void;\n  \n  // Task management\n  cancelTask(taskId: string): boolean;\n  \n  // Pool status and cleanup\n  getPoolStatus(): PoolStatus;\n  destroy(): void;\n}\n```\n\n### `Md5Calculator`\n\nDirect WASM MD5 calculator for single file processing.\n\n```typescript\nclass Md5Calculator {\n  constructor();\n  \n  async calculate_md5_async(data: Uint8Array, md5Length: number): Promise<string>;\n  set_log_enabled(enable: boolean): void;\n  is_log_enabled(): boolean;\n}\n```\n\n### Parameters\n\n- `data: Uint8Array` - File data as byte array\n- `md5Length: number` - Hash length (16 for 128-bit half, 32 for full 128-bit)\n- `poolSize: number` - Number of worker threads (default: navigator.hardwareConcurrency)\n\n## 🏗️ Development\n\n```bash\n# Install dependencies\nnpm install\n\n# Build WASM and TypeScript\nnpm run build\n\n# Development mode with watch\nnpm run dev\n\n# Type checking\nnpm run type-check\n\n# Linting\nnpm run lint\nnpm run lint:fix\n\n# Formatting\nnpm run format\nnpm run format:check\n\n# Clean build artifacts\nnpm run clean\n```\n\n## ⚠️ Production Environment Requirements\n\nTo use SharedArrayBuffer for optimal performance in a production environment, your website must meet the following conditions:\n\n1. **Must be served over HTTPS** - This is essential for creating a secure context.\n2. **Must set Cross-Origin Isolation HTTP headers**:\n   ```\n   Cross-Origin-Opener-Policy: same-origin\n   Cross-Origin-Embedder-Policy: require-corp\n   ```\n\n## ⏱️ Timeout Setting\n\nIn the `calculateMd5` method, the `timeout` parameter controls the calculation timeout in milliseconds.\n- Default value: 60000ms (1 minute)\n- Set to 0 to disable timeout\n\nExample:\n```typescript\n// Disable timeout\nawait pool.calculateMd5(file, 32, 0);\n```\n\n## 📁 Project Structure\n\n```\n├── src/\n│   ├── index.ts          # Main TypeScript entry\n│   └── md5-worker.ts     # Web Worker implementation\n├── wasm/                 # Rust WASM source\n│   ├── src/\n│   │   ├── lib.rs        # Main Rust library\n│   │   └── utils.rs      # Utility functions\n│   ├── Cargo.toml        # Rust dependencies\n│   └── pkg/              # Generated WASM package\n├── dist/                 # Build output\n├── package.json\n├── tsup.config.ts        # Build configuration\n└── tsconfig.json         # TypeScript configuration\n```\n\n## ⚡ Performance\n\n### 🏆 Benchmark Results\n\n**Performance Comparison:**\n- **Single-thread mode**: ~8x faster than spark-md5 ⚡\n- **Multi-thread workers**: ~16x faster than spark-md5 🚀\n- **Live Demo**: [View performance test results](./example/test-fast-md5/dist/index.html)\n\n![Multi-thread Test Results](./docs/a3d25c4789a9937d8a1fc76c12b61152.png)\n\n### Core Performance Features\n- **WebAssembly**: Leverages Rust's performance for MD5 calculation\n- **Streaming Processing**: Handles large files without loading entire content into memory\n- **Incremental Hashing**: WASM-based incremental MD5 calculation for memory efficiency\n- **Smart Concurrency**: Adaptive task scheduling with priority queues\n- **Zero-Copy Transfer**: SharedArrayBuffer eliminates data copying overhead\n\n### Memory Management\n- **Chunked Processing**: Configurable chunk sizes for optimal memory usage\n- **Shared Memory Pool**: Efficient memory allocation and reuse\n- **Fragmentation Monitoring**: Real-time memory fragmentation tracking\n- **Automatic Cleanup**: Proper resource cleanup and garbage collection\n\n### Key Optimizations\n\n- **SharedArrayBuffer**: Zero-copy data transfer eliminates serialization overhead\n- **Web Worker Pool**: Parallel processing of multiple files prevents main thread blocking\n- **Rust WebAssembly**: Native performance with zero-cost abstractions\n- **Chunked Processing**: Automatic optimization for files > 1MB\n- **Memory Efficient**: Streaming processing with controlled memory usage\n- **Multi-file Processing**: Optimized for handling multiple files simultaneously with worker pool\n- **Auto Fallback**: Graceful degradation to message passing when SharedArrayBuffer is unavailable\n\n### Best Practices\n\n#### For Large Files (>50MB)\n```typescript\n// Enable shared memory with appropriate chunk size\npool.enableSharedMemory(128 * 1024 * 1024, 4 * 1024 * 1024); // 128MB, 4MB chunks\n\n// Use high priority for critical files\nconst hash = await pool.calculateMd5(\n  largeFile, \n  32, \n  60000, // timeout\n  (progress) => {\n    console.log(`Processing: ${progress.toFixed(1)}%`);\n  },\n  10 // high priority (higher number = higher priority)\n);\n```\n\n#### For Batch Processing\n```typescript\n// Sort files by size for optimal scheduling\nconst sortedFiles = files.sort((a, b) => b.size - a.size);\n\nconst results = await pool.calculateMd5Batch(\n  sortedFiles, \n  32, // MD5 length\n  (completed, total) => {\n    console.log(`Progress: ${completed}/${total} files completed`);\n  }\n);\n```\n\n#### Memory Monitoring\n```typescript\nconst status = pool.getPoolStatus();\nif (status.sharedMemoryUsage && status.sharedMemoryUsage.fragmentation > 3) {\n  console.warn('High memory fragmentation detected');\n  // Consider recreating the pool\n}\n```\n\n### SharedArrayBuffer Performance Benefits\n\n**Processing 10MB file with 4 workers:**\n- **With SharedArrayBuffer**: ~1ms data transfer + ~150ms processing = ~151ms total\n- **Without SharedArrayBuffer**: ~50ms data transfer + ~150ms processing = ~200ms total\n- **Performance gain**: ~25% faster overall, 50x faster data transfer\n\n**Memory Usage Comparison:**\n- **Traditional mode**: 2x memory usage (original + copied data)\n- **SharedArrayBuffer mode**: 1x memory usage (shared data)\n- **Memory savings**: Up to 50% reduction in memory usage\n\n## Browser Compatibility\n\n| Feature | Chrome | Firefox | Safari | Edge | Notes |\n|---------|--------|---------|--------|---------|-------|\n| Basic MD5 | ✅ | ✅ | ✅ | ✅ | Full support |\n| Web Workers | ✅ | ✅ | ✅ | ✅ | Full support |\n| Streaming Processing | ✅ | ✅ | ✅ | ✅ | File API required |\n| SharedArrayBuffer | ✅* | ✅* | ✅* | ✅* | HTTPS + headers required |\n| WebAssembly | ✅ | ✅ | ✅ | ✅ | Full support |\n| Progress Tracking | ✅ | ✅ | ✅ | ✅ | Full support |\n\n### SharedArrayBuffer Requirements\n\nFor optimal performance with large files, SharedArrayBuffer requires:\n\n```html\n<!-- Required headers for SharedArrayBuffer -->\n<meta http-equiv=\"Cross-Origin-Opener-Policy\" content=\"same-origin\">\n<meta http-equiv=\"Cross-Origin-Embedder-Policy\" content=\"require-corp\">\n```\n\nOr server headers:\n```\nCross-Origin-Opener-Policy: same-origin\nCross-Origin-Embedder-Policy: require-corp\n```\n\n### Fallback Behavior\n\nWhen SharedArrayBuffer is unavailable:\n- Automatically falls back to standard message passing\n- Slightly reduced performance for very large files\n- All features remain functional\n\n## 🔧 Troubleshooting\n\n### Common Issues\n\n#### SharedArrayBuffer Not Available\n\n**Problem**: SharedArrayBuffer is undefined or not working\n\n**Solutions**:\n1. Ensure HTTPS is enabled (required for security)\n2. Add required headers:\n   ```\n   Cross-Origin-Opener-Policy: same-origin\n   Cross-Origin-Embedder-Policy: require-corp\n   ```\n3. Check browser support (Chrome 68+, Firefox 79+, Safari 15.2+)\n4. The library automatically falls back to message passing\n\n#### Memory Issues with Large Files\n\n**Problem**: Out of memory errors or slow performance\n\n**Solutions**:\n```typescript\n// Reduce chunk size for memory-constrained environments\npool.enableSharedMemory(32 * 1024 * 1024, 1 * 1024 * 1024); // 32MB, 1MB chunks\n\n// Reduce concurrent tasks\nconst pool = new Md5CalculatorPool(2, 1); // 2 workers, 1 concurrent task\n\n// Monitor memory usage\nconst status = pool.getPoolStatus();\nif (status.memoryUsed > 100 * 1024 * 1024) { // > 100MB\n  console.warn('High memory usage detected');\n}\n```\n\n#### Worker Initialization Failures\n\n**Problem**: Workers fail to start or crash\n\n**Solutions**:\n1. Check browser console for detailed error messages\n2. Ensure proper WASM loading:\n   ```typescript\n   try {\n     await WasmInit();\n     console.log('WASM initialized successfully');\n   } catch (error) {\n     console.error('WASM initialization failed:', error);\n   }\n   ```\n3. Verify file paths and module resolution\n4. Check Content Security Policy (CSP) settings\n\n#### ESM Import Issues\n\n**Problem**: Module import errors or CommonJS compatibility\n\n**Solutions**:\n1. Ensure `\"type\": \"module\"` in package.json for Node.js\n2. Use `.mjs` file extension\n3. For bundlers, ensure ESM support is enabled\n4. This package does NOT support CommonJS\n\n#### Performance Not as Expected\n\n**Problem**: Slower than expected performance\n\n**Solutions**:\n1. Enable SharedArrayBuffer for large files\n2. Adjust worker count based on CPU cores:\n   ```typescript\n   const optimalWorkers = Math.min(navigator.hardwareConcurrency, 8);\n   const pool = new Md5CalculatorPool(optimalWorkers);\n   ```\n3. Use appropriate chunk sizes:\n   - Small files (<1MB): Direct processing\n   - Medium files (1-50MB): 1MB chunks\n   - Large files (>50MB): 2-4MB chunks\n4. Process files in batches rather than individually\n\n### Debug Mode\n\nEnable detailed logging for troubleshooting:\n\n```typescript\n// Enable WASM logging\nconst calculator = new Md5Calculator();\ncalculator.set_log_enabled(true);\n\n// Monitor pool status\nconst pool = new Md5CalculatorPool(4);\nsetInterval(() => {\n  const status = pool.getPoolStatus();\n  console.log('Pool Status:', {\n    workers: status.totalWorkers,\n    active: status.activeTasks,\n    pending: status.pendingTasks,\n    memory: status.sharedMemoryUsage ? \n      `${(status.sharedMemoryUsage.used / 1024 / 1024).toFixed(2)}MB` : 'N/A',\n    fragmentation: status.sharedMemoryUsage ? \n      `${status.sharedMemoryUsage.fragmentation}` : 'N/A'\n  });\n}, 5000);\n```\n\n### Environment-Specific Notes\n\n#### Node.js\n- Requires Node.js 16+ with ES modules support\n- Add `\"type\": \"module\"` to package.json\n- Web Workers use `worker_threads` under the hood\n\n#### Deno\n- Use `npm:` specifier for imports\n- All features supported out of the box\n- No additional configuration required\n\n#### Browsers\n- Modern browsers (Chrome 68+, Firefox 79+, Safari 15.2+)\n- HTTPS required for SharedArrayBuffer\n- Check CSP policies for worker and WASM support\n## 🤝 Contributing\n\nWe welcome contributions! Please read our [Contributing Guide](docs/CONTRIBUTING.md) for detailed information on how to submit pull requests, report issues, and contribute to the project.\n\n### Quick Links\n- [Contributing Guidelines](docs/CONTRIBUTING.md) - Complete guide for contributors\n- [Issues](https://github.com/XueHua-s/rust-wasm-calculate-file-md5/issues) - Report bugs or request features\n- [Discussions](https://github.com/XueHua-s/rust-wasm-calculate-file-md5/discussions) - Ask questions and discuss ideas\n\n## 📄 License\n\nMIT License - see the [LICENSE](LICENSE) file for details.\n","readmeFilename":"README.md"}