{"_id":"sanitize-basename","_rev":"4-d4076363992c67b67cd1b836f088cd5a","name":"sanitize-basename","dist-tags":{"latest":"2.0.2"},"versions":{"1.0.0":{"name":"sanitize-basename","version":"1.0.0","keywords":["sanitize","file","name","basename","cross-platform","unix","windows"],"author":{"name":"Fabio Spampinato","email":"spampinabio@gmail.com"},"license":"MIT","_id":"sanitize-basename@1.0.0","maintainers":[{"name":"fabiospampinato","email":"spampinabio@gmail.com"}],"homepage":"https://github.com/fabiospampinato/sanitize-basename#readme","bugs":{"url":"https://github.com/fabiospampinato/sanitize-basename/issues"},"ava":{"files":["test/index.js"]},"dist":{"shasum":"2906926d1f1e58a7e8db29d7471e2589e86de777","tarball":"https://registry.npmjs.org/sanitize-basename/-/sanitize-basename-1.0.0.tgz","fileCount":17,"integrity":"sha512-foTmt+K48XW3+/L0ps45sCo1cMSiJzuxnA2kvGZAoZILYUL3GCBQWhvoHd0P4s02WdpQayhcZEeVMWBwn8I0WQ==","signatures":[{"sig":"MEQCIFba9kpiF/9MtRX0ySi/IVzvswyRQqspKLj9UYfgCFPQAiBhE2pgeWZVflalbPXFdfabE+CeW7a/YTl3zIFSEFlg1A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":10707,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdnmRMCRA9TVsSAnZWagAACI8P/22TkQCSoHx5N5JZ8+fO\n+HZhHRFtTzxNlDG0f5OuZDAvmx47Sdm11VQ3qXkc+/N3kQ79PekmU+UseLLP\nTkoIRXfyi23XCWEQ9QcKNUtgHl96ghJy8lloipM7ewBYyBQr+JuAoUiTu7bF\nqtlKuBzV2wyc9DrgKFd8I6K25ZS+zr0ViyJnSGdoXkRbRZVBhGAVS+N/WLVW\nFfql38SyOal/wUgmeeY+Bn8s+1IbkOrpghuRgxDwjlNpiOYWg0a4pHsHcUCA\njBivdZTsJ2ZmDe+abwtDxmyq6ofFSrwRzhniPW8bfvQprU7H7OtCS1xAQMCy\n54T3qZAGmwI2yDHR+KVGTqNGiC87n9iMWd7V4fCOw522lXMJYCxpkSXkSgIU\n2LaDEKuATeodp0tsPhQtd7KDkigcUurLrZ1wK+M/5ObDl/FFNwVKFT7URc01\nYRP0XAGmWodZ0HEV2d6b7D9APnAxIaQoM8vBqQQXXutFUtIEwEBrJeku0IS3\ns7KMv7bxl2g9bPY0O8m7MfMs8m8j/9+h0RRd6CT/culGdLwDWoLAUKuER/lt\nykEoUN/ed3YrIGy9VtY+6d9RJP4bjPVy5oRjEhW6y15yOLWJJyg8I9Qe/vb3\nt5g8DNZLX1fUgIsEFmraANTzbeun5aaAQAK1l+C9GjQo66IO8nMdI3mF/0Tk\n0588\r\n=Cul+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","types":"dist/index.d.ts","scripts":{"test":"ava","clean":"npm run clean:dist && npm run clean:coverage","report":"nyc report","compile":"tsc --skipLibCheck && tstei","coverage":"nyc --reporter=html ava","benchmark":"node tasks/benchmark.js","clean:dist":"rimraf dist","test:watch":"ava --watch","report:html":"open coverage/index.html","compile:watch":"tsc --skipLibCheck --watch","clean:coverage":"rimraf coverage .nyc_output","prepublishOnly":"npm run clean && npm run compile && npm run coverage"},"_npmUser":{"name":"fabiospampinato","email":"spampinabio@gmail.com"},"repository":{"url":"git+https://github.com/fabiospampinato/sanitize-basename.git","type":"git"},"_npmVersion":"6.4.1","description":"Sanitize a file name for cross-platform validity.","directories":{},"_nodeVersion":"8.4.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"ava":"^2.4.0","nyc":"^14.1.1","rimraf":"^3.0.0","ava-spec":"^1.1.1","benchloop":"^1.3.1","typescript":"^3.7.0-beta","@types/node":"^12.7.12","typescript-transform-export-interop":"^1.0.2"},"_npmOperationalInternal":{"tmp":"tmp/sanitize-basename_1.0.0_1570661452340_0.28701362608472647","host":"s3://npm-registry-packages"}},"2.0.0":{"name":"sanitize-basename","version":"2.0.0","keywords":["sanitize","file","name","basename","cross-platform","unix","windows"],"_id":"sanitize-basename@2.0.0","maintainers":[{"name":"fabiospampinato","email":"spampinabio@gmail.com"}],"homepage":"https://github.com/fabiospampinato/sanitize-basename#readme","bugs":{"url":"https://github.com/fabiospampinato/sanitize-basename/issues"},"dist":{"shasum":"94ce215635bf0571086ddd24c0909a7db0d25b75","tarball":"https://registry.npmjs.org/sanitize-basename/-/sanitize-basename-2.0.0.tgz","fileCount":17,"integrity":"sha512-5FcHFn9IBesGXyuDpq70jrv1AqYqe5Iqezy685ga9sppc0GO0pdzkUCFL+ngKD/3D9WB7VvSfXM78fJUZ7cQ1Q==","signatures":[{"sig":"MEUCIBdwive1ss78w99XCs8G3d5cbjJy2qx33W+vzqT5A2ncAiEA5z3dDHbNr46KhHW76HS2enUm8the386TGKrv2hsCmyQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":9236,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiTzB4ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpozw/8CRSd9Q8x6hQndk1kHnAv2YCH2ZSFLnDYYAyqEm6v2hfAShb4\r\nDdezeJmkm5sXBirBmPngm5Qon1LznFh1bMK8KVt3y0fwgeR/+jmRpZE5ZfxG\r\nttRNLQSj0BSmJ7WUKvYqUtS3EUD5bv1/LzQtAQTg6LjzhNMNLfRma773FWsj\r\nyXRyOcCyN8MkqE0ZJOZngjSNZtrIb+r/PcpmHKPsOXfvGZ5ktdoQxpijfRAR\r\nzsU0PTLU7f1dme4w6yeABflx9jf2PPP0lvYwGr2D4jIjarRPdQY26iJAAcfy\r\nPdyd/m9rjPnDA4SGNOVCgayQzm9uvjw8VL1u6HxSea+69SzVuMiXJ7sa3Vqy\r\noVOSFQDTP3vPjdMX4TkTCJWYTt/RJIsVGm25L5/8HV1/lkAu4kUqScPbUm3d\r\nAtND/nq0Z+3z9jEQBByqPg5zCJMLeZuX05KmiPYsViSk70beeqmM9yZwNMjP\r\nm1A4UV9UlDKjHkLTrDe8MwQF1BjCJakTuNlD7770g5SiTxZCtcNWF87aiKHt\r\npaZSvBkyiS6JuMuDFu38xMg+PsnlYuC7bU020tFTcW1o4YPGTqVieyJom5gA\r\nJwv8W/FlGCVLZzqsx6x4hLpizEAdNq8an3rILJzPRIFSszW6ofPraZcG9X2E\r\n88ZK2jX2J0Rs+JuGhqhRXN5Gf0x7ieu42vY=\r\n=RIto\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","exports":"./dist/index.js","gitHead":"d5beaf609e8c54001234b2614ebc01a37911db7c","scripts":{"test":"tsex test","clean":"tsex clean","compile":"tsex compile","benchmark":"tsex benchmark","test:watch":"tsex test --watch","compile:watch":"tsex compile --watch","prepublishOnly":"npm run clean && npm run compile && npm run test","benchmark:watch":"tsex benchmark --watch"},"_npmUser":{"name":"fabiospampinato","email":"spampinabio@gmail.com"},"repository":{"url":"git+https://github.com/fabiospampinato/sanitize-basename.git","type":"git"},"_npmVersion":"8.1.0","description":"Sanitize a file name for cross-platform validity.","directories":{},"_nodeVersion":"16.13.0","_hasShrinkwrap":false,"devDependencies":{"fava":"^0.0.6","tsex":"^1.1.0","benchloop":"^1.3.2","typescript":"^4.6.3"},"_npmOperationalInternal":{"tmp":"tmp/sanitize-basename_2.0.0_1649356919796_0.8139881221695591","host":"s3://npm-registry-packages"}},"2.0.1":{"name":"sanitize-basename","version":"2.0.1","keywords":["sanitize","file","name","basename","cross-platform","unix","windows"],"_id":"sanitize-basename@2.0.1","maintainers":[{"name":"fabiospampinato","email":"spampinabio@gmail.com"}],"homepage":"https://github.com/fabiospampinato/sanitize-basename#readme","bugs":{"url":"https://github.com/fabiospampinato/sanitize-basename/issues"},"dist":{"shasum":"473ae80233dd08c05c4f204d00cb762c0f5a6ae8","tarball":"https://registry.npmjs.org/sanitize-basename/-/sanitize-basename-2.0.1.tgz","fileCount":17,"integrity":"sha512-tYYNyk471JUWxruSgLxvRtYN0x4vklz+zwwzqS+zCsv5SeM5NUu9FnOVH6U9Xmtzf3a72XXxT1OpI4chC+sLRA==","signatures":[{"sig":"MEUCIQD4ILtKMt6W0LCZ64xjwso/Ov5HdUEjVv9+/7hM4wtVjQIgEJyM4t6j+oMbA4vHGJDMULIY+voFwPzM1cGn/cV4BQw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":9085},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","exports":"./dist/index.js","gitHead":"1b109ef5c0739743571169f0d62f324722fe9650","scripts":{"test":"tsex test","clean":"tsex clean","compile":"tsex compile","benchmark":"tsex benchmark","test:watch":"tsex test --watch","compile:watch":"tsex compile --watch","prepublishOnly":"tsex prepare","benchmark:watch":"tsex benchmark --watch"},"_npmUser":{"name":"fabiospampinato","email":"spampinabio@gmail.com"},"repository":{"url":"git+https://github.com/fabiospampinato/sanitize-basename.git","type":"git"},"_npmVersion":"10.2.3","description":"Sanitize a file name for cross-platform validity.","directories":{},"_nodeVersion":"18.19.0","_hasShrinkwrap":false,"devDependencies":{"fava":"^0.2.1","tsex":"^3.0.1","benchloop":"^2.1.1","typescript":"^5.1.6"},"_npmOperationalInternal":{"tmp":"tmp/sanitize-basename_2.0.1_1712272029781_0.4725286569703755","host":"s3://npm-registry-packages"}},"2.0.2":{"name":"sanitize-basename","repository":{"type":"git","url":"git+https://github.com/fabiospampinato/sanitize-basename.git"},"description":"Sanitize a file name for cross-platform validity.","license":"MIT","version":"2.0.2","type":"module","main":"dist/index.js","exports":"./dist/index.js","types":"./dist/index.d.ts","scripts":{"benchmark":"tsex benchmark","benchmark:watch":"tsex benchmark --watch","clean":"tsex clean","compile":"tsex compile","compile:watch":"tsex compile --watch","test":"tsex test","test:watch":"tsex test --watch","prepublishOnly":"tsex prepare"},"keywords":["sanitize","file","name","basename","cross-platform","unix","windows"],"devDependencies":{"benchloop":"^2.1.1","fava":"^0.3.4","tsex":"^4.0.2","typescript":"^5.7.3"},"_id":"sanitize-basename@2.0.2","gitHead":"aac16d7ee872112cc1f50764d2edaa5016270cff","bugs":{"url":"https://github.com/fabiospampinato/sanitize-basename/issues"},"homepage":"https://github.com/fabiospampinato/sanitize-basename#readme","_nodeVersion":"18.19.0","_npmVersion":"10.2.3","dist":{"integrity":"sha512-zaOQiK4PPsUQZ0Nx3KCrT9p0oEx1dTef14qflYq7TdxPRI2RY9faLYuExCiF8LiJdeKVYb5o/KdF0fGEvvEZUA==","shasum":"2408fd27a9a64ce6ce3399c36ece613454b62e43","tarball":"https://registry.npmjs.org/sanitize-basename/-/sanitize-basename-2.0.2.tgz","fileCount":9,"unpackedSize":5285,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC1EZPzwS5JSF1IHSu1eyiP4dZ39yfgRvkwlNsUVofQ3gIgZ3CT2icOGAKwLlmtejuYO50oLtJI+QHC2kUy7Ev07o0="}]},"_npmUser":{"name":"fabiospampinato","email":"spampinabio@gmail.com"},"directories":{},"maintainers":[{"name":"fabiospampinato","email":"spampinabio@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/sanitize-basename_2.0.2_1737138967128_0.6568249724630535"},"_hasShrinkwrap":false}},"time":{"created":"2019-10-09T22:50:52.339Z","modified":"2025-01-17T18:36:07.590Z","1.0.0":"2019-10-09T22:50:52.463Z","2.0.0":"2022-04-07T18:41:59.984Z","2.0.1":"2024-04-04T23:07:09.913Z","2.0.2":"2025-01-17T18:36:07.399Z"},"bugs":{"url":"https://github.com/fabiospampinato/sanitize-basename/issues"},"homepage":"https://github.com/fabiospampinato/sanitize-basename#readme","keywords":["sanitize","file","name","basename","cross-platform","unix","windows"],"repository":{"type":"git","url":"git+https://github.com/fabiospampinato/sanitize-basename.git"},"description":"Sanitize a file name for cross-platform validity.","maintainers":[{"name":"fabiospampinato","email":"spampinabio@gmail.com"}],"readme":"# Sanitize Basename\n\nSanitize a file name for cross-platform validity.\n\nInstead of stripping out forbidden characters, like other libraries do, this library tries to replace them with similar-looking characters, trying to mainting maximum fidelity while still outputting valid file names for all platforms.\n\n## Install\n\n```sh\nnpm install sanitize-basename\n```\n\n## Usage\n\n```ts\nimport sanitize from 'sanitize-basename';\n\n// Let's sanitize some file names\n\nsanitize ( '../foo' ); // => 'foo'\nsanitize ( '<>:\"/\\\\|?*.txt' ); // => '‹›꞉ˮ⁄∖ǀʔ⁎.txt'\nsanitize ( 'aaaaaaaaaaaaaaaaa.txt', { maxLength: 10 } ); // => aaaaaa.txt\n```\n\n## Related\n\n- [`unsanitize-basename`](https://github.com/fabiospampinato/unsanitize-basename): Unsanitize a file name, the inverse of this library.\n\n## License\n\nMIT © Fabio Spampinato\n","readmeFilename":"readme.md","license":"MIT"}