New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

confusables

Package Overview
Dependencies
Maintainers
1
Versions
20
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

confusables - npm Package Compare versions

Comparing version 0.0.3 to 0.0.4

2

dist/index.js

@@ -1,2 +0,2 @@

for(var u=[{base:" ",alts:" "},{base:"1",alts:"¹"},{base:"2",alts:"ƻ²ᒿ"},{base:"3",alts:"³"},{base:"4",alts:"ҶҷҸҹӴӵᶣ"},{base:"6",alts:"Ϭϭб"},{base:"A",alts:"дǺᗅAⒶAΑᾋᗩĂÃÅǍȀȂĀȺĄʌΛλƛᴀᴬДАልÄₐᕱªǞӒΆẠẢẦẨẬẮẰẲẴẶᾸᾹᾺΆᾼᾈᾉᾊᾌᾍᾎᾏἈἉἊἋἌἍἎἏḀȦǠӐÀÁÂẤẪ"},{base:"a",alts:"ⓐaæձǟᵃᶏ⒜аɒaαȃȁคǎმäɑāɐąᾄẚạảǡầẵḁȧӑӓãåάὰάăẩằẳặᾀᾁᾂᾃᾅᾆᾰᾱᾲᾳᾴᶐᾶᾷἀἁἂἃἄἅἆἇᾇậắàáâấẫǻⱥ"},{base:"B",alts:"BⒷBвϐᗷƁ乃ßცჩ๖βɮБՅ๒ᙖʙᴮᵇጌḄℬΒВẞḂḆɃദᗹᗸᵝᙞᙟᙝ"},{base:"b",alts:"bbⓑḃḅҍъḇƃɓƅᖯƄЬᑲþƂ⒝Ъᶀᑿᒀᒂᒁᑾь"},{base:"C",alts:"ČÇCⒸCↃƇᑕㄈ¢८↻ĈϾՇȻᙅᶜ⒞ĆҀĊ©टƆℂℭϹС匚ḈҪʗᑖᑡᑢᑣᑤᑥ"},{base:"c",alts:"ĉcⓒćčcċçҁƈḉȼↄсርᴄϲҫ꒝ςɽϛᑦ᧚"},{base:"D",alts:"ⒹDƉᗪƊ�ÐԺᴅᴰↁḊĐÞⅮᗞᑯĎḌḐḒḎᗫᗬᗟᗠᶛ"},{base:"d",alts:"ⓓdḋďḍḑḓḏđƌɖɗᵈ⒟ԁⅾᶁԀᑺᑻᑼᑽᒄᑰᑱᶑ"},{base:"E",alts:"EⒺΈEƎἝᕮƐモЄ£ΞȝᙓΣᴇᴱᵉ⒠É乇ﻉэቿЁɆꂅ€ÈℰΕЕⴹᎬĒĔĖĘĚÊËԐỀẾỄỂẼḔḖẺȄȆẸỆȨḜḘḚἘἙἚἛἜῈΈӖὲέЀϵ"},{base:"e",alts:"Ҿҿⓔeeèᧉéᶒêɘἔềếễ૯ǝєεēҽɛểẽḕḗĕėëẻěȅȇẹệȩɇₑęḝḙḛ℮еԑѐӗᥱёἐἑἒἓἕℯ"},{base:"F",alts:"FⒻFғҒᖴƑԲϝिቻḞℱϜ"},{base:"f",alts:"ⓕffƒḟʃբᶠ⒡ſꊰʄ∱ᶂ"},{base:"G",alts:"GⒼGɢƓʛĢᘜᴳǴĠԌĜḠĞǦǤԍ"},{base:"g",alts:"ⓖgǵgĝḡğġǧģց૭ǥɠﻭﻮᵍ⒢ℊɡᧁ"},{base:"H",alts:"ⒽHĤᚺḢḦȞḤḨḪĦⱧҢңҤῊΉῌἨἩἪἫἭἮἯᾘᾙᾚᾛᾜᾝᾞᾟӉӈҥΉ"},{base:"h",alts:"ⓗhĥḣḧȟḥḩḫẖħⱨհһከኩኪካᑋ"},{base:"I",alts:"ⒾI៸ÌÍÎĨĪĬİÏḮỈǏȈȊỊĮḬƗェエῘῙῚΊἸἹἺἻἼἽἾⅠΪΊɪᶦᑊᥣ"},{base:"i",alts:"ⓘiìíîĩīĭïḯỉǐȉȋịḭῐῑῒΐῖῗἰἱἲⅰⅼ∣ⵏ│׀ا١۱ߊᛁἳἴἵɨіὶίᶖ"},{base:"J",alts:"JⒿJЈʝᒍנフĴʆวلյʖᴊᴶﻝጋɈⱼՂๅႱįᎫȷ丿ℐℑᒘᒙᒚᒛᒴᒵᒎᒏ"},{base:"j",alts:"jⓙjϳʲ⒥ɉĵǰјᶨ"},{base:"K",alts:"KⓀKĸḰќƘкҠκқҟӄʞҚКҡᴋᴷᵏ⒦ᛕЌጕḲΚKҜҝҞĶḴǨⱩϗӃ"},{base:"k",alts:"ⓚkḱkǩḳķḵƙⱪᶄ"},{base:"L",alts:"LⓁւLĿᒪ乚ՆʟꓶιԼᴸˡĹረḶₗΓլĻᄂⅬℒⱢᥧᥨᒻᒶᒷᶫﺎᒺᒹᒸᒫ"},{base:"l",alts:"ⓛlŀĺľḷlḹļӀℓḽḻłレɭƚɫⱡ|Ɩ⒧ʅǀ1וןΙІ|ᶩӏ"},{base:"M",alts:"MmⓂMмṂ൱ᗰ州ᘻო๓♏ʍᙏᴍᴹᵐ⒨ḾМṀ௱ⅯℳΜϺƜᛖӍӎ"},{base:"m",alts:"ⓜmനᙢ൩ḿṁⅿϻṃጠɱɯ៳ᶆ"},{base:"N",alts:"ЙЍⓃҋ៷NᴎɴƝᑎ几иՈռИהЛπᴺᶰŃ刀ክṄⁿÑПΝᴨոϖǸŇṆŅṊṈทŊӢӣӤӥћѝйᥢҊᴻ"},{base:"n",alts:"ᥒⓝήnǹᴒńñᾗηṅňṇɲņṋṉղຖՌƞŋ⒩ภกɳпʼnлԉȠἠἡῃդᾐᾑᾒᾓᾔᾕᾖῄῆῇῂἢἣἤἥἦἧὴήበቡቢባቤብቦȵ"},{base:"O",alts:"ѲϴѺӦӨӪΌʘǑÒŎÓÔÕȌȎOㇿ❍ⓄOὋロ❤૦⊕ØФԾΘƠᴼᵒ⒪ŐÖₒ¤◊Φ0〇ΟОՕଠഠ௦סỒỐỖỔṌȬṎŌṐṒȮȰȪỎỜỚỠỞỢỌỘǪǬǾƟⵔ߀៰⍜⎔⎕⦰⦱⦲⦳⦴⦵⦶⦷⦸⦹⦺⦻⦼⦽⦾⦿⧀⧁⧂⧃ὈὉὊὌὍ"},{base:"o",alts:"ᐤⓞѳ᧐ᥲoఠᦞՓԚòөӧóºōôǒȏoŏồốȍỗổõσṍȭṏὄṑṓȯȫ๏ంᴏಂംőöѻоዐǭȱ০୦٥౦೦൦๐໐οօᴑං०੦ỏơờớỡởợọộǫøǿɵծὀὁόὸόὂὃὅ"},{base:"P",alts:"ⓅPƤᑭ尸Ṗրφքᴘᴾᵖ⒫ṔアקРየᴩⱣℙΡῬᑸᑶᑷᑹᑬᑮ"},{base:"p",alts:"ⓟpṕṗƥᵽῥρрƿǷῤ⍴𝓹𝓅"},{base:"Q",alts:"QⓆQℚⵕ"},{base:"q",alts:"ⓠqqգ⒬۹զᑫɋɊԛ"},{base:"R",alts:"RⓇRᴙȒʀᖇя尺ŔЯરƦᴿዪṚɌᵣʁℛℜℝṘŘȐṜŖṞⱤ"},{base:"r",alts:"ⓡrŕrṙřȑȓṛṝŗгՐɾᥬṟɍʳ⒭ɼѓᴦᶉ"},{base:"S",alts:"SⓈSṨŞֆՏȘˢ⒮ЅṠ§ŠƽŚṤŜṦṢടᔕᔖᔢᔡᔣᔤ"},{base:"s",alts:"ⓢsśsṥŝṡšṧʂṣṩѕşșȿᶊక"},{base:"T",alts:"TⓉTтҬҭƬイŦԵτᴛᵀイГፕϮŤ⊥ƮΤТ下ṪṬȚŢṰṮ丅丁ᐪ"},{base:"t",alts:"ⓣtṫtẗťṭțȶ੮էʇ†ţṱṯƭŧᵗ⒯ʈեƫ"},{base:"U",alts:"ŨŬŮᑗᑘǓǕǗǙⓊUȖᑌ凵ƱմԱꓵЦŪՄƲᙀᵁᵘ⒰ŰપÜՍÙÚÛṸṺǛỦȔƯỪỨỮỬỰỤṲŲṶṴɄᥩᑧ"},{base:"u",alts:"ὺύⓤuùũūừṷṹŭǖữᥙǚǜὗυΰนUuսʊǘǔúůᴜűųยûṻцሁüᵾᵤµʋủȕȗưứửựụṳṵʉῠῡῢΰῦῧὐὑϋύὒὓὔὕὖᥔ"},{base:"V",alts:"VⓋVᐯѴᵛ⒱۷ṾⅴⅤṼ٧ⴸѶᐺᐻ"},{base:"v",alts:"ⓥvvṽṿ౮งѵעᴠνטᵥѷ៴ᘁ"},{base:"W",alts:"WⓌwWẂᾧᗯᥕ山ѠຟచաЩШώщฬшᙎᵂʷ⒲ฝሠẄԜẀŴẆẈധᘺѿᙡ"},{base:"w",alts:"ẁẃⓦ⍵ŵẇẅẘẉⱳὼὠὡὢὣωὤὥὦὧῲῳῴῶῷⱲѡԝᴡώᾠᾡᾢᾣᾤᾥᾦ"},{base:"X",alts:"XⓍXẊ᙭χㄨӾჯӼҳЖΧҲᵡˣ⒳אሸẌꊼⅩХ╳᙮ᕁᕽⅹᚷⵝ"},{base:"x",alts:"ⓧxxхẋ×ₓ⤫⤬⨯ẍᶍӽ"},{base:"Y",alts:"YⓎYὛƳㄚӋʏ⅄ϔ¥¥ՎϓγץӲЧЎሃŸɎϤΥϒҮỲÝŶỸȲẎỶỴῨῩῪΎὙὝὟΫΎӮӰҰұ"},{base:"y",alts:"ⓨyỳýyŷỹȳẏÿỷуყẙỵƴɏᵞɣʸᶌү⒴ӳӱӯў"},{base:"Z",alts:"ZⓏZẔƵ乙ẐȤᶻ⒵ŹℤΖŻŽẒⱫ"},{base:"z",alts:"ⓩzźẑżzžẓẕƶȥɀᴢጊʐⱬᶎʑᙆ"}],D=/([\0-\u02FF\u0370-\u1AAF\u1B00-\u1DBF\u1E00-\u20CF\u2100-\uD7FF\uE000-\uFE1F\uFE30-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])([\u0300-\u036F\u1AB0-\u1AFF\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]+)/g,F=/[\0-\x08\x0E-\x1F\x7F-\x84\x86-\x9F\u0300-\u034E\u0350-\u035B\u0363-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u061C\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08D4-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B62\u0B63\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0C00-\u0C03\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0D01-\u0D03\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D82\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DF2\u0DF3\u0F18\u0F19\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F7E\u0F80-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u180B-\u180D\u1885\u1886\u18A9\u1920-\u192B\u1930-\u193B\u1A17-\u1A1B\u1A7F\u1AB0-\u1ABE\u1B00-\u1B04\u1B34-\u1B44\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BE6-\u1BF3\u1C24-\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF2-\u1CF4\u1CF8\u1CF9\u1DC0-\u1DF5\u1DFB-\u1DFF\u200C\u200E\u200F\u202A-\u202E\u2066-\u206F\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3035\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA880\uA881\uA8B4-\uA8C5\uA8E0-\uA8F1\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFFF9-\uFFFB]|\uD800[\uDDFD\uDEE0\uDF76-\uDF7A]|\uD802[\uDE01-\uDE03\uDE05\uDE06\uDE0C-\uDE0F\uDE38-\uDE3A\uDE3F\uDEE5\uDEE6]|\uD804[\uDC00-\uDC02\uDC38-\uDC46\uDC7F-\uDC82\uDCB0-\uDCBA\uDD00-\uDD02\uDD27-\uDD34\uDD73\uDD80-\uDD82\uDDB3-\uDDC0\uDDCA-\uDDCC\uDE2C-\uDE37\uDE3E\uDEDF-\uDEEA\uDF00-\uDF03\uDF3C\uDF3E-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF57\uDF62\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC35-\uDC46\uDCB0-\uDCC3\uDDAF-\uDDB5\uDDB8-\uDDC0\uDDDC\uDDDD\uDE30-\uDE40\uDEAB-\uDEB7]|\uD807[\uDC2F-\uDC36\uDC38-\uDC3F\uDC92-\uDCA7\uDCA9-\uDCB6]|\uD81A[\uDEF0-\uDEF4\uDF30-\uDF36]|\uD81B[\uDF51-\uDF7E\uDF8F-\uDF92]|\uD82F[\uDC9D\uDC9E\uDCA0-\uDCA3]|\uD834[\uDD65-\uDD69\uDD6D-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDCD0-\uDCD6\uDD44-\uDD4A]|\uDB40[\uDC01\uDC20-\uDC7F\uDD00-\uDDEF]/g,a={},C={},s=0;s<u.length;s++){var A=u[s],E=A.alts,B=A.base;C[B]=E;for(var e=0,t=E;e<t.length;e+=1)a[t[e]]=B}exports.characters=u,exports.stripCombiningMarks=function(u){return u.replace(F,"").replace(D,"$1")},exports.diacriticsMap=a,exports.alphabetMap=C,exports.remove=function(u){for(var D="",F=0,C=u;F<C.length;F+=1){var s=C[F];D+=a[s.toLowerCase()]||a[s.toUpperCase()]||s}return D},exports.obfuscate=function(u){for(var D="",F=0;F<u.length;F++){var a=u.charAt(F),s=C[a];D+=s?s[Math.floor(Math.random()*s.length)]:a}return D};
var u=[{base:" ",alts:" "},{base:"1",alts:"¹"},{base:"2",alts:"ƻ²ᒿ"},{base:"3",alts:"³"},{base:"4",alts:"ҶҷҸҹӴӵᶣ"},{base:"6",alts:"Ϭϭб"},{base:"ae",alts:"æ"},{base:"OE",alts:"Œ"},{base:"oe",alts:"œ"},{base:"A",alts:"дǺᗅⒶAΑᾋᗩĂÃÅǍȀȂĀȺĄʌΛλƛᴀᴬДАልÄₐᕱªǞӒΆẠẢẦẨẬẮẰẲẴẶᾸᾹᾺΆᾼᾈᾉᾊᾌᾍᾎᾏἈἉἊἋἌἍἎἏḀȦǠӐÀÁÂẤẪ"},{base:"a",alts:"ⓐձǟᵃᶏ⒜аɒaαȃȁคǎმäɑāɐąᾄẚạảǡầẵḁȧӑӓãåάὰάăẩằẳặᾀᾁᾂᾃᾅᾆᾰᾱᾲᾳᾴᶐᾶᾷἀἁἂἃἄἅἆἇᾇậắàáâấẫǻⱥ"},{base:"B",alts:"ⒷBвϐᗷƁ乃ßცჩ๖βɮБՅ๒ᙖʙᴮᵇጌḄℬΒВẞḂḆɃദᗹᗸᵝᙞᙟᙝ"},{base:"b",alts:"bⓑḃḅҍъḇƃɓƅᖯƄЬᑲþƂ⒝Ъᶀᑿᒀᒂᒁᑾь"},{base:"C",alts:"ČÇⒸCↃƇᑕㄈ¢८↻ĈϾՇȻᙅᶜ⒞ĆҀĊ©टƆℂℭϹС匚ḈҪʗᑖᑡᑢᑣᑤᑥ"},{base:"c",alts:"ĉcⓒćčċçҁƈḉȼↄсርᴄϲҫ꒝ςɽϛᑦ᧚"},{base:"D",alts:"ⒹDƉᗪƊÐԺᴅᴰↁḊĐÞⅮᗞᑯĎḌḐḒḎᗫᗬᗟᗠᶛ"},{base:"d",alts:"ⓓdḋďḍḑḓḏđƌɖɗᵈ⒟ԁⅾᶁԀᑺᑻᑼᑽᒄᑰᑱᶑ"},{base:"E",alts:"ⒺΈEƎἝᕮƐモЄᴇᴱᵉÉ乇ЁɆꂅ€ÈℰΕЕⴹᎬĒĔĖĘĚÊËԐỀẾỄỂẼḔḖẺȄȆẸỆȨḜḘḚἘἙἚἛἜῈΈӖὲέЀϵ"},{base:"e",alts:"Ҿҿⓔe⒠èᧉéᶒêɘἔềếễ૯ǝєεēҽɛểẽḕḗĕėëẻěȅȇẹệȩɇₑęḝḙḛ℮еԑѐӗᥱёἐἑἒἓἕℯ"},{base:"F",alts:"ⒻFғҒᖴƑԲϝिቻḞℱϜ"},{base:"f",alts:"ⓕfƒḟʃբᶠ⒡ſꊰʄ∱ᶂ"},{base:"G",alts:"ⒼGɢƓʛĢᘜᴳǴĠԌĜḠĞǦǤԍ"},{base:"g",alts:"ⓖgǵĝḡğġǧģց૭ǥɠﻭﻮᵍ⒢ℊɡᧁ"},{base:"H",alts:"ⒽHĤᚺḢḦȞḤḨḪĦⱧҢңҤῊΉῌἨἩἪἫἭἮἯᾘᾙᾚᾛᾜᾝᾞᾟӉӈҥΉ"},{base:"h",alts:"ⓗhĥḣḧȟḥḩḫẖħⱨհһከኩኪካᑋ"},{base:"I",alts:"ⒾI៸ÌÍÎĨĪĬİÏḮỈǏȈȊỊĮḬƗェエῘῙῚΊἸἹἺἻἼἽἾⅠΪΊɪᶦᑊᥣ"},{base:"i",alts:"ⓘiìíîĩīĭïḯỉǐȉȋịḭῐῑῒΐῖῗἰἱἲⅰⅼ∣ⵏ│׀ا١۱ߊᛁἳἴἵɨіὶίᶖ"},{base:"J",alts:"ⒿJЈʝᒍנフĴʆวلյʖᴊᴶﻝጋɈⱼՂๅႱįᎫȷ丿ℐℑᒘᒙᒚᒛᒴᒵᒎᒏ"},{base:"j",alts:"ⓙjϳʲ⒥ɉĵǰјᶨ"},{base:"K",alts:"ⓀKĸḰќƘкҠκқҟӄʞҚКҡᴋᴷᵏ⒦ᛕЌጕḲΚKҜҝҞĶḴǨⱩϗӃ"},{base:"k",alts:"ⓚkḱǩḳķḵƙⱪᶄ"},{base:"L",alts:"ⓁւLĿᒪ乚ՆʟꓶιԼᴸˡĹረḶₗΓլĻᄂⅬℒⱢᥧᥨᒻᒶᒷᶫﺎᒺᒹᒸᒫ"},{base:"l",alts:"ⓛlŀĺľḷḹļӀℓḽḻłレɭƚɫⱡ|Ɩ⒧ʅǀ1וןΙІ|ᶩӏ"},{base:"M",alts:"ⓂMмṂ൱ᗰ州ᘻო๓♏ʍᙏᴍᴹᵐ⒨ḾМṀ௱ⅯℳΜϺƜᛖӍӎ"},{base:"m",alts:"ⓜmനᙢ൩ḿṁⅿϻṃጠɱɯ៳ᶆ"},{base:"N",alts:"ЙЍⓃҋ៷NᴎɴƝᑎ几иՈռИהЛπᴺᶰŃ刀ክṄⁿÑПΝᴨոϖǸŇṆŅṊṈทŊӢӣӤӥћѝйᥢҊᴻ"},{base:"n",alts:"ᥒⓝήnǹᴒńñᾗηṅňṇɲņṋṉղຖՌƞŋ⒩ภกɳпʼnлԉȠἠἡῃդᾐᾑᾒᾓᾔᾕᾖῄῆῇῂἢἣἤἥἦἧὴήበቡቢባቤብቦȵ"},{base:"O",alts:"ѲϴѺӦӨӪΌʘǑÒŎÓÔÕȌȎㇿ❍ⓄOὋロ❤૦⊕ØФԾΘƠᴼᵒ⒪ŐÖₒ¤◊Φ0〇ΟОՕଠഠ௦סỒỐỖỔṌȬṎŌṐṒȮȰȪỎỜỚỠỞỢỌỘǪǬǾƟⵔ߀៰⍜⎔⎕⦰⦱⦲⦳⦴⦵⦶⦷⦸⦹⦺⦻⦼⦽⦾⦿⧀⧁⧂⧃ὈὉὊὌὍ"},{base:"o",alts:"ᐤⓞѳ᧐ᥲoఠᦞՓԚòөӧóºōôǒȏŏồốȍỗổõσṍȭṏὄṑṓȯȫ๏ంᴏಂംőöѻоዐǭȱ০୦٥౦೦൦๐໐οօᴑං०੦ỏơờớỡởợọộǫøǿɵծὀὁόὸόὂὃὅ"},{base:"P",alts:"ⓅPƤᑭ尸Ṗրφքᴘᴾᵖ⒫ṔアקРየᴩⱣℙΡῬᑸᑶᑷᑹᑬᑮ"},{base:"p",alts:"ⓟpṕṗƥᵽῥρрƿǷῤ⍴𝓹𝓅"},{base:"Q",alts:"ⓆQℚⵕ"},{base:"q",alts:"ⓠqգ⒬۹զᑫɋɊԛ"},{base:"R",alts:"ⓇRᴙȒʀᖇя尺ŔЯરƦᴿዪṚɌᵣʁℛℜℝṘŘȐṜŖṞⱤ"},{base:"r",alts:"ⓡrŕṙřȑȓṛṝŗгՐɾᥬṟɍʳ⒭ɼѓᴦᶉ"},{base:"S",alts:"ⓈSṨŞֆՏȘˢ⒮ЅṠ§ŠƽŚṤŜṦṢടᔕᔖᔢᔡᔣᔤ"},{base:"s",alts:"ⓢsśṥŝṡšṧʂṣṩѕşșȿᶊక"},{base:"T",alts:"ⓉTтҬҭƬイŦԵτᴛᵀイГፕϮŤ⊥ƮΤТ下ṪṬȚŢṰṮ丅丁ᐪ"},{base:"t",alts:"ⓣtṫẗťṭțȶ੮էʇ†ţṱṯƭŧᵗ⒯ʈեƫ"},{base:"U",alts:"ŨŬŮᑗᑘǓǕǗǙⓊUȖᑌ凵ƱմԱꓵЦŪՄƲᙀᵁᵘ⒰ŰપÜՍÙÚÛṸṺǛỦȔƯỪỨỮỬỰỤṲŲṶṴɄᥩᑧ"},{base:"u",alts:"ὺύⓤuùũūừṷṹŭǖữᥙǚǜὗυΰนսʊǘǔúůᴜűųยûṻцሁüᵾᵤµʋủȕȗưứửựụṳṵʉῠῡῢΰῦῧὐὑϋύὒὓὔὕὖᥔ"},{base:"V",alts:"ⓋVᐯѴᵛ⒱۷ṾⅴⅤṼ٧ⴸѶᐺᐻ"},{base:"v",alts:"ⓥvṽṿ౮งѵעᴠνטᵥѷ៴ᘁ"},{base:"W",alts:"ⓌwWẂᾧᗯᥕ山ѠຟచաЩШώщฬшᙎᵂʷ⒲ฝሠẄԜẀŴẆẈധᘺѿᙡ"},{base:"w",alts:"ẁẃⓦ⍵ŵẇẅẘẉⱳὼὠὡὢὣωὤὥὦὧῲῳῴῶῷⱲѡԝᴡώᾠᾡᾢᾣᾤᾥᾦ"},{base:"X",alts:"ⓍXẊ᙭χㄨӾჯӼҳЖΧҲᵡˣ⒳אሸẌꊼⅩХ╳᙮ᕁᕽⅹᚷⵝ"},{base:"x",alts:"ⓧxхẋ×ₓ⤫⤬⨯ẍᶍӽ"},{base:"Y",alts:"ⓎYὛƳㄚӋʏ⅄ϔ¥¥ՎϓγץӲЧЎሃŸɎϤΥϒҮỲÝŶỸȲẎỶỴῨῩῪΎὙὝὟΫΎӮӰҰұ"},{base:"y",alts:"ⓨyỳýŷỹȳẏÿỷуყẙỵƴɏᵞɣʸᶌү⒴ӳӱӯў"},{base:"Z",alts:"ⓏZẔƵ乙ẐȤᶻ⒵ŹℤΖŻŽẒⱫ"},{base:"z",alts:"ⓩzźẑżžẓẕƶȥɀᴢጊʐⱬᶎʑᙆ"}],D=/([\0-\u02FF\u0370-\u1AAF\u1B00-\u1DBF\u1E00-\u20CF\u2100-\uD7FF\uE000-\uFE1F\uFE30-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])([\u0300-\u036F\u1AB0-\u1AFF\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]+)/g,F=/[\0-\x08\x0E-\x1F\x7F-\x84\x86-\x9F\u0300-\u034E\u0350-\u035B\u0363-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u061C\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08D4-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B62\u0B63\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0C00-\u0C03\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0D01-\u0D03\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D82\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DF2\u0DF3\u0F18\u0F19\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F7E\u0F80-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u180B-\u180D\u1885\u1886\u18A9\u1920-\u192B\u1930-\u193B\u1A17-\u1A1B\u1A7F\u1AB0-\u1ABE\u1B00-\u1B04\u1B34-\u1B44\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BE6-\u1BF3\u1C24-\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF2-\u1CF4\u1CF8\u1CF9\u1DC0-\u1DF5\u1DFB-\u1DFF\u200C\u200E\u200F\u202A-\u202E\u2066-\u206F\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3035\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA880\uA881\uA8B4-\uA8C5\uA8E0-\uA8F1\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFFF9-\uFFFB]|\uD800[\uDDFD\uDEE0\uDF76-\uDF7A]|\uD802[\uDE01-\uDE03\uDE05\uDE06\uDE0C-\uDE0F\uDE38-\uDE3A\uDE3F\uDEE5\uDEE6]|\uD804[\uDC00-\uDC02\uDC38-\uDC46\uDC7F-\uDC82\uDCB0-\uDCBA\uDD00-\uDD02\uDD27-\uDD34\uDD73\uDD80-\uDD82\uDDB3-\uDDC0\uDDCA-\uDDCC\uDE2C-\uDE37\uDE3E\uDEDF-\uDEEA\uDF00-\uDF03\uDF3C\uDF3E-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF57\uDF62\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC35-\uDC46\uDCB0-\uDCC3\uDDAF-\uDDB5\uDDB8-\uDDC0\uDDDC\uDDDD\uDE30-\uDE40\uDEAB-\uDEB7]|\uD807[\uDC2F-\uDC36\uDC38-\uDC3F\uDC92-\uDCA7\uDCA9-\uDCB6]|\uD81A[\uDEF0-\uDEF4\uDF30-\uDF36]|\uD81B[\uDF51-\uDF7E\uDF8F-\uDF92]|\uD82F[\uDC9D\uDC9E\uDCA0-\uDCA3]|\uD834[\uDD65-\uDD69\uDD6D-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDCD0-\uDCD6\uDD44-\uDD4A]|\uDB40[\uDC01\uDC20-\uDC7F\uDD00-\uDDEF]/g;function a(u){return u.replace(F,"").replace(D,"$1")}for(var C={},s={},A=0;A<u.length;A++){var E=u[A],B=E.alts,e=E.base;s[e]=B;for(var t=0,l=B;t<l.length;t+=1)C[l[t]]=e}exports.characters=u,exports.stripCombiningMarks=a,exports.diacriticsMap=C,exports.alphabetMap=s,exports.remove=function(u){for(var D="",F=0,s=a(u);F<s.length;F+=1){var A=s[F];D+=C[A]||A}return D},exports.obfuscate=function(u){for(var D="",F=0;F<u.length;F++){var a=u.charAt(F),C=s[a];D+=C?C[Math.floor(Math.random()*C.length)]:a}return D};
//# sourceMappingURL=index.js.map

