@orama/stemmers
Version:
Stemmers for Orama
1 lines • 9.48 kB
JavaScript
function r(){this.p=function(r){this.j=r,this.cursor=0,this.a=this.j.length,this.f=0,this.c=this.cursor,this.d=this.a},this.z=function(){return this.j},this.w=function(r){this.j=r.j,this.cursor=r.cursor,this.a=r.a,this.f=r.f,this.c=r.c,this.d=r.d},this.i=function(r,s,i){if(this.cursor>=this.a)return!1;var e=this.j.charCodeAt(this.cursor);return!(e>i)&&!(e<s)&&0!=(r[(e-=s)>>>3]&1<<(7&e))&&(this.cursor++,!0)},this.n=function(r,s,i){if(this.cursor<=this.f)return!1;var e=this.j.charCodeAt(this.cursor-1);return!(e>i)&&!(e<s)&&0!=(r[(e-=s)>>>3]&1<<(7&e))&&(this.cursor--,!0)},this.k=function(r,s,i){if(this.cursor>=this.a)return!1;var e=this.j.charCodeAt(this.cursor);return e>i||e<s?(this.cursor++,!0):0==(r[(e-=s)>>>3]&1<<(7&e))&&(this.cursor++,!0)},this.q=function(r,s,i){if(this.cursor<=this.f)return!1;var e=this.j.charCodeAt(this.cursor-1);return e>i||e<s?(this.cursor--,!0):0==(r[(e-=s)>>>3]&1<<(7&e))&&(this.cursor--,!0)},this.m=function(r){return!(this.a-this.cursor<r.length)&&this.j.slice(this.cursor,this.cursor+r.length)==r&&(this.cursor+=r.length,!0)},this.g=function(r){return!(this.cursor-this.f<r.length)&&this.j.slice(this.cursor-r.length,this.cursor)==r&&(this.cursor-=r.length,!0)},this.o=function(r){for(var s=0,i=r.length,e=this.cursor,a=this.a,o=0,c=0,t=!1;;){var u,n=s+(i-s>>>1),h=0,f=o<c?o:c,b=r[n];for(u=f;u<b[0].length;u++){if(e+f==a){h=-1;break}if(0!=(h=this.j.charCodeAt(e+f)-b[0].charCodeAt(u)))break;f++}if(0>h?(i=n,c=f):(s=n,o=f),1>=i-s){if(0<s||i==s||t)break;t=!0}}for(;;){if(o>=(b=r[s])[0].length&&(this.cursor=e+b[0].length,4>b.length||(s=b[3](this),this.cursor=e+b[0].length,s)))return b[2];if(0>(s=b[1]))return 0}},this.h=function(r){for(var s=0,i=r.length,e=this.cursor,a=this.f,o=0,c=0,t=!1;;){var u,n=s+(i-s>>1),h=0,f=o<c?o:c,b=r[n];for(u=b[0].length-1-f;0<=u;u--){if(e-f==a){h=-1;break}if(0!=(h=this.j.charCodeAt(e-1-f)-b[0].charCodeAt(u)))break;f++}if(0>h?(i=n,c=f):(s=n,o=f),1>=i-s){if(0<s||i==s||t)break;t=!0}}for(;;){if(o>=(b=r[s])[0].length&&(this.cursor=e-b[0].length,4>b.length||(s=b[3](this),this.cursor=e-b[0].length,s)))return b[2];if(0>(s=b[1]))return 0}},this.s=function(r,s,i){var e=i.length-(s-r);return this.j=this.j.slice(0,r)+i+this.j.slice(s),this.a+=e,this.cursor>=s?this.cursor+=e:this.cursor>r&&(this.cursor=r),e},this.t=function(){return!(0>this.c)&&!(this.c>this.d)&&!(this.d>this.a)&&!(this.a>this.j.length)},this.b=function(r){var s=!1;return this.t()&&(this.s(this.c,this.d,r),s=!0),s},this.e=function(){return this.b("")},this.r=function(r,s,i){s=this.s(r,s,i),r<=this.c&&(this.c+=s),r<=this.d&&(this.d+=s)},this.u=function(){var r="";return this.t()&&(r=this.j.slice(this.c,this.d)),r},this.v=function(){return this.j.slice(0,this.a)}}let s=new function(){function s(){return m<=e.cursor}function i(){return k<=e.cursor}var e=new r,a=[["",-1,6],["\xe1",0,1],["\xe9",0,2],["\xed",0,3],["\xf3",0,4],["\xfa",0,5]],o=[["la",-1,-1],["sela",0,-1],["le",-1,-1],["me",-1,-1],["se",-1,-1],["lo",-1,-1],["selo",5,-1],["las",-1,-1],["selas",7,-1],["les",-1,-1],["los",-1,-1],["selos",10,-1],["nos",-1,-1]],c=[["ando",-1,6],["iendo",-1,6],["yendo",-1,7],["\xe1ndo",-1,2],["i\xe9ndo",-1,1],["ar",-1,6],["er",-1,6],["ir",-1,6],["\xe1r",-1,3],["\xe9r",-1,4],["\xedr",-1,5]],t=[["ic",-1,-1],["ad",-1,-1],["os",-1,-1],["iv",-1,1]],u=[["able",-1,1],["ible",-1,1],["ante",-1,1]],n=[["ic",-1,1],["abil",-1,1],["iv",-1,1]],h=[["ica",-1,1],["ancia",-1,2],["encia",-1,5],["adora",-1,2],["osa",-1,1],["ista",-1,1],["iva",-1,9],["anza",-1,1],["log\xeda",-1,3],["idad",-1,8],["able",-1,1],["ible",-1,1],["ante",-1,2],["mente",-1,7],["amente",13,6],["aci\xf3n",-1,2],["uci\xf3n",-1,4],["ico",-1,1],["ismo",-1,1],["oso",-1,1],["amiento",-1,1],["imiento",-1,1],["ivo",-1,9],["ador",-1,2],["icas",-1,1],["ancias",-1,2],["encias",-1,5],["adoras",-1,2],["osas",-1,1],["istas",-1,1],["ivas",-1,9],["anzas",-1,1],["log\xedas",-1,3],["idades",-1,8],["ables",-1,1],["ibles",-1,1],["aciones",-1,2],["uciones",-1,4],["adores",-1,2],["antes",-1,2],["icos",-1,1],["ismos",-1,1],["osos",-1,1],["amientos",-1,1],["imientos",-1,1],["ivos",-1,9]],f=[["ya",-1,1],["ye",-1,1],["yan",-1,1],["yen",-1,1],["yeron",-1,1],["yendo",-1,1],["yo",-1,1],["yas",-1,1],["yes",-1,1],["yais",-1,1],["yamos",-1,1],["y\xf3",-1,1]],b=[["aba",-1,2],["ada",-1,2],["ida",-1,2],["ara",-1,2],["iera",-1,2],["\xeda",-1,2],["ar\xeda",5,2],["er\xeda",5,2],["ir\xeda",5,2],["ad",-1,2],["ed",-1,2],["id",-1,2],["ase",-1,2],["iese",-1,2],["aste",-1,2],["iste",-1,2],["an",-1,2],["aban",16,2],["aran",16,2],["ieran",16,2],["\xedan",16,2],["ar\xedan",20,2],["er\xedan",20,2],["ir\xedan",20,2],["en",-1,1],["asen",24,2],["iesen",24,2],["aron",-1,2],["ieron",-1,2],["ar\xe1n",-1,2],["er\xe1n",-1,2],["ir\xe1n",-1,2],["ado",-1,2],["ido",-1,2],["ando",-1,2],["iendo",-1,2],["ar",-1,2],["er",-1,2],["ir",-1,2],["as",-1,2],["abas",39,2],["adas",39,2],["idas",39,2],["aras",39,2],["ieras",39,2],["\xedas",39,2],["ar\xedas",45,2],["er\xedas",45,2],["ir\xedas",45,2],["es",-1,1],["ases",49,2],["ieses",49,2],["abais",-1,2],["arais",-1,2],["ierais",-1,2],["\xedais",-1,2],["ar\xedais",55,2],["er\xedais",55,2],["ir\xedais",55,2],["aseis",-1,2],["ieseis",-1,2],["asteis",-1,2],["isteis",-1,2],["\xe1is",-1,2],["\xe9is",-1,1],["ar\xe9is",64,2],["er\xe9is",64,2],["ir\xe9is",64,2],["ados",-1,2],["idos",-1,2],["amos",-1,2],["\xe1bamos",70,2],["\xe1ramos",70,2],["i\xe9ramos",70,2],["\xedamos",70,2],["ar\xedamos",74,2],["er\xedamos",74,2],["ir\xedamos",74,2],["emos",-1,1],["aremos",78,2],["eremos",78,2],["iremos",78,2],["\xe1semos",78,2],["i\xe9semos",78,2],["imos",-1,2],["ar\xe1s",-1,2],["er\xe1s",-1,2],["ir\xe1s",-1,2],["\xeds",-1,2],["ar\xe1",-1,2],["er\xe1",-1,2],["ir\xe1",-1,2],["ar\xe9",-1,2],["er\xe9",-1,2],["ir\xe9",-1,2],["i\xf3",-1,2]],d=[["a",-1,1],["e",-1,2],["o",-1,1],["os",-1,1],["\xe1",-1,1],["\xe9",-1,2],["\xed",-1,1],["\xf3",-1,1]],l=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,1,17,4,10],k=0,g=0,m=0;this.l=function(){k=g=m=e.a;var r=e.cursor;r:{s:{var v=e.cursor;i:if(e.i(l,97,252)){e:{var j=e.cursor;a:if(e.k(l,97,252)){for(;!e.i(l,97,252);){if(e.cursor>=e.a)break a;e.cursor++}break e}if(e.cursor=j,!e.i(l,97,252))break i;for(;!e.k(l,97,252);){if(e.cursor>=e.a)break i;e.cursor++}}break s}if(e.cursor=v,!e.k(l,97,252))break r;i:{v=e.cursor;e:if(e.k(l,97,252)){for(;!e.i(l,97,252);){if(e.cursor>=e.a)break e;e.cursor++}break i}if(e.cursor=v,!e.i(l,97,252)||e.cursor>=e.a)break r;e.cursor++}}m=e.cursor}e.cursor=r,r=e.cursor;r:{for(;!e.i(l,97,252);){if(e.cursor>=e.a)break r;e.cursor++}for(;!e.k(l,97,252);){if(e.cursor>=e.a)break r;e.cursor++}for(g=e.cursor;!e.i(l,97,252);){if(e.cursor>=e.a)break r;e.cursor++}for(;!e.k(l,97,252);){if(e.cursor>=e.a)break r;e.cursor++}k=e.cursor}if(e.cursor=r,e.f=e.cursor,e.cursor=e.a,r=e.a-e.cursor,e.d=e.cursor,0!=e.h(o)&&(e.c=e.cursor,0!=(v=e.h(c))&&s()))switch(v){case 1:e.c=e.cursor,e.b("iendo");break;case 2:e.c=e.cursor,e.b("ando");break;case 3:e.c=e.cursor,e.b("ar");break;case 4:e.c=e.cursor,e.b("er");break;case 5:e.c=e.cursor,e.b("ir");break;case 6:e.e();break;case 7:e.g("u")&&e.e()}e.cursor=e.a-r,r=e.a-e.cursor;s:if(v=e.a-e.cursor,!function(){var r;if(e.d=e.cursor,0==(r=e.h(h)))return!1;switch(e.c=e.cursor,r){case 1:if(!i()||!e.e())return!1;break;case 2:if(!i()||!e.e())return!1;if(r=e.a-e.cursor,e.d=e.cursor,e.g("ic"))if(e.c=e.cursor,i()){if(!e.e())return!1}else e.cursor=e.a-r;else e.cursor=e.a-r;break;case 3:if(!i()||!e.b("log"))return!1;break;case 4:if(!i()||!e.b("u"))return!1;break;case 5:if(!i()||!e.b("ente"))return!1;break;case 6:if(!(g<=e.cursor)||!e.e())return!1;var s=e.a-e.cursor;r:if(e.d=e.cursor,0==(r=e.h(t)))e.cursor=e.a-s;else if(e.c=e.cursor,i()){if(!e.e())return!1;if(1===r){if(e.d=e.cursor,!e.g("at")||(e.c=e.cursor,!i())){e.cursor=e.a-s;break r}if(!e.e())return!1}}else e.cursor=e.a-s;break;case 7:if(!i()||!e.e())return!1;if(r=e.a-e.cursor,e.d=e.cursor,0==e.h(u))e.cursor=e.a-r;else if(e.c=e.cursor,i()){if(!e.e())return!1}else e.cursor=e.a-r;break;case 8:if(!i()||!e.e())return!1;if(r=e.a-e.cursor,e.d=e.cursor,0==e.h(n))e.cursor=e.a-r;else if(e.c=e.cursor,i()){if(!e.e())return!1}else e.cursor=e.a-r;break;case 9:if(!i()||!e.e())return!1;if(r=e.a-e.cursor,e.d=e.cursor,e.g("at"))if(e.c=e.cursor,i()){if(!e.e())return!1}else e.cursor=e.a-r;else e.cursor=e.a-r}return!0}()){if(e.cursor=e.a-v,function(){if(e.cursor<m)return!1;var r=e.f;return(e.f=m,e.d=e.cursor,0==e.h(f))?(e.f=r,!1):(e.c=e.cursor,e.f=r,!!(e.g("u")&&e.e()))}())break s;if(e.cursor=e.a-v,!(e.cursor<m))if(j=e.f,e.f=m,e.d=e.cursor,0==(v=e.h(b)))e.f=j;else switch(e.c=e.cursor,e.f=j,v){case 1:v=e.a-e.cursor,e.g("u")?(j=e.a-e.cursor,e.g("g")?e.cursor=e.a-j:e.cursor=e.a-v):e.cursor=e.a-v,e.c=e.cursor,e.e();break;case 2:e.e()}}if(e.cursor=e.a-r,r=e.a-e.cursor,e.d=e.cursor,0!=(v=e.h(d)))switch(e.c=e.cursor,v){case 1:s()&&e.e();break;case 2:if(!s()||!e.e())break;v=e.a-e.cursor,e.d=e.cursor,e.g("u")?(e.c=e.cursor,j=e.a-e.cursor,e.g("g")?(e.cursor=e.a-j,s()?e.e():e.cursor=e.a-v):e.cursor=e.a-v):e.cursor=e.a-v}return e.cursor=e.a-r,e.cursor=e.f,r=e.cursor,!function(){for(var r;;){var s=e.cursor;r:if(e.c=e.cursor,0!=(r=e.o(a))){switch(e.d=e.cursor,r){case 1:if(!e.b("a"))return;break;case 2:if(!e.b("e"))return;break;case 3:if(!e.b("i"))return;break;case 4:if(!e.b("o"))return;break;case 5:if(!e.b("u"))return;break;case 6:if(e.cursor>=e.a)break r;e.cursor++}continue}e.cursor=s;break}}(),e.cursor=r,!0},this.stemWord=function(r){return e.p(r),this.l(),e.j}};export function stemmer(r){return s.stemWord(r)}export const language="spanish";