pure-flow-ai
Version:
🤖 Smart text analysis package for detecting positive and negative words with AI support. Features customizable word lists, multiple languages, and AI-powered sentiment analysis. Perfect for content moderation, sentiment analysis, and text filtering in an
1 lines • 1.77 kB
JavaScript
;Object.defineProperty(exports,"t",{value:!0});const t=["ahole","anus","arse","ash0le","ass","assface","asshole","asslick","asswipe","bastard","bitch","bitches","biatch","blowjob","boob","boobs","bullshit","butt","butthole","c0ck","cawk","clit","clitoris","cock","cocks","cockhead","cockmunch","coon","crap","cum","cunt","dick","dicks","dickhead","dildo","dyke","fag","faggot","fanny","fuck","fucker","fucking","goddamn","hell","homo","jizz","kike","knob","kunt","lesbo","midget","mofo","moron","motherfucker","nazi","negro","nigga","nigger","paki","penis","piss","porn","prick","pussy","queef","retard","scrotum","sex","shit","shitty","skank","slut","spic","spunk","tard","testicle","tit","tits","twat","vagina","wanker","whore","wop","wtf"],createWordRegex=t=>t?new RegExp(`\\b${t.replace(/(\W)/g,"\\$1")}\\b`,"gi"):/^$/,maskProfaneWord=({input:t,blocklist:e,placeholder:o="*"})=>t?e?(e.forEach((e=>{const s=createWordRegex(e);t=t.replace(s,(t=>o.repeat(t.length)))})),t):t:"";exports.default=({additionalBlockWords:e=[],excludedWords:o=[],overrideBlockWords:s=!1})=>{const normalizeWords=t=>[...new Set(t.map((t=>t.toLowerCase().trim())).filter((t=>t.length>0)))],c=normalizeWords(s?[]:t),i=normalizeWords(e),r=normalizeWords(o),n=[...new Set([...c,...i])].filter((t=>!r.includes(t)));return{hasProfaneWords(t){return(({input:t,blocklist:e})=>{const o=[];return t&&e?(e.forEach((e=>{createWordRegex(e).test(t)&&o.push(e)})),o):o})({input:t,blocklist:n})},maskProfanity(t,e="*"){return maskProfaneWord({input:t,placeholder:e,blocklist:n})},cleanString(t){return(({input:t,blocklist:e})=>t?e?maskProfaneWord({input:t,blocklist:e,placeholder:""}):t:"")({input:t,blocklist:n})},getBlockWords(){return n},getExcludedWords(){return r},getBaseList(){return c}}};