{"_id":"unicode-case-folding","_rev":"4-ec068dce547a86a01ed12f069faf115c","name":"unicode-case-folding","dist-tags":{"latest":"1.1.1"},"versions":{"1.0.0":{"name":"unicode-case-folding","version":"1.0.0","keywords":["unicode","case-folding","internationalization","i18n","string","case-insensitive"],"author":{"name":"Aviv Keller","email":"me@aviv.sh"},"license":"MIT","_id":"unicode-case-folding@1.0.0","maintainers":[{"name":"redyetidev","email":"redyetidev@gmail.com"}],"homepage":"https://github.com/avivkeller/unicode-case-folding#readme","bugs":{"url":"https://github.com/avivkeller/unicode-case-folding/issues"},"dist":{"shasum":"9254511fd2abf2ebb94a7ed76956e80adfd7b108","tarball":"https://registry.npmjs.org/unicode-case-folding/-/unicode-case-folding-1.0.0.tgz","fileCount":4,"integrity":"sha512-NaGII+zwxOyesXgP4G00FsVze2sMYGPRM1lqNSPQdbqiLE8kyfPDJe1WCWHTtiGx7NznDe+hfcYdJvOHTqZImQ==","signatures":[{"sig":"MEUCIQC6ppVZsaqAHT7SIIlVljHmE0bN+21rPGdwGgh/F1TdjgIgP2Tp2x9oruOSxORrcNoNm9xHbn98/c+nzCeyj1MEf2s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":41172},"main":"lib.js","type":"module","scripts":{"test":"node --test","build":"node src/build.js"},"_npmUser":{"name":"redyetidev","email":"redyetidev@gmail.com"},"repository":{"url":"git+https://github.com/avivkeller/unicode-case-folding.git","type":"git"},"_npmVersion":"10.9.2","description":"Unicode case folding utilities based on the official Unicode Character Database","directories":{},"_nodeVersion":"22.15.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/unicode-case-folding_1.0.0_1747836271061_0.5183608366947519","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"unicode-case-folding","version":"1.1.0","keywords":["unicode","case-folding","internationalization","i18n","string","case-insensitive"],"author":{"name":"Aviv Keller","email":"me@aviv.sh"},"license":"MIT","_id":"unicode-case-folding@1.1.0","maintainers":[{"name":"redyetidev","email":"me@aviv.sh"}],"homepage":"https://github.com/avivkeller/unicode-case-folding#readme","bugs":{"url":"https://github.com/avivkeller/unicode-case-folding/issues"},"dist":{"shasum":"1ca2a5bcc0a851f27b6d745906505e8dc74f8aa1","tarball":"https://registry.npmjs.org/unicode-case-folding/-/unicode-case-folding-1.1.0.tgz","fileCount":5,"integrity":"sha512-5a1CoA7c1kNrONiWezBUFqZxCpR8XOqWUe5NKLRFPYs9DiJTQZKo6awR+eQ3ie1S7hOfuao3jZhmQP9jCIw6mg==","signatures":[{"sig":"MEYCIQCwtscAKZke6lP1X2b2ZAd/MSOU3//qJ0EWYR/lACMZhQIhAOoykGkBzHxOAiQdEQq2jxshU8I8wWnGATzq1pThxnP7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":29048},"main":"index.js","type":"module","types":"types.d.ts","gitHead":"adbd475a176c5a5c207b2932a541a694a76e1e3b","scripts":{"lint":"eslint .","test":"node --test","build":"node src/build.js","format":"prettier --write .","lint:fix":"eslint .","format:check":"prettier --check ."},"_npmUser":{"name":"redyetidev","email":"me@aviv.sh"},"repository":{"url":"git+https://github.com/avivkeller/unicode-case-folding.git","type":"git"},"_npmVersion":"10.9.2","description":"Unicode case folding utilities based on the official Unicode Character Database","directories":{},"_nodeVersion":"22.15.0","_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.33.0","globals":"^16.3.0","prettier":"^3.6.2","@eslint/js":"^9.33.0"},"_npmOperationalInternal":{"tmp":"tmp/unicode-case-folding_1.1.0_1755623730674_0.16434656992476415","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"unicode-case-folding","version":"1.1.1","keywords":["unicode","case-folding","internationalization","i18n","string","case-insensitive"],"author":{"name":"Aviv Keller","email":"me@aviv.sh"},"license":"MIT","_id":"unicode-case-folding@1.1.1","maintainers":[{"name":"redyetidev","email":"me@aviv.sh"}],"homepage":"https://github.com/avivkeller/unicode-case-folding#readme","bugs":{"url":"https://github.com/avivkeller/unicode-case-folding/issues"},"dist":{"shasum":"644d22adc0eb8ff806d6e34640f2ce6241853fcd","tarball":"https://registry.npmjs.org/unicode-case-folding/-/unicode-case-folding-1.1.1.tgz","fileCount":5,"integrity":"sha512-ZAYziAnMTBisO2dT5tyGvBFMNsIfonOS/BZTd3UZaKWtXMOZqK8s8HRUCrlKxGCTeCxCuCjS/6HW+4a6G+rbzw==","signatures":[{"sig":"MEYCIQDXD0ErfLvmWM38pWdXvx9FWPdLoQxATArEgP0VN+a6XgIhAOvsZzJNtRdPZr7XZBB/PJ7NIgdB1MhMCYMwaQl/ELpW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/unicode-case-folding@1.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":29496},"main":"index.js","type":"module","types":"types.d.ts","gitHead":"45e84627656574f1a9a81d1293115f0e2fdfcead","scripts":{"lint":"eslint .","test":"node --test","build":"node src/build.js","format":"prettier --write .","lint:fix":"eslint .","format:check":"prettier --check ."},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:d53729fc-e992-46ea-b1fa-e6505743df36"}},"repository":{"url":"git+https://github.com/avivkeller/unicode-case-folding.git","type":"git"},"_npmVersion":"11.6.1","description":"Unicode case folding utilities based on the official Unicode Character Database","directories":{},"_nodeVersion":"22.19.0","_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.33.0","globals":"^16.3.0","prettier":"^3.6.2","@eslint/js":"^9.33.0"},"_npmOperationalInternal":{"tmp":"tmp/unicode-case-folding_1.1.1_1759343912641_0.4647671817562906","host":"s3://npm-registry-packages-npm-production"}}},"time":{"created":"2025-05-21T14:04:31.061Z","modified":"2026-01-12T20:29:19.688Z","1.0.0":"2025-05-21T14:04:31.265Z","1.1.0":"2025-08-19T17:15:30.844Z","1.1.1":"2025-10-01T18:38:32.834Z"},"bugs":{"url":"https://github.com/avivkeller/unicode-case-folding/issues"},"author":{"name":"Aviv Keller","email":"me@aviv.sh"},"license":"MIT","homepage":"https://github.com/avivkeller/unicode-case-folding#readme","keywords":["unicode","case-folding","internationalization","i18n","string","case-insensitive"],"repository":{"url":"git+https://github.com/avivkeller/unicode-case-folding.git","type":"git"},"description":"Unicode case folding utilities based on the official Unicode Character Database","maintainers":[{"email":"me@aviv.sh","name":"avivkeller"}],"readme":"# unicode-case-folding\n\nA JavaScript library for Unicode case folding based on the official Unicode Character Database.\n\n## What is Case Folding?\n\nCase folding is the process of removing case distinctions in a string. It's similar to case conversion but specifically designed for case-insensitive comparisons rather than display.\n\nUnlike simple case conversion, Unicode case folding follows specific rules defined in the Unicode standard to ensure proper internationalized case-insensitive comparisons.\n\n## Installation\n\n```bash\nnpm install unicode-case-folding\n```\n\n## Usage\n\n```javascript\nimport { caseFold, caseFoldEquals } from \"unicode-case-folding\";\n\n// Basic case folding\nconst folded = caseFold(\"Hello World\");\nconsole.log(folded); // \"hello world\"\n\n// Case-insensitive comparison\nconsole.log(caseFoldEquals(\"HELLO\", \"hello\")); // true\nconsole.log(caseFoldEquals(\"ẞ\", \"ss\")); // true (German sharp S)\nconsole.log(caseFoldEquals(\"Straße\", \"strasse\")); // true\n\n// Special case foldings\nconsole.log(caseFold(\"ẞ\")); // \"ss\" (German sharp S folds to \"ss\")\n```\n\n## API\n\n### caseFold(string)\n\nApplies Unicode case folding to the input string.\n\n- **Parameters:** `string` - The string to case fold\n- **Returns:** The case-folded string\n\n### caseFoldEquals(string1, string2)\n\nCompares two strings for equality using Unicode case folding.\n\n- **Parameters:**\n  - `string1` - First string to compare\n  - `string2` - Second string to compare\n- **Returns:** `true` if the strings are case-fold equivalent, `false` otherwise\n\n### lookupFolding(codePoint)\n\nReturns the case folding mapping for a specific code point.\n\n- **Parameters:** `codePoint` - Unicode code point as a number\n- **Returns:** Array of code points this character folds to, or undefined if no folding exists\n\n## License\n\nMIT\n","readmeFilename":"README.md"}