{"version":3,"sources":["../../../src/vanilla/normalizeText.ts"],"sourcesContent":["// @flow\n\n// biome-ignore lint/suspicious/noMisleadingCharacterClass: <explanation>\nconst diacriticsRegex = /[\\u0300-\\u036f]/g;\nconst regexŁ = /ł/g;\nconst regexÑ = /ñ/g;\n\n/**\n * Normalizes text so that it's suitable to comparisons, sorting, search, etc. by:\n * - turning into lowercase\n * - removing diacritics\n * - removing extra whitespace\n */\nexport default function normalizeText(string: string): string {\n\treturn (\n\t\tstring\n\t\t\t.toLowerCase()\n\t\t\t// get rid of diacritics\n\t\t\t// https://stackoverflow.com/questions/990904/remove-accents-diacritics-in-a-string-in-javascript\n\t\t\t// yeah, it's not perfect, but 97% is good enough and it doesn't seem worth it to add in a whole\n\t\t\t// library for this\n\t\t\t.normalize(\"NFD\")\n\t\t\t.replace(diacriticsRegex, \"\")\n\t\t\t// fix letters that unicode considers separate, not letters with diacritics\n\t\t\t.replace(regexŁ, \"l\")\n\t\t\t.replace(regexÑ, \"n\")\n\t\t\t.trim()\n\t);\n}\n"],"mappings":";AAGA,IAAM,kBAAkB;AACxB,IAAM,cAAS;AACf,IAAM,cAAS;AAQA,SAAR,cAA+B,QAAwB;AAC7D,SACC,OACE,YAAY,EAKZ,UAAU,KAAK,EACf,QAAQ,iBAAiB,EAAE,EAE3B,QAAQ,aAAQ,GAAG,EACnB,QAAQ,aAAQ,GAAG,EACnB,KAAK;AAET;","names":[]}