sospedra/semantic-password-generator

View on GitHub
packages/spg/dist/index.js

Summary

Maintainability
A
0 mins
Test Coverage
function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}var t=e(require("unfetch")),r=e(require("wink-nlp-utils")),n=e(require("lodash.deburr")),o=e(require("lodash.random")),i=e(require("lodash.isnumber")),s=e(require("lodash.identity"));const a=["generator=random","grnnamespace=0","prop=extracts","exchars=500","format=json","origin=*"].join("&"),u=[0,0];var c=e=>function(t){const r=t.split(" "),n=r.map(e=>[e,e.length]).reduce((e,[t,r])=>e.concat([[t,r+(e[e.length-1]||u)[1]]]),[]).filter(([t,r])=>r<e).length;return r.slice(0,n+1).join(" ")};const l=(e=50)=>100*Math.random()<Math.min(e,100),m={a:4,b:8,e:3,g:9,l:1,o:0,s:5,t:7,z:2},h=()=>l(90)?"":String.fromCharCode(o(37,126)),p="@#$%{}[]()/~,;:><.".split(""),g=/ /g,d=[""],f={case:!1,length:24,leet:!1,random:!1,symbols:!1};module.exports=function(){try{return Promise.resolve(function(){try{return Promise.resolve(t("https://en.wikipedia.org/w/api.php?action=query&"+a)).then(function(e){return e.status>=400&&new Error(`Request failed. Code: ${e.status}. Text: ${e.statusText}`),Promise.resolve(e.json()).then(function({query:{pages:e}}){return e[Object.keys(e)[0]].extract})})}catch(e){return Promise.reject(e)}}()).then(function(e){return function(e=d){const t=(e=>e.reduce((e,{length:t})=>t>e?t:e,Number.MIN_SAFE_INTEGER))(e);return function(r){const n=((e={})=>({...f,...i(e)?{length:e}:e}))(r),a=((e,t)=>Math.min((e=>Math.max(e,8))(e),t))(n.length,t),u=e.filter(e=>e.length>=a),d=u[o(u.length-1)];return d?[c(a),n.leet&&function(e){return e.split("").map(e=>[e,m[e.toLowerCase()]]).map(([e,t])=>t&&l(10)?t:e).join("")},n.case&&function(e){return e.split("").map(e=>l(25)?e.toUpperCase():e).join("")},n.random&&function(e){return e.split(" ").map(e=>`${h()}${e}${h()}`).join(" ")},(j=n.symbols,function(e){return e.replace(g,()=>j?l()?p[o(p.length-1)]:"":".")})].map(e=>e||s).reduce((e,t)=>t(e),d):null;var j}}([r.string.removeHTMLTags,r.string.removeExtraSpaces,n,r.string.sentences].reduce((e,t)=>t(e),e).map(r.string.removePunctuations))})}catch(e){return Promise.reject(e)}};
//# sourceMappingURL=index.js.map