@@ -1,2 +0,2 @@

!function(u,D){"object"==typeof exports&&"undefined"!=typeof module?D(exports):"function"==typeof define&&define.amd?define(["exports"],D):D(u.confusables={})}(this,function(u){for(var D=[{base:" ",alts:" "},{base:"1",alts:"¹"},{base:"2",alts:"ƻ²ᒿ"},{base:"3",alts:"³"},{base:"4",alts:"ҶҷҸҹӴӵᶣ"},{base:"6",alts:"Ϭϭб"},{base:"A",alts:"дǺᗅAⒶAΑᾋᗩĂÃÅǍȀȂĀȺĄʌΛλƛᴀᴬДАልÄₐᕱªǞӒΆẠẢẦẨẬẮẰẲẴẶᾸᾹᾺΆᾼᾈᾉᾊᾌᾍᾎᾏἈἉἊἋἌἍἎἏḀȦǠӐÀÁÂẤẪ"},{base:"a",alts:"ⓐaæձǟᵃᶏ⒜аɒaαȃȁคǎმäɑāɐąᾄẚạảǡầẵḁȧӑӓãåάὰάăẩằẳặᾀᾁᾂᾃᾅᾆᾰᾱᾲᾳᾴᶐᾶᾷἀἁἂἃἄἅἆἇᾇậắàáâấẫǻⱥ"},{base:"B",alts:"BⒷBвϐᗷƁ乃ßცჩ๖βɮБՅ๒ᙖʙᴮᵇጌḄℬΒВẞḂḆɃദᗹᗸᵝᙞᙟᙝ"},{base:"b",alts:"bbⓑḃḅҍъḇƃɓƅᖯƄЬᑲþƂ⒝Ъᶀᑿᒀᒂᒁᑾь"},{base:"C",alts:"ČÇCⒸCↃƇᑕㄈ¢८↻ĈϾՇȻᙅᶜ⒞ĆҀĊ©टƆℂℭϹС匚ḈҪʗᑖᑡᑢᑣᑤᑥ"},{base:"c",alts:"ĉcⓒćčcċçҁƈḉȼↄсርᴄϲҫ꒝ςɽϛᑦ᧚"},{base:"D",alts:"ⒹDƉᗪƊ�ÐԺᴅᴰↁḊĐÞⅮᗞᑯĎḌḐḒḎᗫᗬᗟᗠᶛ"},{base:"d",alts:"ⓓdḋďḍḑḓḏđƌɖɗᵈ⒟ԁⅾᶁԀᑺᑻᑼᑽᒄᑰᑱᶑ"},{base:"E",alts:"EⒺΈEƎἝᕮƐモЄ£ΞȝᙓΣᴇᴱᵉ⒠É乇ﻉэቿЁɆꂅ€ÈℰΕЕⴹᎬĒĔĖĘĚÊËԐỀẾỄỂẼḔḖẺȄȆẸỆȨḜḘḚἘἙἚἛἜῈΈӖὲέЀϵ"},{base:"e",alts:"Ҿҿⓔeeèᧉéᶒêɘἔềếễ૯ǝєεēҽɛểẽḕḗĕėëẻěȅȇẹệȩɇₑęḝḙḛ℮еԑѐӗᥱёἐἑἒἓἕℯ"},{base:"F",alts:"FⒻFғҒᖴƑԲϝिቻḞℱϜ"},{base:"f",alts:"ⓕffƒḟʃբᶠ⒡ſꊰʄ∱ᶂ"},{base:"G",alts:"GⒼGɢƓʛĢᘜᴳǴĠԌĜḠĞǦǤԍ"},{base:"g",alts:"ⓖgǵgĝḡğġǧģց૭ǥɠﻭﻮᵍ⒢ℊɡᧁ"},{base:"H",alts:"ⒽHĤᚺḢḦȞḤḨḪĦⱧҢңҤῊΉῌἨἩἪἫἭἮἯᾘᾙᾚᾛᾜᾝᾞᾟӉӈҥΉ"},{base:"h",alts:"ⓗhĥḣḧȟḥḩḫẖħⱨհһከኩኪካᑋ"},{base:"I",alts:"ⒾI៸ÌÍÎĨĪĬİÏḮỈǏȈȊỊĮḬƗェエῘῙῚΊἸἹἺἻἼἽἾⅠΪΊɪᶦᑊᥣ"},{base:"i",alts:"ⓘiìíîĩīĭïḯỉǐȉȋịḭῐῑῒΐῖῗἰἱἲⅰⅼ∣ⵏ│׀ا١۱ߊᛁἳἴἵɨіὶίᶖ"},{base:"J",alts:"JⒿJЈʝᒍנフĴʆวلյʖᴊᴶﻝጋɈⱼՂๅႱįᎫȷ丿ℐℑᒘᒙᒚᒛᒴᒵᒎᒏ"},{base:"j",alts:"jⓙjϳʲ⒥ɉĵǰјᶨ"},{base:"K",alts:"KⓀKĸḰќƘкҠκқҟӄʞҚКҡᴋᴷᵏ⒦ᛕЌጕḲΚKҜҝҞĶḴǨⱩϗӃ"},{base:"k",alts:"ⓚkḱkǩḳķḵƙⱪᶄ"},{base:"L",alts:"LⓁւLĿᒪ乚ՆʟꓶιԼᴸˡĹረḶₗΓլĻᄂⅬℒⱢᥧᥨᒻᒶᒷᶫﺎᒺᒹᒸᒫ"},{base:"l",alts:"ⓛlŀĺľḷlḹļӀℓḽḻłレɭƚɫⱡ|Ɩ⒧ʅǀ1וןΙІ|ᶩӏ"},{base:"M",alts:"MmⓂMмṂ൱ᗰ州ᘻო๓♏ʍᙏᴍᴹᵐ⒨ḾМṀ௱ⅯℳΜϺƜᛖӍӎ"},{base:"m",alts:"ⓜmനᙢ൩ḿṁⅿϻṃጠɱɯ៳ᶆ"},{base:"N",alts:"ЙЍⓃҋ៷NᴎɴƝᑎ几иՈռИהЛπᴺᶰŃ刀ክṄⁿÑПΝᴨոϖǸŇṆŅṊṈทŊӢӣӤӥћѝйᥢҊᴻ"},{base:"n",alts:"ᥒⓝήnǹᴒńñᾗηṅňṇɲņṋṉղຖՌƞŋ⒩ภกɳпʼnлԉȠἠἡῃդᾐᾑᾒᾓᾔᾕᾖῄῆῇῂἢἣἤἥἦἧὴήበቡቢባቤብቦȵ"},{base:"O",alts:"ѲϴѺӦӨӪΌʘǑÒŎÓÔÕȌȎOㇿ❍ⓄOὋロ❤૦⊕ØФԾΘƠᴼᵒ⒪ŐÖₒ¤◊Φ0〇ΟОՕଠഠ௦סỒỐỖỔṌȬṎŌṐṒȮȰȪỎỜỚỠỞỢỌỘǪǬǾƟⵔ߀៰⍜⎔⎕⦰⦱⦲⦳⦴⦵⦶⦷⦸⦹⦺⦻⦼⦽⦾⦿⧀⧁⧂⧃ὈὉὊὌὍ"},{base:"o",alts:"ᐤⓞѳ᧐ᥲoఠᦞՓԚòөӧóºōôǒȏoŏồốȍỗổõσṍȭṏὄṑṓȯȫ๏ంᴏಂംőöѻоዐǭȱ০୦٥౦೦൦๐໐οօᴑං०੦ỏơờớỡởợọộǫøǿɵծὀὁόὸόὂὃὅ"},{base:"P",alts:"ⓅPƤᑭ尸Ṗրφքᴘᴾᵖ⒫ṔアקРየᴩⱣℙΡῬᑸᑶᑷᑹᑬᑮ"},{base:"p",alts:"ⓟpṕṗƥᵽῥρрƿǷῤ⍴𝓹𝓅"},{base:"Q",alts:"QⓆQℚⵕ"},{base:"q",alts:"ⓠqqգ⒬۹զᑫɋɊԛ"},{base:"R",alts:"RⓇRᴙȒʀᖇя尺ŔЯરƦᴿዪṚɌᵣʁℛℜℝṘŘȐṜŖṞⱤ"},{base:"r",alts:"ⓡrŕrṙřȑȓṛṝŗгՐɾᥬṟɍʳ⒭ɼѓᴦᶉ"},{base:"S",alts:"SⓈSṨŞֆՏȘˢ⒮ЅṠ§ŠƽŚṤŜṦṢടᔕᔖᔢᔡᔣᔤ"},{base:"s",alts:"ⓢsśsṥŝṡšṧʂṣṩѕşșȿᶊక"},{base:"T",alts:"TⓉTтҬҭƬイŦԵτᴛᵀイГፕϮŤ⊥ƮΤТ下ṪṬȚŢṰṮ丅丁ᐪ"},{base:"t",alts:"ⓣtṫtẗťṭțȶ੮էʇ†ţṱṯƭŧᵗ⒯ʈեƫ"},{base:"U",alts:"ŨŬŮᑗᑘǓǕǗǙⓊUȖᑌ凵ƱմԱꓵЦŪՄƲᙀᵁᵘ⒰ŰપÜՍÙÚÛṸṺǛỦȔƯỪỨỮỬỰỤṲŲṶṴɄᥩᑧ"},{base:"u",alts:"ὺύⓤuùũūừṷṹŭǖữᥙǚǜὗυΰนUuսʊǘǔúůᴜűųยûṻцሁüᵾᵤµʋủȕȗưứửựụṳṵʉῠῡῢΰῦῧὐὑϋύὒὓὔὕὖᥔ"},{base:"V",alts:"VⓋVᐯѴᵛ⒱۷ṾⅴⅤṼ٧ⴸѶᐺᐻ"},{base:"v",alts:"ⓥvvṽṿ౮งѵעᴠνטᵥѷ៴ᘁ"},{base:"W",alts:"WⓌwWẂᾧᗯᥕ山ѠຟచաЩШώщฬшᙎᵂʷ⒲ฝሠẄԜẀŴẆẈധᘺѿᙡ"},{base:"w",alts:"ẁẃⓦ⍵ŵẇẅẘẉⱳὼὠὡὢὣωὤὥὦὧῲῳῴῶῷⱲѡԝᴡώᾠᾡᾢᾣᾤᾥᾦ"},{base:"X",alts:"XⓍXẊ᙭χㄨӾჯӼҳЖΧҲᵡˣ⒳אሸẌꊼⅩХ╳᙮ᕁᕽⅹᚷⵝ"},{base:"x",alts:"ⓧxxхẋ×ₓ⤫⤬⨯ẍᶍӽ"},{base:"Y",alts:"YⓎYὛƳㄚӋʏ⅄ϔ¥¥ՎϓγץӲЧЎሃŸɎϤΥϒҮỲÝŶỸȲẎỶỴῨῩῪΎὙὝὟΫΎӮӰҰұ"},{base:"y",alts:"ⓨyỳýyŷỹȳẏÿỷуყẙỵƴɏᵞɣʸᶌү⒴ӳӱӯў"},{base:"Z",alts:"ZⓏZẔƵ乙ẐȤᶻ⒵ŹℤΖŻŽẒⱫ"},{base:"z",alts:"ⓩzźẑżzžẓẕƶȥɀᴢጊʐⱬᶎʑᙆ"}],F=/([\0-\u02FF\u0370-\u1AAF\u1B00-\u1DBF\u1E00-\u20CF\u2100-\uD7FF\uE000-\uFE1F\uFE30-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])([\u0300-\u036F\u1AB0-\u1AFF\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]+)/g,a=/[\0-\x08\x0E-\x1F\x7F-\x84\x86-\x9F\u0300-\u034E\u0350-\u035B\u0363-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u061C\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08D4-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B62\u0B63\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0C00-\u0C03\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0D01-\u0D03\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D82\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DF2\u0DF3\u0F18\u0F19\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F7E\u0F80-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u180B-\u180D\u1885\u1886\u18A9\u1920-\u192B\u1930-\u193B\u1A17-\u1A1B\u1A7F\u1AB0-\u1ABE\u1B00-\u1B04\u1B34-\u1B44\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BE6-\u1BF3\u1C24-\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF2-\u1CF4\u1CF8\u1CF9\u1DC0-\u1DF5\u1DFB-\u1DFF\u200C\u200E\u200F\u202A-\u202E\u2066-\u206F\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3035\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA880\uA881\uA8B4-\uA8C5\uA8E0-\uA8F1\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFFF9-\uFFFB]|\uD800[\uDDFD\uDEE0\uDF76-\uDF7A]|\uD802[\uDE01-\uDE03\uDE05\uDE06\uDE0C-\uDE0F\uDE38-\uDE3A\uDE3F\uDEE5\uDEE6]|\uD804[\uDC00-\uDC02\uDC38-\uDC46\uDC7F-\uDC82\uDCB0-\uDCBA\uDD00-\uDD02\uDD27-\uDD34\uDD73\uDD80-\uDD82\uDDB3-\uDDC0\uDDCA-\uDDCC\uDE2C-\uDE37\uDE3E\uDEDF-\uDEEA\uDF00-\uDF03\uDF3C\uDF3E-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF57\uDF62\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC35-\uDC46\uDCB0-\uDCC3\uDDAF-\uDDB5\uDDB8-\uDDC0\uDDDC\uDDDD\uDE30-\uDE40\uDEAB-\uDEB7]|\uD807[\uDC2F-\uDC36\uDC38-\uDC3F\uDC92-\uDCA7\uDCA9-\uDCB6]|\uD81A[\uDEF0-\uDEF4\uDF30-\uDF36]|\uD81B[\uDF51-\uDF7E\uDF8F-\uDF92]|\uD82F[\uDC9D\uDC9E\uDCA0-\uDCA3]|\uD834[\uDD65-\uDD69\uDD6D-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDCD0-\uDCD6\uDD44-\uDD4A]|\uDB40[\uDC01\uDC20-\uDC7F\uDD00-\uDDEF]/g,C={},s={},A=0;A<D.length;A++){var E=D[A],e=E.alts,B=E.base;s[B]=e;for(var t=0,l=e;t<l.length;t+=1)C[l[t]]=B}u.characters=D,u.stripCombiningMarks=function(u){return u.replace(a,"").replace(F,"$1")},u.diacriticsMap=C,u.alphabetMap=s,u.remove=function(u){for(var D="",F=0,a=u;F<a.length;F+=1){var s=a[F];D+=C[s.toLowerCase()]||C[s.toUpperCase()]||s}return D},u.obfuscate=function(u){for(var D="",F=0;F<u.length;F++){var a=u.charAt(F),C=s[a];D+=C?C[Math.floor(Math.random()*C.length)]:a}return D}});
!function(u,D){"object"==typeof exports&&"undefined"!=typeof module?D(exports):"function"==typeof define&&define.amd?define(["exports"],D):D(u.confusables={})}(this,function(u){var D=[{base:" ",alts:" "},{base:"1",alts:"¹"},{base:"2",alts:"ƻ²ᒿ"},{base:"3",alts:"³"},{base:"4",alts:"ҶҷҸҹӴӵᶣ"},{base:"6",alts:"Ϭϭб"},{base:"ae",alts:"æ"},{base:"OE",alts:"Œ"},{base:"oe",alts:"œ"},{base:"A",alts:"дǺᗅⒶAΑᾋᗩĂÃÅǍȀȂĀȺĄʌΛλƛᴀᴬДАልÄₐᕱªǞӒΆẠẢẦẨẬẮẰẲẴẶᾸᾹᾺΆᾼᾈᾉᾊᾌᾍᾎᾏἈἉἊἋἌἍἎἏḀȦǠӐÀÁÂẤẪ"},{base:"a",alts:"ⓐձǟᵃᶏ⒜аɒaαȃȁคǎმäɑāɐąᾄẚạảǡầẵḁȧӑӓãåάὰάăẩằẳặᾀᾁᾂᾃᾅᾆᾰᾱᾲᾳᾴᶐᾶᾷἀἁἂἃἄἅἆἇᾇậắàáâấẫǻⱥ"},{base:"B",alts:"ⒷBвϐᗷƁ乃ßცჩ๖βɮБՅ๒ᙖʙᴮᵇጌḄℬΒВẞḂḆɃദᗹᗸᵝᙞᙟᙝ"},{base:"b",alts:"bⓑḃḅҍъḇƃɓƅᖯƄЬᑲþƂ⒝Ъᶀᑿᒀᒂᒁᑾь"},{base:"C",alts:"ČÇⒸCↃƇᑕㄈ¢८↻ĈϾՇȻᙅᶜ⒞ĆҀĊ©टƆℂℭϹС匚ḈҪʗᑖᑡᑢᑣᑤᑥ"},{base:"c",alts:"ĉcⓒćčċçҁƈḉȼↄсርᴄϲҫ꒝ςɽϛᑦ᧚"},{base:"D",alts:"ⒹDƉᗪƊÐԺᴅᴰↁḊĐÞⅮᗞᑯĎḌḐḒḎᗫᗬᗟᗠᶛ"},{base:"d",alts:"ⓓdḋďḍḑḓḏđƌɖɗᵈ⒟ԁⅾᶁԀᑺᑻᑼᑽᒄᑰᑱᶑ"},{base:"E",alts:"ⒺΈEƎἝᕮƐモЄᴇᴱᵉÉ乇ЁɆꂅ€ÈℰΕЕⴹᎬĒĔĖĘĚÊËԐỀẾỄỂẼḔḖẺȄȆẸỆȨḜḘḚἘἙἚἛἜῈΈӖὲέЀϵ"},{base:"e",alts:"Ҿҿⓔe⒠èᧉéᶒêɘἔềếễ૯ǝєεēҽɛểẽḕḗĕėëẻěȅȇẹệȩɇₑęḝḙḛ℮еԑѐӗᥱёἐἑἒἓἕℯ"},{base:"F",alts:"ⒻFғҒᖴƑԲϝिቻḞℱϜ"},{base:"f",alts:"ⓕfƒḟʃբᶠ⒡ſꊰʄ∱ᶂ"},{base:"G",alts:"ⒼGɢƓʛĢᘜᴳǴĠԌĜḠĞǦǤԍ"},{base:"g",alts:"ⓖgǵĝḡğġǧģց૭ǥɠﻭﻮᵍ⒢ℊɡᧁ"},{base:"H",alts:"ⒽHĤᚺḢḦȞḤḨḪĦⱧҢңҤῊΉῌἨἩἪἫἭἮἯᾘᾙᾚᾛᾜᾝᾞᾟӉӈҥΉ"},{base:"h",alts:"ⓗhĥḣḧȟḥḩḫẖħⱨհһከኩኪካᑋ"},{base:"I",alts:"ⒾI៸ÌÍÎĨĪĬİÏḮỈǏȈȊỊĮḬƗェエῘῙῚΊἸἹἺἻἼἽἾⅠΪΊɪᶦᑊᥣ"},{base:"i",alts:"ⓘiìíîĩīĭïḯỉǐȉȋịḭῐῑῒΐῖῗἰἱἲⅰⅼ∣ⵏ│׀ا١۱ߊᛁἳἴἵɨіὶίᶖ"},{base:"J",alts:"ⒿJЈʝᒍנフĴʆวلյʖᴊᴶﻝጋɈⱼՂๅႱįᎫȷ丿ℐℑᒘᒙᒚᒛᒴᒵᒎᒏ"},{base:"j",alts:"ⓙjϳʲ⒥ɉĵǰјᶨ"},{base:"K",alts:"ⓀKĸḰќƘкҠκқҟӄʞҚКҡᴋᴷᵏ⒦ᛕЌጕḲΚKҜҝҞĶḴǨⱩϗӃ"},{base:"k",alts:"ⓚkḱǩḳķḵƙⱪᶄ"},{base:"L",alts:"ⓁւLĿᒪ乚ՆʟꓶιԼᴸˡĹረḶₗΓլĻᄂⅬℒⱢᥧᥨᒻᒶᒷᶫﺎᒺᒹᒸᒫ"},{base:"l",alts:"ⓛlŀĺľḷḹļӀℓḽḻłレɭƚɫⱡ|Ɩ⒧ʅǀ1וןΙІ|ᶩӏ"},{base:"M",alts:"ⓂMмṂ൱ᗰ州ᘻო๓♏ʍᙏᴍᴹᵐ⒨ḾМṀ௱ⅯℳΜϺƜᛖӍӎ"},{base:"m",alts:"ⓜmനᙢ൩ḿṁⅿϻṃጠɱɯ៳ᶆ"},{base:"N",alts:"ЙЍⓃҋ៷NᴎɴƝᑎ几иՈռИהЛπᴺᶰŃ刀ክṄⁿÑПΝᴨոϖǸŇṆŅṊṈทŊӢӣӤӥћѝйᥢҊᴻ"},{base:"n",alts:"ᥒⓝήnǹᴒńñᾗηṅňṇɲņṋṉղຖՌƞŋ⒩ภกɳпʼnлԉȠἠἡῃդᾐᾑᾒᾓᾔᾕᾖῄῆῇῂἢἣἤἥἦἧὴήበቡቢባቤብቦȵ"},{base:"O",alts:"ѲϴѺӦӨӪΌʘǑÒŎÓÔÕȌȎㇿ❍ⓄOὋロ❤૦⊕ØФԾΘƠᴼᵒ⒪ŐÖₒ¤◊Φ0〇ΟОՕଠഠ௦סỒỐỖỔṌȬṎŌṐṒȮȰȪỎỜỚỠỞỢỌỘǪǬǾƟⵔ߀៰⍜⎔⎕⦰⦱⦲⦳⦴⦵⦶⦷⦸⦹⦺⦻⦼⦽⦾⦿⧀⧁⧂⧃ὈὉὊὌὍ"},{base:"o",alts:"ᐤⓞѳ᧐ᥲoఠᦞՓԚòөӧóºōôǒȏŏồốȍỗổõσṍȭṏὄṑṓȯȫ๏ంᴏಂംőöѻоዐǭȱ০୦٥౦೦൦๐໐οօᴑං०੦ỏơờớỡởợọộǫøǿɵծὀὁόὸόὂὃὅ"},{base:"P",alts:"ⓅPƤᑭ尸Ṗրφքᴘᴾᵖ⒫ṔアקРየᴩⱣℙΡῬᑸᑶᑷᑹᑬᑮ"},{base:"p",alts:"ⓟpṕṗƥᵽῥρрƿǷῤ⍴𝓹𝓅"},{base:"Q",alts:"ⓆQℚⵕ"},{base:"q",alts:"ⓠqգ⒬۹զᑫɋɊԛ"},{base:"R",alts:"ⓇRᴙȒʀᖇя尺ŔЯરƦᴿዪṚɌᵣʁℛℜℝṘŘȐṜŖṞⱤ"},{base:"r",alts:"ⓡrŕṙřȑȓṛṝŗгՐɾᥬṟɍʳ⒭ɼѓᴦᶉ"},{base:"S",alts:"ⓈSṨŞֆՏȘˢ⒮ЅṠ§ŠƽŚṤŜṦṢടᔕᔖᔢᔡᔣᔤ"},{base:"s",alts:"ⓢsśṥŝṡšṧʂṣṩѕşșȿᶊక"},{base:"T",alts:"ⓉTтҬҭƬイŦԵτᴛᵀイГፕϮŤ⊥ƮΤТ下ṪṬȚŢṰṮ丅丁ᐪ"},{base:"t",alts:"ⓣtṫẗťṭțȶ੮էʇ†ţṱṯƭŧᵗ⒯ʈեƫ"},{base:"U",alts:"ŨŬŮᑗᑘǓǕǗǙⓊUȖᑌ凵ƱմԱꓵЦŪՄƲᙀᵁᵘ⒰ŰપÜՍÙÚÛṸṺǛỦȔƯỪỨỮỬỰỤṲŲṶṴɄᥩᑧ"},{base:"u",alts:"ὺύⓤuùũūừṷṹŭǖữᥙǚǜὗυΰนսʊǘǔúůᴜűųยûṻцሁüᵾᵤµʋủȕȗưứửựụṳṵʉῠῡῢΰῦῧὐὑϋύὒὓὔὕὖᥔ"},{base:"V",alts:"ⓋVᐯѴᵛ⒱۷ṾⅴⅤṼ٧ⴸѶᐺᐻ"},{base:"v",alts:"ⓥvṽṿ౮งѵעᴠνטᵥѷ៴ᘁ"},{base:"W",alts:"ⓌwWẂᾧᗯᥕ山ѠຟచաЩШώщฬшᙎᵂʷ⒲ฝሠẄԜẀŴẆẈധᘺѿᙡ"},{base:"w",alts:"ẁẃⓦ⍵ŵẇẅẘẉⱳὼὠὡὢὣωὤὥὦὧῲῳῴῶῷⱲѡԝᴡώᾠᾡᾢᾣᾤᾥᾦ"},{base:"X",alts:"ⓍXẊ᙭χㄨӾჯӼҳЖΧҲᵡˣ⒳אሸẌꊼⅩХ╳᙮ᕁᕽⅹᚷⵝ"},{base:"x",alts:"ⓧxхẋ×ₓ⤫⤬⨯ẍᶍӽ"},{base:"Y",alts:"ⓎYὛƳㄚӋʏ⅄ϔ¥¥ՎϓγץӲЧЎሃŸɎϤΥϒҮỲÝŶỸȲẎỶỴῨῩῪΎὙὝὟΫΎӮӰҰұ"},{base:"y",alts:"ⓨyỳýŷỹȳẏÿỷуყẙỵƴɏᵞɣʸᶌү⒴ӳӱӯў"},{base:"Z",alts:"ⓏZẔƵ乙ẐȤᶻ⒵ŹℤΖŻŽẒⱫ"},{base:"z",alts:"ⓩzźẑżžẓẕƶȥɀᴢጊʐⱬᶎʑᙆ"}],F=/([\0-\u02FF\u0370-\u1AAF\u1B00-\u1DBF\u1E00-\u20CF\u2100-\uD7FF\uE000-\uFE1F\uFE30-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])([\u0300-\u036F\u1AB0-\u1AFF\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]+)/g,a=/[\0-\x08\x0E-\x1F\x7F-\x84\x86-\x9F\u0300-\u034E\u0350-\u035B\u0363-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u061C\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08D4-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B62\u0B63\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0C00-\u0C03\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0D01-\u0D03\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D82\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DF2\u0DF3\u0F18\u0F19\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F7E\u0F80-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u180B-\u180D\u1885\u1886\u18A9\u1920-\u192B\u1930-\u193B\u1A17-\u1A1B\u1A7F\u1AB0-\u1ABE\u1B00-\u1B04\u1B34-\u1B44\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BE6-\u1BF3\u1C24-\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF2-\u1CF4\u1CF8\u1CF9\u1DC0-\u1DF5\u1DFB-\u1DFF\u200C\u200E\u200F\u202A-\u202E\u2066-\u206F\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3035\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA880\uA881\uA8B4-\uA8C5\uA8E0-\uA8F1\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFFF9-\uFFFB]|\uD800[\uDDFD\uDEE0\uDF76-\uDF7A]|\uD802[\uDE01-\uDE03\uDE05\uDE06\uDE0C-\uDE0F\uDE38-\uDE3A\uDE3F\uDEE5\uDEE6]|\uD804[\uDC00-\uDC02\uDC38-\uDC46\uDC7F-\uDC82\uDCB0-\uDCBA\uDD00-\uDD02\uDD27-\uDD34\uDD73\uDD80-\uDD82\uDDB3-\uDDC0\uDDCA-\uDDCC\uDE2C-\uDE37\uDE3E\uDEDF-\uDEEA\uDF00-\uDF03\uDF3C\uDF3E-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF57\uDF62\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC35-\uDC46\uDCB0-\uDCC3\uDDAF-\uDDB5\uDDB8-\uDDC0\uDDDC\uDDDD\uDE30-\uDE40\uDEAB-\uDEB7]|\uD807[\uDC2F-\uDC36\uDC38-\uDC3F\uDC92-\uDCA7\uDCA9-\uDCB6]|\uD81A[\uDEF0-\uDEF4\uDF30-\uDF36]|\uD81B[\uDF51-\uDF7E\uDF8F-\uDF92]|\uD82F[\uDC9D\uDC9E\uDCA0-\uDCA3]|\uD834[\uDD65-\uDD69\uDD6D-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDCD0-\uDCD6\uDD44-\uDD4A]|\uDB40[\uDC01\uDC20-\uDC7F\uDD00-\uDDEF]/g;function C(u){return u.replace(a,"").replace(F,"$1")}for(var s={},A={},E=0;E<D.length;E++){var e=D[E],B=e.alts,t=e.base;A[t]=B;for(var l=0,b=B;l<b.length;l+=1)s[b[l]]=t}u.characters=D,u.stripCombiningMarks=C,u.diacriticsMap=s,u.alphabetMap=A,u.remove=function(u){for(var D="",F=0,a=C(u);F<a.length;F+=1){var A=a[F];D+=s[A]||A}return D},u.obfuscate=function(u){for(var D="",F=0;F<u.length;F++){var a=u.charAt(F),C=A[a];D+=C?C[Math.floor(Math.random()*C.length)]:a}return D}});
//# sourceMappingURL=index.umd.js.map
{
"name": "confusables",
"version": "0.0.3",
"version": "0.0.4",
"description": "A library to interact with Unicode Confusables in strings.",

@@ -5,0 +5,0 @@ "repository": {

@@ -1,5 +0,36 @@

<a href="https://travis-ci.org/lucagez/slow-json-stringify">
<img src="https://travis-ci.com/lucagez/slow-json-stringify.svg?branch=master" alt="travis"></a>
<a href="https://www.npmjs.org/package/slow-json-stringify"><img src="https://img.shields.io/npm/v/slow-json-stringify.svg?style=flat" alt="npm"></a>
<img src="https://img.shields.io/badge/license-MIT-f1c40f.svg" alt="MIT">
<a href="https://unpkg.com/slow-json-stringify"><img src="https://img.badgesize.io/https://unpkg.com/slow-json-stringify/dist/sjs.js?compression=gzip" alt="gzip size"></a>
<p align="center">
<img src="https://img.shields.io/npm/v/confusables.svg?style=flat" alt="npm">
<img src="https://img.shields.io/badge/license-MIT-f1c40f.svg" alt="MIT">
<img src="https://img.badgesize.io/https://unpkg.com/confusables/dist/index.js?compression=gzip" alt="gzip size">
</p>
# Confusables
This library allows you to easily remove confusables from a string.
> Confusables is currently in early development. Anything may change at any time. The public API should not be considered stable until version 1.0.0.
## Installation
```
yarn add confusables
npm install confusables
```
## Usage
```js
const { remove, obfuscate } = require('confusables');
console.log(obfuscate('Hello World')); // ???
console.log(remove('Ἢἕļľᦞ ш٥ṟlᑰ')) // Hello World
```
## What are confusables?
>Confusable characters are those that may be confused with others (in some common UI fonts), such as the Latin letter "o" and the Greek letter omicron "ο". Fonts make a difference: for example, the Hebrew character "ס" looks confusingly similar to "o" in some fonts (such as Arial Hebrew), but not in others.
>[Source](https://unicode.org/cldr/utility/confusables.jsp)

@@ -27,28 +27,40 @@ export const characters = [

{
base: 'ae',
alts: 'æ'
},
{
base: 'OE',
alts: 'Œ'
},
{
base: 'oe',
alts: 'œ'
},
{
base: 'A',
alts: 'дǺᗅAⒶAΑᾋᗩĂÃÅǍȀȂĀȺĄʌΛλƛᴀᴬДАልÄₐᕱªǞӒΆẠẢẦẨẬẮẰẲẴẶᾸᾹᾺΆᾼᾈᾉᾊᾌᾍᾎᾏἈἉἊἋἌἍἎἏḀȦǠӐÀÁÂẤẪ'
alts: 'дǺᗅⒶAΑᾋᗩĂÃÅǍȀȂĀȺĄʌΛλƛᴀᴬДАልÄₐᕱªǞӒΆẠẢẦẨẬẮẰẲẴẶᾸᾹᾺΆᾼᾈᾉᾊᾌᾍᾎᾏἈἉἊἋἌἍἎἏḀȦǠӐÀÁÂẤẪ'
},
{
base: 'a',
alts: 'ⓐaæձǟᵃᶏ⒜аɒaαȃȁคǎმäɑāɐąᾄẚạảǡầẵḁȧӑӓãåάὰάăẩằẳặᾀᾁᾂᾃᾅᾆᾰᾱᾲᾳᾴᶐᾶᾷἀἁἂἃἄἅἆἇᾇậắàáâấẫǻⱥ'
alts: 'ⓐձǟᵃᶏ⒜аɒaαȃȁคǎმäɑāɐąᾄẚạảǡầẵḁȧӑӓãåάὰάăẩằẳặᾀᾁᾂᾃᾅᾆᾰᾱᾲᾳᾴᶐᾶᾷἀἁἂἃἄἅἆἇᾇậắàáâấẫǻⱥ'
},
{
base: 'B',
alts: 'BⒷBвϐᗷƁ乃ßცჩ๖βɮБՅ๒ᙖʙᴮᵇጌḄℬΒВẞḂḆɃദᗹᗸᵝᙞᙟᙝ'
alts: 'ⒷBвϐᗷƁ乃ßცჩ๖βɮБՅ๒ᙖʙᴮᵇጌḄℬΒВẞḂḆɃദᗹᗸᵝᙞᙟᙝ'
},
{
base: 'b',
alts: 'bbⓑḃḅҍъḇƃɓƅᖯƄЬᑲþƂ⒝Ъᶀᑿᒀᒂᒁᑾь'
alts: 'bⓑḃḅҍъḇƃɓƅᖯƄЬᑲþƂ⒝Ъᶀᑿᒀᒂᒁᑾь'
},
{
base: 'C',
alts: 'ČÇCⒸCↃƇᑕㄈ¢८↻ĈϾՇȻᙅᶜ⒞ĆҀĊ©टƆℂℭϹС匚ḈҪʗᑖᑡᑢᑣᑤᑥ'
alts: 'ČÇⒸCↃƇᑕㄈ¢८↻ĈϾՇȻᙅᶜ⒞ĆҀĊ©टƆℂℭϹС匚ḈҪʗᑖᑡᑢᑣᑤᑥ'
},
{
base: 'c',
alts: 'ĉcⓒćčcċçҁƈḉȼↄсርᴄϲҫ꒝ςɽϛᑦ᧚'
alts: 'ĉcⓒćčċçҁƈḉȼↄсርᴄϲҫ꒝ςɽϛᑦ᧚'
},
{
base: 'D',
alts: 'ⒹDƉᗪƊ�ÐԺᴅᴰↁḊĐÞⅮᗞᑯĎḌḐḒḎᗫᗬᗟᗠᶛ'
alts: 'ⒹDƉᗪƊÐԺᴅᴰↁḊĐÞⅮᗞᑯĎḌḐḒḎᗫᗬᗟᗠᶛ'
},

@@ -61,23 +73,23 @@ {

base: 'E',
alts: 'EⒺΈEƎἝᕮƐモЄ£ΞȝᙓΣᴇᴱᵉ⒠É乇ﻉэቿЁɆꂅ€ÈℰΕЕⴹᎬĒĔĖĘĚÊËԐỀẾỄỂẼḔḖẺȄȆẸỆȨḜḘḚἘἙἚἛἜῈΈӖὲέЀϵ'
alts: 'ⒺΈEƎἝᕮƐモЄᴇᴱᵉÉ乇ЁɆꂅ€ÈℰΕЕⴹᎬĒĔĖĘĚÊËԐỀẾỄỂẼḔḖẺȄȆẸỆȨḜḘḚἘἙἚἛἜῈΈӖὲέЀϵ'
},
{
base: 'e',
alts: 'Ҿҿⓔeeèᧉéᶒêɘἔềếễ૯ǝєεēҽɛểẽḕḗĕėëẻěȅȇẹệȩɇₑęḝḙḛ℮еԑѐӗᥱёἐἑἒἓἕℯ'
alts: 'Ҿҿⓔe⒠èᧉéᶒêɘἔềếễ૯ǝєεēҽɛểẽḕḗĕėëẻěȅȇẹệȩɇₑęḝḙḛ℮еԑѐӗᥱёἐἑἒἓἕℯ'
},
{
base: 'F',
alts: 'FⒻFғҒᖴƑԲϝिቻḞℱϜ'
alts: 'ⒻFғҒᖴƑԲϝिቻḞℱϜ'
},
{
base: 'f',
alts: 'ⓕffƒḟʃբᶠ⒡ſꊰʄ∱ᶂ'
alts: 'ⓕfƒḟʃբᶠ⒡ſꊰʄ∱ᶂ'
},
{
base: 'G',
alts: 'GⒼGɢƓʛĢᘜᴳǴĠԌĜḠĞǦǤԍ'
alts: 'ⒼGɢƓʛĢᘜᴳǴĠԌĜḠĞǦǤԍ'
},
{
base: 'g',
alts: 'ⓖgǵgĝḡğġǧģց૭ǥɠﻭﻮᵍ⒢ℊɡᧁ'
alts: 'ⓖgǵĝḡğġǧģց૭ǥɠﻭﻮᵍ⒢ℊɡᧁ'
},

@@ -102,3 +114,3 @@ {

base: 'J',
alts: 'JⒿJЈʝᒍנフĴʆวلյʖᴊᴶﻝጋɈⱼՂๅႱįᎫȷ丿ℐℑᒘᒙᒚᒛᒴᒵᒎᒏ'
alts: 'ⒿJЈʝᒍנフĴʆวلյʖᴊᴶﻝጋɈⱼՂๅႱįᎫȷ丿ℐℑᒘᒙᒚᒛᒴᒵᒎᒏ'
},

@@ -108,11 +120,11 @@

base: 'j',
alts: 'jⓙjϳʲ⒥ɉĵǰјᶨ'
alts: 'ⓙjϳʲ⒥ɉĵǰјᶨ'
},
{
base: 'K',
alts: 'KⓀKĸḰќƘкҠκқҟӄʞҚКҡᴋᴷᵏ⒦ᛕЌጕḲΚKҜҝҞĶḴǨⱩϗӃ'
alts: 'ⓀKĸḰќƘкҠκқҟӄʞҚКҡᴋᴷᵏ⒦ᛕЌጕḲΚKҜҝҞĶḴǨⱩϗӃ'
},
{
base: 'k',
alts: 'ⓚkḱkǩḳķḵƙⱪᶄ'
alts: 'ⓚkḱǩḳķḵƙⱪᶄ'
},

@@ -122,11 +134,11 @@

base: 'L',
alts: 'LⓁւLĿᒪ乚ՆʟꓶιԼᴸˡĹረḶₗΓլĻᄂⅬℒⱢᥧᥨᒻᒶᒷᶫﺎᒺᒹᒸᒫ'
alts: 'ⓁւLĿᒪ乚ՆʟꓶιԼᴸˡĹረḶₗΓլĻᄂⅬℒⱢᥧᥨᒻᒶᒷᶫﺎᒺᒹᒸᒫ'
},
{
base: 'l',
alts: 'ⓛlŀĺľḷlḹļӀℓḽḻłレɭƚɫⱡ|Ɩ⒧ʅǀ1וןΙІ|ᶩӏ'
alts: 'ⓛlŀĺľḷḹļӀℓḽḻłレɭƚɫⱡ|Ɩ⒧ʅǀ1וןΙІ|ᶩӏ'
},
{
base: 'M',
alts: 'MmⓂMмṂ൱ᗰ州ᘻო๓♏ʍᙏᴍᴹᵐ⒨ḾМṀ௱ⅯℳΜϺƜᛖӍӎ'
alts: 'ⓂMмṂ൱ᗰ州ᘻო๓♏ʍᙏᴍᴹᵐ⒨ḾМṀ௱ⅯℳΜϺƜᛖӍӎ'
},

@@ -147,7 +159,7 @@ {

base: 'O',
alts: 'ѲϴѺӦӨӪΌʘǑÒŎÓÔÕȌȎOㇿ❍ⓄOὋロ❤૦⊕ØФԾΘƠᴼᵒ⒪ŐÖₒ¤◊Φ0〇ΟОՕଠഠ௦סỒỐỖỔṌȬṎŌṐṒȮȰȪỎỜỚỠỞỢỌỘǪǬǾƟⵔ߀៰⍜⎔⎕⦰⦱⦲⦳⦴⦵⦶⦷⦸⦹⦺⦻⦼⦽⦾⦿⧀⧁⧂⧃ὈὉὊὌὍ'
alts: 'ѲϴѺӦӨӪΌʘǑÒŎÓÔÕȌȎㇿ❍ⓄOὋロ❤૦⊕ØФԾΘƠᴼᵒ⒪ŐÖₒ¤◊Φ0〇ΟОՕଠഠ௦סỒỐỖỔṌȬṎŌṐṒȮȰȪỎỜỚỠỞỢỌỘǪǬǾƟⵔ߀៰⍜⎔⎕⦰⦱⦲⦳⦴⦵⦶⦷⦸⦹⦺⦻⦼⦽⦾⦿⧀⧁⧂⧃ὈὉὊὌὍ'
},
{
base: 'o',
alts: 'ᐤⓞѳ᧐ᥲoఠᦞՓԚòөӧóºōôǒȏoŏồốȍỗổõσṍȭṏὄṑṓȯȫ๏ంᴏಂംőöѻоዐǭȱ০୦٥౦೦൦๐໐οօᴑං०੦ỏơờớỡởợọộǫøǿɵծὀὁόὸόὂὃὅ'
alts: 'ᐤⓞѳ᧐ᥲoఠᦞՓԚòөӧóºōôǒȏŏồốȍỗổõσṍȭṏὄṑṓȯȫ๏ంᴏಂംőöѻоዐǭȱ০୦٥౦೦൦๐໐οօᴑං०੦ỏơờớỡởợọộǫøǿɵծὀὁόὸόὂὃὅ'
},

@@ -164,31 +176,31 @@ {

base: 'Q',
alts: 'QⓆQℚⵕ'
alts: 'ⓆQℚⵕ'
},
{
base: 'q',
alts: 'ⓠqqգ⒬۹զᑫɋɊԛ'
alts: 'ⓠqգ⒬۹զᑫɋɊԛ'
},
{
base: 'R',
alts: 'RⓇRᴙȒʀᖇя尺ŔЯરƦᴿዪṚɌᵣʁℛℜℝṘŘȐṜŖṞⱤ'
alts: 'ⓇRᴙȒʀᖇя尺ŔЯરƦᴿዪṚɌᵣʁℛℜℝṘŘȐṜŖṞⱤ'
},
{
base: 'r',
alts: 'ⓡrŕrṙřȑȓṛṝŗгՐɾᥬṟɍʳ⒭ɼѓᴦᶉ'
alts: 'ⓡrŕṙřȑȓṛṝŗгՐɾᥬṟɍʳ⒭ɼѓᴦᶉ'
},
{
base: 'S',
alts: 'SⓈSṨŞֆՏȘˢ⒮ЅṠ§ŠƽŚṤŜṦṢടᔕᔖᔢᔡᔣᔤ'
alts: 'ⓈSṨŞֆՏȘˢ⒮ЅṠ§ŠƽŚṤŜṦṢടᔕᔖᔢᔡᔣᔤ'
},
{
base: 's',
alts: 'ⓢsśsṥŝṡšṧʂṣṩѕşșȿᶊక'
alts: 'ⓢsśṥŝṡšṧʂṣṩѕşșȿᶊక'
},
{
base: 'T',
alts: 'TⓉTтҬҭƬイŦԵτᴛᵀイГፕϮŤ⊥ƮΤТ下ṪṬȚŢṰṮ丅丁ᐪ'
alts: 'ⓉTтҬҭƬイŦԵτᴛᵀイГፕϮŤ⊥ƮΤТ下ṪṬȚŢṰṮ丅丁ᐪ'
},
{
base: 't',
alts: 'ⓣtṫtẗťṭțȶ੮էʇ†ţṱṯƭŧᵗ⒯ʈեƫ'
alts: 'ⓣtṫẗťṭțȶ੮էʇ†ţṱṯƭŧᵗ⒯ʈեƫ'
},

@@ -201,15 +213,15 @@ {

base: 'u',
alts: 'ὺύⓤuùũūừṷṹŭǖữᥙǚǜὗυΰนUuսʊǘǔúůᴜűųยûṻцሁüᵾᵤµʋủȕȗưứửựụṳṵʉῠῡῢΰῦῧὐὑϋύὒὓὔὕὖᥔ'
alts: 'ὺύⓤuùũūừṷṹŭǖữᥙǚǜὗυΰนսʊǘǔúůᴜűųยûṻцሁüᵾᵤµʋủȕȗưứửựụṳṵʉῠῡῢΰῦῧὐὑϋύὒὓὔὕὖᥔ'
},
{
base: 'V',
alts: 'VⓋVᐯѴᵛ⒱۷ṾⅴⅤṼ٧ⴸѶᐺᐻ'
alts: 'ⓋVᐯѴᵛ⒱۷ṾⅴⅤṼ٧ⴸѶᐺᐻ'
},
{
base: 'v',
alts: 'ⓥvvṽṿ౮งѵעᴠνטᵥѷ៴ᘁ'
alts: 'ⓥvṽṿ౮งѵעᴠνטᵥѷ៴ᘁ'
},
{
base: 'W',
alts: 'WⓌwWẂᾧᗯᥕ山ѠຟచաЩШώщฬшᙎᵂʷ⒲ฝሠẄԜẀŴẆẈധᘺѿᙡ'
alts: 'ⓌwWẂᾧᗯᥕ山ѠຟచաЩШώщฬшᙎᵂʷ⒲ฝሠẄԜẀŴẆẈധᘺѿᙡ'
},

@@ -222,24 +234,24 @@ {

base: 'X',
alts: 'XⓍXẊ᙭χㄨӾჯӼҳЖΧҲᵡˣ⒳אሸẌꊼⅩХ╳᙮ᕁᕽⅹᚷⵝ'
alts: 'ⓍXẊ᙭χㄨӾჯӼҳЖΧҲᵡˣ⒳אሸẌꊼⅩХ╳᙮ᕁᕽⅹᚷⵝ'
},
{
base: 'x',
alts: 'ⓧxxхẋ×ₓ⤫⤬⨯ẍᶍӽ'
alts: 'ⓧxхẋ×ₓ⤫⤬⨯ẍᶍӽ'
},
{
base: 'Y',
alts: 'YⓎYὛƳㄚӋʏ⅄ϔ¥¥ՎϓγץӲЧЎሃŸɎϤΥϒҮỲÝŶỸȲẎỶỴῨῩῪΎὙὝὟΫΎӮӰҰұ'
alts: 'ⓎYὛƳㄚӋʏ⅄ϔ¥¥ՎϓγץӲЧЎሃŸɎϤΥϒҮỲÝŶỸȲẎỶỴῨῩῪΎὙὝὟΫΎӮӰҰұ'
},
{
base: 'y',
alts: 'ⓨyỳýyŷỹȳẏÿỷуყẙỵƴɏᵞɣʸᶌү⒴ӳӱӯў'
alts: 'ⓨyỳýŷỹȳẏÿỷуყẙỵƴɏᵞɣʸᶌү⒴ӳӱӯў'
},
{
base: 'Z',
alts: 'ZⓏZẔƵ乙ẐȤᶻ⒵ŹℤΖŻŽẒⱫ'
alts: 'ⓏZẔƵ乙ẐȤᶻ⒵ŹℤΖŻŽẒⱫ'
},
{
base: 'z',
alts: 'ⓩzźẑżzžẓẕƶȥɀᴢጊʐⱬᶎʑᙆ'
alts: 'ⓩzźẑżžẓẕƶȥɀᴢጊʐⱬᶎʑᙆ'
}
];

@@ -19,3 +19,3 @@ import { characters } from './characters';

for (const char of stripCombiningMarks(str)) {
newStr += diacriticsMap[char.toLowerCase()] || diacriticsMap[char.toUpperCase()] || char;
newStr += diacriticsMap[char] || char;
}

@@ -22,0 +22,0 @@ return newStr;

const { remove, obfuscate, characters, stripCombiningMarks } = require('../dist');
const assert = require('assert');
console.log(remove('Iñtërnâtiônàlizætiøn'));
console.log(obfuscate('test123123'));
const { readFileSync, writeFileSync } = require('fs');

@@ -11,2 +9,15 @@ const punctuationRegEx = /[~`!@#$%^&*(){}\[\];:"'<,.>?\/\\|_+=-]/g;

assert.strictEqual(remove('Iлtèrnåtïonɑlíƶatïǫԉ'), 'Internationalization');
assert.strictEqual(remove('ᴎᴑᴅᴇȷʂ'), 'NoDEJs');
assert.strictEqual(remove('hambúrguer'), 'hamburguer');
assert.strictEqual(remove('hŒllœ'), 'hOElloe');
assert.strictEqual(remove('ABCDEFGHIJKLMNOPQRSTUVWXYZé'), 'ABCDEFGHIJKLMNOPQRSTUVWXYZe');
assert.strictEqual(remove('Ἢἕļľᦞ ш٥ṟlᑰ'), 'Hello World');
assert.strictEqual(remove('᧚ỏņꊰṵśảƅĺɘʂ'), 'confusables');
assert.strictEqual(remove('Ƈ০ⓃբỦⓢἊƄʟἕᔕ'), 'CoNfUsAbLeS');
assert.strictEqual(remove('ƇȮṆⒻꓵƽΛБᒹἜᔢ'), 'CONFUSABLES');
assert.strictEqual(remove('Àᴮ©¹²³ᕽȲⓏᾌ⧂⦶Ἀ'), 'ABC123XYZAOOA');
assert.strictEqual(remove('գẮȥฝѕꊼếὠḍČ∱ŖνẞցГўⒽդʆủᛖɫΚἰסṕ'), 'qAzWsXewdCfRvBgTyHnJuMlKiOp');
assert.strictEqual(remove(obfuscate('ABCDEFGHIJKLMNOPQRSTUVWXYZé')), 'ABCDEFGHIJKLMNOPQRSTUVWXYZe');
function testForDuplicates() {

@@ -61,4 +72,3 @@ const items = [];

checkNewChars();
testForDuplicates();

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc