UNPKG

rae

Version:

Simple Rae Dictionary Library

1 lines 15.9 kB
!function(e,o){"object"==typeof exports&&"object"==typeof module?module.exports=o(require("isomorphic-fetch"),require("cheerio")):"function"==typeof define&&define.amd?define(["isomorphic-fetch","cheerio"],o):"object"==typeof exports?exports.Rae=o(require("isomorphic-fetch"),require("cheerio")):e.Rae=o(e["isomorphic-fetch"],e.cheerio)}(global,function(e,o){return function(e){var o={};function t(s){if(o[s])return o[s].exports;var r=o[s]={i:s,l:!1,exports:{}};return e[s].call(r.exports,r,r.exports,t),r.l=!0,r.exports}return t.m=e,t.c=o,t.d=function(e,o,s){t.o(e,o)||Object.defineProperty(e,o,{enumerable:!0,get:s})},t.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},t.t=function(e,o){if(1&o&&(e=t(e)),8&o)return e;if(4&o&&"object"==typeof e&&e&&e.__esModule)return e;var s=Object.create(null);if(t.r(s),Object.defineProperty(s,"default",{enumerable:!0,value:e}),2&o&&"string"!=typeof e)for(var r in e)t.d(s,r,function(o){return e[o]}.bind(null,r));return s},t.n=function(e){var o=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(o,"a",o),o},t.o=function(e,o){return Object.prototype.hasOwnProperty.call(e,o)},t.p="",t(t.s=0)}({"./node_modules/lodash/_DataView.js":function(e,o,t){var s=t("./node_modules/lodash/_getNative.js")(t("./node_modules/lodash/_root.js"),"DataView");e.exports=s},"./node_modules/lodash/_Map.js":function(e,o,t){var s=t("./node_modules/lodash/_getNative.js")(t("./node_modules/lodash/_root.js"),"Map");e.exports=s},"./node_modules/lodash/_Promise.js":function(e,o,t){var s=t("./node_modules/lodash/_getNative.js")(t("./node_modules/lodash/_root.js"),"Promise");e.exports=s},"./node_modules/lodash/_Set.js":function(e,o,t){var s=t("./node_modules/lodash/_getNative.js")(t("./node_modules/lodash/_root.js"),"Set");e.exports=s},"./node_modules/lodash/_Symbol.js":function(e,o,t){var s=t("./node_modules/lodash/_root.js").Symbol;e.exports=s},"./node_modules/lodash/_WeakMap.js":function(e,o,t){var s=t("./node_modules/lodash/_getNative.js")(t("./node_modules/lodash/_root.js"),"WeakMap");e.exports=s},"./node_modules/lodash/_baseGetTag.js":function(e,o,t){var s=t("./node_modules/lodash/_Symbol.js"),r=t("./node_modules/lodash/_getRawTag.js"),n=t("./node_modules/lodash/_objectToString.js"),a="[object Null]",d="[object Undefined]",l=s?s.toStringTag:void 0;e.exports=function(e){return null==e?void 0===e?d:a:l&&l in Object(e)?r(e):n(e)}},"./node_modules/lodash/_baseIsArguments.js":function(e,o,t){var s=t("./node_modules/lodash/_baseGetTag.js"),r=t("./node_modules/lodash/isObjectLike.js"),n="[object Arguments]";e.exports=function(e){return r(e)&&s(e)==n}},"./node_modules/lodash/_baseIsNative.js":function(e,o,t){var s=t("./node_modules/lodash/isFunction.js"),r=t("./node_modules/lodash/_isMasked.js"),n=t("./node_modules/lodash/isObject.js"),a=t("./node_modules/lodash/_toSource.js"),d=/^\[object .+?Constructor\]$/,l=Function.prototype,u=Object.prototype,i=l.toString,c=u.hasOwnProperty,_=RegExp("^"+i.call(c).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");e.exports=function(e){return!(!n(e)||r(e))&&(s(e)?_:d).test(a(e))}},"./node_modules/lodash/_baseIsTypedArray.js":function(e,o,t){var s=t("./node_modules/lodash/_baseGetTag.js"),r=t("./node_modules/lodash/isLength.js"),n=t("./node_modules/lodash/isObjectLike.js"),a={};a["[object Float32Array]"]=a["[object Float64Array]"]=a["[object Int8Array]"]=a["[object Int16Array]"]=a["[object Int32Array]"]=a["[object Uint8Array]"]=a["[object Uint8ClampedArray]"]=a["[object Uint16Array]"]=a["[object Uint32Array]"]=!0,a["[object Arguments]"]=a["[object Array]"]=a["[object ArrayBuffer]"]=a["[object Boolean]"]=a["[object DataView]"]=a["[object Date]"]=a["[object Error]"]=a["[object Function]"]=a["[object Map]"]=a["[object Number]"]=a["[object Object]"]=a["[object RegExp]"]=a["[object Set]"]=a["[object String]"]=a["[object WeakMap]"]=!1,e.exports=function(e){return n(e)&&r(e.length)&&!!a[s(e)]}},"./node_modules/lodash/_baseKeys.js":function(e,o,t){var s=t("./node_modules/lodash/_isPrototype.js"),r=t("./node_modules/lodash/_nativeKeys.js"),n=Object.prototype.hasOwnProperty;e.exports=function(e){if(!s(e))return r(e);var o=[];for(var t in Object(e))n.call(e,t)&&"constructor"!=t&&o.push(t);return o}},"./node_modules/lodash/_baseUnary.js":function(e,o){e.exports=function(e){return function(o){return e(o)}}},"./node_modules/lodash/_coreJsData.js":function(e,o,t){var s=t("./node_modules/lodash/_root.js")["__core-js_shared__"];e.exports=s},"./node_modules/lodash/_freeGlobal.js":function(e,o){var t="object"==typeof global&&global&&global.Object===Object&&global;e.exports=t},"./node_modules/lodash/_getNative.js":function(e,o,t){var s=t("./node_modules/lodash/_baseIsNative.js"),r=t("./node_modules/lodash/_getValue.js");e.exports=function(e,o){var t=r(e,o);return s(t)?t:void 0}},"./node_modules/lodash/_getRawTag.js":function(e,o,t){var s=t("./node_modules/lodash/_Symbol.js"),r=Object.prototype,n=r.hasOwnProperty,a=r.toString,d=s?s.toStringTag:void 0;e.exports=function(e){var o=n.call(e,d),t=e[d];try{e[d]=void 0;var s=!0}catch(e){}var r=a.call(e);return s&&(o?e[d]=t:delete e[d]),r}},"./node_modules/lodash/_getTag.js":function(e,o,t){var s=t("./node_modules/lodash/_DataView.js"),r=t("./node_modules/lodash/_Map.js"),n=t("./node_modules/lodash/_Promise.js"),a=t("./node_modules/lodash/_Set.js"),d=t("./node_modules/lodash/_WeakMap.js"),l=t("./node_modules/lodash/_baseGetTag.js"),u=t("./node_modules/lodash/_toSource.js"),i=u(s),c=u(r),_=u(n),j=u(a),f=u(d),h=l;(s&&"[object DataView]"!=h(new s(new ArrayBuffer(1)))||r&&"[object Map]"!=h(new r)||n&&"[object Promise]"!=h(n.resolve())||a&&"[object Set]"!=h(new a)||d&&"[object WeakMap]"!=h(new d))&&(h=function(e){var o=l(e),t="[object Object]"==o?e.constructor:void 0,s=t?u(t):"";if(s)switch(s){case i:return"[object DataView]";case c:return"[object Map]";case _:return"[object Promise]";case j:return"[object Set]";case f:return"[object WeakMap]"}return o}),e.exports=h},"./node_modules/lodash/_getValue.js":function(e,o){e.exports=function(e,o){return null==e?void 0:e[o]}},"./node_modules/lodash/_isMasked.js":function(e,o,t){var s,r=t("./node_modules/lodash/_coreJsData.js"),n=(s=/[^.]+$/.exec(r&&r.keys&&r.keys.IE_PROTO||""))?"Symbol(src)_1."+s:"";e.exports=function(e){return!!n&&n in e}},"./node_modules/lodash/_isPrototype.js":function(e,o){var t=Object.prototype;e.exports=function(e){var o=e&&e.constructor;return e===("function"==typeof o&&o.prototype||t)}},"./node_modules/lodash/_nativeKeys.js":function(e,o,t){var s=t("./node_modules/lodash/_overArg.js")(Object.keys,Object);e.exports=s},"./node_modules/lodash/_nodeUtil.js":function(e,o,t){(function(e){var s=t("./node_modules/lodash/_freeGlobal.js"),r=o&&!o.nodeType&&o,n=r&&"object"==typeof e&&e&&!e.nodeType&&e,a=n&&n.exports===r&&s.process,d=function(){try{var e=n&&n.require&&n.require("util").types;return e||a&&a.binding&&a.binding("util")}catch(e){}}();e.exports=d}).call(this,t("./node_modules/webpack/buildin/module.js")(e))},"./node_modules/lodash/_objectToString.js":function(e,o){var t=Object.prototype.toString;e.exports=function(e){return t.call(e)}},"./node_modules/lodash/_overArg.js":function(e,o){e.exports=function(e,o){return function(t){return e(o(t))}}},"./node_modules/lodash/_root.js":function(e,o,t){var s=t("./node_modules/lodash/_freeGlobal.js"),r="object"==typeof self&&self&&self.Object===Object&&self,n=s||r||Function("return this")();e.exports=n},"./node_modules/lodash/_toSource.js":function(e,o){var t=Function.prototype.toString;e.exports=function(e){if(null!=e){try{return t.call(e)}catch(e){}try{return e+""}catch(e){}}return""}},"./node_modules/lodash/isArguments.js":function(e,o,t){var s=t("./node_modules/lodash/_baseIsArguments.js"),r=t("./node_modules/lodash/isObjectLike.js"),n=Object.prototype,a=n.hasOwnProperty,d=n.propertyIsEnumerable,l=s(function(){return arguments}())?s:function(e){return r(e)&&a.call(e,"callee")&&!d.call(e,"callee")};e.exports=l},"./node_modules/lodash/isArray.js":function(e,o){var t=Array.isArray;e.exports=t},"./node_modules/lodash/isArrayLike.js":function(e,o,t){var s=t("./node_modules/lodash/isFunction.js"),r=t("./node_modules/lodash/isLength.js");e.exports=function(e){return null!=e&&r(e.length)&&!s(e)}},"./node_modules/lodash/isBuffer.js":function(e,o,t){(function(e){var s=t("./node_modules/lodash/_root.js"),r=t("./node_modules/lodash/stubFalse.js"),n=o&&!o.nodeType&&o,a=n&&"object"==typeof e&&e&&!e.nodeType&&e,d=a&&a.exports===n?s.Buffer:void 0,l=(d?d.isBuffer:void 0)||r;e.exports=l}).call(this,t("./node_modules/webpack/buildin/module.js")(e))},"./node_modules/lodash/isEmpty.js":function(e,o,t){var s=t("./node_modules/lodash/_baseKeys.js"),r=t("./node_modules/lodash/_getTag.js"),n=t("./node_modules/lodash/isArguments.js"),a=t("./node_modules/lodash/isArray.js"),d=t("./node_modules/lodash/isArrayLike.js"),l=t("./node_modules/lodash/isBuffer.js"),u=t("./node_modules/lodash/_isPrototype.js"),i=t("./node_modules/lodash/isTypedArray.js"),c="[object Map]",_="[object Set]",j=Object.prototype.hasOwnProperty;e.exports=function(e){if(null==e)return!0;if(d(e)&&(a(e)||"string"==typeof e||"function"==typeof e.splice||l(e)||i(e)||n(e)))return!e.length;var o=r(e);if(o==c||o==_)return!e.size;if(u(e))return!s(e).length;for(var t in e)if(j.call(e,t))return!1;return!0}},"./node_modules/lodash/isFunction.js":function(e,o,t){var s=t("./node_modules/lodash/_baseGetTag.js"),r=t("./node_modules/lodash/isObject.js"),n="[object AsyncFunction]",a="[object Function]",d="[object GeneratorFunction]",l="[object Proxy]";e.exports=function(e){if(!r(e))return!1;var o=s(e);return o==a||o==d||o==n||o==l}},"./node_modules/lodash/isLength.js":function(e,o){var t=9007199254740991;e.exports=function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=t}},"./node_modules/lodash/isObject.js":function(e,o){e.exports=function(e){var o=typeof e;return null!=e&&("object"==o||"function"==o)}},"./node_modules/lodash/isObjectLike.js":function(e,o){e.exports=function(e){return null!=e&&"object"==typeof e}},"./node_modules/lodash/isString.js":function(e,o,t){var s=t("./node_modules/lodash/_baseGetTag.js"),r=t("./node_modules/lodash/isArray.js"),n=t("./node_modules/lodash/isObjectLike.js"),a="[object String]";e.exports=function(e){return"string"==typeof e||!r(e)&&n(e)&&s(e)==a}},"./node_modules/lodash/isTypedArray.js":function(e,o,t){var s=t("./node_modules/lodash/_baseIsTypedArray.js"),r=t("./node_modules/lodash/_baseUnary.js"),n=t("./node_modules/lodash/_nodeUtil.js"),a=n&&n.isTypedArray,d=a?r(a):s;e.exports=d},"./node_modules/lodash/stubFalse.js":function(e,o){e.exports=function(){return!1}},"./node_modules/webpack/buildin/module.js":function(e,o){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},"./src/helpers/constants.js":function(e,o,t){"use strict";o.__esModule=!0,o.RAE_FETCH_ACTION=o.RAE_SEARCH_ACTION=o.RAE_OFFICIAL_HTTP_ENDPOINT=o.HTTP_CLIENT=void 0;o.HTTP_CLIENT="HTTP_CLIENT";o.RAE_OFFICIAL_HTTP_ENDPOINT="https://dle.rae.es/srv/";o.RAE_SEARCH_ACTION="search?&m=form&w=";o.RAE_FETCH_ACTION="fetch?id="},"./src/helpers/utils.js":function(e,o,t){"use strict";o.__esModule=!0,o.toFormData=o.isAWord=void 0;var s=n(t("./node_modules/lodash/isEmpty.js")),r=n(t("./node_modules/lodash/isString.js"));function n(e){return e&&e.__esModule?e:{default:e}}const a=/^(?:[aeiouAEIOU]\u0341|[uU]\u0308|[nN]\u0303|[a-zA-ZáéíóúüÁÉÍÓÚÜñÑ])+$/;o.isAWord=(e=>(0,r.default)(e)&&!(0,s.default)(e)&&a.test(e));o.toFormData=(e=>Object.keys(e).map(o=>`${o}=${e[o]}`).join("&"))},"./src/lib/clients/http/errors.js":function(e,o,t){"use strict";o.__esModule=!0,o.NoChallengeScriptFoundError=o.ParserError=o.NotValidWordError=o.NotFoundError=void 0;o.NotFoundError=(e=>new Error(`"${e}" not found in RAE`));o.NotValidWordError=(e=>new Error(`"${e}" word param provided must be a valid string`));o.ParserError=(e=>new Error(`"${e.message}" parser error found. Please raise an issue at https://github.com/Tsur/node-rae/issues`));o.NoChallengeScriptFoundError=(()=>new Error("No challenge SCRIPT found!, It is possible due to RAE updated its API. Please raise an issue at https://github.com/Tsur/node-rae/issues"))},"./src/lib/clients/http/index.js":function(e,o,t){"use strict";o.__esModule=!0,o.default=o.HTTPRaeClient=void 0;var s,r=t("./src/helpers/utils.js"),n=(s=t("./src/lib/clients/http/request.js"))&&s.__esModule?s:{default:s},a=t("./src/lib/clients/http/errors.js"),d=t("./src/helpers/constants.js");class l{static search(e){return new Promise(async(o,t)=>{try{return(0,r.isAWord)(e)?o(await(0,n.default)(e)):t((0,a.NotValidWordError)(e))}catch(e){return t(e)}})}static fetch(e){return new Promise(async(o,t)=>{try{o(await(0,n.default)(e,{action:d.RAE_FETCH_ACTION,endpoint:d.RAE_OFFICIAL_HTTP_ENDPOINT}))}catch(e){t(e)}})}}o.HTTPRaeClient=l;o.default=(()=>l)},"./src/lib/clients/http/parse.js":function(e,o,t){"use strict";o.__esModule=!0,o.parseAuthData=function(e){return new Promise(function(e){const o={};return(t,s)=>{try{const n=r.default.load(e),d=n("script").eq(1).html();if(!d)throw(0,a.NoChallengeScriptFoundError)();const l=d.indexOf("function challenge()");if(l<0)throw(0,a.NoChallengeScriptFoundError)();const u=new Function(`return ${d.substr(l).replace("document.forms[0].elements[1].value=","return ")}`)(),i=u();n("body input").each((e,t)=>{o[n(t).attr("name")]=n(t).attr("value")||i}),t(o)}catch(e){s((0,a.ParserError)(e))}}}(e))},o.parseRaeData=function(e){return new Promise(function(e){const o={multipleMatches:!1,items:[]};return(t,s)=>{try{const d="body.dle ul li a[href^=fetch]",l="body p.j",u=r.default.load(e);o.multipleMatches=!!u(d).length,o.multipleMatches?u(d).each((e,t)=>o.items.push({match:u(t).text(),id:u(t).attr("href").replace(n.RAE_FETCH_ACTION,"").split("|")[0]})):u(l).each((e,t)=>o.items.push({match:u(t).text()})),t(o)}catch(e){s((0,a.ParserError)(e))}}}(e))};var s,r=(s=t("cheerio"))&&s.__esModule?s:{default:s},n=t("./src/helpers/constants.js"),a=t("./src/lib/clients/http/errors.js")},"./src/lib/clients/http/request.js":function(e,o,t){"use strict";o.__esModule=!0,o.default=async function(e,o={endpoint:n.RAE_OFFICIAL_HTTP_ENDPOINT,action:n.RAE_SEARCH_ACTION}){const t=await(0,r.default)(`${o.endpoint}${o.action}${encodeURI(e)}`,{method:"GET"});if(200!==t.status)throw(0,d.NotFoundError)(e);const s=await(0,l.parseAuthData)(await t.text()),u=await(0,r.default)(`${o.endpoint}${o.action}${encodeURI(e)}`,{method:"POST",body:(0,a.toFormData)(s)});if(200!==u.status)throw(0,d.NotFoundError)(e);return await(0,l.parseRaeData)(await u.text())};var s,r=(s=t("isomorphic-fetch"))&&s.__esModule?s:{default:s},n=t("./src/helpers/constants.js"),a=t("./src/helpers/utils.js"),d=t("./src/lib/clients/http/errors.js"),l=t("./src/lib/clients/http/parse.js")},"./src/lib/index.js":function(e,o,t){"use strict";o.__esModule=!0,o.default=void 0;var s,r=(s=t("./src/lib/clients/http/index.js"))&&s.__esModule?s:{default:s},n=t("./src/helpers/constants.js");class a{static create(e=n.HTTP_CLIENT){switch(e){case n.HTTP_CLIENT:default:return(0,r.default)()}}static help(){return"\n > Use it to create a Rae Client which can be used to interact with the RAE.\n > Example: \n import RaeClient from 'rae';\n const myRaeClient = RaeClient.create();\n const casa = await myRaeClient.search('casa');\n "}}var d=a;o.default=d,e.exports=a},0:function(e,o,t){e.exports=t("./src/lib/index.js")},cheerio:function(e,t){e.exports=o},"isomorphic-fetch":function(o,t){o.exports=e}})});